<?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>195117</bug_id>
          
          <creation_ts>2019-02-27 12:43:52 -0800</creation_ts>
          <short_desc>Move NetworkProcess/Classifier/ResourceLoadStatisticsStoreCocoa.mm functionality into UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm</short_desc>
          <delta_ts>2019-03-11 19:16:48 -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>New Bugs</component>
          <version>Safari Technology Preview</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>macOS 10.14</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="Aaron">alabiaga</reporter>
          <assigned_to name="John Wilander">wilander</assigned_to>
          <cc>ap</cc>
    
    <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wilander</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1510571</commentid>
    <comment_count>0</comment_count>
    <who name="Aaron">alabiaga</who>
    <bug_when>2019-02-27 12:43:52 -0800</bug_when>
    <thetext>Debugging a custom domain for ITP2 does not work for me at all on Safari Technology Preview: Release 76 (Safari 12.2, WebKit 14608.1.6.2). I followed the instructions here https://webkit.org/blog/8387/itp-debug-mode-in-safari-technology-preview-62/ and have tried deleting my history and cache and nothing.

When enabling debug mode, all i get in the terminal is

2019-02-27 15:41:38.718784-0500 0x21a17    Info        0x0                  16566  0    com.apple.WebKit.Networking: (WebKit) [com.apple.WebKit:ResourceLoadStatisticsDebug] Turned ITP Debug Mode on.
2019-02-27 15:41:38.732611-0500 0x21a17    Info        0x0                  16566  0    com.apple.WebKit.Networking: (WebKit) [com.apple.WebKit:ResourceLoadStatisticsDebug] About to block cookies in third-party contexts for: 3rdpartytestwebkit.org.
2019-02-27 15:41:38.736588-0500 0x21a17    Info        0x0                  16566  0    com.apple.WebKit.Networking: (WebKit) [com.apple.WebKit:ResourceLoadStatisticsDebug] Done updating cookie blocking.

which doesn&apos;t include my custom domain.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1510595</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-02-27 13:46:28 -0800</bug_when>
    <thetext>&lt;rdar://problem/48448715&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511237</commentid>
    <comment_count>2</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2019-02-28 18:09:54 -0800</bug_when>
    <thetext>Hi Aaron! Thanks for reporting. I will have a look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511247</commentid>
    <comment_count>3</comment_count>
    <who name="Aaron">alabiaga</who>
    <bug_when>2019-02-28 18:46:48 -0800</bug_when>
    <thetext>Thanks John, In the meantime I managed to find an older version of Safari tech preview and got this to work

&gt;&gt; log stream -info | grep ResourceLoadStatisticsDebug

2019-02-28 21:45:27.346931-0500 0x385a2    Info        0x0                  26919  0    Safari Technology Preview: (WebKit) [com.apple.WebKit:ResourceLoadStatisticsDebug] Did set test-domain.org as prevalent resource for the purposes of ITP Debug Mode.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511624</commentid>
    <comment_count>4</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2019-03-01 14:42:45 -0800</bug_when>
    <thetext>I think this is because WebKit/UIProcess/Cocoa/ResourceLoadStatisticsMemoryStoreCocoa.mm has not been moved to the network process. It could also make its calls over IPC.

WebKit/UIProcess/Cocoa/ResourceLoadStatisticsMemoryStoreCocoa.mm reads user defaults to allow developers to set a custom domain as permanently classified under ITP Debug Mode. This was broken by the recent move of ITP from the UI process to the network process.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515080</commentid>
    <comment_count>5</comment_count>
      <attachid>364306</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2019-03-11 16:21:05 -0700</bug_when>
    <thetext>Created attachment 364306
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515125</commentid>
    <comment_count>6</comment_count>
      <attachid>364306</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2019-03-11 17:18:10 -0700</bug_when>
    <thetext>Comment on attachment 364306
Patch

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

Looks good.

&gt; Source/WebKit/ChangeLog:13
&gt; +        This patch make away with some old user defaults we don&apos;t use anymore. It also

&quot;make away&quot; -&gt; &quot;does away&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515170</commentid>
    <comment_count>7</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2019-03-11 18:37:02 -0700</bug_when>
    <thetext>(In reply to Brent Fulgham from comment #6)
&gt; Comment on attachment 364306 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=364306&amp;action=review
&gt; 
&gt; Looks good.
&gt; 
&gt; &gt; Source/WebKit/ChangeLog:13
&gt; &gt; +        This patch make away with some old user defaults we don&apos;t use anymore. It also
&gt; 
&gt; &quot;make away&quot; -&gt; &quot;does away&quot;

Thanks! Will fix and land.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515171</commentid>
    <comment_count>8</comment_count>
      <attachid>364331</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2019-03-11 18:38:40 -0700</bug_when>
    <thetext>Created attachment 364331
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515191</commentid>
    <comment_count>9</comment_count>
      <attachid>364331</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-03-11 19:16:47 -0700</bug_when>
    <thetext>Comment on attachment 364331
Patch for landing

Clearing flags on attachment: 364331

Committed r242764: &lt;https://trac.webkit.org/changeset/242764&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1515192</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-03-11 19:16:48 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>364306</attachid>
            <date>2019-03-11 16:21:05 -0700</date>
            <delta_ts>2019-03-11 18:38:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195117-20190311162104.patch</filename>
            <type>text/plain</type>
            <size>26463</size>
            <attacher name="John Wilander">wilander</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQyNzEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDE0NzNjMmEwZmVmYTQ3MmY2
MzAxYTUxOTYwYzRkYzk4OGYwZTM0MjcuLjRiNzdhYzc2OTA1YjE0YzhhZTM5MWUxN2NjMzI2MjBh
YTU5M2UyMGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTEgQEAKKzIwMTktMDMtMTEgIEpvaG4gV2ls
YW5kZXIgIDx3aWxhbmRlckBhcHBsZS5jb20+CisKKyAgICAgICAgTW92ZSBOZXR3b3JrUHJvY2Vz
cy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZUNvY29hLm1tIGZ1bmN0aW9u
YWxpdHkgaW50byBVSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNv
Y29hLm1tCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
OTUxMTcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4NDQ4NzE1PgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlYWRpbmcgb2YgdXNlciBkZWZhdWx0
cyBvbiBDb2NvYSBwbGF0Zm9ybXMgc2hvdWxkIGJlIGRvbmUgaW4gdGhlIFVJIHByb2Nlc3MgYW5k
CisgICAgICAgIGZvcndhcmRlZCB0byBSZXNvdXJjZSBMb2FkIFN0YXRpc3RpY3MgaW4gdGhlIG5l
dHdvcmsgcHJvY2VzcyB0aHJvdWdoIHRoZQorICAgICAgICBXZWJLaXQ6Ok5ldHdvcmtTZXNzaW9u
Q3JlYXRpb25QYXJhbWV0ZXJzIHN0cnVjdC4KKworICAgICAgICBUaGlzIHBhdGNoIG1ha2UgYXdh
eSB3aXRoIHNvbWUgb2xkIHVzZXIgZGVmYXVsdHMgd2UgZG9uJ3QgdXNlIGFueW1vcmUuIEl0IGFs
c28KKyAgICAgICAgY2hhbmdlcyB0aGUgZGV2ZWxvcGVyLWZhY2luZyBkZWZhdWx0IG5hbWUgdG8g
SVRQTWFudWFsUHJldmFsZW50UmVzb3VyY2UuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9D
bGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OlJlc291cmNl
TG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlKToKKyAgICAgICAgICAgIFJlbW92ZWQgdGhlIGNh
bGwgdG8gdGhlIG9sZCByZWdpc3RlclVzZXJEZWZhdWx0c0lmTmVlZGVkKCkuCisgICAgICAgICog
TmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWVtb3J5U3Rv
cmUuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWVtb3J5U3Rv
cmU6OlJlc291cmNlTG9hZFN0YXRpc3RpY3NNZW1vcnlTdG9yZSk6CisgICAgICAgICAgICBSZW1v
dmVkIHRoZSBjYWxsIHRvIHRoZSBvbGQgcmVnaXN0ZXJVc2VyRGVmYXVsdHNJZk5lZWRlZCgpLgor
ICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c1N0b3JlLmg6CisgICAgICAgICAgICBSZW1vdmVkIHRoZSBkZWNsYXJhdGlvbiBvZiB0aGUgb2xk
IHJlZ2lzdGVyVXNlckRlZmF1bHRzSWZOZWVkZWQoKS4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vz
cy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZUNvY29hLm1tOiBSZW1vdmVk
LgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc1N0b3JlLmg6CisgICAgICAgICAgICBBZGRlZCBhbiBlbnVtIGNsYXNzIEVuYWJsZVJl
c291cmNlTG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGUuCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mv
TmV0d29ya1Nlc3Npb24uY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU2Vzc2lvbjo6c2V0
UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNz
L05ldHdvcmtTZXNzaW9uLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Np
b25DcmVhdGlvblBhcmFtZXRlcnMuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU2Vzc2lv
bkNyZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6TmV0
d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZSk6CisgICAgICAgICogTmV0d29y
a1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMuaDoKKyAgICAgICAgICAg
VGhlIHN0cnVjdCBub3cgaGFzIHR3byBuZXcgZmllbGRzOgorICAgICAgICAgICAtIGVuYWJsZVJl
c291cmNlTG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGUKKyAgICAgICAgICAgLSByZXNvdXJjZUxvYWRT
dGF0aXN0aWNzTWFudWFsUHJldmFsZW50UmVzb3VyY2UKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vz
cy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
U2Vzc2lvbkNvY29hOjpOZXR3b3JrU2Vzc2lvbkNvY29hKToKKyAgICAgICAgICAgIEZvcndhcmRp
bmcgb2YgdGhlIHBhcmFtZXRlcnMuCisgICAgICAgICogU291cmNlc0NvY29hLnR4dDoKKyAgICAg
ICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQ
cm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MpOgorICAgICAgICAgICAgRm9yd2FyZGlu
ZyBvZiB0aGUgcGFyYW1ldGVycy4KKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29j
b2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0
YVN0b3JlOjpwYXJhbWV0ZXJzKToKKyAgICAgICAgICAgIFRoaXMgaXMgd2hlcmUgdXNlciBkZWZh
dWx0cyBmb3IgUmVzb3VyY2UgTG9hZCBTdGF0aXN0aWNzIGFyZSBub3cgcmVhZC4KKyAgICAgICAg
KiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKwogMjAxOS0wMy0xMSAgSm9obiBX
aWxhbmRlciAgPHdpbGFuZGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXNvdXJjZSBMb2FkIFN0
YXRpc3RpY3M6IE1ha2UgaXQgcG9zc2libGUgZXhjbHVkZSBsb2NhbGhvc3QgZnJvbSBjbGFzc2lm
aWNhdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lm
aWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJh
c2VTdG9yZS5jcHAKaW5kZXggM2I2ZWU1YzhlNjBmODc3YzY0MjZkM2ZmMWE2YjcyMDRjNmM3OGUw
Zi4uNzE4OThjZjVhMWVlYzUyYmY0YTdlZmM2OGQ3OWUwYTBhMWJhNzVmZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRp
c3RpY3NEYXRhYmFzZVN0b3JlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmUuY3BwCkBAIC0x
OTQsMTAgKzE5NCw2IEBAIFJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlOjpSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZShXZWJSZXNvCiB7CiAgICAgQVNTRVJUKCFS
dW5Mb29wOjppc01haW4oKSk7CiAKLSNpZiBQTEFURk9STShDT0NPQSkKLSAgICByZWdpc3RlclVz
ZXJEZWZhdWx0c0lmTmVlZGVkKCk7Ci0jZW5kaWYKLQogICAgIGlmICghbV9kYXRhYmFzZS5vcGVu
KG1fc3RvcmFnZURpcmVjdG9yeVBhdGgpKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SKE5l
dHdvcmssICIlcCAtIFJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlOjpvcGVuIGZh
aWxlZCwgZXJyb3IgbWVzc2FnZTogJXtwdWJsaWN9cywgZGF0YWJhc2UgcGF0aDogJXtwdWJsaWN9
cyIsIHRoaXMsIG1fZGF0YWJhc2UubGFzdEVycm9yTXNnKCksIG1fc3RvcmFnZURpcmVjdG9yeVBh
dGgudXRmOCgpLmRhdGEoKSk7CiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNlTG9h
ZFN0YXRpc3RpY3NNZW1vcnlTdG9yZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc01lbW9yeVN0b3JlLmNwcAppbmRleCBm
YmY5Nzc0ODExZDZmN2QwNTNmY2E5M2QzY2NjMjc3M2ZjZTFiNWI1Li5mMzZiNjk0N2UzOGI4ZmU1
NDk0YTVlY2E0OTY1NzU0NWY2NmU2ZmYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc01lbW9yeVN0b3JlLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VM
b2FkU3RhdGlzdGljc01lbW9yeVN0b3JlLmNwcApAQCAtNzIsMTAgKzcyLDYgQEAgUmVzb3VyY2VM
b2FkU3RhdGlzdGljc01lbW9yeVN0b3JlOjpSZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWVtb3J5U3Rv
cmUoV2ViUmVzb3VyY2UKIHsKICAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKIAotI2lm
IFBMQVRGT1JNKENPQ09BKQotICAgIHJlZ2lzdGVyVXNlckRlZmF1bHRzSWZOZWVkZWQoKTsKLSNl
bmRpZgotCiAgICAgd29ya1F1ZXVlLmRpc3BhdGNoQWZ0ZXIoNV9zLCBbd2Vha1RoaXMgPSBtYWtl
V2Vha1B0cigqdGhpcyldIHsKICAgICAgICAgaWYgKHdlYWtUaGlzKQogICAgICAgICAgICAgd2Vh
a1RoaXMtPmNhbGN1bGF0ZUFuZFN1Ym1pdFRlbGVtZXRyeSgpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NT
dG9yZS5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNl
TG9hZFN0YXRpc3RpY3NTdG9yZS5oCmluZGV4IGFmZjU3NWRmZTYyODNhOTY3NTBmMTJhZWQ4MzE5
NDUyMDY4MmNjNDkuLjlmM2UzMGFlYzg5Mzc5ZjEyMjYwNzVmNDU4NTY2YWEwNzk1NGI0ZGIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzU3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmgKQEAgLTE5MCw5ICsxOTAs
NiBAQCBwcm90ZWN0ZWQ6CiAKICAgICBib29sIGhhc1N0YXRpc3RpY3NFeHBpcmVkKGNvbnN0IFJl
c291cmNlTG9hZFN0YXRpc3RpY3MmKSBjb25zdDsKICAgICBib29sIGhhc1N0YXRpc3RpY3NFeHBp
cmVkKFdhbGxUaW1lIG1vc3RSZWNlbnRVc2VySW50ZXJhY3Rpb25UaW1lKSBjb25zdDsKLSNpZiBQ
TEFURk9STShDT0NPQSkKLSAgICB2b2lkIHJlZ2lzdGVyVXNlckRlZmF1bHRzSWZOZWVkZWQoKTsK
LSNlbmRpZgogICAgIHZvaWQgc2NoZWR1bGVTdGF0aXN0aWNzUHJvY2Vzc2luZ1JlcXVlc3RJZk5l
Y2Vzc2FyeSgpOwogICAgIHZvaWQgbWVyZ2VPcGVyYXRpbmdEYXRlcyhWZWN0b3I8T3BlcmF0aW5n
RGF0ZT4mJik7CiAgICAgdmlydHVhbCBWZWN0b3I8UmVnaXN0cmFibGVEb21haW4+IGVuc3VyZVBy
ZXZhbGVudFJlc291cmNlc0ZvckRlYnVnTW9kZSgpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3Rv
cmVDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNv
dXJjZUxvYWRTdGF0aXN0aWNzU3RvcmVDb2NvYS5tbQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggZjlmN2U4ZjBhMjBkYWZlYTlhYjI5ZTYwNzA3OGVmMTU3ZmIyYmJkYy4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlQ29jb2EubW0K
KysrIC9kZXYvbnVsbApAQCAtMSw4MCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE3
LTIwMTkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW1wb3J0
ICJjb25maWcuaCIKLSNpbXBvcnQgIlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oIgotCi0j
aWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKLQotI2ltcG9ydCA8V2ViQ29yZS9S
ZWdpc3RyYWJsZURvbWFpbi5oPgotI2ltcG9ydCA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgot
I2ltcG9ydCA8d3RmL3RleHQvV1RGU3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi12
b2lkIFJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6cmVnaXN0ZXJVc2VyRGVmYXVsdHNJZk5l
ZWRlZCgpCi17Ci0gICAgc3RhdGljIGRpc3BhdGNoX29uY2VfdCBpbml0T25jZTsKLQotICAgIGRp
c3BhdGNoX29uY2UoJmluaXRPbmNlLCBeewotICAgICAgICBTZWNvbmRzIHRpbWVUb0xpdmVVc2Vy
SW50ZXJhY3Rpb24oW1tOU1VzZXJEZWZhdWx0cyBzdGFuZGFyZFVzZXJEZWZhdWx0c10gZG91Ymxl
Rm9yS2V5OkAiUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RpbWVUb0xpdmVVc2VySW50ZXJhY3Rpb24i
XSk7Ci0gICAgICAgIGlmICh0aW1lVG9MaXZlVXNlckludGVyYWN0aW9uID4gMF9zICYmIHRpbWVU
b0xpdmVVc2VySW50ZXJhY3Rpb24gPD0gMjRfaCAqIDMwKQotICAgICAgICAgICAgc2V0VGltZVRv
TGl2ZVVzZXJJbnRlcmFjdGlvbih0aW1lVG9MaXZlVXNlckludGVyYWN0aW9uKTsKLQotICAgICAg
ICBTZWNvbmRzIG1pbmltdW1UaW1lQmV0d2VlbkRhdGFSZWNvcmRzUmVtb3ZhbChbW05TVXNlckRl
ZmF1bHRzIHN0YW5kYXJkVXNlckRlZmF1bHRzXSBkb3VibGVGb3JLZXk6QCJSZXNvdXJjZUxvYWRT
dGF0aXN0aWNzTWluaW11bVRpbWVCZXR3ZWVuRGF0YVJlY29yZHNSZW1vdmFsIl0pOwotICAgICAg
ICBpZiAobWluaW11bVRpbWVCZXR3ZWVuRGF0YVJlY29yZHNSZW1vdmFsID4gMF9zICYmIG1pbmlt
dW1UaW1lQmV0d2VlbkRhdGFSZWNvcmRzUmVtb3ZhbCA8IDFfaCkKLSAgICAgICAgICAgIHNldE1p
bmltdW1UaW1lQmV0d2VlbkRhdGFSZWNvcmRzUmVtb3ZhbChtaW5pbXVtVGltZUJldHdlZW5EYXRh
UmVjb3Jkc1JlbW92YWwpOwotCi0gICAgICAgIFNlY29uZHMgZ3JhbmRmYXRoZXJpbmdUaW1lKFtb
TlNVc2VyRGVmYXVsdHMgc3RhbmRhcmRVc2VyRGVmYXVsdHNdIGRvdWJsZUZvcktleTpAIlJlc291
cmNlTG9hZFN0YXRpc3RpY3NHcmFuZGZhdGhlcmluZ1RpbWUiXSk7Ci0gICAgICAgIGlmIChncmFu
ZGZhdGhlcmluZ1RpbWUgPiAwX3MgJiYgZ3JhbmRmYXRoZXJpbmdUaW1lIDw9IDI0X2ggKiA3KQot
ICAgICAgICAgICAgc2V0R3JhbmRmYXRoZXJpbmdUaW1lKGdyYW5kZmF0aGVyaW5nVGltZSk7Ci0K
LSAgICAgICAgc2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZShbW05TVXNlckRlZmF1
bHRzIHN0YW5kYXJkVXNlckRlZmF1bHRzXSBib29sRm9yS2V5OkAiSXRwRGVidWdNb2RlIl0pOwot
ICAgICAgICBhdXRvKiBkZWJ1Z01hbnVhbFByZXZhbGVudFJlc291cmNlID0gW1tOU1VzZXJEZWZh
dWx0cyBzdGFuZGFyZFVzZXJEZWZhdWx0c10gc3RyaW5nRm9yS2V5OkAiSXRwTWFudWFsUHJldmFs
ZW50UmVzb3VyY2UiXTsKLSAgICAgICAgaWYgKGRlYnVnTWFudWFsUHJldmFsZW50UmVzb3VyY2Up
IHsKLSAgICAgICAgICAgIFVSTCB1cmwgeyBVUkwoKSwgZGVidWdNYW51YWxQcmV2YWxlbnRSZXNv
dXJjZSB9OwotICAgICAgICAgICAgaWYgKCF1cmwuaXNWYWxpZCgpKSB7Ci0gICAgICAgICAgICAg
ICAgU3RyaW5nQnVpbGRlciBidWlsZGVyOwotICAgICAgICAgICAgICAgIGJ1aWxkZXIuYXBwZW5k
TGl0ZXJhbCgiaHR0cDovLyIpOwotICAgICAgICAgICAgICAgIGJ1aWxkZXIuYXBwZW5kKGRlYnVn
TWFudWFsUHJldmFsZW50UmVzb3VyY2UpOwotICAgICAgICAgICAgICAgIHVybCA9IHsgVVJMKCks
IGJ1aWxkZXIudG9TdHJpbmcoKSB9OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKHVy
bC5pc1ZhbGlkKCkpCi0gICAgICAgICAgICAgICAgc2V0UHJldmFsZW50UmVzb3VyY2VGb3JEZWJ1
Z01vZGUoUmVnaXN0cmFibGVEb21haW4geyB1cmwgfSk7Ci0gICAgICAgIH0KLQotICAgICAgICBT
ZWNvbmRzIGNhY2hlTWF4QWdlQ2FwRm9yUHJldmFsZW50UmVzb3VyY2VzKFtbTlNVc2VyRGVmYXVs
dHMgc3RhbmRhcmRVc2VyRGVmYXVsdHNdIGRvdWJsZUZvcktleTpAIlJlc291cmNlTG9hZFN0YXRp
c3RpY3NDYWNoZU1heEFnZUNhcCJdKTsKLSAgICAgICAgaWYgKGNhY2hlTWF4QWdlQ2FwRm9yUHJl
dmFsZW50UmVzb3VyY2VzID4gMF9zICYmIGNhY2hlTWF4QWdlQ2FwRm9yUHJldmFsZW50UmVzb3Vy
Y2VzIDw9IDI0X2ggKiAzNjUpCi0gICAgICAgICAgICBzZXRDYWNoZU1heEFnZUNhcChjYWNoZU1h
eEFnZUNhcEZvclByZXZhbGVudFJlc291cmNlcyk7Ci0gICAgICAgIAotICAgICAgICBTZWNvbmRz
IGNsaWVudFNpZGVDb29raWVzQWdlQ2FwKFtbTlNVc2VyRGVmYXVsdHMgc3RhbmRhcmRVc2VyRGVm
YXVsdHNdIGRvdWJsZUZvcktleTpAIlJlc291cmNlTG9hZFN0YXRpc3RpY3NDbGllbnRTaWRlQ29v
a2llc0FnZUNhcCJdKTsKLSAgICAgICAgaWYgKGNsaWVudFNpZGVDb29raWVzQWdlQ2FwID4gMF9z
ICYmIGNsaWVudFNpZGVDb29raWVzQWdlQ2FwIDw9IDI0X2ggKiAzNjUpCi0gICAgICAgICAgICBz
ZXRBZ2VDYXBGb3JDbGllbnRTaWRlQ29va2llcyhjbGllbnRTaWRlQ29va2llc0FnZUNhcCk7Ci0g
ICAgfSk7Ci19Ci0KLX0KLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmggYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc1N0b3JlLmgKaW5kZXggODE0N2U2NmRmYzk5ZWViYWU3NDU1MTAwNWQ0N2E5NGEzMDNh
ZGQ1YS4uNmFiMTY1YzQ2MjcwY2U4YzA1MjE3MGMxM2M1MjQ0NGNmYWI3NmQ5YyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9h
ZFN0YXRpc3RpY3NTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xh
c3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaApAQCAtNTksNiArNTksNyBA
QCBjbGFzcyBXZWJGcmFtZVByb3h5OwogY2xhc3MgV2ViUHJvY2Vzc1Byb3h5OwogZW51bSBjbGFz
cyBTaG91bGRHcmFuZGZhdGhlclN0YXRpc3RpY3MgOiBib29sOwogZW51bSBjbGFzcyBTaG91bGRJ
bmNsdWRlTG9jYWxob3N0IDogYm9vbCB7IE5vLCBZZXMgfTsKK2VudW0gY2xhc3MgRW5hYmxlUmVz
b3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZSA6IGJvb2wgeyBObywgWWVzIH07CiAKIGNsYXNz
IFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZSBmaW5hbCA6IHB1YmxpYyBUaHJlYWRTYWZl
UmVmQ291bnRlZDxXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUsIFdURjo6RGVzdHJ1Y3Rp
b25UaHJlYWQ6Ok1haW4+LCBwdWJsaWMgSVBDOjpNZXNzYWdlUmVjZWl2ZXIgewogcHVibGljOgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbi5j
cHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uLmNwcAppbmRl
eCAyNjA3MzJkMTRiNWJjN2YwODgxOTE1ODkwYTdiNWIwNjhmMGMxOTMzLi5hMGIwNjVjODFkN2E3
MDAxYTg1MGIwMzcwYjQ0M2EzY2E1MTc5NDk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uLmNwcApAQCAtMTAwLDYgKzEwMCwxMiBAQCB2b2lkIE5l
dHdvcmtTZXNzaW9uOjpzZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZChib29sIGVuYWJs
ZSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gV2Vi
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpjcmVhdGUoKnRoaXMsIG1fcmVzb3VyY2VMb2Fk
U3RhdGlzdGljc0RpcmVjdG9yeSwgbV9zaG91bGRJbmNsdWRlTG9jYWxob3N0SW5SZXNvdXJjZUxv
YWRTdGF0aXN0aWNzKTsKKworICAgIGlmIChtX2VuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3NE
ZWJ1Z01vZGUgPT0gRW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZTo6WWVzKQor
ICAgICAgICBtX3Jlc291cmNlTG9hZFN0YXRpc3RpY3MtPnNldFJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NEZWJ1Z01vZGUodHJ1ZSwgW10geyB9KTsKKyAgICAvLyBUaGlzIHNob3VsZCBhbHdheXMgYmUg
Zm9yd2FyZGVkIHNpbmNlIGRlYnVnIG1vZGUgbWF5IGJlIGVuYWJsZWQgYXQgcnVudGltZS4KKyAg
ICBpZiAoIW1fcmVzb3VyY2VMb2FkU3RhdGlzdGljc01hbnVhbFByZXZhbGVudFJlc291cmNlLmlz
RW1wdHkoKSkKKyAgICAgICAgbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzLT5zZXRQcmV2YWxlbnRS
ZXNvdXJjZUZvckRlYnVnTW9kZShtX3Jlc291cmNlTG9hZFN0YXRpc3RpY3NNYW51YWxQcmV2YWxl
bnRSZXNvdXJjZSwgW10geyB9KTsKIH0KIAogdm9pZCBOZXR3b3JrU2Vzc2lvbjo6bm90aWZ5UmVz
b3VyY2VMb2FkU3RhdGlzdGljc1Byb2Nlc3NlZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL05ldHdvcmtTZXNzaW9uLmgKaW5kZXggNTY2MTdjYmIxZDhhMjU4MDZhYjIyZTU3ZWU0
MzI1ZWJiZTBhMWRkNS4uZGI3ODk2NDQwYTMzYzBhOGZhMDcwODdkMDA5MmYxN2I5NjY1ZTE1MCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbi5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb24uaApAQCAt
OTMsNiArOTMsOCBAQCBwcm90ZWN0ZWQ6CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElT
VElDUykKICAgICBSZWZQdHI8V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlPiBtX3Jlc291
cmNlTG9hZFN0YXRpc3RpY3M7CiAgICAgU2hvdWxkSW5jbHVkZUxvY2FsaG9zdCBtX3Nob3VsZElu
Y2x1ZGVMb2NhbGhvc3RJblJlc291cmNlTG9hZFN0YXRpc3RpY3MgeyBTaG91bGRJbmNsdWRlTG9j
YWxob3N0OjpZZXMgfTsKKyAgICBFbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2Rl
IG1fZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZSB7IEVuYWJsZVJlc291cmNl
TG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGU6Ok5vIH07CisgICAgV2ViQ29yZTo6UmVnaXN0cmFibGVE
b21haW4gbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWFudWFsUHJldmFsZW50UmVzb3VyY2U7CiAj
ZW5kaWYKICAgICBVbmlxdWVSZWY8TmV0d29ya0FkQ2xpY2tBdHRyaWJ1dGlvbj4gbV9hZENsaWNr
QXR0cmlidXRpb247CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9OZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAppbmRleCAw
ODEyYTMxN2JlOWJlNDhkYmJlODhmNTQ5YzQzYjQ3ZjkxMWU4MGI5Li5kNGRlNDc0ZWVhZjQzYjM2
YjgzNjllMjNiOGVmNmMyNDMyNTQ4Y2UxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJz
LmNwcApAQCAtODAsNiArODAsOCBAQCB2b2lkIE5ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0
ZXJzOjplbmNvZGUoSVBDOjpFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogICAgIGVuY29kZXIgPDwg
cmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsKICAgICBlbmNv
ZGVyIDw8IGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3M7CiAgICAgZW5jb2RlciA8PCBzaG91
bGRJbmNsdWRlTG9jYWxob3N0SW5SZXNvdXJjZUxvYWRTdGF0aXN0aWNzOworICAgIGVuY29kZXIg
PDwgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZTsKKyAgICBlbmNvZGVyIDw8
IHJlc291cmNlTG9hZFN0YXRpc3RpY3NNYW51YWxQcmV2YWxlbnRSZXNvdXJjZTsKIH0KIAogT3B0
aW9uYWw8TmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnM+IE5ldHdvcmtTZXNzaW9uQ3Jl
YXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjpEZWNvZGVyJiBkZWNvZGVyKQpAQCAtMTc4LDYg
KzE4MCwxNiBAQCBPcHRpb25hbDxOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycz4gTmV0
d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnM6OmRlYwogICAgIGlmICghc2hvdWxkSW5jbHVk
ZUxvY2FsaG9zdEluUmVzb3VyY2VMb2FkU3RhdGlzdGljcykKICAgICAgICAgcmV0dXJuIFdURjo6
bnVsbG9wdDsKIAorICAgIE9wdGlvbmFsPGJvb2w+IGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NEZWJ1Z01vZGU7CisgICAgZGVjb2RlciA+PiBlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
RGVidWdNb2RlOworICAgIGlmICghZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9k
ZSkKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKworICAgIE9wdGlvbmFsPFdlYkNvcmU6
OlJlZ2lzdHJhYmxlRG9tYWluPiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWFudWFsUHJldmFsZW50
UmVzb3VyY2U7CisgICAgZGVjb2RlciA+PiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWFudWFsUHJl
dmFsZW50UmVzb3VyY2U7CisgICAgaWYgKCFyZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWFudWFsUHJl
dmFsZW50UmVzb3VyY2UpCisgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisKICAgICByZXR1
cm4ge3sKICAgICAgICAgc2Vzc2lvbklECiAgICAgICAgICwgV1RGTW92ZSgqYm91bmRJbnRlcmZh
Y2VJZGVudGlmaWVyKQpAQCAtMjAzLDYgKzIxNSw4IEBAIE9wdGlvbmFsPE5ldHdvcmtTZXNzaW9u
Q3JlYXRpb25QYXJhbWV0ZXJzPiBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVyczo6ZGVj
CiAgICAgICAgICwgV1RGTW92ZSgqcmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeUV4dGVu
c2lvbkhhbmRsZSkKICAgICAgICAgLCBXVEZNb3ZlKCplbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzKQogICAgICAgICAsIFdURk1vdmUoKnNob3VsZEluY2x1ZGVMb2NhbGhvc3RJblJlc291cmNl
TG9hZFN0YXRpc3RpY3MpCisgICAgICAgICwgV1RGTW92ZSgqZW5hYmxlUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc0RlYnVnTW9kZSkKKyAgICAgICAgLCBXVEZNb3ZlKCpyZXNvdXJjZUxvYWRTdGF0aXN0
aWNzTWFudWFsUHJldmFsZW50UmVzb3VyY2UpCiAgICAgfX07CiB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRl
cnMuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlv
blBhcmFtZXRlcnMuaAppbmRleCA3YzVjZTcwMjRhZWQ2YjUwM2YxZDY1ZGQ3NTY1M2M0NTYzOTc1
NTVmLi5hNDM0ZGFmNmUxY2Y5NDI4ZGJiZGZjZmUyYjViOWE3ZmU4YmM0NTQ2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJh
bWV0ZXJzLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lv
bkNyZWF0aW9uUGFyYW1ldGVycy5oCkBAIC0yNiw2ICsyNiw3IEBACiAjcHJhZ21hIG9uY2UKIAog
I2luY2x1ZGUgIlNhbmRib3hFeHRlbnNpb24uaCIKKyNpbmNsdWRlIDxXZWJDb3JlL1JlZ2lzdHJh
YmxlRG9tYWluLmg+CiAjaW5jbHVkZSA8cGFsL1Nlc3Npb25JRC5oPgogI2luY2x1ZGUgPHd0Zi9T
ZWNvbmRzLmg+CiAjaW5jbHVkZSA8d3RmL1VSTC5oPgpAQCAtODIsNiArODMsOCBAQCBzdHJ1Y3Qg
TmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMgewogICAgIFNhbmRib3hFeHRlbnNpb246
OkhhbmRsZSByZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwog
ICAgIGJvb2wgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyB7IGZhbHNlIH07CiAgICAgYm9v
bCBzaG91bGRJbmNsdWRlTG9jYWxob3N0SW5SZXNvdXJjZUxvYWRTdGF0aXN0aWNzIHsgdHJ1ZSB9
OworICAgIGJvb2wgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZSB7IGZhbHNl
IH07CisgICAgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gcmVzb3VyY2VMb2FkU3RhdGlzdGlj
c01hbnVhbFByZXZhbGVudFJlc291cmNlIHsgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktp
dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3Jr
U2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3
b3JrU2Vzc2lvbkNvY29hLm1tCmluZGV4IGVjM2JmNDE0ZDVmYzM4N2I4ZDViYTQyMzYzMDc5YzQ2
MjczNzRlMGMuLmJmYTJlYmQzYmUzMjY5YWNiOWRhZjZhN2Q0YjQ4NjhmZTgxN2ZkZDMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25D
b2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtT
ZXNzaW9uQ29jb2EubW0KQEAgLTk0OSw2ICs5NDksOCBAQCBOZXR3b3JrU2Vzc2lvbkNvY29hOjpO
ZXR3b3JrU2Vzc2lvbkNvY29hKE5ldHdvcmtQcm9jZXNzJiBuZXR3b3JrUHJvY2VzcywgTmV0d29y
awogI2lmIEVOQUJMRShSRVNPVVJDRV9MT0FEX1NUQVRJU1RJQ1MpCiAgICAgbV9yZXNvdXJjZUxv
YWRTdGF0aXN0aWNzRGlyZWN0b3J5ID0gcGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNz
RGlyZWN0b3J5OwogICAgIG1fc2hvdWxkSW5jbHVkZUxvY2FsaG9zdEluUmVzb3VyY2VMb2FkU3Rh
dGlzdGljcyA9IHBhcmFtZXRlcnMuc2hvdWxkSW5jbHVkZUxvY2FsaG9zdEluUmVzb3VyY2VMb2Fk
U3RhdGlzdGljcyA/IFNob3VsZEluY2x1ZGVMb2NhbGhvc3Q6OlllcyA6IFNob3VsZEluY2x1ZGVM
b2NhbGhvc3Q6Ok5vOworICAgIG1fZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9k
ZSA9IHBhcmFtZXRlcnMuZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZSA/IEVu
YWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGU6OlllcyA6IEVuYWJsZVJlc291cmNl
TG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGU6Ok5vOworICAgIG1fcmVzb3VyY2VMb2FkU3RhdGlzdGlj
c01hbnVhbFByZXZhbGVudFJlc291cmNlID0gcGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzTWFudWFsUHJldmFsZW50UmVzb3VyY2U7CiAgICAgc2V0UmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0VuYWJsZWQocGFyYW1ldGVycy5lbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKTsKICNlbmRp
ZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50eHQgYi9Tb3VyY2Uv
V2ViS2l0L1NvdXJjZXNDb2NvYS50eHQKaW5kZXggY2E4ZWY4ZmFjODNlZDY4NTgwZjIyMjIyZDky
MzkwNTc2NzRlOTJhOS4uOGNjMjVhOTYzYmM4OTkzNWRjMjYzOGM4N2MwM2NmOGY5NDFjZGNkMCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0CisrKyBiL1NvdXJjZS9X
ZWJLaXQvU291cmNlc0NvY29hLnR4dApAQCAtMjksNyArMjksNiBAQCBOZXR3b3JrUHJvY2Vzcy9j
b2NvYS9OZXR3b3JrRGF0YVRhc2tDb2NvYS5tbQogTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29y
a1Byb2Nlc3NDb2NvYS5tbQogTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2Nv
YS5tbQogCi1OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NT
dG9yZUNvY29hLm1tCiBOZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dlYlJlc291cmNlTG9hZFN0
YXRpc3RpY3NTdG9yZS5jcHAKIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VM
b2FkU3RhdGlzdGljc1RlbGVtZXRyeS5jcHAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Bvb2wuY3BwCmluZGV4IDZkOGZlODYwMjkyZDFiYWE3ZTJhMDY4MTdkZjA5YzY3YmU0
YmU5NmYuLjJhMzlkMmRjNTcxNDYxNWZjMjI3NTk1NjQ1OWFlMzViM2I2NDNlODkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKQEAgLTU3NSwxNiArNTc1LDMw
IEBAIE5ldHdvcmtQcm9jZXNzUHJveHkmIFdlYlByb2Nlc3NQb29sOjplbnN1cmVOZXR3b3JrUHJv
Y2VzcyhXZWJzaXRlRGF0YVN0b3JlKiB3aXRoCiAKICAgICBib29sIGVuYWJsZVJlc291cmNlTG9h
ZFN0YXRpc3RpY3MgPSBmYWxzZTsKICAgICBib29sIHNob3VsZEluY2x1ZGVMb2NhbGhvc3QgPSB0
cnVlOworICAgIGJvb2wgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZSA9IGZh
bHNlOworICAgIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIG1hbnVhbFByZXZhbGVudFJlc291
cmNlIHsgfTsKICAgICBpZiAod2l0aFdlYnNpdGVEYXRhU3RvcmUpIHsKICAgICAgICAgZW5hYmxl
UmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IHdpdGhXZWJzaXRlRGF0YVN0b3JlLT5yZXNvdXJjZUxv
YWRTdGF0aXN0aWNzRW5hYmxlZCgpOwotICAgICAgICBzaG91bGRJbmNsdWRlTG9jYWxob3N0ID0g
d2l0aFdlYnNpdGVEYXRhU3RvcmUtPnBhcmFtZXRlcnMoKS5uZXR3b3JrU2Vzc2lvblBhcmFtZXRl
cnMuc2hvdWxkSW5jbHVkZUxvY2FsaG9zdEluUmVzb3VyY2VMb2FkU3RhdGlzdGljczsKKyAgICAg
ICAgaWYgKGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MpIHsKKyAgICAgICAgICAgIGF1dG8g
bmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzID0gd2l0aFdlYnNpdGVEYXRhU3RvcmUtPnBhcmFtZXRl
cnMoKS5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnM7CisgICAgICAgICAgICBzaG91bGRJbmNsdWRl
TG9jYWxob3N0ID0gbmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLnNob3VsZEluY2x1ZGVMb2NhbGhv
c3RJblJlc291cmNlTG9hZFN0YXRpc3RpY3M7CisgICAgICAgICAgICBlbmFibGVSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzRGVidWdNb2RlID0gbmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLmVuYWJsZVJl
c291cmNlTG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGU7CisgICAgICAgICAgICBtYW51YWxQcmV2YWxl
bnRSZXNvdXJjZSA9IG5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzTWFudWFsUHJldmFsZW50UmVzb3VyY2U7CisgICAgICAgIH0KICAgICB9IGVsc2UgaWYgKG1f
d2Vic2l0ZURhdGFTdG9yZSkgewogICAgICAgICBlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
ID0gbV93ZWJzaXRlRGF0YVN0b3JlLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCgpOwot
ICAgICAgICBzaG91bGRJbmNsdWRlTG9jYWxob3N0ID0gbV93ZWJzaXRlRGF0YVN0b3JlLT53ZWJz
aXRlRGF0YVN0b3JlKCkucGFyYW1ldGVycygpLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5zaG91
bGRJbmNsdWRlTG9jYWxob3N0SW5SZXNvdXJjZUxvYWRTdGF0aXN0aWNzOworICAgICAgICBpZiAo
ZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcykgeworICAgICAgICAgICAgYXV0byBuZXR3b3Jr
U2Vzc2lvblBhcmFtZXRlcnMgPSBtX3dlYnNpdGVEYXRhU3RvcmUtPndlYnNpdGVEYXRhU3RvcmUo
KS5wYXJhbWV0ZXJzKCkubmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzOworICAgICAgICAgICAgc2hv
dWxkSW5jbHVkZUxvY2FsaG9zdCA9IG5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5zaG91bGRJbmNs
dWRlTG9jYWxob3N0SW5SZXNvdXJjZUxvYWRTdGF0aXN0aWNzOworICAgICAgICAgICAgZW5hYmxl
UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZSA9IG5ldHdvcmtTZXNzaW9uUGFyYW1ldGVy
cy5lbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlOworICAgICAgICAgICAgbWFu
dWFsUHJldmFsZW50UmVzb3VyY2UgPSBuZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucmVzb3VyY2VM
b2FkU3RhdGlzdGljc01hbnVhbFByZXZhbGVudFJlc291cmNlOworICAgICAgICB9CiAgICAgfQog
CiAgICAgcGFyYW1ldGVycy5kZWZhdWx0RGF0YVN0b3JlUGFyYW1ldGVycy5uZXR3b3JrU2Vzc2lv
blBhcmFtZXRlcnMuZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IGVuYWJsZVJlc291cmNl
TG9hZFN0YXRpc3RpY3M7CiAgICAgcGFyYW1ldGVycy5kZWZhdWx0RGF0YVN0b3JlUGFyYW1ldGVy
cy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMuc2hvdWxkSW5jbHVkZUxvY2FsaG9zdEluUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljcyA9IHNob3VsZEluY2x1ZGVMb2NhbGhvc3Q7CisgICAgcGFyYW1ldGVy
cy5kZWZhdWx0RGF0YVN0b3JlUGFyYW1ldGVycy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMuZW5h
YmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZSA9IGVuYWJsZVJlc291cmNlTG9hZFN0
YXRpc3RpY3NEZWJ1Z01vZGU7CisgICAgcGFyYW1ldGVycy5kZWZhdWx0RGF0YVN0b3JlUGFyYW1l
dGVycy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucmVzb3VyY2VMb2FkU3RhdGlzdGljc01hbnVh
bFByZXZhbGVudFJlc291cmNlID0gbWFudWFsUHJldmFsZW50UmVzb3VyY2U7CiAKICAgICAvLyBB
ZGQgYW55IHBsYXRmb3JtIHNwZWNpZmljIHBhcmFtZXRlcnMKICAgICBwbGF0Zm9ybUluaXRpYWxp
emVOZXR3b3JrUHJvY2VzcyhwYXJhbWV0ZXJzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbSBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVD
b2NvYS5tbQppbmRleCBhMjg1OTQwNWZhMzVmZDAwZmM2ODRjN2RiNTI0MjQyNzY4MDFiZWMwLi5h
MzRkNTdjN2M5ZWE0NTE3YjMwNDU4YTY1Y2FmYzQzZDg5NTA3ZTlhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29j
b2EubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vi
c2l0ZURhdGFTdG9yZUNvY29hLm1tCkBAIC0zMCwxMiArMzAsMTUgQEAKICNpbXBvcnQgIlN0b3Jh
Z2VNYW5hZ2VyLmgiCiAjaW1wb3J0ICJXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaCIK
ICNpbXBvcnQgIldlYnNpdGVEYXRhU3RvcmVQYXJhbWV0ZXJzLmgiCisjaW1wb3J0IDxXZWJDb3Jl
L1JlZ2lzdHJhYmxlRG9tYWluLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1J1bnRpbWVBcHBsaWNhdGlv
bkNoZWNrcy5oPgogI2ltcG9ydCA8V2ViQ29yZS9TZWFyY2hQb3B1cE1lbnVDb2NvYS5oPgogI2lt
cG9ydCA8cGFsL3NwaS9jZi9DRk5ldHdvcmtTUEkuaD4KICNpbXBvcnQgPHd0Zi9GaWxlU3lzdGVt
Lmg+CiAjaW1wb3J0IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KICNpbXBvcnQgPHd0Zi9Qcm9jZXNz
UHJpdmlsZWdlLmg+CisjaW1wb3J0IDx3dGYvVVJMLmg+CisjaW1wb3J0IDx3dGYvdGV4dC9TdHJp
bmdCdWlsZGVyLmg+CiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogI2ltcG9ydCA8VUlLaXQv
VUlBcHBsaWNhdGlvbi5oPgpAQCAtNjEsMTIgKzY0LDI4IEBAIFdlYnNpdGVEYXRhU3RvcmVQYXJh
bWV0ZXJzIFdlYnNpdGVEYXRhU3RvcmU6OnBhcmFtZXRlcnMoKQogICAgIHJlc29sdmVEaXJlY3Rv
cmllc0lmTmVjZXNzYXJ5KCk7CiAKICAgICBOU1VzZXJEZWZhdWx0cyAqZGVmYXVsdHMgPSBbTlNV
c2VyRGVmYXVsdHMgc3RhbmRhcmRVc2VyRGVmYXVsdHNdOwotI2lmIEVOQUJMRShSRVNPVVJDRV9M
T0FEX1NUQVRJU1RJQ1MpICYmICFSRUxFQVNFX0xPR19ESVNBQkxFRAotICAgIHN0YXRpYyBOU1N0
cmluZyAqIGNvbnN0IFdlYktpdExvZ0Nvb2tpZUluZm9ybWF0aW9uRGVmYXVsdHNLZXkgPSBAIldl
YktpdExvZ0Nvb2tpZUluZm9ybWF0aW9uIjsKLSAgICBib29sIHNob3VsZExvZ0Nvb2tpZUluZm9y
bWF0aW9uID0gW2RlZmF1bHRzIGJvb2xGb3JLZXk6V2ViS2l0TG9nQ29va2llSW5mb3JtYXRpb25E
ZWZhdWx0c0tleV07Ci0jZWxzZQogICAgIGJvb2wgc2hvdWxkTG9nQ29va2llSW5mb3JtYXRpb24g
PSBmYWxzZTsKKyAgICBib29sIGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGUg
PSBmYWxzZTsKKyAgICBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiByZXNvdXJjZUxvYWRTdGF0
aXN0aWNzTWFudWFsUHJldmFsZW50UmVzb3VyY2UgeyB9OworI2lmIEVOQUJMRShSRVNPVVJDRV9M
T0FEX1NUQVRJU1RJQ1MpCisgICAgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9k
ZSA9IFtkZWZhdWx0cyBib29sRm9yS2V5OkAiSVRQRGVidWdNb2RlIl07CisgICAgYXV0byogbWFu
dWFsUHJldmFsZW50UmVzb3VyY2UgPSBbZGVmYXVsdHMgc3RyaW5nRm9yS2V5OkAiSVRQTWFudWFs
UHJldmFsZW50UmVzb3VyY2UiXTsKKyAgICBpZiAobWFudWFsUHJldmFsZW50UmVzb3VyY2UpIHsK
KyAgICAgICAgVVJMIHVybCB7IFVSTCgpLCBtYW51YWxQcmV2YWxlbnRSZXNvdXJjZSB9OworICAg
ICAgICBpZiAoIXVybC5pc1ZhbGlkKCkpIHsKKyAgICAgICAgICAgIFN0cmluZ0J1aWxkZXIgYnVp
bGRlcjsKKyAgICAgICAgICAgIGJ1aWxkZXIuYXBwZW5kTGl0ZXJhbCgiaHR0cDovLyIpOworICAg
ICAgICAgICAgYnVpbGRlci5hcHBlbmQobWFudWFsUHJldmFsZW50UmVzb3VyY2UpOworICAgICAg
ICAgICAgdXJsID0geyBVUkwoKSwgYnVpbGRlci50b1N0cmluZygpIH07CisgICAgICAgIH0KKyAg
ICAgICAgaWYgKHVybC5pc1ZhbGlkKCkpCisgICAgICAgICAgICByZXNvdXJjZUxvYWRTdGF0aXN0
aWNzTWFudWFsUHJldmFsZW50UmVzb3VyY2UgPSBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiB7
IHVybCB9OworICAgIH0KKyNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKKyAgICBzdGF0aWMgTlNT
dHJpbmcgKiBjb25zdCBXZWJLaXRMb2dDb29raWVJbmZvcm1hdGlvbkRlZmF1bHRzS2V5ID0gQCJX
ZWJLaXRMb2dDb29raWVJbmZvcm1hdGlvbiI7CisgICAgc2hvdWxkTG9nQ29va2llSW5mb3JtYXRp
b24gPSBbZGVmYXVsdHMgYm9vbEZvcktleTpXZWJLaXRMb2dDb29raWVJbmZvcm1hdGlvbkRlZmF1
bHRzS2V5XTsKICNlbmRpZgorI2VuZGlmIC8vIEVOQUJMRShSRVNPVVJDRV9MT0FEX1NUQVRJU1RJ
Q1MpCiAKICAgICBVUkwgaHR0cFByb3h5ID0gbV9jb25maWd1cmF0aW9uLT5odHRwUHJveHkoKTsK
ICAgICBVUkwgaHR0cHNQcm94eSA9IG1fY29uZmlndXJhdGlvbi0+aHR0cHNQcm94eSgpOwpAQCAt
ODgsNiArMTA3LDcgQEAgV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMgV2Vic2l0ZURhdGFTdG9y
ZTo6cGFyYW1ldGVycygpCiAgICAgaWYgKCFyZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5
LmlzRW1wdHkoKSkKICAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yUmVh
ZFdyaXRlRGlyZWN0b3J5KHJlc291cmNlTG9hZFN0YXRpc3RpY3NEaXJlY3RvcnksIHJlc291cmNl
TG9hZFN0YXRpc3RpY3NEaXJlY3RvcnlIYW5kbGUpOwogCisgICAgYm9vbCBzaG91bGRJbmNsdWRl
TG9jYWxob3N0SW5SZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gaXNTYWZhcmk7CiAgICAgV2Vic2l0
ZURhdGFTdG9yZVBhcmFtZXRlcnMgcGFyYW1ldGVyczsKICAgICBwYXJhbWV0ZXJzLm5ldHdvcmtT
ZXNzaW9uUGFyYW1ldGVycyA9IHsKICAgICAgICAgbV9zZXNzaW9uSUQsCkBAIC0xMDMsNyArMTIz
LDkgQEAgV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMgV2Vic2l0ZURhdGFTdG9yZTo6cGFyYW1l
dGVycygpCiAgICAgICAgIFdURk1vdmUocmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeSks
CiAgICAgICAgIFdURk1vdmUocmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeUhhbmRsZSks
CiAgICAgICAgIGZhbHNlLAotICAgICAgICBpc1NhZmFyaQorICAgICAgICBzaG91bGRJbmNsdWRl
TG9jYWxob3N0SW5SZXNvdXJjZUxvYWRTdGF0aXN0aWNzLAorICAgICAgICBlbmFibGVSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlLAorICAgICAgICBXVEZNb3ZlKHJlc291cmNlTG9hZFN0
YXRpc3RpY3NNYW51YWxQcmV2YWxlbnRSZXNvdXJjZSkKICAgICB9OwogICAgIGZpbmFsaXplQXBw
bGljYXRpb25JZGVudGlmaWVycygpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktp
dC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBiZGU5Y2FiNDUzNmIzY2IzMTk0YzkyMDIxYmJjNTYz
YWY2M2JiZDJhLi44MGJjMmUxNjljYjVlNWFlOTQxNTI3ZjVkZjlhMDlkMDNmNWQ1YWFlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTM1
NjgsNyArMzU2OCw2IEBACiAJCTdBQjZFQTQ2MUVFQUI2QjAwMDAzN0IyQiAvKiBBUElHZW9sb2Nh
dGlvblByb3ZpZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFQSUdlb2xv
Y2F0aW9uUHJvdmlkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0FDRTgyRTcy
MjFDQUUwNjAwMERBOTRDIC8qIFJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaDsg
cGF0aCA9IENsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdBQ0U4MkU4MjIxQ0FFMDcwMDBEQTk0QyAvKiBSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcDsgcGF0aCA9IENsYXNzaWZpZXIv
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKLQkJN0FDRTgyRTkyMjFERTcyMjAwMERBOTRDIC8qIFJlc291cmNlTG9hZFN0YXRpc3RpY3NT
dG9yZUNvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c1N0b3JlQ29jb2EubW07IHBhdGggPSBDbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NT
dG9yZUNvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QUYyMzYxRTFFNzlB
M0I0MDA0MzhBMDUgLyogV2ViRXJyb3JzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFdlYkVycm9ycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdB
RjIzNjFGMUU3OUEzRDgwMDQzOEEwNSAvKiBXZWJFcnJvcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gV2ViRXJyb3JzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTdBRjIzNjIyMUU3OUE0MzEwMDQzOEEwNSAvKiBXZWJFcnJvcnNDb2NvYS5tbSAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkVycm9yc0NvY29hLm1tOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwpAQCAtNjk3Miw3ICs2OTcxLDYgQEAKIAkJCQk3QUZCRDM2ODIx
RTU0MkU4MDA1REJBQ0IgLyogUmVzb3VyY2VMb2FkU3RhdGlzdGljc1BlcnNpc3RlbnRTdG9yYWdl
LmggKi8sCiAJCQkJN0FDRTgyRTgyMjFDQUUwNzAwMERBOTRDIC8qIFJlc291cmNlTG9hZFN0YXRp
c3RpY3NTdG9yZS5jcHAgKi8sCiAJCQkJN0FDRTgyRTcyMjFDQUUwNjAwMERBOTRDIC8qIFJlc291
cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oICovLAotCQkJCTdBQ0U4MkU5MjIxREU3MjIwMDBEQTk0
QyAvKiBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmVDb2NvYS5tbSAqLywKIAkJCQk3QTQxRTlG
QTIxRjgxREFDMDBCODhDREIgLyogU2hvdWxkR3JhbmRmYXRoZXJTdGF0aXN0aWNzLmggKi8sCiAJ
CQkJN0EzRkVDQTEyMUY3QzA5NzAwRjI2N0NEIC8qIFN0b3JhZ2VBY2Nlc3NTdGF0dXMuaCAqLywK
IAkJCQk3QTg0M0ExQTIxRTQxRkIyMDBERUY2NjMgLyogV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c1N0b3JlLmNwcCAqLywK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>364331</attachid>
            <date>2019-03-11 18:38:40 -0700</date>
            <delta_ts>2019-03-11 19:16:47 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-195117-20190311183839.patch</filename>
            <type>text/plain</type>
            <size>26462</size>
            <attacher name="John Wilander">wilander</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQyNzEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDE0NzNjMmEwZmVmYTQ3MmY2
MzAxYTUxOTYwYzRkYzk4OGYwZTM0MjcuLmNiNmQ4MTQ3NDJhODFkMWMyNDI0MzFkYWRjYWVkNTQ3
ZmVkNDU3YmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTEgQEAKKzIwMTktMDMtMTEgIEpvaG4gV2ls
YW5kZXIgIDx3aWxhbmRlckBhcHBsZS5jb20+CisKKyAgICAgICAgTW92ZSBOZXR3b3JrUHJvY2Vz
cy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZUNvY29hLm1tIGZ1bmN0aW9u
YWxpdHkgaW50byBVSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNv
Y29hLm1tCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
OTUxMTcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ4NDQ4NzE1PgorCisgICAgICAgIFJldmll
d2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisKKyAgICAgICAgUmVhZGluZyBvZiB1c2VyIGRlZmF1bHRz
IG9uIENvY29hIHBsYXRmb3JtcyBzaG91bGQgYmUgZG9uZSBpbiB0aGUgVUkgcHJvY2VzcyBhbmQK
KyAgICAgICAgZm9yd2FyZGVkIHRvIFJlc291cmNlIExvYWQgU3RhdGlzdGljcyBpbiB0aGUgbmV0
d29yayBwcm9jZXNzIHRocm91Z2ggdGhlCisgICAgICAgIFdlYktpdDo6TmV0d29ya1Nlc3Npb25D
cmVhdGlvblBhcmFtZXRlcnMgc3RydWN0LgorCisgICAgICAgIFRoaXMgcGF0Y2ggZG9lcyBhd2F5
IHdpdGggc29tZSBvbGQgdXNlciBkZWZhdWx0cyB3ZSBkb24ndCB1c2UgYW55bW9yZS4gSXQgYWxz
bworICAgICAgICBjaGFuZ2VzIHRoZSBkZXZlbG9wZXItZmFjaW5nIGRlZmF1bHQgbmFtZSB0byBJ
VFBNYW51YWxQcmV2YWxlbnRSZXNvdXJjZS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL0Ns
YXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmUuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZTo6UmVzb3VyY2VM
b2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmUpOgorICAgICAgICAgICAgUmVtb3ZlZCB0aGUgY2Fs
bCB0byB0aGUgb2xkIHJlZ2lzdGVyVXNlckRlZmF1bHRzSWZOZWVkZWQoKS4KKyAgICAgICAgKiBO
ZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NNZW1vcnlTdG9y
ZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJlc291cmNlTG9hZFN0YXRpc3RpY3NNZW1vcnlTdG9y
ZTo6UmVzb3VyY2VMb2FkU3RhdGlzdGljc01lbW9yeVN0b3JlKToKKyAgICAgICAgICAgIFJlbW92
ZWQgdGhlIGNhbGwgdG8gdGhlIG9sZCByZWdpc3RlclVzZXJEZWZhdWx0c0lmTmVlZGVkKCkuCisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNz
U3RvcmUuaDoKKyAgICAgICAgICAgIFJlbW92ZWQgdGhlIGRlY2xhcmF0aW9uIG9mIHRoZSBvbGQg
cmVnaXN0ZXJVc2VyRGVmYXVsdHNJZk5lZWRlZCgpLgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNz
L0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlQ29jb2EubW06IFJlbW92ZWQu
CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzU3RvcmUuaDoKKyAgICAgICAgICAgIEFkZGVkIGFuIGVudW0gY2xhc3MgRW5hYmxlUmVz
b3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZS4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrU2Vzc2lvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTZXNzaW9uOjpzZXRS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mv
TmV0d29ya1Nlc3Npb24uaDoKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lv
bkNyZWF0aW9uUGFyYW1ldGVycy5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTZXNzaW9u
Q3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycy5oOgorICAgICAgICAgICBU
aGUgc3RydWN0IG5vdyBoYXMgdHdvIG5ldyBmaWVsZHM6CisgICAgICAgICAgIC0gZW5hYmxlUmVz
b3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZQorICAgICAgICAgICAtIHJlc291cmNlTG9hZFN0
YXRpc3RpY3NNYW51YWxQcmV2YWxlbnRSZXNvdXJjZQorICAgICAgICAqIE5ldHdvcmtQcm9jZXNz
L2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtT
ZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EpOgorICAgICAgICAgICAgRm9yd2FyZGlu
ZyBvZiB0aGUgcGFyYW1ldGVycy4KKyAgICAgICAgKiBTb3VyY2VzQ29jb2EudHh0OgorICAgICAg
ICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBy
b2Nlc3NQb29sOjplbnN1cmVOZXR3b3JrUHJvY2Vzcyk6CisgICAgICAgICAgICBGb3J3YXJkaW5n
IG9mIHRoZSBwYXJhbWV0ZXJzLgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2Nv
YS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRh
U3RvcmU6OnBhcmFtZXRlcnMpOgorICAgICAgICAgICAgVGhpcyBpcyB3aGVyZSB1c2VyIGRlZmF1
bHRzIGZvciBSZXNvdXJjZSBMb2FkIFN0YXRpc3RpY3MgYXJlIG5vdyByZWFkLgorICAgICAgICAq
IFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorCiAyMDE5LTAzLTExICBKb2huIFdp
bGFuZGVyICA8d2lsYW5kZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJlc291cmNlIExvYWQgU3Rh
dGlzdGljczogTWFrZSBpdCBwb3NzaWJsZSBleGNsdWRlIGxvY2FsaG9zdCBmcm9tIGNsYXNzaWZp
Y2F0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZp
ZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmUuY3BwIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFz
ZVN0b3JlLmNwcAppbmRleCAzYjZlZTVjOGU2MGY4NzdjNjQyNmQzZmYxYTZiNzIwNGM2Yzc4ZTBm
Li43MTg5OGNmNWExZWVjNTJiZjRhN2VmYzY4ZDc5ZTBhMGExYmE3NWZlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlz
dGljc0RhdGFiYXNlU3RvcmUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
Q2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YWJhc2VTdG9yZS5jcHAKQEAgLTE5
NCwxMCArMTk0LDYgQEAgUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6OlJlc291
cmNlTG9hZFN0YXRpc3RpY3NEYXRhYmFzZVN0b3JlKFdlYlJlc28KIHsKICAgICBBU1NFUlQoIVJ1
bkxvb3A6OmlzTWFpbigpKTsKIAotI2lmIFBMQVRGT1JNKENPQ09BKQotICAgIHJlZ2lzdGVyVXNl
ckRlZmF1bHRzSWZOZWVkZWQoKTsKLSNlbmRpZgotCiAgICAgaWYgKCFtX2RhdGFiYXNlLm9wZW4o
bV9zdG9yYWdlRGlyZWN0b3J5UGF0aCkpIHsKICAgICAgICAgUkVMRUFTRV9MT0dfRVJST1IoTmV0
d29yaywgIiVwIC0gUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFiYXNlU3RvcmU6Om9wZW4gZmFp
bGVkLCBlcnJvciBtZXNzYWdlOiAle3B1YmxpY31zLCBkYXRhYmFzZSBwYXRoOiAle3B1YmxpY31z
IiwgdGhpcywgbV9kYXRhYmFzZS5sYXN0RXJyb3JNc2coKSwgbV9zdG9yYWdlRGlyZWN0b3J5UGF0
aC51dGY4KCkuZGF0YSgpKTsKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2Fk
U3RhdGlzdGljc01lbW9yeVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
Q2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWVtb3J5U3RvcmUuY3BwCmluZGV4IGZi
Zjk3NzQ4MTFkNmY3ZDA1M2ZjYTkzZDNjY2MyNzczZmNlMWI1YjUuLmYzNmI2OTQ3ZTM4YjhmZTU0
OTRhNWVjYTQ5NjU3NTQ1ZjY2ZTZmZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWVtb3J5U3RvcmUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxv
YWRTdGF0aXN0aWNzTWVtb3J5U3RvcmUuY3BwCkBAIC03MiwxMCArNzIsNiBAQCBSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzTWVtb3J5U3RvcmU6OlJlc291cmNlTG9hZFN0YXRpc3RpY3NNZW1vcnlTdG9y
ZShXZWJSZXNvdXJjZQogewogICAgIEFTU0VSVCghUnVuTG9vcDo6aXNNYWluKCkpOwogCi0jaWYg
UExBVEZPUk0oQ09DT0EpCi0gICAgcmVnaXN0ZXJVc2VyRGVmYXVsdHNJZk5lZWRlZCgpOwotI2Vu
ZGlmCi0KICAgICB3b3JrUXVldWUuZGlzcGF0Y2hBZnRlcig1X3MsIFt3ZWFrVGhpcyA9IG1ha2VX
ZWFrUHRyKCp0aGlzKV0gewogICAgICAgICBpZiAod2Vha1RoaXMpCiAgICAgICAgICAgICB3ZWFr
VGhpcy0+Y2FsY3VsYXRlQW5kU3VibWl0VGVsZW1ldHJ5KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0
b3JlLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VM
b2FkU3RhdGlzdGljc1N0b3JlLmgKaW5kZXggYWZmNTc1ZGZlNjI4M2E5Njc1MGYxMmFlZDgzMTk0
NTIwNjgyY2M0OS4uOWYzZTMwYWVjODkzNzlmMTIyNjA3NWY0NTg1NjZhYTA3OTU0YjRkYiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNl
TG9hZFN0YXRpc3RpY3NTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
Q2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaApAQCAtMTkwLDkgKzE5MCw2
IEBAIHByb3RlY3RlZDoKIAogICAgIGJvb2wgaGFzU3RhdGlzdGljc0V4cGlyZWQoY29uc3QgUmVz
b3VyY2VMb2FkU3RhdGlzdGljcyYpIGNvbnN0OwogICAgIGJvb2wgaGFzU3RhdGlzdGljc0V4cGly
ZWQoV2FsbFRpbWUgbW9zdFJlY2VudFVzZXJJbnRlcmFjdGlvblRpbWUpIGNvbnN0OwotI2lmIFBM
QVRGT1JNKENPQ09BKQotICAgIHZvaWQgcmVnaXN0ZXJVc2VyRGVmYXVsdHNJZk5lZWRlZCgpOwot
I2VuZGlmCiAgICAgdm9pZCBzY2hlZHVsZVN0YXRpc3RpY3NQcm9jZXNzaW5nUmVxdWVzdElmTmVj
ZXNzYXJ5KCk7CiAgICAgdm9pZCBtZXJnZU9wZXJhdGluZ0RhdGVzKFZlY3RvcjxPcGVyYXRpbmdE
YXRlPiYmKTsKICAgICB2aXJ0dWFsIFZlY3RvcjxSZWdpc3RyYWJsZURvbWFpbj4gZW5zdXJlUHJl
dmFsZW50UmVzb3VyY2VzRm9yRGVidWdNb2RlKCkgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9y
ZUNvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1Jlc291
cmNlTG9hZFN0YXRpc3RpY3NTdG9yZUNvY29hLm1tCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBmOWY3ZThmMGEyMGRhZmVhOWFiMjllNjA3MDc4ZWYxNTdmYjJiYmRjLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmVDb2NvYS5tbQor
KysgL2Rldi9udWxsCkBAIC0xLDgwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTct
MjAxOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbXBvcnQg
ImNvbmZpZy5oIgotI2ltcG9ydCAiUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmgiCi0KLSNp
ZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQotCi0jaW1wb3J0IDxXZWJDb3JlL1Jl
Z2lzdHJhYmxlRG9tYWluLmg+Ci0jaW1wb3J0IDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+Ci0j
aW1wb3J0IDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KLQotbmFtZXNwYWNlIFdlYktpdCB7Ci0KLXZv
aWQgUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpyZWdpc3RlclVzZXJEZWZhdWx0c0lmTmVl
ZGVkKCkKLXsKLSAgICBzdGF0aWMgZGlzcGF0Y2hfb25jZV90IGluaXRPbmNlOwotCi0gICAgZGlz
cGF0Y2hfb25jZSgmaW5pdE9uY2UsIF57Ci0gICAgICAgIFNlY29uZHMgdGltZVRvTGl2ZVVzZXJJ
bnRlcmFjdGlvbihbW05TVXNlckRlZmF1bHRzIHN0YW5kYXJkVXNlckRlZmF1bHRzXSBkb3VibGVG
b3JLZXk6QCJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGltZVRvTGl2ZVVzZXJJbnRlcmFjdGlvbiJd
KTsKLSAgICAgICAgaWYgKHRpbWVUb0xpdmVVc2VySW50ZXJhY3Rpb24gPiAwX3MgJiYgdGltZVRv
TGl2ZVVzZXJJbnRlcmFjdGlvbiA8PSAyNF9oICogMzApCi0gICAgICAgICAgICBzZXRUaW1lVG9M
aXZlVXNlckludGVyYWN0aW9uKHRpbWVUb0xpdmVVc2VySW50ZXJhY3Rpb24pOwotCi0gICAgICAg
IFNlY29uZHMgbWluaW11bVRpbWVCZXR3ZWVuRGF0YVJlY29yZHNSZW1vdmFsKFtbTlNVc2VyRGVm
YXVsdHMgc3RhbmRhcmRVc2VyRGVmYXVsdHNdIGRvdWJsZUZvcktleTpAIlJlc291cmNlTG9hZFN0
YXRpc3RpY3NNaW5pbXVtVGltZUJldHdlZW5EYXRhUmVjb3Jkc1JlbW92YWwiXSk7Ci0gICAgICAg
IGlmIChtaW5pbXVtVGltZUJldHdlZW5EYXRhUmVjb3Jkc1JlbW92YWwgPiAwX3MgJiYgbWluaW11
bVRpbWVCZXR3ZWVuRGF0YVJlY29yZHNSZW1vdmFsIDwgMV9oKQotICAgICAgICAgICAgc2V0TWlu
aW11bVRpbWVCZXR3ZWVuRGF0YVJlY29yZHNSZW1vdmFsKG1pbmltdW1UaW1lQmV0d2VlbkRhdGFS
ZWNvcmRzUmVtb3ZhbCk7Ci0KLSAgICAgICAgU2Vjb25kcyBncmFuZGZhdGhlcmluZ1RpbWUoW1tO
U1VzZXJEZWZhdWx0cyBzdGFuZGFyZFVzZXJEZWZhdWx0c10gZG91YmxlRm9yS2V5OkAiUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc0dyYW5kZmF0aGVyaW5nVGltZSJdKTsKLSAgICAgICAgaWYgKGdyYW5k
ZmF0aGVyaW5nVGltZSA+IDBfcyAmJiBncmFuZGZhdGhlcmluZ1RpbWUgPD0gMjRfaCAqIDcpCi0g
ICAgICAgICAgICBzZXRHcmFuZGZhdGhlcmluZ1RpbWUoZ3JhbmRmYXRoZXJpbmdUaW1lKTsKLQot
ICAgICAgICBzZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlKFtbTlNVc2VyRGVmYXVs
dHMgc3RhbmRhcmRVc2VyRGVmYXVsdHNdIGJvb2xGb3JLZXk6QCJJdHBEZWJ1Z01vZGUiXSk7Ci0g
ICAgICAgIGF1dG8qIGRlYnVnTWFudWFsUHJldmFsZW50UmVzb3VyY2UgPSBbW05TVXNlckRlZmF1
bHRzIHN0YW5kYXJkVXNlckRlZmF1bHRzXSBzdHJpbmdGb3JLZXk6QCJJdHBNYW51YWxQcmV2YWxl
bnRSZXNvdXJjZSJdOwotICAgICAgICBpZiAoZGVidWdNYW51YWxQcmV2YWxlbnRSZXNvdXJjZSkg
ewotICAgICAgICAgICAgVVJMIHVybCB7IFVSTCgpLCBkZWJ1Z01hbnVhbFByZXZhbGVudFJlc291
cmNlIH07Ci0gICAgICAgICAgICBpZiAoIXVybC5pc1ZhbGlkKCkpIHsKLSAgICAgICAgICAgICAg
ICBTdHJpbmdCdWlsZGVyIGJ1aWxkZXI7Ci0gICAgICAgICAgICAgICAgYnVpbGRlci5hcHBlbmRM
aXRlcmFsKCJodHRwOi8vIik7Ci0gICAgICAgICAgICAgICAgYnVpbGRlci5hcHBlbmQoZGVidWdN
YW51YWxQcmV2YWxlbnRSZXNvdXJjZSk7Ci0gICAgICAgICAgICAgICAgdXJsID0geyBVUkwoKSwg
YnVpbGRlci50b1N0cmluZygpIH07Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAodXJs
LmlzVmFsaWQoKSkKLSAgICAgICAgICAgICAgICBzZXRQcmV2YWxlbnRSZXNvdXJjZUZvckRlYnVn
TW9kZShSZWdpc3RyYWJsZURvbWFpbiB7IHVybCB9KTsKLSAgICAgICAgfQotCi0gICAgICAgIFNl
Y29uZHMgY2FjaGVNYXhBZ2VDYXBGb3JQcmV2YWxlbnRSZXNvdXJjZXMoW1tOU1VzZXJEZWZhdWx0
cyBzdGFuZGFyZFVzZXJEZWZhdWx0c10gZG91YmxlRm9yS2V5OkAiUmVzb3VyY2VMb2FkU3RhdGlz
dGljc0NhY2hlTWF4QWdlQ2FwIl0pOwotICAgICAgICBpZiAoY2FjaGVNYXhBZ2VDYXBGb3JQcmV2
YWxlbnRSZXNvdXJjZXMgPiAwX3MgJiYgY2FjaGVNYXhBZ2VDYXBGb3JQcmV2YWxlbnRSZXNvdXJj
ZXMgPD0gMjRfaCAqIDM2NSkKLSAgICAgICAgICAgIHNldENhY2hlTWF4QWdlQ2FwKGNhY2hlTWF4
QWdlQ2FwRm9yUHJldmFsZW50UmVzb3VyY2VzKTsKLSAgICAgICAgCi0gICAgICAgIFNlY29uZHMg
Y2xpZW50U2lkZUNvb2tpZXNBZ2VDYXAoW1tOU1VzZXJEZWZhdWx0cyBzdGFuZGFyZFVzZXJEZWZh
dWx0c10gZG91YmxlRm9yS2V5OkAiUmVzb3VyY2VMb2FkU3RhdGlzdGljc0NsaWVudFNpZGVDb29r
aWVzQWdlQ2FwIl0pOwotICAgICAgICBpZiAoY2xpZW50U2lkZUNvb2tpZXNBZ2VDYXAgPiAwX3Mg
JiYgY2xpZW50U2lkZUNvb2tpZXNBZ2VDYXAgPD0gMjRfaCAqIDM2NSkKLSAgICAgICAgICAgIHNl
dEFnZUNhcEZvckNsaWVudFNpZGVDb29raWVzKGNsaWVudFNpZGVDb29raWVzQWdlQ2FwKTsKLSAg
ICB9KTsKLX0KLQotfQotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzU3RvcmUuaAppbmRleCA4MTQ3ZTY2ZGZjOTllZWJhZTc0NTUxMDA1ZDQ3YTk0YTMwM2Fk
ZDVhLi42YWIxNjVjNDYyNzBjZThjMDUyMTcwYzEzYzUyNDQ0Y2ZhYjc2ZDljIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2Fk
U3RhdGlzdGljc1N0b3JlLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFz
c2lmaWVyL1dlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oCkBAIC01OSw2ICs1OSw3IEBA
IGNsYXNzIFdlYkZyYW1lUHJveHk7CiBjbGFzcyBXZWJQcm9jZXNzUHJveHk7CiBlbnVtIGNsYXNz
IFNob3VsZEdyYW5kZmF0aGVyU3RhdGlzdGljcyA6IGJvb2w7CiBlbnVtIGNsYXNzIFNob3VsZElu
Y2x1ZGVMb2NhbGhvc3QgOiBib29sIHsgTm8sIFllcyB9OworZW51bSBjbGFzcyBFbmFibGVSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlIDogYm9vbCB7IE5vLCBZZXMgfTsKIAogY2xhc3Mg
V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlIGZpbmFsIDogcHVibGljIFRocmVhZFNhZmVS
ZWZDb3VudGVkPFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZSwgV1RGOjpEZXN0cnVjdGlv
blRocmVhZDo6TWFpbj4sIHB1YmxpYyBJUEM6Ok1lc3NhZ2VSZWNlaXZlciB7CiBwdWJsaWM6CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uLmNw
cCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb24uY3BwCmluZGV4
IDI2MDczMmQxNGI1YmM3ZjA4ODE5MTU4OTBhN2I1YjA2OGYwYzE5MzMuLmEwYjA2NWM4MWQ3YTcw
MDFhODUwYjAzNzBiNDQzYTNjYTUxNzk0OTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvTmV0d29ya1Nlc3Npb24uY3BwCkBAIC0xMDAsNiArMTAwLDEyIEBAIHZvaWQgTmV0
d29ya1Nlc3Npb246OnNldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKGJvb2wgZW5hYmxl
KQogICAgICAgICByZXR1cm47CiAKICAgICBtX3Jlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBXZWJS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6OmNyZWF0ZSgqdGhpcywgbV9yZXNvdXJjZUxvYWRT
dGF0aXN0aWNzRGlyZWN0b3J5LCBtX3Nob3VsZEluY2x1ZGVMb2NhbGhvc3RJblJlc291cmNlTG9h
ZFN0YXRpc3RpY3MpOworCisgICAgaWYgKG1fZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0Rl
YnVnTW9kZSA9PSBFbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlOjpZZXMpCisg
ICAgICAgIG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0RlYnVnTW9kZSh0cnVlLCBbXSB7IH0pOworICAgIC8vIFRoaXMgc2hvdWxkIGFsd2F5cyBiZSBm
b3J3YXJkZWQgc2luY2UgZGVidWcgbW9kZSBtYXkgYmUgZW5hYmxlZCBhdCBydW50aW1lLgorICAg
IGlmICghbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWFudWFsUHJldmFsZW50UmVzb3VyY2UuaXNF
bXB0eSgpKQorICAgICAgICBtX3Jlc291cmNlTG9hZFN0YXRpc3RpY3MtPnNldFByZXZhbGVudFJl
c291cmNlRm9yRGVidWdNb2RlKG1fcmVzb3VyY2VMb2FkU3RhdGlzdGljc01hbnVhbFByZXZhbGVu
dFJlc291cmNlLCBbXSB7IH0pOwogfQogCiB2b2lkIE5ldHdvcmtTZXNzaW9uOjpub3RpZnlSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzUHJvY2Vzc2VkKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb24uaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvTmV0d29ya1Nlc3Npb24uaAppbmRleCA1NjYxN2NiYjFkOGEyNTgwNmFiMjJlNTdlZTQz
MjVlYmJlMGExZGQ1Li5kYjc4OTY0NDBhMzNjMGE4ZmEwNzA4N2QwMDkyZjE3Yjk2NjVlMTUwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uLmgK
KysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbi5oCkBAIC05
Myw2ICs5Myw4IEBAIHByb3RlY3RlZDoKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNU
SUNTKQogICAgIFJlZlB0cjxXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU+IG1fcmVzb3Vy
Y2VMb2FkU3RhdGlzdGljczsKICAgICBTaG91bGRJbmNsdWRlTG9jYWxob3N0IG1fc2hvdWxkSW5j
bHVkZUxvY2FsaG9zdEluUmVzb3VyY2VMb2FkU3RhdGlzdGljcyB7IFNob3VsZEluY2x1ZGVMb2Nh
bGhvc3Q6OlllcyB9OworICAgIEVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGUg
bV9lbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlIHsgRW5hYmxlUmVzb3VyY2VM
b2FkU3RhdGlzdGljc0RlYnVnTW9kZTo6Tm8gfTsKKyAgICBXZWJDb3JlOjpSZWdpc3RyYWJsZURv
bWFpbiBtX3Jlc291cmNlTG9hZFN0YXRpc3RpY3NNYW51YWxQcmV2YWxlbnRSZXNvdXJjZTsKICNl
bmRpZgogICAgIFVuaXF1ZVJlZjxOZXR3b3JrQWRDbGlja0F0dHJpYnV0aW9uPiBtX2FkQ2xpY2tB
dHRyaWJ1dGlvbjsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L05ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMuY3BwCmluZGV4IDA4
MTJhMzE3YmU5YmU0OGRiYmU4OGY1NDljNDNiNDdmOTExZTgwYjkuLmQ0ZGU0NzRlZWFmNDNiMzZi
ODM2OWUyM2I4ZWY2YzI0MzI1NDhjZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMu
Y3BwCkBAIC04MCw2ICs4MCw4IEBAIHZvaWQgTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRl
cnM6OmVuY29kZShJUEM6OkVuY29kZXImIGVuY29kZXIpIGNvbnN0CiAgICAgZW5jb2RlciA8PCBy
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIGVuY29k
ZXIgPDwgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljczsKICAgICBlbmNvZGVyIDw8IHNob3Vs
ZEluY2x1ZGVMb2NhbGhvc3RJblJlc291cmNlTG9hZFN0YXRpc3RpY3M7CisgICAgZW5jb2RlciA8
PCBlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlOworICAgIGVuY29kZXIgPDwg
cmVzb3VyY2VMb2FkU3RhdGlzdGljc01hbnVhbFByZXZhbGVudFJlc291cmNlOwogfQogCiBPcHRp
b25hbDxOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycz4gTmV0d29ya1Nlc3Npb25DcmVh
dGlvblBhcmFtZXRlcnM6OmRlY29kZShJUEM6OkRlY29kZXImIGRlY29kZXIpCkBAIC0xNzgsNiAr
MTgwLDE2IEBAIE9wdGlvbmFsPE5ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzPiBOZXR3
b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVyczo6ZGVjCiAgICAgaWYgKCFzaG91bGRJbmNsdWRl
TG9jYWxob3N0SW5SZXNvdXJjZUxvYWRTdGF0aXN0aWNzKQogICAgICAgICByZXR1cm4gV1RGOjpu
dWxsb3B0OwogCisgICAgT3B0aW9uYWw8Ym9vbD4gZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0RlYnVnTW9kZTsKKyAgICBkZWNvZGVyID4+IGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3NE
ZWJ1Z01vZGU7CisgICAgaWYgKCFlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2Rl
KQorICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAgT3B0aW9uYWw8V2ViQ29yZTo6
UmVnaXN0cmFibGVEb21haW4+IHJlc291cmNlTG9hZFN0YXRpc3RpY3NNYW51YWxQcmV2YWxlbnRS
ZXNvdXJjZTsKKyAgICBkZWNvZGVyID4+IHJlc291cmNlTG9hZFN0YXRpc3RpY3NNYW51YWxQcmV2
YWxlbnRSZXNvdXJjZTsKKyAgICBpZiAoIXJlc291cmNlTG9hZFN0YXRpc3RpY3NNYW51YWxQcmV2
YWxlbnRSZXNvdXJjZSkKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKwogICAgIHJldHVy
biB7ewogICAgICAgICBzZXNzaW9uSUQKICAgICAgICAgLCBXVEZNb3ZlKCpib3VuZEludGVyZmFj
ZUlkZW50aWZpZXIpCkBAIC0yMDMsNiArMjE1LDggQEAgT3B0aW9uYWw8TmV0d29ya1Nlc3Npb25D
cmVhdGlvblBhcmFtZXRlcnM+IE5ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWMK
ICAgICAgICAgLCBXVEZNb3ZlKCpyZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5RXh0ZW5z
aW9uSGFuZGxlKQogICAgICAgICAsIFdURk1vdmUoKmVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3Rp
Y3MpCiAgICAgICAgICwgV1RGTW92ZSgqc2hvdWxkSW5jbHVkZUxvY2FsaG9zdEluUmVzb3VyY2VM
b2FkU3RhdGlzdGljcykKKyAgICAgICAgLCBXVEZNb3ZlKCplbmFibGVSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzRGVidWdNb2RlKQorICAgICAgICAsIFdURk1vdmUoKnJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NNYW51YWxQcmV2YWxlbnRSZXNvdXJjZSkKICAgICB9fTsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVy
cy5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbkNyZWF0aW9u
UGFyYW1ldGVycy5oCmluZGV4IDdjNWNlNzAyNGFlZDZiNTAzZjFkNjVkZDc1NjUzYzQ1NjM5NzU1
NWYuLmE0MzRkYWY2ZTFjZjk0MjhkYmJkZmNmZTJiNWI5YTdmZThiYzQ1NDYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFt
ZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9u
Q3JlYXRpb25QYXJhbWV0ZXJzLmgKQEAgLTI2LDYgKzI2LDcgQEAKICNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSAiU2FuZGJveEV4dGVuc2lvbi5oIgorI2luY2x1ZGUgPFdlYkNvcmUvUmVnaXN0cmFi
bGVEb21haW4uaD4KICNpbmNsdWRlIDxwYWwvU2Vzc2lvbklELmg+CiAjaW5jbHVkZSA8d3RmL1Nl
Y29uZHMuaD4KICNpbmNsdWRlIDx3dGYvVVJMLmg+CkBAIC04Miw2ICs4Myw4IEBAIHN0cnVjdCBO
ZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycyB7CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6
SGFuZGxlIHJlc291cmNlTG9hZFN0YXRpc3RpY3NEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAg
ICAgYm9vbCBlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzIHsgZmFsc2UgfTsKICAgICBib29s
IHNob3VsZEluY2x1ZGVMb2NhbGhvc3RJblJlc291cmNlTG9hZFN0YXRpc3RpY3MgeyB0cnVlIH07
CisgICAgYm9vbCBlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlIHsgZmFsc2Ug
fTsKKyAgICBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiByZXNvdXJjZUxvYWRTdGF0aXN0aWNz
TWFudWFsUHJldmFsZW50UmVzb3VyY2UgeyB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtT
ZXNzaW9uQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdv
cmtTZXNzaW9uQ29jb2EubW0KaW5kZXggZWMzYmY0MTRkNWZjMzg3YjhkNWJhNDIzNjMwNzljNDYy
NzM3NGUwYy4uYmZhMmViZDNiZTMyNjlhY2I5ZGFmNmE3ZDRiNDg2OGZlODE3ZmRkMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNv
Y29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nl
c3Npb25Db2NvYS5tbQpAQCAtOTQ5LDYgKzk0OSw4IEBAIE5ldHdvcmtTZXNzaW9uQ29jb2E6Ok5l
dHdvcmtTZXNzaW9uQ29jb2EoTmV0d29ya1Byb2Nlc3MmIG5ldHdvcmtQcm9jZXNzLCBOZXR3b3Jr
CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKICAgICBtX3Jlc291cmNlTG9h
ZFN0YXRpc3RpY3NEaXJlY3RvcnkgPSBwYXJhbWV0ZXJzLnJlc291cmNlTG9hZFN0YXRpc3RpY3NE
aXJlY3Rvcnk7CiAgICAgbV9zaG91bGRJbmNsdWRlTG9jYWxob3N0SW5SZXNvdXJjZUxvYWRTdGF0
aXN0aWNzID0gcGFyYW1ldGVycy5zaG91bGRJbmNsdWRlTG9jYWxob3N0SW5SZXNvdXJjZUxvYWRT
dGF0aXN0aWNzID8gU2hvdWxkSW5jbHVkZUxvY2FsaG9zdDo6WWVzIDogU2hvdWxkSW5jbHVkZUxv
Y2FsaG9zdDo6Tm87CisgICAgbV9lbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2Rl
ID0gcGFyYW1ldGVycy5lbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlID8gRW5h
YmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZTo6WWVzIDogRW5hYmxlUmVzb3VyY2VM
b2FkU3RhdGlzdGljc0RlYnVnTW9kZTo6Tm87CisgICAgbV9yZXNvdXJjZUxvYWRTdGF0aXN0aWNz
TWFudWFsUHJldmFsZW50UmVzb3VyY2UgPSBwYXJhbWV0ZXJzLnJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NNYW51YWxQcmV2YWxlbnRSZXNvdXJjZTsKICAgICBzZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
RW5hYmxlZChwYXJhbWV0ZXJzLmVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3MpOwogI2VuZGlm
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dCBiL1NvdXJjZS9X
ZWJLaXQvU291cmNlc0NvY29hLnR4dAppbmRleCBjYThlZjhmYWM4M2VkNjg1ODBmMjIyMjJkOTIz
OTA1NzY3NGU5MmE5Li44Y2MyNWE5NjNiYzg5OTM1ZGMyNjM4Yzg3YzAzY2Y4Zjk0MWNkY2QwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50eHQKKysrIGIvU291cmNlL1dl
YktpdC9Tb3VyY2VzQ29jb2EudHh0CkBAIC0yOSw3ICsyOSw2IEBAIE5ldHdvcmtQcm9jZXNzL2Nv
Y29hL05ldHdvcmtEYXRhVGFza0NvY29hLm1tCiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3Jr
UHJvY2Vzc0NvY29hLm1tCiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29h
Lm1tCiAKLU5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0
b3JlQ29jb2EubW0KIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc1N0b3JlLmNwcAogTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzVGVsZW1ldHJ5LmNwcAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUG9vbC5jcHAKaW5kZXggNmQ4ZmU4NjAyOTJkMWJhYTdlMmEwNjgxN2RmMDljNjdiZTRi
ZTk2Zi4uMmEzOWQyZGM1NzE0NjE1ZmMyMjc1OTU2NDU5YWUzNWIzYjY0M2U4OSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcApAQCAtNTc1LDE2ICs1NzUsMzAg
QEAgTmV0d29ya1Byb2Nlc3NQcm94eSYgV2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdvcmtQcm9j
ZXNzKFdlYnNpdGVEYXRhU3RvcmUqIHdpdGgKIAogICAgIGJvb2wgZW5hYmxlUmVzb3VyY2VMb2Fk
U3RhdGlzdGljcyA9IGZhbHNlOwogICAgIGJvb2wgc2hvdWxkSW5jbHVkZUxvY2FsaG9zdCA9IHRy
dWU7CisgICAgYm9vbCBlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlID0gZmFs
c2U7CisgICAgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gbWFudWFsUHJldmFsZW50UmVzb3Vy
Y2UgeyB9OwogICAgIGlmICh3aXRoV2Vic2l0ZURhdGFTdG9yZSkgewogICAgICAgICBlbmFibGVS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gd2l0aFdlYnNpdGVEYXRhU3RvcmUtPnJlc291cmNlTG9h
ZFN0YXRpc3RpY3NFbmFibGVkKCk7Ci0gICAgICAgIHNob3VsZEluY2x1ZGVMb2NhbGhvc3QgPSB3
aXRoV2Vic2l0ZURhdGFTdG9yZS0+cGFyYW1ldGVycygpLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVy
cy5zaG91bGRJbmNsdWRlTG9jYWxob3N0SW5SZXNvdXJjZUxvYWRTdGF0aXN0aWNzOworICAgICAg
ICBpZiAoZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljcykgeworICAgICAgICAgICAgYXV0byBu
ZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMgPSB3aXRoV2Vic2l0ZURhdGFTdG9yZS0+cGFyYW1ldGVy
cygpLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVyczsKKyAgICAgICAgICAgIHNob3VsZEluY2x1ZGVM
b2NhbGhvc3QgPSBuZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMuc2hvdWxkSW5jbHVkZUxvY2FsaG9z
dEluUmVzb3VyY2VMb2FkU3RhdGlzdGljczsKKyAgICAgICAgICAgIGVuYWJsZVJlc291cmNlTG9h
ZFN0YXRpc3RpY3NEZWJ1Z01vZGUgPSBuZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMuZW5hYmxlUmVz
b3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZTsKKyAgICAgICAgICAgIG1hbnVhbFByZXZhbGVu
dFJlc291cmNlID0gbmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLnJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NNYW51YWxQcmV2YWxlbnRSZXNvdXJjZTsKKyAgICAgICAgfQogICAgIH0gZWxzZSBpZiAobV93
ZWJzaXRlRGF0YVN0b3JlKSB7CiAgICAgICAgIGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3Mg
PSBtX3dlYnNpdGVEYXRhU3RvcmUtPnJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKCk7Ci0g
ICAgICAgIHNob3VsZEluY2x1ZGVMb2NhbGhvc3QgPSBtX3dlYnNpdGVEYXRhU3RvcmUtPndlYnNp
dGVEYXRhU3RvcmUoKS5wYXJhbWV0ZXJzKCkubmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLnNob3Vs
ZEluY2x1ZGVMb2NhbGhvc3RJblJlc291cmNlTG9hZFN0YXRpc3RpY3M7CisgICAgICAgIGlmIChl
bmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKSB7CisgICAgICAgICAgICBhdXRvIG5ldHdvcmtT
ZXNzaW9uUGFyYW1ldGVycyA9IG1fd2Vic2l0ZURhdGFTdG9yZS0+d2Vic2l0ZURhdGFTdG9yZSgp
LnBhcmFtZXRlcnMoKS5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnM7CisgICAgICAgICAgICBzaG91
bGRJbmNsdWRlTG9jYWxob3N0ID0gbmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLnNob3VsZEluY2x1
ZGVMb2NhbGhvc3RJblJlc291cmNlTG9hZFN0YXRpc3RpY3M7CisgICAgICAgICAgICBlbmFibGVS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlID0gbmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJz
LmVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGU7CisgICAgICAgICAgICBtYW51
YWxQcmV2YWxlbnRSZXNvdXJjZSA9IG5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5yZXNvdXJjZUxv
YWRTdGF0aXN0aWNzTWFudWFsUHJldmFsZW50UmVzb3VyY2U7CisgICAgICAgIH0KICAgICB9CiAK
ICAgICBwYXJhbWV0ZXJzLmRlZmF1bHREYXRhU3RvcmVQYXJhbWV0ZXJzLm5ldHdvcmtTZXNzaW9u
UGFyYW1ldGVycy5lbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gZW5hYmxlUmVzb3VyY2VM
b2FkU3RhdGlzdGljczsKICAgICBwYXJhbWV0ZXJzLmRlZmF1bHREYXRhU3RvcmVQYXJhbWV0ZXJz
Lm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5zaG91bGRJbmNsdWRlTG9jYWxob3N0SW5SZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzID0gc2hvdWxkSW5jbHVkZUxvY2FsaG9zdDsKKyAgICBwYXJhbWV0ZXJz
LmRlZmF1bHREYXRhU3RvcmVQYXJhbWV0ZXJzLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5lbmFi
bGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlID0gZW5hYmxlUmVzb3VyY2VMb2FkU3Rh
dGlzdGljc0RlYnVnTW9kZTsKKyAgICBwYXJhbWV0ZXJzLmRlZmF1bHREYXRhU3RvcmVQYXJhbWV0
ZXJzLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWFudWFs
UHJldmFsZW50UmVzb3VyY2UgPSBtYW51YWxQcmV2YWxlbnRSZXNvdXJjZTsKIAogICAgIC8vIEFk
ZCBhbnkgcGxhdGZvcm0gc3BlY2lmaWMgcGFyYW1ldGVycwogICAgIHBsYXRmb3JtSW5pdGlhbGl6
ZU5ldHdvcmtQcm9jZXNzKHBhcmFtZXRlcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNv
Y29hLm1tCmluZGV4IGEyODU5NDA1ZmEzNWZkMDBmYzY4NGM3ZGI1MjQyNDI3NjgwMWJlYzAuLmEz
NGQ1N2M3YzllYTQ1MTdiMzA0NThhNjVjYWZjNDNkODk1MDdlOWEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2Nv
YS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJz
aXRlRGF0YVN0b3JlQ29jb2EubW0KQEAgLTMwLDEyICszMCwxNSBAQAogI2ltcG9ydCAiU3RvcmFn
ZU1hbmFnZXIuaCIKICNpbXBvcnQgIldlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oIgog
I2ltcG9ydCAiV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMuaCIKKyNpbXBvcnQgPFdlYkNvcmUv
UmVnaXN0cmFibGVEb21haW4uaD4KICNpbXBvcnQgPFdlYkNvcmUvUnVudGltZUFwcGxpY2F0aW9u
Q2hlY2tzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NlYXJjaFBvcHVwTWVudUNvY29hLmg+CiAjaW1w
b3J0IDxwYWwvc3BpL2NmL0NGTmV0d29ya1NQSS5oPgogI2ltcG9ydCA8d3RmL0ZpbGVTeXN0ZW0u
aD4KICNpbXBvcnQgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogI2ltcG9ydCA8d3RmL1Byb2Nlc3NQ
cml2aWxlZ2UuaD4KKyNpbXBvcnQgPHd0Zi9VUkwuaD4KKyNpbXBvcnQgPHd0Zi90ZXh0L1N0cmlu
Z0J1aWxkZXIuaD4KIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAjaW1wb3J0IDxVSUtpdC9V
SUFwcGxpY2F0aW9uLmg+CkBAIC02MSwxMiArNjQsMjggQEAgV2Vic2l0ZURhdGFTdG9yZVBhcmFt
ZXRlcnMgV2Vic2l0ZURhdGFTdG9yZTo6cGFyYW1ldGVycygpCiAgICAgcmVzb2x2ZURpcmVjdG9y
aWVzSWZOZWNlc3NhcnkoKTsKIAogICAgIE5TVXNlckRlZmF1bHRzICpkZWZhdWx0cyA9IFtOU1Vz
ZXJEZWZhdWx0cyBzdGFuZGFyZFVzZXJEZWZhdWx0c107Ci0jaWYgRU5BQkxFKFJFU09VUkNFX0xP
QURfU1RBVElTVElDUykgJiYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECi0gICAgc3RhdGljIE5TU3Ry
aW5nICogY29uc3QgV2ViS2l0TG9nQ29va2llSW5mb3JtYXRpb25EZWZhdWx0c0tleSA9IEAiV2Vi
S2l0TG9nQ29va2llSW5mb3JtYXRpb24iOwotICAgIGJvb2wgc2hvdWxkTG9nQ29va2llSW5mb3Jt
YXRpb24gPSBbZGVmYXVsdHMgYm9vbEZvcktleTpXZWJLaXRMb2dDb29raWVJbmZvcm1hdGlvbkRl
ZmF1bHRzS2V5XTsKLSNlbHNlCiAgICAgYm9vbCBzaG91bGRMb2dDb29raWVJbmZvcm1hdGlvbiA9
IGZhbHNlOworICAgIGJvb2wgZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZSA9
IGZhbHNlOworICAgIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIHJlc291cmNlTG9hZFN0YXRp
c3RpY3NNYW51YWxQcmV2YWxlbnRSZXNvdXJjZSB7IH07CisjaWYgRU5BQkxFKFJFU09VUkNFX0xP
QURfU1RBVElTVElDUykKKyAgICBlbmFibGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2Rl
ID0gW2RlZmF1bHRzIGJvb2xGb3JLZXk6QCJJVFBEZWJ1Z01vZGUiXTsKKyAgICBhdXRvKiBtYW51
YWxQcmV2YWxlbnRSZXNvdXJjZSA9IFtkZWZhdWx0cyBzdHJpbmdGb3JLZXk6QCJJVFBNYW51YWxQ
cmV2YWxlbnRSZXNvdXJjZSJdOworICAgIGlmIChtYW51YWxQcmV2YWxlbnRSZXNvdXJjZSkgewor
ICAgICAgICBVUkwgdXJsIHsgVVJMKCksIG1hbnVhbFByZXZhbGVudFJlc291cmNlIH07CisgICAg
ICAgIGlmICghdXJsLmlzVmFsaWQoKSkgeworICAgICAgICAgICAgU3RyaW5nQnVpbGRlciBidWls
ZGVyOworICAgICAgICAgICAgYnVpbGRlci5hcHBlbmRMaXRlcmFsKCJodHRwOi8vIik7CisgICAg
ICAgICAgICBidWlsZGVyLmFwcGVuZChtYW51YWxQcmV2YWxlbnRSZXNvdXJjZSk7CisgICAgICAg
ICAgICB1cmwgPSB7IFVSTCgpLCBidWlsZGVyLnRvU3RyaW5nKCkgfTsKKyAgICAgICAgfQorICAg
ICAgICBpZiAodXJsLmlzVmFsaWQoKSkKKyAgICAgICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NNYW51YWxQcmV2YWxlbnRSZXNvdXJjZSA9IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIHsg
dXJsIH07CisgICAgfQorI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAorICAgIHN0YXRpYyBOU1N0
cmluZyAqIGNvbnN0IFdlYktpdExvZ0Nvb2tpZUluZm9ybWF0aW9uRGVmYXVsdHNLZXkgPSBAIldl
YktpdExvZ0Nvb2tpZUluZm9ybWF0aW9uIjsKKyAgICBzaG91bGRMb2dDb29raWVJbmZvcm1hdGlv
biA9IFtkZWZhdWx0cyBib29sRm9yS2V5OldlYktpdExvZ0Nvb2tpZUluZm9ybWF0aW9uRGVmYXVs
dHNLZXldOwogI2VuZGlmCisjZW5kaWYgLy8gRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElD
UykKIAogICAgIFVSTCBodHRwUHJveHkgPSBtX2NvbmZpZ3VyYXRpb24tPmh0dHBQcm94eSgpOwog
ICAgIFVSTCBodHRwc1Byb3h5ID0gbV9jb25maWd1cmF0aW9uLT5odHRwc1Byb3h5KCk7CkBAIC04
OCw2ICsxMDcsNyBAQCBXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyBXZWJzaXRlRGF0YVN0b3Jl
OjpwYXJhbWV0ZXJzKCkKICAgICBpZiAoIXJlc291cmNlTG9hZFN0YXRpc3RpY3NEaXJlY3Rvcnku
aXNFbXB0eSgpKQogICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JSZWFk
V3JpdGVEaXJlY3RvcnkocmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeSwgcmVzb3VyY2VM
b2FkU3RhdGlzdGljc0RpcmVjdG9yeUhhbmRsZSk7CiAKKyAgICBib29sIHNob3VsZEluY2x1ZGVM
b2NhbGhvc3RJblJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBpc1NhZmFyaTsKICAgICBXZWJzaXRl
RGF0YVN0b3JlUGFyYW1ldGVycyBwYXJhbWV0ZXJzOwogICAgIHBhcmFtZXRlcnMubmV0d29ya1Nl
c3Npb25QYXJhbWV0ZXJzID0gewogICAgICAgICBtX3Nlc3Npb25JRCwKQEAgLTEwMyw3ICsxMjMs
OSBAQCBXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyBXZWJzaXRlRGF0YVN0b3JlOjpwYXJhbWV0
ZXJzKCkKICAgICAgICAgV1RGTW92ZShyZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5KSwK
ICAgICAgICAgV1RGTW92ZShyZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5SGFuZGxlKSwK
ICAgICAgICAgZmFsc2UsCi0gICAgICAgIGlzU2FmYXJpCisgICAgICAgIHNob3VsZEluY2x1ZGVM
b2NhbGhvc3RJblJlc291cmNlTG9hZFN0YXRpc3RpY3MsCisgICAgICAgIGVuYWJsZVJlc291cmNl
TG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGUsCisgICAgICAgIFdURk1vdmUocmVzb3VyY2VMb2FkU3Rh
dGlzdGljc01hbnVhbFByZXZhbGVudFJlc291cmNlKQogICAgIH07CiAgICAgZmluYWxpemVBcHBs
aWNhdGlvbklkZW50aWZpZXJzKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGJkZTljYWI0NTM2YjNjYjMxOTRjOTIwMjFiYmM1NjNh
ZjYzYmJkMmEuLjgwYmMyZTE2OWNiNWU1YWU5NDE1MjdmNWRmOWEwOWQwM2Y1ZDVhYWUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysr
IGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzU2
OCw3ICszNTY4LDYgQEAKIAkJN0FCNkVBNDYxRUVBQjZCMDAwMDM3QjJCIC8qIEFQSUdlb2xvY2F0
aW9uUHJvdmlkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQVBJR2VvbG9j
YXRpb25Qcm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QUNFODJFNzIy
MUNBRTA2MDAwREE5NEMgLyogUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oOyBw
YXRoID0gQ2xhc3NpZmllci9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0FDRTgyRTgyMjFDQUUwNzAwMERBOTRDIC8qIFJlc291cmNl
TG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwOyBwYXRoID0gQ2xhc3NpZmllci9S
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQk3QUNFODJFOTIyMURFNzIyMDAwREE5NEMgLyogUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0
b3JlQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSBSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
U3RvcmVDb2NvYS5tbTsgcGF0aCA9IENsYXNzaWZpZXIvUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0
b3JlQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdBRjIzNjFFMUU3OUEz
QjQwMDQzOEEwNSAvKiBXZWJFcnJvcnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gV2ViRXJyb3JzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0FG
MjM2MUYxRTc5QTNEODAwNDM4QTA1IC8qIFdlYkVycm9ycy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBXZWJFcnJvcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
N0FGMjM2MjIxRTc5QTQzMTAwNDM4QTA1IC8qIFdlYkVycm9yc0NvY29hLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViRXJyb3JzQ29jb2EubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CkBAIC02OTcyLDcgKzY5NzEsNiBAQAogCQkJCTdBRkJEMzY4MjFF
NTQyRTgwMDVEQkFDQiAvKiBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGVyc2lzdGVudFN0b3JhZ2Uu
aCAqLywKIAkJCQk3QUNFODJFODIyMUNBRTA3MDAwREE5NEMgLyogUmVzb3VyY2VMb2FkU3RhdGlz
dGljc1N0b3JlLmNwcCAqLywKIAkJCQk3QUNFODJFNzIyMUNBRTA2MDAwREE5NEMgLyogUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1N0b3JlLmggKi8sCi0JCQkJN0FDRTgyRTkyMjFERTcyMjAwMERBOTRD
IC8qIFJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZUNvY29hLm1tICovLAogCQkJCTdBNDFFOUZB
MjFGODFEQUMwMEI4OENEQiAvKiBTaG91bGRHcmFuZGZhdGhlclN0YXRpc3RpY3MuaCAqLywKIAkJ
CQk3QTNGRUNBMTIxRjdDMDk3MDBGMjY3Q0QgLyogU3RvcmFnZUFjY2Vzc1N0YXR1cy5oICovLAog
CQkJCTdBODQzQTFBMjFFNDFGQjIwMERFRjY2MyAvKiBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
U3RvcmUuY3BwICovLAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>