<?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>216463</bug_id>
          
          <creation_ts>2020-09-13 11:10:33 -0700</creation_ts>
          <short_desc>Overflow:scroll rubberbanding is interrupted by post-layout scrolling</short_desc>
          <delta_ts>2020-10-06 16:59:07 -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>Scrolling</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="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>changseok</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fred.wang</cc>
    
    <cc>glenn</cc>
    
    <cc>jamesr</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>ldebeasi</cc>
    
    <cc>luiz</cc>
    
    <cc>pdr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1688116</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-09-13 11:10:33 -0700</bug_when>
    <thetext>Overflow:scroll rubberbanding is interrupted by post-layout scrolling</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1688122</commentid>
    <comment_count>1</comment_count>
      <attachid>408659</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-09-13 11:21:37 -0700</bug_when>
    <thetext>Created attachment 408659
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1688123</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-09-13 11:21:39 -0700</bug_when>
    <thetext>&lt;rdar://problem/67095741&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1688141</commentid>
    <comment_count>3</comment_count>
      <attachid>408659</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-09-13 13:04:17 -0700</bug_when>
    <thetext>Comment on attachment 408659
Patch

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

&gt; Source/WebCore/ChangeLog:26
&gt; +        I tried to make tests for this, but the timing of wheel and scroll event delivery makes
&gt; +        reliable detection of interrupted rubberbands impossible in WebKitTestRunner.

Bummer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1688142</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-09-13 13:31:03 -0700</bug_when>
    <thetext>Committed r267002: &lt;https://trac.webkit.org/changeset/267002&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 408659.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695393</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-10-06 16:59:07 -0700</bug_when>
    <thetext>*** Bug 209968 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408659</attachid>
            <date>2020-09-13 11:21:37 -0700</date>
            <delta_ts>2020-09-13 13:31:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216463-20200913112136.patch</filename>
            <type>text/plain</type>
            <size>30370</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2ODk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzMwZmM3ZWQ3OWFhMjM5
NDg2YmU2MDZjYzk5YjJlZTdhYTUyYjU5NS4uYzJjYzZmYjI1ODY5NmVlZjY3ODA2MGY2ZjkxNzg5
ZDc5OTIyZDRkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDc0IEBACisyMDIwLTA5LTEzICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIE92ZXJmbG93OnNj
cm9sbCBydWJiZXJiYW5kaW5nIGlzIGludGVycnVwdGVkIGJ5IHBvc3QtbGF5b3V0IHNjcm9sbGlu
ZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2NDYz
CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82NzA5NTc0MT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuIHJ1YmJlcmJhbmRpbmcgb3ZlcmZsb3c6
c2Nyb2xsIFJlbmRlckxheWVyIGhhcyBhbiBvdmVyc2Nyb2xsZWQgc2Nyb2xsIG9mZnNldC4KKyAg
ICAgICAgSWYgUmVuZGVyTGF5ZXI6OnVwZGF0ZVNjcm9sbEluZm9BZnRlckxheW91dCgpIGhhcHBl
bnMgd2hlbiBpbiB0aGlzIHN0YXRlLCBpdCBjYW4gCisgICAgICAgIGNsYW1wIHRoZSBzY3JvbGwg
b2Zmc2V0LCBjYXVzaW5nIHRoZSBydWJiZXJiYW5kIHRvIGNvbGxhcHNlIHdoaWNoIGludGVyZmVy
ZXMgd2l0aAorICAgICAgICB0aGUgdXNlciBpbnRlcmFjdGlvbi4gVGhpcyBoYXBwZW5kIG9uIEdt
YWlsIHdoZW4gY29tcG9zaW5nIGEgcmVwbHkuCisgICAgICAgIAorICAgICAgICBGaXggYnkgdHJh
Y2tpbmcgdGhlIHJ1YmJlcmJhbmRpbmcgc3RhdGUgaW4gdGhlIHNjcm9sbGluZyB0cmVlLCBhbmQg
aGF2aW5nIFJlbmRlckxheWVyCisgICAgICAgIHF1ZXJ5IHRoaXMgc3RhdGUgdmlhIHRoZSBTY3Jv
bGxpbmdDb29yZGluYXRvci4gUmVuZGVyTGF5ZXI6OnVwZGF0ZVNjcm9sbEluZm9BZnRlckxheW91
dCgpCisgICAgICAgIGFscmVhZHkgdGVzdGVkIGlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKS4gVGhp
cyBpcyBzaW1pbGFyIHRvIGhvdyBpc1VzZXJTY3JvbGxJblByb2dyZXNzKCkKKyAgICAgICAgYW5k
IGlzU2Nyb2xsU25hcEluUHJvZ3Jlc3MoKSB3b3JrLgorICAgICAgICAKKyAgICAgICAgVGhpcyBw
YXRjaCBhbHNvIGZpeGVzIHRoZSB0cmFja2luZyBvZiBydWJiZXJiYW5kaW5nIHN0YXRlLiBQcmV2
aW91c2x5IHNldE1haW5GcmFtZUlzUnViYmVyQmFuZGluZygpCisgICAgICAgIHdhcyBqdXN0IGJh
c2VkIG9uIHdoZW4gdGhlIHRpbWVyIHdhcyBzdGFydGVkIGFuZCBzdG9wcGVkLCB3aGljaCBkaWQg
bm90IG1hdGNoIHRoZQorICAgICAgICBpbXBsZW1lbnRhdGlvbiBvZiBTY3JvbGxDb250cm9sbGVy
Ojppc1J1YmJlckJhbmRJblByb2dyZXNzKCkuIE5vdyBTY3JvbGxDb250cm9sbGVyCisgICAgICAg
IGNvcnJlY3RseSBub3RpZmllcyBpdHMgY2xpZW50cyB3aGVuIHRoZSBydWJiZXJiYW5kaW5nIHN0
YXRlIGNoYW5nZXMgYnkgdXBkYXRpbmcgdGhhdAorICAgICAgICBzdGF0ZSB3aGVuZXZlciBhbnkg
b2YgdGhlIGNvbmRpdGlvbnMgY29uc3VsdGVkIGluIGlzUnViYmVyQmFuZEluUHJvZ3Jlc3NJbnRl
cm5hbCgpIGNoYW5nZS4KKworICAgICAgICBJIHRyaWVkIHRvIG1ha2UgdGVzdHMgZm9yIHRoaXMs
IGJ1dCB0aGUgdGltaW5nIG9mIHdoZWVsIGFuZCBzY3JvbGwgZXZlbnQgZGVsaXZlcnkgbWFrZXMK
KyAgICAgICAgcmVsaWFibGUgZGV0ZWN0aW9uIG9mIGludGVycnVwdGVkIHJ1YmJlcmJhbmRzIGlt
cG9zc2libGUgaW4gV2ViS2l0VGVzdFJ1bm5lci4KKworICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmlldzo6aXNSdWJiZXJCYW5kSW5Qcm9ncmVz
cyBjb25zdCk6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGlu
YXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yOjpp
c1J1YmJlckJhbmRJblByb2dyZXNzIGNvbnN0KToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9B
c3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmg6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvU2Ny
b2xsaW5nQ29vcmRpbmF0b3IuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ0Nvb3JkaW5h
dG9yOjppc1J1YmJlckJhbmRJblByb2dyZXNzIGNvbnN0KToKKyAgICAgICAgKiBwYWdlL3Njcm9s
bGluZy9TY3JvbGxpbmdUcmVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWU6
OmlzUnViYmVyQmFuZEluUHJvZ3Jlc3NGb3JOb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9s
bGluZ1RyZWU6OnNldFJ1YmJlckJhbmRpbmdJblByb2dyZXNzRm9yTm9kZSk6CisgICAgICAgIChX
ZWJDb3JlOjpTY3JvbGxpbmdUcmVlOjppc1J1YmJlckJhbmRJblByb2dyZXNzKTogRGVsZXRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWU6OnNldE1haW5GcmFtZUlzUnViYmVyQmFu
ZGluZyk6IERlbGV0ZWQuCisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5o
OgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlOjpjb21taXRT
dGF0ZUJlZm9yZUNoaWxkcmVuKToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9s
bGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OmN1cnJlbnRTY3JvbGxQb3NpdGlvbkNoYW5n
ZWQpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1h
Yzo6dXBkYXRlTWFpbkZyYW1lUGluQW5kUnViYmVyYmFuZFN0YXRlKToKKyAgICAgICAgKiBwYWdl
L3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU1hYy5oOgor
ICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxp
bmdOb2RlTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Ny
b2xsaW5nTm9kZU1hYzo6Y3VycmVudFNjcm9sbFBvc2l0aW9uQ2hhbmdlZCk6CisgICAgICAgICog
cGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGVNYWMu
aDoKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05v
ZGVEZWxlZ2F0ZU1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVTY3JvbGxp
bmdOb2RlRGVsZWdhdGVNYWM6OmN1cnJlbnRTY3JvbGxQb3NpdGlvbkNoYW5nZWQpOgorICAgICAg
ICAoV2ViQ29yZTo6U2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU1hYzo6aXNSdWJi
ZXJCYW5kSW5Qcm9ncmVzcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVl
U2Nyb2xsaW5nTm9kZURlbGVnYXRlTWFjOjpkaWRTdG9wUnViYmVyYmFuZFNuYXBBbmltYXRpb24p
OgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU1h
Yzo6cnViYmVyQmFuZGluZ1N0YXRlQ2hhbmdlZCk6CisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xs
QW5pbWF0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6Om5vdGlmeVBv
c2l0aW9uQ2hhbmdlZCk6CisgICAgICAgICogcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxl
ci5oOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlckNsaWVudDo6cnViYmVyQmFu
ZGluZ1N0YXRlQ2hhbmdlZCk6CisgICAgICAgICogcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJv
bGxlci5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVs
RXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJlckJh
bmRUaW1lckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnNjcm9s
bFBvc2l0aW9uQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpp
c1J1YmJlckJhbmRJblByb2dyZXNzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENv
bnRyb2xsZXI6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbENvbnRyb2xsZXI6OmlzUnViYmVyQmFuZEluUHJvZ3Jlc3NJbnRlcm5hbCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjp1cGRhdGVSdWJiZXJCYW5kaW5nU3Rh
dGUpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6dXBkYXRlR2VzdHVyZUlu
UHJvZ3Jlc3NTdGF0ZSk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjppc1J1YmJlckJhbmRJblByb2dyZXNzIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjp1cGRhdGVTY3JvbGxJbmZvQWZ0ZXJM
YXlvdXQpOgorCiAyMDIwLTA5LTEwICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUu
Y29tPgogCiAgICAgICAgIEFkZHJlc3MgYSBwb3N0LWNvbW1pdCByZXZpZXcgY29tbWVudCBhZnRl
ciByMjY2ODg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDNmMzc1NzAwYzQ5Mzg1OGE5Nzg5OTVhNDU3ZDEyMmU5ZDky
NmE5ZTEuLjgwOThhMjE1MzY2NTJlZmMwM2VkMDY4Y2RmYjNhZTIwNDQxZGNlODUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMzIgQEAKKzIwMjAtMDktMTMgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNl
ckBhcHBsZS5jb20+CisKKyAgICAgICAgT3ZlcmZsb3c6c2Nyb2xsIHJ1YmJlcmJhbmRpbmcgaXMg
aW50ZXJydXB0ZWQgYnkgcG9zdC1sYXlvdXQgc2Nyb2xsaW5nCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTY0NjMKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzY3MDk1NzQxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFdoZW4gcnViYmVyYmFuZGluZyBvdmVyZmxvdzpzY3JvbGwgUmVuZGVyTGF5ZXIgaGFz
IGFuIG92ZXJzY3JvbGxlZCBzY3JvbGwgb2Zmc2V0LgorICAgICAgICBJZiBSZW5kZXJMYXllcjo6
dXBkYXRlU2Nyb2xsSW5mb0FmdGVyTGF5b3V0KCkgaGFwcGVucyB3aGVuIGluIHRoaXMgc3RhdGUs
IGl0IGNhbiAKKyAgICAgICAgY2xhbXAgdGhlIHNjcm9sbCBvZmZzZXQsIGNhdXNpbmcgdGhlIHJ1
YmJlcmJhbmQgdG8gY29sbGFwc2Ugd2hpY2ggaW50ZXJmZXJlcyB3aXRoCisgICAgICAgIHRoZSB1
c2VyIGludGVyYWN0aW9uLiBUaGlzIGhhcHBlbmQgb24gR21haWwgd2hlbiBjb21wb3NpbmcgYSBy
ZXBseS4KKyAgICAgICAgCisgICAgICAgIEZpeCBieSB0cmFja2luZyB0aGUgcnViYmVyYmFuZGlu
ZyBzdGF0ZSBpbiB0aGUgc2Nyb2xsaW5nIHRyZWUsIGFuZCBoYXZpbmcgUmVuZGVyTGF5ZXIKKyAg
ICAgICAgcXVlcnkgdGhpcyBzdGF0ZSB2aWEgdGhlIFNjcm9sbGluZ0Nvb3JkaW5hdG9yLiBSZW5k
ZXJMYXllcjo6dXBkYXRlU2Nyb2xsSW5mb0FmdGVyTGF5b3V0KCkKKyAgICAgICAgYWxyZWFkeSB0
ZXN0ZWQgaXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpLiBUaGlzIGlzIHNpbWlsYXIgdG8gaG93IGlz
VXNlclNjcm9sbEluUHJvZ3Jlc3MoKQorICAgICAgICBhbmQgaXNTY3JvbGxTbmFwSW5Qcm9ncmVz
cygpIHdvcmsuCisgICAgICAgIAorICAgICAgICBUaGlzIHBhdGNoIGFsc28gZml4ZXMgdGhlIHRy
YWNraW5nIG9mIHJ1YmJlcmJhbmRpbmcgc3RhdGUuIFByZXZpb3VzbHkgc2V0TWFpbkZyYW1lSXNS
dWJiZXJCYW5kaW5nKCkKKyAgICAgICAgd2FzIGp1c3QgYmFzZWQgb24gd2hlbiB0aGUgdGltZXIg
d2FzIHN0YXJ0ZWQgYW5kIHN0b3BwZWQsIHdoaWNoIGRpZCBub3QgbWF0Y2ggdGhlCisgICAgICAg
IGltcGxlbWVudGF0aW9uIG9mIFNjcm9sbENvbnRyb2xsZXI6OmlzUnViYmVyQmFuZEluUHJvZ3Jl
c3MoKS4gTm93IFNjcm9sbENvbnRyb2xsZXIKKyAgICAgICAgY29ycmVjdGx5IG5vdGlmaWVzIGl0
cyBjbGllbnRzIHdoZW4gdGhlIHJ1YmJlcmJhbmRpbmcgc3RhdGUgY2hhbmdlcyBieSB1cGRhdGlu
ZyB0aGF0CisgICAgICAgIHN0YXRlIHdoZW5ldmVyIGFueSBvZiB0aGUgY29uZGl0aW9ucyBjb25z
dWx0ZWQgaW4gaXNSdWJiZXJCYW5kSW5Qcm9ncmVzc0ludGVybmFsKCkgY2hhbmdlLgorCisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVTY3JvbGxpbmdD
b29yZGluYXRvci5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXllclRy
ZWUvUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3IubW06CisgICAgICAgIChXZWJLaXQ6OlJlbW90
ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yOjppc1J1YmJlckJhbmRJblByb2dyZXNzIGNvbnN0KToKKyAg
ICAgICAgKFdlYktpdDo6UmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnNjcm9sbGluZ1N0YXRl
SW5VSVByb2Nlc3NDaGFuZ2VkKToKKwogMjAyMC0wOS0xMCAgQmVuIE5oYW0gIDxuaGFtQGFwcGxl
LmNvbT4KIAogICAgICAgICBEaXNhYmxlIGhhcmR3YXJlIEpQRUcgZGVjb2Rpbmcgb24geDg2IE1h
YwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCmluZGV4IGM3NzA0NGEwNTlkZjhjZTljZjZhYTE5
OGRmYTFiYjVjNThjNTEyMDQuLjJkYmIwODA4ODJjNGI3NDRmM2JhOWM5MjA3NmY5YmY4ODNmYWM0
MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKQEAgLTI2MzIsNyArMjYzMiw3IEBAIGJv
b2wgRnJhbWVWaWV3Ojppc1J1YmJlckJhbmRJblByb2dyZXNzKCkgY29uc3QKIAogICAgIGlmIChh
dXRvIHNjcm9sbGluZ0Nvb3JkaW5hdG9yID0gdGhpcy0+c2Nyb2xsaW5nQ29vcmRpbmF0b3IoKSkg
ewogICAgICAgICBpZiAoIXNjcm9sbGluZ0Nvb3JkaW5hdG9yLT5zaG91bGRVcGRhdGVTY3JvbGxM
YXllclBvc2l0aW9uU3luY2hyb25vdXNseSgqdGhpcykpCi0gICAgICAgICAgICByZXR1cm4gc2Ny
b2xsaW5nQ29vcmRpbmF0b3ItPmlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKTsKKyAgICAgICAgICAg
IHJldHVybiBzY3JvbGxpbmdDb29yZGluYXRvci0+aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcyhzY3Jv
bGxpbmdOb2RlSUQoKSk7CiAgICAgfQogCiAgICAgaWYgKGF1dG8gc2Nyb2xsQW5pbWF0b3IgPSBl
eGlzdGluZ1Njcm9sbEFuaW1hdG9yKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwCmluZGV4IGYzNGM3
YTY1ZGI2NTc0NmNhMTZjMzMyNjY1MTA3ODYzMjNmZmY2OGIuLjE2YjAwNmQ4NTY4YTlhNjlhOTQ0
N2Q0MWMxMWI3NDdkNTMwMGFmMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Ny
b2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwCkBAIC04MzksMTAg
KzgzOSwxMCBAQCBib29sIEFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OmlzVXNlclNjcm9sbElu
UHJvZ3Jlc3MoU2Nyb2xsaW5nTm9kZUlEIG5vZGVJRCkgYwogICAgIHJldHVybiBmYWxzZTsKIH0K
IAotYm9vbCBBc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yOjppc1J1YmJlckJhbmRJblByb2dyZXNz
KCkgY29uc3QKK2Jvb2wgQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcjo6aXNSdWJiZXJCYW5kSW5Q
cm9ncmVzcyhTY3JvbGxpbmdOb2RlSUQgbm9kZUlEKSBjb25zdAogewogICAgIGlmIChtX3Njcm9s
bGluZ1RyZWUpCi0gICAgICAgIHJldHVybiBtX3Njcm9sbGluZ1RyZWUtPmlzUnViYmVyQmFuZElu
UHJvZ3Jlc3MoKTsKKyAgICAgICAgcmV0dXJuIG1fc2Nyb2xsaW5nVHJlZS0+aXNSdWJiZXJCYW5k
SW5Qcm9ncmVzc0Zvck5vZGUobm9kZUlEKTsKIAogICAgIHJldHVybiBmYWxzZTsKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRp
bmF0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29v
cmRpbmF0b3IuaAppbmRleCA4ZjdhMzQ3MmMwOGRiYjgwNmViZTFmMzMyMjk2MDRkOGM5YWM4ZTg2
Li45MGQxYzI5ZGMxYjA5OGQ3M2U1YjNmOTI3MGU5ZWU4MjI4ZGUxYTE3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGlu
YXRvci5oCkBAIC0xMjksNyArMTI5LDcgQEAgcHJpdmF0ZToKICAgICBXRUJDT1JFX0VYUE9SVCB2
b2lkIHNjcm9sbEJ5U2ltdWxhdGluZ1doZWVsRXZlbnRGb3JUZXN0aW5nKFNjcm9sbGluZ05vZGVJ
RCwgRmxvYXRTaXplKSBmaW5hbDsKIAogICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgaXNVc2VyU2Ny
b2xsSW5Qcm9ncmVzcyhTY3JvbGxpbmdOb2RlSUQpIGNvbnN0IG92ZXJyaWRlOwotICAgIGJvb2wg
aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgaXNSdWJi
ZXJCYW5kSW5Qcm9ncmVzcyhTY3JvbGxpbmdOb2RlSUQpIGNvbnN0IG92ZXJyaWRlOwogCiAjaWYg
RU5BQkxFKENTU19TQ1JPTExfU05BUCkKICAgICBXRUJDT1JFX0VYUE9SVCBib29sIGlzU2Nyb2xs
U25hcEluUHJvZ3Jlc3MoU2Nyb2xsaW5nTm9kZUlEKSBjb25zdCBvdmVycmlkZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29yZGluYXRvci5oCmlu
ZGV4IDI2MDAxYzQwZTdkMDgwZDllOGFlNGI0MTA3Zjk5MzY2ZjBhYjI1ODkuLjJjNTNlYzA1MTIz
YzIzNWEwMGE2ZmQ3ZDMyMDA0YWU3NjNkMzM4ZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0b3IuaApAQCAtMTcwLDcgKzE3MCw3
IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgcmVjb25jaWxlVmlld3BvcnRDb25zdHJhaW5l
ZExheWVyUG9zaXRpb25zKFNjcm9sbGluZ05vZGVJRCwgY29uc3QgTGF5b3V0UmVjdCYsIFNjcm9s
bGluZ0xheWVyUG9zaXRpb25BY3Rpb24pIHsgfQogICAgIHZpcnR1YWwgU3RyaW5nIHNjcm9sbGlu
Z1N0YXRlVHJlZUFzVGV4dChTY3JvbGxpbmdTdGF0ZVRyZWVBc1RleHRCZWhhdmlvciA9IFNjcm9s
bGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2aW9yTm9ybWFsKSBjb25zdDsKICAgICB2aXJ0dWFsIFN0
cmluZyBzY3JvbGxpbmdUcmVlQXNUZXh0KFNjcm9sbGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2aW9y
ID0gU2Nyb2xsaW5nU3RhdGVUcmVlQXNUZXh0QmVoYXZpb3JOb3JtYWwpIGNvbnN0OwotICAgIHZp
cnR1YWwgYm9vbCBpc1J1YmJlckJhbmRJblByb2dyZXNzKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7
IH0KKyAgICB2aXJ0dWFsIGJvb2wgaXNSdWJiZXJCYW5kSW5Qcm9ncmVzcyhTY3JvbGxpbmdOb2Rl
SUQpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIGlzVXNlclNjcm9s
bEluUHJvZ3Jlc3MoU2Nyb2xsaW5nTm9kZUlEKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAg
IHZpcnR1YWwgYm9vbCBpc1Njcm9sbFNuYXBJblByb2dyZXNzKFNjcm9sbGluZ05vZGVJRCkgY29u
c3QgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlU2Nyb2xsU25hcFBy
b3BlcnRpZXNXaXRoRnJhbWVWaWV3KGNvbnN0IEZyYW1lVmlldyYpIHsgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlLmNwcAppbmRleCA5MTYzYTM0Mzcz
MThmMmU1MDAwYjdhOTI0YzhlMzM5ZWQxYTUxYmRkLi40YzM5NmIxNDg4MTBjYmRjODE1N2RiYTVl
NDc0MDFiZmRjMThjNjg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGlu
Zy9TY3JvbGxpbmdUcmVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9T
Y3JvbGxpbmdUcmVlLmNwcApAQCAtNDY1LDE2ICs0NjUsMjIgQEAgVHJhY2tpbmdUeXBlIFNjcm9s
bGluZ1RyZWU6OmV2ZW50VHJhY2tpbmdUeXBlRm9yUG9pbnQoY29uc3QgQXRvbVN0cmluZyYgZXZl
bnROYW0KIH0KIAogLy8gQ2FuIGJlIGNhbGxlZCBmcm9tIHRoZSBtYWluIHRocmVhZC4KLWJvb2wg
U2Nyb2xsaW5nVHJlZTo6aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpCitib29sIFNjcm9sbGluZ1Ry
ZWU6OmlzUnViYmVyQmFuZEluUHJvZ3Jlc3NGb3JOb2RlKFNjcm9sbGluZ05vZGVJRCBub2RlSUQp
CiB7CisgICAgaWYgKCFub2RlSUQpCisgICAgICAgIHJldHVybiBmYWxzZTsKKwogICAgIExvY2tI
b2xkZXIgbG9jayhtX3RyZWVTdGF0ZU11dGV4KTsKLSAgICByZXR1cm4gbV90cmVlU3RhdGUubWFp
bkZyYW1lSXNSdWJiZXJCYW5kaW5nOworICAgIHJldHVybiBtX3RyZWVTdGF0ZS5ub2Rlc1dpdGhB
Y3RpdmVSdWJiZXJCYW5kaW5nLmNvbnRhaW5zKG5vZGVJRCk7CiB9CiAKLXZvaWQgU2Nyb2xsaW5n
VHJlZTo6c2V0TWFpbkZyYW1lSXNSdWJiZXJCYW5kaW5nKGJvb2wgaXNSdWJiZXJCYW5kaW5nKQor
dm9pZCBTY3JvbGxpbmdUcmVlOjpzZXRSdWJiZXJCYW5kaW5nSW5Qcm9ncmVzc0Zvck5vZGUoU2Ny
b2xsaW5nTm9kZUlEIG5vZGVJRCwgYm9vbCBpc1J1YmJlckJhbmRpbmcpCiB7CiAgICAgTG9ja0hv
bGRlciBsb2NrZXIobV90cmVlU3RhdGVNdXRleCk7Ci0gICAgbV90cmVlU3RhdGUubWFpbkZyYW1l
SXNSdWJiZXJCYW5kaW5nID0gaXNSdWJiZXJCYW5kaW5nOworICAgIGlmIChpc1J1YmJlckJhbmRp
bmcpCisgICAgICAgIG1fdHJlZVN0YXRlLm5vZGVzV2l0aEFjdGl2ZVJ1YmJlckJhbmRpbmcuYWRk
KG5vZGVJRCk7CisgICAgZWxzZQorICAgICAgICBtX3RyZWVTdGF0ZS5ub2Rlc1dpdGhBY3RpdmVS
dWJiZXJCYW5kaW5nLnJlbW92ZShub2RlSUQpOwogfQogCiAvLyBDYW4gYmUgY2FsbGVkIGZyb20g
dGhlIG1haW4gdGhyZWFkLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxp
bmcvU2Nyb2xsaW5nVHJlZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xs
aW5nVHJlZS5oCmluZGV4IGYwMmNjYjIzMWFlOWMyZGI4YzUxNjlmOGU1ZmEzYTQzNThmNWFjNGIu
Ljk2ODBhOTcxODYzMmRmYTM4NmE5YmUwNmY3YjZhOWM1NmVmYWExYzMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlLmgKQEAgLTkyLDggKzkyLDggQEAg
cHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIE9wdGlvblNldDxXaGVlbEV2ZW50UHJvY2Vzc2lu
Z1N0ZXBzPiBkZXRlcm1pbmVXaGVlbEV2ZW50UHJvY2Vzc2luZyhjb25zdCBQbGF0Zm9ybVdoZWVs
RXZlbnQmKTsKICAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIFdoZWVsRXZlbnRIYW5kbGluZ1Jl
c3VsdCBoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOwogCi0gICAg
dm9pZCBzZXRNYWluRnJhbWVJc1J1YmJlckJhbmRpbmcoYm9vbCk7Ci0gICAgYm9vbCBpc1J1YmJl
ckJhbmRJblByb2dyZXNzKCk7CisgICAgYm9vbCBpc1J1YmJlckJhbmRJblByb2dyZXNzRm9yTm9k
ZShTY3JvbGxpbmdOb2RlSUQpOworICAgIHZvaWQgc2V0UnViYmVyQmFuZGluZ0luUHJvZ3Jlc3NG
b3JOb2RlKFNjcm9sbGluZ05vZGVJRCwgYm9vbCk7CiAKICAgICBib29sIGlzVXNlclNjcm9sbElu
UHJvZ3Jlc3NGb3JOb2RlKFNjcm9sbGluZ05vZGVJRCk7CiAgICAgdm9pZCBzZXRVc2VyU2Nyb2xs
SW5Qcm9ncmVzc0Zvck5vZGUoU2Nyb2xsaW5nTm9kZUlELCBib29sKTsKQEAgLTI1Nyw5ICsyNTcs
OSBAQCBwcml2YXRlOgogICAgICAgICBGbG9hdFBvaW50IG1haW5GcmFtZVNjcm9sbFBvc2l0aW9u
OwogICAgICAgICBQbGF0Zm9ybURpc3BsYXlJRCBkaXNwbGF5SUQgeyAwIH07CiAgICAgICAgIE9w
dGlvbmFsPHVuc2lnbmVkPiBub21pbmFsRnJhbWVzUGVyU2Vjb25kOworICAgICAgICBIYXNoU2V0
PFNjcm9sbGluZ05vZGVJRD4gbm9kZXNXaXRoQWN0aXZlUnViYmVyQmFuZGluZzsKICAgICAgICAg
SGFzaFNldDxTY3JvbGxpbmdOb2RlSUQ+IG5vZGVzV2l0aEFjdGl2ZVNjcm9sbFNuYXA7CiAgICAg
ICAgIEhhc2hTZXQ8U2Nyb2xsaW5nTm9kZUlEPiBub2Rlc1dpdGhBY3RpdmVVc2VyU2Nyb2xsczsK
LSAgICAgICAgYm9vbCBtYWluRnJhbWVJc1J1YmJlckJhbmRpbmcgeyBmYWxzZSB9OwogICAgIH07
CiAgICAgCiAgICAgTG9jayBtX3RyZWVTdGF0ZU11dGV4OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUuY3Bw
CmluZGV4IDcxM2I5OTI3MDFkYmFlYzZjMmUyMjNiZjdkNDcwMzA5OTc2OThhMTcuLjdiZTc1ZTJl
M2E4NjkxNWExODk0NmNlZWE2MjMxMmUwYzNkYTI3ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZS5j
cHAKQEAgLTU0LDcgKzU0LDcgQEAgdm9pZCBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZTo6Y29t
bWl0U3RhdGVCZWZvcmVDaGlsZHJlbihjb25zdCBTY3JvbGxpbmdTdGF0ZU4KICAgICAgICAgbV9z
Y3JvbGxhYmxlQXJlYVNpemUgPSBzdGF0ZS5zY3JvbGxhYmxlQXJlYVNpemUoKTsKIAogICAgIGlm
IChzdGF0ZS5oYXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlOjpU
b3RhbENvbnRlbnRzU2l6ZSkpIHsKLSAgICAgICAgaWYgKHNjcm9sbGluZ1RyZWUoKS5pc1J1YmJl
ckJhbmRJblByb2dyZXNzKCkpCisgICAgICAgIGlmIChzY3JvbGxpbmdUcmVlKCkuaXNSdWJiZXJC
YW5kSW5Qcm9ncmVzc0Zvck5vZGUoc2Nyb2xsaW5nTm9kZUlEKCkpKQogICAgICAgICAgICAgbV90
b3RhbENvbnRlbnRzU2l6ZUZvclJ1YmJlckJhbmQgPSBtX3RvdGFsQ29udGVudHNTaXplOwogICAg
ICAgICBlbHNlCiAgICAgICAgICAgICBtX3RvdGFsQ29udGVudHNTaXplRm9yUnViYmVyQmFuZCA9
IHN0YXRlLnRvdGFsQ29udGVudHNTaXplKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5tbSBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3Jv
bGxpbmdOb2RlTWFjLm1tCmluZGV4IGI2ZWNmNGM0ODgwMDM1ZDIxNGQ5ZjNhZDdiNzE0ZDUyYmI1
YjA0YjEuLjNlN2UxNDFiZGExMTdiODA2YjE2MWNmY2FiNGVkZGNiOTQzYmMwNGMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVT
Y3JvbGxpbmdOb2RlTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21h
Yy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLm1tCkBAIC0xNDMsNiArMTQzLDgg
QEAgdm9pZCBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjpjdXJyZW50U2Nyb2xs
UG9zaXRpb25DaGFuZ2VkKFNjcm9sbGluZ0wKIHsKICAgICBMT0dfV0lUSF9TVFJFQU0oU2Nyb2xs
aW5nLCBzdHJlYW0gPDwgIlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OmN1cnJl
bnRTY3JvbGxQb3NpdGlvbkNoYW5nZWQgdG8gIiA8PCBjdXJyZW50U2Nyb2xsUG9zaXRpb24oKSA8
PCAiIG1pbjogIiA8PCBtaW5pbXVtU2Nyb2xsUG9zaXRpb24oKSA8PCAiIG1heDogIiA8PCBtYXhp
bXVtU2Nyb2xsUG9zaXRpb24oKSA8PCAiIHN5bmM6ICIgPDwgaGFzU3luY2hyb25vdXNTY3JvbGxp
bmdSZWFzb25zKCkpOwogCisgICAgbV9kZWxlZ2F0ZS5jdXJyZW50U2Nyb2xsUG9zaXRpb25DaGFu
Z2VkKCk7CisKICAgICBpZiAoaXNSb290Tm9kZSgpKQogICAgICAgICB1cGRhdGVNYWluRnJhbWVQ
aW5BbmRSdWJiZXJiYW5kU3RhdGUoKTsKIApAQCAtMjI0LDkgKzIyNiw3IEBAIEZsb2F0UG9pbnQg
U2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6bWF4aW11bVNjcm9sbFBvc2l0aW9u
KCkgY29uc3QKIHZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6dXBkYXRl
TWFpbkZyYW1lUGluQW5kUnViYmVyYmFuZFN0YXRlKCkKIHsKICAgICBBU1NFUlQoaXNSb290Tm9k
ZSgpKTsKLQogICAgIHNjcm9sbGluZ1RyZWUoKS5zZXRNYWluRnJhbWVQaW5uZWRTdGF0ZShlZGdl
UGlubmVkU3RhdGUoKSk7Ci0gICAgc2Nyb2xsaW5nVHJlZSgpLnNldE1haW5GcmFtZUlzUnViYmVy
QmFuZGluZyhpc1J1YmJlckJhbmRpbmcoKSk7CiB9CiAKIHVuc2lnbmVkIFNjcm9sbGluZ1RyZWVG
cmFtZVNjcm9sbGluZ05vZGVNYWM6OmV4cG9zZWRVbmZpbGxlZEFyZWEoKSBjb25zdApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVPdmVy
Zmxvd1Njcm9sbGluZ05vZGVNYWMuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21h
Yy9TY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTWFjLmgKaW5kZXggNGNmN2ZlNmNm
ZWY4NTY3ZjJjY2NhNjVlMzQwMmZmNGNjZGFmMDUwMi4uYTJjM2U2YTdjZWRlZDc4MDRlZDk1YTM1
MDNkODdkYmE1ZDM3NTk4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxp
bmcvbWFjL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVNYWMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xs
aW5nTm9kZU1hYy5oCkBAIC00Nyw2ICs0Nyw4IEBAIHByb3RlY3RlZDoKICAgICAKICAgICBGbG9h
dFBvaW50IGFkanVzdGVkU2Nyb2xsUG9zaXRpb24oY29uc3QgRmxvYXRQb2ludCYsIFNjcm9sbENs
YW1waW5nKSBjb25zdCBvdmVycmlkZTsKIAorICAgIHZvaWQgY3VycmVudFNjcm9sbFBvc2l0aW9u
Q2hhbmdlZChTY3JvbGxpbmdMYXllclBvc2l0aW9uQWN0aW9uKSBmaW5hbDsKKwogICAgIHZvaWQg
cmVwb3NpdGlvblNjcm9sbGluZ0xheWVycygpIG92ZXJyaWRlOwogICAgIHZvaWQgcmVwb3NpdGlv
blJlbGF0ZWRMYXllcnMoKSBvdmVycmlkZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVNYWMu
bW0gYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZU92ZXJm
bG93U2Nyb2xsaW5nTm9kZU1hYy5tbQppbmRleCA5YmM5YTIzMTU5NzhiODM0ZTU3YzMxYmMxYjgx
NmUxNjE1ZmQyZDYyLi4zZjM0N2QwMjNkM2JmZjVmMDE4ZmI1ZDk2NjdmNDQ2Y2U4YzJhMmU1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJl
ZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Nj
cm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU1hYy5tbQpAQCAt
ODYsNiArODYsMTIgQEAgV2hlZWxFdmVudEhhbmRsaW5nUmVzdWx0IFNjcm9sbGluZ1RyZWVPdmVy
Zmxvd1Njcm9sbGluZ05vZGVNYWM6OmhhbmRsZVdoZWVsRXZlbnQKICAgICByZXR1cm4gV2hlZWxF
dmVudEhhbmRsaW5nUmVzdWx0OjpyZXN1bHQobV9kZWxlZ2F0ZS5oYW5kbGVXaGVlbEV2ZW50KHdo
ZWVsRXZlbnQpKTsKIH0KIAordm9pZCBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2Rl
TWFjOjpjdXJyZW50U2Nyb2xsUG9zaXRpb25DaGFuZ2VkKFNjcm9sbGluZ0xheWVyUG9zaXRpb25B
Y3Rpb24gYWN0aW9uKQoreworICAgIFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGU6
OmN1cnJlbnRTY3JvbGxQb3NpdGlvbkNoYW5nZWQoYWN0aW9uKTsKKyAgICBtX2RlbGVnYXRlLmN1
cnJlbnRTY3JvbGxQb3NpdGlvbkNoYW5nZWQoKTsKK30KKwogRmxvYXRQb2ludCBTY3JvbGxpbmdU
cmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlTWFjOjphZGp1c3RlZFNjcm9sbFBvc2l0aW9uKGNvbnN0
IEZsb2F0UG9pbnQmIHBvc2l0aW9uLCBTY3JvbGxDbGFtcGluZyBjbGFtcCkgY29uc3QKIHsKICAg
ICBGbG9hdFBvaW50IHNjcm9sbFBvc2l0aW9uKHJvdW5kZihwb3NpdGlvbi54KCkpLCByb3VuZGYo
cG9zaXRpb24ueSgpKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGlu
Zy9tYWMvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU1hYy5oIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVsZWdh
dGVNYWMuaAppbmRleCBlYWUwOTNiMWVmYzY0MGM5ODRjYmI1MWI3ZjZlNDk2OWYzMjJmMmFiLi5k
YWU2YTc5Yjc2NzAwZWZlNzE2ZmRlZjc4OWUwMzJmMjU4NjMyNWU5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVE
ZWxlZ2F0ZU1hYy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3Jv
bGxpbmdUcmVlU2Nyb2xsaW5nTm9kZURlbGVnYXRlTWFjLmgKQEAgLTUwLDYgKzUwLDggQEAgcHVi
bGljOgogICAgIHZvaWQgbm9kZVdpbGxCZURlc3Ryb3llZCgpOwogCiAgICAgYm9vbCBoYW5kbGVX
aGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworICAgIAorICAgIHZvaWQgY3Vy
cmVudFNjcm9sbFBvc2l0aW9uQ2hhbmdlZCgpOwogCiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05B
UCkKICAgICB2b2lkIHVwZGF0ZVNjcm9sbFNuYXBQb2ludHMoU2Nyb2xsRXZlbnRBeGlzLCBjb25z
dCBWZWN0b3I8TGF5b3V0VW5pdD4mLCBjb25zdCBWZWN0b3I8U2Nyb2xsT2Zmc2V0UmFuZ2U8TGF5
b3V0VW5pdD4+Jik7CkBAIC01OSw2ICs2MSw4IEBAIHB1YmxpYzoKICAgICBib29sIGlzU2Nyb2xs
U25hcEluUHJvZ3Jlc3MoKSBjb25zdDsKICNlbmRpZgogCisgICAgYm9vbCBpc1J1YmJlckJhbmRJ
blByb2dyZXNzKCkgY29uc3Q7CisKICAgICB2b2lkIHVwZGF0ZUZyb21TdGF0ZU5vZGUoY29uc3Qg
U2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlJik7CiAgICAgdm9pZCB1cGRhdGVTY3JvbGxiYXJQ
YWludGVycygpOwogCkBAIC04MCw2ICs4NCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBpbW1lZGlh
dGVTY3JvbGxCeShjb25zdCBGbG9hdFNpemUmKSBmaW5hbDsKICAgICB2b2lkIGltbWVkaWF0ZVNj
cm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3QgRmxvYXRTaXplJikgZmlu
YWw7CiAgICAgdm9pZCBkaWRTdG9wUnViYmVyYmFuZFNuYXBBbmltYXRpb24oKSBmaW5hbDsKKyAg
ICB2b2lkIHJ1YmJlckJhbmRpbmdTdGF0ZUNoYW5nZWQoYm9vbCkgZmluYWw7CiAgICAgdm9pZCBh
ZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKSBmaW5hbDsKIAogI2lmIEVO
QUJMRShDU1NfU0NST0xMX1NOQVApCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Nj
cm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU1hYy5tbSBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9k
ZURlbGVnYXRlTWFjLm1tCmluZGV4IGE4Y2U2OWFjZmJhY2QwOTQyZWZmNGY5NmE0MzA3MTI0MjA2
NTIzM2EuLmEzZmJjNTlhNDc2OTIyZTViYmMyYjY2NjI0OWY4NDVlZDdiMmI3ZTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlU2Nyb2xs
aW5nTm9kZURlbGVnYXRlTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L21hYy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZURlbGVnYXRlTWFjLm1tCkBAIC0xNjAsNiAr
MTYwLDE2IEBAIGJvb2wgU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU1hYzo6aGFu
ZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsCiAgICAgcmV0dXJuIGhhbmRsZWQ7CiB9
CiAKK3ZvaWQgU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU1hYzo6Y3VycmVudFNj
cm9sbFBvc2l0aW9uQ2hhbmdlZCgpCit7CisgICAgbV9zY3JvbGxDb250cm9sbGVyLnNjcm9sbFBv
c2l0aW9uQ2hhbmdlZCgpOworfQorCitib29sIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVs
ZWdhdGVNYWM6OmlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdAoreworICAgIHJldHVybiBt
X3Njcm9sbENvbnRyb2xsZXIuaXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpOworfQorCiBib29sIFNj
cm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGVNYWM6OmlzU2Nyb2xsU25hcEluUHJvZ3Jl
c3MoKSBjb25zdAogewogICAgIHJldHVybiBtX3Njcm9sbENvbnRyb2xsZXIuaXNTY3JvbGxTbmFw
SW5Qcm9ncmVzcygpOwpAQCAtMzEyLDEyICszMjIsMTUgQEAgdm9pZCBTY3JvbGxpbmdUcmVlU2Ny
b2xsaW5nTm9kZURlbGVnYXRlTWFjOjppbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRn
ZUMKIAogdm9pZCBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZURlbGVnYXRlTWFjOjpkaWRTdG9w
UnViYmVyYmFuZFNuYXBBbmltYXRpb24oKQogewotICAgIHNjcm9sbGluZ1RyZWUoKS5zZXRNYWlu
RnJhbWVJc1J1YmJlckJhbmRpbmcoZmFsc2UpOwotCiAgICAgLy8gU2luY2UgdGhlIHJ1YmJlcmJh
bmQgdGltZXIgaGFzIHN0b3BwZWQsIHRvdGFsQ29udGVudHNTaXplRm9yUnViYmVyQmFuZCBjYW4g
YmUgc3luY2hyb25pemVkIHdpdGggdG90YWxDb250ZW50c1NpemUuCiAgICAgc2Nyb2xsaW5nTm9k
ZSgpLnNldFRvdGFsQ29udGVudHNTaXplRm9yUnViYmVyQmFuZCh0b3RhbENvbnRlbnRzU2l6ZSgp
KTsKIH0KIAordm9pZCBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZURlbGVnYXRlTWFjOjpydWJi
ZXJCYW5kaW5nU3RhdGVDaGFuZ2VkKGJvb2wgaW5SdWJiZXJCYW5kKQoreworICAgIHNjcm9sbGlu
Z1RyZWUoKS5zZXRSdWJiZXJCYW5kaW5nSW5Qcm9ncmVzc0Zvck5vZGUoc2Nyb2xsaW5nTm9kZSgp
LnNjcm9sbGluZ05vZGVJRCgpLCBpblJ1YmJlckJhbmQpOworfQorCiB2b2lkIFNjcm9sbGluZ1Ry
ZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGVNYWM6OmFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJ
Zk5lY2Vzc2FyeSgpCiB7CiAgICAgRmxvYXRQb2ludCBzY3JvbGxQb3NpdGlvbiA9IGN1cnJlbnRT
Y3JvbGxQb3NpdGlvbigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Ny
b2xsQW5pbWF0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3Iu
Y3BwCmluZGV4IDRiZTE2MzFhMWEwODk4ZTNjYzAxMmY3NTI4NDM4ZTEwZmJjMWViNTIuLjVkODY3
NjRmYzdiYTk1NGZhODQ2NzhlYjYyZGQyZWQ1YmZmOWQ4MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxBbmltYXRvci5jcHAKQEAgLTIyMiw2ICsyMjIsMTAgQEAgdm9pZCBTY3Jv
bGxBbmltYXRvcjo6bm90aWZ5UG9zaXRpb25DaGFuZ2VkKGNvbnN0IEZsb2F0U2l6ZSYgZGVsdGEp
CiAgICAgVU5VU0VEX1BBUkFNKGRlbHRhKTsKICAgICAvLyBGSVhNRTogbmVlZCB0byBub3QgbWFw
IGJhY2sgYW5kIGZvcnRoIGFsbCB0aGUgdGltZS4KICAgICBtX3Njcm9sbGFibGVBcmVhLnNldFNj
cm9sbE9mZnNldEZyb21BbmltYXRpb24obV9zY3JvbGxhYmxlQXJlYS5zY3JvbGxPZmZzZXRGcm9t
UG9zaXRpb24ocm91bmRlZEludFBvaW50KGN1cnJlbnRQb3NpdGlvbigpKSkpOworCisjaWYgRU5B
QkxFKENTU19TQ1JPTExfU05BUCkgfHwgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQorICAgIG1fc2Ny
b2xsQ29udHJvbGxlci5zY3JvbGxQb3NpdGlvbkNoYW5nZWQoKTsKKyNlbmRpZgogfQogCiAjaWYg
RU5BQkxFKENTU19TQ1JPTExfU05BUCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nv
Y29hL1Njcm9sbENvbnRyb2xsZXIuaAppbmRleCAwMGIzMjYzMTY4YTFhMmNlMWU3NmE5ZDU5NmY1
ZmNiMmI0ZWIyYmY5Li42OWU2ZjAwZjk0YzAxZGJmZWQyNmUwYjkwOTI5MGMyOTMyZjY2OGE4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVy
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5o
CkBAIC04Myw5ICs4MywxMiBAQCBwdWJsaWM6CiAgICAgLy8gRklYTUU6IHVzZSBTY3JvbGxDbGFt
cGluZyB0byBjb2xsYXBzZSB0aGVzZSB0byBvbmUuCiAgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0
ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgaW1tZWRp
YXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUm
KSA9IDA7CisgICAgCiAgICAgdmlydHVhbCB2b2lkIHdpbGxTdGFydFJ1YmJlckJhbmRTbmFwQW5p
bWF0aW9uKCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGRpZFN0b3BSdWJiZXJiYW5kU25hcEFuaW1h
dGlvbigpIHsgfQotICAgIAorCisgICAgdmlydHVhbCB2b2lkIHJ1YmJlckJhbmRpbmdTdGF0ZUNo
YW5nZWQoYm9vbCkgeyB9CisKICAgICAvLyBJZiB0aGUgY3VycmVudCBzY3JvbGwgcG9zaXRpb24g
aXMgd2l0aGluIHRoZSBvdmVyaGFuZyBhcmVhLCB0aGlzIGZ1bmN0aW9uIHdpbGwgY2F1c2UKICAg
ICAvLyB0aGUgcGFnZSB0byBzY3JvbGwgdG8gdGhlIG5lYXJlc3QgYm91bmRhcnkgcG9pbnQuCiAg
ICAgdmlydHVhbCB2b2lkIGFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgp
ID0gMDsKQEAgLTE0Miw2ICsxNDUsOCBAQCBwdWJsaWM6CiAgICAgYm9vbCBpc1VzZXJTY3JvbGxJ
blByb2dyZXNzKCkgY29uc3Q7CiAgICAgYm9vbCBpc1J1YmJlckJhbmRJblByb2dyZXNzKCkgY29u
c3Q7CiAgICAgYm9vbCBpc1Njcm9sbFNuYXBJblByb2dyZXNzKCkgY29uc3Q7CisgICAgCisgICAg
dm9pZCBzY3JvbGxQb3NpdGlvbkNoYW5nZWQoKTsKIAogI2lmIEVOQUJMRShDU1NfU0NST0xMX1NO
QVApCiAgICAgdm9pZCB1cGRhdGVTY3JvbGxTbmFwUG9pbnRzKFNjcm9sbEV2ZW50QXhpcywgY29u
c3QgVmVjdG9yPExheW91dFVuaXQ+JiwgY29uc3QgVmVjdG9yPFNjcm9sbE9mZnNldFJhbmdlPExh
eW91dFVuaXQ+PiYpOwpAQCAtMTc1LDYgKzE4MCw5IEBAIHByaXZhdGU6CiAKICAgICBib29sIHNo
b3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2
ZW50JikgY29uc3Q7CiAgICAgYm9vbCBzaG91bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24oU2Nyb2xs
RGlyZWN0aW9uKSBjb25zdDsKKworICAgIGJvb2wgaXNSdWJiZXJCYW5kSW5Qcm9ncmVzc0ludGVy
bmFsKCkgY29uc3Q7CisgICAgdm9pZCB1cGRhdGVSdWJiZXJCYW5kaW5nU3RhdGUoKTsKICNlbmRp
ZgogCiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkKQEAgLTIyMyw2ICsyMzEsNyBAQCBwcml2
YXRlOgogICAgIGJvb2wgbV9pblNjcm9sbEdlc3R1cmUgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9t
b21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9pZ25vcmVNb21l
bnR1bVNjcm9sbHMgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc1J1YmJlckJhbmRpbmcgeyBmYWxz
ZSB9OwogI2VuZGlmCiAKICNpZiBBU1NFUlRfRU5BQkxFRApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5tbSBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0KaW5kZXggMDA2ZmUxY2ZjNzgxMDE3
OWNhMTk2YzcxOTJkMTRiY2YxM2VjZjRlMC4uZmNmYzM3ZDlmYjk4NmQ0ZGUxODc1NGIzMWViMzA1
YWVjZDU1NWRiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Ny
b2xsQ29udHJvbGxlci5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3Jv
bGxDb250cm9sbGVyLm1tCkBAIC0xNDgsMTIgKzE0OCwxMyBAQCBib29sIFNjcm9sbENvbnRyb2xs
ZXI6OmhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50
KQogICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEgPSBGbG9hdFNpemUoKTsKIAogICAgICAg
ICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOwotCisgICAgICAgIHVwZGF0ZVJ1YmJlckJhbmRp
bmdTdGF0ZSgpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKICAgICBpZiAod2hlZWxF
dmVudC5waGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsKICAgICAgICAg
c25hcFJ1YmJlckJhbmQoKTsKKyAgICAgICAgdXBkYXRlUnViYmVyQmFuZGluZ1N0YXRlKCk7CiAg
ICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KIApAQCAtMzIxLDYgKzMyMiw4IEBAIGJvb2wgU2Ny
b2xsQ29udHJvbGxlcjo6aGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQm
IHdoZWVsRXZlbnQpCiAgICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0geyB9
OwogICAgIH0KIAorICAgIHVwZGF0ZVJ1YmJlckJhbmRpbmdTdGF0ZSgpOworCiAgICAgcmV0dXJu
IGhhbmRsZWQ7CiB9CiAjZW5kaWYgLy8gUExBVEZPUk0oTUFDKQpAQCAtNDE2LDYgKzQxOSw4IEBA
IHZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCkKICAgICAg
ICAgICAgICAgICBtX3N0YXJ0VGltZSA9IHsgfTsKICAgICAgICAgICAgICAgICBtX3N0YXJ0U3Ry
ZXRjaCA9IHsgfTsKICAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eSA9IHsgfTsKKworICAg
ICAgICAgICAgICAgIHVwZGF0ZVJ1YmJlckJhbmRpbmdTdGF0ZSgpOwogICAgICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgICAgIH0KIApAQCAtNDU2LDEyICs0NjEsMjEgQEAgdm9pZCBTY3Jv
bGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKQogICAgIH0gZWxzZSB7CiAg
ICAgICAgIG1fc3RhcnRUaW1lID0gTW9ub3RvbmljVGltZTo6bm93KCk7CiAgICAgICAgIG1fc3Rh
cnRTdHJldGNoID0geyB9OwotICAgICAgICBpZiAoIWlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKSkK
KyAgICAgICAgaWYgKCFpc1J1YmJlckJhbmRJblByb2dyZXNzSW50ZXJuYWwoKSkKICAgICAgICAg
ICAgIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CiAgICAgfQorCisgICAgdXBkYXRlUnViYmVy
QmFuZGluZ1N0YXRlKCk7CiB9CiAjZW5kaWYKIAordm9pZCBTY3JvbGxDb250cm9sbGVyOjpzY3Jv
bGxQb3NpdGlvbkNoYW5nZWQoKQoreworI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKKyAgICB1
cGRhdGVSdWJiZXJCYW5kaW5nU3RhdGUoKTsKKyNlbmRpZgorfQorCiBib29sIFNjcm9sbENvbnRy
b2xsZXI6OnVzZXNTY3JvbGxTbmFwKCkgY29uc3QKIHsKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9T
TkFQKQpAQCAtNDgzLDEwICs0OTcsNyBAQCBib29sIFNjcm9sbENvbnRyb2xsZXI6OmlzVXNlclNj
cm9sbEluUHJvZ3Jlc3MoKSBjb25zdAogYm9vbCBTY3JvbGxDb250cm9sbGVyOjppc1J1YmJlckJh
bmRJblByb2dyZXNzKCkgY29uc3QKIHsKICNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpICYmIFBM
QVRGT1JNKE1BQykKLSAgICBpZiAoIW1faW5TY3JvbGxHZXN0dXJlICYmICFtX21vbWVudHVtU2Ny
b2xsSW5Qcm9ncmVzcyAmJiAhbV9zbmFwUnViYmVyYmFuZFRpbWVyKQotICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0KLSAgICByZXR1cm4gIW1fY2xpZW50LnN0cmV0Y2hBbW91bnQoKS5pc1plcm8oKTsK
KyAgICByZXR1cm4gbV9pc1J1YmJlckJhbmRpbmc7CiAjZWxzZQogICAgIHJldHVybiBmYWxzZTsK
ICNlbmRpZgpAQCAtNTIxLDEyICs1MzIsMTIgQEAgdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdGFy
dFNuYXBSdWJiZXJiYW5kVGltZXIoKQogdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdG9wU25hcFJ1
YmJlcmJhbmRUaW1lcigpCiB7CiAgICAgbV9jbGllbnQuZGlkU3RvcFJ1YmJlcmJhbmRTbmFwQW5p
bWF0aW9uKCk7Ci0gICAgCisKICAgICBpZiAobV9zbmFwUnViYmVyYmFuZFRpbWVyKSB7CiAgICAg
ICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lci0+c3RvcCgpOwogICAgICAgICBtX3NuYXBSdWJiZXJi
YW5kVGltZXIgPSBudWxscHRyOwogICAgIH0KLSAgICAKKwogICAgIG1fY2xpZW50LnJlbW92ZVdo
ZWVsRXZlbnRUZXN0Q29tcGxldGlvbkRlZmVycmFsRm9yUmVhc29uKHJlaW50ZXJwcmV0X2Nhc3Q8
V2hlZWxFdmVudFRlc3RNb25pdG9yOjpTY3JvbGxhYmxlQXJlYUlkZW50aWZpZXI+KHRoaXMpLCBX
aGVlbEV2ZW50VGVzdE1vbml0b3I6OlJ1YmJlcmJhbmRJblByb2dyZXNzKTsKIH0KIApAQCAtNTYw
LDYgKzU3MSwyNCBAQCBib29sIFNjcm9sbENvbnRyb2xsZXI6OnNob3VsZFJ1YmJlckJhbmRJbkRp
cmVjdGlvbihTY3JvbGxEaXJlY3Rpb24gZGlyZWN0aW9uKSBjbwogICAgIHJldHVybiBtX2NsaWVu
dC5zaG91bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24oZGlyZWN0aW9uKTsKIH0KIAorYm9vbCBTY3Jv
bGxDb250cm9sbGVyOjppc1J1YmJlckJhbmRJblByb2dyZXNzSW50ZXJuYWwoKSBjb25zdAorewor
ICAgIGlmICghbV9pblNjcm9sbEdlc3R1cmUgJiYgIW1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNz
ICYmICFtX3NuYXBSdWJiZXJiYW5kVGltZXIpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAg
IHJldHVybiAhbV9jbGllbnQuc3RyZXRjaEFtb3VudCgpLmlzWmVybygpOworfQorCit2b2lkIFNj
cm9sbENvbnRyb2xsZXI6OnVwZGF0ZVJ1YmJlckJhbmRpbmdTdGF0ZSgpCit7CisgICAgYm9vbCBp
c1J1YmJlckJhbmRpbmcgPSBpc1J1YmJlckJhbmRJblByb2dyZXNzSW50ZXJuYWwoKTsKKyAgICBp
ZiAoaXNSdWJiZXJCYW5kaW5nID09IG1faXNSdWJiZXJCYW5kaW5nKQorICAgICAgICByZXR1cm47
CisgICAgCisgICAgbV9pc1J1YmJlckJhbmRpbmcgPSBpc1J1YmJlckJhbmRpbmc7CisgICAgbV9j
bGllbnQucnViYmVyQmFuZGluZ1N0YXRlQ2hhbmdlZChtX2lzUnViYmVyQmFuZGluZyk7Cit9CisK
ICNlbmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCiAKICNpZiBFTkFCTEUoQ1NTX1NDUk9M
TF9TTkFQKQpAQCAtNzIxLDYgKzc1MCw4IEBAIHZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6dXBkYXRl
R2VzdHVyZUluUHJvZ3Jlc3NTdGF0ZShjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoCiAgICAg
ICAgIG1faW5TY3JvbGxHZXN0dXJlID0gdHJ1ZTsKICAgICBlbHNlIGlmICh3aGVlbEV2ZW50Lmlz
RW5kT2ZOb25Nb21lbnR1bVNjcm9sbCgpIHx8IHdoZWVsRXZlbnQuaXNHZXN0dXJlQ2FuY2VsKCkg
fHwgd2hlZWxFdmVudC5pc0VuZE9mTW9tZW50dW1TY3JvbGwoKSkKICAgICAgICAgbV9pblNjcm9s
bEdlc3R1cmUgPSBmYWxzZTsKKworICAgIHVwZGF0ZVJ1YmJlckJhbmRpbmdTdGF0ZSgpOwogfQog
CiB2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0YXJ0U2Nyb2xsU25hcFRpbWVyKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IGI3YjYxNDM0NmI2N2E3ZGQ4YTI4
YzJjOWJlMzk1MWJiYmE5ZDMwMTAuLjYyOWM0MjQxYjFkYjE1ZTA0YzNhN2Y4OGQ4YjkxNGRlNjlk
NDQ3NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcApAQCAtMTkw
OSw2ICsxOTA5LDExIEBAIGJvb2wgUmVuZGVyTGF5ZXI6OmlzUnViYmVyQmFuZEluUHJvZ3Jlc3Mo
KSBjb25zdAogICAgIGlmICghc2Nyb2xsc092ZXJmbG93KCkpCiAgICAgICAgIHJldHVybiBmYWxz
ZTsKIAorICAgIGlmIChhdXRvIHNjcm9sbGluZ0Nvb3JkaW5hdG9yID0gcGFnZSgpLnNjcm9sbGlu
Z0Nvb3JkaW5hdG9yKCkpIHsKKyAgICAgICAgaWYgKHNjcm9sbGluZ0Nvb3JkaW5hdG9yLT5pc1J1
YmJlckJhbmRJblByb2dyZXNzKHNjcm9sbGluZ05vZGVJRCgpKSkKKyAgICAgICAgICAgIHJldHVy
biB0cnVlOworICAgIH0KKwogICAgIGlmIChhdXRvIHNjcm9sbEFuaW1hdG9yID0gZXhpc3RpbmdT
Y3JvbGxBbmltYXRvcigpKQogICAgICAgICByZXR1cm4gc2Nyb2xsQW5pbWF0b3ItPmlzUnViYmVy
QmFuZEluUHJvZ3Jlc3MoKTsKICNlbmRpZgpAQCAtMzkxMyw3ICszOTE4LDcgQEAgdm9pZCBSZW5k
ZXJMYXllcjo6dXBkYXRlU2Nyb2xsSW5mb0FmdGVyTGF5b3V0KCkKICAgICB1cGRhdGVTbmFwT2Zm
c2V0cygpOwogI2VuZGlmCiAKLSAgICBpZiAoIWJveC0+aXNIVE1MTWFycXVlZSgpICYmICFpc1J1
YmJlckJhbmRJblByb2dyZXNzKCkpIHsKKyAgICBpZiAoIWJveC0+aXNIVE1MTWFycXVlZSgpICYm
ICFpc1J1YmJlckJhbmRJblByb2dyZXNzKCkgJiYgIWlzVXNlclNjcm9sbEluUHJvZ3Jlc3MoKSkg
ewogICAgICAgICAvLyBMYXlvdXQgbWF5IGNhdXNlIHVzIHRvIGJlIGF0IGFuIGludmFsaWQgc2Ny
b2xsIHBvc2l0aW9uLiBJbiB0aGlzIGNhc2Ugd2UgbmVlZAogICAgICAgICAvLyB0byBwdWxsIG91
ciBzY3JvbGwgb2Zmc2V0cyBiYWNrIHRvIHRoZSBtYXggKG9yIHB1c2ggdGhlbSB1cCB0byB0aGUg
bWluKS4KICAgICAgICAgU2Nyb2xsT2Zmc2V0IGNsYW1wZWRTY3JvbGxPZmZzZXQgPSBjbGFtcFNj
cm9sbE9mZnNldChzY3JvbGxPZmZzZXQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXllclRyZWUvUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0
b3IuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9S
ZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvci5oCmluZGV4IDAyMTQ2ODFhZmM2YmZlNWRmMTQ4OTAw
YTlhYzRkOTNiMzM2ZGJmN2IuLmM3ZWExNzMxZjFkMTM4ZTFmOTkwNjU0YWM5ODdlYjFmNDAzMWMw
ODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxh
eWVyVHJlZS9SZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvci5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVTY3JvbGxpbmdDb29yZGlu
YXRvci5oCkBAIC02NSw4ICs2NSw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBjb29yZGluYXRlc1Nj
cm9sbGluZ0ZvckZyYW1lVmlldyhjb25zdCBXZWJDb3JlOjpGcmFtZVZpZXcmKSBjb25zdCBvdmVy
cmlkZTsKICAgICB2b2lkIHNjaGVkdWxlVHJlZVN0YXRlQ29tbWl0KCkgb3ZlcnJpZGU7CiAKLSAg
ICBib29sIGlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdCBvdmVycmlkZTsKLQorICAgIGJv
b2wgaXNSdWJiZXJCYW5kSW5Qcm9ncmVzcyhXZWJDb3JlOjpTY3JvbGxpbmdOb2RlSUQpIGNvbnN0
IGZpbmFsOwogICAgIGJvb2wgaXNVc2VyU2Nyb2xsSW5Qcm9ncmVzcyhXZWJDb3JlOjpTY3JvbGxp
bmdOb2RlSUQpIGNvbnN0IGZpbmFsOwogI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApCiAgICAg
Ym9vbCBpc1Njcm9sbFNuYXBJblByb2dyZXNzKFdlYkNvcmU6OlNjcm9sbGluZ05vZGVJRCkgY29u
c3QgZmluYWw7CkBAIC04Myw2ICs4Miw3IEBAIHByaXZhdGU6CiAKICAgICBXZWJQYWdlKiBtX3dl
YlBhZ2U7CiAKKyAgICBIYXNoU2V0PFdlYkNvcmU6OlNjcm9sbGluZ05vZGVJRD4gbV9ub2Rlc1dp
dGhBY3RpdmVSdWJiZXJCYW5kaW5nOwogICAgIEhhc2hTZXQ8V2ViQ29yZTo6U2Nyb2xsaW5nTm9k
ZUlEPiBtX25vZGVzV2l0aEFjdGl2ZVNjcm9sbFNuYXA7CiAgICAgSGFzaFNldDxXZWJDb3JlOjpT
Y3JvbGxpbmdOb2RlSUQ+IG1fbm9kZXNXaXRoQWN0aXZlVXNlclNjcm9sbHM7CiB9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJUcmVlL1Jl
bW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yLm1tCmluZGV4
IDMwZjk4Y2MyODEyYTk5MzNjMmVmODFkZTI0ZGQ2YmI0N2RkM2ZjYTAuLmExMGNkN2JiOTYzNTA4
MzUwNjEzY2Y2YzhkZDgzYzE5MjliNzYyNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVTY3JvbGxpbmdDb29yZGluYXRv
ci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXllclRy
ZWUvUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3IubW0KQEAgLTcyLDEwICs3Miw5IEBAIGJvb2wg
UmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OmNvb3JkaW5hdGVzU2Nyb2xsaW5nRm9yRnJhbWVW
aWV3KGNvbnN0IEZyYW1lVmllCiAgICAgcmV0dXJuIHJlbmRlclZpZXcgJiYgcmVuZGVyVmlldy0+
dXNlc0NvbXBvc2l0aW5nKCk7CiB9CiAKLWJvb2wgUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3I6
OmlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdAorYm9vbCBSZW1vdGVTY3JvbGxpbmdDb29y
ZGluYXRvcjo6aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcyhTY3JvbGxpbmdOb2RlSUQgbm9kZUlEKSBj
b25zdAogewotICAgIC8vIEZJWE1FOiBuZWVkIHRvIG1haW50YWluIHN0YXRlIGluIHRoZSB3ZWIg
cHJvY2Vzcz8KLSAgICByZXR1cm4gZmFsc2U7CisgICAgcmV0dXJuIG1fbm9kZXNXaXRoQWN0aXZl
UnViYmVyQmFuZGluZy5jb250YWlucyhub2RlSUQpOwogfQogCiBib29sIFJlbW90ZVNjcm9sbGlu
Z0Nvb3JkaW5hdG9yOjppc1VzZXJTY3JvbGxJblByb2dyZXNzKFNjcm9sbGluZ05vZGVJRCBub2Rl
SUQpIGNvbnN0CkBAIC0xMTIsNiArMTExLDcgQEAgdm9pZCBSZW1vdGVTY3JvbGxpbmdDb29yZGlu
YXRvcjo6Y3VycmVudFNuYXBQb2ludEluZGljZXNDaGFuZ2VkRm9yTm9kZShTY3JvbGxpbmcKIAog
dm9pZCBSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvcjo6c2Nyb2xsaW5nU3RhdGVJblVJUHJvY2Vz
c0NoYW5nZWQoY29uc3QgUmVtb3RlU2Nyb2xsaW5nVUlTdGF0ZSYgdWlTdGF0ZSkKIHsKKyAgICAv
LyBGSVhNRTogQWxzbyB0cmFjayBtX25vZGVzV2l0aEFjdGl2ZVJ1YmJlckJhbmRpbmcuCiAgICAg
aWYgKHVpU3RhdGUuY2hhbmdlcygpLmNvbnRhaW5zKFJlbW90ZVNjcm9sbGluZ1VJU3RhdGU6OkNo
YW5nZXM6OlNjcm9sbFNuYXBOb2RlcykpCiAgICAgICAgIG1fbm9kZXNXaXRoQWN0aXZlU2Nyb2xs
U25hcCA9IHVpU3RhdGUubm9kZXNXaXRoQWN0aXZlU2Nyb2xsU25hcCgpOwogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>