<?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>169334</bug_id>
          
          <creation_ts>2017-03-07 19:09:33 -0800</creation_ts>
          <short_desc>Have fixedPositionCreatesStackingContext be on by default everywhere</short_desc>
          <delta_ts>2017-03-07 21:54:11 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>eoconnor</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1284698</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-03-07 19:09:33 -0800</bug_when>
    <thetext>Have fixedPositionCreatesStackingContext be on by default everywhere</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284699</commentid>
    <comment_count>1</comment_count>
      <attachid>303757</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-03-07 19:11:23 -0800</bug_when>
    <thetext>Created attachment 303757
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284704</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-03-07 19:17:56 -0800</bug_when>
    <thetext>*** Bug 169328 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284705</commentid>
    <comment_count>3</comment_count>
      <attachid>303760</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-03-07 19:26:45 -0800</bug_when>
    <thetext>Created attachment 303760
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284754</commentid>
    <comment_count>4</comment_count>
      <attachid>303760</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-03-07 21:39:37 -0800</bug_when>
    <thetext>Comment on attachment 303760
Patch

Rejecting attachment 303760 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-02&apos;, &apos;validate-changelog&apos;, &apos;--check-oops&apos;, &apos;--non-interactive&apos;, 303760, &apos;--port=mac&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

ChangeLog entry in LayoutTests/ChangeLog contains OOPS!.

Full output: http://webkit-queues.webkit.org/results/3263585</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1284757</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-03-07 21:54:11 -0800</bug_when>
    <thetext>https://trac.webkit.org/changeset/213566</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>303757</attachid>
            <date>2017-03-07 19:11:23 -0800</date>
            <delta_ts>2017-03-07 19:13:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169334-20170307191123.patch</filename>
            <type>text/plain</type>
            <size>26117</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEzNTU3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTY2MGRiOTM3OGIzYWFk
NDQwMDZlMWJkNjNmNWMxZWE3NDVhMzc3ZS4uYzc2N2ZhZjZjMDE5NGIwZTIzYmYwNTlmZTE2ZGVj
YWViZmFmNzU4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE3LTAzLTA3ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIEhhdmUgZml4ZWRQ
b3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQgYmUgb24gYnkgZGVmYXVsdCBldmVyeXdoZXJl
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjkzMzQK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJdCBtYWtl
cyBubyBzZW5zZSB0byBoYXZlIHdlYi1leHBvc2VkIENTUyBmdW5jdGlvbmFsaXR5IGJlIGRpZmZl
cmVudCBiYXNlZCBvbiBzZXR0aW5nLAorICAgICAgICBhbmQgb3RoZXIgYnJvd3NlciBhcmUgbm93
IGFsaWduZWQgd2l0aCBoYXZpbmcgcG9zaXRpb246Zml4ZWQgY3JlYXRlIHN0YWNraW5nIGNvbnRl
eHQuCisKKyAgICAgICAgU28gcmVtb3ZlIHRoZSBmaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5n
Q29udGV4dCBzZXR0aW5nIGFuZCBoYXZlIFN0eWxlUmVzb2x2ZXI6OmFkanVzdFJlbmRlclN0eWxl
KCkKKyAgICAgICAgYWx3YXlzIGZvcmNlIHN0YWNraW5nIGNvbnRleHQgZm9yIHBvc2l0aW9uOmZp
eGVkLgorCisgICAgICAgICogY3NzL1N0eWxlUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGVSZXNvbHZlcjo6YWRqdXN0UmVuZGVyU3R5bGUpOgorICAgICAgICAqIHBhZ2UvU2V0
dGluZ3MuY3BwOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuaW46CisKIDIwMTctMDMtMDcgIERl
YW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgogCiAgICAgICAgIE1ha2UgcGxhdGZvcm1EZXZp
Y2UoKSBub3QgaW5saW5lLCB0byBhdm9pZCBhCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21h
Yy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggOTg1NzQwODk3
NDBhOTg4ODUzN2M2Mjk4OGQ3ODQzNjdmNzY4NDgzZC4uZDI5YWMzZmUxMDA3OTBlZGZmNDIwZmNm
OTJkNDAyNTdjNTgwNDE5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDIxIEBACiAyMDE3
LTAzLTA3ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCisgICAgICAg
IEhhdmUgZml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQgYmUgb24gYnkgZGVmYXVs
dCBldmVyeXdoZXJlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNjkzMzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBJdCBtYWtlcyBubyBzZW5zZSB0byBoYXZlIHdlYi1leHBvc2VkIENTUyBmdW5jdGlvbmFs
aXR5IGJlIGRpZmZlcmVudCBiYXNlZCBvbiBzZXR0aW5nLAorICAgICAgICBhbmQgb3RoZXIgYnJv
d3NlciBhcmUgbm93IGFsaWduZWQgd2l0aCBoYXZpbmcgcG9zaXRpb246Zml4ZWQgY3JlYXRlIHN0
YWNraW5nIGNvbnRleHQuCisKKyAgICAgICAgU28gcmVtb3ZlIHRoZSBmaXhlZFBvc2l0aW9uQ3Jl
YXRlc1N0YWNraW5nQ29udGV4dCBzZXR0aW5nIGFuZCBoYXZlIFN0eWxlUmVzb2x2ZXI6OmFkanVz
dFJlbmRlclN0eWxlKCkKKyAgICAgICAgYWx3YXlzIGZvcmNlIHN0YWNraW5nIGNvbnRleHQgZm9y
IHBvc2l0aW9uOmZpeGVkLgorCisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAg
ICAoLVtXZWJWaWV3IF9wcmVmZXJlbmNlc0NoYW5nZWQ6XSk6CisKKzIwMTctMDMtMDcgIFNpbW9u
IEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKICAgICAgICAgRW5hYmxlIFN1YnBp
eGVsQW50aWFsaWFzZWRMYXllclRleHRFbmFibGVkIGJ5IGRlZmF1bHQgb24gc29tZSB2ZXJzaW9u
cyBvZiBtYWNPUwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTY5MzI5CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAxYjU2YmM5ZTYyMGI3MGQ3ZmY2ODAxYTVkZTVhNDU0
ZmMzY2JiM2U4Li5jZWFmYjBhMjE5MmE2ZDNkYmYxMTY3YzZhMzQ5NWU4NWZhMTY2MTdkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hh
bmdlTG9nCkBAIC0xLDUgKzEsMjUgQEAKIDIwMTctMDMtMDcgIFNpbW9uIEZyYXNlciAgPHNpbW9u
LmZyYXNlckBhcHBsZS5jb20+CiAKKyAgICAgICAgSGF2ZSBmaXhlZFBvc2l0aW9uQ3JlYXRlc1N0
YWNraW5nQ29udGV4dCBiZSBvbiBieSBkZWZhdWx0IGV2ZXJ5d2hlcmUKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2OTMzNAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEl0IG1ha2VzIG5vIHNlbnNlIHRvIGhh
dmUgd2ViLWV4cG9zZWQgQ1NTIGZ1bmN0aW9uYWxpdHkgYmUgZGlmZmVyZW50IGJhc2VkIG9uIHNl
dHRpbmcsCisgICAgICAgIGFuZCBvdGhlciBicm93c2VyIGFyZSBub3cgYWxpZ25lZCB3aXRoIGhh
dmluZyBwb3NpdGlvbjpmaXhlZCBjcmVhdGUgc3RhY2tpbmcgY29udGV4dC4KKworICAgICAgICBT
byByZW1vdmUgdGhlIGZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0IHNldHRpbmcg
YW5kIGhhdmUgU3R5bGVSZXNvbHZlcjo6YWRqdXN0UmVuZGVyU3R5bGUoKQorICAgICAgICBhbHdh
eXMgZm9yY2Ugc3RhY2tpbmcgY29udGV4dCBmb3IgcG9zaXRpb246Zml4ZWQuCisKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2U6OnNldFVzZUZpeGVkTGF5b3V0KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvbWFj
L1JlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhLm1tOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVM
YXllclRyZWVEcmF3aW5nQXJlYTo6dXBkYXRlUHJlZmVyZW5jZXMpOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEubW06CisgICAg
ICAgIChXZWJLaXQ6OlRpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhOjp1cGRhdGVQcmVmZXJl
bmNlcyk6CisKKzIwMTctMDMtMDcgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5j
b20+CisKICAgICAgICAgRW5hYmxlIFN1YnBpeGVsQW50aWFsaWFzZWRMYXllclRleHRFbmFibGVk
IGJ5IGRlZmF1bHQgb24gc29tZSB2ZXJzaW9ucyBvZiBtYWNPUwogICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY5MzI5CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVJlc29sdmVyLmNwcAppbmRleCA1Zjg0ZjJkNTVmZjgxODE4OWZjNDE0MzRjMTIwMDA2NmQzZjI2
MTViLi4wYWNlNGMyMjQzMzIxZDdlOGUwMmFhNzc2ODI3ZGZiZmE2MjcwN2IwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC05MTEsNyArOTExLDcgQEAgdm9pZCBTdHlsZVJl
c29sdmVyOjphZGp1c3RSZW5kZXJTdHlsZShSZW5kZXJTdHlsZSYgc3R5bGUsIGNvbnN0IFJlbmRl
clN0eWxlJiBwYXIKICAgICAgICAgICAgIHx8IHN0eWxlLmhhc0JsZW5kTW9kZSgpCiAgICAgICAg
ICAgICB8fCBzdHlsZS5oYXNJc29sYXRpb24oKQogICAgICAgICAgICAgfHwgc3R5bGUucG9zaXRp
b24oKSA9PSBTdGlja3lQb3NpdGlvbgotICAgICAgICAgICAgfHwgKHN0eWxlLnBvc2l0aW9uKCkg
PT0gRml4ZWRQb3NpdGlvbiAmJiBzZXR0aW5ncygpLmZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tp
bmdDb250ZXh0KCkpCisgICAgICAgICAgICB8fCBzdHlsZS5wb3NpdGlvbigpID09IEZpeGVkUG9z
aXRpb24KICAgICAgICAgICAgIHx8IHN0eWxlLmhhc0Zsb3dGcm9tKCkKICAgICAgICAgICAgIHx8
IHN0eWxlLndpbGxDaGFuZ2VDcmVhdGVzU3RhY2tpbmdDb250ZXh0KCkpCiAgICAgICAgICAgICBz
dHlsZS5zZXRaSW5kZXgoMCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRp
bmdzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCmluZGV4IDdkMDg3ODQ3
Y2Q4YTg5Mjg0YmI0Njg4ZDQxMmUzNDkzNmI5YmU0MTYuLjFiM2UyMmJmMWJmN2FjMzQyOTFhMDdl
MTIwNjU1ZDViNmUyODQ5MjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGlu
Z3MuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCkBAIC0xNDIsNyAr
MTQyLDYgQEAgc3RhdGljIGNvbnN0IGJvb2wgZGVmYXVsdFlvdVR1YmVGbGFzaFBsdWdpblJlcGxh
Y2VtZW50RW5hYmxlZCA9IGZhbHNlOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1MpCi1zdGF0
aWMgY29uc3QgYm9vbCBkZWZhdWx0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQg
PSB0cnVlOwogc3RhdGljIGNvbnN0IGJvb2wgZGVmYXVsdEZpeGVkQmFja2dyb3VuZHNQYWludFJl
bGF0aXZlVG9Eb2N1bWVudCA9IHRydWU7CiBzdGF0aWMgY29uc3QgYm9vbCBkZWZhdWx0QWNjZWxl
cmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9zaXRpb25FbmFibGVkID0gdHJ1ZTsKIHN0YXRpYyBj
b25zdCBib29sIGRlZmF1bHRBbGxvd3NJbmxpbmVNZWRpYVBsYXliYWNrID0gZmFsc2U7CkBAIC0x
NTYsNyArMTU1LDYgQEAgc3RhdGljIGNvbnN0IGJvb2wgZGVmYXVsdFNjcm9sbGluZ1RyZWVJbmNs
dWRlc0ZyYW1lcyA9IHRydWU7CiBzdGF0aWMgY29uc3QgYm9vbCBkZWZhdWx0TWVkaWFDb250cm9s
c1NjYWxlV2l0aFBhZ2Vab29tID0gdHJ1ZTsKIHN0YXRpYyBjb25zdCBib29sIGRlZmF1bHRRdWlj
a1RpbWVQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQgPSB0cnVlOwogI2Vsc2UKLXN0YXRpYyBjb25z
dCBib29sIGRlZmF1bHRGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dCA9IGZhbHNl
Owogc3RhdGljIGNvbnN0IGJvb2wgZGVmYXVsdEZpeGVkQmFja2dyb3VuZHNQYWludFJlbGF0aXZl
VG9Eb2N1bWVudCA9IGZhbHNlOwogc3RhdGljIGNvbnN0IGJvb2wgZGVmYXVsdEFjY2VsZXJhdGVk
Q29tcG9zaXRpbmdGb3JGaXhlZFBvc2l0aW9uRW5hYmxlZCA9IGZhbHNlOwogc3RhdGljIGNvbnN0
IGJvb2wgZGVmYXVsdEFsbG93c0lubGluZU1lZGlhUGxheWJhY2sgPSB0cnVlOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbiBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
U2V0dGluZ3MuaW4KaW5kZXggZWNmZjQxMDZhMTA0OWNkMjcxZjliOWM3N2RhNmNkMjZkMzlhMDQz
YS4uMTNlZDNlMDAyZGE1NzNmZTUxNzlmNmFjMjk2YjIxZjFkNTI0Nzg3NSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1NldHRpbmdzLmluCkBAIC0xNTgsNyArMTU4LDYgQEAgaW1hZ2VTdWJzYW1wbGluZ0VuYWJsZWQg
aW5pdGlhbD1kZWZhdWx0SW1hZ2VTdWJzYW1wbGluZ0VuYWJsZWQKIHdhbnRzQmFsYW5jZWRTZXRE
ZWZlcnNMb2FkaW5nQmVoYXZpb3IgaW5pdGlhbD1mYWxzZQogcmVxdWVzdEFuaW1hdGlvbkZyYW1l
RW5hYmxlZCBpbml0aWFsPXRydWUKIAotZml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRl
eHQgaW5pdGlhbD1kZWZhdWx0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQKIGNv
b2tpZUVuYWJsZWQgaW5pdGlhbD10cnVlCiBtZWRpYUVuYWJsZWQgaW5pdGlhbD10cnVlCiBET01Q
YXN0ZUFsbG93ZWQgaW5pdGlhbD1mYWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1t
CmluZGV4IDBhN2IxOWRlZDBhNTI0Y2I5YjM0ZTc3OGVlMjIxYTM3ODZjOTUyYTUuLmRkNmQyNjI3
Njk2MzUxM2Y5MTkxZTBkMWNjYWRiYmE1OTQxYjllMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3
L1dlYlZpZXcubW0KQEAgLTI3NzUsNyArMjc3NSw2IEBAIC0gKHZvaWQpX3ByZWZlcmVuY2VzQ2hh
bmdlZDooV2ViUHJlZmVyZW5jZXMgKilwcmVmZXJlbmNlcwogICAgIHNldHRpbmdzLnNldFBsdWdJ
blNuYXBzaG90dGluZ0VuYWJsZWQoW3ByZWZlcmVuY2VzIHBsdWdJblNuYXBzaG90dGluZ0VuYWJs
ZWRdKTsKICAgICBzZXR0aW5ncy5zZXRIdHRwRXF1aXZFbmFibGVkKFtwcmVmZXJlbmNlcyBodHRw
RXF1aXZFbmFibGVkXSk7CiAKLSAgICBzZXR0aW5ncy5zZXRGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0
YWNraW5nQ29udGV4dCh0cnVlKTsKICNpZiBQTEFURk9STShNQUMpCiAgICAgc2V0dGluZ3Muc2V0
QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9zaXRpb25FbmFibGVkKHRydWUpOwogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5k
ZXggOGY4OGQ5YTgyN2MyZWE3YjFlMGZkMTViZTdjMDIyOTQ0ZTI1OWYwZi4uYjdhMTBjMjY4MjMx
NTIyMWM3MWNmZTMxMzZjNDNjNjY2MTFiMjQzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMTY4MSw3ICsxNjgxLDYgQEAgdm9pZCBXZWJQ
YWdlOjpzZXRVc2VGaXhlZExheW91dChib29sIGZpeGVkKQogI2VuZGlmCiAjaWYgVVNFKENPT1JE
SU5BVEVEX0dSQVBISUNTKQogICAgIG1fcGFnZS0+c2V0dGluZ3MoKS5zZXRBY2NlbGVyYXRlZENv
bXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVuYWJsZWQoZml4ZWQpOwotICAgIG1fcGFnZS0+c2V0
dGluZ3MoKS5zZXRGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dChmaXhlZCk7CiAg
ICAgbV9wYWdlLT5zZXR0aW5ncygpLnNldERlbGVnYXRlc1BhZ2VTY2FsaW5nKGZpeGVkKTsKICAg
ICBtX3BhZ2UtPnNldHRpbmdzKCkuc2V0U2Nyb2xsaW5nQ29vcmRpbmF0b3JFbmFibGVkKGZpeGVk
KTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L21hYy9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYS5tbSBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9tYWMvUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEubW0KaW5kZXggNTk2
OWI2ZjI4YmJhOTA5YjE5NzVkMzBjYmJjMDgzZTNhYmVmOGY2Ni4uNWQzOTQ0Njc3ZDEzZjAxOThm
OGViYTNiZWNhMWM3Mjc2MWQ3MjVhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL21hYy9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYS5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1JlbW90ZUxheWVyVHJlZURyYXdpbmdB
cmVhLm1tCkBAIC0xNzcsNyArMTc3LDYgQEAgdm9pZCBSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJl
YTo6dXBkYXRlUHJlZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYpCiAgICAgLy8g
Rml4ZWQgcG9zaXRpb24gZWxlbWVudHMgbmVlZCB0byBiZSBjb21wb3NpdGVkIGFuZCBjcmVhdGUg
c3RhY2tpbmcgY29udGV4dHMKICAgICAvLyBpbiBvcmRlciB0byBiZSBzY3JvbGxlZCBieSB0aGUg
U2Nyb2xsaW5nQ29vcmRpbmF0b3IuCiAgICAgc2V0dGluZ3Muc2V0QWNjZWxlcmF0ZWRDb21wb3Np
dGluZ0ZvckZpeGVkUG9zaXRpb25FbmFibGVkKHRydWUpOwotICAgIHNldHRpbmdzLnNldEZpeGVk
UG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0KHRydWUpOwogCiAgICAgbV9yb290TGF5ZXIt
PnNldFNob3dEZWJ1Z0JvcmRlcihzZXR0aW5ncy5zaG93RGVidWdCb3JkZXJzKCkpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29yZUFu
aW1hdGlvbkRyYXdpbmdBcmVhLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYS5tbQppbmRleCBmMjA2N2YyMWM3MGQ1
Nzk3YjE3NGYwNmEzMTEwNGE0M2I0MzljNzJhLi4wNjc4NWIzMmU4ZjU1ZDJhZGRjYTU1MTg2YmQ4
ZWQyY2YzNjg5NGU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEu
bW0KQEAgLTIwMiwxMSArMjAyLDggQEAgdm9pZCBUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJl
YTo6dXBkYXRlUHJlZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYKICNlbmRpZgog
CiAgICAgLy8gRml4ZWQgcG9zaXRpb24gZWxlbWVudHMgbmVlZCB0byBiZSBjb21wb3NpdGVkIGFu
ZCBjcmVhdGUgc3RhY2tpbmcgY29udGV4dHMKLSAgICAvLyBpbiBvcmRlciB0byBiZSBzY3JvbGxl
ZCBieSB0aGUgU2Nyb2xsaW5nQ29vcmRpbmF0b3IuIFdlIGFsc28gd2FudCB0byBrZWVwCi0gICAg
Ly8gU2V0dGluZ3M6c2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQoKSBlbmFi
bGVkIGZvciBpT1MuIFNlZQotICAgIC8vIDxyZGFyOi8vcHJvYmxlbS85ODEzMjYyPiBmb3IgbW9y
ZSBkZXRhaWxzLgorICAgIC8vIGluIG9yZGVyIHRvIGJlIHNjcm9sbGVkIGJ5IHRoZSBTY3JvbGxp
bmdDb29yZGluYXRvci4KICAgICBzZXR0aW5ncy5zZXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRm9y
Rml4ZWRQb3NpdGlvbkVuYWJsZWQodHJ1ZSk7Ci0gICAgc2V0dGluZ3Muc2V0Rml4ZWRQb3NpdGlv
bkNyZWF0ZXNTdGFja2luZ0NvbnRleHQodHJ1ZSk7CiAKICAgICBpZiAoTWFpbkZyYW1lKiBtYWlu
RnJhbWUgPSBtX3dlYlBhZ2UubWFpbkZyYW1lKCkpCiAgICAgICAgIERlYnVnUGFnZU92ZXJsYXlz
OjpzZXR0aW5nc0NoYW5nZWQoKm1haW5GcmFtZSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggN2I3YTQxMDRiOTQxNzE4NTcy
NWMzOTU4Y2M0ODQyMGQ2MWQ2MTViOS4uMWUwMzNkOWQzMzllNjI2MTU4MGFlODYzNDU5ODgwNGEx
MDZmMDc0ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE3LTAzLTA3ICBTaW1vbiBGcmFzZXIg
IDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIEhhdmUgZml4ZWRQb3NpdGlvbkNy
ZWF0ZXNTdGFja2luZ0NvbnRleHQgYmUgb24gYnkgZGVmYXVsdCBldmVyeXdoZXJlCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjkzMzQKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJdCBtYWtlcyBubyBzZW5z
ZSB0byBoYXZlIHdlYi1leHBvc2VkIENTUyBmdW5jdGlvbmFsaXR5IGJlIGRpZmZlcmVudCBiYXNl
ZCBvbiBzZXR0aW5nLAorICAgICAgICBhbmQgb3RoZXIgYnJvd3NlciBhcmUgbm93IGFsaWduZWQg
d2l0aCBoYXZpbmcgcG9zaXRpb246Zml4ZWQgY3JlYXRlIHN0YWNraW5nIGNvbnRleHQuCisKKyAg
ICAgICAgU28gcmVtb3ZlIHRoZSBmaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dCBz
ZXR0aW5nIGFuZCBoYXZlIFN0eWxlUmVzb2x2ZXI6OmFkanVzdFJlbmRlclN0eWxlKCkKKyAgICAg
ICAgYWx3YXlzIGZvcmNlIHN0YWNraW5nIGNvbnRleHQgZm9yIHBvc2l0aW9uOmZpeGVkLgorCisg
ICAgICAgICogY29tcG9zaXRpbmcvYWJzb2x1dGUtaW5zaWRlLW91dC1vZi12aWV3LWZpeGVkLmh0
bWw6CisgICAgICAgICogY29tcG9zaXRpbmcvZ2VvbWV0cnkvZml4ZWQtcG9zaXRpb24tY29tcG9z
aXRlZC1wYWdlLXNjYWxlLXNtYWxsZXItdGhhbi12aWV3cG9ydC5odG1sOgorICAgICAgICAqIGNv
bXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLW92ZXJsYXAtZXh0ZW50LXJ0bC5odG1sOgor
ICAgICAgICAqIGNvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLW92ZXJsYXAtZXh0ZW50
Lmh0bWw6CisgICAgICAgICogY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtcG9zaXRp
b24tY2hhbmdlLW91dC1vZi12aWV3LWluLXZpZXcuaHRtbDoKKyAgICAgICAgKiBjb21wb3NpdGlu
Zy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1pbi12aWV3LWR5bmFtaWMuaHRtbDoKKyAg
ICAgICAgKiBjb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1vdXQtb2Yt
dmlldy1keW5hbWljLmh0bWw6CisgICAgICAgICogY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24v
Zml4ZWQtcG9zaXRpb24tb3V0LW9mLXZpZXctc2NhbGVkLWlmcmFtZS1zY3JvbGwuaHRtbDoKKyAg
ICAgICAgKiBjb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1vdXQtb2Yt
dmlldy1zY2FsZWQtaWZyYW1lLmh0bWw6CisgICAgICAgICogY29tcG9zaXRpbmcvbGF5ZXItY3Jl
YXRpb24vZml4ZWQtcG9zaXRpb24tb3V0LW9mLXZpZXctc2NhbGVkLXNjcm9sbC5odG1sOgorICAg
ICAgICAqIGNvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12
aWV3LXNjYWxlZC5odG1sOgorICAgICAgICAqIGNvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2Zp
eGVkLXBvc2l0aW9uLXRyYW5zZm9ybWVkLWludG8tdmlldy5odG1sOgorICAgICAgICAqIGNvbXBv
c2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLXRyYW5zZm9ybWVkLW91dHNpZGUt
dmlldy5odG1sOgorICAgICAgICAqIGNvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL25vLWNvbXBv
c2l0aW5nLWZvci1maXhlZC1wb3NpdGlvbi11bmRlci10cmFuc2Zvcm0uaHRtbDoKKyAgICAgICAg
KiBjb21wb3NpdGluZy9yZXBhaW50L3Njcm9sbC1maXhlZC1sYXllci1uby1jb250ZW50Lmh0bWw6
CisgICAgICAgICogY29tcG9zaXRpbmcvcmVwYWludC9zY3JvbGwtZml4ZWQtbGF5ZXItb3V0LW9m
LXZpZXcuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2ZpeGVkLXBvc2l0
aW9uLXN0YWNraW5nLWNvbnRleHQyLmh0bWw6CisgICAgICAgICogZnVsbHNjcmVlbi9mdWxsLXNj
cmVlbi1maXhlZC1wb3MtcGFyZW50Lmh0bWw6CisKIDIwMTctMDMtMDcgIFJ5YW4gSGFkZGFkICA8
cnlhbmhhZGRhZEBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIERlYnVnIGZsYWcgdG8gVGVzdEV4
cGVjdGF0aW9uIGZvciB3ZWJydGMvbGlid2VicnRjL2Rlc2NyaXB0aW9uR2V0dGVycy5odG1sLgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvYWJzb2x1dGUtaW5zaWRlLW91dC1v
Zi12aWV3LWZpeGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9hYnNvbHV0ZS1pbnNp
ZGUtb3V0LW9mLXZpZXctZml4ZWQuaHRtbAppbmRleCBhYzJiYzM2ZmVmNDY1YjcxMmQ0YjhkYWU5
ZWI2NGIzYTZlOWI0NzU2Li5kY2FjZDI5NWNhMjU3N2FlYmJiZWZkZmM5ODczMTlkMTAwODlhOGNl
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9hYnNvbHV0ZS1pbnNpZGUtb3V0
LW9mLXZpZXctZml4ZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9hYnNvbHV0
ZS1pbnNpZGUtb3V0LW9mLXZpZXctZml4ZWQuaHRtbApAQCAtMjksMTAgKzI5LDggQEAKICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgIGlmICh3aW5k
b3cuaW50ZXJuYWxzKSB7CisgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQogICAgICAgICAg
ICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRm9y
Rml4ZWRQb3NpdGlvbkVuYWJsZWQodHJ1ZSk7Ci0gICAgICAgICAgICB3aW5kb3cuaW50ZXJuYWxz
LnNldHRpbmdzLnNldEZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0KHRydWUpOwot
ICAgICAgICB9CiAgICAgICB9CiAKICAgICAgIGZ1bmN0aW9uIGRvU2Nyb2xsKCkKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2dlb21ldHJ5L2ZpeGVkLXBvc2l0aW9uLWNvbXBv
c2l0ZWQtcGFnZS1zY2FsZS1zbWFsbGVyLXRoYW4tdmlld3BvcnQuaHRtbCBiL0xheW91dFRlc3Rz
L2NvbXBvc2l0aW5nL2dlb21ldHJ5L2ZpeGVkLXBvc2l0aW9uLWNvbXBvc2l0ZWQtcGFnZS1zY2Fs
ZS1zbWFsbGVyLXRoYW4tdmlld3BvcnQuaHRtbAppbmRleCA4N2U4YTQ5NTljYWVjMmVjZDUxOGE1
NTBiODM3Zjg4NTJjMzczMGQzLi40ZGQ0MTA3MjExNGU5NDI2NjdmZjc3NjY3MTE1M2I3ZTIwZjcw
NzcwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9nZW9tZXRyeS9maXhlZC1w
b3NpdGlvbi1jb21wb3NpdGVkLXBhZ2Utc2NhbGUtc21hbGxlci10aGFuLXZpZXdwb3J0Lmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvZ2VvbWV0cnkvZml4ZWQtcG9zaXRpb24tY29t
cG9zaXRlZC1wYWdlLXNjYWxlLXNtYWxsZXItdGhhbi12aWV3cG9ydC5odG1sCkBAIC0yNyw3ICsy
Nyw2IEBACiAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKSB7CiAgICAgd2luZG93LmludGVybmFscy5z
ZXR0aW5ncy5zZXRWaXN1YWxWaWV3cG9ydEVuYWJsZWQoZmFsc2UpOwogICAgIHdpbmRvdy5pbnRl
cm5hbHMuc2V0dGluZ3Muc2V0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9zaXRpb25F
bmFibGVkKHRydWUpOwotICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0Rml4ZWRQb3Np
dGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQodHJ1ZSk7CiAgICAgd2luZG93LmludGVybmFscy5z
ZXRQYWdlU2NhbGVGYWN0b3IoMC41LCAwLCAwKTsKICAgfQogPC9zY3JpcHQ+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1vdmVybGFwLWV4
dGVudC1ydGwuaHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2Zp
eGVkLW92ZXJsYXAtZXh0ZW50LXJ0bC5odG1sCmluZGV4IGEwYjAwYzA1NWE2NTBkYWJlZGJlZjA4
NTVlNTQ2N2M1MDljYWJlNDMuLjlmODBhYTcyNjc3OWM1NTZiZmVlNWJjY2UyOTA0MmY5M2JlYzUz
NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2Zp
eGVkLW92ZXJsYXAtZXh0ZW50LXJ0bC5odG1sCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5n
L2xheWVyLWNyZWF0aW9uL2ZpeGVkLW92ZXJsYXAtZXh0ZW50LXJ0bC5odG1sCkBAIC0zNSwxMCAr
MzUsOCBAQAogICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgICAgICAgICB0ZXN0
UnVubmVyLmR1bXBBc1RleHQoKTsKIAotICAgICAgICBpZiAod2luZG93LmludGVybmFscykgewor
ICAgICAgICBpZiAod2luZG93LmludGVybmFscykKICAgICAgICAgICAgIGludGVybmFscy5zZXR0
aW5ncy5zZXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVuYWJsZWQodHJ1
ZSk7Ci0gICAgICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Rml4ZWRQb3NpdGlvbkNyZWF0
ZXNTdGFja2luZ0NvbnRleHQodHJ1ZSk7Ci0gICAgICAgIH0KIAogICAgICAgICBmdW5jdGlvbiBk
b1Rlc3QoKQogICAgICAgICB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9s
YXllci1jcmVhdGlvbi9maXhlZC1vdmVybGFwLWV4dGVudC5odG1sIGIvTGF5b3V0VGVzdHMvY29t
cG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtb3ZlcmxhcC1leHRlbnQuaHRtbAppbmRleCBi
OGQ1ZDc2NDc2MDM2Nzg3NGQ4OGRhNWJiODc1OGJiNDViY2YzNjdhLi5kODNhMDc1MTVmNjg2Yjgz
ZTY4MzAwMGEzNmUzZDA4ODUzY2IxZDZiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9jb21wb3Np
dGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1vdmVybGFwLWV4dGVudC5odG1sCisrKyBiL0xheW91
dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLW92ZXJsYXAtZXh0ZW50Lmh0
bWwKQEAgLTM1LDEwICszNSw4IEBACiAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKICAg
ICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogCi0gICAgICAgIGlmICh3aW5kb3cu
aW50ZXJuYWxzKSB7CisgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQogICAgICAgICAgICAg
aW50ZXJuYWxzLnNldHRpbmdzLnNldEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdGb3JGaXhlZFBvc2l0
aW9uRW5hYmxlZCh0cnVlKTsKLSAgICAgICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRGaXhl
ZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dCh0cnVlKTsKLSAgICAgICAgfQogCiAgICAg
ICAgIGZ1bmN0aW9uIGRvVGVzdCgpCiAgICAgICAgIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLWNoYW5nZS1vdXQtb2Yt
dmlldy1pbi12aWV3Lmh0bWwgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVhdGlv
bi9maXhlZC1wb3NpdGlvbi1jaGFuZ2Utb3V0LW9mLXZpZXctaW4tdmlldy5odG1sCmluZGV4IDQ4
MDU1N2NmOGMyMTRhNDkxNmE3NDE1NDU2Y2U1Y2Y1OGRlYjI4MTEuLjFiNGE3NjI2YWJiNjVlYTNm
ZWI0NTA4NjU2YmM3ZjI5ZTY5N2FkOTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2NvbXBvc2l0
aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLWNoYW5nZS1vdXQtb2Ytdmlldy1pbi12
aWV3Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4
ZWQtcG9zaXRpb24tY2hhbmdlLW91dC1vZi12aWV3LWluLXZpZXcuaHRtbApAQCAtMTEsNyArMTEs
NiBAQAogICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lciAmJiB3aW5kb3cuaW50ZXJuYWxzKSB7CiAg
ICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKICAgICAgIGludGVybmFscy5zZXR0aW5ncy5z
ZXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVuYWJsZWQodHJ1ZSk7Ci0g
ICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0Nv
bnRleHQodHJ1ZSk7CiAKICAgICAgIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigp
IHsKICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxheWVyVHJlZTEiKS5pbm5lclRl
eHQgPSBpbnRlcm5hbHMubGF5ZXJUcmVlQXNUZXh0KGRvY3VtZW50KTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLWluLXZp
ZXctZHluYW1pYy5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24v
Zml4ZWQtcG9zaXRpb24taW4tdmlldy1keW5hbWljLmh0bWwKaW5kZXggMTViNjhlNGY5NGFlOTk1
NTcxMzc2MTkyZDc0NDQyNDA0MGJiZTJhNy4uZTIxNWM4NWIxYTEyZDY3YTZlOTliZWMyZTAzYmI4
NzExOWI5YjIyMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3Jl
YXRpb24vZml4ZWQtcG9zaXRpb24taW4tdmlldy1keW5hbWljLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtcG9zaXRpb24taW4tdmlldy1keW5h
bWljLmh0bWwKQEAgLTE2LDcgKzE2LDYgQEAKICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIgJiYg
d2luZG93LmludGVybmFscykgewogICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CiAgICAg
ICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9z
aXRpb25FbmFibGVkKHRydWUpOwotICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldEZpeGVkUG9z
aXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0KHRydWUpOwogCiAgICAgICBhZGRFdmVudExpc3Rl
bmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgIHZhciBmaXhlZCA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoImRpdiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcv
bGF5ZXItY3JlYXRpb24vZml4ZWQtcG9zaXRpb24tb3V0LW9mLXZpZXctZHluYW1pYy5odG1sIGIv
TGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtcG9zaXRpb24tb3V0
LW9mLXZpZXctZHluYW1pYy5odG1sCmluZGV4IDNmYmI5MDRjNGI2NjBjZTZmNzlkMjRlYjg5YzRh
YmU2MDZiODdlZTMuLjRkMzk0OWM2MWEzMmFmZTQ4ZTFiMzJlMjVjNTZjMmFiYzYyYmM2ZDIgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBv
c2l0aW9uLW91dC1vZi12aWV3LWR5bmFtaWMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3Np
dGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1keW5hbWljLmh0
bWwKQEAgLTE2LDcgKzE2LDYgQEAKICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIgJiYgd2luZG93
LmludGVybmFscykgewogICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CiAgICAgICBpbnRl
cm5hbHMuc2V0dGluZ3Muc2V0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9zaXRpb25F
bmFibGVkKHRydWUpOwotICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldEZpeGVkUG9zaXRpb25D
cmVhdGVzU3RhY2tpbmdDb250ZXh0KHRydWUpOwogCiAgICAgICBhZGRFdmVudExpc3RlbmVyKCJs
b2FkIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgIHZhciBmaXhlZCA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImRpdiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXIt
Y3JlYXRpb24vZml4ZWQtcG9zaXRpb24tb3V0LW9mLXZpZXctc2NhbGVkLWlmcmFtZS1zY3JvbGwu
aHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0
aW9uLW91dC1vZi12aWV3LXNjYWxlZC1pZnJhbWUtc2Nyb2xsLmh0bWwKaW5kZXggMTk5OWNiMmIw
MWM5NzlmMmUzZDY0M2U5NzFlZGI5N2QyMmRmM2Q0My4uOGMyNDYxYjk2YTM1OGRiZTFiZDRiMGE5
ZmIxZTlmNmQyMTJiNzVmNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5
ZXItY3JlYXRpb24vZml4ZWQtcG9zaXRpb24tb3V0LW9mLXZpZXctc2NhbGVkLWlmcmFtZS1zY3Jv
bGwuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhl
ZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1zY2FsZWQtaWZyYW1lLXNjcm9sbC5odG1sCkBAIC04LDcg
KzgsNiBAQAogICB9CiAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKSB7CiAgICAgd2luZG93LmludGVy
bmFscy5zZXR0aW5ncy5zZXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVu
YWJsZWQodHJ1ZSk7Ci0gICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRGaXhlZFBvc2l0
aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dCh0cnVlKTsKIAogICAgIGFkZEV2ZW50TGlzdGVuZXIo
ImxvYWQiLCBmdW5jdGlvbigpIHsKICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0UGFnZVNjYWxl
RmFjdG9yKDAuNSwgMCwgMCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9s
YXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1zY2FsZWQtaWZyYW1lLmh0
bWwgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlv
bi1vdXQtb2Ytdmlldy1zY2FsZWQtaWZyYW1lLmh0bWwKaW5kZXggYTMxMDU0MTc2ZDhhMjE3ZjAx
MWMxYjg2M2U3YWUzOWEzYWQ4Y2VjNi4uYjM2MjY1M2UxMjE1Njg0YTljNTYwMGMyYWQ4ZDI4NmYx
MDJhYWM2MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRp
b24vZml4ZWQtcG9zaXRpb24tb3V0LW9mLXZpZXctc2NhbGVkLWlmcmFtZS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLW91dC1v
Zi12aWV3LXNjYWxlZC1pZnJhbWUuaHRtbApAQCAtOCw3ICs4LDYgQEAKICAgfQogICBpZiAod2lu
ZG93LmludGVybmFscykgewogICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWNjZWxl
cmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9zaXRpb25FbmFibGVkKHRydWUpOwotICAgIHdpbmRv
dy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRl
eHQodHJ1ZSk7CiAKICAgICBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CiAg
ICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldFBhZ2VTY2FsZUZhY3RvcigwLjUsIDAsIDApOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtcG9z
aXRpb24tb3V0LW9mLXZpZXctc2NhbGVkLXNjcm9sbC5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9z
aXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtcG9zaXRpb24tb3V0LW9mLXZpZXctc2NhbGVkLXNj
cm9sbC5odG1sCmluZGV4IDljMGFlNDY5OWZiZGY0NDYwMDFkYWY5NGQ2N2ZlMDAyNDUyNGQ0Y2Uu
LmU0YTNjMzE0ODVlMjI1YjlkNTZmOTEzMWEyOGVjZDc2MTEzZjIzZWMgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLW91dC1v
Zi12aWV3LXNjYWxlZC1zY3JvbGwuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9s
YXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1zY2FsZWQtc2Nyb2xsLmh0
bWwKQEAgLTE2LDcgKzE2LDYgQEAKICAgfQogICBpZiAod2luZG93LmludGVybmFscykgewogICAg
IHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0ZvckZp
eGVkUG9zaXRpb25FbmFibGVkKHRydWUpOwotICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Mu
c2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQodHJ1ZSk7CiAKICAgICBhZGRF
dmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CiAgICAgICB3aW5kb3cuc2Nyb2xsVG8o
MTAwLDEwMCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVh
dGlvbi9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1zY2FsZWQuaHRtbCBiL0xheW91dFRlc3Rz
L2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LXNj
YWxlZC5odG1sCmluZGV4IDk2Yzk1MzA0MWU2NzEzZDllMDk1ZDBkMzliMWUwNTM0NTBiNmNlM2Qu
LjFjODg2YjA3YmI5MjEyOWFhNDRiN2QxMzg0ODZkYmYxYjUzODI5MDAgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLW91dC1v
Zi12aWV3LXNjYWxlZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNy
ZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LXNjYWxlZC5odG1sCkBAIC0xNiw3ICsx
Niw2IEBACiAgIH0KICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKICAgICB3aW5kb3cuaW50ZXJu
YWxzLnNldHRpbmdzLnNldEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdGb3JGaXhlZFBvc2l0aW9uRW5h
YmxlZCh0cnVlKTsKLSAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldEZpeGVkUG9zaXRp
b25DcmVhdGVzU3RhY2tpbmdDb250ZXh0KHRydWUpOwogCiAgICAgYWRkRXZlbnRMaXN0ZW5lcigi
bG9hZCIsIGZ1bmN0aW9uKCkgewogICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxheWVy
VHJlZSIpLmlubmVyVGV4dCA9IGludGVybmFscy5sYXllclRyZWVBc1RleHQoZG9jdW1lbnQpOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQt
cG9zaXRpb24tdHJhbnNmb3JtZWQtaW50by12aWV3Lmh0bWwgYi9MYXlvdXRUZXN0cy9jb21wb3Np
dGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi10cmFuc2Zvcm1lZC1pbnRvLXZpZXcu
aHRtbAppbmRleCAxMzIyODQ3YjQwYTFhYjE5ZGMyMDdhOWIzZGVjYjkyNjk2YzczNWE2Li4zMzE0
MDg4ZmVkYjcwMDk2YjcxZWQzNjQwYzYwMTJlOGJkNDM4OGU2IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi10cmFuc2Zvcm1l
ZC1pbnRvLXZpZXcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVh
dGlvbi9maXhlZC1wb3NpdGlvbi10cmFuc2Zvcm1lZC1pbnRvLXZpZXcuaHRtbApAQCAtMzEsNyAr
MzEsNiBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKIH0KIGlmICh3aW5kb3cuaW50ZXJuYWxz
KSB7CiAgICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRBY2NlbGVyYXRlZENvbXBvc2l0
aW5nRm9yRml4ZWRQb3NpdGlvbkVuYWJsZWQodHJ1ZSk7Ci0gICAgd2luZG93LmludGVybmFscy5z
ZXR0aW5ncy5zZXRGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dCh0cnVlKTsKIAog
ICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CiAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsYXllclRyZWUiKS5pbm5lclRleHQgPSBpbnRlcm5h
bHMubGF5ZXJUcmVlQXNUZXh0KGRvY3VtZW50KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nv
bXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLXRyYW5zZm9ybWVkLW91dHNp
ZGUtdmlldy5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4
ZWQtcG9zaXRpb24tdHJhbnNmb3JtZWQtb3V0c2lkZS12aWV3Lmh0bWwKaW5kZXggZjEyYjI2ZDYz
MmU0NDIyNjZlMjI1OWY3ODk5MWZjOTY3Yjc4OTMwYi4uMzJjODVmYjg1OTNlZGNkZWY5ZWUxZGNk
NGI5NmFkNmUyNTkzMmFiMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5
ZXItY3JlYXRpb24vZml4ZWQtcG9zaXRpb24tdHJhbnNmb3JtZWQtb3V0c2lkZS12aWV3Lmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtcG9zaXRp
b24tdHJhbnNmb3JtZWQtb3V0c2lkZS12aWV3Lmh0bWwKQEAgLTMxLDcgKzMxLDYgQEAKICAgICB9
CiAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKICAgICAgICAgd2luZG93LmludGVybmFscy5z
ZXR0aW5ncy5zZXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVuYWJsZWQo
dHJ1ZSk7Ci0gICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0Rml4ZWRQb3NpdGlv
bkNyZWF0ZXNTdGFja2luZ0NvbnRleHQodHJ1ZSk7CiAKICAgICAgICAgd2luZG93LmFkZEV2ZW50
TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJsYXllclRyZWUiKS5pbm5lclRleHQgPSBpbnRlcm5hbHMubGF5ZXJUcmVlQXNU
ZXh0KGRvY3VtZW50KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVy
LWNyZWF0aW9uL25vLWNvbXBvc2l0aW5nLWZvci1maXhlZC1wb3NpdGlvbi11bmRlci10cmFuc2Zv
cm0uaHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL25vLWNvbXBv
c2l0aW5nLWZvci1maXhlZC1wb3NpdGlvbi11bmRlci10cmFuc2Zvcm0uaHRtbAppbmRleCAzMjU2
Y2QzMDhkYTg4MDNlM2QyMzkxODE3MjFlOTlhMmRlMGI1YTA5Li44NGRmZTk0NGM2NDFiM2UzZmU2
NzkxMGI2NjY1MGM1MzRlOGZkYTdiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9jb21wb3NpdGlu
Zy9sYXllci1jcmVhdGlvbi9uby1jb21wb3NpdGluZy1mb3ItZml4ZWQtcG9zaXRpb24tdW5kZXIt
dHJhbnNmb3JtLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRp
b24vbm8tY29tcG9zaXRpbmctZm9yLWZpeGVkLXBvc2l0aW9uLXVuZGVyLXRyYW5zZm9ybS5odG1s
CkBAIC0xNSwxMCArMTUsOCBAQAogICA8L3N0eWxlPgogCiAgIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0Ij4KLSAgICBpZiAod2luZG93LmludGVybmFscykgeworICAgIGlmICh3aW5kb3cu
aW50ZXJuYWxzKQogICAgICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRBY2NlbGVyYXRl
ZENvbXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVuYWJsZWQodHJ1ZSk7Ci0gICAgICB3aW5kb3cu
aW50ZXJuYWxzLnNldHRpbmdzLnNldEZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0
KHRydWUpOwotICAgIH0KIAogICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAgICAgdGVz
dFJ1bm5lci5kdW1wQXNUZXh0KCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGlu
Zy9yZXBhaW50L3Njcm9sbC1maXhlZC1sYXllci1uby1jb250ZW50Lmh0bWwgYi9MYXlvdXRUZXN0
cy9jb21wb3NpdGluZy9yZXBhaW50L3Njcm9sbC1maXhlZC1sYXllci1uby1jb250ZW50Lmh0bWwK
aW5kZXggMDY5MDY3OThkYWFhZDZkYTBjYmMyMjMwMmFhODI4NDIyM2M5ZmM1Yi4uODkxY2E1N2Q5
OWRkZjhmNTJjNzI2MzAwYzIzODhmYmZlMjUxNmVhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Y29tcG9zaXRpbmcvcmVwYWludC9zY3JvbGwtZml4ZWQtbGF5ZXItbm8tY29udGVudC5odG1sCisr
KyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL3JlcGFpbnQvc2Nyb2xsLWZpeGVkLWxheWVyLW5v
LWNvbnRlbnQuaHRtbApAQCAtNSwxMCArNSw4IEBACiAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogCi0gICAgICAgIGlm
ICh3aW5kb3cuaW50ZXJuYWxzKSB7CisgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQogICAg
ICAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdGb3JG
aXhlZFBvc2l0aW9uRW5hYmxlZCh0cnVlKTsKLSAgICAgICAgICAgIGludGVybmFscy5zZXR0aW5n
cy5zZXRGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dCh0cnVlKTsKLSAgICAgICAg
fQogCiAgICAgICAgIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICB7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jb21wb3NpdGluZy9yZXBhaW50L3Njcm9sbC1maXhlZC1sYXllci1vdXQtb2Ytdmll
dy5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvcmVwYWludC9zY3JvbGwtZml4ZWQtbGF5
ZXItb3V0LW9mLXZpZXcuaHRtbAppbmRleCAyMTg4YzA4OTU2ZTA3ZjcyZGYwYzQ0NzBlNmIwNzMy
NjBjNjM5OWI4Li43NjhiNWViMTEyZWEzZDI0OGExMWVlYWI1NzFhNDM5NDBlNDJiMjhjIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9yZXBhaW50L3Njcm9sbC1maXhlZC1sYXll
ci1vdXQtb2Ytdmlldy5odG1sCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL3JlcGFpbnQv
c2Nyb2xsLWZpeGVkLWxheWVyLW91dC1vZi12aWV3Lmh0bWwKQEAgLTUsMTAgKzUsOCBAQAogICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBB
c1RleHQoKTsKIAotICAgICAgICBpZiAod2luZG93LmludGVybmFscykgeworICAgICAgICBpZiAo
d2luZG93LmludGVybmFscykKICAgICAgICAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRBY2Nl
bGVyYXRlZENvbXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVuYWJsZWQodHJ1ZSk7Ci0gICAgICAg
ICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0Nv
bnRleHQodHJ1ZSk7Ci0gICAgICAgIH0KIAogICAgICAgICBmdW5jdGlvbiB0ZXN0KCkKICAgICAg
ICAgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9maXhl
ZC1wb3NpdGlvbi1zdGFja2luZy1jb250ZXh0Mi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9j
ay9wb3NpdGlvbmluZy9maXhlZC1wb3NpdGlvbi1zdGFja2luZy1jb250ZXh0Mi5odG1sCmluZGV4
IDc2YTdmNzdlZDkxZmJmM2E5ZThiMTI0Yjk2ZTBhMGNiNzQ0MDU5MDkuLjA2NmI3Yjc0OTllZGJk
MTJjOGQzMTY2NjQ4YTRlZGIzYjJkMTc2NjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
YmxvY2svcG9zaXRpb25pbmcvZml4ZWQtcG9zaXRpb24tc3RhY2tpbmctY29udGV4dDIuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL2ZpeGVkLXBvc2l0aW9uLXN0
YWNraW5nLWNvbnRleHQyLmh0bWwKQEAgLTIzLDEzICsyMyw2IEBAIGRpdiB7CiAgICAgei1pbmRl
eDogMjsKIH0KIDwvc3R5bGU+Ci08c2NyaXB0PgotaWYgKCJpbnRlcm5hbHMiIGluIHdpbmRvdykg
ewotICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNT
dGFja2luZ0NvbnRleHQodHJ1ZSk7Ci19IGVsc2UgewotICAgIGRvY3VtZW50LndyaXRlKCJUaGlz
IHRlc3QgZGVwZW5kcyBvbiB0aGUgRml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQg
c2V0dGluZyBiZWluZyB0cnVlLCBzbyBydW4gaW4gRHVtcFJlbmRlclRyZWUgb3IgbWFudWFsbHkg
ZW5hYmxlIGl0Iik7Ci19Ci08L3NjcmlwdD4KIDxkaXYgY2xhc3M9ImdyZWVuIj48L2Rpdj4KIDxk
aXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgIDxkaXYgY2xhc3M9ImdyZWVuIj48L2Rpdj4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Z1bGxzY3JlZW4vZnVsbC1zY3JlZW4tZml4ZWQtcG9zLXBhcmVu
dC5odG1sIGIvTGF5b3V0VGVzdHMvZnVsbHNjcmVlbi9mdWxsLXNjcmVlbi1maXhlZC1wb3MtcGFy
ZW50Lmh0bWwKaW5kZXggMDU0NTIzYjJlMjlkNDcwOTJkZDk1NDgwMDBmNmUzMjA2YmI3YzEwMS4u
NTIzNzk4ZTVhNjA1OTk3ODEzZTI1NGY5OTgxZDA0YjFhMmM0ZDcwNCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZnVsbHNjcmVlbi9mdWxsLXNjcmVlbi1maXhlZC1wb3MtcGFyZW50Lmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvZnVsbHNjcmVlbi9mdWxsLXNjcmVlbi1maXhlZC1wb3MtcGFyZW50Lmh0
bWwKQEAgLTI2LDkgKzI2LDYgQEAKIDwvaGVhZD4KIDxzY3JpcHQgc3JjPSJmdWxsLXNjcmVlbi10
ZXN0LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+Ci0gICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0g
ICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNT
dGFja2luZ0NvbnRleHQodHJ1ZSk7Ci0KICAgICBmdW5jdGlvbiBkb1Rlc3QoKSB7CiAgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNU
ZXh0KHRydWUpOwo=
</data>
<flag name="review"
          id="325369"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>303760</attachid>
            <date>2017-03-07 19:26:45 -0800</date>
            <delta_ts>2017-03-07 21:39:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169334-20170307192644.patch</filename>
            <type>text/plain</type>
            <size>27018</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEzNTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjcyYWY1M2YxMzIxOTk2
MGE3YjIwNjEwZjFkOTY1ZDE3YmI2MTU0Ny4uZjRkMmZkYmQ1NjNkYzA0MTAzMDZhYjczYmZmMjRm
NjU1MDY0MzJhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDIzIEBACiAyMDE3LTAzLTA3ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCisgICAgICAgIEhhdmUgZml4ZWRQ
b3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQgYmUgb24gYnkgZGVmYXVsdCBldmVyeXdoZXJl
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjkzMzQK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJdCBtYWtl
cyBubyBzZW5zZSB0byBoYXZlIHdlYi1leHBvc2VkIENTUyBmdW5jdGlvbmFsaXR5IGJlIGRpZmZl
cmVudCBiYXNlZCBvbiBzZXR0aW5nLAorICAgICAgICBhbmQgb3RoZXIgYnJvd3NlciBhcmUgbm93
IGFsaWduZWQgd2l0aCBoYXZpbmcgcG9zaXRpb246Zml4ZWQgY3JlYXRlIHN0YWNraW5nIGNvbnRl
eHQuCisKKyAgICAgICAgU28gcmVtb3ZlIHRoZSBmaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5n
Q29udGV4dCBzZXR0aW5nIGFuZCBoYXZlIFN0eWxlUmVzb2x2ZXI6OmFkanVzdFJlbmRlclN0eWxl
KCkKKyAgICAgICAgYWx3YXlzIGZvcmNlIHN0YWNraW5nIGNvbnRleHQgZm9yIHBvc2l0aW9uOmZp
eGVkLgorCisgICAgICAgICogY3NzL1N0eWxlUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGVSZXNvbHZlcjo6YWRqdXN0UmVuZGVyU3R5bGUpOgorICAgICAgICAqIHBhZ2UvU2V0
dGluZ3MuY3BwOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuaW46CisKKzIwMTctMDMtMDcgIFNp
bW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKICAgICAgICAgUGFyc2luZyAt
d2Via2l0LWh5cGhlbmF0ZS1jaGFyYWN0ZXIgdXNlcyBjb25mdXNpbmdseSBuYW1lZCBjb25zdW1l
TG9jYWxlKCkKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE2ODYzOAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggNjAwOWQxNDk5YzQ3MzRlYzA1NjIzYTI5OGMw
ZTkyNTExYzRkN2I3YS4uZWNhMDE1MjRiY2M0OWE2YThlZDlkOGFiYmMyODMyMjcyYWRkY2MxMyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE3LTAzLTA3ICBTaW1vbiBGcmFz
ZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIEhhdmUgZml4ZWRQb3NpdGlv
bkNyZWF0ZXNTdGFja2luZ0NvbnRleHQgYmUgb24gYnkgZGVmYXVsdCBldmVyeXdoZXJlCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjkzMzQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJdCBtYWtlcyBubyBz
ZW5zZSB0byBoYXZlIHdlYi1leHBvc2VkIENTUyBmdW5jdGlvbmFsaXR5IGJlIGRpZmZlcmVudCBi
YXNlZCBvbiBzZXR0aW5nLAorICAgICAgICBhbmQgb3RoZXIgYnJvd3NlciBhcmUgbm93IGFsaWdu
ZWQgd2l0aCBoYXZpbmcgcG9zaXRpb246Zml4ZWQgY3JlYXRlIHN0YWNraW5nIGNvbnRleHQuCisK
KyAgICAgICAgU28gcmVtb3ZlIHRoZSBmaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4
dCBzZXR0aW5nIGFuZCBoYXZlIFN0eWxlUmVzb2x2ZXI6OmFkanVzdFJlbmRlclN0eWxlKCkKKyAg
ICAgICAgYWx3YXlzIGZvcmNlIHN0YWNraW5nIGNvbnRleHQgZm9yIHBvc2l0aW9uOmZpeGVkLgor
CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3IF9wcmVm
ZXJlbmNlc0NoYW5nZWQ6XSk6CisKIDIwMTctMDMtMDYgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZy
YXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgSW5pdGlhbGl6ZSB0aGUgc3VicGl4ZWxBbnRpYWxp
YXNlZExheWVyVGV4dEVuYWJsZWQgU2V0dGluZyBpbiBXZWJLaXQxCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMWI1
NmJjOWU2MjBiNzBkN2ZmNjgwMWE1ZGU1YTQ1NGZjM2NiYjNlOC4uY2VhZmIwYTIxOTJhNmQzZGJm
MTE2N2M2YTM0OTVlODVmYTE2NjE3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI1IEBACiAyMDE3
LTAzLTA3ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCisgICAgICAg
IEhhdmUgZml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQgYmUgb24gYnkgZGVmYXVs
dCBldmVyeXdoZXJlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNjkzMzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBJdCBtYWtlcyBubyBzZW5zZSB0byBoYXZlIHdlYi1leHBvc2VkIENTUyBmdW5jdGlvbmFs
aXR5IGJlIGRpZmZlcmVudCBiYXNlZCBvbiBzZXR0aW5nLAorICAgICAgICBhbmQgb3RoZXIgYnJv
d3NlciBhcmUgbm93IGFsaWduZWQgd2l0aCBoYXZpbmcgcG9zaXRpb246Zml4ZWQgY3JlYXRlIHN0
YWNraW5nIGNvbnRleHQuCisKKyAgICAgICAgU28gcmVtb3ZlIHRoZSBmaXhlZFBvc2l0aW9uQ3Jl
YXRlc1N0YWNraW5nQ29udGV4dCBzZXR0aW5nIGFuZCBoYXZlIFN0eWxlUmVzb2x2ZXI6OmFkanVz
dFJlbmRlclN0eWxlKCkKKyAgICAgICAgYWx3YXlzIGZvcmNlIHN0YWNraW5nIGNvbnRleHQgZm9y
IHBvc2l0aW9uOmZpeGVkLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2Uu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpzZXRVc2VGaXhlZExheW91dCk6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYS5t
bToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWE6OnVwZGF0ZVBy
ZWZlcmVuY2VzKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29yZUFu
aW1hdGlvbkRyYXdpbmdBcmVhLm1tOgorICAgICAgICAoV2ViS2l0OjpUaWxlZENvcmVBbmltYXRp
b25EcmF3aW5nQXJlYTo6dXBkYXRlUHJlZmVyZW5jZXMpOgorCisyMDE3LTAzLTA3ICBTaW1vbiBG
cmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCiAgICAgICAgIEVuYWJsZSBTdWJwaXhl
bEFudGlhbGlhc2VkTGF5ZXJUZXh0RW5hYmxlZCBieSBkZWZhdWx0IG9uIHNvbWUgdmVyc2lvbnMg
b2YgbWFjT1MKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE2OTMyOQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKaW5kZXggNWY4NGYyZDU1
ZmY4MTgxODlmYzQxNDM0YzEyMDAwNjZkM2YyNjE1Yi4uMGFjZTRjMjI0MzMyMWQ3ZThlMDJhYTc3
NjgyN2RmYmZhNjI3MDdiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVz
b2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcApAQCAt
OTExLDcgKzkxMSw3IEBAIHZvaWQgU3R5bGVSZXNvbHZlcjo6YWRqdXN0UmVuZGVyU3R5bGUoUmVu
ZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBSZW5kZXJTdHlsZSYgcGFyCiAgICAgICAgICAgICB8fCBz
dHlsZS5oYXNCbGVuZE1vZGUoKQogICAgICAgICAgICAgfHwgc3R5bGUuaGFzSXNvbGF0aW9uKCkK
ICAgICAgICAgICAgIHx8IHN0eWxlLnBvc2l0aW9uKCkgPT0gU3RpY2t5UG9zaXRpb24KLSAgICAg
ICAgICAgIHx8IChzdHlsZS5wb3NpdGlvbigpID09IEZpeGVkUG9zaXRpb24gJiYgc2V0dGluZ3Mo
KS5maXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dCgpKQorICAgICAgICAgICAgfHwg
c3R5bGUucG9zaXRpb24oKSA9PSBGaXhlZFBvc2l0aW9uCiAgICAgICAgICAgICB8fCBzdHlsZS5o
YXNGbG93RnJvbSgpCiAgICAgICAgICAgICB8fCBzdHlsZS53aWxsQ2hhbmdlQ3JlYXRlc1N0YWNr
aW5nQ29udGV4dCgpKQogICAgICAgICAgICAgc3R5bGUuc2V0WkluZGV4KDApOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1NldHRpbmdzLmNwcAppbmRleCA3ZDA4Nzg0N2NkOGE4OTI4NGJiNDY4OGQ0MTJlMzQ5MzZiOWJl
NDE2Li4xYjNlMjJiZjFiZjdhYzM0MjkxYTA3ZTEyMDY1NWQ1YjZlMjg0OTI5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1NldHRpbmdzLmNwcApAQCAtMTQyLDcgKzE0Miw2IEBAIHN0YXRpYyBjb25zdCBib29sIGRl
ZmF1bHRZb3VUdWJlRmxhc2hQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQgPSBmYWxzZTsKICNlbmRp
ZgogCiAjaWYgUExBVEZPUk0oSU9TKQotc3RhdGljIGNvbnN0IGJvb2wgZGVmYXVsdEZpeGVkUG9z
aXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0ID0gdHJ1ZTsKIHN0YXRpYyBjb25zdCBib29sIGRl
ZmF1bHRGaXhlZEJhY2tncm91bmRzUGFpbnRSZWxhdGl2ZVRvRG9jdW1lbnQgPSB0cnVlOwogc3Rh
dGljIGNvbnN0IGJvb2wgZGVmYXVsdEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdGb3JGaXhlZFBvc2l0
aW9uRW5hYmxlZCA9IHRydWU7CiBzdGF0aWMgY29uc3QgYm9vbCBkZWZhdWx0QWxsb3dzSW5saW5l
TWVkaWFQbGF5YmFjayA9IGZhbHNlOwpAQCAtMTU2LDcgKzE1NSw2IEBAIHN0YXRpYyBjb25zdCBi
b29sIGRlZmF1bHRTY3JvbGxpbmdUcmVlSW5jbHVkZXNGcmFtZXMgPSB0cnVlOwogc3RhdGljIGNv
bnN0IGJvb2wgZGVmYXVsdE1lZGlhQ29udHJvbHNTY2FsZVdpdGhQYWdlWm9vbSA9IHRydWU7CiBz
dGF0aWMgY29uc3QgYm9vbCBkZWZhdWx0UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVk
ID0gdHJ1ZTsKICNlbHNlCi1zdGF0aWMgY29uc3QgYm9vbCBkZWZhdWx0Rml4ZWRQb3NpdGlvbkNy
ZWF0ZXNTdGFja2luZ0NvbnRleHQgPSBmYWxzZTsKIHN0YXRpYyBjb25zdCBib29sIGRlZmF1bHRG
aXhlZEJhY2tncm91bmRzUGFpbnRSZWxhdGl2ZVRvRG9jdW1lbnQgPSBmYWxzZTsKIHN0YXRpYyBj
b25zdCBib29sIGRlZmF1bHRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVu
YWJsZWQgPSBmYWxzZTsKIHN0YXRpYyBjb25zdCBib29sIGRlZmF1bHRBbGxvd3NJbmxpbmVNZWRp
YVBsYXliYWNrID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGlu
Z3MuaW4gYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmluCmluZGV4IGVjZmY0MTA2YTEw
NDljZDI3MWY5YjljNzdkYTZjZDI2ZDM5YTA0M2EuLjEzZWQzZTAwMmRhNTczZmU1MTc5ZjZhYzI5
NmIyMWYxZDUyNDc4NzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3Mu
aW4KKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbgpAQCAtMTU4LDcgKzE1OCw2
IEBAIGltYWdlU3Vic2FtcGxpbmdFbmFibGVkIGluaXRpYWw9ZGVmYXVsdEltYWdlU3Vic2FtcGxp
bmdFbmFibGVkCiB3YW50c0JhbGFuY2VkU2V0RGVmZXJzTG9hZGluZ0JlaGF2aW9yIGluaXRpYWw9
ZmFsc2UKIHJlcXVlc3RBbmltYXRpb25GcmFtZUVuYWJsZWQgaW5pdGlhbD10cnVlCiAKLWZpeGVk
UG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0IGluaXRpYWw9ZGVmYXVsdEZpeGVkUG9zaXRp
b25DcmVhdGVzU3RhY2tpbmdDb250ZXh0CiBjb29raWVFbmFibGVkIGluaXRpYWw9dHJ1ZQogbWVk
aWFFbmFibGVkIGluaXRpYWw9dHJ1ZQogRE9NUGFzdGVBbGxvd2VkIGluaXRpYWw9ZmFsc2UKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbSBiL1NvdXJjZS9X
ZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQppbmRleCBmYmQ0MTZjNjVlMmFhNDk1NGJmN2M0
N2JkYzZmOWJjMGVmZDYxOWU1Li5lMzYyM2NkZGNhNTVkN2JkYTdjMGRmODI2M2RhYmQyNjYyZGQ3
NDU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KKysr
IGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCkBAIC0yNzc2LDcgKzI3NzYs
NiBAQCAtICh2b2lkKV9wcmVmZXJlbmNlc0NoYW5nZWQ6KFdlYlByZWZlcmVuY2VzICopcHJlZmVy
ZW5jZXMKICAgICBzZXR0aW5ncy5zZXRQbHVnSW5TbmFwc2hvdHRpbmdFbmFibGVkKFtwcmVmZXJl
bmNlcyBwbHVnSW5TbmFwc2hvdHRpbmdFbmFibGVkXSk7CiAgICAgc2V0dGluZ3Muc2V0SHR0cEVx
dWl2RW5hYmxlZChbcHJlZmVyZW5jZXMgaHR0cEVxdWl2RW5hYmxlZF0pOwogCi0gICAgc2V0dGlu
Z3Muc2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQodHJ1ZSk7CiAjaWYgUExB
VEZPUk0oTUFDKQogICAgIHNldHRpbmdzLnNldEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdGb3JGaXhl
ZFBvc2l0aW9uRW5hYmxlZCh0cnVlKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0RyYXdpbmdBcmVhSW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWFJbXBsLmNwcAppbmRleCBhMmRhNTc0YzQ0
YmZmOGNkNWY2M2M0YTNkYmJiZTJiMmM3NmY5Yzc2Li4yYjg4ZmQ3YTg2OWY3NDQ3NDY2OTJiNDcw
MzFiYTRhODQ4ZjQ3NzZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvRHJhd2luZ0FyZWFJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvRHJhd2luZ0FyZWFJbXBsLmNwcApAQCAtMTgzLDcgKzE4Myw2IEBAIHZvaWQgRHJh
d2luZ0FyZWFJbXBsOjp1cGRhdGVQcmVmZXJlbmNlcyhjb25zdCBXZWJQcmVmZXJlbmNlc1N0b3Jl
JiBzdG9yZSkKICAgICAvLyBGaXhlZCBwb3NpdGlvbiBlbGVtZW50cyBuZWVkIHRvIGJlIGNvbXBv
c2l0ZWQgYW5kIGNyZWF0ZSBzdGFja2luZyBjb250ZXh0cwogICAgIC8vIGluIG9yZGVyIHRvIGJl
IHNjcm9sbGVkIGJ5IHRoZSBTY3JvbGxpbmdDb29yZGluYXRvci4KICAgICBzZXR0aW5ncy5zZXRB
Y2NlbGVyYXRlZENvbXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVuYWJsZWQoc2V0dGluZ3MuYWNj
ZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWQoKSk7Ci0gICAgc2V0dGluZ3Muc2V0Rml4ZWRQb3Np
dGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQoc2V0dGluZ3MuYWNjZWxlcmF0ZWRDb21wb3NpdGlu
Z0VuYWJsZWQoKSk7CiAjZW5kaWYKIAogICAgIG1fYWx3YXlzVXNlQ29tcG9zaXRpbmcgPSBzZXR0
aW5ncy5hY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCgpICYmIHNldHRpbmdzLmZvcmNlQ29t
cG9zaXRpbmdNb2RlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5jcHAKaW5kZXggOGY4OGQ5YTgyN2MyZWE3YjFlMGZkMTViZTdjMDIyOTQ0ZTI1OWYwZi4u
YjdhMTBjMjY4MjMxNTIyMWM3MWNmZTMxMzZjNDNjNjY2MTFiMjQzMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMTY4MSw3ICsxNjgxLDYg
QEAgdm9pZCBXZWJQYWdlOjpzZXRVc2VGaXhlZExheW91dChib29sIGZpeGVkKQogI2VuZGlmCiAj
aWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQogICAgIG1fcGFnZS0+c2V0dGluZ3MoKS5zZXRB
Y2NlbGVyYXRlZENvbXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVuYWJsZWQoZml4ZWQpOwotICAg
IG1fcGFnZS0+c2V0dGluZ3MoKS5zZXRGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4
dChmaXhlZCk7CiAgICAgbV9wYWdlLT5zZXR0aW5ncygpLnNldERlbGVnYXRlc1BhZ2VTY2FsaW5n
KGZpeGVkKTsKICAgICBtX3BhZ2UtPnNldHRpbmdzKCkuc2V0U2Nyb2xsaW5nQ29vcmRpbmF0b3JF
bmFibGVkKGZpeGVkKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL21hYy9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYS5tbSBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvUmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEu
bW0KaW5kZXggNTk2OWI2ZjI4YmJhOTA5YjE5NzVkMzBjYmJjMDgzZTNhYmVmOGY2Ni4uNWQzOTQ0
Njc3ZDEzZjAxOThmOGViYTNiZWNhMWM3Mjc2MWQ3MjVhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9SZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYS5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1JlbW90ZUxheWVy
VHJlZURyYXdpbmdBcmVhLm1tCkBAIC0xNzcsNyArMTc3LDYgQEAgdm9pZCBSZW1vdGVMYXllclRy
ZWVEcmF3aW5nQXJlYTo6dXBkYXRlUHJlZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9y
ZSYpCiAgICAgLy8gRml4ZWQgcG9zaXRpb24gZWxlbWVudHMgbmVlZCB0byBiZSBjb21wb3NpdGVk
IGFuZCBjcmVhdGUgc3RhY2tpbmcgY29udGV4dHMKICAgICAvLyBpbiBvcmRlciB0byBiZSBzY3Jv
bGxlZCBieSB0aGUgU2Nyb2xsaW5nQ29vcmRpbmF0b3IuCiAgICAgc2V0dGluZ3Muc2V0QWNjZWxl
cmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9zaXRpb25FbmFibGVkKHRydWUpOwotICAgIHNldHRp
bmdzLnNldEZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0KHRydWUpOwogCiAgICAg
bV9yb290TGF5ZXItPnNldFNob3dEZWJ1Z0JvcmRlcihzZXR0aW5ncy5zaG93RGVidWdCb3JkZXJz
KCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFj
L1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYS5tbQppbmRleCBm
MjA2N2YyMWM3MGQ1Nzk3YjE3NGYwNmEzMTEwNGE0M2I0MzljNzJhLi4wNjc4NWIzMmU4ZjU1ZDJh
ZGRjYTU1MTg2YmQ4ZWQyY2YzNjg5NGU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhLm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0aW9u
RHJhd2luZ0FyZWEubW0KQEAgLTIwMiwxMSArMjAyLDggQEAgdm9pZCBUaWxlZENvcmVBbmltYXRp
b25EcmF3aW5nQXJlYTo6dXBkYXRlUHJlZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9y
ZSYKICNlbmRpZgogCiAgICAgLy8gRml4ZWQgcG9zaXRpb24gZWxlbWVudHMgbmVlZCB0byBiZSBj
b21wb3NpdGVkIGFuZCBjcmVhdGUgc3RhY2tpbmcgY29udGV4dHMKLSAgICAvLyBpbiBvcmRlciB0
byBiZSBzY3JvbGxlZCBieSB0aGUgU2Nyb2xsaW5nQ29vcmRpbmF0b3IuIFdlIGFsc28gd2FudCB0
byBrZWVwCi0gICAgLy8gU2V0dGluZ3M6c2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0Nv
bnRleHQoKSBlbmFibGVkIGZvciBpT1MuIFNlZQotICAgIC8vIDxyZGFyOi8vcHJvYmxlbS85ODEz
MjYyPiBmb3IgbW9yZSBkZXRhaWxzLgorICAgIC8vIGluIG9yZGVyIHRvIGJlIHNjcm9sbGVkIGJ5
IHRoZSBTY3JvbGxpbmdDb29yZGluYXRvci4KICAgICBzZXR0aW5ncy5zZXRBY2NlbGVyYXRlZENv
bXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVuYWJsZWQodHJ1ZSk7Ci0gICAgc2V0dGluZ3Muc2V0
Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQodHJ1ZSk7CiAKICAgICBpZiAoTWFp
bkZyYW1lKiBtYWluRnJhbWUgPSBtX3dlYlBhZ2UubWFpbkZyYW1lKCkpCiAgICAgICAgIERlYnVn
UGFnZU92ZXJsYXlzOjpzZXR0aW5nc0NoYW5nZWQoKm1haW5GcmFtZSk7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZmQ5MGY3
MDgxMjIwYmFmYWYzMTI5ZjkwZThhM2NkNTBkYzRiNjA5Ny4uMTZkZjA1Y2ViMTUyZjJkMTU3NTJh
ODE4ZWViZmI4M2Q5YzYxNTM0ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisr
KyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE3LTAzLTA3ICBT
aW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIEhhdmUgZml4
ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQgYmUgb24gYnkgZGVmYXVsdCBldmVyeXdo
ZXJlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjkz
MzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJdCBt
YWtlcyBubyBzZW5zZSB0byBoYXZlIHdlYi1leHBvc2VkIENTUyBmdW5jdGlvbmFsaXR5IGJlIGRp
ZmZlcmVudCBiYXNlZCBvbiBzZXR0aW5nLAorICAgICAgICBhbmQgb3RoZXIgYnJvd3NlciBhcmUg
bm93IGFsaWduZWQgd2l0aCBoYXZpbmcgcG9zaXRpb246Zml4ZWQgY3JlYXRlIHN0YWNraW5nIGNv
bnRleHQuCisKKyAgICAgICAgU28gcmVtb3ZlIHRoZSBmaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNr
aW5nQ29udGV4dCBzZXR0aW5nIGFuZCBoYXZlIFN0eWxlUmVzb2x2ZXI6OmFkanVzdFJlbmRlclN0
eWxlKCkKKyAgICAgICAgYWx3YXlzIGZvcmNlIHN0YWNraW5nIGNvbnRleHQgZm9yIHBvc2l0aW9u
OmZpeGVkLgorCisgICAgICAgICogY29tcG9zaXRpbmcvYWJzb2x1dGUtaW5zaWRlLW91dC1vZi12
aWV3LWZpeGVkLmh0bWw6CisgICAgICAgICogY29tcG9zaXRpbmcvZ2VvbWV0cnkvZml4ZWQtcG9z
aXRpb24tY29tcG9zaXRlZC1wYWdlLXNjYWxlLXNtYWxsZXItdGhhbi12aWV3cG9ydC5odG1sOgor
ICAgICAgICAqIGNvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLW92ZXJsYXAtZXh0ZW50
LXJ0bC5odG1sOgorICAgICAgICAqIGNvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLW92
ZXJsYXAtZXh0ZW50Lmh0bWw6CisgICAgICAgICogY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24v
Zml4ZWQtcG9zaXRpb24tY2hhbmdlLW91dC1vZi12aWV3LWluLXZpZXcuaHRtbDoKKyAgICAgICAg
KiBjb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1pbi12aWV3LWR5bmFt
aWMuaHRtbDoKKyAgICAgICAgKiBjb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3Np
dGlvbi1vdXQtb2Ytdmlldy1keW5hbWljLmh0bWw6CisgICAgICAgICogY29tcG9zaXRpbmcvbGF5
ZXItY3JlYXRpb24vZml4ZWQtcG9zaXRpb24tb3V0LW9mLXZpZXctc2NhbGVkLWlmcmFtZS1zY3Jv
bGwuaHRtbDoKKyAgICAgICAgKiBjb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3Np
dGlvbi1vdXQtb2Ytdmlldy1zY2FsZWQtaWZyYW1lLmh0bWw6CisgICAgICAgICogY29tcG9zaXRp
bmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtcG9zaXRpb24tb3V0LW9mLXZpZXctc2NhbGVkLXNjcm9s
bC5odG1sOgorICAgICAgICAqIGNvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0
aW9uLW91dC1vZi12aWV3LXNjYWxlZC5odG1sOgorICAgICAgICAqIGNvbXBvc2l0aW5nL2xheWVy
LWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLXRyYW5zZm9ybWVkLWludG8tdmlldy5odG1sOgorICAg
ICAgICAqIGNvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLXRyYW5zZm9y
bWVkLW91dHNpZGUtdmlldy5odG1sOgorICAgICAgICAqIGNvbXBvc2l0aW5nL2xheWVyLWNyZWF0
aW9uL25vLWNvbXBvc2l0aW5nLWZvci1maXhlZC1wb3NpdGlvbi11bmRlci10cmFuc2Zvcm0uaHRt
bDoKKyAgICAgICAgKiBjb21wb3NpdGluZy9yZXBhaW50L3Njcm9sbC1maXhlZC1sYXllci1uby1j
b250ZW50Lmh0bWw6CisgICAgICAgICogY29tcG9zaXRpbmcvcmVwYWludC9zY3JvbGwtZml4ZWQt
bGF5ZXItb3V0LW9mLXZpZXcuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5n
L2ZpeGVkLXBvc2l0aW9uLXN0YWNraW5nLWNvbnRleHQyLmh0bWw6CisgICAgICAgICogZnVsbHNj
cmVlbi9mdWxsLXNjcmVlbi1maXhlZC1wb3MtcGFyZW50Lmh0bWw6CisKIDIwMTctMDMtMDcgIEpp
ZXdlbiBUYW4gIDxqaWV3ZW5fdGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbV2ViQ3J5cHRvXSBJ
bXBsZW1lbnQgRUNESCBJbXBvcnRLZXkvRXhwb3J0S2V5IG9wZXJhdGlvbnMKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2Fic29sdXRlLWluc2lkZS1vdXQtb2Ytdmlldy1maXhl
ZC5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvYWJzb2x1dGUtaW5zaWRlLW91dC1vZi12
aWV3LWZpeGVkLmh0bWwKaW5kZXggYWMyYmMzNmZlZjQ2NWI3MTJkNGI4ZGFlOWViNjRiM2E2ZTli
NDc1Ni4uZGNhY2QyOTVjYTI1NzdhZWJiYmVmZGZjOTg3MzE5ZDEwMDg5YThjZSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvYWJzb2x1dGUtaW5zaWRlLW91dC1vZi12aWV3LWZp
eGVkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvYWJzb2x1dGUtaW5zaWRlLW91
dC1vZi12aWV3LWZpeGVkLmh0bWwKQEAgLTI5LDEwICsyOSw4IEBACiAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpIHsKICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CiAgICAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICBpZiAod2luZG93LmludGVybmFs
cykgeworICAgICAgICBpZiAod2luZG93LmludGVybmFscykKICAgICAgICAgICAgIHdpbmRvdy5p
bnRlcm5hbHMuc2V0dGluZ3Muc2V0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9zaXRp
b25FbmFibGVkKHRydWUpOwotICAgICAgICAgICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5z
ZXRGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dCh0cnVlKTsKLSAgICAgICAgfQog
ICAgICAgfQogCiAgICAgICBmdW5jdGlvbiBkb1Njcm9sbCgpCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jb21wb3NpdGluZy9nZW9tZXRyeS9maXhlZC1wb3NpdGlvbi1jb21wb3NpdGVkLXBhZ2Ut
c2NhbGUtc21hbGxlci10aGFuLXZpZXdwb3J0Lmh0bWwgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGlu
Zy9nZW9tZXRyeS9maXhlZC1wb3NpdGlvbi1jb21wb3NpdGVkLXBhZ2Utc2NhbGUtc21hbGxlci10
aGFuLXZpZXdwb3J0Lmh0bWwKaW5kZXggODdlOGE0OTU5Y2FlYzJlY2Q1MThhNTUwYjgzN2Y4ODUy
YzM3MzBkMy4uNGRkNDEwNzIxMTRlOTQyNjY3ZmY3NzY2NzExNTNiN2UyMGY3MDc3MCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvZ2VvbWV0cnkvZml4ZWQtcG9zaXRpb24tY29t
cG9zaXRlZC1wYWdlLXNjYWxlLXNtYWxsZXItdGhhbi12aWV3cG9ydC5odG1sCisrKyBiL0xheW91
dFRlc3RzL2NvbXBvc2l0aW5nL2dlb21ldHJ5L2ZpeGVkLXBvc2l0aW9uLWNvbXBvc2l0ZWQtcGFn
ZS1zY2FsZS1zbWFsbGVyLXRoYW4tdmlld3BvcnQuaHRtbApAQCAtMjcsNyArMjcsNiBAQAogICBp
ZiAod2luZG93LmludGVybmFscykgewogICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0
VmlzdWFsVmlld3BvcnRFbmFibGVkKGZhbHNlKTsKICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRp
bmdzLnNldEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdGb3JGaXhlZFBvc2l0aW9uRW5hYmxlZCh0cnVl
KTsKLSAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldEZpeGVkUG9zaXRpb25DcmVhdGVz
U3RhY2tpbmdDb250ZXh0KHRydWUpOwogICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0UGFnZVNjYWxl
RmFjdG9yKDAuNSwgMCwgMCk7CiAgIH0KIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtb3ZlcmxhcC1leHRlbnQtcnRsLmh0
bWwgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1vdmVybGFw
LWV4dGVudC1ydGwuaHRtbAppbmRleCBhMGIwMGMwNTVhNjUwZGFiZWRiZWYwODU1ZTU0NjdjNTA5
Y2FiZTQzLi45ZjgwYWE3MjY3NzljNTU2YmZlZTViY2NlMjkwNDJmOTNiZWM1MzRlIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1vdmVybGFw
LWV4dGVudC1ydGwuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVh
dGlvbi9maXhlZC1vdmVybGFwLWV4dGVudC1ydGwuaHRtbApAQCAtMzUsMTAgKzM1LDggQEAKICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQogICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7CiAKLSAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKKyAgICAgICAgaWYg
KHdpbmRvdy5pbnRlcm5hbHMpCiAgICAgICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWNj
ZWxlcmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9zaXRpb25FbmFibGVkKHRydWUpOwotICAgICAg
ICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldEZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdD
b250ZXh0KHRydWUpOwotICAgICAgICB9CiAKICAgICAgICAgZnVuY3Rpb24gZG9UZXN0KCkKICAg
ICAgICAgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRp
b24vZml4ZWQtb3ZlcmxhcC1leHRlbnQuaHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xh
eWVyLWNyZWF0aW9uL2ZpeGVkLW92ZXJsYXAtZXh0ZW50Lmh0bWwKaW5kZXggYjhkNWQ3NjQ3NjAz
Njc4NzRkODhkYTViYjg3NThiYjQ1YmNmMzY3YS4uZDgzYTA3NTE1ZjY4NmI4M2U2ODMwMDBhMzZl
M2QwODg1M2NiMWQ2YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXIt
Y3JlYXRpb24vZml4ZWQtb3ZlcmxhcC1leHRlbnQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9jb21w
b3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1vdmVybGFwLWV4dGVudC5odG1sCkBAIC0zNSwx
MCArMzUsOCBAQAogICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgICAgICAgICB0
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKIAotICAgICAgICBpZiAod2luZG93LmludGVybmFscykg
eworICAgICAgICBpZiAod2luZG93LmludGVybmFscykKICAgICAgICAgICAgIGludGVybmFscy5z
ZXR0aW5ncy5zZXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVuYWJsZWQo
dHJ1ZSk7Ci0gICAgICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Rml4ZWRQb3NpdGlvbkNy
ZWF0ZXNTdGFja2luZ0NvbnRleHQodHJ1ZSk7Ci0gICAgICAgIH0KIAogICAgICAgICBmdW5jdGlv
biBkb1Rlc3QoKQogICAgICAgICB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGlu
Zy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1jaGFuZ2Utb3V0LW9mLXZpZXctaW4tdmll
dy5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtcG9z
aXRpb24tY2hhbmdlLW91dC1vZi12aWV3LWluLXZpZXcuaHRtbAppbmRleCA0ODA1NTdjZjhjMjE0
YTQ5MTZhNzQxNTQ1NmNlNWNmNThkZWIyODExLi4xYjRhNzYyNmFiYjY1ZWEzZmViNDUwODY1NmJj
N2YyOWU2OTdhZDk5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1j
cmVhdGlvbi9maXhlZC1wb3NpdGlvbi1jaGFuZ2Utb3V0LW9mLXZpZXctaW4tdmlldy5odG1sCisr
KyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9u
LWNoYW5nZS1vdXQtb2Ytdmlldy1pbi12aWV3Lmh0bWwKQEAgLTExLDcgKzExLDYgQEAKICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIgJiYgd2luZG93LmludGVybmFscykgewogICAgICAgdGVzdFJ1
bm5lci5kdW1wQXNUZXh0KCk7CiAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWNjZWxlcmF0
ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9zaXRpb25FbmFibGVkKHRydWUpOwotICAgICAgaW50ZXJu
YWxzLnNldHRpbmdzLnNldEZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0KHRydWUp
OwogCiAgICAgICBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CiAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsYXllclRyZWUxIikuaW5uZXJUZXh0ID0gaW50ZXJu
YWxzLmxheWVyVHJlZUFzVGV4dChkb2N1bWVudCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
b21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1pbi12aWV3LWR5bmFtaWMu
aHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0
aW9uLWluLXZpZXctZHluYW1pYy5odG1sCmluZGV4IDE1YjY4ZTRmOTRhZTk5NTU3MTM3NjE5MmQ3
NDQ0MjQwNDBiYmUyYTcuLmUyMTVjODViMWExMmQ2N2E2ZTk5YmVjMmUwM2JiODcxMTliOWIyMjEg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVk
LXBvc2l0aW9uLWluLXZpZXctZHluYW1pYy5odG1sCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0
aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLWluLXZpZXctZHluYW1pYy5odG1sCkBA
IC0xNiw3ICsxNiw2IEBACiAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyICYmIHdpbmRvdy5pbnRl
cm5hbHMpIHsKICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogICAgICAgaW50ZXJuYWxz
LnNldHRpbmdzLnNldEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdGb3JGaXhlZFBvc2l0aW9uRW5hYmxl
ZCh0cnVlKTsKLSAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRGaXhlZFBvc2l0aW9uQ3JlYXRl
c1N0YWNraW5nQ29udGV4dCh0cnVlKTsKIAogICAgICAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIs
IGZ1bmN0aW9uKCkgewogICAgICAgICB2YXIgZml4ZWQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJkaXYiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0
aW9uL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LWR5bmFtaWMuaHRtbCBiL0xheW91dFRlc3Rz
L2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LWR5
bmFtaWMuaHRtbAppbmRleCAzZmJiOTA0YzRiNjYwY2U2Zjc5ZDI0ZWI4OWM0YWJlNjA2Yjg3ZWUz
Li40ZDM5NDljNjFhMzJhZmU0OGUxYjMyZTI1YzU2YzJhYmM2MmJjNmQyIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1vdXQt
b2Ytdmlldy1keW5hbWljLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXIt
Y3JlYXRpb24vZml4ZWQtcG9zaXRpb24tb3V0LW9mLXZpZXctZHluYW1pYy5odG1sCkBAIC0xNiw3
ICsxNiw2IEBACiAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyICYmIHdpbmRvdy5pbnRlcm5hbHMp
IHsKICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogICAgICAgaW50ZXJuYWxzLnNldHRp
bmdzLnNldEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdGb3JGaXhlZFBvc2l0aW9uRW5hYmxlZCh0cnVl
KTsKLSAgICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNr
aW5nQ29udGV4dCh0cnVlKTsKIAogICAgICAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGZ1bmN0
aW9uKCkgewogICAgICAgICB2YXIgZml4ZWQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYi
KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2Zp
eGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LXNjYWxlZC1pZnJhbWUtc2Nyb2xsLmh0bWwgYi9MYXlv
dXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1vdXQtb2Yt
dmlldy1zY2FsZWQtaWZyYW1lLXNjcm9sbC5odG1sCmluZGV4IDE5OTljYjJiMDFjOTc5ZjJlM2Q2
NDNlOTcxZWRiOTdkMjJkZjNkNDMuLjhjMjQ2MWI5NmEzNThkYmUxYmQ0YjBhOWZiMWU5ZjZkMjEy
Yjc1ZjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9u
L2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LXNjYWxlZC1pZnJhbWUtc2Nyb2xsLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtcG9zaXRpb24t
b3V0LW9mLXZpZXctc2NhbGVkLWlmcmFtZS1zY3JvbGwuaHRtbApAQCAtOCw3ICs4LDYgQEAKICAg
fQogICBpZiAod2luZG93LmludGVybmFscykgewogICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGlu
Z3Muc2V0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9zaXRpb25FbmFibGVkKHRydWUp
OwotICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0Rml4ZWRQb3NpdGlvbkNyZWF0ZXNT
dGFja2luZ0NvbnRleHQodHJ1ZSk7CiAKICAgICBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVu
Y3Rpb24oKSB7CiAgICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldFBhZ2VTY2FsZUZhY3RvcigwLjUs
IDAsIDApOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRp
b24vZml4ZWQtcG9zaXRpb24tb3V0LW9mLXZpZXctc2NhbGVkLWlmcmFtZS5odG1sIGIvTGF5b3V0
VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtcG9zaXRpb24tb3V0LW9mLXZp
ZXctc2NhbGVkLWlmcmFtZS5odG1sCmluZGV4IGEzMTA1NDE3NmQ4YTIxN2YwMTFjMWI4NjNlN2Fl
MzlhM2FkOGNlYzYuLmIzNjI2NTNlMTIxNTY4NGE5YzU2MDBjMmFkOGQyODZmMTAyYWFjNjAgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBv
c2l0aW9uLW91dC1vZi12aWV3LXNjYWxlZC1pZnJhbWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9j
b21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1zY2Fs
ZWQtaWZyYW1lLmh0bWwKQEAgLTgsNyArOCw2IEBACiAgIH0KICAgaWYgKHdpbmRvdy5pbnRlcm5h
bHMpIHsKICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldEFjY2VsZXJhdGVkQ29tcG9z
aXRpbmdGb3JGaXhlZFBvc2l0aW9uRW5hYmxlZCh0cnVlKTsKLSAgICB3aW5kb3cuaW50ZXJuYWxz
LnNldHRpbmdzLnNldEZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0KHRydWUpOwog
CiAgICAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGZ1bmN0aW9uKCkgewogICAgICAgd2luZG93
LmludGVybmFscy5zZXRQYWdlU2NhbGVGYWN0b3IoMC41LCAwLCAwKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLW91dC1v
Zi12aWV3LXNjYWxlZC1zY3JvbGwuaHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVy
LWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLW91dC1vZi12aWV3LXNjYWxlZC1zY3JvbGwuaHRtbApp
bmRleCA5YzBhZTQ2OTlmYmRmNDQ2MDAxZGFmOTRkNjdmZTAwMjQ1MjRkNGNlLi5lNGEzYzMxNDg1
ZTIyNWI5ZDU2ZjkxMzFhMjhlY2Q3NjExM2YyM2VjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9j
b21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1zY2Fs
ZWQtc2Nyb2xsLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRp
b24vZml4ZWQtcG9zaXRpb24tb3V0LW9mLXZpZXctc2NhbGVkLXNjcm9sbC5odG1sCkBAIC0xNiw3
ICsxNiw2IEBACiAgIH0KICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKICAgICB3aW5kb3cuaW50
ZXJuYWxzLnNldHRpbmdzLnNldEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdGb3JGaXhlZFBvc2l0aW9u
RW5hYmxlZCh0cnVlKTsKLSAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldEZpeGVkUG9z
aXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0KHRydWUpOwogCiAgICAgYWRkRXZlbnRMaXN0ZW5l
cigibG9hZCIsIGZ1bmN0aW9uKCkgewogICAgICAgd2luZG93LnNjcm9sbFRvKDEwMCwxMDApOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQt
cG9zaXRpb24tb3V0LW9mLXZpZXctc2NhbGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGlu
Zy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1zY2FsZWQuaHRtbApp
bmRleCA5NmM5NTMwNDFlNjcxM2Q5ZTA5NWQwZDM5YjFlMDUzNDUwYjZjZTNkLi4xYzg4NmIwN2Ji
OTIxMjlhYTQ0YjdkMTM4NDg2ZGJmMWI1MzgyOTAwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9j
b21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1zY2Fs
ZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9maXhl
ZC1wb3NpdGlvbi1vdXQtb2Ytdmlldy1zY2FsZWQuaHRtbApAQCAtMTYsNyArMTYsNiBAQAogICB9
CiAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKSB7CiAgICAgd2luZG93LmludGVybmFscy5zZXR0aW5n
cy5zZXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlvbkVuYWJsZWQodHJ1ZSk7
Ci0gICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0
YWNraW5nQ29udGV4dCh0cnVlKTsKIAogICAgIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5j
dGlvbigpIHsKICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsYXllclRyZWUiKS5pbm5l
clRleHQgPSBpbnRlcm5hbHMubGF5ZXJUcmVlQXNUZXh0KGRvY3VtZW50KTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLXRy
YW5zZm9ybWVkLWludG8tdmlldy5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXIt
Y3JlYXRpb24vZml4ZWQtcG9zaXRpb24tdHJhbnNmb3JtZWQtaW50by12aWV3Lmh0bWwKaW5kZXgg
MTMyMjg0N2I0MGExYWIxOWRjMjA3YTliM2RlY2I5MjY5NmM3MzVhNi4uMzMxNDA4OGZlZGI3MDA5
NmI3MWVkMzY0MGM2MDEyZThiZDQzODhlNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvY29tcG9z
aXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtcG9zaXRpb24tdHJhbnNmb3JtZWQtaW50by12aWV3
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQt
cG9zaXRpb24tdHJhbnNmb3JtZWQtaW50by12aWV3Lmh0bWwKQEAgLTMxLDcgKzMxLDYgQEAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKSB7CiB9CiBpZiAod2luZG93LmludGVybmFscykgewogICAgIHdp
bmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVk
UG9zaXRpb25FbmFibGVkKHRydWUpOwotICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0
Rml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQodHJ1ZSk7CiAKICAgICB3aW5kb3cu
YWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGZ1bmN0aW9uKCkgewogICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgibGF5ZXJUcmVlIikuaW5uZXJUZXh0ID0gaW50ZXJuYWxzLmxheWVyVHJl
ZUFzVGV4dChkb2N1bWVudCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9s
YXllci1jcmVhdGlvbi9maXhlZC1wb3NpdGlvbi10cmFuc2Zvcm1lZC1vdXRzaWRlLXZpZXcuaHRt
bCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9u
LXRyYW5zZm9ybWVkLW91dHNpZGUtdmlldy5odG1sCmluZGV4IGYxMmIyNmQ2MzJlNDQyMjY2ZTIy
NTlmNzg5OTFmYzk2N2I3ODkzMGIuLjMyYzg1ZmI4NTkzZWRjZGVmOWVlMWRjZDRiOTZhZDZlMjU5
MzJhYjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9u
L2ZpeGVkLXBvc2l0aW9uLXRyYW5zZm9ybWVkLW91dHNpZGUtdmlldy5odG1sCisrKyBiL0xheW91
dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLXBvc2l0aW9uLXRyYW5zZm9y
bWVkLW91dHNpZGUtdmlldy5odG1sCkBAIC0zMSw3ICszMSw2IEBACiAgICAgfQogICAgIGlmICh3
aW5kb3cuaW50ZXJuYWxzKSB7CiAgICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0
QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9zaXRpb25FbmFibGVkKHRydWUpOwotICAg
ICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldEZpeGVkUG9zaXRpb25DcmVhdGVzU3Rh
Y2tpbmdDb250ZXh0KHRydWUpOwogCiAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJs
b2FkIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
bGF5ZXJUcmVlIikuaW5uZXJUZXh0ID0gaW50ZXJuYWxzLmxheWVyVHJlZUFzVGV4dChkb2N1bWVu
dCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9u
by1jb21wb3NpdGluZy1mb3ItZml4ZWQtcG9zaXRpb24tdW5kZXItdHJhbnNmb3JtLmh0bWwgYi9M
YXlvdXRUZXN0cy9jb21wb3NpdGluZy9sYXllci1jcmVhdGlvbi9uby1jb21wb3NpdGluZy1mb3It
Zml4ZWQtcG9zaXRpb24tdW5kZXItdHJhbnNmb3JtLmh0bWwKaW5kZXggMzI1NmNkMzA4ZGE4ODAz
ZTNkMjM5MTgxNzIxZTk5YTJkZTBiNWEwOS4uODRkZmU5NDRjNjQxYjNlM2ZlNjc5MTBiNjY2NTBj
NTM0ZThmZGE3YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvbGF5ZXItY3Jl
YXRpb24vbm8tY29tcG9zaXRpbmctZm9yLWZpeGVkLXBvc2l0aW9uLXVuZGVyLXRyYW5zZm9ybS5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL25vLWNvbXBv
c2l0aW5nLWZvci1maXhlZC1wb3NpdGlvbi11bmRlci10cmFuc2Zvcm0uaHRtbApAQCAtMTUsMTAg
KzE1LDggQEAKICAgPC9zdHlsZT4KIAogICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+
Ci0gICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKKyAgICBpZiAod2luZG93LmludGVybmFscykK
ICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWNjZWxlcmF0ZWRDb21wb3NpdGlu
Z0ZvckZpeGVkUG9zaXRpb25FbmFibGVkKHRydWUpOwotICAgICAgd2luZG93LmludGVybmFscy5z
ZXR0aW5ncy5zZXRGaXhlZFBvc2l0aW9uQ3JlYXRlc1N0YWNraW5nQ29udGV4dCh0cnVlKTsKLSAg
ICB9CiAKICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKICAgICAgIHRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvcmVwYWludC9z
Y3JvbGwtZml4ZWQtbGF5ZXItbm8tY29udGVudC5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRp
bmcvcmVwYWludC9zY3JvbGwtZml4ZWQtbGF5ZXItbm8tY29udGVudC5odG1sCmluZGV4IDA2OTA2
Nzk4ZGFhYWQ2ZGEwY2JjMjIzMDJhYTgyODQyMjNjOWZjNWIuLjg5MWNhNTdkOTlkZGY4ZjUyYzcy
NjMwMGMyMzg4ZmJmZTI1MTZlYTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5n
L3JlcGFpbnQvc2Nyb2xsLWZpeGVkLWxheWVyLW5vLWNvbnRlbnQuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9jb21wb3NpdGluZy9yZXBhaW50L3Njcm9sbC1maXhlZC1sYXllci1uby1jb250ZW50Lmh0
bWwKQEAgLTUsMTAgKzUsOCBAQAogICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAg
ICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKIAotICAgICAgICBpZiAod2luZG93Lmlu
dGVybmFscykgeworICAgICAgICBpZiAod2luZG93LmludGVybmFscykKICAgICAgICAgICAgIGlu
dGVybmFscy5zZXR0aW5ncy5zZXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nRm9yRml4ZWRQb3NpdGlv
bkVuYWJsZWQodHJ1ZSk7Ci0gICAgICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Rml4ZWRQ
b3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQodHJ1ZSk7Ci0gICAgICAgIH0KIAogICAgICAg
ICBmdW5jdGlvbiB0ZXN0KCkKICAgICAgICAgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29t
cG9zaXRpbmcvcmVwYWludC9zY3JvbGwtZml4ZWQtbGF5ZXItb3V0LW9mLXZpZXcuaHRtbCBiL0xh
eW91dFRlc3RzL2NvbXBvc2l0aW5nL3JlcGFpbnQvc2Nyb2xsLWZpeGVkLWxheWVyLW91dC1vZi12
aWV3Lmh0bWwKaW5kZXggMjE4OGMwODk1NmUwN2Y3MmRmMGM0NDcwZTZiMDczMjYwYzYzOTliOC4u
NzY4YjVlYjExMmVhM2QyNDhhMTFlZWFiNTcxYTQzOTQwZTQyYjI4YyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvY29tcG9zaXRpbmcvcmVwYWludC9zY3JvbGwtZml4ZWQtbGF5ZXItb3V0LW9mLXZp
ZXcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9yZXBhaW50L3Njcm9sbC1maXhl
ZC1sYXllci1vdXQtb2Ytdmlldy5odG1sCkBAIC01LDEwICs1LDggQEAKICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQogICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CiAK
LSAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKKyAgICAgICAgaWYgKHdpbmRvdy5pbnRl
cm5hbHMpCiAgICAgICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0QWNjZWxlcmF0ZWRDb21w
b3NpdGluZ0ZvckZpeGVkUG9zaXRpb25FbmFibGVkKHRydWUpOwotICAgICAgICAgICAgaW50ZXJu
YWxzLnNldHRpbmdzLnNldEZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0KHRydWUp
OwotICAgICAgICB9CiAKICAgICAgICAgZnVuY3Rpb24gdGVzdCgpCiAgICAgICAgIHsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvZml4ZWQtcG9zaXRpb24t
c3RhY2tpbmctY29udGV4dDIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25p
bmcvZml4ZWQtcG9zaXRpb24tc3RhY2tpbmctY29udGV4dDIuaHRtbAppbmRleCA3NmE3Zjc3ZWQ5
MWZiZjNhOWU4YjEyNGI5NmUwYTBjYjc0NDA1OTA5Li4wNjZiN2I3NDk5ZWRiZDEyYzhkMzE2NjY0
OGE0ZWRiM2IyZDE3NjYwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0
aW9uaW5nL2ZpeGVkLXBvc2l0aW9uLXN0YWNraW5nLWNvbnRleHQyLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9maXhlZC1wb3NpdGlvbi1zdGFja2luZy1jb250
ZXh0Mi5odG1sCkBAIC0yMywxMyArMjMsNiBAQCBkaXYgewogICAgIHotaW5kZXg6IDI7CiB9CiA8
L3N0eWxlPgotPHNjcmlwdD4KLWlmICgiaW50ZXJuYWxzIiBpbiB3aW5kb3cpIHsKLSAgICB3aW5k
b3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldEZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250
ZXh0KHRydWUpOwotfSBlbHNlIHsKLSAgICBkb2N1bWVudC53cml0ZSgiVGhpcyB0ZXN0IGRlcGVu
ZHMgb24gdGhlIEZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250ZXh0IHNldHRpbmcgYmVp
bmcgdHJ1ZSwgc28gcnVuIGluIER1bXBSZW5kZXJUcmVlIG9yIG1hbnVhbGx5IGVuYWJsZSBpdCIp
OwotfQotPC9zY3JpcHQ+CiA8ZGl2IGNsYXNzPSJncmVlbiI+PC9kaXY+CiA8ZGl2IGNsYXNzPSJj
b250YWluZXIiPgogICA8ZGl2IGNsYXNzPSJncmVlbiI+PC9kaXY+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mdWxsc2NyZWVuL2Z1bGwtc2NyZWVuLWZpeGVkLXBvcy1wYXJlbnQuaHRtbCBiL0xh
eW91dFRlc3RzL2Z1bGxzY3JlZW4vZnVsbC1zY3JlZW4tZml4ZWQtcG9zLXBhcmVudC5odG1sCmlu
ZGV4IDA1NDUyM2IyZTI5ZDQ3MDkyZGQ5NTQ4MDAwZjZlMzIwNmJiN2MxMDEuLjUyMzc5OGU1YTYw
NTk5NzgxM2UyNTRmOTk4MWQwNGIxYTJjNGQ3MDQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Z1
bGxzY3JlZW4vZnVsbC1zY3JlZW4tZml4ZWQtcG9zLXBhcmVudC5odG1sCisrKyBiL0xheW91dFRl
c3RzL2Z1bGxzY3JlZW4vZnVsbC1zY3JlZW4tZml4ZWQtcG9zLXBhcmVudC5odG1sCkBAIC0yNiw5
ICsyNiw2IEBACiA8L2hlYWQ+CiA8c2NyaXB0IHNyYz0iZnVsbC1zY3JlZW4tdGVzdC5qcyI+PC9z
Y3JpcHQ+CiA8c2NyaXB0PgotICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICB3aW5k
b3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldEZpeGVkUG9zaXRpb25DcmVhdGVzU3RhY2tpbmdDb250
ZXh0KHRydWUpOwotCiAgICAgZnVuY3Rpb24gZG9UZXN0KCkgewogICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpIHsKICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCh0cnVlKTsK
</data>
<flag name="commit-queue"
          id="325387"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
      

    </bug>

</bugzilla>