<?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>235184</bug_id>
          
          <creation_ts>2022-01-13 08:21:08 -0800</creation_ts>
          <short_desc>Crash in Document::updateStyleIfNeeded() when removing a node containing the drag caret</short_desc>
          <delta_ts>2022-01-13 13:26:15 -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>HTML Editing</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="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>akeerthi</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>hi</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>mifenton</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1830551</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-01-13 08:21:08 -0800</bug_when>
    <thetext>rdar://74845918</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830554</commentid>
    <comment_count>1</comment_count>
      <attachid>449063</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-01-13 08:23:36 -0800</bug_when>
    <thetext>Created attachment 449063
Test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830573</commentid>
    <comment_count>2</comment_count>
      <attachid>449069</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-01-13 09:22:19 -0800</bug_when>
    <thetext>Created attachment 449069
For EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830586</commentid>
    <comment_count>3</comment_count>
      <attachid>449069</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-01-13 09:53:54 -0800</bug_when>
    <thetext>Comment on attachment 449069
For EWS

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

&gt; Source/WebCore/editing/FrameSelection.cpp:543
&gt; -    clear();
&gt; +    if (RefPtr node = m_position.deepEquivalent().anchorNode())
&gt; +        invalidateCaretRect(node.get(), true);
&gt; +
&gt; +    m_position = { };
&gt; +    clearCaretRect();

I worry that nothing is left behind here other than the regression test to explain the subtle reason why this must not call clear().

Is there any way we can make this subtle point more obvious? Function naming? Some discipline across this entire class that more explicitly addresses repaint issues? Some kind of comment?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830592</commentid>
    <comment_count>4</comment_count>
      <attachid>449069</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-01-13 09:58:45 -0800</bug_when>
    <thetext>Comment on attachment 449069
For EWS

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

Thanks for the review!

&gt;&gt; Source/WebCore/editing/FrameSelection.cpp:543
&gt;&gt; +    clearCaretRect();
&gt; 
&gt; I worry that nothing is left behind here other than the regression test to explain the subtle reason why this must not call clear().
&gt; 
&gt; Is there any way we can make this subtle point more obvious? Function naming? Some discipline across this entire class that more explicitly addresses repaint issues? Some kind of comment?

That&apos;s a good point — perhaps I could factor this piece of logic out into helper method named something like, &quot;clearCaretPositionWithoutUpdatingStyle()&quot;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830594</commentid>
    <comment_count>5</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-01-13 10:00:31 -0800</bug_when>
    <thetext>(In reply to Wenson Hsieh from comment #4)
&gt; perhaps I could factor this piece of logic out into
&gt; helper method named something like,
&gt; &quot;clearCaretPositionWithoutUpdatingStyle()&quot;?

I love that.

My favorite type of comment is a good function name.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830598</commentid>
    <comment_count>6</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-01-13 10:01:22 -0800</bug_when>
    <thetext>Still might add a *brief* comment at the call site stating *why* it’s important to not update style in this case (and, by implication, why it’s not important in other cases).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830634</commentid>
    <comment_count>7</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-01-13 11:04:11 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #6)
&gt; Still might add a *brief* comment at the call site stating *why* it’s
&gt; important to not update style in this case (and, by implication, why it’s
&gt; not important in other cases).

Sounds good! Will pull it into the helper method, and add a brief comment explaining that it&apos;s unsafe to update style here due to being in the middle of node removal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830648</commentid>
    <comment_count>8</comment_count>
      <attachid>449089</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-01-13 11:42:10 -0800</bug_when>
    <thetext>Created attachment 449089
For landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830680</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-01-13 13:26:12 -0800</bug_when>
    <thetext>Committed r287992 (246019@main): &lt;https://commits.webkit.org/246019@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 449089.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>449063</attachid>
            <date>2022-01-13 08:23:36 -0800</date>
            <delta_ts>2022-01-13 08:23:36 -0800</delta_ts>
            <desc>Test case</desc>
            <filename>remove-node-on-drop.html</filename>
            <type>text/html</type>
            <size>993</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KPG1ldGEgY2hhcnNldD0idXRmOCI+CjxtZXRh
IG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2Nh
bGU9MSI+CjxzdHlsZT4KYm9keSB7CiAgICBmb250LWZhbWlseTogc3lzdGVtLXVpOwogICAgLXdl
YmtpdC11c2VyLW1vZGlmeTogcmVhZC13cml0ZTsKICAgIG1hcmdpbjogMDsKfQoKZGl2IHsKICAg
IHdpZHRoOiAzMDBweDsKICAgIGhlaWdodDogMTAwcHg7Cn0KCmRpdi5kcmFnIHsKICAgIC13ZWJr
aXQtdXNlci1zZWxlY3Q6IGFsbDsKICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyZWVuOwogICAgZm9u
dC1zaXplOiA1MHB4OwogICAgbGluZS1oZWlnaHQ6IDEwMHB4OwogICAgdGV4dC1hbGlnbjogY2Vu
dGVyOwp9CgpkaXYuZHJvcCB7CiAgICBib3JkZXI6IDFweCBzb2xpZCB0b21hdG87Cn0KPC9zdHls
ZT4KPHNjcmlwdD4KYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsICgpID0+IHsKICAgIGRvY3VtZW50
LnF1ZXJ5U2VsZWN0b3IoIi5kcm9wIikuYWRkRXZlbnRMaXN0ZW5lcigiZHJvcCIsIGV2ZW50ID0+
IHsKICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLndlYmtpdFVzZXJNb2RpZnkgPSAicmVhZC13
cml0ZS1wbGFpbnRleHQtb25seSI7CiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiYnIi
KS5yZW1vdmUoKTsKICAgIH0pOwogICAgZ2V0U2VsZWN0aW9uKCkuc2VsZWN0QWxsQ2hpbGRyZW4o
ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmRyYWciKSk7Cn0pOwo8L3NjcmlwdD4KPC9oZWFkPgo8
Ym9keT4KICAgIDxkaXYgY2xhc3M9ImRyYWciIGRyYWdnYWJsZT0idHJ1ZSI+RHJhZyBtZTwvZGl2
PgogICAgPGRpdiBjbGFzcz0iZHJvcCI+PGJyPjwvZGl2PgogICAgPHA+VG8gcnVuIHRoZSB0ZXN0
IG1hbnVhbGx5LCBkcmFnIGFuZCBkcm9wIHRoZSBzZWxlY3RlZCB0ZXh0IGludG8gdGhlIHJlZCBi
b3guPC9wPgo8L2JvZHk+CjwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>449069</attachid>
            <date>2022-01-13 09:22:19 -0800</date>
            <delta_ts>2022-01-13 10:34:58 -0800</delta_ts>
            <desc>For EWS</desc>
            <filename>bug-235184-20220113092219.patch</filename>
            <type>text/plain</type>
            <size>11433</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3ODgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjljOTg5YWQ2YTA5YjZk
NDI1MzEwZmNjZWRhMGE4OTIxYTVkODdmZS4uOTM5ZGU1ZTFiOGQ4NTFkMmQ0MTMyZTI4M2Y4MjRm
ODViOGFlZWNiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIyLTAxLTEzICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIENyYXNoIGluIERv
Y3VtZW50Ojp1cGRhdGVTdHlsZUlmTmVlZGVkKCkgd2hlbiByZW1vdmluZyBhIG5vZGUgY29udGFp
bmluZyB0aGUgZHJhZyBjYXJldAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjM1MTg0CisgICAgICAgIHJkYXI6Ly83NDg0NTkxOAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoaWxlIHBlcmZvcm1pbmcgZHJh
ZyBhbmQgZHJvcCBvdmVyIGVkaXRhYmxlIGNvbnRlbnQsIERyYWdDYXJldENvbnRyb2xsZXIgaGFu
ZGxlcyB1cGRhdGluZyBhbmQgcGFpbnRpbmcgYSBkcmFnCisgICAgICAgIGNhcmV0LCB3aGljaCBp
bmRpY2F0ZXMgd2hlcmUgdGhlIGRyYWdnZWQgY29udGVudCB3aWxsIGJlIGluc2VydGVkIHVwb24g
ZHJvcC4gSWYgdGhlIG5vZGUgY29udGFpbmluZyB0aGlzIGRyYWcKKyAgICAgICAgY2FyZXQgaXMg
ZGlzY29ubmVjdGVkLCBgRHJhZ0NhcmV0Q29udHJvbGxlcjo6bm9kZVdpbGxCZVJlbW92ZWQoKWAg
cmVzZXRzIHRoZSBkcmFnIGNhcmV0IHBvc2l0aW9uIGFuZCBpc3N1ZXMgYQorICAgICAgICByZXBh
aW50IG9uIHRoZSByZW5kZXJlciByZXNwb25zaWJsZSBmb3IgZHJhd2luZyB0aGUgZHJhZyBjYXJl
dC4gVGhpcyBjYWxsIHRvIGBub2RlV2lsbEJlUmVtb3ZlZCgpYCBvY2N1cnMgaW4gdGhlCisgICAg
ICAgIG1pZGRsZSBvZiBub2RlIHJlbW92YWwsIHNvIGl0J3MgZW5jYXBzdWxhdGVkIGJ5IGEgYFNj
cmlwdERpc2FsbG93ZWRTY29wZTo6SW5NYWluVGhyZWFkYCBzY29wZSB3aGljaCBjYXVzZXMgYQor
ICAgICAgICByZWxlYXNlIGFzc2VydGlvbiBpbiBXZWJLaXQyIGlmIGFueXRoaW5nIHRyaWVzIHRv
IHRyaWdnZXIgbGF5b3V0IG9yIHN0eWxlIHVwZGF0ZXMuCisKKyAgICAgICAgQ3VycmVudGx5LCBp
ZiB0aGUgbm9kZSBiZWluZyByZW1vdmVkIHdvdWxkIGNhdXNlIHRoZSBjYXJldCBwb3NpdGlvbiB0
byBiZSByZW1vdmVkIGFzIHdlbGwsIERyYWdDYXJldENvbnRyb2xsZXIKKyAgICAgICAgY2FsbHMg
aW50byBgc2V0Q2FyZXRQb3NpdGlvbigpYCB3aXRoIGEgbnVsbCB2aXNpYmxlIHBvc2l0aW9uLCB3
aGljaCB0aGVuIGNhbGxzIGludG8gYGludmFsaWRhdGVDYXJldFJlY3RgIHdpdGgKKyAgICAgICAg
dGhlIGN1cnJlbnQgY2FyZXQgcG9zaXRpb24ncyBhbmNob3Igbm9kZS4gSW4gdHVybiwgYGludmFs
aWRhdGVDYXJldFJlY3RgIGNvbnRhaW5zIGxvZ2ljIHRvIGlzc3VlIGEgcmVwYWludCBvbgorICAg
ICAgICB0aGUgYW5jaG9yIG5vZGUncyByZW5kZXJlciBpZiB0aGUgbm9kZSBpcyBlZGl0YWJsZS4g
SG93ZXZlciwgdG8gY2hlY2sgd2hldGhlciB0aGUgbm9kZSBpcyBlZGl0YWJsZSwgd2UgdXNlIHRo
ZQorICAgICAgICBoZWxwZXIgZnVuY3Rpb24gYFdlYkNvcmU6OmlzRWRpdGFibGVOb2RlKClgLCB3
aGljaCB0cmlnZ2VycyBhIHN0eWxlIHVwZGF0ZSBpZiBuZWVkZWQsIG9ubHkgaW4gdGhlIGNhc2Ug
d2hlcmU6CisKKyAgICAgICAgMS4gQSBzdHlsZSByZWNhbGMgaXMgbmVlZGVkLCBhbmQuLi4KKyAg
ICAgICAgMi4gVGhlIGRvY3VtZW50IGNvbnRhaW5zIGFuIGVsZW1lbnQgd2l0aCB0aGUgYC13ZWJr
aXQtdXNlci1tb2RpZnlgIENTUyBwcm9wZXJ0eS4KKworICAgICAgICBBcyBzdWNoLCBkaXJ0eWlu
ZyBlbGVtZW50IHN0eWxlcyByaWdodCBiZWZvcmUgcmVtb3ZpbmcgdGhlIGRyYWcgY2FyZXQncyBh
bmNob3Igbm9kZSBmcm9tIHRoZSBkb2N1bWVudCB3aGlsZQorICAgICAgICBkaXNwYXRjaGluZyBh
IGBkcmFnYCBvciBgZHJvcGAgZXZlbnQgaW4gYW4gZWRpdG9yIHdpdGggYC13ZWJraXQtdXNlci1t
b2RpZnk6IHJlYWQtd3JpdGU7YCBpcyBzdWZmaWNpZW50IHRvCisgICAgICAgIHRyaWdnZXIgdGhl
IHJlbGVhc2UgYXNzZXJ0aW9uIGFuZCBjYXVzZSBhIGNyYXNoLgorCisgICAgICAgIFRvIGFkZHJl
c3MgdGhpcywgaW5zdGVhZCBvZiBjYWxsaW5nIGBjbGVhcigpYCBpbnNpZGUgb2YgYERyYWdDYXJl
dENvbnRyb2xsZXI6Om5vZGVXaWxsQmVSZW1vdmVkKClgLCB3ZSBjYW4KKyAgICAgICAgaW5zdGVh
ZCBkaXJlY3RseSBpbnZhbGlkYXRlIHRoZSBjYXJldCByZWN0IHVzaW5nIHRoZSBjdXJyZW50IGRy
YWcgY2FyZXQgYW5jaG9yIChwYXNzaW5nIGluIGB0cnVlYCBmb3IKKyAgICAgICAgYGNhcmV0UmVj
dENoYW5nZWQoKWAgc2luY2Ugd2UgYWxyZWFkeSBrbm93IHRoYXQgdGhlIGRyYWcgY2FyZXQgaXMg
YmVpbmcgY2xlYXJlZCBvdXQpLCBhbmQgdGhlbiByZXNldCB0aGUgY3VycmVudAorICAgICAgICBk
cmFnIGNhcmV0IHBvc2l0aW9uIGFuZCBjYXJldCByZWN0LiBUaGlzIGFsbG93cyB1cyB0byBhdm9p
ZCB0aGUgYGlzRWRpdGFibGVOb2RlKClgIGNoZWNrIGluIHRoaXMgc2NlbmFyaW8gd2hlbgorICAg
ICAgICBkZWNpZGluZyB3aGV0aGVyIHRvIHRyaWdnZXIgcGFpbnQgaW52YWxpZGF0aW9uLCB3aGlj
aCBpcyB1bm5lY2Vzc2FyeSBiZWNhdXNlIHdlIGFscmVhZHkga25vdyB0aGF0IHRoZSBub2RlCisg
ICAgICAgIGNvbnRhaW5pbmcgdGhlIGNhcmV0IGlzIGJlaW5nIHJlbW92ZWQsIHNvIHRoZSByZW5k
ZXJlciBpcyBnb2luZyB0byBiZSByZXBhaW50ZWQgYW55d2F5cy4KKworICAgICAgICBUZXN0OiBE
cmFnQW5kRHJvcFRlc3RzLkRvTm90Q3Jhc2hXaGVuUmVtb3ZpbmdOb2RlT25Ecm9wCisKKyAgICAg
ICAgKiBlZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRyYWdD
YXJldENvbnRyb2xsZXI6Om5vZGVXaWxsQmVSZW1vdmVkKToKKwogMjAyMi0wMS0xMiAgV2Vuc29u
IEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBMaXZlIFRleHQgaXMg
c29tZXRpbWVzIGhvcml6b250YWxseSBjbGlwcGVkIHdoZW4gaW5qZWN0aW5nIFRleHRSZWNvZ25p
dGlvbkJsb2NrRGF0YQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNl
bGVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcApp
bmRleCBkYjE2MmE0YzU4OThmZTJlOTQyODlmMGM5Njg1MDAwMzc2YTNmYjBjLi4wNDA0MzYyN2Ew
ZjA4ZTI3Njg2ODdiZTM1ZDU3NTM4NmQzYmM4ZDg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L0ZyYW1lU2VsZWN0aW9uLmNwcApAQCAtNTM2LDcgKzUzNiwxMSBAQCB2b2lkIERyYWdDYXJldENv
bnRyb2xsZXI6Om5vZGVXaWxsQmVSZW1vdmVkKE5vZGUmIG5vZGUpCiAgICAgaWYgKFJlbmRlclZp
ZXcqIHZpZXcgPSBub2RlLmRvY3VtZW50KCkucmVuZGVyVmlldygpKQogICAgICAgICB2aWV3LT5z
ZWxlY3Rpb24oKS5jbGVhcigpOwogCi0gICAgY2xlYXIoKTsKKyAgICBpZiAoUmVmUHRyIG5vZGUg
PSBtX3Bvc2l0aW9uLmRlZXBFcXVpdmFsZW50KCkuYW5jaG9yTm9kZSgpKQorICAgICAgICBpbnZh
bGlkYXRlQ2FyZXRSZWN0KG5vZGUuZ2V0KCksIHRydWUpOworCisgICAgbV9wb3NpdGlvbiA9IHsg
fTsKKyAgICBjbGVhckNhcmV0UmVjdCgpOwogfQogCiB2b2lkIEZyYW1lU2VsZWN0aW9uOjpub2Rl
V2lsbEJlUmVtb3ZlZChOb2RlJiBub2RlKQpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIv
VG9vbHMvQ2hhbmdlTG9nCmluZGV4IDY4NTFmNjEyODk0Y2Y5YmZkODFlMTM1MWRkNDFiNzBmMzI1
YzVkZGMuLjczZWIwMGViOThmY2FhYTE4NWQ0ZWU0ZDZkNDIyN2YzMmE2N2E4MDIgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBA
QAorMjAyMi0wMS0xMyAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKwor
ICAgICAgICBDcmFzaCBpbiBEb2N1bWVudDo6dXBkYXRlU3R5bGVJZk5lZWRlZCgpIHdoZW4gcmVt
b3ZpbmcgYSBub2RlIGNvbnRhaW5pbmcgdGhlIGRyYWcgY2FyZXQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNTE4NAorICAgICAgICByZGFyOi8vNzQ4
NDU5MTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGQgYSB0ZXN0IHRvIGV4ZXJjaXNlIHRoZSBjcmFzaCB1c2luZyBkcmFnIGFuZCBkcm9wIGluIFdl
YktpdDIsIG9uIGJvdGggaU9TIGFuZCBtYWNPUy4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkv
VGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIFRlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0L3JlbW92ZS1ub2RlLW9uLWRyb3AuaHRtbDogQWRkZWQuCisg
ICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9EcmFnQW5kRHJvcFRlc3Rz
Lm1tOgorICAgICAgICAoVEVTVCk6CisKIDIwMjItMDEtMTEgIENhcmxvcyBHYXJjaWEgQ2FtcG9z
ICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdW2ExMXldIFdlYiBwcm9jZXNz
IGNyYXNoZXMgaW4gc29tZSBzaXRlcyBoYXZpbmcgU1ZHIGltYWdlcwpkaWZmIC0tZ2l0IGEvVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2og
Yi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCBiMWZhMWViZmFlYzUwY2ZjNmJlNDU4ODE1MDI4NjEzNTdhYTljMzU1Li5lNTYy
OWZiMTc2ZDQyMjY4NDQxMTQ5ZDMxYTQwOTYyYzQzNzNlYjJlIDEwMDY0NAotLS0gYS9Ub29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysg
Yi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagpAQCAtMTAzNCw2ICsxMDM0LDcgQEAKIAkJRjQzRTNCQzEyMERBREJDNTAwQTRFN0VEIC8q
IGZpeGVkLW5hdi1iYXIuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBGNDNFM0JDMDIwREFEQjgwMDBBNEU3RUQgLyogZml4ZWQtbmF2LWJh
ci5odG1sICovOyB9OwogCQlGNDQyODUxRDIxNDBERjI5MDBDQ0RBMjIgLyogTlNGb250UGFuZWxU
ZXN0aW5nLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RjQ0Mjg1MUMyMTQwREYyOTAwQ0NEQTIyIC8qIE5TRm9udFBhbmVsVGVzdGluZy5tbSAqLzsgfTsK
IAkJRjQ0NTFDNzYxRUI4RkQ4OTAwMjBDNURBIC8qIHR3by1wYXJhZ3JhcGgtY29udGVudGVkaXRh
YmxlLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRjQ0NTFDNzUxRUI4RkQ3QzAwMjBDNURBIC8qIHR3by1wYXJhZ3JhcGgtY29udGVudGVk
aXRhYmxlLmh0bWwgKi87IH07CisJCUY0NDc2RjRCMjc5MDgyRjkwMDkzMTc4NiAvKiByZW1vdmUt
bm9kZS1vbi1kcm9wLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRjQ0NzZGNEEyNzkwODJFQjAwOTMxNzg2IC8qIHJlbW92ZS1ub2RlLW9u
LWRyb3AuaHRtbCAqLzsgfTsKIAkJRjQ0QTUzMTEyMUI4OTkwMzAwREJCOTlDIC8qIEluc3RhbmNl
TWV0aG9kU3dpenpsZXIubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBGNDRBNTMxMDIxQjg5NzY5MDBEQkI5OUMgLyogSW5zdGFuY2VNZXRob2RTd2l6emxl
ci5tbSAqLzsgfTsKIAkJRjQ0QTlBRjcyNjQ5QkJERDAwRTdDQjE2IC8qIEltbWVkaWF0ZUFjdGlv
blRlc3RzLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RjQ0QTlBRjYyNjQ5QkJERDAwRTdDQjE2IC8qIEltbWVkaWF0ZUFjdGlvblRlc3RzLm1tICovOyB9
OwogCQlGNDRDN0EwMDIwRjlFRUJGMDAxNDQ3OEMgLyogUGFyc2VyWWllbGRUb2tlblBsdWdJbi5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0NEM3OUZC
MjBGOUU1MEMwMDE0NDc4QyAvKiBQYXJzZXJZaWVsZFRva2VuUGx1Z0luLm1tICovOyB9OwpAQCAt
MTI2MSw2ICsxMjYyLDcgQEAKIAkJCQkyRUZGMDZDNTFEODg2Nzc2MDAwNEJCMzAgLyogY2hhbmdl
LXZpZGVvLXNvdXJjZS1vbi1jbGljay5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCTJF
RkYwNkM3MUQ4ODZBNTgwMDA0QkIzMCAvKiBjaGFuZ2UtdmlkZW8tc291cmNlLW9uLWVuZC5odG1s
IGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCTlCRDQyMzlDMUUwNEMwMUMwMDIwMDM5NSAvKiBj
aGluZXNlLWNoYXJhY3Rlci13aXRoLWltYWdlLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCisJ
CQkJRjQ0NzZGNEIyNzkwODJGOTAwOTMxNzg2IC8qIHJlbW92ZS1ub2RlLW9uLWRyb3AuaHRtbCBp
biBDb3B5IFJlc291cmNlcyAqLywKIAkJCQk4MzlBQTM1RjIxQTI2QjAzMDA5ODBERDYgLyogY2xp
ZW50LXNpZGUtcmVkaXJlY3QuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQlGNDIyQTNF
QjIzNUJCMTYyMDBDRjAwQ0EgLyogY2xpcGJvYXJkLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8s
CiAJCQkJMUE1MEFBMjAxQTJBNTFGQzAwRjRDMzQ1IC8qIGNsb3NlLWZyb20td2l0aGluLWNyZWF0
ZS1wYWdlLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCkBAIC0yOTg3LDYgKzI5ODksNyBAQAog
CQlGNDQyODUxQjIxNDBERjI5MDBDQ0RBMjIgLyogTlNGb250UGFuZWxUZXN0aW5nLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IE5TRm9udFBhbmVsVGVzdGluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlGNDQyODUxQzIxNDBERjI5MDBDQ0RBMjIgLyogTlNGb250UGFuZWxUZXN0aW5nLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gTlNGb250UGFuZWxUZXN0aW5nLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlGNDQ1MUM3NTFFQjhGRDdDMDAyMEM1REEgLyogdHdvLXBhcmFncmFw
aC1jb250ZW50ZWRpdGFibGUuaHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRtbDsgcGF0aCA9ICJ0d28t
cGFyYWdyYXBoLWNvbnRlbnRlZGl0YWJsZS5odG1sIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRjQ0NzZGNEEyNzkwODJFQjAwOTMxNzg2IC8qIHJlbW92ZS1ub2RlLW9uLWRyb3AuaHRt
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQuaHRtbDsgcGF0aCA9ICJyZW1vdmUtbm9kZS1vbi1kcm9wLmh0bWwi
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNDRBNTMwRDIxQjg5NzY5MDBEQkI5OUMg
LyogSW5zdGFuY2VNZXRob2RTd2l6emxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5h
bWUgPSBJbnN0YW5jZU1ldGhvZFN3aXp6bGVyLmg7IHBhdGggPSAuLi9UZXN0UnVubmVyU2hhcmVk
L2NvY29hL0luc3RhbmNlTWV0aG9kU3dpenpsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJRjQ0QTUzMEUyMUI4OTc2OTAwREJCOTlDIC8qIENsYXNzTWV0aG9kU3dpenpsZXIubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSBDbGFzc01ldGhvZFN3aXp6
bGVyLm1tOyBwYXRoID0gLi4vVGVzdFJ1bm5lclNoYXJlZC9jb2NvYS9DbGFzc01ldGhvZFN3aXp6
bGVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNDRBNTMwRjIxQjg5NzY5MDBE
QkI5OUMgLyogQ2xhc3NNZXRob2RTd2l6emxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IG5hbWUgPSBDbGFzc01ldGhvZFN3aXp6bGVyLmg7IHBhdGggPSAuLi9UZXN0UnVubmVyU2hhcmVk
L2NvY29hL0NsYXNzTWV0aG9kU3dpenpsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
QEAgLTQ2MzIsNiArNDYzNSw3IEBACiAJCQkJNDZDM0FFQjIyM0QwRTUwRjAwMUIwNjgwIC8qIGJl
Zm9yZXVubG9hZC5odG1sICovLAogCQkJCTdDNDg2QkEwMUFBMTI1NEIwMDNGNkY5QiAvKiBidW5k
bGUtZmlsZS5odG1sICovLAogCQkJCTlCRDQyMzlCMUUwNEJGRDAwMDIwMDM5NSAvKiBjaGluZXNl
LWNoYXJhY3Rlci13aXRoLWltYWdlLmh0bWwgKi8sCisJCQkJRjQ0NzZGNEEyNzkwODJFQjAwOTMx
Nzg2IC8qIHJlbW92ZS1ub2RlLW9uLWRyb3AuaHRtbCAqLywKIAkJCQkxQTUwQUExRjFBMkE0RUE1
MDBGNEMzNDUgLyogY2xvc2UtZnJvbS13aXRoaW4tY3JlYXRlLXBhZ2UuaHRtbCAqLywKIAkJCQk5
QjI3MEZFRDFEREMyNUZEMDAyRDUzRjMgLyogY2xvc2VkLXNoYWRvdy10cmVlLXRlc3QuaHRtbCAq
LywKIAkJCQkzMTkwM0M5MDI3NjRGRTE0MDAzNjM0NzIgLyogY29sb3Itc2NoZW1lLmh0bWwgKi8s
CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9yZW1vdmUtbm9k
ZS1vbi1kcm9wLmh0bWwgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9yZW1vdmUt
bm9kZS1vbi1kcm9wLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTM3YzE1YWFkNmRhODNlZDJiNjI4MDNhZTFl
NjhmMGUzODc2YWY1OQotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0L3JlbW92ZS1ub2RlLW9uLWRyb3AuaHRtbApAQCAtMCwwICsxLDQ1IEBACis8IURP
Q1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGY4Ij4KKzxtZXRh
IG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2Nh
bGU9MSI+Cis8c3R5bGU+Citib2R5IHsKKyAgICBmb250LWZhbWlseTogc3lzdGVtLXVpOworICAg
IC13ZWJraXQtdXNlci1tb2RpZnk6IHJlYWQtd3JpdGU7CisgICAgbWFyZ2luOiAwOworfQorCitk
aXYgeworICAgIHdpZHRoOiAzMDBweDsKKyAgICBoZWlnaHQ6IDEwMHB4OworfQorCitkaXYuZHJh
ZyB7CisgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogYWxsOworICAgIGJvcmRlcjogMXB4IHNvbGlk
IGdyZWVuOworICAgIGZvbnQtc2l6ZTogNTBweDsKKyAgICBsaW5lLWhlaWdodDogMTAwcHg7Cisg
ICAgdGV4dC1hbGlnbjogY2VudGVyOworfQorCitkaXYuZHJvcCB7CisgICAgYm9yZGVyOiAxcHgg
c29saWQgdG9tYXRvOworfQorPC9zdHlsZT4KKzxzY3JpcHQ+CithZGRFdmVudExpc3RlbmVyKCJs
b2FkIiwgKCkgPT4geworICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5kcm9wIikuYWRkRXZl
bnRMaXN0ZW5lcigiZHJvcCIsIGV2ZW50ID0+IHsKKyAgICAgICAgZG9jdW1lbnQuYm9keS5zdHls
ZS53ZWJraXRVc2VyTW9kaWZ5ID0gInJlYWQtd3JpdGUtcGxhaW50ZXh0LW9ubHkiOworICAgICAg
ICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJiciIpLnJlbW92ZSgpOworICAgIH0pOworICAgIGdl
dFNlbGVjdGlvbigpLnNlbGVjdEFsbENoaWxkcmVuKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5k
cmFnIikpOworfSk7Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxkaXYgY2xhc3M9
ImRyYWciIGRyYWdnYWJsZT0idHJ1ZSI+RHJhZyBtZTwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImRy
b3AiPjxicj48L2Rpdj4KKyAgICA8cD5UbyBydW4gdGhlIHRlc3QgbWFudWFsbHksIGRyYWcgYW5k
IGRyb3AgdGhlIHNlbGVjdGVkIHRleHQgaW50byB0aGUgcmVkIGJveC48L3A+Cis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L0RyYWdBbmREcm9wVGVzdHMubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENv
Y29hL0RyYWdBbmREcm9wVGVzdHMubW0KaW5kZXggODFhNWVkYzA0ZGQ0ZjdmZGY1MWFhOTNkOTgx
MDFiNjcwN2M2NDUxZC4uM2Y0YjUzY2NiMTAwY2Y2NzVhZWFiMDBhMDI1YmU0Y2U3M2RlNWNjYiAx
MDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9EcmFnQW5k
RHJvcFRlc3RzLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
RHJhZ0FuZERyb3BUZXN0cy5tbQpAQCAtMzExLDYgKzMxMSwxNSBAQCBURVNUKERyYWdBbmREcm9w
VGVzdHMsIERhdGFUcmFuc2ZlclR5cGVzT25EcmFnU3RhcnRGb3JMaW5rKQogICAgIEVYUEVDVF9G
QUxTRShyZXN1bHQuY29udGFpbnNGaWxlKTsKIH0KIAorVEVTVChEcmFnQW5kRHJvcFRlc3RzLCBE
b05vdENyYXNoV2hlblJlbW92aW5nTm9kZU9uRHJvcCkKK3sKKyAgICBhdXRvIHNpbXVsYXRvciA9
IGFkb3B0TlMoW1tEcmFnQW5kRHJvcFNpbXVsYXRvciBhbGxvY10gaW5pdFdpdGhXZWJWaWV3RnJh
bWU6Q0dSZWN0TWFrZSgwLCAwLCAzMjAsIDUwMCldKTsKKyAgICBhdXRvIHdlYlZpZXcgPSBbc2lt
dWxhdG9yIHdlYlZpZXddOworICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkVGVzdFBhZ2VO
YW1lZDpAInJlbW92ZS1ub2RlLW9uLWRyb3AiXTsKKyAgICBbc2ltdWxhdG9yIHJ1bkZyb206Q0dQ
b2ludE1ha2UoMTUwLCA1MCkgdG86Q0dQb2ludE1ha2UoMTUwLCAxNTApXTsKKyAgICBFWFBFQ1Rf
VFJVRShbW3dlYlZpZXcgY29udGVudHNBc1N0cmluZ10gY29udGFpbnNTdHJpbmc6QCJEcmFnIG1l
Il0pOworfQorCiAjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCiAKIFRFU1QoRHJhZ0FuZERy
b3BUZXN0cywgQ29sb3JJbnB1dFRvQ29sb3JJbnB1dCkK
</data>
<flag name="review"
          id="475055"
          type_id="1"
          status="+"
          setter="darin"
    />
    <flag name="commit-queue"
          id="475066"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>449089</attachid>
            <date>2022-01-13 11:42:10 -0800</date>
            <delta_ts>2022-01-13 13:26:14 -0800</delta_ts>
            <desc>For landing</desc>
            <filename>bug-235184-20220113114209.patch</filename>
            <type>text/plain</type>
            <size>12413</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3ODgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjljOTg5YWQ2YTA5YjZk
NDI1MzEwZmNjZWRhMGE4OTIxYTVkODdmZS4uN2UxMjE0ZGUxZmNkNDg4NzFjNDQzODllMTc3ZmU0
ZjI4MmMwZTA2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDIyLTAxLTEzICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIENyYXNoIGluIERv
Y3VtZW50Ojp1cGRhdGVTdHlsZUlmTmVlZGVkKCkgd2hlbiByZW1vdmluZyBhIG5vZGUgY29udGFp
bmluZyB0aGUgZHJhZyBjYXJldAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjM1MTg0CisgICAgICAgIHJkYXI6Ly83NDg0NTkxOAorCisgICAgICAgIFJl
dmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIFdoaWxlIHBlcmZvcm1pbmcgZHJhZyBh
bmQgZHJvcCBvdmVyIGVkaXRhYmxlIGNvbnRlbnQsIERyYWdDYXJldENvbnRyb2xsZXIgaGFuZGxl
cyB1cGRhdGluZyBhbmQgcGFpbnRpbmcgYSBkcmFnCisgICAgICAgIGNhcmV0LCB3aGljaCBpbmRp
Y2F0ZXMgd2hlcmUgdGhlIGRyYWdnZWQgY29udGVudCB3aWxsIGJlIGluc2VydGVkIHVwb24gZHJv
cC4gSWYgdGhlIG5vZGUgY29udGFpbmluZyB0aGlzIGRyYWcKKyAgICAgICAgY2FyZXQgaXMgZGlz
Y29ubmVjdGVkLCBgRHJhZ0NhcmV0Q29udHJvbGxlcjo6bm9kZVdpbGxCZVJlbW92ZWQoKWAgcmVz
ZXRzIHRoZSBkcmFnIGNhcmV0IHBvc2l0aW9uIGFuZCBpc3N1ZXMgYQorICAgICAgICByZXBhaW50
IG9uIHRoZSByZW5kZXJlciByZXNwb25zaWJsZSBmb3IgZHJhd2luZyB0aGUgZHJhZyBjYXJldC4g
VGhpcyBjYWxsIHRvIGBub2RlV2lsbEJlUmVtb3ZlZCgpYCBvY2N1cnMgaW4gdGhlCisgICAgICAg
IG1pZGRsZSBvZiBub2RlIHJlbW92YWwsIHNvIGl0J3MgZW5jYXBzdWxhdGVkIGJ5IGEgYFNjcmlw
dERpc2FsbG93ZWRTY29wZTo6SW5NYWluVGhyZWFkYCBzY29wZSB3aGljaCBjYXVzZXMgYQorICAg
ICAgICByZWxlYXNlIGFzc2VydGlvbiBpbiBXZWJLaXQyIGlmIGFueXRoaW5nIHRyaWVzIHRvIHRy
aWdnZXIgbGF5b3V0IG9yIHN0eWxlIHVwZGF0ZXMuCisKKyAgICAgICAgQ3VycmVudGx5LCBpZiB0
aGUgbm9kZSBiZWluZyByZW1vdmVkIHdvdWxkIGNhdXNlIHRoZSBjYXJldCBwb3NpdGlvbiB0byBi
ZSByZW1vdmVkIGFzIHdlbGwsIERyYWdDYXJldENvbnRyb2xsZXIKKyAgICAgICAgY2FsbHMgaW50
byBgc2V0Q2FyZXRQb3NpdGlvbigpYCB3aXRoIGEgbnVsbCB2aXNpYmxlIHBvc2l0aW9uLCB3aGlj
aCB0aGVuIGNhbGxzIGludG8gYGludmFsaWRhdGVDYXJldFJlY3RgIHdpdGgKKyAgICAgICAgdGhl
IGN1cnJlbnQgY2FyZXQgcG9zaXRpb24ncyBhbmNob3Igbm9kZS4gSW4gdHVybiwgYGludmFsaWRh
dGVDYXJldFJlY3RgIGNvbnRhaW5zIGxvZ2ljIHRvIGlzc3VlIGEgcmVwYWludCBvbgorICAgICAg
ICB0aGUgYW5jaG9yIG5vZGUncyByZW5kZXJlciBpZiB0aGUgbm9kZSBpcyBlZGl0YWJsZS4gSG93
ZXZlciwgdG8gY2hlY2sgd2hldGhlciB0aGUgbm9kZSBpcyBlZGl0YWJsZSwgd2UgdXNlIHRoZQor
ICAgICAgICBoZWxwZXIgZnVuY3Rpb24gYFdlYkNvcmU6OmlzRWRpdGFibGVOb2RlKClgLCB3aGlj
aCB0cmlnZ2VycyBhIHN0eWxlIHVwZGF0ZSBpZiBuZWVkZWQsIG9ubHkgaW4gdGhlIGNhc2Ugd2hl
cmU6CisKKyAgICAgICAgMS4gQSBzdHlsZSByZWNhbGMgaXMgbmVlZGVkLCBhbmQuLi4KKyAgICAg
ICAgMi4gVGhlIGRvY3VtZW50IGNvbnRhaW5zIGFuIGVsZW1lbnQgd2l0aCB0aGUgYC13ZWJraXQt
dXNlci1tb2RpZnlgIENTUyBwcm9wZXJ0eS4KKworICAgICAgICBBcyBzdWNoLCBkaXJ0eWluZyBl
bGVtZW50IHN0eWxlcyByaWdodCBiZWZvcmUgcmVtb3ZpbmcgdGhlIGRyYWcgY2FyZXQncyBhbmNo
b3Igbm9kZSBmcm9tIHRoZSBkb2N1bWVudCB3aGlsZQorICAgICAgICBkaXNwYXRjaGluZyBhIGBk
cmFnYCBvciBgZHJvcGAgZXZlbnQgaW4gYW4gZWRpdG9yIHdpdGggYC13ZWJraXQtdXNlci1tb2Rp
Znk6IHJlYWQtd3JpdGU7YCBpcyBzdWZmaWNpZW50IHRvCisgICAgICAgIHRyaWdnZXIgdGhlIHJl
bGVhc2UgYXNzZXJ0aW9uIGFuZCBjYXVzZSBhIGNyYXNoLgorCisgICAgICAgIFRvIGFkZHJlc3Mg
dGhpcywgaW5zdGVhZCBvZiBjYWxsaW5nIGBjbGVhcigpYCBpbnNpZGUgb2YgYERyYWdDYXJldENv
bnRyb2xsZXI6Om5vZGVXaWxsQmVSZW1vdmVkKClgLCB3ZSBjYW4KKyAgICAgICAgaW5zdGVhZCBk
aXJlY3RseSBpbnZhbGlkYXRlIHRoZSBjYXJldCByZWN0IHVzaW5nIHRoZSBjdXJyZW50IGRyYWcg
Y2FyZXQgYW5jaG9yIChwYXNzaW5nIGluIGB0cnVlYCBmb3IKKyAgICAgICAgYGNhcmV0UmVjdENo
YW5nZWQoKWAgc2luY2Ugd2UgYWxyZWFkeSBrbm93IHRoYXQgdGhlIGRyYWcgY2FyZXQgaXMgYmVp
bmcgY2xlYXJlZCBvdXQpLCBhbmQgdGhlbiByZXNldCB0aGUgY3VycmVudAorICAgICAgICBkcmFn
IGNhcmV0IHBvc2l0aW9uIGFuZCBjYXJldCByZWN0LiBUaGlzIGFsbG93cyB1cyB0byBhdm9pZCB0
aGUgYGlzRWRpdGFibGVOb2RlKClgIGNoZWNrIGluIHRoaXMgc2NlbmFyaW8gd2hlbgorICAgICAg
ICBkZWNpZGluZyB3aGV0aGVyIHRvIHRyaWdnZXIgcGFpbnQgaW52YWxpZGF0aW9uLCB3aGljaCBp
cyB1bm5lY2Vzc2FyeSBiZWNhdXNlIHdlIGFscmVhZHkga25vdyB0aGF0IHRoZSBub2RlCisgICAg
ICAgIGNvbnRhaW5pbmcgdGhlIGNhcmV0IGlzIGJlaW5nIHJlbW92ZWQsIHNvIHRoZSByZW5kZXJl
ciBpcyBnb2luZyB0byBiZSByZXBhaW50ZWQgYW55d2F5cy4gV2UgYWxzbyBwdWxsIHRoaXMgbG9n
aWMKKyAgICAgICAgb3V0IGludG8gYSBzZXBhcmF0ZSBoZWxwZXIgbWV0aG9kLCBgY2xlYXJDYXJl
dFBvc2l0aW9uV2l0aG91dFVwZGF0aW5nU3R5bGUoKWAsIHRvIG1ha2UgaXQgY2xlYXIgdGhhdCB3
ZSBtdXN0CisgICAgICAgIGF2b2lkIHRyaWdnZXJpbmcgc3R5bGUgcmVjYWxjIGhlcmUuCisKKyAg
ICAgICAgVGVzdDogRHJhZ0FuZERyb3BUZXN0cy5Eb05vdENyYXNoV2hlblJlbW92aW5nTm9kZU9u
RHJvcAorCisgICAgICAgICogZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpEcmFnQ2FyZXRDb250cm9sbGVyOjpub2RlV2lsbEJlUmVtb3ZlZCk6CisgICAgICAg
IChXZWJDb3JlOjpEcmFnQ2FyZXRDb250cm9sbGVyOjpjbGVhckNhcmV0UG9zaXRpb25XaXRob3V0
VXBkYXRpbmdTdHlsZSk6CisgICAgICAgICogZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5oOgorCiAy
MDIyLTAxLTEyICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAg
ICAgIExpdmUgVGV4dCBpcyBzb21ldGltZXMgaG9yaXpvbnRhbGx5IGNsaXBwZWQgd2hlbiBpbmpl
Y3RpbmcgVGV4dFJlY29nbml0aW9uQmxvY2tEYXRhCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJh
bWVTZWxlY3Rpb24uY3BwCmluZGV4IGRiMTYyYTRjNTg5OGZlMmU5NDI4OWYwYzk2ODUwMDAzNzZh
M2ZiMGMuLmFkYWI5ZDFhOGNjN2MwOWRjZjlkNjc4NjhlM2ZlMDg5NzIzNGRiZmYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwCkBAIC01MzYsNyArNTM2LDE3IEBA
IHZvaWQgRHJhZ0NhcmV0Q29udHJvbGxlcjo6bm9kZVdpbGxCZVJlbW92ZWQoTm9kZSYgbm9kZSkK
ICAgICBpZiAoUmVuZGVyVmlldyogdmlldyA9IG5vZGUuZG9jdW1lbnQoKS5yZW5kZXJWaWV3KCkp
CiAgICAgICAgIHZpZXctPnNlbGVjdGlvbigpLmNsZWFyKCk7CiAKLSAgICBjbGVhcigpOworICAg
IC8vIEl0J3MgaW1wb3J0YW50IHRvIGF2b2lkIHVwZGF0aW5nIHN0eWxlIG9yIGxheW91dCBoZXJl
LCBzaW5jZSB3ZSdyZSBpbiB0aGUgbWlkZGxlIG9mIHJlbW92aW5nIHRoZSBub2RlIGZyb20gdGhl
IGRvY3VtZW50LgorICAgIGNsZWFyQ2FyZXRQb3NpdGlvbldpdGhvdXRVcGRhdGluZ1N0eWxlKCk7
Cit9CisKK3ZvaWQgRHJhZ0NhcmV0Q29udHJvbGxlcjo6Y2xlYXJDYXJldFBvc2l0aW9uV2l0aG91
dFVwZGF0aW5nU3R5bGUoKQoreworICAgIGlmIChSZWZQdHIgbm9kZSA9IG1fcG9zaXRpb24uZGVl
cEVxdWl2YWxlbnQoKS5hbmNob3JOb2RlKCkpCisgICAgICAgIGludmFsaWRhdGVDYXJldFJlY3Qo
bm9kZS5nZXQoKSwgdHJ1ZSk7CisKKyAgICBtX3Bvc2l0aW9uID0geyB9OworICAgIGNsZWFyQ2Fy
ZXRSZWN0KCk7CiB9CiAKIHZvaWQgRnJhbWVTZWxlY3Rpb246Om5vZGVXaWxsQmVSZW1vdmVkKE5v
ZGUmIG5vZGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0
aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmgKaW5kZXggZWRh
Y2I2M2NiZWJkM2EzZTkzZDNkMGYxZjk3MzllYWJhZjdmNzY1Mi4uMGQ2ZjFlZTZmMDVlNDM5NmYy
NzhjNThmN2I4MWZkNDQyZTYwM2ZiZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9GcmFtZVNlbGVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxl
Y3Rpb24uaApAQCAtMTA1LDYgKzEwNSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIG5vZGVXaWxsQmVS
ZW1vdmVkKE5vZGUmKTsKIAogcHJpdmF0ZToKKyAgICB2b2lkIGNsZWFyQ2FyZXRQb3NpdGlvbldp
dGhvdXRVcGRhdGluZ1N0eWxlKCk7CisKICAgICBWaXNpYmxlUG9zaXRpb24gbV9wb3NpdGlvbjsK
IH07CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRl
eCA2ODUxZjYxMjg5NGNmOWJmZDgxZTEzNTFkZDQxYjcwZjMyNWM1ZGRjLi5lN2RlMDk1YTMwZDhh
MWU4MmViODg5ODI5MTI1YTM4NTQ2MjE4NjU2IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cK
KysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMjItMDEtMTMgIFdlbnNv
biBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggaW4gRG9j
dW1lbnQ6OnVwZGF0ZVN0eWxlSWZOZWVkZWQoKSB3aGVuIHJlbW92aW5nIGEgbm9kZSBjb250YWlu
aW5nIHRoZSBkcmFnIGNhcmV0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMzUxODQKKyAgICAgICAgcmRhcjovLzc0ODQ1OTE4CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgQWRkIGEgdGVzdCB0byBleGVyY2lzZSB0
aGUgY3Jhc2ggdXNpbmcgZHJhZyBhbmQgZHJvcCBpbiBXZWJLaXQyLCBvbiBib3RoIGlPUyBhbmQg
bWFjT1MuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9y
ZW1vdmUtbm9kZS1vbi1kcm9wLmh0bWw6IEFkZGVkLgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0Q29jb2EvRHJhZ0FuZERyb3BUZXN0cy5tbToKKyAgICAgICAgKFRFU1QpOgor
CiAyMDIyLTAxLTExICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4K
IAogICAgICAgICBbR1RLXVthMTF5XSBXZWIgcHJvY2VzcyBjcmFzaGVzIGluIHNvbWUgc2l0ZXMg
aGF2aW5nIFNWRyBpbWFnZXMKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdl
YktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggYjFmYTFlYmZhZWM1
MGNmYzZiZTQ1ODgxNTAyODYxMzU3YWE5YzM1NS4uZjhlY2ExNzVhMjhkMjZiZjg2OTZmMGMyMThm
Yzk4ZjhhZDczOWY1NCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0
QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEwMzQsNiArMTAzNCw3
IEBACiAJCUY0M0UzQkMxMjBEQURCQzUwMEE0RTdFRCAvKiBmaXhlZC1uYXYtYmFyLmh0bWwgaW4g
Q29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQzRTNC
QzAyMERBREI4MDAwQTRFN0VEIC8qIGZpeGVkLW5hdi1iYXIuaHRtbCAqLzsgfTsKIAkJRjQ0Mjg1
MUQyMTQwREYyOTAwQ0NEQTIyIC8qIE5TRm9udFBhbmVsVGVzdGluZy5tbSBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0NDI4NTFDMjE0MERGMjkwMENDREEy
MiAvKiBOU0ZvbnRQYW5lbFRlc3RpbmcubW0gKi87IH07CiAJCUY0NDUxQzc2MUVCOEZEODkwMDIw
QzVEQSAvKiB0d28tcGFyYWdyYXBoLWNvbnRlbnRlZGl0YWJsZS5odG1sIGluIENvcHkgUmVzb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0NDUxQzc1MUVCOEZEN0Mw
MDIwQzVEQSAvKiB0d28tcGFyYWdyYXBoLWNvbnRlbnRlZGl0YWJsZS5odG1sICovOyB9OworCQlG
NDQ3NkY0QjI3OTA4MkY5MDA5MzE3ODYgLyogcmVtb3ZlLW5vZGUtb24tZHJvcC5odG1sIGluIENv
cHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0NDc2RjRB
Mjc5MDgyRUIwMDkzMTc4NiAvKiByZW1vdmUtbm9kZS1vbi1kcm9wLmh0bWwgKi87IH07CiAJCUY0
NEE1MzExMjFCODk5MDMwMERCQjk5QyAvKiBJbnN0YW5jZU1ldGhvZFN3aXp6bGVyLm1tIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ0QTUzMTAyMUI4OTc2
OTAwREJCOTlDIC8qIEluc3RhbmNlTWV0aG9kU3dpenpsZXIubW0gKi87IH07CiAJCUY0NEE5QUY3
MjY0OUJCREQwMEU3Q0IxNiAvKiBJbW1lZGlhdGVBY3Rpb25UZXN0cy5tbSBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0NEE5QUY2MjY0OUJCREQwMEU3Q0Ix
NiAvKiBJbW1lZGlhdGVBY3Rpb25UZXN0cy5tbSAqLzsgfTsKIAkJRjQ0QzdBMDAyMEY5RUVCRjAw
MTQ0NzhDIC8qIFBhcnNlcllpZWxkVG9rZW5QbHVnSW4ubW0gaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDRDNzlGQjIwRjlFNTBDMDAxNDQ3OEMgLyogUGFy
c2VyWWllbGRUb2tlblBsdWdJbi5tbSAqLzsgfTsKQEAgLTE1MjMsNiArMTUyNCw3IEBACiAJCQkJ
RjQxQUI5QTgxRUY0Njk2QjAwODNGQTA4IC8qIHByZXZlbnQtb3BlcmF0aW9uLmh0bWwgaW4gQ29w
eSBSZXNvdXJjZXMgKi8sCiAJCQkJRjQxQUI5QTkxRUY0Njk2QjAwODNGQTA4IC8qIHByZXZlbnQt
c3RhcnQuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQlGNkZERERENjE0MjQxQzZGMDA0
RjE3MjkgLyogcHVzaC1zdGF0ZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAorCQkJCUY0NDc2
RjRCMjc5MDgyRjkwMDkzMTc4NiAvKiByZW1vdmUtbm9kZS1vbi1kcm9wLmh0bWwgaW4gQ29weSBS
ZXNvdXJjZXMgKi8sCiAJCQkJQTEyRERDMDAxRTgzNzNFNzAwQ0Y2Q0FFIC8qIHJlbmRlcmVkLWlt
YWdlLWV4Y2x1ZGluZy1vdmVyZmxvdy5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCTQ5
OEQwMzBBMjYzNzZCMzQwMDlDQkZBRCAvKiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWlzc2luZ1Vu
aXF1ZUluZGV4LmRiIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCUY0Njg0OUMwMUVFRjVFRjMw
MEI5MzdGRSAvKiByaWNoLWFuZC1wbGFpbi10ZXh0Lmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8s
CkBAIC0yOTg3LDYgKzI5ODksNyBAQAogCQlGNDQyODUxQjIxNDBERjI5MDBDQ0RBMjIgLyogTlNG
b250UGFuZWxUZXN0aW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5TRm9udFBhbmVsVGVzdGluZy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNDQyODUxQzIxNDBERjI5MDBDQ0RBMjIgLyog
TlNGb250UGFuZWxUZXN0aW5nLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTlNGb250UGFuZWxU
ZXN0aW5nLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNDQ1MUM3NTFFQjhGRDdD
MDAyMEM1REEgLyogdHdvLXBhcmFncmFwaC1jb250ZW50ZWRpdGFibGUuaHRtbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQuaHRtbDsgcGF0aCA9ICJ0d28tcGFyYWdyYXBoLWNvbnRlbnRlZGl0YWJsZS5odG1sIjsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ0NzZGNEEyNzkwODJFQjAwOTMxNzg2IC8q
IHJlbW92ZS1ub2RlLW9uLWRyb3AuaHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRtbDsgcGF0aCA9ICJy
ZW1vdmUtbm9kZS1vbi1kcm9wLmh0bWwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlG
NDRBNTMwRDIxQjg5NzY5MDBEQkI5OUMgLyogSW5zdGFuY2VNZXRob2RTd2l6emxlci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBJbnN0YW5jZU1ldGhvZFN3aXp6bGVyLmg7IHBh
dGggPSAuLi9UZXN0UnVubmVyU2hhcmVkL2NvY29hL0luc3RhbmNlTWV0aG9kU3dpenpsZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjQ0QTUzMEUyMUI4OTc2OTAwREJCOTlDIC8q
IENsYXNzTWV0aG9kU3dpenpsZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IG5hbWUgPSBDbGFzc01ldGhvZFN3aXp6bGVyLm1tOyBwYXRoID0gLi4vVGVzdFJ1bm5lclNoYXJl
ZC9jb2NvYS9DbGFzc01ldGhvZFN3aXp6bGVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlGNDRBNTMwRjIxQjg5NzY5MDBEQkI5OUMgLyogQ2xhc3NNZXRob2RTd2l6emxlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDbGFzc01ldGhvZFN3aXp6bGVyLmg7IHBh
dGggPSAuLi9UZXN0UnVubmVyU2hhcmVkL2NvY29hL0NsYXNzTWV0aG9kU3dpenpsZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTQ2OTMsNiArNDY5Niw3IEBACiAJCQkJODMxNDhC
MDgyMDJBQzc2ODAwQkFERTk5IC8qIG92ZXJyaWRlLWJ1aWx0aW5zLXRlc3QuaHRtbCAqLywKIAkJ
CQkwRUJCQ0M2NTFGRkY5RENFMDBGQTQyQUIgLyogcG9wLXVwLWNoZWNrLmh0bWwgKi8sCiAJCQkJ
RjZGRERERDUxNDI0MUM0ODAwNEYxNzI5IC8qIHB1c2gtc3RhdGUuaHRtbCAqLywKKwkJCQlGNDQ3
NkY0QTI3OTA4MkVCMDA5MzE3ODYgLyogcmVtb3ZlLW5vZGUtb24tZHJvcC5odG1sICovLAogCQkJ
CTBGNTY1MUY4MUZDRTUwRTgwMDMxMEZCQyAvKiBzY3JvbGwtdG8tYW5jaG9yLmh0bWwgKi8sCiAJ
CQkJN0E2NkJEQjcxRUFGMTUwMTAwQ0NDOTI0IC8qIHNldC1sb25nLXRpdGxlLmh0bWwgKi8sCiAJ
CQkJQ0VCQUJENDgxQjcxNjg3QzAwNTEyMTBBIC8qIHNob3VsZC1vcGVuLWV4dGVybmFsLXNjaGVt
ZXMuaHRtbCAqLywKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
L3JlbW92ZS1ub2RlLW9uLWRyb3AuaHRtbCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0L3JlbW92ZS1ub2RlLW9uLWRyb3AuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41MzdjMTVhYWQ2ZGE4M2Vk
MmI2MjgwM2FlMWU2OGYwZTM4NzZhZjU5Ci0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXQvcmVtb3ZlLW5vZGUtb24tZHJvcC5odG1sCkBAIC0wLDAgKzEs
NDUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0
ZjgiPgorPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwg
aW5pdGlhbC1zY2FsZT0xIj4KKzxzdHlsZT4KK2JvZHkgeworICAgIGZvbnQtZmFtaWx5OiBzeXN0
ZW0tdWk7CisgICAgLXdlYmtpdC11c2VyLW1vZGlmeTogcmVhZC13cml0ZTsKKyAgICBtYXJnaW46
IDA7Cit9CisKK2RpdiB7CisgICAgd2lkdGg6IDMwMHB4OworICAgIGhlaWdodDogMTAwcHg7Cit9
CisKK2Rpdi5kcmFnIHsKKyAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBhbGw7CisgICAgYm9yZGVy
OiAxcHggc29saWQgZ3JlZW47CisgICAgZm9udC1zaXplOiA1MHB4OworICAgIGxpbmUtaGVpZ2h0
OiAxMDBweDsKKyAgICB0ZXh0LWFsaWduOiBjZW50ZXI7Cit9CisKK2Rpdi5kcm9wIHsKKyAgICBi
b3JkZXI6IDFweCBzb2xpZCB0b21hdG87Cit9Cis8L3N0eWxlPgorPHNjcmlwdD4KK2FkZEV2ZW50
TGlzdGVuZXIoImxvYWQiLCAoKSA9PiB7CisgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmRy
b3AiKS5hZGRFdmVudExpc3RlbmVyKCJkcm9wIiwgZXZlbnQgPT4geworICAgICAgICBkb2N1bWVu
dC5ib2R5LnN0eWxlLndlYmtpdFVzZXJNb2RpZnkgPSAicmVhZC13cml0ZS1wbGFpbnRleHQtb25s
eSI7CisgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImJyIikucmVtb3ZlKCk7CisgICAg
fSk7CisgICAgZ2V0U2VsZWN0aW9uKCkuc2VsZWN0QWxsQ2hpbGRyZW4oZG9jdW1lbnQucXVlcnlT
ZWxlY3RvcigiLmRyYWciKSk7Cit9KTsKKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisgICAg
PGRpdiBjbGFzcz0iZHJhZyIgZHJhZ2dhYmxlPSJ0cnVlIj5EcmFnIG1lPC9kaXY+CisgICAgPGRp
diBjbGFzcz0iZHJvcCI+PGJyPjwvZGl2PgorICAgIDxwPlRvIHJ1biB0aGUgdGVzdCBtYW51YWxs
eSwgZHJhZyBhbmQgZHJvcCB0aGUgc2VsZWN0ZWQgdGV4dCBpbnRvIHRoZSByZWQgYm94LjwvcD4K
KzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0Q29jb2EvRHJhZ0FuZERyb3BUZXN0cy5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Q29jb2EvRHJhZ0FuZERyb3BUZXN0cy5tbQppbmRleCA4MWE1ZWRjMDRkZDRmN2Zk
ZjUxYWE5M2Q5ODEwMWI2NzA3YzY0NTFkLi4zZjRiNTNjY2IxMDBjZjY3NWFlYWIwMGEwMjViZTRj
ZTczZGU1Y2NiIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENv
Y29hL0RyYWdBbmREcm9wVGVzdHMubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRDb2NvYS9EcmFnQW5kRHJvcFRlc3RzLm1tCkBAIC0zMTEsNiArMzExLDE1IEBAIFRFU1Qo
RHJhZ0FuZERyb3BUZXN0cywgRGF0YVRyYW5zZmVyVHlwZXNPbkRyYWdTdGFydEZvckxpbmspCiAg
ICAgRVhQRUNUX0ZBTFNFKHJlc3VsdC5jb250YWluc0ZpbGUpOwogfQogCitURVNUKERyYWdBbmRE
cm9wVGVzdHMsIERvTm90Q3Jhc2hXaGVuUmVtb3ZpbmdOb2RlT25Ecm9wKQoreworICAgIGF1dG8g
c2ltdWxhdG9yID0gYWRvcHROUyhbW0RyYWdBbmREcm9wU2ltdWxhdG9yIGFsbG9jXSBpbml0V2l0
aFdlYlZpZXdGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIDMyMCwgNTAwKV0pOworICAgIGF1dG8gd2Vi
VmlldyA9IFtzaW11bGF0b3Igd2ViVmlld107CisgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxv
YWRUZXN0UGFnZU5hbWVkOkAicmVtb3ZlLW5vZGUtb24tZHJvcCJdOworICAgIFtzaW11bGF0b3Ig
cnVuRnJvbTpDR1BvaW50TWFrZSgxNTAsIDUwKSB0bzpDR1BvaW50TWFrZSgxNTAsIDE1MCldOwor
ICAgIEVYUEVDVF9UUlVFKFtbd2ViVmlldyBjb250ZW50c0FzU3RyaW5nXSBjb250YWluc1N0cmlu
ZzpAIkRyYWcgbWUiXSk7Cit9CisKICNpZiBFTkFCTEUoSU5QVVRfVFlQRV9DT0xPUikKIAogVEVT
VChEcmFnQW5kRHJvcFRlc3RzLCBDb2xvcklucHV0VG9Db2xvcklucHV0KQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>