<?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>231906</bug_id>
          
          <creation_ts>2021-10-18 12:45:46 -0700</creation_ts>
          <short_desc>REGRESSION(r284313): ::marker accelerated animations are broken</short_desc>
          <delta_ts>2021-10-22 14:02:06 -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>Animations</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=232040</see_also>
          <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>
          
          <blocked>230008</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Nguyen (:ntim)">ntim</reporter>
          <assigned_to name="Antoine Quint">graouts</assigned_to>
          <cc>dino</cc>
    
    <cc>graouts</cc>
    
    <cc>graouts</cc>
    
    <cc>koivisto</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1805684</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-10-18 12:45:46 -0700</bug_when>
    <thetext>&lt;style&gt;
@keyframes animate-marker {
  from {
    color: red;
    opacity: 1;
  }
  50% {
    color: green;
    opacity: 0;
  }
  to {
    color: blue;
    opacity: 1;
  }
}

::marker {
  animation: animate-marker 2s infinite; 
}
&lt;/style&gt;

&lt;li&gt;Hello&lt;/li&gt;

---

In the testcase, the marker disappears completely. Per spec, opacity should not apply at all, so the marker should be visible. But even if we did allow applying opacity, the opacity should animate properly.

regression of the `Styleable::fromRenderer` changes in bug 230008 for ::marker</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805685</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-10-18 12:45:57 -0700</bug_when>
    <thetext>&lt;rdar://problem/84383279&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805686</commentid>
    <comment_count>2</comment_count>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-10-18 12:47:28 -0700</bug_when>
    <thetext>This is the spec that says opacity should not apply on ::marker: https://www.w3.org/TR/css-lists-3/#marker-properties</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805971</commentid>
    <comment_count>3</comment_count>
      <attachid>441718</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2021-10-19 06:37:01 -0700</bug_when>
    <thetext>Created attachment 441718
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1806028</commentid>
    <comment_count>4</comment_count>
      <attachid>441718</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-10-19 08:38:51 -0700</bug_when>
    <thetext>Comment on attachment 441718
Patch

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

&gt; Source/WebCore/style/PropertyAllowlist.cpp:41
&gt; +// https://www.w3.org/TR/css-pseudo-4/#marker-pseudo (Editor&apos;s Draft, 25 July 2017)
&gt; +// FIXME: this is outdated, see https://bugs.webkit.org/show_bug.cgi?id=218791.
&gt; +bool isValidMarkerStyleProperty(CSSPropertyID id)

It sounded from spec reading in slack that this allow list is a wrong approach. All properties should be visible in the computed style and the rendering code should be ignoring whatever is disallowed.

This refactoring ends up being bit useless if we just delete all code here soon but I suppose it doesn&apos;t hurt.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1806048</commentid>
    <comment_count>5</comment_count>
      <attachid>441737</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2021-10-19 09:17:06 -0700</bug_when>
    <thetext>Created attachment 441737
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1806124</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-10-19 10:18:13 -0700</bug_when>
    <thetext>Committed r284466 (243226@main): &lt;https://commits.webkit.org/243226@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 441737.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1807805</commentid>
    <comment_count>7</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-10-22 11:44:02 -0700</bug_when>
    <thetext>The test is flakey: bug 232040.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1807869</commentid>
    <comment_count>8</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-10-22 14:02:06 -0700</bug_when>
    <thetext>The testcase shows an opacity animation triggering paints on the ::marker, which seems wrong.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>441718</attachid>
            <date>2021-10-19 06:37:01 -0700</date>
            <delta_ts>2021-10-19 09:17:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231906-20211019153659.patch</filename>
            <type>text/plain</type>
            <size>33198</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0NDM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2I3ZThkN2RhNjFkZmMx
OTVjOTk4NDU2OGEyMWM0OGNhODU3MDBjNS4uOWY3NTRmOTE0OWMzNjc3NmRmODA2ZjM2Njk5YzQz
NjA3MzY1YmE1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU2IEBACisyMDIxLTEwLTE5ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgorCisgICAgICAgIFJFR1JFU1NJT04ocjI4
NDMxMyk6IDo6bWFya2VyIGFjY2VsZXJhdGVkIGFuaW1hdGlvbnMgYXJlIGJyb2tlbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxOTA2CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS84NDM4MzI3OT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUZXN0OiB3ZWJhbmltYXRpb25zL21hcmtlci1vcGFjaXR5LWFu
aW1hdGlvbi1uby1lZmZlY3QuaHRtbAorCisgICAgICAgIFdlIGluY29ycmVjdGx5IHN1cHBvcnRl
ZCBhbmltYXRpb25zIGZvciBhbGwga25vd24gQ1NTIHByb3BlcnRpZXMgb24gYSA6Om1hcmtlciBz
aW5jZSB3ZSBhZGRlZAorICAgICAgICBzdXBwb3J0IGZvciBhbmltYXRpb24gb2YgOjptYXJrZXIs
IGFuZCB3aXRoIHIyODQzMTMgd2Ugc3RhcnRlZCByZXR1cm5pbmcgdGhlIGNvcnJlY3QgcmVuZGVy
ZXIKKyAgICAgICAgZm9yIDo6bWFya2VyIHBzZXVkby1lbGVtZW50cyB3aGljaCBtZWFudCB0aGF0
IGFjY2VsZXJhdGVkIG9wYWNpdHkgYW5pbWF0aW9ucyBzdGFydGVkIHJ1bm5pbmcKKyAgICAgICAg
Zm9yIHRoZSBmaXJzdCB0aW1lLgorCisgICAgICAgIFdlIG5vdyBjb3JyZWN0bHkgaWdub3JlIGRp
c2FsbG93ZWQgcHJvcGVydGllcyBmb3IgOjptYXJrZXIgd2hlbiBhbmltYXRpbmcgd2l0aCB0aG9z
ZSBjaGFuZ2VzLgorCisgICAgICAgIEZpcnN0LCBpbiBTdHlsZTo6UmVzb2x2ZXI6OnN0eWxlRm9y
S2V5ZnJhbWUoKSwgd2UgcGFzcyB0aGUgcmVsZXZhbnQgYWxsb3dsaXN0IHRvIHRoZSBNYXRjaFJl
c3VsdCdzCisgICAgICAgIGF1dGhvckRlY2xhcmF0aW9ucyB3aGVuIGFkZGluZyB0aGUga2V5ZnJh
bWUgcHJvcGVydGllcy4KKworICAgICAgICBUaGVuLCBpbiBLZXlmcmFtZUVmZmVjdDo6aXNDdXJy
ZW50bHlBZmZlY3RpbmdQcm9wZXJ0eSgpIHdlIGNhbGwgaXNWYWxpZE1hcmtlclN0eWxlUHJvcGVy
dHkoKSBpbgorICAgICAgICBjYXNlIHdlJ3JlIGJlaW5nIGNhbGxlZCBmb3IgYSA6Om1hcmtlciBw
c2V1ZG8tZWxlbWVudC4KKworICAgICAgICBUbyBiZSBhYmxlIHRvIG9idGFpbiB0aGUgYWxsb3ds
aXN0IGFuZCBjYWxsIGlzVmFsaWRNYXJrZXJTdHlsZVByb3BlcnR5KCkgaW4gdGhvc2UgdHdvIHF1
ZXN0aW9ucywKKyAgICAgICAgd2UgaGFkIHRvIHJlZmFjdG9yIHRoZSByZWxhdGVkIGNvZGUgaW50
byBhIGRlZGljYXRlZCBQcm9wZXJ0eUFsbG93bGlzdCBmaWxlIGFuZCBlbnVtLgorCisgICAgICAg
ICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorICAgICAgICAqIGFuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpLZXlmcmFtZUVmZmVjdDo6aXNDdXJyZW50bHlBZmZlY3RpbmdQcm9wZXJ0eSBjb25z
dCk6CisgICAgICAgICogc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6U3R5bGU6OkVsZW1lbnRSdWxlQ29sbGVjdG9yOjp0cmFuc2Zlck1hdGNoZWRSdWxl
cyk6CisgICAgICAgICogc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuaDoKKyAgICAgICAgKiBz
dHlsZS9Qcm9wZXJ0eUFsbG93bGlzdC5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6U3R5
bGU6OnByb3BlcnR5QWxsb3dsaXN0Rm9yUHNldWRvSWQpOgorICAgICAgICAoV2ViQ29yZTo6U3R5
bGU6OmlzVmFsaWRNYXJrZXJTdHlsZVByb3BlcnR5KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxl
Ojppc1ZhbGlkQ3VlU3R5bGVQcm9wZXJ0eSk6CisgICAgICAgICogc3R5bGUvUHJvcGVydHlBbGxv
d2xpc3QuaDogQWRkZWQuCisgICAgICAgICogc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlN0eWxlOjpQcm9wZXJ0eUNhc2NhZGU6OmFkZE1hdGNoKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN0eWxlOjppc1ZhbGlkTWFya2VyU3R5bGVQcm9wZXJ0eSk6IERlbGV0ZWQu
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6aXNWYWxpZEN1ZVN0eWxlUHJvcGVydHkpOiBEZWxl
dGVkLgorICAgICAgICAqIHN0eWxlL1J1bGVEYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlOjpkZXRlcm1pbmVQcm9wZXJ0eUFsbG93bGlzdCk6CisgICAgICAgIChXZWJDb3JlOjpTdHls
ZTo6UnVsZURhdGE6OlJ1bGVEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpkZXRlcm1p
bmVQcm9wZXJ0eUFsbG93bGlzdFR5cGUpOiBEZWxldGVkLgorICAgICAgICAqIHN0eWxlL1J1bGVE
YXRhLmg6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UnVsZURhdGE6OnByb3BlcnR5QWxsb3ds
aXN0IGNvbnN0KToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTdHls
ZTo6UnVsZURhdGE6OnByb3BlcnR5QWxsb3dsaXN0VHlwZSBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgICogc3R5bGUvU3R5bGVSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6
UmVzb2x2ZXI6OnN0eWxlRm9yS2V5ZnJhbWUpOgorCiAyMDIxLTEwLTE4ICBBbnRvaW5lIFF1aW50
ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgogCiAgICAgICAgIGJveC1zaGFkb3cgYW5kIHRleHQtc2hh
ZG93IGRvIG5vdCB5aWVsZCBmbG9hdCB2YWx1ZXMgd2hpbGUgaW50ZXJwb2xhdGluZwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2Vz
LnR4dAppbmRleCA3N2UyNDMzYzUwMTYzOTUyMGQwMTI3ZWQxYmI1NDBmZGEyNzkyNmZhLi45MTFj
YTQ2ZDk3OGU5NGFmZWQyZWUyNGViNGRmODYxMjhmZDdkYWE1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAt
MjQ5MCw2ICsyNDkwLDcgQEAgc3R5bGUvSW5saW5lVGV4dEJveFN0eWxlLmNwcAogc3R5bGUvSW5z
cGVjdG9yQ1NTT01XcmFwcGVycy5jcHAKIHN0eWxlL01hdGNoZWREZWNsYXJhdGlvbnNDYWNoZS5j
cHAKIHN0eWxlL1BhZ2VSdWxlQ29sbGVjdG9yLmNwcAorc3R5bGUvUHJvcGVydHlBbGxvd2xpc3Qu
Y3BwCiBzdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCiBzdHlsZS9Qc2V1ZG9DbGFzc0NoYW5nZUlu
dmFsaWRhdGlvbi5jcHAKIHN0eWxlL1J1bGVEYXRhLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDVkNmUzNTA2ODNmM2I3NDlj
ODY4YmMwMmFmOWQzYzM5Mjg2ZTM5ZjMuLmZmMWM4MzBlN2EwZjE1ODFiMWM5ZDY5YTRiZWI2OWQw
OTA1YjBjYTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKQEAgLTIyNTEsNiArMjI1MSw3IEBACiAJCTcxMjQ3RTNDMUZFQTVGOTAwMDhD
MDhDRSAvKiBKU0l0ZXJhdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzEyNDdFMkMxRkVBNUY2NDAwOEMwOENFIC8q
IEpTSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNzEyNDdFM0QxRkVBNUY5MDAwOEMwOENFIC8qIEpT
S2V5ZnJhbWVBbmltYXRpb25PcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA3MTI0N0UyNjFGRUE1RjYwMDA4QzA4Q0UgLyogSlNLZXlmcmFtZUFu
aW1hdGlvbk9wdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQk3MTI0N0UzRTFGRUE1RjkwMDA4QzA4Q0UgLyogSlNLZXlmcmFtZUVmZmVjdE9w
dGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcx
MjQ3RTJBMUZFQTVGNjIwMDhDMDhDRSAvKiBKU0tleWZyYW1lRWZmZWN0T3B0aW9ucy5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTcxMjhDQjNGMjcx
RUU1OEEwMEExM0RBNiAvKiBQcm9wZXJ0eUFsbG93bGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzEyOENCM0MyNzFFRTU4OTAwQTEzREE2IC8qIFBy
b3BlcnR5QWxsb3dsaXN0LmggKi87IH07CiAJCTcxMkJFNDdEMUZFODY0NTgwMDIwMzFDQyAvKiBF
ZmZlY3RUaW1pbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDcxMkJFNDdDMUZFODY0NDgwMDIwMzFDQyAvKiBFZmZlY3RUaW1pbmcuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk3MTJCRTQ4MDFGRTg2NEE3
MDAyMDMxQ0MgLyogUGxheWJhY2tEaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxMkJFNDdFMUZFODY0OUQwMDIwMzFDQyAvKiBQbGF5YmFj
a0RpcmVjdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCTcxMkJFNDgzMUZFODY1REQwMDIwMzFDQyAvKiBGaWxsTW9kZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzEyQkU0ODExRkU4NjVENDAwMjAz
MUNDIC8qIEZpbGxNb2RlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKQEAgLTEwMzcxLDYgKzEwMzcyLDggQEAKIAkJNzEyNDdFMzQxRkVBNUY4MDAwOEMw
OENFIC8qIEtleWZyYW1lQW5pbWF0aW9uT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gS2V5ZnJhbWVBbmltYXRpb25PcHRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJNzEyNDdFMzUxRkVBNUY4MTAwOEMwOENFIC8qIENvbXBvc2l0ZU9wZXJhdGlvbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb21wb3NpdGVPcGVyYXRpb24uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNzEyNDdFMzYxRkVBNUY4MTAwOEMwOENFIC8qIENv
bXBvc2l0ZU9wZXJhdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ29tcG9zaXRlT3Bl
cmF0aW9uLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyOENCM0MyNzFFRTU4
OTAwQTEzREE2IC8qIFByb3BlcnR5QWxsb3dsaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFByb3BlcnR5QWxsb3dsaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTcxMjhDQjNFMjcxRUU1ODkwMEExM0RBNiAvKiBQcm9wZXJ0eUFsbG93bGlzdC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQcm9wZXJ0eUFsbG93bGlzdC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxMkJFNDdBMUZFODY0NDcwMDIwMzFDQyAv
KiBFZmZlY3RUaW1pbmcuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEVmZmVjdFRpbWluZy5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxMkJFNDdDMUZFODY0NDgwMDIwMzFD
QyAvKiBFZmZlY3RUaW1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRWZm
ZWN0VGltaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxMkJFNDdFMUZFODY0
OUQwMDIwMzFDQyAvKiBQbGF5YmFja0RpcmVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBQbGF5YmFja0RpcmVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtMjk2MDAsNiArMjk2MDMsOCBAQAogCQkJCUU0NUJBNkE4MjM3NDkyNkIwMDRERkMwNyAv
KiBNYXRjaGVkRGVjbGFyYXRpb25zQ2FjaGUuaCAqLywKIAkJCQlGQkRCNjE5QzE2RDYwMzQ2MDBC
QjMzOTQgLyogUGFnZVJ1bGVDb2xsZWN0b3IuY3BwICovLAogCQkJCUZCREI2MUEwMTZENjAzN0Uw
MEJCMzM5NCAvKiBQYWdlUnVsZUNvbGxlY3Rvci5oICovLAorCQkJCTcxMjhDQjNFMjcxRUU1ODkw
MEExM0RBNiAvKiBQcm9wZXJ0eUFsbG93bGlzdC5jcHAgKi8sCisJCQkJNzEyOENCM0MyNzFFRTU4
OTAwQTEzREE2IC8qIFByb3BlcnR5QWxsb3dsaXN0LmggKi8sCiAJCQkJRTRBQkFCRTUyMzYxQTM0
MjAwRkE0MzQ1IC8qIFByb3BlcnR5Q2FzY2FkZS5jcHAgKi8sCiAJCQkJRTRBQkFCRTIyMzYxQTMy
OTAwRkE0MzQ1IC8qIFByb3BlcnR5Q2FzY2FkZS5oICovLAogCQkJCUU0NUE2QzczMjQxN0JBNEMw
MDZFNENENSAvKiBQc2V1ZG9DbGFzc0NoYW5nZUludmFsaWRhdGlvbi5jcHAgKi8sCkBAIC0zNDg4
NSw2ICszNDg5MCw3IEBACiAJCQkJMUFDQURENzkxODgwRDkxQzAwRDhCNzFEIC8qIFByb2dyZXNz
VHJhY2tlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjQ3QTYzM0QxRkY2RkQ1MDAwODFC
M0NDIC8qIFByb21pc2VkQXR0YWNobWVudEluZm8uaCBpbiBIZWFkZXJzICovLAogCQkJCUE1NzhG
NDM1MURFMDBFRUIwMDNERkM2QSAvKiBQcm9taXNlUmVqZWN0aW9uRXZlbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTcxMjhDQjNGMjcxRUU1OEEwMEExM0RBNiAvKiBQcm9wZXJ0eUFsbG93bGlzdC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJRTRBQkFCRTQyMzYxQTMyOTAwRkE0MzQ1IC8qIFByb3BlcnR5
Q2FzY2FkZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTRCQkVEMEYxNEY0MDI1RDAwM0YwQjk4IC8q
IFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzdC
QUFFNTgxOTgwRDFERDAwNURGRTcxIC8qIFByb3RlY3Rpb25TcGFjZS5oIGluIEhlYWRlcnMgKi8s
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcAppbmRleCBjZTY4
YzcxODAzZGM3MzYwNDg2M2Y5YmUzMDg2MmU2ZjI2YTA2NTNmLi5lNDk0MDRlZGE3ZjlkMTA3Zjhl
NGMyOTFhNTZkNjFmM2RhYTg3ODdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRp
b24vS2V5ZnJhbWVFZmZlY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlm
cmFtZUVmZmVjdC5jcHAKQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbmNsdWRlICJKU0tleWZyYW1lRWZm
ZWN0LmgiCiAjaW5jbHVkZSAiS2V5ZnJhbWVFZmZlY3RTdGFjay5oIgogI2luY2x1ZGUgIkxvZ2dp
bmcuaCIKKyNpbmNsdWRlICJQcm9wZXJ0eUFsbG93bGlzdC5oIgogI2luY2x1ZGUgIlBzZXVkb0Vs
ZW1lbnQuaCIKICNpbmNsdWRlICJSZW5kZXJCb3guaCIKICNpbmNsdWRlICJSZW5kZXJCb3hNb2Rl
bE9iamVjdC5oIgpAQCAtMTI5Myw2ICsxMjk0LDkgQEAgYm9vbCBLZXlmcmFtZUVmZmVjdDo6aXND
dXJyZW50bHlBZmZlY3RpbmdQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBBY2NlbGUK
ICAgICBpZiAoIW1fYmxlbmRpbmdLZXlmcmFtZXMucHJvcGVydGllcygpLmNvbnRhaW5zKHByb3Bl
cnR5KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCisgICAgaWYgKG1fcHNldWRvSWQgPT0gUHNl
dWRvSWQ6Ok1hcmtlciAmJiAhU3R5bGU6OmlzVmFsaWRNYXJrZXJTdHlsZVByb3BlcnR5KHByb3Bl
cnR5KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCiAgICAgcmV0dXJuIG1fcGhhc2VBdExhc3RB
cHBsaWNhdGlvbiA9PSBBbmltYXRpb25FZmZlY3RQaGFzZTo6QWN0aXZlOwogfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5jcHAKaW5kZXggYjNmMmQ5NDIx
ZDQyZDc3YjJmMGQyNmVmYWIyNWI5NTEwYzY4ODM4ZC4uZjRkZWJmZGZkOGM3MGY1ZjMwMmQ1NTJm
M2M3MGM4ZjcwZmIwMTk4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVu
dFJ1bGVDb2xsZWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxl
Q29sbGVjdG9yLmNwcApAQCAtMjAyLDcgKzIwMiw3IEBAIHZvaWQgRWxlbWVudFJ1bGVDb2xsZWN0
b3I6OnRyYW5zZmVyTWF0Y2hlZFJ1bGVzKERlY2xhcmF0aW9uT3JpZ2luIGRlY2xhcmF0aW9uT3Jp
CiAgICAgICAgIGFkZE1hdGNoZWRQcm9wZXJ0aWVzKHsKICAgICAgICAgICAgICZtYXRjaGVkUnVs
ZS5ydWxlRGF0YS0+c3R5bGVSdWxlKCkucHJvcGVydGllcygpLAogICAgICAgICAgICAgc3RhdGlj
X2Nhc3Q8dWludDE2X3Q+KG1hdGNoZWRSdWxlLnJ1bGVEYXRhLT5saW5rTWF0Y2hUeXBlKCkpLAot
ICAgICAgICAgICAgc3RhdGljX2Nhc3Q8dWludDE2X3Q+KG1hdGNoZWRSdWxlLnJ1bGVEYXRhLT5w
cm9wZXJ0eUFsbG93bGlzdFR5cGUoKSksCisgICAgICAgICAgICBtYXRjaGVkUnVsZS5ydWxlRGF0
YS0+cHJvcGVydHlBbGxvd2xpc3QoKSwKICAgICAgICAgICAgIG1hdGNoZWRSdWxlLnN0eWxlU2Nv
cGVPcmRpbmFsCiAgICAgICAgIH0sIGRlY2xhcmF0aW9uT3JpZ2luKTsKICAgICB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5oIGIvU291cmNl
L1dlYkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuaAppbmRleCBiZjYwZDZjY2NjZjQ0
ZDhmMTEyNTQxOGU5MmIxYjhiNGY0NzkwYTE4Li42OTI0ZDdhNmI3NjZhZGE5NWY0N2E4MTMyZmZj
MzQ1ZDgxOTcwYmJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVs
ZUNvbGxlY3Rvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxlQ29sbGVj
dG9yLmgKQEAgLTIyLDYgKzIyLDcgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiTWVkaWFR
dWVyeUV2YWx1YXRvci5oIgorI2luY2x1ZGUgIlByb3BlcnR5QWxsb3dsaXN0LmgiCiAjaW5jbHVk
ZSAiUnVsZVNldC5oIgogI2luY2x1ZGUgIlNlbGVjdG9yQ2hlY2tlci5oIgogI2luY2x1ZGUgIlN0
eWxlU2NvcGVPcmRpbmFsLmgiCkBAIC02OCw3ICs2OSw3IEBAIHN0cnVjdCBNYXRjaGVkUnVsZSB7
CiBzdHJ1Y3QgTWF0Y2hlZFByb3BlcnRpZXMgewogICAgIFJlZlB0cjxjb25zdCBTdHlsZVByb3Bl
cnRpZXM+IHByb3BlcnRpZXM7CiAgICAgdWludDE2X3QgbGlua01hdGNoVHlwZSB7IFNlbGVjdG9y
Q2hlY2tlcjo6TWF0Y2hBbGwgfTsKLSAgICB1aW50MTZfdCBhbGxvd2xpc3RUeXBlIHsgUHJvcGVy
dHlBbGxvd2xpc3ROb25lIH07CisgICAgUHJvcGVydHlBbGxvd2xpc3QgYWxsb3dsaXN0VHlwZSB7
IFByb3BlcnR5QWxsb3dsaXN0OjpOb25lIH07CiAgICAgU2NvcGVPcmRpbmFsIHN0eWxlU2NvcGVP
cmRpbmFsIHsgU2NvcGVPcmRpbmFsOjpFbGVtZW50IH07CiB9OwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUFsbG93bGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9Qcm9wZXJ0eUFsbG93bGlzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGFmZGI0Yzg3YzkxMDhjOTJj
Yjg0MDUyMjIzMWZhNWQ2MTQ3NGFiNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1Byb3BlcnR5QWxsb3dsaXN0LmNwcApAQCAtMCwwICsxLDEyOSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJQcm9wZXJ0eUFsbG93bGlzdC5oIgor
CituYW1lc3BhY2UgV2ViQ29yZSB7CituYW1lc3BhY2UgU3R5bGUgeworCitQcm9wZXJ0eUFsbG93
bGlzdCBwcm9wZXJ0eUFsbG93bGlzdEZvclBzZXVkb0lkKFBzZXVkb0lkIHBzZXVkb0lkKQorewor
ICAgIGlmIChwc2V1ZG9JZCA9PSBQc2V1ZG9JZDo6TWFya2VyKQorICAgICAgICByZXR1cm4gUHJv
cGVydHlBbGxvd2xpc3Q6Ok1hcmtlcjsKKyAgICByZXR1cm4gUHJvcGVydHlBbGxvd2xpc3Q6Ok5v
bmU7Cit9CisKKy8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3MtcHNldWRvLTQvI21hcmtlci1w
c2V1ZG8gKEVkaXRvcidzIERyYWZ0LCAyNSBKdWx5IDIwMTcpCisvLyBGSVhNRTogdGhpcyBpcyBv
dXRkYXRlZCwgc2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTg3
OTEuCitib29sIGlzVmFsaWRNYXJrZXJTdHlsZVByb3BlcnR5KENTU1Byb3BlcnR5SUQgaWQpCit7
CisgICAgc3dpdGNoIChpZCkgeworICAgIGNhc2UgQ1NTUHJvcGVydHlDb2xvcjoKKyAgICBjYXNl
IENTU1Byb3BlcnR5Rm9udEZhbWlseToKKyAgICBjYXNlIENTU1Byb3BlcnR5Rm9udEZlYXR1cmVT
ZXR0aW5nczoKKyAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFNpemU6CisgICAgY2FzZSBDU1NQcm9w
ZXJ0eUZvbnRTdHJldGNoOgorICAgIGNhc2UgQ1NTUHJvcGVydHlGb250U3R5bGU6CisgICAgY2Fz
ZSBDU1NQcm9wZXJ0eUZvbnRTeW50aGVzaXM6CisgICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRWYXJp
YW50QWx0ZXJuYXRlczoKKyAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFZhcmlhbnRDYXBzOgorICAg
IGNhc2UgQ1NTUHJvcGVydHlGb250VmFyaWFudEVhc3RBc2lhbjoKKyAgICBjYXNlIENTU1Byb3Bl
cnR5Rm9udFZhcmlhbnRMaWdhdHVyZXM6CisgICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRWYXJpYW50
TnVtZXJpYzoKKyAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFZhcmlhbnRQb3NpdGlvbjoKKyAgICBj
YXNlIENTU1Byb3BlcnR5Rm9udFdlaWdodDoKKyNpZiBFTkFCTEUoVkFSSUFUSU9OX0ZPTlRTKQor
ICAgIGNhc2UgQ1NTUHJvcGVydHlGb250T3B0aWNhbFNpemluZzoKKyAgICBjYXNlIENTU1Byb3Bl
cnR5Rm9udFZhcmlhdGlvblNldHRpbmdzOgorI2VuZGlmCisgICAgY2FzZSBDU1NQcm9wZXJ0eUFu
aW1hdGlvbkR1cmF0aW9uOgorICAgIGNhc2UgQ1NTUHJvcGVydHlBbmltYXRpb25UaW1pbmdGdW5j
dGlvbjoKKyAgICBjYXNlIENTU1Byb3BlcnR5QW5pbWF0aW9uRGVsYXk6CisgICAgY2FzZSBDU1NQ
cm9wZXJ0eUFuaW1hdGlvbkl0ZXJhdGlvbkNvdW50OgorICAgIGNhc2UgQ1NTUHJvcGVydHlBbmlt
YXRpb25EaXJlY3Rpb246CisgICAgY2FzZSBDU1NQcm9wZXJ0eUFuaW1hdGlvbkZpbGxNb2RlOgor
ICAgIGNhc2UgQ1NTUHJvcGVydHlBbmltYXRpb25QbGF5U3RhdGU6CisgICAgY2FzZSBDU1NQcm9w
ZXJ0eUFuaW1hdGlvbk5hbWU6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVRyYW5zaXRpb25EdXJhdGlv
bjoKKyAgICBjYXNlIENTU1Byb3BlcnR5VHJhbnNpdGlvblRpbWluZ0Z1bmN0aW9uOgorICAgIGNh
c2UgQ1NTUHJvcGVydHlUcmFuc2l0aW9uRGVsYXk6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVRyYW5z
aXRpb25Qcm9wZXJ0eToKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgZGVmYXVsdDoKKyAgICAg
ICAgYnJlYWs7CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KKworI2lmIEVOQUJMRShWSURF
TykKK2Jvb2wgaXNWYWxpZEN1ZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlJRCBpZCkKK3sKKyAg
ICBzd2l0Y2ggKGlkKSB7CisgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmQ6CisgICAgY2Fz
ZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRBdHRhY2htZW50OgorICAgIGNhc2UgQ1NTUHJvcGVydHlC
YWNrZ3JvdW5kQ2xpcDoKKyAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZENvbG9yOgorICAg
IGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kSW1hZ2U6CisgICAgY2FzZSBDU1NQcm9wZXJ0eUJh
Y2tncm91bmRPcmlnaW46CisgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRQb3NpdGlvbjoK
KyAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZFBvc2l0aW9uWDoKKyAgICBjYXNlIENTU1By
b3BlcnR5QmFja2dyb3VuZFBvc2l0aW9uWToKKyAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3Vu
ZFJlcGVhdDoKKyAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZFNpemU6CisgICAgY2FzZSBD
U1NQcm9wZXJ0eUNvbG9yOgorICAgIGNhc2UgQ1NTUHJvcGVydHlGb250OgorICAgIGNhc2UgQ1NT
UHJvcGVydHlGb250RmFtaWx5OgorICAgIGNhc2UgQ1NTUHJvcGVydHlGb250U2l6ZToKKyAgICBj
YXNlIENTU1Byb3BlcnR5Rm9udFN0eWxlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlGb250VmFyaWFu
dENhcHM6CisgICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRXZWlnaHQ6CisgICAgY2FzZSBDU1NQcm9w
ZXJ0eUxpbmVIZWlnaHQ6CisgICAgY2FzZSBDU1NQcm9wZXJ0eU9wYWNpdHk6CisgICAgY2FzZSBD
U1NQcm9wZXJ0eU91dGxpbmU6CisgICAgY2FzZSBDU1NQcm9wZXJ0eU91dGxpbmVDb2xvcjoKKyAg
ICBjYXNlIENTU1Byb3BlcnR5T3V0bGluZU9mZnNldDoKKyAgICBjYXNlIENTU1Byb3BlcnR5T3V0
bGluZVN0eWxlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlPdXRsaW5lV2lkdGg6CisgICAgY2FzZSBD
U1NQcm9wZXJ0eVZpc2liaWxpdHk6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdoaXRlU3BhY2U6Cisg
ICAgY2FzZSBDU1NQcm9wZXJ0eVRleHREZWNvcmF0aW9uOgorICAgIGNhc2UgQ1NTUHJvcGVydHlU
ZXh0U2hhZG93OgorICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJTdHlsZToKKyAgICBjYXNlIENT
U1Byb3BlcnR5UGFpbnRPcmRlcjoKKyAgICBjYXNlIENTU1Byb3BlcnR5U3Ryb2tlTGluZWpvaW46
CisgICAgY2FzZSBDU1NQcm9wZXJ0eVN0cm9rZUxpbmVjYXA6CisgICAgY2FzZSBDU1NQcm9wZXJ0
eVN0cm9rZUNvbG9yOgorICAgIGNhc2UgQ1NTUHJvcGVydHlTdHJva2VXaWR0aDoKKyAgICAgICAg
cmV0dXJuIHRydWU7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYnJlYWs7CisgICAgfQorICAgIHJl
dHVybiBmYWxzZTsKK30KKyNlbmRpZgorCit9Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdHlsZS9Qcm9wZXJ0eUFsbG93bGlzdC5oIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVy
dHlBbGxvd2xpc3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40OTAzOTAyZTU5ZmNmOTAzYTc2MzkyMzBlYWU5ODNl
OWY3YTYyZmUwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVy
dHlBbGxvd2xpc3QuaApAQCAtMCwwICsxLDUxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
CisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNl
CisKKyNpbmNsdWRlICJDU1NQcm9wZXJ0eU5hbWVzLmgiCisjaW5jbHVkZSAiUmVuZGVyU3R5bGVD
b25zdGFudHMuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCituYW1lc3BhY2UgU3R5bGUgewor
CitlbnVtIGNsYXNzIFByb3BlcnR5QWxsb3dsaXN0IDogdWludDhfdCB7CisgICAgTm9uZSwKKyAg
ICBNYXJrZXIsCisjaWYgRU5BQkxFKFZJREVPKQorICAgIEN1ZQorI2VuZGlmCit9OworCitQcm9w
ZXJ0eUFsbG93bGlzdCBwcm9wZXJ0eUFsbG93bGlzdEZvclBzZXVkb0lkKFBzZXVkb0lkKTsKKwor
Ym9vbCBpc1ZhbGlkTWFya2VyU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEKTsKKyNpZiBFTkFC
TEUoVklERU8pCitib29sIGlzVmFsaWRDdWVTdHlsZVByb3BlcnR5KENTU1Byb3BlcnR5SUQpOwor
I2VuZGlmCisKK30KK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5
Q2FzY2FkZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCmlu
ZGV4IDlmY2M0MTkxZjIyMGIxODJmZTllYTM5MDFlYWY4MDM2M2Y1MzNmZjMuLjdkZjdhNzVhYWQw
MDhlOTU5YTA5NDc1M2JmY2RlM2Y2MzE0NjY2ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJv
cGVydHlDYXNjYWRlLmNwcApAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgIkNTU1ByaW1pdGl2
ZVZhbHVlTWFwcGluZ3MuaCIKICNpbmNsdWRlICJDU1NWYWx1ZVBvb2wuaCIKICNpbmNsdWRlICJQ
YWludFdvcmtsZXRHbG9iYWxTY29wZS5oIgorI2luY2x1ZGUgIlByb3BlcnR5QWxsb3dsaXN0Lmgi
CiAjaW5jbHVkZSAiU3R5bGVCdWlsZGVyR2VuZXJhdGVkLmgiCiAjaW5jbHVkZSAiU3R5bGVQcm9w
ZXJ0eVNob3J0aGFuZC5oIgogCkBAIC03MCw5NSArNzEsNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wg
c2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQp
CiAgICAgfQogfQogCi0vLyBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLXBzZXVkby00LyNtYXJr
ZXItcHNldWRvIChFZGl0b3IncyBEcmFmdCwgMjUgSnVseSAyMDE3KQotLy8gRklYTUU6IHRoaXMg
aXMgb3V0ZGF0ZWQsIHNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjE4NzkxLgotc3RhdGljIGlubGluZSBib29sIGlzVmFsaWRNYXJrZXJTdHlsZVByb3BlcnR5KENT
U1Byb3BlcnR5SUQgaWQpCi17Ci0gICAgc3dpdGNoIChpZCkgewotICAgIGNhc2UgQ1NTUHJvcGVy
dHlDb2xvcjoKLSAgICBjYXNlIENTU1Byb3BlcnR5Rm9udEZhbWlseToKLSAgICBjYXNlIENTU1By
b3BlcnR5Rm9udEZlYXR1cmVTZXR0aW5nczoKLSAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFNpemU6
Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRTdHJldGNoOgotICAgIGNhc2UgQ1NTUHJvcGVydHlG
b250U3R5bGU6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRTeW50aGVzaXM6Ci0gICAgY2FzZSBD
U1NQcm9wZXJ0eUZvbnRWYXJpYW50QWx0ZXJuYXRlczoKLSAgICBjYXNlIENTU1Byb3BlcnR5Rm9u
dFZhcmlhbnRDYXBzOgotICAgIGNhc2UgQ1NTUHJvcGVydHlGb250VmFyaWFudEVhc3RBc2lhbjoK
LSAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFZhcmlhbnRMaWdhdHVyZXM6Ci0gICAgY2FzZSBDU1NQ
cm9wZXJ0eUZvbnRWYXJpYW50TnVtZXJpYzoKLSAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFZhcmlh
bnRQb3NpdGlvbjoKLSAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFdlaWdodDoKLSNpZiBFTkFCTEUo
VkFSSUFUSU9OX0ZPTlRTKQotICAgIGNhc2UgQ1NTUHJvcGVydHlGb250T3B0aWNhbFNpemluZzoK
LSAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFZhcmlhdGlvblNldHRpbmdzOgotI2VuZGlmCi0gICAg
Y2FzZSBDU1NQcm9wZXJ0eUFuaW1hdGlvbkR1cmF0aW9uOgotICAgIGNhc2UgQ1NTUHJvcGVydHlB
bmltYXRpb25UaW1pbmdGdW5jdGlvbjoKLSAgICBjYXNlIENTU1Byb3BlcnR5QW5pbWF0aW9uRGVs
YXk6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUFuaW1hdGlvbkl0ZXJhdGlvbkNvdW50OgotICAgIGNh
c2UgQ1NTUHJvcGVydHlBbmltYXRpb25EaXJlY3Rpb246Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUFu
aW1hdGlvbkZpbGxNb2RlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlBbmltYXRpb25QbGF5U3RhdGU6
Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUFuaW1hdGlvbk5hbWU6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0
eVRyYW5zaXRpb25EdXJhdGlvbjoKLSAgICBjYXNlIENTU1Byb3BlcnR5VHJhbnNpdGlvblRpbWlu
Z0Z1bmN0aW9uOgotICAgIGNhc2UgQ1NTUHJvcGVydHlUcmFuc2l0aW9uRGVsYXk6Ci0gICAgY2Fz
ZSBDU1NQcm9wZXJ0eVRyYW5zaXRpb25Qcm9wZXJ0eToKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0g
ICAgZGVmYXVsdDoKLSAgICAgICAgYnJlYWs7Ci0gICAgfQotICAgIHJldHVybiBmYWxzZTsKLX0K
LQotI2lmIEVOQUJMRShWSURFTykKLXN0YXRpYyBpbmxpbmUgYm9vbCBpc1ZhbGlkQ3VlU3R5bGVQ
cm9wZXJ0eShDU1NQcm9wZXJ0eUlEIGlkKQotewotICAgIHN3aXRjaCAoaWQpIHsKLSAgICBjYXNl
IENTU1Byb3BlcnR5QmFja2dyb3VuZDoKLSAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZEF0
dGFjaG1lbnQ6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRDbGlwOgotICAgIGNhc2Ug
Q1NTUHJvcGVydHlCYWNrZ3JvdW5kQ29sb3I6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91
bmRJbWFnZToKLSAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZE9yaWdpbjoKLSAgICBjYXNl
IENTU1Byb3BlcnR5QmFja2dyb3VuZFBvc2l0aW9uOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNr
Z3JvdW5kUG9zaXRpb25YOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kUG9zaXRpb25Z
OgotICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kUmVwZWF0OgotICAgIGNhc2UgQ1NTUHJv
cGVydHlCYWNrZ3JvdW5kU2l6ZToKLSAgICBjYXNlIENTU1Byb3BlcnR5Q29sb3I6Ci0gICAgY2Fz
ZSBDU1NQcm9wZXJ0eUZvbnQ6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRGYW1pbHk6Ci0gICAg
Y2FzZSBDU1NQcm9wZXJ0eUZvbnRTaXplOgotICAgIGNhc2UgQ1NTUHJvcGVydHlGb250U3R5bGU6
Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRWYXJpYW50Q2FwczoKLSAgICBjYXNlIENTU1Byb3Bl
cnR5Rm9udFdlaWdodDoKLSAgICBjYXNlIENTU1Byb3BlcnR5TGluZUhlaWdodDoKLSAgICBjYXNl
IENTU1Byb3BlcnR5T3BhY2l0eToKLSAgICBjYXNlIENTU1Byb3BlcnR5T3V0bGluZToKLSAgICBj
YXNlIENTU1Byb3BlcnR5T3V0bGluZUNvbG9yOgotICAgIGNhc2UgQ1NTUHJvcGVydHlPdXRsaW5l
T2Zmc2V0OgotICAgIGNhc2UgQ1NTUHJvcGVydHlPdXRsaW5lU3R5bGU6Ci0gICAgY2FzZSBDU1NQ
cm9wZXJ0eU91dGxpbmVXaWR0aDoKLSAgICBjYXNlIENTU1Byb3BlcnR5VmlzaWJpbGl0eToKLSAg
ICBjYXNlIENTU1Byb3BlcnR5V2hpdGVTcGFjZToKLSAgICBjYXNlIENTU1Byb3BlcnR5VGV4dERl
Y29yYXRpb246Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eVRleHRTaGFkb3c6Ci0gICAgY2FzZSBDU1NQ
cm9wZXJ0eUJvcmRlclN0eWxlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlQYWludE9yZGVyOgotICAg
IGNhc2UgQ1NTUHJvcGVydHlTdHJva2VMaW5lam9pbjoKLSAgICBjYXNlIENTU1Byb3BlcnR5U3Ry
b2tlTGluZWNhcDoKLSAgICBjYXNlIENTU1Byb3BlcnR5U3Ryb2tlQ29sb3I6Ci0gICAgY2FzZSBD
U1NQcm9wZXJ0eVN0cm9rZVdpZHRoOgotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBkZWZhdWx0
OgotICAgICAgICBicmVhazsKLSAgICB9Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotI2VuZGlmCi0K
IFByb3BlcnR5Q2FzY2FkZTo6UHJvcGVydHlDYXNjYWRlKGNvbnN0IE1hdGNoUmVzdWx0JiBtYXRj
aFJlc3VsdCwgT3B0aW9uU2V0PENhc2NhZGVMZXZlbD4gY2FzY2FkZUxldmVscywgSW5jbHVkZWRQ
cm9wZXJ0aWVzIGluY2x1ZGVkUHJvcGVydGllcywgRGlyZWN0aW9uIGRpcmVjdGlvbikKICAgICA6
IG1fbWF0Y2hSZXN1bHQobWF0Y2hSZXN1bHQpCiAgICAgLCBtX2luY2x1ZGVkUHJvcGVydGllcyhp
bmNsdWRlZFByb3BlcnRpZXMpCkBAIC0yNTksNyArMTcxLDcgQEAgdm9pZCBQcm9wZXJ0eUNhc2Nh
ZGU6OnNldERlZmVycmVkKENTU1Byb3BlcnR5SUQgaWQsIENTU1ZhbHVlJiBjc3NWYWx1ZSwgdW5z
aWduZWQKIGJvb2wgUHJvcGVydHlDYXNjYWRlOjphZGRNYXRjaChjb25zdCBNYXRjaGVkUHJvcGVy
dGllcyYgbWF0Y2hlZFByb3BlcnRpZXMsIENhc2NhZGVMZXZlbCBjYXNjYWRlTGV2ZWwsIGJvb2wg
aW1wb3J0YW50KQogewogICAgIGF1dG8mIHN0eWxlUHJvcGVydGllcyA9ICptYXRjaGVkUHJvcGVy
dGllcy5wcm9wZXJ0aWVzOwotICAgIGF1dG8gcHJvcGVydHlBbGxvd2xpc3RUeXBlID0gc3RhdGlj
X2Nhc3Q8UHJvcGVydHlBbGxvd2xpc3RUeXBlPihtYXRjaGVkUHJvcGVydGllcy5hbGxvd2xpc3RU
eXBlKTsKKyAgICBhdXRvIHByb3BlcnR5QWxsb3dsaXN0ID0gbWF0Y2hlZFByb3BlcnRpZXMuYWxs
b3dsaXN0VHlwZTsKICAgICBib29sIGhhc0ltcG9ydGFudFByb3BlcnRpZXMgPSBmYWxzZTsKIAog
ICAgIGZvciAodW5zaWduZWQgaSA9IDAsIGNvdW50ID0gc3R5bGVQcm9wZXJ0aWVzLnByb3BlcnR5
Q291bnQoKTsgaSA8IGNvdW50OyArK2kpIHsKQEAgLTI3OSwxMCArMTkxLDEwIEBAIGJvb2wgUHJv
cGVydHlDYXNjYWRlOjphZGRNYXRjaChjb25zdCBNYXRjaGVkUHJvcGVydGllcyYgbWF0Y2hlZFBy
b3BlcnRpZXMsIENhc2NhCiAgICAgICAgIENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCA9IGN1cnJl
bnQuaWQoKTsKIAogI2lmIEVOQUJMRShWSURFTykKLSAgICAgICAgaWYgKHByb3BlcnR5QWxsb3ds
aXN0VHlwZSA9PSBQcm9wZXJ0eUFsbG93bGlzdEN1ZSAmJiAhaXNWYWxpZEN1ZVN0eWxlUHJvcGVy
dHkocHJvcGVydHlJRCkpCisgICAgICAgIGlmIChwcm9wZXJ0eUFsbG93bGlzdCA9PSBQcm9wZXJ0
eUFsbG93bGlzdDo6Q3VlICYmICFpc1ZhbGlkQ3VlU3R5bGVQcm9wZXJ0eShwcm9wZXJ0eUlEKSkK
ICAgICAgICAgICAgIGNvbnRpbnVlOwogI2VuZGlmCi0gICAgICAgIGlmIChwcm9wZXJ0eUFsbG93
bGlzdFR5cGUgPT0gUHJvcGVydHlBbGxvd2xpc3RNYXJrZXIgJiYgIWlzVmFsaWRNYXJrZXJTdHls
ZVByb3BlcnR5KHByb3BlcnR5SUQpKQorICAgICAgICBpZiAocHJvcGVydHlBbGxvd2xpc3QgPT0g
UHJvcGVydHlBbGxvd2xpc3Q6Ok1hcmtlciAmJiAhaXNWYWxpZE1hcmtlclN0eWxlUHJvcGVydHko
cHJvcGVydHlJRCkpCiAgICAgICAgICAgICBjb250aW51ZTsKIAogICAgICAgICBpZiAoc2hvdWxk
QXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcihwcm9wZXJ0eUlEKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL1J1bGVEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVE
YXRhLmNwcAppbmRleCA4OGI0MzMyZGY5MWMzZGU5ZDc4MGJiNWJlMDgwNjYyNzNjYjEzYjg4Li40
M2E0ZmMwM2I5MTIzNDE5OTc3NjNmMWFkZjk2ZjMyMTRlY2YwOGFjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9SdWxlRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUv
UnVsZURhdGEuY3BwCkBAIC0xMzQsMjUgKzEzNCwyNSBAQCBzdGF0aWMgYm9vbCBjb21wdXRlQ29u
dGFpbnNVbmNvbW1vbkF0dHJpYnV0ZVNlbGVjdG9yKGNvbnN0IENTU1NlbGVjdG9yJiByb290U2Vs
ZQogICAgIHJldHVybiBmYWxzZTsKIH0KIAotc3RhdGljIGlubGluZSBQcm9wZXJ0eUFsbG93bGlz
dFR5cGUgZGV0ZXJtaW5lUHJvcGVydHlBbGxvd2xpc3RUeXBlKGNvbnN0IENTU1NlbGVjdG9yKiBz
ZWxlY3RvcikKK3N0YXRpYyBpbmxpbmUgUHJvcGVydHlBbGxvd2xpc3QgZGV0ZXJtaW5lUHJvcGVy
dHlBbGxvd2xpc3QoY29uc3QgQ1NTU2VsZWN0b3IqIHNlbGVjdG9yKQogewogICAgIGZvciAoY29u
c3QgQ1NTU2VsZWN0b3IqIGNvbXBvbmVudCA9IHNlbGVjdG9yOyBjb21wb25lbnQ7IGNvbXBvbmVu
dCA9IGNvbXBvbmVudC0+dGFnSGlzdG9yeSgpKSB7CiAjaWYgRU5BQkxFKFZJREVPKQogICAgICAg
ICBpZiAoY29tcG9uZW50LT5tYXRjaCgpID09IENTU1NlbGVjdG9yOjpQc2V1ZG9FbGVtZW50ICYm
IChjb21wb25lbnQtPnBzZXVkb0VsZW1lbnRUeXBlKCkgPT0gQ1NTU2VsZWN0b3I6OlBzZXVkb0Vs
ZW1lbnRDdWUgfHwgY29tcG9uZW50LT52YWx1ZSgpID09IFNoYWRvd1BzZXVkb0lkczo6Y3VlKCkp
KQotICAgICAgICAgICAgcmV0dXJuIFByb3BlcnR5QWxsb3dsaXN0Q3VlOworICAgICAgICAgICAg
cmV0dXJuIFByb3BlcnR5QWxsb3dsaXN0OjpDdWU7CiAjZW5kaWYKICAgICAgICAgaWYgKGNvbXBv
bmVudC0+bWF0Y2goKSA9PSBDU1NTZWxlY3Rvcjo6UHNldWRvRWxlbWVudCAmJiBjb21wb25lbnQt
PnBzZXVkb0VsZW1lbnRUeXBlKCkgPT0gQ1NTU2VsZWN0b3I6OlBzZXVkb0VsZW1lbnRNYXJrZXIp
Ci0gICAgICAgICAgICByZXR1cm4gUHJvcGVydHlBbGxvd2xpc3RNYXJrZXI7CisgICAgICAgICAg
ICByZXR1cm4gcHJvcGVydHlBbGxvd2xpc3RGb3JQc2V1ZG9JZChQc2V1ZG9JZDo6TWFya2VyKTsK
IAogICAgICAgICBpZiAoY29uc3QgYXV0byogc2VsZWN0b3JMaXN0ID0gc2VsZWN0b3ItPnNlbGVj
dG9yTGlzdCgpKSB7CiAgICAgICAgICAgICBmb3IgKGNvbnN0IGF1dG8qIHN1YlNlbGVjdG9yID0g
c2VsZWN0b3JMaXN0LT5maXJzdCgpOyBzdWJTZWxlY3Rvcjsgc3ViU2VsZWN0b3IgPSBDU1NTZWxl
Y3Rvckxpc3Q6Om5leHQoc3ViU2VsZWN0b3IpKSB7Ci0gICAgICAgICAgICAgICAgYXV0byBhbGxv
d2xpc3RUeXBlID0gZGV0ZXJtaW5lUHJvcGVydHlBbGxvd2xpc3RUeXBlKHN1YlNlbGVjdG9yKTsK
LSAgICAgICAgICAgICAgICBpZiAoYWxsb3dsaXN0VHlwZSAhPSBQcm9wZXJ0eUFsbG93bGlzdE5v
bmUpCisgICAgICAgICAgICAgICAgYXV0byBhbGxvd2xpc3RUeXBlID0gZGV0ZXJtaW5lUHJvcGVy
dHlBbGxvd2xpc3Qoc3ViU2VsZWN0b3IpOworICAgICAgICAgICAgICAgIGlmIChhbGxvd2xpc3RU
eXBlICE9IFByb3BlcnR5QWxsb3dsaXN0OjpOb25lKQogICAgICAgICAgICAgICAgICAgICByZXR1
cm4gYWxsb3dsaXN0VHlwZTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KLSAgICBy
ZXR1cm4gUHJvcGVydHlBbGxvd2xpc3ROb25lOworICAgIHJldHVybiBQcm9wZXJ0eUFsbG93bGlz
dDo6Tm9uZTsKIH0KIAogUnVsZURhdGE6OlJ1bGVEYXRhKGNvbnN0IFN0eWxlUnVsZSYgc3R5bGVS
dWxlLCB1bnNpZ25lZCBzZWxlY3RvckluZGV4LCB1bnNpZ25lZCBzZWxlY3Rvckxpc3RJbmRleCwg
dW5zaWduZWQgcG9zaXRpb24pCkBAIC0xNjQsNyArMTY0LDcgQEAgUnVsZURhdGE6OlJ1bGVEYXRh
KGNvbnN0IFN0eWxlUnVsZSYgc3R5bGVSdWxlLCB1bnNpZ25lZCBzZWxlY3RvckluZGV4LCB1bnNp
Z25lZAogICAgICwgbV9jYW5NYXRjaFBzZXVkb0VsZW1lbnQoc2VsZWN0b3JDYW5NYXRjaFBzZXVk
b0VsZW1lbnQoKnNlbGVjdG9yKCkpKQogICAgICwgbV9jb250YWluc1VuY29tbW9uQXR0cmlidXRl
U2VsZWN0b3IoY29tcHV0ZUNvbnRhaW5zVW5jb21tb25BdHRyaWJ1dGVTZWxlY3Rvcigqc2VsZWN0
b3IoKSkpCiAgICAgLCBtX2xpbmtNYXRjaFR5cGUoU2VsZWN0b3JDaGVja2VyOjpkZXRlcm1pbmVM
aW5rTWF0Y2hUeXBlKHNlbGVjdG9yKCkpKQotICAgICwgbV9wcm9wZXJ0eUFsbG93bGlzdFR5cGUo
ZGV0ZXJtaW5lUHJvcGVydHlBbGxvd2xpc3RUeXBlKHNlbGVjdG9yKCkpKQorICAgICwgbV9wcm9w
ZXJ0eUFsbG93bGlzdChzdGF0aWNfY2FzdDx1bnNpZ25lZD4oZGV0ZXJtaW5lUHJvcGVydHlBbGxv
d2xpc3Qoc2VsZWN0b3IoKSkpKQogICAgICwgbV9pc0VuYWJsZWQodHJ1ZSkKICAgICAsIG1fZGVz
Y2VuZGFudFNlbGVjdG9ySWRlbnRpZmllckhhc2hlcyhTZWxlY3RvckZpbHRlcjo6Y29sbGVjdEhh
c2hlcygqc2VsZWN0b3IoKSkpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9S
dWxlRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZURhdGEuaAppbmRleCA4M2E4MDI4
NTkzYTU2ODRjMGQyMzNkMWVlMWRjYWRmM2M1OTNmMDI3Li4zODVlMWEwMDhkZDE0YWMxY2EyZGFk
ZWZkYTY5OWQ0YWNkN2MzMTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxl
RGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVEYXRhLmgKQEAgLTIxLDIwICsy
MSwxMyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIlByb3BlcnR5QWxsb3dsaXN0Lmgi
CiAjaW5jbHVkZSAiU2VsZWN0b3JGaWx0ZXIuaCIKICNpbmNsdWRlICJTdHlsZVJ1bGUuaCIKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogbmFtZXNwYWNlIFN0eWxlIHsKIAotZW51bSBQcm9wZXJ0eUFs
bG93bGlzdFR5cGUgewotICAgIFByb3BlcnR5QWxsb3dsaXN0Tm9uZSAgID0gMCwKLSAgICBQcm9w
ZXJ0eUFsbG93bGlzdE1hcmtlciwKLSNpZiBFTkFCTEUoVklERU8pCi0gICAgUHJvcGVydHlBbGxv
d2xpc3RDdWUKLSNlbmRpZgotfTsKLQogZW51bSBjbGFzcyBNYXRjaEJhc2VkT25SdWxlSGFzaCA6
IHVuc2lnbmVkIHsKICAgICBOb25lLAogICAgIFVuaXZlcnNhbCwKQEAgLTY1LDcgKzU4LDcgQEAg
cHVibGljOgogICAgIE1hdGNoQmFzZWRPblJ1bGVIYXNoIG1hdGNoQmFzZWRPblJ1bGVIYXNoKCkg
Y29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8TWF0Y2hCYXNlZE9uUnVsZUhhc2g+KG1fbWF0Y2hC
YXNlZE9uUnVsZUhhc2gpOyB9CiAgICAgYm9vbCBjb250YWluc1VuY29tbW9uQXR0cmlidXRlU2Vs
ZWN0b3IoKSBjb25zdCB7IHJldHVybiBtX2NvbnRhaW5zVW5jb21tb25BdHRyaWJ1dGVTZWxlY3Rv
cjsgfQogICAgIHVuc2lnbmVkIGxpbmtNYXRjaFR5cGUoKSBjb25zdCB7IHJldHVybiBtX2xpbmtN
YXRjaFR5cGU7IH0KLSAgICBQcm9wZXJ0eUFsbG93bGlzdFR5cGUgcHJvcGVydHlBbGxvd2xpc3RU
eXBlKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8UHJvcGVydHlBbGxvd2xpc3RUeXBlPiht
X3Byb3BlcnR5QWxsb3dsaXN0VHlwZSk7IH0KKyAgICBQcm9wZXJ0eUFsbG93bGlzdCBwcm9wZXJ0
eUFsbG93bGlzdCgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PFByb3BlcnR5QWxsb3dsaXN0
PihtX3Byb3BlcnR5QWxsb3dsaXN0KTsgfQogICAgIGJvb2wgaXNFbmFibGVkKCkgY29uc3QgeyBy
ZXR1cm4gbV9pc0VuYWJsZWQ7IH0KICAgICB2b2lkIHNldEVuYWJsZWQoYm9vbCB2YWx1ZSkgeyBt
X2lzRW5hYmxlZCA9IHZhbHVlOyB9CiAKQEAgLTg0LDcgKzc3LDcgQEAgcHJpdmF0ZToKICAgICB1
bnNpZ25lZCBtX2Nhbk1hdGNoUHNldWRvRWxlbWVudCA6IDE7CiAgICAgdW5zaWduZWQgbV9jb250
YWluc1VuY29tbW9uQXR0cmlidXRlU2VsZWN0b3IgOiAxOwogICAgIHVuc2lnbmVkIG1fbGlua01h
dGNoVHlwZSA6IDI7IC8vICBTZWxlY3RvckNoZWNrZXI6OkxpbmtNYXRjaE1hc2sKLSAgICB1bnNp
Z25lZCBtX3Byb3BlcnR5QWxsb3dsaXN0VHlwZSA6IDI7CisgICAgdW5zaWduZWQgbV9wcm9wZXJ0
eUFsbG93bGlzdCA6IDI7CiAgICAgdW5zaWduZWQgbV9pc0VuYWJsZWQgOiAxOwogICAgIFNlbGVj
dG9yRmlsdGVyOjpIYXNoZXMgbV9kZXNjZW5kYW50U2VsZWN0b3JJZGVudGlmaWVySGFzaGVzOwog
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVzb2x2ZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVSZXNvbHZlci5jcHAKaW5kZXggNTY0MTE4ZjZmMmU0
ZWI1MzRiZTgwYTQxYjFiYzllOTExNzVjNzBiYy4uYzRkYzhlOGFkNDUwNGE4MGYxMjUyMDY1YTc4
YzNjMTViODhiNjA0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVSZXNv
bHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVSZXNvbHZlci5jcHAKQEAg
LTI2Myw3ICsyNjMsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVyU3R5bGU+IFJlc29sdmVyOjpz
dHlsZUZvcktleWZyYW1lKGNvbnN0IEVsZW1lbnQmIGVsZW1lbnQsCiAgICAgUkVMRUFTRV9BU1NF
UlQoIW1faXNEZWxldGVkKTsKIAogICAgIE1hdGNoUmVzdWx0IHJlc3VsdDsKLSAgICByZXN1bHQu
YXV0aG9yRGVjbGFyYXRpb25zLmFwcGVuZCh7ICZrZXlmcmFtZS0+cHJvcGVydGllcygpIH0pOwor
ICAgIHJlc3VsdC5hdXRob3JEZWNsYXJhdGlvbnMuYXBwZW5kKHsgJmtleWZyYW1lLT5wcm9wZXJ0
aWVzKCksIFNlbGVjdG9yQ2hlY2tlcjo6TWF0Y2hBbGwsIHByb3BlcnR5QWxsb3dsaXN0Rm9yUHNl
dWRvSWQoZWxlbWVudFN0eWxlLT5zdHlsZVR5cGUoKSkgfSk7CiAKICAgICBhdXRvIHN0YXRlID0g
U3RhdGUoZWxlbWVudCwgbnVsbHB0ciwgbV9vdmVycmlkZURvY3VtZW50RWxlbWVudFN0eWxlKTsK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCmluZGV4IDhjYWM0ZWVjZDA4YzM2YmZjZmZkMGZkNTg3MTdmZjAzYzMxNDVkNWEuLjRlZTlh
MWE5YjA5MDc5YTNjYjdmMjU2M2RmZmEzMjk4ZTA5M2JkY2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBA
QAorMjAyMS0xMC0xOSAgQW50b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4KKworICAg
ICAgICBSRUdSRVNTSU9OKHIyODQzMTMpOiA6Om1hcmtlciBhY2NlbGVyYXRlZCBhbmltYXRpb25z
IGFyZSBicm9rZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIzMTkwNgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vODQzODMyNzk+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgbmV3IHRlc3QgdGhh
dCBjaGVja3Mgd2UgZG8gbm90IHZpc3VhbGx5IGFjY291bnQgZm9yIGFuIG9wYWNpdHkgYW5pbWF0
aW9uIG9uIGEgOjptYXJrZXIKKyAgICAgICAgcHNldWRvLWVsZW1lbnQuCisKKyAgICAgICAgKiB3
ZWJhbmltYXRpb25zL21hcmtlci1vcGFjaXR5LWFuaW1hdGlvbi1uby1lZmZlY3QtZXhwZWN0ZWQu
aHRtbDogQWRkZWQuCisgICAgICAgICogd2ViYW5pbWF0aW9ucy9tYXJrZXItb3BhY2l0eS1hbmlt
YXRpb24tbm8tZWZmZWN0Lmh0bWw6IEFkZGVkLgorCiAyMDIxLTEwLTE4ICBKZWFuLVl2ZXMgQXZl
bmFyZCAgPGp5YUBhcHBsZS5jb20+CiAKICAgICAgICAgV2ViTSB3aXRoIGludmFsaWQgc2l6ZSBz
aG91bGQgZmFpbCB0byBsb2FkIHdpdGggZXJyb3IKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
CmluZGV4IGUyZTA4OWJkOWJlMDZhZWJiODU2MWVlYzgzMTBjYzU5ODQ4M2FhNDIuLjI4MzJmOGM1
ZjU2NjlhYjVmMDAzYWNmMzNlZTNjOWMzMGYyODQ5YzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIxLTEwLTE5ICBBbnRvaW5lIFF1aW50ICA8Z3Jh
b3V0c0B3ZWJraXQub3JnPgorCisgICAgICAgIFJFR1JFU1NJT04ocjI4NDMxMyk6IDo6bWFya2Vy
IGFjY2VsZXJhdGVkIGFuaW1hdGlvbnMgYXJlIGJyb2tlbgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxOTA2CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS84NDM4MzI3OT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBXUFQgbm93IHJlZmxlY3QgdGhhdCB3ZSBjb3JyZWN0bHkgZG8gbm90IGFuaW1hdGUgdGhl
IG9wYWNpdHkgcHJvcGVydHkgYW5kIGNvcnJlY3RseSBhY2NvdW50IGZvcgorICAgICAgICBvdGhl
ciBpbmVmZmVjdGl2ZSBwcm9wZXJ0aWVzIG9uIDo6bWFya2VyLCBzdWNoIGFzIGxpbmUtaGVpZ2h0
LgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtcHNldWRvL21hcmtlci1h
bmltYXRlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1wc2V1ZG8vcGFyc2luZy9tYXJrZXItc3VwcG9ydGVkLXByb3BlcnRpZXMtaW4tYW5pbWF0aW9u
LWV4cGVjdGVkLnR4dDoKKwogMjAyMS0xMC0xOCAgQW50b2luZSBRdWludCAgPGdyYW91dHNAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBib3gtc2hhZG93IGFuZCB0ZXh0LXNoYWRvdyBkbyBub3QgeWll
bGQgZmxvYXQgdmFsdWVzIHdoaWxlIGludGVycG9sYXRpbmcKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1wc2V1ZG8vbWFya2Vy
LWFuaW1hdGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLXBzZXVkby9tYXJrZXItYW5pbWF0ZS1leHBlY3RlZC50eHQKaW5k
ZXggMDQzMzY1YjEyZDdjMzdjZmI3OGZjZWY2MWM5NjQ5YzJhOWJkNjNkNy4uYjMwMGYzNWMyZDY2
ZmNlNmJjMmQ5ZTE0YTM3NzI0MjhkN2E0ZWY1ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXBzZXVkby9tYXJrZXItYW5pbWF0
ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLXBzZXVkby9tYXJrZXItYW5pbWF0ZS1leHBlY3RlZC50eHQKQEAgLTEs
NSArMSw1IEBACiAKIFBBU1MgJ2NvbG9yJyBhbmltYXRpb24KLUZBSUwgJ29wYWNpdHknIGFuaW1h
dGlvbiBhc3NlcnRfZXF1YWxzOiBvcGFjaXR5IGV4cGVjdGVkICIxIiBidXQgZ290ICIwLjUiCi1G
QUlMICdjb2xvcicgKyAnb3BhY2l0eScgYW5pbWF0aW9uIGFzc2VydF9lcXVhbHM6IG9wYWNpdHkg
ZXhwZWN0ZWQgIjEiIGJ1dCBnb3QgIjAuNSIKK1BBU1MgJ29wYWNpdHknIGFuaW1hdGlvbgorUEFT
UyAnY29sb3InICsgJ29wYWNpdHknIGFuaW1hdGlvbgogbGlzdCBpdGVtCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtcHNldWRv
L3BhcnNpbmcvbWFya2VyLXN1cHBvcnRlZC1wcm9wZXJ0aWVzLWluLWFuaW1hdGlvbi1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtcHNldWRvL3BhcnNpbmcvbWFya2VyLXN1cHBvcnRlZC1wcm9wZXJ0aWVzLWluLWFuaW1hdGlv
bi1leHBlY3RlZC50eHQKaW5kZXggMTQ3ZDA2YmU0MzJhYzI1ZTlkYzhkNWI5NGYzNDQ3OGY0OGE0
YWVhMy4uODg4ZGQ5ODgwY2U3YTBlMjNjZDgxNGIzZGIzY2EwNWRlYThiZGM0YiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXBz
ZXVkby9wYXJzaW5nL21hcmtlci1zdXBwb3J0ZWQtcHJvcGVydGllcy1pbi1hbmltYXRpb24tZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1wc2V1ZG8vcGFyc2luZy9tYXJrZXItc3VwcG9ydGVkLXByb3BlcnRpZXMtaW4t
YW5pbWF0aW9uLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBBbmltYXRpb24g
b2YgZm9udCBpbiA6Om1hcmtlciBhc3NlcnRfaW5fYXJyYXk6IHZhbHVlICJpdGFsaWMgbm9ybWFs
IDUwMCBleHBhbmRlZCAxNXB4LzM1cHggLXdlYmtpdC1zdGFuZGFyZCIgbm90IGluIGFycmF5IFsi
aXRhbGljIHNtYWxsLWNhcHMgNTAwIGV4cGFuZGVkIDE1cHggLyAzNXB4IEFoZW0iLCAiaXRhbGlj
IHNtYWxsLWNhcHMgNTAwIGV4cGFuZGVkIDE1cHgvMzVweCBBaGVtIl0KK0ZBSUwgQW5pbWF0aW9u
IG9mIGZvbnQgaW4gOjptYXJrZXIgYXNzZXJ0X2luX2FycmF5OiB2YWx1ZSAiaXRhbGljIG5vcm1h
bCA1MDAgZXhwYW5kZWQgMTVweC9ub3JtYWwgLXdlYmtpdC1zdGFuZGFyZCIgbm90IGluIGFycmF5
IFsiaXRhbGljIHNtYWxsLWNhcHMgNTAwIGV4cGFuZGVkIDE1cHggLyAzNXB4IEFoZW0iLCAiaXRh
bGljIHNtYWxsLWNhcHMgNTAwIGV4cGFuZGVkIDE1cHgvMzVweCBBaGVtIl0KIEZBSUwgQW5pbWF0
aW9uIG9mIGZvbnQtZmFtaWx5IGluIDo6bWFya2VyIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJB
aGVtIiBidXQgZ290ICItd2Via2l0LXN0YW5kYXJkIgogRkFJTCBBbmltYXRpb24gb2YgZm9udC1m
ZWF0dXJlLXNldHRpbmdzIGluIDo6bWFya2VyIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJcInNt
Y3BcIiIgYnV0IGdvdCAibm9ybWFsIgogRkFJTCBBbmltYXRpb24gb2YgZm9udC1rZXJuaW5nIGlu
IDo6bWFya2VyIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJub25lIiBidXQgZ290ICJhdXRvIgpA
QCAtMTUsNyArMTUsNyBAQCBGQUlMIEFuaW1hdGlvbiBvZiBmb250LXZhcmlhbnQtbGlnYXR1cmVz
IGluIDo6bWFya2VyIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJoaQogRkFJTCBBbmltYXRpb24g
b2YgZm9udC12YXJpYW50LW51bWVyaWMgaW4gOjptYXJrZXIgYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgInNsYXNoZWQtemVybyIgYnV0IGdvdCAidGFidWxhci1udW1zIgogRkFJTCBBbmltYXRpb24g
b2YgZm9udC12YXJpYW50LXBvc2l0aW9uIGluIDo6bWFya2VyIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkICJzdWIiIGJ1dCBnb3QgIm5vcm1hbCIKIFBBU1MgQW5pbWF0aW9uIG9mIGZvbnQtd2VpZ2h0
IGluIDo6bWFya2VyCi1QQVNTIEFuaW1hdGlvbiBvZiBsaW5lLWhlaWdodCBpbiA6Om1hcmtlcgor
RkFJTCBBbmltYXRpb24gb2YgbGluZS1oZWlnaHQgaW4gOjptYXJrZXIgYXNzZXJ0X2VxdWFsczog
ZXhwZWN0ZWQgIjM1cHgiIGJ1dCBnb3QgIm5vcm1hbCIKIEZBSUwgQW5pbWF0aW9uIG9mIHdoaXRl
LXNwYWNlIGluIDo6bWFya2VyIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJub3dyYXAiIGJ1dCBn
b3QgIm5vcm1hbCIKIEZBSUwgQW5pbWF0aW9uIG9mIGNvbG9yIGluIDo6bWFya2VyIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkICJyZ2IoNTAsIDE1MCwgMTAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDAp
IgogRkFJTCBBbmltYXRpb24gb2YgdGV4dC1jb21iaW5lLXVwcmlnaHQgaW4gOjptYXJrZXIgYXNz
ZXJ0X3RydWU6IHRleHQtY29tYmluZS11cHJpZ2h0IGRvZXNuJ3Qgc2VlbSB0byBiZSBzdXBwb3J0
ZWQgaW4gdGhlIGNvbXB1dGVkIHN0eWxlIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy93ZWJhbmltYXRpb25zL21hcmtlci1vcGFjaXR5LWFuaW1hdGlvbi1u
by1lZmZlY3QtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL3dlYmFuaW1hdGlvbnMvbWFya2Vy
LW9wYWNpdHktYW5pbWF0aW9uLW5vLWVmZmVjdC1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYx
MTk2MmQ5OTQ1OTI5OTcyNmVhOWNhNmZhZTM2MmE4NThiZmE5ODIKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy93ZWJhbmltYXRpb25zL21hcmtlci1vcGFjaXR5LWFuaW1hdGlvbi1uby1l
ZmZlY3QtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxIEBACis8bGk+SGVsbG88L2xpPgpcIE5vIG5l
d2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmFuaW1hdGlv
bnMvbWFya2VyLW9wYWNpdHktYW5pbWF0aW9uLW5vLWVmZmVjdC5odG1sIGIvTGF5b3V0VGVzdHMv
d2ViYW5pbWF0aW9ucy9tYXJrZXItb3BhY2l0eS1hbmltYXRpb24tbm8tZWZmZWN0Lmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYzk1ZTQwZjEwMjM3YjU3ZmJmNTNjNGE1ZjM5YTUyMWFmZDc1ZGMzNgotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmFuaW1hdGlvbnMvbWFya2VyLW9wYWNpdHktYW5p
bWF0aW9uLW5vLWVmZmVjdC5odG1sCkBAIC0wLDAgKzEsMTQgQEAKKzxzdHlsZT4KKworQGtleWZy
YW1lcyBhbmltYXRlLW1hcmtlciB7CisgICAgZnJvbSB7IG9wYWNpdHk6IDAuNSB9CisgICAgdG8g
eyBvcGFjaXR5OiAwLjUgfQorfQorCis6Om1hcmtlciB7CisgIGFuaW1hdGlvbjogYW5pbWF0ZS1t
YXJrZXIgMXMgaW5maW5pdGU7IAorfQorCis8L3N0eWxlPgorCis8bGk+SGVsbG88L2xpPgpcIE5v
IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>441737</attachid>
            <date>2021-10-19 09:17:06 -0700</date>
            <delta_ts>2021-10-19 10:18:14 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-231906-20211019181705.patch</filename>
            <type>text/plain</type>
            <size>33691</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0NDM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2I3ZThkN2RhNjFkZmMx
OTVjOTk4NDU2OGEyMWM0OGNhODU3MDBjNS4uNjc4NzAwZmZjMmM4OGMwYTI0ODlhNTE2YTE5N2Rj
MTI2NDEwMjY5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU2IEBACisyMDIxLTEwLTE5ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgorCisgICAgICAgIFJFR1JFU1NJT04ocjI4
NDMxMyk6IDo6bWFya2VyIGFjY2VsZXJhdGVkIGFuaW1hdGlvbnMgYXJlIGJyb2tlbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxOTA2CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS84NDM4MzI3OT4KKworICAgICAgICBSZXZpZXdlZCBieSBBbnR0aSBL
b2l2aXN0by4KKworICAgICAgICBUZXN0OiB3ZWJhbmltYXRpb25zL21hcmtlci1vcGFjaXR5LWFu
aW1hdGlvbi1uby1lZmZlY3QuaHRtbAorCisgICAgICAgIFdlIGluY29ycmVjdGx5IHN1cHBvcnRl
ZCBhbmltYXRpb25zIGZvciBhbGwga25vd24gQ1NTIHByb3BlcnRpZXMgb24gYSA6Om1hcmtlciBz
aW5jZSB3ZSBhZGRlZAorICAgICAgICBzdXBwb3J0IGZvciBhbmltYXRpb24gb2YgOjptYXJrZXIs
IGFuZCB3aXRoIHIyODQzMTMgd2Ugc3RhcnRlZCByZXR1cm5pbmcgdGhlIGNvcnJlY3QgcmVuZGVy
ZXIKKyAgICAgICAgZm9yIDo6bWFya2VyIHBzZXVkby1lbGVtZW50cyB3aGljaCBtZWFudCB0aGF0
IGFjY2VsZXJhdGVkIG9wYWNpdHkgYW5pbWF0aW9ucyBzdGFydGVkIHJ1bm5pbmcKKyAgICAgICAg
Zm9yIHRoZSBmaXJzdCB0aW1lLgorCisgICAgICAgIFdlIG5vdyBjb3JyZWN0bHkgaWdub3JlIGRp
c2FsbG93ZWQgcHJvcGVydGllcyBmb3IgOjptYXJrZXIgd2hlbiBhbmltYXRpbmcgd2l0aCB0aG9z
ZSBjaGFuZ2VzLgorCisgICAgICAgIEZpcnN0LCBpbiBTdHlsZTo6UmVzb2x2ZXI6OnN0eWxlRm9y
S2V5ZnJhbWUoKSwgd2UgcGFzcyB0aGUgcmVsZXZhbnQgYWxsb3dsaXN0IHRvIHRoZSBNYXRjaFJl
c3VsdCdzCisgICAgICAgIGF1dGhvckRlY2xhcmF0aW9ucyB3aGVuIGFkZGluZyB0aGUga2V5ZnJh
bWUgcHJvcGVydGllcy4KKworICAgICAgICBUaGVuLCBpbiBLZXlmcmFtZUVmZmVjdDo6aXNDdXJy
ZW50bHlBZmZlY3RpbmdQcm9wZXJ0eSgpIHdlIGNhbGwgaXNWYWxpZE1hcmtlclN0eWxlUHJvcGVy
dHkoKSBpbgorICAgICAgICBjYXNlIHdlJ3JlIGJlaW5nIGNhbGxlZCBmb3IgYSA6Om1hcmtlciBw
c2V1ZG8tZWxlbWVudC4KKworICAgICAgICBUbyBiZSBhYmxlIHRvIG9idGFpbiB0aGUgYWxsb3ds
aXN0IGFuZCBjYWxsIGlzVmFsaWRNYXJrZXJTdHlsZVByb3BlcnR5KCkgaW4gdGhvc2UgdHdvIHF1
ZXN0aW9ucywKKyAgICAgICAgd2UgaGFkIHRvIHJlZmFjdG9yIHRoZSByZWxhdGVkIGNvZGUgaW50
byBhIGRlZGljYXRlZCBQcm9wZXJ0eUFsbG93bGlzdCBmaWxlIGFuZCBlbnVtLgorCisgICAgICAg
ICogU291cmNlcy50eHQ6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorICAgICAgICAqIGFuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpLZXlmcmFtZUVmZmVjdDo6aXNDdXJyZW50bHlBZmZlY3RpbmdQcm9wZXJ0eSBjb25z
dCk6CisgICAgICAgICogc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6U3R5bGU6OkVsZW1lbnRSdWxlQ29sbGVjdG9yOjp0cmFuc2Zlck1hdGNoZWRSdWxl
cyk6CisgICAgICAgICogc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuaDoKKyAgICAgICAgKiBz
dHlsZS9Qcm9wZXJ0eUFsbG93bGlzdC5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6U3R5
bGU6OnByb3BlcnR5QWxsb3dsaXN0Rm9yUHNldWRvSWQpOgorICAgICAgICAoV2ViQ29yZTo6U3R5
bGU6OmlzVmFsaWRNYXJrZXJTdHlsZVByb3BlcnR5KToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxl
Ojppc1ZhbGlkQ3VlU3R5bGVQcm9wZXJ0eSk6CisgICAgICAgICogc3R5bGUvUHJvcGVydHlBbGxv
d2xpc3QuaDogQWRkZWQuCisgICAgICAgICogc3R5bGUvUHJvcGVydHlDYXNjYWRlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlN0eWxlOjpQcm9wZXJ0eUNhc2NhZGU6OmFkZE1hdGNoKToKKyAgICAg
ICAgKFdlYkNvcmU6OlN0eWxlOjppc1ZhbGlkTWFya2VyU3R5bGVQcm9wZXJ0eSk6IERlbGV0ZWQu
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6aXNWYWxpZEN1ZVN0eWxlUHJvcGVydHkpOiBEZWxl
dGVkLgorICAgICAgICAqIHN0eWxlL1J1bGVEYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlOjpkZXRlcm1pbmVQcm9wZXJ0eUFsbG93bGlzdCk6CisgICAgICAgIChXZWJDb3JlOjpTdHls
ZTo6UnVsZURhdGE6OlJ1bGVEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpkZXRlcm1p
bmVQcm9wZXJ0eUFsbG93bGlzdFR5cGUpOiBEZWxldGVkLgorICAgICAgICAqIHN0eWxlL1J1bGVE
YXRhLmg6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UnVsZURhdGE6OnByb3BlcnR5QWxsb3ds
aXN0IGNvbnN0KToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTdHls
ZTo6UnVsZURhdGE6OnByb3BlcnR5QWxsb3dsaXN0VHlwZSBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgICogc3R5bGUvU3R5bGVSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6
UmVzb2x2ZXI6OnN0eWxlRm9yS2V5ZnJhbWUpOgorCiAyMDIxLTEwLTE4ICBBbnRvaW5lIFF1aW50
ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgogCiAgICAgICAgIGJveC1zaGFkb3cgYW5kIHRleHQtc2hh
ZG93IGRvIG5vdCB5aWVsZCBmbG9hdCB2YWx1ZXMgd2hpbGUgaW50ZXJwb2xhdGluZwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2Vz
LnR4dAppbmRleCA3N2UyNDMzYzUwMTYzOTUyMGQwMTI3ZWQxYmI1NDBmZGEyNzkyNmZhLi45MTFj
YTQ2ZDk3OGU5NGFmZWQyZWUyNGViNGRmODYxMjhmZDdkYWE1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dApAQCAt
MjQ5MCw2ICsyNDkwLDcgQEAgc3R5bGUvSW5saW5lVGV4dEJveFN0eWxlLmNwcAogc3R5bGUvSW5z
cGVjdG9yQ1NTT01XcmFwcGVycy5jcHAKIHN0eWxlL01hdGNoZWREZWNsYXJhdGlvbnNDYWNoZS5j
cHAKIHN0eWxlL1BhZ2VSdWxlQ29sbGVjdG9yLmNwcAorc3R5bGUvUHJvcGVydHlBbGxvd2xpc3Qu
Y3BwCiBzdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCiBzdHlsZS9Qc2V1ZG9DbGFzc0NoYW5nZUlu
dmFsaWRhdGlvbi5jcHAKIHN0eWxlL1J1bGVEYXRhLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDVkNmUzNTA2ODNmM2I3NDlj
ODY4YmMwMmFmOWQzYzM5Mjg2ZTM5ZjMuLmZmMWM4MzBlN2EwZjE1ODFiMWM5ZDY5YTRiZWI2OWQw
OTA1YjBjYTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKQEAgLTIyNTEsNiArMjI1MSw3IEBACiAJCTcxMjQ3RTNDMUZFQTVGOTAwMDhD
MDhDRSAvKiBKU0l0ZXJhdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzEyNDdFMkMxRkVBNUY2NDAwOEMwOENFIC8q
IEpTSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNzEyNDdFM0QxRkVBNUY5MDAwOEMwOENFIC8qIEpT
S2V5ZnJhbWVBbmltYXRpb25PcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA3MTI0N0UyNjFGRUE1RjYwMDA4QzA4Q0UgLyogSlNLZXlmcmFtZUFu
aW1hdGlvbk9wdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQk3MTI0N0UzRTFGRUE1RjkwMDA4QzA4Q0UgLyogSlNLZXlmcmFtZUVmZmVjdE9w
dGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcx
MjQ3RTJBMUZFQTVGNjIwMDhDMDhDRSAvKiBKU0tleWZyYW1lRWZmZWN0T3B0aW9ucy5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTcxMjhDQjNGMjcx
RUU1OEEwMEExM0RBNiAvKiBQcm9wZXJ0eUFsbG93bGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzEyOENCM0MyNzFFRTU4OTAwQTEzREE2IC8qIFBy
b3BlcnR5QWxsb3dsaXN0LmggKi87IH07CiAJCTcxMkJFNDdEMUZFODY0NTgwMDIwMzFDQyAvKiBF
ZmZlY3RUaW1pbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDcxMkJFNDdDMUZFODY0NDgwMDIwMzFDQyAvKiBFZmZlY3RUaW1pbmcuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk3MTJCRTQ4MDFGRTg2NEE3
MDAyMDMxQ0MgLyogUGxheWJhY2tEaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxMkJFNDdFMUZFODY0OUQwMDIwMzFDQyAvKiBQbGF5YmFj
a0RpcmVjdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCTcxMkJFNDgzMUZFODY1REQwMDIwMzFDQyAvKiBGaWxsTW9kZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzEyQkU0ODExRkU4NjVENDAwMjAz
MUNDIC8qIEZpbGxNb2RlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKQEAgLTEwMzcxLDYgKzEwMzcyLDggQEAKIAkJNzEyNDdFMzQxRkVBNUY4MDAwOEMw
OENFIC8qIEtleWZyYW1lQW5pbWF0aW9uT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gS2V5ZnJhbWVBbmltYXRpb25PcHRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJNzEyNDdFMzUxRkVBNUY4MTAwOEMwOENFIC8qIENvbXBvc2l0ZU9wZXJhdGlvbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb21wb3NpdGVPcGVyYXRpb24uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNzEyNDdFMzYxRkVBNUY4MTAwOEMwOENFIC8qIENv
bXBvc2l0ZU9wZXJhdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ29tcG9zaXRlT3Bl
cmF0aW9uLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyOENCM0MyNzFFRTU4
OTAwQTEzREE2IC8qIFByb3BlcnR5QWxsb3dsaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFByb3BlcnR5QWxsb3dsaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTcxMjhDQjNFMjcxRUU1ODkwMEExM0RBNiAvKiBQcm9wZXJ0eUFsbG93bGlzdC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQcm9wZXJ0eUFsbG93bGlzdC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxMkJFNDdBMUZFODY0NDcwMDIwMzFDQyAv
KiBFZmZlY3RUaW1pbmcuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEVmZmVjdFRpbWluZy5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxMkJFNDdDMUZFODY0NDgwMDIwMzFD
QyAvKiBFZmZlY3RUaW1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRWZm
ZWN0VGltaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxMkJFNDdFMUZFODY0
OUQwMDIwMzFDQyAvKiBQbGF5YmFja0RpcmVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBQbGF5YmFja0RpcmVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtMjk2MDAsNiArMjk2MDMsOCBAQAogCQkJCUU0NUJBNkE4MjM3NDkyNkIwMDRERkMwNyAv
KiBNYXRjaGVkRGVjbGFyYXRpb25zQ2FjaGUuaCAqLywKIAkJCQlGQkRCNjE5QzE2RDYwMzQ2MDBC
QjMzOTQgLyogUGFnZVJ1bGVDb2xsZWN0b3IuY3BwICovLAogCQkJCUZCREI2MUEwMTZENjAzN0Uw
MEJCMzM5NCAvKiBQYWdlUnVsZUNvbGxlY3Rvci5oICovLAorCQkJCTcxMjhDQjNFMjcxRUU1ODkw
MEExM0RBNiAvKiBQcm9wZXJ0eUFsbG93bGlzdC5jcHAgKi8sCisJCQkJNzEyOENCM0MyNzFFRTU4
OTAwQTEzREE2IC8qIFByb3BlcnR5QWxsb3dsaXN0LmggKi8sCiAJCQkJRTRBQkFCRTUyMzYxQTM0
MjAwRkE0MzQ1IC8qIFByb3BlcnR5Q2FzY2FkZS5jcHAgKi8sCiAJCQkJRTRBQkFCRTIyMzYxQTMy
OTAwRkE0MzQ1IC8qIFByb3BlcnR5Q2FzY2FkZS5oICovLAogCQkJCUU0NUE2QzczMjQxN0JBNEMw
MDZFNENENSAvKiBQc2V1ZG9DbGFzc0NoYW5nZUludmFsaWRhdGlvbi5jcHAgKi8sCkBAIC0zNDg4
NSw2ICszNDg5MCw3IEBACiAJCQkJMUFDQURENzkxODgwRDkxQzAwRDhCNzFEIC8qIFByb2dyZXNz
VHJhY2tlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjQ3QTYzM0QxRkY2RkQ1MDAwODFC
M0NDIC8qIFByb21pc2VkQXR0YWNobWVudEluZm8uaCBpbiBIZWFkZXJzICovLAogCQkJCUE1NzhG
NDM1MURFMDBFRUIwMDNERkM2QSAvKiBQcm9taXNlUmVqZWN0aW9uRXZlbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTcxMjhDQjNGMjcxRUU1OEEwMEExM0RBNiAvKiBQcm9wZXJ0eUFsbG93bGlzdC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJRTRBQkFCRTQyMzYxQTMyOTAwRkE0MzQ1IC8qIFByb3BlcnR5
Q2FzY2FkZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTRCQkVEMEYxNEY0MDI1RDAwM0YwQjk4IC8q
IFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzdC
QUFFNTgxOTgwRDFERDAwNURGRTcxIC8qIFByb3RlY3Rpb25TcGFjZS5oIGluIEhlYWRlcnMgKi8s
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcAppbmRleCBjZTY4
YzcxODAzZGM3MzYwNDg2M2Y5YmUzMDg2MmU2ZjI2YTA2NTNmLi5lNDk0MDRlZGE3ZjlkMTA3Zjhl
NGMyOTFhNTZkNjFmM2RhYTg3ODdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRp
b24vS2V5ZnJhbWVFZmZlY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlm
cmFtZUVmZmVjdC5jcHAKQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbmNsdWRlICJKU0tleWZyYW1lRWZm
ZWN0LmgiCiAjaW5jbHVkZSAiS2V5ZnJhbWVFZmZlY3RTdGFjay5oIgogI2luY2x1ZGUgIkxvZ2dp
bmcuaCIKKyNpbmNsdWRlICJQcm9wZXJ0eUFsbG93bGlzdC5oIgogI2luY2x1ZGUgIlBzZXVkb0Vs
ZW1lbnQuaCIKICNpbmNsdWRlICJSZW5kZXJCb3guaCIKICNpbmNsdWRlICJSZW5kZXJCb3hNb2Rl
bE9iamVjdC5oIgpAQCAtMTI5Myw2ICsxMjk0LDkgQEAgYm9vbCBLZXlmcmFtZUVmZmVjdDo6aXND
dXJyZW50bHlBZmZlY3RpbmdQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBBY2NlbGUK
ICAgICBpZiAoIW1fYmxlbmRpbmdLZXlmcmFtZXMucHJvcGVydGllcygpLmNvbnRhaW5zKHByb3Bl
cnR5KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCisgICAgaWYgKG1fcHNldWRvSWQgPT0gUHNl
dWRvSWQ6Ok1hcmtlciAmJiAhU3R5bGU6OmlzVmFsaWRNYXJrZXJTdHlsZVByb3BlcnR5KHByb3Bl
cnR5KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCiAgICAgcmV0dXJuIG1fcGhhc2VBdExhc3RB
cHBsaWNhdGlvbiA9PSBBbmltYXRpb25FZmZlY3RQaGFzZTo6QWN0aXZlOwogfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5jcHAKaW5kZXggYjNmMmQ5NDIx
ZDQyZDc3YjJmMGQyNmVmYWIyNWI5NTEwYzY4ODM4ZC4uZjRkZWJmZGZkOGM3MGY1ZjMwMmQ1NTJm
M2M3MGM4ZjcwZmIwMTk4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVu
dFJ1bGVDb2xsZWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxl
Q29sbGVjdG9yLmNwcApAQCAtMjAyLDcgKzIwMiw3IEBAIHZvaWQgRWxlbWVudFJ1bGVDb2xsZWN0
b3I6OnRyYW5zZmVyTWF0Y2hlZFJ1bGVzKERlY2xhcmF0aW9uT3JpZ2luIGRlY2xhcmF0aW9uT3Jp
CiAgICAgICAgIGFkZE1hdGNoZWRQcm9wZXJ0aWVzKHsKICAgICAgICAgICAgICZtYXRjaGVkUnVs
ZS5ydWxlRGF0YS0+c3R5bGVSdWxlKCkucHJvcGVydGllcygpLAogICAgICAgICAgICAgc3RhdGlj
X2Nhc3Q8dWludDE2X3Q+KG1hdGNoZWRSdWxlLnJ1bGVEYXRhLT5saW5rTWF0Y2hUeXBlKCkpLAot
ICAgICAgICAgICAgc3RhdGljX2Nhc3Q8dWludDE2X3Q+KG1hdGNoZWRSdWxlLnJ1bGVEYXRhLT5w
cm9wZXJ0eUFsbG93bGlzdFR5cGUoKSksCisgICAgICAgICAgICBtYXRjaGVkUnVsZS5ydWxlRGF0
YS0+cHJvcGVydHlBbGxvd2xpc3QoKSwKICAgICAgICAgICAgIG1hdGNoZWRSdWxlLnN0eWxlU2Nv
cGVPcmRpbmFsCiAgICAgICAgIH0sIGRlY2xhcmF0aW9uT3JpZ2luKTsKICAgICB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5oIGIvU291cmNl
L1dlYkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuaAppbmRleCBiZjYwZDZjY2NjZjQ0
ZDhmMTEyNTQxOGU5MmIxYjhiNGY0NzkwYTE4Li42OTI0ZDdhNmI3NjZhZGE5NWY0N2E4MTMyZmZj
MzQ1ZDgxOTcwYmJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVs
ZUNvbGxlY3Rvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxlQ29sbGVj
dG9yLmgKQEAgLTIyLDYgKzIyLDcgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiTWVkaWFR
dWVyeUV2YWx1YXRvci5oIgorI2luY2x1ZGUgIlByb3BlcnR5QWxsb3dsaXN0LmgiCiAjaW5jbHVk
ZSAiUnVsZVNldC5oIgogI2luY2x1ZGUgIlNlbGVjdG9yQ2hlY2tlci5oIgogI2luY2x1ZGUgIlN0
eWxlU2NvcGVPcmRpbmFsLmgiCkBAIC02OCw3ICs2OSw3IEBAIHN0cnVjdCBNYXRjaGVkUnVsZSB7
CiBzdHJ1Y3QgTWF0Y2hlZFByb3BlcnRpZXMgewogICAgIFJlZlB0cjxjb25zdCBTdHlsZVByb3Bl
cnRpZXM+IHByb3BlcnRpZXM7CiAgICAgdWludDE2X3QgbGlua01hdGNoVHlwZSB7IFNlbGVjdG9y
Q2hlY2tlcjo6TWF0Y2hBbGwgfTsKLSAgICB1aW50MTZfdCBhbGxvd2xpc3RUeXBlIHsgUHJvcGVy
dHlBbGxvd2xpc3ROb25lIH07CisgICAgUHJvcGVydHlBbGxvd2xpc3QgYWxsb3dsaXN0VHlwZSB7
IFByb3BlcnR5QWxsb3dsaXN0OjpOb25lIH07CiAgICAgU2NvcGVPcmRpbmFsIHN0eWxlU2NvcGVP
cmRpbmFsIHsgU2NvcGVPcmRpbmFsOjpFbGVtZW50IH07CiB9OwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUFsbG93bGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9Qcm9wZXJ0eUFsbG93bGlzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGFmZGI0Yzg3YzkxMDhjOTJj
Yjg0MDUyMjIzMWZhNWQ2MTQ3NGFiNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1Byb3BlcnR5QWxsb3dsaXN0LmNwcApAQCAtMCwwICsxLDEyOSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJQcm9wZXJ0eUFsbG93bGlzdC5oIgor
CituYW1lc3BhY2UgV2ViQ29yZSB7CituYW1lc3BhY2UgU3R5bGUgeworCitQcm9wZXJ0eUFsbG93
bGlzdCBwcm9wZXJ0eUFsbG93bGlzdEZvclBzZXVkb0lkKFBzZXVkb0lkIHBzZXVkb0lkKQorewor
ICAgIGlmIChwc2V1ZG9JZCA9PSBQc2V1ZG9JZDo6TWFya2VyKQorICAgICAgICByZXR1cm4gUHJv
cGVydHlBbGxvd2xpc3Q6Ok1hcmtlcjsKKyAgICByZXR1cm4gUHJvcGVydHlBbGxvd2xpc3Q6Ok5v
bmU7Cit9CisKKy8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3MtcHNldWRvLTQvI21hcmtlci1w
c2V1ZG8gKEVkaXRvcidzIERyYWZ0LCAyNSBKdWx5IDIwMTcpCisvLyBGSVhNRTogdGhpcyBpcyBv
dXRkYXRlZCwgc2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTg3
OTEuCitib29sIGlzVmFsaWRNYXJrZXJTdHlsZVByb3BlcnR5KENTU1Byb3BlcnR5SUQgaWQpCit7
CisgICAgc3dpdGNoIChpZCkgeworICAgIGNhc2UgQ1NTUHJvcGVydHlDb2xvcjoKKyAgICBjYXNl
IENTU1Byb3BlcnR5Rm9udEZhbWlseToKKyAgICBjYXNlIENTU1Byb3BlcnR5Rm9udEZlYXR1cmVT
ZXR0aW5nczoKKyAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFNpemU6CisgICAgY2FzZSBDU1NQcm9w
ZXJ0eUZvbnRTdHJldGNoOgorICAgIGNhc2UgQ1NTUHJvcGVydHlGb250U3R5bGU6CisgICAgY2Fz
ZSBDU1NQcm9wZXJ0eUZvbnRTeW50aGVzaXM6CisgICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRWYXJp
YW50QWx0ZXJuYXRlczoKKyAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFZhcmlhbnRDYXBzOgorICAg
IGNhc2UgQ1NTUHJvcGVydHlGb250VmFyaWFudEVhc3RBc2lhbjoKKyAgICBjYXNlIENTU1Byb3Bl
cnR5Rm9udFZhcmlhbnRMaWdhdHVyZXM6CisgICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRWYXJpYW50
TnVtZXJpYzoKKyAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFZhcmlhbnRQb3NpdGlvbjoKKyAgICBj
YXNlIENTU1Byb3BlcnR5Rm9udFdlaWdodDoKKyNpZiBFTkFCTEUoVkFSSUFUSU9OX0ZPTlRTKQor
ICAgIGNhc2UgQ1NTUHJvcGVydHlGb250T3B0aWNhbFNpemluZzoKKyAgICBjYXNlIENTU1Byb3Bl
cnR5Rm9udFZhcmlhdGlvblNldHRpbmdzOgorI2VuZGlmCisgICAgY2FzZSBDU1NQcm9wZXJ0eUFu
aW1hdGlvbkR1cmF0aW9uOgorICAgIGNhc2UgQ1NTUHJvcGVydHlBbmltYXRpb25UaW1pbmdGdW5j
dGlvbjoKKyAgICBjYXNlIENTU1Byb3BlcnR5QW5pbWF0aW9uRGVsYXk6CisgICAgY2FzZSBDU1NQ
cm9wZXJ0eUFuaW1hdGlvbkl0ZXJhdGlvbkNvdW50OgorICAgIGNhc2UgQ1NTUHJvcGVydHlBbmlt
YXRpb25EaXJlY3Rpb246CisgICAgY2FzZSBDU1NQcm9wZXJ0eUFuaW1hdGlvbkZpbGxNb2RlOgor
ICAgIGNhc2UgQ1NTUHJvcGVydHlBbmltYXRpb25QbGF5U3RhdGU6CisgICAgY2FzZSBDU1NQcm9w
ZXJ0eUFuaW1hdGlvbk5hbWU6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVRyYW5zaXRpb25EdXJhdGlv
bjoKKyAgICBjYXNlIENTU1Byb3BlcnR5VHJhbnNpdGlvblRpbWluZ0Z1bmN0aW9uOgorICAgIGNh
c2UgQ1NTUHJvcGVydHlUcmFuc2l0aW9uRGVsYXk6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVRyYW5z
aXRpb25Qcm9wZXJ0eToKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgZGVmYXVsdDoKKyAgICAg
ICAgYnJlYWs7CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KKworI2lmIEVOQUJMRShWSURF
TykKK2Jvb2wgaXNWYWxpZEN1ZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlJRCBpZCkKK3sKKyAg
ICBzd2l0Y2ggKGlkKSB7CisgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmQ6CisgICAgY2Fz
ZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRBdHRhY2htZW50OgorICAgIGNhc2UgQ1NTUHJvcGVydHlC
YWNrZ3JvdW5kQ2xpcDoKKyAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZENvbG9yOgorICAg
IGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kSW1hZ2U6CisgICAgY2FzZSBDU1NQcm9wZXJ0eUJh
Y2tncm91bmRPcmlnaW46CisgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRQb3NpdGlvbjoK
KyAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZFBvc2l0aW9uWDoKKyAgICBjYXNlIENTU1By
b3BlcnR5QmFja2dyb3VuZFBvc2l0aW9uWToKKyAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3Vu
ZFJlcGVhdDoKKyAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZFNpemU6CisgICAgY2FzZSBD
U1NQcm9wZXJ0eUNvbG9yOgorICAgIGNhc2UgQ1NTUHJvcGVydHlGb250OgorICAgIGNhc2UgQ1NT
UHJvcGVydHlGb250RmFtaWx5OgorICAgIGNhc2UgQ1NTUHJvcGVydHlGb250U2l6ZToKKyAgICBj
YXNlIENTU1Byb3BlcnR5Rm9udFN0eWxlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlGb250VmFyaWFu
dENhcHM6CisgICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRXZWlnaHQ6CisgICAgY2FzZSBDU1NQcm9w
ZXJ0eUxpbmVIZWlnaHQ6CisgICAgY2FzZSBDU1NQcm9wZXJ0eU9wYWNpdHk6CisgICAgY2FzZSBD
U1NQcm9wZXJ0eU91dGxpbmU6CisgICAgY2FzZSBDU1NQcm9wZXJ0eU91dGxpbmVDb2xvcjoKKyAg
ICBjYXNlIENTU1Byb3BlcnR5T3V0bGluZU9mZnNldDoKKyAgICBjYXNlIENTU1Byb3BlcnR5T3V0
bGluZVN0eWxlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlPdXRsaW5lV2lkdGg6CisgICAgY2FzZSBD
U1NQcm9wZXJ0eVZpc2liaWxpdHk6CisgICAgY2FzZSBDU1NQcm9wZXJ0eVdoaXRlU3BhY2U6Cisg
ICAgY2FzZSBDU1NQcm9wZXJ0eVRleHREZWNvcmF0aW9uOgorICAgIGNhc2UgQ1NTUHJvcGVydHlU
ZXh0U2hhZG93OgorICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJTdHlsZToKKyAgICBjYXNlIENT
U1Byb3BlcnR5UGFpbnRPcmRlcjoKKyAgICBjYXNlIENTU1Byb3BlcnR5U3Ryb2tlTGluZWpvaW46
CisgICAgY2FzZSBDU1NQcm9wZXJ0eVN0cm9rZUxpbmVjYXA6CisgICAgY2FzZSBDU1NQcm9wZXJ0
eVN0cm9rZUNvbG9yOgorICAgIGNhc2UgQ1NTUHJvcGVydHlTdHJva2VXaWR0aDoKKyAgICAgICAg
cmV0dXJuIHRydWU7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYnJlYWs7CisgICAgfQorICAgIHJl
dHVybiBmYWxzZTsKK30KKyNlbmRpZgorCit9Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdHlsZS9Qcm9wZXJ0eUFsbG93bGlzdC5oIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVy
dHlBbGxvd2xpc3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40OTAzOTAyZTU5ZmNmOTAzYTc2MzkyMzBlYWU5ODNl
OWY3YTYyZmUwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVy
dHlBbGxvd2xpc3QuaApAQCAtMCwwICsxLDUxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
CisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNl
CisKKyNpbmNsdWRlICJDU1NQcm9wZXJ0eU5hbWVzLmgiCisjaW5jbHVkZSAiUmVuZGVyU3R5bGVD
b25zdGFudHMuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCituYW1lc3BhY2UgU3R5bGUgewor
CitlbnVtIGNsYXNzIFByb3BlcnR5QWxsb3dsaXN0IDogdWludDhfdCB7CisgICAgTm9uZSwKKyAg
ICBNYXJrZXIsCisjaWYgRU5BQkxFKFZJREVPKQorICAgIEN1ZQorI2VuZGlmCit9OworCitQcm9w
ZXJ0eUFsbG93bGlzdCBwcm9wZXJ0eUFsbG93bGlzdEZvclBzZXVkb0lkKFBzZXVkb0lkKTsKKwor
Ym9vbCBpc1ZhbGlkTWFya2VyU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEKTsKKyNpZiBFTkFC
TEUoVklERU8pCitib29sIGlzVmFsaWRDdWVTdHlsZVByb3BlcnR5KENTU1Byb3BlcnR5SUQpOwor
I2VuZGlmCisKK30KK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5
Q2FzY2FkZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCmlu
ZGV4IDlmY2M0MTkxZjIyMGIxODJmZTllYTM5MDFlYWY4MDM2M2Y1MzNmZjMuLjdkZjdhNzVhYWQw
MDhlOTU5YTA5NDc1M2JmY2RlM2Y2MzE0NjY2ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJv
cGVydHlDYXNjYWRlLmNwcApAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgIkNTU1ByaW1pdGl2
ZVZhbHVlTWFwcGluZ3MuaCIKICNpbmNsdWRlICJDU1NWYWx1ZVBvb2wuaCIKICNpbmNsdWRlICJQ
YWludFdvcmtsZXRHbG9iYWxTY29wZS5oIgorI2luY2x1ZGUgIlByb3BlcnR5QWxsb3dsaXN0Lmgi
CiAjaW5jbHVkZSAiU3R5bGVCdWlsZGVyR2VuZXJhdGVkLmgiCiAjaW5jbHVkZSAiU3R5bGVQcm9w
ZXJ0eVNob3J0aGFuZC5oIgogCkBAIC03MCw5NSArNzEsNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wg
c2hvdWxkQXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQp
CiAgICAgfQogfQogCi0vLyBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLXBzZXVkby00LyNtYXJr
ZXItcHNldWRvIChFZGl0b3IncyBEcmFmdCwgMjUgSnVseSAyMDE3KQotLy8gRklYTUU6IHRoaXMg
aXMgb3V0ZGF0ZWQsIHNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjE4NzkxLgotc3RhdGljIGlubGluZSBib29sIGlzVmFsaWRNYXJrZXJTdHlsZVByb3BlcnR5KENT
U1Byb3BlcnR5SUQgaWQpCi17Ci0gICAgc3dpdGNoIChpZCkgewotICAgIGNhc2UgQ1NTUHJvcGVy
dHlDb2xvcjoKLSAgICBjYXNlIENTU1Byb3BlcnR5Rm9udEZhbWlseToKLSAgICBjYXNlIENTU1By
b3BlcnR5Rm9udEZlYXR1cmVTZXR0aW5nczoKLSAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFNpemU6
Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRTdHJldGNoOgotICAgIGNhc2UgQ1NTUHJvcGVydHlG
b250U3R5bGU6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRTeW50aGVzaXM6Ci0gICAgY2FzZSBD
U1NQcm9wZXJ0eUZvbnRWYXJpYW50QWx0ZXJuYXRlczoKLSAgICBjYXNlIENTU1Byb3BlcnR5Rm9u
dFZhcmlhbnRDYXBzOgotICAgIGNhc2UgQ1NTUHJvcGVydHlGb250VmFyaWFudEVhc3RBc2lhbjoK
LSAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFZhcmlhbnRMaWdhdHVyZXM6Ci0gICAgY2FzZSBDU1NQ
cm9wZXJ0eUZvbnRWYXJpYW50TnVtZXJpYzoKLSAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFZhcmlh
bnRQb3NpdGlvbjoKLSAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFdlaWdodDoKLSNpZiBFTkFCTEUo
VkFSSUFUSU9OX0ZPTlRTKQotICAgIGNhc2UgQ1NTUHJvcGVydHlGb250T3B0aWNhbFNpemluZzoK
LSAgICBjYXNlIENTU1Byb3BlcnR5Rm9udFZhcmlhdGlvblNldHRpbmdzOgotI2VuZGlmCi0gICAg
Y2FzZSBDU1NQcm9wZXJ0eUFuaW1hdGlvbkR1cmF0aW9uOgotICAgIGNhc2UgQ1NTUHJvcGVydHlB
bmltYXRpb25UaW1pbmdGdW5jdGlvbjoKLSAgICBjYXNlIENTU1Byb3BlcnR5QW5pbWF0aW9uRGVs
YXk6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUFuaW1hdGlvbkl0ZXJhdGlvbkNvdW50OgotICAgIGNh
c2UgQ1NTUHJvcGVydHlBbmltYXRpb25EaXJlY3Rpb246Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUFu
aW1hdGlvbkZpbGxNb2RlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlBbmltYXRpb25QbGF5U3RhdGU6
Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUFuaW1hdGlvbk5hbWU6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0
eVRyYW5zaXRpb25EdXJhdGlvbjoKLSAgICBjYXNlIENTU1Byb3BlcnR5VHJhbnNpdGlvblRpbWlu
Z0Z1bmN0aW9uOgotICAgIGNhc2UgQ1NTUHJvcGVydHlUcmFuc2l0aW9uRGVsYXk6Ci0gICAgY2Fz
ZSBDU1NQcm9wZXJ0eVRyYW5zaXRpb25Qcm9wZXJ0eToKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0g
ICAgZGVmYXVsdDoKLSAgICAgICAgYnJlYWs7Ci0gICAgfQotICAgIHJldHVybiBmYWxzZTsKLX0K
LQotI2lmIEVOQUJMRShWSURFTykKLXN0YXRpYyBpbmxpbmUgYm9vbCBpc1ZhbGlkQ3VlU3R5bGVQ
cm9wZXJ0eShDU1NQcm9wZXJ0eUlEIGlkKQotewotICAgIHN3aXRjaCAoaWQpIHsKLSAgICBjYXNl
IENTU1Byb3BlcnR5QmFja2dyb3VuZDoKLSAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZEF0
dGFjaG1lbnQ6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRDbGlwOgotICAgIGNhc2Ug
Q1NTUHJvcGVydHlCYWNrZ3JvdW5kQ29sb3I6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91
bmRJbWFnZToKLSAgICBjYXNlIENTU1Byb3BlcnR5QmFja2dyb3VuZE9yaWdpbjoKLSAgICBjYXNl
IENTU1Byb3BlcnR5QmFja2dyb3VuZFBvc2l0aW9uOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNr
Z3JvdW5kUG9zaXRpb25YOgotICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kUG9zaXRpb25Z
OgotICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kUmVwZWF0OgotICAgIGNhc2UgQ1NTUHJv
cGVydHlCYWNrZ3JvdW5kU2l6ZToKLSAgICBjYXNlIENTU1Byb3BlcnR5Q29sb3I6Ci0gICAgY2Fz
ZSBDU1NQcm9wZXJ0eUZvbnQ6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRGYW1pbHk6Ci0gICAg
Y2FzZSBDU1NQcm9wZXJ0eUZvbnRTaXplOgotICAgIGNhc2UgQ1NTUHJvcGVydHlGb250U3R5bGU6
Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eUZvbnRWYXJpYW50Q2FwczoKLSAgICBjYXNlIENTU1Byb3Bl
cnR5Rm9udFdlaWdodDoKLSAgICBjYXNlIENTU1Byb3BlcnR5TGluZUhlaWdodDoKLSAgICBjYXNl
IENTU1Byb3BlcnR5T3BhY2l0eToKLSAgICBjYXNlIENTU1Byb3BlcnR5T3V0bGluZToKLSAgICBj
YXNlIENTU1Byb3BlcnR5T3V0bGluZUNvbG9yOgotICAgIGNhc2UgQ1NTUHJvcGVydHlPdXRsaW5l
T2Zmc2V0OgotICAgIGNhc2UgQ1NTUHJvcGVydHlPdXRsaW5lU3R5bGU6Ci0gICAgY2FzZSBDU1NQ
cm9wZXJ0eU91dGxpbmVXaWR0aDoKLSAgICBjYXNlIENTU1Byb3BlcnR5VmlzaWJpbGl0eToKLSAg
ICBjYXNlIENTU1Byb3BlcnR5V2hpdGVTcGFjZToKLSAgICBjYXNlIENTU1Byb3BlcnR5VGV4dERl
Y29yYXRpb246Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eVRleHRTaGFkb3c6Ci0gICAgY2FzZSBDU1NQ
cm9wZXJ0eUJvcmRlclN0eWxlOgotICAgIGNhc2UgQ1NTUHJvcGVydHlQYWludE9yZGVyOgotICAg
IGNhc2UgQ1NTUHJvcGVydHlTdHJva2VMaW5lam9pbjoKLSAgICBjYXNlIENTU1Byb3BlcnR5U3Ry
b2tlTGluZWNhcDoKLSAgICBjYXNlIENTU1Byb3BlcnR5U3Ryb2tlQ29sb3I6Ci0gICAgY2FzZSBD
U1NQcm9wZXJ0eVN0cm9rZVdpZHRoOgotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBkZWZhdWx0
OgotICAgICAgICBicmVhazsKLSAgICB9Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotI2VuZGlmCi0K
IFByb3BlcnR5Q2FzY2FkZTo6UHJvcGVydHlDYXNjYWRlKGNvbnN0IE1hdGNoUmVzdWx0JiBtYXRj
aFJlc3VsdCwgT3B0aW9uU2V0PENhc2NhZGVMZXZlbD4gY2FzY2FkZUxldmVscywgSW5jbHVkZWRQ
cm9wZXJ0aWVzIGluY2x1ZGVkUHJvcGVydGllcywgRGlyZWN0aW9uIGRpcmVjdGlvbikKICAgICA6
IG1fbWF0Y2hSZXN1bHQobWF0Y2hSZXN1bHQpCiAgICAgLCBtX2luY2x1ZGVkUHJvcGVydGllcyhp
bmNsdWRlZFByb3BlcnRpZXMpCkBAIC0yNTksNyArMTcxLDcgQEAgdm9pZCBQcm9wZXJ0eUNhc2Nh
ZGU6OnNldERlZmVycmVkKENTU1Byb3BlcnR5SUQgaWQsIENTU1ZhbHVlJiBjc3NWYWx1ZSwgdW5z
aWduZWQKIGJvb2wgUHJvcGVydHlDYXNjYWRlOjphZGRNYXRjaChjb25zdCBNYXRjaGVkUHJvcGVy
dGllcyYgbWF0Y2hlZFByb3BlcnRpZXMsIENhc2NhZGVMZXZlbCBjYXNjYWRlTGV2ZWwsIGJvb2wg
aW1wb3J0YW50KQogewogICAgIGF1dG8mIHN0eWxlUHJvcGVydGllcyA9ICptYXRjaGVkUHJvcGVy
dGllcy5wcm9wZXJ0aWVzOwotICAgIGF1dG8gcHJvcGVydHlBbGxvd2xpc3RUeXBlID0gc3RhdGlj
X2Nhc3Q8UHJvcGVydHlBbGxvd2xpc3RUeXBlPihtYXRjaGVkUHJvcGVydGllcy5hbGxvd2xpc3RU
eXBlKTsKKyAgICBhdXRvIHByb3BlcnR5QWxsb3dsaXN0ID0gbWF0Y2hlZFByb3BlcnRpZXMuYWxs
b3dsaXN0VHlwZTsKICAgICBib29sIGhhc0ltcG9ydGFudFByb3BlcnRpZXMgPSBmYWxzZTsKIAog
ICAgIGZvciAodW5zaWduZWQgaSA9IDAsIGNvdW50ID0gc3R5bGVQcm9wZXJ0aWVzLnByb3BlcnR5
Q291bnQoKTsgaSA8IGNvdW50OyArK2kpIHsKQEAgLTI3OSwxMCArMTkxLDEwIEBAIGJvb2wgUHJv
cGVydHlDYXNjYWRlOjphZGRNYXRjaChjb25zdCBNYXRjaGVkUHJvcGVydGllcyYgbWF0Y2hlZFBy
b3BlcnRpZXMsIENhc2NhCiAgICAgICAgIENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCA9IGN1cnJl
bnQuaWQoKTsKIAogI2lmIEVOQUJMRShWSURFTykKLSAgICAgICAgaWYgKHByb3BlcnR5QWxsb3ds
aXN0VHlwZSA9PSBQcm9wZXJ0eUFsbG93bGlzdEN1ZSAmJiAhaXNWYWxpZEN1ZVN0eWxlUHJvcGVy
dHkocHJvcGVydHlJRCkpCisgICAgICAgIGlmIChwcm9wZXJ0eUFsbG93bGlzdCA9PSBQcm9wZXJ0
eUFsbG93bGlzdDo6Q3VlICYmICFpc1ZhbGlkQ3VlU3R5bGVQcm9wZXJ0eShwcm9wZXJ0eUlEKSkK
ICAgICAgICAgICAgIGNvbnRpbnVlOwogI2VuZGlmCi0gICAgICAgIGlmIChwcm9wZXJ0eUFsbG93
bGlzdFR5cGUgPT0gUHJvcGVydHlBbGxvd2xpc3RNYXJrZXIgJiYgIWlzVmFsaWRNYXJrZXJTdHls
ZVByb3BlcnR5KHByb3BlcnR5SUQpKQorICAgICAgICBpZiAocHJvcGVydHlBbGxvd2xpc3QgPT0g
UHJvcGVydHlBbGxvd2xpc3Q6Ok1hcmtlciAmJiAhaXNWYWxpZE1hcmtlclN0eWxlUHJvcGVydHko
cHJvcGVydHlJRCkpCiAgICAgICAgICAgICBjb250aW51ZTsKIAogICAgICAgICBpZiAoc2hvdWxk
QXBwbHlQcm9wZXJ0eUluUGFyc2VPcmRlcihwcm9wZXJ0eUlEKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL1J1bGVEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVE
YXRhLmNwcAppbmRleCA4OGI0MzMyZGY5MWMzZGU5ZDc4MGJiNWJlMDgwNjYyNzNjYjEzYjg4Li40
M2E0ZmMwM2I5MTIzNDE5OTc3NjNmMWFkZjk2ZjMyMTRlY2YwOGFjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9SdWxlRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUv
UnVsZURhdGEuY3BwCkBAIC0xMzQsMjUgKzEzNCwyNSBAQCBzdGF0aWMgYm9vbCBjb21wdXRlQ29u
dGFpbnNVbmNvbW1vbkF0dHJpYnV0ZVNlbGVjdG9yKGNvbnN0IENTU1NlbGVjdG9yJiByb290U2Vs
ZQogICAgIHJldHVybiBmYWxzZTsKIH0KIAotc3RhdGljIGlubGluZSBQcm9wZXJ0eUFsbG93bGlz
dFR5cGUgZGV0ZXJtaW5lUHJvcGVydHlBbGxvd2xpc3RUeXBlKGNvbnN0IENTU1NlbGVjdG9yKiBz
ZWxlY3RvcikKK3N0YXRpYyBpbmxpbmUgUHJvcGVydHlBbGxvd2xpc3QgZGV0ZXJtaW5lUHJvcGVy
dHlBbGxvd2xpc3QoY29uc3QgQ1NTU2VsZWN0b3IqIHNlbGVjdG9yKQogewogICAgIGZvciAoY29u
c3QgQ1NTU2VsZWN0b3IqIGNvbXBvbmVudCA9IHNlbGVjdG9yOyBjb21wb25lbnQ7IGNvbXBvbmVu
dCA9IGNvbXBvbmVudC0+dGFnSGlzdG9yeSgpKSB7CiAjaWYgRU5BQkxFKFZJREVPKQogICAgICAg
ICBpZiAoY29tcG9uZW50LT5tYXRjaCgpID09IENTU1NlbGVjdG9yOjpQc2V1ZG9FbGVtZW50ICYm
IChjb21wb25lbnQtPnBzZXVkb0VsZW1lbnRUeXBlKCkgPT0gQ1NTU2VsZWN0b3I6OlBzZXVkb0Vs
ZW1lbnRDdWUgfHwgY29tcG9uZW50LT52YWx1ZSgpID09IFNoYWRvd1BzZXVkb0lkczo6Y3VlKCkp
KQotICAgICAgICAgICAgcmV0dXJuIFByb3BlcnR5QWxsb3dsaXN0Q3VlOworICAgICAgICAgICAg
cmV0dXJuIFByb3BlcnR5QWxsb3dsaXN0OjpDdWU7CiAjZW5kaWYKICAgICAgICAgaWYgKGNvbXBv
bmVudC0+bWF0Y2goKSA9PSBDU1NTZWxlY3Rvcjo6UHNldWRvRWxlbWVudCAmJiBjb21wb25lbnQt
PnBzZXVkb0VsZW1lbnRUeXBlKCkgPT0gQ1NTU2VsZWN0b3I6OlBzZXVkb0VsZW1lbnRNYXJrZXIp
Ci0gICAgICAgICAgICByZXR1cm4gUHJvcGVydHlBbGxvd2xpc3RNYXJrZXI7CisgICAgICAgICAg
ICByZXR1cm4gcHJvcGVydHlBbGxvd2xpc3RGb3JQc2V1ZG9JZChQc2V1ZG9JZDo6TWFya2VyKTsK
IAogICAgICAgICBpZiAoY29uc3QgYXV0byogc2VsZWN0b3JMaXN0ID0gc2VsZWN0b3ItPnNlbGVj
dG9yTGlzdCgpKSB7CiAgICAgICAgICAgICBmb3IgKGNvbnN0IGF1dG8qIHN1YlNlbGVjdG9yID0g
c2VsZWN0b3JMaXN0LT5maXJzdCgpOyBzdWJTZWxlY3Rvcjsgc3ViU2VsZWN0b3IgPSBDU1NTZWxl
Y3Rvckxpc3Q6Om5leHQoc3ViU2VsZWN0b3IpKSB7Ci0gICAgICAgICAgICAgICAgYXV0byBhbGxv
d2xpc3RUeXBlID0gZGV0ZXJtaW5lUHJvcGVydHlBbGxvd2xpc3RUeXBlKHN1YlNlbGVjdG9yKTsK
LSAgICAgICAgICAgICAgICBpZiAoYWxsb3dsaXN0VHlwZSAhPSBQcm9wZXJ0eUFsbG93bGlzdE5v
bmUpCisgICAgICAgICAgICAgICAgYXV0byBhbGxvd2xpc3RUeXBlID0gZGV0ZXJtaW5lUHJvcGVy
dHlBbGxvd2xpc3Qoc3ViU2VsZWN0b3IpOworICAgICAgICAgICAgICAgIGlmIChhbGxvd2xpc3RU
eXBlICE9IFByb3BlcnR5QWxsb3dsaXN0OjpOb25lKQogICAgICAgICAgICAgICAgICAgICByZXR1
cm4gYWxsb3dsaXN0VHlwZTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KLSAgICBy
ZXR1cm4gUHJvcGVydHlBbGxvd2xpc3ROb25lOworICAgIHJldHVybiBQcm9wZXJ0eUFsbG93bGlz
dDo6Tm9uZTsKIH0KIAogUnVsZURhdGE6OlJ1bGVEYXRhKGNvbnN0IFN0eWxlUnVsZSYgc3R5bGVS
dWxlLCB1bnNpZ25lZCBzZWxlY3RvckluZGV4LCB1bnNpZ25lZCBzZWxlY3Rvckxpc3RJbmRleCwg
dW5zaWduZWQgcG9zaXRpb24pCkBAIC0xNjQsNyArMTY0LDcgQEAgUnVsZURhdGE6OlJ1bGVEYXRh
KGNvbnN0IFN0eWxlUnVsZSYgc3R5bGVSdWxlLCB1bnNpZ25lZCBzZWxlY3RvckluZGV4LCB1bnNp
Z25lZAogICAgICwgbV9jYW5NYXRjaFBzZXVkb0VsZW1lbnQoc2VsZWN0b3JDYW5NYXRjaFBzZXVk
b0VsZW1lbnQoKnNlbGVjdG9yKCkpKQogICAgICwgbV9jb250YWluc1VuY29tbW9uQXR0cmlidXRl
U2VsZWN0b3IoY29tcHV0ZUNvbnRhaW5zVW5jb21tb25BdHRyaWJ1dGVTZWxlY3Rvcigqc2VsZWN0
b3IoKSkpCiAgICAgLCBtX2xpbmtNYXRjaFR5cGUoU2VsZWN0b3JDaGVja2VyOjpkZXRlcm1pbmVM
aW5rTWF0Y2hUeXBlKHNlbGVjdG9yKCkpKQotICAgICwgbV9wcm9wZXJ0eUFsbG93bGlzdFR5cGUo
ZGV0ZXJtaW5lUHJvcGVydHlBbGxvd2xpc3RUeXBlKHNlbGVjdG9yKCkpKQorICAgICwgbV9wcm9w
ZXJ0eUFsbG93bGlzdChzdGF0aWNfY2FzdDx1bnNpZ25lZD4oZGV0ZXJtaW5lUHJvcGVydHlBbGxv
d2xpc3Qoc2VsZWN0b3IoKSkpKQogICAgICwgbV9pc0VuYWJsZWQodHJ1ZSkKICAgICAsIG1fZGVz
Y2VuZGFudFNlbGVjdG9ySWRlbnRpZmllckhhc2hlcyhTZWxlY3RvckZpbHRlcjo6Y29sbGVjdEhh
c2hlcygqc2VsZWN0b3IoKSkpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9S
dWxlRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZURhdGEuaAppbmRleCA4M2E4MDI4
NTkzYTU2ODRjMGQyMzNkMWVlMWRjYWRmM2M1OTNmMDI3Li4zODVlMWEwMDhkZDE0YWMxY2EyZGFk
ZWZkYTY5OWQ0YWNkN2MzMTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxl
RGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVEYXRhLmgKQEAgLTIxLDIwICsy
MSwxMyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIlByb3BlcnR5QWxsb3dsaXN0Lmgi
CiAjaW5jbHVkZSAiU2VsZWN0b3JGaWx0ZXIuaCIKICNpbmNsdWRlICJTdHlsZVJ1bGUuaCIKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogbmFtZXNwYWNlIFN0eWxlIHsKIAotZW51bSBQcm9wZXJ0eUFs
bG93bGlzdFR5cGUgewotICAgIFByb3BlcnR5QWxsb3dsaXN0Tm9uZSAgID0gMCwKLSAgICBQcm9w
ZXJ0eUFsbG93bGlzdE1hcmtlciwKLSNpZiBFTkFCTEUoVklERU8pCi0gICAgUHJvcGVydHlBbGxv
d2xpc3RDdWUKLSNlbmRpZgotfTsKLQogZW51bSBjbGFzcyBNYXRjaEJhc2VkT25SdWxlSGFzaCA6
IHVuc2lnbmVkIHsKICAgICBOb25lLAogICAgIFVuaXZlcnNhbCwKQEAgLTY1LDcgKzU4LDcgQEAg
cHVibGljOgogICAgIE1hdGNoQmFzZWRPblJ1bGVIYXNoIG1hdGNoQmFzZWRPblJ1bGVIYXNoKCkg
Y29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8TWF0Y2hCYXNlZE9uUnVsZUhhc2g+KG1fbWF0Y2hC
YXNlZE9uUnVsZUhhc2gpOyB9CiAgICAgYm9vbCBjb250YWluc1VuY29tbW9uQXR0cmlidXRlU2Vs
ZWN0b3IoKSBjb25zdCB7IHJldHVybiBtX2NvbnRhaW5zVW5jb21tb25BdHRyaWJ1dGVTZWxlY3Rv
cjsgfQogICAgIHVuc2lnbmVkIGxpbmtNYXRjaFR5cGUoKSBjb25zdCB7IHJldHVybiBtX2xpbmtN
YXRjaFR5cGU7IH0KLSAgICBQcm9wZXJ0eUFsbG93bGlzdFR5cGUgcHJvcGVydHlBbGxvd2xpc3RU
eXBlKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8UHJvcGVydHlBbGxvd2xpc3RUeXBlPiht
X3Byb3BlcnR5QWxsb3dsaXN0VHlwZSk7IH0KKyAgICBQcm9wZXJ0eUFsbG93bGlzdCBwcm9wZXJ0
eUFsbG93bGlzdCgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PFByb3BlcnR5QWxsb3dsaXN0
PihtX3Byb3BlcnR5QWxsb3dsaXN0KTsgfQogICAgIGJvb2wgaXNFbmFibGVkKCkgY29uc3QgeyBy
ZXR1cm4gbV9pc0VuYWJsZWQ7IH0KICAgICB2b2lkIHNldEVuYWJsZWQoYm9vbCB2YWx1ZSkgeyBt
X2lzRW5hYmxlZCA9IHZhbHVlOyB9CiAKQEAgLTg0LDcgKzc3LDcgQEAgcHJpdmF0ZToKICAgICB1
bnNpZ25lZCBtX2Nhbk1hdGNoUHNldWRvRWxlbWVudCA6IDE7CiAgICAgdW5zaWduZWQgbV9jb250
YWluc1VuY29tbW9uQXR0cmlidXRlU2VsZWN0b3IgOiAxOwogICAgIHVuc2lnbmVkIG1fbGlua01h
dGNoVHlwZSA6IDI7IC8vICBTZWxlY3RvckNoZWNrZXI6OkxpbmtNYXRjaE1hc2sKLSAgICB1bnNp
Z25lZCBtX3Byb3BlcnR5QWxsb3dsaXN0VHlwZSA6IDI7CisgICAgdW5zaWduZWQgbV9wcm9wZXJ0
eUFsbG93bGlzdCA6IDI7CiAgICAgdW5zaWduZWQgbV9pc0VuYWJsZWQgOiAxOwogICAgIFNlbGVj
dG9yRmlsdGVyOjpIYXNoZXMgbV9kZXNjZW5kYW50U2VsZWN0b3JJZGVudGlmaWVySGFzaGVzOwog
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXIuY3BwCmluZGV4IGI2YmRhZWNlMTRlZTcz
OTBhYTQ3ZWQ5NDU3NDFjZGI1ZGM0ZjdmYTQuLjNiYTJkOTZlZDczNDJhMDU0OTljNzA3MmJhNTcz
NmI2M2IyZmIxNTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRl
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyLmNwcApAQCAtMzMs
NiArMzMsNyBAQAogI2luY2x1ZGUgIkNTU0ZvbnRTZWxlY3Rvci5oIgogI2luY2x1ZGUgIkNTU1Bh
aW50SW1hZ2VWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU1ZhbHVlUG9vbC5oIgorI2luY2x1ZGUgIkRv
Y3VtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEVsZW1lbnQuaCIKICNpbmNsdWRlICJQYWludFdvcmts
ZXRHbG9iYWxTY29wZS5oIgogI2luY2x1ZGUgIlNldHRpbmdzLmgiCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxl
L1N0eWxlUmVzb2x2ZXIuY3BwCmluZGV4IDU2NDExOGY2ZjJlNGViNTM0YmU4MGE0MWIxYmM5ZTkx
MTc1YzcwYmMuLmM0ZGM4ZThhZDQ1MDRhODBmMTI1MjA2NWE3OGMzYzE1Yjg4YjYwNDAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC0yNjMsNyArMjYzLDcgQEAgc3Rk
Ojp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiBSZXNvbHZlcjo6c3R5bGVGb3JLZXlmcmFtZShjb25z
dCBFbGVtZW50JiBlbGVtZW50LAogICAgIFJFTEVBU0VfQVNTRVJUKCFtX2lzRGVsZXRlZCk7CiAK
ICAgICBNYXRjaFJlc3VsdCByZXN1bHQ7Ci0gICAgcmVzdWx0LmF1dGhvckRlY2xhcmF0aW9ucy5h
cHBlbmQoeyAma2V5ZnJhbWUtPnByb3BlcnRpZXMoKSB9KTsKKyAgICByZXN1bHQuYXV0aG9yRGVj
bGFyYXRpb25zLmFwcGVuZCh7ICZrZXlmcmFtZS0+cHJvcGVydGllcygpLCBTZWxlY3RvckNoZWNr
ZXI6Ok1hdGNoQWxsLCBwcm9wZXJ0eUFsbG93bGlzdEZvclBzZXVkb0lkKGVsZW1lbnRTdHlsZS0+
c3R5bGVUeXBlKCkpIH0pOwogCiAgICAgYXV0byBzdGF0ZSA9IFN0YXRlKGVsZW1lbnQsIG51bGxw
dHIsIG1fb3ZlcnJpZGVEb2N1bWVudEVsZW1lbnRTdHlsZSk7CiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA4Y2FjNGVlY2Qw
OGMzNmJmY2ZmZDBmZDU4NzE3ZmYwM2MzMTQ1ZDVhLi5lYWY0ZDZmZTI3OTg5MDYyNzZiNjgwMzU1
Yjk4ZTk1YTFjODIxOTU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjEtMTAtMTkgIEFudG9p
bmUgUXVpbnQgIDxncmFvdXRzQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUkVHUkVTU0lPTihyMjg0
MzEzKTogOjptYXJrZXIgYWNjZWxlcmF0ZWQgYW5pbWF0aW9ucyBhcmUgYnJva2VuCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzE5MDYKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzg0MzgzMjc5PgorCisgICAgICAgIFJldmlld2VkIGJ5IEFudHRpIEtv
aXZpc3RvLgorCisgICAgICAgIEFkZCBhIG5ldyB0ZXN0IHRoYXQgY2hlY2tzIHdlIGRvIG5vdCB2
aXN1YWxseSBhY2NvdW50IGZvciBhbiBvcGFjaXR5IGFuaW1hdGlvbiBvbiBhIDo6bWFya2VyCisg
ICAgICAgIHBzZXVkby1lbGVtZW50LgorCisgICAgICAgICogd2ViYW5pbWF0aW9ucy9tYXJrZXIt
b3BhY2l0eS1hbmltYXRpb24tbm8tZWZmZWN0LWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAg
ICAqIHdlYmFuaW1hdGlvbnMvbWFya2VyLW9wYWNpdHktYW5pbWF0aW9uLW5vLWVmZmVjdC5odG1s
OiBBZGRlZC4KKwogMjAyMS0xMC0xOCAgSmVhbi1ZdmVzIEF2ZW5hcmQgIDxqeWFAYXBwbGUuY29t
PgogCiAgICAgICAgIFdlYk0gd2l0aCBpbnZhbGlkIHNpemUgc2hvdWxkIGZhaWwgdG8gbG9hZCB3
aXRoIGVycm9yCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCBlMmUwODliZDliZTA2
YWViYjg1NjFlZWM4MzEwY2M1OTg0ODNhYTQyLi4zZGY2ZTFmMDRiMTkyM2IwNWI2ODZkMTEwODE4
YmVlYzU5NmI2MTg3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
NyBAQAorMjAyMS0xMC0xOSAgQW50b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBSRUdSRVNTSU9OKHIyODQzMTMpOiA6Om1hcmtlciBhY2NlbGVyYXRlZCBhbmltYXRp
b25zIGFyZSBicm9rZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzMTkwNgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vODQzODMyNzk+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgQW50dGkgS29pdmlzdG8uCisKKyAgICAgICAgV1BUIG5vdyByZWZsZWN0
IHRoYXQgd2UgY29ycmVjdGx5IGRvIG5vdCBhbmltYXRlIHRoZSBvcGFjaXR5IHByb3BlcnR5IGFu
ZCBjb3JyZWN0bHkgYWNjb3VudCBmb3IKKyAgICAgICAgb3RoZXIgaW5lZmZlY3RpdmUgcHJvcGVy
dGllcyBvbiA6Om1hcmtlciwgc3VjaCBhcyBsaW5lLWhlaWdodC4KKworICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXBzZXVkby9tYXJrZXItYW5pbWF0ZS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtcHNldWRvL3BhcnNpbmcvbWFy
a2VyLXN1cHBvcnRlZC1wcm9wZXJ0aWVzLWluLWFuaW1hdGlvbi1leHBlY3RlZC50eHQ6CisKIDIw
MjEtMTAtMTggIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQHdlYmtpdC5vcmc+CiAKICAgICAgICAg
Ym94LXNoYWRvdyBhbmQgdGV4dC1zaGFkb3cgZG8gbm90IHlpZWxkIGZsb2F0IHZhbHVlcyB3aGls
ZSBpbnRlcnBvbGF0aW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtcHNldWRvL21hcmtlci1hbmltYXRlLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1w
c2V1ZG8vbWFya2VyLWFuaW1hdGUtZXhwZWN0ZWQudHh0CmluZGV4IDA0MzM2NWIxMmQ3YzM3Y2Zi
NzhmY2VmNjFjOTY0OWMyYTliZDYzZDcuLmIzMDBmMzVjMmQ2NmZjZTZiYzJkOWUxNGEzNzcyNDI4
ZDdhNGVmNWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1wc2V1ZG8vbWFya2VyLWFuaW1hdGUtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1wc2V1
ZG8vbWFya2VyLWFuaW1hdGUtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCiBQQVNTICdj
b2xvcicgYW5pbWF0aW9uCi1GQUlMICdvcGFjaXR5JyBhbmltYXRpb24gYXNzZXJ0X2VxdWFsczog
b3BhY2l0eSBleHBlY3RlZCAiMSIgYnV0IGdvdCAiMC41IgotRkFJTCAnY29sb3InICsgJ29wYWNp
dHknIGFuaW1hdGlvbiBhc3NlcnRfZXF1YWxzOiBvcGFjaXR5IGV4cGVjdGVkICIxIiBidXQgZ290
ICIwLjUiCitQQVNTICdvcGFjaXR5JyBhbmltYXRpb24KK1BBU1MgJ2NvbG9yJyArICdvcGFjaXR5
JyBhbmltYXRpb24KIGxpc3QgaXRlbQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXBzZXVkby9wYXJzaW5nL21hcmtlci1zdXBw
b3J0ZWQtcHJvcGVydGllcy1pbi1hbmltYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXBzZXVkby9wYXJzaW5nL21h
cmtlci1zdXBwb3J0ZWQtcHJvcGVydGllcy1pbi1hbmltYXRpb24tZXhwZWN0ZWQudHh0CmluZGV4
IDE0N2QwNmJlNDMyYWMyNWU5ZGM4ZDViOTRmMzQ0NzhmNDhhNGFlYTMuLjg4OGRkOTg4MGNlN2Ew
ZTIzY2Q4MTRiM2RiM2NhMDVkZWE4YmRjNGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1wc2V1ZG8vcGFyc2luZy9tYXJrZXIt
c3VwcG9ydGVkLXByb3BlcnRpZXMtaW4tYW5pbWF0aW9uLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtcHNldWRvL3Bh
cnNpbmcvbWFya2VyLXN1cHBvcnRlZC1wcm9wZXJ0aWVzLWluLWFuaW1hdGlvbi1leHBlY3RlZC50
eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgQW5pbWF0aW9uIG9mIGZvbnQgaW4gOjptYXJrZXIg
YXNzZXJ0X2luX2FycmF5OiB2YWx1ZSAiaXRhbGljIG5vcm1hbCA1MDAgZXhwYW5kZWQgMTVweC8z
NXB4IC13ZWJraXQtc3RhbmRhcmQiIG5vdCBpbiBhcnJheSBbIml0YWxpYyBzbWFsbC1jYXBzIDUw
MCBleHBhbmRlZCAxNXB4IC8gMzVweCBBaGVtIiwgIml0YWxpYyBzbWFsbC1jYXBzIDUwMCBleHBh
bmRlZCAxNXB4LzM1cHggQWhlbSJdCitGQUlMIEFuaW1hdGlvbiBvZiBmb250IGluIDo6bWFya2Vy
IGFzc2VydF9pbl9hcnJheTogdmFsdWUgIml0YWxpYyBub3JtYWwgNTAwIGV4cGFuZGVkIDE1cHgv
bm9ybWFsIC13ZWJraXQtc3RhbmRhcmQiIG5vdCBpbiBhcnJheSBbIml0YWxpYyBzbWFsbC1jYXBz
IDUwMCBleHBhbmRlZCAxNXB4IC8gMzVweCBBaGVtIiwgIml0YWxpYyBzbWFsbC1jYXBzIDUwMCBl
eHBhbmRlZCAxNXB4LzM1cHggQWhlbSJdCiBGQUlMIEFuaW1hdGlvbiBvZiBmb250LWZhbWlseSBp
biA6Om1hcmtlciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiQWhlbSIgYnV0IGdvdCAiLXdlYmtp
dC1zdGFuZGFyZCIKIEZBSUwgQW5pbWF0aW9uIG9mIGZvbnQtZmVhdHVyZS1zZXR0aW5ncyBpbiA6
Om1hcmtlciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiXCJzbWNwXCIiIGJ1dCBnb3QgIm5vcm1h
bCIKIEZBSUwgQW5pbWF0aW9uIG9mIGZvbnQta2VybmluZyBpbiA6Om1hcmtlciBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAibm9uZSIgYnV0IGdvdCAiYXV0byIKQEAgLTE1LDcgKzE1LDcgQEAgRkFJ
TCBBbmltYXRpb24gb2YgZm9udC12YXJpYW50LWxpZ2F0dXJlcyBpbiA6Om1hcmtlciBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAiaGkKIEZBSUwgQW5pbWF0aW9uIG9mIGZvbnQtdmFyaWFudC1udW1l
cmljIGluIDo6bWFya2VyIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJzbGFzaGVkLXplcm8iIGJ1
dCBnb3QgInRhYnVsYXItbnVtcyIKIEZBSUwgQW5pbWF0aW9uIG9mIGZvbnQtdmFyaWFudC1wb3Np
dGlvbiBpbiA6Om1hcmtlciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAic3ViIiBidXQgZ290ICJu
b3JtYWwiCiBQQVNTIEFuaW1hdGlvbiBvZiBmb250LXdlaWdodCBpbiA6Om1hcmtlcgotUEFTUyBB
bmltYXRpb24gb2YgbGluZS1oZWlnaHQgaW4gOjptYXJrZXIKK0ZBSUwgQW5pbWF0aW9uIG9mIGxp
bmUtaGVpZ2h0IGluIDo6bWFya2VyIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICIzNXB4IiBidXQg
Z290ICJub3JtYWwiCiBGQUlMIEFuaW1hdGlvbiBvZiB3aGl0ZS1zcGFjZSBpbiA6Om1hcmtlciBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAibm93cmFwIiBidXQgZ290ICJub3JtYWwiCiBGQUlMIEFu
aW1hdGlvbiBvZiBjb2xvciBpbiA6Om1hcmtlciBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAicmdi
KDUwLCAxNTAsIDEwMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKIEZBSUwgQW5pbWF0aW9uIG9m
IHRleHQtY29tYmluZS11cHJpZ2h0IGluIDo6bWFya2VyIGFzc2VydF90cnVlOiB0ZXh0LWNvbWJp
bmUtdXByaWdodCBkb2Vzbid0IHNlZW0gdG8gYmUgc3VwcG9ydGVkIGluIHRoZSBjb21wdXRlZCBz
dHlsZSBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2Vi
YW5pbWF0aW9ucy9tYXJrZXItb3BhY2l0eS1hbmltYXRpb24tbm8tZWZmZWN0LWV4cGVjdGVkLmh0
bWwgYi9MYXlvdXRUZXN0cy93ZWJhbmltYXRpb25zL21hcmtlci1vcGFjaXR5LWFuaW1hdGlvbi1u
by1lZmZlY3QtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MTE5NjJkOTk0NTkyOTk3MjZlYTlj
YTZmYWUzNjJhODU4YmZhOTgyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYW5p
bWF0aW9ucy9tYXJrZXItb3BhY2l0eS1hbmltYXRpb24tbm8tZWZmZWN0LWV4cGVjdGVkLmh0bWwK
QEAgLTAsMCArMSBAQAorPGxpPkhlbGxvPC9saT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhbmltYXRpb25zL21hcmtlci1vcGFjaXR5LWFu
aW1hdGlvbi1uby1lZmZlY3QuaHRtbCBiL0xheW91dFRlc3RzL3dlYmFuaW1hdGlvbnMvbWFya2Vy
LW9wYWNpdHktYW5pbWF0aW9uLW5vLWVmZmVjdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM5NWU0MGYxMDIz
N2I1N2ZiZjUzYzRhNWYzOWE1MjFhZmQ3NWRjMzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy93ZWJhbmltYXRpb25zL21hcmtlci1vcGFjaXR5LWFuaW1hdGlvbi1uby1lZmZlY3QuaHRt
bApAQCAtMCwwICsxLDE0IEBACis8c3R5bGU+CisKK0BrZXlmcmFtZXMgYW5pbWF0ZS1tYXJrZXIg
eworICAgIGZyb20geyBvcGFjaXR5OiAwLjUgfQorICAgIHRvIHsgb3BhY2l0eTogMC41IH0KK30K
KworOjptYXJrZXIgeworICBhbmltYXRpb246IGFuaW1hdGUtbWFya2VyIDFzIGluZmluaXRlOyAK
K30KKworPC9zdHlsZT4KKworPGxpPkhlbGxvPC9saT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>