<?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>231412</bug_id>
          
          <creation_ts>2021-10-07 21:52:20 -0700</creation_ts>
          <short_desc>Plumb &quot;animated scroll did end&quot; back from the scrolling tree</short_desc>
          <delta_ts>2021-10-07 23:46:16 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fred.wang</cc>
    
    <cc>jamesr</cc>
    
    <cc>luiz</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1801927</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-10-07 21:52:20 -0700</bug_when>
    <thetext>Plumb &quot;animated scroll did end&quot; back from the scrolling tree</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801929</commentid>
    <comment_count>1</comment_count>
      <attachid>440572</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-10-07 21:58:02 -0700</bug_when>
    <thetext>Created attachment 440572
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801946</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-10-07 23:45:42 -0700</bug_when>
    <thetext>Committed r283793 (242686@main): &lt;https://commits.webkit.org/242686@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 440572.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801947</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-10-07 23:46:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/84015827&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440572</attachid>
            <date>2021-10-07 21:58:02 -0700</date>
            <delta_ts>2021-10-07 23:45:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231412-20211007215801.patch</filename>
            <type>text/plain</type>
            <size>28841</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNzkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmRlMGQ5NzA3ZTMzNzI2
NWY2YmMwZmJjMTE4YWU1MTljNGQ0NWZiOS4uNjcxNmE5ZDVmNTk1NDViNWE1Y2FmYjZjOWFlMTRk
MDc2NTIyZWI3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDIxLTEwLTA3ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFBsdW1iICJhbmlt
YXRlZCBzY3JvbGwgZGlkIGVuZCIgYmFjayBmcm9tIHRoZSBzY3JvbGxpbmcgdHJlZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxNDEyCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQmVmb3JlIHdlIGNhbiBl
bmFibGUgYXN5bmMgYW5pbWF0ZWQgc2Nyb2xscywgd2UgaGF2ZSB0byBnZXQgdGhlICJkaWQgZW5k
IiBub3RpZmljYXRpb24gYmFjaworICAgICAgICBmcm9tIHRoZSBzY3JvbGxpbmcgdGhyZWFkL1VJ
IHByb2Nlc3MgaW4gb3JkZXIgdG8gY2xlYXIgdGhlIFNjcm9sbEFuaW1hdGlvblN0YXR1cyBvbgor
ICAgICAgICBTY3JvbGxhYmxlQXJlYS4KKworICAgICAgICBUaGUgc2Nyb2xsIGFuaW1hdGlvbnMg
YXJlIHJ1biBieSB0aGUgU2Nyb2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIgb3duZWQgYnkKKyAgICAg
ICAgU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU1hYy9TY3JvbGxpbmdUcmVlU2Ny
b2xsaW5nTm9kZURlbGVnYXRlTmljb3NpYS4gVGhlaXIKKyAgICAgICAgZGlkU3RvcEFuaW1hdGVk
U2Nyb2xsKCkgaW1wbGVtZW50YXRpb25zIGNhbGwgdGhyb3VnaCB0aGUgU2Nyb2xsaW5nVHJlZVNj
cm9sbGluZ05kZSB0byB0aGUKKyAgICAgICAgU2Nyb2xsaW5nVHJlZSwgd2hpY2ggZW5xdWV1ZXMg
U2Nyb2xsVXBkYXRlIGp1c3QgYXMgd2UgZG8gZm9yIHNjcm9sbCBwb3NpdGlvbiBjaGFuZ2VzLgor
CisgICAgICAgIFNjcm9sbFVwZGF0ZSBpcyBlbmhhbmNlZCB0byBjb250YWluIGFuICd1cGRhdGVU
eXBlJyB3aXRoIGEgQW5pbWF0ZWRTY3JvbGxEaWRFbmQgdmFsdWUuIFdoZW4KKyAgICAgICAgdGhp
cyBpcyByZWNlaXZlZCBieSBBc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yIGl0IGNsZWFycyB0aGUg
U2Nyb2xsQW5pbWF0aW9uU3RhdHVzIG9uIHRoZQorICAgICAgICByZWxldmFudCBGcmFtZVZpZXcv
UmVuZGVyTGF5ZXJTY3JvbGxhYmxlQXJlYS4KKworICAgICAgICBXaXRoIFVJLXNpZGUgY29tcG9z
aXRpbmcsIEFuaW1hdGVkU2Nyb2xsRGlkRW5kRm9yTm9kZSBpcyBhbiBJUEMgbWVzc2FnZSBiYWNr
IHRvCisgICAgICAgIFJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yLgorCisgICAgICAgIE5vdCB5
ZXQgdGVzdGVkIGJlY2F1c2UgYXN5bmMgYW5pbWF0ZWQgc2Nyb2xscyBhcmUgbm90IGVuYWJsZWQu
CisKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnJlcXVlc3RT
Y3JvbGxQb3NpdGlvblVwZGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpBc3luY1Njcm9sbGluZ0Nv
b3JkaW5hdG9yOjphcHBseVNjcm9sbFBvc2l0aW9uVXBkYXRlKToKKyAgICAgICAgKFdlYkNvcmU6
OkFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OmFuaW1hdGVkU2Nyb2xsRGlkRW5kRm9yTm9kZSk6
CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5oOgor
ICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ0Nvb3JkaW5hdG9yVHlwZXMuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbFVwZGF0ZTo6Y2FuTWVyZ2UgY29uc3QpOgorICAgICAgICAq
IHBhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9s
bGluZ1RyZWU6OnNjcm9sbGluZ1RyZWVOb2RlRGlkU3RvcEFuaW1hdGVkU2Nyb2xsKToKKyAgICAg
ICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZTo6ZGlkU3RvcEFuaW1hdGVk
U2Nyb2xsKToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9UaHJlYWRlZFNjcm9sbGluZ1RyZWUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFkZWRTY3JvbGxpbmdUcmVlOjpzY3JvbGxpbmdU
cmVlTm9kZURpZFNjcm9sbCk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRlZFNjcm9sbGluZ1Ry
ZWU6OnNjcm9sbGluZ1RyZWVOb2RlRGlkU3RvcEFuaW1hdGVkU2Nyb2xsKToKKyAgICAgICAgKiBw
YWdlL3Njcm9sbGluZy9UaHJlYWRlZFNjcm9sbGluZ1RyZWUuaDoKKyAgICAgICAgKiBwYWdlL3Nj
cm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU1hYy5oOgorICAg
ICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZURlbGVn
YXRlTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVE
ZWxlZ2F0ZU1hYzo6ZGlkU3RvcEFuaW1hdGVkU2Nyb2xsKToKKyAgICAgICAgKiBwYWdlL3Njcm9s
bGluZy9uaWNvc2lhL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGVOaWNvc2lhLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGVO
aWNvc2lhOjpkaWRTdG9wQW5pbWF0ZWRTY3JvbGwpOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5n
L25pY29zaWEvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU5pY29zaWEuaDoKKwog
MjAyMS0xMC0wNyAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAg
ICAgICBBZGQgc29tZSBwbHVtYmluZyBmb3IgcnVubmluZyBzbW9vdGggc2Nyb2xsIGFuaW1hdGlv
bnMgaW4gdGhlIHNjcm9sbGluZyB0aHJlYWQvVUkgcHJvY2VzcwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA5ODlhYWNm
NDUwMDBiNzM3ZWUzZjc3NWU4MDFkYmQ1M2FiYzA4YWVhLi4zYjkwOWUxZTUyYTc3MTYwMjE1NTQx
MDA3ZGNkY2FkNWMzMzYzMTYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIxLTEwLTA3
ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFBsdW1i
ICJhbmltYXRlZCBzY3JvbGwgZGlkIGVuZCIgYmFjayBmcm9tIHRoZSBzY3JvbGxpbmcgdHJlZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxNDEyCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQmVmb3JlIHdl
IGNhbiBlbmFibGUgYXN5bmMgYW5pbWF0ZWQgc2Nyb2xscywgd2UgaGF2ZSB0byBnZXQgdGhlICJk
aWQgZW5kIiBub3RpZmljYXRpb24gYmFjaworICAgICAgICBmcm9tIHRoZSBzY3JvbGxpbmcgdGhy
ZWFkL1VJIHByb2Nlc3MgaW4gb3JkZXIgdG8gY2xlYXIgdGhlIFNjcm9sbEFuaW1hdGlvblN0YXR1
cyBvbgorICAgICAgICBTY3JvbGxhYmxlQXJlYS4KKworICAgICAgICBUaGUgc2Nyb2xsIGFuaW1h
dGlvbnMgYXJlIHJ1biBieSB0aGUgU2Nyb2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIgb3duZWQgYnkK
KyAgICAgICAgU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU1hYy9TY3JvbGxpbmdU
cmVlU2Nyb2xsaW5nTm9kZURlbGVnYXRlTmljb3NpYS4gVGhlaXIKKyAgICAgICAgZGlkU3RvcEFu
aW1hdGVkU2Nyb2xsKCkgaW1wbGVtZW50YXRpb25zIGNhbGwgdGhyb3VnaCB0aGUgU2Nyb2xsaW5n
VHJlZVNjcm9sbGluZ05kZSB0byB0aGUKKyAgICAgICAgU2Nyb2xsaW5nVHJlZSwgd2hpY2ggZW5x
dWV1ZXMgU2Nyb2xsVXBkYXRlIGp1c3QgYXMgd2UgZG8gZm9yIHNjcm9sbCBwb3NpdGlvbiBjaGFu
Z2VzLgorCisgICAgICAgIFNjcm9sbFVwZGF0ZSBpcyBlbmhhbmNlZCB0byBjb250YWluIGFuICd1
cGRhdGVUeXBlJyB3aXRoIGEgQW5pbWF0ZWRTY3JvbGxEaWRFbmQgdmFsdWUuIFdoZW4KKyAgICAg
ICAgdGhpcyBpcyByZWNlaXZlZCBieSBBc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yIGl0IGNsZWFy
cyB0aGUgU2Nyb2xsQW5pbWF0aW9uU3RhdHVzIG9uIHRoZQorICAgICAgICByZWxldmFudCBGcmFt
ZVZpZXcvUmVuZGVyTGF5ZXJTY3JvbGxhYmxlQXJlYS4KKworICAgICAgICBXaXRoIFVJLXNpZGUg
Y29tcG9zaXRpbmcsIEFuaW1hdGVkU2Nyb2xsRGlkRW5kRm9yTm9kZSBpcyBhbiBJUEMgbWVzc2Fn
ZSBiYWNrIHRvCisgICAgICAgIFJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yLgorCisgICAgICAg
IE5vdCB5ZXQgdGVzdGVkIGJlY2F1c2UgYXN5bmMgYW5pbWF0ZWQgc2Nyb2xscyBhcmUgbm90IGVu
YWJsZWQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZVNjcm9s
bGluZ0Nvb3JkaW5hdG9yUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVTY3JvbGxp
bmdDb29yZGluYXRvclByb3h5OjpzY3JvbGxpbmdUcmVlTm9kZURpZFN0b3BBbmltYXRlZFNjcm9s
bCk6CisgICAgICAgICogVUlQcm9jZXNzL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVTY3JvbGxpbmdD
b29yZGluYXRvclByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1JlbW90ZUxheWVyVHJlZS9S
ZW1vdGVTY3JvbGxpbmdUcmVlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlU2Nyb2xsaW5n
VHJlZTo6c2Nyb2xsaW5nVHJlZU5vZGVEaWRTdG9wQW5pbWF0ZWRTY3JvbGwpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9SZW1vdGVMYXllclRyZWUvUmVtb3RlU2Nyb2xsaW5nVHJlZS5oOgorICAgICAg
ICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXllclRyZWUvUmVtb3RlU2Nyb2xsaW5nQ29v
cmRpbmF0b3IuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJUcmVl
L1JlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yLm1lc3NhZ2VzLmluOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXllclRyZWUvUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3Iu
bW06CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yOjpzY3JvbGxQ
b3NpdGlvbkNoYW5nZWRGb3JOb2RlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlU2Nyb2xsaW5n
Q29vcmRpbmF0b3I6OmFuaW1hdGVkU2Nyb2xsRGlkRW5kRm9yTm9kZSk6CisKIDIwMjEtMTAtMDcg
IFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIHNv
bWUgcGx1bWJpbmcgZm9yIHJ1bm5pbmcgc21vb3RoIHNjcm9sbCBhbmltYXRpb25zIGluIHRoZSBz
Y3JvbGxpbmcgdGhyZWFkL1VJIHByb2Nlc3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5jcHAKaW5kZXggM2Q2
MzRiZTZkNzBjYWI0NjA4MmIxZTYwYjk5OTMwMDQ5OGQzYzRiMC4uZWFjZDk0MTA2NzQ0Yzg2MTBm
MmIzNmYzYWExM2RlY2Y4NmRiZGEzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9z
Y3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5jcHAKQEAgLTI2MCw3
ICsyNjAsNyBAQCBib29sIEFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnJlcXVlc3RTY3JvbGxQ
b3NpdGlvblVwZGF0ZShTY3JvbGxhYmxlQXJlYSYgc2NybwogICAgIGJvb2wgaXNTbmFwc2hvdHRp
bmcgPSBtX3BhZ2UtPmlzVGFraW5nU25hcHNob3RzRm9yQXBwbGljYXRpb25TdXNwZW5zaW9uKCk7
CiAgICAgYm9vbCBpblByb2dyYW1tYXRpY1Njcm9sbCA9IHNjcm9sbGFibGVBcmVhLmN1cnJlbnRT
Y3JvbGxUeXBlKCkgPT0gU2Nyb2xsVHlwZTo6UHJvZ3JhbW1hdGljOwogICAgIGlmIChpblByb2dy
YW1tYXRpY1Njcm9sbCB8fCBpbkJhY2tGb3J3YXJkQ2FjaGUpIHsKLSAgICAgICAgYXV0byBzY3Jv
bGxVcGRhdGUgPSBTY3JvbGxVcGRhdGUgeyBzY3JvbGxpbmdOb2RlSUQsIHNjcm9sbFBvc2l0aW9u
LCB7IH0sIFNjcm9sbGluZ0xheWVyUG9zaXRpb25BY3Rpb246OlNldCB9OworICAgICAgICBhdXRv
IHNjcm9sbFVwZGF0ZSA9IFNjcm9sbFVwZGF0ZSB7IHNjcm9sbGluZ05vZGVJRCwgc2Nyb2xsUG9z
aXRpb24sIHsgfSwgU2Nyb2xsVXBkYXRlVHlwZTo6UG9zaXRpb25VcGRhdGUsIFNjcm9sbGluZ0xh
eWVyUG9zaXRpb25BY3Rpb246OlNldCB9OwogICAgICAgICBhcHBseVNjcm9sbFVwZGF0ZShXVEZN
b3ZlKHNjcm9sbFVwZGF0ZSksIFNjcm9sbFR5cGU6OlByb2dyYW1tYXRpYyk7CiAgICAgfQogCkBA
IC0zNjcsOSArMzY3LDM2IEBAIHZvaWQgQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcjo6YXBwbHlT
Y3JvbGxVcGRhdGUoU2Nyb2xsVXBkYXRlJiYgdXBkYXRlLCBTY3JvbGxUCiAKIHZvaWQgQXN5bmNT
Y3JvbGxpbmdDb29yZGluYXRvcjo6YXBwbHlTY3JvbGxQb3NpdGlvblVwZGF0ZShTY3JvbGxVcGRh
dGUmJiB1cGRhdGUsIFNjcm9sbFR5cGUgc2Nyb2xsVHlwZSkKIHsKKyAgICBpZiAodXBkYXRlLnVw
ZGF0ZVR5cGUgPT0gU2Nyb2xsVXBkYXRlVHlwZTo6QW5pbWF0ZWRTY3JvbGxEaWRFbmQpIHsKKyAg
ICAgICAgYW5pbWF0ZWRTY3JvbGxEaWRFbmRGb3JOb2RlKHVwZGF0ZS5ub2RlSUQpOworICAgICAg
ICByZXR1cm47CisgICAgfQorCiAgICAgdXBkYXRlU2Nyb2xsUG9zaXRpb25BZnRlckFzeW5jU2Ny
b2xsKHVwZGF0ZS5ub2RlSUQsIHVwZGF0ZS5zY3JvbGxQb3NpdGlvbiwgdXBkYXRlLmxheW91dFZp
ZXdwb3J0T3JpZ2luLCB1cGRhdGUudXBkYXRlTGF5ZXJQb3NpdGlvbkFjdGlvbiwgc2Nyb2xsVHlw
ZSk7CiB9CiAKK3ZvaWQgQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcjo6YW5pbWF0ZWRTY3JvbGxE
aWRFbmRGb3JOb2RlKFNjcm9sbGluZ05vZGVJRCBzY3JvbGxpbmdOb2RlSUQpCit7CisgICAgQVNT
RVJUKGlzTWFpblRocmVhZCgpKTsKKworICAgIGlmICghbV9wYWdlKQorICAgICAgICByZXR1cm47
CisKKyAgICBhdXRvKiBmcmFtZVZpZXcgPSBmcmFtZVZpZXdGb3JTY3JvbGxpbmdOb2RlKHNjcm9s
bGluZ05vZGVJRCk7CisgICAgaWYgKCFmcmFtZVZpZXcpCisgICAgICAgIHJldHVybjsKKworICAg
IExPR19XSVRIX1NUUkVBTShTY3JvbGxpbmcsIHN0cmVhbSA8PCAiQXN5bmNTY3JvbGxpbmdDb29y
ZGluYXRvcjo6YW5pbWF0ZWRTY3JvbGxEaWRFbmRGb3JOb2RlIG5vZGUgIiA8PCBzY3JvbGxpbmdO
b2RlSUQpOworCisgICAgaWYgKHNjcm9sbGluZ05vZGVJRCA9PSBmcmFtZVZpZXctPnNjcm9sbGlu
Z05vZGVJRCgpKSB7CisgICAgICAgIGZyYW1lVmlldy0+c2V0U2Nyb2xsQW5pbWF0aW9uU3RhdHVz
KFNjcm9sbEFuaW1hdGlvblN0YXR1czo6Tm90QW5pbWF0aW5nKTsKKyAgICAgICAgcmV0dXJuOwor
ICAgIH0KKworICAgIGlmIChhdXRvKiBzY3JvbGxhYmxlQXJlYSA9IGZyYW1lVmlldy0+c2Nyb2xs
YWJsZUFyZWFGb3JTY3JvbGxpbmdOb2RlSUQoc2Nyb2xsaW5nTm9kZUlEKSkKKyAgICAgICAgc2Ny
b2xsYWJsZUFyZWEtPnNldFNjcm9sbEFuaW1hdGlvblN0YXR1cyhTY3JvbGxBbmltYXRpb25TdGF0
dXM6Ok5vdEFuaW1hdGluZyk7Cit9CisKIHZvaWQgQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvcjo6
dXBkYXRlU2Nyb2xsUG9zaXRpb25BZnRlckFzeW5jU2Nyb2xsKFNjcm9sbGluZ05vZGVJRCBzY3Jv
bGxpbmdOb2RlSUQsIGNvbnN0IEZsb2F0UG9pbnQmIHNjcm9sbFBvc2l0aW9uLCBzdGQ6Om9wdGlv
bmFsPEZsb2F0UG9pbnQ+IGxheW91dFZpZXdwb3J0T3JpZ2luLCBTY3JvbGxpbmdMYXllclBvc2l0
aW9uQWN0aW9uIHNjcm9sbGluZ0xheWVyUG9zaXRpb25BY3Rpb24sIFNjcm9sbFR5cGUgc2Nyb2xs
VHlwZSkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5oIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5oCmlu
ZGV4IDY2NjY0YTQxZmY1MTEyNmQ3YjRiNzJlMzQyMWU5YTQwZmJkZjEwNmEuLmVlNWRjN2ZhN2Zk
M2I4MTE2Yzk0YWNlYmI0YTg5NTM1OTRiNzUzZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3IuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmgKQEAgLTU0
LDcgKzU0LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseVBlbmRpbmdTY3JvbGxVcGRhdGVz
KCk7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGFwcGx5U2Nyb2xsVXBkYXRlKFNjcm9sbFVw
ZGF0ZSYmLCBTY3JvbGxUeXBlKTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGFwcGx5U2Nyb2xs
VXBkYXRlKFNjcm9sbFVwZGF0ZSYmLCBTY3JvbGxUeXBlID0gU2Nyb2xsVHlwZTo6VXNlcik7CiAK
ICNpZiBQTEFURk9STShDT0NPQSkKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGhhbmRsZVdoZWVs
RXZlbnRQaGFzZShTY3JvbGxpbmdOb2RlSUQsIFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlKSBmaW5h
bDsKQEAgLTE1NSw3ICsxNTUsOCBAQCBwcml2YXRlOgogICAgIAogICAgIHZvaWQgYXBwbHlTY3Jv
bGxQb3NpdGlvblVwZGF0ZShTY3JvbGxVcGRhdGUmJiwgU2Nyb2xsVHlwZSk7CiAgICAgdm9pZCB1
cGRhdGVTY3JvbGxQb3NpdGlvbkFmdGVyQXN5bmNTY3JvbGwoU2Nyb2xsaW5nTm9kZUlELCBjb25z
dCBGbG9hdFBvaW50Jiwgc3RkOjpvcHRpb25hbDxGbG9hdFBvaW50PiBsYXlvdXRWaWV3cG9ydE9y
aWdpbiwgU2Nyb2xsaW5nTGF5ZXJQb3NpdGlvbkFjdGlvbiwgU2Nyb2xsVHlwZSk7Ci0gICAgCisg
ICAgdm9pZCBhbmltYXRlZFNjcm9sbERpZEVuZEZvck5vZGUoU2Nyb2xsaW5nTm9kZUlEKTsKKwog
ICAgIEZyYW1lVmlldyogZnJhbWVWaWV3Rm9yU2Nyb2xsaW5nTm9kZShTY3JvbGxpbmdOb2RlSUQp
IGNvbnN0OwogCiAgICAgc3RkOjp1bmlxdWVfcHRyPFNjcm9sbGluZ1N0YXRlVHJlZT4gbV9zY3Jv
bGxpbmdTdGF0ZVRyZWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGlu
Zy9TY3JvbGxpbmdDb29yZGluYXRvclR5cGVzLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9s
bGluZy9TY3JvbGxpbmdDb29yZGluYXRvclR5cGVzLmgKaW5kZXggZTFiOGFkM2UyM2JiMzE4NmYz
NDY0YTY5N2I3MTdhYzFlZjdlOTEzMC4uOTNkNWVjZmZmNzBhM2Y4MzJmYWE3NWU5Mjk3M2NjMDUz
ODk5OTYwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xs
aW5nQ29vcmRpbmF0b3JUeXBlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L1Njcm9sbGluZ0Nvb3JkaW5hdG9yVHlwZXMuaApAQCAtMTE2LDE1ICsxMTYsMjEgQEAgc3RydWN0
IFJlcXVlc3RlZFNjcm9sbERhdGEgewogICAgIH0KIH07CiAKK2VudW0gU2Nyb2xsVXBkYXRlVHlw
ZSA6IHVpbnQ4X3QgeworICAgIFBvc2l0aW9uVXBkYXRlLAorICAgIEFuaW1hdGVkU2Nyb2xsRGlk
RW5kCit9OworCiBzdHJ1Y3QgU2Nyb2xsVXBkYXRlIHsKICAgICBTY3JvbGxpbmdOb2RlSUQgbm9k
ZUlEIHsgMCB9OwogICAgIEZsb2F0UG9pbnQgc2Nyb2xsUG9zaXRpb247CiAgICAgc3RkOjpvcHRp
b25hbDxGbG9hdFBvaW50PiBsYXlvdXRWaWV3cG9ydE9yaWdpbjsKKyAgICBTY3JvbGxVcGRhdGVU
eXBlIHVwZGF0ZVR5cGUgeyBTY3JvbGxVcGRhdGVUeXBlOjpQb3NpdGlvblVwZGF0ZSB9OwogICAg
IFNjcm9sbGluZ0xheWVyUG9zaXRpb25BY3Rpb24gdXBkYXRlTGF5ZXJQb3NpdGlvbkFjdGlvbiB7
IFNjcm9sbGluZ0xheWVyUG9zaXRpb25BY3Rpb246OlN5bmMgfTsKICAgICAKICAgICBib29sIGNh
bk1lcmdlKGNvbnN0IFNjcm9sbFVwZGF0ZSYgb3RoZXIpIGNvbnN0CiAgICAgewotICAgICAgICBy
ZXR1cm4gbm9kZUlEID09IG90aGVyLm5vZGVJRCAmJiB1cGRhdGVMYXllclBvc2l0aW9uQWN0aW9u
ID09IG90aGVyLnVwZGF0ZUxheWVyUG9zaXRpb25BY3Rpb247CisgICAgICAgIHJldHVybiBub2Rl
SUQgPT0gb3RoZXIubm9kZUlEICYmIHVwZGF0ZUxheWVyUG9zaXRpb25BY3Rpb24gPT0gb3RoZXIu
dXBkYXRlTGF5ZXJQb3NpdGlvbkFjdGlvbiAmJiB1cGRhdGVUeXBlID09IG90aGVyLnVwZGF0ZVR5
cGU7CiAgICAgfQogICAgIAogICAgIHZvaWQgbWVyZ2UoU2Nyb2xsVXBkYXRlJiYgb3RoZXIpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlLmgKaW5kZXggYmI1
M2Q1MDQxNDJlMzI4ZDQ0MzQxNDRhZTFhOWM5NzhhYjc0ZmZkOC4uNDAyMDk4OGQ0NTgzY2NjZjA0
MTVmMzc5MjVjMzBhODExNGFmZjIwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9z
Y3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xs
aW5nL1Njcm9sbGluZ1RyZWUuaApAQCAtMTI5LDYgKzEyOSw3IEBAIHB1YmxpYzoKICAgICAvLyBD
YWxsZWQgYWZ0ZXIgYSBzY3JvbGxpbmcgdHJlZSBub2RlIGhhcyBoYW5kbGVkIGEgc2Nyb2xsIGFu
ZCB1cGRhdGVkIGl0cyBsYXllcnMuCiAgICAgLy8gVXBkYXRlcyBGcmFtZVZpZXcvUmVuZGVyTGF5
ZXIgc2Nyb2xsaW5nIHN0YXRlIGFuZCBHcmFwaGljc0xheWVycy4KICAgICB2aXJ0dWFsIHZvaWQg
c2Nyb2xsaW5nVHJlZU5vZGVEaWRTY3JvbGwoU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUmLCBT
Y3JvbGxpbmdMYXllclBvc2l0aW9uQWN0aW9uID0gU2Nyb2xsaW5nTGF5ZXJQb3NpdGlvbkFjdGlv
bjo6U3luYykgPSAwOworICAgIHZpcnR1YWwgdm9pZCBzY3JvbGxpbmdUcmVlTm9kZURpZFN0b3BB
bmltYXRlZFNjcm9sbChTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZSYpIHsgfQogCiAgICAgLy8g
Q2FsbGVkIGZvciByZXF1ZXN0ZWQgc2Nyb2xsIHBvc2l0aW9uIHVwZGF0ZXMuCiAgICAgdmlydHVh
bCB2b2lkIHNjcm9sbGluZ1RyZWVOb2RlUmVxdWVzdHNTY3JvbGwoU2Nyb2xsaW5nTm9kZUlELCBj
b25zdCBGbG9hdFBvaW50JiAvKnNjcm9sbFBvc2l0aW9uKi8sIFNjcm9sbFR5cGUsIFNjcm9sbENs
YW1waW5nKSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Nj
cm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xs
aW5nL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlLmNwcAppbmRleCBiNWQ4NzE2ZDEwN2ViYmM5
MTY4ZDUwNzY0YWU4NTljZWMwY2M3NzgzLi44YTY5ZWNmYjdjYjQ3YmFhMDJjZGI1NjNmYjYxYTQ1
MzU3ZDg2YmZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3Jv
bGxpbmdUcmVlU2Nyb2xsaW5nTm9kZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3Jv
bGxpbmcvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUuY3BwCkBAIC0yMzAsNyArMjMwLDcgQEAg
dm9pZCBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZTo6c2V0U2Nyb2xsU25hcEluUHJvZ3Jlc3Mo
Ym9vbCBpc1NuYXBwaW5nKQogdm9pZCBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZTo6ZGlkU3Rv
cEFuaW1hdGVkU2Nyb2xsKCkKIHsKICAgICBMT0dfV0lUSF9TVFJFQU0oU2Nyb2xsaW5nLCBzdHJl
YW0gPDwgIlNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlICIgPDwgc2Nyb2xsaW5nTm9kZUlEKCkg
PDwgIiBkaWRTdG9wQW5pbWF0ZWRTY3JvbGwiKTsKLSAgICAvLyBGSVhNRTogUHJvcGFnYXRlIHN0
YXRlIGJhY2sgdG8gdGhlIG1haW4gdGhyZWFkLgorICAgIHNjcm9sbGluZ1RyZWUoKS5zY3JvbGxp
bmdUcmVlTm9kZURpZFN0b3BBbmltYXRlZFNjcm9sbCgqdGhpcyk7CiB9CiAKIHZvaWQgU2Nyb2xs
aW5nVHJlZVNjcm9sbGluZ05vZGU6OmhhbmRsZVNjcm9sbFBvc2l0aW9uUmVxdWVzdChjb25zdCBS
ZXF1ZXN0ZWRTY3JvbGxEYXRhJiByZXF1ZXN0ZWRTY3JvbGxEYXRhKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvVGhyZWFkZWRTY3JvbGxpbmdUcmVlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1RocmVhZGVkU2Nyb2xsaW5nVHJlZS5jcHAKaW5k
ZXggZWFhMDAzYWQxYTllMDA2NjE2YzRkNDlmM2RkOTIyNmU5ZGIzZThiNi4uYWQ4ZDUyMGM1MDdj
MzViMDM0MWFiZDUxZTg4NjhkNTEyYjE4MDE5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9zY3JvbGxpbmcvVGhyZWFkZWRTY3JvbGxpbmdUcmVlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9UaHJlYWRlZFNjcm9sbGluZ1RyZWUuY3BwCkBAIC0yMDcsMTAg
KzIwNywxMCBAQCB2b2lkIFRocmVhZGVkU2Nyb2xsaW5nVHJlZTo6c2Nyb2xsaW5nVHJlZU5vZGVE
aWRTY3JvbGwoU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZAogICAgIGlmIChpczxTY3JvbGxpbmdU
cmVlRnJhbWVTY3JvbGxpbmdOb2RlPihub2RlKSkKICAgICAgICAgbGF5b3V0Vmlld3BvcnRPcmln
aW4gPSBkb3duY2FzdDxTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlPihub2RlKS5sYXlv
dXRWaWV3cG9ydCgpLmxvY2F0aW9uKCk7CiAKLSAgICBhdXRvIHNjcm9sbFVwZGF0ZSA9IFNjcm9s
bFVwZGF0ZSB7IG5vZGUuc2Nyb2xsaW5nTm9kZUlEKCksIHNjcm9sbFBvc2l0aW9uLCBsYXlvdXRW
aWV3cG9ydE9yaWdpbiwgc2Nyb2xsaW5nTGF5ZXJQb3NpdGlvbkFjdGlvbiB9OworICAgIGF1dG8g
c2Nyb2xsVXBkYXRlID0gU2Nyb2xsVXBkYXRlIHsgbm9kZS5zY3JvbGxpbmdOb2RlSUQoKSwgc2Ny
b2xsUG9zaXRpb24sIGxheW91dFZpZXdwb3J0T3JpZ2luLCBTY3JvbGxVcGRhdGVUeXBlOjpQb3Np
dGlvblVwZGF0ZSwgc2Nyb2xsaW5nTGF5ZXJQb3NpdGlvbkFjdGlvbiB9OwogCiAgICAgaWYgKFJ1
bkxvb3A6OmlzTWFpbigpKSB7Ci0gICAgICAgIG1fc2Nyb2xsaW5nQ29vcmRpbmF0b3ItPmFwcGx5
U2Nyb2xsVXBkYXRlKFdURk1vdmUoc2Nyb2xsVXBkYXRlKSwgU2Nyb2xsVHlwZTo6VXNlcik7Cisg
ICAgICAgIG1fc2Nyb2xsaW5nQ29vcmRpbmF0b3ItPmFwcGx5U2Nyb2xsVXBkYXRlKFdURk1vdmUo
c2Nyb2xsVXBkYXRlKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKQEAgLTIyNSw2ICsyMjUs
MjggQEAgdm9pZCBUaHJlYWRlZFNjcm9sbGluZ1RyZWU6OnNjcm9sbGluZ1RyZWVOb2RlRGlkU2Ny
b2xsKFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2QKICAgICB9KTsKIH0KIAordm9pZCBUaHJlYWRl
ZFNjcm9sbGluZ1RyZWU6OnNjcm9sbGluZ1RyZWVOb2RlRGlkU3RvcEFuaW1hdGVkU2Nyb2xsKFNj
cm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlJiBub2RlKQoreworICAgIGlmICghbV9zY3JvbGxpbmdD
b29yZGluYXRvcikKKyAgICAgICAgcmV0dXJuOworCisgICAgTE9HX1dJVEhfU1RSRUFNKFNjcm9s
bGluZywgc3RyZWFtIDw8ICJUaHJlYWRlZFNjcm9sbGluZ1RyZWU6OnNjcm9sbGluZ1RyZWVOb2Rl
RGlkU3RvcEFuaW1hdGVkU2Nyb2xsICIgPDwgbm9kZS5zY3JvbGxpbmdOb2RlSUQoKSk7CisKKyAg
ICBhdXRvIHNjcm9sbFVwZGF0ZSA9IFNjcm9sbFVwZGF0ZSB7IG5vZGUuc2Nyb2xsaW5nTm9kZUlE
KCksIHsgfSwgeyB9LCBTY3JvbGxVcGRhdGVUeXBlOjpBbmltYXRlZFNjcm9sbERpZEVuZCB9Owor
CisgICAgaWYgKFJ1bkxvb3A6OmlzTWFpbigpKSB7CisgICAgICAgIG1fc2Nyb2xsaW5nQ29vcmRp
bmF0b3ItPmFwcGx5U2Nyb2xsVXBkYXRlKFdURk1vdmUoc2Nyb2xsVXBkYXRlKSk7CisgICAgICAg
IHJldHVybjsKKyAgICB9CisKKyAgICBhZGRQZW5kaW5nU2Nyb2xsVXBkYXRlKFdURk1vdmUoc2Ny
b2xsVXBkYXRlKSk7CisKKyAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW3N0cm9uZ1RoaXMg
PSBSZWYgeyAqdGhpcyB9XSB7CisgICAgICAgIGlmIChhdXRvKiBzY3JvbGxpbmdDb29yZGluYXRv
ciA9IHN0cm9uZ1RoaXMtPm1fc2Nyb2xsaW5nQ29vcmRpbmF0b3IuZ2V0KCkpCisgICAgICAgICAg
ICBzY3JvbGxpbmdDb29yZGluYXRvci0+c2Nyb2xsaW5nVGhyZWFkQWRkZWRQZW5kaW5nVXBkYXRl
KCk7CisgICAgfSk7Cit9CisKIHZvaWQgVGhyZWFkZWRTY3JvbGxpbmdUcmVlOjpyZXBvcnRTeW5j
aHJvbm91c1Njcm9sbGluZ1JlYXNvbnNDaGFuZ2VkKE1vbm90b25pY1RpbWUgdGltZXN0YW1wLCBP
cHRpb25TZXQ8U3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb24+IHJlYXNvbnMpCiB7CiAgICAgUnVu
TG9vcDo6bWFpbigpLmRpc3BhdGNoKFtzY3JvbGxpbmdDb29yZGluYXRvciA9IG1fc2Nyb2xsaW5n
Q29vcmRpbmF0b3IsIHRpbWVzdGFtcCwgcmVhc29uc10gewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvVGhyZWFkZWRTY3JvbGxpbmdUcmVlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9UaHJlYWRlZFNjcm9sbGluZ1RyZWUuaAppbmRleCA1ZWFjODc2
OWU5OTViZmFmMzI1ODNiYzk4NzZkMjM4NjUzYmRkOTM1Li42MzMzYjdlMjRhNDljMGY3ZDczMDEy
NjkxNDExZjkyYzEzMzUwMTI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9s
bGluZy9UaHJlYWRlZFNjcm9sbGluZ1RyZWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Nj
cm9sbGluZy9UaHJlYWRlZFNjcm9sbGluZ1RyZWUuaApAQCAtNjgsNiArNjgsOCBAQCBwcm90ZWN0
ZWQ6CiAgICAgZXhwbGljaXQgVGhyZWFkZWRTY3JvbGxpbmdUcmVlKEFzeW5jU2Nyb2xsaW5nQ29v
cmRpbmF0b3ImKTsKIAogICAgIHZvaWQgc2Nyb2xsaW5nVHJlZU5vZGVEaWRTY3JvbGwoU2Nyb2xs
aW5nVHJlZVNjcm9sbGluZ05vZGUmLCBTY3JvbGxpbmdMYXllclBvc2l0aW9uQWN0aW9uID0gU2Ny
b2xsaW5nTGF5ZXJQb3NpdGlvbkFjdGlvbjo6U3luYykgb3ZlcnJpZGU7CisgICAgdm9pZCBzY3Jv
bGxpbmdUcmVlTm9kZURpZFN0b3BBbmltYXRlZFNjcm9sbChTY3JvbGxpbmdUcmVlU2Nyb2xsaW5n
Tm9kZSYpIG92ZXJyaWRlOworCiAjaWYgUExBVEZPUk0oTUFDKQogICAgIHZvaWQgaGFuZGxlV2hl
ZWxFdmVudFBoYXNlKFNjcm9sbGluZ05vZGVJRCwgUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2UpIG92
ZXJyaWRlOwogICAgIHZvaWQgc2V0QWN0aXZlU2Nyb2xsU25hcEluZGljZXMoU2Nyb2xsaW5nTm9k
ZUlELCBzdGQ6Om9wdGlvbmFsPHVuc2lnbmVkPiBob3Jpem9udGFsSW5kZXgsIHN0ZDo6b3B0aW9u
YWw8dW5zaWduZWQ+IHZlcnRpY2FsSW5kZXgpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVs
ZWdhdGVNYWMuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdU
cmVlU2Nyb2xsaW5nTm9kZURlbGVnYXRlTWFjLmgKaW5kZXggOGQ4ZDA1ZjJhNzQ1N2ZiMzdmMjY5
YzE4ZmYwZDY5Njc2NGUzMjNhNy4uMTEwMTI4NWEyZTdjOTRiYTEyYTNmNDRkM2RlMzhiOGNjMThm
YjdiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9s
bGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGVNYWMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU1hYy5o
CkBAIC05Niw4ICs5NiwxMiBAQCBwcml2YXRlOgogCiAgICAgRmxvYXRQb2ludCBzY3JvbGxPZmZz
ZXQoKSBjb25zdCBmaW5hbDsKICAgICBmbG9hdCBwYWdlU2NhbGVGYWN0b3IoKSBjb25zdCBmaW5h
bDsKKworICAgIHZvaWQgZGlkU3RvcEFuaW1hdGVkU2Nyb2xsKCkgZmluYWw7CisKICAgICB2b2lk
IHdpbGxTdGFydFNjcm9sbFNuYXBBbmltYXRpb24oKSBmaW5hbDsKICAgICB2b2lkIGRpZFN0b3BT
Y3JvbGxTbmFwQW5pbWF0aW9uKCkgZmluYWw7CisKICAgICBTY3JvbGxFeHRlbnRzIHNjcm9sbEV4
dGVudHMoKSBjb25zdCBmaW5hbDsKIAogICAgIHZvaWQgcmVsZWFzZVJlZmVyZW5jZXNUb1Njcm9s
bGVySW1wc09uVGhlTWFpblRocmVhZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGVNYWMubW0g
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZVNjcm9sbGlu
Z05vZGVEZWxlZ2F0ZU1hYy5tbQppbmRleCBlYjRhZjRjYWZjMmViYzQ3NTI3N2FiMWU5YWM0YWNi
MTMyOGUyYjIyLi42NTY5NDQzOTkwOTIyNzg0NmNkMzAzMTIwNDVmZTE2YTMwNjkwN2Y2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZVNj
cm9sbGluZ05vZGVEZWxlZ2F0ZU1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9s
bGluZy9tYWMvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU1hYy5tbQpAQCAtMzcx
LDYgKzM3MSwxMSBAQCBmbG9hdCBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZURlbGVnYXRlTWFj
OjpwYWdlU2NhbGVGYWN0b3IoKSBjb25zdAogICAgIHJldHVybiAxOwogfQogCit2b2lkIFNjcm9s
bGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGVNYWM6OmRpZFN0b3BBbmltYXRlZFNjcm9sbCgp
Cit7CisgICAgc2Nyb2xsaW5nTm9kZSgpLmRpZFN0b3BBbmltYXRlZFNjcm9sbCgpOworfQorCiB2
b2lkIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGVNYWM6OndpbGxTdGFydFNjcm9s
bFNuYXBBbmltYXRpb24oKQogewogICAgIHNjcm9sbGluZ05vZGUoKS5zZXRTY3JvbGxTbmFwSW5Q
cm9ncmVzcyh0cnVlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L25pY29zaWEvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU5pY29zaWEuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlU2Nyb2xs
aW5nTm9kZURlbGVnYXRlTmljb3NpYS5jcHAKaW5kZXggODY2N2MyZGVmZDAxMDg0MjI4OTk4YWQw
ZmVlNTdlODlmNjgzZTE4ZC4uNzY5MTlmYzQwZmU0YzE3Yzk4MmFhMTRiMGY0YTk0YTNjYmU2ZTlh
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3Jv
bGxpbmdUcmVlU2Nyb2xsaW5nTm9kZURlbGVnYXRlTmljb3NpYS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZURl
bGVnYXRlTmljb3NpYS5jcHAKQEAgLTE2MSw2ICsxNjEsMTEgQEAgdm9pZCBTY3JvbGxpbmdUcmVl
U2Nyb2xsaW5nTm9kZURlbGVnYXRlTmljb3NpYTo6ZGlkU3RvcFNjcm9sbFNuYXBBbmltYXRpb24o
KQogICAgIHNjcm9sbGluZ05vZGUoKS5zZXRTY3JvbGxTbmFwSW5Qcm9ncmVzcyhmYWxzZSk7CiB9
CiAKK3ZvaWQgU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU5pY29zaWE6OmRpZFN0
b3BBbmltYXRlZFNjcm9sbCgpCit7CisgICAgc2Nyb2xsaW5nTm9kZSgpLmRpZFN0b3BBbmltYXRl
ZFNjcm9sbCgpOworfQorCiBmbG9hdCBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZURlbGVnYXRl
Tmljb3NpYTo6cGFnZVNjYWxlRmFjdG9yKCkgY29uc3QKIHsKICAgICAvLyBGSVhNRTogV2hhdCBz
aG91bGQgdGhpcyByZXR1cm4gZm9yIG5vbi1yb290IGZyYW1lcywgYW5kIG92ZXJmbG93PwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdU
cmVlU2Nyb2xsaW5nTm9kZURlbGVnYXRlTmljb3NpYS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9z
Y3JvbGxpbmcvbmljb3NpYS9TY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZURlbGVnYXRlTmljb3Np
YS5oCmluZGV4IDkyMWU4YmU2ODQ1YWFkMGViN2RmNzFlNzEyZGRhNGE1ODAyMzU0Y2IuLmJiNDI1
ZDhjNmUyMDM0MzhmYjI2MDYzZDI2ZGNjMzZiMWEzMDkzNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL25pY29zaWEvU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVE
ZWxlZ2F0ZU5pY29zaWEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9uaWNv
c2lhL1Njcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGVOaWNvc2lhLmgKQEAgLTY5LDgg
KzY5LDEyIEBAIHByaXZhdGU6CiAgICAgdm9pZCBhZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRz
SWZOZWNlc3NhcnkoKSBmaW5hbDsKIAogICAgIEZsb2F0UG9pbnQgc2Nyb2xsT2Zmc2V0KCkgY29u
c3QgZmluYWw7CisKICAgICB2b2lkIHdpbGxTdGFydFNjcm9sbFNuYXBBbmltYXRpb24oKSBmaW5h
bDsKICAgICB2b2lkIGRpZFN0b3BTY3JvbGxTbmFwQW5pbWF0aW9uKCkgZmluYWw7CisKKyAgICB2
b2lkIGRpZFN0b3BBbmltYXRlZFNjcm9sbCgpIGZpbmFsOworCiAgICAgZmxvYXQgcGFnZVNjYWxl
RmFjdG9yKCkgY29uc3QgZmluYWw7CiAgICAgU2Nyb2xsRXh0ZW50cyBzY3JvbGxFeHRlbnRzKCkg
Y29uc3QgZmluYWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1JlbW90
ZUxheWVyVHJlZS9SZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvclByb3h5LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVTY3JvbGxpbmdDb29yZGluYXRv
clByb3h5LmNwcAppbmRleCA5YmIwNTE4OGVkYTNjNDFmNzdlOWRhOGQ3ZDQ2MDE5ZjQ2YjU5NGFk
Li4yYzRhMjNkMDMzYzdkZDVhMDZhMDk1Y2U0MzRkYzUxZmUwZjM5N2U1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZW1vdGVMYXllclRyZWUvUmVtb3RlU2Nyb2xsaW5nQ29v
cmRpbmF0b3JQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUmVtb3RlTGF5
ZXJUcmVlL1JlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHkuY3BwCkBAIC0yMzYsNiArMjM2
LDExIEBAIHZvaWQgUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3JQcm94eTo6c2Nyb2xsaW5nVHJl
ZU5vZGVEaWRTY3JvbGwoU2Nyb2xsaW5nTm9kZUlECiAgICAgbV93ZWJQYWdlUHJveHkuc2VuZChN
ZXNzYWdlczo6UmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OlNjcm9sbFBvc2l0aW9uQ2hhbmdl
ZEZvck5vZGUoc2Nyb2xsZWROb2RlSUQsIG5ld1Njcm9sbFBvc2l0aW9uLCBzY3JvbGxpbmdMYXll
clBvc2l0aW9uQWN0aW9uID09IFNjcm9sbGluZ0xheWVyUG9zaXRpb25BY3Rpb246OlN5bmMpKTsK
IH0KIAordm9pZCBSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvclByb3h5OjpzY3JvbGxpbmdUcmVl
Tm9kZURpZFN0b3BBbmltYXRlZFNjcm9sbChTY3JvbGxpbmdOb2RlSUQgc2Nyb2xsZWROb2RlSUQp
Cit7CisgICAgbV93ZWJQYWdlUHJveHkuc2VuZChNZXNzYWdlczo6UmVtb3RlU2Nyb2xsaW5nQ29v
cmRpbmF0b3I6OkFuaW1hdGVkU2Nyb2xsRGlkRW5kRm9yTm9kZShzY3JvbGxlZE5vZGVJRCkpOwor
fQorCiB2b2lkIFJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHk6OnNjcm9sbGluZ1RyZWVO
b2RlUmVxdWVzdHNTY3JvbGwoU2Nyb2xsaW5nTm9kZUlEIHNjcm9sbGVkTm9kZUlELCBjb25zdCBG
bG9hdFBvaW50JiBzY3JvbGxQb3NpdGlvbiwgU2Nyb2xsVHlwZSBzY3JvbGxUeXBlLCBTY3JvbGxD
bGFtcGluZykKIHsKICAgICBpZiAoc2Nyb2xsZWROb2RlSUQgPT0gcm9vdFNjcm9sbGluZ05vZGVJ
RCgpICYmIG1fcmVxdWVzdGVkU2Nyb2xsSW5mbykgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yUHJv
eHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVTY3Jv
bGxpbmdDb29yZGluYXRvclByb3h5LmgKaW5kZXggZDJjN2JlNjgyODM0YTVkZTYwNjU2YWJkYmFk
NWI5N2NiOGM1MTM4OS4uNTUzM2EyZDlhNWNjZmMxYjA5OTI5OTA1NDJiYTRiYmZhMDgzNTQzMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUmVtb3RlTGF5ZXJUcmVlL1JlbW90
ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9SZW1vdGVMYXllclRyZWUvUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3JQcm94eS5oCkBAIC02
MCw2ICs2MCw3IEBAIHB1YmxpYzoKICAgICAvLyBJbmZvcm0gdGhlIHdlYiBwcm9jZXNzIHRoYXQg
dGhlIHNjcm9sbCBwb3NpdGlvbiBjaGFuZ2VkIChjYWxsZWQgZnJvbSB0aGUgc2Nyb2xsaW5nIHRy
ZWUpCiAgICAgdm9pZCBzY3JvbGxpbmdUcmVlTm9kZURpZFNjcm9sbChXZWJDb3JlOjpTY3JvbGxp
bmdOb2RlSUQsIGNvbnN0IFdlYkNvcmU6OkZsb2F0UG9pbnQmIG5ld1Njcm9sbFBvc2l0aW9uLCBj
b25zdCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkZsb2F0UG9pbnQ+JiBsYXlvdXRWaWV3cG9ydE9y
aWdpbiwgV2ViQ29yZTo6U2Nyb2xsaW5nTGF5ZXJQb3NpdGlvbkFjdGlvbik7CiAgICAgdm9pZCBz
Y3JvbGxpbmdUcmVlTm9kZVJlcXVlc3RzU2Nyb2xsKFdlYkNvcmU6OlNjcm9sbGluZ05vZGVJRCwg
Y29uc3QgV2ViQ29yZTo6RmxvYXRQb2ludCYgc2Nyb2xsUG9zaXRpb24sIFdlYkNvcmU6OlNjcm9s
bFR5cGUsIFdlYkNvcmU6OlNjcm9sbENsYW1waW5nKTsKKyAgICB2b2lkIHNjcm9sbGluZ1RyZWVO
b2RlRGlkU3RvcEFuaW1hdGVkU2Nyb2xsKFdlYkNvcmU6OlNjcm9sbGluZ05vZGVJRCk7CiAKICAg
ICBXZWJDb3JlOjpUcmFja2luZ1R5cGUgZXZlbnRUcmFja2luZ1R5cGVGb3JQb2ludChjb25zdCBB
dG9tU3RyaW5nJiBldmVudE5hbWUsIFdlYkNvcmU6OkludFBvaW50KSBjb25zdDsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZVNjcm9s
bGluZ1RyZWUuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUmVtb3RlTGF5ZXJUcmVlL1Jl
bW90ZVNjcm9sbGluZ1RyZWUuY3BwCmluZGV4IGI5ZTM3NmM0MTg3NTA1MmUyMWIyNGVkNzQzMWZl
ZGU0NTM2OGJhZjcuLmQ2NmE0MjBjNDZlODgzZWJlMDYzM2Y2YzRmNTlkNGQzMGFhNmY3MmIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVT
Y3JvbGxpbmdUcmVlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZW1vdGVMYXll
clRyZWUvUmVtb3RlU2Nyb2xsaW5nVHJlZS5jcHAKQEAgLTk0LDYgKzk0LDExIEBAIHZvaWQgUmVt
b3RlU2Nyb2xsaW5nVHJlZTo6c2Nyb2xsaW5nVHJlZU5vZGVEaWRTY3JvbGwoU2Nyb2xsaW5nVHJl
ZVNjcm9sbGluZ05vZGUmCiAgICAgbV9zY3JvbGxpbmdDb29yZGluYXRvclByb3h5LnNjcm9sbGlu
Z1RyZWVOb2RlRGlkU2Nyb2xsKG5vZGUuc2Nyb2xsaW5nTm9kZUlEKCksIG5vZGUuY3VycmVudFNj
cm9sbFBvc2l0aW9uKCksIGxheW91dFZpZXdwb3J0T3JpZ2luLCBzY3JvbGxpbmdMYXllclBvc2l0
aW9uQWN0aW9uKTsKIH0KIAordm9pZCBSZW1vdGVTY3JvbGxpbmdUcmVlOjpzY3JvbGxpbmdUcmVl
Tm9kZURpZFN0b3BBbmltYXRlZFNjcm9sbChTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZSYgbm9k
ZSkKK3sKKyAgICBtX3Njcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHkuc2Nyb2xsaW5nVHJlZU5vZGVE
aWRTdG9wQW5pbWF0ZWRTY3JvbGwobm9kZS5zY3JvbGxpbmdOb2RlSUQoKSk7Cit9CisKIHZvaWQg
UmVtb3RlU2Nyb2xsaW5nVHJlZTo6c2Nyb2xsaW5nVHJlZU5vZGVSZXF1ZXN0c1Njcm9sbChTY3Jv
bGxpbmdOb2RlSUQgbm9kZUlELCBjb25zdCBGbG9hdFBvaW50JiBzY3JvbGxQb3NpdGlvbiwgU2Ny
b2xsVHlwZSBzY3JvbGxUeXBlLCBTY3JvbGxDbGFtcGluZyBjbGFtcGluZykKIHsKICAgICBtX3Nj
cm9sbGluZ0Nvb3JkaW5hdG9yUHJveHkuc2Nyb2xsaW5nVHJlZU5vZGVSZXF1ZXN0c1Njcm9sbChu
b2RlSUQsIHNjcm9sbFBvc2l0aW9uLCBzY3JvbGxUeXBlLCBjbGFtcGluZyk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZW1vdGVMYXllclRyZWUvUmVtb3RlU2Nyb2xsaW5n
VHJlZS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZVNj
cm9sbGluZ1RyZWUuaAppbmRleCA5NzUyYWFiNDNkZDBiYWM2Y2ZlZWM0MjEzNTY2YzU3NTc1OWRk
OTJiLi5mNmZhOGY2ZjAzYzRlMWQyZjRlYTUwMTljNGNiNDA5YzlhNDQ1ODU1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9SZW1vdGVMYXllclRyZWUvUmVtb3RlU2Nyb2xsaW5n
VHJlZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1JlbW90ZUxheWVyVHJlZS9SZW1v
dGVTY3JvbGxpbmdUcmVlLmgKQEAgLTQ0LDMxICs0NCwzMiBAQCBwdWJsaWM6CiAgICAgc3RhdGlj
IFJlZjxSZW1vdGVTY3JvbGxpbmdUcmVlPiBjcmVhdGUoUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0
b3JQcm94eSYpOwogICAgIHZpcnR1YWwgflJlbW90ZVNjcm9sbGluZ1RyZWUoKTsKIAotICAgIGJv
b2wgaXNSZW1vdGVTY3JvbGxpbmdUcmVlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gdHJ1ZTsg
fQorICAgIGJvb2wgaXNSZW1vdGVTY3JvbGxpbmdUcmVlKCkgY29uc3QgZmluYWwgeyByZXR1cm4g
dHJ1ZTsgfQogCiAgICAgdm9pZCBoYW5kbGVNb3VzZUV2ZW50KGNvbnN0IFdlYkNvcmU6OlBsYXRm
b3JtTW91c2VFdmVudCYpOwogCiAgICAgY29uc3QgUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3JQ
cm94eSYgc2Nyb2xsaW5nQ29vcmRpbmF0b3JQcm94eSgpIGNvbnN0IHsgcmV0dXJuIG1fc2Nyb2xs
aW5nQ29vcmRpbmF0b3JQcm94eTsgfQogCi0gICAgdm9pZCBzY3JvbGxpbmdUcmVlTm9kZURpZFNj
cm9sbChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZSYsIFdlYkNvcmU6OlNjcm9s
bGluZ0xheWVyUG9zaXRpb25BY3Rpb24gPSBXZWJDb3JlOjpTY3JvbGxpbmdMYXllclBvc2l0aW9u
QWN0aW9uOjpTeW5jKSBvdmVycmlkZTsKLSAgICB2b2lkIHNjcm9sbGluZ1RyZWVOb2RlUmVxdWVz
dHNTY3JvbGwoV2ViQ29yZTo6U2Nyb2xsaW5nTm9kZUlELCBjb25zdCBXZWJDb3JlOjpGbG9hdFBv
aW50JiBzY3JvbGxQb3NpdGlvbiwgV2ViQ29yZTo6U2Nyb2xsVHlwZSwgV2ViQ29yZTo6U2Nyb2xs
Q2xhbXBpbmcpIG92ZXJyaWRlOworICAgIHZvaWQgc2Nyb2xsaW5nVHJlZU5vZGVEaWRTY3JvbGwo
V2ViQ29yZTo6U2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUmLCBXZWJDb3JlOjpTY3JvbGxpbmdM
YXllclBvc2l0aW9uQWN0aW9uID0gV2ViQ29yZTo6U2Nyb2xsaW5nTGF5ZXJQb3NpdGlvbkFjdGlv
bjo6U3luYykgZmluYWw7CisgICAgdm9pZCBzY3JvbGxpbmdUcmVlTm9kZURpZFN0b3BBbmltYXRl
ZFNjcm9sbChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZSYpIGZpbmFsOworICAg
IHZvaWQgc2Nyb2xsaW5nVHJlZU5vZGVSZXF1ZXN0c1Njcm9sbChXZWJDb3JlOjpTY3JvbGxpbmdO
b2RlSUQsIGNvbnN0IFdlYkNvcmU6OkZsb2F0UG9pbnQmIHNjcm9sbFBvc2l0aW9uLCBXZWJDb3Jl
OjpTY3JvbGxUeXBlLCBXZWJDb3JlOjpTY3JvbGxDbGFtcGluZykgZmluYWw7CiAKLSAgICB2b2lk
IGN1cnJlbnRTbmFwUG9pbnRJbmRpY2VzRGlkQ2hhbmdlKFdlYkNvcmU6OlNjcm9sbGluZ05vZGVJ
RCwgc3RkOjpvcHRpb25hbDx1bnNpZ25lZD4gaG9yaXpvbnRhbCwgc3RkOjpvcHRpb25hbDx1bnNp
Z25lZD4gdmVydGljYWwpIG92ZXJyaWRlOworICAgIHZvaWQgY3VycmVudFNuYXBQb2ludEluZGlj
ZXNEaWRDaGFuZ2UoV2ViQ29yZTo6U2Nyb2xsaW5nTm9kZUlELCBzdGQ6Om9wdGlvbmFsPHVuc2ln
bmVkPiBob3Jpem9udGFsLCBzdGQ6Om9wdGlvbmFsPHVuc2lnbmVkPiB2ZXJ0aWNhbCkgZmluYWw7
CiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgUmVtb3RlU2Nyb2xsaW5nVHJlZShSZW1vdGVTY3Jv
bGxpbmdDb29yZGluYXRvclByb3h5Jik7CiAKICNpZiBQTEFURk9STShNQUMpCi0gICAgdm9pZCBo
YW5kbGVXaGVlbEV2ZW50UGhhc2UoV2ViQ29yZTo6U2Nyb2xsaW5nTm9kZUlELCBXZWJDb3JlOjpQ
bGF0Zm9ybVdoZWVsRXZlbnRQaGFzZSkgb3ZlcnJpZGU7CisgICAgdm9pZCBoYW5kbGVXaGVlbEV2
ZW50UGhhc2UoV2ViQ29yZTo6U2Nyb2xsaW5nTm9kZUlELCBXZWJDb3JlOjpQbGF0Zm9ybVdoZWVs
RXZlbnRQaGFzZSkgZmluYWw7CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0g
ICAgdm9pZCBzY3JvbGxpbmdUcmVlTm9kZVdpbGxTdGFydFBhbkdlc3R1cmUoV2ViQ29yZTo6U2Ny
b2xsaW5nTm9kZUlEKSBvdmVycmlkZTsKLSAgICB2b2lkIHNjcm9sbGluZ1RyZWVOb2RlV2lsbFN0
YXJ0U2Nyb2xsKFdlYkNvcmU6OlNjcm9sbGluZ05vZGVJRCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBz
Y3JvbGxpbmdUcmVlTm9kZURpZEVuZFNjcm9sbChXZWJDb3JlOjpTY3JvbGxpbmdOb2RlSUQpIG92
ZXJyaWRlOworICAgIHZvaWQgc2Nyb2xsaW5nVHJlZU5vZGVXaWxsU3RhcnRQYW5HZXN0dXJlKFdl
YkNvcmU6OlNjcm9sbGluZ05vZGVJRCkgZmluYWw7CisgICAgdm9pZCBzY3JvbGxpbmdUcmVlTm9k
ZVdpbGxTdGFydFNjcm9sbChXZWJDb3JlOjpTY3JvbGxpbmdOb2RlSUQpIGZpbmFsOworICAgIHZv
aWQgc2Nyb2xsaW5nVHJlZU5vZGVEaWRFbmRTY3JvbGwoV2ViQ29yZTo6U2Nyb2xsaW5nTm9kZUlE
KSBmaW5hbDsKICNlbmRpZgogCi0gICAgUmVmPFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVOb2RlPiBj
cmVhdGVTY3JvbGxpbmdUcmVlTm9kZShXZWJDb3JlOjpTY3JvbGxpbmdOb2RlVHlwZSwgV2ViQ29y
ZTo6U2Nyb2xsaW5nTm9kZUlEKSBvdmVycmlkZTsKKyAgICBSZWY8V2ViQ29yZTo6U2Nyb2xsaW5n
VHJlZU5vZGU+IGNyZWF0ZVNjcm9sbGluZ1RyZWVOb2RlKFdlYkNvcmU6OlNjcm9sbGluZ05vZGVU
eXBlLCBXZWJDb3JlOjpTY3JvbGxpbmdOb2RlSUQpIGZpbmFsOwogICAgIAogICAgIFJlbW90ZVNj
cm9sbGluZ0Nvb3JkaW5hdG9yUHJveHkmIG1fc2Nyb2xsaW5nQ29vcmRpbmF0b3JQcm94eTsKIH07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXll
clRyZWUvUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3IuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvci5o
CmluZGV4IDEzZWJlMmEwMDZmODhmM2NmYWJkMWM3MWQxMGI0OTBjZDZhYzk5ODEuLmQxZGIyZmUw
N2EwNjRiMGU1ODY4NWQwOTY1N2M4ZDQ0ODJiOTZlOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVTY3JvbGxpbmdDb29y
ZGluYXRvci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxh
eWVyVHJlZS9SZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvci5oCkBAIC03OSw2ICs3OSw3IEBAIHBy
aXZhdGU6CiAgICAgCiAgICAgLy8gUmVzcG9uZCB0byBVSSBwcm9jZXNzIGNoYW5nZXMuCiAgICAg
dm9pZCBzY3JvbGxQb3NpdGlvbkNoYW5nZWRGb3JOb2RlKFdlYkNvcmU6OlNjcm9sbGluZ05vZGVJ
RCwgY29uc3QgV2ViQ29yZTo6RmxvYXRQb2ludCYgc2Nyb2xsUG9zaXRpb24sIGJvb2wgc3luY0xh
eWVyUG9zaXRpb24pOworICAgIHZvaWQgYW5pbWF0ZWRTY3JvbGxEaWRFbmRGb3JOb2RlKFdlYkNv
cmU6OlNjcm9sbGluZ05vZGVJRCk7CiAgICAgdm9pZCBjdXJyZW50U25hcFBvaW50SW5kaWNlc0No
YW5nZWRGb3JOb2RlKFdlYkNvcmU6OlNjcm9sbGluZ05vZGVJRCwgc3RkOjpvcHRpb25hbDx1bnNp
Z25lZD4gaG9yaXpvbnRhbCwgc3RkOjpvcHRpb25hbDx1bnNpZ25lZD4gdmVydGljYWwpOwogCiAg
ICAgV2ViUGFnZSogbV93ZWJQYWdlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yLm1l
c3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJU
cmVlL1JlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yLm1lc3NhZ2VzLmluCmluZGV4IGExMmM4NDdi
ZGNmY2RlZjYzZDQ2YmY0NTcyNTRmYmJkYTc1ODFkY2YuLmE3ZGRlNmVhYTkzMTUzOWFkN2E0MzQ1
NzMzNjBiMTRjMGZlNGU4ZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvci5tZXNzYWdl
cy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXllclRy
ZWUvUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3IubWVzc2FnZXMuaW4KQEAgLTI0LDYgKzI0LDcg
QEAKIAogbWVzc2FnZXMgLT4gUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3IgewogICAgIFNjcm9s
bFBvc2l0aW9uQ2hhbmdlZEZvck5vZGUodWludDY0X3Qgbm9kZUlELCBXZWJDb3JlOjpGbG9hdFBv
aW50IHNjcm9sbFBvc2l0aW9uLCBib29sIHN5bmNMYXllclBvc2l0aW9uKTsKKyAgICBBbmltYXRl
ZFNjcm9sbERpZEVuZEZvck5vZGUodWludDY0X3Qgbm9kZUlEKTsKICAgICBDdXJyZW50U25hcFBv
aW50SW5kaWNlc0NoYW5nZWRGb3JOb2RlKHVpbnQ2NF90IG5vZGVJRCwgc3RkOjpvcHRpb25hbDx1
bnNpZ25lZD4gaG9yaXpvbnRhbCwgc3RkOjpvcHRpb25hbDx1bnNpZ25lZD4gdmVydGljYWwpOwog
ICAgIFNjcm9sbGluZ1N0YXRlSW5VSVByb2Nlc3NDaGFuZ2VkKFdlYktpdDo6UmVtb3RlU2Nyb2xs
aW5nVUlTdGF0ZSB1aVN0YXRlKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvci5t
bSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1JlbW90ZUxheWVyVHJlZS9SZW1v
dGVTY3JvbGxpbmdDb29yZGluYXRvci5tbQppbmRleCBiNzgwNGNmMDhmZmM4ZmIwMjU4MjZkNzFj
ZjU0NGZlYzU3MmE3YTc5Li44NGEyZmIwZjliMjc2MmEyYzIyODliYjk1ZTk0MzEyZjZiMGYxYWE1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9SZW1vdGVMYXll
clRyZWUvUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3IubW0KKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlBhZ2UvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZVNjcm9sbGluZ0Nvb3JkaW5h
dG9yLm1tCkBAIC0xMDcsOCArMTA3LDE0IEBAIHZvaWQgUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0
b3I6OmJ1aWxkVHJhbnNhY3Rpb24oUmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3JUcmFuCiAvLyBO
b3RpZmljYXRpb24gZnJvbSB0aGUgVUkgcHJvY2VzcyB0aGF0IHdlIHNjcm9sbGVkLgogdm9pZCBS
ZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvcjo6c2Nyb2xsUG9zaXRpb25DaGFuZ2VkRm9yTm9kZShT
Y3JvbGxpbmdOb2RlSUQgbm9kZUlELCBjb25zdCBGbG9hdFBvaW50JiBzY3JvbGxQb3NpdGlvbiwg
Ym9vbCBzeW5jTGF5ZXJQb3NpdGlvbikKIHsKLSAgICBhdXRvIHNjcm9sbFVwZGF0ZSA9IFNjcm9s
bFVwZGF0ZSB7IG5vZGVJRCwgc2Nyb2xsUG9zaXRpb24sIHsgfSwgc3luY0xheWVyUG9zaXRpb24g
PyBTY3JvbGxpbmdMYXllclBvc2l0aW9uQWN0aW9uOjpTeW5jIDogU2Nyb2xsaW5nTGF5ZXJQb3Np
dGlvbkFjdGlvbjo6U2V0IH07Ci0gICAgYXBwbHlTY3JvbGxVcGRhdGUoV1RGTW92ZShzY3JvbGxV
cGRhdGUpLCBTY3JvbGxUeXBlOjpVc2VyKTsKKyAgICBhdXRvIHNjcm9sbFVwZGF0ZSA9IFNjcm9s
bFVwZGF0ZSB7IG5vZGVJRCwgc2Nyb2xsUG9zaXRpb24sIHsgfSwgU2Nyb2xsVXBkYXRlVHlwZTo6
UG9zaXRpb25VcGRhdGUsIHN5bmNMYXllclBvc2l0aW9uID8gU2Nyb2xsaW5nTGF5ZXJQb3NpdGlv
bkFjdGlvbjo6U3luYyA6IFNjcm9sbGluZ0xheWVyUG9zaXRpb25BY3Rpb246OlNldCB9OworICAg
IGFwcGx5U2Nyb2xsVXBkYXRlKFdURk1vdmUoc2Nyb2xsVXBkYXRlKSk7Cit9CisKK3ZvaWQgUmVt
b3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OmFuaW1hdGVkU2Nyb2xsRGlkRW5kRm9yTm9kZShTY3Jv
bGxpbmdOb2RlSUQgbm9kZUlEKQoreworICAgIGF1dG8gc2Nyb2xsVXBkYXRlID0gU2Nyb2xsVXBk
YXRlIHsgbm9kZUlELCB7IH0sIHsgfSwgU2Nyb2xsVXBkYXRlVHlwZTo6QW5pbWF0ZWRTY3JvbGxE
aWRFbmQgfTsKKyAgICBhcHBseVNjcm9sbFVwZGF0ZShXVEZNb3ZlKHNjcm9sbFVwZGF0ZSkpOwog
fQogCiB2b2lkIFJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yOjpjdXJyZW50U25hcFBvaW50SW5k
aWNlc0NoYW5nZWRGb3JOb2RlKFNjcm9sbGluZ05vZGVJRCBub2RlSUQsIHN0ZDo6b3B0aW9uYWw8
dW5zaWduZWQ+IGhvcml6b250YWwsIHN0ZDo6b3B0aW9uYWw8dW5zaWduZWQ+IHZlcnRpY2FsKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>