<?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>227691</bug_id>
          
          <creation_ts>2021-07-05 14:44:06 -0700</creation_ts>
          <short_desc>[GTK] Touchscreen navigation swipe doesn&apos;t work when the page scrolls horizontally</short_desc>
          <delta_ts>2021-07-09 04:47:44 -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>WebKitGTK</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alice Mikhaylenko">alicem</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>berto</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>cgarcia</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gustavo</cc>
    
    <cc>mcatanzaro</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1774852</commentid>
    <comment_count>0</comment_count>
    <who name="Alice Mikhaylenko">alicem</who>
    <bug_when>2021-07-05 14:44:06 -0700</bug_when>
    <thetext>This may sound like https://bugs.webkit.org/show_bug.cgi?id=226173 but it&apos;s ever so slightly different.

That bug happens with GTK4 only and the reason for it is different, so filing this one separately.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774917</commentid>
    <comment_count>1</comment_count>
      <attachid>432917</attachid>
    <who name="Alice Mikhaylenko">alicem</who>
    <bug_when>2021-07-06 04:18:56 -0700</bug_when>
    <thetext>Created attachment 432917
Patch

Probably doesn&apos;t apply without https://bugs.webkit.org/show_bug.cgi?id=226745</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774922</commentid>
    <comment_count>2</comment_count>
    <who name="Alice Mikhaylenko">alicem</who>
    <bug_when>2021-07-06 04:43:40 -0700</bug_when>
    <thetext>Hm, there&apos;s a crash when tapping after a scroll.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774930</commentid>
    <comment_count>3</comment_count>
    <who name="Alice Mikhaylenko">alicem</who>
    <bug_when>2021-07-06 06:24:58 -0700</bug_when>
    <thetext>It&apos;s the fact that we put the event back if WebCore hasn&apos;t handled them and then it gets processed again even though it shouldn&apos;t be.

Makes me wonder how or why it works for scroll events.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775243</commentid>
    <comment_count>4</comment_count>
      <attachid>433023</attachid>
    <who name="Alice Mikhaylenko">alicem</who>
    <bug_when>2021-07-07 06:02:51 -0700</bug_when>
    <thetext>Created attachment 433023
Patch

Fixed. For now, just don&apos;t propagate touch events, there&apos;s no real point in doing that anyway.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775736</commentid>
    <comment_count>5</comment_count>
      <attachid>433148</attachid>
    <who name="Alice Mikhaylenko">alicem</who>
    <bug_when>2021-07-08 11:31:44 -0700</bug_when>
    <thetext>Created attachment 433148
Patch

Oh wow, so the style script can determine if a name is redundant or not?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775737</commentid>
    <comment_count>6</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2021-07-08 11:32:42 -0700</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See https://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775953</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-07-09 03:56:37 -0700</bug_when>
    <thetext>(In reply to Alexander Mikhaylenko from comment #5)
&gt; Created attachment 433148 [details]
&gt; Patch
&gt; 
&gt; Oh wow, so the style script can determine if a name is redundant or not?

Yeah that&apos;s a little weird, but the rule is to name the parameter only in the source file, and leave it unnamed in the header file to save a bit of space (if the name is going to be something obvious like e.g. &quot;Point point&quot;).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775959</commentid>
    <comment_count>8</comment_count>
    <who name="Alice Mikhaylenko">alicem</who>
    <bug_when>2021-07-09 04:28:52 -0700</bug_when>
    <thetext>Yeah, I know the rule, but didn&apos;t think the script could catch that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775960</commentid>
    <comment_count>9</comment_count>
      <attachid>433148</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-07-09 04:43:53 -0700</bug_when>
    <thetext>Comment on attachment 433148
Patch

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

&gt; Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp:444
&gt; +    // Wheel events can have either scroll events or touch events attached to them.
&gt; +    // We only want to propagate scroll events; touch events are controlled via their
&gt; +    // event sequences and if we&apos;re scrolling with touch events, that sequence is
&gt; +    // already claimed and there&apos;s no point in propagating it.

Thanks for adding a comment to explain the weird behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775962</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-07-09 04:47:42 -0700</bug_when>
    <thetext>Committed r279779 (239546@main): &lt;https://commits.webkit.org/239546@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 433148.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432917</attachid>
            <date>2021-07-06 04:18:56 -0700</date>
            <delta_ts>2021-07-07 06:02:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-Patch.patch</filename>
            <type>text/plain</type>
            <size>13760</size>
            <attacher name="Alice Mikhaylenko">alicem</attacher>
            
              <data encoding="base64">RnJvbSAzNmJjOWI4NDQzMDVhZGMwOTNkMDNmYTI1N2NjYzhmMDNlNTk2OGNjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGV4YW5kZXIgTWlraGF5bGVua28gPGFsZXhtQGdub21lLm9y
Zz4KRGF0ZTogVHVlLCA2IEp1bCAyMDIxIDE2OjE3OjIxICswNTAwClN1YmplY3Q6IFtQQVRDSF0g
UGF0Y2gKCi0tLQogU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAg
IHwgMzcgKysrKysrKysrKysrKysrKysrKwogU291cmNlL1dlYktpdC9TaGFyZWQvTmF0aXZlV2Vi
V2hlZWxFdmVudC5oICAgIHwgIDIgKy0KIC4uLi9TaGFyZWQvZ3RrL05hdGl2ZVdlYldoZWVsRXZl
bnRHdGsuY3BwICAgICB8ICAzICstCiAuLi4vVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudElt
cGwuY3BwICAgICAgfCAgNiArLS0KIC4uLi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3
QmFzZS5jcHAgICB8IDMwICsrKysrKysrKysrLS0tLQogLi4uL0FQSS9ndGsvV2ViS2l0V2ViVmll
d0Jhc2VQcml2YXRlLmggICAgICAgIHwgIDIgKwogNiBmaWxlcyBjaGFuZ2VkLCA2NiBpbnNlcnRp
b25zKCspLCAxNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGZhMThkZjk0ZjBjMC4uNjY0YWU5
ZmI4NWM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIxLTA3LTA2ICBBbGV4YW5kZXIg
TWlraGF5bGVua28gIDxhbGV4bUBnbm9tZS5vcmc+CisKKyAgICAgICAgW0dUS10gVG91Y2hzY3Jl
ZW4gbmF2aWdhdGlvbiBzd2lwZSBkb2Vzbid0IHdvcmsgd2hlbiB0aGUgcGFnZSBzY3JvbGxzIGhv
cml6b250YWxseQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjI3NjkxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgV2hlbiB0aGUgcGFnZSBzY3JvbGxzIGhvcml6b250YWxseSwgd2UgaGF2ZSBhIHNlcGFyYXRl
IGNvZGUgcGF0aCBmb3IgZXZlbnRzIHRoYXQKKyAgICAgICAgV2ViQ29yZSBkaWRuJ3QgaGFuZGxl
IGFuZCB3aGljaCBhcmUgY29uc2lkZXJlZCBzYWZlIHRvIHVzZSB0byBzdGFydCBhIHN3aXBlCisg
ICAgICAgIGdlc3R1cmUuIFVuZm9ydHVuYXRlbHksIHRoYXQgY29kZSByZWxpZXMgb24gdGhlIE5h
dGl2ZVdlYldoZWVsRXZlbnRzIGNvbnRhaW5pbmcgYQorICAgICAgICBHZGtFdmVudCwgd2hpY2gg
aXMgb25seSB0aGUgY2FzZSBmb3IgYWN0dWFsIHNjcm9sbCBldmVudHMsIGJ1dCBub3Qgc3ludGhl
c2l6ZWQKKyAgICAgICAgc2Nyb2xsIGV2ZW50cyBvbiB0b3VjaHNjcmVlbiwgYW5kIHRoZSBuZWVk
ZWQgaW5mbyAoaW5wdXQgc291cmNlIHR5cGUgYW5kIGEgcHJvcGVyCisgICAgICAgIHRpbWVzdGFt
cCBpbnN0ZWFkIG9mIHRoZSB0cnVuY2F0ZWQgb25lIHdhbGxUaW1lRm9yRXZlbnRUaW1lKCkgcHJv
ZHVjZXMpIGlzIG5vdAorICAgICAgICBzdG9yZWQgaW4gTmF0aXZlV2ViV2hlZWxFdmVudC4KKwor
ICAgICAgICBXaGlsZSB3ZSBkb24ndCBoYXZlIEdka0V2ZW50cyBmb3IgZXZlcnkgc2l0dWF0aW9u
IHdlIHN5bnRoZXNpemUgd2hlZWwgZXZlbnRzIGluLAorICAgICAgICB3ZSBkbyBoYXZlIHRoZW0g
Zm9yIHRvdWNoc2NyZWVuIGdlc3R1cmVzLiBUaGV5IGFyZW4ndCBHZGtTY3JvbGxFdmVudHMsIGJ1
dCB0aGF0CisgICAgICAgIGlzbid0IGEgcHJvYmxlbSAtIHRoZSBvbmx5IHRoaW5ncyB3ZSB1c2Ug
dGhhdCBhcmUgc3BlY2lmaWMgdG8gR2RrU2Nyb2xsRXZlbnQgYXJlCisgICAgICAgIHNjcm9sbCBk
ZWx0YXMgYW5kIHdoZXRoZXIgaXQncyBhIHNjcm9sbCBzdG9wIGV2ZW50LCBhbmQgdGhhdCdzIGFs
c28gc3RvcmVkIGluCisgICAgICAgIE5hdGl2ZVdlYldoZWVsRXZlbnQsIGFuZCB3ZSBvbmx5IG5l
ZWQgR2RrRXZlbnQgZm9yIHRoZSB0aW1lIGFuZCBpbnB1dCBzb3VyY2UgdHlwZSwKKyAgICAgICAg
d2hlcmUgdGhlIGV2ZW50IHR5cGUgZG9lc24ndCByZWFsbHkgbWF0dGVyLgorCisgICAgICAgICog
U2hhcmVkL05hdGl2ZVdlYldoZWVsRXZlbnQuaDoKKyAgICAgICAgKiBTaGFyZWQvZ3RrL05hdGl2
ZVdlYldoZWVsRXZlbnRHdGsuY3BwOgorICAgICAgICAoV2ViS2l0OjpOYXRpdmVXZWJXaGVlbEV2
ZW50OjpOYXRpdmVXZWJXaGVlbEV2ZW50KToKKyAgICAgICAgQWRkIGEgR2RrRXZlbnQgcGFyYW1l
dGVyIHRvIHRoZSByZW1haW5pbmcgY29uc3RydWN0b3IuCisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9ndGsvUGFnZUNsaWVudEltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpQYWdlQ2xpZW50SW1w
bDo6d2hlZWxFdmVudFdhc05vdEhhbmRsZWRCeVdlYkNvcmUpOgorICAgICAgICAqIFVJUHJvY2Vz
cy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdCYXNlLmNwcDoKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdC
YXNlWm9vbUJlZ2luKToKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdCYXNlVG91Y2hEcmFnQmVnaW4p
OgorICAgICAgICAod2Via2l0V2ViVmlld0Jhc2VUb3VjaERyYWdVcGRhdGUpOgorICAgICAgICAo
d2Via2l0V2ViVmlld0Jhc2VUb3VjaFN3aXBlKToKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdCYXNl
U3ludGhlc2l6ZVdoZWVsRXZlbnQpOgorICAgICAgICBTcGxpdCBpbnRvIHZlcnNpb25zIHdpdGgg
YW5kIHdpdGhvdXQgYSBHZGtFdmVudCBwYXJhbWV0ZXIuCisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9ndGsvV2ViS2l0V2ViVmlld0Jhc2VQcml2YXRlLmg6CisKIDIwMjEtMDctMDYgIEFsZXhhbmRl
ciBNaWtoYXlsZW5rbyAgPGFsZXhtQGdub21lLm9yZz4KIAogICAgICAgICBbR1RLXSBUb28gZWFz
eSB0byB0cmlnZ2VyIG5hdmlnYXRpb24gc3dpcGUgb24gdG91Y2hzY3JlZW4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL05hdGl2ZVdlYldoZWVsRXZlbnQuaCBiL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL05hdGl2ZVdlYldoZWVsRXZlbnQuaAppbmRleCBhYTljYjBlNDQ4YzYuLmY0OGRj
MDA3NTViNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvTmF0aXZlV2ViV2hlZWxF
dmVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL05hdGl2ZVdlYldoZWVsRXZlbnQuaApA
QCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAgICAgTmF0aXZlV2ViV2hlZWxFdmVudChHZGtFdmVu
dCopOwogICAgIE5hdGl2ZVdlYldoZWVsRXZlbnQoR2RrRXZlbnQqLCBXZWJXaGVlbEV2ZW50OjpQ
aGFzZSwgV2ViV2hlZWxFdmVudDo6UGhhc2UgbW9tZW50dW1QaGFzZSk7CiAgICAgTmF0aXZlV2Vi
V2hlZWxFdmVudChHZGtFdmVudCosIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgY29uc3QgV2Vi
Q29yZTo6RmxvYXRTaXplJiB3aGVlbFRpY2tzKTsKLSAgICBOYXRpdmVXZWJXaGVlbEV2ZW50KGNv
bnN0IFdlYkNvcmU6OkludFBvaW50JiBwb3NpdGlvbiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQm
IGdsb2JhbFBvc2l0aW9uLCBjb25zdCBXZWJDb3JlOjpGbG9hdFNpemUmIGRlbHRhLCBjb25zdCBX
ZWJDb3JlOjpGbG9hdFNpemUmIHdoZWVsVGlja3MsIFdlYldoZWVsRXZlbnQ6OlBoYXNlLCBXZWJX
aGVlbEV2ZW50OjpQaGFzZSBtb21lbnR1bVBoYXNlKTsKKyAgICBOYXRpdmVXZWJXaGVlbEV2ZW50
KEdka0V2ZW50KiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHBvc2l0aW9uLCBjb25zdCBXZWJD
b3JlOjpJbnRQb2ludCYgZ2xvYmFsUG9zaXRpb24sIGNvbnN0IFdlYkNvcmU6OkZsb2F0U2l6ZSYg
ZGVsdGEsIGNvbnN0IFdlYkNvcmU6OkZsb2F0U2l6ZSYgd2hlZWxUaWNrcywgV2ViV2hlZWxFdmVu
dDo6UGhhc2UsIFdlYldoZWVsRXZlbnQ6OlBoYXNlIG1vbWVudHVtUGhhc2UpOwogI2VsaWYgVVNF
KExJQldQRSkKICAgICBOYXRpdmVXZWJXaGVlbEV2ZW50KHN0cnVjdCB3cGVfaW5wdXRfYXhpc19l
dmVudCosIGZsb2F0IGRldmljZVNjYWxlRmFjdG9yLCBXZWJXaGVlbEV2ZW50OjpQaGFzZSwgV2Vi
V2hlZWxFdmVudDo6UGhhc2UgbW9tZW50dW1QaGFzZSk7CiAjZWxpZiBQTEFURk9STShXSU4pCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9ndGsvTmF0aXZlV2ViV2hlZWxFdmVudEd0
ay5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9ndGsvTmF0aXZlV2ViV2hlZWxFdmVudEd0ay5j
cHAKaW5kZXggNDg4ZmJlYzkzOTFkLi4zYTY5YmUwNDQ4ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL2d0ay9OYXRpdmVXZWJXaGVlbEV2ZW50R3RrLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9ndGsvTmF0aXZlV2ViV2hlZWxFdmVudEd0ay5jcHAKQEAgLTQ5LDggKzQ5
LDkgQEAgTmF0aXZlV2ViV2hlZWxFdmVudDo6TmF0aXZlV2ViV2hlZWxFdmVudChHZGtFdmVudCog
ZXZlbnQsIGNvbnN0IFdlYkNvcmU6OkludFBvaW4KIHsKIH0KIAotTmF0aXZlV2ViV2hlZWxFdmVu
dDo6TmF0aXZlV2ViV2hlZWxFdmVudChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgcG9zaXRpb24s
IGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBnbG9iYWxQb3NpdGlvbiwgY29uc3QgV2ViQ29yZTo6
RmxvYXRTaXplJiBkZWx0YSwgY29uc3QgV2ViQ29yZTo6RmxvYXRTaXplJiB3aGVlbFRpY2tzLCBX
ZWJXaGVlbEV2ZW50OjpQaGFzZSBwaGFzZSwgV2ViV2hlZWxFdmVudDo6UGhhc2UgbW9tZW50dW1Q
aGFzZSkKK05hdGl2ZVdlYldoZWVsRXZlbnQ6Ok5hdGl2ZVdlYldoZWVsRXZlbnQoR2RrRXZlbnQg
KmV2ZW50LCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgcG9zaXRpb24sIGNvbnN0IFdlYkNvcmU6
OkludFBvaW50JiBnbG9iYWxQb3NpdGlvbiwgY29uc3QgV2ViQ29yZTo6RmxvYXRTaXplJiBkZWx0
YSwgY29uc3QgV2ViQ29yZTo6RmxvYXRTaXplJiB3aGVlbFRpY2tzLCBXZWJXaGVlbEV2ZW50OjpQ
aGFzZSBwaGFzZSwgV2ViV2hlZWxFdmVudDo6UGhhc2UgbW9tZW50dW1QaGFzZSkKICAgICA6IFdl
YldoZWVsRXZlbnQoV2ViRXZlbnQ6OldoZWVsLCBwb3NpdGlvbiwgZ2xvYmFsUG9zaXRpb24sIGRl
bHRhLCB3aGVlbFRpY2tzLCBwaGFzZSwgbW9tZW50dW1QaGFzZSwgV2ViV2hlZWxFdmVudDo6U2Ny
b2xsQnlQaXhlbFdoZWVsRXZlbnQsIGZhbHNlLCB7IH0sIFdhbGxUaW1lOjpub3coKSkKKyAgICAs
IG1fbmF0aXZlRXZlbnQoZXZlbnQgPyBnZGtfZXZlbnRfY29weShldmVudCkgOiBudWxscHRyKQog
ewogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1BhZ2VD
bGllbnRJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVu
dEltcGwuY3BwCmluZGV4IGFmY2Q2ZDBkNDhlNS4uNjVkZTI2NjdmYTFiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1BhZ2VDbGllbnRJbXBsLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1BhZ2VDbGllbnRJbXBsLmNwcApAQCAtNDI0
LDE2ICs0MjQsMTQgQEAgdm9pZCBQYWdlQ2xpZW50SW1wbDo6d2hlZWxFdmVudFdhc05vdEhhbmRs
ZWRCeVdlYkNvcmUoY29uc3QgTmF0aXZlV2ViV2hlZWxFdmVudCYKIAogICAgIFZpZXdHZXN0dXJl
Q29udHJvbGxlciogY29udHJvbGxlciA9IHdlYmtpdFdlYlZpZXdCYXNlVmlld0dlc3R1cmVDb250
cm9sbGVyKFdFQktJVF9XRUJfVklFV19CQVNFKG1fdmlld1dpZGdldCkpOwogICAgIGlmIChjb250
cm9sbGVyICYmIGNvbnRyb2xsZXItPmlzU3dpcGVHZXN0dXJlRW5hYmxlZCgpKSB7Ci0gICAgICAg
IGRvdWJsZSBkZWx0YVgsIGRlbHRhWTsKLSAgICAgICAgZ2RrX2V2ZW50X2dldF9zY3JvbGxfZGVs
dGFzKGV2ZW50Lm5hdGl2ZUV2ZW50KCksICZkZWx0YVgsICZkZWx0YVkpOwotICAgICAgICBGbG9h
dFNpemUgZGVsdGEoZGVsdGFYLCBkZWx0YVkpOworICAgICAgICBGbG9hdFNpemUgZGVsdGEoLWV2
ZW50LndoZWVsVGlja3MoKSk7CiAKICAgICAgICAgaW50MzJfdCBldmVudFRpbWUgPSBzdGF0aWNf
Y2FzdDxpbnQzMl90PihnZGtfZXZlbnRfZ2V0X3RpbWUoZXZlbnQubmF0aXZlRXZlbnQoKSkpOwog
CiAgICAgICAgIEdka0RldmljZSogZGV2aWNlID0gZ2RrX2V2ZW50X2dldF9zb3VyY2VfZGV2aWNl
KGV2ZW50Lm5hdGl2ZUV2ZW50KCkpOwogICAgICAgICBHZGtJbnB1dFNvdXJjZSBzb3VyY2UgPSBn
ZGtfZGV2aWNlX2dldF9zb3VyY2UoZGV2aWNlKTsKIAotICAgICAgICBib29sIGlzRW5kID0gZ2Rr
X2V2ZW50X2lzX3Njcm9sbF9zdG9wX2V2ZW50KGV2ZW50Lm5hdGl2ZUV2ZW50KCkpID8gdHJ1ZSA6
IGZhbHNlOworICAgICAgICBib29sIGlzRW5kID0gZXZlbnQucGhhc2UoKSA9PSBXZWJXaGVlbEV2
ZW50OjpQaGFzZTo6UGhhc2VFbmRlZDsKIAogICAgICAgICBQbGF0Zm9ybUd0a1Njcm9sbERhdGEg
c2Nyb2xsRGF0YSA9IHsgLmRlbHRhID0gZGVsdGEsIC5ldmVudFRpbWUgPSBldmVudFRpbWUsIC5z
b3VyY2UgPSBzb3VyY2UsIC5pc0VuZCA9IGlzRW5kIH07CiAgICAgICAgIGNvbnRyb2xsZXItPndo
ZWVsRXZlbnRXYXNOb3RIYW5kbGVkQnlXZWJDb3JlKCZzY3JvbGxEYXRhKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZS5jcHAKaW5k
ZXggNmQwMDc0MmUzNjQ2Li4yNDk0NmZhMWIzM2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCkBAIC0xODcxLDcgKzE4
NzEsOSBAQCBzdGF0aWMgdm9pZCB3ZWJraXRXZWJWaWV3QmFzZVpvb21CZWdpbihXZWJLaXRXZWJW
aWV3QmFzZSogd2ViVmlld0Jhc2UsIEdka0V2ZW50UwogICAgIGRvdWJsZSB4LCB5OwogICAgIGd0
a19nZXN0dXJlX2dldF9ib3VuZGluZ19ib3hfY2VudGVyKGdlc3R1cmUsICZ4LCAmeSk7CiAKLSAg
ICB3ZWJraXRXZWJWaWV3QmFzZVN5bnRoZXNpemVXaGVlbEV2ZW50KHdlYlZpZXdCYXNlLCAwLCAw
LCB4LCB5LCBXaGVlbEV2ZW50UGhhc2U6OkJlZ2FuLCBXaGVlbEV2ZW50UGhhc2U6Ok5vUGhhc2Up
OworICAgIEdka0V2ZW50KiBldmVudCA9IGd0a19ldmVudF9jb250cm9sbGVyX2dldF9jdXJyZW50
X2V2ZW50KEdUS19FVkVOVF9DT05UUk9MTEVSKGdlc3R1cmUpKTsKKworICAgIHdlYmtpdFdlYlZp
ZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQod2ViVmlld0Jhc2UsIGV2ZW50LCAwLCAwLCB4LCB5
LCBXaGVlbEV2ZW50UGhhc2U6OkJlZ2FuLCBXaGVlbEV2ZW50UGhhc2U6Ok5vUGhhc2UpOwogfQog
CiBzdGF0aWMgdm9pZCB3ZWJraXRXZWJWaWV3QmFzZVpvb21DaGFuZ2VkKFdlYktpdFdlYlZpZXdC
YXNlKiB3ZWJWaWV3QmFzZSwgZ2RvdWJsZSBzY2FsZSwgR3RrR2VzdHVyZSogZ2VzdHVyZSkKQEAg
LTE5NDIsMTMgKzE5NDQsMTUgQEAgc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0Jhc2VUb3VjaFJl
bGVhc2UoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZpZXdCYXNlLCBpbnQgblAKICAgICB3ZWJraXRX
ZWJWaWV3QmFzZVN5bnRoZXNpemVNb3VzZUV2ZW50KHdlYlZpZXdCYXNlLCBNb3VzZUV2ZW50VHlw
ZTo6UmVsZWFzZSwgYnV0dG9uLCBidXR0b25zLCB4LCB5LCBtb2RpZmllcnMsIG5QcmVzcywgdG91
Y2hQb2ludGVyRXZlbnRUeXBlKCkpOwogfQogCi1zdGF0aWMgdm9pZCB3ZWJraXRXZWJWaWV3QmFz
ZVRvdWNoRHJhZ0JlZ2luKFdlYktpdFdlYlZpZXdCYXNlKiB3ZWJWaWV3QmFzZSwgZ2RvdWJsZSBz
dGFydFgsIGdkb3VibGUgc3RhcnRZLCBHdGtHZXN0dXJlKikKK3N0YXRpYyB2b2lkIHdlYmtpdFdl
YlZpZXdCYXNlVG91Y2hEcmFnQmVnaW4oV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZpZXdCYXNlLCBn
ZG91YmxlIHN0YXJ0WCwgZ2RvdWJsZSBzdGFydFksIEd0a0dlc3R1cmUqIGdlc3R1cmUpCiB7CiAg
ICAgV2ViS2l0V2ViVmlld0Jhc2VQcml2YXRlKiBwcml2ID0gd2ViVmlld0Jhc2UtPnByaXY7CiAg
ICAgcHJpdi0+ZHJhZ09mZnNldC5zZXQoMCwgMCk7CiAgICAgcHJpdi0+aXNCZWluZ0RyYWdnZWQg
PSBmYWxzZTsKIAotICAgIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQod2Vi
Vmlld0Jhc2UsIDAsIDAsIHN0YXJ0WCwgc3RhcnRZLCBXaGVlbEV2ZW50UGhhc2U6OkJlZ2FuLCBX
aGVlbEV2ZW50UGhhc2U6Ok5vUGhhc2UpOworICAgIEdka0V2ZW50KiBldmVudCA9IGd0a19ldmVu
dF9jb250cm9sbGVyX2dldF9jdXJyZW50X2V2ZW50KEdUS19FVkVOVF9DT05UUk9MTEVSKGdlc3R1
cmUpKTsKKworICAgIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQod2ViVmll
d0Jhc2UsIGV2ZW50LCAwLCAwLCBzdGFydFgsIHN0YXJ0WSwgV2hlZWxFdmVudFBoYXNlOjpCZWdh
biwgV2hlZWxFdmVudFBoYXNlOjpOb1BoYXNlKTsKIH0KIAogc3RhdGljIHZvaWQgd2Via2l0V2Vi
Vmlld0Jhc2VUb3VjaERyYWdVcGRhdGUoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZpZXdCYXNlLCBk
b3VibGUgb2Zmc2V0WCwgZG91YmxlIG9mZnNldFksIEd0a0dlc3R1cmUqIGdlc3R1cmUpCkBAIC0x
OTYwLDYgKzE5NjQsOCBAQCBzdGF0aWMgdm9pZCB3ZWJraXRXZWJWaWV3QmFzZVRvdWNoRHJhZ1Vw
ZGF0ZShXZWJLaXRXZWJWaWV3QmFzZSogd2ViVmlld0Jhc2UsIGRvdQogICAgIGRvdWJsZSB4LCB5
OwogICAgIGd0a19nZXN0dXJlX2RyYWdfZ2V0X3N0YXJ0X3BvaW50KEdUS19HRVNUVVJFX0RSQUco
Z2VzdHVyZSksICZ4LCAmeSk7CiAKKyAgICBHZGtFdmVudCogZXZlbnQgPSBndGtfZXZlbnRfY29u
dHJvbGxlcl9nZXRfY3VycmVudF9ldmVudChHVEtfRVZFTlRfQ09OVFJPTExFUihnZXN0dXJlKSk7
CisKICAgICB1bnNpZ25lZCBtb2RpZmllcnMgPSBndGtfZXZlbnRfY29udHJvbGxlcl9nZXRfY3Vy
cmVudF9ldmVudF9zdGF0ZShHVEtfRVZFTlRfQ09OVFJPTExFUihnZXN0dXJlKSk7CiAgICAgaWYg
KCFwcml2LT5pc0JlaW5nRHJhZ2dlZCkgewogICAgICAgICBpZiAoIWd0a19kcmFnX2NoZWNrX3Ro
cmVzaG9sZChHVEtfV0lER0VUKHdlYlZpZXdCYXNlKSwgMCwgMCwgc3RhdGljX2Nhc3Q8aW50Pihv
ZmZzZXRYKSwgc3RhdGljX2Nhc3Q8aW50PihvZmZzZXRZKSkpCkBAIC0xOTcyLDcgKzE5NzgsNyBA
QCBzdGF0aWMgdm9pZCB3ZWJraXRXZWJWaWV3QmFzZVRvdWNoRHJhZ1VwZGF0ZShXZWJLaXRXZWJW
aWV3QmFzZSogd2ViVmlld0Jhc2UsIGRvdQogICAgICAgICAgICAgd2Via2l0V2ViVmlld0Jhc2VT
eW50aGVzaXplTW91c2VFdmVudCh3ZWJWaWV3QmFzZSwgTW91c2VFdmVudFR5cGU6Ok1vdGlvbiwg
MCwgMCwgeCwgeSwgbW9kaWZpZXJzLCAxLCB0b3VjaFBvaW50ZXJFdmVudFR5cGUoKSk7CiAgICAg
ICAgICAgICB3ZWJraXRXZWJWaWV3QmFzZVN5bnRoZXNpemVNb3VzZUV2ZW50KHdlYlZpZXdCYXNl
LCBNb3VzZUV2ZW50VHlwZTo6UHJlc3MsIEdES19CVVRUT05fUFJJTUFSWSwgMCwgeCwgeSwgbW9k
aWZpZXJzLCAwLCB0b3VjaFBvaW50ZXJFdmVudFR5cGUoKSk7CiAgICAgICAgIH0gZWxzZQotICAg
ICAgICAgICAgd2Via2l0V2ViVmlld0Jhc2VTeW50aGVzaXplV2hlZWxFdmVudCh3ZWJWaWV3QmFz
ZSwgMCwgMCwgeCwgeSwgV2hlZWxFdmVudFBoYXNlOjpCZWdhbiwgV2hlZWxFdmVudFBoYXNlOjpO
b1BoYXNlKTsKKyAgICAgICAgICAgIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZl
bnQod2ViVmlld0Jhc2UsIGV2ZW50LCAwLCAwLCB4LCB5LCBXaGVlbEV2ZW50UGhhc2U6OkJlZ2Fu
LCBXaGVlbEV2ZW50UGhhc2U6Ok5vUGhhc2UpOwogICAgIH0KIAogICAgIGlmIChwcml2LT5pc0xv
bmdQcmVzc2VkKQpAQCAtMTk5MSw3ICsxOTk3LDcgQEAgc3RhdGljIHZvaWQgd2Via2l0V2ViVmll
d0Jhc2VUb3VjaERyYWdVcGRhdGUoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZpZXdCYXNlLCBkb3UK
ICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KIAotICAgICAgICB3ZWJraXRXZWJW
aWV3QmFzZVN5bnRoZXNpemVXaGVlbEV2ZW50KHdlYlZpZXdCYXNlLCAtZGVsdGFYLCAtZGVsdGFZ
LCB4LCB5LCBXaGVlbEV2ZW50UGhhc2U6OkNoYW5nZWQsIFdoZWVsRXZlbnRQaGFzZTo6Tm9QaGFz
ZSk7CisgICAgICAgIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQod2ViVmll
d0Jhc2UsIGV2ZW50LCAtZGVsdGFYLCAtZGVsdGFZLCB4LCB5LCBXaGVlbEV2ZW50UGhhc2U6OkNo
YW5nZWQsIFdoZWVsRXZlbnRQaGFzZTo6Tm9QaGFzZSk7CiAgICAgfQogfQogCkBAIC0yMDI5LDgg
KzIwMzUsMTEgQEAgc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0Jhc2VUb3VjaFN3aXBlKFdlYktp
dFdlYlZpZXdCYXNlKiB3ZWJWaWV3QmFzZSwgZ2RvdWJsZQogICAgICAgICByZXR1cm47CiAKICAg
ICBkb3VibGUgeCwgeTsKLSAgICBpZiAoZ3RrX2dlc3R1cmVfZ2V0X3BvaW50KGdlc3R1cmUsIGd0
a19nZXN0dXJlX3NpbmdsZV9nZXRfY3VycmVudF9zZXF1ZW5jZShHVEtfR0VTVFVSRV9TSU5HTEUo
Z2VzdHVyZSkpLCAmeCwgJnkpKQotICAgICAgICB3ZWJraXRXZWJWaWV3QmFzZVN5bnRoZXNpemVX
aGVlbEV2ZW50KHdlYlZpZXdCYXNlLCAtdmVsb2NpdHlYLCAtdmVsb2NpdHlZLCB4LCB5LCBXaGVl
bEV2ZW50UGhhc2U6Ok5vUGhhc2UsIFdoZWVsRXZlbnRQaGFzZTo6QmVnYW4pOworICAgIGlmIChn
dGtfZ2VzdHVyZV9nZXRfcG9pbnQoZ2VzdHVyZSwgZ3RrX2dlc3R1cmVfc2luZ2xlX2dldF9jdXJy
ZW50X3NlcXVlbmNlKEdUS19HRVNUVVJFX1NJTkdMRShnZXN0dXJlKSksICZ4LCAmeSkpIHsKKyAg
ICAgICAgR2RrRXZlbnQqIGV2ZW50ID0gZ3RrX2V2ZW50X2NvbnRyb2xsZXJfZ2V0X2N1cnJlbnRf
ZXZlbnQoR1RLX0VWRU5UX0NPTlRST0xMRVIoZ2VzdHVyZSkpOworCisgICAgICAgIHdlYmtpdFdl
YlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQod2ViVmlld0Jhc2UsIGV2ZW50LCAtdmVsb2Np
dHlYLCAtdmVsb2NpdHlZLCB4LCB5LCBXaGVlbEV2ZW50UGhhc2U6Ok5vUGhhc2UsIFdoZWVsRXZl
bnRQaGFzZTo6QmVnYW4pOworICAgIH0KIH0KIAogc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0Jh
c2VDb25zdHJ1Y3RlZChHT2JqZWN0KiBvYmplY3QpCkBAIC0zMDA0LDYgKzMwMTMsMTEgQEAgc3Rh
dGljIGlubGluZSBXZWJXaGVlbEV2ZW50OjpQaGFzZSB0b1dlYktpdFdoZWVsRXZlbnRQaGFzZShX
aGVlbEV2ZW50UGhhc2UgcGhhc2UKIH0KIAogdm9pZCB3ZWJraXRXZWJWaWV3QmFzZVN5bnRoZXNp
emVXaGVlbEV2ZW50KFdlYktpdFdlYlZpZXdCYXNlKiB3ZWJWaWV3QmFzZSwgZG91YmxlIGRlbHRh
WCwgZG91YmxlIGRlbHRhWSwgaW50IHgsIGludCB5LCBXaGVlbEV2ZW50UGhhc2UgcGhhc2UsIFdo
ZWVsRXZlbnRQaGFzZSBtb21lbnR1bVBoYXNlKQoreworICAgIHdlYmtpdFdlYlZpZXdCYXNlU3lu
dGhlc2l6ZVdoZWVsRXZlbnQod2ViVmlld0Jhc2UsIG51bGxwdHIsIGRlbHRhWCwgZGVsdGFZLCB4
LCB5LCBwaGFzZSwgbW9tZW50dW1QaGFzZSk7Cit9CisKK3ZvaWQgd2Via2l0V2ViVmlld0Jhc2VT
eW50aGVzaXplV2hlZWxFdmVudChXZWJLaXRXZWJWaWV3QmFzZSogd2ViVmlld0Jhc2UsIEdka0V2
ZW50KiBldmVudCwgZG91YmxlIGRlbHRhWCwgZG91YmxlIGRlbHRhWSwgaW50IHgsIGludCB5LCBX
aGVlbEV2ZW50UGhhc2UgcGhhc2UsIFdoZWVsRXZlbnRQaGFzZSBtb21lbnR1bVBoYXNlKQogewog
ICAgIFdlYktpdFdlYlZpZXdCYXNlUHJpdmF0ZSogcHJpdiA9IHdlYlZpZXdCYXNlLT5wcml2Owog
ICAgIGlmIChwcml2LT5kaWFsb2cpCkBAIC0zMDEzLDcgKzMwMjcsNyBAQCB2b2lkIHdlYmtpdFdl
YlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZpZXdC
YXNlLCBkb3VibAogICAgIEZsb2F0U2l6ZSBkZWx0YSh3aGVlbFRpY2tzKTsKICAgICBkZWx0YS5z
Y2FsZShzdGF0aWNfY2FzdDxmbG9hdD4oU2Nyb2xsYmFyOjpwaXhlbHNQZXJMaW5lU3RlcCgpKSk7
CiAKLSAgICBwcml2LT5wYWdlUHJveHktPmhhbmRsZVdoZWVsRXZlbnQoTmF0aXZlV2ViV2hlZWxF
dmVudCh7IHgsIHkgfSwgd2lkZ2V0Um9vdENvb3JkcyhHVEtfV0lER0VUKHdlYlZpZXdCYXNlKSwg
eCwgeSksCisgICAgcHJpdi0+cGFnZVByb3h5LT5oYW5kbGVXaGVlbEV2ZW50KE5hdGl2ZVdlYldo
ZWVsRXZlbnQoZXZlbnQsIHsgeCwgeSB9LCB3aWRnZXRSb290Q29vcmRzKEdUS19XSURHRVQod2Vi
Vmlld0Jhc2UpLCB4LCB5KSwKICAgICAgICAgZGVsdGEsIHdoZWVsVGlja3MsIHRvV2ViS2l0V2hl
ZWxFdmVudFBoYXNlKHBoYXNlKSwgdG9XZWJLaXRXaGVlbEV2ZW50UGhhc2UobW9tZW50dW1QaGFz
ZSkpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9X
ZWJLaXRXZWJWaWV3QmFzZVByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9n
dGsvV2ViS2l0V2ViVmlld0Jhc2VQcml2YXRlLmgKaW5kZXggZDI4ZjljNjljYWJlLi5jMzBiY2Zi
YmI1YTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0
V2ViVmlld0Jhc2VQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0
ay9XZWJLaXRXZWJWaWV3QmFzZVByaXZhdGUuaApAQCAtMzgsNiArMzgsNyBAQAogI2luY2x1ZGUg
IldlYkluc3BlY3RvclVJUHJveHkuaCIKICNpbmNsdWRlICJXZWJLaXRJbnB1dE1ldGhvZENvbnRl
eHQuaCIKICNpbmNsdWRlICJXZWJLaXRXZWJWaWV3QmFzZS5oIgorI2luY2x1ZGUgIldlYktpdFdl
YlZpZXdCYXNlSW50ZXJuYWwuaCIKICNpbmNsdWRlICJXZWJQYWdlUHJveHkuaCIKICNpbmNsdWRl
IDxXZWJDb3JlL0RyYWdBY3Rpb25zLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TZWxlY3Rpb25EYXRh
Lmg+CkBAIC0xMTMsNiArMTE0LDcgQEAgdm9pZCB3ZWJraXRXZWJWaWV3QmFzZURpZExvc2VQb2lu
dGVyTG9jayhXZWJLaXRXZWJWaWV3QmFzZSopOwogdm9pZCB3ZWJraXRXZWJWaWV3QmFzZVNldElu
cHV0TWV0aG9kQ29udGV4dChXZWJLaXRXZWJWaWV3QmFzZSosIFdlYktpdElucHV0TWV0aG9kQ29u
dGV4dCopOwogV2ViS2l0SW5wdXRNZXRob2RDb250ZXh0KiB3ZWJraXRXZWJWaWV3QmFzZUdldElu
cHV0TWV0aG9kQ29udGV4dChXZWJLaXRXZWJWaWV3QmFzZSopOwogdm9pZCB3ZWJraXRXZWJWaWV3
QmFzZVN5bnRoZXNpemVDb21wb3NpdGlvbktleVByZXNzKFdlYktpdFdlYlZpZXdCYXNlKiwgY29u
c3QgU3RyaW5nJiB0ZXh0LCBzdGQ6Om9wdGlvbmFsPFZlY3RvcjxXZWJDb3JlOjpDb21wb3NpdGlv
blVuZGVybGluZT4+JiYsIHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpFZGl0aW5nUmFuZ2U+JiYpOwor
dm9pZCB3ZWJraXRXZWJWaWV3QmFzZVN5bnRoZXNpemVXaGVlbEV2ZW50KFdlYktpdFdlYlZpZXdC
YXNlKiwgR2RrRXZlbnQqIGV2ZW50LCBkb3VibGUgZGVsdGFYLCBkb3VibGUgZGVsdGFZLCBpbnQg
eCwgaW50IHksIFdoZWVsRXZlbnRQaGFzZSwgV2hlZWxFdmVudFBoYXNlIG1vbWVudHVtUGhhc2Up
OwogCiB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlTWFrZUJsYW5rKFdlYktpdFdlYlZpZXdCYXNlKiwg
Ym9vbCk7CiB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlUGFnZUdyYWJiZWRUb3VjaChXZWJLaXRXZWJW
aWV3QmFzZSopOwotLSAKMi4zMS4xCgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433023</attachid>
            <date>2021-07-07 06:02:51 -0700</date>
            <delta_ts>2021-07-08 11:31:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-Patch.patch</filename>
            <type>text/plain</type>
            <size>14818</size>
            <attacher name="Alice Mikhaylenko">alicem</attacher>
            
              <data encoding="base64">RnJvbSAwNTk4NjUxZTUxZjNjNTJlYjhiZGI0YjA2Yzk3NGM0YzkzYTVkYjJjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGV4YW5kZXIgTWlraGF5bGVua28gPGFsZXhtQGdub21lLm9y
Zz4KRGF0ZTogV2VkLCA3IEp1bCAyMDIxIDE3OjU5OjM3ICswNTAwClN1YmplY3Q6IFtQQVRDSF0g
UGF0Y2gKCi0tLQogU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAg
IHwgNDIgKysrKysrKysrKysrKysrKysrKwogU291cmNlL1dlYktpdC9TaGFyZWQvTmF0aXZlV2Vi
V2hlZWxFdmVudC5oICAgIHwgIDIgKy0KIC4uLi9TaGFyZWQvZ3RrL05hdGl2ZVdlYldoZWVsRXZl
bnRHdGsuY3BwICAgICB8ICAzICstCiAuLi4vVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudElt
cGwuY3BwICAgICAgfCAxNCArKysrKy0tCiAuLi4vVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2Vi
Vmlld0Jhc2UuY3BwICAgfCAzMyArKysrKysrKysrKy0tLS0KIC4uLi9BUEkvZ3RrL1dlYktpdFdl
YlZpZXdCYXNlUHJpdmF0ZS5oICAgICAgICB8ICAyICsKIDYgZmlsZXMgY2hhbmdlZCwgODIgaW5z
ZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBmYTE4ZGY5NGYwYzAuLmQz
YzJhMzUyYWQwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NSBAQAorMjAyMS0wNy0wNiAgQWxleGFu
ZGVyIE1pa2hheWxlbmtvICA8YWxleG1AZ25vbWUub3JnPgorCisgICAgICAgIFtHVEtdIFRvdWNo
c2NyZWVuIG5hdmlnYXRpb24gc3dpcGUgZG9lc24ndCB3b3JrIHdoZW4gdGhlIHBhZ2Ugc2Nyb2xs
cyBob3Jpem9udGFsbHkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNzY5MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFdoZW4gdGhlIHBhZ2Ugc2Nyb2xscyBob3Jpem9udGFsbHksIHdlIGhhdmUgYSBzZXBh
cmF0ZSBjb2RlIHBhdGggZm9yIGV2ZW50cyB0aGF0CisgICAgICAgIFdlYkNvcmUgZGlkbid0IGhh
bmRsZSBhbmQgd2hpY2ggYXJlIGNvbnNpZGVyZWQgc2FmZSB0byB1c2UgdG8gc3RhcnQgYSBzd2lw
ZQorICAgICAgICBnZXN0dXJlLiBVbmZvcnR1bmF0ZWx5LCB0aGF0IGNvZGUgcmVsaWVzIG9uIHRo
ZSBOYXRpdmVXZWJXaGVlbEV2ZW50cyBjb250YWluaW5nIGEKKyAgICAgICAgR2RrRXZlbnQsIHdo
aWNoIGlzIG9ubHkgdGhlIGNhc2UgZm9yIGFjdHVhbCBzY3JvbGwgZXZlbnRzLCBidXQgbm90IHN5
bnRoZXNpemVkCisgICAgICAgIHNjcm9sbCBldmVudHMgb24gdG91Y2hzY3JlZW4sIGFuZCB0aGUg
bmVlZGVkIGluZm8gKGlucHV0IHNvdXJjZSB0eXBlIGFuZCBhIHByb3BlcgorICAgICAgICB0aW1l
c3RhbXAgaW5zdGVhZCBvZiB0aGUgdHJ1bmNhdGVkIG9uZSB3YWxsVGltZUZvckV2ZW50VGltZSgp
IHByb2R1Y2VzKSBpcyBub3QKKyAgICAgICAgc3RvcmVkIGluIE5hdGl2ZVdlYldoZWVsRXZlbnQu
CisKKyAgICAgICAgV2hpbGUgd2UgZG9uJ3QgaGF2ZSBHZGtFdmVudHMgZm9yIGV2ZXJ5IHNpdHVh
dGlvbiB3ZSBzeW50aGVzaXplIHdoZWVsIGV2ZW50cyBpbiwKKyAgICAgICAgd2UgZG8gaGF2ZSB0
aGVtIGZvciB0b3VjaHNjcmVlbiBnZXN0dXJlcy4gVGhleSBhcmVuJ3QgR2RrU2Nyb2xsRXZlbnRz
LCBidXQgdGhhdAorICAgICAgICBpc24ndCBhIHByb2JsZW0gLSB0aGUgb25seSB0aGluZ3Mgd2Ug
dXNlIHRoYXQgYXJlIHNwZWNpZmljIHRvIEdka1Njcm9sbEV2ZW50IGFyZQorICAgICAgICBzY3Jv
bGwgZGVsdGFzIGFuZCB3aGV0aGVyIGl0J3MgYSBzY3JvbGwgc3RvcCBldmVudCwgYW5kIHRoYXQn
cyBhbHNvIHN0b3JlZCBpbgorICAgICAgICBOYXRpdmVXZWJXaGVlbEV2ZW50LCBhbmQgd2Ugb25s
eSBuZWVkIEdka0V2ZW50IGZvciB0aGUgdGltZSBhbmQgaW5wdXQgc291cmNlIHR5cGUsCisgICAg
ICAgIHdoZXJlIHRoZSBldmVudCB0eXBlIGRvZXNuJ3QgcmVhbGx5IG1hdHRlci4KKworICAgICAg
ICBTaW5jZSB0b3VjaCBHZGtFdmVudHMgYXJlIGNvbnRyb2xsZWQgdmlhIGV2ZW50IHNlcXVlbmNl
cyByYXRoZXIgdGhhbiBzdG9wL3Byb3BhZ2F0ZQorICAgICAgICByZXR1cm4gdmFsdWVzLCBkb24n
dCB0cnkgYW5kIHByb3BhZ2F0ZSB0aGVtIGlmIHdlYiBwcm9jZXNzIGhhcyByZXR1cm5lZCB0aGVt
OiB3ZSd2ZQorICAgICAgICBhbHJlYWR5IGNsYWltZWQgdGhlaXIgc2VxdWVuY2UgYmVmb3JlIHNl
bmRpbmcgdGhlbSB0byB3ZWIgcHJvY2Vzcywgc28gdGhleSB3aWxsIGJlCisgICAgICAgIG9mIG5v
IHVzZSB0byBvdGhlciB3aWRnZXRzLgorCisgICAgICAgICogU2hhcmVkL05hdGl2ZVdlYldoZWVs
RXZlbnQuaDoKKyAgICAgICAgKiBTaGFyZWQvZ3RrL05hdGl2ZVdlYldoZWVsRXZlbnRHdGsuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpOYXRpdmVXZWJXaGVlbEV2ZW50OjpOYXRpdmVXZWJXaGVlbEV2
ZW50KToKKyAgICAgICAgQWRkIGEgR2RrRXZlbnQgcGFyYW1ldGVyIHRvIHRoZSByZW1haW5pbmcg
Y29uc3RydWN0b3IuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudEltcGwu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpQYWdlQ2xpZW50SW1wbDo6d2hlZWxFdmVudFdhc05vdEhh
bmRsZWRCeVdlYkNvcmUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZp
ZXdCYXNlLmNwcDoKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdCYXNlWm9vbUJlZ2luKToKKyAgICAg
ICAgKHdlYmtpdFdlYlZpZXdCYXNlVG91Y2hEcmFnQmVnaW4pOgorICAgICAgICAod2Via2l0V2Vi
Vmlld0Jhc2VUb3VjaERyYWdVcGRhdGUpOgorICAgICAgICAod2Via2l0V2ViVmlld0Jhc2VUb3Vj
aFN3aXBlKToKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQp
OgorICAgICAgICBTcGxpdCBpbnRvIHZlcnNpb25zIHdpdGggYW5kIHdpdGhvdXQgYSBHZGtFdmVu
dCBwYXJhbWV0ZXIuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jh
c2VQcml2YXRlLmg6CisKIDIwMjEtMDctMDYgIEFsZXhhbmRlciBNaWtoYXlsZW5rbyAgPGFsZXht
QGdub21lLm9yZz4KIAogICAgICAgICBbR1RLXSBUb28gZWFzeSB0byB0cmlnZ2VyIG5hdmlnYXRp
b24gc3dpcGUgb24gdG91Y2hzY3JlZW4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L05hdGl2ZVdlYldoZWVsRXZlbnQuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL05hdGl2ZVdlYldo
ZWVsRXZlbnQuaAppbmRleCBhYTljYjBlNDQ4YzYuLmY0OGRjMDA3NTViNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9TaGFyZWQvTmF0aXZlV2ViV2hlZWxFdmVudC5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL05hdGl2ZVdlYldoZWVsRXZlbnQuaApAQCAtNjEsNyArNjEsNyBAQCBwdWJs
aWM6CiAgICAgTmF0aXZlV2ViV2hlZWxFdmVudChHZGtFdmVudCopOwogICAgIE5hdGl2ZVdlYldo
ZWVsRXZlbnQoR2RrRXZlbnQqLCBXZWJXaGVlbEV2ZW50OjpQaGFzZSwgV2ViV2hlZWxFdmVudDo6
UGhhc2UgbW9tZW50dW1QaGFzZSk7CiAgICAgTmF0aXZlV2ViV2hlZWxFdmVudChHZGtFdmVudCos
IGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgY29uc3QgV2ViQ29yZTo6RmxvYXRTaXplJiB3aGVl
bFRpY2tzKTsKLSAgICBOYXRpdmVXZWJXaGVlbEV2ZW50KGNvbnN0IFdlYkNvcmU6OkludFBvaW50
JiBwb3NpdGlvbiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIGdsb2JhbFBvc2l0aW9uLCBjb25z
dCBXZWJDb3JlOjpGbG9hdFNpemUmIGRlbHRhLCBjb25zdCBXZWJDb3JlOjpGbG9hdFNpemUmIHdo
ZWVsVGlja3MsIFdlYldoZWVsRXZlbnQ6OlBoYXNlLCBXZWJXaGVlbEV2ZW50OjpQaGFzZSBtb21l
bnR1bVBoYXNlKTsKKyAgICBOYXRpdmVXZWJXaGVlbEV2ZW50KEdka0V2ZW50KiwgY29uc3QgV2Vi
Q29yZTo6SW50UG9pbnQmIHBvc2l0aW9uLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgZ2xvYmFs
UG9zaXRpb24sIGNvbnN0IFdlYkNvcmU6OkZsb2F0U2l6ZSYgZGVsdGEsIGNvbnN0IFdlYkNvcmU6
OkZsb2F0U2l6ZSYgd2hlZWxUaWNrcywgV2ViV2hlZWxFdmVudDo6UGhhc2UsIFdlYldoZWVsRXZl
bnQ6OlBoYXNlIG1vbWVudHVtUGhhc2UpOwogI2VsaWYgVVNFKExJQldQRSkKICAgICBOYXRpdmVX
ZWJXaGVlbEV2ZW50KHN0cnVjdCB3cGVfaW5wdXRfYXhpc19ldmVudCosIGZsb2F0IGRldmljZVNj
YWxlRmFjdG9yLCBXZWJXaGVlbEV2ZW50OjpQaGFzZSwgV2ViV2hlZWxFdmVudDo6UGhhc2UgbW9t
ZW50dW1QaGFzZSk7CiAjZWxpZiBQTEFURk9STShXSU4pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9ndGsvTmF0aXZlV2ViV2hlZWxFdmVudEd0ay5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9ndGsvTmF0aXZlV2ViV2hlZWxFdmVudEd0ay5jcHAKaW5kZXggNDg4ZmJlYzkzOTFk
Li4zYTY5YmUwNDQ4ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2d0ay9OYXRp
dmVXZWJXaGVlbEV2ZW50R3RrLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9ndGsvTmF0
aXZlV2ViV2hlZWxFdmVudEd0ay5jcHAKQEAgLTQ5LDggKzQ5LDkgQEAgTmF0aXZlV2ViV2hlZWxF
dmVudDo6TmF0aXZlV2ViV2hlZWxFdmVudChHZGtFdmVudCogZXZlbnQsIGNvbnN0IFdlYkNvcmU6
OkludFBvaW4KIHsKIH0KIAotTmF0aXZlV2ViV2hlZWxFdmVudDo6TmF0aXZlV2ViV2hlZWxFdmVu
dChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgcG9zaXRpb24sIGNvbnN0IFdlYkNvcmU6OkludFBv
aW50JiBnbG9iYWxQb3NpdGlvbiwgY29uc3QgV2ViQ29yZTo6RmxvYXRTaXplJiBkZWx0YSwgY29u
c3QgV2ViQ29yZTo6RmxvYXRTaXplJiB3aGVlbFRpY2tzLCBXZWJXaGVlbEV2ZW50OjpQaGFzZSBw
aGFzZSwgV2ViV2hlZWxFdmVudDo6UGhhc2UgbW9tZW50dW1QaGFzZSkKK05hdGl2ZVdlYldoZWVs
RXZlbnQ6Ok5hdGl2ZVdlYldoZWVsRXZlbnQoR2RrRXZlbnQgKmV2ZW50LCBjb25zdCBXZWJDb3Jl
OjpJbnRQb2ludCYgcG9zaXRpb24sIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBnbG9iYWxQb3Np
dGlvbiwgY29uc3QgV2ViQ29yZTo6RmxvYXRTaXplJiBkZWx0YSwgY29uc3QgV2ViQ29yZTo6Rmxv
YXRTaXplJiB3aGVlbFRpY2tzLCBXZWJXaGVlbEV2ZW50OjpQaGFzZSBwaGFzZSwgV2ViV2hlZWxF
dmVudDo6UGhhc2UgbW9tZW50dW1QaGFzZSkKICAgICA6IFdlYldoZWVsRXZlbnQoV2ViRXZlbnQ6
OldoZWVsLCBwb3NpdGlvbiwgZ2xvYmFsUG9zaXRpb24sIGRlbHRhLCB3aGVlbFRpY2tzLCBwaGFz
ZSwgbW9tZW50dW1QaGFzZSwgV2ViV2hlZWxFdmVudDo6U2Nyb2xsQnlQaXhlbFdoZWVsRXZlbnQs
IGZhbHNlLCB7IH0sIFdhbGxUaW1lOjpub3coKSkKKyAgICAsIG1fbmF0aXZlRXZlbnQoZXZlbnQg
PyBnZGtfZXZlbnRfY29weShldmVudCkgOiBudWxscHRyKQogewogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1BhZ2VDbGllbnRJbXBsLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudEltcGwuY3BwCmluZGV4IGFmY2Q2
ZDBkNDhlNS4uMjBlODhkMzgxNDBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvZ3RrL1BhZ2VDbGllbnRJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvZ3RrL1BhZ2VDbGllbnRJbXBsLmNwcApAQCAtNDI0LDIyICs0MjQsMjggQEAgdm9pZCBQ
YWdlQ2xpZW50SW1wbDo6d2hlZWxFdmVudFdhc05vdEhhbmRsZWRCeVdlYkNvcmUoY29uc3QgTmF0
aXZlV2ViV2hlZWxFdmVudCYKIAogICAgIFZpZXdHZXN0dXJlQ29udHJvbGxlciogY29udHJvbGxl
ciA9IHdlYmtpdFdlYlZpZXdCYXNlVmlld0dlc3R1cmVDb250cm9sbGVyKFdFQktJVF9XRUJfVklF
V19CQVNFKG1fdmlld1dpZGdldCkpOwogICAgIGlmIChjb250cm9sbGVyICYmIGNvbnRyb2xsZXIt
PmlzU3dpcGVHZXN0dXJlRW5hYmxlZCgpKSB7Ci0gICAgICAgIGRvdWJsZSBkZWx0YVgsIGRlbHRh
WTsKLSAgICAgICAgZ2RrX2V2ZW50X2dldF9zY3JvbGxfZGVsdGFzKGV2ZW50Lm5hdGl2ZUV2ZW50
KCksICZkZWx0YVgsICZkZWx0YVkpOwotICAgICAgICBGbG9hdFNpemUgZGVsdGEoZGVsdGFYLCBk
ZWx0YVkpOworICAgICAgICBGbG9hdFNpemUgZGVsdGEoLWV2ZW50LndoZWVsVGlja3MoKSk7CiAK
ICAgICAgICAgaW50MzJfdCBldmVudFRpbWUgPSBzdGF0aWNfY2FzdDxpbnQzMl90PihnZGtfZXZl
bnRfZ2V0X3RpbWUoZXZlbnQubmF0aXZlRXZlbnQoKSkpOwogCiAgICAgICAgIEdka0RldmljZSog
ZGV2aWNlID0gZ2RrX2V2ZW50X2dldF9zb3VyY2VfZGV2aWNlKGV2ZW50Lm5hdGl2ZUV2ZW50KCkp
OwogICAgICAgICBHZGtJbnB1dFNvdXJjZSBzb3VyY2UgPSBnZGtfZGV2aWNlX2dldF9zb3VyY2Uo
ZGV2aWNlKTsKIAotICAgICAgICBib29sIGlzRW5kID0gZ2RrX2V2ZW50X2lzX3Njcm9sbF9zdG9w
X2V2ZW50KGV2ZW50Lm5hdGl2ZUV2ZW50KCkpID8gdHJ1ZSA6IGZhbHNlOworICAgICAgICBib29s
IGlzRW5kID0gZXZlbnQucGhhc2UoKSA9PSBXZWJXaGVlbEV2ZW50OjpQaGFzZTo6UGhhc2VFbmRl
ZDsKIAogICAgICAgICBQbGF0Zm9ybUd0a1Njcm9sbERhdGEgc2Nyb2xsRGF0YSA9IHsgLmRlbHRh
ID0gZGVsdGEsIC5ldmVudFRpbWUgPSBldmVudFRpbWUsIC5zb3VyY2UgPSBzb3VyY2UsIC5pc0Vu
ZCA9IGlzRW5kIH07CiAgICAgICAgIGNvbnRyb2xsZXItPndoZWVsRXZlbnRXYXNOb3RIYW5kbGVk
QnlXZWJDb3JlKCZzY3JvbGxEYXRhKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIC8v
IFdoZWVsIGV2ZW50cyBjYW4gaGF2ZSBlaXRoZXIgc2Nyb2xsIGV2ZW50cyBvciB0b3VjaCBldmVu
dHMgYXR0YWNoZWQgdG8gdGhlbS4KKyAgICAvLyBXZSBvbmx5IHdhbnQgdG8gcHJvcGFnYXRlIHNj
cm9sbCBldmVudHM7IHRvdWNoIGV2ZW50cyBhcmUgY29udHJvbGxlZCB2aWEgdGhlaXIKKyAgICAv
LyBldmVudCBzZXF1ZW5jZXMgYW5kIGlmIHdlJ3JlIHNjcm9sbGluZyB3aXRoIHRvdWNoIGV2ZW50
cywgdGhhdCBzZXF1ZW5jZSBpcworICAgIC8vIGFscmVhZHkgY2xhaW1lZCBhbmQgdGhlcmUncyBu
byBwb2ludCBpbiBwcm9wYWdhdGluZyBpdC4KKworICAgIGlmIChnZGtfZXZlbnRfZ2V0X2V2ZW50
X3R5cGUoZXZlbnQubmF0aXZlRXZlbnQoKSkgIT0gR0RLX1NDUk9MTCkKKyAgICAgICAgcmV0dXJu
OworCiAgICAgd2Via2l0V2ViVmlld0Jhc2VGb3J3YXJkTmV4dFdoZWVsRXZlbnQoV0VCS0lUX1dF
Ql9WSUVXX0JBU0UobV92aWV3V2lkZ2V0KSk7CiAKICNpZiBVU0UoR1RLNCkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZS5jcHAKaW5k
ZXggNmQwMDc0MmUzNjQ2Li5iYzQwOTRlOTAwNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCkBAIC0xODcxLDcgKzE4
NzEsOSBAQCBzdGF0aWMgdm9pZCB3ZWJraXRXZWJWaWV3QmFzZVpvb21CZWdpbihXZWJLaXRXZWJW
aWV3QmFzZSogd2ViVmlld0Jhc2UsIEdka0V2ZW50UwogICAgIGRvdWJsZSB4LCB5OwogICAgIGd0
a19nZXN0dXJlX2dldF9ib3VuZGluZ19ib3hfY2VudGVyKGdlc3R1cmUsICZ4LCAmeSk7CiAKLSAg
ICB3ZWJraXRXZWJWaWV3QmFzZVN5bnRoZXNpemVXaGVlbEV2ZW50KHdlYlZpZXdCYXNlLCAwLCAw
LCB4LCB5LCBXaGVlbEV2ZW50UGhhc2U6OkJlZ2FuLCBXaGVlbEV2ZW50UGhhc2U6Ok5vUGhhc2Up
OworICAgIGF1dG8qIGV2ZW50ID0gZ3RrX2dlc3R1cmVfZ2V0X2xhc3RfZXZlbnQoZ2VzdHVyZSwg
c2VxdWVuY2UpOworCisgICAgd2Via2l0V2ViVmlld0Jhc2VTeW50aGVzaXplV2hlZWxFdmVudCh3
ZWJWaWV3QmFzZSwgZXZlbnQsIDAsIDAsIHgsIHksIFdoZWVsRXZlbnRQaGFzZTo6QmVnYW4sIFdo
ZWVsRXZlbnRQaGFzZTo6Tm9QaGFzZSk7CiB9CiAKIHN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdC
YXNlWm9vbUNoYW5nZWQoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZpZXdCYXNlLCBnZG91YmxlIHNj
YWxlLCBHdGtHZXN0dXJlKiBnZXN0dXJlKQpAQCAtMTk0MiwxMyArMTk0NCwxNiBAQCBzdGF0aWMg
dm9pZCB3ZWJraXRXZWJWaWV3QmFzZVRvdWNoUmVsZWFzZShXZWJLaXRXZWJWaWV3QmFzZSogd2Vi
Vmlld0Jhc2UsIGludCBuUAogICAgIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6ZU1vdXNlRXZl
bnQod2ViVmlld0Jhc2UsIE1vdXNlRXZlbnRUeXBlOjpSZWxlYXNlLCBidXR0b24sIGJ1dHRvbnMs
IHgsIHksIG1vZGlmaWVycywgblByZXNzLCB0b3VjaFBvaW50ZXJFdmVudFR5cGUoKSk7CiB9CiAK
LXN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlVG91Y2hEcmFnQmVnaW4oV2ViS2l0V2ViVmll
d0Jhc2UqIHdlYlZpZXdCYXNlLCBnZG91YmxlIHN0YXJ0WCwgZ2RvdWJsZSBzdGFydFksIEd0a0dl
c3R1cmUqKQorc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0Jhc2VUb3VjaERyYWdCZWdpbihXZWJL
aXRXZWJWaWV3QmFzZSogd2ViVmlld0Jhc2UsIGdkb3VibGUgc3RhcnRYLCBnZG91YmxlIHN0YXJ0
WSwgR3RrR2VzdHVyZSogZ2VzdHVyZSkKIHsKICAgICBXZWJLaXRXZWJWaWV3QmFzZVByaXZhdGUq
IHByaXYgPSB3ZWJWaWV3QmFzZS0+cHJpdjsKICAgICBwcml2LT5kcmFnT2Zmc2V0LnNldCgwLCAw
KTsKICAgICBwcml2LT5pc0JlaW5nRHJhZ2dlZCA9IGZhbHNlOwogCi0gICAgd2Via2l0V2ViVmll
d0Jhc2VTeW50aGVzaXplV2hlZWxFdmVudCh3ZWJWaWV3QmFzZSwgMCwgMCwgc3RhcnRYLCBzdGFy
dFksIFdoZWVsRXZlbnRQaGFzZTo6QmVnYW4sIFdoZWVsRXZlbnRQaGFzZTo6Tm9QaGFzZSk7Cisg
ICAgYXV0byogc2VxdWVuY2UgPSBndGtfZ2VzdHVyZV9zaW5nbGVfZ2V0X2N1cnJlbnRfc2VxdWVu
Y2UoR1RLX0dFU1RVUkVfU0lOR0xFKGdlc3R1cmUpKTsKKyAgICBhdXRvKiBldmVudCA9IGd0a19n
ZXN0dXJlX2dldF9sYXN0X2V2ZW50KGdlc3R1cmUsIHNlcXVlbmNlKTsKKworICAgIHdlYmtpdFdl
YlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQod2ViVmlld0Jhc2UsIGV2ZW50LCAwLCAwLCBz
dGFydFgsIHN0YXJ0WSwgV2hlZWxFdmVudFBoYXNlOjpCZWdhbiwgV2hlZWxFdmVudFBoYXNlOjpO
b1BoYXNlKTsKIH0KIAogc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0Jhc2VUb3VjaERyYWdVcGRh
dGUoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZpZXdCYXNlLCBkb3VibGUgb2Zmc2V0WCwgZG91Ymxl
IG9mZnNldFksIEd0a0dlc3R1cmUqIGdlc3R1cmUpCkBAIC0xOTYwLDYgKzE5NjUsOSBAQCBzdGF0
aWMgdm9pZCB3ZWJraXRXZWJWaWV3QmFzZVRvdWNoRHJhZ1VwZGF0ZShXZWJLaXRXZWJWaWV3QmFz
ZSogd2ViVmlld0Jhc2UsIGRvdQogICAgIGRvdWJsZSB4LCB5OwogICAgIGd0a19nZXN0dXJlX2Ry
YWdfZ2V0X3N0YXJ0X3BvaW50KEdUS19HRVNUVVJFX0RSQUcoZ2VzdHVyZSksICZ4LCAmeSk7CiAK
KyAgICBhdXRvKiBzZXF1ZW5jZSA9IGd0a19nZXN0dXJlX3NpbmdsZV9nZXRfY3VycmVudF9zZXF1
ZW5jZShHVEtfR0VTVFVSRV9TSU5HTEUoZ2VzdHVyZSkpOworICAgIGF1dG8qIGV2ZW50ID0gZ3Rr
X2dlc3R1cmVfZ2V0X2xhc3RfZXZlbnQoZ2VzdHVyZSwgc2VxdWVuY2UpOworCiAgICAgdW5zaWdu
ZWQgbW9kaWZpZXJzID0gZ3RrX2V2ZW50X2NvbnRyb2xsZXJfZ2V0X2N1cnJlbnRfZXZlbnRfc3Rh
dGUoR1RLX0VWRU5UX0NPTlRST0xMRVIoZ2VzdHVyZSkpOwogICAgIGlmICghcHJpdi0+aXNCZWlu
Z0RyYWdnZWQpIHsKICAgICAgICAgaWYgKCFndGtfZHJhZ19jaGVja190aHJlc2hvbGQoR1RLX1dJ
REdFVCh3ZWJWaWV3QmFzZSksIDAsIDAsIHN0YXRpY19jYXN0PGludD4ob2Zmc2V0WCksIHN0YXRp
Y19jYXN0PGludD4ob2Zmc2V0WSkpKQpAQCAtMTk3Miw3ICsxOTgwLDcgQEAgc3RhdGljIHZvaWQg
d2Via2l0V2ViVmlld0Jhc2VUb3VjaERyYWdVcGRhdGUoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZp
ZXdCYXNlLCBkb3UKICAgICAgICAgICAgIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6ZU1vdXNl
RXZlbnQod2ViVmlld0Jhc2UsIE1vdXNlRXZlbnRUeXBlOjpNb3Rpb24sIDAsIDAsIHgsIHksIG1v
ZGlmaWVycywgMSwgdG91Y2hQb2ludGVyRXZlbnRUeXBlKCkpOwogICAgICAgICAgICAgd2Via2l0
V2ViVmlld0Jhc2VTeW50aGVzaXplTW91c2VFdmVudCh3ZWJWaWV3QmFzZSwgTW91c2VFdmVudFR5
cGU6OlByZXNzLCBHREtfQlVUVE9OX1BSSU1BUlksIDAsIHgsIHksIG1vZGlmaWVycywgMCwgdG91
Y2hQb2ludGVyRXZlbnRUeXBlKCkpOwogICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIHdlYmtp
dFdlYlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQod2ViVmlld0Jhc2UsIDAsIDAsIHgsIHks
IFdoZWVsRXZlbnRQaGFzZTo6QmVnYW4sIFdoZWVsRXZlbnRQaGFzZTo6Tm9QaGFzZSk7CisgICAg
ICAgICAgICB3ZWJraXRXZWJWaWV3QmFzZVN5bnRoZXNpemVXaGVlbEV2ZW50KHdlYlZpZXdCYXNl
LCBldmVudCwgMCwgMCwgeCwgeSwgV2hlZWxFdmVudFBoYXNlOjpCZWdhbiwgV2hlZWxFdmVudFBo
YXNlOjpOb1BoYXNlKTsKICAgICB9CiAKICAgICBpZiAocHJpdi0+aXNMb25nUHJlc3NlZCkKQEAg
LTE5OTEsNyArMTk5OSw3IEBAIHN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlVG91Y2hEcmFn
VXBkYXRlKFdlYktpdFdlYlZpZXdCYXNlKiB3ZWJWaWV3QmFzZSwgZG91CiAgICAgICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICB9CiAKLSAgICAgICAgd2Via2l0V2ViVmlld0Jhc2VTeW50aGVz
aXplV2hlZWxFdmVudCh3ZWJWaWV3QmFzZSwgLWRlbHRhWCwgLWRlbHRhWSwgeCwgeSwgV2hlZWxF
dmVudFBoYXNlOjpDaGFuZ2VkLCBXaGVlbEV2ZW50UGhhc2U6Ok5vUGhhc2UpOworICAgICAgICB3
ZWJraXRXZWJWaWV3QmFzZVN5bnRoZXNpemVXaGVlbEV2ZW50KHdlYlZpZXdCYXNlLCBldmVudCwg
LWRlbHRhWCwgLWRlbHRhWSwgeCwgeSwgV2hlZWxFdmVudFBoYXNlOjpDaGFuZ2VkLCBXaGVlbEV2
ZW50UGhhc2U6Ok5vUGhhc2UpOwogICAgIH0KIH0KIApAQCAtMjAyOSw4ICsyMDM3LDEyIEBAIHN0
YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlVG91Y2hTd2lwZShXZWJLaXRXZWJWaWV3QmFzZSog
d2ViVmlld0Jhc2UsIGdkb3VibGUKICAgICAgICAgcmV0dXJuOwogCiAgICAgZG91YmxlIHgsIHk7
Ci0gICAgaWYgKGd0a19nZXN0dXJlX2dldF9wb2ludChnZXN0dXJlLCBndGtfZ2VzdHVyZV9zaW5n
bGVfZ2V0X2N1cnJlbnRfc2VxdWVuY2UoR1RLX0dFU1RVUkVfU0lOR0xFKGdlc3R1cmUpKSwgJngs
ICZ5KSkKLSAgICAgICAgd2Via2l0V2ViVmlld0Jhc2VTeW50aGVzaXplV2hlZWxFdmVudCh3ZWJW
aWV3QmFzZSwgLXZlbG9jaXR5WCwgLXZlbG9jaXR5WSwgeCwgeSwgV2hlZWxFdmVudFBoYXNlOjpO
b1BoYXNlLCBXaGVlbEV2ZW50UGhhc2U6OkJlZ2FuKTsKKyAgICBpZiAoZ3RrX2dlc3R1cmVfZ2V0
X3BvaW50KGdlc3R1cmUsIGd0a19nZXN0dXJlX3NpbmdsZV9nZXRfY3VycmVudF9zZXF1ZW5jZShH
VEtfR0VTVFVSRV9TSU5HTEUoZ2VzdHVyZSkpLCAmeCwgJnkpKSB7CisgICAgICAgIGF1dG8qIHNl
cXVlbmNlID0gZ3RrX2dlc3R1cmVfc2luZ2xlX2dldF9jdXJyZW50X3NlcXVlbmNlKEdUS19HRVNU
VVJFX1NJTkdMRShnZXN0dXJlKSk7CisgICAgICAgIGF1dG8qIGV2ZW50ID0gZ3RrX2dlc3R1cmVf
Z2V0X2xhc3RfZXZlbnQoZ2VzdHVyZSwgc2VxdWVuY2UpOworCisgICAgICAgIHdlYmtpdFdlYlZp
ZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQod2ViVmlld0Jhc2UsIGV2ZW50LCAtdmVsb2NpdHlY
LCAtdmVsb2NpdHlZLCB4LCB5LCBXaGVlbEV2ZW50UGhhc2U6Ok5vUGhhc2UsIFdoZWVsRXZlbnRQ
aGFzZTo6QmVnYW4pOworICAgIH0KIH0KIAogc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0Jhc2VD
b25zdHJ1Y3RlZChHT2JqZWN0KiBvYmplY3QpCkBAIC0zMDA0LDYgKzMwMTYsMTEgQEAgc3RhdGlj
IGlubGluZSBXZWJXaGVlbEV2ZW50OjpQaGFzZSB0b1dlYktpdFdoZWVsRXZlbnRQaGFzZShXaGVl
bEV2ZW50UGhhc2UgcGhhc2UKIH0KIAogdm9pZCB3ZWJraXRXZWJWaWV3QmFzZVN5bnRoZXNpemVX
aGVlbEV2ZW50KFdlYktpdFdlYlZpZXdCYXNlKiB3ZWJWaWV3QmFzZSwgZG91YmxlIGRlbHRhWCwg
ZG91YmxlIGRlbHRhWSwgaW50IHgsIGludCB5LCBXaGVlbEV2ZW50UGhhc2UgcGhhc2UsIFdoZWVs
RXZlbnRQaGFzZSBtb21lbnR1bVBoYXNlKQoreworICAgIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhl
c2l6ZVdoZWVsRXZlbnQod2ViVmlld0Jhc2UsIG51bGxwdHIsIGRlbHRhWCwgZGVsdGFZLCB4LCB5
LCBwaGFzZSwgbW9tZW50dW1QaGFzZSk7Cit9CisKK3ZvaWQgd2Via2l0V2ViVmlld0Jhc2VTeW50
aGVzaXplV2hlZWxFdmVudChXZWJLaXRXZWJWaWV3QmFzZSogd2ViVmlld0Jhc2UsIGNvbnN0IEdk
a0V2ZW50KiBldmVudCwgZG91YmxlIGRlbHRhWCwgZG91YmxlIGRlbHRhWSwgaW50IHgsIGludCB5
LCBXaGVlbEV2ZW50UGhhc2UgcGhhc2UsIFdoZWVsRXZlbnRQaGFzZSBtb21lbnR1bVBoYXNlKQog
ewogICAgIFdlYktpdFdlYlZpZXdCYXNlUHJpdmF0ZSogcHJpdiA9IHdlYlZpZXdCYXNlLT5wcml2
OwogICAgIGlmIChwcml2LT5kaWFsb2cpCkBAIC0zMDEzLDcgKzMwMzAsNyBAQCB2b2lkIHdlYmtp
dFdlYlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZp
ZXdCYXNlLCBkb3VibAogICAgIEZsb2F0U2l6ZSBkZWx0YSh3aGVlbFRpY2tzKTsKICAgICBkZWx0
YS5zY2FsZShzdGF0aWNfY2FzdDxmbG9hdD4oU2Nyb2xsYmFyOjpwaXhlbHNQZXJMaW5lU3RlcCgp
KSk7CiAKLSAgICBwcml2LT5wYWdlUHJveHktPmhhbmRsZVdoZWVsRXZlbnQoTmF0aXZlV2ViV2hl
ZWxFdmVudCh7IHgsIHkgfSwgd2lkZ2V0Um9vdENvb3JkcyhHVEtfV0lER0VUKHdlYlZpZXdCYXNl
KSwgeCwgeSksCisgICAgcHJpdi0+cGFnZVByb3h5LT5oYW5kbGVXaGVlbEV2ZW50KE5hdGl2ZVdl
YldoZWVsRXZlbnQoY29uc3RfY2FzdDxHZGtFdmVudCo+KGV2ZW50KSwgeyB4LCB5IH0sIHdpZGdl
dFJvb3RDb29yZHMoR1RLX1dJREdFVCh3ZWJWaWV3QmFzZSksIHgsIHkpLAogICAgICAgICBkZWx0
YSwgd2hlZWxUaWNrcywgdG9XZWJLaXRXaGVlbEV2ZW50UGhhc2UocGhhc2UpLCB0b1dlYktpdFdo
ZWVsRXZlbnRQaGFzZShtb21lbnR1bVBoYXNlKSkpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdCYXNlUHJpdmF0ZS5oIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZVByaXZhdGUuaApp
bmRleCBkMjhmOWM2OWNhYmUuLjAzMThiMDY4M2JlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZVByaXZhdGUuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdCYXNlUHJpdmF0ZS5oCkBA
IC0zOCw2ICszOCw3IEBACiAjaW5jbHVkZSAiV2ViSW5zcGVjdG9yVUlQcm94eS5oIgogI2luY2x1
ZGUgIldlYktpdElucHV0TWV0aG9kQ29udGV4dC5oIgogI2luY2x1ZGUgIldlYktpdFdlYlZpZXdC
YXNlLmgiCisjaW5jbHVkZSAiV2ViS2l0V2ViVmlld0Jhc2VJbnRlcm5hbC5oIgogI2luY2x1ZGUg
IldlYlBhZ2VQcm94eS5oIgogI2luY2x1ZGUgPFdlYkNvcmUvRHJhZ0FjdGlvbnMuaD4KICNpbmNs
dWRlIDxXZWJDb3JlL1NlbGVjdGlvbkRhdGEuaD4KQEAgLTExMyw2ICsxMTQsNyBAQCB2b2lkIHdl
YmtpdFdlYlZpZXdCYXNlRGlkTG9zZVBvaW50ZXJMb2NrKFdlYktpdFdlYlZpZXdCYXNlKik7CiB2
b2lkIHdlYmtpdFdlYlZpZXdCYXNlU2V0SW5wdXRNZXRob2RDb250ZXh0KFdlYktpdFdlYlZpZXdC
YXNlKiwgV2ViS2l0SW5wdXRNZXRob2RDb250ZXh0Kik7CiBXZWJLaXRJbnB1dE1ldGhvZENvbnRl
eHQqIHdlYmtpdFdlYlZpZXdCYXNlR2V0SW5wdXRNZXRob2RDb250ZXh0KFdlYktpdFdlYlZpZXdC
YXNlKik7CiB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6ZUNvbXBvc2l0aW9uS2V5UHJl
c3MoV2ViS2l0V2ViVmlld0Jhc2UqLCBjb25zdCBTdHJpbmcmIHRleHQsIHN0ZDo6b3B0aW9uYWw8
VmVjdG9yPFdlYkNvcmU6OkNvbXBvc2l0aW9uVW5kZXJsaW5lPj4mJiwgc3RkOjpvcHRpb25hbDxX
ZWJLaXQ6OkVkaXRpbmdSYW5nZT4mJik7Cit2b2lkIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6
ZVdoZWVsRXZlbnQoV2ViS2l0V2ViVmlld0Jhc2UqLCBjb25zdCBHZGtFdmVudCogZXZlbnQsIGRv
dWJsZSBkZWx0YVgsIGRvdWJsZSBkZWx0YVksIGludCB4LCBpbnQgeSwgV2hlZWxFdmVudFBoYXNl
LCBXaGVlbEV2ZW50UGhhc2UgbW9tZW50dW1QaGFzZSk7CiAKIHZvaWQgd2Via2l0V2ViVmlld0Jh
c2VNYWtlQmxhbmsoV2ViS2l0V2ViVmlld0Jhc2UqLCBib29sKTsKIHZvaWQgd2Via2l0V2ViVmll
d0Jhc2VQYWdlR3JhYmJlZFRvdWNoKFdlYktpdFdlYlZpZXdCYXNlKik7Ci0tIAoyLjMxLjEKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433148</attachid>
            <date>2021-07-08 11:31:44 -0700</date>
            <delta_ts>2021-07-09 04:47:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-Patch.patch</filename>
            <type>text/plain</type>
            <size>14812</size>
            <attacher name="Alice Mikhaylenko">alicem</attacher>
            
              <data encoding="base64">RnJvbSAwNTk4NjUxZTUxZjNjNTJlYjhiZGI0YjA2Yzk3NGM0YzkzYTVkYjJjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGV4YW5kZXIgTWlraGF5bGVua28gPGFsZXhtQGdub21lLm9y
Zz4KRGF0ZTogV2VkLCA3IEp1bCAyMDIxIDE3OjU5OjM3ICswNTAwClN1YmplY3Q6IFtQQVRDSF0g
UGF0Y2gKCi0tLQogU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAg
IHwgNDIgKysrKysrKysrKysrKysrKysrKwogU291cmNlL1dlYktpdC9TaGFyZWQvTmF0aXZlV2Vi
V2hlZWxFdmVudC5oICAgIHwgIDIgKy0KIC4uLi9TaGFyZWQvZ3RrL05hdGl2ZVdlYldoZWVsRXZl
bnRHdGsuY3BwICAgICB8ICAzICstCiAuLi4vVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudElt
cGwuY3BwICAgICAgfCAxNCArKysrKy0tCiAuLi4vVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2Vi
Vmlld0Jhc2UuY3BwICAgfCAzMyArKysrKysrKysrKy0tLS0KIC4uLi9BUEkvZ3RrL1dlYktpdFdl
YlZpZXdCYXNlUHJpdmF0ZS5oICAgICAgICB8ICAyICsKIDYgZmlsZXMgY2hhbmdlZCwgODIgaW5z
ZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBmYTE4ZGY5NGYwYzAuLmQz
YzJhMzUyYWQwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NSBAQAorMjAyMS0wNy0wNiAgQWxleGFu
ZGVyIE1pa2hheWxlbmtvICA8YWxleG1AZ25vbWUub3JnPgorCisgICAgICAgIFtHVEtdIFRvdWNo
c2NyZWVuIG5hdmlnYXRpb24gc3dpcGUgZG9lc24ndCB3b3JrIHdoZW4gdGhlIHBhZ2Ugc2Nyb2xs
cyBob3Jpem9udGFsbHkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNzY5MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFdoZW4gdGhlIHBhZ2Ugc2Nyb2xscyBob3Jpem9udGFsbHksIHdlIGhhdmUgYSBzZXBh
cmF0ZSBjb2RlIHBhdGggZm9yIGV2ZW50cyB0aGF0CisgICAgICAgIFdlYkNvcmUgZGlkbid0IGhh
bmRsZSBhbmQgd2hpY2ggYXJlIGNvbnNpZGVyZWQgc2FmZSB0byB1c2UgdG8gc3RhcnQgYSBzd2lw
ZQorICAgICAgICBnZXN0dXJlLiBVbmZvcnR1bmF0ZWx5LCB0aGF0IGNvZGUgcmVsaWVzIG9uIHRo
ZSBOYXRpdmVXZWJXaGVlbEV2ZW50cyBjb250YWluaW5nIGEKKyAgICAgICAgR2RrRXZlbnQsIHdo
aWNoIGlzIG9ubHkgdGhlIGNhc2UgZm9yIGFjdHVhbCBzY3JvbGwgZXZlbnRzLCBidXQgbm90IHN5
bnRoZXNpemVkCisgICAgICAgIHNjcm9sbCBldmVudHMgb24gdG91Y2hzY3JlZW4sIGFuZCB0aGUg
bmVlZGVkIGluZm8gKGlucHV0IHNvdXJjZSB0eXBlIGFuZCBhIHByb3BlcgorICAgICAgICB0aW1l
c3RhbXAgaW5zdGVhZCBvZiB0aGUgdHJ1bmNhdGVkIG9uZSB3YWxsVGltZUZvckV2ZW50VGltZSgp
IHByb2R1Y2VzKSBpcyBub3QKKyAgICAgICAgc3RvcmVkIGluIE5hdGl2ZVdlYldoZWVsRXZlbnQu
CisKKyAgICAgICAgV2hpbGUgd2UgZG9uJ3QgaGF2ZSBHZGtFdmVudHMgZm9yIGV2ZXJ5IHNpdHVh
dGlvbiB3ZSBzeW50aGVzaXplIHdoZWVsIGV2ZW50cyBpbiwKKyAgICAgICAgd2UgZG8gaGF2ZSB0
aGVtIGZvciB0b3VjaHNjcmVlbiBnZXN0dXJlcy4gVGhleSBhcmVuJ3QgR2RrU2Nyb2xsRXZlbnRz
LCBidXQgdGhhdAorICAgICAgICBpc24ndCBhIHByb2JsZW0gLSB0aGUgb25seSB0aGluZ3Mgd2Ug
dXNlIHRoYXQgYXJlIHNwZWNpZmljIHRvIEdka1Njcm9sbEV2ZW50IGFyZQorICAgICAgICBzY3Jv
bGwgZGVsdGFzIGFuZCB3aGV0aGVyIGl0J3MgYSBzY3JvbGwgc3RvcCBldmVudCwgYW5kIHRoYXQn
cyBhbHNvIHN0b3JlZCBpbgorICAgICAgICBOYXRpdmVXZWJXaGVlbEV2ZW50LCBhbmQgd2Ugb25s
eSBuZWVkIEdka0V2ZW50IGZvciB0aGUgdGltZSBhbmQgaW5wdXQgc291cmNlIHR5cGUsCisgICAg
ICAgIHdoZXJlIHRoZSBldmVudCB0eXBlIGRvZXNuJ3QgcmVhbGx5IG1hdHRlci4KKworICAgICAg
ICBTaW5jZSB0b3VjaCBHZGtFdmVudHMgYXJlIGNvbnRyb2xsZWQgdmlhIGV2ZW50IHNlcXVlbmNl
cyByYXRoZXIgdGhhbiBzdG9wL3Byb3BhZ2F0ZQorICAgICAgICByZXR1cm4gdmFsdWVzLCBkb24n
dCB0cnkgYW5kIHByb3BhZ2F0ZSB0aGVtIGlmIHdlYiBwcm9jZXNzIGhhcyByZXR1cm5lZCB0aGVt
OiB3ZSd2ZQorICAgICAgICBhbHJlYWR5IGNsYWltZWQgdGhlaXIgc2VxdWVuY2UgYmVmb3JlIHNl
bmRpbmcgdGhlbSB0byB3ZWIgcHJvY2Vzcywgc28gdGhleSB3aWxsIGJlCisgICAgICAgIG9mIG5v
IHVzZSB0byBvdGhlciB3aWRnZXRzLgorCisgICAgICAgICogU2hhcmVkL05hdGl2ZVdlYldoZWVs
RXZlbnQuaDoKKyAgICAgICAgKiBTaGFyZWQvZ3RrL05hdGl2ZVdlYldoZWVsRXZlbnRHdGsuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpOYXRpdmVXZWJXaGVlbEV2ZW50OjpOYXRpdmVXZWJXaGVlbEV2
ZW50KToKKyAgICAgICAgQWRkIGEgR2RrRXZlbnQgcGFyYW1ldGVyIHRvIHRoZSByZW1haW5pbmcg
Y29uc3RydWN0b3IuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudEltcGwu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpQYWdlQ2xpZW50SW1wbDo6d2hlZWxFdmVudFdhc05vdEhh
bmRsZWRCeVdlYkNvcmUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZp
ZXdCYXNlLmNwcDoKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdCYXNlWm9vbUJlZ2luKToKKyAgICAg
ICAgKHdlYmtpdFdlYlZpZXdCYXNlVG91Y2hEcmFnQmVnaW4pOgorICAgICAgICAod2Via2l0V2Vi
Vmlld0Jhc2VUb3VjaERyYWdVcGRhdGUpOgorICAgICAgICAod2Via2l0V2ViVmlld0Jhc2VUb3Vj
aFN3aXBlKToKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQp
OgorICAgICAgICBTcGxpdCBpbnRvIHZlcnNpb25zIHdpdGggYW5kIHdpdGhvdXQgYSBHZGtFdmVu
dCBwYXJhbWV0ZXIuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jh
c2VQcml2YXRlLmg6CisKIDIwMjEtMDctMDYgIEFsZXhhbmRlciBNaWtoYXlsZW5rbyAgPGFsZXht
QGdub21lLm9yZz4KIAogICAgICAgICBbR1RLXSBUb28gZWFzeSB0byB0cmlnZ2VyIG5hdmlnYXRp
b24gc3dpcGUgb24gdG91Y2hzY3JlZW4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L05hdGl2ZVdlYldoZWVsRXZlbnQuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL05hdGl2ZVdlYldo
ZWVsRXZlbnQuaAppbmRleCBhYTljYjBlNDQ4YzYuLmY0OGRjMDA3NTViNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9TaGFyZWQvTmF0aXZlV2ViV2hlZWxFdmVudC5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL05hdGl2ZVdlYldoZWVsRXZlbnQuaApAQCAtNjEsNyArNjEsNyBAQCBwdWJs
aWM6CiAgICAgTmF0aXZlV2ViV2hlZWxFdmVudChHZGtFdmVudCopOwogICAgIE5hdGl2ZVdlYldo
ZWVsRXZlbnQoR2RrRXZlbnQqLCBXZWJXaGVlbEV2ZW50OjpQaGFzZSwgV2ViV2hlZWxFdmVudDo6
UGhhc2UgbW9tZW50dW1QaGFzZSk7CiAgICAgTmF0aXZlV2ViV2hlZWxFdmVudChHZGtFdmVudCos
IGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgY29uc3QgV2ViQ29yZTo6RmxvYXRTaXplJiB3aGVl
bFRpY2tzKTsKLSAgICBOYXRpdmVXZWJXaGVlbEV2ZW50KGNvbnN0IFdlYkNvcmU6OkludFBvaW50
JiBwb3NpdGlvbiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIGdsb2JhbFBvc2l0aW9uLCBjb25z
dCBXZWJDb3JlOjpGbG9hdFNpemUmIGRlbHRhLCBjb25zdCBXZWJDb3JlOjpGbG9hdFNpemUmIHdo
ZWVsVGlja3MsIFdlYldoZWVsRXZlbnQ6OlBoYXNlLCBXZWJXaGVlbEV2ZW50OjpQaGFzZSBtb21l
bnR1bVBoYXNlKTsKKyAgICBOYXRpdmVXZWJXaGVlbEV2ZW50KEdka0V2ZW50KiwgY29uc3QgV2Vi
Q29yZTo6SW50UG9pbnQmIHBvc2l0aW9uLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgZ2xvYmFs
UG9zaXRpb24sIGNvbnN0IFdlYkNvcmU6OkZsb2F0U2l6ZSYgZGVsdGEsIGNvbnN0IFdlYkNvcmU6
OkZsb2F0U2l6ZSYgd2hlZWxUaWNrcywgV2ViV2hlZWxFdmVudDo6UGhhc2UsIFdlYldoZWVsRXZl
bnQ6OlBoYXNlIG1vbWVudHVtUGhhc2UpOwogI2VsaWYgVVNFKExJQldQRSkKICAgICBOYXRpdmVX
ZWJXaGVlbEV2ZW50KHN0cnVjdCB3cGVfaW5wdXRfYXhpc19ldmVudCosIGZsb2F0IGRldmljZVNj
YWxlRmFjdG9yLCBXZWJXaGVlbEV2ZW50OjpQaGFzZSwgV2ViV2hlZWxFdmVudDo6UGhhc2UgbW9t
ZW50dW1QaGFzZSk7CiAjZWxpZiBQTEFURk9STShXSU4pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9ndGsvTmF0aXZlV2ViV2hlZWxFdmVudEd0ay5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9ndGsvTmF0aXZlV2ViV2hlZWxFdmVudEd0ay5jcHAKaW5kZXggNDg4ZmJlYzkzOTFk
Li4zYTY5YmUwNDQ4ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2d0ay9OYXRp
dmVXZWJXaGVlbEV2ZW50R3RrLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9ndGsvTmF0
aXZlV2ViV2hlZWxFdmVudEd0ay5jcHAKQEAgLTQ5LDggKzQ5LDkgQEAgTmF0aXZlV2ViV2hlZWxF
dmVudDo6TmF0aXZlV2ViV2hlZWxFdmVudChHZGtFdmVudCogZXZlbnQsIGNvbnN0IFdlYkNvcmU6
OkludFBvaW4KIHsKIH0KIAotTmF0aXZlV2ViV2hlZWxFdmVudDo6TmF0aXZlV2ViV2hlZWxFdmVu
dChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgcG9zaXRpb24sIGNvbnN0IFdlYkNvcmU6OkludFBv
aW50JiBnbG9iYWxQb3NpdGlvbiwgY29uc3QgV2ViQ29yZTo6RmxvYXRTaXplJiBkZWx0YSwgY29u
c3QgV2ViQ29yZTo6RmxvYXRTaXplJiB3aGVlbFRpY2tzLCBXZWJXaGVlbEV2ZW50OjpQaGFzZSBw
aGFzZSwgV2ViV2hlZWxFdmVudDo6UGhhc2UgbW9tZW50dW1QaGFzZSkKK05hdGl2ZVdlYldoZWVs
RXZlbnQ6Ok5hdGl2ZVdlYldoZWVsRXZlbnQoR2RrRXZlbnQgKmV2ZW50LCBjb25zdCBXZWJDb3Jl
OjpJbnRQb2ludCYgcG9zaXRpb24sIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBnbG9iYWxQb3Np
dGlvbiwgY29uc3QgV2ViQ29yZTo6RmxvYXRTaXplJiBkZWx0YSwgY29uc3QgV2ViQ29yZTo6Rmxv
YXRTaXplJiB3aGVlbFRpY2tzLCBXZWJXaGVlbEV2ZW50OjpQaGFzZSBwaGFzZSwgV2ViV2hlZWxF
dmVudDo6UGhhc2UgbW9tZW50dW1QaGFzZSkKICAgICA6IFdlYldoZWVsRXZlbnQoV2ViRXZlbnQ6
OldoZWVsLCBwb3NpdGlvbiwgZ2xvYmFsUG9zaXRpb24sIGRlbHRhLCB3aGVlbFRpY2tzLCBwaGFz
ZSwgbW9tZW50dW1QaGFzZSwgV2ViV2hlZWxFdmVudDo6U2Nyb2xsQnlQaXhlbFdoZWVsRXZlbnQs
IGZhbHNlLCB7IH0sIFdhbGxUaW1lOjpub3coKSkKKyAgICAsIG1fbmF0aXZlRXZlbnQoZXZlbnQg
PyBnZGtfZXZlbnRfY29weShldmVudCkgOiBudWxscHRyKQogewogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1BhZ2VDbGllbnRJbXBsLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvUGFnZUNsaWVudEltcGwuY3BwCmluZGV4IGFmY2Q2
ZDBkNDhlNS4uMjBlODhkMzgxNDBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvZ3RrL1BhZ2VDbGllbnRJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvZ3RrL1BhZ2VDbGllbnRJbXBsLmNwcApAQCAtNDI0LDIyICs0MjQsMjggQEAgdm9pZCBQ
YWdlQ2xpZW50SW1wbDo6d2hlZWxFdmVudFdhc05vdEhhbmRsZWRCeVdlYkNvcmUoY29uc3QgTmF0
aXZlV2ViV2hlZWxFdmVudCYKIAogICAgIFZpZXdHZXN0dXJlQ29udHJvbGxlciogY29udHJvbGxl
ciA9IHdlYmtpdFdlYlZpZXdCYXNlVmlld0dlc3R1cmVDb250cm9sbGVyKFdFQktJVF9XRUJfVklF
V19CQVNFKG1fdmlld1dpZGdldCkpOwogICAgIGlmIChjb250cm9sbGVyICYmIGNvbnRyb2xsZXIt
PmlzU3dpcGVHZXN0dXJlRW5hYmxlZCgpKSB7Ci0gICAgICAgIGRvdWJsZSBkZWx0YVgsIGRlbHRh
WTsKLSAgICAgICAgZ2RrX2V2ZW50X2dldF9zY3JvbGxfZGVsdGFzKGV2ZW50Lm5hdGl2ZUV2ZW50
KCksICZkZWx0YVgsICZkZWx0YVkpOwotICAgICAgICBGbG9hdFNpemUgZGVsdGEoZGVsdGFYLCBk
ZWx0YVkpOworICAgICAgICBGbG9hdFNpemUgZGVsdGEoLWV2ZW50LndoZWVsVGlja3MoKSk7CiAK
ICAgICAgICAgaW50MzJfdCBldmVudFRpbWUgPSBzdGF0aWNfY2FzdDxpbnQzMl90PihnZGtfZXZl
bnRfZ2V0X3RpbWUoZXZlbnQubmF0aXZlRXZlbnQoKSkpOwogCiAgICAgICAgIEdka0RldmljZSog
ZGV2aWNlID0gZ2RrX2V2ZW50X2dldF9zb3VyY2VfZGV2aWNlKGV2ZW50Lm5hdGl2ZUV2ZW50KCkp
OwogICAgICAgICBHZGtJbnB1dFNvdXJjZSBzb3VyY2UgPSBnZGtfZGV2aWNlX2dldF9zb3VyY2Uo
ZGV2aWNlKTsKIAotICAgICAgICBib29sIGlzRW5kID0gZ2RrX2V2ZW50X2lzX3Njcm9sbF9zdG9w
X2V2ZW50KGV2ZW50Lm5hdGl2ZUV2ZW50KCkpID8gdHJ1ZSA6IGZhbHNlOworICAgICAgICBib29s
IGlzRW5kID0gZXZlbnQucGhhc2UoKSA9PSBXZWJXaGVlbEV2ZW50OjpQaGFzZTo6UGhhc2VFbmRl
ZDsKIAogICAgICAgICBQbGF0Zm9ybUd0a1Njcm9sbERhdGEgc2Nyb2xsRGF0YSA9IHsgLmRlbHRh
ID0gZGVsdGEsIC5ldmVudFRpbWUgPSBldmVudFRpbWUsIC5zb3VyY2UgPSBzb3VyY2UsIC5pc0Vu
ZCA9IGlzRW5kIH07CiAgICAgICAgIGNvbnRyb2xsZXItPndoZWVsRXZlbnRXYXNOb3RIYW5kbGVk
QnlXZWJDb3JlKCZzY3JvbGxEYXRhKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIC8v
IFdoZWVsIGV2ZW50cyBjYW4gaGF2ZSBlaXRoZXIgc2Nyb2xsIGV2ZW50cyBvciB0b3VjaCBldmVu
dHMgYXR0YWNoZWQgdG8gdGhlbS4KKyAgICAvLyBXZSBvbmx5IHdhbnQgdG8gcHJvcGFnYXRlIHNj
cm9sbCBldmVudHM7IHRvdWNoIGV2ZW50cyBhcmUgY29udHJvbGxlZCB2aWEgdGhlaXIKKyAgICAv
LyBldmVudCBzZXF1ZW5jZXMgYW5kIGlmIHdlJ3JlIHNjcm9sbGluZyB3aXRoIHRvdWNoIGV2ZW50
cywgdGhhdCBzZXF1ZW5jZSBpcworICAgIC8vIGFscmVhZHkgY2xhaW1lZCBhbmQgdGhlcmUncyBu
byBwb2ludCBpbiBwcm9wYWdhdGluZyBpdC4KKworICAgIGlmIChnZGtfZXZlbnRfZ2V0X2V2ZW50
X3R5cGUoZXZlbnQubmF0aXZlRXZlbnQoKSkgIT0gR0RLX1NDUk9MTCkKKyAgICAgICAgcmV0dXJu
OworCiAgICAgd2Via2l0V2ViVmlld0Jhc2VGb3J3YXJkTmV4dFdoZWVsRXZlbnQoV0VCS0lUX1dF
Ql9WSUVXX0JBU0UobV92aWV3V2lkZ2V0KSk7CiAKICNpZiBVU0UoR1RLNCkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZS5jcHAKaW5k
ZXggNmQwMDc0MmUzNjQ2Li5iYzQwOTRlOTAwNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCkBAIC0xODcxLDcgKzE4
NzEsOSBAQCBzdGF0aWMgdm9pZCB3ZWJraXRXZWJWaWV3QmFzZVpvb21CZWdpbihXZWJLaXRXZWJW
aWV3QmFzZSogd2ViVmlld0Jhc2UsIEdka0V2ZW50UwogICAgIGRvdWJsZSB4LCB5OwogICAgIGd0
a19nZXN0dXJlX2dldF9ib3VuZGluZ19ib3hfY2VudGVyKGdlc3R1cmUsICZ4LCAmeSk7CiAKLSAg
ICB3ZWJraXRXZWJWaWV3QmFzZVN5bnRoZXNpemVXaGVlbEV2ZW50KHdlYlZpZXdCYXNlLCAwLCAw
LCB4LCB5LCBXaGVlbEV2ZW50UGhhc2U6OkJlZ2FuLCBXaGVlbEV2ZW50UGhhc2U6Ok5vUGhhc2Up
OworICAgIGF1dG8qIGV2ZW50ID0gZ3RrX2dlc3R1cmVfZ2V0X2xhc3RfZXZlbnQoZ2VzdHVyZSwg
c2VxdWVuY2UpOworCisgICAgd2Via2l0V2ViVmlld0Jhc2VTeW50aGVzaXplV2hlZWxFdmVudCh3
ZWJWaWV3QmFzZSwgZXZlbnQsIDAsIDAsIHgsIHksIFdoZWVsRXZlbnRQaGFzZTo6QmVnYW4sIFdo
ZWVsRXZlbnRQaGFzZTo6Tm9QaGFzZSk7CiB9CiAKIHN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdC
YXNlWm9vbUNoYW5nZWQoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZpZXdCYXNlLCBnZG91YmxlIHNj
YWxlLCBHdGtHZXN0dXJlKiBnZXN0dXJlKQpAQCAtMTk0MiwxMyArMTk0NCwxNiBAQCBzdGF0aWMg
dm9pZCB3ZWJraXRXZWJWaWV3QmFzZVRvdWNoUmVsZWFzZShXZWJLaXRXZWJWaWV3QmFzZSogd2Vi
Vmlld0Jhc2UsIGludCBuUAogICAgIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6ZU1vdXNlRXZl
bnQod2ViVmlld0Jhc2UsIE1vdXNlRXZlbnRUeXBlOjpSZWxlYXNlLCBidXR0b24sIGJ1dHRvbnMs
IHgsIHksIG1vZGlmaWVycywgblByZXNzLCB0b3VjaFBvaW50ZXJFdmVudFR5cGUoKSk7CiB9CiAK
LXN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlVG91Y2hEcmFnQmVnaW4oV2ViS2l0V2ViVmll
d0Jhc2UqIHdlYlZpZXdCYXNlLCBnZG91YmxlIHN0YXJ0WCwgZ2RvdWJsZSBzdGFydFksIEd0a0dl
c3R1cmUqKQorc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0Jhc2VUb3VjaERyYWdCZWdpbihXZWJL
aXRXZWJWaWV3QmFzZSogd2ViVmlld0Jhc2UsIGdkb3VibGUgc3RhcnRYLCBnZG91YmxlIHN0YXJ0
WSwgR3RrR2VzdHVyZSogZ2VzdHVyZSkKIHsKICAgICBXZWJLaXRXZWJWaWV3QmFzZVByaXZhdGUq
IHByaXYgPSB3ZWJWaWV3QmFzZS0+cHJpdjsKICAgICBwcml2LT5kcmFnT2Zmc2V0LnNldCgwLCAw
KTsKICAgICBwcml2LT5pc0JlaW5nRHJhZ2dlZCA9IGZhbHNlOwogCi0gICAgd2Via2l0V2ViVmll
d0Jhc2VTeW50aGVzaXplV2hlZWxFdmVudCh3ZWJWaWV3QmFzZSwgMCwgMCwgc3RhcnRYLCBzdGFy
dFksIFdoZWVsRXZlbnRQaGFzZTo6QmVnYW4sIFdoZWVsRXZlbnRQaGFzZTo6Tm9QaGFzZSk7Cisg
ICAgYXV0byogc2VxdWVuY2UgPSBndGtfZ2VzdHVyZV9zaW5nbGVfZ2V0X2N1cnJlbnRfc2VxdWVu
Y2UoR1RLX0dFU1RVUkVfU0lOR0xFKGdlc3R1cmUpKTsKKyAgICBhdXRvKiBldmVudCA9IGd0a19n
ZXN0dXJlX2dldF9sYXN0X2V2ZW50KGdlc3R1cmUsIHNlcXVlbmNlKTsKKworICAgIHdlYmtpdFdl
YlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQod2ViVmlld0Jhc2UsIGV2ZW50LCAwLCAwLCBz
dGFydFgsIHN0YXJ0WSwgV2hlZWxFdmVudFBoYXNlOjpCZWdhbiwgV2hlZWxFdmVudFBoYXNlOjpO
b1BoYXNlKTsKIH0KIAogc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0Jhc2VUb3VjaERyYWdVcGRh
dGUoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZpZXdCYXNlLCBkb3VibGUgb2Zmc2V0WCwgZG91Ymxl
IG9mZnNldFksIEd0a0dlc3R1cmUqIGdlc3R1cmUpCkBAIC0xOTYwLDYgKzE5NjUsOSBAQCBzdGF0
aWMgdm9pZCB3ZWJraXRXZWJWaWV3QmFzZVRvdWNoRHJhZ1VwZGF0ZShXZWJLaXRXZWJWaWV3QmFz
ZSogd2ViVmlld0Jhc2UsIGRvdQogICAgIGRvdWJsZSB4LCB5OwogICAgIGd0a19nZXN0dXJlX2Ry
YWdfZ2V0X3N0YXJ0X3BvaW50KEdUS19HRVNUVVJFX0RSQUcoZ2VzdHVyZSksICZ4LCAmeSk7CiAK
KyAgICBhdXRvKiBzZXF1ZW5jZSA9IGd0a19nZXN0dXJlX3NpbmdsZV9nZXRfY3VycmVudF9zZXF1
ZW5jZShHVEtfR0VTVFVSRV9TSU5HTEUoZ2VzdHVyZSkpOworICAgIGF1dG8qIGV2ZW50ID0gZ3Rr
X2dlc3R1cmVfZ2V0X2xhc3RfZXZlbnQoZ2VzdHVyZSwgc2VxdWVuY2UpOworCiAgICAgdW5zaWdu
ZWQgbW9kaWZpZXJzID0gZ3RrX2V2ZW50X2NvbnRyb2xsZXJfZ2V0X2N1cnJlbnRfZXZlbnRfc3Rh
dGUoR1RLX0VWRU5UX0NPTlRST0xMRVIoZ2VzdHVyZSkpOwogICAgIGlmICghcHJpdi0+aXNCZWlu
Z0RyYWdnZWQpIHsKICAgICAgICAgaWYgKCFndGtfZHJhZ19jaGVja190aHJlc2hvbGQoR1RLX1dJ
REdFVCh3ZWJWaWV3QmFzZSksIDAsIDAsIHN0YXRpY19jYXN0PGludD4ob2Zmc2V0WCksIHN0YXRp
Y19jYXN0PGludD4ob2Zmc2V0WSkpKQpAQCAtMTk3Miw3ICsxOTgwLDcgQEAgc3RhdGljIHZvaWQg
d2Via2l0V2ViVmlld0Jhc2VUb3VjaERyYWdVcGRhdGUoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZp
ZXdCYXNlLCBkb3UKICAgICAgICAgICAgIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6ZU1vdXNl
RXZlbnQod2ViVmlld0Jhc2UsIE1vdXNlRXZlbnRUeXBlOjpNb3Rpb24sIDAsIDAsIHgsIHksIG1v
ZGlmaWVycywgMSwgdG91Y2hQb2ludGVyRXZlbnRUeXBlKCkpOwogICAgICAgICAgICAgd2Via2l0
V2ViVmlld0Jhc2VTeW50aGVzaXplTW91c2VFdmVudCh3ZWJWaWV3QmFzZSwgTW91c2VFdmVudFR5
cGU6OlByZXNzLCBHREtfQlVUVE9OX1BSSU1BUlksIDAsIHgsIHksIG1vZGlmaWVycywgMCwgdG91
Y2hQb2ludGVyRXZlbnRUeXBlKCkpOwogICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIHdlYmtp
dFdlYlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQod2ViVmlld0Jhc2UsIDAsIDAsIHgsIHks
IFdoZWVsRXZlbnRQaGFzZTo6QmVnYW4sIFdoZWVsRXZlbnRQaGFzZTo6Tm9QaGFzZSk7CisgICAg
ICAgICAgICB3ZWJraXRXZWJWaWV3QmFzZVN5bnRoZXNpemVXaGVlbEV2ZW50KHdlYlZpZXdCYXNl
LCBldmVudCwgMCwgMCwgeCwgeSwgV2hlZWxFdmVudFBoYXNlOjpCZWdhbiwgV2hlZWxFdmVudFBo
YXNlOjpOb1BoYXNlKTsKICAgICB9CiAKICAgICBpZiAocHJpdi0+aXNMb25nUHJlc3NlZCkKQEAg
LTE5OTEsNyArMTk5OSw3IEBAIHN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlVG91Y2hEcmFn
VXBkYXRlKFdlYktpdFdlYlZpZXdCYXNlKiB3ZWJWaWV3QmFzZSwgZG91CiAgICAgICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICB9CiAKLSAgICAgICAgd2Via2l0V2ViVmlld0Jhc2VTeW50aGVz
aXplV2hlZWxFdmVudCh3ZWJWaWV3QmFzZSwgLWRlbHRhWCwgLWRlbHRhWSwgeCwgeSwgV2hlZWxF
dmVudFBoYXNlOjpDaGFuZ2VkLCBXaGVlbEV2ZW50UGhhc2U6Ok5vUGhhc2UpOworICAgICAgICB3
ZWJraXRXZWJWaWV3QmFzZVN5bnRoZXNpemVXaGVlbEV2ZW50KHdlYlZpZXdCYXNlLCBldmVudCwg
LWRlbHRhWCwgLWRlbHRhWSwgeCwgeSwgV2hlZWxFdmVudFBoYXNlOjpDaGFuZ2VkLCBXaGVlbEV2
ZW50UGhhc2U6Ok5vUGhhc2UpOwogICAgIH0KIH0KIApAQCAtMjAyOSw4ICsyMDM3LDEyIEBAIHN0
YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlVG91Y2hTd2lwZShXZWJLaXRXZWJWaWV3QmFzZSog
d2ViVmlld0Jhc2UsIGdkb3VibGUKICAgICAgICAgcmV0dXJuOwogCiAgICAgZG91YmxlIHgsIHk7
Ci0gICAgaWYgKGd0a19nZXN0dXJlX2dldF9wb2ludChnZXN0dXJlLCBndGtfZ2VzdHVyZV9zaW5n
bGVfZ2V0X2N1cnJlbnRfc2VxdWVuY2UoR1RLX0dFU1RVUkVfU0lOR0xFKGdlc3R1cmUpKSwgJngs
ICZ5KSkKLSAgICAgICAgd2Via2l0V2ViVmlld0Jhc2VTeW50aGVzaXplV2hlZWxFdmVudCh3ZWJW
aWV3QmFzZSwgLXZlbG9jaXR5WCwgLXZlbG9jaXR5WSwgeCwgeSwgV2hlZWxFdmVudFBoYXNlOjpO
b1BoYXNlLCBXaGVlbEV2ZW50UGhhc2U6OkJlZ2FuKTsKKyAgICBpZiAoZ3RrX2dlc3R1cmVfZ2V0
X3BvaW50KGdlc3R1cmUsIGd0a19nZXN0dXJlX3NpbmdsZV9nZXRfY3VycmVudF9zZXF1ZW5jZShH
VEtfR0VTVFVSRV9TSU5HTEUoZ2VzdHVyZSkpLCAmeCwgJnkpKSB7CisgICAgICAgIGF1dG8qIHNl
cXVlbmNlID0gZ3RrX2dlc3R1cmVfc2luZ2xlX2dldF9jdXJyZW50X3NlcXVlbmNlKEdUS19HRVNU
VVJFX1NJTkdMRShnZXN0dXJlKSk7CisgICAgICAgIGF1dG8qIGV2ZW50ID0gZ3RrX2dlc3R1cmVf
Z2V0X2xhc3RfZXZlbnQoZ2VzdHVyZSwgc2VxdWVuY2UpOworCisgICAgICAgIHdlYmtpdFdlYlZp
ZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQod2ViVmlld0Jhc2UsIGV2ZW50LCAtdmVsb2NpdHlY
LCAtdmVsb2NpdHlZLCB4LCB5LCBXaGVlbEV2ZW50UGhhc2U6Ok5vUGhhc2UsIFdoZWVsRXZlbnRQ
aGFzZTo6QmVnYW4pOworICAgIH0KIH0KIAogc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0Jhc2VD
b25zdHJ1Y3RlZChHT2JqZWN0KiBvYmplY3QpCkBAIC0zMDA0LDYgKzMwMTYsMTEgQEAgc3RhdGlj
IGlubGluZSBXZWJXaGVlbEV2ZW50OjpQaGFzZSB0b1dlYktpdFdoZWVsRXZlbnRQaGFzZShXaGVl
bEV2ZW50UGhhc2UgcGhhc2UKIH0KIAogdm9pZCB3ZWJraXRXZWJWaWV3QmFzZVN5bnRoZXNpemVX
aGVlbEV2ZW50KFdlYktpdFdlYlZpZXdCYXNlKiB3ZWJWaWV3QmFzZSwgZG91YmxlIGRlbHRhWCwg
ZG91YmxlIGRlbHRhWSwgaW50IHgsIGludCB5LCBXaGVlbEV2ZW50UGhhc2UgcGhhc2UsIFdoZWVs
RXZlbnRQaGFzZSBtb21lbnR1bVBoYXNlKQoreworICAgIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhl
c2l6ZVdoZWVsRXZlbnQod2ViVmlld0Jhc2UsIG51bGxwdHIsIGRlbHRhWCwgZGVsdGFZLCB4LCB5
LCBwaGFzZSwgbW9tZW50dW1QaGFzZSk7Cit9CisKK3ZvaWQgd2Via2l0V2ViVmlld0Jhc2VTeW50
aGVzaXplV2hlZWxFdmVudChXZWJLaXRXZWJWaWV3QmFzZSogd2ViVmlld0Jhc2UsIGNvbnN0IEdk
a0V2ZW50KiBldmVudCwgZG91YmxlIGRlbHRhWCwgZG91YmxlIGRlbHRhWSwgaW50IHgsIGludCB5
LCBXaGVlbEV2ZW50UGhhc2UgcGhhc2UsIFdoZWVsRXZlbnRQaGFzZSBtb21lbnR1bVBoYXNlKQog
ewogICAgIFdlYktpdFdlYlZpZXdCYXNlUHJpdmF0ZSogcHJpdiA9IHdlYlZpZXdCYXNlLT5wcml2
OwogICAgIGlmIChwcml2LT5kaWFsb2cpCkBAIC0zMDEzLDcgKzMwMzAsNyBAQCB2b2lkIHdlYmtp
dFdlYlZpZXdCYXNlU3ludGhlc2l6ZVdoZWVsRXZlbnQoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZp
ZXdCYXNlLCBkb3VibAogICAgIEZsb2F0U2l6ZSBkZWx0YSh3aGVlbFRpY2tzKTsKICAgICBkZWx0
YS5zY2FsZShzdGF0aWNfY2FzdDxmbG9hdD4oU2Nyb2xsYmFyOjpwaXhlbHNQZXJMaW5lU3RlcCgp
KSk7CiAKLSAgICBwcml2LT5wYWdlUHJveHktPmhhbmRsZVdoZWVsRXZlbnQoTmF0aXZlV2ViV2hl
ZWxFdmVudCh7IHgsIHkgfSwgd2lkZ2V0Um9vdENvb3JkcyhHVEtfV0lER0VUKHdlYlZpZXdCYXNl
KSwgeCwgeSksCisgICAgcHJpdi0+cGFnZVByb3h5LT5oYW5kbGVXaGVlbEV2ZW50KE5hdGl2ZVdl
YldoZWVsRXZlbnQoY29uc3RfY2FzdDxHZGtFdmVudCo+KGV2ZW50KSwgeyB4LCB5IH0sIHdpZGdl
dFJvb3RDb29yZHMoR1RLX1dJREdFVCh3ZWJWaWV3QmFzZSksIHgsIHkpLAogICAgICAgICBkZWx0
YSwgd2hlZWxUaWNrcywgdG9XZWJLaXRXaGVlbEV2ZW50UGhhc2UocGhhc2UpLCB0b1dlYktpdFdo
ZWVsRXZlbnRQaGFzZShtb21lbnR1bVBoYXNlKSkpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdCYXNlUHJpdmF0ZS5oIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZVByaXZhdGUuaApp
bmRleCBkMjhmOWM2OWNhYmUuLjAzMThiMDY4M2JlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZVByaXZhdGUuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdCYXNlUHJpdmF0ZS5oCkBA
IC0zOCw2ICszOCw3IEBACiAjaW5jbHVkZSAiV2ViSW5zcGVjdG9yVUlQcm94eS5oIgogI2luY2x1
ZGUgIldlYktpdElucHV0TWV0aG9kQ29udGV4dC5oIgogI2luY2x1ZGUgIldlYktpdFdlYlZpZXdC
YXNlLmgiCisjaW5jbHVkZSAiV2ViS2l0V2ViVmlld0Jhc2VJbnRlcm5hbC5oIgogI2luY2x1ZGUg
IldlYlBhZ2VQcm94eS5oIgogI2luY2x1ZGUgPFdlYkNvcmUvRHJhZ0FjdGlvbnMuaD4KICNpbmNs
dWRlIDxXZWJDb3JlL1NlbGVjdGlvbkRhdGEuaD4KQEAgLTExMyw2ICsxMTQsNyBAQCB2b2lkIHdl
YmtpdFdlYlZpZXdCYXNlRGlkTG9zZVBvaW50ZXJMb2NrKFdlYktpdFdlYlZpZXdCYXNlKik7CiB2
b2lkIHdlYmtpdFdlYlZpZXdCYXNlU2V0SW5wdXRNZXRob2RDb250ZXh0KFdlYktpdFdlYlZpZXdC
YXNlKiwgV2ViS2l0SW5wdXRNZXRob2RDb250ZXh0Kik7CiBXZWJLaXRJbnB1dE1ldGhvZENvbnRl
eHQqIHdlYmtpdFdlYlZpZXdCYXNlR2V0SW5wdXRNZXRob2RDb250ZXh0KFdlYktpdFdlYlZpZXdC
YXNlKik7CiB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6ZUNvbXBvc2l0aW9uS2V5UHJl
c3MoV2ViS2l0V2ViVmlld0Jhc2UqLCBjb25zdCBTdHJpbmcmIHRleHQsIHN0ZDo6b3B0aW9uYWw8
VmVjdG9yPFdlYkNvcmU6OkNvbXBvc2l0aW9uVW5kZXJsaW5lPj4mJiwgc3RkOjpvcHRpb25hbDxX
ZWJLaXQ6OkVkaXRpbmdSYW5nZT4mJik7Cit2b2lkIHdlYmtpdFdlYlZpZXdCYXNlU3ludGhlc2l6
ZVdoZWVsRXZlbnQoV2ViS2l0V2ViVmlld0Jhc2UqLCBjb25zdCBHZGtFdmVudCosIGRvdWJsZSBk
ZWx0YVgsIGRvdWJsZSBkZWx0YVksIGludCB4LCBpbnQgeSwgV2hlZWxFdmVudFBoYXNlLCBXaGVl
bEV2ZW50UGhhc2UgbW9tZW50dW1QaGFzZSk7CiAKIHZvaWQgd2Via2l0V2ViVmlld0Jhc2VNYWtl
QmxhbmsoV2ViS2l0V2ViVmlld0Jhc2UqLCBib29sKTsKIHZvaWQgd2Via2l0V2ViVmlld0Jhc2VQ
YWdlR3JhYmJlZFRvdWNoKFdlYktpdFdlYlZpZXdCYXNlKik7Ci0tIAoyLjMxLjEKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>