<?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>160178</bug_id>
          
          <creation_ts>2016-07-25 16:45:05 -0700</creation_ts>
          <short_desc>[iPhone] Playing a video on tudou.com plays only sound, no video</short_desc>
          <delta_ts>2016-07-26 16:38:08 -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>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="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>dino</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>jonlee</cc>
    
    <cc>mitz</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1214387</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-07-25 16:45:05 -0700</bug_when>
    <thetext>[iPhone] Playing a video on tudou.com plays only sound, no video</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1214389</commentid>
    <comment_count>1</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-07-25 16:45:31 -0700</bug_when>
    <thetext>*** Bug 160176 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1214394</commentid>
    <comment_count>2</comment_count>
      <attachid>284546</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-07-25 16:54:57 -0700</bug_when>
    <thetext>Created attachment 284546
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1214397</commentid>
    <comment_count>3</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-07-25 16:55:41 -0700</bug_when>
    <thetext>&lt;rdar://problem/27535468&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1214528</commentid>
    <comment_count>4</comment_count>
      <attachid>284546</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2016-07-26 07:29:41 -0700</bug_when>
    <thetext>Comment on attachment 284546
Patch

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

This looks generally fine to me, but you will need to get an official r+ from a WK2 reviewer.

&gt; LayoutTests/media/video-webkit-playsinline.html:22
&gt; +    run(&apos;internals.settings.setInlineMediaPlaybackRequiresPlaysInlineAttribute(&apos; + requiresPlaysInline + &apos;)&apos;);

Nit: I think this would be easier to use if you used a template literal, e.g.: run(`internals.settings.setInlineMediaPlaybackRequiresPlaysInlineAttribute(${requiresPlaysInline})`);

&gt; LayoutTests/media/video-webkit-playsinline.html:27
&gt; +    run(&apos;video.&apos; + (hasWebkitPlaysInline ? &apos;set&apos; : &apos;remove&apos;) + &apos;Attribute(&quot;webkit-playsinline&quot;, &quot;&quot;)&apos;);

Ditto: run(`video.${hasWebkitPlaysInline ? &apos;set&apos; : &apos;remove&apos;}Attribute(&quot;webkit-playsinline&quot;, &quot;&quot;)`);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1214608</commentid>
    <comment_count>5</comment_count>
      <attachid>284612</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-07-26 11:56:11 -0700</bug_when>
    <thetext>Created attachment 284612
Patch for committing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1214750</commentid>
    <comment_count>6</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-07-26 16:38:08 -0700</bug_when>
    <thetext>Committed r203752: &lt;http://trac.webkit.org/changeset/203752&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>284546</attachid>
            <date>2016-07-25 16:54:57 -0700</date>
            <delta_ts>2016-07-26 11:43:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-160178-20160725165349.patch</filename>
            <type>text/plain</type>
            <size>49763</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAzNjk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjZiMTZlNTE5YmY4MTAz
NjJmMzE2ZTgyYTU4ZjdiMzlhMjZmYjVmZi4uNWVkMzk3MjMxMWMwODAyMmY4NGM3YWI1YmU4MDBm
OTQyYzljMWI1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDE2LTA3LTI1ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lQaG9uZV0g
UGxheWluZyBhIHZpZGVvIG9uIHR1ZG91LmNvbSBwbGF5cyBvbmx5IHNvdW5kLCBubyB2aWRlbwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYwMTc4Cisg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yNzUzNTQ2OD4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIHJlLWltcGxlbWVudHMgcjIwMzUy
MCBpbiBhIG11Y2ggc2ltcGxlciB3YXkgd2hpY2ggZG9lc24ndCBpbnZvbHZlIGEgbmV3IFNQSS4K
KyAgICAgICAgVGhlIGJpZ2dlc3QgcHJvYmxlbSB3aXRoIHIyMDM1MjAgaXMgdGhhdCBpdCBtYWtl
IGl0IGltcG9zc2libGUgZm9yIGEgV0tXZWJWaWV3IHRvIG1hdGNoCisgICAgICAgIE1vYmlsZVNh
ZmFyaSdzIGJlaGF2aW9yLiBJbnN0ZWFkIG9mIGFkZGluZyB0aGlzIG5ldyBTUEksIGEgc2ltcGxl
IHZlcnNpb24gY2hlY2sgc2hvdWxkCisgICAgICAgIGJlIHVzZWQgdG8ga2VlcCBvbGQgYXBwcyB3
b3JraW5nLgorCisgICAgICAgIFRoZSBuZXcgYmVoYXZpb3IgaXMgY2hhcmFjdGVyaXplZCBieSB0
aGUgZm9sbG93aW5nIHRhYmxlOgorCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8ICAgICAgICAgICAgICAgIGlPUyAgICAgICAgICAgICAgICAgfCAgICAgIE5v
bi1pT1MKKyAgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgICAg
ICAgIHJlcXVpcmVzUGxheUlubGluZUF0dHJpYnV0ZSA9PSB0cnVlICB8IE9sZCBhcHA6IGhvbm9y
IC13ZWJraXQtcGxheXNpbmxpbmUgfCBob25vciBwbGF5c2lubGluZQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOZXcgYXBwOiBob25vciBwbGF5c2lubGlu
ZSAgICAgICAgIHwgaG9ub3IgcGxheXNpbmxpbmUKKyAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgIHJlcXVpcmVzUGxheUlubGluZUF0dHJpYnV0ZSA9
PSBmYWxzZSB8IEFsd2F5cyBpbmxpbmUgICAgICAgICAgICAgICAgICAgICAgfCBBbHdheXMgaW5s
aW5lCisKKyAgICAgICAgU3BlY2lmaWNhbGx5LCB0aGlzIHBhdGNoIHJldmVydHMgcjIwMzU0NSB3
aGljaCBpcyB0aGUgY29tbWl0IHdoaWNoIGFjdHVhbGx5IHJlbW92ZXMKKyAgICAgICAgdGhlIG9s
ZCBTUEkuIEFzIHNvb24gYXMgU2FmYXJpIGlzIG1pZ3JhdGVkIGJhY2sgdG8gdGhpcyBvbGQgU1BJ
LCBJJ2xsIHJlbW92ZSB0aGUgdHdvCisgICAgICAgIG5ldyBTUElzIGFkZGVkIGluIHIyMDM1MjAu
CisKKyAgICAgICAgVGVzdHM6IG1lZGlhL3ZpZGVvLXBsYXlzaW5saW5lLmh0bWwKKyAgICAgICAg
ICAgICAgIG1lZGlhL3ZpZGVvLXdlYmtpdC1wbGF5c2lubGluZS5odG1sCisKKyAgICAgICAgKiBo
dG1sL01lZGlhRWxlbWVudFNlc3Npb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFFbGVt
ZW50U2Vzc2lvbjo6cmVxdWlyZXNGdWxsc2NyZWVuRm9yVmlkZW9QbGF5YmFjayk6CisgICAgICAg
ICogcGFnZS9TZXR0aW5ncy5jcHA6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5pbjoKKyAgICAg
ICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW50
ZXJuYWxTZXR0aW5nczo6QmFja3VwOjpCYWNrdXApOgorICAgICAgICAoV2ViQ29yZTo6SW50ZXJu
YWxTZXR0aW5nczo6QmFja3VwOjpyZXN0b3JlVG8pOgorICAgICAgICAoV2ViQ29yZTo6SW50ZXJu
YWxTZXR0aW5nczo6c2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRy
aWJ1dGUpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5oOgorICAgICAgICAq
IHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGw6CisKIDIwMTYtMDctMjUgIFdlbnNvbiBIc2ll
aCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgTWVkaWEgY29udHJvbHMgc2hv
dWxkIG5vdCBiZSBkaXNwbGF5ZWQgZm9yIGEgdmlkZW8gdW50aWwgaXQgc3RhcnRzIHBsYXlpbmcK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
bWFjL0NoYW5nZUxvZwppbmRleCBlN2UxYTZjZmNlZGJhMDYxZTA2ZjgxODZkMzJjMTliZmIzZGFh
NjAzLi4zMjI5NTAxMzE2OGUxMWUxZWFjMTcwNDNhNzRhY2EwNzljNWIyZmVkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9tYWMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTYtMDctMjUgIE15bGVzIEMuIE1heGZpZWxkICA8
bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAgICAgICBbaVBob25lXSBQbGF5aW5nIGEgdmlkZW8g
b24gdHVkb3UuY29tIHBsYXlzIG9ubHkgc291bmQsIG5vIHZpZGVvCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjAxNzgKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzI3NTM1NDY4PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogV2ViVmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaDoKKyAgICAgICAg
KiBXZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tOgorICAgICAgICAoK1tXZWJQcmVmZXJlbmNlcyBp
bml0aWFsaXplXSk6CisgICAgICAgICgtW1dlYlByZWZlcmVuY2VzIGlubGluZU1lZGlhUGxheWJh
Y2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlXSk6CisgICAgICAgICgtW1dlYlByZWZlcmVu
Y2VzIHNldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlOl0p
OgorICAgICAgICAqIFdlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmg6CisgICAgICAgICog
V2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3IF9wcmVmZXJlbmNlc0NoYW5n
ZWQ6XSk6CisKIDIwMTYtMDctMjEgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZW1vdmUgc3VwcG9ydCBmb3IgZGVwcmVjYXRlZCBTUEkgaW5saW5l
TWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA2
Y2VmMmRlYTkyMzQwMTEzZDMzMDhhODIzNWNjMmUxZjFkNjc2Y2UyLi4xOWEzNDY1ZjQ3ZTk3MGY1
YmYzMzMyNTI3NzRlMDFkMWJiMTE0OGJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIw
MTYtMDctMjUgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAg
ICAgICBbaVBob25lXSBQbGF5aW5nIGEgdmlkZW8gb24gdHVkb3UuY29tIHBsYXlzIG9ubHkgc291
bmQsIG5vIHZpZGVvCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNjAxNzgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzI3NTM1NDY4PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2hhcmVkL1dlYlByZWZl
cmVuY2VzRGVmaW5pdGlvbnMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJl
bmNlcy5jcHA6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0SW5saW5lTWVkaWFQbGF5YmFja1Jl
cXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldElu
bGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1JlZlByaXZhdGUuaDoKKyAgICAgICAgKiBV
SVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbToKKyAgICAgICAgKC1bV0tXZWJWaWV3IF9p
bml0aWFsaXplV2l0aENvbmZpZ3VyYXRpb246XSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9D
b2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLm1tOgorICAgICAgICAoLVtXS1dlYlZpZXdDb25m
aWd1cmF0aW9uIGluaXRdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3Q29uZmlndXJhdGlvbiBjb3B5
V2l0aFpvbmU6XSk6CisgICAgICAgICgtW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gX2lubGluZU1l
ZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlXSk6CisgICAgICAgICgtW1dL
V2ViVmlld0NvbmZpZ3VyYXRpb24gX3NldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlz
SW5saW5lQXR0cmlidXRlOl0pOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJW
aWV3Q29uZmlndXJhdGlvblByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVwZGF0ZVByZWZlcmVuY2Vz
KToKKwogMjAxNi0wNy0yNSAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgogCiAgICAgICAg
IEZpeCBhc3NlcnRpb24uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL01lZGlhRWxl
bWVudFNlc3Npb24uY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYUVsZW1lbnRTZXNzaW9u
LmNwcAppbmRleCA3MGRhYTlmODViYjg1NzA1NmExNjllN2UxM2YwMzJhZTIyZmRmOWQxLi5iZTgx
YjAyNDhlN2QwMDgxZTgwODQyZWU4NjhjMDM0MmU4NDVkOGRlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL01lZGlhRWxlbWVudFNlc3Npb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvTWVkaWFFbGVtZW50U2Vzc2lvbi5jcHAKQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbmNsdWRl
ICJSZW5kZXJWaWV3LmgiCiAjaW5jbHVkZSAiU2NyaXB0Q29udHJvbGxlci5oIgogI2luY2x1ZGUg
IlNvdXJjZUJ1ZmZlci5oIgorI2luY2x1ZGUgPHd0Zi9zcGkvZGFyd2luL2R5bGRTUEkuaD4KIAog
I2lmIFBMQVRGT1JNKElPUykKICNpbmNsdWRlICJBdWRpb1Nlc3Npb24uaCIKQEAgLTQ2NSwxNiAr
NDY2LDE0IEBAIGJvb2wgTWVkaWFFbGVtZW50U2Vzc2lvbjo6cmVxdWlyZXNGdWxsc2NyZWVuRm9y
VmlkZW9QbGF5YmFjayhjb25zdCBIVE1MTWVkaWFFbGVtCiAgICAgaWYgKCFzZXR0aW5ncyB8fCAh
c2V0dGluZ3MtPmFsbG93c0lubGluZU1lZGlhUGxheWJhY2soKSkKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAKLSAgICBib29sIHJlcXVpcmVzUGxheXNJbmxpbmUgPSBzZXR0aW5ncy0+YWxsb3dzSW5s
aW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZSgpOwotICAgIGJvb2wgcmVx
dWlyZXNXZWJLaXRQbGF5c0lubGluZSA9IHNldHRpbmdzLT5hbGxvd3NJbmxpbmVNZWRpYVBsYXli
YWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlKCk7Ci0KLSAgICBpZiAoIXJlcXVpcmVz
UGxheXNJbmxpbmUgJiYgIXJlcXVpcmVzV2ViS2l0UGxheXNJbmxpbmUpCisgICAgaWYgKCFzZXR0
aW5ncy0+aW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUoKSkK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgYm9vbCBoYXNQbGF5c0lubGluZSA9IGVsZW1l
bnQuaGFzQXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihIVE1MTmFtZXM6OnBsYXlzaW5s
aW5lQXR0cik7Ci0gICAgYm9vbCBoYXNXZWJLaXRQbGF5c0lubGluZSA9IGVsZW1lbnQuaGFzQXR0
cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbihIVE1MTmFtZXM6OndlYmtpdF9wbGF5c2lubGlu
ZUF0dHIpOwotCi0gICAgcmV0dXJuICEoKHJlcXVpcmVzUGxheXNJbmxpbmUgJiYgaGFzUGxheXNJ
bmxpbmUpIHx8IChyZXF1aXJlc1dlYktpdFBsYXlzSW5saW5lICYmIGhhc1dlYktpdFBsYXlzSW5s
aW5lKSk7CisjaWYgUExBVEZPUk0oSU9TKQorICAgIGlmIChkeWxkX2dldF9wcm9ncmFtX3Nka192
ZXJzaW9uKCkgPCBEWUxEX0lPU19WRVJTSU9OXzEwXzApCisgICAgICAgIHJldHVybiAhZWxlbWVu
dC5oYXNBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKEhUTUxOYW1lczo6d2Via2l0X3Bs
YXlzaW5saW5lQXR0cik7CisjZW5kaWYKKyAgICByZXR1cm4gIWVsZW1lbnQuaGFzQXR0cmlidXRl
V2l0aG91dFN5bmNocm9uaXphdGlvbihIVE1MTmFtZXM6OnBsYXlzaW5saW5lQXR0cik7CiB9CiAK
IGJvb2wgTWVkaWFFbGVtZW50U2Vzc2lvbjo6YWxsb3dzQXV0b21hdGljTWVkaWFEYXRhTG9hZGlu
Zyhjb25zdCBIVE1MTWVkaWFFbGVtZW50JiBlbGVtZW50KSBjb25zdApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRp
bmdzLmNwcAppbmRleCA3NGNkYjNlOWMwMjUwMmYwOWM5M2RlNjkyYjYyZGY5YWVmYWNkMTQ1Li5l
NzZiYTM0NGNmNmM3M2MwM2NhYTA4NjU3MWI4MWMyMmNiMTUzMWQyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Nl
dHRpbmdzLmNwcApAQCAtMTM4LDYgKzEzOCw3IEBAIHN0YXRpYyBjb25zdCBib29sIGRlZmF1bHRG
aXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dCA9IHRydWU7CiBzdGF0aWMgY29uc3Qg
Ym9vbCBkZWZhdWx0Rml4ZWRCYWNrZ3JvdW5kc1BhaW50UmVsYXRpdmVUb0RvY3VtZW50ID0gdHJ1
ZTsKIHN0YXRpYyBjb25zdCBib29sIGRlZmF1bHRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRm9yRml4
ZWRQb3NpdGlvbkVuYWJsZWQgPSB0cnVlOwogc3RhdGljIGNvbnN0IGJvb2wgZGVmYXVsdEFsbG93
c0lubGluZU1lZGlhUGxheWJhY2sgPSBmYWxzZTsKK3N0YXRpYyBjb25zdCBib29sIGRlZmF1bHRJ
bmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZSA9IHRydWU7CiBz
dGF0aWMgY29uc3QgYm9vbCBkZWZhdWx0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5
c0lubGluZUF0dHJpYnV0ZSA9IHRydWU7CiBzdGF0aWMgY29uc3QgYm9vbCBkZWZhdWx0QWxsb3dz
SW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZSA9IHRydWU7
CiBzdGF0aWMgY29uc3QgYm9vbCBkZWZhdWx0VmlkZW9QbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1
cmUgPSB0cnVlOwpAQCAtMTUyLDYgKzE1Myw3IEBAIHN0YXRpYyBjb25zdCBib29sIGRlZmF1bHRG
aXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dCA9IGZhbHNlOwogc3RhdGljIGNvbnN0
IGJvb2wgZGVmYXVsdEZpeGVkQmFja2dyb3VuZHNQYWludFJlbGF0aXZlVG9Eb2N1bWVudCA9IGZh
bHNlOwogc3RhdGljIGNvbnN0IGJvb2wgZGVmYXVsdEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdGb3JG
aXhlZFBvc2l0aW9uRW5hYmxlZCA9IGZhbHNlOwogc3RhdGljIGNvbnN0IGJvb2wgZGVmYXVsdEFs
bG93c0lubGluZU1lZGlhUGxheWJhY2sgPSB0cnVlOworc3RhdGljIGNvbnN0IGJvb2wgZGVmYXVs
dElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlID0gZmFsc2U7
CiBzdGF0aWMgY29uc3QgYm9vbCBkZWZhdWx0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQ
bGF5c0lubGluZUF0dHJpYnV0ZSA9IGZhbHNlOwogc3RhdGljIGNvbnN0IGJvb2wgZGVmYXVsdEFs
bG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1dGUgPSBm
YWxzZTsKIHN0YXRpYyBjb25zdCBib29sIGRlZmF1bHRWaWRlb1BsYXliYWNrUmVxdWlyZXNVc2Vy
R2VzdHVyZSA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5n
cy5pbiBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaW4KaW5kZXggZGE0NmI4MTA5ZmM5
YTg1ZWUxZWMxNDdmZmI1MTUyNmNiOTA2NTFlMy4uNWE1ZmQ1OTc5OGU4ODdjMmM5YjliYzJmMmU4
YThlMjE0MDQ1ZjNhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5p
bgorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmluCkBAIC0xMzEsNiArMTMxLDcg
QEAgYXVkaW9QbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUgaW5pdGlhbD1kZWZhdWx0QXVkaW9Q
bGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUKIG1haW5Db250ZW50VXNlckdlc3R1cmVPdmVycmlk
ZUVuYWJsZWQgaW5pdGlhbD1mYWxzZQogYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFjayBpbml0aWFs
PWRlZmF1bHRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrCiBhbGxvd3NJbmxpbmVNZWRpYVBsYXli
YWNrQWZ0ZXJGdWxsc2NyZWVuIGluaXRpYWw9dHJ1ZQoraW5saW5lTWVkaWFQbGF5YmFja1JlcXVp
cmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUgaW5pdGlhbD1kZWZhdWx0SW5saW5lTWVkaWFQbGF5YmFj
a1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUKIGFsbG93c0lubGluZU1lZGlhUGxheWJhY2tX
aXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUgaW5pdGlhbD1kZWZhdWx0QWxsb3dzSW5saW5lTWVkaWFQ
bGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZQogYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFj
a1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZSBpbml0aWFsPWRlZmF1bHRBbGxvd3NJbmxp
bmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlCiBhbGxvd3NQaWN0
dXJlSW5QaWN0dXJlTWVkaWFQbGF5YmFjayBpbml0aWFsPWRlZmF1bHRBbGxvd3NQaWN0dXJlSW5Q
aWN0dXJlTWVkaWFQbGF5YmFjawpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbFNldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0
aW5ncy5jcHAKaW5kZXggNmYxZjEzYTgyYWQ2ZGYwNzFjZjZjYTg3YTliMWExNTAzNDg5YTdkMC4u
ODEzNWQwOTUyNDg3YWNiMTEwNDlhNjBiZTc4YjFiMjVjYTQ3MDViNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCkBAIC0xMDcsNiArMTA3LDcgQEAgSW50
ZXJuYWxTZXR0aW5nczo6QmFja3VwOjpCYWNrdXAoU2V0dGluZ3MmIHNldHRpbmdzKQogI2VuZGlm
CiAgICAgLCBtX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2soc2V0dGluZ3MuYWxsb3dzSW5saW5l
TWVkaWFQbGF5YmFjaygpKQogICAgICwgbV9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrQWZ0ZXJG
dWxsc2NyZWVuKHNldHRpbmdzLmFsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3Jl
ZW4oKSkKKyAgICAsIG1faW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRy
aWJ1dGUoc2V0dGluZ3MuaW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRy
aWJ1dGUoKSkKICAgICAsIG1fYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGlu
ZUF0dHJpYnV0ZShzZXR0aW5ncy5hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5s
aW5lQXR0cmlidXRlKCkpCiAgICAgLCBtX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2Vi
S2l0UGxheXNJbmxpbmVBdHRyaWJ1dGUoc2V0dGluZ3MuYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFj
a1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZSgpKQogI2lmIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFX0lOX1dPUktFUlMpCkBAIC0xODQsNiArMTg1LDcgQEAgdm9pZCBJbnRlcm5hbFNldHRp
bmdzOjpCYWNrdXA6OnJlc3RvcmVUbyhTZXR0aW5ncyYgc2V0dGluZ3MpCiAjZW5kaWYKICAgICBz
ZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrKG1fYWxsb3dzSW5saW5lTWVkaWFQ
bGF5YmFjayk7CiAgICAgc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja0FmdGVy
RnVsbHNjcmVlbihtX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4pOwor
ICAgIHNldHRpbmdzLnNldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0
cmlidXRlKG1faW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUp
OwogICAgIHNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxp
bmVBdHRyaWJ1dGUobV9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0
cmlidXRlKTsKICAgICBzZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdl
YktpdFBsYXlzSW5saW5lQXR0cmlidXRlKG1fYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhX
ZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZSk7CiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6
c2hhcmVkRmVhdHVyZXMoKS5zZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQobV9wbHVnaW5SZXBs
YWNlbWVudEVuYWJsZWQpOwpAQCAtNTc2LDYgKzU3OCwxMiBAQCB2b2lkIEludGVybmFsU2V0dGlu
Z3M6OnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4oYm9vbCBhbGxv
d3MsCiAgICAgc2V0dGluZ3MoKS0+c2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja0FmdGVyRnVs
bHNjcmVlbihhbGxvd3MpOwogfQogCit2b2lkIEludGVybmFsU2V0dGluZ3M6OnNldElubGluZU1l
ZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKGJvb2wgcmVxdWlyZXMsIEV4
Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIEludGVybmFsU2V0dGluZ3NHdWFyZEZvclNldHRpbmdz
KCk7CisgICAgc2V0dGluZ3MoKS0+c2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJ
bmxpbmVBdHRyaWJ1dGUocmVxdWlyZXMpOworfQorCiB2b2lkIEludGVybmFsU2V0dGluZ3M6OnNl
dEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUoYm9vbCBy
ZXF1aXJlcywgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgSW50ZXJuYWxTZXR0aW5nc0d1YXJk
Rm9yU2V0dGluZ3MoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxTZXR0aW5ncy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmgK
aW5kZXggYzZhNmNiZWNlMmFhOWM1ZmE3NWVlZjU4OWVjZTQ4OWJlNDg0YTM4MC4uYmJlMjkwNjg2
NWNlNDRkNDY0MzdhNDIxZjQ5MTFiOTkyNmVhMjNhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbFNldHRpbmdzLmgKQEAgLTEwNyw2ICsxMDcsNyBAQCBwdWJsaWM6CiAjZW5kaWYK
ICAgICAgICAgYm9vbCBtX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2s7CiAgICAgICAgIGJvb2wg
bV9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrQWZ0ZXJGdWxsc2NyZWVuOworICAgICAgICBib29s
IG1faW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGU7CiAgICAg
ICAgIGJvb2wgbV9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmli
dXRlOwogICAgICAgICBib29sIG1fYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQ
bGF5c0lubGluZUF0dHJpYnV0ZTsKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JL
RVJTKQpAQCAtMTYzLDYgKzE2NCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldFNjcm9sbGluZ1Ry
ZWVJbmNsdWRlc0ZyYW1lcyhib29sLCBFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRBbGxv
d3NJbmxpbmVNZWRpYVBsYXliYWNrKGJvb2wsIEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIHNl
dEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4oYm9vbCwgRXhjZXB0aW9u
Q29kZSYpOworICAgIHZvaWQgc2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxp
bmVBdHRyaWJ1dGUoYm9vbCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0QWxsb3dzSW5s
aW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZShib29sLCBFeGNlcHRpb25D
b2RlJik7CiAgICAgdm9pZCBzZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBs
YXlzSW5saW5lQXR0cmlidXRlKGJvb2wsIEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIHNldElu
ZGV4ZWREQldvcmtlcnNFbmFibGVkKGJvb2wsIEV4Y2VwdGlvbkNvZGUmKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsCmluZGV4IDc5NDM2NzIyMmExMjEyMTkz
Y2M4NDBkMGM5Y2I2MTRlOTAwMDQzNTEuLjg0NTUwNTVkYmMzZGUzNDg4NzdiNGVkNjk3MmYwZWI4
ZjBiOWUxYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0
aW5ncy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlk
bApAQCAtNzcsNiArNzcsNyBAQAogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0TWluaW11
bVRpbWVySW50ZXJ2YWwodW5yZXN0cmljdGVkIGRvdWJsZSBpbnRlcnZhbEluU2Vjb25kcyk7CiAg
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrKGJv
b2xlYW4gYWxsb3dzKTsKICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldEFsbG93c0lubGlu
ZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4oYm9vbGVhbiBhbGxvd3MpOworICAgIFtSYWlz
ZXNFeGNlcHRpb25dIHZvaWQgc2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxp
bmVBdHRyaWJ1dGUoYm9vbGVhbiByZXF1aXJlcyk7CiAgICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9p
ZCBzZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlKGJv
b2xlYW4gcmVxdWlyZXMpOwogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0QWxsb3dzSW5s
aW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZShib29sZWFuIHJl
cXVpcmVzKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVm
ZXJlbmNlS2V5c1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVy
ZW5jZUtleXNQcml2YXRlLmgKaW5kZXggMDZlNzIyMTBkNWQ5N2VkZTVjODcyZGYxMjE4NTNmYTgy
NThhOGU2YS4uMGZhYmM2ZDJlOTlhMDgzOTFlMzVkOWM4NmFkOTM2NWU0MWQ4MjI5MyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUu
aAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0
ZS5oCkBAIC0xMjYsNiArMTI2LDcgQEAKICNkZWZpbmUgV2ViS2l0TWFpbkNvbnRlbnRVc2VyR2Vz
dHVyZU92ZXJyaWRlRW5hYmxlZFByZWZlcmVuY2VLZXkgQCJXZWJLaXRNYWluQ29udGVudFVzZXJH
ZXN0dXJlT3ZlcnJpZGVFbmFibGVkIgogI2RlZmluZSBXZWJLaXRBbGxvd3NJbmxpbmVNZWRpYVBs
YXliYWNrUHJlZmVyZW5jZUtleSBAIldlYktpdE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUiCiAj
ZGVmaW5lIFdlYktpdEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW5QcmVm
ZXJlbmNlS2V5IEAiV2ViS2l0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja0FmdGVyRnVsbHNjcmVl
biIKKyNkZWZpbmUgV2ViS2l0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVB
dHRyaWJ1dGVLZXkgQCJJbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJp
YnV0ZSIKICNkZWZpbmUgV2ViS2l0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lu
bGluZUF0dHJpYnV0ZUtleSBAIkFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxp
bmVBdHRyaWJ1dGUiCiAjZGVmaW5lIFdlYktpdEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRo
V2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1dGVLZXkgQCJBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNr
V2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlIgogI2RlZmluZSBXZWJLaXRJbnZpc2libGVB
dXRvcGxheU5vdFBlcm1pdHRlZEtleSBAIkludmlzaWJsZUF1dG9wbGF5Tm90UGVybWl0dGVkIgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbSBi
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0KaW5kZXggYzZkOWEz
OGY4MDI5MzFiYzUxNTgxYzZhZmFmN2M2M2Y3ZDQ2MmU5OC4uMWM5NDQ5ZDBiOWQ2N2MwYTIxNzI5
Y2I1ZmE2YmY0M2FlNDAyMWJiZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJQcmVmZXJlbmNlcy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlBy
ZWZlcmVuY2VzLm1tCkBAIC01MjUsNiArNTI1LDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAjaWYg
IVBMQVRGT1JNKElPUykKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOllFU10sICBX
ZWJLaXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrUHJlZmVyZW5jZUtleSwKICAgICAgICAgW05T
TnVtYmVyIG51bWJlcldpdGhCb29sOk5PXSwgICBXZWJLaXRBbGxvd3NJbmxpbmVNZWRpYVBsYXli
YWNrQWZ0ZXJGdWxsc2NyZWVuUHJlZmVyZW5jZUtleSwKKyAgICAgICAgW05TTnVtYmVyIG51bWJl
cldpdGhCb29sOk5PXSwgICBXZWJLaXRJbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lu
bGluZUF0dHJpYnV0ZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOk5PXSwg
ICBXZWJLaXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRl
S2V5LAogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9dLCAgIFdlYktpdEFsbG93
c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1dGVLZXksCiAg
ICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpZRVNdLCAgV2ViS2l0TWVkaWFDb250cm9s
c1NjYWxlV2l0aFBhZ2Vab29tUHJlZmVyZW5jZUtleSwKQEAgLTUzOSw2ICs1NDAsNyBAQCArICh2
b2lkKWluaXRpYWxpemUKICNlbHNlCiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDph
bGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrXSwgICBXZWJLaXRBbGxvd3NJbmxpbmVNZWRpYVBsYXli
YWNrUHJlZmVyZW5jZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOmFsbG93
c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW5dLCAgIFdlYktpdEFsbG93c0lubGlu
ZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW5QcmVmZXJlbmNlS2V5LAorICAgICAgICBbTlNO
dW1iZXIgbnVtYmVyV2l0aEJvb2w6cmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZV0sIFdlYktp
dElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlS2V5LAogICAg
ICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6cmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0
ZV0sIFdlYktpdEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1
dGVLZXksCiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpyZXF1aXJlc1BsYXlzSW5s
aW5lQXR0cmlidXRlXSwgV2ViS2l0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQ
bGF5c0lubGluZUF0dHJpYnV0ZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29s
Ok5PXSwgICBXZWJLaXRNZWRpYUNvbnRyb2xzU2NhbGVXaXRoUGFnZVpvb21QcmVmZXJlbmNlS2V5
LApAQCAtMjI4NSw2ICsyMjg3LDE2IEBAIC0gKHZvaWQpc2V0TWVkaWFQbGF5YmFja0FsbG93c0lu
bGluZTooQk9PTClmbGFnCiAgICAgW3NlbGYgX3NldEJvb2xWYWx1ZTpmbGFnIGZvcktleTpXZWJL
aXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrUHJlZmVyZW5jZUtleV07CiB9CiAKKy0gKEJPT0wp
aW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUKK3sKKyAgICBy
ZXR1cm4gW3NlbGYgX2Jvb2xWYWx1ZUZvcktleTpXZWJLaXRJbmxpbmVNZWRpYVBsYXliYWNrUmVx
dWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZUtleV07Cit9CisKKy0gKHZvaWQpc2V0SW5saW5lTWVk
aWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGU6KEJPT0wpZmxhZworeworICAg
IFtzZWxmIF9zZXRCb29sVmFsdWU6ZmxhZyBmb3JLZXk6V2ViS2l0SW5saW5lTWVkaWFQbGF5YmFj
a1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGVLZXldOworfQorCiAtIChCT09MKWFsbG93c0lu
bGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUKIHsKICAgICByZXR1cm4g
W3NlbGYgX2Jvb2xWYWx1ZUZvcktleTpXZWJLaXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0
aFBsYXlzSW5saW5lQXR0cmlidXRlS2V5XTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCmluZGV4IDQyNTdiOTc5MWNhMTExNzJmNjM2OGM5
MjNjYmZhYTliZGYyZTgyYzkuLjhjM2VmYjJiNjY2ZmQ4MmI0NmI1ZWFjZTlkZmFkZTM3ZDkyZGJj
MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQ
cml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlc1By
aXZhdGUuaApAQCAtMjYyLDYgKzI2Miw5IEBAIGV4dGVybiBOU1N0cmluZyAqV2ViUHJlZmVyZW5j
ZXNDYWNoZU1vZGVsQ2hhbmdlZEludGVybmFsTm90aWZpY2F0aW9uOwogLSAodm9pZClzZXRNZWRp
YVBsYXliYWNrQWxsb3dzSW5saW5lOihCT09MKWZsYWc7CiAtIChCT09MKW1lZGlhUGxheWJhY2tB
bGxvd3NJbmxpbmU7CiAKKy0gKHZvaWQpc2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxh
eXNJbmxpbmVBdHRyaWJ1dGU6KEJPT0wpZmxhZzsKKy0gKEJPT0wpaW5saW5lTWVkaWFQbGF5YmFj
a1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGU7CisKIC0gKHZvaWQpc2V0QWxsb3dzSW5saW5l
TWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZTooQk9PTClmbGFnOwogLSAoQk9P
TClhbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0gYi9Tb3VyY2Uv
V2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KaW5kZXggMjI4Njg2ZGNmNTEyZjhjZGUxMGIw
NTBjZTY0OTk4YWQ4NDRkMDFjMi4uMjMxZjkwMDA4OWI2ZWZjOTRlNjNiZjg1OTI0MzU3NmI1MDQ2
ZDdmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQpAQCAtMjM0OCw2ICsyMzQ4
LDcgQEAgLSAodm9pZClfcHJlZmVyZW5jZXNDaGFuZ2VkOihXZWJQcmVmZXJlbmNlcyAqKXByZWZl
cmVuY2VzCiAgICAgc2V0dGluZ3Muc2V0TWFpbkNvbnRlbnRVc2VyR2VzdHVyZU92ZXJyaWRlRW5h
YmxlZChbcHJlZmVyZW5jZXMgb3ZlcnJpZGVVc2VyR2VzdHVyZVJlcXVpcmVtZW50Rm9yTWFpbkNv
bnRlbnRdKTsKICAgICBzZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrKFtwcmVm
ZXJlbmNlcyBtZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lXSk7CiAgICAgc2V0dGluZ3Muc2V0QWxs
b3dzSW5saW5lTWVkaWFQbGF5YmFja0FmdGVyRnVsbHNjcmVlbihbcHJlZmVyZW5jZXMgYWxsb3dz
SW5saW5lTWVkaWFQbGF5YmFja0FmdGVyRnVsbHNjcmVlbl0pOworICAgIHNldHRpbmdzLnNldElu
bGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKFtwcmVmZXJlbmNl
cyBpbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZV0pOwogICAg
IHNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRy
aWJ1dGUoW3ByZWZlcmVuY2VzIGFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxp
bmVBdHRyaWJ1dGVdKTsKICAgICBzZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNr
V2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlKFtwcmVmZXJlbmNlcyBhbGxvd3NJbmxpbmVN
ZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlXSk7CiAgICAgc2V0dGlu
Z3Muc2V0SW52aXNpYmxlQXV0b3BsYXlOb3RQZXJtaXR0ZWQoW3ByZWZlcmVuY2VzIGludmlzaWJs
ZUF1dG9wbGF5Tm90UGVybWl0dGVkXSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFy
ZWQvV2ViUHJlZmVyZW5jZXNEZWZpbml0aW9ucy5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dl
YlByZWZlcmVuY2VzRGVmaW5pdGlvbnMuaAppbmRleCA5OTYwMWU3MWQwOGRjNDlhOTA3OGJkNGU1
YmIyYjExNDUwYzQ2OGJlLi42MjNhMWE4NDYzYzYyOWNkYWQ5ZjhmN2I2YmM0NjVkNmIzOGY0Yzdk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNEZWZpbml0
aW9ucy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc0RlZmluaXRp
b25zLmgKQEAgLTE1Niw2ICsxNTYsNyBAQAogICAgIG1hY3JvKE1haW5Db250ZW50VXNlckdlc3R1
cmVPdmVycmlkZUVuYWJsZWQsIG1haW5Db250ZW50VXNlckdlc3R1cmVPdmVycmlkZUVuYWJsZWQs
IEJvb2wsIGJvb2wsIGZhbHNlLCAiIiwgIiIpIFwKICAgICBtYWNybyhBbGxvd3NJbmxpbmVNZWRp
YVBsYXliYWNrLCBhbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrLCBCb29sLCBib29sLCBERUZBVUxU
X0FMTE9XU19JTkxJTkVfTUVESUFfUExBWUJBQ0ssICIiLCAiIikgXAogICAgIG1hY3JvKEFsbG93
c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4sIGFsbG93c0lubGluZU1lZGlhUGxh
eWJhY2tBZnRlckZ1bGxzY3JlZW4sIEJvb2wsIGJvb2wsIERFRkFVTFRfQUxMT1dTX0lOTElORV9N
RURJQV9QTEFZQkFDS19BRlRFUl9GVUxMU0NSRUVOLCAiIiwgIiIpIFwKKyAgICBtYWNybyhJbmxp
bmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZSwgaW5saW5lTWVkaWFQ
bGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUsIEJvb2wsIGJvb2wsIERFRkFVTFRf
SU5MSU5FX01FRElBX1BMQVlCQUNLX1JFUVVJUkVTX1BMQVlTX0lOTElORV9BVFRSSUJVVEUsICIi
LCAiIikgXAogICAgIG1hY3JvKEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxp
bmVBdHRyaWJ1dGUsIGFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRy
aWJ1dGUsIEJvb2wsIGJvb2wsIERFRkFVTFRfQUxMT1dTX0lOTElORV9NRURJQV9QTEFZQkFDS19X
SVRIX1BMQVlTX0lOTElORV9BVFRSSUJVVEUsICIiLCAiIikgXAogICAgIG1hY3JvKEFsbG93c0lu
bGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1dGUsIGFsbG93c0lu
bGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1dGUsIEJvb2wsIGJv
b2wsIERFRkFVTFRfQUxMT1dTX0lOTElORV9NRURJQV9QTEFZQkFDS19XSVRIX1dFQktJVF9QTEFZ
U19JTkxJTkVfQVRUUklCVVRFLCAiIiwgIiIpIFwKICAgICBtYWNybyhJbnZpc2libGVBdXRvcGxh
eU5vdFBlcm1pdHRlZCwgaW52aXNpYmxlQXV0b3BsYXlOb3RQZXJtaXR0ZWQsIEJvb2wsIGJvb2ws
IERFRkFVTFRfSU5WSVNJQkxFX0FVVE9QTEFZX05PVF9QRVJNSVRURUQsICIiLCAiIikgXApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3Bw
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCmluZGV4
IDc5NDcwZTEwYTVjMmUxYzcwZGQwOTVmMTE2OWExMTJjYTNkOTQwMTMuLjVlY2U1ZTE5MjRiNDQx
MjMxYjMwYzZlNDE3NmM3Njk2NDAzZWQ0ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKQEAgLTc5Myw2ICs3OTMsMTYgQEAgYm9vbCBX
S1ByZWZlcmVuY2VzR2V0TWVkaWFQbGF5YmFja0FsbG93c0lubGluZShXS1ByZWZlcmVuY2VzUmVm
IHByZWZlcmVuY2VzUmVmKQogICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5hbGxv
d3NJbmxpbmVNZWRpYVBsYXliYWNrKCk7CiB9CiAKK3ZvaWQgV0tQcmVmZXJlbmNlc1NldElubGlu
ZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKFdLUHJlZmVyZW5jZXNS
ZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZykKK3sKKyAgICB0b0ltcGwocHJlZmVyZW5jZXNS
ZWYpLT5zZXRJbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZShm
bGFnKTsKK30KKworYm9vbCBXS1ByZWZlcmVuY2VzR2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVp
cmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikK
K3sKKyAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+aW5saW5lTWVkaWFQbGF5YmFj
a1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUoKTsKK30KKwogdm9pZCBXS1ByZWZlcmVuY2Vz
U2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZShXS1By
ZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpCiB7CiAgICAgdG9JbXBsKHBy
ZWZlcmVuY2VzUmVmKS0+c2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGlu
ZUF0dHJpYnV0ZShmbGFnKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvQy9XS1ByZWZlcmVuY2VzUmVmUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9DL1dLUHJlZmVyZW5jZXNSZWZQcml2YXRlLmgKaW5kZXggZjA3YTkwOWY2NjcyMjYzOWZm
ZjFkMjYxZjhiMDM2MGI0OTk0OGYzOC4uMDExZWI3NzU0ZjAzMzM1N2UxYjcyN2E1OTcxMTA3MmUx
MDFkOTM5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJl
ZmVyZW5jZXNSZWZQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9D
L1dLUHJlZmVyZW5jZXNSZWZQcml2YXRlLmgKQEAgLTE5MSw2ICsxOTEsMTAgQEAgV0tfRVhQT1JU
IGJvb2wgV0tQcmVmZXJlbmNlc0dldE1haW5Db250ZW50VXNlckdlc3R1cmVPdmVycmlkZUVuYWJs
ZWQoV0tQcmVmZXJlbmMKIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRNZWRpYVBsYXli
YWNrQWxsb3dzSW5saW5lKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxh
Zyk7CiBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0TWVkaWFQbGF5YmFja0FsbG93c0lu
bGluZShXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKIAorLy8gRGVmYXVsdHMgdG8g
ZmFsc2UuCitXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0SW5saW5lTWVkaWFQbGF5YmFj
a1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNl
c1JlZiwgYm9vbCBmbGFnKTsKK1dLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRJbmxpbmVN
ZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZShXS1ByZWZlcmVuY2VzUmVm
IHByZWZlcmVuY2VzUmVmKTsKKwogLy8gRGVmYXVsdHMgdG8gdHJ1ZSBvbiBpT1MsIGZhbHNlIGVs
c2V3aGVyZS4KIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRBbGxvd3NJbmxpbmVNZWRp
YVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVy
ZW5jZXNSZWYsIGJvb2wgZmxhZyk7CiBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0QWxs
b3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZShXS1ByZWZlcmVu
Y2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1dlYlZpZXcubW0KaW5kZXggNDI2NjMxZWZmYzZmMjgzZDY4MTcwZGM3ZmM1ZmNj
YTFiODk4ZDIwNi4uYzY5ZDg4NTc2YmQ2NjU4MmEwYWI0NjJhOTI0ZmQzNmRlMDc2NDdiZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0K
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KQEAg
LTQ1NSw2ICs0NTUsNyBAQCAtICh2b2lkKV9pbml0aWFsaXplV2l0aENvbmZpZ3VyYXRpb246KFdL
V2ViVmlld0NvbmZpZ3VyYXRpb24gKiljb25maWd1cmF0aW9uCiAKICAgICBwYWdlQ29uZmlndXJh
dGlvbi0+cHJlZmVyZW5jZVZhbHVlcygpLnNldChXZWJLaXQ6OldlYlByZWZlcmVuY2VzS2V5Ojph
bGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrS2V5KCksIFdlYktpdDo6V2ViUHJlZmVyZW5jZXNTdG9y
ZTo6VmFsdWUoISFbX2NvbmZpZ3VyYXRpb24gYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja10pKTsK
ICAgICBwYWdlQ29uZmlndXJhdGlvbi0+cHJlZmVyZW5jZVZhbHVlcygpLnNldChXZWJLaXQ6Oldl
YlByZWZlcmVuY2VzS2V5OjphbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrQWZ0ZXJGdWxsc2NyZWVu
S2V5KCksIFdlYktpdDo6V2ViUHJlZmVyZW5jZXNTdG9yZTo6VmFsdWUoISFbX2NvbmZpZ3VyYXRp
b24gX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW5dKSk7CisgICAgcGFn
ZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2VWYWx1ZXMoKS5zZXQoV2ViS2l0OjpXZWJQcmVmZXJl
bmNlc0tleTo6aW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGVL
ZXkoKSwgV2ViS2l0OjpXZWJQcmVmZXJlbmNlc1N0b3JlOjpWYWx1ZSghIVtfY29uZmlndXJhdGlv
biBfaW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGVdKSk7CiAg
ICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2VWYWx1ZXMoKS5zZXQoV2ViS2l0OjpXZWJQ
cmVmZXJlbmNlc0tleTo6YWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0
dHJpYnV0ZUtleSgpLCBXZWJLaXQ6OldlYlByZWZlcmVuY2VzU3RvcmU6OlZhbHVlKCEhW19jb25m
aWd1cmF0aW9uIF9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmli
dXRlXSkpOwogICAgIHBhZ2VDb25maWd1cmF0aW9uLT5wcmVmZXJlbmNlVmFsdWVzKCkuc2V0KFdl
YktpdDo6V2ViUHJlZmVyZW5jZXNLZXk6OmFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2Vi
S2l0UGxheXNJbmxpbmVBdHRyaWJ1dGVLZXkoKSwgV2ViS2l0OjpXZWJQcmVmZXJlbmNlc1N0b3Jl
OjpWYWx1ZSghIVtfY29uZmlndXJhdGlvbiBfYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhX
ZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZV0pKTsKICAgICBwYWdlQ29uZmlndXJhdGlvbi0+cHJl
ZmVyZW5jZVZhbHVlcygpLnNldChXZWJLaXQ6OldlYlByZWZlcmVuY2VzS2V5OjphbGxvd3NQaWN0
dXJlSW5QaWN0dXJlTWVkaWFQbGF5YmFja0tleSgpLCBXZWJLaXQ6OldlYlByZWZlcmVuY2VzU3Rv
cmU6OlZhbHVlKCEhW19jb25maWd1cmF0aW9uIGFsbG93c1BpY3R1cmVJblBpY3R1cmVNZWRpYVBs
YXliYWNrXSAmJiBzaG91bGRBbGxvd1BpY3R1cmVJblBpY3R1cmVNZWRpYVBsYXliYWNrKCkpKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3
Q29uZmlndXJhdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tX
ZWJWaWV3Q29uZmlndXJhdGlvbi5tbQppbmRleCBiN2U1NDg1Yjk1NjUyZGEwZjVhODgxOWFiODk5
ZmEwMjU0MWViZDNlLi44MjZjNDQ4MGRjZmIyMjc1ODk0MmM2MmY0OGMyOGZkMjc3NWM4MmE1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0Nv
bmZpZ3VyYXRpb24ubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9X
S1dlYlZpZXdDb25maWd1cmF0aW9uLm1tCkBAIC0xMDcsNiArMTA3LDcgQEAgQGltcGxlbWVudGF0
aW9uIFdLV2ViVmlld0NvbmZpZ3VyYXRpb24gewogICAgIExhenlJbml0aWFsaXplZDxSZXRhaW5Q
dHI8V0tXZWJWaWV3Q29udGVudFByb3ZpZGVyUmVnaXN0cnk+PiBfY29udGVudFByb3ZpZGVyUmVn
aXN0cnk7CiAgICAgQk9PTCBfYWx3YXlzUnVuc0F0Rm9yZWdyb3VuZFByaW9yaXR5OwogICAgIEJP
T0wgX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2s7CisgICAgQk9PTCBfaW5saW5lTWVkaWFQbGF5
YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGU7CiAgICAgQk9PTCBfYWxsb3dzSW5saW5l
TWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZTsKICAgICBCT09MIF9hbGxvd3NJ
bmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlOwogICAgIEJP
T0wgX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW47CkBAIC0xMzgsNiAr
MTM5LDcgQEAgLSAoaW5zdGFuY2V0eXBlKWluaXQKICNpZiBQTEFURk9STShJT1MpCiAgICAgX2Fs
bG93c1BpY3R1cmVJblBpY3R1cmVNZWRpYVBsYXliYWNrID0gWUVTOwogICAgIF9hbGxvd3NJbmxp
bmVNZWRpYVBsYXliYWNrID0gV2ViQ29yZTo6ZGV2aWNlQ2xhc3MoKSA9PSBNR0RldmljZUNsYXNz
aVBhZDsKKyAgICBfaW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1
dGUgPSAhX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2s7CiAgICAgX2FsbG93c0lubGluZU1lZGlh
UGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUgPSAhX2FsbG93c0lubGluZU1lZGlhUGxh
eWJhY2s7CiAgICAgX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxp
bmVBdHRyaWJ1dGUgPSAhX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2s7CiAgICAgX2FsbG93c0lu
bGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4gPSAhX2FsbG93c0lubGluZU1lZGlhUGxh
eWJhY2s7CkBAIC0yOTAsNiArMjkyLDcgQEAgLSAoaWQpY29weVdpdGhab25lOihOU1pvbmUgKil6
b25lCiAjaWYgUExBVEZPUk0oSU9TKQogICAgIGNvbmZpZ3VyYXRpb24tPl9hbGxvd3NJbmxpbmVN
ZWRpYVBsYXliYWNrID0gc2VsZi0+X2FsbG93c0lubGluZU1lZGlhUGxheWJhY2s7CiAgICAgY29u
ZmlndXJhdGlvbi0+X2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4gPSBz
ZWxmLT5fYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja0FmdGVyRnVsbHNjcmVlbjsKKyAgICBjb25m
aWd1cmF0aW9uLT5faW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1
dGUgPSBzZWxmLT5faW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1
dGU7CiAgICAgY29uZmlndXJhdGlvbi0+X2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxh
eXNJbmxpbmVBdHRyaWJ1dGUgPSBzZWxmLT5fYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQ
bGF5c0lubGluZUF0dHJpYnV0ZTsKICAgICBjb25maWd1cmF0aW9uLT5fYWxsb3dzSW5saW5lTWVk
aWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZSA9IHNlbGYtPl9hbGxvd3NJ
bmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlOwogICAgIGNv
bmZpZ3VyYXRpb24tPl9hbGxvd3NQaWN0dXJlSW5QaWN0dXJlTWVkaWFQbGF5YmFjayA9IHNlbGYt
Pl9hbGxvd3NQaWN0dXJlSW5QaWN0dXJlTWVkaWFQbGF5YmFjazsKQEAgLTU3MSw2ICs1NzQsMTYg
QEAgLSAodm9pZClfc2V0QWx3YXlzUnVuc0F0Rm9yZWdyb3VuZFByaW9yaXR5OihCT09MKWFsd2F5
c1J1bnNBdEZvcmVncm91bmRQcmlvcml0eQogICAgIF9hbHdheXNSdW5zQXRGb3JlZ3JvdW5kUHJp
b3JpdHkgPSBhbHdheXNSdW5zQXRGb3JlZ3JvdW5kUHJpb3JpdHk7CiB9CiAKKy0gKEJPT0wpX2lu
bGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlCit7CisgICAgcmV0
dXJuIF9pbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZTsKK30K
KworLSAodm9pZClfc2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRy
aWJ1dGU6KEJPT0wpcmVxdWlyZXMKK3sKKyAgICBfaW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVz
UGxheXNJbmxpbmVBdHRyaWJ1dGUgPSByZXF1aXJlczsKK30KKwogLSAoQk9PTClfYWxsb3dzSW5s
aW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZQogewogICAgIHJldHVybiBf
YWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmln
dXJhdGlvblByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tX
ZWJWaWV3Q29uZmlndXJhdGlvblByaXZhdGUuaAppbmRleCBlYWY1ZDZiNTAxOTIzYmRjY2ExOGVj
ZGIyOTlhMmQ5MGZiZTc5NjFiLi5lNTI5MDFiMTQxMjU0OTZkNzAwODZlNWE4N2M2MWJhNGRkOGVm
NTJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2Vi
Vmlld0NvbmZpZ3VyYXRpb25Qcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uUHJpdmF0ZS5oCkBAIC01OSw2ICs1OSw3
IEBACiAKICNpZiBUQVJHRVRfT1NfSVBIT05FCiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVy
PV9zZXRBbHdheXNSdW5zQXRGb3JlZ3JvdW5kUHJpb3JpdHk6KSBCT09MIF9hbHdheXNSdW5zQXRG
b3JlZ3JvdW5kUHJpb3JpdHkgV0tfQVBJX0FWQUlMQUJMRShpb3MoOV8wKSk7CitAcHJvcGVydHkg
KG5vbmF0b21pYywgc2V0dGVyPV9zZXRJbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lu
bGluZUF0dHJpYnV0ZTopIEJPT0wgX2lubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5s
aW5lQXR0cmlidXRlIFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKIEBwcm9wZXJ0
eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxh
eXNJbmxpbmVBdHRyaWJ1dGU6KSBCT09MIF9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBs
YXlzSW5saW5lQXR0cmlidXRlIFdLX0FQSV9BVkFJTEFCTEUoaW9zKFdLX0lPU19UQkEpKTsKIEBw
cm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tX
aXRoV2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1dGU6KSBCT09MIF9hbGxvd3NJbmxpbmVNZWRpYVBs
YXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlIFdLX0FQSV9BVkFJTEFCTEUoaW9z
KFdLX0lPU19UQkEpKTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFsbG93c0lu
bGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW46KSBCT09MIF9hbGxvd3NJbmxpbmVNZWRp
YVBsYXliYWNrQWZ0ZXJGdWxsc2NyZWVuICBXS19BUElfQVZBSUxBQkxFKGlvcyhXS19JT1NfVEJB
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5k
ZXggN2U4MjBjNmRjOWU2NzY3NzQzMmJmZDdhZjgyZDliMmY5Y2UwMGFjYi4uMmE2M2UyMTIyYjEx
N2U5ODA4NTBmZGQwNDZjOGMzMTQ3OTdlMDFjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMjk4NSw2ICsyOTg1LDcgQEAgdm9pZCBXZWJQ
YWdlOjp1cGRhdGVQcmVmZXJlbmNlcyhjb25zdCBXZWJQcmVmZXJlbmNlc1N0b3JlJiBzdG9yZSkK
ICAgICBzZXR0aW5ncy5zZXRNYWluQ29udGVudFVzZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVkKHN0
b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6bWFpbkNvbnRlbnRVc2Vy
R2VzdHVyZU92ZXJyaWRlRW5hYmxlZEtleSgpKSk7CiAgICAgc2V0dGluZ3Muc2V0QWxsb3dzSW5s
aW5lTWVkaWFQbGF5YmFjayhzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNL
ZXk6OmFsbG93c0lubGluZU1lZGlhUGxheWJhY2tLZXkoKSkpOwogICAgIHNldHRpbmdzLnNldEFs
bG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4oc3RvcmUuZ2V0Qm9vbFZhbHVl
Rm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjphbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrQWZ0ZXJG
dWxsc2NyZWVuS2V5KCkpKTsKKyAgICBzZXR0aW5ncy5zZXRJbmxpbmVNZWRpYVBsYXliYWNrUmVx
dWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZShzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJl
ZmVyZW5jZXNLZXk6OmlubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmli
dXRlS2V5KCkpKTsKICAgICBzZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0
aFBsYXlzSW5saW5lQXR0cmlidXRlKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJl
bmNlc0tleTo6YWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0
ZUtleSgpKSk7CiAgICAgc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhX
ZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZShzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJl
ZmVyZW5jZXNLZXk6OmFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxp
bmVBdHRyaWJ1dGVLZXkoKSkpOwogICAgIHNldHRpbmdzLnNldEludmlzaWJsZUF1dG9wbGF5Tm90
UGVybWl0dGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6aW52
aXNpYmxlQXV0b3BsYXlOb3RQZXJtaXR0ZWRLZXkoKSkpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hh
bmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDI4MzUzOWM3ZWE1YTI3NWJlMGVhNWUwYmJk
MWZhNGMzNWI5ZDEwOWQuLjZkODJiZjI3NTQ1NzRjNzc0YjAzOTNhY2ExN2MzYTE0ZDNhYmE4OGEg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMCBAQAorMjAxNi0wNy0yNSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBw
bGUuY29tPgorCisgICAgICAgIFtpUGhvbmVdIFBsYXlpbmcgYSB2aWRlbyBvbiB0dWRvdS5jb20g
cGxheXMgb25seSBzb3VuZCwgbm8gdmlkZW8KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE2MDE3OAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjc1MzU0
Njg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBE
dW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW06CisgICAgICAgIChzZXREZWZhdWx0
c1RvQ29uc2lzdGVudFZhbHVlc0ZvclRlc3RpbmcpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0MkNvY29hL1JlcXVpcmVzVXNlckFjdGlvbkZvclBsYXliYWNrLm1tOgorICAg
ICAgICAoUmVxdWlyZXNVc2VyQWN0aW9uRm9yUGxheWJhY2tUZXN0OjpTZXRVcCk6CisgICAgICAg
ICogV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXVFI6OlRl
c3RDb250cm9sbGVyOjpyZXNldFByZWZlcmVuY2VzVG9Db25zaXN0ZW50VmFsdWVzKToKKyAgICAg
ICAgKiBXZWJLaXRUZXN0UnVubmVyL2NvY29hL1Rlc3RDb250cm9sbGVyQ29jb2EubW06CisgICAg
ICAgIChXVFI6OmluaXRpYWxpemVXZWJWaWV3Q29uZmlndXJhdGlvbik6CisKIDIwMTYtMDctMjUg
IFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgTWVkaWEg
Y29udHJvbHMgc2hvdWxkIG5vdCBiZSBkaXNwbGF5ZWQgZm9yIGEgdmlkZW8gdW50aWwgaXQgc3Rh
cnRzIHBsYXlpbmcKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVu
ZGVyVHJlZS5tbSBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbQpp
bmRleCAyZGYzNGVkNGM1MzIzNWI5M2Q0ZDU3YTVkOThjYzQ0MDgwMjY1NjI1Li4zYzllY2E0NjUx
MmI4M2NmNjdmYWFhMmU5NGI4ZWI1ODU2ZjAxZjc1IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0KKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUv
bWFjL0R1bXBSZW5kZXJUcmVlLm1tCkBAIC0xMDE3LDYgKzEwMTcsNyBAQCBzdGF0aWMgdm9pZCBz
ZXREZWZhdWx0c1RvQ29uc2lzdGVudFZhbHVlc0ZvclRlc3RpbmcoKQogICAgICAgICBXZWJLaXRF
bmFibGVGdWxsRG9jdW1lbnRUZWFyZG93blByZWZlcmVuY2VLZXk6IEBZRVMsCiAgICAgICAgIFdl
YktpdEZ1bGxTY3JlZW5FbmFibGVkUHJlZmVyZW5jZUtleTogQFlFUywKICAgICAgICAgV2ViS2l0
QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1ByZWZlcmVuY2VLZXk6IEBZRVMsCisgICAgICAgIFdl
YktpdElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlS2V5OiBA
Tk8sCiAgICAgICAgIFdlYktpdEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxp
bmVBdHRyaWJ1dGVLZXk6IEBOTywKICAgICAgICAgV2ViS2l0QWxsb3dzSW5saW5lTWVkaWFQbGF5
YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZUtleTogQE5PLAogICAgICAgICBAIlVz
ZVdlYktpdFdlYkluc3BlY3RvciI6IEBZRVMsCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdDJDb2NvYS9SZXF1aXJlc1VzZXJBY3Rpb25Gb3JQbGF5YmFjay5tbSBi
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0MkNvY29hL1JlcXVpcmVzVXNlckFjdGlv
bkZvclBsYXliYWNrLm1tCmluZGV4IGEyNjE3OWM5Y2MwOTBkMTQ1NzRmYWEzNTVlZTQ4NTg4ZjA4
NTQ5ZDQuLjJmZWY4MDAzYTM0NjA3ZDljNGZiNTExNTk0MDYyZTc1YTVhNTJmMWIgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0MkNvY29hL1JlcXVpcmVzVXNlckFj
dGlvbkZvclBsYXliYWNrLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
MkNvY29hL1JlcXVpcmVzVXNlckFjdGlvbkZvclBsYXliYWNrLm1tCkBAIC03Niw2ICs3Niw3IEBA
IHB1YmxpYzoKICAgICAgICAgY29uZmlndXJhdGlvbi5nZXQoKS5fbWVkaWFEYXRhTG9hZHNBdXRv
bWF0aWNhbGx5ID0gWUVTOwogI2lmIFRBUkdFVF9PU19JUEhPTkUKICAgICAgICAgY29uZmlndXJh
dGlvbi5nZXQoKS5hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrID0gWUVTOworICAgICAgICBjb25m
aWd1cmF0aW9uLmdldCgpLl9pbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0
dHJpYnV0ZSA9IE5POwogICAgICAgICBjb25maWd1cmF0aW9uLmdldCgpLl9hbGxvd3NJbmxpbmVN
ZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlID0gTk87CiAgICAgICAgIGNvbmZp
Z3VyYXRpb24uZ2V0KCkuX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJ
bmxpbmVBdHRyaWJ1dGUgPSBOTzsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RD
b250cm9sbGVyLmNwcAppbmRleCA1ZTUwYzc1YzMwNTNmMjk0ZWY2MWMwMDQ1YjMwZWUwYjY3MzIz
ZTAyLi5lOGE3MTViOTg1YTA1NDliMzM1NjFjZWY4MmMzY2FkNDczZmQ0NmJiIDEwMDY0NAotLS0g
YS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcAorKysgYi9Ub29scy9X
ZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcApAQCAtNjg0LDYgKzY4NCw3IEBAIHZv
aWQgVGVzdENvbnRyb2xsZXI6OnJlc2V0UHJlZmVyZW5jZXNUb0NvbnNpc3RlbnRWYWx1ZXMoY29u
c3QgVGVzdE9wdGlvbnMmIG9wdGlvCiAgICAgV0tQcmVmZXJlbmNlc1NldFN0b3JhZ2VCbG9ja2lu
Z1BvbGljeShwcmVmZXJlbmNlcywga1dLQWxsb3dBbGxTdG9yYWdlKTsKIAogICAgIFdLUHJlZmVy
ZW5jZXNTZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKHByZWZlcmVuY2VzLCB0cnVlKTsKKyAg
ICBXS1ByZWZlcmVuY2VzU2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVB
dHRyaWJ1dGUocHJlZmVyZW5jZXMsIGZhbHNlKTsKICAgICBXS1ByZWZlcmVuY2VzU2V0QWxsb3dz
SW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZShwcmVmZXJlbmNlcywg
ZmFsc2UpOwogICAgIFdLUHJlZmVyZW5jZXNTZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0
aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlKHByZWZlcmVuY2VzLCBmYWxzZSk7CiAKZGlmZiAt
LWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvY29jb2EvVGVzdENvbnRyb2xsZXJDb2NvYS5t
bSBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvY29jb2EvVGVzdENvbnRyb2xsZXJDb2NvYS5tbQpp
bmRleCA0ODRmNWMzMDZhNTJkNGIwNjNiZjA2YzI5NTM2MjY3MDA3ZjBmOWQzLi4wMTAxMGIxMGFk
ZWZiOTczNzk0ODdiODFhYzZlYjE4YzMxNmU0NGQxIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRU
ZXN0UnVubmVyL2NvY29hL1Rlc3RDb250cm9sbGVyQ29jb2EubW0KKysrIGIvVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci9jb2NvYS9UZXN0Q29udHJvbGxlckNvY29hLm1tCkBAIC02MSw2ICs2MSw3IEBA
IHZvaWQgaW5pdGlhbGl6ZVdlYlZpZXdDb25maWd1cmF0aW9uKGNvbnN0IGNoYXIqIGxpYnJhcnlQ
YXRoLCBXS1N0cmluZ1JlZiBpbmplY3RlCiAKICNpZiBUQVJHRVRfT1NfSVBIT05FCiAgICAgZ2xv
YmFsV2ViVmlld0NvbmZpZ3VyYXRpb24uYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFjayA9IFlFUzsK
KyAgICBnbG9iYWxXZWJWaWV3Q29uZmlndXJhdGlvbi5faW5saW5lTWVkaWFQbGF5YmFja1JlcXVp
cmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUgPSBOTzsKICAgICBnbG9iYWxXZWJWaWV3Q29uZmlndXJh
dGlvbi5fYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZSA9
IE5POwogICAgIGdsb2JhbFdlYlZpZXdDb25maWd1cmF0aW9uLl9hbGxvd3NJbmxpbmVNZWRpYVBs
YXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlID0gTk87CiAgICAgZ2xvYmFsV2Vi
Vmlld0NvbmZpZ3VyYXRpb24uX2ludmlzaWJsZUF1dG9wbGF5Tm90UGVybWl0dGVkID0gTk87CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggZmJiZGU0OWYzMTMyZjhhNTg0OGMxN2U3YzU4ZWE3Zjc3NjBiOTM5OC4uN2JmYTQ3YjJm
NjhlOTQzYzUwMTdlMDZmNGI4N2NjNjFiMzg5NTU0OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisy
MDE2LTA3LTI1ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAg
ICAgICAgW2lQaG9uZV0gUGxheWluZyBhIHZpZGVvIG9uIHR1ZG91LmNvbSBwbGF5cyBvbmx5IHNv
dW5kLCBubyB2aWRlbworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTYwMTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yNzUzNTQ2OD4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIG1lZGlhL3ZpZGVvLXBs
YXlzaW5saW5lLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBtZWRpYS92aWRlby1wbGF5c2lubGlu
ZS5odG1sOgorICAgICAgICAqIG1lZGlhL3ZpZGVvLXdlYmtpdC1wbGF5c2lubGluZS1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLXdlYmtpdC1wbGF5c2lubGluZS5o
dG1sOiBBZGRlZC4KKwogMjAxNi0wNy0yNSAgSmlld2VuIFRhbiAgPGppZXdlbl90YW5AYXBwbGUu
Y29tPgogCiAgICAgICAgIFJlbmFtZSBTdWJ0bGVDcnlwdG8gdG8gV2ViS2l0U3VidGxlQ3J5cHRv
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wbGF5c2lubGluZS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wbGF5c2lubGluZS1leHBlY3RlZC50eHQK
aW5kZXggOTgyMDNhNTYyZDY0OGZjY2I5NTIyMTc1YWQ2NDI2Y2YxYWE2ZWYwMC4uMDQxNDU3M2Yw
YzQ2Y2Q3M2ZjZTI0NDhlZDY5YzlmZjhkNTE4ZmNhYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tcGxheXNpbmxpbmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLXBsYXlzaW5saW5lLWV4cGVjdGVkLnR4dApAQCAtMSwxMjcgKzEsMjMgQEAKLVJV
TihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5
c0lubGluZUF0dHJpYnV0ZSh0cnVlKSkKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dz
SW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZSh0cnVlKSkK
K1JVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxh
eXNJbmxpbmVBdHRyaWJ1dGUodHJ1ZSkpCiBSVU4odmlkZW8ucGxheXNJbmxpbmUgPSBmYWxzZSkK
LVJVTih2aWRlby5yZW1vdmVBdHRyaWJ1dGUoIndlYmtpdC1wbGF5c2lubGluZSIsICIiKSkKIEVW
RU5UKGNhbnBsYXl0aHJvdWdoKQogUlVOKHZpZGVvLnBsYXkoKSkKIEVWRU5UKHBsYXlpbmcpCiBF
WFBFQ1RFRCAodmlkZW8ud2Via2l0RGlzcGxheWluZ0Z1bGxzY3JlZW4gPT0gJ3RydWUnKSBPSwot
UlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBs
YXlzSW5saW5lQXR0cmlidXRlKHRydWUpKQotUlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRBbGxv
d3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlKHRydWUp
KQotUlVOKHZpZGVvLnBsYXlzSW5saW5lID0gZmFsc2UpCi1SVU4odmlkZW8uc2V0QXR0cmlidXRl
KCJ3ZWJraXQtcGxheXNpbmxpbmUiLCAiIikpCi1FVkVOVChjYW5wbGF5dGhyb3VnaCkKLVJVTih2
aWRlby5wbGF5KCkpCi1FVkVOVChwbGF5aW5nKQotRVhQRUNURUQgKHZpZGVvLndlYmtpdERpc3Bs
YXlpbmdGdWxsc2NyZWVuID09ICdmYWxzZScpIE9LCi1SVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNl
dEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUodHJ1ZSkp
Ci1SVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRo
V2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1dGUoZmFsc2UpKQotUlVOKHZpZGVvLnBsYXlzSW5saW5l
ID0gZmFsc2UpCi1SVU4odmlkZW8uc2V0QXR0cmlidXRlKCJ3ZWJraXQtcGxheXNpbmxpbmUiLCAi
IikpCi1FVkVOVChjYW5wbGF5dGhyb3VnaCkKLVJVTih2aWRlby5wbGF5KCkpCi1FVkVOVChwbGF5
aW5nKQotRVhQRUNURUQgKHZpZGVvLndlYmtpdERpc3BsYXlpbmdGdWxsc2NyZWVuID09ICd0cnVl
JykgT0sKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFj
a1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZSh0cnVlKSkKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Mu
c2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0
ZShmYWxzZSkpCi1SVU4odmlkZW8ucGxheXNJbmxpbmUgPSBmYWxzZSkKLVJVTih2aWRlby5yZW1v
dmVBdHRyaWJ1dGUoIndlYmtpdC1wbGF5c2lubGluZSIsICIiKSkKLUVWRU5UKGNhbnBsYXl0aHJv
dWdoKQotUlVOKHZpZGVvLnBsYXkoKSkKLUVWRU5UKHBsYXlpbmcpCi1FWFBFQ1RFRCAodmlkZW8u
d2Via2l0RGlzcGxheWluZ0Z1bGxzY3JlZW4gPT0gJ3RydWUnKSBPSwotUlVOKGludGVybmFscy5z
ZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmli
dXRlKHRydWUpKQotUlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBs
YXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlKHRydWUpKQotUlVOKHZpZGVvLnBs
YXlzSW5saW5lID0gdHJ1ZSkKLVJVTih2aWRlby5zZXRBdHRyaWJ1dGUoIndlYmtpdC1wbGF5c2lu
bGluZSIsICIiKSkKLUVWRU5UKGNhbnBsYXl0aHJvdWdoKQotUlVOKHZpZGVvLnBsYXkoKSkKLUVW
RU5UKHBsYXlpbmcpCi1FWFBFQ1RFRCAodmlkZW8ud2Via2l0RGlzcGxheWluZ0Z1bGxzY3JlZW4g
PT0gJ2ZhbHNlJykgT0sKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVk
aWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZSh0cnVlKSkKLVJVTihpbnRlcm5hbHMu
c2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGlu
ZUF0dHJpYnV0ZSh0cnVlKSkKLVJVTih2aWRlby5wbGF5c0lubGluZSA9IHRydWUpCi1SVU4odmlk
ZW8ucmVtb3ZlQXR0cmlidXRlKCJ3ZWJraXQtcGxheXNpbmxpbmUiLCAiIikpCi1FVkVOVChjYW5w
bGF5dGhyb3VnaCkKLVJVTih2aWRlby5wbGF5KCkpCi1FVkVOVChwbGF5aW5nKQotRVhQRUNURUQg
KHZpZGVvLndlYmtpdERpc3BsYXlpbmdGdWxsc2NyZWVuID09ICdmYWxzZScpIE9LCi1SVU4oaW50
ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxp
bmVBdHRyaWJ1dGUodHJ1ZSkpCi1SVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lubGlu
ZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1dGUoZmFsc2UpKQotUlVO
KHZpZGVvLnBsYXlzSW5saW5lID0gdHJ1ZSkKLVJVTih2aWRlby5zZXRBdHRyaWJ1dGUoIndlYmtp
dC1wbGF5c2lubGluZSIsICIiKSkKLUVWRU5UKGNhbnBsYXl0aHJvdWdoKQotUlVOKHZpZGVvLnBs
YXkoKSkKLUVWRU5UKHBsYXlpbmcpCi1FWFBFQ1RFRCAodmlkZW8ud2Via2l0RGlzcGxheWluZ0Z1
bGxzY3JlZW4gPT0gJ2ZhbHNlJykgT0sKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dz
SW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZSh0cnVlKSkKLVJVTihp
bnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQ
bGF5c0lubGluZUF0dHJpYnV0ZShmYWxzZSkpCitSVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNldElu
bGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKHRydWUpKQogUlVO
KHZpZGVvLnBsYXlzSW5saW5lID0gdHJ1ZSkKLVJVTih2aWRlby5yZW1vdmVBdHRyaWJ1dGUoIndl
YmtpdC1wbGF5c2lubGluZSIsICIiKSkKIEVWRU5UKGNhbnBsYXl0aHJvdWdoKQogUlVOKHZpZGVv
LnBsYXkoKSkKIEVWRU5UKHBsYXlpbmcpCiBFWFBFQ1RFRCAodmlkZW8ud2Via2l0RGlzcGxheWlu
Z0Z1bGxzY3JlZW4gPT0gJ2ZhbHNlJykgT0sKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxs
b3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZShmYWxzZSkpCi1S
VU4oaW50ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2Vi
S2l0UGxheXNJbmxpbmVBdHRyaWJ1dGUodHJ1ZSkpCitSVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNl
dElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKGZhbHNlKSkK
IFJVTih2aWRlby5wbGF5c0lubGluZSA9IGZhbHNlKQotUlVOKHZpZGVvLnNldEF0dHJpYnV0ZSgi
d2Via2l0LXBsYXlzaW5saW5lIiwgIiIpKQotRVZFTlQoY2FucGxheXRocm91Z2gpCi1SVU4odmlk
ZW8ucGxheSgpKQotRVZFTlQocGxheWluZykKLUVYUEVDVEVEICh2aWRlby53ZWJraXREaXNwbGF5
aW5nRnVsbHNjcmVlbiA9PSAnZmFsc2UnKSBPSwotUlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRB
bGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlKGZhbHNlKSkK
LVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhX
ZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZSh0cnVlKSkKLVJVTih2aWRlby5wbGF5c0lubGluZSA9
IGZhbHNlKQotUlVOKHZpZGVvLnJlbW92ZUF0dHJpYnV0ZSgid2Via2l0LXBsYXlzaW5saW5lIiwg
IiIpKQotRVZFTlQoY2FucGxheXRocm91Z2gpCi1SVU4odmlkZW8ucGxheSgpKQotRVZFTlQocGxh
eWluZykKLUVYUEVDVEVEICh2aWRlby53ZWJraXREaXNwbGF5aW5nRnVsbHNjcmVlbiA9PSAndHJ1
ZScpIE9LCi1SVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJh
Y2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUoZmFsc2UpKQotUlVOKGludGVybmFscy5zZXR0aW5n
cy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmli
dXRlKGZhbHNlKSkKLVJVTih2aWRlby5wbGF5c0lubGluZSA9IGZhbHNlKQotUlVOKHZpZGVvLnNl
dEF0dHJpYnV0ZSgid2Via2l0LXBsYXlzaW5saW5lIiwgIiIpKQotRVZFTlQoY2FucGxheXRocm91
Z2gpCi1SVU4odmlkZW8ucGxheSgpKQotRVZFTlQocGxheWluZykKLUVYUEVDVEVEICh2aWRlby53
ZWJraXREaXNwbGF5aW5nRnVsbHNjcmVlbiA9PSAnZmFsc2UnKSBPSwotUlVOKGludGVybmFscy5z
ZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmli
dXRlKGZhbHNlKSkKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQ
bGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZShmYWxzZSkpCi1SVU4odmlkZW8u
cGxheXNJbmxpbmUgPSBmYWxzZSkKLVJVTih2aWRlby5yZW1vdmVBdHRyaWJ1dGUoIndlYmtpdC1w
bGF5c2lubGluZSIsICIiKSkKLUVWRU5UKGNhbnBsYXl0aHJvdWdoKQotUlVOKHZpZGVvLnBsYXko
KSkKLUVWRU5UKHBsYXlpbmcpCi1FWFBFQ1RFRCAodmlkZW8ud2Via2l0RGlzcGxheWluZ0Z1bGxz
Y3JlZW4gPT0gJ2ZhbHNlJykgT0sKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5s
aW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZShmYWxzZSkpCi1SVU4oaW50
ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxh
eXNJbmxpbmVBdHRyaWJ1dGUodHJ1ZSkpCi1SVU4odmlkZW8ucGxheXNJbmxpbmUgPSB0cnVlKQot
UlVOKHZpZGVvLnNldEF0dHJpYnV0ZSgid2Via2l0LXBsYXlzaW5saW5lIiwgIiIpKQotRVZFTlQo
Y2FucGxheXRocm91Z2gpCi1SVU4odmlkZW8ucGxheSgpKQotRVZFTlQocGxheWluZykKLUVYUEVD
VEVEICh2aWRlby53ZWJraXREaXNwbGF5aW5nRnVsbHNjcmVlbiA9PSAnZmFsc2UnKSBPSwotUlVO
KGludGVybmFscy5zZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlz
SW5saW5lQXR0cmlidXRlKGZhbHNlKSkKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dz
SW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZSh0cnVlKSkK
LVJVTih2aWRlby5wbGF5c0lubGluZSA9IHRydWUpCi1SVU4odmlkZW8ucmVtb3ZlQXR0cmlidXRl
KCJ3ZWJraXQtcGxheXNpbmxpbmUiLCAiIikpCi1FVkVOVChjYW5wbGF5dGhyb3VnaCkKLVJVTih2
aWRlby5wbGF5KCkpCi1FVkVOVChwbGF5aW5nKQotRVhQRUNURUQgKHZpZGVvLndlYmtpdERpc3Bs
YXlpbmdGdWxsc2NyZWVuID09ICd0cnVlJykgT0sKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0
QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZShmYWxzZSkp
Ci1SVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRo
V2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1dGUoZmFsc2UpKQotUlVOKHZpZGVvLnBsYXlzSW5saW5l
ID0gdHJ1ZSkKLVJVTih2aWRlby5zZXRBdHRyaWJ1dGUoIndlYmtpdC1wbGF5c2lubGluZSIsICIi
KSkKIEVWRU5UKGNhbnBsYXl0aHJvdWdoKQogUlVOKHZpZGVvLnBsYXkoKSkKIEVWRU5UKHBsYXlp
bmcpCiBFWFBFQ1RFRCAodmlkZW8ud2Via2l0RGlzcGxheWluZ0Z1bGxzY3JlZW4gPT0gJ2ZhbHNl
JykgT0sKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFj
a1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZShmYWxzZSkpCi1SVU4oaW50ZXJuYWxzLnNldHRpbmdz
LnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1
dGUoZmFsc2UpKQorUlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRJbmxpbmVNZWRpYVBsYXliYWNr
UmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZShmYWxzZSkpCiBSVU4odmlkZW8ucGxheXNJbmxp
bmUgPSB0cnVlKQotUlVOKHZpZGVvLnJlbW92ZUF0dHJpYnV0ZSgid2Via2l0LXBsYXlzaW5saW5l
IiwgIiIpKQogRVZFTlQoY2FucGxheXRocm91Z2gpCiBSVU4odmlkZW8ucGxheSgpKQogRVZFTlQo
cGxheWluZykKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXlzaW5saW5l
Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wbGF5c2lubGluZS5odG1sCmluZGV4IDFm
Y2Y2MjcxYWI4NzAyZTE4NmM4NDlhMzA2OWY5ZmNlOTkzNThjZWEuLmZhNmE3MzEyNDRkOTcwYjNj
OTJkZGE1YjYwYjhkNzI5MjQ5ZjUxZGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLXBsYXlzaW5saW5lLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheXNp
bmxpbmUuaHRtbApAQCAtMTcsMTYgKzE3LDE0IEBAIGZ1bmN0aW9uIHJ1bk5leHRUZXN0KCkKICAg
ICAgICAgZW5kVGVzdCgpOwogfQogCi1mdW5jdGlvbiB0ZXN0UGxheXNJbmxpbmUocmVxdWlyZXNQ
bGF5c0lubGluZSwgcmVxdWlyZXNXZWJLaXRQbGF5c0lubGluZSwgaGFzUGxheXNJbmxpbmUsIGhh
c1dlYktpdFBsYXlzSW5saW5lLCBleHBlY3RlZERpc3BsYXlpbmdGdWxsc2NyZWVuKQorZnVuY3Rp
b24gdGVzdFBsYXlzSW5saW5lKHJlcXVpcmVzUGxheXNJbmxpbmUsIGhhc1BsYXlzSW5saW5lLCBl
eHBlY3RlZERpc3BsYXlpbmdGdWxsc2NyZWVuKQogewotICAgIHJ1bignaW50ZXJuYWxzLnNldHRp
bmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUo
JyArIHJlcXVpcmVzUGxheXNJbmxpbmUgKyAnKScpOwotICAgIHJ1bignaW50ZXJuYWxzLnNldHRp
bmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxpbmVBdHRy
aWJ1dGUoJyArIHJlcXVpcmVzV2ViS2l0UGxheXNJbmxpbmUgKyAnKScpOworICAgIHJ1bignaW50
ZXJuYWxzLnNldHRpbmdzLnNldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5l
QXR0cmlidXRlKCcgKyByZXF1aXJlc1BsYXlzSW5saW5lICsgJyknKTsKICAgICB2aWRlbyA9IG1l
ZGlhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndmlkZW8nKTsKICAgICBkb2N1bWVudC5ib2R5
LmFwcGVuZENoaWxkKHZpZGVvKTsKICAgICB2aWRlby5jb250cm9scyA9IHRydWU7CiAgICAgdmlk
ZW8uc3JjID0gZmluZE1lZGlhRmlsZSgndmlkZW8nLCAnY29udGVudC90ZXN0Jyk7CiAgICAgcnVu
KCd2aWRlby5wbGF5c0lubGluZSA9ICcgKyBoYXNQbGF5c0lubGluZSk7Ci0gICAgcnVuKCd2aWRl
by4nICsgKGhhc1dlYktpdFBsYXlzSW5saW5lID8gJ3NldCcgOiAncmVtb3ZlJykgKyAnQXR0cmli
dXRlKCJ3ZWJraXQtcGxheXNpbmxpbmUiLCAiIiknKTsKICAgICB3YWl0Rm9yRXZlbnRPbmNlKCdj
YW5wbGF5dGhyb3VnaCcsICgpID0+IHsKICAgICAgICAgcnVuV2l0aEtleURvd24oKCkgPT4gewog
ICAgICAgICAgICAgcnVuKCd2aWRlby5wbGF5KCknKTsKQEAgLTQxLDEwMSArMzksMjkgQEAgZnVu
Y3Rpb24gdGVzdFBsYXlzSW5saW5lKHJlcXVpcmVzUGxheXNJbmxpbmUsIHJlcXVpcmVzV2ViS2l0
UGxheXNJbmxpbmUsIGhhc1BsYXkKIAogZnVuY3Rpb24gdGVzdFJlcXVpcmVzUGxheXNJbmxpbmVB
bmREb2VzbnRIYXZlSXQoKQogewotICAgIHRlc3RQbGF5c0lubGluZSh0cnVlLCB0cnVlLCBmYWxz
ZSwgZmFsc2UsIHRydWUpOwotfQotCi1mdW5jdGlvbiB0ZXN0UmVxdWlyZXNQbGF5c0lubGluZUFu
ZERvZXNudEhhdmVJdDIoKQotewotICAgIHRlc3RQbGF5c0lubGluZSh0cnVlLCB0cnVlLCBmYWxz
ZSwgdHJ1ZSwgZmFsc2UpOwotfQotCi1mdW5jdGlvbiB0ZXN0UmVxdWlyZXNQbGF5c0lubGluZUFu
ZERvZXNudEhhdmVJdDMoKQotewotICAgIHRlc3RQbGF5c0lubGluZSh0cnVlLCBmYWxzZSwgZmFs
c2UsIHRydWUsIHRydWUpOwotfQotCi1mdW5jdGlvbiB0ZXN0UmVxdWlyZXNQbGF5c0lubGluZUFu
ZERvZXNudEhhdmVJdDQoKQotewotICAgIHRlc3RQbGF5c0lubGluZSh0cnVlLCBmYWxzZSwgZmFs
c2UsIGZhbHNlLCB0cnVlKTsKKyAgICB0ZXN0UGxheXNJbmxpbmUodHJ1ZSwgZmFsc2UsIHRydWUp
OwogfQogCiBmdW5jdGlvbiB0ZXN0UmVxdWlyZXNQbGF5c0lubGluZUFuZERvZXNIYXZlSXQoKQog
ewotICAgIHRlc3RQbGF5c0lubGluZSh0cnVlLCB0cnVlLCB0cnVlLCB0cnVlLCBmYWxzZSk7Ci19
Ci0KLWZ1bmN0aW9uIHRlc3RSZXF1aXJlc1BsYXlzSW5saW5lQW5kRG9lc0hhdmVJdDIoKQotewot
ICAgIHRlc3RQbGF5c0lubGluZSh0cnVlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UpOwotfQot
Ci1mdW5jdGlvbiB0ZXN0UmVxdWlyZXNQbGF5c0lubGluZUFuZERvZXNIYXZlSXQzKCkKLXsKLSAg
ICB0ZXN0UGxheXNJbmxpbmUodHJ1ZSwgZmFsc2UsIHRydWUsIHRydWUsIGZhbHNlKTsKLX0KLQot
ZnVuY3Rpb24gdGVzdFJlcXVpcmVzUGxheXNJbmxpbmVBbmREb2VzSGF2ZUl0NCgpCi17Ci0gICAg
dGVzdFBsYXlzSW5saW5lKHRydWUsIGZhbHNlLCB0cnVlLCBmYWxzZSwgZmFsc2UpOworICAgIHRl
c3RQbGF5c0lubGluZSh0cnVlLCB0cnVlLCBmYWxzZSk7CiB9CiAKIGZ1bmN0aW9uIHRlc3REb2Vz
Tm90UmVxdWlyZVBsYXlzSW5saW5lQW5kRG9lc250SGF2ZUl0KCkKIHsKLSAgICB0ZXN0UGxheXNJ
bmxpbmUoZmFsc2UsIHRydWUsIGZhbHNlLCB0cnVlLCBmYWxzZSk7Ci19Ci0KLWZ1bmN0aW9uIHRl
c3REb2VzTm90UmVxdWlyZVBsYXlzSW5saW5lQW5kRG9lc250SGF2ZUl0MigpCi17Ci0gICAgdGVz
dFBsYXlzSW5saW5lKGZhbHNlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUpOwotfQotCi1mdW5j
dGlvbiB0ZXN0RG9lc05vdFJlcXVpcmVQbGF5c0lubGluZUFuZERvZXNudEhhdmVJdDMoKQotewot
ICAgIHRlc3RQbGF5c0lubGluZShmYWxzZSwgZmFsc2UsIGZhbHNlLCB0cnVlLCBmYWxzZSk7Ci19
Ci0KLWZ1bmN0aW9uIHRlc3REb2VzTm90UmVxdWlyZVBsYXlzSW5saW5lQW5kRG9lc250SGF2ZUl0
NCgpCi17Ci0gICAgdGVzdFBsYXlzSW5saW5lKGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBm
YWxzZSk7CisgICAgdGVzdFBsYXlzSW5saW5lKGZhbHNlLCBmYWxzZSwgZmFsc2UpOwogfQogCiBm
dW5jdGlvbiB0ZXN0RG9lc05vdFJlcXVpcmVQbGF5c0lubGluZUFuZERvZXNIYXZlSXQoKQogewot
ICAgIHRlc3RQbGF5c0lubGluZShmYWxzZSwgdHJ1ZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UpOwotfQot
Ci1mdW5jdGlvbiB0ZXN0RG9lc05vdFJlcXVpcmVQbGF5c0lubGluZUFuZERvZXNIYXZlSXQyKCkK
LXsKLSAgICB0ZXN0UGxheXNJbmxpbmUoZmFsc2UsIHRydWUsIHRydWUsIGZhbHNlLCB0cnVlKTsK
LX0KLQotZnVuY3Rpb24gdGVzdERvZXNOb3RSZXF1aXJlUGxheXNJbmxpbmVBbmREb2VzSGF2ZUl0
MygpCi17Ci0gICAgdGVzdFBsYXlzSW5saW5lKGZhbHNlLCBmYWxzZSwgdHJ1ZSwgdHJ1ZSwgZmFs
c2UpOwotfQotCi1mdW5jdGlvbiB0ZXN0RG9lc05vdFJlcXVpcmVQbGF5c0lubGluZUFuZERvZXNI
YXZlSXQ0KCkKLXsKLSAgICB0ZXN0UGxheXNJbmxpbmUoZmFsc2UsIGZhbHNlLCB0cnVlLCBmYWxz
ZSwgZmFsc2UpOworICAgIHRlc3RQbGF5c0lubGluZShmYWxzZSwgdHJ1ZSwgZmFsc2UpOwogfQog
CiB2YXIgdGVzdHMgPSBbCiAgICAgdGVzdFJlcXVpcmVzUGxheXNJbmxpbmVBbmREb2VzbnRIYXZl
SXQsCi0gICAgdGVzdFJlcXVpcmVzUGxheXNJbmxpbmVBbmREb2VzbnRIYXZlSXQyLAotICAgIHRl
c3RSZXF1aXJlc1BsYXlzSW5saW5lQW5kRG9lc250SGF2ZUl0MywKLSAgICB0ZXN0UmVxdWlyZXNQ
bGF5c0lubGluZUFuZERvZXNudEhhdmVJdDQsCiAgICAgdGVzdFJlcXVpcmVzUGxheXNJbmxpbmVB
bmREb2VzSGF2ZUl0LAotICAgIHRlc3RSZXF1aXJlc1BsYXlzSW5saW5lQW5kRG9lc0hhdmVJdDIs
Ci0gICAgdGVzdFJlcXVpcmVzUGxheXNJbmxpbmVBbmREb2VzSGF2ZUl0MywKLSAgICB0ZXN0UmVx
dWlyZXNQbGF5c0lubGluZUFuZERvZXNIYXZlSXQ0LAogICAgIHRlc3REb2VzTm90UmVxdWlyZVBs
YXlzSW5saW5lQW5kRG9lc250SGF2ZUl0LAotICAgIHRlc3REb2VzTm90UmVxdWlyZVBsYXlzSW5s
aW5lQW5kRG9lc250SGF2ZUl0MiwKLSAgICB0ZXN0RG9lc05vdFJlcXVpcmVQbGF5c0lubGluZUFu
ZERvZXNudEhhdmVJdDMsCi0gICAgdGVzdERvZXNOb3RSZXF1aXJlUGxheXNJbmxpbmVBbmREb2Vz
bnRIYXZlSXQ0LAogICAgIHRlc3REb2VzTm90UmVxdWlyZVBsYXlzSW5saW5lQW5kRG9lc0hhdmVJ
dCwKLSAgICB0ZXN0RG9lc05vdFJlcXVpcmVQbGF5c0lubGluZUFuZERvZXNIYXZlSXQyLAotICAg
IHRlc3REb2VzTm90UmVxdWlyZVBsYXlzSW5saW5lQW5kRG9lc0hhdmVJdDMsCi0gICAgdGVzdERv
ZXNOb3RSZXF1aXJlUGxheXNJbmxpbmVBbmREb2VzSGF2ZUl0NAogXTsKIAogPC9zY3JpcHQ+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby13ZWJraXQtcGxheXNpbmxpbmUtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8td2Via2l0LXBsYXlzaW5saW5lLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45Njc0ODk1NmU4YjM2ODRiZmRiZDU4YmJhNjM1ZTdjNjlj
MTc5Njg0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8td2Via2l0
LXBsYXlzaW5saW5lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDI2IEBACitSVU4oaW50ZXJuYWxz
LnNldHRpbmdzLnNldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmli
dXRlKHRydWUpKQorUlVOKHZpZGVvLnJlbW92ZUF0dHJpYnV0ZSgid2Via2l0LXBsYXlzaW5saW5l
IiwgIiIpKQorRVZFTlQoY2FucGxheXRocm91Z2gpCitSVU4odmlkZW8ucGxheSgpKQorRVZFTlQo
cGxheWluZykKK0VYUEVDVEVEICh2aWRlby53ZWJraXREaXNwbGF5aW5nRnVsbHNjcmVlbiA9PSAn
dHJ1ZScpIE9LCitSVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNldElubGluZU1lZGlhUGxheWJhY2tS
ZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKHRydWUpKQorUlVOKHZpZGVvLnNldEF0dHJpYnV0
ZSgid2Via2l0LXBsYXlzaW5saW5lIiwgIiIpKQorRVZFTlQoY2FucGxheXRocm91Z2gpCitSVU4o
dmlkZW8ucGxheSgpKQorRVZFTlQocGxheWluZykKK0VYUEVDVEVEICh2aWRlby53ZWJraXREaXNw
bGF5aW5nRnVsbHNjcmVlbiA9PSAndHJ1ZScpIE9LCitSVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNl
dElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKGZhbHNlKSkK
K1JVTih2aWRlby5yZW1vdmVBdHRyaWJ1dGUoIndlYmtpdC1wbGF5c2lubGluZSIsICIiKSkKK0VW
RU5UKGNhbnBsYXl0aHJvdWdoKQorUlVOKHZpZGVvLnBsYXkoKSkKK0VWRU5UKHBsYXlpbmcpCitF
WFBFQ1RFRCAodmlkZW8ud2Via2l0RGlzcGxheWluZ0Z1bGxzY3JlZW4gPT0gJ2ZhbHNlJykgT0sK
K1JVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxh
eXNJbmxpbmVBdHRyaWJ1dGUoZmFsc2UpKQorUlVOKHZpZGVvLnNldEF0dHJpYnV0ZSgid2Via2l0
LXBsYXlzaW5saW5lIiwgIiIpKQorRVZFTlQoY2FucGxheXRocm91Z2gpCitSVU4odmlkZW8ucGxh
eSgpKQorRVZFTlQocGxheWluZykKK0VYUEVDVEVEICh2aWRlby53ZWJraXREaXNwbGF5aW5nRnVs
bHNjcmVlbiA9PSAnZmFsc2UnKSBPSworRU5EIE9GIFRFU1QKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8td2Via2l0LXBsYXlzaW5saW5lLmh0bWwgYi9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby13ZWJraXQtcGxheXNpbmxpbmUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43NmJjOGEwZGU0
MDg2YTczNjJiMTgwYzE0ZDk5YzllOThhMDViZTJjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8td2Via2l0LXBsYXlzaW5saW5lLmh0bWwKQEAgLTAsMCArMSw3MSBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Im1lZGlhLWZp
bGUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InZpZGVvLXRlc3QuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdD4KK2Z1bmN0aW9uIGdvKCkKK3sKKyAgICBydW5OZXh0VGVzdCgpOworfQorCitmdW5j
dGlvbiBydW5OZXh0VGVzdCgpCit7CisgICAgaWYgKHRlc3RzLmxlbmd0aCkKKyAgICAgICAgdGVz
dHMuc2hpZnQoKSgpOworICAgIGVsc2UKKyAgICAgICAgZW5kVGVzdCgpOworfQorCitmdW5jdGlv
biB0ZXN0UGxheXNJbmxpbmUocmVxdWlyZXNQbGF5c0lubGluZSwgaGFzV2Via2l0UGxheXNJbmxp
bmUsIGV4cGVjdGVkRGlzcGxheWluZ0Z1bGxzY3JlZW4pCit7CisgICAgcnVuKCdpbnRlcm5hbHMu
c2V0dGluZ3Muc2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1
dGUoJyArIHJlcXVpcmVzUGxheXNJbmxpbmUgKyAnKScpOworICAgIHZpZGVvID0gbWVkaWEgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCd2aWRlbycpOworICAgIGRvY3VtZW50LmJvZHkuYXBwZW5k
Q2hpbGQodmlkZW8pOworICAgIHZpZGVvLmNvbnRyb2xzID0gdHJ1ZTsKKyAgICB2aWRlby5zcmMg
PSBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3QnKTsKKyAgICBydW4oJ3ZpZGVv
LicgKyAoaGFzV2Via2l0UGxheXNJbmxpbmUgPyAnc2V0JyA6ICdyZW1vdmUnKSArICdBdHRyaWJ1
dGUoIndlYmtpdC1wbGF5c2lubGluZSIsICIiKScpOworICAgIHdhaXRGb3JFdmVudE9uY2UoJ2Nh
bnBsYXl0aHJvdWdoJywgKCkgPT4geworICAgICAgICBydW5XaXRoS2V5RG93bigoKSA9PiB7Cisg
ICAgICAgICAgICBydW4oJ3ZpZGVvLnBsYXkoKScpOworICAgICAgICB9KTsKKyAgICB9KQorICAg
IHdhaXRGb3JFdmVudE9uY2UoJ3BsYXlpbmcnLCAoKSA9PiB7CisgICAgICAgIHRlc3RFeHBlY3Rl
ZCgndmlkZW8ud2Via2l0RGlzcGxheWluZ0Z1bGxzY3JlZW4nLCBleHBlY3RlZERpc3BsYXlpbmdG
dWxsc2NyZWVuKTsKKyAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZCh2aWRlbyk7Cisg
ICAgICAgIHJ1bk5leHRUZXN0KCk7CisgICAgfSk7Cit9CisKK2Z1bmN0aW9uIHRlc3RSZXF1aXJl
c1BsYXlzSW5saW5lQW5kRG9lc250SGF2ZUl0KCkKK3sKKyAgICB0ZXN0UGxheXNJbmxpbmUodHJ1
ZSwgZmFsc2UsIHRydWUpOworfQorCitmdW5jdGlvbiB0ZXN0UmVxdWlyZXNQbGF5c0lubGluZUFu
ZERvZXNIYXZlSXQoKQoreworICAgIHRlc3RQbGF5c0lubGluZSh0cnVlLCB0cnVlLCB0cnVlKTsK
K30KKworZnVuY3Rpb24gdGVzdERvZXNOb3RSZXF1aXJlUGxheXNJbmxpbmVBbmREb2VzbnRIYXZl
SXQoKQoreworICAgIHRlc3RQbGF5c0lubGluZShmYWxzZSwgZmFsc2UsIGZhbHNlKTsKK30KKwor
ZnVuY3Rpb24gdGVzdERvZXNOb3RSZXF1aXJlUGxheXNJbmxpbmVBbmREb2VzSGF2ZUl0KCkKK3sK
KyAgICB0ZXN0UGxheXNJbmxpbmUoZmFsc2UsIHRydWUsIGZhbHNlKTsKK30KKwordmFyIHRlc3Rz
ID0gWworICAgIHRlc3RSZXF1aXJlc1BsYXlzSW5saW5lQW5kRG9lc250SGF2ZUl0LAorICAgIHRl
c3RSZXF1aXJlc1BsYXlzSW5saW5lQW5kRG9lc0hhdmVJdCwKKyAgICB0ZXN0RG9lc05vdFJlcXVp
cmVQbGF5c0lubGluZUFuZERvZXNudEhhdmVJdCwKKyAgICB0ZXN0RG9lc05vdFJlcXVpcmVQbGF5
c0lubGluZUFuZERvZXNIYXZlSXQsCitdOworCis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9u
bG9hZD0iZ28oKSI+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQo=
</data>
<flag name="review"
          id="308177"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>284612</attachid>
            <date>2016-07-26 11:56:11 -0700</date>
            <delta_ts>2016-07-26 11:56:11 -0700</delta_ts>
            <desc>Patch for committing</desc>
            <filename>bug-160178-20160726115502.patch</filename>
            <type>text/plain</type>
            <size>49831</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAzNzI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzc5YmU2ODdiMWJkMWU4
MTc5ODkyNWZlZWU2YzM5ZTI1ZTBmMzU3Ny4uYTk3YTE5YTk3OTYyZTg4OTIzZWNjZGQyMjljNTJi
NzU2ZDhkOWQ1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDE2LTA3LTI2ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lQaG9uZV0g
UGxheWluZyBhIHZpZGVvIG9uIHR1ZG91LmNvbSBwbGF5cyBvbmx5IHNvdW5kLCBubyB2aWRlbwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYwMTc4Cisg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yNzUzNTQ2OD4KKworICAgICAgICBSZXZpZXdlZCBieSBF
cmljIENhcmxzb24gYW5kIERhbiBCZXJuc3RlaW4uCisKKyAgICAgICAgVGhpcyBwYXRjaCByZS1p
bXBsZW1lbnRzIHIyMDM1MjAgaW4gYSBtdWNoIHNpbXBsZXIgd2F5IHdoaWNoIGRvZXNuJ3QgaW52
b2x2ZSBhIG5ldyBTUEkuCisgICAgICAgIFRoZSBiaWdnZXN0IHByb2JsZW0gd2l0aCByMjAzNTIw
IGlzIHRoYXQgaXQgbWFrZSBpdCBpbXBvc3NpYmxlIGZvciBhIFdLV2ViVmlldyB0byBtYXRjaAor
ICAgICAgICBNb2JpbGVTYWZhcmkncyBiZWhhdmlvci4gSW5zdGVhZCBvZiBhZGRpbmcgdGhpcyBu
ZXcgU1BJLCBhIHNpbXBsZSB2ZXJzaW9uIGNoZWNrIHNob3VsZAorICAgICAgICBiZSB1c2VkIHRv
IGtlZXAgb2xkIGFwcHMgd29ya2luZy4KKworICAgICAgICBUaGUgbmV3IGJlaGF2aW9yIGlzIGNo
YXJhY3Rlcml6ZWQgYnkgdGhlIGZvbGxvd2luZyB0YWJsZToKKworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICBpT1MgICAgICAgICAg
ICAgICAgIHwgICAgICBOb24taU9TCisgICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQorICAgICAgICByZXF1aXJlc1BsYXlJbmxpbmVBdHRyaWJ1dGUgPT0gdHJ1ZSAg
fCBPbGQgYXBwOiBob25vciAtd2Via2l0LXBsYXlzaW5saW5lIHwgaG9ub3IgcGxheXNpbmxpbmUK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTmV3IGFwcDog
aG9ub3IgcGxheXNpbmxpbmUgICAgICAgICB8IGhvbm9yIHBsYXlzaW5saW5lCisgICAgICAgIC0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICByZXF1aXJlc1BsYXlJ
bmxpbmVBdHRyaWJ1dGUgPT0gZmFsc2UgfCBBbHdheXMgaW5saW5lICAgICAgICAgICAgICAgICAg
ICAgIHwgQWx3YXlzIGlubGluZQorCisgICAgICAgIFNwZWNpZmljYWxseSwgdGhpcyBwYXRjaCBy
ZXZlcnRzIHIyMDM1NDUgd2hpY2ggaXMgdGhlIGNvbW1pdCB3aGljaCBhY3R1YWxseSByZW1vdmVz
CisgICAgICAgIHRoZSBvbGQgU1BJLiBBcyBzb29uIGFzIFNhZmFyaSBpcyBtaWdyYXRlZCBiYWNr
IHRvIHRoaXMgb2xkIFNQSSwgSSdsbCByZW1vdmUgdGhlIHR3bworICAgICAgICBuZXcgU1BJcyBh
ZGRlZCBpbiByMjAzNTIwLgorCisgICAgICAgIFRlc3RzOiBtZWRpYS92aWRlby1wbGF5c2lubGlu
ZS5odG1sCisgICAgICAgICAgICAgICBtZWRpYS92aWRlby13ZWJraXQtcGxheXNpbmxpbmUuaHRt
bAorCisgICAgICAgICogaHRtbC9NZWRpYUVsZW1lbnRTZXNzaW9uLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Ok1lZGlhRWxlbWVudFNlc3Npb246OnJlcXVpcmVzRnVsbHNjcmVlbkZvclZpZGVvUGxh
eWJhY2spOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuY3BwOgorICAgICAgICAqIHBhZ2UvU2V0
dGluZ3MuaW46CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6QmFja3VwKToKKyAgICAgICAg
KFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6cmVzdG9yZVRvKToKKyAgICAgICAg
KFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OnNldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJl
c1BsYXlzSW5saW5lQXR0cmlidXRlKToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0dGlu
Z3MuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsOgorCiAyMDE2LTA3
LTI2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBET01Ub2tl
bkxpc3Qgc2hvdWxkIGJlIGl0ZXJhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggZTdlMWE2Y2ZjZWRi
YTA2MWUwNmY4MTg2ZDMyYzE5YmZiM2RhYTYwMy4uOGZhMWIwZGFjZWNhMjFiZDU4YmYzMjYzNTAy
NTI3MjYwYWFmMmI2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE2LTA3
LTI2ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAg
W2lQaG9uZV0gUGxheWluZyBhIHZpZGVvIG9uIHR1ZG91LmNvbSBwbGF5cyBvbmx5IHNvdW5kLCBu
byB2aWRlbworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTYwMTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yNzUzNTQ2OD4KKworICAgICAgICBSZXZp
ZXdlZCBieSBFcmljIENhcmxzb24gYW5kIERhbiBCZXJuc3RlaW4uCisKKyAgICAgICAgKiBXZWJW
aWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5oOgorICAgICAgICAqIFdlYlZpZXcvV2ViUHJl
ZmVyZW5jZXMubW06CisgICAgICAgICgrW1dlYlByZWZlcmVuY2VzIGluaXRpYWxpemVdKToKKyAg
ICAgICAgKC1bV2ViUHJlZmVyZW5jZXMgaW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJ
bmxpbmVBdHRyaWJ1dGVdKToKKyAgICAgICAgKC1bV2ViUHJlZmVyZW5jZXMgc2V0SW5saW5lTWVk
aWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGU6XSk6CisgICAgICAgICogV2Vi
Vmlldy9XZWJQcmVmZXJlbmNlc1ByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJWaWV3L1dlYlZpZXcu
bW06CisgICAgICAgICgtW1dlYlZpZXcgX3ByZWZlcmVuY2VzQ2hhbmdlZDpdKToKKwogMjAxNi0w
Ny0yMSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAg
IFJlbW92ZSBzdXBwb3J0IGZvciBkZXByZWNhdGVkIFNQSSBpbmxpbmVNZWRpYVBsYXliYWNrUmVx
dWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDc2ZTgxNjc4OTA4YWQ3MTNk
NjI3OGIzNDI5NzFhYjUyYjJiYTQxYTguLjUyYjNlNTI2NGI1ZWYxNGIyNzIwOTBhNTY3NTBmZGZk
YzQyN2VjOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAxNi0wNy0yNiAgTXlsZXMg
Qy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtpUGhvbmVdIFBs
YXlpbmcgYSB2aWRlbyBvbiB0dWRvdS5jb20gcGxheXMgb25seSBzb3VuZCwgbm8gdmlkZW8KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MDE3OAorICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vMjc1MzU0Njg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRXJp
YyBDYXJsc29uIGFuZCBEYW4gQmVybnN0ZWluLgorCisgICAgICAgICogU2hhcmVkL1dlYlByZWZl
cmVuY2VzRGVmaW5pdGlvbnMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJl
bmNlcy5jcHA6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0SW5saW5lTWVkaWFQbGF5YmFja1Jl
cXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldElu
bGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1JlZlByaXZhdGUuaDoKKyAgICAgICAgKiBV
SVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbToKKyAgICAgICAgKC1bV0tXZWJWaWV3IF9p
bml0aWFsaXplV2l0aENvbmZpZ3VyYXRpb246XSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9D
b2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLm1tOgorICAgICAgICAoLVtXS1dlYlZpZXdDb25m
aWd1cmF0aW9uIGluaXRdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3Q29uZmlndXJhdGlvbiBjb3B5
V2l0aFpvbmU6XSk6CisgICAgICAgICgtW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gX2lubGluZU1l
ZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlXSk6CisgICAgICAgICgtW1dL
V2ViVmlld0NvbmZpZ3VyYXRpb24gX3NldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlz
SW5saW5lQXR0cmlidXRlOl0pOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJW
aWV3Q29uZmlndXJhdGlvblByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVwZGF0ZVByZWZlcmVuY2Vz
KToKKwogMjAxNi0wNy0yNiAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5j
b20+CiAKICAgICAgICAgW1RocmVhZGVkIENvbXBvc2l0b3JdIEFTU0VSVElPTiBGQUlMRUQ6IGNh
bkFjY2Vzc1RocmVhZExvY2FsRGF0YUZvclRocmVhZChtX3RocmVhZCkgYWZ0ZXIgcjIwMzcxOApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRpYUVsZW1lbnRTZXNzaW9uLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvTWVkaWFFbGVtZW50U2Vzc2lvbi5jcHAKaW5kZXggNzBkYWE5
Zjg1YmI4NTcwNTZhMTY5ZTdlMTNmMDMyYWUyMmZkZjlkMS4uYmU4MWIwMjQ4ZTdkMDA4MWU4MDg0
MmVlODY4YzAzNDJlODQ1ZDhkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9NZWRp
YUVsZW1lbnRTZXNzaW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL01lZGlhRWxlbWVu
dFNlc3Npb24uY3BwCkBAIC00Nyw2ICs0Nyw3IEBACiAjaW5jbHVkZSAiUmVuZGVyVmlldy5oIgog
I2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJTb3VyY2VCdWZmZXIuaCIK
KyNpbmNsdWRlIDx3dGYvc3BpL2Rhcndpbi9keWxkU1BJLmg+CiAKICNpZiBQTEFURk9STShJT1Mp
CiAjaW5jbHVkZSAiQXVkaW9TZXNzaW9uLmgiCkBAIC00NjUsMTYgKzQ2NiwxNCBAQCBib29sIE1l
ZGlhRWxlbWVudFNlc3Npb246OnJlcXVpcmVzRnVsbHNjcmVlbkZvclZpZGVvUGxheWJhY2soY29u
c3QgSFRNTE1lZGlhRWxlbQogICAgIGlmICghc2V0dGluZ3MgfHwgIXNldHRpbmdzLT5hbGxvd3NJ
bmxpbmVNZWRpYVBsYXliYWNrKCkpCiAgICAgICAgIHJldHVybiB0cnVlOwogCi0gICAgYm9vbCBy
ZXF1aXJlc1BsYXlzSW5saW5lID0gc2V0dGluZ3MtPmFsbG93c0lubGluZU1lZGlhUGxheWJhY2tX
aXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUoKTsKLSAgICBib29sIHJlcXVpcmVzV2ViS2l0UGxheXNJ
bmxpbmUgPSBzZXR0aW5ncy0+YWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5
c0lubGluZUF0dHJpYnV0ZSgpOwotCi0gICAgaWYgKCFyZXF1aXJlc1BsYXlzSW5saW5lICYmICFy
ZXF1aXJlc1dlYktpdFBsYXlzSW5saW5lKQorICAgIGlmICghc2V0dGluZ3MtPmlubGluZU1lZGlh
UGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKCkpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKIAotICAgIGJvb2wgaGFzUGxheXNJbmxpbmUgPSBlbGVtZW50Lmhhc0F0dHJpYnV0ZVdp
dGhvdXRTeW5jaHJvbml6YXRpb24oSFRNTE5hbWVzOjpwbGF5c2lubGluZUF0dHIpOwotICAgIGJv
b2wgaGFzV2ViS2l0UGxheXNJbmxpbmUgPSBlbGVtZW50Lmhhc0F0dHJpYnV0ZVdpdGhvdXRTeW5j
aHJvbml6YXRpb24oSFRNTE5hbWVzOjp3ZWJraXRfcGxheXNpbmxpbmVBdHRyKTsKLQotICAgIHJl
dHVybiAhKChyZXF1aXJlc1BsYXlzSW5saW5lICYmIGhhc1BsYXlzSW5saW5lKSB8fCAocmVxdWly
ZXNXZWJLaXRQbGF5c0lubGluZSAmJiBoYXNXZWJLaXRQbGF5c0lubGluZSkpOworI2lmIFBMQVRG
T1JNKElPUykKKyAgICBpZiAoZHlsZF9nZXRfcHJvZ3JhbV9zZGtfdmVyc2lvbigpIDwgRFlMRF9J
T1NfVkVSU0lPTl8xMF8wKQorICAgICAgICByZXR1cm4gIWVsZW1lbnQuaGFzQXR0cmlidXRlV2l0
aG91dFN5bmNocm9uaXphdGlvbihIVE1MTmFtZXM6OndlYmtpdF9wbGF5c2lubGluZUF0dHIpOwor
I2VuZGlmCisgICAgcmV0dXJuICFlbGVtZW50Lmhhc0F0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6
YXRpb24oSFRNTE5hbWVzOjpwbGF5c2lubGluZUF0dHIpOwogfQogCiBib29sIE1lZGlhRWxlbWVu
dFNlc3Npb246OmFsbG93c0F1dG9tYXRpY01lZGlhRGF0YUxvYWRpbmcoY29uc3QgSFRNTE1lZGlh
RWxlbWVudCYgZWxlbWVudCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
U2V0dGluZ3MuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKaW5kZXggNzRj
ZGIzZTljMDI1MDJmMDljOTNkZTY5MmI2MmRmOWFlZmFjZDE0NS4uZTc2YmEzNDRjZjZjNzNjMDNj
YWEwODY1NzFiODFjMjJjYjE1MzFkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9T
ZXR0aW5ncy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKQEAgLTEz
OCw2ICsxMzgsNyBAQCBzdGF0aWMgY29uc3QgYm9vbCBkZWZhdWx0Rml4ZWRQb3NpdGlvbkNyZWF0
ZXNTdGFja2luZ0NvbnRleHQgPSB0cnVlOwogc3RhdGljIGNvbnN0IGJvb2wgZGVmYXVsdEZpeGVk
QmFja2dyb3VuZHNQYWludFJlbGF0aXZlVG9Eb2N1bWVudCA9IHRydWU7CiBzdGF0aWMgY29uc3Qg
Ym9vbCBkZWZhdWx0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9zaXRpb25FbmFibGVk
ID0gdHJ1ZTsKIHN0YXRpYyBjb25zdCBib29sIGRlZmF1bHRBbGxvd3NJbmxpbmVNZWRpYVBsYXli
YWNrID0gZmFsc2U7CitzdGF0aWMgY29uc3QgYm9vbCBkZWZhdWx0SW5saW5lTWVkaWFQbGF5YmFj
a1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUgPSB0cnVlOwogc3RhdGljIGNvbnN0IGJvb2wg
ZGVmYXVsdEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUg
PSB0cnVlOwogc3RhdGljIGNvbnN0IGJvb2wgZGVmYXVsdEFsbG93c0lubGluZU1lZGlhUGxheWJh
Y2tXaXRoV2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1dGUgPSB0cnVlOwogc3RhdGljIGNvbnN0IGJv
b2wgZGVmYXVsdFZpZGVvUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlID0gdHJ1ZTsKQEAgLTE1
Miw2ICsxNTMsNyBAQCBzdGF0aWMgY29uc3QgYm9vbCBkZWZhdWx0Rml4ZWRQb3NpdGlvbkNyZWF0
ZXNTdGFja2luZ0NvbnRleHQgPSBmYWxzZTsKIHN0YXRpYyBjb25zdCBib29sIGRlZmF1bHRGaXhl
ZEJhY2tncm91bmRzUGFpbnRSZWxhdGl2ZVRvRG9jdW1lbnQgPSBmYWxzZTsKIHN0YXRpYyBjb25z
dCBib29sIGRlZmF1bHRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVuYWJs
ZWQgPSBmYWxzZTsKIHN0YXRpYyBjb25zdCBib29sIGRlZmF1bHRBbGxvd3NJbmxpbmVNZWRpYVBs
YXliYWNrID0gdHJ1ZTsKK3N0YXRpYyBjb25zdCBib29sIGRlZmF1bHRJbmxpbmVNZWRpYVBsYXli
YWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZSA9IGZhbHNlOwogc3RhdGljIGNvbnN0IGJv
b2wgZGVmYXVsdEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1
dGUgPSBmYWxzZTsKIHN0YXRpYyBjb25zdCBib29sIGRlZmF1bHRBbGxvd3NJbmxpbmVNZWRpYVBs
YXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlID0gZmFsc2U7CiBzdGF0aWMgY29u
c3QgYm9vbCBkZWZhdWx0VmlkZW9QbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUgPSBmYWxzZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaW4gYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1NldHRpbmdzLmluCmluZGV4IGRhNDZiODEwOWZjOWE4NWVlMWVjMTQ3ZmZiNTE1
MjZjYjkwNjUxZTMuLjVhNWZkNTk3OThlODg3YzJjOWI5YmMyZjJlOGE4ZTIxNDA0NWYzYWYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaW4KKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9TZXR0aW5ncy5pbgpAQCAtMTMxLDYgKzEzMSw3IEBAIGF1ZGlvUGxheWJhY2tS
ZXF1aXJlc1VzZXJHZXN0dXJlIGluaXRpYWw9ZGVmYXVsdEF1ZGlvUGxheWJhY2tSZXF1aXJlc1Vz
ZXJHZXN0dXJlCiBtYWluQ29udGVudFVzZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVkIGluaXRpYWw9
ZmFsc2UKIGFsbG93c0lubGluZU1lZGlhUGxheWJhY2sgaW5pdGlhbD1kZWZhdWx0QWxsb3dzSW5s
aW5lTWVkaWFQbGF5YmFjawogYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja0FmdGVyRnVsbHNjcmVl
biBpbml0aWFsPXRydWUKK2lubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0
cmlidXRlIGluaXRpYWw9ZGVmYXVsdElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5s
aW5lQXR0cmlidXRlCiBhbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0
cmlidXRlIGluaXRpYWw9ZGVmYXVsdEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJ
bmxpbmVBdHRyaWJ1dGUKIGFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJ
bmxpbmVBdHRyaWJ1dGUgaW5pdGlhbD1kZWZhdWx0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dp
dGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZQogYWxsb3dzUGljdHVyZUluUGljdHVyZU1lZGlh
UGxheWJhY2sgaW5pdGlhbD1kZWZhdWx0QWxsb3dzUGljdHVyZUluUGljdHVyZU1lZGlhUGxheWJh
Y2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCmluZGV4IDZm
MWYxM2E4MmFkNmRmMDcxY2Y2Y2E4N2E5YjFhMTUwMzQ4OWE3ZDAuLjgxMzVkMDk1MjQ4N2FjYjEx
MDQ5YTYwYmU3OGIxYjI1Y2E0NzA1YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbFNldHRpbmdzLmNwcApAQCAtMTA3LDYgKzEwNyw3IEBAIEludGVybmFsU2V0dGluZ3M6OkJh
Y2t1cDo6QmFja3VwKFNldHRpbmdzJiBzZXR0aW5ncykKICNlbmRpZgogICAgICwgbV9hbGxvd3NJ
bmxpbmVNZWRpYVBsYXliYWNrKHNldHRpbmdzLmFsbG93c0lubGluZU1lZGlhUGxheWJhY2soKSkK
ICAgICAsIG1fYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja0FmdGVyRnVsbHNjcmVlbihzZXR0aW5n
cy5hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrQWZ0ZXJGdWxsc2NyZWVuKCkpCisgICAgLCBtX2lu
bGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKHNldHRpbmdzLmlu
bGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKCkpCiAgICAgLCBt
X2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUoc2V0dGlu
Z3MuYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZSgpKQog
ICAgICwgbV9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0
cmlidXRlKHNldHRpbmdzLmFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJ
bmxpbmVBdHRyaWJ1dGUoKSkKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJT
KQpAQCAtMTg0LDYgKzE4NSw3IEBAIHZvaWQgSW50ZXJuYWxTZXR0aW5nczo6QmFja3VwOjpyZXN0
b3JlVG8oU2V0dGluZ3MmIHNldHRpbmdzKQogI2VuZGlmCiAgICAgc2V0dGluZ3Muc2V0QWxsb3dz
SW5saW5lTWVkaWFQbGF5YmFjayhtX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2spOwogICAgIHNl
dHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4obV9hbGxv
d3NJbmxpbmVNZWRpYVBsYXliYWNrQWZ0ZXJGdWxsc2NyZWVuKTsKKyAgICBzZXR0aW5ncy5zZXRJ
bmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZShtX2lubGluZU1l
ZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKTsKICAgICBzZXR0aW5ncy5z
ZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlKG1fYWxs
b3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZSk7CiAgICAgc2V0
dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0
dHJpYnV0ZShtX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxpbmVB
dHRyaWJ1dGUpOwogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCku
c2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKG1fcGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKTsK
QEAgLTU3Niw2ICs1NzgsMTIgQEAgdm9pZCBJbnRlcm5hbFNldHRpbmdzOjpzZXRBbGxvd3NJbmxp
bmVNZWRpYVBsYXliYWNrQWZ0ZXJGdWxsc2NyZWVuKGJvb2wgYWxsb3dzLAogICAgIHNldHRpbmdz
KCktPnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4oYWxsb3dzKTsK
IH0KIAordm9pZCBJbnRlcm5hbFNldHRpbmdzOjpzZXRJbmxpbmVNZWRpYVBsYXliYWNrUmVxdWly
ZXNQbGF5c0lubGluZUF0dHJpYnV0ZShib29sIHJlcXVpcmVzLCBFeGNlcHRpb25Db2RlJiBlYykK
K3sKKyAgICBJbnRlcm5hbFNldHRpbmdzR3VhcmRGb3JTZXR0aW5ncygpOworICAgIHNldHRpbmdz
KCktPnNldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKHJl
cXVpcmVzKTsKK30KKwogdm9pZCBJbnRlcm5hbFNldHRpbmdzOjpzZXRBbGxvd3NJbmxpbmVNZWRp
YVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlKGJvb2wgcmVxdWlyZXMsIEV4Y2VwdGlv
bkNvZGUmIGVjKQogewogICAgIEludGVybmFsU2V0dGluZ3NHdWFyZEZvclNldHRpbmdzKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaCBiL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5oCmluZGV4IGM2YTZjYmVjZTJh
YTljNWZhNzVlZWY1ODllY2U0ODliZTQ4NGEzODAuLmJiZTI5MDY4NjVjZTQ0ZDQ2NDM3YTQyMWY0
OTExYjk5MjZlYTIzYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxTZXR0aW5ncy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5n
cy5oCkBAIC0xMDcsNiArMTA3LDcgQEAgcHVibGljOgogI2VuZGlmCiAgICAgICAgIGJvb2wgbV9h
bGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrOwogICAgICAgICBib29sIG1fYWxsb3dzSW5saW5lTWVk
aWFQbGF5YmFja0FmdGVyRnVsbHNjcmVlbjsKKyAgICAgICAgYm9vbCBtX2lubGluZU1lZGlhUGxh
eWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlOwogICAgICAgICBib29sIG1fYWxsb3dz
SW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZTsKICAgICAgICAgYm9v
bCBtX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1
dGU7CiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykKQEAgLTE2Myw2ICsx
NjQsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRTY3JvbGxpbmdUcmVlSW5jbHVkZXNGcmFtZXMo
Ym9vbCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5
YmFjayhib29sLCBFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRBbGxvd3NJbmxpbmVNZWRp
YVBsYXliYWNrQWZ0ZXJGdWxsc2NyZWVuKGJvb2wsIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lk
IHNldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKGJvb2ws
IEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIHNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tX
aXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUoYm9vbCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQg
c2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0
ZShib29sLCBFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRJbmRleGVkREJXb3JrZXJzRW5h
YmxlZChib29sLCBFeGNlcHRpb25Db2RlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbFNldHRpbmdzLmlkbAppbmRleCA3OTQzNjcyMjJhMTIxMjE5M2NjODQwZDBjOWNiNjE0ZTkw
MDA0MzUxLi44NDU1MDU1ZGJjM2RlMzQ4ODc3YjRlZDY5NzJmMGViOGYwYjllMWM3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwKQEAgLTc3LDYgKzc3LDcg
QEAKICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldE1pbmltdW1UaW1lckludGVydmFsKHVu
cmVzdHJpY3RlZCBkb3VibGUgaW50ZXJ2YWxJblNlY29uZHMpOwogICAgIFtSYWlzZXNFeGNlcHRp
b25dIHZvaWQgc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFjayhib29sZWFuIGFsbG93cyk7CiAg
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrQWZ0
ZXJGdWxsc2NyZWVuKGJvb2xlYW4gYWxsb3dzKTsKKyAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lk
IHNldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKGJvb2xl
YW4gcmVxdWlyZXMpOwogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0QWxsb3dzSW5saW5l
TWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZShib29sZWFuIHJlcXVpcmVzKTsK
ICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tX
aXRoV2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1dGUoYm9vbGVhbiByZXF1aXJlcyk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2YXRl
LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VLZXlzUHJpdmF0ZS5o
CmluZGV4IDA2ZTcyMjEwZDVkOTdlZGU1Yzg3MmRmMTIxODUzZmE4MjU4YThlNmEuLjBmYWJjNmQy
ZTk5YTA4MzkxZTM1ZDljODZhZDkzNjVlNDFkODIyOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZUtleXNQcml2YXRlLmgKKysrIGIvU291cmNlL1dl
YktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlS2V5c1ByaXZhdGUuaApAQCAtMTI2LDYgKzEy
Niw3IEBACiAjZGVmaW5lIFdlYktpdE1haW5Db250ZW50VXNlckdlc3R1cmVPdmVycmlkZUVuYWJs
ZWRQcmVmZXJlbmNlS2V5IEAiV2ViS2l0TWFpbkNvbnRlbnRVc2VyR2VzdHVyZU92ZXJyaWRlRW5h
YmxlZCIKICNkZWZpbmUgV2ViS2l0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1ByZWZlcmVuY2VL
ZXkgQCJXZWJLaXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lIgogI2RlZmluZSBXZWJLaXRBbGxv
d3NJbmxpbmVNZWRpYVBsYXliYWNrQWZ0ZXJGdWxsc2NyZWVuUHJlZmVyZW5jZUtleSBAIldlYktp
dEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW4iCisjZGVmaW5lIFdlYktp
dElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlS2V5IEAiSW5s
aW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUiCiAjZGVmaW5lIFdl
YktpdEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGVLZXkg
QCJBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlIgogI2Rl
ZmluZSBXZWJLaXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5l
QXR0cmlidXRlS2V5IEAiQWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lu
bGluZUF0dHJpYnV0ZSIKICNkZWZpbmUgV2ViS2l0SW52aXNpYmxlQXV0b3BsYXlOb3RQZXJtaXR0
ZWRLZXkgQCJJbnZpc2libGVBdXRvcGxheU5vdFBlcm1pdHRlZCIKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0gYi9Tb3VyY2UvV2ViS2l0L21h
Yy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCmluZGV4IGM2ZDlhMzhmODAyOTMxYmM1MTU4MWM2
YWZhZjdjNjNmN2Q0NjJlOTguLjFjOTQ0OWQwYjlkNjdjMGEyMTcyOWNiNWZhNmJmNDNhZTQwMjFi
YmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMu
bW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbQpAQCAt
NTI1LDYgKzUyNSw3IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2lmICFQTEFURk9STShJT1MpCiAg
ICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpZRVNdLCAgV2ViS2l0QWxsb3dzSW5saW5l
TWVkaWFQbGF5YmFja1ByZWZlcmVuY2VLZXksCiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRo
Qm9vbDpOT10sICAgV2ViS2l0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja0FmdGVyRnVsbHNjcmVl
blByZWZlcmVuY2VLZXksCisgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpOT10sICAg
V2ViS2l0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGVLZXks
CiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpOT10sICAgV2ViS2l0QWxsb3dzSW5s
aW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZUtleSwKICAgICAgICAgW05T
TnVtYmVyIG51bWJlcldpdGhCb29sOk5PXSwgICBXZWJLaXRBbGxvd3NJbmxpbmVNZWRpYVBsYXli
YWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlS2V5LAogICAgICAgICBbTlNOdW1iZXIg
bnVtYmVyV2l0aEJvb2w6WUVTXSwgIFdlYktpdE1lZGlhQ29udHJvbHNTY2FsZVdpdGhQYWdlWm9v
bVByZWZlcmVuY2VLZXksCkBAIC01MzksNiArNTQwLDcgQEAgKyAodm9pZClpbml0aWFsaXplCiAj
ZWxzZQogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6YWxsb3dzSW5saW5lTWVkaWFQ
bGF5YmFja10sICAgV2ViS2l0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1ByZWZlcmVuY2VLZXks
CiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDphbGxvd3NJbmxpbmVNZWRpYVBsYXli
YWNrQWZ0ZXJGdWxsc2NyZWVuXSwgICBXZWJLaXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrQWZ0
ZXJGdWxsc2NyZWVuUHJlZmVyZW5jZUtleSwKKyAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhC
b29sOnJlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGVdLCBXZWJLaXRJbmxpbmVNZWRpYVBsYXli
YWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51
bWJlcldpdGhCb29sOnJlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGVdLCBXZWJLaXRBbGxvd3NJ
bmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlS2V5LAogICAgICAgICBb
TlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6cmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZV0sIFdl
YktpdEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1
dGVLZXksCiAgICAgICAgIFtOU051bWJlciBudW1iZXJXaXRoQm9vbDpOT10sICAgV2ViS2l0TWVk
aWFDb250cm9sc1NjYWxlV2l0aFBhZ2Vab29tUHJlZmVyZW5jZUtleSwKQEAgLTIyODUsNiArMjI4
NywxNiBAQCAtICh2b2lkKXNldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmU6KEJPT0wpZmxhZwog
ICAgIFtzZWxmIF9zZXRCb29sVmFsdWU6ZmxhZyBmb3JLZXk6V2ViS2l0QWxsb3dzSW5saW5lTWVk
aWFQbGF5YmFja1ByZWZlcmVuY2VLZXldOwogfQogCistIChCT09MKWlubGluZU1lZGlhUGxheWJh
Y2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlCit7CisgICAgcmV0dXJuIFtzZWxmIF9ib29s
VmFsdWVGb3JLZXk6V2ViS2l0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVB
dHRyaWJ1dGVLZXldOworfQorCistICh2b2lkKXNldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJl
c1BsYXlzSW5saW5lQXR0cmlidXRlOihCT09MKWZsYWcKK3sKKyAgICBbc2VsZiBfc2V0Qm9vbFZh
bHVlOmZsYWcgZm9yS2V5OldlYktpdElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5s
aW5lQXR0cmlidXRlS2V5XTsKK30KKwogLSAoQk9PTClhbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNr
V2l0aFBsYXlzSW5saW5lQXR0cmlidXRlCiB7CiAgICAgcmV0dXJuIFtzZWxmIF9ib29sVmFsdWVG
b3JLZXk6V2ViS2l0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJp
YnV0ZUtleV07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZl
cmVuY2VzUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNl
c1ByaXZhdGUuaAppbmRleCA0MjU3Yjk3OTFjYTExMTcyZjYzNjhjOTIzY2JmYWE5YmRmMmU4MmM5
Li44YzNlZmIyYjY2NmZkODJiNDZiNWVhY2U5ZGZhZGUzN2Q5MmRiYzAxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmgKQEAgLTI2Miw2
ICsyNjIsOSBAQCBleHRlcm4gTlNTdHJpbmcgKldlYlByZWZlcmVuY2VzQ2FjaGVNb2RlbENoYW5n
ZWRJbnRlcm5hbE5vdGlmaWNhdGlvbjsKIC0gKHZvaWQpc2V0TWVkaWFQbGF5YmFja0FsbG93c0lu
bGluZTooQk9PTClmbGFnOwogLSAoQk9PTCltZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lOwogCist
ICh2b2lkKXNldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRl
OihCT09MKWZsYWc7CistIChCT09MKWlubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5s
aW5lQXR0cmlidXRlOworCiAtICh2b2lkKXNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRo
UGxheXNJbmxpbmVBdHRyaWJ1dGU6KEJPT0wpZmxhZzsKIC0gKEJPT0wpYWxsb3dzSW5saW5lTWVk
aWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJWaWV3Lm1tCmluZGV4IDIyODY4NmRjZjUxMmY4Y2RlMTBiMDUwY2U2NDk5OGFkODQ0ZDAx
YzIuLjIzMWY5MDAwODliNmVmYzk0ZTYzYmY4NTkyNDM1NzZiNTA0NmQ3ZjkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KQEAgLTIzNDgsNiArMjM0OCw3IEBAIC0gKHZvaWQpX3By
ZWZlcmVuY2VzQ2hhbmdlZDooV2ViUHJlZmVyZW5jZXMgKilwcmVmZXJlbmNlcwogICAgIHNldHRp
bmdzLnNldE1haW5Db250ZW50VXNlckdlc3R1cmVPdmVycmlkZUVuYWJsZWQoW3ByZWZlcmVuY2Vz
IG92ZXJyaWRlVXNlckdlc3R1cmVSZXF1aXJlbWVudEZvck1haW5Db250ZW50XSk7CiAgICAgc2V0
dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFjayhbcHJlZmVyZW5jZXMgbWVkaWFQbGF5
YmFja0FsbG93c0lubGluZV0pOwogICAgIHNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxh
eWJhY2tBZnRlckZ1bGxzY3JlZW4oW3ByZWZlcmVuY2VzIGFsbG93c0lubGluZU1lZGlhUGxheWJh
Y2tBZnRlckZ1bGxzY3JlZW5dKTsKKyAgICBzZXR0aW5ncy5zZXRJbmxpbmVNZWRpYVBsYXliYWNr
UmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZShbcHJlZmVyZW5jZXMgaW5saW5lTWVkaWFQbGF5
YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGVdKTsKICAgICBzZXR0aW5ncy5zZXRBbGxv
d3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlKFtwcmVmZXJlbmNl
cyBhbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlXSk7CiAg
ICAgc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lu
bGluZUF0dHJpYnV0ZShbcHJlZmVyZW5jZXMgYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhX
ZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZV0pOwogICAgIHNldHRpbmdzLnNldEludmlzaWJsZUF1
dG9wbGF5Tm90UGVybWl0dGVkKFtwcmVmZXJlbmNlcyBpbnZpc2libGVBdXRvcGxheU5vdFBlcm1p
dHRlZF0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2Vz
RGVmaW5pdGlvbnMuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc0RlZmlu
aXRpb25zLmgKaW5kZXggOTk2MDFlNzFkMDhkYzQ5YTkwNzhiZDRlNWJiMmIxMTQ1MGM0NjhiZS4u
NjIzYTFhODQ2M2M2MjljZGFkOWY4ZjdiNmJjNDY1ZDZiMzhmNGM3ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzRGVmaW5pdGlvbnMuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNEZWZpbml0aW9ucy5oCkBAIC0xNTYsNiAr
MTU2LDcgQEAKICAgICBtYWNybyhNYWluQ29udGVudFVzZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVk
LCBtYWluQ29udGVudFVzZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVkLCBCb29sLCBib29sLCBmYWxz
ZSwgIiIsICIiKSBcCiAgICAgbWFjcm8oQWxsb3dzSW5saW5lTWVkaWFQbGF5YmFjaywgYWxsb3dz
SW5saW5lTWVkaWFQbGF5YmFjaywgQm9vbCwgYm9vbCwgREVGQVVMVF9BTExPV1NfSU5MSU5FX01F
RElBX1BMQVlCQUNLLCAiIiwgIiIpIFwKICAgICBtYWNybyhBbGxvd3NJbmxpbmVNZWRpYVBsYXli
YWNrQWZ0ZXJGdWxsc2NyZWVuLCBhbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrQWZ0ZXJGdWxsc2Ny
ZWVuLCBCb29sLCBib29sLCBERUZBVUxUX0FMTE9XU19JTkxJTkVfTUVESUFfUExBWUJBQ0tfQUZU
RVJfRlVMTFNDUkVFTiwgIiIsICIiKSBcCisgICAgbWFjcm8oSW5saW5lTWVkaWFQbGF5YmFja1Jl
cXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUsIGlubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1Bs
YXlzSW5saW5lQXR0cmlidXRlLCBCb29sLCBib29sLCBERUZBVUxUX0lOTElORV9NRURJQV9QTEFZ
QkFDS19SRVFVSVJFU19QTEFZU19JTkxJTkVfQVRUUklCVVRFLCAiIiwgIiIpIFwKICAgICBtYWNy
byhBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlLCBhbGxv
d3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlLCBCb29sLCBib29s
LCBERUZBVUxUX0FMTE9XU19JTkxJTkVfTUVESUFfUExBWUJBQ0tfV0lUSF9QTEFZU19JTkxJTkVf
QVRUUklCVVRFLCAiIiwgIiIpIFwKICAgICBtYWNybyhBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNr
V2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlLCBhbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNr
V2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlLCBCb29sLCBib29sLCBERUZBVUxUX0FMTE9X
U19JTkxJTkVfTUVESUFfUExBWUJBQ0tfV0lUSF9XRUJLSVRfUExBWVNfSU5MSU5FX0FUVFJJQlVU
RSwgIiIsICIiKSBcCiAgICAgbWFjcm8oSW52aXNpYmxlQXV0b3BsYXlOb3RQZXJtaXR0ZWQsIGlu
dmlzaWJsZUF1dG9wbGF5Tm90UGVybWl0dGVkLCBCb29sLCBib29sLCBERUZBVUxUX0lOVklTSUJM
RV9BVVRPUExBWV9OT1RfUEVSTUlUVEVELCAiIiwgIiIpIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAppbmRleCA3OTQ3MGUxMGE1YzJlMWM3
MGRkMDk1ZjExNjlhMTEyY2EzZDk0MDEzLi41ZWNlNWUxOTI0YjQ0MTIzMWIzMGM2ZTQxNzZjNzY5
NjQwM2VkNGYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQ
cmVmZXJlbmNlcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJl
ZmVyZW5jZXMuY3BwCkBAIC03OTMsNiArNzkzLDE2IEBAIGJvb2wgV0tQcmVmZXJlbmNlc0dldE1l
ZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikK
ICAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+YWxsb3dzSW5saW5lTWVkaWFQbGF5
YmFjaygpOwogfQogCit2b2lkIFdLUHJlZmVyZW5jZXNTZXRJbmxpbmVNZWRpYVBsYXliYWNrUmVx
dWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZShXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVm
LCBib29sIGZsYWcpCit7CisgICAgdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c2V0SW5saW5lTWVk
aWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUoZmxhZyk7Cit9CisKK2Jvb2wg
V0tQcmVmZXJlbmNlc0dldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0
cmlidXRlKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpCit7CisgICAgcmV0dXJuIHRv
SW1wbChwcmVmZXJlbmNlc1JlZiktPmlubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5s
aW5lQXR0cmlidXRlKCk7Cit9CisKIHZvaWQgV0tQcmVmZXJlbmNlc1NldEFsbG93c0lubGluZU1l
ZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUoV0tQcmVmZXJlbmNlc1JlZiBwcmVm
ZXJlbmNlc1JlZiwgYm9vbCBmbGFnKQogewogICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNl
dEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUoZmxhZyk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNl
c1JlZlByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVu
Y2VzUmVmUHJpdmF0ZS5oCmluZGV4IGYwN2E5MDlmNjY3MjI2MzlmZmYxZDI2MWY4YjAzNjBiNDk5
NDhmMzguLjAxMWViNzc1NGYwMzMzNTdlMWI3MjdhNTk3MTEwNzJlMTAxZDkzOTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUmVmUHJpdmF0
ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUmVm
UHJpdmF0ZS5oCkBAIC0xOTEsNiArMTkxLDEwIEBAIFdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5j
ZXNHZXRNYWluQ29udGVudFVzZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVkKFdLUHJlZmVyZW5jCiBX
S19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0TWVkaWFQbGF5YmFja0FsbG93c0lubGluZShX
S1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpOwogV0tfRVhQT1JUIGJv
b2wgV0tQcmVmZXJlbmNlc0dldE1lZGlhUGxheWJhY2tBbGxvd3NJbmxpbmUoV0tQcmVmZXJlbmNl
c1JlZiBwcmVmZXJlbmNlc1JlZik7CiAKKy8vIERlZmF1bHRzIHRvIGZhbHNlLgorV0tfRVhQT1JU
IHZvaWQgV0tQcmVmZXJlbmNlc1NldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5s
aW5lQXR0cmlidXRlKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZyk7
CitXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVp
cmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZik7
CisKIC8vIERlZmF1bHRzIHRvIHRydWUgb24gaU9TLCBmYWxzZSBlbHNld2hlcmUuCiBXS19FWFBP
UlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5
c0lubGluZUF0dHJpYnV0ZShXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGZs
YWcpOwogV0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldEFsbG93c0lubGluZU1lZGlhUGxh
eWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNl
c1JlZik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dL
V2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3
Lm1tCmluZGV4IDQyNjYzMWVmZmM2ZjI4M2Q2ODE3MGRjN2ZjNWZjY2ExYjg5OGQyMDYuLmM2OWQ4
ODU3NmJkNjY1ODJhMGFiNDYyYTkyNGZkMzZkZTA3NjQ3YmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCkBAIC00NTUsNiArNDU1LDcgQEAg
LSAodm9pZClfaW5pdGlhbGl6ZVdpdGhDb25maWd1cmF0aW9uOihXS1dlYlZpZXdDb25maWd1cmF0
aW9uICopY29uZmlndXJhdGlvbgogCiAgICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2VW
YWx1ZXMoKS5zZXQoV2ViS2l0OjpXZWJQcmVmZXJlbmNlc0tleTo6YWxsb3dzSW5saW5lTWVkaWFQ
bGF5YmFja0tleSgpLCBXZWJLaXQ6OldlYlByZWZlcmVuY2VzU3RvcmU6OlZhbHVlKCEhW19jb25m
aWd1cmF0aW9uIGFsbG93c0lubGluZU1lZGlhUGxheWJhY2tdKSk7CiAgICAgcGFnZUNvbmZpZ3Vy
YXRpb24tPnByZWZlcmVuY2VWYWx1ZXMoKS5zZXQoV2ViS2l0OjpXZWJQcmVmZXJlbmNlc0tleTo6
YWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja0FmdGVyRnVsbHNjcmVlbktleSgpLCBXZWJLaXQ6Oldl
YlByZWZlcmVuY2VzU3RvcmU6OlZhbHVlKCEhW19jb25maWd1cmF0aW9uIF9hbGxvd3NJbmxpbmVN
ZWRpYVBsYXliYWNrQWZ0ZXJGdWxsc2NyZWVuXSkpOworICAgIHBhZ2VDb25maWd1cmF0aW9uLT5w
cmVmZXJlbmNlVmFsdWVzKCkuc2V0KFdlYktpdDo6V2ViUHJlZmVyZW5jZXNLZXk6OmlubGluZU1l
ZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlS2V5KCksIFdlYktpdDo6V2Vi
UHJlZmVyZW5jZXNTdG9yZTo6VmFsdWUoISFbX2NvbmZpZ3VyYXRpb24gX2lubGluZU1lZGlhUGxh
eWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlXSkpOwogICAgIHBhZ2VDb25maWd1cmF0
aW9uLT5wcmVmZXJlbmNlVmFsdWVzKCkuc2V0KFdlYktpdDo6V2ViUHJlZmVyZW5jZXNLZXk6OmFs
bG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGVLZXkoKSwgV2Vi
S2l0OjpXZWJQcmVmZXJlbmNlc1N0b3JlOjpWYWx1ZSghIVtfY29uZmlndXJhdGlvbiBfYWxsb3dz
SW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZV0pKTsKICAgICBwYWdl
Q29uZmlndXJhdGlvbi0+cHJlZmVyZW5jZVZhbHVlcygpLnNldChXZWJLaXQ6OldlYlByZWZlcmVu
Y2VzS2V5OjphbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0
cmlidXRlS2V5KCksIFdlYktpdDo6V2ViUHJlZmVyZW5jZXNTdG9yZTo6VmFsdWUoISFbX2NvbmZp
Z3VyYXRpb24gX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxpbmVB
dHRyaWJ1dGVdKSk7CiAgICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2VWYWx1ZXMoKS5z
ZXQoV2ViS2l0OjpXZWJQcmVmZXJlbmNlc0tleTo6YWxsb3dzUGljdHVyZUluUGljdHVyZU1lZGlh
UGxheWJhY2tLZXkoKSwgV2ViS2l0OjpXZWJQcmVmZXJlbmNlc1N0b3JlOjpWYWx1ZSghIVtfY29u
ZmlndXJhdGlvbiBhbGxvd3NQaWN0dXJlSW5QaWN0dXJlTWVkaWFQbGF5YmFja10gJiYgc2hvdWxk
QWxsb3dQaWN0dXJlSW5QaWN0dXJlTWVkaWFQbGF5YmFjaygpKSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb24ubW0g
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRp
b24ubW0KaW5kZXggYjdlNTQ4NWI5NTY1MmRhMGY1YTg4MTlhYjg5OWZhMDI1NDFlYmQzZS4uODI2
YzQ0ODBkY2ZiMjI3NTg5NDJjNjJmNDhjMjhmZDI3NzVjODJhNSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJh
dGlvbi5tbQpAQCAtMTA3LDYgKzEwNyw3IEBAIEBpbXBsZW1lbnRhdGlvbiBXS1dlYlZpZXdDb25m
aWd1cmF0aW9uIHsKICAgICBMYXp5SW5pdGlhbGl6ZWQ8UmV0YWluUHRyPFdLV2ViVmlld0NvbnRl
bnRQcm92aWRlclJlZ2lzdHJ5Pj4gX2NvbnRlbnRQcm92aWRlclJlZ2lzdHJ5OwogICAgIEJPT0wg
X2Fsd2F5c1J1bnNBdEZvcmVncm91bmRQcmlvcml0eTsKICAgICBCT09MIF9hbGxvd3NJbmxpbmVN
ZWRpYVBsYXliYWNrOworICAgIEJPT0wgX2lubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlz
SW5saW5lQXR0cmlidXRlOwogICAgIEJPT0wgX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRo
UGxheXNJbmxpbmVBdHRyaWJ1dGU7CiAgICAgQk9PTCBfYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFj
a1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZTsKICAgICBCT09MIF9hbGxvd3NJbmxpbmVN
ZWRpYVBsYXliYWNrQWZ0ZXJGdWxsc2NyZWVuOwpAQCAtMTM4LDYgKzEzOSw3IEBAIC0gKGluc3Rh
bmNldHlwZSlpbml0CiAjaWYgUExBVEZPUk0oSU9TKQogICAgIF9hbGxvd3NQaWN0dXJlSW5QaWN0
dXJlTWVkaWFQbGF5YmFjayA9IFlFUzsKICAgICBfYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFjayA9
IFdlYkNvcmU6OmRldmljZUNsYXNzKCkgPT0gTUdEZXZpY2VDbGFzc2lQYWQ7CisgICAgX2lubGlu
ZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlID0gIV9hbGxvd3NJbmxp
bmVNZWRpYVBsYXliYWNrOwogICAgIF9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlz
SW5saW5lQXR0cmlidXRlID0gIV9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrOwogICAgIF9hbGxv
d3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlID0gIV9h
bGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrOwogICAgIF9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNr
QWZ0ZXJGdWxsc2NyZWVuID0gIV9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrOwpAQCAtMjkwLDYg
KzI5Miw3IEBAIC0gKGlkKWNvcHlXaXRoWm9uZTooTlNab25lICopem9uZQogI2lmIFBMQVRGT1JN
KElPUykKICAgICBjb25maWd1cmF0aW9uLT5fYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFjayA9IHNl
bGYtPl9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrOwogICAgIGNvbmZpZ3VyYXRpb24tPl9hbGxv
d3NJbmxpbmVNZWRpYVBsYXliYWNrQWZ0ZXJGdWxsc2NyZWVuID0gc2VsZi0+X2FsbG93c0lubGlu
ZU1lZGlhUGxheWJhY2tBZnRlckZ1bGxzY3JlZW47CisgICAgY29uZmlndXJhdGlvbi0+X2lubGlu
ZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlID0gc2VsZi0+X2lubGlu
ZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlOwogICAgIGNvbmZpZ3Vy
YXRpb24tPl9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRl
ID0gc2VsZi0+X2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1
dGU7CiAgICAgY29uZmlndXJhdGlvbi0+X2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2Vi
S2l0UGxheXNJbmxpbmVBdHRyaWJ1dGUgPSBzZWxmLT5fYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFj
a1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZTsKICAgICBjb25maWd1cmF0aW9uLT5fYWxs
b3dzUGljdHVyZUluUGljdHVyZU1lZGlhUGxheWJhY2sgPSBzZWxmLT5fYWxsb3dzUGljdHVyZUlu
UGljdHVyZU1lZGlhUGxheWJhY2s7CkBAIC01NzEsNiArNTc0LDE2IEBAIC0gKHZvaWQpX3NldEFs
d2F5c1J1bnNBdEZvcmVncm91bmRQcmlvcml0eTooQk9PTClhbHdheXNSdW5zQXRGb3JlZ3JvdW5k
UHJpb3JpdHkKICAgICBfYWx3YXlzUnVuc0F0Rm9yZWdyb3VuZFByaW9yaXR5ID0gYWx3YXlzUnVu
c0F0Rm9yZWdyb3VuZFByaW9yaXR5OwogfQogCistIChCT09MKV9pbmxpbmVNZWRpYVBsYXliYWNr
UmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZQoreworICAgIHJldHVybiBfaW5saW5lTWVkaWFQ
bGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGU7Cit9CisKKy0gKHZvaWQpX3NldElu
bGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlOihCT09MKXJlcXVp
cmVzCit7CisgICAgX2lubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmli
dXRlID0gcmVxdWlyZXM7Cit9CisKIC0gKEJPT0wpX2FsbG93c0lubGluZU1lZGlhUGxheWJhY2tX
aXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUKIHsKICAgICByZXR1cm4gX2FsbG93c0lubGluZU1lZGlh
UGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb25Qcml2YXRlLmgg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRp
b25Qcml2YXRlLmgKaW5kZXggZWFmNWQ2YjUwMTkyM2JkY2NhMThlY2RiMjk5YTJkOTBmYmU3OTYx
Yi4uZTUyOTAxYjE0MTI1NDk2ZDcwMDg2ZTVhODdjNjFiYTRkZDhlZjUyYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9u
UHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJW
aWV3Q29uZmlndXJhdGlvblByaXZhdGUuaApAQCAtNTksNiArNTksNyBAQAogCiAjaWYgVEFSR0VU
X09TX0lQSE9ORQogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0QWx3YXlzUnVuc0F0
Rm9yZWdyb3VuZFByaW9yaXR5OikgQk9PTCBfYWx3YXlzUnVuc0F0Rm9yZWdyb3VuZFByaW9yaXR5
IFdLX0FQSV9BVkFJTEFCTEUoaW9zKDlfMCkpOworQHByb3BlcnR5IChub25hdG9taWMsIHNldHRl
cj1fc2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGU6KSBC
T09MIF9pbmxpbmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZSBXS19B
UElfQVZBSUxBQkxFKGlvcyhXS19JT1NfVEJBKSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0
dGVyPV9zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRl
OikgQk9PTCBfYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0
ZSBXS19BUElfQVZBSUxBQkxFKGlvcyhXS19JT1NfVEJBKSk7CiBAcHJvcGVydHkgKG5vbmF0b21p
Yywgc2V0dGVyPV9zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5s
aW5lQXR0cmlidXRlOikgQk9PTCBfYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQ
bGF5c0lubGluZUF0dHJpYnV0ZSBXS19BUElfQVZBSUxBQkxFKGlvcyhXS19JT1NfVEJBKSk7CiBA
cHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNr
QWZ0ZXJGdWxsc2NyZWVuOikgQk9PTCBfYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja0FmdGVyRnVs
bHNjcmVlbiAgV0tfQVBJX0FWQUlMQUJMRShpb3MoV0tfSU9TX1RCQSkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDUzMzA4MjkyM2E4Njk5
N2E0OTNjZGNlYzQ5Y2I2NGFhNGJlNDY3YmIuLmI0YWVjMWNlODQzNDRhMDlhMzk5NDI5Mjk3OTZh
MDQ4NGZmMzUxNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5jcHAKQEAgLTI5NzcsNiArMjk3Nyw3IEBAIHZvaWQgV2ViUGFnZTo6dXBkYXRlUHJlZmVy
ZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYgc3RvcmUpCiAgICAgc2V0dGluZ3Muc2V0
TWFpbkNvbnRlbnRVc2VyR2VzdHVyZU92ZXJyaWRlRW5hYmxlZChzdG9yZS5nZXRCb29sVmFsdWVG
b3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6Om1haW5Db250ZW50VXNlckdlc3R1cmVPdmVycmlkZUVu
YWJsZWRLZXkoKSkpOwogICAgIHNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2so
c3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjphbGxvd3NJbmxpbmVN
ZWRpYVBsYXliYWNrS2V5KCkpKTsKICAgICBzZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBs
YXliYWNrQWZ0ZXJGdWxsc2NyZWVuKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJl
bmNlc0tleTo6YWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja0FmdGVyRnVsbHNjcmVlbktleSgpKSk7
CisgICAgc2V0dGluZ3Muc2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVB
dHRyaWJ1dGUoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5Ojppbmxp
bmVNZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZUtleSgpKSk7CiAgICAg
c2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJp
YnV0ZShzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OmFsbG93c0lu
bGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGVLZXkoKSkpOwogICAgIHNl
dHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxpbmVB
dHRyaWJ1dGUoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjphbGxv
d3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlS2V5KCkp
KTsKICAgICBzZXR0aW5ncy5zZXRJbnZpc2libGVBdXRvcGxheU5vdFBlcm1pdHRlZChzdG9yZS5n
ZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OmludmlzaWJsZUF1dG9wbGF5Tm90
UGVybWl0dGVkS2V5KCkpKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0No
YW5nZUxvZwppbmRleCA4YjdlMDRhNjMyNTY5ZDlkYTU3ZWJlZjljOTkyYmZkYzIxNzRiNzgzLi4z
ODNmNWJiNTJjMGJjNzEzOTg5MTgzOTM2Yjk1NzM2NWIxOTQ4MzdiIDEwMDY0NAotLS0gYS9Ub29s
cy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTYt
MDctMjYgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAgICAg
ICBbaVBob25lXSBQbGF5aW5nIGEgdmlkZW8gb24gdHVkb3UuY29tIHBsYXlzIG9ubHkgc291bmQs
IG5vIHZpZGVvCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNjAxNzgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzI3NTM1NDY4PgorCisgICAgICAgIFJl
dmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9tYWMv
RHVtcFJlbmRlclRyZWUubW06CisgICAgICAgIChzZXREZWZhdWx0c1RvQ29uc2lzdGVudFZhbHVl
c0ZvclRlc3RpbmcpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0MkNvY29h
L1JlcXVpcmVzVXNlckFjdGlvbkZvclBsYXliYWNrLm1tOgorICAgICAgICAoUmVxdWlyZXNVc2Vy
QWN0aW9uRm9yUGxheWJhY2tUZXN0OjpTZXRVcCk6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5l
ci9UZXN0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXVFI6OlRlc3RDb250cm9sbGVyOjpyZXNl
dFByZWZlcmVuY2VzVG9Db25zaXN0ZW50VmFsdWVzKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVu
bmVyL2NvY29hL1Rlc3RDb250cm9sbGVyQ29jb2EubW06CisgICAgICAgIChXVFI6OmluaXRpYWxp
emVXZWJWaWV3Q29uZmlndXJhdGlvbik6CisKIDIwMTYtMDctMjYgIEx1Y2FzIEZvcnNjaGxlciAg
PGxmb3JzY2hsZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFRlc3Qgc3ZuLndlYmtpdC5vcmcgZnVu
Y3Rpb25hbGl0eSBhZnRlciBtYWludGVuYW5jZS4KZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbSBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9E
dW1wUmVuZGVyVHJlZS5tbQppbmRleCAyZGYzNGVkNGM1MzIzNWI5M2Q0ZDU3YTVkOThjYzQ0MDgw
MjY1NjI1Li4zYzllY2E0NjUxMmI4M2NmNjdmYWFhMmU5NGI4ZWI1ODU2ZjAxZjc1IDEwMDY0NAot
LS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0KKysrIGIvVG9v
bHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tCkBAIC0xMDE3LDYgKzEwMTcs
NyBAQCBzdGF0aWMgdm9pZCBzZXREZWZhdWx0c1RvQ29uc2lzdGVudFZhbHVlc0ZvclRlc3Rpbmco
KQogICAgICAgICBXZWJLaXRFbmFibGVGdWxsRG9jdW1lbnRUZWFyZG93blByZWZlcmVuY2VLZXk6
IEBZRVMsCiAgICAgICAgIFdlYktpdEZ1bGxTY3JlZW5FbmFibGVkUHJlZmVyZW5jZUtleTogQFlF
UywKICAgICAgICAgV2ViS2l0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1ByZWZlcmVuY2VLZXk6
IEBZRVMsCisgICAgICAgIFdlYktpdElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5s
aW5lQXR0cmlidXRlS2V5OiBATk8sCiAgICAgICAgIFdlYktpdEFsbG93c0lubGluZU1lZGlhUGxh
eWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGVLZXk6IEBOTywKICAgICAgICAgV2ViS2l0QWxs
b3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZUtleTog
QE5PLAogICAgICAgICBAIlVzZVdlYktpdFdlYkluc3BlY3RvciI6IEBZRVMsCmRpZmYgLS1naXQg
YS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDJDb2NvYS9SZXF1aXJlc1VzZXJBY3Rp
b25Gb3JQbGF5YmFjay5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0MkNvY29h
L1JlcXVpcmVzVXNlckFjdGlvbkZvclBsYXliYWNrLm1tCmluZGV4IGEyNjE3OWM5Y2MwOTBkMTQ1
NzRmYWEzNTVlZTQ4NTg4ZjA4NTQ5ZDQuLjJmZWY4MDAzYTM0NjA3ZDljNGZiNTExNTk0MDYyZTc1
YTVhNTJmMWIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0MkNv
Y29hL1JlcXVpcmVzVXNlckFjdGlvbkZvclBsYXliYWNrLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0MkNvY29hL1JlcXVpcmVzVXNlckFjdGlvbkZvclBsYXliYWNrLm1t
CkBAIC03Niw2ICs3Niw3IEBAIHB1YmxpYzoKICAgICAgICAgY29uZmlndXJhdGlvbi5nZXQoKS5f
bWVkaWFEYXRhTG9hZHNBdXRvbWF0aWNhbGx5ID0gWUVTOwogI2lmIFRBUkdFVF9PU19JUEhPTkUK
ICAgICAgICAgY29uZmlndXJhdGlvbi5nZXQoKS5hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrID0g
WUVTOworICAgICAgICBjb25maWd1cmF0aW9uLmdldCgpLl9pbmxpbmVNZWRpYVBsYXliYWNrUmVx
dWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZSA9IE5POwogICAgICAgICBjb25maWd1cmF0aW9uLmdl
dCgpLl9hbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlID0g
Tk87CiAgICAgICAgIGNvbmZpZ3VyYXRpb24uZ2V0KCkuX2FsbG93c0lubGluZU1lZGlhUGxheWJh
Y2tXaXRoV2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1dGUgPSBOTzsKICNlbmRpZgpkaWZmIC0tZ2l0
IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAgYi9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcAppbmRleCA1ZTUwYzc1YzMwNTNmMjk0ZWY2
MWMwMDQ1YjMwZWUwYjY3MzIzZTAyLi5lOGE3MTViOTg1YTA1NDliMzM1NjFjZWY4MmMzY2FkNDcz
ZmQ0NmJiIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVy
LmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcApAQCAt
Njg0LDYgKzY4NCw3IEBAIHZvaWQgVGVzdENvbnRyb2xsZXI6OnJlc2V0UHJlZmVyZW5jZXNUb0Nv
bnNpc3RlbnRWYWx1ZXMoY29uc3QgVGVzdE9wdGlvbnMmIG9wdGlvCiAgICAgV0tQcmVmZXJlbmNl
c1NldFN0b3JhZ2VCbG9ja2luZ1BvbGljeShwcmVmZXJlbmNlcywga1dLQWxsb3dBbGxTdG9yYWdl
KTsKIAogICAgIFdLUHJlZmVyZW5jZXNTZXRNZWRpYVBsYXliYWNrQWxsb3dzSW5saW5lKHByZWZl
cmVuY2VzLCB0cnVlKTsKKyAgICBXS1ByZWZlcmVuY2VzU2V0SW5saW5lTWVkaWFQbGF5YmFja1Jl
cXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUocHJlZmVyZW5jZXMsIGZhbHNlKTsKICAgICBXS1By
ZWZlcmVuY2VzU2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJp
YnV0ZShwcmVmZXJlbmNlcywgZmFsc2UpOwogICAgIFdLUHJlZmVyZW5jZXNTZXRBbGxvd3NJbmxp
bmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlKHByZWZlcmVuY2Vz
LCBmYWxzZSk7CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvY29jb2EvVGVz
dENvbnRyb2xsZXJDb2NvYS5tbSBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvY29jb2EvVGVzdENv
bnRyb2xsZXJDb2NvYS5tbQppbmRleCA0ODRmNWMzMDZhNTJkNGIwNjNiZjA2YzI5NTM2MjY3MDA3
ZjBmOWQzLi4wMTAxMGIxMGFkZWZiOTczNzk0ODdiODFhYzZlYjE4YzMxNmU0NGQxIDEwMDY0NAot
LS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2NvY29hL1Rlc3RDb250cm9sbGVyQ29jb2EubW0K
KysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9UZXN0Q29udHJvbGxlckNvY29hLm1t
CkBAIC02MSw2ICs2MSw3IEBAIHZvaWQgaW5pdGlhbGl6ZVdlYlZpZXdDb25maWd1cmF0aW9uKGNv
bnN0IGNoYXIqIGxpYnJhcnlQYXRoLCBXS1N0cmluZ1JlZiBpbmplY3RlCiAKICNpZiBUQVJHRVRf
T1NfSVBIT05FCiAgICAgZ2xvYmFsV2ViVmlld0NvbmZpZ3VyYXRpb24uYWxsb3dzSW5saW5lTWVk
aWFQbGF5YmFjayA9IFlFUzsKKyAgICBnbG9iYWxXZWJWaWV3Q29uZmlndXJhdGlvbi5faW5saW5l
TWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUgPSBOTzsKICAgICBnbG9i
YWxXZWJWaWV3Q29uZmlndXJhdGlvbi5fYWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5
c0lubGluZUF0dHJpYnV0ZSA9IE5POwogICAgIGdsb2JhbFdlYlZpZXdDb25maWd1cmF0aW9uLl9h
bGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlID0g
Tk87CiAgICAgZ2xvYmFsV2ViVmlld0NvbmZpZ3VyYXRpb24uX2ludmlzaWJsZUF1dG9wbGF5Tm90
UGVybWl0dGVkID0gTk87CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMTE2MzVhNGE1NDc3ODQ0NmJlYjBjOGFhZjIwOTkwMzU0
MWEyMGU0Yy4uYjljMzFiNTEyNjkyMmJlOGZiZjNhZWQ1N2M1ZDI1NGJhY2YzNjk4MiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE2IEBACisyMDE2LTA3LTI2ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVs
ZEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lQaG9uZV0gUGxheWluZyBhIHZpZGVvIG9uIHR1ZG91
LmNvbSBwbGF5cyBvbmx5IHNvdW5kLCBubyB2aWRlbworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYwMTc4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8y
NzUzNTQ2OD4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24gYW5kIERhbiBCZXJu
c3RlaW4uCisKKyAgICAgICAgKiBtZWRpYS92aWRlby1wbGF5c2lubGluZS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogbWVkaWEvdmlkZW8tcGxheXNpbmxpbmUuaHRtbDoKKyAgICAgICAgKiBtZWRp
YS92aWRlby13ZWJraXQtcGxheXNpbmxpbmUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBtZWRpYS92aWRlby13ZWJraXQtcGxheXNpbmxpbmUuaHRtbDogQWRkZWQuCisKIDIwMTYtMDct
MjYgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIERPTVRva2Vu
TGlzdCBzaG91bGQgYmUgaXRlcmFibGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLXBsYXlzaW5saW5lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBs
YXlzaW5saW5lLWV4cGVjdGVkLnR4dAppbmRleCA5ODIwM2E1NjJkNjQ4ZmNjYjk1MjIxNzVhZDY0
MjZjZjFhYTZlZjAwLi4wNDE0NTczZjBjNDZjZDczZmNlMjQ0OGVkNjljOWZmOGQ1MThmY2FhIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wbGF5c2lubGluZS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheXNpbmxpbmUtZXhwZWN0ZWQudHh0
CkBAIC0xLDEyNyArMSwyMyBAQAotUlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRBbGxvd3NJbmxp
bmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlKHRydWUpKQotUlVOKGludGVy
bmFscy5zZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlz
SW5saW5lQXR0cmlidXRlKHRydWUpKQorUlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRJbmxpbmVN
ZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZSh0cnVlKSkKIFJVTih2aWRl
by5wbGF5c0lubGluZSA9IGZhbHNlKQotUlVOKHZpZGVvLnJlbW92ZUF0dHJpYnV0ZSgid2Via2l0
LXBsYXlzaW5saW5lIiwgIiIpKQogRVZFTlQoY2FucGxheXRocm91Z2gpCiBSVU4odmlkZW8ucGxh
eSgpKQogRVZFTlQocGxheWluZykKIEVYUEVDVEVEICh2aWRlby53ZWJraXREaXNwbGF5aW5nRnVs
bHNjcmVlbiA9PSAndHJ1ZScpIE9LCi1SVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lu
bGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUodHJ1ZSkpCi1SVU4oaW50
ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxh
eXNJbmxpbmVBdHRyaWJ1dGUodHJ1ZSkpCi1SVU4odmlkZW8ucGxheXNJbmxpbmUgPSBmYWxzZSkK
LVJVTih2aWRlby5zZXRBdHRyaWJ1dGUoIndlYmtpdC1wbGF5c2lubGluZSIsICIiKSkKLUVWRU5U
KGNhbnBsYXl0aHJvdWdoKQotUlVOKHZpZGVvLnBsYXkoKSkKLUVWRU5UKHBsYXlpbmcpCi1FWFBF
Q1RFRCAodmlkZW8ud2Via2l0RGlzcGxheWluZ0Z1bGxzY3JlZW4gPT0gJ2ZhbHNlJykgT0sKLVJV
TihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5
c0lubGluZUF0dHJpYnV0ZSh0cnVlKSkKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dz
SW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZShmYWxzZSkp
Ci1SVU4odmlkZW8ucGxheXNJbmxpbmUgPSBmYWxzZSkKLVJVTih2aWRlby5zZXRBdHRyaWJ1dGUo
IndlYmtpdC1wbGF5c2lubGluZSIsICIiKSkKLUVWRU5UKGNhbnBsYXl0aHJvdWdoKQotUlVOKHZp
ZGVvLnBsYXkoKSkKLUVWRU5UKHBsYXlpbmcpCi1FWFBFQ1RFRCAodmlkZW8ud2Via2l0RGlzcGxh
eWluZ0Z1bGxzY3JlZW4gPT0gJ3RydWUnKSBPSwotUlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRB
bGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlKHRydWUpKQot
UlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdl
YktpdFBsYXlzSW5saW5lQXR0cmlidXRlKGZhbHNlKSkKLVJVTih2aWRlby5wbGF5c0lubGluZSA9
IGZhbHNlKQotUlVOKHZpZGVvLnJlbW92ZUF0dHJpYnV0ZSgid2Via2l0LXBsYXlzaW5saW5lIiwg
IiIpKQotRVZFTlQoY2FucGxheXRocm91Z2gpCi1SVU4odmlkZW8ucGxheSgpKQotRVZFTlQocGxh
eWluZykKLUVYUEVDVEVEICh2aWRlby53ZWJraXREaXNwbGF5aW5nRnVsbHNjcmVlbiA9PSAndHJ1
ZScpIE9LCi1SVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJh
Y2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUodHJ1ZSkpCi1SVU4oaW50ZXJuYWxzLnNldHRpbmdz
LnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoV2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1
dGUodHJ1ZSkpCi1SVU4odmlkZW8ucGxheXNJbmxpbmUgPSB0cnVlKQotUlVOKHZpZGVvLnNldEF0
dHJpYnV0ZSgid2Via2l0LXBsYXlzaW5saW5lIiwgIiIpKQotRVZFTlQoY2FucGxheXRocm91Z2gp
Ci1SVU4odmlkZW8ucGxheSgpKQotRVZFTlQocGxheWluZykKLUVYUEVDVEVEICh2aWRlby53ZWJr
aXREaXNwbGF5aW5nRnVsbHNjcmVlbiA9PSAnZmFsc2UnKSBPSwotUlVOKGludGVybmFscy5zZXR0
aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRl
KHRydWUpKQotUlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXli
YWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlKHRydWUpKQotUlVOKHZpZGVvLnBsYXlz
SW5saW5lID0gdHJ1ZSkKLVJVTih2aWRlby5yZW1vdmVBdHRyaWJ1dGUoIndlYmtpdC1wbGF5c2lu
bGluZSIsICIiKSkKLUVWRU5UKGNhbnBsYXl0aHJvdWdoKQotUlVOKHZpZGVvLnBsYXkoKSkKLUVW
RU5UKHBsYXlpbmcpCi1FWFBFQ1RFRCAodmlkZW8ud2Via2l0RGlzcGxheWluZ0Z1bGxzY3JlZW4g
PT0gJ2ZhbHNlJykgT0sKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVk
aWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZSh0cnVlKSkKLVJVTihpbnRlcm5hbHMu
c2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGlu
ZUF0dHJpYnV0ZShmYWxzZSkpCi1SVU4odmlkZW8ucGxheXNJbmxpbmUgPSB0cnVlKQotUlVOKHZp
ZGVvLnNldEF0dHJpYnV0ZSgid2Via2l0LXBsYXlzaW5saW5lIiwgIiIpKQotRVZFTlQoY2FucGxh
eXRocm91Z2gpCi1SVU4odmlkZW8ucGxheSgpKQotRVZFTlQocGxheWluZykKLUVYUEVDVEVEICh2
aWRlby53ZWJraXREaXNwbGF5aW5nRnVsbHNjcmVlbiA9PSAnZmFsc2UnKSBPSwotUlVOKGludGVy
bmFscy5zZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5l
QXR0cmlidXRlKHRydWUpKQotUlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVN
ZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlKGZhbHNlKSkKK1JVTihp
bnRlcm5hbHMuc2V0dGluZ3Muc2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxp
bmVBdHRyaWJ1dGUodHJ1ZSkpCiBSVU4odmlkZW8ucGxheXNJbmxpbmUgPSB0cnVlKQotUlVOKHZp
ZGVvLnJlbW92ZUF0dHJpYnV0ZSgid2Via2l0LXBsYXlzaW5saW5lIiwgIiIpKQogRVZFTlQoY2Fu
cGxheXRocm91Z2gpCiBSVU4odmlkZW8ucGxheSgpKQogRVZFTlQocGxheWluZykKIEVYUEVDVEVE
ICh2aWRlby53ZWJraXREaXNwbGF5aW5nRnVsbHNjcmVlbiA9PSAnZmFsc2UnKSBPSwotUlVOKGlu
dGVybmFscy5zZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5s
aW5lQXR0cmlidXRlKGZhbHNlKSkKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5s
aW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZSh0cnVlKSkKK1JV
TihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJ
bmxpbmVBdHRyaWJ1dGUoZmFsc2UpKQogUlVOKHZpZGVvLnBsYXlzSW5saW5lID0gZmFsc2UpCi1S
VU4odmlkZW8uc2V0QXR0cmlidXRlKCJ3ZWJraXQtcGxheXNpbmxpbmUiLCAiIikpCi1FVkVOVChj
YW5wbGF5dGhyb3VnaCkKLVJVTih2aWRlby5wbGF5KCkpCi1FVkVOVChwbGF5aW5nKQotRVhQRUNU
RUQgKHZpZGVvLndlYmtpdERpc3BsYXlpbmdGdWxsc2NyZWVuID09ICdmYWxzZScpIE9LCi1SVU4o
aW50ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJ
bmxpbmVBdHRyaWJ1dGUoZmFsc2UpKQotUlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRBbGxvd3NJ
bmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmlidXRlKHRydWUpKQot
UlVOKHZpZGVvLnBsYXlzSW5saW5lID0gZmFsc2UpCi1SVU4odmlkZW8ucmVtb3ZlQXR0cmlidXRl
KCJ3ZWJraXQtcGxheXNpbmxpbmUiLCAiIikpCi1FVkVOVChjYW5wbGF5dGhyb3VnaCkKLVJVTih2
aWRlby5wbGF5KCkpCi1FVkVOVChwbGF5aW5nKQotRVhQRUNURUQgKHZpZGVvLndlYmtpdERpc3Bs
YXlpbmdGdWxsc2NyZWVuID09ICd0cnVlJykgT0sKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0
QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhQbGF5c0lubGluZUF0dHJpYnV0ZShmYWxzZSkp
Ci1SVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJhY2tXaXRo
V2ViS2l0UGxheXNJbmxpbmVBdHRyaWJ1dGUoZmFsc2UpKQotUlVOKHZpZGVvLnBsYXlzSW5saW5l
ID0gZmFsc2UpCi1SVU4odmlkZW8uc2V0QXR0cmlidXRlKCJ3ZWJraXQtcGxheXNpbmxpbmUiLCAi
IikpCi1FVkVOVChjYW5wbGF5dGhyb3VnaCkKLVJVTih2aWRlby5wbGF5KCkpCi1FVkVOVChwbGF5
aW5nKQotRVhQRUNURUQgKHZpZGVvLndlYmtpdERpc3BsYXlpbmdGdWxsc2NyZWVuID09ICdmYWxz
ZScpIE9LCi1SVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lubGluZU1lZGlhUGxheWJh
Y2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUoZmFsc2UpKQotUlVOKGludGVybmFscy5zZXR0aW5n
cy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlzSW5saW5lQXR0cmli
dXRlKGZhbHNlKSkKLVJVTih2aWRlby5wbGF5c0lubGluZSA9IGZhbHNlKQotUlVOKHZpZGVvLnJl
bW92ZUF0dHJpYnV0ZSgid2Via2l0LXBsYXlzaW5saW5lIiwgIiIpKQotRVZFTlQoY2FucGxheXRo
cm91Z2gpCi1SVU4odmlkZW8ucGxheSgpKQotRVZFTlQocGxheWluZykKLUVYUEVDVEVEICh2aWRl
by53ZWJraXREaXNwbGF5aW5nRnVsbHNjcmVlbiA9PSAnZmFsc2UnKSBPSwotUlVOKGludGVybmFs
cy5zZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0
cmlidXRlKGZhbHNlKSkKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVk
aWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZSh0cnVlKSkKLVJVTih2aWRl
by5wbGF5c0lubGluZSA9IHRydWUpCi1SVU4odmlkZW8uc2V0QXR0cmlidXRlKCJ3ZWJraXQtcGxh
eXNpbmxpbmUiLCAiIikpCi1FVkVOVChjYW5wbGF5dGhyb3VnaCkKLVJVTih2aWRlby5wbGF5KCkp
Ci1FVkVOVChwbGF5aW5nKQotRVhQRUNURUQgKHZpZGVvLndlYmtpdERpc3BsYXlpbmdGdWxsc2Ny
ZWVuID09ICdmYWxzZScpIE9LCi1SVU4oaW50ZXJuYWxzLnNldHRpbmdzLnNldEFsbG93c0lubGlu
ZU1lZGlhUGxheWJhY2tXaXRoUGxheXNJbmxpbmVBdHRyaWJ1dGUoZmFsc2UpKQotUlVOKGludGVy
bmFscy5zZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFdlYktpdFBsYXlz
SW5saW5lQXR0cmlidXRlKHRydWUpKQotUlVOKHZpZGVvLnBsYXlzSW5saW5lID0gdHJ1ZSkKLVJV
Tih2aWRlby5yZW1vdmVBdHRyaWJ1dGUoIndlYmtpdC1wbGF5c2lubGluZSIsICIiKSkKLUVWRU5U
KGNhbnBsYXl0aHJvdWdoKQotUlVOKHZpZGVvLnBsYXkoKSkKLUVWRU5UKHBsYXlpbmcpCi1FWFBF
Q1RFRCAodmlkZW8ud2Via2l0RGlzcGxheWluZ0Z1bGxzY3JlZW4gPT0gJ3RydWUnKSBPSwotUlVO
KGludGVybmFscy5zZXR0aW5ncy5zZXRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlz
SW5saW5lQXR0cmlidXRlKGZhbHNlKSkKLVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dz
SW5saW5lTWVkaWFQbGF5YmFja1dpdGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZShmYWxzZSkp
Ci1SVU4odmlkZW8ucGxheXNJbmxpbmUgPSB0cnVlKQotUlVOKHZpZGVvLnNldEF0dHJpYnV0ZSgi
d2Via2l0LXBsYXlzaW5saW5lIiwgIiIpKQogRVZFTlQoY2FucGxheXRocm91Z2gpCiBSVU4odmlk
ZW8ucGxheSgpKQogRVZFTlQocGxheWluZykKIEVYUEVDVEVEICh2aWRlby53ZWJraXREaXNwbGF5
aW5nRnVsbHNjcmVlbiA9PSAnZmFsc2UnKSBPSwotUlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRB
bGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrV2l0aFBsYXlzSW5saW5lQXR0cmlidXRlKGZhbHNlKSkK
LVJVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dpdGhX
ZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZShmYWxzZSkpCitSVU4oaW50ZXJuYWxzLnNldHRpbmdz
LnNldElubGluZU1lZGlhUGxheWJhY2tSZXF1aXJlc1BsYXlzSW5saW5lQXR0cmlidXRlKGZhbHNl
KSkKIFJVTih2aWRlby5wbGF5c0lubGluZSA9IHRydWUpCi1SVU4odmlkZW8ucmVtb3ZlQXR0cmli
dXRlKCJ3ZWJraXQtcGxheXNpbmxpbmUiLCAiIikpCiBFVkVOVChjYW5wbGF5dGhyb3VnaCkKIFJV
Tih2aWRlby5wbGF5KCkpCiBFVkVOVChwbGF5aW5nKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tcGxheXNpbmxpbmUuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBs
YXlzaW5saW5lLmh0bWwKaW5kZXggMWZjZjYyNzFhYjg3MDJlMTg2Yzg0OWEzMDY5ZjlmY2U5OTM1
OGNlYS4uZmE2YTczMTI0NGQ5NzBiM2M5MmRkYTViNjBiOGQ3MjkyNDlmNTFkYiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheXNpbmxpbmUuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1wbGF5c2lubGluZS5odG1sCkBAIC0xNywxNiArMTcsMTQgQEAgZnVu
Y3Rpb24gcnVuTmV4dFRlc3QoKQogICAgICAgICBlbmRUZXN0KCk7CiB9CiAKLWZ1bmN0aW9uIHRl
c3RQbGF5c0lubGluZShyZXF1aXJlc1BsYXlzSW5saW5lLCByZXF1aXJlc1dlYktpdFBsYXlzSW5s
aW5lLCBoYXNQbGF5c0lubGluZSwgaGFzV2ViS2l0UGxheXNJbmxpbmUsIGV4cGVjdGVkRGlzcGxh
eWluZ0Z1bGxzY3JlZW4pCitmdW5jdGlvbiB0ZXN0UGxheXNJbmxpbmUocmVxdWlyZXNQbGF5c0lu
bGluZSwgaGFzUGxheXNJbmxpbmUsIGV4cGVjdGVkRGlzcGxheWluZ0Z1bGxzY3JlZW4pCiB7Ci0g
ICAgcnVuKCdpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dp
dGhQbGF5c0lubGluZUF0dHJpYnV0ZSgnICsgcmVxdWlyZXNQbGF5c0lubGluZSArICcpJyk7Ci0g
ICAgcnVuKCdpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWxsb3dzSW5saW5lTWVkaWFQbGF5YmFja1dp
dGhXZWJLaXRQbGF5c0lubGluZUF0dHJpYnV0ZSgnICsgcmVxdWlyZXNXZWJLaXRQbGF5c0lubGlu
ZSArICcpJyk7CisgICAgcnVuKCdpbnRlcm5hbHMuc2V0dGluZ3Muc2V0SW5saW5lTWVkaWFQbGF5
YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUoJyArIHJlcXVpcmVzUGxheXNJbmxpbmUg
KyAnKScpOwogICAgIHZpZGVvID0gbWVkaWEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd2aWRl
bycpOwogICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodmlkZW8pOwogICAgIHZpZGVvLmNv
bnRyb2xzID0gdHJ1ZTsKICAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdj
b250ZW50L3Rlc3QnKTsKICAgICBydW4oJ3ZpZGVvLnBsYXlzSW5saW5lID0gJyArIGhhc1BsYXlz
SW5saW5lKTsKLSAgICBydW4oJ3ZpZGVvLicgKyAoaGFzV2ViS2l0UGxheXNJbmxpbmUgPyAnc2V0
JyA6ICdyZW1vdmUnKSArICdBdHRyaWJ1dGUoIndlYmtpdC1wbGF5c2lubGluZSIsICIiKScpOwog
ICAgIHdhaXRGb3JFdmVudE9uY2UoJ2NhbnBsYXl0aHJvdWdoJywgKCkgPT4gewogICAgICAgICBy
dW5XaXRoS2V5RG93bigoKSA9PiB7CiAgICAgICAgICAgICBydW4oJ3ZpZGVvLnBsYXkoKScpOwpA
QCAtNDEsMTAxICszOSwyOSBAQCBmdW5jdGlvbiB0ZXN0UGxheXNJbmxpbmUocmVxdWlyZXNQbGF5
c0lubGluZSwgcmVxdWlyZXNXZWJLaXRQbGF5c0lubGluZSwgaGFzUGxheQogCiBmdW5jdGlvbiB0
ZXN0UmVxdWlyZXNQbGF5c0lubGluZUFuZERvZXNudEhhdmVJdCgpCiB7Ci0gICAgdGVzdFBsYXlz
SW5saW5lKHRydWUsIHRydWUsIGZhbHNlLCBmYWxzZSwgdHJ1ZSk7Ci19Ci0KLWZ1bmN0aW9uIHRl
c3RSZXF1aXJlc1BsYXlzSW5saW5lQW5kRG9lc250SGF2ZUl0MigpCi17Ci0gICAgdGVzdFBsYXlz
SW5saW5lKHRydWUsIHRydWUsIGZhbHNlLCB0cnVlLCBmYWxzZSk7Ci19Ci0KLWZ1bmN0aW9uIHRl
c3RSZXF1aXJlc1BsYXlzSW5saW5lQW5kRG9lc250SGF2ZUl0MygpCi17Ci0gICAgdGVzdFBsYXlz
SW5saW5lKHRydWUsIGZhbHNlLCBmYWxzZSwgdHJ1ZSwgdHJ1ZSk7Ci19Ci0KLWZ1bmN0aW9uIHRl
c3RSZXF1aXJlc1BsYXlzSW5saW5lQW5kRG9lc250SGF2ZUl0NCgpCi17Ci0gICAgdGVzdFBsYXlz
SW5saW5lKHRydWUsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIHRydWUpOworICAgIHRlc3RQbGF5c0lu
bGluZSh0cnVlLCBmYWxzZSwgdHJ1ZSk7CiB9CiAKIGZ1bmN0aW9uIHRlc3RSZXF1aXJlc1BsYXlz
SW5saW5lQW5kRG9lc0hhdmVJdCgpCiB7Ci0gICAgdGVzdFBsYXlzSW5saW5lKHRydWUsIHRydWUs
IHRydWUsIHRydWUsIGZhbHNlKTsKLX0KLQotZnVuY3Rpb24gdGVzdFJlcXVpcmVzUGxheXNJbmxp
bmVBbmREb2VzSGF2ZUl0MigpCi17Ci0gICAgdGVzdFBsYXlzSW5saW5lKHRydWUsIHRydWUsIHRy
dWUsIGZhbHNlLCBmYWxzZSk7Ci19Ci0KLWZ1bmN0aW9uIHRlc3RSZXF1aXJlc1BsYXlzSW5saW5l
QW5kRG9lc0hhdmVJdDMoKQotewotICAgIHRlc3RQbGF5c0lubGluZSh0cnVlLCBmYWxzZSwgdHJ1
ZSwgdHJ1ZSwgZmFsc2UpOwotfQotCi1mdW5jdGlvbiB0ZXN0UmVxdWlyZXNQbGF5c0lubGluZUFu
ZERvZXNIYXZlSXQ0KCkKLXsKLSAgICB0ZXN0UGxheXNJbmxpbmUodHJ1ZSwgZmFsc2UsIHRydWUs
IGZhbHNlLCBmYWxzZSk7CisgICAgdGVzdFBsYXlzSW5saW5lKHRydWUsIHRydWUsIGZhbHNlKTsK
IH0KIAogZnVuY3Rpb24gdGVzdERvZXNOb3RSZXF1aXJlUGxheXNJbmxpbmVBbmREb2VzbnRIYXZl
SXQoKQogewotICAgIHRlc3RQbGF5c0lubGluZShmYWxzZSwgdHJ1ZSwgZmFsc2UsIHRydWUsIGZh
bHNlKTsKLX0KLQotZnVuY3Rpb24gdGVzdERvZXNOb3RSZXF1aXJlUGxheXNJbmxpbmVBbmREb2Vz
bnRIYXZlSXQyKCkKLXsKLSAgICB0ZXN0UGxheXNJbmxpbmUoZmFsc2UsIHRydWUsIGZhbHNlLCBm
YWxzZSwgdHJ1ZSk7Ci19Ci0KLWZ1bmN0aW9uIHRlc3REb2VzTm90UmVxdWlyZVBsYXlzSW5saW5l
QW5kRG9lc250SGF2ZUl0MygpCi17Ci0gICAgdGVzdFBsYXlzSW5saW5lKGZhbHNlLCBmYWxzZSwg
ZmFsc2UsIHRydWUsIGZhbHNlKTsKLX0KLQotZnVuY3Rpb24gdGVzdERvZXNOb3RSZXF1aXJlUGxh
eXNJbmxpbmVBbmREb2VzbnRIYXZlSXQ0KCkKLXsKLSAgICB0ZXN0UGxheXNJbmxpbmUoZmFsc2Us
IGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlKTsKKyAgICB0ZXN0UGxheXNJbmxpbmUoZmFsc2Us
IGZhbHNlLCBmYWxzZSk7CiB9CiAKIGZ1bmN0aW9uIHRlc3REb2VzTm90UmVxdWlyZVBsYXlzSW5s
aW5lQW5kRG9lc0hhdmVJdCgpCiB7Ci0gICAgdGVzdFBsYXlzSW5saW5lKGZhbHNlLCB0cnVlLCB0
cnVlLCB0cnVlLCBmYWxzZSk7Ci19Ci0KLWZ1bmN0aW9uIHRlc3REb2VzTm90UmVxdWlyZVBsYXlz
SW5saW5lQW5kRG9lc0hhdmVJdDIoKQotewotICAgIHRlc3RQbGF5c0lubGluZShmYWxzZSwgdHJ1
ZSwgdHJ1ZSwgZmFsc2UsIHRydWUpOwotfQotCi1mdW5jdGlvbiB0ZXN0RG9lc05vdFJlcXVpcmVQ
bGF5c0lubGluZUFuZERvZXNIYXZlSXQzKCkKLXsKLSAgICB0ZXN0UGxheXNJbmxpbmUoZmFsc2Us
IGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSk7Ci19Ci0KLWZ1bmN0aW9uIHRlc3REb2VzTm90UmVx
dWlyZVBsYXlzSW5saW5lQW5kRG9lc0hhdmVJdDQoKQotewotICAgIHRlc3RQbGF5c0lubGluZShm
YWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZSk7CisgICAgdGVzdFBsYXlzSW5saW5lKGZh
bHNlLCB0cnVlLCBmYWxzZSk7CiB9CiAKIHZhciB0ZXN0cyA9IFsKICAgICB0ZXN0UmVxdWlyZXNQ
bGF5c0lubGluZUFuZERvZXNudEhhdmVJdCwKLSAgICB0ZXN0UmVxdWlyZXNQbGF5c0lubGluZUFu
ZERvZXNudEhhdmVJdDIsCi0gICAgdGVzdFJlcXVpcmVzUGxheXNJbmxpbmVBbmREb2VzbnRIYXZl
SXQzLAotICAgIHRlc3RSZXF1aXJlc1BsYXlzSW5saW5lQW5kRG9lc250SGF2ZUl0NCwKICAgICB0
ZXN0UmVxdWlyZXNQbGF5c0lubGluZUFuZERvZXNIYXZlSXQsCi0gICAgdGVzdFJlcXVpcmVzUGxh
eXNJbmxpbmVBbmREb2VzSGF2ZUl0MiwKLSAgICB0ZXN0UmVxdWlyZXNQbGF5c0lubGluZUFuZERv
ZXNIYXZlSXQzLAotICAgIHRlc3RSZXF1aXJlc1BsYXlzSW5saW5lQW5kRG9lc0hhdmVJdDQsCiAg
ICAgdGVzdERvZXNOb3RSZXF1aXJlUGxheXNJbmxpbmVBbmREb2VzbnRIYXZlSXQsCi0gICAgdGVz
dERvZXNOb3RSZXF1aXJlUGxheXNJbmxpbmVBbmREb2VzbnRIYXZlSXQyLAotICAgIHRlc3REb2Vz
Tm90UmVxdWlyZVBsYXlzSW5saW5lQW5kRG9lc250SGF2ZUl0MywKLSAgICB0ZXN0RG9lc05vdFJl
cXVpcmVQbGF5c0lubGluZUFuZERvZXNudEhhdmVJdDQsCiAgICAgdGVzdERvZXNOb3RSZXF1aXJl
UGxheXNJbmxpbmVBbmREb2VzSGF2ZUl0LAotICAgIHRlc3REb2VzTm90UmVxdWlyZVBsYXlzSW5s
aW5lQW5kRG9lc0hhdmVJdDIsCi0gICAgdGVzdERvZXNOb3RSZXF1aXJlUGxheXNJbmxpbmVBbmRE
b2VzSGF2ZUl0MywKLSAgICB0ZXN0RG9lc05vdFJlcXVpcmVQbGF5c0lubGluZUFuZERvZXNIYXZl
SXQ0CiBdOwogCiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVv
LXdlYmtpdC1wbGF5c2lubGluZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by13ZWJraXQtcGxheXNpbmxpbmUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk2NzQ4OTU2ZThi
MzY4NGJmZGJkNThiYmE2MzVlN2M2OWMxNzk2ODQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby13ZWJraXQtcGxheXNpbmxpbmUtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMjYgQEAKK1JVTihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0SW5saW5lTWVkaWFQbGF5YmFja1Jl
cXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUodHJ1ZSkpCitSVU4odmlkZW8ucmVtb3ZlQXR0cmli
dXRlKCJ3ZWJraXQtcGxheXNpbmxpbmUiLCAiIikpCitFVkVOVChjYW5wbGF5dGhyb3VnaCkKK1JV
Tih2aWRlby5wbGF5KCkpCitFVkVOVChwbGF5aW5nKQorRVhQRUNURUQgKHZpZGVvLndlYmtpdERp
c3BsYXlpbmdGdWxsc2NyZWVuID09ICd0cnVlJykgT0sKK1JVTihpbnRlcm5hbHMuc2V0dGluZ3Mu
c2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJbmxpbmVBdHRyaWJ1dGUodHJ1ZSkp
CitSVU4odmlkZW8uc2V0QXR0cmlidXRlKCJ3ZWJraXQtcGxheXNpbmxpbmUiLCAiIikpCitFVkVO
VChjYW5wbGF5dGhyb3VnaCkKK1JVTih2aWRlby5wbGF5KCkpCitFVkVOVChwbGF5aW5nKQorRVhQ
RUNURUQgKHZpZGVvLndlYmtpdERpc3BsYXlpbmdGdWxsc2NyZWVuID09ICd0cnVlJykgT0sKK1JV
TihpbnRlcm5hbHMuc2V0dGluZ3Muc2V0SW5saW5lTWVkaWFQbGF5YmFja1JlcXVpcmVzUGxheXNJ
bmxpbmVBdHRyaWJ1dGUoZmFsc2UpKQorUlVOKHZpZGVvLnJlbW92ZUF0dHJpYnV0ZSgid2Via2l0
LXBsYXlzaW5saW5lIiwgIiIpKQorRVZFTlQoY2FucGxheXRocm91Z2gpCitSVU4odmlkZW8ucGxh
eSgpKQorRVZFTlQocGxheWluZykKK0VYUEVDVEVEICh2aWRlby53ZWJraXREaXNwbGF5aW5nRnVs
bHNjcmVlbiA9PSAnZmFsc2UnKSBPSworUlVOKGludGVybmFscy5zZXR0aW5ncy5zZXRJbmxpbmVN
ZWRpYVBsYXliYWNrUmVxdWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZShmYWxzZSkpCitSVU4odmlk
ZW8uc2V0QXR0cmlidXRlKCJ3ZWJraXQtcGxheXNpbmxpbmUiLCAiIikpCitFVkVOVChjYW5wbGF5
dGhyb3VnaCkKK1JVTih2aWRlby5wbGF5KCkpCitFVkVOVChwbGF5aW5nKQorRVhQRUNURUQgKHZp
ZGVvLndlYmtpdERpc3BsYXlpbmdGdWxsc2NyZWVuID09ICdmYWxzZScpIE9LCitFTkQgT0YgVEVT
VAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby13ZWJraXQtcGxheXNpbmxp
bmUuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXdlYmtpdC1wbGF5c2lubGluZS5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjdlZDk1ZjQ4ODA1ZmQzMDZjZTYyODIyMmE1YWI0NGI2ZjFiYWNhMzUKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby13ZWJraXQtcGxheXNpbmxp
bmUuaHRtbApAQCAtMCwwICsxLDcxIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+
Cis8c2NyaXB0IHNyYz0ibWVkaWEtZmlsZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0idmlk
ZW8tdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorZnVuY3Rpb24gZ28oKQoreworICAgIHJ1
bk5leHRUZXN0KCk7Cit9CisKK2Z1bmN0aW9uIHJ1bk5leHRUZXN0KCkKK3sKKyAgICBpZiAodGVz
dHMubGVuZ3RoKQorICAgICAgICB0ZXN0cy5zaGlmdCgpKCk7CisgICAgZWxzZQorICAgICAgICBl
bmRUZXN0KCk7Cit9CisKK2Z1bmN0aW9uIHRlc3RQbGF5c0lubGluZShyZXF1aXJlc1BsYXlzSW5s
aW5lLCBoYXNXZWJraXRQbGF5c0lubGluZSwgZXhwZWN0ZWREaXNwbGF5aW5nRnVsbHNjcmVlbikK
K3sKKyAgICBydW4oYGludGVybmFscy5zZXR0aW5ncy5zZXRJbmxpbmVNZWRpYVBsYXliYWNrUmVx
dWlyZXNQbGF5c0lubGluZUF0dHJpYnV0ZSgke3JlcXVpcmVzUGxheXNJbmxpbmV9KWApOworICAg
IHZpZGVvID0gbWVkaWEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd2aWRlbycpOworICAgIGRv
Y3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodmlkZW8pOworICAgIHZpZGVvLmNvbnRyb2xzID0gdHJ1
ZTsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3Qn
KTsKKyAgICBydW4oYHZpZGVvLiR7aGFzV2Via2l0UGxheXNJbmxpbmUgPyAnc2V0JyA6ICdyZW1v
dmUnfUF0dHJpYnV0ZSgid2Via2l0LXBsYXlzaW5saW5lIiwgIiIpYCk7CisgICAgd2FpdEZvckV2
ZW50T25jZSgnY2FucGxheXRocm91Z2gnLCAoKSA9PiB7CisgICAgICAgIHJ1bldpdGhLZXlEb3du
KCgpID0+IHsKKyAgICAgICAgICAgIHJ1bigndmlkZW8ucGxheSgpJyk7CisgICAgICAgIH0pOwor
ICAgIH0pCisgICAgd2FpdEZvckV2ZW50T25jZSgncGxheWluZycsICgpID0+IHsKKyAgICAgICAg
dGVzdEV4cGVjdGVkKCd2aWRlby53ZWJraXREaXNwbGF5aW5nRnVsbHNjcmVlbicsIGV4cGVjdGVk
RGlzcGxheWluZ0Z1bGxzY3JlZW4pOworICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxk
KHZpZGVvKTsKKyAgICAgICAgcnVuTmV4dFRlc3QoKTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24g
dGVzdFJlcXVpcmVzUGxheXNJbmxpbmVBbmREb2VzbnRIYXZlSXQoKQoreworICAgIHRlc3RQbGF5
c0lubGluZSh0cnVlLCBmYWxzZSwgdHJ1ZSk7Cit9CisKK2Z1bmN0aW9uIHRlc3RSZXF1aXJlc1Bs
YXlzSW5saW5lQW5kRG9lc0hhdmVJdCgpCit7CisgICAgdGVzdFBsYXlzSW5saW5lKHRydWUsIHRy
dWUsIHRydWUpOworfQorCitmdW5jdGlvbiB0ZXN0RG9lc05vdFJlcXVpcmVQbGF5c0lubGluZUFu
ZERvZXNudEhhdmVJdCgpCit7CisgICAgdGVzdFBsYXlzSW5saW5lKGZhbHNlLCBmYWxzZSwgZmFs
c2UpOworfQorCitmdW5jdGlvbiB0ZXN0RG9lc05vdFJlcXVpcmVQbGF5c0lubGluZUFuZERvZXNI
YXZlSXQoKQoreworICAgIHRlc3RQbGF5c0lubGluZShmYWxzZSwgdHJ1ZSwgZmFsc2UpOworfQor
Cit2YXIgdGVzdHMgPSBbCisgICAgdGVzdFJlcXVpcmVzUGxheXNJbmxpbmVBbmREb2VzbnRIYXZl
SXQsCisgICAgdGVzdFJlcXVpcmVzUGxheXNJbmxpbmVBbmREb2VzSGF2ZUl0LAorICAgIHRlc3RE
b2VzTm90UmVxdWlyZVBsYXlzSW5saW5lQW5kRG9lc250SGF2ZUl0LAorICAgIHRlc3REb2VzTm90
UmVxdWlyZVBsYXlzSW5saW5lQW5kRG9lc0hhdmVJdCwKK107CisKKzwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHkgb25sb2FkPSJnbygpIj4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>