<?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>225739</bug_id>
          
          <creation_ts>2021-05-13 02:40:17 -0700</creation_ts>
          <short_desc>Delete WebSQL code from WebKit2</short_desc>
          <delta_ts>2021-05-15 23:37:17 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>kkinnunen</cc>
    
    <cc>philipj</cc>
    
    <cc>sam</cc>
    
    <cc>sergio</cc>
    
    <cc>sihui_liu</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1759588</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-13 02:40:17 -0700</bug_when>
    <thetext>We don&apos;t need WebSQL support in WebKit2 anymore. Delete the code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1759602</commentid>
    <comment_count>1</comment_count>
      <attachid>428478</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-13 03:00:15 -0700</bug_when>
    <thetext>Created attachment 428478
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1759697</commentid>
    <comment_count>2</comment_count>
      <attachid>428478</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2021-05-13 08:49:48 -0700</bug_when>
    <thetext>Comment on attachment 428478
Patch

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

&gt; Source/WebKit/ChangeLog:17
&gt; +        (WebKit::m_messagePortChannelRegistry): Deleted.

Deleted?

&gt; Source/WebKit/ChangeLog:26
&gt; +        * Shared/WebSQLiteDatabaseTracker.cpp: Removed.
&gt; +        * Shared/WebSQLiteDatabaseTracker.h: Removed.

Despite its name, WebSQLiteDatabaseTracker is actually responsible for monitoring all SQLite operations (network process uses it to notify UI process to not suspend it during database operations, see SQLiteDatabaseTracker), so this seems wrong.

&gt; Source/WebKit/ChangeLog:42
&gt; +        (WebKit::m_lastNavigationWasAppBound):

I didn&apos;t see related change in this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1759861</commentid>
    <comment_count>3</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-13 15:48:05 -0700</bug_when>
    <thetext>(In reply to Sihui Liu from comment #2)
&gt; Comment on attachment 428478 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=428478&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/ChangeLog:17
&gt; &gt; +        (WebKit::m_messagePortChannelRegistry): Deleted.
&gt; 
&gt; Deleted?
&gt; 
&gt; &gt; Source/WebKit/ChangeLog:26
&gt; &gt; +        * Shared/WebSQLiteDatabaseTracker.cpp: Removed.
&gt; &gt; +        * Shared/WebSQLiteDatabaseTracker.h: Removed.
&gt; 
&gt; Despite its name, WebSQLiteDatabaseTracker is actually responsible for
&gt; monitoring all SQLite operations (network process uses it to notify UI
&gt; process to not suspend it during database operations, see
&gt; SQLiteDatabaseTracker), so this seems wrong.

Oh, I see.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760036</commentid>
    <comment_count>4</comment_count>
      <attachid>428610</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-14 01:18:09 -0700</bug_when>
    <thetext>Created attachment 428610
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760089</commentid>
    <comment_count>5</comment_count>
      <attachid>428610</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-05-14 08:38:26 -0700</bug_when>
    <thetext>Comment on attachment 428610
Patch

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

&gt; Source/WTF/ChangeLog:3
&gt; +        Delete WebSQL code from WebKit2

This seems to also be removing the WebKitLegacy code, is that intentional?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760207</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-14 14:26:10 -0700</bug_when>
    <thetext>(In reply to Sam Weinig from comment #5)
&gt; Comment on attachment 428610 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=428610&amp;action=review
&gt; 
&gt; &gt; Source/WTF/ChangeLog:3
&gt; &gt; +        Delete WebSQL code from WebKit2
&gt; 
&gt; This seems to also be removing the WebKitLegacy code, is that intentional?

Oh yeah, that was definitely not intentional. I was going to rename it and forgot to add the new one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760208</commentid>
    <comment_count>7</comment_count>
      <attachid>428658</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-14 14:26:36 -0700</bug_when>
    <thetext>Created attachment 428658
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760291</commentid>
    <comment_count>8</comment_count>
      <attachid>428682</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-14 16:30:31 -0700</bug_when>
    <thetext>Created attachment 428682
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760292</commentid>
    <comment_count>9</comment_count>
      <attachid>428682</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-14 16:30:55 -0700</bug_when>
    <thetext>Comment on attachment 428682
Patch for landing

Wait for EWS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760391</commentid>
    <comment_count>10</comment_count>
      <attachid>428720</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-14 23:54:57 -0700</bug_when>
    <thetext>Created attachment 428720
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760392</commentid>
    <comment_count>11</comment_count>
      <attachid>428720</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-05-14 23:55:50 -0700</bug_when>
    <thetext>Comment on attachment 428720
Patch for landing

Wait for EWS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760567</commentid>
    <comment_count>12</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-05-15 23:36:41 -0700</bug_when>
    <thetext>Committed r277564 (237792@main): &lt;https://commits.webkit.org/237792@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 428720.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760568</commentid>
    <comment_count>13</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-05-15 23:37:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/78070560&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428478</attachid>
            <date>2021-05-13 03:00:15 -0700</date>
            <delta_ts>2021-05-14 01:18:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225739-20210513030014.patch</filename>
            <type>text/plain</type>
            <size>53201</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NDE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDZhNDIyODRjMWY1ZDlhOTIyODlkM2Jh
ODNlMGU4ZmE1NTBlNzAyZmUuLmMyMTE4NzhjYzc3MjJhZWJiM2IwY2U2ZjQwODhlYzI3ZGY2NDhj
ZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjEtMDUtMTMgIFJ5b3N1a2UgTml3YSAgPHJuaXdh
QHdlYmtpdC5vcmc+CisKKyAgICAgICAgRGVsZXRlIFdlYlNRTCBjb2RlIGZyb20gV2ViS2l0Mgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NzM5CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRGVsZXRlZCB0
aGUgZXhwZXJpbWVudGFsIGZlYXR1cmUgdG8gZGlzYWJsZSBXZWJTUUwgc2luY2Ugd2UndmUgYmVl
biBzaGlwcGluZyB0aGlzLAorICAgICAgICBhbmQgbWFkZSB0aGUgZmxhZyB0byBzZWxlY3RpdmVs
eSBlbmFibGUgV2ViU1FMIGluIFdlYktpdDEgYW4gaW50ZXJuYWwgZGVidWcgc2V0dGluZworICAg
ICAgICBzaW5jZSBub2JvZHkgc2hvdWxkIGJlIGVuYWJsaW5nIHRoaXMgbm93LgorCisgICAgICAg
ICogU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sOgor
ICAgICAgICAqIFNjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNJbnRlcm5hbC55YW1s
OgorCiAyMDIxLTA1LTEyICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAg
ICBJbXBsZW1lbnQgc29tZSBjb21tb24gQmFzZWxpbmUgSklUIHNsb3cgcGF0aHMgdXNpbmcgSklU
IHRodW5rcy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwppbmRleCA1MWJlMWU3YTU4M2RmYWJhZDIxNzg4OTRkMGU0NzRiNjkz
MjNkMGYyLi4yMTY1OGRhOGVmZjY2ZTJhZTE5M2RmYjVhNzRmNDRjYWM3ZTY3ZDdhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjEtMDUtMTMgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdl
YmtpdC5vcmc+CisKKyAgICAgICAgRGVsZXRlIFdlYlNRTCBjb2RlIGZyb20gV2ViS2l0MgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NzM5CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwYWdlL1J1bnRp
bWVFbmFibGVkRmVhdHVyZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVh
dHVyZXM6OnNldFdlYlNRTERpc2FibGVkKTogRGVsZXRlZC4KKwogMjAyMS0wNS0xMiAgRnVqaWkg
SGlyb25vcmkgIDxIaXJvbm9yaS5GdWppaUBzb255LmNvbT4KIAogICAgICAgICBTb21lIHdlYmds
LzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX2ltYWdlX2RhdGEg
dGVzdHMgYXJlIGZhaWxpbmcgYWZ0ZXIgcjI3NzM2OSBpZiAhVVNFKEFDQ0VMRVJBVEUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CmluZGV4IDY4OGIyOTUwNWE4ODVmYjI0MjkwNmIyMThjMDNmNzczYmI5MzlmNWQuLmY3YjBhYzc3
ZDZiY2VkMjk4NmNmZGJmODRkZjZkZmEzMTA4YjkxNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTUg
QEAKKzIwMjEtMDUtMTMgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgRGVsZXRlIFdlYlNRTCBjb2RlIGZyb20gV2ViS2l0MgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NzM5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRGVsZXRlZCBXZWJTUUwgY29kZS4gV2Uga2VlcCBz
b21lIGNvZGUgZm9yIHdlYnNpdGUgZGF0YSBzdG9yZSBzaW5jZSBpdCdzIHBvc3NpYmxlCisgICAg
ICAgIGZvciB1c2VyJ3MgZGV2aWNlIHRvIHN0aWxsIGhhdmUgV2ViU1FMIGRhdGEsIGFuZCB3ZSBz
aG91bGQgYmUgYWJsZSB0byBkZWxldGUgdGhlbS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNz
L0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjptb25pdG9yZWREYXRhVHlw
ZXMpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6Ok5ldHdvcmtQcm9jZXNzKToKKyAgICAgICAgKFdl
YktpdDo6TmV0d29ya1Byb2Nlc3M6OnByZXBhcmVUb1N1c3BlbmQpOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrUHJvY2Vzczo6cmVzdW1lKToKKyAgICAgICAgKFdlYktpdDo6bV9tZXNzYWdlUG9y
dENoYW5uZWxSZWdpc3RyeSk6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0
d29ya1Byb2Nlc3MuaDoKKyAgICAgICAgKiBTaGFyZWQvQ29jb2EvU2hhcmVkUmluZ0J1ZmZlclN0
b3JhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpTaGFyZWRSaW5nQnVmZmVyU3RvcmFnZTo6c2V0
U3RvcmFnZSk6CisgICAgICAgIChXZWJLaXQ6OlNoYXJlZFJpbmdCdWZmZXJTdG9yYWdlOjphbGxv
Y2F0ZSk6CisgICAgICAgICogU2hhcmVkL1dlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzLmg6
CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzOjplbmNvZGUg
Y29uc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVyczo6
ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQvV2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyLmNwcDog
UmVtb3ZlZC4KKyAgICAgICAgKiBTaGFyZWQvV2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyLmg6IFJl
bW92ZWQuCisgICAgICAgICogU2hhcmVkL21hYy9NZWRpYUZvcm1hdFJlYWRlci9NZWRpYVNhbXBs
ZUN1cnNvci5oOgorICAgICAgICAqIFNvdXJjZXMudHh0OgorICAgICAgICAqIFNvdXJjZXNDb2Nv
YS50eHQ6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwOgorICAg
ICAgICAoV0tQcmVmZXJlbmNlc1NldFdlYlNRTERpc2FibGVkKToKKyAgICAgICAgKFdLUHJlZmVy
ZW5jZXNHZXRXZWJTUUxEaXNhYmxlZCk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLUHJl
ZmVyZW5jZXNSZWYuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6d2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFt
ZXRlcnMpOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvRGF0YWJhc2VzL1dlYkRhdGFiYXNlUHJvdmlkZXIuY3BwOiBSZW1v
dmVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvRGF0YWJhc2VzL1dlYkRhdGFiYXNlUHJvdmlkZXIu
aDogUmVtb3ZlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFu
YWdlckNvbm5lY3Rpb24uY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJTV0NvbnRleHRNYW5hZ2Vy
Q29ubmVjdGlvbjo6aW5zdGFsbFNlcnZpY2VXb3JrZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6bV9sYXN0TmF2aWdhdGlvbldh
c0FwcEJvdW5kKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwOgorICAgICAg
ICAoV2ViS2l0OjptX25vblZpc2libGVQcm9jZXNzTWVtb3J5Q2xlYW51cFRpbWVyKToKKyAgICAg
ICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6c2V0V2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMpOgor
ICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjpwcmVwYXJlVG9TdXNwZW5kKToKKyAgICAgICAg
KFdlYktpdDo6V2ViUHJvY2Vzczo6cHJvY2Vzc0RpZFJlc3VtZSk6CisgICAgICAgIChXZWJLaXQ6
Om1fd2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlByb2Nlc3MuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nlc3ND
b2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6cGxhdGZvcm1TZXRXZWJzaXRl
RGF0YVN0b3JlUGFyYW1ldGVycyk6CisKIDIwMjEtMDUtMTIgIEZ1amlpIEhpcm9ub3JpICA8SGly
b25vcmkuRnVqaWlAc29ueS5jb20+CiAKICAgICAgICAgW1dpbkNhaXJvXSBGYWlsZWQgdG8gb3Bl
biBXZWJJbnNwZWN0b3IgVUkgc2luY2UgcjI3NzIzMQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9n
CmluZGV4IGNmZGM0MTA3MmZjMTU0ZTZlNTkyNjAyZmQ1ZmMwNmRkNDkyNTNiMDguLjQwNjZhMjA0
NTdmMjhkOWM3NDAxNTRjM2RkMTVkODFmMmM2MmMzYmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMS0wNS0xMyAgUnlvc3VrZSBOaXdhICA8cm5pd2FA
d2Via2l0Lm9yZz4KKworICAgICAgICBEZWxldGUgV2ViU1FMIGNvZGUgZnJvbSBXZWJLaXQyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjU3MzkKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYlZpZXcv
V2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBfcHJlZmVyZW5jZXNDaGFuZ2VkOl0pOgor
CiAyMDIxLTA1LTEyICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAg
UXVldWUgbm90aWZpY2F0aW9uIHBlcm1pc3Npb24gcmVxdWVzdHMgZm9yIHRoZSBzYW1lIG9yaWdp
biBvbiBXZWJLaXQgc2lkZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hh
bmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCmluZGV4IGVjOWU4OWZm
NDQ1ODMxNzdiNTk1ZTJlZDkyNzA1NzE4NTg0NTVkOGUuLmEyN2FkMmExYmVjZmQxMWIwOTg4NWNk
ZDdlMzBlMzBlMWJjNGQ4MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxMyBAQAorMjAyMS0wNS0xMyAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBEZWxldGUgV2ViU1FMIGNvZGUgZnJvbSBXZWJLaXQyCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjU3MzkKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYlZpZXcuY3BwOgorICAgICAgICAo
V2ViVmlldzo6bm90aWZ5UHJlZmVyZW5jZXNDaGFuZ2VkKToKKwogMjAyMS0wNS0xMiAgQ2hyaXMg
RHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFF1ZXVlIG5vdGlmaWNhdGlvbiBw
ZXJtaXNzaW9uIHJlcXVlc3RzIGZvciB0aGUgc2FtZSBvcmlnaW4gb24gV2ViS2l0IHNpZGUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4
cGVyaW1lbnRhbC55YW1sIGIvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZl
cmVuY2VzRXhwZXJpbWVudGFsLnlhbWwKaW5kZXggNWZiNDQ3MmQ2YWFmM2E2NjUwOGEyODAyNjU0
MDdhNzBiMTE1OWUwMy4uM2FjY2NiMGUwMGU4MDM2OTA1ZmU4NmRkM2JlYjRhMTkwYzhhMDY0NiAx
MDA2NDQKLS0tIGEvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2Vz
RXhwZXJpbWVudGFsLnlhbWwKKysrIGIvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dl
YlByZWZlcmVuY2VzRXhwZXJpbWVudGFsLnlhbWwKQEAgLTEzMDUsMTYgKzEzMDUsNiBAQCBXZWJS
VENWUDlQcm9maWxlMkNvZGVjRW5hYmxlZDoKICAgICBXZWJLaXQ6CiAgICAgICBkZWZhdWx0OiBm
YWxzZQogCi1XZWJTUUxEaXNhYmxlZDoKLSAgdHlwZTogYm9vbAotICBodW1hblJlYWRhYmxlTmFt
ZTogIkRpc2FibGUgV2ViU1FMIgotICBodW1hblJlYWRhYmxlRGVzY3JpcHRpb246ICJEaXNhYmxl
IFdlYlNRTCIKLSAgd2ViY29yZUJpbmRpbmc6IFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMKLSAgZXhw
b3NlZDogWyBXZWJLaXQgXQotICBkZWZhdWx0VmFsdWU6Ci0gICAgV2ViS2l0OgotICAgICAgZGVm
YXVsdDogdHJ1ZQotCiAjIEZJWE1FOiBXZWJLaXRMZWdhY3kgaGFzIGFuIGV4aXN0aW5nIHByZWZl
cmVuY2UgY2FsbGVkICdXZWJTUUxFbmFibGVkJy4gV2Ugc2hvdWxkIHJlY29uY2lsZSBpdCB3aXRo
IFdlYlNRTERpc2FibGVkLgogV2ViU1FMRW5hYmxlZDoKICAgdHlwZTogYm9vbApkaWZmIC0tZ2l0
IGEvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzSW50ZXJuYWwu
eWFtbCBiL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0ludGVy
bmFsLnlhbWwKaW5kZXggYjU5OGFhNmEwNDgzMmE3MGY5NzhkYTI5MDkxYTI5YWU3YWI4OTVkNy4u
ZmY3Njc2MDY3MDEwMzY5ZWZkZjMxNjVmMDEwMThkN2VkYTQ2YjEzMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzSW50ZXJuYWwueWFtbAor
KysgYi9Tb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNJbnRlcm5h
bC55YW1sCkBAIC04NTgsNiArODU4LDE3IEBAIFdlYlJUQ01ETlNJQ0VDYW5kaWRhdGVzRW5hYmxl
ZDoKICAgICBXZWJLaXQ6CiAgICAgICBkZWZhdWx0OiB0cnVlCiAKK1dlYlNRTEVuYWJsZWQ6Cisg
IHR5cGU6IGJvb2wKKyAgaHVtYW5SZWFkYWJsZU5hbWU6ICJFbmFibGUgV2ViU1FMIgorICBodW1h
blJlYWRhYmxlRGVzY3JpcHRpb246ICJFbmFibGUgV2ViU1FMIgorICB3ZWJjb3JlQmluZGluZzog
Y3VzdG9tCisgIGV4cG9zZWQ6IFsgV2ViS2l0TGVnYWN5IF0KKyAgZGVmYXVsdFZhbHVlOgorICAg
IFdlYktpdExlZ2FjeToKKyAgICAgICJQTEFURk9STShJT1NfRkFNSUxZKSI6IFdlYktpdDo6ZGVm
YXVsdFdlYlNRTEVuYWJsZWQoKQorICAgICAgZGVmYXVsdDogdHJ1ZQorCiBab29tT25Eb3VibGVU
YXBXaGVuUm9vdDoKICAgdHlwZTogYm9vbAogICBjb25kaXRpb246IFBMQVRGT1JNKElPU19GQU1J
TFkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCmluZGV4
IGFiNWYzMWJhZWVmZWIxYTc0OTQwM2UzYjZiNTcwOGMwNDhhZjMwOTYuLmJiMzhhM2Y4NWRlZGM4
MmFiOWU3MmQwNTQxYmIwMzFhZjM1YmU0MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVu
dGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0xMjMsNyArMTIzLDYgQEAgcHVibGljOgogICAgIGJv
b2wgY3NzVHlwZWRPTUVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX0NTU1R5cGVkT01FbmFibGVk
OyB9CiAjZW5kaWYKIAotICAgIHZvaWQgc2V0V2ViU1FMRGlzYWJsZWQoYm9vbCBpc0Rpc2FibGVk
KSB7IG1fd2ViU1FMRW5hYmxlZCA9ICFpc0Rpc2FibGVkOyB9CiAgICAgYm9vbCB3ZWJTUUxFbmFi
bGVkKCkgY29uc3QgeyByZXR1cm4gbV93ZWJTUUxFbmFibGVkOyB9CiAKICAgICB2b2lkIHNldERp
YWxvZ0VsZW1lbnRFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1fZGlhbG9nRWxlbWVudEVuYWJs
ZWQgPSBpc0VuYWJsZWQ7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NTdG9yZS5jcHAKaW5kZXggODRkNTYxNDMxMGE3ZjY2ZThiOTZlZjhlNDc1ZTJhOTdiNDBlMTIw
OS4uNWVmMmI2ZWMwOTZiNGZlMGEwZmEzNTA3YjNjMjcxMTQwNzNkZmFkYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9hZFN0
YXRpc3RpY3NTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFz
c2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAKQEAgLTgwLDcgKzgwLDYg
QEAgY29uc3QgT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4mIFdlYlJlc291cmNlTG9hZFN0YXRp
c3RpY3NTdG9yZTo6bW9uaXRvcmVkRGF0YVQKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAg
ICAgICAgIFdlYnNpdGVEYXRhVHlwZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbnMsCiAjZW5k
aWYKLSAgICAgICAgV2Vic2l0ZURhdGFUeXBlOjpXZWJTUUxEYXRhYmFzZXMsCiAgICAgfSkpOwog
CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAKaW5kZXggYjg0ODE0NWZlNmM1MWRhODVhZWMy
NDE0YzZlNTI3YjNjMWU3NThmNS4uYzNmZGM5MjE5ZDYwZGYxZDY1ZGU5Y2E1ZWEyMWU2YmM1NjJj
N2QzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJv
Y2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vz
cy5jcHAKQEAgLTE1Nyw5ICsxNTcsNiBAQCBOZXR3b3JrUHJvY2Vzczo6TmV0d29ya1Byb2Nlc3Mo
QXV4aWxpYXJ5UHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZQogICAgICwg
bV9zdG9yYWdlTWFuYWdlclNldChTdG9yYWdlTWFuYWdlclNldDo6Y3JlYXRlKCkpCiAjaWYgRU5B
QkxFKENPTlRFTlRfRVhURU5TSU9OUykKICAgICAsIG1fbmV0d29ya0NvbnRlbnRSdWxlTGlzdE1h
bmFnZXIoKnRoaXMpCi0jZW5kaWYKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAgICwgbV93
ZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXIoW3RoaXNdKGJvb2wgaXNIb2xkaW5nTG9ja2VkRmlsZXMp
IHsgcGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6TmV0d29ya1Byb2Nl
c3NQcm94eTo6U2V0SXNIb2xkaW5nTG9ja2VkRmlsZXMoaXNIb2xkaW5nTG9ja2VkRmlsZXMpLCAw
KTsgfSkKICNlbmRpZgogICAgICwgbV9tZXNzYWdlUG9ydENoYW5uZWxSZWdpc3RyeShjcmVhdGVN
ZXNzYWdlUG9ydENoYW5uZWxSZWdpc3RyeSgqdGhpcykpCiB7CkBAIC0yMjIxLDEwICsyMjE4LDYg
QEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6cHJlcGFyZVRvU3VzcGVuZChib29sIGlzU3VzcGVuc2lv
bkltbWluZW50LCBDb21wbGV0aW9uSGFuZGwKICAgICAgICAgc2VydmVyLT5zdXNwZW5kKCk7CiAj
ZW5kaWYKIAotI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0gICAgbV93ZWJTUUxpdGVEYXRhYmFz
ZVRyYWNrZXIuc2V0SXNTdXNwZW5kZWQodHJ1ZSk7Ci0jZW5kaWYKLQogICAgIGxvd01lbW9yeUhh
bmRsZXIoQ3JpdGljYWw6Olllcyk7CiAKICAgICBSZWZQdHI8Q2FsbGJhY2tBZ2dyZWdhdG9yPiBj
YWxsYmFja0FnZ3JlZ2F0b3IgPSBDYWxsYmFja0FnZ3JlZ2F0b3I6OmNyZWF0ZShbdGhpcywgY29t
cGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oKSBtdXRhYmxlIHsK
QEAgLTIyNzIsMTAgKzIyNjUsNiBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzOjpwcm9jZXNzRGlkUmVz
dW1lKCkKIAogdm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVzdW1lKCkKIHsKLSNpZiBQTEFURk9STShJ
T1NfRkFNSUxZKQotICAgIG1fd2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyLnNldElzU3VzcGVuZGVk
KGZhbHNlKTsKLSNlbmRpZgotCiAgICAgZm9yIChhdXRvJiBjb25uZWN0aW9uIDogbV93ZWJQcm9j
ZXNzQ29ubmVjdGlvbnMudmFsdWVzKCkpCiAgICAgICAgIGNvbm5lY3Rpb24tPmVuZFN1c3BlbnNp
b24oKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UHJvY2Vzcy5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5o
CmluZGV4IDJjZDVkMGE3ZDc1MjM5MTQ3MzE4NzJjOTEzNzEzNTY4NzU1MmZlMjMuLjVkZDhiOTE2
YjQ5Y2U0YzQ3OGUzYTc1MDYxYWZiMDA3YWM5NjNiZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmgKQEAgLTU5LDEwICs1OSw2IEBACiAjaW5jbHVk
ZSA8d3RmL1JldGFpblB0ci5oPgogI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAKLSNpZiBQTEFU
Rk9STShJT1NfRkFNSUxZKQotI2luY2x1ZGUgIldlYlNRTGl0ZURhdGFiYXNlVHJhY2tlci5oIgot
I2VuZGlmCi0KICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNsdWRlIDx3dGYvT1NPYmplY3RQdHIu
aD4KIHR5cGVkZWYgc3RydWN0IE9wYXF1ZUNGSFRUUENvb2tpZVN0b3JhZ2UqICBDRkhUVFBDb29r
aWVTdG9yYWdlUmVmOwpAQCAtNTY0LDEwICs1NjAsNiBAQCBwcml2YXRlOgogICAgIE5ldHdvcmtD
b250ZW50UnVsZUxpc3RNYW5hZ2VyIG1fbmV0d29ya0NvbnRlbnRSdWxlTGlzdE1hbmFnZXI7CiAj
ZW5kaWYKIAotI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0gICAgV2ViU1FMaXRlRGF0YWJhc2VU
cmFja2VyIG1fd2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyOwotI2VuZGlmCi0KICAgICBIYXNoTWFw
PFBBTDo6U2Vzc2lvbklELCBTdHJpbmc+IG1faWRiRGF0YWJhc2VQYXRoczsKICAgICBIYXNoTWFw
PFBBTDo6U2Vzc2lvbklELCBSZWZQdHI8V2ViSURCU2VydmVyPj4gbV93ZWJJREJTZXJ2ZXJzOwog
ICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvU2hhcmVkUmluZ0J1
ZmZlclN0b3JhZ2UuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvU2hhcmVkUmluZ0J1
ZmZlclN0b3JhZ2UuY3BwCmluZGV4IDhhZjI2Mzc5YTBlNGVlYTU0MzE2ZDI0MTAzYTAwOWZiMjQ3
NGVhZTQuLjE2NzE5NTI0NmRjZDRmN2RkZjM2OWIyNzMyOTM0OWJhZTRlNzBmYzQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1NoYXJlZFJpbmdCdWZmZXJTdG9yYWdlLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9TaGFyZWRSaW5nQnVmZmVyU3RvcmFn
ZS5jcHAKQEAgLTc2LDE0ICs3NiwxNCBAQCB2b2lkIFJlYWRPbmx5U2hhcmVkUmluZ0J1ZmZlclN0
b3JhZ2U6OnVwZGF0ZUZyYW1lQm91bmRzKCkKICAgICBtX2VuZEZyYW1lID0gcGFpci5zZWNvbmQ7
CiB9CiAKLXZvaWQgU2hhcmVkUmluZ0J1ZmZlclN0b3JhZ2U6OnNldFN0b3JhZ2UoUmVmUHRyPFNo
YXJlZE1lbW9yeT4mJiBzdG9yYWdlLCBjb25zdCBDQUF1ZGlvU3RyZWFtRGVzY3JpcHRpb24mIGZv
cm1hdCwgc2l6ZV90IGZyYW1lQ291bnQpCit2b2lkIFNoYXJlZFJpbmdCdWZmZXJTdG9yYWdlOjpz
ZXRTdG9yYWdlKFJlZlB0cjxTaGFyZWRNZW1vcnk+JiYgc3RvcmFnZSwgY29uc3QgV2ViQ29yZTo6
Q0FBdWRpb1N0cmVhbURlc2NyaXB0aW9uJiBmb3JtYXQsIHNpemVfdCBmcmFtZUNvdW50KQogewog
ICAgIG1fc3RvcmFnZSA9IFdURk1vdmUoc3RvcmFnZSk7CiAgICAgaWYgKG1fc3RvcmFnZUNoYW5n
ZWRIYW5kbGVyKQogICAgICAgICBtX3N0b3JhZ2VDaGFuZ2VkSGFuZGxlcihtX3N0b3JhZ2UuZ2V0
KCksIGZvcm1hdCwgZnJhbWVDb3VudCk7CiB9CiAKLXZvaWQgU2hhcmVkUmluZ0J1ZmZlclN0b3Jh
Z2U6OmFsbG9jYXRlKHNpemVfdCBieXRlQ291bnQsIGNvbnN0IENBQXVkaW9TdHJlYW1EZXNjcmlw
dGlvbiYgZm9ybWF0LCBzaXplX3QgZnJhbWVDb3VudCkKK3ZvaWQgU2hhcmVkUmluZ0J1ZmZlclN0
b3JhZ2U6OmFsbG9jYXRlKHNpemVfdCBieXRlQ291bnQsIGNvbnN0IFdlYkNvcmU6OkNBQXVkaW9T
dHJlYW1EZXNjcmlwdGlvbiYgZm9ybWF0LCBzaXplX3QgZnJhbWVDb3VudCkKIHsKICAgICBhdXRv
IHNoYXJlZE1lbW9yeSA9IFNoYXJlZE1lbW9yeTo6YWxsb2NhdGUoYnl0ZUNvdW50ICsgc2l6ZW9m
KEZyYW1lQm91bmRzKSk7CiAgICAgbmV3IChOb3ROdWxsLCBzaGFyZWRNZW1vcnktPmRhdGEoKSkg
RnJhbWVCb3VuZHM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNz
RGF0YVN0b3JlUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0Rh
dGFTdG9yZVBhcmFtZXRlcnMuaAppbmRleCAyNWI1YTExNzYwZWEyMzY3YThlZjE5ZDBmZWE4ZjAz
MGNlNGZkOWY0Li42ZjEyNWY5ODJkMGNjZTZlMzcxZDZkOGRhYjhkY2UzNjgzYzlmNTE0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVy
cy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0
ZXJzLmgKQEAgLTQwLDggKzQwLDYgQEAgc3RydWN0IFdlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0
ZXJzIHsKICAgICBTdHJpbmcgYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeTsKICAgICBTYW5kYm94
RXh0ZW5zaW9uOjpIYW5kbGUgYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRs
ZTsKICAgICBTdHJpbmcgYXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZTsK
LSAgICBTdHJpbmcgd2ViU1FMRGF0YWJhc2VEaXJlY3Rvcnk7Ci0gICAgU2FuZGJveEV4dGVuc2lv
bjo6SGFuZGxlIHdlYlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIFN0
cmluZyBtZWRpYUNhY2hlRGlyZWN0b3J5OwogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBt
ZWRpYUNhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIFN0cmluZyBtZWRpYUtleVN0
b3JhZ2VEaXJlY3Rvcnk7CkBAIC02Nyw4ICs2NSw2IEBAIHZvaWQgV2ViUHJvY2Vzc0RhdGFTdG9y
ZVBhcmFtZXRlcnM6OmVuY29kZShFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogICAgIGVuY29kZXIg
PDwgYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeTsKICAgICBlbmNvZGVyIDw8IGFwcGxpY2F0aW9u
Q2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAgICAgZW5jb2RlciA8PCBhcHBsaWNhdGlv
bkNhY2hlRmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1lOwotICAgIGVuY29kZXIgPDwgd2ViU1FMRGF0
YWJhc2VEaXJlY3Rvcnk7Ci0gICAgZW5jb2RlciA8PCB3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeUV4
dGVuc2lvbkhhbmRsZTsKICAgICBlbmNvZGVyIDw8IG1lZGlhQ2FjaGVEaXJlY3Rvcnk7CiAgICAg
ZW5jb2RlciA8PCBtZWRpYUNhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIGVuY29k
ZXIgPDwgbWVkaWFLZXlTdG9yYWdlRGlyZWN0b3J5OwpAQCAtMTA0LDE1ICsxMDAsNiBAQCBPcHRp
b25hbDxXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycz4gV2ViUHJvY2Vzc0RhdGFTdG9yZVBh
cmFtZXRlcnM6OmRlY29kZShEZQogICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXBwbGljYXRpb25D
YWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSkpCiAgICAgICAgIHJldHVybiBXVEY6Om51bGxv
cHQ7CiAKLSAgICBTdHJpbmcgd2ViU1FMRGF0YWJhc2VEaXJlY3Rvcnk7Ci0gICAgaWYgKCFkZWNv
ZGVyLmRlY29kZSh3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeSkpCi0gICAgICAgIHJldHVybiBXVEY6
Om51bGxvcHQ7Ci0KLSAgICBPcHRpb25hbDxTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+IHdlYlNR
TERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwotICAgIGRlY29kZXIgPj4gd2ViU1FM
RGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7Ci0gICAgaWYgKCF3ZWJTUUxEYXRhYmFz
ZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSkKLSAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsK
LQogICAgIFN0cmluZyBtZWRpYUNhY2hlRGlyZWN0b3J5OwogICAgIGlmICghZGVjb2Rlci5kZWNv
ZGUobWVkaWFDYWNoZURpcmVjdG9yeSkpCiAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CkBA
IC0xNjYsOCArMTUzLDYgQEAgT3B0aW9uYWw8V2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnM+
IFdlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzOjpkZWNvZGUoRGUKICAgICAgICAgV1RGTW92
ZShhcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KSwKICAgICAgICAgV1RGTW92ZSgqYXBwbGljYXRp
b25DYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSksCiAgICAgICAgIFdURk1vdmUoYXBwbGlj
YXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSksCi0gICAgICAgIFdURk1vdmUod2Vi
U1FMRGF0YWJhc2VEaXJlY3RvcnkpLAotICAgICAgICBXVEZNb3ZlKCp3ZWJTUUxEYXRhYmFzZURp
cmVjdG9yeUV4dGVuc2lvbkhhbmRsZSksCiAgICAgICAgIFdURk1vdmUobWVkaWFDYWNoZURpcmVj
dG9yeSksCiAgICAgICAgIFdURk1vdmUoKm1lZGlhQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5k
bGUpLAogICAgICAgICBXVEZNb3ZlKG1lZGlhS2V5U3RvcmFnZURpcmVjdG9yeSksCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXIuY3BwIGIv
U291cmNlL1dlYktpdC9TaGFyZWQvV2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyLmNwcApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDAyNzA3MDVkNDllMjU4OThhYTYwYzY0MDk2ZmYxODQx
OWZmNGNkOC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9T
b3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXIuY3BwCisrKyAvZGV2
L251bGwKQEAgLTEsODcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwot
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJXZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXIuaCIKLQotI2luY2x1ZGUgIk5ldHdv
cmtQcm9jZXNzLmgiCi0jaW5jbHVkZSAiTmV0d29ya1Byb2Nlc3NQcm94eU1lc3NhZ2VzLmgiCi0j
aW5jbHVkZSAiV2ViUHJvY2Vzcy5oIgotI2luY2x1ZGUgIldlYlByb2Nlc3NQcm94eU1lc3NhZ2Vz
LmgiCi0jaW5jbHVkZSA8V2ViQ29yZS9TUUxpdGVEYXRhYmFzZVRyYWNrZXIuaD4KLQotbmFtZXNw
YWNlIFdlYktpdCB7Ci11c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKLQotV2ViU1FMaXRlRGF0YWJh
c2VUcmFja2VyOjpXZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXIoSXNIb2xkaW5nTG9ja2VkRmlsZXNI
YW5kbGVyJiYgaXNIb2xkaW5nTG9ja2VkRmlsZXNIYW5kbGVyKQotICAgIDogbV9pc0hvbGRpbmdM
b2NrZWRGaWxlc0hhbmRsZXIoV1RGTW92ZShpc0hvbGRpbmdMb2NrZWRGaWxlc0hhbmRsZXIpKQot
ICAgICwgbV9oeXN0ZXJlc2lzKFt0aGlzXShQQUw6Okh5c3RlcmVzaXNTdGF0ZSBzdGF0ZSkgeyBz
ZXRJc0hvbGRpbmdMb2NrZWRGaWxlcyhzdGF0ZSA9PSBQQUw6Okh5c3RlcmVzaXNTdGF0ZTo6U3Rh
cnRlZCk7IH0pCi17Ci0gICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKLSAgICBTUUxpdGVE
YXRhYmFzZVRyYWNrZXI6OnNldENsaWVudCh0aGlzKTsKLX0KLQotV2ViU1FMaXRlRGF0YWJhc2VU
cmFja2VyOjp+V2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyKCkKLXsKLSAgICBBU1NFUlQoUnVuTG9v
cDo6aXNNYWluKCkpOwotICAgIFNRTGl0ZURhdGFiYXNlVHJhY2tlcjo6c2V0Q2xpZW50KG51bGxw
dHIpOwotCi0gICAgaWYgKG1faHlzdGVyZXNpcy5zdGF0ZSgpID09IFBBTDo6SHlzdGVyZXNpc1N0
YXRlOjpTdGFydGVkKQotICAgICAgICBzZXRJc0hvbGRpbmdMb2NrZWRGaWxlcyhmYWxzZSk7Ci19
Ci0KLXZvaWQgV2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyOjpzZXRJc1N1c3BlbmRlZChib29sIGlz
U3VzcGVuZGVkKQotewotICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7Ci0gICAgbV9pc1N1
c3BlbmRlZCA9IGlzU3VzcGVuZGVkOwotfQotCi12b2lkIFdlYlNRTGl0ZURhdGFiYXNlVHJhY2tl
cjo6d2lsbEJlZ2luRmlyc3RUcmFuc2FjdGlvbigpCi17Ci0gICAgUnVuTG9vcDo6bWFpbigpLmRp
c3BhdGNoKFt3ZWFrVGhpcyA9IG1ha2VXZWFrUHRyKCp0aGlzKV0gewotICAgICAgICBpZiAod2Vh
a1RoaXMpCi0gICAgICAgICAgICB3ZWFrVGhpcy0+bV9oeXN0ZXJlc2lzLnN0YXJ0KCk7Ci0gICAg
fSk7Ci19Ci0KLXZvaWQgV2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyOjpkaWRGaW5pc2hMYXN0VHJh
bnNhY3Rpb24oKQotewotICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbd2Vha1RoaXMgPSBt
YWtlV2Vha1B0cigqdGhpcyldIHsKLSAgICAgICAgaWYgKHdlYWtUaGlzKQotICAgICAgICAgICAg
d2Vha1RoaXMtPm1faHlzdGVyZXNpcy5zdG9wKCk7Ci0gICAgfSk7Ci19Ci0KLXZvaWQgV2ViU1FM
aXRlRGF0YWJhc2VUcmFja2VyOjpzZXRJc0hvbGRpbmdMb2NrZWRGaWxlcyhib29sIGlzSG9sZGlu
Z0xvY2tlZEZpbGVzKQotewotICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7Ci0KLSAgICBp
ZiAobV9pc1N1c3BlbmRlZCkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgbV9pc0hvbGRpbmdMb2Nr
ZWRGaWxlc0hhbmRsZXIoaXNIb2xkaW5nTG9ja2VkRmlsZXMpOwotfQotCi19IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlNRTGl0ZURhdGFi
YXNlVHJhY2tlci5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViU1FMaXRlRGF0YWJhc2VUcmFj
a2VyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIyYmZkMzIzZGU1M2U2NTIzMjEz
OTEzMzg4N2RjNTRlODExMmM5MmQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViU1FMaXRlRGF0YWJhc2VUcmFja2Vy
LmgKKysrIC9kZXYvbnVsbApAQCAtMSw1OCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg
YGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI3ByYWdtYSBv
bmNlCi0KLSNpbmNsdWRlIDxXZWJDb3JlL1NRTGl0ZURhdGFiYXNlVHJhY2tlckNsaWVudC5oPgot
I2luY2x1ZGUgPHBhbC9IeXN0ZXJlc2lzQWN0aXZpdHkuaD4KLSNpbmNsdWRlIDx3dGYvTm9uY29w
eWFibGUuaD4KLSNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgotCi1uYW1lc3BhY2UgV2ViS2l0IHsK
LQotLy8gVXNlIGVhZ2VyIGluaXRpYWxpemF0aW9uIGZvciB0aGUgV2Vha1B0ckZhY3Rvcnkgc2lu
Y2Ugd2UgY2FsbCBtYWtlV2Vha1B0cigpIGZyb20gYSBub24tbWFpbiB0aHJlYWQuCi1jbGFzcyBX
ZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXIgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6U1FMaXRlRGF0
YWJhc2VUcmFja2VyQ2xpZW50LCBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8V2ViU1FMaXRlRGF0YWJh
c2VUcmFja2VyLCBXZWFrUHRyRmFjdG9yeUluaXRpYWxpemF0aW9uOjpFYWdlcj4gewotICAgIFdU
Rl9NQUtFX05PTkNPUFlBQkxFKFdlYlNRTGl0ZURhdGFiYXNlVHJhY2tlcikKLXB1YmxpYzoKLSAg
ICB1c2luZyBJc0hvbGRpbmdMb2NrZWRGaWxlc0hhbmRsZXIgPSBGdW5jdGlvbjx2b2lkKGJvb2wp
PjsKLSAgICBleHBsaWNpdCBXZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXIoSXNIb2xkaW5nTG9ja2Vk
RmlsZXNIYW5kbGVyJiYpOwotCi0gICAgfldlYlNRTGl0ZURhdGFiYXNlVHJhY2tlcigpOwotCi0g
ICAgdm9pZCBzZXRJc1N1c3BlbmRlZChib29sKTsKLQotcHJpdmF0ZToKLSAgICB2b2lkIHNldElz
SG9sZGluZ0xvY2tlZEZpbGVzKGJvb2wpOwotCi0gICAgLy8gV2ViQ29yZTo6U1FMaXRlRGF0YWJh
c2VUcmFja2VyQ2xpZW50LgotICAgIHZvaWQgd2lsbEJlZ2luRmlyc3RUcmFuc2FjdGlvbigpIGZp
bmFsOwotICAgIHZvaWQgZGlkRmluaXNoTGFzdFRyYW5zYWN0aW9uKCkgZmluYWw7Ci0KLSAgICBJ
c0hvbGRpbmdMb2NrZWRGaWxlc0hhbmRsZXIgbV9pc0hvbGRpbmdMb2NrZWRGaWxlc0hhbmRsZXI7
Ci0gICAgUEFMOjpIeXN0ZXJlc2lzQWN0aXZpdHkgbV9oeXN0ZXJlc2lzOwotICAgIGJvb2wgbV9p
c1N1c3BlbmRlZCB7IGZhbHNlIH07Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9NZWRpYUZvcm1hdFJlYWRlci9NZWRpYVNh
bXBsZUN1cnNvci5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL01lZGlhRm9ybWF0UmVhZGVy
L01lZGlhU2FtcGxlQ3Vyc29yLmgKaW5kZXggNjg3YjEzMDA0N2E4MjMzYzQ0MTMzZDM2Y2I2OGIx
ZjUxMWUzMzJlNi4uOGI0YThiZTZmMjNkYWU2ZjRlZjg1Y2RmNzUwZTcyOTc2YWZjZmFiYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL01lZGlhRm9ybWF0UmVhZGVyL01lZGlh
U2FtcGxlQ3Vyc29yLmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL01lZGlhRm9ybWF0
UmVhZGVyL01lZGlhU2FtcGxlQ3Vyc29yLmgKQEAgLTI5LDYgKzI5LDcgQEAKIAogI2luY2x1ZGUg
IkNvcmVNZWRpYVdyYXBwZWQuaCIKICNpbmNsdWRlIDxXZWJDb3JlL1NhbXBsZU1hcC5oPgorI2lu
Y2x1ZGUgPHd0Zi9JZGVudGlmaWVkLmg+CiAjaW5jbHVkZSA8d3RmL01lZGlhVGltZS5oPgogI2lu
Y2x1ZGUgPHd0Zi9WYXJpYW50Lmg+CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU291cmNl
cy50eHQgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CmluZGV4IDI1OGY5ZDNiZjZmZmE3MjZh
OTM5MWQxNTU1MWM3NTA0YWZhZGI2OGEuLjg4NDc0NDM5MzQ3NTBiMGJlMmFlY2Q2Yjk3Mzg0ZDEy
MjFmMjYzZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKKysrIGIvU291
cmNlL1dlYktpdC9Tb3VyY2VzLnR4dApAQCAtNTE5LDggKzUxOSw2IEBAIFdlYlByb2Nlc3MvQXV0
b21hdGlvbi9XZWJBdXRvbWF0aW9uRE9NV2luZG93T2JzZXJ2ZXIuY3BwCiBXZWJQcm9jZXNzL0Nh
Y2hlL1dlYkNhY2hlU3RvcmFnZUNvbm5lY3Rpb24uY3BwCiBXZWJQcm9jZXNzL0NhY2hlL1dlYkNh
Y2hlU3RvcmFnZVByb3ZpZGVyLmNwcAogCi1XZWJQcm9jZXNzL0RhdGFiYXNlcy9XZWJEYXRhYmFz
ZVByb3ZpZGVyLmNwcAotCiBXZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCQ29u
bmVjdGlvblRvU2VydmVyLmNwcAogCiBXZWJQcm9jZXNzL0VuY3J5cHRlZE1lZGlhL01lZGlhS2V5
U3lzdGVtUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9Tb3VyY2VzQ29jb2EudHh0IGIvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0Cmlu
ZGV4IDA0ZWFhNzlmNjE2MDk2NTU0MTI2NzlmMzY5NjcxOWM2ZjIxYTBjZWMuLmNmY2Y5M2U1Mjli
NTBlMDkyMzY2MDE5YTJlMzc3MDY4MDEyMjYxYjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
U291cmNlc0NvY29hLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50eHQKQEAg
LTE0Miw3ICsxNDIsNiBAQCBTaGFyZWQvQVBJV2ViQXJjaGl2ZVJlc291cmNlLm1tCiBTaGFyZWQv
RG9jdW1lbnRFZGl0aW5nQ29udGV4dC5tbQogU2hhcmVkL0ZvY3VzZWRFbGVtZW50SW5mb3JtYXRp
b24uY3BwCiBTaGFyZWQvVmlzaWJsZUNvbnRlbnRSZWN0VXBkYXRlSW5mby5jcHAKLVNoYXJlZC9X
ZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXIuY3BwCiAKIFNoYXJlZC9jZi9Bcmd1bWVudENvZGVyc0NG
LmNwcCBAbm8tdW5pZnkKIFNoYXJlZC9jZi9Db29raWVTdG9yYWdlVXRpbHNDRi5tbQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAppbmRleCAwNTE2
ZGI0NzE1ZWY2N2Y3MGNmYzgxNThhOTI0MDJlMzljMDY5ZjJkLi5kYWJhY2U0MDU5YjMyMTVkZDk2
ZDJjYzYyZmY3YjJjYTM0Y2I4NjI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQy9XS1ByZWZlcmVuY2VzLmNwcApAQCAtMTk5NiwxNiArMTk5Niw2IEBAIGJvb2wgV0tQcmVm
ZXJlbmNlc0dldFB1bmNoT3V0V2hpdGVCYWNrZ3JvdW5kc0luRGFya01vZGUoV0tQcmVmZXJlbmNl
c1JlZiBwcmVmZXJlCiAgICAgcmV0dXJuIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnB1bmNoT3V0
V2hpdGVCYWNrZ3JvdW5kc0luRGFya01vZGUoKTsKIH0KIAotdm9pZCBXS1ByZWZlcmVuY2VzU2V0
V2ViU1FMRGlzYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBmbGFn
KQotewotICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNldFdlYlNRTERpc2FibGVkKGZsYWcp
OwotfQotCi1ib29sIFdLUHJlZmVyZW5jZXNHZXRXZWJTUUxEaXNhYmxlZChXS1ByZWZlcmVuY2Vz
UmVmIHByZWZlcmVuY2VzUmVmKQotewotICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYp
LT53ZWJTUUxEaXNhYmxlZCgpOwotfQotCiB2b2lkIFdLUHJlZmVyZW5jZXNTZXRDYXB0dXJlQXVk
aW9JblVJUHJvY2Vzc0VuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9v
bCBmbGFnKQogewogICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNldENhcHR1cmVBdWRpb0lu
VUlQcm9jZXNzRW5hYmxlZChmbGFnKTsKQEAgLTIyMjcsMyArMjIxNywxMiBAQCBib29sIFdLUHJl
ZmVyZW5jZXNHZXRTdWJwaXhlbENTU09NRWxlbWVudE1ldHJpY3NFbmFibGVkKFdLUHJlZmVyZW5j
ZXNSZWYpCiB7CiAgICAgcmV0dXJuIGZhbHNlOwogfQorCit2b2lkIFdLUHJlZmVyZW5jZXNTZXRX
ZWJTUUxEaXNhYmxlZChXS1ByZWZlcmVuY2VzUmVmLCBib29sKQoreworfQorCitib29sIFdLUHJl
ZmVyZW5jZXNHZXRXZWJTUUxEaXNhYmxlZChXS1ByZWZlcmVuY2VzUmVmKQoreworICAgIHJldHVy
biB0cnVlOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQ
cmVmZXJlbmNlc1JlZi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJl
bmNlc1JlZi5oCmluZGV4IDhlZDYyMTE3YmU1ZDUzYmUyNmVkY2RkNzY3MWUxZmE1MWYzYTMxY2Mu
LmJkNThjNTAyZjA1NzdmODE2ZDZmNGQyMTkzMWMxMTIyYTY4ODMzMjAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNSZWYuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUmVmLmgKQEAgLTMzMSw3ICsz
MzEsNyBAQCBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0Q3Jvc3NPcmlnaW5SZXNvdXJj
ZVBvbGljeUVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZgogV0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJl
bmNlc0dldFByb2Nlc3NTd2FwT25OYXZpZ2F0aW9uRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHBy
ZWZlcmVuY2VzUmVmKTsKIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRQcm9jZXNzU3dh
cE9uTmF2aWdhdGlvbkVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9v
bCBlbmFibGVkKTsKIAotLy8gRGVmYXVsdHMgdG8gZmFsc2UuCisvLyBPYnNvbGV0ZS4gQWx3YXlz
IHJldHVybnMgdHJ1ZS4KIFdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRXZWJTUUxEaXNh
YmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKIFdLX0VYUE9SVCB2b2lkIFdL
UHJlZmVyZW5jZXNTZXRXZWJTUUxEaXNhYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2Vz
UmVmLCBib29sIGVuYWJsZWQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUG9vbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNz
UG9vbC5jcHAKaW5kZXggMzQyMDBjYzU2NmNkOTZkMDM0MWUyOGRiNDY2ODRlZTA4ZDA1N2Q0My4u
OTBjZmZhNWNjYjYwMGExNzg5MjE1ZDk0MTJiYmQzYWFhNmE2ZWVhNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcApAQCAtNzM3LDExICs3MzcsNiBAQCBXZWJQ
cm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycyBXZWJQcm9jZXNzUG9vbDo6d2ViUHJvY2Vzc0RhdGFT
dG9yZVBhcmFtZXRlcnMoV2ViUAogCiAgICAgU3RyaW5nIGFwcGxpY2F0aW9uQ2FjaGVGbGF0Rmls
ZVN1YmRpcmVjdG9yeU5hbWUgPSB3ZWJzaXRlRGF0YVN0b3JlLmFwcGxpY2F0aW9uQ2FjaGVGbGF0
RmlsZVN1YmRpcmVjdG9yeU5hbWUoKTsKIAotICAgIFN0cmluZyB3ZWJTUUxEYXRhYmFzZURpcmVj
dG9yeSA9IHdlYnNpdGVEYXRhU3RvcmUucmVzb2x2ZWREYXRhYmFzZURpcmVjdG9yeSgpOwotICAg
IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSB3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeUV4dGVuc2lv
bkhhbmRsZTsKLSAgICBpZiAoIXdlYlNRTERhdGFiYXNlRGlyZWN0b3J5LmlzRW1wdHkoKSkKLSAg
ICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlV2l0aG91dFJlc29sdmluZ1BhdGgo
d2ViU1FMRGF0YWJhc2VEaXJlY3RvcnksIFNhbmRib3hFeHRlbnNpb246OlR5cGU6OlJlYWRXcml0
ZSwgd2ViU1FMRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOwotCiAgICAgU3RyaW5n
IG1lZGlhQ2FjaGVEaXJlY3RvcnkgPSB3ZWJzaXRlRGF0YVN0b3JlLnJlc29sdmVkTWVkaWFDYWNo
ZURpcmVjdG9yeSgpOwogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBtZWRpYUNhY2hlRGly
ZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIGlmICghbWVkaWFDYWNoZURpcmVjdG9yeS5pc0Vt
cHR5KCkpCkBAIC03NjcsOCArNzYyLDYgQEAgV2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnMg
V2ViUHJvY2Vzc1Bvb2w6OndlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzKFdlYlAKICAgICAg
ICAgV1RGTW92ZShhcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KSwKICAgICAgICAgV1RGTW92ZShh
cHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKSwKICAgICAgICAgV1RGTW92
ZShhcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1lKSwKLSAgICAgICAgV1RG
TW92ZSh3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeSksCi0gICAgICAgIFdURk1vdmUod2ViU1FMRGF0
YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpLAogICAgICAgICBXVEZNb3ZlKG1lZGlhQ2Fj
aGVEaXJlY3RvcnkpLAogICAgICAgICBXVEZNb3ZlKG1lZGlhQ2FjaGVEaXJlY3RvcnlFeHRlbnNp
b25IYW5kbGUpLAogICAgICAgICBXVEZNb3ZlKG1lZGlhS2V5U3RvcmFnZURpcmVjdG9yeSksCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
IGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA1
MTRiMWUwNmQ5NjZiZmJiODJlMjU2MDIwMTM1ZDk5ZDRjMDA1ODZkLi41YzQzNzBkOWRkN2YyYWZj
M2U3NWQyNTQxYjY4NTc2MjZhZjVlMTUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktp
dC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTMyMSw3ICszMjEsNiBAQAogCQkxQUE1NzYwMjE0
OTZCOTc5MDBBNEVFMDYgLyogRXZlbnREaXNwYXRjaGVyTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQTU3NUZGMTQ5NkI3
QzAwMEE0RUUwNiAvKiBFdmVudERpc3BhdGNoZXJNZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9Owog
CQkxQUE1ODg5MjExRUU3MDQwMDA2MUI4ODIgLyogTmV0c2NhcGVQbHVnaW5TdHJlYW0uaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQTU4ODkwMTFFRTcw
NDAwMDYxQjg4MiAvKiBOZXRzY2FwZVBsdWdpblN0cmVhbS5oICovOyB9OwogCQkxQUE2NTREMTFC
MTRGNzE0MDBCRjFEM0UgLyogV0tXZWJzaXRlRGF0YVJlY29yZFByaXZhdGUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQTY1NEQwMUIxNEY3MTQwMEJG
MUQzRSAvKiBXS1dlYnNpdGVEYXRhUmVjb3JkUHJpdmF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTFBQTgzRjZEMUE1QjYzRkYwMDAyNkVDNiAv
KiBXZWJEYXRhYmFzZVByb3ZpZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQUE4M0Y2QjFBNUI2M0ZGMDAwMjZFQzYgLyogV2ViRGF0YWJhc2VQcm92
aWRlci5oICovOyB9OwogCQkxQUFCMDM3QTE4NUE3QzZBMDBFREY1MDEgLyogTWVzc2FnZVNlbmRl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQjAz
NzgxODVBN0M2QTAwRURGNTAxIC8qIE1lc3NhZ2VTZW5kZXIuaCAqLzsgfTsKIAkJMUFBQjRBOEQx
Mjk2RjBBMjAwMjM5NTJGIC8qIFNhbmRib3hFeHRlbnNpb24uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQUI0QThDMTI5NkYwQTIwMDIzOTUyRiAvKiBT
YW5kYm94RXh0ZW5zaW9uLmggKi87IH07CiAJCTFBQUJGRTNBMTgyOUMxRUQwMDVCMDcwRSAvKiBf
V0tSZW1vdGVPYmplY3RJbnRlcmZhY2VJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQkZFMzkxODI5QzFFRDAwNUIwNzBFIC8qIF9XS1Jl
bW90ZU9iamVjdEludGVyZmFjZUludGVybmFsLmggKi87IH07CkBAIC0xNDMzLDcgKzE0MzIsNiBA
QAogCQk4MzJBRTI1MjFCRTJFOENEMDBGQUFFMTAgLyogTmV0d29ya0NhY2hlU3BlY3VsYXRpdmVM
b2FkTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gODMyQUUyNTAxQkUyRThDRDAwRkFBRTEwIC8qIE5ldHdvcmtDYWNoZVNwZWN1bGF0aXZlTG9h
ZE1hbmFnZXIuaCAqLzsgfTsKIAkJODMyRUQxOEMxRTJGRTE1NzAwNkJBNjRBIC8qIFBlckFjdGl2
aXR5U3RhdGVDUFVVc2FnZVNhbXBsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDgzMkVEMThBMUUyRkUxM0IwMDZCQTY0QSAvKiBQZXJBY3Rpdml0eVN0
YXRlQ1BVVXNhZ2VTYW1wbGVyLmggKi87IH07CiAJCTgzNEIyNTBGMUE4MzFBOEQwMENGQjE1MCAv
KiBOZXR3b3JrQ2FjaGVGaWxlU3lzdGVtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA4MzRCMjUwRTFBODMxQThEMDBDRkIxNTAgLyogTmV0d29ya0NhY2hl
RmlsZVN5c3RlbS5oICovOyB9OwotCQk4MzYwMzRBMDFBQ0IzNEQ2MDA2MjY1NDkgLyogV2ViU1FM
aXRlRGF0YWJhc2VUcmFja2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzYwMzQ5RTFBQ0IzNEQ2MDA2MjY1NDkgLyogV2ViU1FMaXRlRGF0YWJhc2VU
cmFja2VyLmggKi87IH07CiAJCTgzNzJEQjI1MUE2NzRDOEYwMEM2OTdDNSAvKiBXS1BhZ2VEaWFn
bm9zdGljTG9nZ2luZ0NsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODM3MkRCMjQxQTY3NEM4RjAwQzY5N0M1IC8qIFdLUGFnZURpYWdub3N0aWNM
b2dnaW5nQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJODM3MkRCMjkxQTY3NTYyODAwQzY5N0M1IC8qIFdlYlBhZ2VEaWFnbm9zdGljTG9n
Z2luZ0NsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gODM3MkRCMjcxQTY3NTYyODAwQzY5N0M1IC8qIFdlYlBhZ2VEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudC5oICovOyB9OwogCQk4MzcyREIyRjFBNjc3RDRBMDBDNjk3QzUgLyogV0tEaWFnbm9zdGlj
TG9nZ2luZ1Jlc3VsdFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDgzNzJEQjJFMUE2NzdENEEwMEM2OTdDNSAvKiBXS0RpYWdub3N0aWNMb2dnaW5n
UmVzdWx0VHlwZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CkBAIC0yODE3LDggKzI4MTUsNiBAQAogCQkxQUE1ODg5MDExRUU3MDQwMDA2MUI4ODIgLyog
TmV0c2NhcGVQbHVnaW5TdHJlYW0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
TmV0c2NhcGVQbHVnaW5TdHJlYW0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFB
NTg4OTExMUVFNzA0MDAwNjFCODgyIC8qIE5ldHNjYXBlUGx1Z2luU3RyZWFtLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5ldHNjYXBlUGx1Z2luU3RyZWFtLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFBNjU0RDAxQjE0RjcxNDAwQkYxRDNFIC8q
IFdLV2Vic2l0ZURhdGFSZWNvcmRQcml2YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFdLV2Vic2l0ZURhdGFSZWNvcmRQcml2YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTFBQTgzRjZBMUE1QjYzRkYwMDAyNkVDNiAvKiBXZWJEYXRhYmFzZVByb3ZpZGVy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkRhdGFiYXNlUHJv
dmlkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkxQUE4M0Y2QjFBNUI2M0ZG
MDAwMjZFQzYgLyogV2ViRGF0YWJhc2VQcm92aWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXZWJEYXRhYmFzZVByb3ZpZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFBQUIwMzc3MTg1QTdDNkEwMEVERjUwMSAvKiBNZXNzYWdlU2VuZGVyLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lc3NhZ2VTZW5kZXIuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUFCMDM3ODE4NUE3QzZBMDBFREY1MDEgLyogTWVz
c2FnZVNlbmRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZXNzYWdlU2Vu
ZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBQUIwMzdCMTg1Rjk5RDgwMEVE
RjUwMSAvKiBBUElEYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEFQSURhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNDc4NCw4ICs0Nzgw
LDYgQEAKIAkJODMzOTdDNjYyMjEyNEJEMTAwQjYyMzg4IC8qIFdlYlByb2Nlc3NDYWNoZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJQcm9jZXNzQ2FjaGUuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzM5N0M2NzIyMTI0QkQxMDBCNjIzODgg
LyogV2ViUHJvY2Vzc0NhY2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdl
YlByb2Nlc3NDYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzRCMjUwRTFB
ODMxQThEMDBDRkIxNTAgLyogTmV0d29ya0NhY2hlRmlsZVN5c3RlbS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3JrQ2FjaGVGaWxlU3lzdGVtLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07Ci0JCTgzNjAzNDlEMUFDQjM0RDYwMDYyNjU0OSAvKiBXZWJTUUxpdGVE
YXRhYmFzZVRyYWNrZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
V2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJODM2MDM0OUUxQUNCMzRENjAwNjI2NTQ5IC8qIFdlYlNRTGl0ZURhdGFiYXNlVHJhY2tlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJTUUxpdGVEYXRhYmFzZVRyYWNr
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM3MkRCMjQxQTY3NEM4RjAwQzY5
N0M1IC8qIFdLUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFdLUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzNzJEQjI2MUE2NzU2MjgwMEM2OTdDNSAvKiBXZWJQYWdl
RGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gV2ViUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJODM3MkRCMjcxQTY3NTYyODAwQzY5N0M1IC8qIFdlYlBhZ2VEaWFn
bm9zdGljTG9nZ2luZ0NsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBX
ZWJQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTY4NTMsOCArNjg0Nyw2IEBACiAJCQkJNUMxMzAyNEExRkUzNDFBNzAwMEQ5QjMxIC8q
IFdlYnNpdGVQb2xpY2llc0RhdGEuaCAqLywKIAkJCQkwRURFODUwMjIwMDRFNzQ5MDAwMzA1NjAg
LyogV2Vic2l0ZVBvcFVwUG9saWN5LmggKi8sCiAJCQkJNzFGQjgxMEEyMjYwNjI3QTAwMzIzNjc3
IC8qIFdlYnNpdGVTaW11bGF0ZWRNb3VzZUV2ZW50c0Rpc3BhdGNoUG9saWN5LmggKi8sCi0JCQkJ
ODM2MDM0OUQxQUNCMzRENjAwNjI2NTQ5IC8qIFdlYlNRTGl0ZURhdGFiYXNlVHJhY2tlci5jcHAg
Ki8sCi0JCQkJODM2MDM0OUUxQUNCMzRENjAwNjI2NTQ5IC8qIFdlYlNRTGl0ZURhdGFiYXNlVHJh
Y2tlci5oICovLAogCQkJCUMwMzM3REQ3MTI3QTUxQjYwMDhGRjRGNCAvKiBXZWJUb3VjaEV2ZW50
LmNwcCAqLywKIAkJCQkwRjQwMDEwMDI1MjdENzNDMDBFOTFEQTcgLyogV2ViVG91Y2hFdmVudC5o
ICovLAogCQkJCTdDMDY1RjI5MUM4Q0Q5NUYwMEMyRDk1MCAvKiBXZWJVc2VyQ29udGVudENvbnRy
b2xsZXJEYXRhVHlwZXMuY3BwICovLApAQCAtODcwNCw4ICs4Njk2LDYgQEAKIAkJCWlzYSA9IFBC
WEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCiAJCQkJNTExRjhFREExODA4ODE2NjAwNDdEQTk2IC8q
IEluZGV4ZWREQiAqLywKLQkJCQkxQUE4M0Y2QTFBNUI2M0ZGMDAwMjZFQzYgLyogV2ViRGF0YWJh
c2VQcm92aWRlci5jcHAgKi8sCi0JCQkJMUFBODNGNkIxQTVCNjNGRjAwMDI2RUM2IC8qIFdlYkRh
dGFiYXNlUHJvdmlkZXIuaCAqLywKIAkJCSk7CiAJCQlwYXRoID0gRGF0YWJhc2VzOwogCQkJc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsKQEAgLTEyNDE3LDcgKzEyNDA3LDYgQEAKIAkJCQkzMzA5MzQ0
QTEzMTVCOTIyMDA5N0E3QkMgLyogV2ViQ29va2llTWFuYWdlclByb3h5TWVzc2FnZXMuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUJDMUREN0IyMTE0REMzOTYwMDVBREFGMyAvKiBXZWJDb3JlQXJndW1l
bnRDb2RlcnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxMkY1ODlCMTJBODgzODgwMDYyOTUzMCAv
KiBXZWJDcmVkZW50aWFsLmggaW4gSGVhZGVycyAqLywKLQkJCQkxQUE4M0Y2RDFBNUI2M0ZGMDAw
MjZFQzYgLyogV2ViRGF0YWJhc2VQcm92aWRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTUyQ0Y1
NTIyMEEzNUMzQTAwREFEQTI3IC8qIFdlYkRhdGFMaXN0U3VnZ2VzdGlvblBpY2tlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJRTU2OEI5MUYyMEEzQUIyRjAwRTNDODU2IC8qIFdlYkRhdGFMaXN0U3Vn
Z2VzdGlvbnNEcm9wZG93bi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTVCRUY2ODIyMTMwQzQ4MDAw
RjMxMTExIC8qIFdlYkRhdGFMaXN0U3VnZ2VzdGlvbnNEcm9wZG93bklPUy5oIGluIEhlYWRlcnMg
Ki8sCkBAIC0xMjU3Niw3ICsxMjU2NSw2IEBACiAJCQkJOTNENkI3ODcyNTRDQ0Q4QzAwNThERDNB
IC8qIFdlYlNwZWVjaFJlY29nbml0aW9uQ29ubmVjdGlvbk1lc3NhZ2VzLmggaW4gSGVhZGVycyAq
LywKIAkJCQk5M0Q2Qjc4ODI1NENDRDk0MDA1OEREM0EgLyogV2ViU3BlZWNoUmVjb2duaXRpb25D
b25uZWN0aW9uTWVzc2FnZXNSZXBsaWVzLmggaW4gSGVhZGVycyAqLywKIAkJCQlDMTQ5MzgwOTIy
MzQ3MTA0MDAwQ0Q3MDcgLyogV2ViU3BlZWNoU3ludGhlc2lzQ2xpZW50LmggaW4gSGVhZGVycyAq
LywKLQkJCQk4MzYwMzRBMDFBQ0IzNEQ2MDA2MjY1NDkgLyogV2ViU1FMaXRlRGF0YWJhc2VUcmFj
a2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQTUyQzBGODFBMzhDREM3MDAxNjE2MEEgLyogV2Vi
U3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzU2RjJEQzIx
NTJCNkI1MDBFNkQ1REYgLyogV2ViU1dDbGllbnRDb25uZWN0aW9uLmggaW4gSGVhZGVycyAqLywK
IAkJCQk1MTdBNTMxMDFGNDdBODYyMDBEQ0RDMEEgLyogV2ViU1dDbGllbnRDb25uZWN0aW9uTWVz
c2FnZXMuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL0RhdGFiYXNlcy9XZWJEYXRhYmFzZVByb3ZpZGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9EYXRhYmFzZXMvV2ViRGF0YWJhc2VQcm92aWRlci5jcHAKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDhkODhkODRiYzYwMDJhZmI2YTM1NjYzZTQyYmJiZjMwM2QwOWMzNWYu
LjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL0RhdGFiYXNlcy9XZWJEYXRhYmFzZVByb3ZpZGVyLmNwcAorKysgL2Rl
di9udWxsCkBAIC0xLDc0ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTUgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
Ci0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0g
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycK
LSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0g
KiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgi
Ci0jaW5jbHVkZSAiV2ViRGF0YWJhc2VQcm92aWRlci5oIgotCi0jaW5jbHVkZSAiTmV0d29ya1By
b2Nlc3NDb25uZWN0aW9uLmgiCi0jaW5jbHVkZSAiV2ViSURCQ29ubmVjdGlvblRvU2VydmVyLmgi
Ci0jaW5jbHVkZSAiV2ViUHJvY2Vzcy5oIgotI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0jaW5j
bHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+Ci0KLW5hbWVzcGFjZSBXZWJLaXQgewotdXNpbmcg
bmFtZXNwYWNlIFdlYkNvcmU7Ci0KLXN0YXRpYyBIYXNoTWFwPHVpbnQ2NF90LCBXZWJEYXRhYmFz
ZVByb3ZpZGVyKj4mIGRhdGFiYXNlUHJvdmlkZXJzKCkKLXsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0
cm95ZWQ8SGFzaE1hcDx1aW50NjRfdCwgV2ViRGF0YWJhc2VQcm92aWRlcio+PiBkYXRhYmFzZVBy
b3ZpZGVyczsKLQotICAgIHJldHVybiBkYXRhYmFzZVByb3ZpZGVyczsKLX0KLQotUmVmPFdlYkRh
dGFiYXNlUHJvdmlkZXI+IFdlYkRhdGFiYXNlUHJvdmlkZXI6OmdldE9yQ3JlYXRlKHVpbnQ2NF90
IGlkZW50aWZpZXIpCi17Ci0gICAgYXV0byYgc2xvdCA9IGRhdGFiYXNlUHJvdmlkZXJzKCkuYWRk
KGlkZW50aWZpZXIsIG51bGxwdHIpLml0ZXJhdG9yLT52YWx1ZTsKLSAgICBpZiAoc2xvdCkKLSAg
ICAgICAgcmV0dXJuICpzbG90OwotCi0gICAgUmVmPFdlYkRhdGFiYXNlUHJvdmlkZXI+IGRhdGFi
YXNlUHJvdmlkZXIgPSBhZG9wdFJlZigqbmV3IFdlYkRhdGFiYXNlUHJvdmlkZXIoaWRlbnRpZmll
cikpOwotICAgIHNsb3QgPSBkYXRhYmFzZVByb3ZpZGVyLnB0cigpOwotCi0gICAgcmV0dXJuIGRh
dGFiYXNlUHJvdmlkZXI7Ci19Ci0KLVdlYkRhdGFiYXNlUHJvdmlkZXI6OldlYkRhdGFiYXNlUHJv
dmlkZXIodWludDY0X3QgaWRlbnRpZmllcikKLSAgICA6IG1faWRlbnRpZmllcihpZGVudGlmaWVy
KQotewotfQotCi1XZWJEYXRhYmFzZVByb3ZpZGVyOjp+V2ViRGF0YWJhc2VQcm92aWRlcigpCi17
Ci0gICAgQVNTRVJUKGRhdGFiYXNlUHJvdmlkZXJzKCkuY29udGFpbnMobV9pZGVudGlmaWVyKSk7
Ci0KLSAgICBkYXRhYmFzZVByb3ZpZGVycygpLnJlbW92ZShtX2lkZW50aWZpZXIpOwotfQotCi1X
ZWJDb3JlOjpJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Ub1NlcnZlciYgV2ViRGF0YWJhc2VQcm92
aWRlcjo6aWRiQ29ubmVjdGlvblRvU2VydmVyRm9yU2Vzc2lvbihjb25zdCBQQUw6OlNlc3Npb25J
RCYpCi17Ci0gICAgcmV0dXJuIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQ
cm9jZXNzQ29ubmVjdGlvbigpLmlkYkNvbm5lY3Rpb25Ub1NlcnZlcigpLmNvcmVDb25uZWN0aW9u
VG9TZXJ2ZXIoKTsKLX0KLQotfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0RhdGFiYXNlcy9XZWJEYXRhYmFzZVByb3ZpZGVyLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvRGF0YWJhc2VzL1dlYkRhdGFiYXNlUHJvdmlkZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggNWI1YWYwYzkxZjI2Njg5M2VlYzliMTViMThiMTA3OTJlZjcxZTZlYy4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvRGF0YWJhc2VzL1dlYkRhdGFiYXNlUHJvdmlkZXIuaAorKysgL2Rldi9udWxsCkBA
IC0xLDQ5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTUgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFdlYkRhdGFiYXNlUHJvdmlkZXJf
aAotI2RlZmluZSBXZWJEYXRhYmFzZVByb3ZpZGVyX2gKLQotI2luY2x1ZGUgPFdlYkNvcmUvRGF0
YWJhc2VQcm92aWRlci5oPgotI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0KLW5hbWVzcGFjZSBX
ZWJLaXQgewotCi1jbGFzcyBXZWJEYXRhYmFzZVByb3ZpZGVyIGZpbmFsIDogcHVibGljIFdlYkNv
cmU6OkRhdGFiYXNlUHJvdmlkZXIgewotcHVibGljOgotICAgIHN0YXRpYyBSZWY8V2ViRGF0YWJh
c2VQcm92aWRlcj4gZ2V0T3JDcmVhdGUodWludDY0X3QgaWRlbnRpZmllcik7Ci0gICAgdmlydHVh
bCB+V2ViRGF0YWJhc2VQcm92aWRlcigpOwotCi0gICAgV2ViQ29yZTo6SURCQ2xpZW50OjpJREJD
b25uZWN0aW9uVG9TZXJ2ZXImIGlkYkNvbm5lY3Rpb25Ub1NlcnZlckZvclNlc3Npb24oY29uc3Qg
UEFMOjpTZXNzaW9uSUQmKSBmaW5hbDsKLQotcHJpdmF0ZToKLSAgICBleHBsaWNpdCBXZWJEYXRh
YmFzZVByb3ZpZGVyKHVpbnQ2NF90IGlkZW50aWZpZXIpOwotCi0gICAgY29uc3QgdWludDY0X3Qg
bV9pZGVudGlmaWVyOwotfTsKLQotfQotCi0jZW5kaWYgLy8gV2ViRGF0YWJhc2VQcm92aWRlcl9o
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRl
eHRNYW5hZ2VyQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFn
ZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5jcHAKaW5kZXggNjNjMjI2MGVmYjRiNzFl
MTEwYmYxNGJmNDYyNDg5MjYyNThiYTA1NC4uY2FlZTJhYWJmNmJjY2M2ZjA1YzQ5ZWRkNzIwNGUz
ZjhlOThkMWRlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2Uv
V2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmNwcApAQCAtMzks
NyArMzksNiBAQAogI2luY2x1ZGUgIldlYkNhY2hlU3RvcmFnZVByb3ZpZGVyLmgiCiAjaW5jbHVk
ZSAiV2ViQ29tcGlsZWRDb250ZW50UnVsZUxpc3REYXRhLmgiCiAjaW5jbHVkZSAiV2ViQ29yZUFy
Z3VtZW50Q29kZXJzLmgiCi0jaW5jbHVkZSAiV2ViRGF0YWJhc2VQcm92aWRlci5oIgogI2luY2x1
ZGUgIldlYkRvY3VtZW50TG9hZGVyLmgiCiAjaW5jbHVkZSAiV2ViRnJhbWVMb2FkZXJDbGllbnQu
aCIKICNpbmNsdWRlICJXZWJQYWdlLmgiCkBAIC0xMzksNyArMTM4LDYgQEAgdm9pZCBXZWJTV0Nv
bnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6aW5zdGFsbFNlcnZpY2VXb3JrZXIoU2VydmljZVdvcmtl
ckNvbnRleHREYXQKIHsKICAgICBhdXRvIHBhZ2VDb25maWd1cmF0aW9uID0gcGFnZUNvbmZpZ3Vy
YXRpb25XaXRoRW1wdHlDbGllbnRzKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnNlc3Npb25JRCgp
KTsKIAotICAgIHBhZ2VDb25maWd1cmF0aW9uLmRhdGFiYXNlUHJvdmlkZXIgPSBXZWJEYXRhYmFz
ZVByb3ZpZGVyOjpnZXRPckNyZWF0ZShtX3BhZ2VHcm91cElEKTsKICAgICBwYWdlQ29uZmlndXJh
dGlvbi5zb2NrZXRQcm92aWRlciA9IFdlYlNvY2tldFByb3ZpZGVyOjpjcmVhdGUobV93ZWJQYWdl
UHJveHlJRCk7CiAgICAgcGFnZUNvbmZpZ3VyYXRpb24udXNlckNvbnRlbnRQcm92aWRlciA9IG1f
dXNlckNvbnRlbnRDb250cm9sbGVyOwogI2lmIEVOQUJMRShXRUJfUlRDKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCAzNDAxNDUyY2Y1ZTY0NWI4
ZjcxZjY5YWVlNGYxZTE3OWVmMWYyMTc4Li5mYTMwNDdmOGYzZDQzODQyYTMwYTM2OGE0OGJkODM5
Mzc2NWFjNjk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdl
LmNwcApAQCAtODMsNyArODMsNiBAQAogI2luY2x1ZGUgIldlYkNvb2tpZUphci5oIgogI2luY2x1
ZGUgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgogI2luY2x1ZGUgIldlYkRhdGFMaXN0U3VnZ2Vz
dGlvblBpY2tlci5oIgotI2luY2x1ZGUgIldlYkRhdGFiYXNlUHJvdmlkZXIuaCIKICNpbmNsdWRl
ICJXZWJEYXRlVGltZUNob29zZXIuaCIKICNpbmNsdWRlICJXZWJEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudC5oIgogI2luY2x1ZGUgIldlYkRvY3VtZW50TG9hZGVyLmgiCkBAIC01NzgsNyArNTc3LDYg
QEAgV2ViUGFnZTo6V2ViUGFnZShQYWdlSWRlbnRpZmllciBwYWdlSUQsIFdlYlBhZ2VDcmVhdGlv
blBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQogI2VuZGlmCiAKICAgICBwYWdlQ29uZmlndXJhdGlv
bi5hcHBsaWNhdGlvbkNhY2hlU3RvcmFnZSA9ICZXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5hcHBs
aWNhdGlvbkNhY2hlU3RvcmFnZSgpOwotICAgIHBhZ2VDb25maWd1cmF0aW9uLmRhdGFiYXNlUHJv
dmlkZXIgPSBXZWJEYXRhYmFzZVByb3ZpZGVyOjpnZXRPckNyZWF0ZShtX3BhZ2VHcm91cC0+cGFn
ZUdyb3VwSUQoKSk7CiAgICAgcGFnZUNvbmZpZ3VyYXRpb24ucGx1Z2luSW5mb1Byb3ZpZGVyID0g
JldlYlBsdWdpbkluZm9Qcm92aWRlcjo6c2luZ2xldG9uKCk7CiAgICAgcGFnZUNvbmZpZ3VyYXRp
b24uc3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyID0gV2ViU3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVy
OjpnZXRPckNyZWF0ZSgqbV9wYWdlR3JvdXApOwogICAgIHBhZ2VDb25maWd1cmF0aW9uLnZpc2l0
ZWRMaW5rU3RvcmUgPSBWaXNpdGVkTGlua1RhYmxlQ29udHJvbGxlcjo6Z2V0T3JDcmVhdGUocGFy
YW1ldGVycy52aXNpdGVkTGlua1RhYmxlSUQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBy
b2Nlc3MuY3BwCmluZGV4IDIxNWFhYmIwZDU5MmE1NjQ1ZTUyYTBhNGQ3YmRlMWEyMzI1MTcxYWIu
LjMzYzg4YWUzZWFkYTFhNmM3NjBlZTg0MzE2MTc2MjI4NDUzNTI1ZjAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKQEAgLTE1OCwxMCArMTU4LDYgQEAKICNpbmNsdWRl
IDxXZWJDb3JlL0Rpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXIuaD4KICNlbmRpZgogCi0jaWYg
UExBVEZPUk0oSU9TX0ZBTUlMWSkKLSNpbmNsdWRlICJXZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXIu
aCIKLSNlbmRpZgotCiAjaWYgRU5BQkxFKFNFQ19JVEVNX1NISU0pCiAjaW5jbHVkZSAiU2VjSXRl
bVNoaW0uaCIKICNlbmRpZgpAQCAtMjc1LDkgKzI3MSw2IEBAIFdlYlByb2Nlc3M6OldlYlByb2Nl
c3MoKQogI2lmIEVOQUJMRShOT05fVklTSUJMRV9XRUJQUk9DRVNTX01FTU9SWV9DTEVBTlVQX1RJ
TUVSKQogICAgICwgbV9ub25WaXNpYmxlUHJvY2Vzc01lbW9yeUNsZWFudXBUaW1lcigqdGhpcywg
JldlYlByb2Nlc3M6Om5vblZpc2libGVQcm9jZXNzTWVtb3J5Q2xlYW51cFRpbWVyRmlyZWQpCiAj
ZW5kaWYKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAgICwgbV93ZWJTUUxpdGVEYXRhYmFz
ZVRyYWNrZXIoW3RoaXNdKGJvb2wgaXNIb2xkaW5nTG9ja2VkRmlsZXMpIHsgcGFyZW50UHJvY2Vz
c0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpTZXRJc0hvbGRp
bmdMb2NrZWRGaWxlcyhpc0hvbGRpbmdMb2NrZWRGaWxlcyksIDApOyB9KQotI2VuZGlmCiB7CiAg
ICAgLy8gSW5pdGlhbGl6ZSBvdXIgcGxhdGZvcm0gc3RyYXRlZ2llcy4KICAgICBXZWJQbGF0Zm9y
bVN0cmF0ZWdpZXM6OmluaXRpYWxpemUoKTsKQEAgLTU1Niw5ICs1NDksNiBAQCB2b2lkIFdlYlBy
b2Nlc3M6OnNldFdlYnNpdGVEYXRhU3RvcmVQYXJhbWV0ZXJzKFdlYlByb2Nlc3NEYXRhU3RvcmVQ
YXJhbWV0ZXJzJiYgcAogewogICAgIEFTU0VSVCghbV9zZXNzaW9uSUQpOwogICAgIG1fc2Vzc2lv
bklEID0gcGFyYW1ldGVycy5zZXNzaW9uSUQ7Ci0gICAgCi0gICAgYXV0byYgZGF0YWJhc2VNYW5h
Z2VyID0gRGF0YWJhc2VNYW5hZ2VyOjpzaW5nbGV0b24oKTsKLSAgICBkYXRhYmFzZU1hbmFnZXIu
aW5pdGlhbGl6ZShwYXJhbWV0ZXJzLndlYlNRTERhdGFiYXNlRGlyZWN0b3J5KTsKIAogICAgIC8v
IEZJWE1FOiBUaGlzIHNob3VsZCBiZSBjb25zdHJ1Y3RlZCBwZXIgZGF0YSBzdG9yZSwgbm90IHBl
ciBwcm9jZXNzLgogICAgIG1fYXBwbGljYXRpb25DYWNoZVN0b3JhZ2UgPSBBcHBsaWNhdGlvbkNh
Y2hlU3RvcmFnZTo6Y3JlYXRlKHBhcmFtZXRlcnMuYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSwg
cGFyYW1ldGVycy5hcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1lKTsKQEAg
LTE0ODUsMTUgKzE0NzUsNiBAQCB2b2lkIFdlYlByb2Nlc3M6OnByZXBhcmVUb1N1c3BlbmQoYm9v
bCBpc1N1c3BlbnNpb25JbW1pbmVudCwgQ29tcGxldGlvbkhhbmRsZXI8dgogICAgIGRlc3Ryb3lS
ZW5kZXJpbmdSZXNvdXJjZXMoKTsKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkK
LSAgICBtX3dlYlNRTGl0ZURhdGFiYXNlVHJhY2tlci5zZXRJc1N1c3BlbmRlZCh0cnVlKTsKLSAg
ICBTUUxpdGVEYXRhYmFzZTo6c2V0SXNEYXRhYmFzZU9wZW5pbmdGb3JiaWRkZW4odHJ1ZSk7Ci0g
ICAgaWYgKERhdGFiYXNlVHJhY2tlcjo6aXNJbml0aWFsaXplZCgpKQotICAgICAgICBEYXRhYmFz
ZVRyYWNrZXI6OnNpbmdsZXRvbigpLmNsb3NlQWxsRGF0YWJhc2VzKEN1cnJlbnRRdWVyeUJlaGF2
aW9yOjpJbnRlcnJ1cHQpOwotICAgIGFjY2Vzc2liaWxpdHlQcm9jZXNzU3VzcGVuZGVkTm90aWZp
Y2F0aW9uKHRydWUpOwotICAgIHVwZGF0ZUZyZWV6ZXJTdGF0dXMoKTsKLSNlbmRpZgotCiAgICAg
bWFya0FsbExheWVyc1ZvbGF0aWxlKFt0aGlzLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUo
Y29tcGxldGlvbkhhbmRsZXIpXSgpIG11dGFibGUgewogICAgICAgICBSRUxFQVNFX0xPR19JRl9B
TExPV0VEKFByb2Nlc3NTdXNwZW5zaW9uLCAicHJlcGFyZVRvU3VzcGVuZDogUHJvY2VzcyBpcyBy
ZWFkeSB0byBzdXNwZW5kIik7CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CkBAIC0xNTQ4
LDEyICsxNTI5LDYgQEAgdm9pZCBXZWJQcm9jZXNzOjpwcm9jZXNzRGlkUmVzdW1lKCkKIAogICAg
IGNhbmNlbE1hcmtBbGxMYXllcnNWb2xhdGlsZSgpOwogICAgIHVuZnJlZXplQWxsTGF5ZXJUcmVl
cygpOwotICAgIAotI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0gICAgbV93ZWJTUUxpdGVEYXRh
YmFzZVRyYWNrZXIuc2V0SXNTdXNwZW5kZWQoZmFsc2UpOwotICAgIFNRTGl0ZURhdGFiYXNlOjpz
ZXRJc0RhdGFiYXNlT3BlbmluZ0ZvcmJpZGRlbihmYWxzZSk7Ci0gICAgYWNjZXNzaWJpbGl0eVBy
b2Nlc3NTdXNwZW5kZWROb3RpZmljYXRpb24oZmFsc2UpOwotI2VuZGlmCiAKICNpZiBFTkFCTEUo
VklERU8pCiAgICAgaWYgKGF1dG8qIHBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlciA9IFBsYXRm
b3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6c2hhcmVkTWFuYWdlcklmRXhpc3RzKCkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAppbmRleCBiYzE2Mzk1YjNiOTUzYjBmZjg3NmEzMzdm
NjFmY2Y2NzBjNmE0ZjAwLi5kZWJjOTAzMWQ4ZjEyN2I1NmViYjdkZTA4MDVmZmZlYTVkNWQ3YWRk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgKQEAgLTM2LDcgKzM2LDYgQEAK
ICNpbmNsdWRlICJXZWJJbnNwZWN0b3JJbnRlcnJ1cHREaXNwYXRjaGVyLmgiCiAjaW5jbHVkZSAi
V2ViUGFnZVByb3h5SWRlbnRpZmllci5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMuaCIKLSNpbmNsdWRlICJXZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXIuaCIKICNpbmNs
dWRlICJXZWJTb2NrZXRDaGFubmVsTWFuYWdlci5oIgogI2luY2x1ZGUgPFdlYkNvcmUvQWN0aXZp
dHlTdGF0ZS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRnJhbWVJZGVudGlmaWVyLmg+CkBAIC02Nzgs
MTAgKzY3Nyw2IEBAIHByaXZhdGU6CiAKICAgICBSZWZQdHI8V2ViQ29yZTo6QXBwbGljYXRpb25D
YWNoZVN0b3JhZ2U+IG1fYXBwbGljYXRpb25DYWNoZVN0b3JhZ2U7CiAKLSNpZiBQTEFURk9STShJ
T1NfRkFNSUxZKQotICAgIFdlYlNRTGl0ZURhdGFiYXNlVHJhY2tlciBtX3dlYlNRTGl0ZURhdGFi
YXNlVHJhY2tlcjsKLSNlbmRpZgotCiAgICAgYm9vbCBtX3N1cHByZXNzTWVtb3J5UHJlc3N1cmVI
YW5kbGVyIHsgZmFsc2UgfTsKICNpZiBQTEFURk9STShNQUMpCiAgICAgc3RkOjp1bmlxdWVfcHRy
PFdlYkNvcmU6OkNQVU1vbml0b3I+IG1fY3B1TW9uaXRvcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCmluZGV4IDJiOGIwNDIzMmUzYTY4
ZjA3ZmYyNjI4ZDAwYTk0YmZmNTA4OWM1ZTkuLmU1NTc4YTkzOWFmOGI1ZDEyOTEyMGIzNzgwOWVh
MzJiMmFjYWY5NGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9X
ZWJQcm9jZXNzQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1dl
YlByb2Nlc3NDb2NvYS5tbQpAQCAtNDQ2LDcgKzQ0Niw2IEBAIHZvaWQgV2ViUHJvY2Vzczo6cGxh
dGZvcm1Jbml0aWFsaXplV2ViUHJvY2VzcyhXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzJiBw
YXJhCiB2b2lkIFdlYlByb2Nlc3M6OnBsYXRmb3JtU2V0V2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRl
cnMoV2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQogewogI2lmIEVO
QUJMRShTQU5EQk9YX0VYVEVOU0lPTlMpCi0gICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBl
cm1hbmVudGx5KHBhcmFtZXRlcnMud2ViU1FMRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5k
bGUpOwogICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJz
LmFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOwogICAgIFNhbmRib3hF
eHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJzLm1lZGlhQ2FjaGVEaXJlY3Rv
cnlFeHRlbnNpb25IYW5kbGUpOwogICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5l
bnRseShwYXJhbWV0ZXJzLm1lZGlhS2V5U3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0g
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KaW5kZXggNzI2NGJm
ZGNkNzJkZTEzNjk2MGEzMjM4Y2IwMDIxNmZiODkyZmY3Yy4uZjZjOTk5ZGQ0ODk1NmU0MDY2NTdj
NmQxMDFhZTJlM2NlOGM3YmM5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
V2ViVmlldy9XZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcv
V2ViVmlldy5tbQpAQCAtMjkzMyw3ICsyOTMzLDYgQEAgc3RhdGljIGJvb2wgbmVlZHNTZWxmUmV0
YWluV2hpbGVMb2FkaW5nUXVpcmsoKQogICAgIHNldHRpbmdzLnNldFZpZGVvUGxheWJhY2tSZXF1
aXJlc1VzZXJHZXN0dXJlKG1lZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlIHx8IFtwcmVm
ZXJlbmNlcyB2aWRlb1BsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZV0pOwogICAgIHNldHRpbmdz
LnNldEF1ZGlvUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKG1lZGlhUGxheWJhY2tSZXF1aXJl
c1VzZXJHZXN0dXJlIHx8IFtwcmVmZXJlbmNlcyBhdWRpb1BsYXliYWNrUmVxdWlyZXNVc2VyR2Vz
dHVyZV0pOwogCi0gICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5z
ZXRXZWJTUUxEaXNhYmxlZCghW3ByZWZlcmVuY2VzIHdlYlNRTEVuYWJsZWRdKTsKICAgICBEYXRh
YmFzZU1hbmFnZXI6OnNpbmdsZXRvbigpLnNldElzQXZhaWxhYmxlKFtwcmVmZXJlbmNlcyBkYXRh
YmFzZXNFbmFibGVkXSk7CiAgICAgc2V0dGluZ3Muc2V0TG9jYWxTdG9yYWdlRGF0YWJhc2VQYXRo
KFtwcmVmZXJlbmNlcyBfbG9jYWxTdG9yYWdlRGF0YWJhc2VQYXRoXSk7CiAgICAgX3ByaXZhdGUt
PnBhZ2UtPnNldFNlc3Npb25JRChbcHJlZmVyZW5jZXMgcHJpdmF0ZUJyb3dzaW5nRW5hYmxlZF0g
PyBQQUw6OlNlc3Npb25JRDo6bGVnYWN5UHJpdmF0ZVNlc3Npb25JRCgpIDogUEFMOjpTZXNzaW9u
SUQ6OmRlZmF1bHRTZXNzaW9uSUQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5
L3dpbi9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwCmlu
ZGV4IDJhYmQ2YzUxYzJhNmY1YTI3NjEyNGYyOWRjN2ZjZDVjMzBkMDhlZGQuLjBjMDFmZmQ0NTVk
OGQ2NWEyMTBiZTQ2MTVhOWQxYjY4MTc3MDE0MjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvd2luL1dlYlZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZp
ZXcuY3BwCkBAIC01MzA1LDcgKzUzMDUsNiBAQCBIUkVTVUxUIFdlYlZpZXc6Om5vdGlmeVByZWZl
cmVuY2VzQ2hhbmdlZChJV2ViTm90aWZpY2F0aW9uKiBub3RpZmljYXRpb24pCiAgICAgaHIgPSBw
cmVmc1ByaXZhdGUtPndlYlNRTEVuYWJsZWQoJmVuYWJsZWQpOwogICAgIGlmIChGQUlMRUQoaHIp
KQogICAgICAgICByZXR1cm4gaHI7Ci0gICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVk
RmVhdHVyZXMoKS5zZXRXZWJTUUxEaXNhYmxlZCghZW5hYmxlZCk7CiAKICAgICBociA9IHByZWZz
UHJpdmF0ZS0+dmlzdWFsVmlld3BvcnRBUElFbmFibGVkKCZlbmFibGVkKTsKICAgICBpZiAoRkFJ
TEVEKGhyKSkKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwpp
bmRleCBmY2VhMWFjMGE5OGQ0YmE0Mzg0NjYwMmZjMDViNTFhNjQzYzE4MGQ1Li5mNTM3NWI4YzE1
ODc3ZjMwZGU5YzhiZTBmNDIxNDQ1NjMwYmQ1MmYwIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VM
b2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMDUtMTMgIFJ5
b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRGVsZXRlIFdlYlNRTCBj
b2RlIGZyb20gV2ViS2l0MgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI1NzM5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBNaW5pQnJvd3Nlci9wbGF5c3RhdGlvbi9XZWJDb250ZXh0LmNwcDoKKyAgICAg
ICAgKFdlYkNvbnRleHQ6OldlYkNvbnRleHQpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIv
VGVzdENvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6Y29uZmln
dXJlV2Vic2l0ZURhdGFTdG9yZVRlbXBvcmFyeURpcmVjdG9yaWVzKToKKwogMjAyMS0wNS0xMiAg
TXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIFtNb3Rp
b25NYXJrXSBVcGRhdGUgcGxhbiBmaWxlIGFmdGVyIHIyNzc0MDYKZGlmZiAtLWdpdCBhL1Rvb2xz
L01pbmlCcm93c2VyL3BsYXlzdGF0aW9uL1dlYkNvbnRleHQuY3BwIGIvVG9vbHMvTWluaUJyb3dz
ZXIvcGxheXN0YXRpb24vV2ViQ29udGV4dC5jcHAKaW5kZXggODk3Yjk4YzQyOTQxMGIxNTA1YzI1
ZTZlY2U4NWU2OTkxZTBkNWJlOC4uMmRiY2MyZDMyYjkzNDJjMmFkYjE5NDYzYmE0MDY0MjAzYjBl
ZWVhOSAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvcGxheXN0YXRpb24vV2ViQ29udGV4
dC5jcHAKKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvcGxheXN0YXRpb24vV2ViQ29udGV4dC5jcHAK
QEAgLTU3LDcgKzU3LDYgQEAgV2ViQ29udGV4dDo6V2ViQ29udGV4dCgpCiAgICAgV0tSZXRhaW5Q
dHI8V0tTdHJpbmdSZWY+IG5ldHdvcmtDYWNoZURpcmVjdG9yeSA9IGFkb3B0V0soV0tTdHJpbmdD
cmVhdGVXaXRoVVRGOENTdHJpbmcoIi9kYXRhL21pbmlicm93c2VyL05ldHdvcmtDYWNoZSIpKTsK
ICAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gaW5kZXhlZERCRGlyZWN0b3J5ID0gYWRvcHRX
SyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiL2RhdGEvbWluaWJyb3dzZXIvSW5kZXhl
ZERCIikpOwogICAgIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVmPiBsb2NhbFN0b3JhZ2VEaXJlY3Rv
cnkgPSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKCIvZGF0YS9taW5pYnJv
d3Nlci9Mb2NhbFN0b3JhZ2UiKSk7Ci0gICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IHdlYlNR
TERpcmVjdG9yeSA9IGFkb3B0V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIi9kYXRh
L21pbmlicm93c2VyL1dlYlNRTCIpKTsKICAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gY2Fj
aGVTdG9yYWdlRGlyZWN0b3J5ID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmlu
ZygiL2RhdGEvbWluaWJyb3dzZXIvQ2FjaGVTdHJvYWdlIikpOwogICAgIFdLUmV0YWluUHRyPFdL
U3RyaW5nUmVmPiBtZWRpYUtleVN0b3JhZ2VEaXJlY3RvcnkgPSBhZG9wdFdLKFdLU3RyaW5nQ3Jl
YXRlV2l0aFVURjhDU3RyaW5nKCIvZGF0YS9taW5pYnJvd3Nlci9NZWRpYUtleSIpKTsKICAgICBX
S1JldGFpblB0cjxXS1N0cmluZ1JlZj4gcmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeSA9
IGFkb3B0V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIi9kYXRhL21pbmlicm93c2Vy
L1Jlc291cmNlTG9hZFN0YXRpc3RpY3MiKSk7CkBAIC03Miw3ICs3MSw2IEBAIFdlYkNvbnRleHQ6
OldlYkNvbnRleHQoKQogICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXROZXR3
b3JrQ2FjaGVEaXJlY3RvcnkoZGF0YVN0b3JlQ29uZmlndXJhdGlvbi5nZXQoKSwgbmV0d29ya0Nh
Y2hlRGlyZWN0b3J5LmdldCgpKTsKICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9u
U2V0SW5kZXhlZERCRGF0YWJhc2VEaXJlY3RvcnkoZGF0YVN0b3JlQ29uZmlndXJhdGlvbi5nZXQo
KSwgaW5kZXhlZERCRGlyZWN0b3J5LmdldCgpKTsKICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25m
aWd1cmF0aW9uU2V0TG9jYWxTdG9yYWdlRGlyZWN0b3J5KGRhdGFTdG9yZUNvbmZpZ3VyYXRpb24u
Z2V0KCksIGxvY2FsU3RvcmFnZURpcmVjdG9yeS5nZXQoKSk7Ci0gICAgV0tXZWJzaXRlRGF0YVN0
b3JlQ29uZmlndXJhdGlvblNldFdlYlNRTERhdGFiYXNlRGlyZWN0b3J5KGRhdGFTdG9yZUNvbmZp
Z3VyYXRpb24uZ2V0KCksIHdlYlNRTERpcmVjdG9yeS5nZXQoKSk7CiAgICAgV0tXZWJzaXRlRGF0
YVN0b3JlQ29uZmlndXJhdGlvblNldENhY2hlU3RvcmFnZURpcmVjdG9yeShkYXRhU3RvcmVDb25m
aWd1cmF0aW9uLmdldCgpLCBjYWNoZVN0b3JhZ2VEaXJlY3RvcnkuZ2V0KCkpOwogICAgIFdLV2Vi
c2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXRNZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5KGRh
dGFTdG9yZUNvbmZpZ3VyYXRpb24uZ2V0KCksIG1lZGlhS2V5U3RvcmFnZURpcmVjdG9yeS5nZXQo
KSk7CiAgICAgV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvblNldFJlc291cmNlTG9hZFN0
YXRpc3RpY3NEaXJlY3RvcnkoZGF0YVN0b3JlQ29uZmlndXJhdGlvbi5nZXQoKSwgcmVzb3VyY2VM
b2FkU3RhdGlzdGljc0RpcmVjdG9yeS5nZXQoKSk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRU
ZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVz
dENvbnRyb2xsZXIuY3BwCmluZGV4IGUwNjY3MDBmM2NlNmFhZGE5YWIyMWEzNjRiMGEyYmJjZTQy
OGFlNDguLmMxZWIxMDhiNmZlZTVjNTQxZWYxODE4YzBkZDk5NDJiNWI2YzA2YjcgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCisrKyBiL1Rvb2xz
L1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCkBAIC01ODgsNyArNTg4LDYgQEAg
dm9pZCBUZXN0Q29udHJvbGxlcjo6Y29uZmlndXJlV2Vic2l0ZURhdGFTdG9yZVRlbXBvcmFyeURp
cmVjdG9yaWVzKFdLV2Vic2l0ZURhdGEKICAgICAgICAgV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmln
dXJhdGlvblNldENhY2hlU3RvcmFnZURpcmVjdG9yeShjb25maWd1cmF0aW9uLCB0b1dLKG1ha2VT
dHJpbmcodGVtcG9yYXJ5Rm9sZGVyLCBwYXRoU2VwYXJhdG9yLCAiQ2FjaGVTdG9yYWdlIiwgcGF0
aFNlcGFyYXRvciwgcmFuZG9tTnVtYmVyKSkuZ2V0KCkpOwogICAgICAgICBXS1dlYnNpdGVEYXRh
U3RvcmVDb25maWd1cmF0aW9uU2V0SW5kZXhlZERCRGF0YWJhc2VEaXJlY3RvcnkoY29uZmlndXJh
dGlvbiwgdG9XSyhtYWtlU3RyaW5nKHRlbXBvcmFyeUZvbGRlciwgcGF0aFNlcGFyYXRvciwgIkRh
dGFiYXNlcyIsIHBhdGhTZXBhcmF0b3IsICJJbmRleGVkREIiLCBwYXRoU2VwYXJhdG9yLCByYW5k
b21OdW1iZXIpKS5nZXQoKSk7CiAgICAgICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRp
b25TZXRMb2NhbFN0b3JhZ2VEaXJlY3RvcnkoY29uZmlndXJhdGlvbiwgdG9XSyhtYWtlU3RyaW5n
KHRlbXBvcmFyeUZvbGRlciwgcGF0aFNlcGFyYXRvciwgIkxvY2FsU3RvcmFnZSIsIHBhdGhTZXBh
cmF0b3IsIHJhbmRvbU51bWJlcikpLmdldCgpKTsKLSAgICAgICAgV0tXZWJzaXRlRGF0YVN0b3Jl
Q29uZmlndXJhdGlvblNldFdlYlNRTERhdGFiYXNlRGlyZWN0b3J5KGNvbmZpZ3VyYXRpb24sIHRv
V0sobWFrZVN0cmluZyh0ZW1wb3JhcnlGb2xkZXIsIHBhdGhTZXBhcmF0b3IsICJEYXRhYmFzZXMi
LCBwYXRoU2VwYXJhdG9yLCAiV2ViU1FMIiwgcGF0aFNlcGFyYXRvciwgcmFuZG9tTnVtYmVyKSku
Z2V0KCkpOwogICAgICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uU2V0TWVkaWFL
ZXlzU3RvcmFnZURpcmVjdG9yeShjb25maWd1cmF0aW9uLCB0b1dLKG1ha2VTdHJpbmcodGVtcG9y
YXJ5Rm9sZGVyLCBwYXRoU2VwYXJhdG9yLCAiTWVkaWFLZXlzIiwgcGF0aFNlcGFyYXRvciwgcmFu
ZG9tTnVtYmVyKSkuZ2V0KCkpOwogICAgICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0
aW9uU2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeShjb25maWd1cmF0aW9uLCB0b1dL
KG1ha2VTdHJpbmcodGVtcG9yYXJ5Rm9sZGVyLCBwYXRoU2VwYXJhdG9yLCAiUmVzb3VyY2VMb2Fk
U3RhdGlzdGljcyIsIHBhdGhTZXBhcmF0b3IsIHJhbmRvbU51bWJlcikpLmdldCgpKTsKICAgICAg
ICAgV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvblNldFNlcnZpY2VXb3JrZXJSZWdpc3Ry
YXRpb25EaXJlY3RvcnkoY29uZmlndXJhdGlvbiwgdG9XSyhtYWtlU3RyaW5nKHRlbXBvcmFyeUZv
bGRlciwgcGF0aFNlcGFyYXRvciwgIlNlcnZpY2VXb3JrZXJzIiwgcGF0aFNlcGFyYXRvciwgcmFu
ZG9tTnVtYmVyKSkuZ2V0KCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428610</attachid>
            <date>2021-05-14 01:18:09 -0700</date>
            <delta_ts>2021-05-14 14:26:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225739-20210514011808.patch</filename>
            <type>text/plain</type>
            <size>22291</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NDc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDAwMWMyZDQ2MjA0ZGUxYjAyZDc3MTFj
NzE4ODk4NWRjNTU1NDQ0NmIuLjZkMzE0OWJhOGMwNTk0ODhmZWZlMDM2YmEwYTIxMTZlNWIyODAw
M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjEtMDUtMTQgIFJ5b3N1a2UgTml3YSAgPHJuaXdh
QHdlYmtpdC5vcmc+CisKKyAgICAgICAgRGVsZXRlIFdlYlNRTCBjb2RlIGZyb20gV2ViS2l0Mgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NzM5CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRGVsZXRlZCB0
aGUgZXhwZXJpbWVudGFsIGZlYXR1cmUgdG8gZGlzYWJsZSBXZWJTUUwgc2luY2Ugd2UndmUgYmVl
biBzaGlwcGluZyB0aGlzLAorICAgICAgICBhbmQgbWFkZSB0aGUgZmxhZyB0byBzZWxlY3RpdmVs
eSBlbmFibGUgV2ViU1FMIGluIFdlYktpdDEgYW4gaW50ZXJuYWwgZGVidWcgc2V0dGluZworICAg
ICAgICBzaW5jZSBub2JvZHkgc2hvdWxkIGJlIGVuYWJsaW5nIHRoaXMgbm93LgorCisgICAgICAg
ICogU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sOgor
ICAgICAgICAqIFNjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNJbnRlcm5hbC55YW1s
OgorCiAyMDIxLTA1LTEzICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbV2ViWFJdIEFsbG93IFdlYlhSIHRvIGJlIHRlc3RlZCBvbiBQTEFURk9STShDT0NPQSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwppbmRleCBmNjBlMzQ0ZWFiY2M1ZmMzZTAyMDcyZDU1ODM1YTRhMWM2MTY3NTBhLi4wM2Rl
ZmY0ZWExYTA5MWFjNjg3Y2IwM2FlYWZkNzJiYTUwNTdjMmYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTMgQEAKKzIwMjEtMDUtMTQgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisK
KyAgICAgICAgRGVsZXRlIFdlYlNRTCBjb2RlIGZyb20gV2ViS2l0MgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NzM5CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwYWdlL1J1bnRpbWVFbmFibGVkRmVh
dHVyZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldFdl
YlNRTERpc2FibGVkKTogRGVsZXRlZC4KKwogMjAyMS0wNS0xMyAgRGV2aW4gUm91c3NvICA8ZHJv
dXNzb0BhcHBsZS5jb20+CiAKICAgICAgICAgW2lPU10gUkVHUkVTU0lPTihyMjcxMjE2KSBwb2lu
dGVyZXZlbnRzL2lvcy9wb2ludGVyLWV2ZW50cy1uby1tb3VzZWRvd24td2hlbi1wcmV2ZW50LWRl
ZmF1bHQtY2FsbGVkLW9uLXBvaW50ZXJkb3duLmh0bWwgaXMgY29uc2lzdGVudGx5IGZhaWxpbmcK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggZTE0Nzk5MjU0MjM0Y2VlZjFmYjhkZTM0NWE5YzllZjA5NGQ3MmIxNi4uZjA3
OWZhYjdkNDcyODJiMWFmYmU2NmFmZWIyMGRlZDhjN2MwZjg1YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyOSBAQAorMjAyMS0wNS0xNCAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBEZWxldGUgV2ViU1FMIGNvZGUgZnJvbSBXZWJLaXQyCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjU3MzkKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBEZWxldGVkIFdlYlNRTCBjb2RlLiBXZSBr
ZWVwIHNvbWUgY29kZSBmb3Igd2Vic2l0ZSBkYXRhIHN0b3JlIHNpbmNlIGl0J3MgcG9zc2libGUK
KyAgICAgICAgZm9yIHVzZXIncyBkZXZpY2UgdG8gc3RpbGwgaGF2ZSBXZWJTUUwgZGF0YSwgYW5k
IHdlIHNob3VsZCBiZSBhYmxlIHRvIGRlbGV0ZSB0aGVtLgorCisgICAgICAgICogTmV0d29ya1By
b2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6Om1vbml0b3JlZERh
dGFUeXBlcyk6CisgICAgICAgICogU2hhcmVkL1dlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJz
Lmg6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzOjplbmNv
ZGUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVy
czo6ZGVjb2RlKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHA6
CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0V2ViU1FMRGlzYWJsZWQpOgorICAgICAgICAoV0tQ
cmVmZXJlbmNlc0dldFdlYlNRTERpc2FibGVkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0Mv
V0tQcmVmZXJlbmNlc1JlZi5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjp3ZWJQcm9jZXNzRGF0YVN0b3Jl
UGFyYW1ldGVycyk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6c2V0V2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMpOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tOgorICAgICAgICAo
V2ViS2l0OjpXZWJQcm9jZXNzOjpwbGF0Zm9ybVNldFdlYnNpdGVEYXRhU3RvcmVQYXJhbWV0ZXJz
KToKKwogMjAyMS0wNS0xMyAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CiAKICAgICAg
ICAgW1dlYlhSXSBBbGxvdyBXZWJYUiB0byBiZSB0ZXN0ZWQgb24gUExBVEZPUk0oQ09DT0EpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKaW5kZXggNzRjMWEzNDU1YTdjOWFlMGZmNmNjOWVlYTcx
Nzg5NTBjMzAwOWFiNC4uNzZmYWRkNTg0MzI2YjhiYTJiNzAyYzNkNWIyZDFhZGIzYTdmNjQ3NSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTA1LTE0
ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIERlbGV0ZSBXZWJT
UUwgY29kZSBmcm9tIFdlYktpdDIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyNTczOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3IF9w
cmVmZXJlbmNlc0NoYW5nZWQ6XSk6CisKIDIwMjEtMDUtMTMgIE1lZ2FuIEdhcmRuZXIgIDxtZWdh
bl9nYXJkbmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgdGV4dEluZGljYXRvciBib3VuY2Ug
Zm9yIEFwcEhpZ2hsaWdodHMgb24gc2Nyb2xsLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExl
Z2FjeS93aW4vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCmlu
ZGV4IGIzZjMzMzAwYTM4NmI1ZjQ5OTMzNGJlMWUxYjYxNmRjZTFhMzI1M2YuLmNhMzIxMmJkYzdj
MDdjMWY4OWIwZWU5ZmQ0ZTE5ODAzNGRlMTQ4MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvd2luL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMS0wNS0xNCAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Vi
a2l0Lm9yZz4KKworICAgICAgICBEZWxldGUgV2ViU1FMIGNvZGUgZnJvbSBXZWJLaXQyCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjU3MzkKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYlZpZXcuY3Bw
OgorICAgICAgICAoV2ViVmlldzo6bm90aWZ5UHJlZmVyZW5jZXNDaGFuZ2VkKToKKwogMjAyMS0w
NS0xMyAgTWVnYW4gR2FyZG5lciAgPG1lZ2FuX2dhcmRuZXJAYXBwbGUuY29tPgogCiAgICAgICAg
IEFkZCB0ZXh0SW5kaWNhdG9yIGJvdW5jZSBmb3IgQXBwSGlnaGxpZ2h0cyBvbiBzY3JvbGwuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNF
eHBlcmltZW50YWwueWFtbCBiL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVm
ZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sCmluZGV4IDVmYjQ0NzJkNmFhZjNhNjY1MDhhMjgwMjY1
NDA3YTcwYjExNTllMDMuLmYzNDY2NWI3ZTZhOTZmZjAyYWNhMWYwZTRlMjM0N2UzODc5YTUzZWEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNl
c0V4cGVyaW1lbnRhbC55YW1sCisrKyBiL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9X
ZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sCkBAIC0xMzA1LDI4ICsxMzA1LDYgQEAgV2Vi
UlRDVlA5UHJvZmlsZTJDb2RlY0VuYWJsZWQ6CiAgICAgV2ViS2l0OgogICAgICAgZGVmYXVsdDog
ZmFsc2UKIAotV2ViU1FMRGlzYWJsZWQ6Ci0gIHR5cGU6IGJvb2wKLSAgaHVtYW5SZWFkYWJsZU5h
bWU6ICJEaXNhYmxlIFdlYlNRTCIKLSAgaHVtYW5SZWFkYWJsZURlc2NyaXB0aW9uOiAiRGlzYWJs
ZSBXZWJTUUwiCi0gIHdlYmNvcmVCaW5kaW5nOiBSdW50aW1lRW5hYmxlZEZlYXR1cmVzCi0gIGV4
cG9zZWQ6IFsgV2ViS2l0IF0KLSAgZGVmYXVsdFZhbHVlOgotICAgIFdlYktpdDoKLSAgICAgIGRl
ZmF1bHQ6IHRydWUKLQotIyBGSVhNRTogV2ViS2l0TGVnYWN5IGhhcyBhbiBleGlzdGluZyBwcmVm
ZXJlbmNlIGNhbGxlZCAnV2ViU1FMRW5hYmxlZCcuIFdlIHNob3VsZCByZWNvbmNpbGUgaXQgd2l0
aCBXZWJTUUxEaXNhYmxlZC4KLVdlYlNRTEVuYWJsZWQ6Ci0gIHR5cGU6IGJvb2wKLSAgaHVtYW5S
ZWFkYWJsZU5hbWU6ICJFbmFibGUgV2ViU1FMIgotICBodW1hblJlYWRhYmxlRGVzY3JpcHRpb246
ICJFbmFibGUgV2ViU1FMIgotICB3ZWJjb3JlQmluZGluZzogY3VzdG9tCi0gIGV4cG9zZWQ6IFsg
V2ViS2l0TGVnYWN5IF0KLSAgZGVmYXVsdFZhbHVlOgotICAgIFdlYktpdExlZ2FjeToKLSAgICAg
ICJQTEFURk9STShJT1NfRkFNSUxZKSI6IFdlYktpdDo6ZGVmYXVsdFdlYlNRTEVuYWJsZWQoKQot
ICAgICAgZGVmYXVsdDogdHJ1ZQotCiBXZWJTaGFyZUZpbGVBUElFbmFibGVkOgogICB0eXBlOiBi
b29sCiAgIGh1bWFuUmVhZGFibGVOYW1lOiAiV2ViIFNoYXJlIEFQSSBMZXZlbCAyIgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzSW50ZXJu
YWwueWFtbCBiL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0lu
dGVybmFsLnlhbWwKaW5kZXggYjU5OGFhNmEwNDgzMmE3MGY5NzhkYTI5MDkxYTI5YWU3YWI4OTVk
Ny4uZmY3Njc2MDY3MDEwMzY5ZWZkZjMxNjVmMDEwMThkN2VkYTQ2YjEzMiAxMDA2NDQKLS0tIGEv
U291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzSW50ZXJuYWwueWFt
bAorKysgYi9Tb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNJbnRl
cm5hbC55YW1sCkBAIC04NTgsNiArODU4LDE3IEBAIFdlYlJUQ01ETlNJQ0VDYW5kaWRhdGVzRW5h
YmxlZDoKICAgICBXZWJLaXQ6CiAgICAgICBkZWZhdWx0OiB0cnVlCiAKK1dlYlNRTEVuYWJsZWQ6
CisgIHR5cGU6IGJvb2wKKyAgaHVtYW5SZWFkYWJsZU5hbWU6ICJFbmFibGUgV2ViU1FMIgorICBo
dW1hblJlYWRhYmxlRGVzY3JpcHRpb246ICJFbmFibGUgV2ViU1FMIgorICB3ZWJjb3JlQmluZGlu
ZzogY3VzdG9tCisgIGV4cG9zZWQ6IFsgV2ViS2l0TGVnYWN5IF0KKyAgZGVmYXVsdFZhbHVlOgor
ICAgIFdlYktpdExlZ2FjeToKKyAgICAgICJQTEFURk9STShJT1NfRkFNSUxZKSI6IFdlYktpdDo6
ZGVmYXVsdFdlYlNRTEVuYWJsZWQoKQorICAgICAgZGVmYXVsdDogdHJ1ZQorCiBab29tT25Eb3Vi
bGVUYXBXaGVuUm9vdDoKICAgdHlwZTogYm9vbAogICBjb25kaXRpb246IFBMQVRGT1JNKElPU19G
QU1JTFkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVh
dHVyZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCmlu
ZGV4IGFiNWYzMWJhZWVmZWIxYTc0OTQwM2UzYjZiNTcwOGMwNDhhZjMwOTYuLmJiMzhhM2Y4NWRl
ZGM4MmFiOWU3MmQwNTQxYmIwMzFhZjM1YmU0MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0xMjMsNyArMTIzLDYgQEAgcHVibGljOgogICAg
IGJvb2wgY3NzVHlwZWRPTUVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX0NTU1R5cGVkT01FbmFi
bGVkOyB9CiAjZW5kaWYKIAotICAgIHZvaWQgc2V0V2ViU1FMRGlzYWJsZWQoYm9vbCBpc0Rpc2Fi
bGVkKSB7IG1fd2ViU1FMRW5hYmxlZCA9ICFpc0Rpc2FibGVkOyB9CiAgICAgYm9vbCB3ZWJTUUxF
bmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV93ZWJTUUxFbmFibGVkOyB9CiAKICAgICB2b2lkIHNl
dERpYWxvZ0VsZW1lbnRFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1fZGlhbG9nRWxlbWVudEVu
YWJsZWQgPSBpc0VuYWJsZWQ7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRp
c3RpY3NTdG9yZS5jcHAKaW5kZXggODRkNTYxNDMxMGE3ZjY2ZThiOTZlZjhlNDc1ZTJhOTdiNDBl
MTIwOS4uNWVmMmI2ZWMwOTZiNGZlMGEwZmEzNTA3YjNjMjcxMTQwNzNkZmFkYiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9h
ZFN0YXRpc3RpY3NTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9D
bGFzc2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAKQEAgLTgwLDcgKzgw
LDYgQEAgY29uc3QgT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4mIFdlYlJlc291cmNlTG9hZFN0
YXRpc3RpY3NTdG9yZTo6bW9uaXRvcmVkRGF0YVQKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIp
CiAgICAgICAgIFdlYnNpdGVEYXRhVHlwZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbnMsCiAj
ZW5kaWYKLSAgICAgICAgV2Vic2l0ZURhdGFUeXBlOjpXZWJTUUxEYXRhYmFzZXMsCiAgICAgfSkp
OwogCiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9XZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycy5oCmluZGV4IDI1YjVhMTE3
NjBlYTIzNjdhOGVmMTlkMGZlYThmMDMwY2U0ZmQ5ZjQuLjZmMTI1Zjk4MmQwY2NlNmUzNzFkNmQ4
ZGFiOGRjZTM2ODNjOWY1MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBy
b2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vi
UHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnMuaApAQCAtNDAsOCArNDAsNiBAQCBzdHJ1Y3QgV2Vi
UHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnMgewogICAgIFN0cmluZyBhcHBsaWNhdGlvbkNhY2hl
RGlyZWN0b3J5OwogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBhcHBsaWNhdGlvbkNhY2hl
RGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIFN0cmluZyBhcHBsaWNhdGlvbkNhY2hlRmxh
dEZpbGVTdWJkaXJlY3RvcnlOYW1lOwotICAgIFN0cmluZyB3ZWJTUUxEYXRhYmFzZURpcmVjdG9y
eTsKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgd2ViU1FMRGF0YWJhc2VEaXJlY3RvcnlF
eHRlbnNpb25IYW5kbGU7CiAgICAgU3RyaW5nIG1lZGlhQ2FjaGVEaXJlY3Rvcnk7CiAgICAgU2Fu
ZGJveEV4dGVuc2lvbjo6SGFuZGxlIG1lZGlhQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7
CiAgICAgU3RyaW5nIG1lZGlhS2V5U3RvcmFnZURpcmVjdG9yeTsKQEAgLTY3LDggKzY1LDYgQEAg
dm9pZCBXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVyczo6ZW5jb2RlKEVuY29kZXImIGVuY29k
ZXIpIGNvbnN0CiAgICAgZW5jb2RlciA8PCBhcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5OwogICAg
IGVuY29kZXIgPDwgYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsKICAg
ICBlbmNvZGVyIDw8IGFwcGxpY2F0aW9uQ2FjaGVGbGF0RmlsZVN1YmRpcmVjdG9yeU5hbWU7Ci0g
ICAgZW5jb2RlciA8PCB3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeTsKLSAgICBlbmNvZGVyIDw8IHdl
YlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIGVuY29kZXIgPDwgbWVk
aWFDYWNoZURpcmVjdG9yeTsKICAgICBlbmNvZGVyIDw8IG1lZGlhQ2FjaGVEaXJlY3RvcnlFeHRl
bnNpb25IYW5kbGU7CiAgICAgZW5jb2RlciA8PCBtZWRpYUtleVN0b3JhZ2VEaXJlY3Rvcnk7CkBA
IC0xMDQsMTUgKzEwMCw2IEBAIE9wdGlvbmFsPFdlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJz
PiBXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVyczo6ZGVjb2RlKERlCiAgICAgaWYgKCFkZWNv
ZGVyLmRlY29kZShhcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1lKSkKICAg
ICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKIAotICAgIFN0cmluZyB3ZWJTUUxEYXRhYmFzZURp
cmVjdG9yeTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHdlYlNRTERhdGFiYXNlRGlyZWN0b3J5
KSkKLSAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKLQotICAgIE9wdGlvbmFsPFNhbmRib3hF
eHRlbnNpb246OkhhbmRsZT4gd2ViU1FMRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7
Ci0gICAgZGVjb2RlciA+PiB3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsK
LSAgICBpZiAoIXdlYlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKQotICAgICAg
ICByZXR1cm4gV1RGOjpudWxsb3B0OwotCiAgICAgU3RyaW5nIG1lZGlhQ2FjaGVEaXJlY3Rvcnk7
CiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShtZWRpYUNhY2hlRGlyZWN0b3J5KSkKICAgICAgICAg
cmV0dXJuIFdURjo6bnVsbG9wdDsKQEAgLTE2Niw4ICsxNTMsNiBAQCBPcHRpb25hbDxXZWJQcm9j
ZXNzRGF0YVN0b3JlUGFyYW1ldGVycz4gV2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnM6OmRl
Y29kZShEZQogICAgICAgICBXVEZNb3ZlKGFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkpLAogICAg
ICAgICBXVEZNb3ZlKCphcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKSwK
ICAgICAgICAgV1RGTW92ZShhcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1l
KSwKLSAgICAgICAgV1RGTW92ZSh3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeSksCi0gICAgICAgIFdU
Rk1vdmUoKndlYlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKSwKICAgICAgICAg
V1RGTW92ZShtZWRpYUNhY2hlRGlyZWN0b3J5KSwKICAgICAgICAgV1RGTW92ZSgqbWVkaWFDYWNo
ZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSksCiAgICAgICAgIFdURk1vdmUobWVkaWFLZXlTdG9y
YWdlRGlyZWN0b3J5KSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9D
L1dLUHJlZmVyZW5jZXMuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVm
ZXJlbmNlcy5jcHAKaW5kZXggMDUxNmRiNDcxNWVmNjdmNzBjZmM4MTU4YTkyNDAyZTM5YzA2OWYy
ZC4uZTBkMzZmNTY5YTAwMDdkOTZhNTkwNzg0NjBkNjk3MzJhNjZhOWZhOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKQEAgLTE5OTYsMTYg
KzE5OTYsNiBAQCBib29sIFdLUHJlZmVyZW5jZXNHZXRQdW5jaE91dFdoaXRlQmFja2dyb3VuZHNJ
bkRhcmtNb2RlKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZQogICAgIHJldHVybiB0b0ltcGwocHJl
ZmVyZW5jZXNSZWYpLT5wdW5jaE91dFdoaXRlQmFja2dyb3VuZHNJbkRhcmtNb2RlKCk7CiB9CiAK
LXZvaWQgV0tQcmVmZXJlbmNlc1NldFdlYlNRTERpc2FibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJl
ZmVyZW5jZXNSZWYsIGJvb2wgZmxhZykKLXsKLSAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5z
ZXRXZWJTUUxEaXNhYmxlZChmbGFnKTsKLX0KLQotYm9vbCBXS1ByZWZlcmVuY2VzR2V0V2ViU1FM
RGlzYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikKLXsKLSAgICByZXR1cm4g
dG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+d2ViU1FMRGlzYWJsZWQoKTsKLX0KLQogdm9pZCBXS1By
ZWZlcmVuY2VzU2V0Q2FwdHVyZUF1ZGlvSW5VSVByb2Nlc3NFbmFibGVkKFdLUHJlZmVyZW5jZXNS
ZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZykKIHsKICAgICB0b0ltcGwocHJlZmVyZW5jZXNS
ZWYpLT5zZXRDYXB0dXJlQXVkaW9JblVJUHJvY2Vzc0VuYWJsZWQoZmxhZyk7CkBAIC0yMjI3LDMg
KzIyMTcsMTIgQEAgYm9vbCBXS1ByZWZlcmVuY2VzR2V0U3VicGl4ZWxDU1NPTUVsZW1lbnRNZXRy
aWNzRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKQogewogICAgIHJldHVybiBmYWxzZTsKIH0KKwor
dm9pZCBXS1ByZWZlcmVuY2VzU2V0V2ViU1FMRGlzYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiwgYm9v
bCkKK3sKK30KKworYm9vbCBXS1ByZWZlcmVuY2VzR2V0V2ViU1FMRGlzYWJsZWQoV0tQcmVmZXJl
bmNlc1JlZiBwcmVmZXJlbmNlc1JlZikKK3sKKyAgICByZXR1cm4gdHJ1ZTsKK30KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNSZWYuaCBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNSZWYuaAppbmRleCA4ZWQ2
MjExN2JlNWQ1M2JlMjZlZGNkZDc2NzFlMWZhNTFmM2EzMWNjLi5iZDU4YzUwMmYwNTc3ZjgxNmQ2
ZjRkMjE5MzFjMTEyMmE2ODgzMzIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQy9XS1ByZWZlcmVuY2VzUmVmLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL0MvV0tQcmVmZXJlbmNlc1JlZi5oCkBAIC0zMzEsNyArMzMxLDcgQEAgV0tfRVhQT1JUIHZv
aWQgV0tQcmVmZXJlbmNlc1NldENyb3NzT3JpZ2luUmVzb3VyY2VQb2xpY3lFbmFibGVkKFdLUHJl
ZmVyZW5jZXNSZWYKIFdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRQcm9jZXNzU3dhcE9u
TmF2aWdhdGlvbkVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZik7CiBXS19F
WFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0UHJvY2Vzc1N3YXBPbk5hdmlnYXRpb25FbmFibGVk
KFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxlZCk7CiAKLS8vIERl
ZmF1bHRzIHRvIGZhbHNlLgorLy8gT2Jzb2xldGUuIEFsd2F5cyByZXR1cm5zIHRydWUuCiBXS19F
WFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0V2ViU1FMRGlzYWJsZWQoV0tQcmVmZXJlbmNlc1Jl
ZiBwcmVmZXJlbmNlc1JlZik7CiBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0V2ViU1FM
RGlzYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBlbmFibGVkKTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3Bw
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCmluZGV4IDM0MjAw
Y2M1NjZjZDk2ZDAzNDFlMjhkYjQ2Njg0ZWUwOGQwNTdkNDMuLjkwY2ZmYTVjY2I2MDBhMTc4OTIx
NWQ5NDEyYmJkM2FhYTZhNmVlYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9j
ZXNzUG9vbC5jcHAKQEAgLTczNywxMSArNzM3LDYgQEAgV2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFt
ZXRlcnMgV2ViUHJvY2Vzc1Bvb2w6OndlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzKFdlYlAK
IAogICAgIFN0cmluZyBhcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1lID0g
d2Vic2l0ZURhdGFTdG9yZS5hcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1l
KCk7CiAKLSAgICBTdHJpbmcgd2ViU1FMRGF0YWJhc2VEaXJlY3RvcnkgPSB3ZWJzaXRlRGF0YVN0
b3JlLnJlc29sdmVkRGF0YWJhc2VEaXJlY3RvcnkoKTsKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpI
YW5kbGUgd2ViU1FMRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7Ci0gICAgaWYgKCF3
ZWJTUUxEYXRhYmFzZURpcmVjdG9yeS5pc0VtcHR5KCkpCi0gICAgICAgIFNhbmRib3hFeHRlbnNp
b246OmNyZWF0ZUhhbmRsZVdpdGhvdXRSZXNvbHZpbmdQYXRoKHdlYlNRTERhdGFiYXNlRGlyZWN0
b3J5LCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpSZWFkV3JpdGUsIHdlYlNRTERhdGFiYXNlRGly
ZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKLQogICAgIFN0cmluZyBtZWRpYUNhY2hlRGlyZWN0b3J5
ID0gd2Vic2l0ZURhdGFTdG9yZS5yZXNvbHZlZE1lZGlhQ2FjaGVEaXJlY3RvcnkoKTsKICAgICBT
YW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgbWVkaWFDYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRs
ZTsKICAgICBpZiAoIW1lZGlhQ2FjaGVEaXJlY3RvcnkuaXNFbXB0eSgpKQpAQCAtNzY3LDggKzc2
Miw2IEBAIFdlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzIFdlYlByb2Nlc3NQb29sOjp3ZWJQ
cm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycyhXZWJQCiAgICAgICAgIFdURk1vdmUoYXBwbGljYXRp
b25DYWNoZURpcmVjdG9yeSksCiAgICAgICAgIFdURk1vdmUoYXBwbGljYXRpb25DYWNoZURpcmVj
dG9yeUV4dGVuc2lvbkhhbmRsZSksCiAgICAgICAgIFdURk1vdmUoYXBwbGljYXRpb25DYWNoZUZs
YXRGaWxlU3ViZGlyZWN0b3J5TmFtZSksCi0gICAgICAgIFdURk1vdmUod2ViU1FMRGF0YWJhc2VE
aXJlY3RvcnkpLAotICAgICAgICBXVEZNb3ZlKHdlYlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5z
aW9uSGFuZGxlKSwKICAgICAgICAgV1RGTW92ZShtZWRpYUNhY2hlRGlyZWN0b3J5KSwKICAgICAg
ICAgV1RGTW92ZShtZWRpYUNhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKSwKICAgICAgICAg
V1RGTW92ZShtZWRpYUtleVN0b3JhZ2VEaXJlY3RvcnkpLApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlByb2Nlc3MuY3BwCmluZGV4IDIxNWFhYmIwZDU5MmE1NjQ1ZTUyYTBhNGQ3YmRlMWEyMzI1
MTcxYWIuLjczNTI3NjA2N2ZkMWUwMzA0NDIxMmU3ZGM2ODQ0NmUxYjM2Y2NhMmEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKQEAgLTk4LDcgKzk4LDYgQEAKICNpbmNs
dWRlIDxXZWJDb3JlL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0UmVzdWx0Q2FjaGUuaD4KICNpbmNsdWRl
IDxXZWJDb3JlL0ROUy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRE9NV2luZG93Lmg+Ci0jaW5jbHVk
ZSA8V2ViQ29yZS9EYXRhYmFzZU1hbmFnZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0RhdGFiYXNl
VHJhY2tlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRGVwcmVjYXRlZEdsb2JhbFNldHRpbmdzLmg+
CiAjaW5jbHVkZSA8V2ViQ29yZS9EaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5oPgpAQCAtNTU2LDkg
KzU1NSw2IEBAIHZvaWQgV2ViUHJvY2Vzczo6c2V0V2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMo
V2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnMmJiBwCiB7CiAgICAgQVNTRVJUKCFtX3Nlc3Np
b25JRCk7CiAgICAgbV9zZXNzaW9uSUQgPSBwYXJhbWV0ZXJzLnNlc3Npb25JRDsKLSAgICAKLSAg
ICBhdXRvJiBkYXRhYmFzZU1hbmFnZXIgPSBEYXRhYmFzZU1hbmFnZXI6OnNpbmdsZXRvbigpOwot
ICAgIGRhdGFiYXNlTWFuYWdlci5pbml0aWFsaXplKHBhcmFtZXRlcnMud2ViU1FMRGF0YWJhc2VE
aXJlY3RvcnkpOwogCiAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIGNvbnN0cnVjdGVkIHBl
ciBkYXRhIHN0b3JlLCBub3QgcGVyIHByb2Nlc3MuCiAgICAgbV9hcHBsaWNhdGlvbkNhY2hlU3Rv
cmFnZSA9IEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjcmVhdGUocGFyYW1ldGVycy5hcHBsaWNh
dGlvbkNhY2hlRGlyZWN0b3J5LCBwYXJhbWV0ZXJzLmFwcGxpY2F0aW9uQ2FjaGVGbGF0RmlsZVN1
YmRpcmVjdG9yeU5hbWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2Nv
Y29hL1dlYlByb2Nlc3NDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9X
ZWJQcm9jZXNzQ29jb2EubW0KaW5kZXggMmI4YjA0MjMyZTNhNjhmMDdmZjI2MjhkMDBhOTRiZmY1
MDg5YzVlOS4uZTU1NzhhOTM5YWY4YjVkMTI5MTIwYjM3ODA5ZWEzMmIyYWNhZjk0ZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCkBA
IC00NDYsNyArNDQ2LDYgQEAgdm9pZCBXZWJQcm9jZXNzOjpwbGF0Zm9ybUluaXRpYWxpemVXZWJQ
cm9jZXNzKFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmEKIHZvaWQgV2ViUHJvY2Vz
czo6cGxhdGZvcm1TZXRXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyhXZWJQcm9jZXNzRGF0YVN0
b3JlUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCiB7CiAjaWYgRU5BQkxFKFNBTkRCT1hfRVhURU5T
SU9OUykKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkocGFyYW1ldGVy
cy53ZWJTUUxEYXRhYmFzZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAgICAgU2FuZGJveEV4
dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuYXBwbGljYXRpb25DYWNoZURp
cmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBl
cm1hbmVudGx5KHBhcmFtZXRlcnMubWVkaWFDYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7
CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMubWVk
aWFLZXlTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQppbmRleCA5OTJmM2UwOTc0ZDY0NWJmZTI1ZDczMTk4
MzJkODQxZjc3MGVlNmRiLi5hODFjNTM5ZTVmMDcxNzU3ZWVmOGQ0ZjUwNDJiNjIyYzQ5YTYzMzBh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0K
KysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCkBAIC0yOTMz
LDcgKzI5MzMsNiBAQCBzdGF0aWMgYm9vbCBuZWVkc1NlbGZSZXRhaW5XaGlsZUxvYWRpbmdRdWly
aygpCiAgICAgc2V0dGluZ3Muc2V0VmlkZW9QbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUobWVk
aWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUgfHwgW3ByZWZlcmVuY2VzIHZpZGVvUGxheWJh
Y2tSZXF1aXJlc1VzZXJHZXN0dXJlXSk7CiAgICAgc2V0dGluZ3Muc2V0QXVkaW9QbGF5YmFja1Jl
cXVpcmVzVXNlckdlc3R1cmUobWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUgfHwgW3By
ZWZlcmVuY2VzIGF1ZGlvUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlXSk7CiAKLSAgICBSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFdlYlNRTERpc2FibGVkKCFb
cHJlZmVyZW5jZXMgd2ViU1FMRW5hYmxlZF0pOwogICAgIERhdGFiYXNlTWFuYWdlcjo6c2luZ2xl
dG9uKCkuc2V0SXNBdmFpbGFibGUoW3ByZWZlcmVuY2VzIGRhdGFiYXNlc0VuYWJsZWRdKTsKICAg
ICBzZXR0aW5ncy5zZXRMb2NhbFN0b3JhZ2VEYXRhYmFzZVBhdGgoW3ByZWZlcmVuY2VzIF9sb2Nh
bFN0b3JhZ2VEYXRhYmFzZVBhdGhdKTsKICAgICBfcHJpdmF0ZS0+cGFnZS0+c2V0U2Vzc2lvbklE
KFtwcmVmZXJlbmNlcyBwcml2YXRlQnJvd3NpbmdFbmFibGVkXSA/IFBBTDo6U2Vzc2lvbklEOjps
ZWdhY3lQcml2YXRlU2Vzc2lvbklEKCkgOiBQQUw6OlNlc3Npb25JRDo6ZGVmYXVsdFNlc3Npb25J
RCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwIGIv
U291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViVmlldy5jcHAKaW5kZXggMmFiZDZjNTFjMmE2ZjVh
Mjc2MTI0ZjI5ZGM3ZmNkNWMzMGQwOGVkZC4uMGMwMWZmZDQ1NWQ4ZDY1YTIxMGJlNDYxNWE5ZDFi
NjgxNzcwMTQyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViVmlldy5j
cHAKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViVmlldy5jcHAKQEAgLTUzMDUsNyAr
NTMwNSw2IEBAIEhSRVNVTFQgV2ViVmlldzo6bm90aWZ5UHJlZmVyZW5jZXNDaGFuZ2VkKElXZWJO
b3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbikKICAgICBociA9IHByZWZzUHJpdmF0ZS0+d2ViU1FM
RW5hYmxlZCgmZW5hYmxlZCk7CiAgICAgaWYgKEZBSUxFRChocikpCiAgICAgICAgIHJldHVybiBo
cjsKLSAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFdlYlNR
TERpc2FibGVkKCFlbmFibGVkKTsKIAogICAgIGhyID0gcHJlZnNQcml2YXRlLT52aXN1YWxWaWV3
cG9ydEFQSUVuYWJsZWQoJmVuYWJsZWQpOwogICAgIGlmIChGQUlMRUQoaHIpKQpkaWZmIC0tZ2l0
IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDNjYTQzZmY2ZjQ3NWFm
ODFjOTBlOWY5NDRlNDRhZjUxNjMzYjIyNTUuLjZmOTA0ZTYyNzMwOTcyYTMyOGIwN2E0NzQ3Zjc4
Yzk5OThjZDJiZDEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0wNS0xNCAgUnlvc3VrZSBOaXdhICA8cm5pd2FA
d2Via2l0Lm9yZz4KKworICAgICAgICBEZWxldGUgV2ViU1FMIGNvZGUgZnJvbSBXZWJLaXQyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjU3MzkKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIE1pbmlCcm93
c2VyL3BsYXlzdGF0aW9uL1dlYkNvbnRleHQuY3BwOgorICAgICAgICAoV2ViQ29udGV4dDo6V2Vi
Q29udGV4dCk6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHA6
CisgICAgICAgIChXVFI6OlRlc3RDb250cm9sbGVyOjpjb25maWd1cmVXZWJzaXRlRGF0YVN0b3Jl
VGVtcG9yYXJ5RGlyZWN0b3JpZXMpOgorCiAyMDIxLTA1LTEzICBBYWthc2ggSmFpbiAgPGFha2Fz
aF9qYWluQGFwcGxlLmNvbT4KIAogICAgICAgICByZXBvcnQtbm9uLWluY2x1c2l2ZS1sYW5ndWFn
ZSBzaG91bGQgc2tpcCBzeW1saW5rcwpkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvcGxh
eXN0YXRpb24vV2ViQ29udGV4dC5jcHAgYi9Ub29scy9NaW5pQnJvd3Nlci9wbGF5c3RhdGlvbi9X
ZWJDb250ZXh0LmNwcAppbmRleCA4OTdiOThjNDI5NDEwYjE1MDVjMjVlNmVjZTg1ZTY5OTFlMGQ1
YmU4Li4yZGJjYzJkMzJiOTM0MmMyYWRiMTk0NjNiYTQwNjQyMDNiMGVlZWE5IDEwMDY0NAotLS0g
YS9Ub29scy9NaW5pQnJvd3Nlci9wbGF5c3RhdGlvbi9XZWJDb250ZXh0LmNwcAorKysgYi9Ub29s
cy9NaW5pQnJvd3Nlci9wbGF5c3RhdGlvbi9XZWJDb250ZXh0LmNwcApAQCAtNTcsNyArNTcsNiBA
QCBXZWJDb250ZXh0OjpXZWJDb250ZXh0KCkKICAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4g
bmV0d29ya0NhY2hlRGlyZWN0b3J5ID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0
cmluZygiL2RhdGEvbWluaWJyb3dzZXIvTmV0d29ya0NhY2hlIikpOwogICAgIFdLUmV0YWluUHRy
PFdLU3RyaW5nUmVmPiBpbmRleGVkREJEaXJlY3RvcnkgPSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRl
V2l0aFVURjhDU3RyaW5nKCIvZGF0YS9taW5pYnJvd3Nlci9JbmRleGVkREIiKSk7CiAgICAgV0tS
ZXRhaW5QdHI8V0tTdHJpbmdSZWY+IGxvY2FsU3RvcmFnZURpcmVjdG9yeSA9IGFkb3B0V0soV0tT
dHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIi9kYXRhL21pbmlicm93c2VyL0xvY2FsU3RvcmFn
ZSIpKTsKLSAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gd2ViU1FMRGlyZWN0b3J5ID0gYWRv
cHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiL2RhdGEvbWluaWJyb3dzZXIvV2Vi
U1FMIikpOwogICAgIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVmPiBjYWNoZVN0b3JhZ2VEaXJlY3Rv
cnkgPSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKCIvZGF0YS9taW5pYnJv
d3Nlci9DYWNoZVN0cm9hZ2UiKSk7CiAgICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IG1lZGlh
S2V5U3RvcmFnZURpcmVjdG9yeSA9IGFkb3B0V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJp
bmcoIi9kYXRhL21pbmlicm93c2VyL01lZGlhS2V5IikpOwogICAgIFdLUmV0YWluUHRyPFdLU3Ry
aW5nUmVmPiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5ID0gYWRvcHRXSyhXS1N0cmlu
Z0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiL2RhdGEvbWluaWJyb3dzZXIvUmVzb3VyY2VMb2FkU3Rh
dGlzdGljcyIpKTsKQEAgLTcyLDcgKzcxLDYgQEAgV2ViQ29udGV4dDo6V2ViQ29udGV4dCgpCiAg
ICAgV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvblNldE5ldHdvcmtDYWNoZURpcmVjdG9y
eShkYXRhU3RvcmVDb25maWd1cmF0aW9uLmdldCgpLCBuZXR3b3JrQ2FjaGVEaXJlY3RvcnkuZ2V0
KCkpOwogICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXRJbmRleGVkREJEYXRh
YmFzZURpcmVjdG9yeShkYXRhU3RvcmVDb25maWd1cmF0aW9uLmdldCgpLCBpbmRleGVkREJEaXJl
Y3RvcnkuZ2V0KCkpOwogICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXRMb2Nh
bFN0b3JhZ2VEaXJlY3RvcnkoZGF0YVN0b3JlQ29uZmlndXJhdGlvbi5nZXQoKSwgbG9jYWxTdG9y
YWdlRGlyZWN0b3J5LmdldCgpKTsKLSAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9u
U2V0V2ViU1FMRGF0YWJhc2VEaXJlY3RvcnkoZGF0YVN0b3JlQ29uZmlndXJhdGlvbi5nZXQoKSwg
d2ViU1FMRGlyZWN0b3J5LmdldCgpKTsKICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0
aW9uU2V0Q2FjaGVTdG9yYWdlRGlyZWN0b3J5KGRhdGFTdG9yZUNvbmZpZ3VyYXRpb24uZ2V0KCks
IGNhY2hlU3RvcmFnZURpcmVjdG9yeS5nZXQoKSk7CiAgICAgV0tXZWJzaXRlRGF0YVN0b3JlQ29u
ZmlndXJhdGlvblNldE1lZGlhS2V5c1N0b3JhZ2VEaXJlY3RvcnkoZGF0YVN0b3JlQ29uZmlndXJh
dGlvbi5nZXQoKSwgbWVkaWFLZXlTdG9yYWdlRGlyZWN0b3J5LmdldCgpKTsKICAgICBXS1dlYnNp
dGVEYXRhU3RvcmVDb25maWd1cmF0aW9uU2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9y
eShkYXRhU3RvcmVDb25maWd1cmF0aW9uLmdldCgpLCByZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGly
ZWN0b3J5LmdldCgpKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENv
bnRyb2xsZXIuY3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAK
aW5kZXggZTA2NjcwMGYzY2U2YWFkYTlhYjIxYTM2NGIwYTJiYmNlNDI4YWU0OC4uYzFlYjEwOGI2
ZmVlNWM1NDFlZjE4MThjMGRkOTk0MmI1YjZjMDZiNyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9UZXN0Q29udHJvbGxlci5jcHAKQEAgLTU4OCw3ICs1ODgsNiBAQCB2b2lkIFRlc3RDb250cm9s
bGVyOjpjb25maWd1cmVXZWJzaXRlRGF0YVN0b3JlVGVtcG9yYXJ5RGlyZWN0b3JpZXMoV0tXZWJz
aXRlRGF0YQogICAgICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uU2V0Q2FjaGVT
dG9yYWdlRGlyZWN0b3J5KGNvbmZpZ3VyYXRpb24sIHRvV0sobWFrZVN0cmluZyh0ZW1wb3JhcnlG
b2xkZXIsIHBhdGhTZXBhcmF0b3IsICJDYWNoZVN0b3JhZ2UiLCBwYXRoU2VwYXJhdG9yLCByYW5k
b21OdW1iZXIpKS5nZXQoKSk7CiAgICAgICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRp
b25TZXRJbmRleGVkREJEYXRhYmFzZURpcmVjdG9yeShjb25maWd1cmF0aW9uLCB0b1dLKG1ha2VT
dHJpbmcodGVtcG9yYXJ5Rm9sZGVyLCBwYXRoU2VwYXJhdG9yLCAiRGF0YWJhc2VzIiwgcGF0aFNl
cGFyYXRvciwgIkluZGV4ZWREQiIsIHBhdGhTZXBhcmF0b3IsIHJhbmRvbU51bWJlcikpLmdldCgp
KTsKICAgICAgICAgV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvblNldExvY2FsU3RvcmFn
ZURpcmVjdG9yeShjb25maWd1cmF0aW9uLCB0b1dLKG1ha2VTdHJpbmcodGVtcG9yYXJ5Rm9sZGVy
LCBwYXRoU2VwYXJhdG9yLCAiTG9jYWxTdG9yYWdlIiwgcGF0aFNlcGFyYXRvciwgcmFuZG9tTnVt
YmVyKSkuZ2V0KCkpOwotICAgICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uU2V0
V2ViU1FMRGF0YWJhc2VEaXJlY3RvcnkoY29uZmlndXJhdGlvbiwgdG9XSyhtYWtlU3RyaW5nKHRl
bXBvcmFyeUZvbGRlciwgcGF0aFNlcGFyYXRvciwgIkRhdGFiYXNlcyIsIHBhdGhTZXBhcmF0b3Is
ICJXZWJTUUwiLCBwYXRoU2VwYXJhdG9yLCByYW5kb21OdW1iZXIpKS5nZXQoKSk7CiAgICAgICAg
IFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXRNZWRpYUtleXNTdG9yYWdlRGlyZWN0
b3J5KGNvbmZpZ3VyYXRpb24sIHRvV0sobWFrZVN0cmluZyh0ZW1wb3JhcnlGb2xkZXIsIHBhdGhT
ZXBhcmF0b3IsICJNZWRpYUtleXMiLCBwYXRoU2VwYXJhdG9yLCByYW5kb21OdW1iZXIpKS5nZXQo
KSk7CiAgICAgICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXRSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzRGlyZWN0b3J5KGNvbmZpZ3VyYXRpb24sIHRvV0sobWFrZVN0cmluZyh0ZW1w
b3JhcnlGb2xkZXIsIHBhdGhTZXBhcmF0b3IsICJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzIiwgcGF0
aFNlcGFyYXRvciwgcmFuZG9tTnVtYmVyKSkuZ2V0KCkpOwogICAgICAgICBXS1dlYnNpdGVEYXRh
U3RvcmVDb25maWd1cmF0aW9uU2V0U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9yeShj
b25maWd1cmF0aW9uLCB0b1dLKG1ha2VTdHJpbmcodGVtcG9yYXJ5Rm9sZGVyLCBwYXRoU2VwYXJh
dG9yLCAiU2VydmljZVdvcmtlcnMiLCBwYXRoU2VwYXJhdG9yLCByYW5kb21OdW1iZXIpKS5nZXQo
KSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428658</attachid>
            <date>2021-05-14 14:26:36 -0700</date>
            <delta_ts>2021-05-14 16:30:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225739-20210514142635.patch</filename>
            <type>text/plain</type>
            <size>22551</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NDc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDAwMWMyZDQ2MjA0ZGUxYjAyZDc3MTFj
NzE4ODk4NWRjNTU1NDQ0NmIuLjZkMzE0OWJhOGMwNTk0ODhmZWZlMDM2YmEwYTIxMTZlNWIyODAw
M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjEtMDUtMTQgIFJ5b3N1a2UgTml3YSAgPHJuaXdh
QHdlYmtpdC5vcmc+CisKKyAgICAgICAgRGVsZXRlIFdlYlNRTCBjb2RlIGZyb20gV2ViS2l0Mgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NzM5CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRGVsZXRlZCB0
aGUgZXhwZXJpbWVudGFsIGZlYXR1cmUgdG8gZGlzYWJsZSBXZWJTUUwgc2luY2Ugd2UndmUgYmVl
biBzaGlwcGluZyB0aGlzLAorICAgICAgICBhbmQgbWFkZSB0aGUgZmxhZyB0byBzZWxlY3RpdmVs
eSBlbmFibGUgV2ViU1FMIGluIFdlYktpdDEgYW4gaW50ZXJuYWwgZGVidWcgc2V0dGluZworICAg
ICAgICBzaW5jZSBub2JvZHkgc2hvdWxkIGJlIGVuYWJsaW5nIHRoaXMgbm93LgorCisgICAgICAg
ICogU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sOgor
ICAgICAgICAqIFNjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNJbnRlcm5hbC55YW1s
OgorCiAyMDIxLTA1LTEzICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbV2ViWFJdIEFsbG93IFdlYlhSIHRvIGJlIHRlc3RlZCBvbiBQTEFURk9STShDT0NPQSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwppbmRleCBmNjBlMzQ0ZWFiY2M1ZmMzZTAyMDcyZDU1ODM1YTRhMWM2MTY3NTBhLi5lMDJl
ZjRlYzM4NTBlZmI2NDI5NzkyNmM3OWI1YTY3ODgzNTA5ZjVjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTMgQEAKKzIwMjEtMDUtMTQgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisK
KyAgICAgICAgRGVsZXRlIFdlYlNRTCBjb2RlIGZyb20gV2ViS2l0MgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NzM5CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwYWdlL1J1bnRpbWVFbmFibGVkRmVh
dHVyZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldFdl
YlNRTEVuYWJsZWQpOiBSZXBsYWNlZCBzZXRXZWJTUUxEaXNhYmxlZC4KKwogMjAyMS0wNS0xMyAg
RGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CiAKICAgICAgICAgW2lPU10gUkVHUkVT
U0lPTihyMjcxMjE2KSBwb2ludGVyZXZlbnRzL2lvcy9wb2ludGVyLWV2ZW50cy1uby1tb3VzZWRv
d24td2hlbi1wcmV2ZW50LWRlZmF1bHQtY2FsbGVkLW9uLXBvaW50ZXJkb3duLmh0bWwgaXMgY29u
c2lzdGVudGx5IGZhaWxpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZTE0Nzk5MjU0MjM0Y2VlZjFmYjhkZTM0NWE5
YzllZjA5NGQ3MmIxNi4uZjA3OWZhYjdkNDcyODJiMWFmYmU2NmFmZWIyMGRlZDhjN2MwZjg1YiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAyMS0wNS0xNCAgUnlvc3VrZSBOaXdhICA8cm5p
d2FAd2Via2l0Lm9yZz4KKworICAgICAgICBEZWxldGUgV2ViU1FMIGNvZGUgZnJvbSBXZWJLaXQy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjU3MzkK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBEZWxldGVk
IFdlYlNRTCBjb2RlLiBXZSBrZWVwIHNvbWUgY29kZSBmb3Igd2Vic2l0ZSBkYXRhIHN0b3JlIHNp
bmNlIGl0J3MgcG9zc2libGUKKyAgICAgICAgZm9yIHVzZXIncyBkZXZpY2UgdG8gc3RpbGwgaGF2
ZSBXZWJTUUwgZGF0YSwgYW5kIHdlIHNob3VsZCBiZSBhYmxlIHRvIGRlbGV0ZSB0aGVtLgorCisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzU3RvcmUuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
U3RvcmU6Om1vbml0b3JlZERhdGFUeXBlcyk6CisgICAgICAgICogU2hhcmVkL1dlYlByb2Nlc3NE
YXRhU3RvcmVQYXJhbWV0ZXJzLmg6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NEYXRhU3Rv
cmVQYXJhbWV0ZXJzOjplbmNvZGUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNz
RGF0YVN0b3JlUGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0Mv
V0tQcmVmZXJlbmNlcy5jcHA6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0V2ViU1FMRGlzYWJs
ZWQpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldFdlYlNRTERpc2FibGVkKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1JlZi5oOgorICAgICAgICAqIFVJUHJvY2Vz
cy9XZWJQcm9jZXNzUG9vbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjp3
ZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycyk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQ
cm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6c2V0V2Vic2l0ZURhdGFT
dG9yZVBhcmFtZXRlcnMpOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0Nv
Y29hLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjpwbGF0Zm9ybVNldFdlYnNpdGVE
YXRhU3RvcmVQYXJhbWV0ZXJzKToKKwogMjAyMS0wNS0xMyAgRGVhbiBKYWNrc29uICA8ZGlub0Bh
cHBsZS5jb20+CiAKICAgICAgICAgW1dlYlhSXSBBbGxvdyBXZWJYUiB0byBiZSB0ZXN0ZWQgb24g
UExBVEZPUk0oQ09DT0EpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKaW5kZXggNzRjMWEzNDU1
YTdjOWFlMGZmNmNjOWVlYTcxNzg5NTBjMzAwOWFiNC4uNzZmYWRkNTg0MzI2YjhiYTJiNzAyYzNk
NWIyZDFhZGIzYTdmNjQ3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDEzIEBACisyMDIxLTA1LTE0ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisg
ICAgICAgIERlbGV0ZSBXZWJTUUwgY29kZSBmcm9tIFdlYktpdDIKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTczOQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAg
ICAgICAoLVtXZWJWaWV3IF9wcmVmZXJlbmNlc0NoYW5nZWQ6XSk6CisKIDIwMjEtMDUtMTMgIE1l
Z2FuIEdhcmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgdGV4
dEluZGljYXRvciBib3VuY2UgZm9yIEFwcEhpZ2hsaWdodHMgb24gc2Nyb2xsLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2Fj
eS93aW4vQ2hhbmdlTG9nCmluZGV4IGIzZjMzMzAwYTM4NmI1ZjQ5OTMzNGJlMWUxYjYxNmRjZTFh
MzI1M2YuLmNhMzIxMmJkYzdjMDdjMWY4OWIwZWU5ZmQ0ZTE5ODAzNGRlMTQ4MzQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L3dpbi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMS0wNS0xNCAgUnlvc3Vr
ZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KKworICAgICAgICBEZWxldGUgV2ViU1FMIGNvZGUg
ZnJvbSBXZWJLaXQyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjU3MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIFdlYlZpZXcuY3BwOgorICAgICAgICAoV2ViVmlldzo6bm90aWZ5UHJlZmVyZW5jZXND
aGFuZ2VkKToKKwogMjAyMS0wNS0xMyAgTWVnYW4gR2FyZG5lciAgPG1lZ2FuX2dhcmRuZXJAYXBw
bGUuY29tPgogCiAgICAgICAgIEFkZCB0ZXh0SW5kaWNhdG9yIGJvdW5jZSBmb3IgQXBwSGlnaGxp
Z2h0cyBvbiBzY3JvbGwuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5j
ZXMvV2ViUHJlZmVyZW5jZXNFeHBlcmltZW50YWwueWFtbCBiL1NvdXJjZS9XVEYvU2NyaXB0cy9Q
cmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sCmluZGV4IDVmYjQ0NzJk
NmFhZjNhNjY1MDhhMjgwMjY1NDA3YTcwYjExNTllMDMuLmYzNDY2NWI3ZTZhOTZmZjAyYWNhMWYw
ZTRlMjM0N2UzODc5YTUzZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJl
bmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sCisrKyBiL1NvdXJjZS9XVEYvU2Ny
aXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1lbnRhbC55YW1sCkBAIC0xMzA1
LDI4ICsxMzA1LDYgQEAgV2ViUlRDVlA5UHJvZmlsZTJDb2RlY0VuYWJsZWQ6CiAgICAgV2ViS2l0
OgogICAgICAgZGVmYXVsdDogZmFsc2UKIAotV2ViU1FMRGlzYWJsZWQ6Ci0gIHR5cGU6IGJvb2wK
LSAgaHVtYW5SZWFkYWJsZU5hbWU6ICJEaXNhYmxlIFdlYlNRTCIKLSAgaHVtYW5SZWFkYWJsZURl
c2NyaXB0aW9uOiAiRGlzYWJsZSBXZWJTUUwiCi0gIHdlYmNvcmVCaW5kaW5nOiBSdW50aW1lRW5h
YmxlZEZlYXR1cmVzCi0gIGV4cG9zZWQ6IFsgV2ViS2l0IF0KLSAgZGVmYXVsdFZhbHVlOgotICAg
IFdlYktpdDoKLSAgICAgIGRlZmF1bHQ6IHRydWUKLQotIyBGSVhNRTogV2ViS2l0TGVnYWN5IGhh
cyBhbiBleGlzdGluZyBwcmVmZXJlbmNlIGNhbGxlZCAnV2ViU1FMRW5hYmxlZCcuIFdlIHNob3Vs
ZCByZWNvbmNpbGUgaXQgd2l0aCBXZWJTUUxEaXNhYmxlZC4KLVdlYlNRTEVuYWJsZWQ6Ci0gIHR5
cGU6IGJvb2wKLSAgaHVtYW5SZWFkYWJsZU5hbWU6ICJFbmFibGUgV2ViU1FMIgotICBodW1hblJl
YWRhYmxlRGVzY3JpcHRpb246ICJFbmFibGUgV2ViU1FMIgotICB3ZWJjb3JlQmluZGluZzogY3Vz
dG9tCi0gIGV4cG9zZWQ6IFsgV2ViS2l0TGVnYWN5IF0KLSAgZGVmYXVsdFZhbHVlOgotICAgIFdl
YktpdExlZ2FjeToKLSAgICAgICJQTEFURk9STShJT1NfRkFNSUxZKSI6IFdlYktpdDo6ZGVmYXVs
dFdlYlNRTEVuYWJsZWQoKQotICAgICAgZGVmYXVsdDogdHJ1ZQotCiBXZWJTaGFyZUZpbGVBUElF
bmFibGVkOgogICB0eXBlOiBib29sCiAgIGh1bWFuUmVhZGFibGVOYW1lOiAiV2ViIFNoYXJlIEFQ
SSBMZXZlbCAyIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dl
YlByZWZlcmVuY2VzSW50ZXJuYWwueWFtbCBiL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNl
cy9XZWJQcmVmZXJlbmNlc0ludGVybmFsLnlhbWwKaW5kZXggYjU5OGFhNmEwNDgzMmE3MGY5Nzhk
YTI5MDkxYTI5YWU3YWI4OTVkNy4uZmY3Njc2MDY3MDEwMzY5ZWZkZjMxNjVmMDEwMThkN2VkYTQ2
YjEzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZl
cmVuY2VzSW50ZXJuYWwueWFtbAorKysgYi9Tb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMv
V2ViUHJlZmVyZW5jZXNJbnRlcm5hbC55YW1sCkBAIC04NTgsNiArODU4LDE3IEBAIFdlYlJUQ01E
TlNJQ0VDYW5kaWRhdGVzRW5hYmxlZDoKICAgICBXZWJLaXQ6CiAgICAgICBkZWZhdWx0OiB0cnVl
CiAKK1dlYlNRTEVuYWJsZWQ6CisgIHR5cGU6IGJvb2wKKyAgaHVtYW5SZWFkYWJsZU5hbWU6ICJF
bmFibGUgV2ViU1FMIgorICBodW1hblJlYWRhYmxlRGVzY3JpcHRpb246ICJFbmFibGUgV2ViU1FM
IgorICB3ZWJjb3JlQmluZGluZzogY3VzdG9tCisgIGV4cG9zZWQ6IFsgV2ViS2l0TGVnYWN5IF0K
KyAgZGVmYXVsdFZhbHVlOgorICAgIFdlYktpdExlZ2FjeToKKyAgICAgICJQTEFURk9STShJT1Nf
RkFNSUxZKSI6IFdlYktpdDo6ZGVmYXVsdFdlYlNRTEVuYWJsZWQoKQorICAgICAgZGVmYXVsdDog
dHJ1ZQorCiBab29tT25Eb3VibGVUYXBXaGVuUm9vdDoKICAgdHlwZTogYm9vbAogICBjb25kaXRp
b246IFBMQVRGT1JNKElPU19GQU1JTFkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVudGltZUVu
YWJsZWRGZWF0dXJlcy5oCmluZGV4IGFiNWYzMWJhZWVmZWIxYTc0OTQwM2UzYjZiNTcwOGMwNDhh
ZjMwOTYuLmZjZjJmZWUwODdmNGVkYTIxYzBiOWIyZGQyZTNiZmMyNTg1MTJmYWYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0xMjMsNyArMTIz
LDcgQEAgcHVibGljOgogICAgIGJvb2wgY3NzVHlwZWRPTUVuYWJsZWQoKSBjb25zdCB7IHJldHVy
biBtX0NTU1R5cGVkT01FbmFibGVkOyB9CiAjZW5kaWYKIAotICAgIHZvaWQgc2V0V2ViU1FMRGlz
YWJsZWQoYm9vbCBpc0Rpc2FibGVkKSB7IG1fd2ViU1FMRW5hYmxlZCA9ICFpc0Rpc2FibGVkOyB9
CisgICAgdm9pZCBzZXRXZWJTUUxFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1fd2ViU1FMRW5h
YmxlZCA9IGlzRW5hYmxlZDsgfQogICAgIGJvb2wgd2ViU1FMRW5hYmxlZCgpIGNvbnN0IHsgcmV0
dXJuIG1fd2ViU1FMRW5hYmxlZDsgfQogCiAgICAgdm9pZCBzZXREaWFsb2dFbGVtZW50RW5hYmxl
ZChib29sIGlzRW5hYmxlZCkgeyBtX2RpYWxvZ0VsZW1lbnRFbmFibGVkID0gaXNFbmFibGVkOyB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2Vi
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwCmluZGV4
IDg0ZDU2MTQzMTBhN2Y2NmU4Yjk2ZWY4ZTQ3NWUyYTk3YjQwZTEyMDkuLjVlZjJiNmVjMDk2YjRm
ZTBhMGZhMzUwN2IzYzI3MTE0MDczZGZhZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwCkBAIC04MCw3ICs4MCw2IEBAIGNvbnN0IE9wdGlvblNl
dDxXZWJzaXRlRGF0YVR5cGU+JiBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6Om1vbml0
b3JlZERhdGFUCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogICAgICAgICBXZWJzaXRlRGF0
YVR5cGU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25zLAogI2VuZGlmCi0gICAgICAgIFdlYnNp
dGVEYXRhVHlwZTo6V2ViU1FMRGF0YWJhc2VzLAogICAgIH0pKTsKIAogICAgIEFTU0VSVChSdW5M
b29wOjppc01haW4oKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9j
ZXNzRGF0YVN0b3JlUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vz
c0RhdGFTdG9yZVBhcmFtZXRlcnMuaAppbmRleCAyNWI1YTExNzYwZWEyMzY3YThlZjE5ZDBmZWE4
ZjAzMGNlNGZkOWY0Li42ZjEyNWY5ODJkMGNjZTZlMzcxZDZkOGRhYjhkY2UzNjgzYzlmNTE0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1l
dGVycy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NEYXRhU3RvcmVQYXJh
bWV0ZXJzLmgKQEAgLTQwLDggKzQwLDYgQEAgc3RydWN0IFdlYlByb2Nlc3NEYXRhU3RvcmVQYXJh
bWV0ZXJzIHsKICAgICBTdHJpbmcgYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeTsKICAgICBTYW5k
Ym94RXh0ZW5zaW9uOjpIYW5kbGUgYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhh
bmRsZTsKICAgICBTdHJpbmcgYXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFt
ZTsKLSAgICBTdHJpbmcgd2ViU1FMRGF0YWJhc2VEaXJlY3Rvcnk7Ci0gICAgU2FuZGJveEV4dGVu
c2lvbjo6SGFuZGxlIHdlYlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAg
IFN0cmluZyBtZWRpYUNhY2hlRGlyZWN0b3J5OwogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRs
ZSBtZWRpYUNhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIFN0cmluZyBtZWRpYUtl
eVN0b3JhZ2VEaXJlY3Rvcnk7CkBAIC02Nyw4ICs2NSw2IEBAIHZvaWQgV2ViUHJvY2Vzc0RhdGFT
dG9yZVBhcmFtZXRlcnM6OmVuY29kZShFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogICAgIGVuY29k
ZXIgPDwgYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeTsKICAgICBlbmNvZGVyIDw8IGFwcGxpY2F0
aW9uQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAgICAgZW5jb2RlciA8PCBhcHBsaWNh
dGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1lOwotICAgIGVuY29kZXIgPDwgd2ViU1FM
RGF0YWJhc2VEaXJlY3Rvcnk7Ci0gICAgZW5jb2RlciA8PCB3ZWJTUUxEYXRhYmFzZURpcmVjdG9y
eUV4dGVuc2lvbkhhbmRsZTsKICAgICBlbmNvZGVyIDw8IG1lZGlhQ2FjaGVEaXJlY3Rvcnk7CiAg
ICAgZW5jb2RlciA8PCBtZWRpYUNhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIGVu
Y29kZXIgPDwgbWVkaWFLZXlTdG9yYWdlRGlyZWN0b3J5OwpAQCAtMTA0LDE1ICsxMDAsNiBAQCBP
cHRpb25hbDxXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycz4gV2ViUHJvY2Vzc0RhdGFTdG9y
ZVBhcmFtZXRlcnM6OmRlY29kZShEZQogICAgIGlmICghZGVjb2Rlci5kZWNvZGUoYXBwbGljYXRp
b25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSkpCiAgICAgICAgIHJldHVybiBXVEY6Om51
bGxvcHQ7CiAKLSAgICBTdHJpbmcgd2ViU1FMRGF0YWJhc2VEaXJlY3Rvcnk7Ci0gICAgaWYgKCFk
ZWNvZGVyLmRlY29kZSh3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeSkpCi0gICAgICAgIHJldHVybiBX
VEY6Om51bGxvcHQ7Ci0KLSAgICBPcHRpb25hbDxTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+IHdl
YlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwotICAgIGRlY29kZXIgPj4gd2Vi
U1FMRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7Ci0gICAgaWYgKCF3ZWJTUUxEYXRh
YmFzZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSkKLSAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9w
dDsKLQogICAgIFN0cmluZyBtZWRpYUNhY2hlRGlyZWN0b3J5OwogICAgIGlmICghZGVjb2Rlci5k
ZWNvZGUobWVkaWFDYWNoZURpcmVjdG9yeSkpCiAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7
CkBAIC0xNjYsOCArMTUzLDYgQEAgT3B0aW9uYWw8V2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRl
cnM+IFdlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzOjpkZWNvZGUoRGUKICAgICAgICAgV1RG
TW92ZShhcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KSwKICAgICAgICAgV1RGTW92ZSgqYXBwbGlj
YXRpb25DYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSksCiAgICAgICAgIFdURk1vdmUoYXBw
bGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSksCi0gICAgICAgIFdURk1vdmUo
d2ViU1FMRGF0YWJhc2VEaXJlY3RvcnkpLAotICAgICAgICBXVEZNb3ZlKCp3ZWJTUUxEYXRhYmFz
ZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSksCiAgICAgICAgIFdURk1vdmUobWVkaWFDYWNoZURp
cmVjdG9yeSksCiAgICAgICAgIFdURk1vdmUoKm1lZGlhQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25I
YW5kbGUpLAogICAgICAgICBXVEZNb3ZlKG1lZGlhS2V5U3RvcmFnZURpcmVjdG9yeSksCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcCBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCmluZGV4IDA1
MTZkYjQ3MTVlZjY3ZjcwY2ZjODE1OGE5MjQwMmUzOWMwNjlmMmQuLmUwZDM2ZjU2OWEwMDA3ZDk2
YTU5MDc4NDYwZDY5NzMyYTY2YTlmYTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCkBAIC0xOTk2LDE2ICsxOTk2LDYgQEAgYm9vbCBXS1By
ZWZlcmVuY2VzR2V0UHVuY2hPdXRXaGl0ZUJhY2tncm91bmRzSW5EYXJrTW9kZShXS1ByZWZlcmVu
Y2VzUmVmIHByZWZlcmUKICAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+cHVuY2hP
dXRXaGl0ZUJhY2tncm91bmRzSW5EYXJrTW9kZSgpOwogfQogCi12b2lkIFdLUHJlZmVyZW5jZXNT
ZXRXZWJTUUxEaXNhYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGZs
YWcpCi17Ci0gICAgdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c2V0V2ViU1FMRGlzYWJsZWQoZmxh
Zyk7Ci19Ci0KLWJvb2wgV0tQcmVmZXJlbmNlc0dldFdlYlNRTERpc2FibGVkKFdLUHJlZmVyZW5j
ZXNSZWYgcHJlZmVyZW5jZXNSZWYpCi17Ci0gICAgcmV0dXJuIHRvSW1wbChwcmVmZXJlbmNlc1Jl
ZiktPndlYlNRTERpc2FibGVkKCk7Ci19Ci0KIHZvaWQgV0tQcmVmZXJlbmNlc1NldENhcHR1cmVB
dWRpb0luVUlQcm9jZXNzRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBi
b29sIGZsYWcpCiB7CiAgICAgdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c2V0Q2FwdHVyZUF1ZGlv
SW5VSVByb2Nlc3NFbmFibGVkKGZsYWcpOwpAQCAtMjIyNywzICsyMjE3LDEyIEBAIGJvb2wgV0tQ
cmVmZXJlbmNlc0dldFN1YnBpeGVsQ1NTT01FbGVtZW50TWV0cmljc0VuYWJsZWQoV0tQcmVmZXJl
bmNlc1JlZikKIHsKICAgICByZXR1cm4gZmFsc2U7CiB9CisKK3ZvaWQgV0tQcmVmZXJlbmNlc1Nl
dFdlYlNRTERpc2FibGVkKFdLUHJlZmVyZW5jZXNSZWYsIGJvb2wpCit7Cit9CisKK2Jvb2wgV0tQ
cmVmZXJlbmNlc0dldFdlYlNRTERpc2FibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNS
ZWYpCit7CisgICAgcmV0dXJuIHRydWU7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUmVmLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQy9XS1ByZWZlcmVuY2VzUmVmLmgKaW5kZXggOGVkNjIxMTdiZTVkNTNiZTI2ZWRjZGQ3
NjcxZTFmYTUxZjNhMzFjYy4uYmQ1OGM1MDJmMDU3N2Y4MTZkNmY0ZDIxOTMxYzExMjJhNjg4MzMy
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNl
c1JlZi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNS
ZWYuaApAQCAtMzMxLDcgKzMzMSw3IEBAIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRD
cm9zc09yaWdpblJlc291cmNlUG9saWN5RW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmCiBXS19FWFBP
UlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0UHJvY2Vzc1N3YXBPbk5hdmlnYXRpb25FbmFibGVkKFdL
UHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpOwogV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJl
bmNlc1NldFByb2Nlc3NTd2FwT25OYXZpZ2F0aW9uRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHBy
ZWZlcmVuY2VzUmVmLCBib29sIGVuYWJsZWQpOwogCi0vLyBEZWZhdWx0cyB0byBmYWxzZS4KKy8v
IE9ic29sZXRlLiBBbHdheXMgcmV0dXJucyB0cnVlLgogV0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJl
bmNlc0dldFdlYlNRTERpc2FibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpOwog
V0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldFdlYlNRTERpc2FibGVkKFdLUHJlZmVyZW5j
ZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxlZCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAppbmRleCAzNDIwMGNjNTY2Y2Q5NmQwMzQxZTI4ZGI0
NjY4NGVlMDhkMDU3ZDQzLi45MGNmZmE1Y2NiNjAwYTE3ODkyMTVkOTQxMmJiZDNhYWE2YTZlZWE0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCkBAIC03Mzcs
MTEgKzczNyw2IEBAIFdlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzIFdlYlByb2Nlc3NQb29s
Ojp3ZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycyhXZWJQCiAKICAgICBTdHJpbmcgYXBwbGlj
YXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSA9IHdlYnNpdGVEYXRhU3RvcmUuYXBw
bGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSgpOwogCi0gICAgU3RyaW5nIHdl
YlNRTERhdGFiYXNlRGlyZWN0b3J5ID0gd2Vic2l0ZURhdGFTdG9yZS5yZXNvbHZlZERhdGFiYXNl
RGlyZWN0b3J5KCk7Ci0gICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIHdlYlNRTERhdGFiYXNl
RGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwotICAgIGlmICghd2ViU1FMRGF0YWJhc2VEaXJlY3Rv
cnkuaXNFbXB0eSgpKQotICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVXaXRo
b3V0UmVzb2x2aW5nUGF0aCh3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeSwgU2FuZGJveEV4dGVuc2lv
bjo6VHlwZTo6UmVhZFdyaXRlLCB3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRs
ZSk7Ci0KICAgICBTdHJpbmcgbWVkaWFDYWNoZURpcmVjdG9yeSA9IHdlYnNpdGVEYXRhU3RvcmUu
cmVzb2x2ZWRNZWRpYUNhY2hlRGlyZWN0b3J5KCk7CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6SGFu
ZGxlIG1lZGlhQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAgICAgaWYgKCFtZWRpYUNh
Y2hlRGlyZWN0b3J5LmlzRW1wdHkoKSkKQEAgLTc2Nyw4ICs3NjIsNiBAQCBXZWJQcm9jZXNzRGF0
YVN0b3JlUGFyYW1ldGVycyBXZWJQcm9jZXNzUG9vbDo6d2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFt
ZXRlcnMoV2ViUAogICAgICAgICBXVEZNb3ZlKGFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkpLAog
ICAgICAgICBXVEZNb3ZlKGFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUp
LAogICAgICAgICBXVEZNb3ZlKGFwcGxpY2F0aW9uQ2FjaGVGbGF0RmlsZVN1YmRpcmVjdG9yeU5h
bWUpLAotICAgICAgICBXVEZNb3ZlKHdlYlNRTERhdGFiYXNlRGlyZWN0b3J5KSwKLSAgICAgICAg
V1RGTW92ZSh3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSksCiAgICAgICAg
IFdURk1vdmUobWVkaWFDYWNoZURpcmVjdG9yeSksCiAgICAgICAgIFdURk1vdmUobWVkaWFDYWNo
ZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSksCiAgICAgICAgIFdURk1vdmUobWVkaWFLZXlTdG9y
YWdlRGlyZWN0b3J5KSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
cm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAppbmRl
eCAyMTVhYWJiMGQ1OTJhNTY0NWU1MmEwYTRkN2JkZTFhMjMyNTE3MWFiLi43MzUyNzYwNjdmZDFl
MDMwNDQyMTJlN2RjNjg0NDZlMWIzNmNjYTJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlByb2Nlc3MuY3BwCkBAIC05OCw3ICs5OCw2IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9Dcm9zc09y
aWdpblByZWZsaWdodFJlc3VsdENhY2hlLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9ETlMuaD4KICNp
bmNsdWRlIDxXZWJDb3JlL0RPTVdpbmRvdy5oPgotI2luY2x1ZGUgPFdlYkNvcmUvRGF0YWJhc2VN
YW5hZ2VyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9EYXRhYmFzZVRyYWNrZXIuaD4KICNpbmNsdWRl
IDxXZWJDb3JlL0RlcHJlY2F0ZWRHbG9iYWxTZXR0aW5ncy5oPgogI2luY2x1ZGUgPFdlYkNvcmUv
RGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuaD4KQEAgLTU1Niw5ICs1NTUsNiBAQCB2b2lkIFdlYlBy
b2Nlc3M6OnNldFdlYnNpdGVEYXRhU3RvcmVQYXJhbWV0ZXJzKFdlYlByb2Nlc3NEYXRhU3RvcmVQ
YXJhbWV0ZXJzJiYgcAogewogICAgIEFTU0VSVCghbV9zZXNzaW9uSUQpOwogICAgIG1fc2Vzc2lv
bklEID0gcGFyYW1ldGVycy5zZXNzaW9uSUQ7Ci0gICAgCi0gICAgYXV0byYgZGF0YWJhc2VNYW5h
Z2VyID0gRGF0YWJhc2VNYW5hZ2VyOjpzaW5nbGV0b24oKTsKLSAgICBkYXRhYmFzZU1hbmFnZXIu
aW5pdGlhbGl6ZShwYXJhbWV0ZXJzLndlYlNRTERhdGFiYXNlRGlyZWN0b3J5KTsKIAogICAgIC8v
IEZJWE1FOiBUaGlzIHNob3VsZCBiZSBjb25zdHJ1Y3RlZCBwZXIgZGF0YSBzdG9yZSwgbm90IHBl
ciBwcm9jZXNzLgogICAgIG1fYXBwbGljYXRpb25DYWNoZVN0b3JhZ2UgPSBBcHBsaWNhdGlvbkNh
Y2hlU3RvcmFnZTo6Y3JlYXRlKHBhcmFtZXRlcnMuYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSwg
cGFyYW1ldGVycy5hcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1lKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCmlu
ZGV4IDJiOGIwNDIzMmUzYTY4ZjA3ZmYyNjI4ZDAwYTk0YmZmNTA4OWM1ZTkuLmU1NTc4YTkzOWFm
OGI1ZDEyOTEyMGIzNzgwOWVhMzJiMmFjYWY5NGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQpAQCAtNDQ2LDcgKzQ0Niw2IEBAIHZv
aWQgV2ViUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplV2ViUHJvY2VzcyhXZWJQcm9jZXNzQ3Jl
YXRpb25QYXJhbWV0ZXJzJiBwYXJhCiB2b2lkIFdlYlByb2Nlc3M6OnBsYXRmb3JtU2V0V2Vic2l0
ZURhdGFTdG9yZVBhcmFtZXRlcnMoV2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnMmJiBwYXJh
bWV0ZXJzKQogewogI2lmIEVOQUJMRShTQU5EQk9YX0VYVEVOU0lPTlMpCi0gICAgU2FuZGJveEV4
dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMud2ViU1FMRGF0YWJhc2VEaXJl
Y3RvcnlFeHRlbnNpb25IYW5kbGUpOwogICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJt
YW5lbnRseShwYXJhbWV0ZXJzLmFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5k
bGUpOwogICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJz
Lm1lZGlhQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOwogICAgIFNhbmRib3hFeHRlbnNp
b246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJzLm1lZGlhS2V5U3RvcmFnZURpcmVjdG9y
eUV4dGVuc2lvbkhhbmRsZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9X
ZWJWaWV3L1dlYlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZp
ZXcubW0KaW5kZXggOTkyZjNlMDk3NGQ2NDViZmUyNWQ3MzE5ODMyZDg0MWY3NzBlZTZkYi4uNGVk
ODJkMGE1NjUzMzIwMzhhZTczOTZmNzk2ZWNkNjE2MTFiZjNmNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQpAQCAtMjkzMyw3ICsyOTMzLDcgQEAgc3RhdGlj
IGJvb2wgbmVlZHNTZWxmUmV0YWluV2hpbGVMb2FkaW5nUXVpcmsoKQogICAgIHNldHRpbmdzLnNl
dFZpZGVvUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKG1lZGlhUGxheWJhY2tSZXF1aXJlc1Vz
ZXJHZXN0dXJlIHx8IFtwcmVmZXJlbmNlcyB2aWRlb1BsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVy
ZV0pOwogICAgIHNldHRpbmdzLnNldEF1ZGlvUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKG1l
ZGlhUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlIHx8IFtwcmVmZXJlbmNlcyBhdWRpb1BsYXli
YWNrUmVxdWlyZXNVc2VyR2VzdHVyZV0pOwogCi0gICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6
c2hhcmVkRmVhdHVyZXMoKS5zZXRXZWJTUUxEaXNhYmxlZCghW3ByZWZlcmVuY2VzIHdlYlNRTEVu
YWJsZWRdKTsKKyAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNl
dFdlYlNRTEVuYWJsZWQoW3ByZWZlcmVuY2VzIHdlYlNRTEVuYWJsZWRdKTsKICAgICBEYXRhYmFz
ZU1hbmFnZXI6OnNpbmdsZXRvbigpLnNldElzQXZhaWxhYmxlKFtwcmVmZXJlbmNlcyBkYXRhYmFz
ZXNFbmFibGVkXSk7CiAgICAgc2V0dGluZ3Muc2V0TG9jYWxTdG9yYWdlRGF0YWJhc2VQYXRoKFtw
cmVmZXJlbmNlcyBfbG9jYWxTdG9yYWdlRGF0YWJhc2VQYXRoXSk7CiAgICAgX3ByaXZhdGUtPnBh
Z2UtPnNldFNlc3Npb25JRChbcHJlZmVyZW5jZXMgcHJpdmF0ZUJyb3dzaW5nRW5hYmxlZF0gPyBQ
QUw6OlNlc3Npb25JRDo6bGVnYWN5UHJpdmF0ZVNlc3Npb25JRCgpIDogUEFMOjpTZXNzaW9uSUQ6
OmRlZmF1bHRTZXNzaW9uSUQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dp
bi9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwCmluZGV4
IDJhYmQ2YzUxYzJhNmY1YTI3NjEyNGYyOWRjN2ZjZDVjMzBkMDhlZGQuLjk3NDQ4MzZiYjcwNTE1
ZjQzNDFmMmRiZTU0NzY5YzhmZDE1MjExNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvd2luL1dlYlZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcu
Y3BwCkBAIC01MzA1LDcgKzUzMDUsNyBAQCBIUkVTVUxUIFdlYlZpZXc6Om5vdGlmeVByZWZlcmVu
Y2VzQ2hhbmdlZChJV2ViTm90aWZpY2F0aW9uKiBub3RpZmljYXRpb24pCiAgICAgaHIgPSBwcmVm
c1ByaXZhdGUtPndlYlNRTEVuYWJsZWQoJmVuYWJsZWQpOwogICAgIGlmIChGQUlMRUQoaHIpKQog
ICAgICAgICByZXR1cm4gaHI7Ci0gICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVh
dHVyZXMoKS5zZXRXZWJTUUxEaXNhYmxlZCghZW5hYmxlZCk7CisgICAgUnVudGltZUVuYWJsZWRG
ZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRXZWJTUUxFbmFibGVkKGVuYWJsZWQpOwogCiAg
ICAgaHIgPSBwcmVmc1ByaXZhdGUtPnZpc3VhbFZpZXdwb3J0QVBJRW5hYmxlZCgmZW5hYmxlZCk7
CiAgICAgaWYgKEZBSUxFRChocikpCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29s
cy9DaGFuZ2VMb2cKaW5kZXggM2NhNDNmZjZmNDc1YWY4MWM5MGU5Zjk0NGU0NGFmNTE2MzNiMjI1
NS4uNmY5MDRlNjI3MzA5NzJhMzI4YjA3YTQ3NDdmNzhjOTk5OGNkMmJkMSAxMDA2NDQKLS0tIGEv
VG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisy
MDIxLTA1LTE0ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIERl
bGV0ZSBXZWJTUUwgY29kZSBmcm9tIFdlYktpdDIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTczOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogTWluaUJyb3dzZXIvcGxheXN0YXRpb24vV2ViQ29udGV4
dC5jcHA6CisgICAgICAgIChXZWJDb250ZXh0OjpXZWJDb250ZXh0KToKKyAgICAgICAgKiBXZWJL
aXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdUUjo6VGVzdENvbnRy
b2xsZXI6OmNvbmZpZ3VyZVdlYnNpdGVEYXRhU3RvcmVUZW1wb3JhcnlEaXJlY3Rvcmllcyk6CisK
IDIwMjEtMDUtMTMgIEFha2FzaCBKYWluICA8YWFrYXNoX2phaW5AYXBwbGUuY29tPgogCiAgICAg
ICAgIHJlcG9ydC1ub24taW5jbHVzaXZlLWxhbmd1YWdlIHNob3VsZCBza2lwIHN5bWxpbmtzCmRp
ZmYgLS1naXQgYS9Ub29scy9NaW5pQnJvd3Nlci9wbGF5c3RhdGlvbi9XZWJDb250ZXh0LmNwcCBi
L1Rvb2xzL01pbmlCcm93c2VyL3BsYXlzdGF0aW9uL1dlYkNvbnRleHQuY3BwCmluZGV4IDg5N2I5
OGM0Mjk0MTBiMTUwNWMyNWU2ZWNlODVlNjk5MWUwZDViZTguLjJkYmNjMmQzMmI5MzQyYzJhZGIx
OTQ2M2JhNDA2NDIwM2IwZWVlYTkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL3BsYXlz
dGF0aW9uL1dlYkNvbnRleHQuY3BwCisrKyBiL1Rvb2xzL01pbmlCcm93c2VyL3BsYXlzdGF0aW9u
L1dlYkNvbnRleHQuY3BwCkBAIC01Nyw3ICs1Nyw2IEBAIFdlYkNvbnRleHQ6OldlYkNvbnRleHQo
KQogICAgIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVmPiBuZXR3b3JrQ2FjaGVEaXJlY3RvcnkgPSBh
ZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKCIvZGF0YS9taW5pYnJvd3Nlci9O
ZXR3b3JrQ2FjaGUiKSk7CiAgICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IGluZGV4ZWREQkRp
cmVjdG9yeSA9IGFkb3B0V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIi9kYXRhL21p
bmlicm93c2VyL0luZGV4ZWREQiIpKTsKICAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gbG9j
YWxTdG9yYWdlRGlyZWN0b3J5ID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmlu
ZygiL2RhdGEvbWluaWJyb3dzZXIvTG9jYWxTdG9yYWdlIikpOwotICAgIFdLUmV0YWluUHRyPFdL
U3RyaW5nUmVmPiB3ZWJTUUxEaXJlY3RvcnkgPSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVU
RjhDU3RyaW5nKCIvZGF0YS9taW5pYnJvd3Nlci9XZWJTUUwiKSk7CiAgICAgV0tSZXRhaW5QdHI8
V0tTdHJpbmdSZWY+IGNhY2hlU3RvcmFnZURpcmVjdG9yeSA9IGFkb3B0V0soV0tTdHJpbmdDcmVh
dGVXaXRoVVRGOENTdHJpbmcoIi9kYXRhL21pbmlicm93c2VyL0NhY2hlU3Ryb2FnZSIpKTsKICAg
ICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gbWVkaWFLZXlTdG9yYWdlRGlyZWN0b3J5ID0gYWRv
cHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiL2RhdGEvbWluaWJyb3dzZXIvTWVk
aWFLZXkiKSk7CiAgICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IHJlc291cmNlTG9hZFN0YXRp
c3RpY3NEaXJlY3RvcnkgPSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKCIv
ZGF0YS9taW5pYnJvd3Nlci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzIikpOwpAQCAtNzIsNyArNzEs
NiBAQCBXZWJDb250ZXh0OjpXZWJDb250ZXh0KCkKICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25m
aWd1cmF0aW9uU2V0TmV0d29ya0NhY2hlRGlyZWN0b3J5KGRhdGFTdG9yZUNvbmZpZ3VyYXRpb24u
Z2V0KCksIG5ldHdvcmtDYWNoZURpcmVjdG9yeS5nZXQoKSk7CiAgICAgV0tXZWJzaXRlRGF0YVN0
b3JlQ29uZmlndXJhdGlvblNldEluZGV4ZWREQkRhdGFiYXNlRGlyZWN0b3J5KGRhdGFTdG9yZUNv
bmZpZ3VyYXRpb24uZ2V0KCksIGluZGV4ZWREQkRpcmVjdG9yeS5nZXQoKSk7CiAgICAgV0tXZWJz
aXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvblNldExvY2FsU3RvcmFnZURpcmVjdG9yeShkYXRhU3Rv
cmVDb25maWd1cmF0aW9uLmdldCgpLCBsb2NhbFN0b3JhZ2VEaXJlY3RvcnkuZ2V0KCkpOwotICAg
IFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXRXZWJTUUxEYXRhYmFzZURpcmVjdG9y
eShkYXRhU3RvcmVDb25maWd1cmF0aW9uLmdldCgpLCB3ZWJTUUxEaXJlY3RvcnkuZ2V0KCkpOwog
ICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXRDYWNoZVN0b3JhZ2VEaXJlY3Rv
cnkoZGF0YVN0b3JlQ29uZmlndXJhdGlvbi5nZXQoKSwgY2FjaGVTdG9yYWdlRGlyZWN0b3J5Lmdl
dCgpKTsKICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uU2V0TWVkaWFLZXlzU3Rv
cmFnZURpcmVjdG9yeShkYXRhU3RvcmVDb25maWd1cmF0aW9uLmdldCgpLCBtZWRpYUtleVN0b3Jh
Z2VEaXJlY3RvcnkuZ2V0KCkpOwogICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25T
ZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5KGRhdGFTdG9yZUNvbmZpZ3VyYXRpb24u
Z2V0KCksIHJlc291cmNlTG9hZFN0YXRpc3RpY3NEaXJlY3RvcnkuZ2V0KCkpOwpkaWZmIC0tZ2l0
IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAgYi9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcAppbmRleCBlMDY2NzAwZjNjZTZhYWRhOWFi
MjFhMzY0YjBhMmJiY2U0MjhhZTQ4Li5jMWViMTA4YjZmZWU1YzU0MWVmMTgxOGMwZGQ5OTQyYjVi
NmMwNmI3IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVy
LmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcApAQCAt
NTg4LDcgKzU4OCw2IEBAIHZvaWQgVGVzdENvbnRyb2xsZXI6OmNvbmZpZ3VyZVdlYnNpdGVEYXRh
U3RvcmVUZW1wb3JhcnlEaXJlY3RvcmllcyhXS1dlYnNpdGVEYXRhCiAgICAgICAgIFdLV2Vic2l0
ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXRDYWNoZVN0b3JhZ2VEaXJlY3RvcnkoY29uZmlndXJh
dGlvbiwgdG9XSyhtYWtlU3RyaW5nKHRlbXBvcmFyeUZvbGRlciwgcGF0aFNlcGFyYXRvciwgIkNh
Y2hlU3RvcmFnZSIsIHBhdGhTZXBhcmF0b3IsIHJhbmRvbU51bWJlcikpLmdldCgpKTsKICAgICAg
ICAgV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvblNldEluZGV4ZWREQkRhdGFiYXNlRGly
ZWN0b3J5KGNvbmZpZ3VyYXRpb24sIHRvV0sobWFrZVN0cmluZyh0ZW1wb3JhcnlGb2xkZXIsIHBh
dGhTZXBhcmF0b3IsICJEYXRhYmFzZXMiLCBwYXRoU2VwYXJhdG9yLCAiSW5kZXhlZERCIiwgcGF0
aFNlcGFyYXRvciwgcmFuZG9tTnVtYmVyKSkuZ2V0KCkpOwogICAgICAgICBXS1dlYnNpdGVEYXRh
U3RvcmVDb25maWd1cmF0aW9uU2V0TG9jYWxTdG9yYWdlRGlyZWN0b3J5KGNvbmZpZ3VyYXRpb24s
IHRvV0sobWFrZVN0cmluZyh0ZW1wb3JhcnlGb2xkZXIsIHBhdGhTZXBhcmF0b3IsICJMb2NhbFN0
b3JhZ2UiLCBwYXRoU2VwYXJhdG9yLCByYW5kb21OdW1iZXIpKS5nZXQoKSk7Ci0gICAgICAgIFdL
V2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXRXZWJTUUxEYXRhYmFzZURpcmVjdG9yeShj
b25maWd1cmF0aW9uLCB0b1dLKG1ha2VTdHJpbmcodGVtcG9yYXJ5Rm9sZGVyLCBwYXRoU2VwYXJh
dG9yLCAiRGF0YWJhc2VzIiwgcGF0aFNlcGFyYXRvciwgIldlYlNRTCIsIHBhdGhTZXBhcmF0b3Is
IHJhbmRvbU51bWJlcikpLmdldCgpKTsKICAgICAgICAgV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmln
dXJhdGlvblNldE1lZGlhS2V5c1N0b3JhZ2VEaXJlY3RvcnkoY29uZmlndXJhdGlvbiwgdG9XSyht
YWtlU3RyaW5nKHRlbXBvcmFyeUZvbGRlciwgcGF0aFNlcGFyYXRvciwgIk1lZGlhS2V5cyIsIHBh
dGhTZXBhcmF0b3IsIHJhbmRvbU51bWJlcikpLmdldCgpKTsKICAgICAgICAgV0tXZWJzaXRlRGF0
YVN0b3JlQ29uZmlndXJhdGlvblNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NEaXJlY3RvcnkoY29u
ZmlndXJhdGlvbiwgdG9XSyhtYWtlU3RyaW5nKHRlbXBvcmFyeUZvbGRlciwgcGF0aFNlcGFyYXRv
ciwgIlJlc291cmNlTG9hZFN0YXRpc3RpY3MiLCBwYXRoU2VwYXJhdG9yLCByYW5kb21OdW1iZXIp
KS5nZXQoKSk7CiAgICAgICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXRTZXJ2
aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5KGNvbmZpZ3VyYXRpb24sIHRvV0sobWFrZVN0
cmluZyh0ZW1wb3JhcnlGb2xkZXIsIHBhdGhTZXBhcmF0b3IsICJTZXJ2aWNlV29ya2VycyIsIHBh
dGhTZXBhcmF0b3IsIHJhbmRvbU51bWJlcikpLmdldCgpKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428682</attachid>
            <date>2021-05-14 16:30:31 -0700</date>
            <delta_ts>2021-05-14 23:54:55 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-225739-20210514163030.patch</filename>
            <type>text/plain</type>
            <size>23729</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NDc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDAwMWMyZDQ2MjA0ZGUxYjAyZDc3MTFj
NzE4ODk4NWRjNTU1NDQ0NmIuLjQxZWNmN2RhODU0YWQ5ZGM0ZmNkOGQ3MjZjZTBkYTU1YWJlMzli
NTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjEtMDUtMTQgIFJ5b3N1a2UgTml3YSAgPHJuaXdh
QHdlYmtpdC5vcmc+CisKKyAgICAgICAgRGVsZXRlIFdlYlNRTCBjb2RlIGZyb20gV2ViS2l0Mgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NzM5CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgU2lodWkgTGl1LgorCisgICAgICAgIERlbGV0ZWQgdGhlIGV4
cGVyaW1lbnRhbCBmZWF0dXJlIHRvIGRpc2FibGUgV2ViU1FMIHNpbmNlIHdlJ3ZlIGJlZW4gc2hp
cHBpbmcgdGhpcywKKyAgICAgICAgYW5kIG1hZGUgdGhlIGZsYWcgdG8gc2VsZWN0aXZlbHkgZW5h
YmxlIFdlYlNRTCBpbiBXZWJLaXQxIGFuIGludGVybmFsIGRlYnVnIHNldHRpbmcKKyAgICAgICAg
c2luY2Ugbm9ib2R5IHNob3VsZCBiZSBlbmFibGluZyB0aGlzIG5vdy4KKworICAgICAgICAqIFNj
cmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNFeHBlcmltZW50YWwueWFtbDoKKyAgICAg
ICAgKiBTY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzSW50ZXJuYWwueWFtbDoKKwog
MjAyMS0wNS0xMyAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CiAKICAgICAgICAgW1dl
YlhSXSBBbGxvdyBXZWJYUiB0byBiZSB0ZXN0ZWQgb24gUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
aW5kZXggZjYwZTM0NGVhYmNjNWZjM2UwMjA3MmQ1NTgzNWE0YTFjNjE2NzUwYS4uOGQyZGM0NWU5
OTliYzYxZGIwNTM3NDU0OGUyODI1MmFkOWYyZDc0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEz
IEBACisyMDIxLTA1LTE0ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAg
ICAgIERlbGV0ZSBXZWJTUUwgY29kZSBmcm9tIFdlYktpdDIKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTczOQorCisgICAgICAgIFJldmlld2VkIGJ5
IFNpaHVpIExpdS4KKworICAgICAgICAqIHBhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOgor
ICAgICAgICAoV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0V2ViU1FMRW5hYmxl
ZCk6IFJlcGxhY2VkIHNldFdlYlNRTERpc2FibGVkLgorCiAyMDIxLTA1LTEzICBEZXZpbiBSb3Vz
c28gIDxkcm91c3NvQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBSRUdSRVNTSU9OKHIyNzEy
MTYpIHBvaW50ZXJldmVudHMvaW9zL3BvaW50ZXItZXZlbnRzLW5vLW1vdXNlZG93bi13aGVuLXBy
ZXZlbnQtZGVmYXVsdC1jYWxsZWQtb24tcG9pbnRlcmRvd24uaHRtbCBpcyBjb25zaXN0ZW50bHkg
ZmFpbGluZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZwppbmRleCBlMTQ3OTkyNTQyMzRjZWVmMWZiOGRlMzQ1YTljOWVmMDk0ZDcy
YjE2Li40Y2U2ZGE4ZDYxYWY2NDBmMGRhOTdmOGQyMDZjZGQ5NDhiY2VmNTI1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpA
QCAtMSwzICsxLDI5IEBACisyMDIxLTA1LTE0ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQu
b3JnPgorCisgICAgICAgIERlbGV0ZSBXZWJTUUwgY29kZSBmcm9tIFdlYktpdDIKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTczOQorCisgICAgICAg
IFJldmlld2VkIGJ5IFNpaHVpIExpdS4KKworICAgICAgICBEZWxldGVkIFdlYlNRTCBjb2RlLiBX
ZSBrZWVwIHNvbWUgY29kZSBmb3Igd2Vic2l0ZSBkYXRhIHN0b3JlIHNpbmNlIGl0J3MgcG9zc2li
bGUKKyAgICAgICAgZm9yIHVzZXIncyBkZXZpY2UgdG8gc3RpbGwgaGF2ZSBXZWJTUUwgZGF0YSwg
YW5kIHdlIHNob3VsZCBiZSBhYmxlIHRvIGRlbGV0ZSB0aGVtLgorCisgICAgICAgICogTmV0d29y
a1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6Om1vbml0b3Jl
ZERhdGFUeXBlcyk6CisgICAgICAgICogU2hhcmVkL1dlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0
ZXJzLmg6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzOjpl
bmNvZGUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1l
dGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5j
cHA6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0V2ViU1FMRGlzYWJsZWQpOgorICAgICAgICAo
V0tQcmVmZXJlbmNlc0dldFdlYlNRTERpc2FibGVkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L0MvV0tQcmVmZXJlbmNlc1JlZi5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUG9v
bC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjp3ZWJQcm9jZXNzRGF0YVN0
b3JlUGFyYW1ldGVycyk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6c2V0V2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMp
OgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tOgorICAgICAg
ICAoV2ViS2l0OjpXZWJQcm9jZXNzOjpwbGF0Zm9ybVNldFdlYnNpdGVEYXRhU3RvcmVQYXJhbWV0
ZXJzKToKKwogMjAyMS0wNS0xMyAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CiAKICAg
ICAgICAgW1dlYlhSXSBBbGxvdyBXZWJYUiB0byBiZSB0ZXN0ZWQgb24gUExBVEZPUk0oQ09DT0Ep
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKaW5kZXggNzRjMWEzNDU1YTdjOWFlMGZmNmNjOWVl
YTcxNzg5NTBjMzAwOWFiNC4uNzE3NjYxZWJlZTMxNWRkYWJkYTA3NTA4MjJlZjM5NDE2OTBhN2U4
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTA1
LTE0ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIERlbGV0ZSBX
ZWJTUUwgY29kZSBmcm9tIFdlYktpdDIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyNTczOQorCisgICAgICAgIFJldmlld2VkIGJ5IFNpaHVpIExpdS4K
KworICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBfcHJl
ZmVyZW5jZXNDaGFuZ2VkOl0pOgorCiAyMDIxLTA1LTEzICBNZWdhbiBHYXJkbmVyICA8bWVnYW5f
Z2FyZG5lckBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIHRleHRJbmRpY2F0b3IgYm91bmNlIGZv
ciBBcHBIaWdobGlnaHRzIG9uIHNjcm9sbC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZwppbmRl
eCBiM2YzMzMwMGEzODZiNWY0OTkzMzRiZTFlMWI2MTZkY2UxYTMyNTNmLi4wMTJlYWY3MjA1Mjgx
ZWExMjc5NDIyYWMyZTIwN2JmOWI0OGM0ZTE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTMgQEAKKzIwMjEtMDUtMTQgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgRGVsZXRlIFdlYlNRTCBjb2RlIGZyb20gV2ViS2l0MgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NzM5CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgU2lodWkgTGl1LgorCisgICAgICAgICogV2ViVmlldy5jcHA6CisgICAg
ICAgIChXZWJWaWV3Ojpub3RpZnlQcmVmZXJlbmNlc0NoYW5nZWQpOgorCiAyMDIxLTA1LTEzICBN
ZWdhbiBHYXJkbmVyICA8bWVnYW5fZ2FyZG5lckBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIHRl
eHRJbmRpY2F0b3IgYm91bmNlIGZvciBBcHBIaWdobGlnaHRzIG9uIHNjcm9sbC4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1l
bnRhbC55YW1sIGIvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2Vz
RXhwZXJpbWVudGFsLnlhbWwKaW5kZXggNWZiNDQ3MmQ2YWFmM2E2NjUwOGEyODAyNjU0MDdhNzBi
MTE1OWUwMy4uZjM0NjY1YjdlNmE5NmZmMDJhY2ExZjBlNGUyMzQ3ZTM4NzlhNTNlYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzRXhwZXJp
bWVudGFsLnlhbWwKKysrIGIvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZl
cmVuY2VzRXhwZXJpbWVudGFsLnlhbWwKQEAgLTEzMDUsMjggKzEzMDUsNiBAQCBXZWJSVENWUDlQ
cm9maWxlMkNvZGVjRW5hYmxlZDoKICAgICBXZWJLaXQ6CiAgICAgICBkZWZhdWx0OiBmYWxzZQog
Ci1XZWJTUUxEaXNhYmxlZDoKLSAgdHlwZTogYm9vbAotICBodW1hblJlYWRhYmxlTmFtZTogIkRp
c2FibGUgV2ViU1FMIgotICBodW1hblJlYWRhYmxlRGVzY3JpcHRpb246ICJEaXNhYmxlIFdlYlNR
TCIKLSAgd2ViY29yZUJpbmRpbmc6IFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMKLSAgZXhwb3NlZDog
WyBXZWJLaXQgXQotICBkZWZhdWx0VmFsdWU6Ci0gICAgV2ViS2l0OgotICAgICAgZGVmYXVsdDog
dHJ1ZQotCi0jIEZJWE1FOiBXZWJLaXRMZWdhY3kgaGFzIGFuIGV4aXN0aW5nIHByZWZlcmVuY2Ug
Y2FsbGVkICdXZWJTUUxFbmFibGVkJy4gV2Ugc2hvdWxkIHJlY29uY2lsZSBpdCB3aXRoIFdlYlNR
TERpc2FibGVkLgotV2ViU1FMRW5hYmxlZDoKLSAgdHlwZTogYm9vbAotICBodW1hblJlYWRhYmxl
TmFtZTogIkVuYWJsZSBXZWJTUUwiCi0gIGh1bWFuUmVhZGFibGVEZXNjcmlwdGlvbjogIkVuYWJs
ZSBXZWJTUUwiCi0gIHdlYmNvcmVCaW5kaW5nOiBjdXN0b20KLSAgZXhwb3NlZDogWyBXZWJLaXRM
ZWdhY3kgXQotICBkZWZhdWx0VmFsdWU6Ci0gICAgV2ViS2l0TGVnYWN5OgotICAgICAgIlBMQVRG
T1JNKElPU19GQU1JTFkpIjogV2ViS2l0OjpkZWZhdWx0V2ViU1FMRW5hYmxlZCgpCi0gICAgICBk
ZWZhdWx0OiB0cnVlCi0KIFdlYlNoYXJlRmlsZUFQSUVuYWJsZWQ6CiAgIHR5cGU6IGJvb2wKICAg
aHVtYW5SZWFkYWJsZU5hbWU6ICJXZWIgU2hhcmUgQVBJIExldmVsIDIiCmRpZmYgLS1naXQgYS9T
b3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNJbnRlcm5hbC55YW1s
IGIvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzSW50ZXJuYWwu
eWFtbAppbmRleCBiNTk4YWE2YTA0ODMyYTcwZjk3OGRhMjkwOTFhMjlhZTdhYjg5NWQ3Li5mZjc2
NzYwNjcwMTAzNjllZmRmMzE2NWYwMTAxOGQ3ZWRhNDZiMTMyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNJbnRlcm5hbC55YW1sCisrKyBi
L1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0ludGVybmFsLnlh
bWwKQEAgLTg1OCw2ICs4NTgsMTcgQEAgV2ViUlRDTUROU0lDRUNhbmRpZGF0ZXNFbmFibGVkOgog
ICAgIFdlYktpdDoKICAgICAgIGRlZmF1bHQ6IHRydWUKIAorV2ViU1FMRW5hYmxlZDoKKyAgdHlw
ZTogYm9vbAorICBodW1hblJlYWRhYmxlTmFtZTogIkVuYWJsZSBXZWJTUUwiCisgIGh1bWFuUmVh
ZGFibGVEZXNjcmlwdGlvbjogIkVuYWJsZSBXZWJTUUwiCisgIHdlYmNvcmVCaW5kaW5nOiBjdXN0
b20KKyAgZXhwb3NlZDogWyBXZWJLaXRMZWdhY3kgXQorICBkZWZhdWx0VmFsdWU6CisgICAgV2Vi
S2l0TGVnYWN5OgorICAgICAgIlBMQVRGT1JNKElPU19GQU1JTFkpIjogV2ViS2l0OjpkZWZhdWx0
V2ViU1FMRW5hYmxlZCgpCisgICAgICBkZWZhdWx0OiB0cnVlCisKIFpvb21PbkRvdWJsZVRhcFdo
ZW5Sb290OgogICB0eXBlOiBib29sCiAgIGNvbmRpdGlvbjogUExBVEZPUk0oSU9TX0ZBTUlMWSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5o
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKaW5kZXggYWI1
ZjMxYmFlZWZlYjFhNzQ5NDAzZTNiNmI1NzA4YzA0OGFmMzA5Ni4uZmNmMmZlZTA4N2Y0ZWRhMjFj
MGI5YjJkZDJlM2JmYzI1ODUxMmZhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9S
dW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1l
RW5hYmxlZEZlYXR1cmVzLmgKQEAgLTEyMyw3ICsxMjMsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBj
c3NUeXBlZE9NRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fQ1NTVHlwZWRPTUVuYWJsZWQ7IH0K
ICNlbmRpZgogCi0gICAgdm9pZCBzZXRXZWJTUUxEaXNhYmxlZChib29sIGlzRGlzYWJsZWQpIHsg
bV93ZWJTUUxFbmFibGVkID0gIWlzRGlzYWJsZWQ7IH0KKyAgICB2b2lkIHNldFdlYlNRTEVuYWJs
ZWQoYm9vbCBpc0VuYWJsZWQpIHsgbV93ZWJTUUxFbmFibGVkID0gaXNFbmFibGVkOyB9CiAgICAg
Ym9vbCB3ZWJTUUxFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV93ZWJTUUxFbmFibGVkOyB9CiAK
ICAgICB2b2lkIHNldERpYWxvZ0VsZW1lbnRFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1fZGlh
bG9nRWxlbWVudEVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3Rv
cmUuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291
cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAKaW5kZXggODRkNTYxNDMxMGE3ZjY2ZThiOTZlZjhl
NDc1ZTJhOTdiNDBlMTIwOS4uNWVmMmI2ZWMwOTZiNGZlMGEwZmEzNTA3YjNjMjcxMTQwNzNkZmFk
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dl
YlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAK
QEAgLTgwLDcgKzgwLDYgQEAgY29uc3QgT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4mIFdlYlJl
c291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6bW9uaXRvcmVkRGF0YVQKICNpZiBFTkFCTEUoU0VS
VklDRV9XT1JLRVIpCiAgICAgICAgIFdlYnNpdGVEYXRhVHlwZTo6U2VydmljZVdvcmtlclJlZ2lz
dHJhdGlvbnMsCiAjZW5kaWYKLSAgICAgICAgV2Vic2l0ZURhdGFUeXBlOjpXZWJTUUxEYXRhYmFz
ZXMsCiAgICAgfSkpOwogCiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzLmgg
Yi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycy5oCmlu
ZGV4IDI1YjVhMTE3NjBlYTIzNjdhOGVmMTlkMGZlYThmMDMwY2U0ZmQ5ZjQuLjZmMTI1Zjk4MmQw
Y2NlNmUzNzFkNmQ4ZGFiOGRjZTM2ODNjOWY1MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1dlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1dlYktp
dC9TaGFyZWQvV2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnMuaApAQCAtNDAsOCArNDAsNiBA
QCBzdHJ1Y3QgV2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnMgewogICAgIFN0cmluZyBhcHBs
aWNhdGlvbkNhY2hlRGlyZWN0b3J5OwogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBhcHBs
aWNhdGlvbkNhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIFN0cmluZyBhcHBsaWNh
dGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1lOwotICAgIFN0cmluZyB3ZWJTUUxEYXRh
YmFzZURpcmVjdG9yeTsKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgd2ViU1FMRGF0YWJh
c2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAgICAgU3RyaW5nIG1lZGlhQ2FjaGVEaXJlY3Rv
cnk7CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIG1lZGlhQ2FjaGVEaXJlY3RvcnlFeHRl
bnNpb25IYW5kbGU7CiAgICAgU3RyaW5nIG1lZGlhS2V5U3RvcmFnZURpcmVjdG9yeTsKQEAgLTY3
LDggKzY1LDYgQEAgdm9pZCBXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVyczo6ZW5jb2RlKEVu
Y29kZXImIGVuY29kZXIpIGNvbnN0CiAgICAgZW5jb2RlciA8PCBhcHBsaWNhdGlvbkNhY2hlRGly
ZWN0b3J5OwogICAgIGVuY29kZXIgPDwgYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeUV4dGVuc2lv
bkhhbmRsZTsKICAgICBlbmNvZGVyIDw8IGFwcGxpY2F0aW9uQ2FjaGVGbGF0RmlsZVN1YmRpcmVj
dG9yeU5hbWU7Ci0gICAgZW5jb2RlciA8PCB3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeTsKLSAgICBl
bmNvZGVyIDw8IHdlYlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIGVu
Y29kZXIgPDwgbWVkaWFDYWNoZURpcmVjdG9yeTsKICAgICBlbmNvZGVyIDw8IG1lZGlhQ2FjaGVE
aXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAgICAgZW5jb2RlciA8PCBtZWRpYUtleVN0b3JhZ2VE
aXJlY3Rvcnk7CkBAIC0xMDQsMTUgKzEwMCw2IEBAIE9wdGlvbmFsPFdlYlByb2Nlc3NEYXRhU3Rv
cmVQYXJhbWV0ZXJzPiBXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVyczo6ZGVjb2RlKERlCiAg
ICAgaWYgKCFkZWNvZGVyLmRlY29kZShhcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3Rv
cnlOYW1lKSkKICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKIAotICAgIFN0cmluZyB3ZWJT
UUxEYXRhYmFzZURpcmVjdG9yeTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHdlYlNRTERhdGFi
YXNlRGlyZWN0b3J5KSkKLSAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKLQotICAgIE9wdGlv
bmFsPFNhbmRib3hFeHRlbnNpb246OkhhbmRsZT4gd2ViU1FMRGF0YWJhc2VEaXJlY3RvcnlFeHRl
bnNpb25IYW5kbGU7Ci0gICAgZGVjb2RlciA+PiB3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeUV4dGVu
c2lvbkhhbmRsZTsKLSAgICBpZiAoIXdlYlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFu
ZGxlKQotICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwotCiAgICAgU3RyaW5nIG1lZGlhQ2Fj
aGVEaXJlY3Rvcnk7CiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShtZWRpYUNhY2hlRGlyZWN0b3J5
KSkKICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKQEAgLTE2Niw4ICsxNTMsNiBAQCBPcHRp
b25hbDxXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycz4gV2ViUHJvY2Vzc0RhdGFTdG9yZVBh
cmFtZXRlcnM6OmRlY29kZShEZQogICAgICAgICBXVEZNb3ZlKGFwcGxpY2F0aW9uQ2FjaGVEaXJl
Y3RvcnkpLAogICAgICAgICBXVEZNb3ZlKCphcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5RXh0ZW5z
aW9uSGFuZGxlKSwKICAgICAgICAgV1RGTW92ZShhcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJk
aXJlY3RvcnlOYW1lKSwKLSAgICAgICAgV1RGTW92ZSh3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeSks
Ci0gICAgICAgIFdURk1vdmUoKndlYlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxl
KSwKICAgICAgICAgV1RGTW92ZShtZWRpYUNhY2hlRGlyZWN0b3J5KSwKICAgICAgICAgV1RGTW92
ZSgqbWVkaWFDYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSksCiAgICAgICAgIFdURk1vdmUo
bWVkaWFLZXlTdG9yYWdlRGlyZWN0b3J5KSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKaW5kZXggMDUxNmRiNDcxNWVmNjdmNzBjZmM4MTU4YTky
NDAyZTM5YzA2OWYyZC4uZTBkMzZmNTY5YTAwMDdkOTZhNTkwNzg0NjBkNjk3MzJhNjZhOWZhOSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAK
QEAgLTE5OTYsMTYgKzE5OTYsNiBAQCBib29sIFdLUHJlZmVyZW5jZXNHZXRQdW5jaE91dFdoaXRl
QmFja2dyb3VuZHNJbkRhcmtNb2RlKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZQogICAgIHJldHVy
biB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5wdW5jaE91dFdoaXRlQmFja2dyb3VuZHNJbkRhcmtN
b2RlKCk7CiB9CiAKLXZvaWQgV0tQcmVmZXJlbmNlc1NldFdlYlNRTERpc2FibGVkKFdLUHJlZmVy
ZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZykKLXsKLSAgICB0b0ltcGwocHJlZmVy
ZW5jZXNSZWYpLT5zZXRXZWJTUUxEaXNhYmxlZChmbGFnKTsKLX0KLQotYm9vbCBXS1ByZWZlcmVu
Y2VzR2V0V2ViU1FMRGlzYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikKLXsK
LSAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+d2ViU1FMRGlzYWJsZWQoKTsKLX0K
LQogdm9pZCBXS1ByZWZlcmVuY2VzU2V0Q2FwdHVyZUF1ZGlvSW5VSVByb2Nlc3NFbmFibGVkKFdL
UHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZykKIHsKICAgICB0b0ltcGwo
cHJlZmVyZW5jZXNSZWYpLT5zZXRDYXB0dXJlQXVkaW9JblVJUHJvY2Vzc0VuYWJsZWQoZmxhZyk7
CkBAIC0yMjI3LDMgKzIyMTcsMTIgQEAgYm9vbCBXS1ByZWZlcmVuY2VzR2V0U3VicGl4ZWxDU1NP
TUVsZW1lbnRNZXRyaWNzRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKQogewogICAgIHJldHVybiBm
YWxzZTsKIH0KKwordm9pZCBXS1ByZWZlcmVuY2VzU2V0V2ViU1FMRGlzYWJsZWQoV0tQcmVmZXJl
bmNlc1JlZiwgYm9vbCkKK3sKK30KKworYm9vbCBXS1ByZWZlcmVuY2VzR2V0V2ViU1FMRGlzYWJs
ZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikKK3sKKyAgICByZXR1cm4gdHJ1ZTsK
K30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5j
ZXNSZWYuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNSZWYu
aAppbmRleCA4ZWQ2MjExN2JlNWQ1M2JlMjZlZGNkZDc2NzFlMWZhNTFmM2EzMWNjLi5iZDU4YzUw
MmYwNTc3ZjgxNmQ2ZjRkMjE5MzFjMTEyMmE2ODgzMzIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUmVmLmgKKysrIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1JlZi5oCkBAIC0zMzEsNyArMzMxLDcgQEAg
V0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldENyb3NzT3JpZ2luUmVzb3VyY2VQb2xpY3lF
bmFibGVkKFdLUHJlZmVyZW5jZXNSZWYKIFdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRQ
cm9jZXNzU3dhcE9uTmF2aWdhdGlvbkVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNl
c1JlZik7CiBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0UHJvY2Vzc1N3YXBPbk5hdmln
YXRpb25FbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxl
ZCk7CiAKLS8vIERlZmF1bHRzIHRvIGZhbHNlLgorLy8gT2Jzb2xldGUuIEFsd2F5cyByZXR1cm5z
IHRydWUuCiBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0V2ViU1FMRGlzYWJsZWQoV0tQ
cmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZik7CiBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVu
Y2VzU2V0V2ViU1FMRGlzYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9v
bCBlbmFibGVkKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJv
Y2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3Bw
CmluZGV4IDM0MjAwY2M1NjZjZDk2ZDAzNDFlMjhkYjQ2Njg0ZWUwOGQwNTdkNDMuLjkwY2ZmYTVj
Y2I2MDBhMTc4OTIxNWQ5NDEyYmJkM2FhYTZhNmVlYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKQEAgLTczNywxMSArNzM3LDYgQEAgV2ViUHJvY2Vzc0Rh
dGFTdG9yZVBhcmFtZXRlcnMgV2ViUHJvY2Vzc1Bvb2w6OndlYlByb2Nlc3NEYXRhU3RvcmVQYXJh
bWV0ZXJzKFdlYlAKIAogICAgIFN0cmluZyBhcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJl
Y3RvcnlOYW1lID0gd2Vic2l0ZURhdGFTdG9yZS5hcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJk
aXJlY3RvcnlOYW1lKCk7CiAKLSAgICBTdHJpbmcgd2ViU1FMRGF0YWJhc2VEaXJlY3RvcnkgPSB3
ZWJzaXRlRGF0YVN0b3JlLnJlc29sdmVkRGF0YWJhc2VEaXJlY3RvcnkoKTsKLSAgICBTYW5kYm94
RXh0ZW5zaW9uOjpIYW5kbGUgd2ViU1FMRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7
Ci0gICAgaWYgKCF3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeS5pc0VtcHR5KCkpCi0gICAgICAgIFNh
bmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZVdpdGhvdXRSZXNvbHZpbmdQYXRoKHdlYlNRTERh
dGFiYXNlRGlyZWN0b3J5LCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpSZWFkV3JpdGUsIHdlYlNR
TERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKLQogICAgIFN0cmluZyBtZWRpYUNh
Y2hlRGlyZWN0b3J5ID0gd2Vic2l0ZURhdGFTdG9yZS5yZXNvbHZlZE1lZGlhQ2FjaGVEaXJlY3Rv
cnkoKTsKICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgbWVkaWFDYWNoZURpcmVjdG9yeUV4
dGVuc2lvbkhhbmRsZTsKICAgICBpZiAoIW1lZGlhQ2FjaGVEaXJlY3RvcnkuaXNFbXB0eSgpKQpA
QCAtNzY3LDggKzc2Miw2IEBAIFdlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzIFdlYlByb2Nl
c3NQb29sOjp3ZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycyhXZWJQCiAgICAgICAgIFdURk1v
dmUoYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSksCiAgICAgICAgIFdURk1vdmUoYXBwbGljYXRp
b25DYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSksCiAgICAgICAgIFdURk1vdmUoYXBwbGlj
YXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSksCi0gICAgICAgIFdURk1vdmUod2Vi
U1FMRGF0YWJhc2VEaXJlY3RvcnkpLAotICAgICAgICBXVEZNb3ZlKHdlYlNRTERhdGFiYXNlRGly
ZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKSwKICAgICAgICAgV1RGTW92ZShtZWRpYUNhY2hlRGlyZWN0
b3J5KSwKICAgICAgICAgV1RGTW92ZShtZWRpYUNhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxl
KSwKICAgICAgICAgV1RGTW92ZShtZWRpYUtleVN0b3JhZ2VEaXJlY3RvcnkpLApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCmluZGV4IDIxNWFhYmIwZDU5MmE1NjQ1ZTUyYTBh
NGQ3YmRlMWEyMzI1MTcxYWIuLjczNTI3NjA2N2ZkMWUwMzA0NDIxMmU3ZGM2ODQ0NmUxYjM2Y2Nh
MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKQEAgLTk4LDcgKzk4
LDYgQEAKICNpbmNsdWRlIDxXZWJDb3JlL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0UmVzdWx0Q2FjaGUu
aD4KICNpbmNsdWRlIDxXZWJDb3JlL0ROUy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRE9NV2luZG93
Lmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9EYXRhYmFzZU1hbmFnZXIuaD4KICNpbmNsdWRlIDxXZWJD
b3JlL0RhdGFiYXNlVHJhY2tlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRGVwcmVjYXRlZEdsb2Jh
bFNldHRpbmdzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9EaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5o
PgpAQCAtNTU2LDkgKzU1NSw2IEBAIHZvaWQgV2ViUHJvY2Vzczo6c2V0V2Vic2l0ZURhdGFTdG9y
ZVBhcmFtZXRlcnMoV2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnMmJiBwCiB7CiAgICAgQVNT
RVJUKCFtX3Nlc3Npb25JRCk7CiAgICAgbV9zZXNzaW9uSUQgPSBwYXJhbWV0ZXJzLnNlc3Npb25J
RDsKLSAgICAKLSAgICBhdXRvJiBkYXRhYmFzZU1hbmFnZXIgPSBEYXRhYmFzZU1hbmFnZXI6OnNp
bmdsZXRvbigpOwotICAgIGRhdGFiYXNlTWFuYWdlci5pbml0aWFsaXplKHBhcmFtZXRlcnMud2Vi
U1FMRGF0YWJhc2VEaXJlY3RvcnkpOwogCiAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIGNv
bnN0cnVjdGVkIHBlciBkYXRhIHN0b3JlLCBub3QgcGVyIHByb2Nlc3MuCiAgICAgbV9hcHBsaWNh
dGlvbkNhY2hlU3RvcmFnZSA9IEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjcmVhdGUocGFyYW1l
dGVycy5hcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5LCBwYXJhbWV0ZXJzLmFwcGxpY2F0aW9uQ2Fj
aGVGbGF0RmlsZVN1YmRpcmVjdG9yeU5hbWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0KaW5kZXggMmI4YjA0MjMyZTNhNjhmMDdmZjI2
MjhkMDBhOTRiZmY1MDg5YzVlOS4uZTU1NzhhOTM5YWY4YjVkMTI5MTIwYjM3ODA5ZWEzMmIyYWNh
Zjk0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nl
c3NDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vz
c0NvY29hLm1tCkBAIC00NDYsNyArNDQ2LDYgQEAgdm9pZCBXZWJQcm9jZXNzOjpwbGF0Zm9ybUlu
aXRpYWxpemVXZWJQcm9jZXNzKFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmEKIHZv
aWQgV2ViUHJvY2Vzczo6cGxhdGZvcm1TZXRXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyhXZWJQ
cm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCiB7CiAjaWYgRU5BQkxFKFNB
TkRCT1hfRVhURU5TSU9OUykKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50
bHkocGFyYW1ldGVycy53ZWJTUUxEYXRhYmFzZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAg
ICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuYXBwbGlj
YXRpb25DYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAgICAgU2FuZGJveEV4dGVuc2lv
bjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMubWVkaWFDYWNoZURpcmVjdG9yeUV4dGVu
c2lvbkhhbmRsZSk7CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBh
cmFtZXRlcnMubWVkaWFLZXlTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbSBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQppbmRleCA5OTJmM2UwOTc0ZDY0
NWJmZTI1ZDczMTk4MzJkODQxZjc3MGVlNmRiLi40ZWQ4MmQwYTU2NTMzMjAzOGFlNzM5NmY3OTZl
Y2Q2MTYxMWJmM2Y0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3
L1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3
Lm1tCkBAIC0yOTMzLDcgKzI5MzMsNyBAQCBzdGF0aWMgYm9vbCBuZWVkc1NlbGZSZXRhaW5XaGls
ZUxvYWRpbmdRdWlyaygpCiAgICAgc2V0dGluZ3Muc2V0VmlkZW9QbGF5YmFja1JlcXVpcmVzVXNl
ckdlc3R1cmUobWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUgfHwgW3ByZWZlcmVuY2Vz
IHZpZGVvUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlXSk7CiAgICAgc2V0dGluZ3Muc2V0QXVk
aW9QbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUobWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdl
c3R1cmUgfHwgW3ByZWZlcmVuY2VzIGF1ZGlvUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlXSk7
CiAKLSAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFdlYlNR
TERpc2FibGVkKCFbcHJlZmVyZW5jZXMgd2ViU1FMRW5hYmxlZF0pOworICAgIFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0V2ViU1FMRW5hYmxlZChbcHJlZmVyZW5j
ZXMgd2ViU1FMRW5hYmxlZF0pOwogICAgIERhdGFiYXNlTWFuYWdlcjo6c2luZ2xldG9uKCkuc2V0
SXNBdmFpbGFibGUoW3ByZWZlcmVuY2VzIGRhdGFiYXNlc0VuYWJsZWRdKTsKICAgICBzZXR0aW5n
cy5zZXRMb2NhbFN0b3JhZ2VEYXRhYmFzZVBhdGgoW3ByZWZlcmVuY2VzIF9sb2NhbFN0b3JhZ2VE
YXRhYmFzZVBhdGhdKTsKICAgICBfcHJpdmF0ZS0+cGFnZS0+c2V0U2Vzc2lvbklEKFtwcmVmZXJl
bmNlcyBwcml2YXRlQnJvd3NpbmdFbmFibGVkXSA/IFBBTDo6U2Vzc2lvbklEOjpsZWdhY3lQcml2
YXRlU2Vzc2lvbklEKCkgOiBQQUw6OlNlc3Npb25JRDo6ZGVmYXVsdFNlc3Npb25JRCgpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwIGIvU291cmNlL1dl
YktpdExlZ2FjeS93aW4vV2ViVmlldy5jcHAKaW5kZXggMmFiZDZjNTFjMmE2ZjVhMjc2MTI0ZjI5
ZGM3ZmNkNWMzMGQwOGVkZC4uOTc0NDgzNmJiNzA1MTVmNDM0MWYyZGJlNTQ3NjljOGZkMTUyMTE2
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViVmlldy5jcHAKKysrIGIv
U291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViVmlldy5jcHAKQEAgLTUzMDUsNyArNTMwNSw3IEBA
IEhSRVNVTFQgV2ViVmlldzo6bm90aWZ5UHJlZmVyZW5jZXNDaGFuZ2VkKElXZWJOb3RpZmljYXRp
b24qIG5vdGlmaWNhdGlvbikKICAgICBociA9IHByZWZzUHJpdmF0ZS0+d2ViU1FMRW5hYmxlZCgm
ZW5hYmxlZCk7CiAgICAgaWYgKEZBSUxFRChocikpCiAgICAgICAgIHJldHVybiBocjsKLSAgICBS
dW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFdlYlNRTERpc2FibGVk
KCFlbmFibGVkKTsKKyAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygp
LnNldFdlYlNRTEVuYWJsZWQoZW5hYmxlZCk7CiAKICAgICBociA9IHByZWZzUHJpdmF0ZS0+dmlz
dWFsVmlld3BvcnRBUElFbmFibGVkKCZlbmFibGVkKTsKICAgICBpZiAoRkFJTEVEKGhyKSkKZGlm
ZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAzY2E0M2Zm
NmY0NzVhZjgxYzkwZTlmOTQ0ZTQ0YWY1MTYzM2IyMjU1Li5mNzRhYWZmZTRlYTMzMjdjOGNhNjQ0
ODRlOGFhMGU4OWNkMDgyYWNiIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9v
bHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjEtMDUtMTQgIFJ5b3N1a2UgTml3YSAg
PHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRGVsZXRlIFdlYlNRTCBjb2RlIGZyb20gV2Vi
S2l0MgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1
NzM5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2lodWkgTGl1LgorCisgICAgICAgICogTWluaUJy
b3dzZXIvcGxheXN0YXRpb24vV2ViQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb250ZXh0OjpX
ZWJDb250ZXh0KToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dl
YnNpdGVEYXRhU3RvcmVDdXN0b21QYXRocy5tbToKKyAgICAgICAgKHJ1bldlYnNpdGVEYXRhU3Rv
cmVDdXN0b21QYXRocyk6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxl
ci5jcHA6CisgICAgICAgIChXVFI6OlRlc3RDb250cm9sbGVyOjpjb25maWd1cmVXZWJzaXRlRGF0
YVN0b3JlVGVtcG9yYXJ5RGlyZWN0b3JpZXMpOgorCiAyMDIxLTA1LTEzICBBYWthc2ggSmFpbiAg
PGFha2FzaF9qYWluQGFwcGxlLmNvbT4KIAogICAgICAgICByZXBvcnQtbm9uLWluY2x1c2l2ZS1s
YW5ndWFnZSBzaG91bGQgc2tpcCBzeW1saW5rcwpkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dz
ZXIvcGxheXN0YXRpb24vV2ViQ29udGV4dC5jcHAgYi9Ub29scy9NaW5pQnJvd3Nlci9wbGF5c3Rh
dGlvbi9XZWJDb250ZXh0LmNwcAppbmRleCA4OTdiOThjNDI5NDEwYjE1MDVjMjVlNmVjZTg1ZTY5
OTFlMGQ1YmU4Li4yZGJjYzJkMzJiOTM0MmMyYWRiMTk0NjNiYTQwNjQyMDNiMGVlZWE5IDEwMDY0
NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nlci9wbGF5c3RhdGlvbi9XZWJDb250ZXh0LmNwcAorKysg
Yi9Ub29scy9NaW5pQnJvd3Nlci9wbGF5c3RhdGlvbi9XZWJDb250ZXh0LmNwcApAQCAtNTcsNyAr
NTcsNiBAQCBXZWJDb250ZXh0OjpXZWJDb250ZXh0KCkKICAgICBXS1JldGFpblB0cjxXS1N0cmlu
Z1JlZj4gbmV0d29ya0NhY2hlRGlyZWN0b3J5ID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhV
VEY4Q1N0cmluZygiL2RhdGEvbWluaWJyb3dzZXIvTmV0d29ya0NhY2hlIikpOwogICAgIFdLUmV0
YWluUHRyPFdLU3RyaW5nUmVmPiBpbmRleGVkREJEaXJlY3RvcnkgPSBhZG9wdFdLKFdLU3RyaW5n
Q3JlYXRlV2l0aFVURjhDU3RyaW5nKCIvZGF0YS9taW5pYnJvd3Nlci9JbmRleGVkREIiKSk7CiAg
ICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IGxvY2FsU3RvcmFnZURpcmVjdG9yeSA9IGFkb3B0
V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIi9kYXRhL21pbmlicm93c2VyL0xvY2Fs
U3RvcmFnZSIpKTsKLSAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gd2ViU1FMRGlyZWN0b3J5
ID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiL2RhdGEvbWluaWJyb3dz
ZXIvV2ViU1FMIikpOwogICAgIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVmPiBjYWNoZVN0b3JhZ2VE
aXJlY3RvcnkgPSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKCIvZGF0YS9t
aW5pYnJvd3Nlci9DYWNoZVN0cm9hZ2UiKSk7CiAgICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+
IG1lZGlhS2V5U3RvcmFnZURpcmVjdG9yeSA9IGFkb3B0V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRG
OENTdHJpbmcoIi9kYXRhL21pbmlicm93c2VyL01lZGlhS2V5IikpOwogICAgIFdLUmV0YWluUHRy
PFdLU3RyaW5nUmVmPiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5ID0gYWRvcHRXSyhX
S1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiL2RhdGEvbWluaWJyb3dzZXIvUmVzb3VyY2VM
b2FkU3RhdGlzdGljcyIpKTsKQEAgLTcyLDcgKzcxLDYgQEAgV2ViQ29udGV4dDo6V2ViQ29udGV4
dCgpCiAgICAgV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvblNldE5ldHdvcmtDYWNoZURp
cmVjdG9yeShkYXRhU3RvcmVDb25maWd1cmF0aW9uLmdldCgpLCBuZXR3b3JrQ2FjaGVEaXJlY3Rv
cnkuZ2V0KCkpOwogICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXRJbmRleGVk
REJEYXRhYmFzZURpcmVjdG9yeShkYXRhU3RvcmVDb25maWd1cmF0aW9uLmdldCgpLCBpbmRleGVk
REJEaXJlY3RvcnkuZ2V0KCkpOwogICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25T
ZXRMb2NhbFN0b3JhZ2VEaXJlY3RvcnkoZGF0YVN0b3JlQ29uZmlndXJhdGlvbi5nZXQoKSwgbG9j
YWxTdG9yYWdlRGlyZWN0b3J5LmdldCgpKTsKLSAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1
cmF0aW9uU2V0V2ViU1FMRGF0YWJhc2VEaXJlY3RvcnkoZGF0YVN0b3JlQ29uZmlndXJhdGlvbi5n
ZXQoKSwgd2ViU1FMRGlyZWN0b3J5LmdldCgpKTsKICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25m
aWd1cmF0aW9uU2V0Q2FjaGVTdG9yYWdlRGlyZWN0b3J5KGRhdGFTdG9yZUNvbmZpZ3VyYXRpb24u
Z2V0KCksIGNhY2hlU3RvcmFnZURpcmVjdG9yeS5nZXQoKSk7CiAgICAgV0tXZWJzaXRlRGF0YVN0
b3JlQ29uZmlndXJhdGlvblNldE1lZGlhS2V5c1N0b3JhZ2VEaXJlY3RvcnkoZGF0YVN0b3JlQ29u
ZmlndXJhdGlvbi5nZXQoKSwgbWVkaWFLZXlTdG9yYWdlRGlyZWN0b3J5LmdldCgpKTsKICAgICBX
S1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uU2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0Rp
cmVjdG9yeShkYXRhU3RvcmVDb25maWd1cmF0aW9uLmdldCgpLCByZXNvdXJjZUxvYWRTdGF0aXN0
aWNzRGlyZWN0b3J5LmdldCgpKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Q29jb2EvV2Vic2l0ZURhdGFTdG9yZUN1c3RvbVBhdGhzLm1tIGIvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJzaXRlRGF0YVN0b3JlQ3VzdG9tUGF0aHMu
bW0KaW5kZXggNjUyYjdmZmYxZWZlZGVjYTAwYzFmY2JiZWFjNGYzN2IyMGMxZGZlZi4uYzdlMjE5
ZjJhZjEyMDY2MWUzZGI3M2EwY2RhYjFkMDRmOWY3ZjM5ZiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJzaXRlRGF0YVN0b3JlQ3VzdG9tUGF0aHMu
bW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJzaXRlRGF0
YVN0b3JlQ3VzdG9tUGF0aHMubW0KQEAgLTE0OCw3ICsxNDgsNyBAQCBzdGF0aWMgdm9pZCBydW5X
ZWJzaXRlRGF0YVN0b3JlQ3VzdG9tUGF0aHMoU2hvdWxkRW5hYmxlUHJvY2Vzc1ByZXdhcm1pbmcg
c2hvdWxkRQogICAgIC8vIFdlIGV4cGVjdCA0IG1lc3NhZ2VzLCAxIGVhY2ggZm9yIFdlYlNRTCwg
SW5kZXhlZERCLCBjb29raWVzLCBhbmQgbG9jYWxTdG9yYWdlLgogICAgIEVYUEVDVF9TVFJFUShb
Z2V0TmV4dE1lc3NhZ2UoKS5ib2R5IFVURjhTdHJpbmddLCAibG9jYWxzdG9yYWdlIHdyaXR0ZW4i
KTsKICAgICBFWFBFQ1RfU1RSRVEoW2dldE5leHRNZXNzYWdlKCkuYm9keSBVVEY4U3RyaW5nXSwg
ImNvb2tpZSB3cml0dGVuIik7Ci0gICAgRVhQRUNUX1NUUkVRKFtnZXROZXh0TWVzc2FnZSgpLmJv
ZHkgVVRGOFN0cmluZ10sICJFeGNlcHRpb246IFF1b3RhRXhjZWVkZWRFcnJvcjogVGhlIHF1b3Rh
IGhhcyBiZWVuIGV4Y2VlZGVkLiIpOworICAgIEVYUEVDVF9TVFJFUShbZ2V0TmV4dE1lc3NhZ2Uo
KS5ib2R5IFVURjhTdHJpbmddLCAiRXhjZXB0aW9uOiBVbmtub3duRXJyb3I6IFdlYiBTUUwgaXMg
ZGVwcmVjYXRlZCIpOwogICAgIEVYUEVDVF9TVFJFUShbZ2V0TmV4dE1lc3NhZ2UoKS5ib2R5IFVU
RjhTdHJpbmddLCAiU3VjY2VzcyBvcGVuaW5nIGluZGV4ZWQgZGF0YWJhc2UiKTsKIAogICAgIF9f
YmxvY2sgYm9vbCBmbHVzaGVkID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENv
bnRyb2xsZXIuY3BwCmluZGV4IGUwNjY3MDBmM2NlNmFhZGE5YWIyMWEzNjRiMGEyYmJjZTQyOGFl
NDguLmMxZWIxMDhiNmZlZTVjNTQxZWYxODE4YzBkZDk5NDJiNWI2YzA2YjcgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCisrKyBiL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCkBAIC01ODgsNyArNTg4LDYgQEAgdm9p
ZCBUZXN0Q29udHJvbGxlcjo6Y29uZmlndXJlV2Vic2l0ZURhdGFTdG9yZVRlbXBvcmFyeURpcmVj
dG9yaWVzKFdLV2Vic2l0ZURhdGEKICAgICAgICAgV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJh
dGlvblNldENhY2hlU3RvcmFnZURpcmVjdG9yeShjb25maWd1cmF0aW9uLCB0b1dLKG1ha2VTdHJp
bmcodGVtcG9yYXJ5Rm9sZGVyLCBwYXRoU2VwYXJhdG9yLCAiQ2FjaGVTdG9yYWdlIiwgcGF0aFNl
cGFyYXRvciwgcmFuZG9tTnVtYmVyKSkuZ2V0KCkpOwogICAgICAgICBXS1dlYnNpdGVEYXRhU3Rv
cmVDb25maWd1cmF0aW9uU2V0SW5kZXhlZERCRGF0YWJhc2VEaXJlY3RvcnkoY29uZmlndXJhdGlv
biwgdG9XSyhtYWtlU3RyaW5nKHRlbXBvcmFyeUZvbGRlciwgcGF0aFNlcGFyYXRvciwgIkRhdGFi
YXNlcyIsIHBhdGhTZXBhcmF0b3IsICJJbmRleGVkREIiLCBwYXRoU2VwYXJhdG9yLCByYW5kb21O
dW1iZXIpKS5nZXQoKSk7CiAgICAgICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25T
ZXRMb2NhbFN0b3JhZ2VEaXJlY3RvcnkoY29uZmlndXJhdGlvbiwgdG9XSyhtYWtlU3RyaW5nKHRl
bXBvcmFyeUZvbGRlciwgcGF0aFNlcGFyYXRvciwgIkxvY2FsU3RvcmFnZSIsIHBhdGhTZXBhcmF0
b3IsIHJhbmRvbU51bWJlcikpLmdldCgpKTsKLSAgICAgICAgV0tXZWJzaXRlRGF0YVN0b3JlQ29u
ZmlndXJhdGlvblNldFdlYlNRTERhdGFiYXNlRGlyZWN0b3J5KGNvbmZpZ3VyYXRpb24sIHRvV0so
bWFrZVN0cmluZyh0ZW1wb3JhcnlGb2xkZXIsIHBhdGhTZXBhcmF0b3IsICJEYXRhYmFzZXMiLCBw
YXRoU2VwYXJhdG9yLCAiV2ViU1FMIiwgcGF0aFNlcGFyYXRvciwgcmFuZG9tTnVtYmVyKSkuZ2V0
KCkpOwogICAgICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uU2V0TWVkaWFLZXlz
U3RvcmFnZURpcmVjdG9yeShjb25maWd1cmF0aW9uLCB0b1dLKG1ha2VTdHJpbmcodGVtcG9yYXJ5
Rm9sZGVyLCBwYXRoU2VwYXJhdG9yLCAiTWVkaWFLZXlzIiwgcGF0aFNlcGFyYXRvciwgcmFuZG9t
TnVtYmVyKSkuZ2V0KCkpOwogICAgICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9u
U2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeShjb25maWd1cmF0aW9uLCB0b1dLKG1h
a2VTdHJpbmcodGVtcG9yYXJ5Rm9sZGVyLCBwYXRoU2VwYXJhdG9yLCAiUmVzb3VyY2VMb2FkU3Rh
dGlzdGljcyIsIHBhdGhTZXBhcmF0b3IsIHJhbmRvbU51bWJlcikpLmdldCgpKTsKICAgICAgICAg
V0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvblNldFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRp
b25EaXJlY3RvcnkoY29uZmlndXJhdGlvbiwgdG9XSyhtYWtlU3RyaW5nKHRlbXBvcmFyeUZvbGRl
ciwgcGF0aFNlcGFyYXRvciwgIlNlcnZpY2VXb3JrZXJzIiwgcGF0aFNlcGFyYXRvciwgcmFuZG9t
TnVtYmVyKSkuZ2V0KCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428720</attachid>
            <date>2021-05-14 23:54:57 -0700</date>
            <delta_ts>2021-05-15 23:36:42 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-225739-20210514235456.patch</filename>
            <type>text/plain</type>
            <size>24427</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NDc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDAwMWMyZDQ2MjA0ZGUxYjAyZDc3MTFj
NzE4ODk4NWRjNTU1NDQ0NmIuLjQxZWNmN2RhODU0YWQ5ZGM0ZmNkOGQ3MjZjZTBkYTU1YWJlMzli
NTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjEtMDUtMTQgIFJ5b3N1a2UgTml3YSAgPHJuaXdh
QHdlYmtpdC5vcmc+CisKKyAgICAgICAgRGVsZXRlIFdlYlNRTCBjb2RlIGZyb20gV2ViS2l0Mgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NzM5CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgU2lodWkgTGl1LgorCisgICAgICAgIERlbGV0ZWQgdGhlIGV4
cGVyaW1lbnRhbCBmZWF0dXJlIHRvIGRpc2FibGUgV2ViU1FMIHNpbmNlIHdlJ3ZlIGJlZW4gc2hp
cHBpbmcgdGhpcywKKyAgICAgICAgYW5kIG1hZGUgdGhlIGZsYWcgdG8gc2VsZWN0aXZlbHkgZW5h
YmxlIFdlYlNRTCBpbiBXZWJLaXQxIGFuIGludGVybmFsIGRlYnVnIHNldHRpbmcKKyAgICAgICAg
c2luY2Ugbm9ib2R5IHNob3VsZCBiZSBlbmFibGluZyB0aGlzIG5vdy4KKworICAgICAgICAqIFNj
cmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNFeHBlcmltZW50YWwueWFtbDoKKyAgICAg
ICAgKiBTY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzSW50ZXJuYWwueWFtbDoKKwog
MjAyMS0wNS0xMyAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CiAKICAgICAgICAgW1dl
YlhSXSBBbGxvdyBXZWJYUiB0byBiZSB0ZXN0ZWQgb24gUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
aW5kZXggZjYwZTM0NGVhYmNjNWZjM2UwMjA3MmQ1NTgzNWE0YTFjNjE2NzUwYS4uOGQyZGM0NWU5
OTliYzYxZGIwNTM3NDU0OGUyODI1MmFkOWYyZDc0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEz
IEBACisyMDIxLTA1LTE0ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAg
ICAgIERlbGV0ZSBXZWJTUUwgY29kZSBmcm9tIFdlYktpdDIKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTczOQorCisgICAgICAgIFJldmlld2VkIGJ5
IFNpaHVpIExpdS4KKworICAgICAgICAqIHBhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOgor
ICAgICAgICAoV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0V2ViU1FMRW5hYmxl
ZCk6IFJlcGxhY2VkIHNldFdlYlNRTERpc2FibGVkLgorCiAyMDIxLTA1LTEzICBEZXZpbiBSb3Vz
c28gIDxkcm91c3NvQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBSRUdSRVNTSU9OKHIyNzEy
MTYpIHBvaW50ZXJldmVudHMvaW9zL3BvaW50ZXItZXZlbnRzLW5vLW1vdXNlZG93bi13aGVuLXBy
ZXZlbnQtZGVmYXVsdC1jYWxsZWQtb24tcG9pbnRlcmRvd24uaHRtbCBpcyBjb25zaXN0ZW50bHkg
ZmFpbGluZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZwppbmRleCBlMTQ3OTkyNTQyMzRjZWVmMWZiOGRlMzQ1YTljOWVmMDk0ZDcy
YjE2Li40Y2U2ZGE4ZDYxYWY2NDBmMGRhOTdmOGQyMDZjZGQ5NDhiY2VmNTI1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpA
QCAtMSwzICsxLDI5IEBACisyMDIxLTA1LTE0ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQu
b3JnPgorCisgICAgICAgIERlbGV0ZSBXZWJTUUwgY29kZSBmcm9tIFdlYktpdDIKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTczOQorCisgICAgICAg
IFJldmlld2VkIGJ5IFNpaHVpIExpdS4KKworICAgICAgICBEZWxldGVkIFdlYlNRTCBjb2RlLiBX
ZSBrZWVwIHNvbWUgY29kZSBmb3Igd2Vic2l0ZSBkYXRhIHN0b3JlIHNpbmNlIGl0J3MgcG9zc2li
bGUKKyAgICAgICAgZm9yIHVzZXIncyBkZXZpY2UgdG8gc3RpbGwgaGF2ZSBXZWJTUUwgZGF0YSwg
YW5kIHdlIHNob3VsZCBiZSBhYmxlIHRvIGRlbGV0ZSB0aGVtLgorCisgICAgICAgICogTmV0d29y
a1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6Om1vbml0b3Jl
ZERhdGFUeXBlcyk6CisgICAgICAgICogU2hhcmVkL1dlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0
ZXJzLmg6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzOjpl
bmNvZGUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1l
dGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5j
cHA6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0V2ViU1FMRGlzYWJsZWQpOgorICAgICAgICAo
V0tQcmVmZXJlbmNlc0dldFdlYlNRTERpc2FibGVkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L0MvV0tQcmVmZXJlbmNlc1JlZi5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUG9v
bC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjp3ZWJQcm9jZXNzRGF0YVN0
b3JlUGFyYW1ldGVycyk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6c2V0V2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMp
OgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tOgorICAgICAg
ICAoV2ViS2l0OjpXZWJQcm9jZXNzOjpwbGF0Zm9ybVNldFdlYnNpdGVEYXRhU3RvcmVQYXJhbWV0
ZXJzKToKKwogMjAyMS0wNS0xMyAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CiAKICAg
ICAgICAgW1dlYlhSXSBBbGxvdyBXZWJYUiB0byBiZSB0ZXN0ZWQgb24gUExBVEZPUk0oQ09DT0Ep
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKaW5kZXggNzRjMWEzNDU1YTdjOWFlMGZmNmNjOWVl
YTcxNzg5NTBjMzAwOWFiNC4uNzE3NjYxZWJlZTMxNWRkYWJkYTA3NTA4MjJlZjM5NDE2OTBhN2U4
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDIxLTA1
LTE0ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIERlbGV0ZSBX
ZWJTUUwgY29kZSBmcm9tIFdlYktpdDIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyNTczOQorCisgICAgICAgIFJldmlld2VkIGJ5IFNpaHVpIExpdS4K
KworICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBfcHJl
ZmVyZW5jZXNDaGFuZ2VkOl0pOgorCiAyMDIxLTA1LTEzICBNZWdhbiBHYXJkbmVyICA8bWVnYW5f
Z2FyZG5lckBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIHRleHRJbmRpY2F0b3IgYm91bmNlIGZv
ciBBcHBIaWdobGlnaHRzIG9uIHNjcm9sbC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZwppbmRl
eCBiM2YzMzMwMGEzODZiNWY0OTkzMzRiZTFlMWI2MTZkY2UxYTMyNTNmLi4wMTJlYWY3MjA1Mjgx
ZWExMjc5NDIyYWMyZTIwN2JmOWI0OGM0ZTE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTMgQEAKKzIwMjEtMDUtMTQgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgRGVsZXRlIFdlYlNRTCBjb2RlIGZyb20gV2ViS2l0MgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NzM5CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgU2lodWkgTGl1LgorCisgICAgICAgICogV2ViVmlldy5jcHA6CisgICAg
ICAgIChXZWJWaWV3Ojpub3RpZnlQcmVmZXJlbmNlc0NoYW5nZWQpOgorCiAyMDIxLTA1LTEzICBN
ZWdhbiBHYXJkbmVyICA8bWVnYW5fZ2FyZG5lckBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIHRl
eHRJbmRpY2F0b3IgYm91bmNlIGZvciBBcHBIaWdobGlnaHRzIG9uIHNjcm9sbC4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0V4cGVyaW1l
bnRhbC55YW1sIGIvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2Vz
RXhwZXJpbWVudGFsLnlhbWwKaW5kZXggNWZiNDQ3MmQ2YWFmM2E2NjUwOGEyODAyNjU0MDdhNzBi
MTE1OWUwMy4uZjM0NjY1YjdlNmE5NmZmMDJhY2ExZjBlNGUyMzQ3ZTM4NzlhNTNlYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzRXhwZXJp
bWVudGFsLnlhbWwKKysrIGIvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZl
cmVuY2VzRXhwZXJpbWVudGFsLnlhbWwKQEAgLTEzMDUsMjggKzEzMDUsNiBAQCBXZWJSVENWUDlQ
cm9maWxlMkNvZGVjRW5hYmxlZDoKICAgICBXZWJLaXQ6CiAgICAgICBkZWZhdWx0OiBmYWxzZQog
Ci1XZWJTUUxEaXNhYmxlZDoKLSAgdHlwZTogYm9vbAotICBodW1hblJlYWRhYmxlTmFtZTogIkRp
c2FibGUgV2ViU1FMIgotICBodW1hblJlYWRhYmxlRGVzY3JpcHRpb246ICJEaXNhYmxlIFdlYlNR
TCIKLSAgd2ViY29yZUJpbmRpbmc6IFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMKLSAgZXhwb3NlZDog
WyBXZWJLaXQgXQotICBkZWZhdWx0VmFsdWU6Ci0gICAgV2ViS2l0OgotICAgICAgZGVmYXVsdDog
dHJ1ZQotCi0jIEZJWE1FOiBXZWJLaXRMZWdhY3kgaGFzIGFuIGV4aXN0aW5nIHByZWZlcmVuY2Ug
Y2FsbGVkICdXZWJTUUxFbmFibGVkJy4gV2Ugc2hvdWxkIHJlY29uY2lsZSBpdCB3aXRoIFdlYlNR
TERpc2FibGVkLgotV2ViU1FMRW5hYmxlZDoKLSAgdHlwZTogYm9vbAotICBodW1hblJlYWRhYmxl
TmFtZTogIkVuYWJsZSBXZWJTUUwiCi0gIGh1bWFuUmVhZGFibGVEZXNjcmlwdGlvbjogIkVuYWJs
ZSBXZWJTUUwiCi0gIHdlYmNvcmVCaW5kaW5nOiBjdXN0b20KLSAgZXhwb3NlZDogWyBXZWJLaXRM
ZWdhY3kgXQotICBkZWZhdWx0VmFsdWU6Ci0gICAgV2ViS2l0TGVnYWN5OgotICAgICAgIlBMQVRG
T1JNKElPU19GQU1JTFkpIjogV2ViS2l0OjpkZWZhdWx0V2ViU1FMRW5hYmxlZCgpCi0gICAgICBk
ZWZhdWx0OiB0cnVlCi0KIFdlYlNoYXJlRmlsZUFQSUVuYWJsZWQ6CiAgIHR5cGU6IGJvb2wKICAg
aHVtYW5SZWFkYWJsZU5hbWU6ICJXZWIgU2hhcmUgQVBJIExldmVsIDIiCmRpZmYgLS1naXQgYS9T
b3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNJbnRlcm5hbC55YW1s
IGIvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzSW50ZXJuYWwu
eWFtbAppbmRleCBiNTk4YWE2YTA0ODMyYTcwZjk3OGRhMjkwOTFhMjlhZTdhYjg5NWQ3Li5mZjc2
NzYwNjcwMTAzNjllZmRmMzE2NWYwMTAxOGQ3ZWRhNDZiMTMyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNJbnRlcm5hbC55YW1sCisrKyBi
L1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0ludGVybmFsLnlh
bWwKQEAgLTg1OCw2ICs4NTgsMTcgQEAgV2ViUlRDTUROU0lDRUNhbmRpZGF0ZXNFbmFibGVkOgog
ICAgIFdlYktpdDoKICAgICAgIGRlZmF1bHQ6IHRydWUKIAorV2ViU1FMRW5hYmxlZDoKKyAgdHlw
ZTogYm9vbAorICBodW1hblJlYWRhYmxlTmFtZTogIkVuYWJsZSBXZWJTUUwiCisgIGh1bWFuUmVh
ZGFibGVEZXNjcmlwdGlvbjogIkVuYWJsZSBXZWJTUUwiCisgIHdlYmNvcmVCaW5kaW5nOiBjdXN0
b20KKyAgZXhwb3NlZDogWyBXZWJLaXRMZWdhY3kgXQorICBkZWZhdWx0VmFsdWU6CisgICAgV2Vi
S2l0TGVnYWN5OgorICAgICAgIlBMQVRGT1JNKElPU19GQU1JTFkpIjogV2ViS2l0OjpkZWZhdWx0
V2ViU1FMRW5hYmxlZCgpCisgICAgICBkZWZhdWx0OiB0cnVlCisKIFpvb21PbkRvdWJsZVRhcFdo
ZW5Sb290OgogICB0eXBlOiBib29sCiAgIGNvbmRpdGlvbjogUExBVEZPUk0oSU9TX0ZBTUlMWSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5o
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKaW5kZXggYWI1
ZjMxYmFlZWZlYjFhNzQ5NDAzZTNiNmI1NzA4YzA0OGFmMzA5Ni4uZmNmMmZlZTA4N2Y0ZWRhMjFj
MGI5YjJkZDJlM2JmYzI1ODUxMmZhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9S
dW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1l
RW5hYmxlZEZlYXR1cmVzLmgKQEAgLTEyMyw3ICsxMjMsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBj
c3NUeXBlZE9NRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fQ1NTVHlwZWRPTUVuYWJsZWQ7IH0K
ICNlbmRpZgogCi0gICAgdm9pZCBzZXRXZWJTUUxEaXNhYmxlZChib29sIGlzRGlzYWJsZWQpIHsg
bV93ZWJTUUxFbmFibGVkID0gIWlzRGlzYWJsZWQ7IH0KKyAgICB2b2lkIHNldFdlYlNRTEVuYWJs
ZWQoYm9vbCBpc0VuYWJsZWQpIHsgbV93ZWJTUUxFbmFibGVkID0gaXNFbmFibGVkOyB9CiAgICAg
Ym9vbCB3ZWJTUUxFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV93ZWJTUUxFbmFibGVkOyB9CiAK
ICAgICB2b2lkIHNldERpYWxvZ0VsZW1lbnRFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1fZGlh
bG9nRWxlbWVudEVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3Rv
cmUuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291
cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAKaW5kZXggODRkNTYxNDMxMGE3ZjY2ZThiOTZlZjhl
NDc1ZTJhOTdiNDBlMTIwOS4uNWVmMmI2ZWMwOTZiNGZlMGEwZmEzNTA3YjNjMjcxMTQwNzNkZmFk
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dl
YlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAK
QEAgLTgwLDcgKzgwLDYgQEAgY29uc3QgT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4mIFdlYlJl
c291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6bW9uaXRvcmVkRGF0YVQKICNpZiBFTkFCTEUoU0VS
VklDRV9XT1JLRVIpCiAgICAgICAgIFdlYnNpdGVEYXRhVHlwZTo6U2VydmljZVdvcmtlclJlZ2lz
dHJhdGlvbnMsCiAjZW5kaWYKLSAgICAgICAgV2Vic2l0ZURhdGFUeXBlOjpXZWJTUUxEYXRhYmFz
ZXMsCiAgICAgfSkpOwogCiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzLmgg
Yi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycy5oCmlu
ZGV4IDI1YjVhMTE3NjBlYTIzNjdhOGVmMTlkMGZlYThmMDMwY2U0ZmQ5ZjQuLjZmMTI1Zjk4MmQw
Y2NlNmUzNzFkNmQ4ZGFiOGRjZTM2ODNjOWY1MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1dlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1dlYktp
dC9TaGFyZWQvV2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnMuaApAQCAtNDAsOCArNDAsNiBA
QCBzdHJ1Y3QgV2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnMgewogICAgIFN0cmluZyBhcHBs
aWNhdGlvbkNhY2hlRGlyZWN0b3J5OwogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBhcHBs
aWNhdGlvbkNhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIFN0cmluZyBhcHBsaWNh
dGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1lOwotICAgIFN0cmluZyB3ZWJTUUxEYXRh
YmFzZURpcmVjdG9yeTsKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgd2ViU1FMRGF0YWJh
c2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAgICAgU3RyaW5nIG1lZGlhQ2FjaGVEaXJlY3Rv
cnk7CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIG1lZGlhQ2FjaGVEaXJlY3RvcnlFeHRl
bnNpb25IYW5kbGU7CiAgICAgU3RyaW5nIG1lZGlhS2V5U3RvcmFnZURpcmVjdG9yeTsKQEAgLTY3
LDggKzY1LDYgQEAgdm9pZCBXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVyczo6ZW5jb2RlKEVu
Y29kZXImIGVuY29kZXIpIGNvbnN0CiAgICAgZW5jb2RlciA8PCBhcHBsaWNhdGlvbkNhY2hlRGly
ZWN0b3J5OwogICAgIGVuY29kZXIgPDwgYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeUV4dGVuc2lv
bkhhbmRsZTsKICAgICBlbmNvZGVyIDw8IGFwcGxpY2F0aW9uQ2FjaGVGbGF0RmlsZVN1YmRpcmVj
dG9yeU5hbWU7Ci0gICAgZW5jb2RlciA8PCB3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeTsKLSAgICBl
bmNvZGVyIDw8IHdlYlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIGVu
Y29kZXIgPDwgbWVkaWFDYWNoZURpcmVjdG9yeTsKICAgICBlbmNvZGVyIDw8IG1lZGlhQ2FjaGVE
aXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAgICAgZW5jb2RlciA8PCBtZWRpYUtleVN0b3JhZ2VE
aXJlY3Rvcnk7CkBAIC0xMDQsMTUgKzEwMCw2IEBAIE9wdGlvbmFsPFdlYlByb2Nlc3NEYXRhU3Rv
cmVQYXJhbWV0ZXJzPiBXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVyczo6ZGVjb2RlKERlCiAg
ICAgaWYgKCFkZWNvZGVyLmRlY29kZShhcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3Rv
cnlOYW1lKSkKICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKIAotICAgIFN0cmluZyB3ZWJT
UUxEYXRhYmFzZURpcmVjdG9yeTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHdlYlNRTERhdGFi
YXNlRGlyZWN0b3J5KSkKLSAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKLQotICAgIE9wdGlv
bmFsPFNhbmRib3hFeHRlbnNpb246OkhhbmRsZT4gd2ViU1FMRGF0YWJhc2VEaXJlY3RvcnlFeHRl
bnNpb25IYW5kbGU7Ci0gICAgZGVjb2RlciA+PiB3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeUV4dGVu
c2lvbkhhbmRsZTsKLSAgICBpZiAoIXdlYlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFu
ZGxlKQotICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwotCiAgICAgU3RyaW5nIG1lZGlhQ2Fj
aGVEaXJlY3Rvcnk7CiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShtZWRpYUNhY2hlRGlyZWN0b3J5
KSkKICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKQEAgLTE2Niw4ICsxNTMsNiBAQCBPcHRp
b25hbDxXZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycz4gV2ViUHJvY2Vzc0RhdGFTdG9yZVBh
cmFtZXRlcnM6OmRlY29kZShEZQogICAgICAgICBXVEZNb3ZlKGFwcGxpY2F0aW9uQ2FjaGVEaXJl
Y3RvcnkpLAogICAgICAgICBXVEZNb3ZlKCphcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5RXh0ZW5z
aW9uSGFuZGxlKSwKICAgICAgICAgV1RGTW92ZShhcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJk
aXJlY3RvcnlOYW1lKSwKLSAgICAgICAgV1RGTW92ZSh3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeSks
Ci0gICAgICAgIFdURk1vdmUoKndlYlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxl
KSwKICAgICAgICAgV1RGTW92ZShtZWRpYUNhY2hlRGlyZWN0b3J5KSwKICAgICAgICAgV1RGTW92
ZSgqbWVkaWFDYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSksCiAgICAgICAgIFdURk1vdmUo
bWVkaWFLZXlTdG9yYWdlRGlyZWN0b3J5KSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKaW5kZXggMDUxNmRiNDcxNWVmNjdmNzBjZmM4MTU4YTky
NDAyZTM5YzA2OWYyZC4uZTBkMzZmNTY5YTAwMDdkOTZhNTkwNzg0NjBkNjk3MzJhNjZhOWZhOSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAK
QEAgLTE5OTYsMTYgKzE5OTYsNiBAQCBib29sIFdLUHJlZmVyZW5jZXNHZXRQdW5jaE91dFdoaXRl
QmFja2dyb3VuZHNJbkRhcmtNb2RlKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZQogICAgIHJldHVy
biB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5wdW5jaE91dFdoaXRlQmFja2dyb3VuZHNJbkRhcmtN
b2RlKCk7CiB9CiAKLXZvaWQgV0tQcmVmZXJlbmNlc1NldFdlYlNRTERpc2FibGVkKFdLUHJlZmVy
ZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZykKLXsKLSAgICB0b0ltcGwocHJlZmVy
ZW5jZXNSZWYpLT5zZXRXZWJTUUxEaXNhYmxlZChmbGFnKTsKLX0KLQotYm9vbCBXS1ByZWZlcmVu
Y2VzR2V0V2ViU1FMRGlzYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikKLXsK
LSAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+d2ViU1FMRGlzYWJsZWQoKTsKLX0K
LQogdm9pZCBXS1ByZWZlcmVuY2VzU2V0Q2FwdHVyZUF1ZGlvSW5VSVByb2Nlc3NFbmFibGVkKFdL
UHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZykKIHsKICAgICB0b0ltcGwo
cHJlZmVyZW5jZXNSZWYpLT5zZXRDYXB0dXJlQXVkaW9JblVJUHJvY2Vzc0VuYWJsZWQoZmxhZyk7
CkBAIC0yMjI3LDMgKzIyMTcsMTIgQEAgYm9vbCBXS1ByZWZlcmVuY2VzR2V0U3VicGl4ZWxDU1NP
TUVsZW1lbnRNZXRyaWNzRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKQogewogICAgIHJldHVybiBm
YWxzZTsKIH0KKwordm9pZCBXS1ByZWZlcmVuY2VzU2V0V2ViU1FMRGlzYWJsZWQoV0tQcmVmZXJl
bmNlc1JlZiwgYm9vbCkKK3sKK30KKworYm9vbCBXS1ByZWZlcmVuY2VzR2V0V2ViU1FMRGlzYWJs
ZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikKK3sKKyAgICByZXR1cm4gdHJ1ZTsK
K30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5j
ZXNSZWYuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNSZWYu
aAppbmRleCA4ZWQ2MjExN2JlNWQ1M2JlMjZlZGNkZDc2NzFlMWZhNTFmM2EzMWNjLi5iZDU4YzUw
MmYwNTc3ZjgxNmQ2ZjRkMjE5MzFjMTEyMmE2ODgzMzIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUmVmLmgKKysrIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1JlZi5oCkBAIC0zMzEsNyArMzMxLDcgQEAg
V0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldENyb3NzT3JpZ2luUmVzb3VyY2VQb2xpY3lF
bmFibGVkKFdLUHJlZmVyZW5jZXNSZWYKIFdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRQ
cm9jZXNzU3dhcE9uTmF2aWdhdGlvbkVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNl
c1JlZik7CiBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0UHJvY2Vzc1N3YXBPbk5hdmln
YXRpb25FbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxl
ZCk7CiAKLS8vIERlZmF1bHRzIHRvIGZhbHNlLgorLy8gT2Jzb2xldGUuIEFsd2F5cyByZXR1cm5z
IHRydWUuCiBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0V2ViU1FMRGlzYWJsZWQoV0tQ
cmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZik7CiBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVu
Y2VzU2V0V2ViU1FMRGlzYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9v
bCBlbmFibGVkKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJv
Y2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3Bw
CmluZGV4IDM0MjAwY2M1NjZjZDk2ZDAzNDFlMjhkYjQ2Njg0ZWUwOGQwNTdkNDMuLjkwY2ZmYTVj
Y2I2MDBhMTc4OTIxNWQ5NDEyYmJkM2FhYTZhNmVlYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKQEAgLTczNywxMSArNzM3LDYgQEAgV2ViUHJvY2Vzc0Rh
dGFTdG9yZVBhcmFtZXRlcnMgV2ViUHJvY2Vzc1Bvb2w6OndlYlByb2Nlc3NEYXRhU3RvcmVQYXJh
bWV0ZXJzKFdlYlAKIAogICAgIFN0cmluZyBhcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJl
Y3RvcnlOYW1lID0gd2Vic2l0ZURhdGFTdG9yZS5hcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJk
aXJlY3RvcnlOYW1lKCk7CiAKLSAgICBTdHJpbmcgd2ViU1FMRGF0YWJhc2VEaXJlY3RvcnkgPSB3
ZWJzaXRlRGF0YVN0b3JlLnJlc29sdmVkRGF0YWJhc2VEaXJlY3RvcnkoKTsKLSAgICBTYW5kYm94
RXh0ZW5zaW9uOjpIYW5kbGUgd2ViU1FMRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7
Ci0gICAgaWYgKCF3ZWJTUUxEYXRhYmFzZURpcmVjdG9yeS5pc0VtcHR5KCkpCi0gICAgICAgIFNh
bmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZVdpdGhvdXRSZXNvbHZpbmdQYXRoKHdlYlNRTERh
dGFiYXNlRGlyZWN0b3J5LCBTYW5kYm94RXh0ZW5zaW9uOjpUeXBlOjpSZWFkV3JpdGUsIHdlYlNR
TERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKLQogICAgIFN0cmluZyBtZWRpYUNh
Y2hlRGlyZWN0b3J5ID0gd2Vic2l0ZURhdGFTdG9yZS5yZXNvbHZlZE1lZGlhQ2FjaGVEaXJlY3Rv
cnkoKTsKICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgbWVkaWFDYWNoZURpcmVjdG9yeUV4
dGVuc2lvbkhhbmRsZTsKICAgICBpZiAoIW1lZGlhQ2FjaGVEaXJlY3RvcnkuaXNFbXB0eSgpKQpA
QCAtNzY3LDggKzc2Miw2IEBAIFdlYlByb2Nlc3NEYXRhU3RvcmVQYXJhbWV0ZXJzIFdlYlByb2Nl
c3NQb29sOjp3ZWJQcm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycyhXZWJQCiAgICAgICAgIFdURk1v
dmUoYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSksCiAgICAgICAgIFdURk1vdmUoYXBwbGljYXRp
b25DYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSksCiAgICAgICAgIFdURk1vdmUoYXBwbGlj
YXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSksCi0gICAgICAgIFdURk1vdmUod2Vi
U1FMRGF0YWJhc2VEaXJlY3RvcnkpLAotICAgICAgICBXVEZNb3ZlKHdlYlNRTERhdGFiYXNlRGly
ZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKSwKICAgICAgICAgV1RGTW92ZShtZWRpYUNhY2hlRGlyZWN0
b3J5KSwKICAgICAgICAgV1RGTW92ZShtZWRpYUNhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxl
KSwKICAgICAgICAgV1RGTW92ZShtZWRpYUtleVN0b3JhZ2VEaXJlY3RvcnkpLApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCmluZGV4IDIxNWFhYmIwZDU5MmE1NjQ1ZTUyYTBh
NGQ3YmRlMWEyMzI1MTcxYWIuLjczNTI3NjA2N2ZkMWUwMzA0NDIxMmU3ZGM2ODQ0NmUxYjM2Y2Nh
MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKQEAgLTk4LDcgKzk4
LDYgQEAKICNpbmNsdWRlIDxXZWJDb3JlL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0UmVzdWx0Q2FjaGUu
aD4KICNpbmNsdWRlIDxXZWJDb3JlL0ROUy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRE9NV2luZG93
Lmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9EYXRhYmFzZU1hbmFnZXIuaD4KICNpbmNsdWRlIDxXZWJD
b3JlL0RhdGFiYXNlVHJhY2tlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRGVwcmVjYXRlZEdsb2Jh
bFNldHRpbmdzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9EaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5o
PgpAQCAtNTU2LDkgKzU1NSw2IEBAIHZvaWQgV2ViUHJvY2Vzczo6c2V0V2Vic2l0ZURhdGFTdG9y
ZVBhcmFtZXRlcnMoV2ViUHJvY2Vzc0RhdGFTdG9yZVBhcmFtZXRlcnMmJiBwCiB7CiAgICAgQVNT
RVJUKCFtX3Nlc3Npb25JRCk7CiAgICAgbV9zZXNzaW9uSUQgPSBwYXJhbWV0ZXJzLnNlc3Npb25J
RDsKLSAgICAKLSAgICBhdXRvJiBkYXRhYmFzZU1hbmFnZXIgPSBEYXRhYmFzZU1hbmFnZXI6OnNp
bmdsZXRvbigpOwotICAgIGRhdGFiYXNlTWFuYWdlci5pbml0aWFsaXplKHBhcmFtZXRlcnMud2Vi
U1FMRGF0YWJhc2VEaXJlY3RvcnkpOwogCiAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIGNv
bnN0cnVjdGVkIHBlciBkYXRhIHN0b3JlLCBub3QgcGVyIHByb2Nlc3MuCiAgICAgbV9hcHBsaWNh
dGlvbkNhY2hlU3RvcmFnZSA9IEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlOjpjcmVhdGUocGFyYW1l
dGVycy5hcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5LCBwYXJhbWV0ZXJzLmFwcGxpY2F0aW9uQ2Fj
aGVGbGF0RmlsZVN1YmRpcmVjdG9yeU5hbWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0KaW5kZXggMmI4YjA0MjMyZTNhNjhmMDdmZjI2
MjhkMDBhOTRiZmY1MDg5YzVlOS4uZTU1NzhhOTM5YWY4YjVkMTI5MTIwYjM3ODA5ZWEzMmIyYWNh
Zjk0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nl
c3NDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vz
c0NvY29hLm1tCkBAIC00NDYsNyArNDQ2LDYgQEAgdm9pZCBXZWJQcm9jZXNzOjpwbGF0Zm9ybUlu
aXRpYWxpemVXZWJQcm9jZXNzKFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmEKIHZv
aWQgV2ViUHJvY2Vzczo6cGxhdGZvcm1TZXRXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyhXZWJQ
cm9jZXNzRGF0YVN0b3JlUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCiB7CiAjaWYgRU5BQkxFKFNB
TkRCT1hfRVhURU5TSU9OUykKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50
bHkocGFyYW1ldGVycy53ZWJTUUxEYXRhYmFzZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAg
ICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuYXBwbGlj
YXRpb25DYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAgICAgU2FuZGJveEV4dGVuc2lv
bjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMubWVkaWFDYWNoZURpcmVjdG9yeUV4dGVu
c2lvbkhhbmRsZSk7CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBh
cmFtZXRlcnMubWVkaWFLZXlTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbSBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQppbmRleCA5OTJmM2UwOTc0ZDY0
NWJmZTI1ZDczMTk4MzJkODQxZjc3MGVlNmRiLi40ZWQ4MmQwYTU2NTMzMjAzOGFlNzM5NmY3OTZl
Y2Q2MTYxMWJmM2Y0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3
L1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3
Lm1tCkBAIC0yOTMzLDcgKzI5MzMsNyBAQCBzdGF0aWMgYm9vbCBuZWVkc1NlbGZSZXRhaW5XaGls
ZUxvYWRpbmdRdWlyaygpCiAgICAgc2V0dGluZ3Muc2V0VmlkZW9QbGF5YmFja1JlcXVpcmVzVXNl
ckdlc3R1cmUobWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUgfHwgW3ByZWZlcmVuY2Vz
IHZpZGVvUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlXSk7CiAgICAgc2V0dGluZ3Muc2V0QXVk
aW9QbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUobWVkaWFQbGF5YmFja1JlcXVpcmVzVXNlckdl
c3R1cmUgfHwgW3ByZWZlcmVuY2VzIGF1ZGlvUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlXSk7
CiAKLSAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFdlYlNR
TERpc2FibGVkKCFbcHJlZmVyZW5jZXMgd2ViU1FMRW5hYmxlZF0pOworICAgIFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0V2ViU1FMRW5hYmxlZChbcHJlZmVyZW5j
ZXMgd2ViU1FMRW5hYmxlZF0pOwogICAgIERhdGFiYXNlTWFuYWdlcjo6c2luZ2xldG9uKCkuc2V0
SXNBdmFpbGFibGUoW3ByZWZlcmVuY2VzIGRhdGFiYXNlc0VuYWJsZWRdKTsKICAgICBzZXR0aW5n
cy5zZXRMb2NhbFN0b3JhZ2VEYXRhYmFzZVBhdGgoW3ByZWZlcmVuY2VzIF9sb2NhbFN0b3JhZ2VE
YXRhYmFzZVBhdGhdKTsKICAgICBfcHJpdmF0ZS0+cGFnZS0+c2V0U2Vzc2lvbklEKFtwcmVmZXJl
bmNlcyBwcml2YXRlQnJvd3NpbmdFbmFibGVkXSA/IFBBTDo6U2Vzc2lvbklEOjpsZWdhY3lQcml2
YXRlU2Vzc2lvbklEKCkgOiBQQUw6OlNlc3Npb25JRDo6ZGVmYXVsdFNlc3Npb25JRCgpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYlZpZXcuY3BwIGIvU291cmNlL1dl
YktpdExlZ2FjeS93aW4vV2ViVmlldy5jcHAKaW5kZXggMmFiZDZjNTFjMmE2ZjVhMjc2MTI0ZjI5
ZGM3ZmNkNWMzMGQwOGVkZC4uOTc0NDgzNmJiNzA1MTVmNDM0MWYyZGJlNTQ3NjljOGZkMTUyMTE2
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViVmlldy5jcHAKKysrIGIv
U291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViVmlldy5jcHAKQEAgLTUzMDUsNyArNTMwNSw3IEBA
IEhSRVNVTFQgV2ViVmlldzo6bm90aWZ5UHJlZmVyZW5jZXNDaGFuZ2VkKElXZWJOb3RpZmljYXRp
b24qIG5vdGlmaWNhdGlvbikKICAgICBociA9IHByZWZzUHJpdmF0ZS0+d2ViU1FMRW5hYmxlZCgm
ZW5hYmxlZCk7CiAgICAgaWYgKEZBSUxFRChocikpCiAgICAgICAgIHJldHVybiBocjsKLSAgICBS
dW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFdlYlNRTERpc2FibGVk
KCFlbmFibGVkKTsKKyAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygp
LnNldFdlYlNRTEVuYWJsZWQoZW5hYmxlZCk7CiAKICAgICBociA9IHByZWZzUHJpdmF0ZS0+dmlz
dWFsVmlld3BvcnRBUElFbmFibGVkKCZlbmFibGVkKTsKICAgICBpZiAoRkFJTEVEKGhyKSkKZGlm
ZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAzY2E0M2Zm
NmY0NzVhZjgxYzkwZTlmOTQ0ZTQ0YWY1MTYzM2IyMjU1Li5mNzRhYWZmZTRlYTMzMjdjOGNhNjQ0
ODRlOGFhMGU4OWNkMDgyYWNiIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9v
bHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjEtMDUtMTQgIFJ5b3N1a2UgTml3YSAg
PHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRGVsZXRlIFdlYlNRTCBjb2RlIGZyb20gV2Vi
S2l0MgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1
NzM5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2lodWkgTGl1LgorCisgICAgICAgICogTWluaUJy
b3dzZXIvcGxheXN0YXRpb24vV2ViQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb250ZXh0OjpX
ZWJDb250ZXh0KToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dl
YnNpdGVEYXRhU3RvcmVDdXN0b21QYXRocy5tbToKKyAgICAgICAgKHJ1bldlYnNpdGVEYXRhU3Rv
cmVDdXN0b21QYXRocyk6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxl
ci5jcHA6CisgICAgICAgIChXVFI6OlRlc3RDb250cm9sbGVyOjpjb25maWd1cmVXZWJzaXRlRGF0
YVN0b3JlVGVtcG9yYXJ5RGlyZWN0b3JpZXMpOgorCiAyMDIxLTA1LTEzICBBYWthc2ggSmFpbiAg
PGFha2FzaF9qYWluQGFwcGxlLmNvbT4KIAogICAgICAgICByZXBvcnQtbm9uLWluY2x1c2l2ZS1s
YW5ndWFnZSBzaG91bGQgc2tpcCBzeW1saW5rcwpkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dz
ZXIvcGxheXN0YXRpb24vV2ViQ29udGV4dC5jcHAgYi9Ub29scy9NaW5pQnJvd3Nlci9wbGF5c3Rh
dGlvbi9XZWJDb250ZXh0LmNwcAppbmRleCA4OTdiOThjNDI5NDEwYjE1MDVjMjVlNmVjZTg1ZTY5
OTFlMGQ1YmU4Li4yZGJjYzJkMzJiOTM0MmMyYWRiMTk0NjNiYTQwNjQyMDNiMGVlZWE5IDEwMDY0
NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nlci9wbGF5c3RhdGlvbi9XZWJDb250ZXh0LmNwcAorKysg
Yi9Ub29scy9NaW5pQnJvd3Nlci9wbGF5c3RhdGlvbi9XZWJDb250ZXh0LmNwcApAQCAtNTcsNyAr
NTcsNiBAQCBXZWJDb250ZXh0OjpXZWJDb250ZXh0KCkKICAgICBXS1JldGFpblB0cjxXS1N0cmlu
Z1JlZj4gbmV0d29ya0NhY2hlRGlyZWN0b3J5ID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhV
VEY4Q1N0cmluZygiL2RhdGEvbWluaWJyb3dzZXIvTmV0d29ya0NhY2hlIikpOwogICAgIFdLUmV0
YWluUHRyPFdLU3RyaW5nUmVmPiBpbmRleGVkREJEaXJlY3RvcnkgPSBhZG9wdFdLKFdLU3RyaW5n
Q3JlYXRlV2l0aFVURjhDU3RyaW5nKCIvZGF0YS9taW5pYnJvd3Nlci9JbmRleGVkREIiKSk7CiAg
ICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IGxvY2FsU3RvcmFnZURpcmVjdG9yeSA9IGFkb3B0
V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIi9kYXRhL21pbmlicm93c2VyL0xvY2Fs
U3RvcmFnZSIpKTsKLSAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gd2ViU1FMRGlyZWN0b3J5
ID0gYWRvcHRXSyhXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiL2RhdGEvbWluaWJyb3dz
ZXIvV2ViU1FMIikpOwogICAgIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVmPiBjYWNoZVN0b3JhZ2VE
aXJlY3RvcnkgPSBhZG9wdFdLKFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKCIvZGF0YS9t
aW5pYnJvd3Nlci9DYWNoZVN0cm9hZ2UiKSk7CiAgICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+
IG1lZGlhS2V5U3RvcmFnZURpcmVjdG9yeSA9IGFkb3B0V0soV0tTdHJpbmdDcmVhdGVXaXRoVVRG
OENTdHJpbmcoIi9kYXRhL21pbmlicm93c2VyL01lZGlhS2V5IikpOwogICAgIFdLUmV0YWluUHRy
PFdLU3RyaW5nUmVmPiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5ID0gYWRvcHRXSyhX
S1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiL2RhdGEvbWluaWJyb3dzZXIvUmVzb3VyY2VM
b2FkU3RhdGlzdGljcyIpKTsKQEAgLTcyLDcgKzcxLDYgQEAgV2ViQ29udGV4dDo6V2ViQ29udGV4
dCgpCiAgICAgV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvblNldE5ldHdvcmtDYWNoZURp
cmVjdG9yeShkYXRhU3RvcmVDb25maWd1cmF0aW9uLmdldCgpLCBuZXR3b3JrQ2FjaGVEaXJlY3Rv
cnkuZ2V0KCkpOwogICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXRJbmRleGVk
REJEYXRhYmFzZURpcmVjdG9yeShkYXRhU3RvcmVDb25maWd1cmF0aW9uLmdldCgpLCBpbmRleGVk
REJEaXJlY3RvcnkuZ2V0KCkpOwogICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25T
ZXRMb2NhbFN0b3JhZ2VEaXJlY3RvcnkoZGF0YVN0b3JlQ29uZmlndXJhdGlvbi5nZXQoKSwgbG9j
YWxTdG9yYWdlRGlyZWN0b3J5LmdldCgpKTsKLSAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1
cmF0aW9uU2V0V2ViU1FMRGF0YWJhc2VEaXJlY3RvcnkoZGF0YVN0b3JlQ29uZmlndXJhdGlvbi5n
ZXQoKSwgd2ViU1FMRGlyZWN0b3J5LmdldCgpKTsKICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25m
aWd1cmF0aW9uU2V0Q2FjaGVTdG9yYWdlRGlyZWN0b3J5KGRhdGFTdG9yZUNvbmZpZ3VyYXRpb24u
Z2V0KCksIGNhY2hlU3RvcmFnZURpcmVjdG9yeS5nZXQoKSk7CiAgICAgV0tXZWJzaXRlRGF0YVN0
b3JlQ29uZmlndXJhdGlvblNldE1lZGlhS2V5c1N0b3JhZ2VEaXJlY3RvcnkoZGF0YVN0b3JlQ29u
ZmlndXJhdGlvbi5nZXQoKSwgbWVkaWFLZXlTdG9yYWdlRGlyZWN0b3J5LmdldCgpKTsKICAgICBX
S1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uU2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0Rp
cmVjdG9yeShkYXRhU3RvcmVDb25maWd1cmF0aW9uLmdldCgpLCByZXNvdXJjZUxvYWRTdGF0aXN0
aWNzRGlyZWN0b3J5LmdldCgpKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Q29jb2EvV2Vic2l0ZURhdGFTdG9yZUN1c3RvbVBhdGhzLm1tIGIvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJzaXRlRGF0YVN0b3JlQ3VzdG9tUGF0aHMu
bW0KaW5kZXggNjUyYjdmZmYxZWZlZGVjYTAwYzFmY2JiZWFjNGYzN2IyMGMxZGZlZi4uYzdlMjE5
ZjJhZjEyMDY2MWUzZGI3M2EwY2RhYjFkMDRmOWY3ZjM5ZiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJzaXRlRGF0YVN0b3JlQ3VzdG9tUGF0aHMu
bW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJzaXRlRGF0
YVN0b3JlQ3VzdG9tUGF0aHMubW0KQEAgLTE0OCw3ICsxNDgsNyBAQCBzdGF0aWMgdm9pZCBydW5X
ZWJzaXRlRGF0YVN0b3JlQ3VzdG9tUGF0aHMoU2hvdWxkRW5hYmxlUHJvY2Vzc1ByZXdhcm1pbmcg
c2hvdWxkRQogICAgIC8vIFdlIGV4cGVjdCA0IG1lc3NhZ2VzLCAxIGVhY2ggZm9yIFdlYlNRTCwg
SW5kZXhlZERCLCBjb29raWVzLCBhbmQgbG9jYWxTdG9yYWdlLgogICAgIEVYUEVDVF9TVFJFUShb
Z2V0TmV4dE1lc3NhZ2UoKS5ib2R5IFVURjhTdHJpbmddLCAibG9jYWxzdG9yYWdlIHdyaXR0ZW4i
KTsKICAgICBFWFBFQ1RfU1RSRVEoW2dldE5leHRNZXNzYWdlKCkuYm9keSBVVEY4U3RyaW5nXSwg
ImNvb2tpZSB3cml0dGVuIik7Ci0gICAgRVhQRUNUX1NUUkVRKFtnZXROZXh0TWVzc2FnZSgpLmJv
ZHkgVVRGOFN0cmluZ10sICJFeGNlcHRpb246IFF1b3RhRXhjZWVkZWRFcnJvcjogVGhlIHF1b3Rh
IGhhcyBiZWVuIGV4Y2VlZGVkLiIpOworICAgIEVYUEVDVF9TVFJFUShbZ2V0TmV4dE1lc3NhZ2Uo
KS5ib2R5IFVURjhTdHJpbmddLCAiRXhjZXB0aW9uOiBVbmtub3duRXJyb3I6IFdlYiBTUUwgaXMg
ZGVwcmVjYXRlZCIpOwogICAgIEVYUEVDVF9TVFJFUShbZ2V0TmV4dE1lc3NhZ2UoKS5ib2R5IFVU
RjhTdHJpbmddLCAiU3VjY2VzcyBvcGVuaW5nIGluZGV4ZWQgZGF0YWJhc2UiKTsKIAogICAgIF9f
YmxvY2sgYm9vbCBmbHVzaGVkID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdENvY29hL2R1cGxpY2F0ZS1jb21wbGV0aW9uLWhhbmRsZXItY2FsbHMu
aHRtbCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvZHVwbGljYXRlLWNv
bXBsZXRpb24taGFuZGxlci1jYWxscy5odG1sCmluZGV4IDFlNzQ5MmJlZDM2MjQzNmYwZmYwMmIx
YmE3YzZkYjJiM2E2MmZjNTcuLjkyOTg3NzI1YmYzMzE4NWM0YWFmM2QyZTk2MTEyN2ZlMjZjMWE4
ZDQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvZHVw
bGljYXRlLWNvbXBsZXRpb24taGFuZGxlci1jYWxscy5odG1sCisrKyBiL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvZHVwbGljYXRlLWNvbXBsZXRpb24taGFuZGxlci1jYWxs
cy5odG1sCkBAIC00LDYgKzQsNiBAQAogICAgIGFsZXJ0KCJhbGVydCIpOwogICAgIGNvbmZpcm0o
ImNvbmZpcm0iKTsKICAgICBwcm9tcHQoInByb21wdCIpOwotICAgIG9wZW5EYXRhYmFzZSgidGVz
dERhdGFiYXNlIiwgIjEiLCAidGVzdCBkYXRhYmFzZSIsIDEwMjQpOworICAgIHdpbmRvdy5pbmRl
eGVkREIub3BlbigiRHVwbGljYXRlQ29tcGxldGlvbkhhbmRsZXJDYWxsc0RhdGFiYXNlIik7CiAg
ICAgZG9jdW1lbnQuZm9ybXNbMF0uc3VibWl0KCk7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwIGIvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAKaW5kZXggZTA2NjcwMGYzY2U2YWFkYTlhYjIxYTM2
NGIwYTJiYmNlNDI4YWU0OC4uYzFlYjEwOGI2ZmVlNWM1NDFlZjE4MThjMGRkOTk0MmI1YjZjMDZi
NyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAK
KysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAKQEAgLTU4OCw3
ICs1ODgsNiBAQCB2b2lkIFRlc3RDb250cm9sbGVyOjpjb25maWd1cmVXZWJzaXRlRGF0YVN0b3Jl
VGVtcG9yYXJ5RGlyZWN0b3JpZXMoV0tXZWJzaXRlRGF0YQogICAgICAgICBXS1dlYnNpdGVEYXRh
U3RvcmVDb25maWd1cmF0aW9uU2V0Q2FjaGVTdG9yYWdlRGlyZWN0b3J5KGNvbmZpZ3VyYXRpb24s
IHRvV0sobWFrZVN0cmluZyh0ZW1wb3JhcnlGb2xkZXIsIHBhdGhTZXBhcmF0b3IsICJDYWNoZVN0
b3JhZ2UiLCBwYXRoU2VwYXJhdG9yLCByYW5kb21OdW1iZXIpKS5nZXQoKSk7CiAgICAgICAgIFdL
V2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb25TZXRJbmRleGVkREJEYXRhYmFzZURpcmVjdG9y
eShjb25maWd1cmF0aW9uLCB0b1dLKG1ha2VTdHJpbmcodGVtcG9yYXJ5Rm9sZGVyLCBwYXRoU2Vw
YXJhdG9yLCAiRGF0YWJhc2VzIiwgcGF0aFNlcGFyYXRvciwgIkluZGV4ZWREQiIsIHBhdGhTZXBh
cmF0b3IsIHJhbmRvbU51bWJlcikpLmdldCgpKTsKICAgICAgICAgV0tXZWJzaXRlRGF0YVN0b3Jl
Q29uZmlndXJhdGlvblNldExvY2FsU3RvcmFnZURpcmVjdG9yeShjb25maWd1cmF0aW9uLCB0b1dL
KG1ha2VTdHJpbmcodGVtcG9yYXJ5Rm9sZGVyLCBwYXRoU2VwYXJhdG9yLCAiTG9jYWxTdG9yYWdl
IiwgcGF0aFNlcGFyYXRvciwgcmFuZG9tTnVtYmVyKSkuZ2V0KCkpOwotICAgICAgICBXS1dlYnNp
dGVEYXRhU3RvcmVDb25maWd1cmF0aW9uU2V0V2ViU1FMRGF0YWJhc2VEaXJlY3RvcnkoY29uZmln
dXJhdGlvbiwgdG9XSyhtYWtlU3RyaW5nKHRlbXBvcmFyeUZvbGRlciwgcGF0aFNlcGFyYXRvciwg
IkRhdGFiYXNlcyIsIHBhdGhTZXBhcmF0b3IsICJXZWJTUUwiLCBwYXRoU2VwYXJhdG9yLCByYW5k
b21OdW1iZXIpKS5nZXQoKSk7CiAgICAgICAgIFdLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRp
b25TZXRNZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5KGNvbmZpZ3VyYXRpb24sIHRvV0sobWFrZVN0
cmluZyh0ZW1wb3JhcnlGb2xkZXIsIHBhdGhTZXBhcmF0b3IsICJNZWRpYUtleXMiLCBwYXRoU2Vw
YXJhdG9yLCByYW5kb21OdW1iZXIpKS5nZXQoKSk7CiAgICAgICAgIFdLV2Vic2l0ZURhdGFTdG9y
ZUNvbmZpZ3VyYXRpb25TZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5KGNvbmZpZ3Vy
YXRpb24sIHRvV0sobWFrZVN0cmluZyh0ZW1wb3JhcnlGb2xkZXIsIHBhdGhTZXBhcmF0b3IsICJS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzIiwgcGF0aFNlcGFyYXRvciwgcmFuZG9tTnVtYmVyKSkuZ2V0
KCkpOwogICAgICAgICBXS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uU2V0U2VydmljZVdv
cmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9yeShjb25maWd1cmF0aW9uLCB0b1dLKG1ha2VTdHJpbmco
dGVtcG9yYXJ5Rm9sZGVyLCBwYXRoU2VwYXJhdG9yLCAiU2VydmljZVdvcmtlcnMiLCBwYXRoU2Vw
YXJhdG9yLCByYW5kb21OdW1iZXIpKS5nZXQoKSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>