<?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>207406</bug_id>
          
          <creation_ts>2020-02-07 14:07:20 -0800</creation_ts>
          <short_desc>[iOS] Check if PIP is supported in the UI process</short_desc>
          <delta_ts>2020-02-13 12:23:16 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Per Arne Vollan">pvollan</reporter>
          <assigned_to name="Per Arne Vollan">pvollan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>peng.liu6</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1616354</commentid>
    <comment_count>0</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-02-07 14:07:20 -0800</bug_when>
    <thetext>This is currently being checked in the WebProcess, but since this check is initiating communication with the frontboard service which will be blocked, this check should be moved to the UI process.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1616368</commentid>
    <comment_count>1</comment_count>
      <attachid>390123</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-02-07 14:27:27 -0800</bug_when>
    <thetext>Created attachment 390123
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1616401</commentid>
    <comment_count>2</comment_count>
      <attachid>390133</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-02-07 15:14:10 -0800</bug_when>
    <thetext>Created attachment 390133
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1616470</commentid>
    <comment_count>3</comment_count>
      <attachid>390133</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-02-07 16:49:50 -0800</bug_when>
    <thetext>Comment on attachment 390133
Patch

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

&gt; Source/WebCore/testing/Internals.cpp:5472
&gt; +#if PLATFORM(IOS_FAMILY)

We need to check the support for Mac as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1616473</commentid>
    <comment_count>4</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-02-07 16:51:33 -0800</bug_when>
    <thetext>(In reply to Peng Liu from comment #3)
&gt; Comment on attachment 390133 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=390133&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/testing/Internals.cpp:5472
&gt; &gt; +#if PLATFORM(IOS_FAMILY)
&gt; 
&gt; We need to check the support for Mac as well.

I will include that. Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1616961</commentid>
    <comment_count>5</comment_count>
      <attachid>390264</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-02-10 10:45:38 -0800</bug_when>
    <thetext>Created attachment 390264
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1618596</commentid>
    <comment_count>6</comment_count>
      <attachid>390264</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-02-13 11:02:53 -0800</bug_when>
    <thetext>Comment on attachment 390264
Patch

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

Looks good. r=me

&gt; Source/WebCore/ChangeLog:11
&gt; +        WebContent is storing the received value.

We have PIP in macOS, but I guess we don&apos;t do this check there?

Are there macOS changes we should plan as well?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1618605</commentid>
    <comment_count>7</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-02-13 11:21:57 -0800</bug_when>
    <thetext>(In reply to Brent Fulgham from comment #6)
&gt; Comment on attachment 390264 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=390264&amp;action=review
&gt; 
&gt; Looks good. r=me
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:11
&gt; &gt; +        WebContent is storing the received value.
&gt; 
&gt; We have PIP in macOS, but I guess we don&apos;t do this check there?
&gt; 
&gt; Are there macOS changes we should plan as well?

Yes, you are right. There is some additional macOS work required, since macOS does not have the same setting/notification.

Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1618610</commentid>
    <comment_count>8</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-02-13 11:27:01 -0800</bug_when>
    <thetext>(In reply to Per Arne Vollan from comment #7)
&gt; (In reply to Brent Fulgham from comment #6)
&gt; &gt; Comment on attachment 390264 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=390264&amp;action=review
&gt; &gt; 
&gt; &gt; Looks good. r=me
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/ChangeLog:11
&gt; &gt; &gt; +        WebContent is storing the received value.
&gt; &gt; 
&gt; &gt; We have PIP in macOS, but I guess we don&apos;t do this check there?
&gt; &gt; 
&gt; &gt; Are there macOS changes we should plan as well?
&gt; 
&gt; Yes, you are right. There is some additional macOS work required, since
&gt; macOS does not have the same setting/notification.
&gt; 

Sorry, I was thinking of another issue when making this comment. On macOS, we probably don&apos;t connect to the same service when checking whether PiP is enabled, but as you suggest, we should look into the issue on macOS as well, in order to determine which service is being used there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1618651</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-13 12:21:30 -0800</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 390264:

editing/spelling/spellcheck-attribute.html bug 206178 (authors: g.czajkowski@samsung.com, mark.lam@apple.com, and rniwa@webkit.org)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1618652</commentid>
    <comment_count>10</comment_count>
      <attachid>390264</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-13 12:22:10 -0800</bug_when>
    <thetext>Comment on attachment 390264
Patch

Clearing flags on attachment: 390264

Committed r256531: &lt;https://trac.webkit.org/changeset/256531&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1618653</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-13 12:22:12 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1618654</commentid>
    <comment_count>12</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-02-13 12:23:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/59433043&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390123</attachid>
            <date>2020-02-07 14:27:27 -0800</date>
            <delta_ts>2020-02-07 15:14:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207406-20200207142727.patch</filename>
            <type>text/plain</type>
            <size>15944</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1NTQzNykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI2IEBACisyMDIwLTAyLTA3ICBQZXIgQXJu
ZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBDaGVjayBpZiBQ
SVAgaXMgc3VwcG9ydGVkIGluIHRoZSBVSSBwcm9jZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc0MDYKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGN1cnJlbnRseSBiZWluZyBjaGVja2Vk
IGluIHRoZSBXZWJQcm9jZXNzLCBidXQgc2luY2UgdGhpcyBjaGVjayBpcyBpbml0aWF0aW5nIGNv
bW11bmljYXRpb24gd2l0aCB0aGUgZnJvbnRib2FyZAorICAgICAgICBzZXJ2aWNlIHdoaWNoIHdp
bGwgYmUgYmxvY2tlZCwgdGhpcyBjaGVjayBzaG91bGQgYmUgbW92ZWQgdG8gdGhlIFVJIHByb2Nl
c3MuIEluIHRoZSBVSSBwcm9jZXNzLCB0aGlzIGlzIGNoZWNrZWQgd2hlbgorICAgICAgICBzdGFy
dGluZyBhIG5ldyBXZWJDb250ZW50IHByb2Nlc3MsIGFuZCBzZW50IHRvIHRoZSBXZWJDb250ZW50
IHByb2Nlc3MgYXMgcGFydCBvZiB0aGUgcHJvY2VzcyBjcmVhdGlvbiBwYXJhbWV0ZXJzLiBUaGUK
KyAgICAgICAgV2ViQ29udGVudCBpcyBzdG9yaW5nIHRoZSByZWNlaXZlZCB2YWx1ZS4KKworICAg
ICAgICBBUEkgdGVzdDogV2ViS2l0LlBpY3R1cmVJblBpY3R1cmVTdXBwb3J0CisKKyAgICAgICAg
KiBwbGF0Zm9ybS9QaWN0dXJlSW5QaWN0dXJlU3VwcG9ydC5oOgorICAgICAgICAqIHBsYXRmb3Jt
L2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbToKKyAgICAgICAgKFdlYkNvcmU6
OnNldFN1cHBvcnRzUGljdHVyZUluUGljdHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpzdXBwb3J0
c1BpY3R1cmVJblBpY3R1cmUpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6c3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKToKKyAg
ICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxz
LmlkbDoKKwogMjAyMC0wMS0zMCAgRG91ZyBLZWxseSAgPGRvdWdrQGFwcGxlLmNvbT4KIAogICAg
ICAgICBDcmFzaCBpbiBSZW5kZXJCbG9ja0Zsb3c6OmFkanVzdExpbmVQb3NpdGlvbkZvclBhZ2lu
YXRpb24oKSB3aXRoIGNvbXBsZXggbGluZSB3aXRob3V0IHJvb3QgYm94CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9QaWN0dXJlSW5QaWN0dXJlU3VwcG9ydC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BpY3R1cmVJblBpY3R1cmVTdXBwb3J0LmgJKHJldmlz
aW9uIDI1NTQzNykKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BpY3R1cmVJblBpY3R1cmVT
dXBwb3J0LmgJKHdvcmtpbmcgY29weSkKQEAgLTI4LDYgKzI4LDcgQEAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFURk9STShNQUMpICYmIEVO
QUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCitXRUJDT1JFX0VYUE9SVCB2b2lkIHNldFN1
cHBvcnRzUGljdHVyZUluUGljdHVyZShib29sKTsKIFdFQkNPUkVfRVhQT1JUIGJvb2wgc3VwcG9y
dHNQaWN0dXJlSW5QaWN0dXJlKCk7CiAjZWxzZQogY29uc3RleHByIGJvb2wgc3VwcG9ydHNQaWN0
dXJlSW5QaWN0dXJlKCkgeyByZXR1cm4gZmFsc2U7IH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZL
aXQubW0JKHJldmlzaW9uIDI1NTQzNykKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9W
aWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQkod29ya2luZyBjb3B5KQpAQCAtMTUwMyw5
ICsxNTAzLDIwIEBAIGJvb2wgVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmlzUGwKIAog
I2VuZGlmIC8vIEhBVkUoQVZLSVQpCiAKK3N0YXRpYyBPcHRpb25hbDxib29sPiBpc1BpY3R1cmVJ
blBpY3R1cmVTdXBwb3J0ZWQ7CisKK3ZvaWQgV2ViQ29yZTo6c2V0U3VwcG9ydHNQaWN0dXJlSW5Q
aWN0dXJlKGJvb2wgaXNTdXBwb3J0ZWQpCit7CisgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsK
KyAgICBpc1BpY3R1cmVJblBpY3R1cmVTdXBwb3J0ZWQgPSBpc1N1cHBvcnRlZDsKK30KKwogYm9v
bCBXZWJDb3JlOjpzdXBwb3J0c1BpY3R1cmVJblBpY3R1cmUoKQogewogI2lmIFBMQVRGT1JNKElP
U19GQU1JTFkpICYmIEhBVkUoQVZLSVQpICYmICFQTEFURk9STShXQVRDSE9TKQorICAgIEFTU0VS
VChpc01haW5UaHJlYWQoKSk7CisgICAgaWYgKGlzUGljdHVyZUluUGljdHVyZVN1cHBvcnRlZC5o
YXNWYWx1ZSgpKQorICAgICAgICByZXR1cm4gKmlzUGljdHVyZUluUGljdHVyZVN1cHBvcnRlZDsK
ICAgICByZXR1cm4gW2dldEFWUGljdHVyZUluUGljdHVyZUNvbnRyb2xsZXJDbGFzcygpIGlzUGlj
dHVyZUluUGljdHVyZVN1cHBvcnRlZF07CiAjZWxzZQogICAgIHJldHVybiBmYWxzZTsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAJKHJldmlzaW9uIDI1NTQzNykKKysrIFNv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTM4
LDYgKzEzOCw3IEBACiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhZ2VPdmVybGF5Lmgi
CiAjaW5jbHVkZSAiUGF0aFV0aWxpdGllcy5oIgorI2luY2x1ZGUgIlBpY3R1cmVJblBpY3R1cmVT
dXBwb3J0LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1LZXlib2FyZEV2ZW50LmgiCiAjaW5jbHVkZSAi
UGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TY3JlZW4u
aCIKQEAgLTU0NTUsNCArNTQ1NiwxMyBAQCBTdHJpbmcgSW50ZXJuYWxzOjptZWRpYU1JTUVUeXBl
Rm9yRXh0ZW5zCiAgICAgcmV0dXJuIE1JTUVUeXBlUmVnaXN0cnk6OmdldE1lZGlhTUlNRVR5cGVG
b3JFeHRlbnNpb24oZXh0ZW5zaW9uKTsKIH0KIAorYm9vbCBJbnRlcm5hbHM6OnN1cHBvcnRzUGlj
dHVyZUluUGljdHVyZSgpCit7CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICByZXR1cm4g
V2ViQ29yZTo6c3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKCk7CisjZWxzZQorICAgIHJldHVybiBm
YWxzZTsKKyNlbmRpZgorfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmgJKHJldmlzaW9uIDI1NTQzNykKKysrIFNvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmgJKHdvcmtpbmcgY29weSkKQEAgLTkzMyw2ICs5MzMsOCBAQCBw
dWJsaWM6CiAKICAgICBTdHJpbmcgbWVkaWFNSU1FVHlwZUZvckV4dGVuc2lvbihjb25zdCBTdHJp
bmcmIGV4dGVuc2lvbik7CiAKKyAgICBib29sIHN1cHBvcnRzUGljdHVyZUluUGljdHVyZSgpOwor
CiBwcml2YXRlOgogICAgIGV4cGxpY2l0IEludGVybmFscyhEb2N1bWVudCYpOwogICAgIERvY3Vt
ZW50KiBjb250ZXh0RG9jdW1lbnQoKSBjb25zdDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0lu
dGVybmFscy5pZGwJKHJldmlzaW9uIDI1NTQzNykKKysrIFNvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmlkbAkod29ya2luZyBjb3B5KQpAQCAtODQwLDQgKzg0MCw2IEBAIGVudW0gQ29t
cG9zaXRpbmdQb2xpY3kgewogICAgIGJvb2xlYW4gc3lzdGVtSGFzQmF0dGVyeSgpOwogCiAgICAg
RE9NU3RyaW5nIG1lZGlhTUlNRVR5cGVGb3JFeHRlbnNpb24oRE9NU3RyaW5nIGV4dGVuc2lvbik7
CisgICAgCisgICAgYm9vbGVhbiBzdXBwb3J0c1BpY3R1cmVJblBpY3R1cmUoKTsKIH07CkluZGV4
OiBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwkocmV2aXNpb24gMjU1ODM3KQorKysgU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHdv
cmtpbmcgY29weSkKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wMi0wNyAgUGVyIEFybmUgVm9sbGFu
ICA8cHZvbGxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gQ2hlY2sgaWYgUElQIGlzIHN1
cHBvcnRlZCBpbiB0aGUgVUkgcHJvY2VzcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjA3NDA2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgV2hlbiBzdGFydGluZyBhIG5ldyBXZWJDb250ZW50IHByb2Nlc3Ms
IGNoZWNrIGlmIFBJUCBpcyBzdXBwb3J0ZWQsIGFuZCBwYXNzIHRoZSByZXN1bHRzIHRvIHRoZSBu
ZXdseSBjcmVhdGVkCisgICAgICAgIFdlYkNvbnRlbnQgcHJvY2Vzcy4KKworICAgICAgICAqIFNo
YXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdl
YktpdDo6V2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBT
aGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oOgorICAgICAgICAqIFVJUHJvY2Vz
cy9Db2NvYS9XZWJQcm9jZXNzUG9vbENvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9j
ZXNzUG9vbDo6cGxhdGZvcm1Jbml0aWFsaXplV2ViUHJvY2Vzcyk6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nl
c3M6OnBsYXRmb3JtSW5pdGlhbGl6ZVdlYlByb2Nlc3MpOgorCiAyMDIwLTAyLTA1ICBXZW5zb24g
SHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFttYWNDYXRhbHlzdF0g
SUJlYW0gY3Vyc29yIGRvZXNuJ3Qgc2hvdyB1cCB3aGVuIGhvdmVyaW5nIG92ZXIgdGV4dCBmb3Jt
IGNvbnRyb2xzIHByaW9yIHRvIGVkaXRpbmcKSW5kZXg6IFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dl
YlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCShyZXZpc2lvbiAyNTU0
MzcpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTcyLDYgKzE3Miw3IEBAIHZvaWQgV2ViUHJvY2Vzc0Ny
ZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2QKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAg
ZW5jb2RlciA8PCBjdXJyZW50VXNlckludGVyZmFjZUlkaW9tSXNQYWQ7CisgICAgZW5jb2RlciA8
PCBzdXBwb3J0c1BpY3R1cmVJblBpY3R1cmU7CiAgICAgZW5jb2RlciA8PCBjc3NWYWx1ZVRvU3lz
dGVtQ29sb3JNYXA7CiAjZW5kaWYKIH0KQEAgLTQ1Myw2ICs0NTQsOSBAQCBib29sIFdlYlByb2Nl
c3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kCiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShwYXJh
bWV0ZXJzLmN1cnJlbnRVc2VySW50ZXJmYWNlSWRpb21Jc1BhZCkpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKIAorICAgIGlmICghZGVjb2Rlci5kZWNvZGUocGFyYW1ldGVycy5zdXBwb3J0c1BpY3R1
cmVJblBpY3R1cmUpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKICAgICBPcHRpb25hbDxXZWJD
b3JlOjpSZW5kZXJUaGVtZUlPUzo6Q1NTVmFsdWVUb1N5c3RlbUNvbG9yTWFwPiBjc3NWYWx1ZVRv
U3lzdGVtQ29sb3JNYXA7CiAgICAgZGVjb2RlciA+PiBjc3NWYWx1ZVRvU3lzdGVtQ29sb3JNYXA7
CiAgICAgaWYgKCFjc3NWYWx1ZVRvU3lzdGVtQ29sb3JNYXApCkluZGV4OiBTb3VyY2UvV2ViS2l0
L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCShyZXZpc2lv
biAyNTU0MzcpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJh
bWV0ZXJzLmgJKHdvcmtpbmcgY29weSkKQEAgLTIxNCw2ICsyMTQsNyBAQCBzdHJ1Y3QgV2ViUHJv
Y2Vzc0NyZWF0aW9uUGFyYW1ldGVycyB7CiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAg
IGJvb2wgY3VycmVudFVzZXJJbnRlcmZhY2VJZGlvbUlzUGFkIHsgZmFsc2UgfTsKKyAgICBib29s
IHN1cHBvcnRzUGljdHVyZUluUGljdHVyZSB7IGZhbHNlIH07CiAgICAgV2ViQ29yZTo6UmVuZGVy
VGhlbWVJT1M6OkNTU1ZhbHVlVG9TeXN0ZW1Db2xvck1hcCBjc3NWYWx1ZVRvU3lzdGVtQ29sb3JN
YXA7CiAjZW5kaWYKIH07CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQ
cm9jZXNzUG9vbENvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0JKHJldmlzaW9uIDI1NTQzNykKKysrIFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTUwLDYgKzUwLDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvTUlNRVR5cGVSZWdpc3Ry
eS5oPgogI2ltcG9ydCA8V2ViQ29yZS9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaD4KICNpbXBvcnQg
PFdlYkNvcmUvTm90SW1wbGVtZW50ZWQuaD4KKyNpbXBvcnQgPFdlYkNvcmUvUGljdHVyZUluUGlj
dHVyZVN1cHBvcnQuaD4KICNpbXBvcnQgPFdlYkNvcmUvUGxhdGZvcm1QYXN0ZWJvYXJkLmg+CiAj
aW1wb3J0IDxXZWJDb3JlL1J1bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oPgogI2ltcG9ydCA8V2Vi
Q29yZS9TaGFyZWRCdWZmZXIuaD4KQEAgLTM1OSw2ICszNjAsNyBAQCB2b2lkIFdlYlByb2Nlc3NQ
b29sOjpwbGF0Zm9ybUluaXRpYWxpemVXCiAgICAgCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkK
ICAgICBwYXJhbWV0ZXJzLmN1cnJlbnRVc2VySW50ZXJmYWNlSWRpb21Jc1BhZCA9IGN1cnJlbnRV
c2VySW50ZXJmYWNlSWRpb21Jc1BhZCgpOworICAgIHBhcmFtZXRlcnMuc3VwcG9ydHNQaWN0dXJl
SW5QaWN0dXJlID0gc3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKCk7CiAgICAgcGFyYW1ldGVycy5j
c3NWYWx1ZVRvU3lzdGVtQ29sb3JNYXAgPSBSZW5kZXJUaGVtZUlPUzo6Y3NzVmFsdWVUb1N5c3Rl
bUNvbG9yTWFwKCk7CiAjZW5kaWYKIH0KSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9j
b2NvYS9XZWJQcm9jZXNzQ29jb2EubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQkocmV2aXNpb24gMjU1NDM3KQorKysgU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQkod29ya2luZyBj
b3B5KQpAQCAtNjMsNiArNjMsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9NZW1vcnlSZWxlYXNlLmg+
CiAjaW1wb3J0IDxXZWJDb3JlL05TU2Nyb2xsZXJJbXBEZXRhaWxzLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1BlcmZvcm1hbmNlTG9nZ2luZy5oPgorI2ltcG9ydCA8V2ViQ29yZS9QaWN0dXJlSW5QaWN0
dXJlU3VwcG9ydC5oPgogI2ltcG9ydCA8V2ViQ29yZS9SdW50aW1lQXBwbGljYXRpb25DaGVja3Mu
aD4KICNpbXBvcnQgPFdlYkNvcmUvU1dDb250ZXh0TWFuYWdlci5oPgogI2ltcG9ydCA8YWxnb3Jp
dGhtPgpAQCAtMTk2LDYgKzE5Nyw3IEBAIHZvaWQgV2ViUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFs
aXplV2ViUHIKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgc2V0Q3VycmVudFVzZXJJ
bnRlcmZhY2VJZGlvbUlzUGFkKHBhcmFtZXRlcnMuY3VycmVudFVzZXJJbnRlcmZhY2VJZGlvbUlz
UGFkKTsKKyAgICBzZXRTdXBwb3J0c1BpY3R1cmVJblBpY3R1cmUocGFyYW1ldGVycy5zdXBwb3J0
c1BpY3R1cmVJblBpY3R1cmUpOwogI2VuZGlmCiAKICNpZiBVU0UoQVBQS0lUKQpJbmRleDogVG9v
bHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gMjU2
MDYxKQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAK
KzIwMjAtMDItMDcgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgorCisgICAg
ICAgIFtpT1NdIENoZWNrIGlmIFBJUCBpcyBzdXBwb3J0ZWQgaW4gdGhlIFVJIHByb2Nlc3MKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzQwNgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdFdlYktp
dEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICog
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvUGljdHVyZUluUGljdHVyZVN1cHBvcnQubW06IEFk
ZGVkLgorICAgICAgICAoVEVTVCk6CisKIDIwMjAtMDItMDcgIEpvbmF0aGFuIEJlZGFyZCAgPGpi
ZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIHJ1bi1zYWZhcmkgRG9lc24ndCB3b3JrIHdpdGgg
dGhlIGxhdGVzdCBYY29kZSB2ZXJzaW9uIGFuZCBpT1MKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCShyZXZpc2lvbiAyNTU0MzcpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRB
UEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtOTgxLDYgKzk4
MSw3IEBACiAJCUUxMjIwRENBMTU1QjI4QUEwMDEzRTJGQyAvKiBNZW1vcnlDYWNoZURpc2FibGVX
aXRoaW5SZXNvdXJjZUxvYWREZWxlZ2F0ZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxMjIwREM5MTU1QjI4N0QwMDEzRTJGQyAvKiBN
ZW1vcnlDYWNoZURpc2FibGVXaXRoaW5SZXNvdXJjZUxvYWREZWxlZ2F0ZS5odG1sICovOyB9Owog
CQlFMTk0RTFCRDE3N0U1M0M3MDA5QzRENEUgLyogU3RvcExvYWRpbmdGcm9tRGlkUmVjZWl2ZVJl
c3BvbnNlLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTE5NEUxQkMxNzdFNTM0QTAwOUM0RDRFIC8qIFN0b3BMb2FkaW5nRnJvbURpZFJl
Y2VpdmVSZXNwb25zZS5odG1sICovOyB9OwogCQlFMzI0QTZGMDIwNDFDODIwMDBBNzY1OTMgLyog
VW5pcXVlQXJyYXkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTM5OEJDMEYyMDQxQzc2MzAwMzg3MTM2IC8qIFVuaXF1ZUFycmF5LmNwcCAqLzsgfTsK
KwkJRTMyNUM5MDcyM0UzODcwMjAwQkM3RDNCIC8qIFBpY3R1cmVJblBpY3R1cmVTdXBwb3J0Lm1t
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTMyNUM5MDYy
M0UzODcwMjAwQkM3RDNCIC8qIFBpY3R1cmVJblBpY3R1cmVTdXBwb3J0Lm1tICovOyB9OwogCQlF
MzJCNTQ5MjIyODEwQUM0MDA4QUQ3MDIgLyogUGFja2VkLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzMkI1NDkxMjI4MTBBQzAwMDhBRDcwMiAvKiBQ
YWNrZWQuY3BwICovOyB9OwogCQlFMzVGQzdCMjIyQjgyQTczMDBGMzJGOTggLyogSlNMb2NrVGFr
ZXNXZWJUaHJlYWRMb2NrLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTM1RkM3QjEyMkI4MkE2RDAwRjMyRjk4IC8qIEpTTG9ja1Rha2VzV2ViVGhyZWFk
TG9jay5tbSAqLzsgfTsKIAkJRTM3M0Q3OTExRjJDRjM1MjAwQzZGQUFGIC8qIFNpZ25hbHMuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM5NTNGOTUx
RjJDRjMyMTAwQTc2QTJFIC8qIFNpZ25hbHMuY3BwICovOyB9OwpAQCAtMjUzNiw2ICsyNTM3LDcg
QEAKIAkJRTEyMjBEQzkxNTVCMjg3RDAwMTNFMkZDIC8qIE1lbW9yeUNhY2hlRGlzYWJsZVdpdGhp
blJlc291cmNlTG9hZERlbGVnYXRlLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSBN
ZW1vcnlDYWNoZURpc2FibGVXaXRoaW5SZXNvdXJjZUxvYWREZWxlZ2F0ZS5odG1sOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlFMTk0RTFCQTE3N0U1MTQ1MDA5QzRENEUgLyogU3RvcExv
YWRpbmdGcm9tRGlkUmVjZWl2ZVJlc3BvbnNlLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gU3RvcExvYWRpbmdGcm9tRGlkUmVjZWl2ZVJlc3BvbnNlLm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMTk0RTFCQzE3N0U1MzRBMDA5QzRENEUgLyogU3Rv
cExvYWRpbmdGcm9tRGlkUmVjZWl2ZVJlc3BvbnNlLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSBTdG9wTG9hZGlu
Z0Zyb21EaWRSZWNlaXZlUmVzcG9uc2UuaHRtbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTMyNUM5MDYyM0UzODcwMjAwQkM3RDNCIC8qIFBpY3R1cmVJblBpY3R1cmVTdXBwb3J0Lm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gUGljdHVyZUluUGljdHVyZVN1cHBvcnQubW07IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzMkI1NDkxMjI4MTBBQzAwMDhBRDcwMiAvKiBQYWNr
ZWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGFja2VkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJRTM1RkM3QjEyMkI4MkE2RDAwRjMyRjk4IC8qIEpTTG9ja1Rha2VzV2ViVGhy
ZWFkTG9jay5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEpTTG9j
a1Rha2VzV2ViVGhyZWFkTG9jay5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTM4
ODg4NzAyMEM5MDk4MTAwRTYzMkJDIC8qIFdvcmtlclBvb2wuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyUG9vbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CkBAIC0yODM5LDYgKzI4NDEsNyBAQAogCQkJY2hpbGRyZW4gPSAoCiAJCQkJQzE2OTJE
QzkyM0QxMERBRTAwNkU4OEY3IC8qIEJhdHRlcnkubW0gKi8sCiAJCQkJQzE0NUNDMEIyM0RBNUEw
RjAwM0E1RUVCIC8qIE1pbWVUeXBlcy5tbSAqLywKKwkJCQlFMzI1QzkwNjIzRTM4NzAyMDBCQzdE
M0IgLyogUGljdHVyZUluUGljdHVyZVN1cHBvcnQubW0gKi8sCiAJCQkJMEYxMzlFNzUxQTQyM0E1
MzAwRjU5MEY1IC8qIFdlYWtPYmpDUHRyLm1tICovLAogCQkJKTsKIAkJCW5hbWUgPSBjb2NvYTsK
QEAgLTQ4NzQsNiArNDg3Nyw3IEBACiAJCQkJNTE2MjgxMjcyMzI1QzE5ODAwQkI3RTQyIC8qIFBE
RlNuYXBzaG90Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJN0M4M0UwNTMxRDBBNjQzQTAwRkVCQ0Yz
IC8qIFBlbmRpbmdBUElSZXF1ZXN0VVJMLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTNGQ0M0RkU1
MUVDNEU4NTIwMDc2RTM3QyAvKiBQaWN0dXJlSW5QaWN0dXJlRGVsZWdhdGUubW0gaW4gU291cmNl
cyAqLywKKwkJCQlFMzI1QzkwNzIzRTM4NzAyMDBCQzdEM0IgLyogUGljdHVyZUluUGljdHVyZVN1
cHBvcnQubW0gaW4gU291cmNlcyAqLywKIAkJCQk3Q0NFN0VBNjFBNDExQTBGMDA0NDdDNEMgLyog
UGxhdGZvcm1VdGlsaXRpZXNNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQk3Q0NFN0VBNzFBNDEx
QTEzMDA0NDdDNEMgLyogUGxhdGZvcm1XZWJWaWV3TWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
ODNCQUVFOEQxRUY0NjI1NTAwRERFODk0IC8qIFBsdWdpbkxvYWRDbGllbnRQb2xpY2llcy5tbSBp
biBTb3VyY2VzICovLApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvUGlj
dHVyZUluUGljdHVyZVN1cHBvcnQubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQvUGljdHVyZUluUGljdHVyZVN1cHBvcnQubW0JKG5vbmV4aXN0ZW50KQor
KysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvUGljdHVyZUluUGljdHVyZVN1cHBv
cnQubW0JKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0OCBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNs
dWRlICJjb25maWcuaCIKKworI2lmIFdLX0hBVkVfQ19TUEkKKworI2ltcG9ydCAiUGxhdGZvcm1V
dGlsaXRpZXMuaCIKKyNpbXBvcnQgIlRlc3RXS1dlYlZpZXcuaCIKKyNpbXBvcnQgPFdlYkNvcmUv
UGljdHVyZUluUGljdHVyZVN1cHBvcnQuaD4KKworVEVTVChXZWJLaXQsIFBpY3R1cmVJblBpY3R1
cmVTdXBwb3J0KQoreworICAgIGF1dG8gY29uZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tXS1dlYlZp
ZXdDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0XSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0
UmVmPiBjb250ZXh0ID0gYWRvcHRXSyhUZXN0V2ViS2l0QVBJOjpVdGlsOjpjcmVhdGVDb250ZXh0
Rm9ySW5qZWN0ZWRCdW5kbGVUZXN0KCJJbnRlcm5hbHNJbmplY3RlZEJ1bmRsZVRlc3QiKSk7Cisg
ICAgY29uZmlndXJhdGlvbi5nZXQoKS5wcm9jZXNzUG9vbCA9IChXS1Byb2Nlc3NQb29sICopY29u
dGV4dC5nZXQoKTsKKyAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBh
bGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDMwMCwgMzAwKSBjb25maWd1cmF0
aW9uOmNvbmZpZ3VyYXRpb24uZ2V0KCkgYWRkVG9XaW5kb3c6WUVTXSk7CisKKyAgICBhdXRvIHN1
cHBvcnRzUGljdHVyZUluUGljdHVyZSA9IFsmXSB7CisgICAgICAgIHJldHVybiBbd2ViVmlldyBz
dHJpbmdCeUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAid2luZG93LmludGVybmFscy5zdXBwb3J0c1Bp
Y3R1cmVJblBpY3R1cmUoKSJdLmJvb2xWYWx1ZTsKKyAgICB9OworCisgICAgQVNTRVJUX1RSVUUo
c3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKCkgPT0gV2ViQ29yZTo6c3VwcG9ydHNQaWN0dXJlSW5Q
aWN0dXJlKCkpOworfQorCisjZW5kaWYgLy8gV0tfSEFWRV9DX1NQSQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390133</attachid>
            <date>2020-02-07 15:14:10 -0800</date>
            <delta_ts>2020-02-10 10:45:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207406-20200207151409.patch</filename>
            <type>text/plain</type>
            <size>15665</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1NjA3MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI2IEBACisyMDIwLTAyLTA3ICBQZXIgQXJu
ZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBDaGVjayBpZiBQ
SVAgaXMgc3VwcG9ydGVkIGluIHRoZSBVSSBwcm9jZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc0MDYKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGN1cnJlbnRseSBiZWluZyBjaGVja2Vk
IGluIHRoZSBXZWJQcm9jZXNzLCBidXQgc2luY2UgdGhpcyBjaGVjayBpcyBpbml0aWF0aW5nIGNv
bW11bmljYXRpb24gd2l0aCB0aGUgZnJvbnRib2FyZAorICAgICAgICBzZXJ2aWNlIHdoaWNoIHdp
bGwgYmUgYmxvY2tlZCwgdGhpcyBjaGVjayBzaG91bGQgYmUgbW92ZWQgdG8gdGhlIFVJIHByb2Nl
c3MuIEluIHRoZSBVSSBwcm9jZXNzLCB0aGlzIGlzIGNoZWNrZWQgd2hlbgorICAgICAgICBzdGFy
dGluZyBhIG5ldyBXZWJDb250ZW50IHByb2Nlc3MsIGFuZCBzZW50IHRvIHRoZSBXZWJDb250ZW50
IHByb2Nlc3MgYXMgcGFydCBvZiB0aGUgcHJvY2VzcyBjcmVhdGlvbiBwYXJhbWV0ZXJzLiBUaGUK
KyAgICAgICAgV2ViQ29udGVudCBpcyBzdG9yaW5nIHRoZSByZWNlaXZlZCB2YWx1ZS4KKworICAg
ICAgICBBUEkgdGVzdDogV2ViS2l0LlBpY3R1cmVJblBpY3R1cmVTdXBwb3J0CisKKyAgICAgICAg
KiBwbGF0Zm9ybS9QaWN0dXJlSW5QaWN0dXJlU3VwcG9ydC5oOgorICAgICAgICAqIHBsYXRmb3Jt
L2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbToKKyAgICAgICAgKFdlYkNvcmU6
OnNldFN1cHBvcnRzUGljdHVyZUluUGljdHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpzdXBwb3J0
c1BpY3R1cmVJblBpY3R1cmUpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6c3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKToKKyAg
ICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxz
LmlkbDoKKwogMjAyMC0wMi0wNyAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4K
IAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjU2MDUxLgpJbmRleDogU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vUGljdHVyZUluUGljdHVyZVN1cHBvcnQuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QaWN0dXJlSW5QaWN0dXJlU3VwcG9ydC5oCShyZXZp
c2lvbiAyNTYwNzApCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QaWN0dXJlSW5QaWN0dXJl
U3VwcG9ydC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw2ICsyOCw3IEBACiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBF
TkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQorV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRT
dXBwb3J0c1BpY3R1cmVJblBpY3R1cmUoYm9vbCk7CiBXRUJDT1JFX0VYUE9SVCBib29sIHN1cHBv
cnRzUGljdHVyZUluUGljdHVyZSgpOwogI2Vsc2UKIGNvbnN0ZXhwciBib29sIHN1cHBvcnRzUGlj
dHVyZUluUGljdHVyZSgpIHsgcmV0dXJuIGZhbHNlOyB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFW
S2l0Lm1tCShyZXZpc2lvbiAyNTYwNzApCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
VmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0JKHdvcmtpbmcgY29weSkKQEAgLTE1MDMs
OSArMTUwMywxOCBAQCBib29sIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Ojppc1BsCiAK
ICNlbmRpZiAvLyBIQVZFKEFWS0lUKQogCitzdGF0aWMgT3B0aW9uYWw8Ym9vbD4gaXNQaWN0dXJl
SW5QaWN0dXJlU3VwcG9ydGVkOworCit2b2lkIFdlYkNvcmU6OnNldFN1cHBvcnRzUGljdHVyZUlu
UGljdHVyZShib29sIGlzU3VwcG9ydGVkKQoreworICAgIGlzUGljdHVyZUluUGljdHVyZVN1cHBv
cnRlZCA9IGlzU3VwcG9ydGVkOworfQorCiBib29sIFdlYkNvcmU6OnN1cHBvcnRzUGljdHVyZUlu
UGljdHVyZSgpCiB7CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkgJiYg
IVBMQVRGT1JNKFdBVENIT1MpCisgICAgaWYgKGlzUGljdHVyZUluUGljdHVyZVN1cHBvcnRlZC5o
YXNWYWx1ZSgpKQorICAgICAgICByZXR1cm4gKmlzUGljdHVyZUluUGljdHVyZVN1cHBvcnRlZDsK
ICAgICByZXR1cm4gW2dldEFWUGljdHVyZUluUGljdHVyZUNvbnRyb2xsZXJDbGFzcygpIGlzUGlj
dHVyZUluUGljdHVyZVN1cHBvcnRlZF07CiAjZWxzZQogICAgIHJldHVybiBmYWxzZTsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAJKHJldmlzaW9uIDI1NjA3MCkKKysrIFNv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTM4
LDYgKzEzOCw3IEBACiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhZ2VPdmVybGF5Lmgi
CiAjaW5jbHVkZSAiUGF0aFV0aWxpdGllcy5oIgorI2luY2x1ZGUgIlBpY3R1cmVJblBpY3R1cmVT
dXBwb3J0LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1LZXlib2FyZEV2ZW50LmgiCiAjaW5jbHVkZSAi
UGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TY3JlZW4u
aCIKQEAgLTU0NjYsNiArNTQ2NywxNSBAQCBTdHJpbmcgSW50ZXJuYWxzOjptZWRpYU1JTUVUeXBl
Rm9yRXh0ZW5zCiAgICAgcmV0dXJuIE1JTUVUeXBlUmVnaXN0cnk6OmdldE1lZGlhTUlNRVR5cGVG
b3JFeHRlbnNpb24oZXh0ZW5zaW9uKTsKIH0KIAorYm9vbCBJbnRlcm5hbHM6OnN1cHBvcnRzUGlj
dHVyZUluUGljdHVyZSgpCit7CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICByZXR1cm4g
V2ViQ29yZTo6c3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKCk7CisjZWxzZQorICAgIHJldHVybiBm
YWxzZTsKKyNlbmRpZgorfQorCiBTdHJpbmcgSW50ZXJuYWxzOjpmb2N1c1JpbmdDb2xvcigpCiB7
CiAgICAgT3B0aW9uU2V0PFN0eWxlQ29sb3I6Ok9wdGlvbnM+IG9wdGlvbnM7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgJKHJldmlzaW9uIDI1NjA3MCkKKysrIFNvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgJKHdvcmtpbmcgY29weSkKQEAgLTkzNSw2ICs5MzUsOCBA
QCBwdWJsaWM6CiAKICAgICBTdHJpbmcgbWVkaWFNSU1FVHlwZUZvckV4dGVuc2lvbihjb25zdCBT
dHJpbmcmIGV4dGVuc2lvbik7CiAKKyAgICBib29sIHN1cHBvcnRzUGljdHVyZUluUGljdHVyZSgp
OworCiAgICAgU3RyaW5nIGZvY3VzUmluZ0NvbG9yKCk7CiAKIHByaXZhdGU6CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCShyZXZpc2lvbiAyNTYwNzApCisrKyBTb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTg0Myw0ICs4
NDMsNiBAQCBlbnVtIENvbXBvc2l0aW5nUG9saWN5IHsKICAgICBib29sZWFuIHN5c3RlbUhhc0Jh
dHRlcnkoKTsKIAogICAgIERPTVN0cmluZyBtZWRpYU1JTUVUeXBlRm9yRXh0ZW5zaW9uKERPTVN0
cmluZyBleHRlbnNpb24pOworICAgIAorICAgIGJvb2xlYW4gc3VwcG9ydHNQaWN0dXJlSW5QaWN0
dXJlKCk7CiB9OwpJbmRleDogU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1NjA3MCkKKysrIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjAtMDItMDcg
IFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIENo
ZWNrIGlmIFBJUCBpcyBzdXBwb3J0ZWQgaW4gdGhlIFVJIHByb2Nlc3MKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzQwNgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gc3RhcnRpbmcgYSBuZXcgV2Vi
Q29udGVudCBwcm9jZXNzLCBjaGVjayBpZiBQSVAgaXMgc3VwcG9ydGVkLCBhbmQgcGFzcyB0aGUg
cmVzdWx0cyB0byB0aGUgbmV3bHkgY3JlYXRlZAorICAgICAgICBXZWJDb250ZW50IHByb2Nlc3Mu
CisKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZSBjb25z
dCk6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29k
ZSk6CisgICAgICAgICogU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaDoKKyAg
ICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2NvYS5tbToKKyAgICAgICAg
KFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OnBsYXRmb3JtSW5pdGlhbGl6ZVdlYlByb2Nlc3MpOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tOgorICAgICAgICAo
V2ViS2l0OjpXZWJQcm9jZXNzOjpwbGF0Zm9ybUluaXRpYWxpemVXZWJQcm9jZXNzKToKKwogMjAy
MC0wMi0wNyAgVGltb3RoeSBIYXRjaGVyICA8dGltb3RoeUBhcHBsZS5jb20+CiAKICAgICAgICAg
Q3Jhc2ggdW5kZXIgV0tCdW5kbGVGcmFtZUZvckphdmFTY3JpcHRDb250ZXh0IGRlcmVmZXJlbmNp
bmcgYSBOVUxMIFdlYkNvcmU6OkZyYW1lLgpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvV2Vi
UHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAJKHJldmlzaW9uIDI1NjA3
MCkKKysrIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzIsNiArMTcyLDcgQEAgdm9pZCBXZWJQcm9jZXNzQ3Jl
YXRpb25QYXJhbWV0ZXJzOjplbmNvZAogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBl
bmNvZGVyIDw8IGN1cnJlbnRVc2VySW50ZXJmYWNlSWRpb21Jc1BhZDsKKyAgICBlbmNvZGVyIDw8
IHN1cHBvcnRzUGljdHVyZUluUGljdHVyZTsKICAgICBlbmNvZGVyIDw8IGNzc1ZhbHVlVG9TeXN0
ZW1Db2xvck1hcDsKICAgICBlbmNvZGVyIDw8IGZvY3VzUmluZ0NvbG9yOwogI2VuZGlmCkBAIC00
NTQsNiArNDU1LDkgQEAgYm9vbCBXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZAog
ICAgIGlmICghZGVjb2Rlci5kZWNvZGUocGFyYW1ldGVycy5jdXJyZW50VXNlckludGVyZmFjZUlk
aW9tSXNQYWQpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKKyAgICBpZiAoIWRlY29kZXIuZGVj
b2RlKHBhcmFtZXRlcnMuc3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKSkKKyAgICAgICAgcmV0dXJu
IGZhbHNlOworCiAgICAgT3B0aW9uYWw8V2ViQ29yZTo6UmVuZGVyVGhlbWVJT1M6OkNTU1ZhbHVl
VG9TeXN0ZW1Db2xvck1hcD4gY3NzVmFsdWVUb1N5c3RlbUNvbG9yTWFwOwogICAgIGRlY29kZXIg
Pj4gY3NzVmFsdWVUb1N5c3RlbUNvbG9yTWFwOwogICAgIGlmICghY3NzVmFsdWVUb1N5c3RlbUNv
bG9yTWFwKQpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnMuaAkocmV2aXNpb24gMjU2MDcwKQorKysgU291cmNlL1dlYktpdC9T
aGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCSh3b3JraW5nIGNvcHkpCkBAIC0y
MTQsNiArMjE0LDcgQEAgc3RydWN0IFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgewogCiAj
aWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBib29sIGN1cnJlbnRVc2VySW50ZXJmYWNlSWRp
b21Jc1BhZCB7IGZhbHNlIH07CisgICAgYm9vbCBzdXBwb3J0c1BpY3R1cmVJblBpY3R1cmUgeyBm
YWxzZSB9OwogICAgIFdlYkNvcmU6OlJlbmRlclRoZW1lSU9TOjpDU1NWYWx1ZVRvU3lzdGVtQ29s
b3JNYXAgY3NzVmFsdWVUb1N5c3RlbUNvbG9yTWFwOwogICAgIFdlYkNvcmU6OkNvbG9yIGZvY3Vz
UmluZ0NvbG9yOwogI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9X
ZWJQcm9jZXNzUG9vbENvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0JKHJldmlzaW9uIDI1NjA3MCkKKysrIFNv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0JKHdvcmtp
bmcgY29weSkKQEAgLTM2MCw2ICszNjAsNyBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjpwbGF0Zm9y
bUluaXRpYWxpemVXCiAgICAgCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBwYXJhbWV0
ZXJzLmN1cnJlbnRVc2VySW50ZXJmYWNlSWRpb21Jc1BhZCA9IGN1cnJlbnRVc2VySW50ZXJmYWNl
SWRpb21Jc1BhZCgpOworICAgIHBhcmFtZXRlcnMuc3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlID0g
c3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKCk7CiAgICAgcGFyYW1ldGVycy5jc3NWYWx1ZVRvU3lz
dGVtQ29sb3JNYXAgPSBSZW5kZXJUaGVtZUlPUzo6Y3NzVmFsdWVUb1N5c3RlbUNvbG9yTWFwKCk7
CiAgICAgcGFyYW1ldGVycy5mb2N1c1JpbmdDb2xvciA9IFJlbmRlclRoZW1lOjpzaW5nbGV0b24o
KS5mb2N1c1JpbmdDb2xvcihPcHRpb25TZXQ8U3R5bGVDb2xvcjo6T3B0aW9ucz4oKSk7CiAjZW5k
aWYKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nl
c3NDb2NvYS5tbQkocmV2aXNpb24gMjU2MDcwKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtNjMsNiArNjMsNyBA
QAogI2ltcG9ydCA8V2ViQ29yZS9NZW1vcnlSZWxlYXNlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL05T
U2Nyb2xsZXJJbXBEZXRhaWxzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1BlcmZvcm1hbmNlTG9nZ2lu
Zy5oPgorI2ltcG9ydCA8V2ViQ29yZS9QaWN0dXJlSW5QaWN0dXJlU3VwcG9ydC5oPgogI2ltcG9y
dCA8V2ViQ29yZS9SdW50aW1lQXBwbGljYXRpb25DaGVja3MuaD4KICNpbXBvcnQgPFdlYkNvcmUv
U1dDb250ZXh0TWFuYWdlci5oPgogI2ltcG9ydCA8YWxnb3JpdGhtPgpAQCAtMTk3LDYgKzE5OCw3
IEBAIHZvaWQgV2ViUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplV2ViUHIKIAogI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCiAgICAgc2V0Q3VycmVudFVzZXJJbnRlcmZhY2VJZGlvbUlzUGFkKHBh
cmFtZXRlcnMuY3VycmVudFVzZXJJbnRlcmZhY2VJZGlvbUlzUGFkKTsKKyAgICBzZXRTdXBwb3J0
c1BpY3R1cmVJblBpY3R1cmUocGFyYW1ldGVycy5zdXBwb3J0c1BpY3R1cmVJblBpY3R1cmUpOwog
I2VuZGlmCiAKICNpZiBVU0UoQVBQS0lUKQpJbmRleDogVG9vbHMvQ2hhbmdlTG9nCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gMjU2MDcwKQorKysgVG9vbHMvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDItMDcgIFBlciBBcm5l
IFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIENoZWNrIGlmIFBJ
UCBpcyBzdXBwb3J0ZWQgaW4gdGhlIFVJIHByb2Nlc3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzQwNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQvUGljdHVyZUluUGljdHVyZVN1cHBvcnQubW06IEFkZGVkLgorICAgICAgICAoVEVTVCk6
CisKIDIwMjAtMDItMDcgIFJ5YW4gSGFkZGFkICA8cnlhbmhhZGRhZEBhcHBsZS5jb20+CiAKICAg
ICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjI1NjA1MS4KSW5kZXg6IFRvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCShyZXZpc2lvbiAyNTYwNzApCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RX
ZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtOTg5
LDYgKzk4OSw3IEBACiAJCUUxMjIwRENBMTU1QjI4QUEwMDEzRTJGQyAvKiBNZW1vcnlDYWNoZURp
c2FibGVXaXRoaW5SZXNvdXJjZUxvYWREZWxlZ2F0ZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxMjIwREM5MTU1QjI4N0QwMDEzRTJG
QyAvKiBNZW1vcnlDYWNoZURpc2FibGVXaXRoaW5SZXNvdXJjZUxvYWREZWxlZ2F0ZS5odG1sICov
OyB9OwogCQlFMTk0RTFCRDE3N0U1M0M3MDA5QzRENEUgLyogU3RvcExvYWRpbmdGcm9tRGlkUmVj
ZWl2ZVJlc3BvbnNlLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTE5NEUxQkMxNzdFNTM0QTAwOUM0RDRFIC8qIFN0b3BMb2FkaW5nRnJv
bURpZFJlY2VpdmVSZXNwb25zZS5odG1sICovOyB9OwogCQlFMzI0QTZGMDIwNDFDODIwMDBBNzY1
OTMgLyogVW5pcXVlQXJyYXkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTM5OEJDMEYyMDQxQzc2MzAwMzg3MTM2IC8qIFVuaXF1ZUFycmF5LmNwcCAq
LzsgfTsKKwkJRTMyNUM5MDcyM0UzODcwMjAwQkM3RDNCIC8qIFBpY3R1cmVJblBpY3R1cmVTdXBw
b3J0Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTMy
NUM5MDYyM0UzODcwMjAwQkM3RDNCIC8qIFBpY3R1cmVJblBpY3R1cmVTdXBwb3J0Lm1tICovOyB9
OwogCQlFMzJCNTQ5MjIyODEwQUM0MDA4QUQ3MDIgLyogUGFja2VkLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzMkI1NDkxMjI4MTBBQzAwMDhBRDcw
MiAvKiBQYWNrZWQuY3BwICovOyB9OwogCQlFMzVGQzdCMjIyQjgyQTczMDBGMzJGOTggLyogSlNM
b2NrVGFrZXNXZWJUaHJlYWRMb2NrLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTM1RkM3QjEyMkI4MkE2RDAwRjMyRjk4IC8qIEpTTG9ja1Rha2VzV2Vi
VGhyZWFkTG9jay5tbSAqLzsgfTsKIAkJRTM3M0Q3OTExRjJDRjM1MjAwQzZGQUFGIC8qIFNpZ25h
bHMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM5
NTNGOTUxRjJDRjMyMTAwQTc2QTJFIC8qIFNpZ25hbHMuY3BwICovOyB9OwpAQCAtMjU2MSw2ICsy
NTYyLDcgQEAKIAkJRTEyMjBEQzkxNTVCMjg3RDAwMTNFMkZDIC8qIE1lbW9yeUNhY2hlRGlzYWJs
ZVdpdGhpblJlc291cmNlTG9hZERlbGVnYXRlLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBh
dGggPSBNZW1vcnlDYWNoZURpc2FibGVXaXRoaW5SZXNvdXJjZUxvYWREZWxlZ2F0ZS5odG1sOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMTk0RTFCQTE3N0U1MTQ1MDA5QzRENEUgLyog
U3RvcExvYWRpbmdGcm9tRGlkUmVjZWl2ZVJlc3BvbnNlLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gU3RvcExvYWRpbmdGcm9tRGlkUmVjZWl2ZVJlc3BvbnNlLm1t
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMTk0RTFCQzE3N0U1MzRBMDA5QzRENEUg
LyogU3RvcExvYWRpbmdGcm9tRGlkUmVjZWl2ZVJlc3BvbnNlLmh0bWwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSBTdG9w
TG9hZGluZ0Zyb21EaWRSZWNlaXZlUmVzcG9uc2UuaHRtbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTMyNUM5MDYyM0UzODcwMjAwQkM3RDNCIC8qIFBpY3R1cmVJblBpY3R1cmVTdXBw
b3J0Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUGljdHVyZUluUGljdHVyZVN1cHBvcnQubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzMkI1NDkxMjI4MTBBQzAwMDhBRDcwMiAv
KiBQYWNrZWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGFja2VkLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJRTM1RkM3QjEyMkI4MkE2RDAwRjMyRjk4IC8qIEpTTG9ja1Rha2Vz
V2ViVGhyZWFkTG9jay5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9
IEpTTG9ja1Rha2VzV2ViVGhyZWFkTG9jay5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRTM4ODg4NzAyMEM5MDk4MTAwRTYzMkJDIC8qIFdvcmtlclBvb2wuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyUG9vbC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CkBAIC0yODY1LDYgKzI4NjcsNyBAQAogCQkJY2hpbGRyZW4gPSAoCiAJCQkJ
QzE2OTJEQzkyM0QxMERBRTAwNkU4OEY3IC8qIEJhdHRlcnkubW0gKi8sCiAJCQkJQzE0NUNDMEIy
M0RBNUEwRjAwM0E1RUVCIC8qIE1pbWVUeXBlcy5tbSAqLywKKwkJCQlFMzI1QzkwNjIzRTM4NzAy
MDBCQzdEM0IgLyogUGljdHVyZUluUGljdHVyZVN1cHBvcnQubW0gKi8sCiAJCQkJMEYxMzlFNzUx
QTQyM0E1MzAwRjU5MEY1IC8qIFdlYWtPYmpDUHRyLm1tICovLAogCQkJKTsKIAkJCW5hbWUgPSBj
b2NvYTsKQEAgLTQ5MDksNiArNDkxMiw3IEBACiAJCQkJNTE2MjgxMjcyMzI1QzE5ODAwQkI3RTQy
IC8qIFBERlNuYXBzaG90Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJN0M4M0UwNTMxRDBBNjQzQTAw
RkVCQ0YzIC8qIFBlbmRpbmdBUElSZXF1ZXN0VVJMLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTNG
Q0M0RkU1MUVDNEU4NTIwMDc2RTM3QyAvKiBQaWN0dXJlSW5QaWN0dXJlRGVsZWdhdGUubW0gaW4g
U291cmNlcyAqLywKKwkJCQlFMzI1QzkwNzIzRTM4NzAyMDBCQzdEM0IgLyogUGljdHVyZUluUGlj
dHVyZVN1cHBvcnQubW0gaW4gU291cmNlcyAqLywKIAkJCQk3Q0NFN0VBNjFBNDExQTBGMDA0NDdD
NEMgLyogUGxhdGZvcm1VdGlsaXRpZXNNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQk3Q0NFN0VB
NzFBNDExQTEzMDA0NDdDNEMgLyogUGxhdGZvcm1XZWJWaWV3TWFjLm1tIGluIFNvdXJjZXMgKi8s
CiAJCQkJODNCQUVFOEQxRUY0NjI1NTAwRERFODk0IC8qIFBsdWdpbkxvYWRDbGllbnRQb2xpY2ll
cy5tbSBpbiBTb3VyY2VzICovLApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXQvUGljdHVyZUluUGljdHVyZVN1cHBvcnQubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXQvUGljdHVyZUluUGljdHVyZVN1cHBvcnQubW0JKG5vbmV4aXN0
ZW50KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvUGljdHVyZUluUGljdHVy
ZVN1cHBvcnQubW0JKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0OCBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIFdLX0hBVkVfQ19TUEkKKworI2ltcG9ydCAiUGxh
dGZvcm1VdGlsaXRpZXMuaCIKKyNpbXBvcnQgIlRlc3RXS1dlYlZpZXcuaCIKKyNpbXBvcnQgPFdl
YkNvcmUvUGljdHVyZUluUGljdHVyZVN1cHBvcnQuaD4KKworVEVTVChXZWJLaXQsIFBpY3R1cmVJ
blBpY3R1cmVTdXBwb3J0KQoreworICAgIGF1dG8gY29uZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tX
S1dlYlZpZXdDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0XSk7CisgICAgV0tSZXRhaW5QdHI8V0tD
b250ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRXSyhUZXN0V2ViS2l0QVBJOjpVdGlsOjpjcmVhdGVD
b250ZXh0Rm9ySW5qZWN0ZWRCdW5kbGVUZXN0KCJJbnRlcm5hbHNJbmplY3RlZEJ1bmRsZVRlc3Qi
KSk7CisgICAgY29uZmlndXJhdGlvbi5nZXQoKS5wcm9jZXNzUG9vbCA9IChXS1Byb2Nlc3NQb29s
ICopY29udGV4dC5nZXQoKTsKKyAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2Vi
VmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDMwMCwgMzAwKSBjb25m
aWd1cmF0aW9uOmNvbmZpZ3VyYXRpb24uZ2V0KCkgYWRkVG9XaW5kb3c6WUVTXSk7CisKKyAgICBh
dXRvIHN1cHBvcnRzUGljdHVyZUluUGljdHVyZSA9IFsmXSB7CisgICAgICAgIHJldHVybiBbd2Vi
VmlldyBzdHJpbmdCeUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAid2luZG93LmludGVybmFscy5zdXBw
b3J0c1BpY3R1cmVJblBpY3R1cmUoKSJdLmJvb2xWYWx1ZTsKKyAgICB9OworCisgICAgQVNTRVJU
X1RSVUUoc3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKCkgPT0gV2ViQ29yZTo6c3VwcG9ydHNQaWN0
dXJlSW5QaWN0dXJlKCkpOworfQorCisjZW5kaWYgLy8gV0tfSEFWRV9DX1NQSQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>390264</attachid>
            <date>2020-02-10 10:45:38 -0800</date>
            <delta_ts>2020-02-13 12:22:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207406-20200210104537.patch</filename>
            <type>text/plain</type>
            <size>15605</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1NjA3MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI2IEBACisyMDIwLTAyLTA3ICBQZXIgQXJu
ZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBDaGVjayBpZiBQ
SVAgaXMgc3VwcG9ydGVkIGluIHRoZSBVSSBwcm9jZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDc0MDYKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIGN1cnJlbnRseSBiZWluZyBjaGVja2Vk
IGluIHRoZSBXZWJQcm9jZXNzLCBidXQgc2luY2UgdGhpcyBjaGVjayBpcyBpbml0aWF0aW5nIGNv
bW11bmljYXRpb24gd2l0aCB0aGUgZnJvbnRib2FyZAorICAgICAgICBzZXJ2aWNlIHdoaWNoIHdp
bGwgYmUgYmxvY2tlZCwgdGhpcyBjaGVjayBzaG91bGQgYmUgbW92ZWQgdG8gdGhlIFVJIHByb2Nl
c3MuIEluIHRoZSBVSSBwcm9jZXNzLCB0aGlzIGlzIGNoZWNrZWQgd2hlbgorICAgICAgICBzdGFy
dGluZyBhIG5ldyBXZWJDb250ZW50IHByb2Nlc3MsIGFuZCBzZW50IHRvIHRoZSBXZWJDb250ZW50
IHByb2Nlc3MgYXMgcGFydCBvZiB0aGUgcHJvY2VzcyBjcmVhdGlvbiBwYXJhbWV0ZXJzLiBUaGUK
KyAgICAgICAgV2ViQ29udGVudCBpcyBzdG9yaW5nIHRoZSByZWNlaXZlZCB2YWx1ZS4KKworICAg
ICAgICBBUEkgdGVzdDogV2ViS2l0LlBpY3R1cmVJblBpY3R1cmVTdXBwb3J0CisKKyAgICAgICAg
KiBwbGF0Zm9ybS9QaWN0dXJlSW5QaWN0dXJlU3VwcG9ydC5oOgorICAgICAgICAqIHBsYXRmb3Jt
L2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbToKKyAgICAgICAgKFdlYkNvcmU6
OnNldFN1cHBvcnRzUGljdHVyZUluUGljdHVyZSk6CisgICAgICAgIChXZWJDb3JlOjpzdXBwb3J0
c1BpY3R1cmVJblBpY3R1cmUpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6c3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKToKKyAg
ICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxz
LmlkbDoKKwogMjAyMC0wMi0wNyAgUnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4K
IAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjU2MDUxLgpJbmRleDogU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vUGljdHVyZUluUGljdHVyZVN1cHBvcnQuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QaWN0dXJlSW5QaWN0dXJlU3VwcG9ydC5oCShyZXZp
c2lvbiAyNTYwNzApCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QaWN0dXJlSW5QaWN0dXJl
U3VwcG9ydC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw2ICsyOCw3IEBACiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBF
TkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQorV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRT
dXBwb3J0c1BpY3R1cmVJblBpY3R1cmUoYm9vbCk7CiBXRUJDT1JFX0VYUE9SVCBib29sIHN1cHBv
cnRzUGljdHVyZUluUGljdHVyZSgpOwogI2Vsc2UKIGNvbnN0ZXhwciBib29sIHN1cHBvcnRzUGlj
dHVyZUluUGljdHVyZSgpIHsgcmV0dXJuIGZhbHNlOyB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFW
S2l0Lm1tCShyZXZpc2lvbiAyNTYwNzApCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
VmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0JKHdvcmtpbmcgY29weSkKQEAgLTE1MDMs
OSArMTUwMywxOCBAQCBib29sIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Ojppc1BsCiAK
ICNlbmRpZiAvLyBIQVZFKEFWS0lUKQogCitzdGF0aWMgT3B0aW9uYWw8Ym9vbD4gaXNQaWN0dXJl
SW5QaWN0dXJlU3VwcG9ydGVkOworCit2b2lkIFdlYkNvcmU6OnNldFN1cHBvcnRzUGljdHVyZUlu
UGljdHVyZShib29sIGlzU3VwcG9ydGVkKQoreworICAgIGlzUGljdHVyZUluUGljdHVyZVN1cHBv
cnRlZCA9IGlzU3VwcG9ydGVkOworfQorCiBib29sIFdlYkNvcmU6OnN1cHBvcnRzUGljdHVyZUlu
UGljdHVyZSgpCiB7CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkgJiYg
IVBMQVRGT1JNKFdBVENIT1MpCisgICAgaWYgKGlzUGljdHVyZUluUGljdHVyZVN1cHBvcnRlZC5o
YXNWYWx1ZSgpKQorICAgICAgICByZXR1cm4gKmlzUGljdHVyZUluUGljdHVyZVN1cHBvcnRlZDsK
ICAgICByZXR1cm4gW2dldEFWUGljdHVyZUluUGljdHVyZUNvbnRyb2xsZXJDbGFzcygpIGlzUGlj
dHVyZUluUGljdHVyZVN1cHBvcnRlZF07CiAjZWxzZQogICAgIHJldHVybiBmYWxzZTsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAJKHJldmlzaW9uIDI1NjA3MCkKKysrIFNv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTM4
LDYgKzEzOCw3IEBACiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhZ2VPdmVybGF5Lmgi
CiAjaW5jbHVkZSAiUGF0aFV0aWxpdGllcy5oIgorI2luY2x1ZGUgIlBpY3R1cmVJblBpY3R1cmVT
dXBwb3J0LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1LZXlib2FyZEV2ZW50LmgiCiAjaW5jbHVkZSAi
UGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TY3JlZW4u
aCIKQEAgLTU0NjYsNiArNTQ2NywxMSBAQCBTdHJpbmcgSW50ZXJuYWxzOjptZWRpYU1JTUVUeXBl
Rm9yRXh0ZW5zCiAgICAgcmV0dXJuIE1JTUVUeXBlUmVnaXN0cnk6OmdldE1lZGlhTUlNRVR5cGVG
b3JFeHRlbnNpb24oZXh0ZW5zaW9uKTsKIH0KIAorYm9vbCBJbnRlcm5hbHM6OnN1cHBvcnRzUGlj
dHVyZUluUGljdHVyZSgpCit7CisgICAgcmV0dXJuIFdlYkNvcmU6OnN1cHBvcnRzUGljdHVyZUlu
UGljdHVyZSgpOworfQorCiBTdHJpbmcgSW50ZXJuYWxzOjpmb2N1c1JpbmdDb2xvcigpCiB7CiAg
ICAgT3B0aW9uU2V0PFN0eWxlQ29sb3I6Ok9wdGlvbnM+IG9wdGlvbnM7CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmgJKHJldmlzaW9uIDI1NjA3MCkKKysrIFNvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmgJKHdvcmtpbmcgY29weSkKQEAgLTkzNSw2ICs5MzUsOCBAQCBw
dWJsaWM6CiAKICAgICBTdHJpbmcgbWVkaWFNSU1FVHlwZUZvckV4dGVuc2lvbihjb25zdCBTdHJp
bmcmIGV4dGVuc2lvbik7CiAKKyAgICBib29sIHN1cHBvcnRzUGljdHVyZUluUGljdHVyZSgpOwor
CiAgICAgU3RyaW5nIGZvY3VzUmluZ0NvbG9yKCk7CiAKIHByaXZhdGU6CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCShyZXZpc2lvbiAyNTYwNzApCisrKyBTb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTg0Myw0ICs4NDMs
NiBAQCBlbnVtIENvbXBvc2l0aW5nUG9saWN5IHsKICAgICBib29sZWFuIHN5c3RlbUhhc0JhdHRl
cnkoKTsKIAogICAgIERPTVN0cmluZyBtZWRpYU1JTUVUeXBlRm9yRXh0ZW5zaW9uKERPTVN0cmlu
ZyBleHRlbnNpb24pOworICAgIAorICAgIGJvb2xlYW4gc3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJl
KCk7CiB9OwpJbmRleDogU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1NjA3MCkKKysrIFNvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjAtMDItMDcgIFBl
ciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIENoZWNr
IGlmIFBJUCBpcyBzdXBwb3J0ZWQgaW4gdGhlIFVJIHByb2Nlc3MKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzQwNgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gc3RhcnRpbmcgYSBuZXcgV2ViQ29u
dGVudCBwcm9jZXNzLCBjaGVjayBpZiBQSVAgaXMgc3VwcG9ydGVkLCBhbmQgcGFzcyB0aGUgcmVz
dWx0cyB0byB0aGUgbmV3bHkgY3JlYXRlZAorICAgICAgICBXZWJDb250ZW50IHByb2Nlc3MuCisK
KyAgICAgICAgKiBTaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZSBjb25zdCk6
CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZSk6
CisgICAgICAgICogU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaDoKKyAgICAg
ICAgKiBVSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2NvYS5tbToKKyAgICAgICAgKFdl
YktpdDo6V2ViUHJvY2Vzc1Bvb2w6OnBsYXRmb3JtSW5pdGlhbGl6ZVdlYlByb2Nlc3MpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQcm9jZXNzOjpwbGF0Zm9ybUluaXRpYWxpemVXZWJQcm9jZXNzKToKKwogMjAyMC0w
Mi0wNyAgVGltb3RoeSBIYXRjaGVyICA8dGltb3RoeUBhcHBsZS5jb20+CiAKICAgICAgICAgQ3Jh
c2ggdW5kZXIgV0tCdW5kbGVGcmFtZUZvckphdmFTY3JpcHRDb250ZXh0IGRlcmVmZXJlbmNpbmcg
YSBOVUxMIFdlYkNvcmU6OkZyYW1lLgpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJv
Y2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9T
aGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAJKHJldmlzaW9uIDI1NjA3MCkK
KysrIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xNzIsNiArMTcyLDcgQEAgdm9pZCBXZWJQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzOjplbmNvZAogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBlbmNv
ZGVyIDw8IGN1cnJlbnRVc2VySW50ZXJmYWNlSWRpb21Jc1BhZDsKKyAgICBlbmNvZGVyIDw8IHN1
cHBvcnRzUGljdHVyZUluUGljdHVyZTsKICAgICBlbmNvZGVyIDw8IGNzc1ZhbHVlVG9TeXN0ZW1D
b2xvck1hcDsKICAgICBlbmNvZGVyIDw8IGZvY3VzUmluZ0NvbG9yOwogI2VuZGlmCkBAIC00NTQs
NiArNDU1LDkgQEAgYm9vbCBXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZAogICAg
IGlmICghZGVjb2Rlci5kZWNvZGUocGFyYW1ldGVycy5jdXJyZW50VXNlckludGVyZmFjZUlkaW9t
SXNQYWQpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKKyAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KHBhcmFtZXRlcnMuc3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKSkKKyAgICAgICAgcmV0dXJuIGZh
bHNlOworCiAgICAgT3B0aW9uYWw8V2ViQ29yZTo6UmVuZGVyVGhlbWVJT1M6OkNTU1ZhbHVlVG9T
eXN0ZW1Db2xvck1hcD4gY3NzVmFsdWVUb1N5c3RlbUNvbG9yTWFwOwogICAgIGRlY29kZXIgPj4g
Y3NzVmFsdWVUb1N5c3RlbUNvbG9yTWFwOwogICAgIGlmICghY3NzVmFsdWVUb1N5c3RlbUNvbG9y
TWFwKQpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVycy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMuaAkocmV2aXNpb24gMjU2MDcwKQorKysgU291cmNlL1dlYktpdC9TaGFy
ZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMTQs
NiArMjE0LDcgQEAgc3RydWN0IFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgewogCiAjaWYg
UExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBib29sIGN1cnJlbnRVc2VySW50ZXJmYWNlSWRpb21J
c1BhZCB7IGZhbHNlIH07CisgICAgYm9vbCBzdXBwb3J0c1BpY3R1cmVJblBpY3R1cmUgeyBmYWxz
ZSB9OwogICAgIFdlYkNvcmU6OlJlbmRlclRoZW1lSU9TOjpDU1NWYWx1ZVRvU3lzdGVtQ29sb3JN
YXAgY3NzVmFsdWVUb1N5c3RlbUNvbG9yTWFwOwogICAgIFdlYkNvcmU6OkNvbG9yIGZvY3VzUmlu
Z0NvbG9yOwogI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQ
cm9jZXNzUG9vbENvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0JKHJldmlzaW9uIDI1NjA3MCkKKysrIFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTM2MCw2ICszNjAsNyBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjpwbGF0Zm9ybUlu
aXRpYWxpemVXCiAgICAgCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBwYXJhbWV0ZXJz
LmN1cnJlbnRVc2VySW50ZXJmYWNlSWRpb21Jc1BhZCA9IGN1cnJlbnRVc2VySW50ZXJmYWNlSWRp
b21Jc1BhZCgpOworICAgIHBhcmFtZXRlcnMuc3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlID0gc3Vw
cG9ydHNQaWN0dXJlSW5QaWN0dXJlKCk7CiAgICAgcGFyYW1ldGVycy5jc3NWYWx1ZVRvU3lzdGVt
Q29sb3JNYXAgPSBSZW5kZXJUaGVtZUlPUzo6Y3NzVmFsdWVUb1N5c3RlbUNvbG9yTWFwKCk7CiAg
ICAgcGFyYW1ldGVycy5mb2N1c1JpbmdDb2xvciA9IFJlbmRlclRoZW1lOjpzaW5nbGV0b24oKS5m
b2N1c1JpbmdDb2xvcihPcHRpb25TZXQ8U3R5bGVDb2xvcjo6T3B0aW9ucz4oKSk7CiAjZW5kaWYK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nlc3ND
b2NvYS5tbQkocmV2aXNpb24gMjU2MDcwKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2Nv
Y29hL1dlYlByb2Nlc3NDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtNjMsNiArNjMsNyBAQAog
I2ltcG9ydCA8V2ViQ29yZS9NZW1vcnlSZWxlYXNlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL05TU2Ny
b2xsZXJJbXBEZXRhaWxzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1BlcmZvcm1hbmNlTG9nZ2luZy5o
PgorI2ltcG9ydCA8V2ViQ29yZS9QaWN0dXJlSW5QaWN0dXJlU3VwcG9ydC5oPgogI2ltcG9ydCA8
V2ViQ29yZS9SdW50aW1lQXBwbGljYXRpb25DaGVja3MuaD4KICNpbXBvcnQgPFdlYkNvcmUvU1dD
b250ZXh0TWFuYWdlci5oPgogI2ltcG9ydCA8YWxnb3JpdGhtPgpAQCAtMTk3LDYgKzE5OCw3IEBA
IHZvaWQgV2ViUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplV2ViUHIKIAogI2lmIFBMQVRGT1JN
KElPU19GQU1JTFkpCiAgICAgc2V0Q3VycmVudFVzZXJJbnRlcmZhY2VJZGlvbUlzUGFkKHBhcmFt
ZXRlcnMuY3VycmVudFVzZXJJbnRlcmZhY2VJZGlvbUlzUGFkKTsKKyAgICBzZXRTdXBwb3J0c1Bp
Y3R1cmVJblBpY3R1cmUocGFyYW1ldGVycy5zdXBwb3J0c1BpY3R1cmVJblBpY3R1cmUpOwogI2Vu
ZGlmCiAKICNpZiBVU0UoQVBQS0lUKQpJbmRleDogVG9vbHMvQ2hhbmdlTG9nCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gMjU2MDcwKQorKysgVG9vbHMvQ2hhbmdlTG9n
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDItMDcgIFBlciBBcm5lIFZv
bGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIENoZWNrIGlmIFBJUCBp
cyBzdXBwb3J0ZWQgaW4gdGhlIFVJIHByb2Nlc3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzQwNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXQvUGljdHVyZUluUGljdHVyZVN1cHBvcnQubW06IEFkZGVkLgorICAgICAgICAoVEVTVCk6CisK
IDIwMjAtMDItMDcgIFJ5YW4gSGFkZGFkICA8cnlhbmhhZGRhZEBhcHBsZS5jb20+CiAKICAgICAg
ICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjI1NjA1MS4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCShyZXZpc2lvbiAyNTYwNzApCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJL
aXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtOTg5LDYg
Kzk4OSw3IEBACiAJCUUxMjIwRENBMTU1QjI4QUEwMDEzRTJGQyAvKiBNZW1vcnlDYWNoZURpc2Fi
bGVXaXRoaW5SZXNvdXJjZUxvYWREZWxlZ2F0ZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxMjIwREM5MTU1QjI4N0QwMDEzRTJGQyAv
KiBNZW1vcnlDYWNoZURpc2FibGVXaXRoaW5SZXNvdXJjZUxvYWREZWxlZ2F0ZS5odG1sICovOyB9
OwogCQlFMTk0RTFCRDE3N0U1M0M3MDA5QzRENEUgLyogU3RvcExvYWRpbmdGcm9tRGlkUmVjZWl2
ZVJlc3BvbnNlLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTE5NEUxQkMxNzdFNTM0QTAwOUM0RDRFIC8qIFN0b3BMb2FkaW5nRnJvbURp
ZFJlY2VpdmVSZXNwb25zZS5odG1sICovOyB9OwogCQlFMzI0QTZGMDIwNDFDODIwMDBBNzY1OTMg
LyogVW5pcXVlQXJyYXkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTM5OEJDMEYyMDQxQzc2MzAwMzg3MTM2IC8qIFVuaXF1ZUFycmF5LmNwcCAqLzsg
fTsKKwkJRTMyNUM5MDcyM0UzODcwMjAwQkM3RDNCIC8qIFBpY3R1cmVJblBpY3R1cmVTdXBwb3J0
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTMyNUM5
MDYyM0UzODcwMjAwQkM3RDNCIC8qIFBpY3R1cmVJblBpY3R1cmVTdXBwb3J0Lm1tICovOyB9Owog
CQlFMzJCNTQ5MjIyODEwQUM0MDA4QUQ3MDIgLyogUGFja2VkLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzMkI1NDkxMjI4MTBBQzAwMDhBRDcwMiAv
KiBQYWNrZWQuY3BwICovOyB9OwogCQlFMzVGQzdCMjIyQjgyQTczMDBGMzJGOTggLyogSlNMb2Nr
VGFrZXNXZWJUaHJlYWRMb2NrLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTM1RkM3QjEyMkI4MkE2RDAwRjMyRjk4IC8qIEpTTG9ja1Rha2VzV2ViVGhy
ZWFkTG9jay5tbSAqLzsgfTsKIAkJRTM3M0Q3OTExRjJDRjM1MjAwQzZGQUFGIC8qIFNpZ25hbHMu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM5NTNG
OTUxRjJDRjMyMTAwQTc2QTJFIC8qIFNpZ25hbHMuY3BwICovOyB9OwpAQCAtMjU2MSw2ICsyNTYy
LDcgQEAKIAkJRTEyMjBEQzkxNTVCMjg3RDAwMTNFMkZDIC8qIE1lbW9yeUNhY2hlRGlzYWJsZVdp
dGhpblJlc291cmNlTG9hZERlbGVnYXRlLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGgg
PSBNZW1vcnlDYWNoZURpc2FibGVXaXRoaW5SZXNvdXJjZUxvYWREZWxlZ2F0ZS5odG1sOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMTk0RTFCQTE3N0U1MTQ1MDA5QzRENEUgLyogU3Rv
cExvYWRpbmdGcm9tRGlkUmVjZWl2ZVJlc3BvbnNlLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gU3RvcExvYWRpbmdGcm9tRGlkUmVjZWl2ZVJlc3BvbnNlLm1tOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMTk0RTFCQzE3N0U1MzRBMDA5QzRENEUgLyog
U3RvcExvYWRpbmdGcm9tRGlkUmVjZWl2ZVJlc3BvbnNlLmh0bWwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSBTdG9wTG9h
ZGluZ0Zyb21EaWRSZWNlaXZlUmVzcG9uc2UuaHRtbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTMyNUM5MDYyM0UzODcwMjAwQkM3RDNCIC8qIFBpY3R1cmVJblBpY3R1cmVTdXBwb3J0
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUGljdHVyZUluUGljdHVyZVN1cHBvcnQubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzMkI1NDkxMjI4MTBBQzAwMDhBRDcwMiAvKiBQ
YWNrZWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGFja2VkLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJRTM1RkM3QjEyMkI4MkE2RDAwRjMyRjk4IC8qIEpTTG9ja1Rha2VzV2Vi
VGhyZWFkTG9jay5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEpT
TG9ja1Rha2VzV2ViVGhyZWFkTG9jay5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
RTM4ODg4NzAyMEM5MDk4MTAwRTYzMkJDIC8qIFdvcmtlclBvb2wuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyUG9vbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC0yODY1LDYgKzI4NjcsNyBAQAogCQkJY2hpbGRyZW4gPSAoCiAJCQkJQzE2
OTJEQzkyM0QxMERBRTAwNkU4OEY3IC8qIEJhdHRlcnkubW0gKi8sCiAJCQkJQzE0NUNDMEIyM0RB
NUEwRjAwM0E1RUVCIC8qIE1pbWVUeXBlcy5tbSAqLywKKwkJCQlFMzI1QzkwNjIzRTM4NzAyMDBC
QzdEM0IgLyogUGljdHVyZUluUGljdHVyZVN1cHBvcnQubW0gKi8sCiAJCQkJMEYxMzlFNzUxQTQy
M0E1MzAwRjU5MEY1IC8qIFdlYWtPYmpDUHRyLm1tICovLAogCQkJKTsKIAkJCW5hbWUgPSBjb2Nv
YTsKQEAgLTQ5MDksNiArNDkxMiw3IEBACiAJCQkJNTE2MjgxMjcyMzI1QzE5ODAwQkI3RTQyIC8q
IFBERlNuYXBzaG90Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJN0M4M0UwNTMxRDBBNjQzQTAwRkVC
Q0YzIC8qIFBlbmRpbmdBUElSZXF1ZXN0VVJMLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTNGQ0M0
RkU1MUVDNEU4NTIwMDc2RTM3QyAvKiBQaWN0dXJlSW5QaWN0dXJlRGVsZWdhdGUubW0gaW4gU291
cmNlcyAqLywKKwkJCQlFMzI1QzkwNzIzRTM4NzAyMDBCQzdEM0IgLyogUGljdHVyZUluUGljdHVy
ZVN1cHBvcnQubW0gaW4gU291cmNlcyAqLywKIAkJCQk3Q0NFN0VBNjFBNDExQTBGMDA0NDdDNEMg
LyogUGxhdGZvcm1VdGlsaXRpZXNNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQk3Q0NFN0VBNzFB
NDExQTEzMDA0NDdDNEMgLyogUGxhdGZvcm1XZWJWaWV3TWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJ
CQkJODNCQUVFOEQxRUY0NjI1NTAwRERFODk0IC8qIFBsdWdpbkxvYWRDbGllbnRQb2xpY2llcy5t
bSBpbiBTb3VyY2VzICovLApJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQv
UGljdHVyZUluUGljdHVyZVN1cHBvcnQubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJLaXQvUGljdHVyZUluUGljdHVyZVN1cHBvcnQubW0JKG5vbmV4aXN0ZW50
KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvUGljdHVyZUluUGljdHVyZVN1
cHBvcnQubW0JKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0OCBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKworI2lmIFdLX0hBVkVfQ19TUEkKKworI2ltcG9ydCAiUGxhdGZv
cm1VdGlsaXRpZXMuaCIKKyNpbXBvcnQgIlRlc3RXS1dlYlZpZXcuaCIKKyNpbXBvcnQgPFdlYkNv
cmUvUGljdHVyZUluUGljdHVyZVN1cHBvcnQuaD4KKworVEVTVChXZWJLaXQsIFBpY3R1cmVJblBp
Y3R1cmVTdXBwb3J0KQoreworICAgIGF1dG8gY29uZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tXS1dl
YlZpZXdDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0XSk7CisgICAgV0tSZXRhaW5QdHI8V0tDb250
ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRXSyhUZXN0V2ViS2l0QVBJOjpVdGlsOjpjcmVhdGVDb250
ZXh0Rm9ySW5qZWN0ZWRCdW5kbGVUZXN0KCJJbnRlcm5hbHNJbmplY3RlZEJ1bmRsZVRlc3QiKSk7
CisgICAgY29uZmlndXJhdGlvbi5nZXQoKS5wcm9jZXNzUG9vbCA9IChXS1Byb2Nlc3NQb29sICop
Y29udGV4dC5nZXQoKTsKKyAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmll
dyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDMwMCwgMzAwKSBjb25maWd1
cmF0aW9uOmNvbmZpZ3VyYXRpb24uZ2V0KCkgYWRkVG9XaW5kb3c6WUVTXSk7CisKKyAgICBhdXRv
IHN1cHBvcnRzUGljdHVyZUluUGljdHVyZSA9IFsmXSB7CisgICAgICAgIHJldHVybiBbd2ViVmll
dyBzdHJpbmdCeUV2YWx1YXRpbmdKYXZhU2NyaXB0OkAid2luZG93LmludGVybmFscy5zdXBwb3J0
c1BpY3R1cmVJblBpY3R1cmUoKSJdLmJvb2xWYWx1ZTsKKyAgICB9OworCisgICAgQVNTRVJUX1RS
VUUoc3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKCkgPT0gV2ViQ29yZTo6c3VwcG9ydHNQaWN0dXJl
SW5QaWN0dXJlKCkpOworfQorCisjZW5kaWYgLy8gV0tfSEFWRV9DX1NQSQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>