<?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>224093</bug_id>
          
          <creation_ts>2021-04-01 19:43:06 -0700</creation_ts>
          <short_desc>ICU 69 Deprecates ubrk_safeClone in favor of ubrk_clone</short_desc>
          <delta_ts>2021-04-13 14:45:47 -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>JavaScriptCore</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=224511</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Don Olmstead">don.olmstead</reporter>
          <assigned_to name="Ross Kirsling">ross.kirsling</assigned_to>
          <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>ross.kirsling</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1746365</commentid>
    <comment_count>0</comment_count>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2021-04-01 19:43:06 -0700</bug_when>
    <thetext>...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1746367</commentid>
    <comment_count>1</comment_count>
      <attachid>424978</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2021-04-01 19:47:21 -0700</bug_when>
    <thetext>Created attachment 424978
WIP Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1746407</commentid>
    <comment_count>2</comment_count>
      <attachid>424978</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-04-02 01:01:10 -0700</bug_when>
    <thetext>Comment on attachment 424978
WIP Patch

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

&gt; Source/JavaScriptCore/runtime/IntlSegmenter.cpp:129
&gt; +    auto segmenter = std::unique_ptr&lt;UBreakIterator, UBreakIteratorDeleter&gt;(ubrk_clone(m_segmenter.get(), &amp;status));

Since ubrk_clone is draft status, we need to hide U_HIDE_DRAFT_API definition to use it. So I suggest,

1. Let&apos;s create a new cpp/h files, IntlWorkaround.h IntlWorkaround.cpp
2. Annotate @no-unify to IntlWorkaround.cpp since we want to avoid including unicode/ubrk.h without removing U_HIDE_DRAFT_API
3. Define a wrapper function around ubrk_clone / ubrk_safeClone in IntlWorkaround.cpp. To use draft ICU APIs, we need some special handling. Please check IntlListFormat.cpp for example :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1746440</commentid>
    <comment_count>3</comment_count>
      <attachid>424978</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-04-02 02:55:08 -0700</bug_when>
    <thetext>Comment on attachment 424978
WIP Patch

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

&gt;&gt; Source/JavaScriptCore/runtime/IntlSegmenter.cpp:129
&gt;&gt; +    auto segmenter = std::unique_ptr&lt;UBreakIterator, UBreakIteratorDeleter&gt;(ubrk_clone(m_segmenter.get(), &amp;status));
&gt; 
&gt; Since ubrk_clone is draft status, we need to hide U_HIDE_DRAFT_API definition to use it. So I suggest,
&gt; 
&gt; 1. Let&apos;s create a new cpp/h files, IntlWorkaround.h IntlWorkaround.cpp
&gt; 2. Annotate @no-unify to IntlWorkaround.cpp since we want to avoid including unicode/ubrk.h without removing U_HIDE_DRAFT_API
&gt; 3. Define a wrapper function around ubrk_clone / ubrk_safeClone in IntlWorkaround.cpp. To use draft ICU APIs, we need some special handling. Please check IntlListFormat.cpp for example :)

Or let&apos;s define a helper function in IntlSegmenter.cpp, make it @no-unify, and include the ubrk.h with appropriate or #define.
And ensure that ubrk.h is not included without draft&apos;s #define for that file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748583</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-04-08 19:44:12 -0700</bug_when>
    <thetext>&lt;rdar://problem/76434312&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749469</commentid>
    <comment_count>5</comment_count>
      <attachid>425816</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2021-04-12 17:26:24 -0700</bug_when>
    <thetext>Created attachment 425816
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749470</commentid>
    <comment_count>6</comment_count>
      <attachid>425817</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2021-04-12 17:30:58 -0700</bug_when>
    <thetext>Created attachment 425817
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749487</commentid>
    <comment_count>7</comment_count>
      <attachid>425820</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2021-04-12 17:49:31 -0700</bug_when>
    <thetext>Created attachment 425820
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749491</commentid>
    <comment_count>8</comment_count>
      <attachid>425820</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-04-12 18:18:25 -0700</bug_when>
    <thetext>Comment on attachment 425820
Patch

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

r=me with some comments.

&gt; Source/JavaScriptCore/runtime/IntlWorkaround.cpp:41
&gt; +#if HAVE(ICU_UBRK_CLONE)
&gt; +#define U_HIDE_DRAFT_API 1
&gt; +#endif

I think we do not need to make it back since this cpp file is isolated.

&gt; Source/JavaScriptCore/runtime/IntlWorkaround.cpp:50
&gt; +return ubrk_clone(iterator, status);

4 spaces for indentation.

&gt; Source/JavaScriptCore/runtime/IntlWorkaround.cpp:52
&gt; +return ubrk_safeClone(iterator, nullptr, nullptr, status);

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749496</commentid>
    <comment_count>9</comment_count>
      <attachid>425822</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2021-04-12 18:34:38 -0700</bug_when>
    <thetext>Created attachment 425822
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749503</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-12 19:04:23 -0700</bug_when>
    <thetext>Committed r275856 (236421@main): &lt;https://commits.webkit.org/236421@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 425822.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749807</commentid>
    <comment_count>11</comment_count>
      <attachid>425822</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-13 12:45:11 -0700</bug_when>
    <thetext>Comment on attachment 425822
Patch for landing

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

&gt; Source/JavaScriptCore/runtime/IntlSegmenter.h:80
&gt; +// Abstraction to call ubrk_safeClone or ubrk_clone depending on ICU version.
&gt; +// This is implemented in IntlWorkaround.cpp in order to confine draft API visibility.
&gt; +UBreakIterator* cloneUBreakIterator(const UBreakIterator*, UErrorCode*);

Why is this here instead of an IntlWorkaround.h header?

&gt; Source/JavaScriptCore/runtime/IntlWorkaround.cpp:42
&gt; +UBreakIterator* cloneUBreakIterator(const UBreakIterator*, UErrorCode*);

Why is this declaration repeated here instead of including the header it’s in?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749856</commentid>
    <comment_count>12</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2021-04-13 14:18:37 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #11)
&gt; Comment on attachment 425822 [details]
&gt; Patch for landing
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=425822&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/runtime/IntlSegmenter.h:80
&gt; &gt; +// Abstraction to call ubrk_safeClone or ubrk_clone depending on ICU version.
&gt; &gt; +// This is implemented in IntlWorkaround.cpp in order to confine draft API visibility.
&gt; &gt; +UBreakIterator* cloneUBreakIterator(const UBreakIterator*, UErrorCode*);
&gt; 
&gt; Why is this here instead of an IntlWorkaround.h header?
&gt; 
&gt; &gt; Source/JavaScriptCore/runtime/IntlWorkaround.cpp:42
&gt; &gt; +UBreakIterator* cloneUBreakIterator(const UBreakIterator*, UErrorCode*);
&gt; 
&gt; Why is this declaration repeated here instead of including the header it’s
&gt; in?

Er right, I guess we should be able to put the declaration in an IntlWorkaround.h after all.

(This was meant to be less confusing than introducing a IntlWorkaround.h and having IntlWorkaround.cpp *not* include it. However, the reason for that was because IntlSegmenter.h still needs to include ubrk.h in the usual way and I&apos;d been trying to have IntlWorkaround &quot;manage inclusion&quot; of ubrk.h. But as long as we don&apos;t muck with the include in IntlSegmenter.h, then IntlWorkaround.h can safely house a declaration and nothing more.)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>424978</attachid>
            <date>2021-04-01 19:47:21 -0700</date>
            <delta_ts>2021-04-12 17:26:21 -0700</delta_ts>
            <desc>WIP Patch</desc>
            <filename>bug-224093.diff</filename>
            <type>text/plain</type>
            <size>1934</size>
            <attacher name="Don Olmstead">don.olmstead</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXIu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlci5jcHAKaW5k
ZXggMDRjZjE3ZDUwOTM1Li4wNGE3ZmM0OWRkMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXIuY3BwCkBAIC0xMjUsNyArMTI1LDEyIEBAIEpTVmFs
dWUgSW50bFNlZ21lbnRlcjo6c2VnbWVudChKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBK
U1ZhbHVlIHN0cmluZ1ZhbHVlCiAgICAgYXV0byB1cGNvbnZlcnRlZENoYXJhY3RlcnMgPSBCb3g8
VmVjdG9yPFVDaGFyPj46OmNyZWF0ZShzdHJpbmcuY2hhcmFjdGVyc1dpdGhvdXROdWxsVGVybWlu
YXRpb24oKSk7CiAKICAgICBVRXJyb3JDb2RlIHN0YXR1cyA9IFVfWkVST19FUlJPUjsKKyNpZiBV
X0lDVV9WRVJTSU9OX01BSk9SX05VTSA+PSA2OQorICAgIGF1dG8gc2VnbWVudGVyID0gc3RkOjp1
bmlxdWVfcHRyPFVCcmVha0l0ZXJhdG9yLCBVQnJlYWtJdGVyYXRvckRlbGV0ZXI+KHVicmtfY2xv
bmUobV9zZWdtZW50ZXIuZ2V0KCksICZzdGF0dXMpKTsKKyNlbHNlCisgICAgLy8gdWJya19zYWZl
Q2xvbmUgaXMgZGVwcmVjYXRlZCBhcyBvZiBJQ1UgNjkKICAgICBhdXRvIHNlZ21lbnRlciA9IHN0
ZDo6dW5pcXVlX3B0cjxVQnJlYWtJdGVyYXRvciwgVUJyZWFrSXRlcmF0b3JEZWxldGVyPih1YnJr
X3NhZmVDbG9uZShtX3NlZ21lbnRlci5nZXQoKSwgbnVsbHB0ciwgbnVsbHB0ciwgJnN0YXR1cykp
OworI2VuZGlmCiAgICAgaWYgKFVfRkFJTFVSRShzdGF0dXMpKSB7CiAgICAgICAgIHRocm93VHlw
ZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBTZWdtZW50
cyJfcyk7CiAgICAgICAgIHJldHVybiB7IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JbnRsU2VnbWVudHMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSW50bFNlZ21lbnRzLmNwcAppbmRleCBiNmFiYTMyZmI4MjIuLjQzYzAyNWIzNDVmOSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudHMuY3BwCkBA
IC0xMDAsNyArMTAwLDEyIEBAIEpTT2JqZWN0KiBJbnRsU2VnbWVudHM6OmNyZWF0ZVNlZ21lbnRJ
dGVyYXRvcihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogICAgIGF1dG8gc2NvcGUgPSBE
RUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAogICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJP
X0VSUk9SOworI2lmIFVfSUNVX1ZFUlNJT05fTUFKT1JfTlVNID49IDY5CisgICAgYXV0byBzZWdt
ZW50ZXIgPSBzdGQ6OnVuaXF1ZV9wdHI8VUJyZWFrSXRlcmF0b3IsIFVCcmVha0l0ZXJhdG9yRGVs
ZXRlcj4odWJya19jbG9uZShtX3NlZ21lbnRlci5nZXQoKSwgJnN0YXR1cykpOworI2Vsc2UKKyAg
ICAvLyB1YnJrX3NhZmVDbG9uZSBpcyBkZXByZWNhdGVkIGFzIG9mIElDVSA2OQogICAgIGF1dG8g
c2VnbWVudGVyID0gc3RkOjp1bmlxdWVfcHRyPFVCcmVha0l0ZXJhdG9yLCBVQnJlYWtJdGVyYXRv
ckRlbGV0ZXI+KHVicmtfc2FmZUNsb25lKG1fc2VnbWVudGVyLmdldCgpLCBudWxscHRyLCBudWxs
cHRyLCAmc3RhdHVzKSk7CisjZW5kaWYKICAgICBpZiAoVV9GQUlMVVJFKHN0YXR1cykpIHsKICAg
ICAgICAgdGhyb3dUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0LCBzY29wZSwgImZhaWxlZCB0byBpbml0
aWFsaXplIFNlZ21lbnRJdGVyYXRvciJfcyk7CiAgICAgICAgIHJldHVybiBudWxscHRyOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425816</attachid>
            <date>2021-04-12 17:26:24 -0700</date>
            <delta_ts>2021-04-12 17:30:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224093-20210412172624.patch</filename>
            <type>text/plain</type>
            <size>15957</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1ODM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
YzU3YmM0MjdmNTM5ZjMyMzNjY2JhM2JlYjE2YWYyZTc4NjRhNzJjLi44MmQzZjFhMmFiYzMwOWZk
OGNiZTA0MWQ2YzY4ZTNhMjhjZmIxMzE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMCBAQAorMjAyMS0wNC0xMiAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CisKKyAgICAgICAgSUNVIDY5IGRlcHJlY2F0ZXMgdWJya19zYWZlQ2xvbmUgaW4gZmF2
b3Igb2YgdWJya19jbG9uZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI0MDkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgSW4gYSBzaGluaW5nIGV4YW1wbGUgb2YgImRpc2FwcG9pbnRpbmcgbGlicmFyeSBw
cmFjdGljZXMiLCBJQ1UgNjkgZGVwcmVjYXRlcyB1YnJrX3NhZmVDbG9uZSBpbiBmYXZvciBvZgor
ICAgICAgICBhIG5ldyAqZHJhZnQqIEFQSSB1YnJrX2Nsb25lLCBtZWFuaW5nIHRoYXQgbm8gZnVu
Y3Rpb24gd2l0aCB0aGlzIGZ1bmN0aW9uYWxpdHkgaXMgZXhwb3NlZCBieSBkZWZhdWx0LgorCisg
ICAgICAgIFRoaXMgcGF0Y2ggaW50cm9kdWNlcyBhIGZ1bmN0aW9uIGNsb25lVUJyZWFrSXRlcmF0
b3IgdG8gYWJzdHJhY3Qgb3ZlciB0aGlzIGNoYW5nZTsgaG93ZXZlciwgc2luY2Ugd2UgbmVlZCB0
bzoKKworICAgICAgICAgIDEuIGNvbmZpbmUgdGhlIGVmZmVjdHMgb2YgZGlzYWJsaW5nIFVfSElE
RV9EUkFGVF9BUEkgdG8gYSBub24tdW5pZmllZCBpbXBsZW1lbnRhdGlvbiBmaWxlCisgICAgICAg
ICAgMi4gc3RpbGwgYmUgYWJsZSB0byBpbmNsdWRlIHVicmsuaCBmcm9tIEludGxTZWdtZW50ZXIu
aCB0byBpbnN0YW50aWF0ZSBJQ1VEZWxldGVyPHVicmtfY2xvc2U+ICgqbm90KiBgY2xvbmVgISkK
KworICAgICAgICAuLi50aGUgbmV3IGhlbHBlciBmdW5jdGlvbiBpcyBpbnRyb2R1Y2VkIGluIGEg
KmhlYWRlcmxlc3MqIGltcGxlbWVudGF0aW9uIGZpbGUsIEludGxXb3JrYXJvdW5kLmNwcC4KKwor
ICAgICAgICAqIEphdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAg
ICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcDoK
KyAgICAgICAgKEpTQzo6SW50bFNlZ21lbnRlcjo6c2VnbWVudCBjb25zdCk6CisgICAgICAgICog
cnVudGltZS9JbnRsU2VnbWVudGVyLmg6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudHMu
Y3BwOgorICAgICAgICAoSlNDOjpJbnRsU2VnbWVudHM6OmNyZWF0ZVNlZ21lbnRJdGVyYXRvcik6
CisgICAgICAgICogcnVudGltZS9JbnRsV29ya2Fyb3VuZC5jcHA6IEFkZGVkLgorICAgICAgICAo
SlNDOjpjbG9uZVVCcmVha0l0ZXJhdG9yKToKKwogMjAyMS0wNC0xMCAgWXVzdWtlIFN1enVraSAg
PHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIEIzIHJlZHVjZS1kb3VibGUtdG8t
ZmxvYXQgc2hvdWxkIHJlZHVjZSBvbmx5IHdoZW4gY29uc3RhbnQgZG91YmxlIGlzIGNhbm9uaWNh
bCBvbmUgdG8gcmVkdWNlZCBmbG9hdCB2YWx1ZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCBhNTE4ZTZjYjFmMTA1YTNkN2RiY2ZiZmE5YTA2NjdhNTlhYjg5ZWQ5Li5hMTNjMmRjMmY2
ZmRlMDE3Zjg0NTUzMmMwMzE4YjQ1OTNiY2QyZGY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagpAQCAtMTQwMiw2ICsxNDAyLDcgQEAKIAkJQTFENzkyRkYxQjQzODY0QjAwNDUxNkY1IC8q
IEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTFENzkyRjkxQjQzODY0QjAwNDUxNkY1IC8qIEludGxOdW1i
ZXJGb3JtYXRDb25zdHJ1Y3Rvci5oICovOyB9OwogCQlBMUQ3OTMwMTFCNDM4NjRCMDA0NTE2RjUg
LyogSW50bE51bWJlckZvcm1hdFByb3RvdHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTFENzkyRkIxQjQzODY0QjAwNDUxNkY1IC8qIEludGxOdW1i
ZXJGb3JtYXRQcm90b3R5cGUuaCAqLzsgfTsKIAkJQTM4RDI1MEUyNTgwMEQ0NDAwNDJCRkREIC8q
IEpTQXJyYXlCdWZmZXJQcm90b3R5cGVJbmxpbmVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMzhEMjUwRDI1ODAwRDQzMDA0MkJGREQgLyogSlNBcnJh
eUJ1ZmZlclByb3RvdHlwZUlubGluZXMuaCAqLzsgfTsKKwkJQTNFRTg1NDMyNjI1MTRCMDAwRkM5
QjhEIC8qIEludGxXb3JrYXJvdW5kLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEEzNzYxOTQwMjYyNTEyN0MwMENCQ0JBOSAvKiBJbnRsV29ya2Fyb3Vu
ZC5jcHAgKi87IH07CiAJCUEzRkY5QkM3MjIzNDc0OTEwMEIxQTlBQiAvKiBZYXJyRmxhZ3MuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEzRkY5QkM1MjIz
NDc0NjYwMEIxQTlBQiAvKiBZYXJyRmxhZ3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQlBNTAzRkExQTE4OEUwRkIwMDAxMTBGMTQgLyogSmF2YVNj
cmlwdENhbGxGcmFtZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQTUwM0ZBMTQxODhFMEZBRjAwMTEwRjE0IC8qIEphdmFTY3JpcHRDYWxsRnJhbWUuaCAq
LzsgfTsKIAkJQTUwM0ZBMUUxODhFMEZCMDAwMTEwRjE0IC8qIEpTSmF2YVNjcmlwdENhbGxGcmFt
ZVByb3RvdHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTUwM0ZBMTgxODhFMEZCMDAwMTEwRjE0IC8qIEpTSmF2YVNjcmlwdENhbGxGcmFtZVByb3Rv
dHlwZS5oICovOyB9OwpAQCAtNDQxOSw2ICs0NDIwLDcgQEAKIAkJQTFFMDQ1MUIxQzI1QjRCMTAw
QkI2NjNDIC8qIFN0cmluZ1Byb3RvdHlwZS5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNj
cmlwdDsgcGF0aCA9IFN0cmluZ1Byb3RvdHlwZS5qczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQTFGRTFFQjAxQzJDNTM3RTAwQTI4OUZGIC8qIERhdGVQcm90b3R5cGUuanMgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSBEYXRlUHJvdG90eXBlLmpzOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMjc5NThEN0ZBMTE0MkIwQUM5RTM2NEQgLyogV2Fz
bUNvbnRleHRJbmxpbmVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdhc21D
b250ZXh0SW5saW5lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMzc2MTk0MDI2
MjUxMjdDMDBDQkNCQTkgLyogSW50bFdvcmthcm91bmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSW50bFdvcmthcm91bmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlBMzhEMjUwRDI1ODAwRDQzMDA0MkJGREQgLyogSlNBcnJheUJ1ZmZlclByb3Rv
dHlwZUlubGluZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBcnJheUJ1
ZmZlclByb3RvdHlwZUlubGluZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTNB
RkY5MkIyNDVBM0NGOTAwQzlCQTNCIC8qIEludGxMb2NhbGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSW50bExvY2FsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlBM0FGRjkyQzI0NUEzQ0ZBMDBDOUJBM0IgLyogSW50bExvY2FsZUNvbnN0cnVjdG9yLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEludGxMb2NhbGVDb25zdHJ1Y3Rvci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzI4OCw5ICs3MjkwLDkgQEAKIAkJCQkxNEEx
NTYzMDEwOTY2MzY1MDA2RkEyNjAgLyogRGF0ZUluc3RhbmNlQ2FjaGUuaCAqLywKIAkJCQlCQ0Qy
MDM0NzBFMTcxMzVFMDAyQzdFODIgLyogRGF0ZVByb3RvdHlwZS5jcHAgKi8sCiAJCQkJQkNEMjAz
NDgwRTE3MTM1RTAwMkM3RTgyIC8qIERhdGVQcm90b3R5cGUuaCAqLywKLQkJCQlGRTlGM0ZDNjI2
MTYzQ0E5MDA2OUU4OUYgLyogRGVmZXJUZXJtaW5hdGlvbi5oICovLAogCQkJCTUzNDYzODc2MUU3
MUUwNkUwMEYxMkFDMSAvKiBEZWZlcnJlZFdvcmtUaW1lci5jcHAgKi8sCiAJCQkJNTM0NjM4NzQx
RTcwRERFQzAwRjEyQUMxIC8qIERlZmVycmVkV29ya1RpbWVyLmggKi8sCisJCQkJRkU5RjNGQzYy
NjE2M0NBOTAwNjlFODlGIC8qIERlZmVyVGVybWluYXRpb24uaCAqLywKIAkJCQkxNjk5NDhFREU2
OEQ0MDU0QjAxRUY3OTcgLyogRGVmaW5lUHJvcGVydHlBdHRyaWJ1dGVzLmggKi8sCiAJCQkJNzM0
QjY1NTQyM0Y0QTMzMTAwQTA2OUQxIC8qIERlbGV0ZVByb3BlcnR5U2xvdC5oICovLAogCQkJCTBG
RTA1MDBGMUFBOTA5MTEwMEQzM0IzMyAvKiBEaXJlY3RBcmd1bWVudHMuY3BwICovLApAQCAtNzQ3
Niw2ICs3NDc4LDcgQEAKIAkJCQlFM0YyMTkzMzI0Qzc4ODJBMDAzQUU0NTMgLyogSW50bFNlZ21l
bnRzLmggKi8sCiAJCQkJRTNGMjE5MzIyNEM3ODgyQTAwM0FFNDUzIC8qIEludGxTZWdtZW50c1By
b3RvdHlwZS5jcHAgKi8sCiAJCQkJRTNGMjE5MzYyNEM3ODgyQjAwM0FFNDUzIC8qIEludGxTZWdt
ZW50c1Byb3RvdHlwZS5oICovLAorCQkJCUEzNzYxOTQwMjYyNTEyN0MwMENCQ0JBOSAvKiBJbnRs
V29ya2Fyb3VuZC5jcHAgKi8sCiAJCQkJMEYyNzVGMkMxRUNFMDc5NjAwNjIwRDQ3IC8qIEludHJp
bnNpYy5jcHAgKi8sCiAJCQkJODZCRjY0MkExNDhEQjJCNTAwNERFMzZBIC8qIEludHJpbnNpYy5o
ICovLAogCQkJCThCOUY2RDU1MUQ1OTEyRkEwMDFDNzM5RiAvKiBJdGVyYXRpb25LaW5kLmggKi8s
CkBAIC05MjMwLDcgKzkyMzMsNiBAQAogCQkJCThCQzA2NDhCMUUxQUJBOTQwMEIyQjhDQSAvKiBB
c3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCThC
QzA2NDhBMUUxQUJBN0IwMEIyQjhDQSAvKiBBc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBl
LmggaW4gSGVhZGVycyAqLywKIAkJCQk4QkMwNjQ5MjFFMUFEQ0M0MDBCMkI4Q0EgLyogQXN5bmNH
ZW5lcmF0b3JQcm90b3R5cGUuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDRTJGQUZGMjYwOTE3ODIw
MDBBNTEwRiAvKiBXZWFrR0NIYXNoVGFibGUuaCBpbiBIZWFkZXJzICovLAogCQkJCThCM0JGNUU0
MUUzRDM2OEIwMDc2QTg3QSAvKiBBc3luY0dlbmVyYXRvclByb3RvdHlwZS5sdXQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCThCQzA2NDk2MUUxRDg0NUMwMEIyQjhDQSAvKiBBc3luY0l0ZXJhdG9yUHJv
dG90eXBlLmggaW4gSGVhZGVycyAqLywKIAkJCQk2QTM4Q0ZBQTFFMzJCNUFCMDA2MDIwNkYgLyog
QXN5bmNTdGFja1RyYWNlLmggaW4gSGVhZGVycyAqLywKQEAgLTk0OTgsNiArOTUwMCw3IEBACiAJ
CQkJMEZDNzEyREYxN0NEODc3QzAwOENDOTNDIC8qIERlZmVycmVkQ29tcGlsYXRpb25DYWxsYmFj
ay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkU1MDY4NjUxQUUyNDYzOTAwMDlEQUI3IC8qIERlZmVy
cmVkU291cmNlRHVtcC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTM0NjM4NzUxRTcwRERFQzAwRjEy
QUMxIC8qIERlZmVycmVkV29ya1RpbWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRTlGM0ZDODI2
MTYzQ0E5MDA2OUU4OUYgLyogRGVmZXJUZXJtaW5hdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NDczREE0QTQ3NjRDNDVGRTg3MUIwNDg1IC8qIERlZmluZVByb3BlcnR5QXR0cmlidXRlcy5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMEZCQjczQkIxREVGODY0NTAwMkMwMDlFIC8qIERlbGV0ZUFsbENv
ZGVFZmZvcnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTczMTFGQTMyMjQwREIxRDMwMDNENDhEQiAv
KiBEZWxldGVCeUlkVmFyaWFudC5oIGluIEhlYWRlcnMgKi8sCkBAIC05NTExLDcgKzk1MTQsNiBA
QAogCQkJCTBGNjIwMTc3MTQzRkNEM0YwMDY4Qjc3QyAvKiBERkdBYnN0cmFjdFZhbHVlLmggaW4g
SGVhZGVycyAqLywKIAkJCQkwRjRGMTFFQjIwOUQ0MjY2MDA3MDk2NTQgLyogREZHQWJzdHJhY3RW
YWx1ZUNsb2JiZXJFcG9jaC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZEM0U0MDIxQjYxOEFBRjAw
QzgwRTFFIC8qIERGR0FkYXB0aXZlSW5mZXJyZWRQcm9wZXJ0eVZhbHVlV2F0Y2hwb2ludC5oIGlu
IEhlYWRlcnMgKi8sCi0JCQkJRkU5RjNGQjkyNjEzQzc4OTAwNjlFODlGIC8qIFJlc291cmNlRXho
YXVzdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEYxOEQzRDAxQjU1QTZFMDAwMkM1QzlGIC8q
IERGR0FkYXB0aXZlU3RydWN0dXJlV2F0Y2hwb2ludC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY2
NkUxNkIxNERGM0YxNjAwQjdCMkU0IC8qIERGR0FkamFjZW5jeUxpc3QuaCBpbiBIZWFkZXJzICov
LAogCQkJCTBGMUUzQTQ2MTUzNENCQUYwMDBGOTQ1NiAvKiBERkdBcmd1bWVudFBvc2l0aW9uLmgg
aW4gSGVhZGVycyAqLywKQEAgLTk2NjYsNyArOTY2OCw2IEBACiAJCQkJMEY5RTMyNjQxQjA1QUIw
NDAwODAxRUQ1IC8qIERGR1N0b3JlQmFycmllckluc2VydGlvblBoYXNlLmggaW4gSGVhZGVycyAq
LywKIAkJCQkwRkMyMENCNjE4NTJFMkM2MDBDOUU5NTQgLyogREZHU3RyZW5ndGhSZWR1Y3Rpb25Q
aGFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY2Mzk0NzgxNURDRTM0QjAwNkE1OTdDIC8qIERG
R1N0cnVjdHVyZUFic3RyYWN0VmFsdWUuaCBpbiBIZWFkZXJzICovLAotCQkJCUZFOUYzRkM4MjYx
NjNDQTkwMDY5RTg5RiAvKiBEZWZlclRlcm1pbmF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQkw
RjUwQUYzQzE5M0U4QjM5MDA2NzRFRTggLyogREZHU3RydWN0dXJlQ2xvYmJlclN0YXRlLmggaW4g
SGVhZGVycyAqLywKIAkJCQkwRjJGQ0NGRjE4QTYwMDcwMDAxQTI3RjggLyogREZHVGhyZWFkRGF0
YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZDMDk3QTIxNDZCMjhDQzAwQ0YyNDQyIC8qIERGR1Ro
dW5rcy5oIGluIEhlYWRlcnMgKi8sCkBAIC05Njk2LDcgKzk2OTcsNiBAQAogCQkJCTE0Mzg2QTc1
MURENjk4OTUwMDg2NTJDNCAvKiBEaXJlY3RFdmFsRXhlY3V0YWJsZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMEYzNzMwOEYxQzBDRDY4NTAwMDUyQkZBIC8qIERpc2FsbG93TWFjcm9TY3JhdGNoUmVn
aXN0ZXJVc2FnZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkU1NERFRkYxRThENzZGQTAwQTg5MkM1
IC8qIERpc2FsbG93U2NvcGUuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDRTJGQUZCMjYwOTE2RUYw
MDBBNTEwRiAvKiBXZWFrR0NTZXQuaCBpbiBIZWFkZXJzICovLAogCQkJCUZFNTRERUZCMUU4QzZE
ODgwMEE4OTJDNSAvKiBEaXNhbGxvd1ZNRW50cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGRjQy
NzMxMTU4RUJENTQwMDRDQjlGRiAvKiBEaXNhc3NlbWJsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUUzMTYxODEzMUVDNUZFMTcwMDA2QTIxOCAvKiBET01Bbm5vdGF0aW9uLmggaW4gSGVhZGVycyAq
LywKQEAgLTEwMzU0LDcgKzEwMzU0LDYgQEAKIAkJCQkxNEY3OUY3MDIxNkVBRkQyMDAwNDZEMzkg
LyogT3Bjb2RlLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTY0ODcyRTIxNDFEMDQ4MDBBQjBEM0Ug
LyogT3Bjb2RlSW5saW5lcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTRBNDY4MEQyMTZGQTU2QTAw
MEQyQjFBIC8qIE9wY29kZVNpemUuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDRTJGQUZEMjYwOTE2
RkYwMDBBNTEwRiAvKiBXZWFrR0NTZXRJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjJC
REMyQzE1MUZERTkxMDBDRDg5MTAgLyogT3BlcmFuZHMuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3
MDQ0N0VBMTdBMEJENDYwMEY1ODk4RSAvKiBPcGVyYW5kc0lubGluZXMuaCBpbiBIZWFkZXJzICov
LAogCQkJCUJDMThDNDQ4MEUxNkY1Q0QwMEIzNDQ2MCAvKiBPcGVyYXRpb25zLmggaW4gSGVhZGVy
cyAqLywKQEAgLTEwNDYxLDYgKzEwNDYwLDcgQEAKIAkJCQlBNUJBMTVFQTE4MjM0MEI0MDBBODJF
NjkgLyogUmVtb3RlSW5zcGVjdG9yQ29uc3RhbnRzLmggaW4gSGVhZGVycyAqLywKIAkJCQk5OTJG
NTZCNzFFNEU4NEIyMDAzNTk1M0IgLyogUmVtb3RlSW5zcGVjdG9yWFBDQ29ubmVjdGlvbi5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMEYyNEU1NTExN0VFMjc0OTAwQUJCMjE3IC8qIFJlcGF0Y2guaCBp
biBIZWFkZXJzICovLAorCQkJCUZFOUYzRkI5MjYxM0M3ODkwMDY5RTg5RiAvKiBSZXNvdXJjZUV4
aGF1c3Rpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTg2OUVCQ0I3MEU4QzZENEEwMDg3MjJDQyAv
KiBSZXN1bHRUeXBlLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTNCNjQyRjI1RDZGQjREMDAxQURE
QjQgLyogUm9vdE1hcmtSZWFzb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTBGMkM2M0FBMUU0RkE0
MkUwMEMxMzgzOSAvKiBSdW5uaW5nU2NvcGUuaCBpbiBIZWFkZXJzICovLApAQCAtMTA2ODcsOCAr
MTA2ODcsMTEgQEAKIAkJCQkwRjkxOUQyNjE1ODUzQ0UzMDA0QTRFN0QgLyogV2F0Y2hwb2ludC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJMTQyRTMxM0MxMzRGRjBBNjAwQUZBREI1IC8qIFdlYWsuaCBp
biBIZWFkZXJzICovLAogCQkJCTE0RTg0RjlGMTRFRTFBQ0MwMEQ2RDVENCAvKiBXZWFrQmxvY2su
aCBpbiBIZWFkZXJzICovLAorCQkJCUJDRTJGQUZGMjYwOTE3ODIwMDBBNTEwRiAvKiBXZWFrR0NI
YXNoVGFibGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTE0QkZDRTY5MTBDREIxRkMwMDM2NENDRSAv
KiBXZWFrR0NNYXAuaCBpbiBIZWFkZXJzICovLAogCQkJCUFEODZBOTNFMUFBNEQ4OEQwMDJGRTc3
RiAvKiBXZWFrR0NNYXBJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0UyRkFGQjI2MDkx
NkVGMDAwQTUxMEYgLyogV2Vha0dDU2V0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0UyRkFGRDI2
MDkxNkZGMDAwQTUxMEYgLyogV2Vha0dDU2V0SW5saW5lcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MTRGNzI1NjYxNEVFMjY1RTAwQjE2NTJCIC8qIFdlYWtIYW5kbGVPd25lci5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMTRFODRGQTIxNEVFMUFDQzAwRDZENUQ0IC8qIFdlYWtJbXBsLmggaW4gSGVhZGVy
cyAqLywKIAkJCQkxNEJFN0QzMzE3MTM1Q0Y0MDBEMTgwN0EgLyogV2Vha0lubGluZXMuaCBpbiBI
ZWFkZXJzICovLApAQCAtMTE1NjMsNiArMTE1NjYsNyBAQAogCQkJCTVDNDE5NjYyMjI3MEUwMDAw
MDQ3QjdDRCAvKiBJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlckNvbXBhdGliaWxpdHkuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJRTM5OUFFQzMyNTU5NDU3RjAwQjc4NDg1IC8qIEludGxEYXRlVGlt
ZUZvcm1hdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMzY2NDQxRTI1NDQwOUIzMDAwMTg3NkYg
LyogSW50bExpc3RGb3JtYXQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQTNFRTg1NDMyNjI1MTRC
MDAwRkM5QjhEIC8qIEludGxXb3JrYXJvdW5kLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUzOEU4
NzkwMjU0Qjk3ODQwMEY2RjlFNCAvKiBKU0RhdGVNYXRoLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTUzNkIzMTlFMUY3MzVGMTYwMDM3RkMzMyAvKiBMb3dMZXZlbEludGVycHJldGVyLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCURGQkMyQ0E2MjVFNkQ1QjkwMDgxQkREMSAvKiBTeW1ib2xTdHVic0Zv
clNhZmFyaUNvbXBhdGliaWxpdHkubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3Vy
Y2VzLnR4dAppbmRleCAyOGI1YjgzNjMyYjljMjliYzQ5ZjE5NjE2OTQ5MTNlNjE2N2RiYjRkLi5i
NjQ5MmRmZGNiNzVhYzFiNzZiYzA5MzFjYTZhMTE0ZDEyMDFlY2U2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L1NvdXJjZXMudHh0CkBAIC04NDksNiArODQ5LDcgQEAgcnVudGltZS9JbnRsU2VnbWVudGVyQ29u
c3RydWN0b3IuY3BwCiBydW50aW1lL0ludGxTZWdtZW50ZXJQcm90b3R5cGUuY3BwCiBydW50aW1l
L0ludGxTZWdtZW50cy5jcHAKIHJ1bnRpbWUvSW50bFNlZ21lbnRzUHJvdG90eXBlLmNwcAorcnVu
dGltZS9JbnRsV29ya2Fyb3VuZC5jcHAgQG5vLXVuaWZ5IC8vIENvbmZpbmUgVV9ISURFX0RSQUZU
X0FQSSdzIGVmZmVjdCB0byB0aGlzIGZpbGUuCiBydW50aW1lL0l0ZXJhdG9yT3BlcmF0aW9ucy5j
cHAKIHJ1bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwCiBydW50aW1lL0pTQXJyYXkuY3BwCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXIuY3BwCmluZGV4
IDJhZDc0Zjk0YmJlOGNhMTdjNzc1ODkyYWZiYzZmZWY3MTJhNjJiNTguLjkzYzliMjAzMjg0NzZj
YmZhYTA0MGNiYmUzODgzZWViYjI1MmYzYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxTZWdtZW50ZXIuY3BwCkBAIC0xMjUsNyArMTI1LDcgQEAgSlNWYWx1ZSBJ
bnRsU2VnbWVudGVyOjpzZWdtZW50KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFs
dWUgc3RyaW5nVmFsdWUKICAgICBhdXRvIHVwY29udmVydGVkQ2hhcmFjdGVycyA9IEJveDxWZWN0
b3I8VUNoYXI+Pjo6Y3JlYXRlKHN0cmluZy5jaGFyYWN0ZXJzV2l0aG91dE51bGxUZXJtaW5hdGlv
bigpKTsKIAogICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VSUk9SOwotICAgIGF1dG8g
c2VnbWVudGVyID0gc3RkOjp1bmlxdWVfcHRyPFVCcmVha0l0ZXJhdG9yLCBVQnJlYWtJdGVyYXRv
ckRlbGV0ZXI+KHVicmtfc2FmZUNsb25lKG1fc2VnbWVudGVyLmdldCgpLCBudWxscHRyLCBudWxs
cHRyLCAmc3RhdHVzKSk7CisgICAgYXV0byBzZWdtZW50ZXIgPSBzdGQ6OnVuaXF1ZV9wdHI8VUJy
ZWFrSXRlcmF0b3IsIFVCcmVha0l0ZXJhdG9yRGVsZXRlcj4oY2xvbmVVQnJlYWtJdGVyYXRvciht
X3NlZ21lbnRlci5nZXQoKSwgJnN0YXR1cykpOwogICAgIGlmIChVX0ZBSUxVUkUoc3RhdHVzKSkg
ewogICAgICAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiZmFpbGVkIHRv
IGluaXRpYWxpemUgU2VnbWVudHMiX3MpOwogICAgICAgICByZXR1cm4geyB9OwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlci5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlci5oCmluZGV4IGNkMGY0MjZjNDg5
NzU2YWFkNDk3MWU2OWM2ODExOWEzZjcwZTBmMTkuLmE1MjM5NTc1YTlmMzc5OTBjMmJiN2JjZmFm
ZGUwM2E3ODBhNzM1NGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxTZWdtZW50ZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudGVyLmgKQEAgLTc1LDQgKzc1LDggQEAgcHJpdmF0ZToKICAgICBHcmFudWxhcml0eSBt
X2dyYW51bGFyaXR5IHsgR3JhbnVsYXJpdHk6OkdyYXBoZW1lIH07CiB9OwogCisvLyBBYnN0cmFj
dGlvbiB0byBjYWxsIHVicmtfc2FmZUNsb25lIG9yIHVicmtfY2xvbmUgZGVwZW5kaW5nIG9uIElD
VSB2ZXJzaW9uLgorLy8gVGhpcyBpcyBpbXBsZW1lbnRlZCBpbiBJbnRsV29ya2Fyb3VuZC5jcHAg
aW4gb3JkZXIgdG8gY29uZmluZSBkcmFmdCBBUEkgdmlzaWJpbGl0eS4KK1VCcmVha0l0ZXJhdG9y
KiBjbG9uZVVCcmVha0l0ZXJhdG9yKGNvbnN0IFVCcmVha0l0ZXJhdG9yKiwgVUVycm9yQ29kZSop
OworCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxTZWdtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsU2VnbWVudHMuY3BwCmluZGV4IGI2YWJhMzJmYjgyMmU4NWJiZTc4MDg4YzA0ODI5NDgx
MTZhOGMzNTUuLjhiODE3OTFlNDEzMzE1ZjIzN2ZhYWE3OGY4ZDQ0MzQ4NTM2NGE4NDYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50cy5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzLmNwcApAQCAtMTAw
LDcgKzEwMCw3IEBAIEpTT2JqZWN0KiBJbnRsU2VnbWVudHM6OmNyZWF0ZVNlZ21lbnRJdGVyYXRv
cihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJF
X1RIUk9XX1NDT1BFKHZtKTsKIAogICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VSUk9S
OwotICAgIGF1dG8gc2VnbWVudGVyID0gc3RkOjp1bmlxdWVfcHRyPFVCcmVha0l0ZXJhdG9yLCBV
QnJlYWtJdGVyYXRvckRlbGV0ZXI+KHVicmtfc2FmZUNsb25lKG1fc2VnbWVudGVyLmdldCgpLCBu
dWxscHRyLCBudWxscHRyLCAmc3RhdHVzKSk7CisgICAgYXV0byBzZWdtZW50ZXIgPSBzdGQ6OnVu
aXF1ZV9wdHI8VUJyZWFrSXRlcmF0b3IsIFVCcmVha0l0ZXJhdG9yRGVsZXRlcj4oY2xvbmVVQnJl
YWtJdGVyYXRvcihtX3NlZ21lbnRlci5nZXQoKSwgJnN0YXR1cykpOwogICAgIGlmIChVX0ZBSUxV
UkUoc3RhdHVzKSkgewogICAgICAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAiZmFpbGVkIHRvIGluaXRpYWxpemUgU2VnbWVudEl0ZXJhdG9yIl9zKTsKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsV29ya2Fyb3VuZC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsV29y
a2Fyb3VuZC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTk0MmNjMzg2NDI3MjRjMjkzMmFlOWE0MjZkOTdhOGVi
MjUxMDE3NwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxXb3JrYXJvdW5kLmNwcApAQCAtMCwwICsxLDUwIEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIxIFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0YWlubWVudCBJbmMuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKworLy8gSUNVIDY5IGludHJvZHVjZXMgZHJhZnQgQVBJIHVicmtf
Y2xvbmUgYW5kIGRlcHJlY2F0ZXMgdWJya19zYWZlQ2xvbmUuCisjaWYgSEFWRShJQ1VfVUJSS19D
TE9ORSkgJiYgZGVmaW5lZChVX0hJREVfRFJBRlRfQVBJKQorI3VuZGVmIFVfSElERV9EUkFGVF9B
UEkKKyNlbmRpZgorI2luY2x1ZGUgPHVuaWNvZGUvdWJyay5oPgorI2lmIEhBVkUoSUNVX1VCUktf
Q0xPTkUpCisjZGVmaW5lIFVfSElERV9EUkFGVF9BUEkgMQorI2VuZGlmCisKK25hbWVzcGFjZSBK
U0MgeworCitVQnJlYWtJdGVyYXRvciogY2xvbmVVQnJlYWtJdGVyYXRvcihjb25zdCBVQnJlYWtJ
dGVyYXRvciosIFVFcnJvckNvZGUqKTsKKworVUJyZWFrSXRlcmF0b3IqIGNsb25lVUJyZWFrSXRl
cmF0b3IoY29uc3QgVUJyZWFrSXRlcmF0b3IqIGl0ZXJhdG9yLCBVRXJyb3JDb2RlKiBzdGF0dXMp
Cit7CisjaWYgSEFWRShJQ1VfVUJSS19DTE9ORSkKK3JldHVybiB1YnJrX2Nsb25lKGl0ZXJhdG9y
LCBzdGF0dXMpOworI2Vsc2UKK3JldHVybiB1YnJrX3NhZmVDbG9uZShpdGVyYXRvciwgbnVsbHB0
ciwgbnVsbHB0ciwgc3RhdHVzKTsKKyNlbmRpZgorfQorCit9IC8vIG5hbWVzcGFjZSBKU0MK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425817</attachid>
            <date>2021-04-12 17:30:58 -0700</date>
            <delta_ts>2021-04-12 17:50:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224093-20210412173058.patch</filename>
            <type>text/plain</type>
            <size>16066</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1ODM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
YzU3YmM0MjdmNTM5ZjMyMzNjY2JhM2JlYjE2YWYyZTc4NjRhNzJjLi44MmQzZjFhMmFiYzMwOWZk
OGNiZTA0MWQ2YzY4ZTNhMjhjZmIxMzE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMCBAQAorMjAyMS0wNC0xMiAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CisKKyAgICAgICAgSUNVIDY5IGRlcHJlY2F0ZXMgdWJya19zYWZlQ2xvbmUgaW4gZmF2
b3Igb2YgdWJya19jbG9uZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI0MDkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgSW4gYSBzaGluaW5nIGV4YW1wbGUgb2YgImRpc2FwcG9pbnRpbmcgbGlicmFyeSBw
cmFjdGljZXMiLCBJQ1UgNjkgZGVwcmVjYXRlcyB1YnJrX3NhZmVDbG9uZSBpbiBmYXZvciBvZgor
ICAgICAgICBhIG5ldyAqZHJhZnQqIEFQSSB1YnJrX2Nsb25lLCBtZWFuaW5nIHRoYXQgbm8gZnVu
Y3Rpb24gd2l0aCB0aGlzIGZ1bmN0aW9uYWxpdHkgaXMgZXhwb3NlZCBieSBkZWZhdWx0LgorCisg
ICAgICAgIFRoaXMgcGF0Y2ggaW50cm9kdWNlcyBhIGZ1bmN0aW9uIGNsb25lVUJyZWFrSXRlcmF0
b3IgdG8gYWJzdHJhY3Qgb3ZlciB0aGlzIGNoYW5nZTsgaG93ZXZlciwgc2luY2Ugd2UgbmVlZCB0
bzoKKworICAgICAgICAgIDEuIGNvbmZpbmUgdGhlIGVmZmVjdHMgb2YgZGlzYWJsaW5nIFVfSElE
RV9EUkFGVF9BUEkgdG8gYSBub24tdW5pZmllZCBpbXBsZW1lbnRhdGlvbiBmaWxlCisgICAgICAg
ICAgMi4gc3RpbGwgYmUgYWJsZSB0byBpbmNsdWRlIHVicmsuaCBmcm9tIEludGxTZWdtZW50ZXIu
aCB0byBpbnN0YW50aWF0ZSBJQ1VEZWxldGVyPHVicmtfY2xvc2U+ICgqbm90KiBgY2xvbmVgISkK
KworICAgICAgICAuLi50aGUgbmV3IGhlbHBlciBmdW5jdGlvbiBpcyBpbnRyb2R1Y2VkIGluIGEg
KmhlYWRlcmxlc3MqIGltcGxlbWVudGF0aW9uIGZpbGUsIEludGxXb3JrYXJvdW5kLmNwcC4KKwor
ICAgICAgICAqIEphdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAg
ICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcDoK
KyAgICAgICAgKEpTQzo6SW50bFNlZ21lbnRlcjo6c2VnbWVudCBjb25zdCk6CisgICAgICAgICog
cnVudGltZS9JbnRsU2VnbWVudGVyLmg6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudHMu
Y3BwOgorICAgICAgICAoSlNDOjpJbnRsU2VnbWVudHM6OmNyZWF0ZVNlZ21lbnRJdGVyYXRvcik6
CisgICAgICAgICogcnVudGltZS9JbnRsV29ya2Fyb3VuZC5jcHA6IEFkZGVkLgorICAgICAgICAo
SlNDOjpjbG9uZVVCcmVha0l0ZXJhdG9yKToKKwogMjAyMS0wNC0xMCAgWXVzdWtlIFN1enVraSAg
PHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIEIzIHJlZHVjZS1kb3VibGUtdG8t
ZmxvYXQgc2hvdWxkIHJlZHVjZSBvbmx5IHdoZW4gY29uc3RhbnQgZG91YmxlIGlzIGNhbm9uaWNh
bCBvbmUgdG8gcmVkdWNlZCBmbG9hdCB2YWx1ZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCBhNTE4ZTZjYjFmMTA1YTNkN2RiY2ZiZmE5YTA2NjdhNTlhYjg5ZWQ5Li5hMTNjMmRjMmY2
ZmRlMDE3Zjg0NTUzMmMwMzE4YjQ1OTNiY2QyZGY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagpAQCAtMTQwMiw2ICsxNDAyLDcgQEAKIAkJQTFENzkyRkYxQjQzODY0QjAwNDUxNkY1IC8q
IEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTFENzkyRjkxQjQzODY0QjAwNDUxNkY1IC8qIEludGxOdW1i
ZXJGb3JtYXRDb25zdHJ1Y3Rvci5oICovOyB9OwogCQlBMUQ3OTMwMTFCNDM4NjRCMDA0NTE2RjUg
LyogSW50bE51bWJlckZvcm1hdFByb3RvdHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTFENzkyRkIxQjQzODY0QjAwNDUxNkY1IC8qIEludGxOdW1i
ZXJGb3JtYXRQcm90b3R5cGUuaCAqLzsgfTsKIAkJQTM4RDI1MEUyNTgwMEQ0NDAwNDJCRkREIC8q
IEpTQXJyYXlCdWZmZXJQcm90b3R5cGVJbmxpbmVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMzhEMjUwRDI1ODAwRDQzMDA0MkJGREQgLyogSlNBcnJh
eUJ1ZmZlclByb3RvdHlwZUlubGluZXMuaCAqLzsgfTsKKwkJQTNFRTg1NDMyNjI1MTRCMDAwRkM5
QjhEIC8qIEludGxXb3JrYXJvdW5kLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEEzNzYxOTQwMjYyNTEyN0MwMENCQ0JBOSAvKiBJbnRsV29ya2Fyb3Vu
ZC5jcHAgKi87IH07CiAJCUEzRkY5QkM3MjIzNDc0OTEwMEIxQTlBQiAvKiBZYXJyRmxhZ3MuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEzRkY5QkM1MjIz
NDc0NjYwMEIxQTlBQiAvKiBZYXJyRmxhZ3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQlBNTAzRkExQTE4OEUwRkIwMDAxMTBGMTQgLyogSmF2YVNj
cmlwdENhbGxGcmFtZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQTUwM0ZBMTQxODhFMEZBRjAwMTEwRjE0IC8qIEphdmFTY3JpcHRDYWxsRnJhbWUuaCAq
LzsgfTsKIAkJQTUwM0ZBMUUxODhFMEZCMDAwMTEwRjE0IC8qIEpTSmF2YVNjcmlwdENhbGxGcmFt
ZVByb3RvdHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTUwM0ZBMTgxODhFMEZCMDAwMTEwRjE0IC8qIEpTSmF2YVNjcmlwdENhbGxGcmFtZVByb3Rv
dHlwZS5oICovOyB9OwpAQCAtNDQxOSw2ICs0NDIwLDcgQEAKIAkJQTFFMDQ1MUIxQzI1QjRCMTAw
QkI2NjNDIC8qIFN0cmluZ1Byb3RvdHlwZS5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNj
cmlwdDsgcGF0aCA9IFN0cmluZ1Byb3RvdHlwZS5qczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQTFGRTFFQjAxQzJDNTM3RTAwQTI4OUZGIC8qIERhdGVQcm90b3R5cGUuanMgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSBEYXRlUHJvdG90eXBlLmpzOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMjc5NThEN0ZBMTE0MkIwQUM5RTM2NEQgLyogV2Fz
bUNvbnRleHRJbmxpbmVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdhc21D
b250ZXh0SW5saW5lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMzc2MTk0MDI2
MjUxMjdDMDBDQkNCQTkgLyogSW50bFdvcmthcm91bmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSW50bFdvcmthcm91bmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlBMzhEMjUwRDI1ODAwRDQzMDA0MkJGREQgLyogSlNBcnJheUJ1ZmZlclByb3Rv
dHlwZUlubGluZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBcnJheUJ1
ZmZlclByb3RvdHlwZUlubGluZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTNB
RkY5MkIyNDVBM0NGOTAwQzlCQTNCIC8qIEludGxMb2NhbGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSW50bExvY2FsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlBM0FGRjkyQzI0NUEzQ0ZBMDBDOUJBM0IgLyogSW50bExvY2FsZUNvbnN0cnVjdG9yLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEludGxMb2NhbGVDb25zdHJ1Y3Rvci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzI4OCw5ICs3MjkwLDkgQEAKIAkJCQkxNEEx
NTYzMDEwOTY2MzY1MDA2RkEyNjAgLyogRGF0ZUluc3RhbmNlQ2FjaGUuaCAqLywKIAkJCQlCQ0Qy
MDM0NzBFMTcxMzVFMDAyQzdFODIgLyogRGF0ZVByb3RvdHlwZS5jcHAgKi8sCiAJCQkJQkNEMjAz
NDgwRTE3MTM1RTAwMkM3RTgyIC8qIERhdGVQcm90b3R5cGUuaCAqLywKLQkJCQlGRTlGM0ZDNjI2
MTYzQ0E5MDA2OUU4OUYgLyogRGVmZXJUZXJtaW5hdGlvbi5oICovLAogCQkJCTUzNDYzODc2MUU3
MUUwNkUwMEYxMkFDMSAvKiBEZWZlcnJlZFdvcmtUaW1lci5jcHAgKi8sCiAJCQkJNTM0NjM4NzQx
RTcwRERFQzAwRjEyQUMxIC8qIERlZmVycmVkV29ya1RpbWVyLmggKi8sCisJCQkJRkU5RjNGQzYy
NjE2M0NBOTAwNjlFODlGIC8qIERlZmVyVGVybWluYXRpb24uaCAqLywKIAkJCQkxNjk5NDhFREU2
OEQ0MDU0QjAxRUY3OTcgLyogRGVmaW5lUHJvcGVydHlBdHRyaWJ1dGVzLmggKi8sCiAJCQkJNzM0
QjY1NTQyM0Y0QTMzMTAwQTA2OUQxIC8qIERlbGV0ZVByb3BlcnR5U2xvdC5oICovLAogCQkJCTBG
RTA1MDBGMUFBOTA5MTEwMEQzM0IzMyAvKiBEaXJlY3RBcmd1bWVudHMuY3BwICovLApAQCAtNzQ3
Niw2ICs3NDc4LDcgQEAKIAkJCQlFM0YyMTkzMzI0Qzc4ODJBMDAzQUU0NTMgLyogSW50bFNlZ21l
bnRzLmggKi8sCiAJCQkJRTNGMjE5MzIyNEM3ODgyQTAwM0FFNDUzIC8qIEludGxTZWdtZW50c1By
b3RvdHlwZS5jcHAgKi8sCiAJCQkJRTNGMjE5MzYyNEM3ODgyQjAwM0FFNDUzIC8qIEludGxTZWdt
ZW50c1Byb3RvdHlwZS5oICovLAorCQkJCUEzNzYxOTQwMjYyNTEyN0MwMENCQ0JBOSAvKiBJbnRs
V29ya2Fyb3VuZC5jcHAgKi8sCiAJCQkJMEYyNzVGMkMxRUNFMDc5NjAwNjIwRDQ3IC8qIEludHJp
bnNpYy5jcHAgKi8sCiAJCQkJODZCRjY0MkExNDhEQjJCNTAwNERFMzZBIC8qIEludHJpbnNpYy5o
ICovLAogCQkJCThCOUY2RDU1MUQ1OTEyRkEwMDFDNzM5RiAvKiBJdGVyYXRpb25LaW5kLmggKi8s
CkBAIC05MjMwLDcgKzkyMzMsNiBAQAogCQkJCThCQzA2NDhCMUUxQUJBOTQwMEIyQjhDQSAvKiBB
c3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCThC
QzA2NDhBMUUxQUJBN0IwMEIyQjhDQSAvKiBBc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBl
LmggaW4gSGVhZGVycyAqLywKIAkJCQk4QkMwNjQ5MjFFMUFEQ0M0MDBCMkI4Q0EgLyogQXN5bmNH
ZW5lcmF0b3JQcm90b3R5cGUuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDRTJGQUZGMjYwOTE3ODIw
MDBBNTEwRiAvKiBXZWFrR0NIYXNoVGFibGUuaCBpbiBIZWFkZXJzICovLAogCQkJCThCM0JGNUU0
MUUzRDM2OEIwMDc2QTg3QSAvKiBBc3luY0dlbmVyYXRvclByb3RvdHlwZS5sdXQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCThCQzA2NDk2MUUxRDg0NUMwMEIyQjhDQSAvKiBBc3luY0l0ZXJhdG9yUHJv
dG90eXBlLmggaW4gSGVhZGVycyAqLywKIAkJCQk2QTM4Q0ZBQTFFMzJCNUFCMDA2MDIwNkYgLyog
QXN5bmNTdGFja1RyYWNlLmggaW4gSGVhZGVycyAqLywKQEAgLTk0OTgsNiArOTUwMCw3IEBACiAJ
CQkJMEZDNzEyREYxN0NEODc3QzAwOENDOTNDIC8qIERlZmVycmVkQ29tcGlsYXRpb25DYWxsYmFj
ay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkU1MDY4NjUxQUUyNDYzOTAwMDlEQUI3IC8qIERlZmVy
cmVkU291cmNlRHVtcC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTM0NjM4NzUxRTcwRERFQzAwRjEy
QUMxIC8qIERlZmVycmVkV29ya1RpbWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRTlGM0ZDODI2
MTYzQ0E5MDA2OUU4OUYgLyogRGVmZXJUZXJtaW5hdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NDczREE0QTQ3NjRDNDVGRTg3MUIwNDg1IC8qIERlZmluZVByb3BlcnR5QXR0cmlidXRlcy5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMEZCQjczQkIxREVGODY0NTAwMkMwMDlFIC8qIERlbGV0ZUFsbENv
ZGVFZmZvcnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTczMTFGQTMyMjQwREIxRDMwMDNENDhEQiAv
KiBEZWxldGVCeUlkVmFyaWFudC5oIGluIEhlYWRlcnMgKi8sCkBAIC05NTExLDcgKzk1MTQsNiBA
QAogCQkJCTBGNjIwMTc3MTQzRkNEM0YwMDY4Qjc3QyAvKiBERkdBYnN0cmFjdFZhbHVlLmggaW4g
SGVhZGVycyAqLywKIAkJCQkwRjRGMTFFQjIwOUQ0MjY2MDA3MDk2NTQgLyogREZHQWJzdHJhY3RW
YWx1ZUNsb2JiZXJFcG9jaC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZEM0U0MDIxQjYxOEFBRjAw
QzgwRTFFIC8qIERGR0FkYXB0aXZlSW5mZXJyZWRQcm9wZXJ0eVZhbHVlV2F0Y2hwb2ludC5oIGlu
IEhlYWRlcnMgKi8sCi0JCQkJRkU5RjNGQjkyNjEzQzc4OTAwNjlFODlGIC8qIFJlc291cmNlRXho
YXVzdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEYxOEQzRDAxQjU1QTZFMDAwMkM1QzlGIC8q
IERGR0FkYXB0aXZlU3RydWN0dXJlV2F0Y2hwb2ludC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY2
NkUxNkIxNERGM0YxNjAwQjdCMkU0IC8qIERGR0FkamFjZW5jeUxpc3QuaCBpbiBIZWFkZXJzICov
LAogCQkJCTBGMUUzQTQ2MTUzNENCQUYwMDBGOTQ1NiAvKiBERkdBcmd1bWVudFBvc2l0aW9uLmgg
aW4gSGVhZGVycyAqLywKQEAgLTk2NjYsNyArOTY2OCw2IEBACiAJCQkJMEY5RTMyNjQxQjA1QUIw
NDAwODAxRUQ1IC8qIERGR1N0b3JlQmFycmllckluc2VydGlvblBoYXNlLmggaW4gSGVhZGVycyAq
LywKIAkJCQkwRkMyMENCNjE4NTJFMkM2MDBDOUU5NTQgLyogREZHU3RyZW5ndGhSZWR1Y3Rpb25Q
aGFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY2Mzk0NzgxNURDRTM0QjAwNkE1OTdDIC8qIERG
R1N0cnVjdHVyZUFic3RyYWN0VmFsdWUuaCBpbiBIZWFkZXJzICovLAotCQkJCUZFOUYzRkM4MjYx
NjNDQTkwMDY5RTg5RiAvKiBEZWZlclRlcm1pbmF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQkw
RjUwQUYzQzE5M0U4QjM5MDA2NzRFRTggLyogREZHU3RydWN0dXJlQ2xvYmJlclN0YXRlLmggaW4g
SGVhZGVycyAqLywKIAkJCQkwRjJGQ0NGRjE4QTYwMDcwMDAxQTI3RjggLyogREZHVGhyZWFkRGF0
YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZDMDk3QTIxNDZCMjhDQzAwQ0YyNDQyIC8qIERGR1Ro
dW5rcy5oIGluIEhlYWRlcnMgKi8sCkBAIC05Njk2LDcgKzk2OTcsNiBAQAogCQkJCTE0Mzg2QTc1
MURENjk4OTUwMDg2NTJDNCAvKiBEaXJlY3RFdmFsRXhlY3V0YWJsZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMEYzNzMwOEYxQzBDRDY4NTAwMDUyQkZBIC8qIERpc2FsbG93TWFjcm9TY3JhdGNoUmVn
aXN0ZXJVc2FnZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkU1NERFRkYxRThENzZGQTAwQTg5MkM1
IC8qIERpc2FsbG93U2NvcGUuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDRTJGQUZCMjYwOTE2RUYw
MDBBNTEwRiAvKiBXZWFrR0NTZXQuaCBpbiBIZWFkZXJzICovLAogCQkJCUZFNTRERUZCMUU4QzZE
ODgwMEE4OTJDNSAvKiBEaXNhbGxvd1ZNRW50cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGRjQy
NzMxMTU4RUJENTQwMDRDQjlGRiAvKiBEaXNhc3NlbWJsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUUzMTYxODEzMUVDNUZFMTcwMDA2QTIxOCAvKiBET01Bbm5vdGF0aW9uLmggaW4gSGVhZGVycyAq
LywKQEAgLTEwMzU0LDcgKzEwMzU0LDYgQEAKIAkJCQkxNEY3OUY3MDIxNkVBRkQyMDAwNDZEMzkg
LyogT3Bjb2RlLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTY0ODcyRTIxNDFEMDQ4MDBBQjBEM0Ug
LyogT3Bjb2RlSW5saW5lcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTRBNDY4MEQyMTZGQTU2QTAw
MEQyQjFBIC8qIE9wY29kZVNpemUuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDRTJGQUZEMjYwOTE2
RkYwMDBBNTEwRiAvKiBXZWFrR0NTZXRJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjJC
REMyQzE1MUZERTkxMDBDRDg5MTAgLyogT3BlcmFuZHMuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3
MDQ0N0VBMTdBMEJENDYwMEY1ODk4RSAvKiBPcGVyYW5kc0lubGluZXMuaCBpbiBIZWFkZXJzICov
LAogCQkJCUJDMThDNDQ4MEUxNkY1Q0QwMEIzNDQ2MCAvKiBPcGVyYXRpb25zLmggaW4gSGVhZGVy
cyAqLywKQEAgLTEwNDYxLDYgKzEwNDYwLDcgQEAKIAkJCQlBNUJBMTVFQTE4MjM0MEI0MDBBODJF
NjkgLyogUmVtb3RlSW5zcGVjdG9yQ29uc3RhbnRzLmggaW4gSGVhZGVycyAqLywKIAkJCQk5OTJG
NTZCNzFFNEU4NEIyMDAzNTk1M0IgLyogUmVtb3RlSW5zcGVjdG9yWFBDQ29ubmVjdGlvbi5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMEYyNEU1NTExN0VFMjc0OTAwQUJCMjE3IC8qIFJlcGF0Y2guaCBp
biBIZWFkZXJzICovLAorCQkJCUZFOUYzRkI5MjYxM0M3ODkwMDY5RTg5RiAvKiBSZXNvdXJjZUV4
aGF1c3Rpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTg2OUVCQ0I3MEU4QzZENEEwMDg3MjJDQyAv
KiBSZXN1bHRUeXBlLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTNCNjQyRjI1RDZGQjREMDAxQURE
QjQgLyogUm9vdE1hcmtSZWFzb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTBGMkM2M0FBMUU0RkE0
MkUwMEMxMzgzOSAvKiBSdW5uaW5nU2NvcGUuaCBpbiBIZWFkZXJzICovLApAQCAtMTA2ODcsOCAr
MTA2ODcsMTEgQEAKIAkJCQkwRjkxOUQyNjE1ODUzQ0UzMDA0QTRFN0QgLyogV2F0Y2hwb2ludC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJMTQyRTMxM0MxMzRGRjBBNjAwQUZBREI1IC8qIFdlYWsuaCBp
biBIZWFkZXJzICovLAogCQkJCTE0RTg0RjlGMTRFRTFBQ0MwMEQ2RDVENCAvKiBXZWFrQmxvY2su
aCBpbiBIZWFkZXJzICovLAorCQkJCUJDRTJGQUZGMjYwOTE3ODIwMDBBNTEwRiAvKiBXZWFrR0NI
YXNoVGFibGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTE0QkZDRTY5MTBDREIxRkMwMDM2NENDRSAv
KiBXZWFrR0NNYXAuaCBpbiBIZWFkZXJzICovLAogCQkJCUFEODZBOTNFMUFBNEQ4OEQwMDJGRTc3
RiAvKiBXZWFrR0NNYXBJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0UyRkFGQjI2MDkx
NkVGMDAwQTUxMEYgLyogV2Vha0dDU2V0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0UyRkFGRDI2
MDkxNkZGMDAwQTUxMEYgLyogV2Vha0dDU2V0SW5saW5lcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MTRGNzI1NjYxNEVFMjY1RTAwQjE2NTJCIC8qIFdlYWtIYW5kbGVPd25lci5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMTRFODRGQTIxNEVFMUFDQzAwRDZENUQ0IC8qIFdlYWtJbXBsLmggaW4gSGVhZGVy
cyAqLywKIAkJCQkxNEJFN0QzMzE3MTM1Q0Y0MDBEMTgwN0EgLyogV2Vha0lubGluZXMuaCBpbiBI
ZWFkZXJzICovLApAQCAtMTE1NjMsNiArMTE1NjYsNyBAQAogCQkJCTVDNDE5NjYyMjI3MEUwMDAw
MDQ3QjdDRCAvKiBJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlckNvbXBhdGliaWxpdHkuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJRTM5OUFFQzMyNTU5NDU3RjAwQjc4NDg1IC8qIEludGxEYXRlVGlt
ZUZvcm1hdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMzY2NDQxRTI1NDQwOUIzMDAwMTg3NkYg
LyogSW50bExpc3RGb3JtYXQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQTNFRTg1NDMyNjI1MTRC
MDAwRkM5QjhEIC8qIEludGxXb3JrYXJvdW5kLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUzOEU4
NzkwMjU0Qjk3ODQwMEY2RjlFNCAvKiBKU0RhdGVNYXRoLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTUzNkIzMTlFMUY3MzVGMTYwMDM3RkMzMyAvKiBMb3dMZXZlbEludGVycHJldGVyLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCURGQkMyQ0E2MjVFNkQ1QjkwMDgxQkREMSAvKiBTeW1ib2xTdHVic0Zv
clNhZmFyaUNvbXBhdGliaWxpdHkubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3Vy
Y2VzLnR4dAppbmRleCAyOGI1YjgzNjMyYjljMjliYzQ5ZjE5NjE2OTQ5MTNlNjE2N2RiYjRkLi5i
NjQ5MmRmZGNiNzVhYzFiNzZiYzA5MzFjYTZhMTE0ZDEyMDFlY2U2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L1NvdXJjZXMudHh0CkBAIC04NDksNiArODQ5LDcgQEAgcnVudGltZS9JbnRsU2VnbWVudGVyQ29u
c3RydWN0b3IuY3BwCiBydW50aW1lL0ludGxTZWdtZW50ZXJQcm90b3R5cGUuY3BwCiBydW50aW1l
L0ludGxTZWdtZW50cy5jcHAKIHJ1bnRpbWUvSW50bFNlZ21lbnRzUHJvdG90eXBlLmNwcAorcnVu
dGltZS9JbnRsV29ya2Fyb3VuZC5jcHAgQG5vLXVuaWZ5IC8vIENvbmZpbmUgVV9ISURFX0RSQUZU
X0FQSSdzIGVmZmVjdCB0byB0aGlzIGZpbGUuCiBydW50aW1lL0l0ZXJhdG9yT3BlcmF0aW9ucy5j
cHAKIHJ1bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwCiBydW50aW1lL0pTQXJyYXkuY3BwCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXIuY3BwCmluZGV4
IDJhZDc0Zjk0YmJlOGNhMTdjNzc1ODkyYWZiYzZmZWY3MTJhNjJiNTguLjkzYzliMjAzMjg0NzZj
YmZhYTA0MGNiYmUzODgzZWViYjI1MmYzYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxTZWdtZW50ZXIuY3BwCkBAIC0xMjUsNyArMTI1LDcgQEAgSlNWYWx1ZSBJ
bnRsU2VnbWVudGVyOjpzZWdtZW50KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFs
dWUgc3RyaW5nVmFsdWUKICAgICBhdXRvIHVwY29udmVydGVkQ2hhcmFjdGVycyA9IEJveDxWZWN0
b3I8VUNoYXI+Pjo6Y3JlYXRlKHN0cmluZy5jaGFyYWN0ZXJzV2l0aG91dE51bGxUZXJtaW5hdGlv
bigpKTsKIAogICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VSUk9SOwotICAgIGF1dG8g
c2VnbWVudGVyID0gc3RkOjp1bmlxdWVfcHRyPFVCcmVha0l0ZXJhdG9yLCBVQnJlYWtJdGVyYXRv
ckRlbGV0ZXI+KHVicmtfc2FmZUNsb25lKG1fc2VnbWVudGVyLmdldCgpLCBudWxscHRyLCBudWxs
cHRyLCAmc3RhdHVzKSk7CisgICAgYXV0byBzZWdtZW50ZXIgPSBzdGQ6OnVuaXF1ZV9wdHI8VUJy
ZWFrSXRlcmF0b3IsIFVCcmVha0l0ZXJhdG9yRGVsZXRlcj4oY2xvbmVVQnJlYWtJdGVyYXRvciht
X3NlZ21lbnRlci5nZXQoKSwgJnN0YXR1cykpOwogICAgIGlmIChVX0ZBSUxVUkUoc3RhdHVzKSkg
ewogICAgICAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiZmFpbGVkIHRv
IGluaXRpYWxpemUgU2VnbWVudHMiX3MpOwogICAgICAgICByZXR1cm4geyB9OwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlci5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlci5oCmluZGV4IGNkMGY0MjZjNDg5
NzU2YWFkNDk3MWU2OWM2ODExOWEzZjcwZTBmMTkuLmE1MjM5NTc1YTlmMzc5OTBjMmJiN2JjZmFm
ZGUwM2E3ODBhNzM1NGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxTZWdtZW50ZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudGVyLmgKQEAgLTc1LDQgKzc1LDggQEAgcHJpdmF0ZToKICAgICBHcmFudWxhcml0eSBt
X2dyYW51bGFyaXR5IHsgR3JhbnVsYXJpdHk6OkdyYXBoZW1lIH07CiB9OwogCisvLyBBYnN0cmFj
dGlvbiB0byBjYWxsIHVicmtfc2FmZUNsb25lIG9yIHVicmtfY2xvbmUgZGVwZW5kaW5nIG9uIElD
VSB2ZXJzaW9uLgorLy8gVGhpcyBpcyBpbXBsZW1lbnRlZCBpbiBJbnRsV29ya2Fyb3VuZC5jcHAg
aW4gb3JkZXIgdG8gY29uZmluZSBkcmFmdCBBUEkgdmlzaWJpbGl0eS4KK1VCcmVha0l0ZXJhdG9y
KiBjbG9uZVVCcmVha0l0ZXJhdG9yKGNvbnN0IFVCcmVha0l0ZXJhdG9yKiwgVUVycm9yQ29kZSop
OworCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxTZWdtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsU2VnbWVudHMuY3BwCmluZGV4IGI2YWJhMzJmYjgyMmU4NWJiZTc4MDg4YzA0ODI5NDgx
MTZhOGMzNTUuLjhiODE3OTFlNDEzMzE1ZjIzN2ZhYWE3OGY4ZDQ0MzQ4NTM2NGE4NDYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50cy5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzLmNwcApAQCAtMTAw
LDcgKzEwMCw3IEBAIEpTT2JqZWN0KiBJbnRsU2VnbWVudHM6OmNyZWF0ZVNlZ21lbnRJdGVyYXRv
cihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJF
X1RIUk9XX1NDT1BFKHZtKTsKIAogICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VSUk9S
OwotICAgIGF1dG8gc2VnbWVudGVyID0gc3RkOjp1bmlxdWVfcHRyPFVCcmVha0l0ZXJhdG9yLCBV
QnJlYWtJdGVyYXRvckRlbGV0ZXI+KHVicmtfc2FmZUNsb25lKG1fc2VnbWVudGVyLmdldCgpLCBu
dWxscHRyLCBudWxscHRyLCAmc3RhdHVzKSk7CisgICAgYXV0byBzZWdtZW50ZXIgPSBzdGQ6OnVu
aXF1ZV9wdHI8VUJyZWFrSXRlcmF0b3IsIFVCcmVha0l0ZXJhdG9yRGVsZXRlcj4oY2xvbmVVQnJl
YWtJdGVyYXRvcihtX3NlZ21lbnRlci5nZXQoKSwgJnN0YXR1cykpOwogICAgIGlmIChVX0ZBSUxV
UkUoc3RhdHVzKSkgewogICAgICAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAiZmFpbGVkIHRvIGluaXRpYWxpemUgU2VnbWVudEl0ZXJhdG9yIl9zKTsKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsV29ya2Fyb3VuZC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsV29y
a2Fyb3VuZC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmFjYzA4NDM4NDQ2YTdkZTRmZGI0YWU4OTMwNTJkODA5
YmQwMzRhYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxXb3JrYXJvdW5kLmNwcApAQCAtMCwwICsxLDU0IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIxIFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0YWlubWVudCBJbmMuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKworLy8gSUNVIDY5IGludHJvZHVjZXMgZHJhZnQgQVBJIHVicmtf
Y2xvbmUgYW5kIGRlcHJlY2F0ZXMgdWJya19zYWZlQ2xvbmUuCisjaWYgIWRlZmluZWQoSEFWRV9J
Q1VfVUJSS19DTE9ORSkgJiYgVV9JQ1VfVkVSU0lPTl9NQUpPUl9OVU0gPj0gNjkKKyNkZWZpbmUg
SEFWRV9JQ1VfVUJSS19DTE9ORSAxCisjZW5kaWYKKworI2lmIEhBVkUoSUNVX1VCUktfQ0xPTkUp
ICYmIGRlZmluZWQoVV9ISURFX0RSQUZUX0FQSSkKKyN1bmRlZiBVX0hJREVfRFJBRlRfQVBJCisj
ZW5kaWYKKyNpbmNsdWRlIDx1bmljb2RlL3VicmsuaD4KKyNpZiBIQVZFKElDVV9VQlJLX0NMT05F
KQorI2RlZmluZSBVX0hJREVfRFJBRlRfQVBJIDEKKyNlbmRpZgorCituYW1lc3BhY2UgSlNDIHsK
KworVUJyZWFrSXRlcmF0b3IqIGNsb25lVUJyZWFrSXRlcmF0b3IoY29uc3QgVUJyZWFrSXRlcmF0
b3IqLCBVRXJyb3JDb2RlKik7CisKK1VCcmVha0l0ZXJhdG9yKiBjbG9uZVVCcmVha0l0ZXJhdG9y
KGNvbnN0IFVCcmVha0l0ZXJhdG9yKiBpdGVyYXRvciwgVUVycm9yQ29kZSogc3RhdHVzKQorewor
I2lmIEhBVkUoSUNVX1VCUktfQ0xPTkUpCityZXR1cm4gdWJya19jbG9uZShpdGVyYXRvciwgc3Rh
dHVzKTsKKyNlbHNlCityZXR1cm4gdWJya19zYWZlQ2xvbmUoaXRlcmF0b3IsIG51bGxwdHIsIG51
bGxwdHIsIHN0YXR1cyk7CisjZW5kaWYKK30KKworfSAvLyBuYW1lc3BhY2UgSlNDCg==
</data>
<flag name="commit-queue"
          id="445892"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425820</attachid>
            <date>2021-04-12 17:49:31 -0700</date>
            <delta_ts>2021-04-12 18:34:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224093-20210412174930.patch</filename>
            <type>text/plain</type>
            <size>16098</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1ODM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
YzU3YmM0MjdmNTM5ZjMyMzNjY2JhM2JlYjE2YWYyZTc4NjRhNzJjLi44MmQzZjFhMmFiYzMwOWZk
OGNiZTA0MWQ2YzY4ZTNhMjhjZmIxMzE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMCBAQAorMjAyMS0wNC0xMiAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CisKKyAgICAgICAgSUNVIDY5IGRlcHJlY2F0ZXMgdWJya19zYWZlQ2xvbmUgaW4gZmF2
b3Igb2YgdWJya19jbG9uZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI0MDkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgSW4gYSBzaGluaW5nIGV4YW1wbGUgb2YgImRpc2FwcG9pbnRpbmcgbGlicmFyeSBw
cmFjdGljZXMiLCBJQ1UgNjkgZGVwcmVjYXRlcyB1YnJrX3NhZmVDbG9uZSBpbiBmYXZvciBvZgor
ICAgICAgICBhIG5ldyAqZHJhZnQqIEFQSSB1YnJrX2Nsb25lLCBtZWFuaW5nIHRoYXQgbm8gZnVu
Y3Rpb24gd2l0aCB0aGlzIGZ1bmN0aW9uYWxpdHkgaXMgZXhwb3NlZCBieSBkZWZhdWx0LgorCisg
ICAgICAgIFRoaXMgcGF0Y2ggaW50cm9kdWNlcyBhIGZ1bmN0aW9uIGNsb25lVUJyZWFrSXRlcmF0
b3IgdG8gYWJzdHJhY3Qgb3ZlciB0aGlzIGNoYW5nZTsgaG93ZXZlciwgc2luY2Ugd2UgbmVlZCB0
bzoKKworICAgICAgICAgIDEuIGNvbmZpbmUgdGhlIGVmZmVjdHMgb2YgZGlzYWJsaW5nIFVfSElE
RV9EUkFGVF9BUEkgdG8gYSBub24tdW5pZmllZCBpbXBsZW1lbnRhdGlvbiBmaWxlCisgICAgICAg
ICAgMi4gc3RpbGwgYmUgYWJsZSB0byBpbmNsdWRlIHVicmsuaCBmcm9tIEludGxTZWdtZW50ZXIu
aCB0byBpbnN0YW50aWF0ZSBJQ1VEZWxldGVyPHVicmtfY2xvc2U+ICgqbm90KiBgY2xvbmVgISkK
KworICAgICAgICAuLi50aGUgbmV3IGhlbHBlciBmdW5jdGlvbiBpcyBpbnRyb2R1Y2VkIGluIGEg
KmhlYWRlcmxlc3MqIGltcGxlbWVudGF0aW9uIGZpbGUsIEludGxXb3JrYXJvdW5kLmNwcC4KKwor
ICAgICAgICAqIEphdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAg
ICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudGVyLmNwcDoK
KyAgICAgICAgKEpTQzo6SW50bFNlZ21lbnRlcjo6c2VnbWVudCBjb25zdCk6CisgICAgICAgICog
cnVudGltZS9JbnRsU2VnbWVudGVyLmg6CisgICAgICAgICogcnVudGltZS9JbnRsU2VnbWVudHMu
Y3BwOgorICAgICAgICAoSlNDOjpJbnRsU2VnbWVudHM6OmNyZWF0ZVNlZ21lbnRJdGVyYXRvcik6
CisgICAgICAgICogcnVudGltZS9JbnRsV29ya2Fyb3VuZC5jcHA6IEFkZGVkLgorICAgICAgICAo
SlNDOjpjbG9uZVVCcmVha0l0ZXJhdG9yKToKKwogMjAyMS0wNC0xMCAgWXVzdWtlIFN1enVraSAg
PHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIEIzIHJlZHVjZS1kb3VibGUtdG8t
ZmxvYXQgc2hvdWxkIHJlZHVjZSBvbmx5IHdoZW4gY29uc3RhbnQgZG91YmxlIGlzIGNhbm9uaWNh
bCBvbmUgdG8gcmVkdWNlZCBmbG9hdCB2YWx1ZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCBhNTE4ZTZjYjFmMTA1YTNkN2RiY2ZiZmE5YTA2NjdhNTlhYjg5ZWQ5Li5hMTNjMmRjMmY2
ZmRlMDE3Zjg0NTUzMmMwMzE4YjQ1OTNiY2QyZGY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagpAQCAtMTQwMiw2ICsxNDAyLDcgQEAKIAkJQTFENzkyRkYxQjQzODY0QjAwNDUxNkY1IC8q
IEludGxOdW1iZXJGb3JtYXRDb25zdHJ1Y3Rvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTFENzkyRjkxQjQzODY0QjAwNDUxNkY1IC8qIEludGxOdW1i
ZXJGb3JtYXRDb25zdHJ1Y3Rvci5oICovOyB9OwogCQlBMUQ3OTMwMTFCNDM4NjRCMDA0NTE2RjUg
LyogSW50bE51bWJlckZvcm1hdFByb3RvdHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTFENzkyRkIxQjQzODY0QjAwNDUxNkY1IC8qIEludGxOdW1i
ZXJGb3JtYXRQcm90b3R5cGUuaCAqLzsgfTsKIAkJQTM4RDI1MEUyNTgwMEQ0NDAwNDJCRkREIC8q
IEpTQXJyYXlCdWZmZXJQcm90b3R5cGVJbmxpbmVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMzhEMjUwRDI1ODAwRDQzMDA0MkJGREQgLyogSlNBcnJh
eUJ1ZmZlclByb3RvdHlwZUlubGluZXMuaCAqLzsgfTsKKwkJQTNFRTg1NDMyNjI1MTRCMDAwRkM5
QjhEIC8qIEludGxXb3JrYXJvdW5kLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEEzNzYxOTQwMjYyNTEyN0MwMENCQ0JBOSAvKiBJbnRsV29ya2Fyb3Vu
ZC5jcHAgKi87IH07CiAJCUEzRkY5QkM3MjIzNDc0OTEwMEIxQTlBQiAvKiBZYXJyRmxhZ3MuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEzRkY5QkM1MjIz
NDc0NjYwMEIxQTlBQiAvKiBZYXJyRmxhZ3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQlBNTAzRkExQTE4OEUwRkIwMDAxMTBGMTQgLyogSmF2YVNj
cmlwdENhbGxGcmFtZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQTUwM0ZBMTQxODhFMEZBRjAwMTEwRjE0IC8qIEphdmFTY3JpcHRDYWxsRnJhbWUuaCAq
LzsgfTsKIAkJQTUwM0ZBMUUxODhFMEZCMDAwMTEwRjE0IC8qIEpTSmF2YVNjcmlwdENhbGxGcmFt
ZVByb3RvdHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTUwM0ZBMTgxODhFMEZCMDAwMTEwRjE0IC8qIEpTSmF2YVNjcmlwdENhbGxGcmFtZVByb3Rv
dHlwZS5oICovOyB9OwpAQCAtNDQxOSw2ICs0NDIwLDcgQEAKIAkJQTFFMDQ1MUIxQzI1QjRCMTAw
QkI2NjNDIC8qIFN0cmluZ1Byb3RvdHlwZS5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNj
cmlwdDsgcGF0aCA9IFN0cmluZ1Byb3RvdHlwZS5qczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJQTFGRTFFQjAxQzJDNTM3RTAwQTI4OUZGIC8qIERhdGVQcm90b3R5cGUuanMgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSBEYXRlUHJvdG90eXBlLmpzOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMjc5NThEN0ZBMTE0MkIwQUM5RTM2NEQgLyogV2Fz
bUNvbnRleHRJbmxpbmVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdhc21D
b250ZXh0SW5saW5lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMzc2MTk0MDI2
MjUxMjdDMDBDQkNCQTkgLyogSW50bFdvcmthcm91bmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSW50bFdvcmthcm91bmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlBMzhEMjUwRDI1ODAwRDQzMDA0MkJGREQgLyogSlNBcnJheUJ1ZmZlclByb3Rv
dHlwZUlubGluZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBcnJheUJ1
ZmZlclByb3RvdHlwZUlubGluZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTNB
RkY5MkIyNDVBM0NGOTAwQzlCQTNCIC8qIEludGxMb2NhbGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSW50bExvY2FsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlBM0FGRjkyQzI0NUEzQ0ZBMDBDOUJBM0IgLyogSW50bExvY2FsZUNvbnN0cnVjdG9yLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEludGxMb2NhbGVDb25zdHJ1Y3Rvci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzI4OCw5ICs3MjkwLDkgQEAKIAkJCQkxNEEx
NTYzMDEwOTY2MzY1MDA2RkEyNjAgLyogRGF0ZUluc3RhbmNlQ2FjaGUuaCAqLywKIAkJCQlCQ0Qy
MDM0NzBFMTcxMzVFMDAyQzdFODIgLyogRGF0ZVByb3RvdHlwZS5jcHAgKi8sCiAJCQkJQkNEMjAz
NDgwRTE3MTM1RTAwMkM3RTgyIC8qIERhdGVQcm90b3R5cGUuaCAqLywKLQkJCQlGRTlGM0ZDNjI2
MTYzQ0E5MDA2OUU4OUYgLyogRGVmZXJUZXJtaW5hdGlvbi5oICovLAogCQkJCTUzNDYzODc2MUU3
MUUwNkUwMEYxMkFDMSAvKiBEZWZlcnJlZFdvcmtUaW1lci5jcHAgKi8sCiAJCQkJNTM0NjM4NzQx
RTcwRERFQzAwRjEyQUMxIC8qIERlZmVycmVkV29ya1RpbWVyLmggKi8sCisJCQkJRkU5RjNGQzYy
NjE2M0NBOTAwNjlFODlGIC8qIERlZmVyVGVybWluYXRpb24uaCAqLywKIAkJCQkxNjk5NDhFREU2
OEQ0MDU0QjAxRUY3OTcgLyogRGVmaW5lUHJvcGVydHlBdHRyaWJ1dGVzLmggKi8sCiAJCQkJNzM0
QjY1NTQyM0Y0QTMzMTAwQTA2OUQxIC8qIERlbGV0ZVByb3BlcnR5U2xvdC5oICovLAogCQkJCTBG
RTA1MDBGMUFBOTA5MTEwMEQzM0IzMyAvKiBEaXJlY3RBcmd1bWVudHMuY3BwICovLApAQCAtNzQ3
Niw2ICs3NDc4LDcgQEAKIAkJCQlFM0YyMTkzMzI0Qzc4ODJBMDAzQUU0NTMgLyogSW50bFNlZ21l
bnRzLmggKi8sCiAJCQkJRTNGMjE5MzIyNEM3ODgyQTAwM0FFNDUzIC8qIEludGxTZWdtZW50c1By
b3RvdHlwZS5jcHAgKi8sCiAJCQkJRTNGMjE5MzYyNEM3ODgyQjAwM0FFNDUzIC8qIEludGxTZWdt
ZW50c1Byb3RvdHlwZS5oICovLAorCQkJCUEzNzYxOTQwMjYyNTEyN0MwMENCQ0JBOSAvKiBJbnRs
V29ya2Fyb3VuZC5jcHAgKi8sCiAJCQkJMEYyNzVGMkMxRUNFMDc5NjAwNjIwRDQ3IC8qIEludHJp
bnNpYy5jcHAgKi8sCiAJCQkJODZCRjY0MkExNDhEQjJCNTAwNERFMzZBIC8qIEludHJpbnNpYy5o
ICovLAogCQkJCThCOUY2RDU1MUQ1OTEyRkEwMDFDNzM5RiAvKiBJdGVyYXRpb25LaW5kLmggKi8s
CkBAIC05MjMwLDcgKzkyMzMsNiBAQAogCQkJCThCQzA2NDhCMUUxQUJBOTQwMEIyQjhDQSAvKiBB
c3luY0dlbmVyYXRvckZ1bmN0aW9uQ29uc3RydWN0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCThC
QzA2NDhBMUUxQUJBN0IwMEIyQjhDQSAvKiBBc3luY0dlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBl
LmggaW4gSGVhZGVycyAqLywKIAkJCQk4QkMwNjQ5MjFFMUFEQ0M0MDBCMkI4Q0EgLyogQXN5bmNH
ZW5lcmF0b3JQcm90b3R5cGUuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDRTJGQUZGMjYwOTE3ODIw
MDBBNTEwRiAvKiBXZWFrR0NIYXNoVGFibGUuaCBpbiBIZWFkZXJzICovLAogCQkJCThCM0JGNUU0
MUUzRDM2OEIwMDc2QTg3QSAvKiBBc3luY0dlbmVyYXRvclByb3RvdHlwZS5sdXQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCThCQzA2NDk2MUUxRDg0NUMwMEIyQjhDQSAvKiBBc3luY0l0ZXJhdG9yUHJv
dG90eXBlLmggaW4gSGVhZGVycyAqLywKIAkJCQk2QTM4Q0ZBQTFFMzJCNUFCMDA2MDIwNkYgLyog
QXN5bmNTdGFja1RyYWNlLmggaW4gSGVhZGVycyAqLywKQEAgLTk0OTgsNiArOTUwMCw3IEBACiAJ
CQkJMEZDNzEyREYxN0NEODc3QzAwOENDOTNDIC8qIERlZmVycmVkQ29tcGlsYXRpb25DYWxsYmFj
ay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkU1MDY4NjUxQUUyNDYzOTAwMDlEQUI3IC8qIERlZmVy
cmVkU291cmNlRHVtcC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTM0NjM4NzUxRTcwRERFQzAwRjEy
QUMxIC8qIERlZmVycmVkV29ya1RpbWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRTlGM0ZDODI2
MTYzQ0E5MDA2OUU4OUYgLyogRGVmZXJUZXJtaW5hdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NDczREE0QTQ3NjRDNDVGRTg3MUIwNDg1IC8qIERlZmluZVByb3BlcnR5QXR0cmlidXRlcy5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMEZCQjczQkIxREVGODY0NTAwMkMwMDlFIC8qIERlbGV0ZUFsbENv
ZGVFZmZvcnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTczMTFGQTMyMjQwREIxRDMwMDNENDhEQiAv
KiBEZWxldGVCeUlkVmFyaWFudC5oIGluIEhlYWRlcnMgKi8sCkBAIC05NTExLDcgKzk1MTQsNiBA
QAogCQkJCTBGNjIwMTc3MTQzRkNEM0YwMDY4Qjc3QyAvKiBERkdBYnN0cmFjdFZhbHVlLmggaW4g
SGVhZGVycyAqLywKIAkJCQkwRjRGMTFFQjIwOUQ0MjY2MDA3MDk2NTQgLyogREZHQWJzdHJhY3RW
YWx1ZUNsb2JiZXJFcG9jaC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZEM0U0MDIxQjYxOEFBRjAw
QzgwRTFFIC8qIERGR0FkYXB0aXZlSW5mZXJyZWRQcm9wZXJ0eVZhbHVlV2F0Y2hwb2ludC5oIGlu
IEhlYWRlcnMgKi8sCi0JCQkJRkU5RjNGQjkyNjEzQzc4OTAwNjlFODlGIC8qIFJlc291cmNlRXho
YXVzdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEYxOEQzRDAxQjU1QTZFMDAwMkM1QzlGIC8q
IERGR0FkYXB0aXZlU3RydWN0dXJlV2F0Y2hwb2ludC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY2
NkUxNkIxNERGM0YxNjAwQjdCMkU0IC8qIERGR0FkamFjZW5jeUxpc3QuaCBpbiBIZWFkZXJzICov
LAogCQkJCTBGMUUzQTQ2MTUzNENCQUYwMDBGOTQ1NiAvKiBERkdBcmd1bWVudFBvc2l0aW9uLmgg
aW4gSGVhZGVycyAqLywKQEAgLTk2NjYsNyArOTY2OCw2IEBACiAJCQkJMEY5RTMyNjQxQjA1QUIw
NDAwODAxRUQ1IC8qIERGR1N0b3JlQmFycmllckluc2VydGlvblBoYXNlLmggaW4gSGVhZGVycyAq
LywKIAkJCQkwRkMyMENCNjE4NTJFMkM2MDBDOUU5NTQgLyogREZHU3RyZW5ndGhSZWR1Y3Rpb25Q
aGFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY2Mzk0NzgxNURDRTM0QjAwNkE1OTdDIC8qIERG
R1N0cnVjdHVyZUFic3RyYWN0VmFsdWUuaCBpbiBIZWFkZXJzICovLAotCQkJCUZFOUYzRkM4MjYx
NjNDQTkwMDY5RTg5RiAvKiBEZWZlclRlcm1pbmF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQkw
RjUwQUYzQzE5M0U4QjM5MDA2NzRFRTggLyogREZHU3RydWN0dXJlQ2xvYmJlclN0YXRlLmggaW4g
SGVhZGVycyAqLywKIAkJCQkwRjJGQ0NGRjE4QTYwMDcwMDAxQTI3RjggLyogREZHVGhyZWFkRGF0
YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZDMDk3QTIxNDZCMjhDQzAwQ0YyNDQyIC8qIERGR1Ro
dW5rcy5oIGluIEhlYWRlcnMgKi8sCkBAIC05Njk2LDcgKzk2OTcsNiBAQAogCQkJCTE0Mzg2QTc1
MURENjk4OTUwMDg2NTJDNCAvKiBEaXJlY3RFdmFsRXhlY3V0YWJsZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMEYzNzMwOEYxQzBDRDY4NTAwMDUyQkZBIC8qIERpc2FsbG93TWFjcm9TY3JhdGNoUmVn
aXN0ZXJVc2FnZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkU1NERFRkYxRThENzZGQTAwQTg5MkM1
IC8qIERpc2FsbG93U2NvcGUuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDRTJGQUZCMjYwOTE2RUYw
MDBBNTEwRiAvKiBXZWFrR0NTZXQuaCBpbiBIZWFkZXJzICovLAogCQkJCUZFNTRERUZCMUU4QzZE
ODgwMEE4OTJDNSAvKiBEaXNhbGxvd1ZNRW50cnkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGRjQy
NzMxMTU4RUJENTQwMDRDQjlGRiAvKiBEaXNhc3NlbWJsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUUzMTYxODEzMUVDNUZFMTcwMDA2QTIxOCAvKiBET01Bbm5vdGF0aW9uLmggaW4gSGVhZGVycyAq
LywKQEAgLTEwMzU0LDcgKzEwMzU0LDYgQEAKIAkJCQkxNEY3OUY3MDIxNkVBRkQyMDAwNDZEMzkg
LyogT3Bjb2RlLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTY0ODcyRTIxNDFEMDQ4MDBBQjBEM0Ug
LyogT3Bjb2RlSW5saW5lcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTRBNDY4MEQyMTZGQTU2QTAw
MEQyQjFBIC8qIE9wY29kZVNpemUuaCBpbiBIZWFkZXJzICovLAotCQkJCUJDRTJGQUZEMjYwOTE2
RkYwMDBBNTEwRiAvKiBXZWFrR0NTZXRJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjJC
REMyQzE1MUZERTkxMDBDRDg5MTAgLyogT3BlcmFuZHMuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3
MDQ0N0VBMTdBMEJENDYwMEY1ODk4RSAvKiBPcGVyYW5kc0lubGluZXMuaCBpbiBIZWFkZXJzICov
LAogCQkJCUJDMThDNDQ4MEUxNkY1Q0QwMEIzNDQ2MCAvKiBPcGVyYXRpb25zLmggaW4gSGVhZGVy
cyAqLywKQEAgLTEwNDYxLDYgKzEwNDYwLDcgQEAKIAkJCQlBNUJBMTVFQTE4MjM0MEI0MDBBODJF
NjkgLyogUmVtb3RlSW5zcGVjdG9yQ29uc3RhbnRzLmggaW4gSGVhZGVycyAqLywKIAkJCQk5OTJG
NTZCNzFFNEU4NEIyMDAzNTk1M0IgLyogUmVtb3RlSW5zcGVjdG9yWFBDQ29ubmVjdGlvbi5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMEYyNEU1NTExN0VFMjc0OTAwQUJCMjE3IC8qIFJlcGF0Y2guaCBp
biBIZWFkZXJzICovLAorCQkJCUZFOUYzRkI5MjYxM0M3ODkwMDY5RTg5RiAvKiBSZXNvdXJjZUV4
aGF1c3Rpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTg2OUVCQ0I3MEU4QzZENEEwMDg3MjJDQyAv
KiBSZXN1bHRUeXBlLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTNCNjQyRjI1RDZGQjREMDAxQURE
QjQgLyogUm9vdE1hcmtSZWFzb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTBGMkM2M0FBMUU0RkE0
MkUwMEMxMzgzOSAvKiBSdW5uaW5nU2NvcGUuaCBpbiBIZWFkZXJzICovLApAQCAtMTA2ODcsOCAr
MTA2ODcsMTEgQEAKIAkJCQkwRjkxOUQyNjE1ODUzQ0UzMDA0QTRFN0QgLyogV2F0Y2hwb2ludC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJMTQyRTMxM0MxMzRGRjBBNjAwQUZBREI1IC8qIFdlYWsuaCBp
biBIZWFkZXJzICovLAogCQkJCTE0RTg0RjlGMTRFRTFBQ0MwMEQ2RDVENCAvKiBXZWFrQmxvY2su
aCBpbiBIZWFkZXJzICovLAorCQkJCUJDRTJGQUZGMjYwOTE3ODIwMDBBNTEwRiAvKiBXZWFrR0NI
YXNoVGFibGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTE0QkZDRTY5MTBDREIxRkMwMDM2NENDRSAv
KiBXZWFrR0NNYXAuaCBpbiBIZWFkZXJzICovLAogCQkJCUFEODZBOTNFMUFBNEQ4OEQwMDJGRTc3
RiAvKiBXZWFrR0NNYXBJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0UyRkFGQjI2MDkx
NkVGMDAwQTUxMEYgLyogV2Vha0dDU2V0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0UyRkFGRDI2
MDkxNkZGMDAwQTUxMEYgLyogV2Vha0dDU2V0SW5saW5lcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MTRGNzI1NjYxNEVFMjY1RTAwQjE2NTJCIC8qIFdlYWtIYW5kbGVPd25lci5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMTRFODRGQTIxNEVFMUFDQzAwRDZENUQ0IC8qIFdlYWtJbXBsLmggaW4gSGVhZGVy
cyAqLywKIAkJCQkxNEJFN0QzMzE3MTM1Q0Y0MDBEMTgwN0EgLyogV2Vha0lubGluZXMuaCBpbiBI
ZWFkZXJzICovLApAQCAtMTE1NjMsNiArMTE1NjYsNyBAQAogCQkJCTVDNDE5NjYyMjI3MEUwMDAw
MDQ3QjdDRCAvKiBJbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlckNvbXBhdGliaWxpdHkuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJRTM5OUFFQzMyNTU5NDU3RjAwQjc4NDg1IC8qIEludGxEYXRlVGlt
ZUZvcm1hdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMzY2NDQxRTI1NDQwOUIzMDAwMTg3NkYg
LyogSW50bExpc3RGb3JtYXQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQTNFRTg1NDMyNjI1MTRC
MDAwRkM5QjhEIC8qIEludGxXb3JrYXJvdW5kLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUzOEU4
NzkwMjU0Qjk3ODQwMEY2RjlFNCAvKiBKU0RhdGVNYXRoLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTUzNkIzMTlFMUY3MzVGMTYwMDM3RkMzMyAvKiBMb3dMZXZlbEludGVycHJldGVyLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCURGQkMyQ0E2MjVFNkQ1QjkwMDgxQkREMSAvKiBTeW1ib2xTdHVic0Zv
clNhZmFyaUNvbXBhdGliaWxpdHkubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3Vy
Y2VzLnR4dAppbmRleCAyOGI1YjgzNjMyYjljMjliYzQ5ZjE5NjE2OTQ5MTNlNjE2N2RiYjRkLi5i
NjQ5MmRmZGNiNzVhYzFiNzZiYzA5MzFjYTZhMTE0ZDEyMDFlY2U2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L1NvdXJjZXMudHh0CkBAIC04NDksNiArODQ5LDcgQEAgcnVudGltZS9JbnRsU2VnbWVudGVyQ29u
c3RydWN0b3IuY3BwCiBydW50aW1lL0ludGxTZWdtZW50ZXJQcm90b3R5cGUuY3BwCiBydW50aW1l
L0ludGxTZWdtZW50cy5jcHAKIHJ1bnRpbWUvSW50bFNlZ21lbnRzUHJvdG90eXBlLmNwcAorcnVu
dGltZS9JbnRsV29ya2Fyb3VuZC5jcHAgQG5vLXVuaWZ5IC8vIENvbmZpbmUgVV9ISURFX0RSQUZU
X0FQSSdzIGVmZmVjdCB0byB0aGlzIGZpbGUuCiBydW50aW1lL0l0ZXJhdG9yT3BlcmF0aW9ucy5j
cHAKIHJ1bnRpbWUvSXRlcmF0b3JQcm90b3R5cGUuY3BwCiBydW50aW1lL0pTQXJyYXkuY3BwCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXIuY3BwCmluZGV4
IDJhZDc0Zjk0YmJlOGNhMTdjNzc1ODkyYWZiYzZmZWY3MTJhNjJiNTguLjkzYzliMjAzMjg0NzZj
YmZhYTA0MGNiYmUzODgzZWViYjI1MmYzYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxTZWdtZW50ZXIuY3BwCkBAIC0xMjUsNyArMTI1LDcgQEAgSlNWYWx1ZSBJ
bnRsU2VnbWVudGVyOjpzZWdtZW50KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFs
dWUgc3RyaW5nVmFsdWUKICAgICBhdXRvIHVwY29udmVydGVkQ2hhcmFjdGVycyA9IEJveDxWZWN0
b3I8VUNoYXI+Pjo6Y3JlYXRlKHN0cmluZy5jaGFyYWN0ZXJzV2l0aG91dE51bGxUZXJtaW5hdGlv
bigpKTsKIAogICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VSUk9SOwotICAgIGF1dG8g
c2VnbWVudGVyID0gc3RkOjp1bmlxdWVfcHRyPFVCcmVha0l0ZXJhdG9yLCBVQnJlYWtJdGVyYXRv
ckRlbGV0ZXI+KHVicmtfc2FmZUNsb25lKG1fc2VnbWVudGVyLmdldCgpLCBudWxscHRyLCBudWxs
cHRyLCAmc3RhdHVzKSk7CisgICAgYXV0byBzZWdtZW50ZXIgPSBzdGQ6OnVuaXF1ZV9wdHI8VUJy
ZWFrSXRlcmF0b3IsIFVCcmVha0l0ZXJhdG9yRGVsZXRlcj4oY2xvbmVVQnJlYWtJdGVyYXRvciht
X3NlZ21lbnRlci5nZXQoKSwgJnN0YXR1cykpOwogICAgIGlmIChVX0ZBSUxVUkUoc3RhdHVzKSkg
ewogICAgICAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3BlLCAiZmFpbGVkIHRv
IGluaXRpYWxpemUgU2VnbWVudHMiX3MpOwogICAgICAgICByZXR1cm4geyB9OwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlci5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlci5oCmluZGV4IGNkMGY0MjZjNDg5
NzU2YWFkNDk3MWU2OWM2ODExOWEzZjcwZTBmMTkuLmE1MjM5NTc1YTlmMzc5OTBjMmJiN2JjZmFm
ZGUwM2E3ODBhNzM1NGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxTZWdtZW50ZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRs
U2VnbWVudGVyLmgKQEAgLTc1LDQgKzc1LDggQEAgcHJpdmF0ZToKICAgICBHcmFudWxhcml0eSBt
X2dyYW51bGFyaXR5IHsgR3JhbnVsYXJpdHk6OkdyYXBoZW1lIH07CiB9OwogCisvLyBBYnN0cmFj
dGlvbiB0byBjYWxsIHVicmtfc2FmZUNsb25lIG9yIHVicmtfY2xvbmUgZGVwZW5kaW5nIG9uIElD
VSB2ZXJzaW9uLgorLy8gVGhpcyBpcyBpbXBsZW1lbnRlZCBpbiBJbnRsV29ya2Fyb3VuZC5jcHAg
aW4gb3JkZXIgdG8gY29uZmluZSBkcmFmdCBBUEkgdmlzaWJpbGl0eS4KK1VCcmVha0l0ZXJhdG9y
KiBjbG9uZVVCcmVha0l0ZXJhdG9yKGNvbnN0IFVCcmVha0l0ZXJhdG9yKiwgVUVycm9yQ29kZSop
OworCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0ludGxTZWdtZW50cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9JbnRsU2VnbWVudHMuY3BwCmluZGV4IGI2YWJhMzJmYjgyMmU4NWJiZTc4MDg4YzA0ODI5NDgx
MTZhOGMzNTUuLjhiODE3OTFlNDEzMzE1ZjIzN2ZhYWE3OGY4ZDQ0MzQ4NTM2NGE4NDYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50cy5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzLmNwcApAQCAtMTAw
LDcgKzEwMCw3IEBAIEpTT2JqZWN0KiBJbnRsU2VnbWVudHM6OmNyZWF0ZVNlZ21lbnRJdGVyYXRv
cihKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQogICAgIGF1dG8gc2NvcGUgPSBERUNMQVJF
X1RIUk9XX1NDT1BFKHZtKTsKIAogICAgIFVFcnJvckNvZGUgc3RhdHVzID0gVV9aRVJPX0VSUk9S
OwotICAgIGF1dG8gc2VnbWVudGVyID0gc3RkOjp1bmlxdWVfcHRyPFVCcmVha0l0ZXJhdG9yLCBV
QnJlYWtJdGVyYXRvckRlbGV0ZXI+KHVicmtfc2FmZUNsb25lKG1fc2VnbWVudGVyLmdldCgpLCBu
dWxscHRyLCBudWxscHRyLCAmc3RhdHVzKSk7CisgICAgYXV0byBzZWdtZW50ZXIgPSBzdGQ6OnVu
aXF1ZV9wdHI8VUJyZWFrSXRlcmF0b3IsIFVCcmVha0l0ZXJhdG9yRGVsZXRlcj4oY2xvbmVVQnJl
YWtJdGVyYXRvcihtX3NlZ21lbnRlci5nZXQoKSwgJnN0YXR1cykpOwogICAgIGlmIChVX0ZBSUxV
UkUoc3RhdHVzKSkgewogICAgICAgICB0aHJvd1R5cGVFcnJvcihnbG9iYWxPYmplY3QsIHNjb3Bl
LCAiZmFpbGVkIHRvIGluaXRpYWxpemUgU2VnbWVudEl0ZXJhdG9yIl9zKTsKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
bnRsV29ya2Fyb3VuZC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsV29y
a2Fyb3VuZC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDNiNWRlYTdhZDZlODc2MWU5YWUwMTk0NGYzYjAzZTM1
ODRiYWI3OAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxXb3JrYXJvdW5kLmNwcApAQCAtMCwwICsxLDU2IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIxIFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0YWlubWVudCBJbmMuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKworI2luY2x1ZGUgPHVuaWNvZGUvdXZlcm51bS5oPgorCisvLyBJ
Q1UgNjkgaW50cm9kdWNlcyBkcmFmdCBBUEkgdWJya19jbG9uZSBhbmQgZGVwcmVjYXRlcyB1YnJr
X3NhZmVDbG9uZS4KKyNpZiAhZGVmaW5lZChIQVZFX0lDVV9VQlJLX0NMT05FKSAmJiBVX0lDVV9W
RVJTSU9OX01BSk9SX05VTSA+PSA2OQorI2RlZmluZSBIQVZFX0lDVV9VQlJLX0NMT05FIDEKKyNl
bmRpZgorCisjaWYgSEFWRShJQ1VfVUJSS19DTE9ORSkgJiYgZGVmaW5lZChVX0hJREVfRFJBRlRf
QVBJKQorI3VuZGVmIFVfSElERV9EUkFGVF9BUEkKKyNlbmRpZgorI2luY2x1ZGUgPHVuaWNvZGUv
dWJyay5oPgorI2lmIEhBVkUoSUNVX1VCUktfQ0xPTkUpCisjZGVmaW5lIFVfSElERV9EUkFGVF9B
UEkgMQorI2VuZGlmCisKK25hbWVzcGFjZSBKU0MgeworCitVQnJlYWtJdGVyYXRvciogY2xvbmVV
QnJlYWtJdGVyYXRvcihjb25zdCBVQnJlYWtJdGVyYXRvciosIFVFcnJvckNvZGUqKTsKKworVUJy
ZWFrSXRlcmF0b3IqIGNsb25lVUJyZWFrSXRlcmF0b3IoY29uc3QgVUJyZWFrSXRlcmF0b3IqIGl0
ZXJhdG9yLCBVRXJyb3JDb2RlKiBzdGF0dXMpCit7CisjaWYgSEFWRShJQ1VfVUJSS19DTE9ORSkK
K3JldHVybiB1YnJrX2Nsb25lKGl0ZXJhdG9yLCBzdGF0dXMpOworI2Vsc2UKK3JldHVybiB1YnJr
X3NhZmVDbG9uZShpdGVyYXRvciwgbnVsbHB0ciwgbnVsbHB0ciwgc3RhdHVzKTsKKyNlbmRpZgor
fQorCit9IC8vIG5hbWVzcGFjZSBKU0MK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425822</attachid>
            <date>2021-04-12 18:34:38 -0700</date>
            <delta_ts>2021-04-12 19:04:24 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-224093-20210412183438.patch</filename>
            <type>text/plain</type>
            <size>15986</size>
            <attacher name="Ross Kirsling">ross.kirsling</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1ODM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
YzU3YmM0MjdmNTM5ZjMyMzNjY2JhM2JlYjE2YWYyZTc4NjRhNzJjLi5hYzI0MGRiYjE1YTk0NDE1
ZGFlNjRmODQ3YmEyZjk4YzVjMGYwYzNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMCBAQAorMjAyMS0wNC0xMiAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CisKKyAgICAgICAgSUNVIDY5IGRlcHJlY2F0ZXMgdWJya19zYWZlQ2xvbmUgaW4gZmF2
b3Igb2YgdWJya19jbG9uZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI0MDkzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgWXVzdWtlIFN1enVraS4KKwor
ICAgICAgICBJbiBhIHNoaW5pbmcgZXhhbXBsZSBvZiAiZGlzYXBwb2ludGluZyBsaWJyYXJ5IHBy
YWN0aWNlcyIsIElDVSA2OSBkZXByZWNhdGVzIHVicmtfc2FmZUNsb25lIGluIGZhdm9yIG9mCisg
ICAgICAgIGEgbmV3ICpkcmFmdCogQVBJIHVicmtfY2xvbmUsIG1lYW5pbmcgdGhhdCBubyBmdW5j
dGlvbiB3aXRoIHRoaXMgZnVuY3Rpb25hbGl0eSBpcyBleHBvc2VkIGJ5IGRlZmF1bHQuCisKKyAg
ICAgICAgVGhpcyBwYXRjaCBpbnRyb2R1Y2VzIGEgZnVuY3Rpb24gY2xvbmVVQnJlYWtJdGVyYXRv
ciB0byBhYnN0cmFjdCBvdmVyIHRoaXMgY2hhbmdlOyBob3dldmVyLCBzaW5jZSB3ZSBuZWVkIHRv
OgorCisgICAgICAgICAgMS4gY29uZmluZSB0aGUgZWZmZWN0cyBvZiBkaXNhYmxpbmcgVV9ISURF
X0RSQUZUX0FQSSB0byBhIG5vbi11bmlmaWVkIGltcGxlbWVudGF0aW9uIGZpbGUKKyAgICAgICAg
ICAyLiBzdGlsbCBiZSBhYmxlIHRvIGluY2x1ZGUgdWJyay5oIGZyb20gSW50bFNlZ21lbnRlci5o
IHRvIGluc3RhbnRpYXRlIElDVURlbGV0ZXI8dWJya19jbG9zZT4gKCpub3QqIGBjbG9uZWAhKQor
CisgICAgICAgIC4uLnRoZSBuZXcgaGVscGVyIGZ1bmN0aW9uIGlzIGludHJvZHVjZWQgaW4gYSAq
aGVhZGVybGVzcyogaW1wbGVtZW50YXRpb24gZmlsZSwgSW50bFdvcmthcm91bmQuY3BwLgorCisg
ICAgICAgICogSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAg
ICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdtZW50ZXIuY3BwOgor
ICAgICAgICAoSlNDOjpJbnRsU2VnbWVudGVyOjpzZWdtZW50IGNvbnN0KToKKyAgICAgICAgKiBy
dW50aW1lL0ludGxTZWdtZW50ZXIuaDoKKyAgICAgICAgKiBydW50aW1lL0ludGxTZWdtZW50cy5j
cHA6CisgICAgICAgIChKU0M6OkludGxTZWdtZW50czo6Y3JlYXRlU2VnbWVudEl0ZXJhdG9yKToK
KyAgICAgICAgKiBydW50aW1lL0ludGxXb3JrYXJvdW5kLmNwcDogQWRkZWQuCisgICAgICAgIChK
U0M6OmNsb25lVUJyZWFrSXRlcmF0b3IpOgorCiAyMDIxLTA0LTEwICBZdXN1a2UgU3V6dWtpICA8
eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgW0pTQ10gQjMgcmVkdWNlLWRvdWJsZS10by1m
bG9hdCBzaG91bGQgcmVkdWNlIG9ubHkgd2hlbiBjb25zdGFudCBkb3VibGUgaXMgY2Fub25pY2Fs
IG9uZSB0byByZWR1Y2VkIGZsb2F0IHZhbHVlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmlu
ZGV4IGE1MThlNmNiMWYxMDVhM2Q3ZGJjZmJmYTlhMDY2N2E1OWFiODllZDkuLmExM2MyZGMyZjZm
ZGUwMTdmODQ1NTMyYzAzMThiNDU5M2JjZDJkZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCkBAIC0xNDAyLDYgKzE0MDIsNyBAQAogCQlBMUQ3OTJGRjFCNDM4NjRCMDA0NTE2RjUgLyog
SW50bE51bWJlckZvcm1hdENvbnN0cnVjdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBMUQ3OTJGOTFCNDM4NjRCMDA0NTE2RjUgLyogSW50bE51bWJl
ckZvcm1hdENvbnN0cnVjdG9yLmggKi87IH07CiAJCUExRDc5MzAxMUI0Mzg2NEIwMDQ1MTZGNSAv
KiBJbnRsTnVtYmVyRm9ybWF0UHJvdG90eXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBMUQ3OTJGQjFCNDM4NjRCMDA0NTE2RjUgLyogSW50bE51bWJl
ckZvcm1hdFByb3RvdHlwZS5oICovOyB9OwogCQlBMzhEMjUwRTI1ODAwRDQ0MDA0MkJGREQgLyog
SlNBcnJheUJ1ZmZlclByb3RvdHlwZUlubGluZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEzOEQyNTBEMjU4MDBENDMwMDQyQkZERCAvKiBKU0FycmF5
QnVmZmVyUHJvdG90eXBlSW5saW5lcy5oICovOyB9OworCQlBM0VFODU0MzI2MjUxNEIwMDBGQzlC
OEQgLyogSW50bFdvcmthcm91bmQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQTM3NjE5NDAyNjI1MTI3QzAwQ0JDQkE5IC8qIEludGxXb3JrYXJvdW5k
LmNwcCAqLzsgfTsKIAkJQTNGRjlCQzcyMjM0NzQ5MTAwQjFBOUFCIC8qIFlhcnJGbGFncy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTNGRjlCQzUyMjM0
NzQ2NjAwQjFBOUFCIC8qIFlhcnJGbGFncy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCUE1MDNGQTFBMTg4RTBGQjAwMDExMEYxNCAvKiBKYXZhU2Ny
aXB0Q2FsbEZyYW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBNTAzRkExNDE4OEUwRkFGMDAxMTBGMTQgLyogSmF2YVNjcmlwdENhbGxGcmFtZS5oICov
OyB9OwogCQlBNTAzRkExRTE4OEUwRkIwMDAxMTBGMTQgLyogSlNKYXZhU2NyaXB0Q2FsbEZyYW1l
UHJvdG90eXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBNTAzRkExODE4OEUwRkIwMDAxMTBGMTQgLyogSlNKYXZhU2NyaXB0Q2FsbEZyYW1lUHJvdG90
eXBlLmggKi87IH07CkBAIC00NDE5LDYgKzQ0MjAsNyBAQAogCQlBMUUwNDUxQjFDMjVCNEIxMDBC
QjY2M0MgLyogU3RyaW5nUHJvdG90eXBlLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2Ny
aXB0OyBwYXRoID0gU3RyaW5nUHJvdG90eXBlLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlBMUZFMUVCMDFDMkM1MzdFMDBBMjg5RkYgLyogRGF0ZVByb3RvdHlwZS5qcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9IERhdGVQcm90b3R5cGUuanM7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUEyNzk1OEQ3RkExMTQyQjBBQzlFMzY0RCAvKiBXYXNt
Q29udGV4dElubGluZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2FzbUNv
bnRleHRJbmxpbmVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUEzNzYxOTQwMjYy
NTEyN0MwMENCQ0JBOSAvKiBJbnRsV29ya2Fyb3VuZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBJbnRsV29ya2Fyb3VuZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUEzOEQyNTBEMjU4MDBENDMwMDQyQkZERCAvKiBKU0FycmF5QnVmZmVyUHJvdG90
eXBlSW5saW5lcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0FycmF5QnVm
ZmVyUHJvdG90eXBlSW5saW5lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBM0FG
RjkyQjI0NUEzQ0Y5MDBDOUJBM0IgLyogSW50bExvY2FsZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBJbnRsTG9jYWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUEzQUZGOTJDMjQ1QTNDRkEwMEM5QkEzQiAvKiBJbnRsTG9jYWxlQ29uc3RydWN0b3IuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW50bExvY2FsZUNvbnN0cnVjdG9yLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC03Mjg4LDkgKzcyOTAsOSBAQAogCQkJCTE0QTE1
NjMwMTA5NjYzNjUwMDZGQTI2MCAvKiBEYXRlSW5zdGFuY2VDYWNoZS5oICovLAogCQkJCUJDRDIw
MzQ3MEUxNzEzNUUwMDJDN0U4MiAvKiBEYXRlUHJvdG90eXBlLmNwcCAqLywKIAkJCQlCQ0QyMDM0
ODBFMTcxMzVFMDAyQzdFODIgLyogRGF0ZVByb3RvdHlwZS5oICovLAotCQkJCUZFOUYzRkM2MjYx
NjNDQTkwMDY5RTg5RiAvKiBEZWZlclRlcm1pbmF0aW9uLmggKi8sCiAJCQkJNTM0NjM4NzYxRTcx
RTA2RTAwRjEyQUMxIC8qIERlZmVycmVkV29ya1RpbWVyLmNwcCAqLywKIAkJCQk1MzQ2Mzg3NDFF
NzBEREVDMDBGMTJBQzEgLyogRGVmZXJyZWRXb3JrVGltZXIuaCAqLywKKwkJCQlGRTlGM0ZDNjI2
MTYzQ0E5MDA2OUU4OUYgLyogRGVmZXJUZXJtaW5hdGlvbi5oICovLAogCQkJCTE2OTk0OEVERTY4
RDQwNTRCMDFFRjc5NyAvKiBEZWZpbmVQcm9wZXJ0eUF0dHJpYnV0ZXMuaCAqLywKIAkJCQk3MzRC
NjU1NDIzRjRBMzMxMDBBMDY5RDEgLyogRGVsZXRlUHJvcGVydHlTbG90LmggKi8sCiAJCQkJMEZF
MDUwMEYxQUE5MDkxMTAwRDMzQjMzIC8qIERpcmVjdEFyZ3VtZW50cy5jcHAgKi8sCkBAIC03NDc2
LDYgKzc0NzgsNyBAQAogCQkJCUUzRjIxOTMzMjRDNzg4MkEwMDNBRTQ1MyAvKiBJbnRsU2VnbWVu
dHMuaCAqLywKIAkJCQlFM0YyMTkzMjI0Qzc4ODJBMDAzQUU0NTMgLyogSW50bFNlZ21lbnRzUHJv
dG90eXBlLmNwcCAqLywKIAkJCQlFM0YyMTkzNjI0Qzc4ODJCMDAzQUU0NTMgLyogSW50bFNlZ21l
bnRzUHJvdG90eXBlLmggKi8sCisJCQkJQTM3NjE5NDAyNjI1MTI3QzAwQ0JDQkE5IC8qIEludGxX
b3JrYXJvdW5kLmNwcCAqLywKIAkJCQkwRjI3NUYyQzFFQ0UwNzk2MDA2MjBENDcgLyogSW50cmlu
c2ljLmNwcCAqLywKIAkJCQk4NkJGNjQyQTE0OERCMkI1MDA0REUzNkEgLyogSW50cmluc2ljLmgg
Ki8sCiAJCQkJOEI5RjZENTUxRDU5MTJGQTAwMUM3MzlGIC8qIEl0ZXJhdGlvbktpbmQuaCAqLywK
QEAgLTkyMzAsNyArOTIzMyw2IEBACiAJCQkJOEJDMDY0OEIxRTFBQkE5NDAwQjJCOENBIC8qIEFz
eW5jR2VuZXJhdG9yRnVuY3Rpb25Db25zdHJ1Y3Rvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOEJD
MDY0OEExRTFBQkE3QjAwQjJCOENBIC8qIEFzeW5jR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUu
aCBpbiBIZWFkZXJzICovLAogCQkJCThCQzA2NDkyMUUxQURDQzQwMEIyQjhDQSAvKiBBc3luY0dl
bmVyYXRvclByb3RvdHlwZS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQkNFMkZBRkYyNjA5MTc4MjAw
MEE1MTBGIC8qIFdlYWtHQ0hhc2hUYWJsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOEIzQkY1RTQx
RTNEMzY4QjAwNzZBODdBIC8qIEFzeW5jR2VuZXJhdG9yUHJvdG90eXBlLmx1dC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJOEJDMDY0OTYxRTFEODQ1QzAwQjJCOENBIC8qIEFzeW5jSXRlcmF0b3JQcm90
b3R5cGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTZBMzhDRkFBMUUzMkI1QUIwMDYwMjA2RiAvKiBB
c3luY1N0YWNrVHJhY2UuaCBpbiBIZWFkZXJzICovLApAQCAtOTQ5OCw2ICs5NTAwLDcgQEAKIAkJ
CQkwRkM3MTJERjE3Q0Q4NzdDMDA4Q0M5M0MgLyogRGVmZXJyZWRDb21waWxhdGlvbkNhbGxiYWNr
LmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTUwNjg2NTFBRTI0NjM5MDAwOURBQjcgLyogRGVmZXJy
ZWRTb3VyY2VEdW1wLmggaW4gSGVhZGVycyAqLywKIAkJCQk1MzQ2Mzg3NTFFNzBEREVDMDBGMTJB
QzEgLyogRGVmZXJyZWRXb3JrVGltZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUZFOUYzRkM4MjYx
NjNDQTkwMDY5RTg5RiAvKiBEZWZlclRlcm1pbmF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQk0
NzNEQTRBNDc2NEM0NUZFODcxQjA0ODUgLyogRGVmaW5lUHJvcGVydHlBdHRyaWJ1dGVzLmggaW4g
SGVhZGVycyAqLywKIAkJCQkwRkJCNzNCQjFERUY4NjQ1MDAyQzAwOUUgLyogRGVsZXRlQWxsQ29k
ZUVmZm9ydC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNzMxMUZBMzIyNDBEQjFEMzAwM0Q0OERCIC8q
IERlbGV0ZUJ5SWRWYXJpYW50LmggaW4gSGVhZGVycyAqLywKQEAgLTk1MTEsNyArOTUxNCw2IEBA
CiAJCQkJMEY2MjAxNzcxNDNGQ0QzRjAwNjhCNzdDIC8qIERGR0Fic3RyYWN0VmFsdWUuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTBGNEYxMUVCMjA5RDQyNjYwMDcwOTY1NCAvKiBERkdBYnN0cmFjdFZh
bHVlQ2xvYmJlckVwb2NoLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRkQzRTQwMjFCNjE4QUFGMDBD
ODBFMUUgLyogREZHQWRhcHRpdmVJbmZlcnJlZFByb3BlcnR5VmFsdWVXYXRjaHBvaW50LmggaW4g
SGVhZGVycyAqLywKLQkJCQlGRTlGM0ZCOTI2MTNDNzg5MDA2OUU4OUYgLyogUmVzb3VyY2VFeGhh
dXN0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjE4RDNEMDFCNTVBNkUwMDAyQzVDOUYgLyog
REZHQWRhcHRpdmVTdHJ1Y3R1cmVXYXRjaHBvaW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjY2
RTE2QjE0REYzRjE2MDBCN0IyRTQgLyogREZHQWRqYWNlbmN5TGlzdC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMEYxRTNBNDYxNTM0Q0JBRjAwMEY5NDU2IC8qIERGR0FyZ3VtZW50UG9zaXRpb24uaCBp
biBIZWFkZXJzICovLApAQCAtOTY2Niw3ICs5NjY4LDYgQEAKIAkJCQkwRjlFMzI2NDFCMDVBQjA0
MDA4MDFFRDUgLyogREZHU3RvcmVCYXJyaWVySW5zZXJ0aW9uUGhhc2UuaCBpbiBIZWFkZXJzICov
LAogCQkJCTBGQzIwQ0I2MTg1MkUyQzYwMEM5RTk1NCAvKiBERkdTdHJlbmd0aFJlZHVjdGlvblBo
YXNlLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjYzOTQ3ODE1RENFMzRCMDA2QTU5N0MgLyogREZH
U3RydWN0dXJlQWJzdHJhY3RWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJRkU5RjNGQzgyNjE2
M0NBOTAwNjlFODlGIC8qIERlZmVyVGVybWluYXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTBG
NTBBRjNDMTkzRThCMzkwMDY3NEVFOCAvKiBERkdTdHJ1Y3R1cmVDbG9iYmVyU3RhdGUuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTBGMkZDQ0ZGMThBNjAwNzAwMDFBMjdGOCAvKiBERkdUaHJlYWREYXRh
LmggaW4gSGVhZGVycyAqLywKIAkJCQkwRkMwOTdBMjE0NkIyOENDMDBDRjI0NDIgLyogREZHVGh1
bmtzLmggaW4gSGVhZGVycyAqLywKQEAgLTk2OTYsNyArOTY5Nyw2IEBACiAJCQkJMTQzODZBNzUx
REQ2OTg5NTAwODY1MkM0IC8qIERpcmVjdEV2YWxFeGVjdXRhYmxlLmggaW4gSGVhZGVycyAqLywK
IAkJCQkwRjM3MzA4RjFDMENENjg1MDAwNTJCRkEgLyogRGlzYWxsb3dNYWNyb1NjcmF0Y2hSZWdp
c3RlclVzYWdlLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTU0REVGRjFFOEQ3NkZBMDBBODkyQzUg
LyogRGlzYWxsb3dTY29wZS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQkNFMkZBRkIyNjA5MTZFRjAw
MEE1MTBGIC8qIFdlYWtHQ1NldC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkU1NERFRkIxRThDNkQ4
ODAwQTg5MkM1IC8qIERpc2FsbG93Vk1FbnRyeS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZGNDI3
MzExNThFQkQ1NDAwNENCOUZGIC8qIERpc2Fzc2VtYmxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
RTMxNjE4MTMxRUM1RkUxNzAwMDZBMjE4IC8qIERPTUFubm90YXRpb24uaCBpbiBIZWFkZXJzICov
LApAQCAtMTAzNTQsNyArMTAzNTQsNiBAQAogCQkJCTE0Rjc5RjcwMjE2RUFGRDIwMDA0NkQzOSAv
KiBPcGNvZGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUZFNjQ4NzJFMjE0MUQwNDgwMEFCMEQzRSAv
KiBPcGNvZGVJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKIAkJCQkxNEE0NjgwRDIxNkZBNTZBMDAw
RDJCMUEgLyogT3Bjb2RlU2l6ZS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQkNFMkZBRkQyNjA5MTZG
RjAwMEE1MTBGIC8qIFdlYWtHQ1NldElubGluZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGMkJE
QzJDMTUxRkRFOTEwMENEODkxMCAvKiBPcGVyYW5kcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTcw
NDQ3RUExN0EwQkQ0NjAwRjU4OThFIC8qIE9wZXJhbmRzSW5saW5lcy5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQkMxOEM0NDgwRTE2RjVDRDAwQjM0NDYwIC8qIE9wZXJhdGlvbnMuaCBpbiBIZWFkZXJz
ICovLApAQCAtMTA0NjEsNiArMTA0NjAsNyBAQAogCQkJCUE1QkExNUVBMTgyMzQwQjQwMEE4MkU2
OSAvKiBSZW1vdGVJbnNwZWN0b3JDb25zdGFudHMuaCBpbiBIZWFkZXJzICovLAogCQkJCTk5MkY1
NkI3MUU0RTg0QjIwMDM1OTUzQiAvKiBSZW1vdGVJbnNwZWN0b3JYUENDb25uZWN0aW9uLmggaW4g
SGVhZGVycyAqLywKIAkJCQkwRjI0RTU1MTE3RUUyNzQ5MDBBQkIyMTcgLyogUmVwYXRjaC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRkU5RjNGQjkyNjEzQzc4OTAwNjlFODlGIC8qIFJlc291cmNlRXho
YXVzdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODY5RUJDQjcwRThDNkQ0QTAwODcyMkNDIC8q
IFJlc3VsdFR5cGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUZFM0I2NDJGMjVENkZCNEQwMDFBRERC
NCAvKiBSb290TWFya1JlYXNvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEYyQzYzQUExRTRGQTQy
RTAwQzEzODM5IC8qIFJ1bm5pbmdTY29wZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0xMDY4Nyw4ICsx
MDY4NywxMSBAQAogCQkJCTBGOTE5RDI2MTU4NTNDRTMwMDRBNEU3RCAvKiBXYXRjaHBvaW50Lmgg
aW4gSGVhZGVycyAqLywKIAkJCQkxNDJFMzEzQzEzNEZGMEE2MDBBRkFEQjUgLyogV2Vhay5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMTRFODRGOUYxNEVFMUFDQzAwRDZENUQ0IC8qIFdlYWtCbG9jay5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQkNFMkZBRkYyNjA5MTc4MjAwMEE1MTBGIC8qIFdlYWtHQ0hh
c2hUYWJsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTRCRkNFNjkxMENEQjFGQzAwMzY0Q0NFIC8q
IFdlYWtHQ01hcC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQUQ4NkE5M0UxQUE0RDg4RDAwMkZFNzdG
IC8qIFdlYWtHQ01hcElubGluZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRTJGQUZCMjYwOTE2
RUYwMDBBNTEwRiAvKiBXZWFrR0NTZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRTJGQUZEMjYw
OTE2RkYwMDBBNTEwRiAvKiBXZWFrR0NTZXRJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKIAkJCQkx
NEY3MjU2NjE0RUUyNjVFMDBCMTY1MkIgLyogV2Vha0hhbmRsZU93bmVyLmggaW4gSGVhZGVycyAq
LywKIAkJCQkxNEU4NEZBMjE0RUUxQUNDMDBENkQ1RDQgLyogV2Vha0ltcGwuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTE0QkU3RDMzMTcxMzVDRjQwMEQxODA3QSAvKiBXZWFrSW5saW5lcy5oIGluIEhl
YWRlcnMgKi8sCkBAIC0xMTU2Myw2ICsxMTU2Niw3IEBACiAJCQkJNUM0MTk2NjIyMjcwRTAwMDAw
NDdCN0NEIC8qIEluc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyQ29tcGF0aWJpbGl0eS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQlFMzk5QUVDMzI1NTk0NTdGMDBCNzg0ODUgLyogSW50bERhdGVUaW1l
Rm9ybWF0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUzNjY0NDFFMjU0NDA5QjMwMDAxODc2RiAv
KiBJbnRsTGlzdEZvcm1hdC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlBM0VFODU0MzI2MjUxNEIw
MDBGQzlCOEQgLyogSW50bFdvcmthcm91bmQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTM4RTg3
OTAyNTRCOTc4NDAwRjZGOUU0IC8qIEpTRGF0ZU1hdGguY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
NTM2QjMxOUUxRjczNUYxNjAwMzdGQzMzIC8qIExvd0xldmVsSW50ZXJwcmV0ZXIuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJREZCQzJDQTYyNUU2RDVCOTAwODFCREQxIC8qIFN5bWJvbFN0dWJzRm9y
U2FmYXJpQ29tcGF0aWJpbGl0eS5tbSBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL1NvdXJj
ZXMudHh0CmluZGV4IDI4YjViODM2MzJiOWMyOWJjNDlmMTk2MTY5NDkxM2U2MTY3ZGJiNGQuLmI2
NDkyZGZkY2I3NWFjMWI3NmJjMDkzMWNhNmExMTRkMTIwMWVjZTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
U291cmNlcy50eHQKQEAgLTg0OSw2ICs4NDksNyBAQCBydW50aW1lL0ludGxTZWdtZW50ZXJDb25z
dHJ1Y3Rvci5jcHAKIHJ1bnRpbWUvSW50bFNlZ21lbnRlclByb3RvdHlwZS5jcHAKIHJ1bnRpbWUv
SW50bFNlZ21lbnRzLmNwcAogcnVudGltZS9JbnRsU2VnbWVudHNQcm90b3R5cGUuY3BwCitydW50
aW1lL0ludGxXb3JrYXJvdW5kLmNwcCBAbm8tdW5pZnkgLy8gQ29uZmluZSBVX0hJREVfRFJBRlRf
QVBJJ3MgZWZmZWN0IHRvIHRoaXMgZmlsZS4KIHJ1bnRpbWUvSXRlcmF0b3JPcGVyYXRpb25zLmNw
cAogcnVudGltZS9JdGVyYXRvclByb3RvdHlwZS5jcHAKIHJ1bnRpbWUvSlNBcnJheS5jcHAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxTZWdtZW50ZXIuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlci5jcHAKaW5kZXgg
MmFkNzRmOTRiYmU4Y2ExN2M3NzU4OTJhZmJjNmZlZjcxMmE2MmI1OC4uOTNjOWIyMDMyODQ3NmNi
ZmFhMDQwY2JiZTM4ODNlZWJiMjUyZjNhYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSW50bFNlZ21lbnRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bFNlZ21lbnRlci5jcHAKQEAgLTEyNSw3ICsxMjUsNyBAQCBKU1ZhbHVlIElu
dGxTZWdtZW50ZXI6OnNlZ21lbnQoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1
ZSBzdHJpbmdWYWx1ZQogICAgIGF1dG8gdXBjb252ZXJ0ZWRDaGFyYWN0ZXJzID0gQm94PFZlY3Rv
cjxVQ2hhcj4+OjpjcmVhdGUoc3RyaW5nLmNoYXJhY3RlcnNXaXRob3V0TnVsbFRlcm1pbmF0aW9u
KCkpOwogCiAgICAgVUVycm9yQ29kZSBzdGF0dXMgPSBVX1pFUk9fRVJST1I7Ci0gICAgYXV0byBz
ZWdtZW50ZXIgPSBzdGQ6OnVuaXF1ZV9wdHI8VUJyZWFrSXRlcmF0b3IsIFVCcmVha0l0ZXJhdG9y
RGVsZXRlcj4odWJya19zYWZlQ2xvbmUobV9zZWdtZW50ZXIuZ2V0KCksIG51bGxwdHIsIG51bGxw
dHIsICZzdGF0dXMpKTsKKyAgICBhdXRvIHNlZ21lbnRlciA9IHN0ZDo6dW5pcXVlX3B0cjxVQnJl
YWtJdGVyYXRvciwgVUJyZWFrSXRlcmF0b3JEZWxldGVyPihjbG9uZVVCcmVha0l0ZXJhdG9yKG1f
c2VnbWVudGVyLmdldCgpLCAmc3RhdHVzKSk7CiAgICAgaWYgKFVfRkFJTFVSRShzdGF0dXMpKSB7
CiAgICAgICAgIHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUsICJmYWlsZWQgdG8g
aW5pdGlhbGl6ZSBTZWdtZW50cyJfcyk7CiAgICAgICAgIHJldHVybiB7IH07CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudGVyLmgKaW5kZXggY2QwZjQyNmM0ODk3
NTZhYWQ0OTcxZTY5YzY4MTE5YTNmNzBlMGYxOS4uYTUyMzk1NzVhOWYzNzk5MGMyYmI3YmNmYWZk
ZTAzYTc4MGE3MzU0YiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bFNlZ21lbnRlci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxT
ZWdtZW50ZXIuaApAQCAtNzUsNCArNzUsOCBAQCBwcml2YXRlOgogICAgIEdyYW51bGFyaXR5IG1f
Z3JhbnVsYXJpdHkgeyBHcmFudWxhcml0eTo6R3JhcGhlbWUgfTsKIH07CiAKKy8vIEFic3RyYWN0
aW9uIHRvIGNhbGwgdWJya19zYWZlQ2xvbmUgb3IgdWJya19jbG9uZSBkZXBlbmRpbmcgb24gSUNV
IHZlcnNpb24uCisvLyBUaGlzIGlzIGltcGxlbWVudGVkIGluIEludGxXb3JrYXJvdW5kLmNwcCBp
biBvcmRlciB0byBjb25maW5lIGRyYWZ0IEFQSSB2aXNpYmlsaXR5LgorVUJyZWFrSXRlcmF0b3Iq
IGNsb25lVUJyZWFrSXRlcmF0b3IoY29uc3QgVUJyZWFrSXRlcmF0b3IqLCBVRXJyb3JDb2RlKik7
CisKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSW50bFNlZ21lbnRzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0ludGxTZWdtZW50cy5jcHAKaW5kZXggYjZhYmEzMmZiODIyZTg1YmJlNzgwODhjMDQ4Mjk0ODEx
NmE4YzM1NS4uOGI4MTc5MWU0MTMzMTVmMjM3ZmFhYTc4ZjhkNDQzNDg1MzY0YTg0NiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSW50bFNlZ21lbnRzLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9JbnRsU2VnbWVudHMuY3BwCkBAIC0xMDAs
NyArMTAwLDcgQEAgSlNPYmplY3QqIEludGxTZWdtZW50czo6Y3JlYXRlU2VnbWVudEl0ZXJhdG9y
KEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCiAgICAgYXV0byBzY29wZSA9IERFQ0xBUkVf
VEhST1dfU0NPUEUodm0pOwogCiAgICAgVUVycm9yQ29kZSBzdGF0dXMgPSBVX1pFUk9fRVJST1I7
Ci0gICAgYXV0byBzZWdtZW50ZXIgPSBzdGQ6OnVuaXF1ZV9wdHI8VUJyZWFrSXRlcmF0b3IsIFVC
cmVha0l0ZXJhdG9yRGVsZXRlcj4odWJya19zYWZlQ2xvbmUobV9zZWdtZW50ZXIuZ2V0KCksIG51
bGxwdHIsIG51bGxwdHIsICZzdGF0dXMpKTsKKyAgICBhdXRvIHNlZ21lbnRlciA9IHN0ZDo6dW5p
cXVlX3B0cjxVQnJlYWtJdGVyYXRvciwgVUJyZWFrSXRlcmF0b3JEZWxldGVyPihjbG9uZVVCcmVh
a0l0ZXJhdG9yKG1fc2VnbWVudGVyLmdldCgpLCAmc3RhdHVzKSk7CiAgICAgaWYgKFVfRkFJTFVS
RShzdGF0dXMpKSB7CiAgICAgICAgIHRocm93VHlwZUVycm9yKGdsb2JhbE9iamVjdCwgc2NvcGUs
ICJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBTZWdtZW50SXRlcmF0b3IiX3MpOwogICAgICAgICByZXR1
cm4gbnVsbHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lu
dGxXb3JrYXJvdW5kLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0ludGxXb3Jr
YXJvdW5kLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44ZDgyMDg1N2VjMjI0M2Y1NjQwMjM3ZDBjNjM4ZTZlM2Y5
Zjg4NWRjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SW50bFdvcmthcm91bmQuY3BwCkBAIC0wLDAgKzEsNTMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMjEgU29ueSBJbnRlcmFjdGl2ZSBFbnRlcnRhaW5tZW50IEluYy4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorCisjaW5jbHVkZSA8dW5pY29kZS91dmVybnVtLmg+CisKKy8vIElD
VSA2OSBpbnRyb2R1Y2VzIGRyYWZ0IEFQSSB1YnJrX2Nsb25lIGFuZCBkZXByZWNhdGVzIHVicmtf
c2FmZUNsb25lLgorI2lmIFVfSUNVX1ZFUlNJT05fTUFKT1JfTlVNID49IDY5CisjZGVmaW5lIEhB
VkVfSUNVX1VCUktfQ0xPTkUgMQorI2VuZGlmCisKKyNpZiBkZWZpbmVkKFVfSElERV9EUkFGVF9B
UEkpCisjdW5kZWYgVV9ISURFX0RSQUZUX0FQSQorI2VuZGlmCisjaW5jbHVkZSA8dW5pY29kZS91
YnJrLmg+CisKK25hbWVzcGFjZSBKU0MgeworCitVQnJlYWtJdGVyYXRvciogY2xvbmVVQnJlYWtJ
dGVyYXRvcihjb25zdCBVQnJlYWtJdGVyYXRvciosIFVFcnJvckNvZGUqKTsKKworVUJyZWFrSXRl
cmF0b3IqIGNsb25lVUJyZWFrSXRlcmF0b3IoY29uc3QgVUJyZWFrSXRlcmF0b3IqIGl0ZXJhdG9y
LCBVRXJyb3JDb2RlKiBzdGF0dXMpCit7CisjaWYgSEFWRShJQ1VfVUJSS19DTE9ORSkKKyAgICBy
ZXR1cm4gdWJya19jbG9uZShpdGVyYXRvciwgc3RhdHVzKTsKKyNlbHNlCisgICAgcmV0dXJuIHVi
cmtfc2FmZUNsb25lKGl0ZXJhdG9yLCBudWxscHRyLCBudWxscHRyLCBzdGF0dXMpOworI2VuZGlm
Cit9CisKK30gLy8gbmFtZXNwYWNlIEpTQwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>