<?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>235379</bug_id>
          
          <creation_ts>2022-01-19 12:54:15 -0800</creation_ts>
          <short_desc>Turn EUnicodeBidi into an enum class</short_desc>
          <delta_ts>2022-01-20 08:00:06 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>mifenton</cc>
    
    <cc>pdr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1832187</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2022-01-19 12:54:15 -0800</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832193</commentid>
    <comment_count>1</comment_count>
      <attachid>449509</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-01-19 13:08:08 -0800</bug_when>
    <thetext>Created attachment 449509
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832205</commentid>
    <comment_count>2</comment_count>
      <attachid>449512</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-01-19 13:32:39 -0800</bug_when>
    <thetext>Created attachment 449512
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832207</commentid>
    <comment_count>3</comment_count>
      <attachid>449512</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2022-01-19 13:33:16 -0800</bug_when>
    <thetext>Comment on attachment 449512
Patch

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

&gt; Source/WebCore/platform/text/UnicodeBidi.h:31
&gt; +enum class EUnicodeBidi : uint8_t {

Can we drop the E prefix?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832218</commentid>
    <comment_count>4</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2022-01-19 13:44:01 -0800</bug_when>
    <thetext>(In reply to zalan from comment #2)
&gt; Created attachment 449512 [details]
&gt; Patch
Good point!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832219</commentid>
    <comment_count>5</comment_count>
      <attachid>449512</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-01-19 13:45:06 -0800</bug_when>
    <thetext>Comment on attachment 449512
Patch

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

&gt;&gt; Source/WebCore/platform/text/UnicodeBidi.h:31
&gt;&gt; +enum class EUnicodeBidi : uint8_t {
&gt; 
&gt; Can we drop the E prefix?

We should.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832225</commentid>
    <comment_count>6</comment_count>
      <attachid>449516</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-01-19 13:58:13 -0800</bug_when>
    <thetext>Created attachment 449516
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832291</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-01-19 17:08:04 -0800</bug_when>
    <thetext>Committed r288254 (246204@main): &lt;https://commits.webkit.org/246204@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 449516.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832292</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-01-19 17:09:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/87799957&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832312</commentid>
    <comment_count>9</comment_count>
      <attachid>449516</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-01-19 18:14:45 -0800</bug_when>
    <thetext>Comment on attachment 449516
Patch

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

&gt; Source/WebCore/platform/text/UnicodeBidi.h:32
&gt;      UBNormal,

Need to rename this to just &quot;Normal&quot; now that it’s in an enum class and will always appear as UnicodeBidi::Normal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832325</commentid>
    <comment_count>10</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2022-01-19 19:15:24 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #9)
&gt; Comment on attachment 449516 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=449516&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/text/UnicodeBidi.h:32
&gt; &gt;      UBNormal,
&gt; 
&gt; Need to rename this to just &quot;Normal&quot; now that it’s in an enum class and will
&gt; always appear as UnicodeBidi::Normal.
Oh I missed that. Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832327</commentid>
    <comment_count>11</comment_count>
      <attachid>449544</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-01-19 19:33:27 -0800</bug_when>
    <thetext>Created attachment 449544
Patch

address post-landing feedback.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832328</commentid>
    <comment_count>12</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2022-01-19 19:33:49 -0800</bug_when>
    <thetext>see above</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832402</commentid>
    <comment_count>13</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-01-20 05:34:48 -0800</bug_when>
    <thetext>/Volumes/Data/worker/Commit-Queue/build/Source/WebCore/ChangeLog neither lists a valid reviewer nor contains the string &quot;Unreviewed&quot; or &quot;Rubber stamp&quot; (case insensitive).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832412</commentid>
    <comment_count>14</comment_count>
      <attachid>449572</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-01-20 07:11:38 -0800</bug_when>
    <thetext>Created attachment 449572
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832418</commentid>
    <comment_count>15</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-01-20 07:59:59 -0800</bug_when>
    <thetext>Committed r288291 (246216@main): &lt;https://commits.webkit.org/246216@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 449572.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>449509</attachid>
            <date>2022-01-19 13:08:08 -0800</date>
            <delta_ts>2022-01-19 13:32:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-235379-20220119130807.patch</filename>
            <type>text/plain</type>
            <size>12348</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg4MTk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjI1MDU2YTNiMWQxMzAw
MzE2OTE4Zjk4NWQzNWJmOWUwZDFmODM2My4uZDhiY2IyYWE2NTMwMjU1MDNhMzRmNTUwMDk2YzMw
NDc0OTZiNTU4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIyLTAxLTE5ICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBUdXJuIEVVbmljb2RlQmlkaSBp
bnRvIGFuIGVudW0gY2xhc3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNTM3OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZSk6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRVVuaWNvZGVCaWRpIGNvbnN0KToK
KyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5j
cHA6CisgICAgICAgICogcGxhdGZvcm0vdGV4dC9Vbmljb2RlQmlkaS5oOgorICAgICAgICAoV2Vi
Q29yZTo6aXNJc29sYXRlZCk6CisgICAgICAgIChXZWJDb3JlOjppc092ZXJyaWRlKToKKyAgICAg
ICAgKCk6IERlbGV0ZWQuCisgICAgICAgICogcmVuZGVyaW5nL0xlZ2FjeUlubGluZUl0ZXJhdG9y
Lmg6CisgICAgICAgIChXZWJDb3JlOjplbWJlZENoYXJGcm9tRGlyZWN0aW9uKToKKyAgICAgICAg
KFdlYkNvcmU6Om5vdGlmeU9ic2VydmVyRW50ZXJlZE9iamVjdCk6CisgICAgICAgIChXZWJDb3Jl
Ojpub3RpZnlPYnNlcnZlcldpbGxFeGl0T2JqZWN0KToKKyAgICAgICAgKiByZW5kZXJpbmcvTGVn
YWN5TGluZUxheW91dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMZWdhY3lMaW5lTGF5b3V0Ojp1
cGRhdGVMb2dpY2FsV2lkdGhGb3JBbGlnbm1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6Y29uc3Ry
dWN0QmlkaVJ1bnNGb3JTZWdtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUxpbmVMYXlv
dXQ6OmxheW91dFJ1bnNBbmRGbG9hdHNJblJhbmdlKToKKyAgICAgICAgKFdlYkNvcmU6OkxlZ2Fj
eUxpbmVMYXlvdXQ6OmRldGVybWluZVN0YXJ0UG9zaXRpb24pOgorICAgICAgICAqIHJlbmRlcmlu
Zy9zdHlsZS9SZW5kZXJTdHlsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6
UmVuZGVyU3R5bGUpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldFVuaWNvZGVCaWRpKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclN0eWxlOjppbml0aWFsVW5pY29kZUJpZGkpOgorCiAyMDIyLTAxLTE5
ICBBbGV4ZXkgU2h2YXlrYSAgPGFzaHZheWthQGFwcGxlLmNvbT4KIAogICAgICAgICBDYWxsYmFj
ayBmdW5jdGlvbnMgLyBpbnRlcmZhY2VzIHNob3VsZCB1c2UgZ2xvYmFsIG9iamVjdCBvZiBpdHMg
X3ZhbHVlXyBmb3IgZXJyb3JzIGFuZCBsaWZlY3ljbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCmluZGV4IDE1Njk4ZmJlODdmNzU3YWQxY2YzZTI1
M2I3NDVlY2RiYTdiZDk3YTkuLjgzZTNiZmU5ZjAyNGM1NDhhMDdiYzExMzQ0ZjZmNGY0YTU1NzE2
OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBp
bmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3Mu
aApAQCAtMjYxOSwyMiArMjYxOSwyMiBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRVVuaWNvZGVCaWRpIGUpCiB7CiAgICAgc2V0UHJpbWl0
aXZlVW5pdFR5cGUoQ1NTVW5pdFR5cGU6OkNTU19WQUxVRV9JRCk7CiAgICAgc3dpdGNoIChlKSB7
Ci0gICAgY2FzZSBVQk5vcm1hbDoKKyAgICBjYXNlIEVVbmljb2RlQmlkaTo6VUJOb3JtYWw6CiAg
ICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlTm9ybWFsOwogICAgICAgICBicmVhazsK
LSAgICBjYXNlIEVtYmVkOgorICAgIGNhc2UgRVVuaWNvZGVCaWRpOjpFbWJlZDoKICAgICAgICAg
bV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVFbWJlZDsKICAgICAgICAgYnJlYWs7Ci0gICAgY2Fz
ZSBPdmVycmlkZToKKyAgICBjYXNlIEVVbmljb2RlQmlkaTo6T3ZlcnJpZGU6CiAgICAgICAgIG1f
dmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlQmlkaU92ZXJyaWRlOwogICAgICAgICBicmVhazsKLSAg
ICBjYXNlIElzb2xhdGU6CisgICAgY2FzZSBFVW5pY29kZUJpZGk6Oklzb2xhdGU6CiAgICAgICAg
IG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlSXNvbGF0ZTsKICAgICAgICAgYnJlYWs7Ci0gICAg
Y2FzZSBJc29sYXRlT3ZlcnJpZGU6CisgICAgY2FzZSBFVW5pY29kZUJpZGk6Oklzb2xhdGVPdmVy
cmlkZToKICAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVJc29sYXRlT3ZlcnJpZGU7
CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgUGxhaW50ZXh0OgorICAgIGNhc2UgRVVuaWNvZGVC
aWRpOjpQbGFpbnRleHQ6CiAgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlUGxhaW50
ZXh0OwogICAgICAgICBicmVhazsKICAgICB9CkBAIC0yNjQ2LDI2ICsyNjQ2LDI2IEBAIHRlbXBs
YXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFVW5pY29kZUJpZGkoKSBj
b25zdAogCiAgICAgc3dpdGNoIChtX3ZhbHVlLnZhbHVlSUQpIHsKICAgICBjYXNlIENTU1ZhbHVl
Tm9ybWFsOgotICAgICAgICByZXR1cm4gVUJOb3JtYWw7CisgICAgICAgIHJldHVybiBFVW5pY29k
ZUJpZGk6OlVCTm9ybWFsOwogICAgIGNhc2UgQ1NTVmFsdWVFbWJlZDoKLSAgICAgICAgcmV0dXJu
IEVtYmVkOworICAgICAgICByZXR1cm4gRVVuaWNvZGVCaWRpOjpFbWJlZDsKICAgICBjYXNlIENT
U1ZhbHVlQmlkaU92ZXJyaWRlOgotICAgICAgICByZXR1cm4gT3ZlcnJpZGU7CisgICAgICAgIHJl
dHVybiBFVW5pY29kZUJpZGk6Ok92ZXJyaWRlOwogICAgIGNhc2UgQ1NTVmFsdWVJc29sYXRlOgog
ICAgIGNhc2UgQ1NTVmFsdWVXZWJraXRJc29sYXRlOgotICAgICAgICByZXR1cm4gSXNvbGF0ZTsK
KyAgICAgICAgcmV0dXJuIEVVbmljb2RlQmlkaTo6SXNvbGF0ZTsKICAgICBjYXNlIENTU1ZhbHVl
SXNvbGF0ZU92ZXJyaWRlOgogICAgIGNhc2UgQ1NTVmFsdWVXZWJraXRJc29sYXRlT3ZlcnJpZGU6
Ci0gICAgICAgIHJldHVybiBJc29sYXRlT3ZlcnJpZGU7CisgICAgICAgIHJldHVybiBFVW5pY29k
ZUJpZGk6Oklzb2xhdGVPdmVycmlkZTsKICAgICBjYXNlIENTU1ZhbHVlUGxhaW50ZXh0OgogICAg
IGNhc2UgQ1NTVmFsdWVXZWJraXRQbGFpbnRleHQ6Ci0gICAgICAgIHJldHVybiBQbGFpbnRleHQ7
CisgICAgICAgIHJldHVybiBFVW5pY29kZUJpZGk6OlBsYWludGV4dDsKICAgICBkZWZhdWx0Ogog
ICAgICAgICBicmVhazsKICAgICB9CiAKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICBy
ZXR1cm4gVUJOb3JtYWw7CisgICAgcmV0dXJuIEVVbmljb2RlQmlkaTo6VUJOb3JtYWw7CiB9CiAK
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShV
c2VyRHJhZyBlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9Vbmlj
b2RlQmlkaS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9Vbmljb2RlQmlkaS5oCmlu
ZGV4IDcyNDljZmVmZTY2YzRjY2YzNzIzYTAyMzU5ZDQ1NzA1NzAwMWUyNjMuLjM0MDhiNDU5YzAx
M2E0MmY2ZTAyZTA0Zjk2YTVkNmQzOTMyZGVlODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL3RleHQvVW5pY29kZUJpZGkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS90ZXh0L1VuaWNvZGVCaWRpLmgKQEAgLTI4LDcgKzI4LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCi1lbnVtIEVVbmljb2RlQmlkaSB7CitlbnVtIGNsYXNzIEVVbmljb2RlQmlkaSA6IHVp
bnQ4X3QgewogICAgIFVCTm9ybWFsLAogICAgIEVtYmVkLAogICAgIE92ZXJyaWRlLApAQCAtMzks
MTIgKzM5LDEyIEBAIGVudW0gRVVuaWNvZGVCaWRpIHsKIAogaW5saW5lIGJvb2wgaXNJc29sYXRl
ZChjb25zdCBFVW5pY29kZUJpZGkmIHVuaWNvZGVCaWRpKQogewotICAgIHJldHVybiB1bmljb2Rl
QmlkaSA9PSBJc29sYXRlIHx8IHVuaWNvZGVCaWRpID09IElzb2xhdGVPdmVycmlkZSB8fCB1bmlj
b2RlQmlkaSA9PSBQbGFpbnRleHQ7CisgICAgcmV0dXJuIHVuaWNvZGVCaWRpID09IEVVbmljb2Rl
QmlkaTo6SXNvbGF0ZSB8fCB1bmljb2RlQmlkaSA9PSBFVW5pY29kZUJpZGk6Oklzb2xhdGVPdmVy
cmlkZSB8fCB1bmljb2RlQmlkaSA9PSBFVW5pY29kZUJpZGk6OlBsYWludGV4dDsKIH0KIAogaW5s
aW5lIGJvb2wgaXNPdmVycmlkZShFVW5pY29kZUJpZGkgdW5pY29kZUJpZGkpCiB7Ci0gICAgcmV0
dXJuIHVuaWNvZGVCaWRpID09IE92ZXJyaWRlIHx8IHVuaWNvZGVCaWRpID09IElzb2xhdGVPdmVy
cmlkZTsKKyAgICByZXR1cm4gdW5pY29kZUJpZGkgPT0gRVVuaWNvZGVCaWRpOjpPdmVycmlkZSB8
fCB1bmljb2RlQmlkaSA9PSBFVW5pY29kZUJpZGk6Oklzb2xhdGVPdmVycmlkZTsKIH0KIAogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUl0ZXJhdG9y
LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lSXRlcmF0b3IuaAppbmRl
eCAxZmEwZjA2YTZkOTI5NjBhNDI0MDEyN2QwN2I3NzExMGU4OTA1M2IyLi40MmQ0YzUxM2VkNGU2
MWJlZWI2YzE2MjcyYTM5NzFjZGYwNDk0MjhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvTGVnYWN5SW5saW5lSXRlcmF0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvTGVnYWN5SW5saW5lSXRlcmF0b3IuaApAQCAtMTQyLDcgKzE0Miw3IEBAIGlubGluZSBi
b29sIG9wZXJhdG9yIT0oY29uc3QgTGVnYWN5SW5saW5lSXRlcmF0b3ImIGl0MSwgY29uc3QgTGVn
YWN5SW5saW5lSXRlcmF0CiAKIHN0YXRpYyBpbmxpbmUgVUNoYXJEaXJlY3Rpb24gZW1iZWRDaGFy
RnJvbURpcmVjdGlvbihUZXh0RGlyZWN0aW9uIGRpcmVjdGlvbiwgRVVuaWNvZGVCaWRpIHVuaWNv
ZGVCaWRpKQogewotICAgIGlmICh1bmljb2RlQmlkaSA9PSBFbWJlZCkKKyAgICBpZiAodW5pY29k
ZUJpZGkgPT0gRVVuaWNvZGVCaWRpOjpFbWJlZCkKICAgICAgICAgcmV0dXJuIGRpcmVjdGlvbiA9
PSBUZXh0RGlyZWN0aW9uOjpSVEwgPyBVX1JJR0hUX1RPX0xFRlRfRU1CRURESU5HIDogVV9MRUZU
X1RPX1JJR0hUX0VNQkVERElORzsKICAgICByZXR1cm4gZGlyZWN0aW9uID09IFRleHREaXJlY3Rp
b246OlJUTCA/IFVfUklHSFRfVE9fTEVGVF9PVkVSUklERSA6IFVfTEVGVF9UT19SSUdIVF9PVkVS
UklERTsKIH0KQEAgLTE1NSw3ICsxNTUsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgbm90aWZ5T2Jz
ZXJ2ZXJFbnRlcmVkT2JqZWN0KE9ic2VydmVyKiBvYnNlcnZlciwgUmVuZGVyT2JqZWN0KgogCiAg
ICAgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlID0gb2JqZWN0LT5zdHlsZSgpOwogICAgIEVVbmlj
b2RlQmlkaSB1bmljb2RlQmlkaSA9IHN0eWxlLnVuaWNvZGVCaWRpKCk7Ci0gICAgaWYgKHVuaWNv
ZGVCaWRpID09IFVCTm9ybWFsKSB7CisgICAgaWYgKHVuaWNvZGVCaWRpID09IEVVbmljb2RlQmlk
aTo6VUJOb3JtYWwpIHsKICAgICAgICAgLy8gaHR0cDovL2Rldi53My5vcmcvY3Nzd2cvY3NzMy13
cml0aW5nLW1vZGVzLyN1bmljb2RlLWJpZGkKICAgICAgICAgLy8gIlRoZSBlbGVtZW50IGRvZXMg
bm90IG9wZW4gYW4gYWRkaXRpb25hbCBsZXZlbCBvZiBlbWJlZGRpbmcgd2l0aCByZXNwZWN0IHRv
IHRoZSBiaWRpcmVjdGlvbmFsIGFsZ29yaXRobS4iCiAgICAgICAgIC8vIFRodXMgd2UgaWdub3Jl
IGFueSBwb3NzaWJsZSBkaXI9IGF0dHJpYnV0ZSBvbiB0aGUgc3Bhbi4KQEAgLTE4MSw3ICsxODEs
NyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgbm90aWZ5T2JzZXJ2ZXJXaWxsRXhpdE9iamVjdChPYnNl
cnZlciogb2JzZXJ2ZXIsIFJlbmRlck9iamVjdAogICAgICAgICByZXR1cm47CiAKICAgICBFVW5p
Y29kZUJpZGkgdW5pY29kZUJpZGkgPSBvYmplY3QtPnN0eWxlKCkudW5pY29kZUJpZGkoKTsKLSAg
ICBpZiAodW5pY29kZUJpZGkgPT0gVUJOb3JtYWwpCisgICAgaWYgKHVuaWNvZGVCaWRpID09IEVV
bmljb2RlQmlkaTo6VUJOb3JtYWwpCiAgICAgICAgIHJldHVybjsgLy8gTm90aGluZyB0byBkbyBm
b3IgdW5pY29kZS1iaWRpOiBub3JtYWwKICAgICBpZiAoaXNJc29sYXRlZCh1bmljb2RlQmlkaSkp
IHsKICAgICAgICAgb2JzZXJ2ZXItPmV4aXRJc29sYXRlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5TGluZUxheW91dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvTGVnYWN5TGluZUxheW91dC5jcHAKaW5kZXggNzFkMTkxNmQ0NzIzYmRmZTg2YTMx
MWY2ZTMyMWRhNGIxZjQ1YjdmOC4uNzE0MmM1OWZiZjViOGQwNDQ5MGVjMzU4ZjhjNjY2M2I1YzZm
YzkzZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUxpbmVMYXlv
dXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lMaW5lTGF5b3V0LmNw
cApAQCAtNjMyLDcgKzYzMiw3IEBAIHZvaWQgTGVnYWN5TGluZUxheW91dDo6Y29tcHV0ZUV4cGFu
c2lvbkZvckp1c3RpZmllZFRleHQoQmlkaVJ1biogZmlyc3RSdW4sIEJpZGlSCiB2b2lkIExlZ2Fj
eUxpbmVMYXlvdXQ6OnVwZGF0ZUxvZ2ljYWxXaWR0aEZvckFsaWdubWVudChSZW5kZXJCbG9ja0Zs
b3cmIGZsb3csIGNvbnN0IFRleHRBbGlnbk1vZGUmIHRleHRBbGlnbiwgY29uc3QgTGVnYWN5Um9v
dElubGluZUJveCogcm9vdElubGluZUJveCwgQmlkaVJ1biogdHJhaWxpbmdTcGFjZVJ1biwgZmxv
YXQmIGxvZ2ljYWxMZWZ0LCBmbG9hdCYgdG90YWxMb2dpY2FsV2lkdGgsIGZsb2F0JiBhdmFpbGFi
bGVMb2dpY2FsV2lkdGgsIGludCBleHBhbnNpb25PcHBvcnR1bml0eUNvdW50KQogewogICAgIFRl
eHREaXJlY3Rpb24gZGlyZWN0aW9uOwotICAgIGlmIChyb290SW5saW5lQm94ICYmIGZsb3cuc3R5
bGUoKS51bmljb2RlQmlkaSgpID09IFBsYWludGV4dCkKKyAgICBpZiAocm9vdElubGluZUJveCAm
JiBmbG93LnN0eWxlKCkudW5pY29kZUJpZGkoKSA9PSBFVW5pY29kZUJpZGk6OlBsYWludGV4dCkK
ICAgICAgICAgZGlyZWN0aW9uID0gcm9vdElubGluZUJveC0+ZGlyZWN0aW9uKCk7CiAgICAgZWxz
ZQogICAgICAgICBkaXJlY3Rpb24gPSBmbG93LnN0eWxlKCkuZGlyZWN0aW9uKCk7CkBAIC0xMTk4
LDEwICsxMTk4LDEwIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBjb25zdHJ1Y3RCaWRpUnVuc0ZvclNl
Z21lbnQoSW5saW5lQmlkaVJlc29sdmVyJiB0b3BSZXNvbHZlciwKICAgICAgICAgSW5saW5lQmlk
aVJlc29sdmVyIGlzb2xhdGVkUmVzb2x2ZXI7CiAgICAgICAgIEVVbmljb2RlQmlkaSB1bmljb2Rl
QmlkaSA9IGlzb2xhdGVkSW5saW5lLT5zdHlsZSgpLnVuaWNvZGVCaWRpKCk7CiAgICAgICAgIFRl
eHREaXJlY3Rpb24gZGlyZWN0aW9uOwotICAgICAgICBpZiAodW5pY29kZUJpZGkgPT0gUGxhaW50
ZXh0KQorICAgICAgICBpZiAodW5pY29kZUJpZGkgPT0gRVVuaWNvZGVCaWRpOjpQbGFpbnRleHQp
CiAgICAgICAgICAgICBkZXRlcm1pbmVEaXJlY3Rpb25hbGl0eShkaXJlY3Rpb24sIExlZ2FjeUlu
bGluZUl0ZXJhdG9yKGlzb2xhdGVkSW5saW5lLCAmaXNvbGF0ZWRSdW4ub2JqZWN0LCAwKSk7CiAg
ICAgICAgIGVsc2UgewotICAgICAgICAgICAgQVNTRVJUKHVuaWNvZGVCaWRpID09IElzb2xhdGUg
fHwgdW5pY29kZUJpZGkgPT0gSXNvbGF0ZU92ZXJyaWRlKTsKKyAgICAgICAgICAgIEFTU0VSVCh1
bmljb2RlQmlkaSA9PSBFVW5pY29kZUJpZGk6Oklzb2xhdGUgfHwgdW5pY29kZUJpZGkgPT0gRVVu
aWNvZGVCaWRpOjpJc29sYXRlT3ZlcnJpZGUpOwogICAgICAgICAgICAgZGlyZWN0aW9uID0gaXNv
bGF0ZWRJbmxpbmUtPnN0eWxlKCkuZGlyZWN0aW9uKCk7CiAgICAgICAgIH0KICAgICAgICAgaXNv
bGF0ZWRSZXNvbHZlci5zZXRTdGF0dXMoQmlkaVN0YXR1cyhkaXJlY3Rpb24sIGlzT3ZlcnJpZGUo
dW5pY29kZUJpZGkpKSk7CkBAIC0xNDMzLDcgKzE0MzMsNyBAQCB2b2lkIExlZ2FjeUxpbmVMYXlv
dXQ6OmxheW91dFJ1bnNBbmRGbG9hdHNJblJhbmdlKExpbmVMYXlvdXRTdGF0ZSYgbGF5b3V0U3Rh
dGUsCiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBWaXN1YWxEaXJlY3Rpb25PdmVycmlk
ZSBvdmVycmlkZSA9IChzdHlsZVRvVXNlLnJ0bE9yZGVyaW5nKCkgPT0gT3JkZXI6OlZpc3VhbCA/
IChzdHlsZVRvVXNlLmRpcmVjdGlvbigpID09IFRleHREaXJlY3Rpb246OkxUUiA/IFZpc3VhbExl
ZnRUb1JpZ2h0T3ZlcnJpZGUgOiBWaXN1YWxSaWdodFRvTGVmdE92ZXJyaWRlKSA6IE5vVmlzdWFs
T3ZlcnJpZGUpOwogCi0gICAgICAgICAgICBpZiAoaXNOZXdVQkFQYXJhZ3JhcGggJiYgc3R5bGVU
b1VzZS51bmljb2RlQmlkaSgpID09IFBsYWludGV4dCAmJiAhcmVzb2x2ZXIuY29udGV4dCgpLT5w
YXJlbnQoKSkgeworICAgICAgICAgICAgaWYgKGlzTmV3VUJBUGFyYWdyYXBoICYmIHN0eWxlVG9V
c2UudW5pY29kZUJpZGkoKSA9PSBFVW5pY29kZUJpZGk6OlBsYWludGV4dCAmJiAhcmVzb2x2ZXIu
Y29udGV4dCgpLT5wYXJlbnQoKSkgewogICAgICAgICAgICAgICAgIFRleHREaXJlY3Rpb24gZGly
ZWN0aW9uID0gc3R5bGVUb1VzZS5kaXJlY3Rpb24oKTsKICAgICAgICAgICAgICAgICBkZXRlcm1p
bmVEaXJlY3Rpb25hbGl0eShkaXJlY3Rpb24sIHJlc29sdmVyLnBvc2l0aW9uKCkpOwogICAgICAg
ICAgICAgICAgIHJlc29sdmVyLnNldFN0YXR1cyhCaWRpU3RhdHVzKGRpcmVjdGlvbiwgaXNPdmVy
cmlkZShzdHlsZVRvVXNlLnVuaWNvZGVCaWRpKCkpKSk7CkBAIC0xOTY0LDcgKzE5NjQsNyBAQCBM
ZWdhY3lSb290SW5saW5lQm94KiBMZWdhY3lMaW5lTGF5b3V0OjpkZXRlcm1pbmVTdGFydFBvc2l0
aW9uKExpbmVMYXlvdXRTdGF0ZSYgbAogICAgICAgICByZXNvbHZlci5zZXRTdGF0dXMobGFzdExp
bmUtPmxpbmVCcmVha0JpZGlTdGF0dXMoKSk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgVGV4dERp
cmVjdGlvbiBkaXJlY3Rpb24gPSBzdHlsZSgpLmRpcmVjdGlvbigpOwotICAgICAgICBpZiAoc3R5
bGUoKS51bmljb2RlQmlkaSgpID09IFBsYWludGV4dCkKKyAgICAgICAgaWYgKHN0eWxlKCkudW5p
Y29kZUJpZGkoKSA9PSBFVW5pY29kZUJpZGk6OlBsYWludGV4dCkKICAgICAgICAgICAgIGRldGVy
bWluZURpcmVjdGlvbmFsaXR5KGRpcmVjdGlvbiwgTGVnYWN5SW5saW5lSXRlcmF0b3IoJm1fZmxv
dywgZmlyc3RJbmxpbmVSZW5kZXJlclNraXBwaW5nRW1wdHkobV9mbG93KSwgMCkpOwogICAgICAg
ICByZXNvbHZlci5zZXRTdGF0dXMoQmlkaVN0YXR1cyhkaXJlY3Rpb24sIGlzT3ZlcnJpZGUoc3R5
bGUoKS51bmljb2RlQmlkaSgpKSkpOwogICAgICAgICBMZWdhY3lJbmxpbmVJdGVyYXRvciBpdGVy
ID0gTGVnYWN5SW5saW5lSXRlcmF0b3IoJm1fZmxvdywgZmlyc3RJbmxpbmVSZW5kZXJlclNraXBw
aW5nRW1wdHkobV9mbG93LCAmcmVzb2x2ZXIpLCAwKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCmluZGV4IDNmMDQyZWU2ZWNiOTY0MDRhNWIxYTAw
OTRlYzA5YzRjYWJiZGZkYzIuLmFkNWFiYWRhYzA0ZjdkMmViYmNjNjcwNGUwMTI5M2IxZGRmYWUz
YTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHls
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNw
cApAQCAtMTgwLDcgKzE4MCw3IEBAIFJlbmRlclN0eWxlOjpSZW5kZXJTdHlsZShDcmVhdGVEZWZh
dWx0U3R5bGVUYWcpCiAgICAgbV9ub25Jbmhlcml0ZWRGbGFncy52ZXJ0aWNhbEFsaWduID0gc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KGluaXRpYWxWZXJ0aWNhbEFsaWduKCkpOwogICAgIG1fbm9uSW5o
ZXJpdGVkRmxhZ3MuY2xlYXIgPSBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oaW5pdGlhbENsZWFyKCkp
OwogICAgIG1fbm9uSW5oZXJpdGVkRmxhZ3MucG9zaXRpb24gPSBzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4oaW5pdGlhbFBvc2l0aW9uKCkpOwotICAgIG1fbm9uSW5oZXJpdGVkRmxhZ3MudW5pY29kZUJp
ZGkgPSBpbml0aWFsVW5pY29kZUJpZGkoKTsKKyAgICBtX25vbkluaGVyaXRlZEZsYWdzLnVuaWNv
ZGVCaWRpID0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KGluaXRpYWxVbmljb2RlQmlkaSgpKTsKICAg
ICBtX25vbkluaGVyaXRlZEZsYWdzLmZsb2F0aW5nID0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KGlu
aXRpYWxGbG9hdGluZygpKTsKICAgICBtX25vbkluaGVyaXRlZEZsYWdzLnRhYmxlTGF5b3V0ID0g
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KGluaXRpYWxUYWJsZUxheW91dCgpKTsKICAgICBtX25vbklu
aGVyaXRlZEZsYWdzLmhhc0V4cGxpY2l0bHlTZXRCb3JkZXJSYWRpdXMgPSBmYWxzZTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggZDY1MTJhOTk1
NTk5ZjczY2E5MTQ0MjMxM2VjNWNmZDJhZGUwYmFiYS4uMzBkMjc4ZDM3MmVkZDlhNzBlNDMyODU1
N2I5Y2QxNTI2YTA4MzQwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1Jl
bmRlclN0eWxlLmgKQEAgLTk2NSw3ICs5NjUsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRDbGlw
KExlbmd0aCYmIHRvcCwgTGVuZ3RoJiYgcmlnaHQsIExlbmd0aCYmIGJvdHRvbSwgTGVuZ3RoJiYg
bGVmdCk7CiAgICAgdm9pZCBzZXRDbGlwKExlbmd0aEJveCYmIGJveCkgeyBTRVRfVkFSKG1fdmlz
dWFsRGF0YSwgY2xpcCwgV1RGTW92ZShib3gpKTsgfQogCi0gICAgdm9pZCBzZXRVbmljb2RlQmlk
aShFVW5pY29kZUJpZGkgdikgeyBtX25vbkluaGVyaXRlZEZsYWdzLnVuaWNvZGVCaWRpID0gdjsg
fQorICAgIHZvaWQgc2V0VW5pY29kZUJpZGkoRVVuaWNvZGVCaWRpIHYpIHsgbV9ub25Jbmhlcml0
ZWRGbGFncy51bmljb2RlQmlkaSA9IHN0YXRpY19jYXN0PHVuc2lnbmVkPih2KTsgfQogCiAgICAg
dm9pZCBzZXRDbGVhcihDbGVhciB2KSB7IG1fbm9uSW5oZXJpdGVkRmxhZ3MuY2xlYXIgPSBzdGF0
aWNfY2FzdDx1bnNpZ25lZD4odik7IH0KICAgICB2b2lkIHNldFRhYmxlTGF5b3V0KFRhYmxlTGF5
b3V0VHlwZSB2KSB7IG1fbm9uSW5oZXJpdGVkRmxhZ3MudGFibGVMYXlvdXQgPSBzdGF0aWNfY2Fz
dDx1bnNpZ25lZD4odik7IH0KQEAgLTE1NjEsNyArMTU2MSw3IEBAIHB1YmxpYzoKIAogICAgIHN0
YXRpYyBDbGVhciBpbml0aWFsQ2xlYXIoKSB7IHJldHVybiBDbGVhcjo6Tm9uZTsgfQogICAgIHN0
YXRpYyBEaXNwbGF5VHlwZSBpbml0aWFsRGlzcGxheSgpIHsgcmV0dXJuIERpc3BsYXlUeXBlOjpJ
bmxpbmU7IH0KLSAgICBzdGF0aWMgRVVuaWNvZGVCaWRpIGluaXRpYWxVbmljb2RlQmlkaSgpIHsg
cmV0dXJuIFVCTm9ybWFsOyB9CisgICAgc3RhdGljIEVVbmljb2RlQmlkaSBpbml0aWFsVW5pY29k
ZUJpZGkoKSB7IHJldHVybiBFVW5pY29kZUJpZGk6OlVCTm9ybWFsOyB9CiAgICAgc3RhdGljIFBv
c2l0aW9uVHlwZSBpbml0aWFsUG9zaXRpb24oKSB7IHJldHVybiBQb3NpdGlvblR5cGU6OlN0YXRp
YzsgfQogICAgIHN0YXRpYyBWZXJ0aWNhbEFsaWduIGluaXRpYWxWZXJ0aWNhbEFsaWduKCkgeyBy
ZXR1cm4gVmVydGljYWxBbGlnbjo6QmFzZWxpbmU7IH0KICAgICBzdGF0aWMgRmxvYXQgaW5pdGlh
bEZsb2F0aW5nKCkgeyByZXR1cm4gRmxvYXQ6Ok5vbmU7IH0K
</data>
<flag name="commit-queue"
          id="475617"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>449512</attachid>
            <date>2022-01-19 13:32:39 -0800</date>
            <delta_ts>2022-01-19 13:58:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-235379-20220119133238.patch</filename>
            <type>text/plain</type>
            <size>13191</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg4MTk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjI1MDU2YTNiMWQxMzAw
MzE2OTE4Zjk4NWQzNWJmOWUwZDFmODM2My4uZDhiY2IyYWE2NTMwMjU1MDNhMzRmNTUwMDk2YzMw
NDc0OTZiNTU4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIyLTAxLTE5ICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBUdXJuIEVVbmljb2RlQmlkaSBp
bnRvIGFuIGVudW0gY2xhc3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNTM3OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZSk6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRVVuaWNvZGVCaWRpIGNvbnN0KToK
KyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5j
cHA6CisgICAgICAgICogcGxhdGZvcm0vdGV4dC9Vbmljb2RlQmlkaS5oOgorICAgICAgICAoV2Vi
Q29yZTo6aXNJc29sYXRlZCk6CisgICAgICAgIChXZWJDb3JlOjppc092ZXJyaWRlKToKKyAgICAg
ICAgKCk6IERlbGV0ZWQuCisgICAgICAgICogcmVuZGVyaW5nL0xlZ2FjeUlubGluZUl0ZXJhdG9y
Lmg6CisgICAgICAgIChXZWJDb3JlOjplbWJlZENoYXJGcm9tRGlyZWN0aW9uKToKKyAgICAgICAg
KFdlYkNvcmU6Om5vdGlmeU9ic2VydmVyRW50ZXJlZE9iamVjdCk6CisgICAgICAgIChXZWJDb3Jl
Ojpub3RpZnlPYnNlcnZlcldpbGxFeGl0T2JqZWN0KToKKyAgICAgICAgKiByZW5kZXJpbmcvTGVn
YWN5TGluZUxheW91dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMZWdhY3lMaW5lTGF5b3V0Ojp1
cGRhdGVMb2dpY2FsV2lkdGhGb3JBbGlnbm1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6Y29uc3Ry
dWN0QmlkaVJ1bnNGb3JTZWdtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkxlZ2FjeUxpbmVMYXlv
dXQ6OmxheW91dFJ1bnNBbmRGbG9hdHNJblJhbmdlKToKKyAgICAgICAgKFdlYkNvcmU6OkxlZ2Fj
eUxpbmVMYXlvdXQ6OmRldGVybWluZVN0YXJ0UG9zaXRpb24pOgorICAgICAgICAqIHJlbmRlcmlu
Zy9zdHlsZS9SZW5kZXJTdHlsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6
UmVuZGVyU3R5bGUpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldFVuaWNvZGVCaWRpKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclN0eWxlOjppbml0aWFsVW5pY29kZUJpZGkpOgorCiAyMDIyLTAxLTE5
ICBBbGV4ZXkgU2h2YXlrYSAgPGFzaHZheWthQGFwcGxlLmNvbT4KIAogICAgICAgICBDYWxsYmFj
ayBmdW5jdGlvbnMgLyBpbnRlcmZhY2VzIHNob3VsZCB1c2UgZ2xvYmFsIG9iamVjdCBvZiBpdHMg
X3ZhbHVlXyBmb3IgZXJyb3JzIGFuZCBsaWZlY3ljbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCmluZGV4IDE1Njk4ZmJlODdmNzU3YWQxY2YzZTI1
M2I3NDVlY2RiYTdiZDk3YTkuLjgzZTNiZmU5ZjAyNGM1NDhhMDdiYzExMzQ0ZjZmNGY0YTU1NzE2
OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBp
bmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3Mu
aApAQCAtMjYxOSwyMiArMjYxOSwyMiBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRVVuaWNvZGVCaWRpIGUpCiB7CiAgICAgc2V0UHJpbWl0
aXZlVW5pdFR5cGUoQ1NTVW5pdFR5cGU6OkNTU19WQUxVRV9JRCk7CiAgICAgc3dpdGNoIChlKSB7
Ci0gICAgY2FzZSBVQk5vcm1hbDoKKyAgICBjYXNlIEVVbmljb2RlQmlkaTo6VUJOb3JtYWw6CiAg
ICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlTm9ybWFsOwogICAgICAgICBicmVhazsK
LSAgICBjYXNlIEVtYmVkOgorICAgIGNhc2UgRVVuaWNvZGVCaWRpOjpFbWJlZDoKICAgICAgICAg
bV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVFbWJlZDsKICAgICAgICAgYnJlYWs7Ci0gICAgY2Fz
ZSBPdmVycmlkZToKKyAgICBjYXNlIEVVbmljb2RlQmlkaTo6T3ZlcnJpZGU6CiAgICAgICAgIG1f
dmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlQmlkaU92ZXJyaWRlOwogICAgICAgICBicmVhazsKLSAg
ICBjYXNlIElzb2xhdGU6CisgICAgY2FzZSBFVW5pY29kZUJpZGk6Oklzb2xhdGU6CiAgICAgICAg
IG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlSXNvbGF0ZTsKICAgICAgICAgYnJlYWs7Ci0gICAg
Y2FzZSBJc29sYXRlT3ZlcnJpZGU6CisgICAgY2FzZSBFVW5pY29kZUJpZGk6Oklzb2xhdGVPdmVy
cmlkZToKICAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVJc29sYXRlT3ZlcnJpZGU7
CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgUGxhaW50ZXh0OgorICAgIGNhc2UgRVVuaWNvZGVC
aWRpOjpQbGFpbnRleHQ6CiAgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlUGxhaW50
ZXh0OwogICAgICAgICBicmVhazsKICAgICB9CkBAIC0yNjQ2LDI2ICsyNjQ2LDI2IEBAIHRlbXBs
YXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFVW5pY29kZUJpZGkoKSBj
b25zdAogCiAgICAgc3dpdGNoIChtX3ZhbHVlLnZhbHVlSUQpIHsKICAgICBjYXNlIENTU1ZhbHVl
Tm9ybWFsOgotICAgICAgICByZXR1cm4gVUJOb3JtYWw7CisgICAgICAgIHJldHVybiBFVW5pY29k
ZUJpZGk6OlVCTm9ybWFsOwogICAgIGNhc2UgQ1NTVmFsdWVFbWJlZDoKLSAgICAgICAgcmV0dXJu
IEVtYmVkOworICAgICAgICByZXR1cm4gRVVuaWNvZGVCaWRpOjpFbWJlZDsKICAgICBjYXNlIENT
U1ZhbHVlQmlkaU92ZXJyaWRlOgotICAgICAgICByZXR1cm4gT3ZlcnJpZGU7CisgICAgICAgIHJl
dHVybiBFVW5pY29kZUJpZGk6Ok92ZXJyaWRlOwogICAgIGNhc2UgQ1NTVmFsdWVJc29sYXRlOgog
ICAgIGNhc2UgQ1NTVmFsdWVXZWJraXRJc29sYXRlOgotICAgICAgICByZXR1cm4gSXNvbGF0ZTsK
KyAgICAgICAgcmV0dXJuIEVVbmljb2RlQmlkaTo6SXNvbGF0ZTsKICAgICBjYXNlIENTU1ZhbHVl
SXNvbGF0ZU92ZXJyaWRlOgogICAgIGNhc2UgQ1NTVmFsdWVXZWJraXRJc29sYXRlT3ZlcnJpZGU6
Ci0gICAgICAgIHJldHVybiBJc29sYXRlT3ZlcnJpZGU7CisgICAgICAgIHJldHVybiBFVW5pY29k
ZUJpZGk6Oklzb2xhdGVPdmVycmlkZTsKICAgICBjYXNlIENTU1ZhbHVlUGxhaW50ZXh0OgogICAg
IGNhc2UgQ1NTVmFsdWVXZWJraXRQbGFpbnRleHQ6Ci0gICAgICAgIHJldHVybiBQbGFpbnRleHQ7
CisgICAgICAgIHJldHVybiBFVW5pY29kZUJpZGk6OlBsYWludGV4dDsKICAgICBkZWZhdWx0Ogog
ICAgICAgICBicmVhazsKICAgICB9CiAKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICBy
ZXR1cm4gVUJOb3JtYWw7CisgICAgcmV0dXJuIEVVbmljb2RlQmlkaTo6VUJOb3JtYWw7CiB9CiAK
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShV
c2VyRHJhZyBlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9Vbmlj
b2RlQmlkaS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9Vbmljb2RlQmlkaS5oCmlu
ZGV4IDcyNDljZmVmZTY2YzRjY2YzNzIzYTAyMzU5ZDQ1NzA1NzAwMWUyNjMuLjM0MDhiNDU5YzAx
M2E0MmY2ZTAyZTA0Zjk2YTVkNmQzOTMyZGVlODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL3RleHQvVW5pY29kZUJpZGkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS90ZXh0L1VuaWNvZGVCaWRpLmgKQEAgLTI4LDcgKzI4LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCi1lbnVtIEVVbmljb2RlQmlkaSB7CitlbnVtIGNsYXNzIEVVbmljb2RlQmlkaSA6IHVp
bnQ4X3QgewogICAgIFVCTm9ybWFsLAogICAgIEVtYmVkLAogICAgIE92ZXJyaWRlLApAQCAtMzks
MTIgKzM5LDEyIEBAIGVudW0gRVVuaWNvZGVCaWRpIHsKIAogaW5saW5lIGJvb2wgaXNJc29sYXRl
ZChjb25zdCBFVW5pY29kZUJpZGkmIHVuaWNvZGVCaWRpKQogewotICAgIHJldHVybiB1bmljb2Rl
QmlkaSA9PSBJc29sYXRlIHx8IHVuaWNvZGVCaWRpID09IElzb2xhdGVPdmVycmlkZSB8fCB1bmlj
b2RlQmlkaSA9PSBQbGFpbnRleHQ7CisgICAgcmV0dXJuIHVuaWNvZGVCaWRpID09IEVVbmljb2Rl
QmlkaTo6SXNvbGF0ZSB8fCB1bmljb2RlQmlkaSA9PSBFVW5pY29kZUJpZGk6Oklzb2xhdGVPdmVy
cmlkZSB8fCB1bmljb2RlQmlkaSA9PSBFVW5pY29kZUJpZGk6OlBsYWludGV4dDsKIH0KIAogaW5s
aW5lIGJvb2wgaXNPdmVycmlkZShFVW5pY29kZUJpZGkgdW5pY29kZUJpZGkpCiB7Ci0gICAgcmV0
dXJuIHVuaWNvZGVCaWRpID09IE92ZXJyaWRlIHx8IHVuaWNvZGVCaWRpID09IElzb2xhdGVPdmVy
cmlkZTsKKyAgICByZXR1cm4gdW5pY29kZUJpZGkgPT0gRVVuaWNvZGVCaWRpOjpPdmVycmlkZSB8
fCB1bmljb2RlQmlkaSA9PSBFVW5pY29kZUJpZGk6Oklzb2xhdGVPdmVycmlkZTsKIH0KIAogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUl0ZXJhdG9y
LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lSXRlcmF0b3IuaAppbmRl
eCAxZmEwZjA2YTZkOTI5NjBhNDI0MDEyN2QwN2I3NzExMGU4OTA1M2IyLi40MmQ0YzUxM2VkNGU2
MWJlZWI2YzE2MjcyYTM5NzFjZGYwNDk0MjhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvTGVnYWN5SW5saW5lSXRlcmF0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvTGVnYWN5SW5saW5lSXRlcmF0b3IuaApAQCAtMTQyLDcgKzE0Miw3IEBAIGlubGluZSBi
b29sIG9wZXJhdG9yIT0oY29uc3QgTGVnYWN5SW5saW5lSXRlcmF0b3ImIGl0MSwgY29uc3QgTGVn
YWN5SW5saW5lSXRlcmF0CiAKIHN0YXRpYyBpbmxpbmUgVUNoYXJEaXJlY3Rpb24gZW1iZWRDaGFy
RnJvbURpcmVjdGlvbihUZXh0RGlyZWN0aW9uIGRpcmVjdGlvbiwgRVVuaWNvZGVCaWRpIHVuaWNv
ZGVCaWRpKQogewotICAgIGlmICh1bmljb2RlQmlkaSA9PSBFbWJlZCkKKyAgICBpZiAodW5pY29k
ZUJpZGkgPT0gRVVuaWNvZGVCaWRpOjpFbWJlZCkKICAgICAgICAgcmV0dXJuIGRpcmVjdGlvbiA9
PSBUZXh0RGlyZWN0aW9uOjpSVEwgPyBVX1JJR0hUX1RPX0xFRlRfRU1CRURESU5HIDogVV9MRUZU
X1RPX1JJR0hUX0VNQkVERElORzsKICAgICByZXR1cm4gZGlyZWN0aW9uID09IFRleHREaXJlY3Rp
b246OlJUTCA/IFVfUklHSFRfVE9fTEVGVF9PVkVSUklERSA6IFVfTEVGVF9UT19SSUdIVF9PVkVS
UklERTsKIH0KQEAgLTE1NSw3ICsxNTUsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgbm90aWZ5T2Jz
ZXJ2ZXJFbnRlcmVkT2JqZWN0KE9ic2VydmVyKiBvYnNlcnZlciwgUmVuZGVyT2JqZWN0KgogCiAg
ICAgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlID0gb2JqZWN0LT5zdHlsZSgpOwogICAgIEVVbmlj
b2RlQmlkaSB1bmljb2RlQmlkaSA9IHN0eWxlLnVuaWNvZGVCaWRpKCk7Ci0gICAgaWYgKHVuaWNv
ZGVCaWRpID09IFVCTm9ybWFsKSB7CisgICAgaWYgKHVuaWNvZGVCaWRpID09IEVVbmljb2RlQmlk
aTo6VUJOb3JtYWwpIHsKICAgICAgICAgLy8gaHR0cDovL2Rldi53My5vcmcvY3Nzd2cvY3NzMy13
cml0aW5nLW1vZGVzLyN1bmljb2RlLWJpZGkKICAgICAgICAgLy8gIlRoZSBlbGVtZW50IGRvZXMg
bm90IG9wZW4gYW4gYWRkaXRpb25hbCBsZXZlbCBvZiBlbWJlZGRpbmcgd2l0aCByZXNwZWN0IHRv
IHRoZSBiaWRpcmVjdGlvbmFsIGFsZ29yaXRobS4iCiAgICAgICAgIC8vIFRodXMgd2UgaWdub3Jl
IGFueSBwb3NzaWJsZSBkaXI9IGF0dHJpYnV0ZSBvbiB0aGUgc3Bhbi4KQEAgLTE4MSw3ICsxODEs
NyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgbm90aWZ5T2JzZXJ2ZXJXaWxsRXhpdE9iamVjdChPYnNl
cnZlciogb2JzZXJ2ZXIsIFJlbmRlck9iamVjdAogICAgICAgICByZXR1cm47CiAKICAgICBFVW5p
Y29kZUJpZGkgdW5pY29kZUJpZGkgPSBvYmplY3QtPnN0eWxlKCkudW5pY29kZUJpZGkoKTsKLSAg
ICBpZiAodW5pY29kZUJpZGkgPT0gVUJOb3JtYWwpCisgICAgaWYgKHVuaWNvZGVCaWRpID09IEVV
bmljb2RlQmlkaTo6VUJOb3JtYWwpCiAgICAgICAgIHJldHVybjsgLy8gTm90aGluZyB0byBkbyBm
b3IgdW5pY29kZS1iaWRpOiBub3JtYWwKICAgICBpZiAoaXNJc29sYXRlZCh1bmljb2RlQmlkaSkp
IHsKICAgICAgICAgb2JzZXJ2ZXItPmV4aXRJc29sYXRlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5TGluZUxheW91dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvTGVnYWN5TGluZUxheW91dC5jcHAKaW5kZXggNzFkMTkxNmQ0NzIzYmRmZTg2YTMx
MWY2ZTMyMWRhNGIxZjQ1YjdmOC4uNzE0MmM1OWZiZjViOGQwNDQ5MGVjMzU4ZjhjNjY2M2I1YzZm
YzkzZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUxpbmVMYXlv
dXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lMaW5lTGF5b3V0LmNw
cApAQCAtNjMyLDcgKzYzMiw3IEBAIHZvaWQgTGVnYWN5TGluZUxheW91dDo6Y29tcHV0ZUV4cGFu
c2lvbkZvckp1c3RpZmllZFRleHQoQmlkaVJ1biogZmlyc3RSdW4sIEJpZGlSCiB2b2lkIExlZ2Fj
eUxpbmVMYXlvdXQ6OnVwZGF0ZUxvZ2ljYWxXaWR0aEZvckFsaWdubWVudChSZW5kZXJCbG9ja0Zs
b3cmIGZsb3csIGNvbnN0IFRleHRBbGlnbk1vZGUmIHRleHRBbGlnbiwgY29uc3QgTGVnYWN5Um9v
dElubGluZUJveCogcm9vdElubGluZUJveCwgQmlkaVJ1biogdHJhaWxpbmdTcGFjZVJ1biwgZmxv
YXQmIGxvZ2ljYWxMZWZ0LCBmbG9hdCYgdG90YWxMb2dpY2FsV2lkdGgsIGZsb2F0JiBhdmFpbGFi
bGVMb2dpY2FsV2lkdGgsIGludCBleHBhbnNpb25PcHBvcnR1bml0eUNvdW50KQogewogICAgIFRl
eHREaXJlY3Rpb24gZGlyZWN0aW9uOwotICAgIGlmIChyb290SW5saW5lQm94ICYmIGZsb3cuc3R5
bGUoKS51bmljb2RlQmlkaSgpID09IFBsYWludGV4dCkKKyAgICBpZiAocm9vdElubGluZUJveCAm
JiBmbG93LnN0eWxlKCkudW5pY29kZUJpZGkoKSA9PSBFVW5pY29kZUJpZGk6OlBsYWludGV4dCkK
ICAgICAgICAgZGlyZWN0aW9uID0gcm9vdElubGluZUJveC0+ZGlyZWN0aW9uKCk7CiAgICAgZWxz
ZQogICAgICAgICBkaXJlY3Rpb24gPSBmbG93LnN0eWxlKCkuZGlyZWN0aW9uKCk7CkBAIC0xMTk4
LDEwICsxMTk4LDEwIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBjb25zdHJ1Y3RCaWRpUnVuc0ZvclNl
Z21lbnQoSW5saW5lQmlkaVJlc29sdmVyJiB0b3BSZXNvbHZlciwKICAgICAgICAgSW5saW5lQmlk
aVJlc29sdmVyIGlzb2xhdGVkUmVzb2x2ZXI7CiAgICAgICAgIEVVbmljb2RlQmlkaSB1bmljb2Rl
QmlkaSA9IGlzb2xhdGVkSW5saW5lLT5zdHlsZSgpLnVuaWNvZGVCaWRpKCk7CiAgICAgICAgIFRl
eHREaXJlY3Rpb24gZGlyZWN0aW9uOwotICAgICAgICBpZiAodW5pY29kZUJpZGkgPT0gUGxhaW50
ZXh0KQorICAgICAgICBpZiAodW5pY29kZUJpZGkgPT0gRVVuaWNvZGVCaWRpOjpQbGFpbnRleHQp
CiAgICAgICAgICAgICBkZXRlcm1pbmVEaXJlY3Rpb25hbGl0eShkaXJlY3Rpb24sIExlZ2FjeUlu
bGluZUl0ZXJhdG9yKGlzb2xhdGVkSW5saW5lLCAmaXNvbGF0ZWRSdW4ub2JqZWN0LCAwKSk7CiAg
ICAgICAgIGVsc2UgewotICAgICAgICAgICAgQVNTRVJUKHVuaWNvZGVCaWRpID09IElzb2xhdGUg
fHwgdW5pY29kZUJpZGkgPT0gSXNvbGF0ZU92ZXJyaWRlKTsKKyAgICAgICAgICAgIEFTU0VSVCh1
bmljb2RlQmlkaSA9PSBFVW5pY29kZUJpZGk6Oklzb2xhdGUgfHwgdW5pY29kZUJpZGkgPT0gRVVu
aWNvZGVCaWRpOjpJc29sYXRlT3ZlcnJpZGUpOwogICAgICAgICAgICAgZGlyZWN0aW9uID0gaXNv
bGF0ZWRJbmxpbmUtPnN0eWxlKCkuZGlyZWN0aW9uKCk7CiAgICAgICAgIH0KICAgICAgICAgaXNv
bGF0ZWRSZXNvbHZlci5zZXRTdGF0dXMoQmlkaVN0YXR1cyhkaXJlY3Rpb24sIGlzT3ZlcnJpZGUo
dW5pY29kZUJpZGkpKSk7CkBAIC0xNDMzLDcgKzE0MzMsNyBAQCB2b2lkIExlZ2FjeUxpbmVMYXlv
dXQ6OmxheW91dFJ1bnNBbmRGbG9hdHNJblJhbmdlKExpbmVMYXlvdXRTdGF0ZSYgbGF5b3V0U3Rh
dGUsCiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBWaXN1YWxEaXJlY3Rpb25PdmVycmlk
ZSBvdmVycmlkZSA9IChzdHlsZVRvVXNlLnJ0bE9yZGVyaW5nKCkgPT0gT3JkZXI6OlZpc3VhbCA/
IChzdHlsZVRvVXNlLmRpcmVjdGlvbigpID09IFRleHREaXJlY3Rpb246OkxUUiA/IFZpc3VhbExl
ZnRUb1JpZ2h0T3ZlcnJpZGUgOiBWaXN1YWxSaWdodFRvTGVmdE92ZXJyaWRlKSA6IE5vVmlzdWFs
T3ZlcnJpZGUpOwogCi0gICAgICAgICAgICBpZiAoaXNOZXdVQkFQYXJhZ3JhcGggJiYgc3R5bGVU
b1VzZS51bmljb2RlQmlkaSgpID09IFBsYWludGV4dCAmJiAhcmVzb2x2ZXIuY29udGV4dCgpLT5w
YXJlbnQoKSkgeworICAgICAgICAgICAgaWYgKGlzTmV3VUJBUGFyYWdyYXBoICYmIHN0eWxlVG9V
c2UudW5pY29kZUJpZGkoKSA9PSBFVW5pY29kZUJpZGk6OlBsYWludGV4dCAmJiAhcmVzb2x2ZXIu
Y29udGV4dCgpLT5wYXJlbnQoKSkgewogICAgICAgICAgICAgICAgIFRleHREaXJlY3Rpb24gZGly
ZWN0aW9uID0gc3R5bGVUb1VzZS5kaXJlY3Rpb24oKTsKICAgICAgICAgICAgICAgICBkZXRlcm1p
bmVEaXJlY3Rpb25hbGl0eShkaXJlY3Rpb24sIHJlc29sdmVyLnBvc2l0aW9uKCkpOwogICAgICAg
ICAgICAgICAgIHJlc29sdmVyLnNldFN0YXR1cyhCaWRpU3RhdHVzKGRpcmVjdGlvbiwgaXNPdmVy
cmlkZShzdHlsZVRvVXNlLnVuaWNvZGVCaWRpKCkpKSk7CkBAIC0xOTY0LDcgKzE5NjQsNyBAQCBM
ZWdhY3lSb290SW5saW5lQm94KiBMZWdhY3lMaW5lTGF5b3V0OjpkZXRlcm1pbmVTdGFydFBvc2l0
aW9uKExpbmVMYXlvdXRTdGF0ZSYgbAogICAgICAgICByZXNvbHZlci5zZXRTdGF0dXMobGFzdExp
bmUtPmxpbmVCcmVha0JpZGlTdGF0dXMoKSk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgVGV4dERp
cmVjdGlvbiBkaXJlY3Rpb24gPSBzdHlsZSgpLmRpcmVjdGlvbigpOwotICAgICAgICBpZiAoc3R5
bGUoKS51bmljb2RlQmlkaSgpID09IFBsYWludGV4dCkKKyAgICAgICAgaWYgKHN0eWxlKCkudW5p
Y29kZUJpZGkoKSA9PSBFVW5pY29kZUJpZGk6OlBsYWludGV4dCkKICAgICAgICAgICAgIGRldGVy
bWluZURpcmVjdGlvbmFsaXR5KGRpcmVjdGlvbiwgTGVnYWN5SW5saW5lSXRlcmF0b3IoJm1fZmxv
dywgZmlyc3RJbmxpbmVSZW5kZXJlclNraXBwaW5nRW1wdHkobV9mbG93KSwgMCkpOwogICAgICAg
ICByZXNvbHZlci5zZXRTdGF0dXMoQmlkaVN0YXR1cyhkaXJlY3Rpb24sIGlzT3ZlcnJpZGUoc3R5
bGUoKS51bmljb2RlQmlkaSgpKSkpOwogICAgICAgICBMZWdhY3lJbmxpbmVJdGVyYXRvciBpdGVy
ID0gTGVnYWN5SW5saW5lSXRlcmF0b3IoJm1fZmxvdywgZmlyc3RJbmxpbmVSZW5kZXJlclNraXBw
aW5nRW1wdHkobV9mbG93LCAmcmVzb2x2ZXIpLCAwKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJNZW51TGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTWVudUxpc3QuY3BwCmluZGV4IDQwNTYxZjFkMWZmYzRjMjMwNjRhNDUzYTc5NTEw
NGJmMmFiOTUyMjcuLjkyMTg0NTEwZjc2ZWZlNzRiMDRiZmEwNWRiYmEwNzQ3OTRjMDJmNDUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZW51TGlzdC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck1lbnVMaXN0LmNwcApAQCAtMTQxLDcg
KzE0MSw3IEBAIHZvaWQgUmVuZGVyTWVudUxpc3Q6OmFkanVzdElubmVyU3R5bGUoKQogICAgICAg
ICBFVW5pY29kZUJpZGkgdW5pY29kZUJpZGk7CiAgICAgICAgIGlmIChtdWx0aXBsZSgpICYmIHNl
bGVjdGVkT3B0aW9uQ291bnQoKnRoaXMpICE9IDEpIHsKICAgICAgICAgICAgIGRpcmVjdGlvbiA9
IChtX2J1dHRvblRleHQgJiYgbV9idXR0b25UZXh0LT50ZXh0KCkuZGVmYXVsdFdyaXRpbmdEaXJl
Y3Rpb24oKSA9PSBVX1JJR0hUX1RPX0xFRlQpID8gVGV4dERpcmVjdGlvbjo6UlRMIDogVGV4dERp
cmVjdGlvbjo6TFRSOwotICAgICAgICAgICAgdW5pY29kZUJpZGkgPSBVQk5vcm1hbDsKKyAgICAg
ICAgICAgIHVuaWNvZGVCaWRpID0gRVVuaWNvZGVCaWRpOjpVQk5vcm1hbDsKICAgICAgICAgfSBl
bHNlIGlmIChtX29wdGlvblN0eWxlKSB7CiAgICAgICAgICAgICBkaXJlY3Rpb24gPSBtX29wdGlv
blN0eWxlLT5kaXJlY3Rpb24oKTsKICAgICAgICAgICAgIHVuaWNvZGVCaWRpID0gbV9vcHRpb25T
dHlsZS0+dW5pY29kZUJpZGkoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
UmVuZGVyU3R5bGUuY3BwCmluZGV4IDNmMDQyZWU2ZWNiOTY0MDRhNWIxYTAwOTRlYzA5YzRjYWJi
ZGZkYzIuLmFkNWFiYWRhYzA0ZjdkMmViYmNjNjcwNGUwMTI5M2IxZGRmYWUzYTQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcApAQCAtMTgwLDcg
KzE4MCw3IEBAIFJlbmRlclN0eWxlOjpSZW5kZXJTdHlsZShDcmVhdGVEZWZhdWx0U3R5bGVUYWcp
CiAgICAgbV9ub25Jbmhlcml0ZWRGbGFncy52ZXJ0aWNhbEFsaWduID0gc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KGluaXRpYWxWZXJ0aWNhbEFsaWduKCkpOwogICAgIG1fbm9uSW5oZXJpdGVkRmxhZ3Mu
Y2xlYXIgPSBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oaW5pdGlhbENsZWFyKCkpOwogICAgIG1fbm9u
SW5oZXJpdGVkRmxhZ3MucG9zaXRpb24gPSBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oaW5pdGlhbFBv
c2l0aW9uKCkpOwotICAgIG1fbm9uSW5oZXJpdGVkRmxhZ3MudW5pY29kZUJpZGkgPSBpbml0aWFs
VW5pY29kZUJpZGkoKTsKKyAgICBtX25vbkluaGVyaXRlZEZsYWdzLnVuaWNvZGVCaWRpID0gc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KGluaXRpYWxVbmljb2RlQmlkaSgpKTsKICAgICBtX25vbkluaGVy
aXRlZEZsYWdzLmZsb2F0aW5nID0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KGluaXRpYWxGbG9hdGlu
ZygpKTsKICAgICBtX25vbkluaGVyaXRlZEZsYWdzLnRhYmxlTGF5b3V0ID0gc3RhdGljX2Nhc3Q8
dW5zaWduZWQ+KGluaXRpYWxUYWJsZUxheW91dCgpKTsKICAgICBtX25vbkluaGVyaXRlZEZsYWdz
Lmhhc0V4cGxpY2l0bHlTZXRCb3JkZXJSYWRpdXMgPSBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggZDY1MTJhOTk1NTk5ZjczY2E5MTQ0
MjMxM2VjNWNmZDJhZGUwYmFiYS4uMzBkMjc4ZDM3MmVkZDlhNzBlNDMyODU1N2I5Y2QxNTI2YTA4
MzQwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0
eWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgK
QEAgLTk2NSw3ICs5NjUsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRDbGlwKExlbmd0aCYmIHRv
cCwgTGVuZ3RoJiYgcmlnaHQsIExlbmd0aCYmIGJvdHRvbSwgTGVuZ3RoJiYgbGVmdCk7CiAgICAg
dm9pZCBzZXRDbGlwKExlbmd0aEJveCYmIGJveCkgeyBTRVRfVkFSKG1fdmlzdWFsRGF0YSwgY2xp
cCwgV1RGTW92ZShib3gpKTsgfQogCi0gICAgdm9pZCBzZXRVbmljb2RlQmlkaShFVW5pY29kZUJp
ZGkgdikgeyBtX25vbkluaGVyaXRlZEZsYWdzLnVuaWNvZGVCaWRpID0gdjsgfQorICAgIHZvaWQg
c2V0VW5pY29kZUJpZGkoRVVuaWNvZGVCaWRpIHYpIHsgbV9ub25Jbmhlcml0ZWRGbGFncy51bmlj
b2RlQmlkaSA9IHN0YXRpY19jYXN0PHVuc2lnbmVkPih2KTsgfQogCiAgICAgdm9pZCBzZXRDbGVh
cihDbGVhciB2KSB7IG1fbm9uSW5oZXJpdGVkRmxhZ3MuY2xlYXIgPSBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4odik7IH0KICAgICB2b2lkIHNldFRhYmxlTGF5b3V0KFRhYmxlTGF5b3V0VHlwZSB2KSB7
IG1fbm9uSW5oZXJpdGVkRmxhZ3MudGFibGVMYXlvdXQgPSBzdGF0aWNfY2FzdDx1bnNpZ25lZD4o
dik7IH0KQEAgLTE1NjEsNyArMTU2MSw3IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyBDbGVhciBp
bml0aWFsQ2xlYXIoKSB7IHJldHVybiBDbGVhcjo6Tm9uZTsgfQogICAgIHN0YXRpYyBEaXNwbGF5
VHlwZSBpbml0aWFsRGlzcGxheSgpIHsgcmV0dXJuIERpc3BsYXlUeXBlOjpJbmxpbmU7IH0KLSAg
ICBzdGF0aWMgRVVuaWNvZGVCaWRpIGluaXRpYWxVbmljb2RlQmlkaSgpIHsgcmV0dXJuIFVCTm9y
bWFsOyB9CisgICAgc3RhdGljIEVVbmljb2RlQmlkaSBpbml0aWFsVW5pY29kZUJpZGkoKSB7IHJl
dHVybiBFVW5pY29kZUJpZGk6OlVCTm9ybWFsOyB9CiAgICAgc3RhdGljIFBvc2l0aW9uVHlwZSBp
bml0aWFsUG9zaXRpb24oKSB7IHJldHVybiBQb3NpdGlvblR5cGU6OlN0YXRpYzsgfQogICAgIHN0
YXRpYyBWZXJ0aWNhbEFsaWduIGluaXRpYWxWZXJ0aWNhbEFsaWduKCkgeyByZXR1cm4gVmVydGlj
YWxBbGlnbjo6QmFzZWxpbmU7IH0KICAgICBzdGF0aWMgRmxvYXQgaW5pdGlhbEZsb2F0aW5nKCkg
eyByZXR1cm4gRmxvYXQ6Ok5vbmU7IH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>449516</attachid>
            <date>2022-01-19 13:58:13 -0800</date>
            <delta_ts>2022-01-19 17:08:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-235379-20220119135812.patch</filename>
            <type>text/plain</type>
            <size>25291</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg4MTk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjI1MDU2YTNiMWQxMzAw
MzE2OTE4Zjk4NWQzNWJmOWUwZDFmODM2My4uZGEzNGRiZDYzZjUyN2VjNGM5NDdkZGRkZDI0MDll
MGExN2U0NDY5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDIyLTAxLTE5ICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBUdXJuIEVVbmljb2RlQmlkaSBp
bnRvIGFuIGVudW0gY2xhc3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNTM3OQorCisgICAgICAgIFJldmlld2VkIGJ5IEFudHRpIEtvaXZpc3RvLgor
CisgICAgICAgICogV2ViQ29yZS5vcmRlcjoKKyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFs
dWVNYXBwaW5ncy5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1By
aW1pdGl2ZVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpvcGVy
YXRvciBVbmljb2RlQmlkaSBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcmltaXRpdmVW
YWx1ZTo6b3BlcmF0b3IgRVVuaWNvZGVCaWRpIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKiBs
YXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpoYW5kbGVFbnRlckV4aXRCaWRpQ29udGV4dCk6Cisg
ICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OmJ1aWxkQmlkaVBhcmFncmFwaCk6CisgICAgICAgIChX
ZWJDb3JlOjpMYXlvdXQ6OklubGluZUl0ZW1zQnVpbGRlcjo6YnJlYWtBbmRDb21wdXRlQmlkaUxl
dmVscyk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OklubGluZUl0ZW1zQnVpbGRlcjo6aGFu
ZGxlSW5saW5lQm94U3RhcnQpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVJdGVt
c0J1aWxkZXI6OmhhbmRsZUlubGluZUJveEVuZCk6CisgICAgICAgICogbGF5b3V0L2ludGVncmF0
aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJhZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5
b3V0SW50ZWdyYXRpb246OmNhblVzZUZvclN0eWxlKToKKyAgICAgICAgKiBwbGF0Zm9ybS90ZXh0
L1VuaWNvZGVCaWRpLmg6CisgICAgICAgIChXZWJDb3JlOjppc0lzb2xhdGVkKToKKyAgICAgICAg
KFdlYkNvcmU6OmlzT3ZlcnJpZGUpOgorICAgICAgICAoKTogRGVsZXRlZC4KKyAgICAgICAgKiBy
ZW5kZXJpbmcvTGVnYWN5SW5saW5lSXRlcmF0b3IuaDoKKyAgICAgICAgKFdlYkNvcmU6OmVtYmVk
Q2hhckZyb21EaXJlY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6bm90aWZ5T2JzZXJ2ZXJFbnRl
cmVkT2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6Om5vdGlmeU9ic2VydmVyV2lsbEV4aXRPYmpl
Y3QpOgorICAgICAgICAqIHJlbmRlcmluZy9MZWdhY3lMaW5lTGF5b3V0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkxlZ2FjeUxpbmVMYXlvdXQ6OnVwZGF0ZUxvZ2ljYWxXaWR0aEZvckFsaWdubWVu
dCk6CisgICAgICAgIChXZWJDb3JlOjpjb25zdHJ1Y3RCaWRpUnVuc0ZvclNlZ21lbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6TGVnYWN5TGluZUxheW91dDo6bGF5b3V0UnVuc0FuZEZsb2F0c0luUmFu
Z2UpOgorICAgICAgICAoV2ViQ29yZTo6TGVnYWN5TGluZUxheW91dDo6ZGV0ZXJtaW5lU3RhcnRQ
b3NpdGlvbik6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxpc3RJdGVtLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckxpc3RJdGVtOjpjb21wdXRlTWFya2VyU3R5bGUgY29uc3QpOgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJNZW51TGlzdC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJNZW51TGlzdDo6YWRqdXN0SW5uZXJTdHlsZSk6CisgICAgICAgICogcmVuZGVyaW5n
L3N0eWxlL1JlbmRlclN0eWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpS
ZW5kZXJTdHlsZSk6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6dW5pY29kZUJpZGkgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldFVuaWNvZGVCaWRpKToKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlclN0eWxlOjppbml0aWFsVW5pY29kZUJpZGkpOgorCiAyMDIyLTAxLTE5ICBBbGV4
ZXkgU2h2YXlrYSAgPGFzaHZheWthQGFwcGxlLmNvbT4KIAogICAgICAgICBDYWxsYmFjayBmdW5j
dGlvbnMgLyBpbnRlcmZhY2VzIHNob3VsZCB1c2UgZ2xvYmFsIG9iamVjdCBvZiBpdHMgX3ZhbHVl
XyBmb3IgZXJyb3JzIGFuZCBsaWZlY3ljbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUub3JkZXIgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLm9yZGVyCmluZGV4IDMzYWMzNWRm
N2QzZDU4M2M4NmQyNzU2NTRjYWRjMWNhZjc1YjA3OWEuLmM0ODk4ZDZkYjZiZjA2NTUyZjYwMmM0
YjdmMGE3MjY3ZTY0ZTQ0ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUub3Jk
ZXIKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5vcmRlcgpAQCAtODkwOSw3ICs4OTA5LDcg
QEAgX19aTjdXZWJDb3JlMjRwYXJzZVhGcmFtZU9wdGlvbnNIZWFkZXJFUktOM1dURjZTdHJpbmdF
CiBfX1pON1dlYkNvcmUxNVNlZ21lbnRlZFN0cmluZzI4YWR2YW5jZUFuZFVwZGF0ZUxpbmVOdW1i
ZXIxNkV2CiBfX1pON1dlYkNvcmUxNVNlZ21lbnRlZFN0cmluZzlhZHZhbmNlMTZFdgogX19aTjdX
ZWJDb3JlMTNTdHlsZWRFbGVtZW50MzlhZGRQcm9wZXJ0eVRvUHJlc2VudGF0aW9uQXR0cmlidXRl
U3R5bGVFUE5TXzIzTXV0YWJsZVN0eWxlUHJvcGVydHlTZXRFTlNfMTNDU1NQcm9wZXJ0eUlERWkK
LV9fWk43V2ViQ29yZTIwQXBwbHlQcm9wZXJ0eURlZmF1bHRJTlNfMTJFVW5pY29kZUJpZGlFWGFk
TF9aTktTXzExUmVuZGVyU3R5bGUxMXVuaWNvZGVCaWRpRXZFRVMxX1hhZExfWk5TMl8xNHNldFVu
aWNvZGVCaWRpRVMxX0VFUzFfWGFkTF9aTlMyXzE4aW5pdGlhbFVuaWNvZGVCaWRpRXZFRUUxMGFw
cGx5VmFsdWVFTlNfMTNDU1NQcm9wZXJ0eUlERVBOU18xM1N0eWxlUmVzb2x2ZXJFUE5TXzhDU1NW
YWx1ZUUKK19fWk43V2ViQ29yZTIwQXBwbHlQcm9wZXJ0eURlZmF1bHRJTlNfMTJVbmljb2RlQmlk
aUVYYWRMX1pOS1NfMTFSZW5kZXJTdHlsZTExdW5pY29kZUJpZGlFdkVFUzFfWGFkTF9aTlMyXzE0
c2V0VW5pY29kZUJpZGlFUzFfRUVTMV9YYWRMX1pOUzJfMThpbml0aWFsVW5pY29kZUJpZGlFdkVF
RTEwYXBwbHlWYWx1ZUVOU18xM0NTU1Byb3BlcnR5SURFUE5TXzEzU3R5bGVSZXNvbHZlckVQTlNf
OENTU1ZhbHVlRQogX19aTks3V2ViQ29yZThEb2N1bWVudDE0aGFzU1ZHUm9vdE5vZGVFdgogX19a
TjNXVEY2VmVjdG9ySU43V2ViQ29yZTZSZWdpb240U3BhbkVMbTE2RU5TXzE1Q3Jhc2hPbk92ZXJm
bG93RUUxNGV4cGFuZENhcGFjaXR5RW1QS1MzXwogX19aTjNXVEY2VmVjdG9ySU43V2ViQ29yZTZS
ZWdpb240U3BhbkVMbTE2RU5TXzE1Q3Jhc2hPbk92ZXJmbG93RUUxNXJlc2VydmVDYXBhY2l0eUVt
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5n
cy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAppbmRl
eCAxNTY5OGZiZTg3Zjc1N2FkMWNmM2UyNTNiNzQ1ZWNkYmE3YmQ5N2E5Li44NmVmZTZiYWZlM2U3
MDZmMjk0OGQzMDg4ZTZiNTc5MWY4NzYxNzNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKQEAgLTI2MTQsNTggKzI2MTQsNTggQEAgdGVtcGxh
dGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIFRleHRUcmFuc2Zvcm0oKSBj
b25zdAogICAgIHJldHVybiBUZXh0VHJhbnNmb3JtOjpOb25lOwogfQogCi10ZW1wbGF0ZTw+IGlu
bGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRVVuaWNvZGVCaWRpIGUp
Cit0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUo
VW5pY29kZUJpZGkgZSkKICAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogewogICAgIHNl
dFByaW1pdGl2ZVVuaXRUeXBlKENTU1VuaXRUeXBlOjpDU1NfVkFMVUVfSUQpOwogICAgIHN3aXRj
aCAoZSkgewotICAgIGNhc2UgVUJOb3JtYWw6CisgICAgY2FzZSBVbmljb2RlQmlkaTo6VUJOb3Jt
YWw6CiAgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlTm9ybWFsOwogICAgICAgICBi
cmVhazsKLSAgICBjYXNlIEVtYmVkOgorICAgIGNhc2UgVW5pY29kZUJpZGk6OkVtYmVkOgogICAg
ICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUVtYmVkOwogICAgICAgICBicmVhazsKLSAg
ICBjYXNlIE92ZXJyaWRlOgorICAgIGNhc2UgVW5pY29kZUJpZGk6Ok92ZXJyaWRlOgogICAgICAg
ICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUJpZGlPdmVycmlkZTsKICAgICAgICAgYnJlYWs7
Ci0gICAgY2FzZSBJc29sYXRlOgorICAgIGNhc2UgVW5pY29kZUJpZGk6Oklzb2xhdGU6CiAgICAg
ICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlSXNvbGF0ZTsKICAgICAgICAgYnJlYWs7Ci0g
ICAgY2FzZSBJc29sYXRlT3ZlcnJpZGU6CisgICAgY2FzZSBVbmljb2RlQmlkaTo6SXNvbGF0ZU92
ZXJyaWRlOgogICAgICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUlzb2xhdGVPdmVycmlk
ZTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBQbGFpbnRleHQ6CisgICAgY2FzZSBVbmljb2Rl
QmlkaTo6UGxhaW50ZXh0OgogICAgICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZVBsYWlu
dGV4dDsKICAgICAgICAgYnJlYWs7CiAgICAgfQogfQogCi10ZW1wbGF0ZTw+IGlubGluZSBDU1NQ
cmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRVVuaWNvZGVCaWRpKCkgY29uc3QKK3RlbXBsYXRlPD4g
aW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBVbmljb2RlQmlkaSgpIGNvbnN0CiB7
CiAgICAgQVNTRVJUKGlzVmFsdWVJRCgpKTsKIAogICAgIHN3aXRjaCAobV92YWx1ZS52YWx1ZUlE
KSB7CiAgICAgY2FzZSBDU1NWYWx1ZU5vcm1hbDoKLSAgICAgICAgcmV0dXJuIFVCTm9ybWFsOwor
ICAgICAgICByZXR1cm4gVW5pY29kZUJpZGk6OlVCTm9ybWFsOwogICAgIGNhc2UgQ1NTVmFsdWVF
bWJlZDoKLSAgICAgICAgcmV0dXJuIEVtYmVkOworICAgICAgICByZXR1cm4gVW5pY29kZUJpZGk6
OkVtYmVkOwogICAgIGNhc2UgQ1NTVmFsdWVCaWRpT3ZlcnJpZGU6Ci0gICAgICAgIHJldHVybiBP
dmVycmlkZTsKKyAgICAgICAgcmV0dXJuIFVuaWNvZGVCaWRpOjpPdmVycmlkZTsKICAgICBjYXNl
IENTU1ZhbHVlSXNvbGF0ZToKICAgICBjYXNlIENTU1ZhbHVlV2Via2l0SXNvbGF0ZToKLSAgICAg
ICAgcmV0dXJuIElzb2xhdGU7CisgICAgICAgIHJldHVybiBVbmljb2RlQmlkaTo6SXNvbGF0ZTsK
ICAgICBjYXNlIENTU1ZhbHVlSXNvbGF0ZU92ZXJyaWRlOgogICAgIGNhc2UgQ1NTVmFsdWVXZWJr
aXRJc29sYXRlT3ZlcnJpZGU6Ci0gICAgICAgIHJldHVybiBJc29sYXRlT3ZlcnJpZGU7CisgICAg
ICAgIHJldHVybiBVbmljb2RlQmlkaTo6SXNvbGF0ZU92ZXJyaWRlOwogICAgIGNhc2UgQ1NTVmFs
dWVQbGFpbnRleHQ6CiAgICAgY2FzZSBDU1NWYWx1ZVdlYmtpdFBsYWludGV4dDoKLSAgICAgICAg
cmV0dXJuIFBsYWludGV4dDsKKyAgICAgICAgcmV0dXJuIFVuaWNvZGVCaWRpOjpQbGFpbnRleHQ7
CiAgICAgZGVmYXVsdDoKICAgICAgICAgYnJlYWs7CiAgICAgfQogCiAgICAgQVNTRVJUX05PVF9S
RUFDSEVEKCk7Ci0gICAgcmV0dXJuIFVCTm9ybWFsOworICAgIHJldHVybiBVbmljb2RlQmlkaTo6
VUJOb3JtYWw7CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQ
cmltaXRpdmVWYWx1ZShVc2VyRHJhZyBlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lSXRlbXNCdWlsZGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUl0ZW1z
QnVpbGRlci5jcHAKaW5kZXggNmRkZWNiNWJmYmRlZDY2MWRkNGY1MzcyZmYzYWNjMGEyYmNjMjJh
NS4uYzNlN2YwZmJkZDk0NmQ2N2E0MDEyZTJiOWZmYjQyNzE3NGVlNTM5MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lSXRl
bXNCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRl
eHRzL2lubGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuY3BwCkBAIC0xNzIsNyArMTcyLDcgQEAgc3Rh
dGljIHZvaWQgcmVwbGFjZU5vblByZXNlcnZlZE5ld0xpbmVDaGFyYWN0ZXJzQW5kQXBwZW5kKGNv
bnN0IElubGluZVRleHRCb3gmIGkKIH0KIAogc3RydWN0IEJpZGlDb250ZXh0IHsKLSAgICBFVW5p
Y29kZUJpZGkgdW5pY29kZUJpZGk7CisgICAgVW5pY29kZUJpZGkgdW5pY29kZUJpZGk7CiAgICAg
Ym9vbCBpc0xlZnRUb1JpZ2h0RGlyZWN0aW9uIHsgZmFsc2UgfTsKICAgICBib29sIGlzQmxvY2tM
ZXZlbCB7IGZhbHNlIH07CiB9OwpAQCAtMTg0LDI3ICsxODQsMjcgQEAgZW51bSBjbGFzcyBFbnRl
ckV4aXRUeXBlIDogdWludDhfdCB7CiAgICAgRW50ZXJpbmdJbmxpbmVCb3gsCiAgICAgRXhpdGlu
Z0lubGluZUJveAogfTsKLXN0YXRpYyBpbmxpbmUgdm9pZCBoYW5kbGVFbnRlckV4aXRCaWRpQ29u
dGV4dChTdHJpbmdCdWlsZGVyJiBwYXJhZ3JhcGhDb250ZW50QnVpbGRlciwgRVVuaWNvZGVCaWRp
IHVuaWNvZGVCaWRpLCBib29sIGlzTFRSLCBFbnRlckV4aXRUeXBlIGVudGVyRXhpdFR5cGUsIEJp
ZGlDb250ZXh0U3RhY2smIGJpZGlDb250ZXh0U3RhY2spCitzdGF0aWMgaW5saW5lIHZvaWQgaGFu
ZGxlRW50ZXJFeGl0QmlkaUNvbnRleHQoU3RyaW5nQnVpbGRlciYgcGFyYWdyYXBoQ29udGVudEJ1
aWxkZXIsIFVuaWNvZGVCaWRpIHVuaWNvZGVCaWRpLCBib29sIGlzTFRSLCBFbnRlckV4aXRUeXBl
IGVudGVyRXhpdFR5cGUsIEJpZGlDb250ZXh0U3RhY2smIGJpZGlDb250ZXh0U3RhY2spCiB7CiAg
ICAgYXV0byBpc0VudGVyaW5nQmlkaSA9IGVudGVyRXhpdFR5cGUgPT0gRW50ZXJFeGl0VHlwZTo6
RW50ZXJpbmdCbG9jayB8fCBlbnRlckV4aXRUeXBlID09IEVudGVyRXhpdFR5cGU6OkVudGVyaW5n
SW5saW5lQm94OwogICAgIHN3aXRjaCAodW5pY29kZUJpZGkpIHsKLSAgICBjYXNlIEVVbmljb2Rl
QmlkaTo6VUJOb3JtYWw6CisgICAgY2FzZSBVbmljb2RlQmlkaTo6VUJOb3JtYWw6CiAgICAgICAg
IC8vIFRoZSBib3ggZG9lcyBub3Qgb3BlbiBhbiBhZGRpdGlvbmFsIGxldmVsIG9mIGVtYmVkZGlu
ZyB3aXRoIHJlc3BlY3QgdG8gdGhlIGJpZGlyZWN0aW9uYWwgYWxnb3JpdGhtLgogICAgICAgICAv
LyBGb3IgaW5saW5lIGJveGVzLCBpbXBsaWNpdCByZW9yZGVyaW5nIHdvcmtzIGFjcm9zcyBib3gg
Ym91bmRhcmllcy4KICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBFVW5pY29kZUJpZGk6OkVtYmVk
OgorICAgIGNhc2UgVW5pY29kZUJpZGk6OkVtYmVkOgogICAgICAgICBwYXJhZ3JhcGhDb250ZW50
QnVpbGRlci5hcHBlbmQoaXNFbnRlcmluZ0JpZGkgPyAoaXNMVFIgPyBsZWZ0VG9SaWdodEVtYmVk
IDogcmlnaHRUb0xlZnRFbWJlZCkgOiBwb3BEaXJlY3Rpb25hbEZvcm1hdHRpbmcpOwogICAgICAg
ICBicmVhazsKLSAgICBjYXNlIEVVbmljb2RlQmlkaTo6T3ZlcnJpZGU6CisgICAgY2FzZSBVbmlj
b2RlQmlkaTo6T3ZlcnJpZGU6CiAgICAgICAgIHBhcmFncmFwaENvbnRlbnRCdWlsZGVyLmFwcGVu
ZChpc0VudGVyaW5nQmlkaSA/IChpc0xUUiA/IGxlZnRUb1JpZ2h0T3ZlcnJpZGUgOiByaWdodFRv
TGVmdE92ZXJyaWRlKSA6IHBvcERpcmVjdGlvbmFsRm9ybWF0dGluZyk7CiAgICAgICAgIGJyZWFr
OwotICAgIGNhc2UgRVVuaWNvZGVCaWRpOjpJc29sYXRlOgorICAgIGNhc2UgVW5pY29kZUJpZGk6
Oklzb2xhdGU6CiAgICAgICAgIHBhcmFncmFwaENvbnRlbnRCdWlsZGVyLmFwcGVuZChpc0VudGVy
aW5nQmlkaSA/IChpc0xUUiA/IGxlZnRUb1JpZ2h0SXNvbGF0ZSA6IHJpZ2h0VG9MZWZ0SXNvbGF0
ZSkgOiBwb3BEaXJlY3Rpb25hbElzb2xhdGUpOwogICAgICAgICBicmVhazsKLSAgICBjYXNlIEVV
bmljb2RlQmlkaTo6UGxhaW50ZXh0OgorICAgIGNhc2UgVW5pY29kZUJpZGk6OlBsYWludGV4dDoK
ICAgICAgICAgcGFyYWdyYXBoQ29udGVudEJ1aWxkZXIuYXBwZW5kKGlzRW50ZXJpbmdCaWRpID8g
Zmlyc3RTdHJvbmdJc29sYXRlIDogcG9wRGlyZWN0aW9uYWxJc29sYXRlKTsKICAgICAgICAgYnJl
YWs7Ci0gICAgY2FzZSBFVW5pY29kZUJpZGk6Oklzb2xhdGVPdmVycmlkZToKKyAgICBjYXNlIFVu
aWNvZGVCaWRpOjpJc29sYXRlT3ZlcnJpZGU6CiAgICAgICAgIGlmIChpc0VudGVyaW5nQmlkaSkg
ewogICAgICAgICAgICAgcGFyYWdyYXBoQ29udGVudEJ1aWxkZXIuYXBwZW5kKGZpcnN0U3Ryb25n
SXNvbGF0ZSk7CiAgICAgICAgICAgICBwYXJhZ3JhcGhDb250ZW50QnVpbGRlci5hcHBlbmQoaXNM
VFIgPyBsZWZ0VG9SaWdodE92ZXJyaWRlIDogcmlnaHRUb0xlZnRPdmVycmlkZSk7CkBAIC0yMjYs
NyArMjI2LDcgQEAgc3RhdGljIGlubGluZSB2b2lkIGJ1aWxkQmlkaVBhcmFncmFwaChjb25zdCBS
ZW5kZXJTdHlsZSYgcm9vdFN0eWxlLCBjb25zdCBJbmxpbmUKICAgICBhdXRvIGJpZGlDb250ZXh0
U3RhY2sgPSBCaWRpQ29udGV4dFN0YWNrIHsgfTsKICAgICBoYW5kbGVFbnRlckV4aXRCaWRpQ29u
dGV4dChwYXJhZ3JhcGhDb250ZW50QnVpbGRlciwgcm9vdFN0eWxlLnVuaWNvZGVCaWRpKCksIHJv
b3RTdHlsZS5pc0xlZnRUb1JpZ2h0RGlyZWN0aW9uKCksIEVudGVyRXhpdFR5cGU6OkVudGVyaW5n
QmxvY2ssIGJpZGlDb250ZXh0U3RhY2spOwogICAgIGlmIChyb290U3R5bGUucnRsT3JkZXJpbmco
KSAhPSBPcmRlcjo6TG9naWNhbCkKLSAgICAgICAgaGFuZGxlRW50ZXJFeGl0QmlkaUNvbnRleHQo
cGFyYWdyYXBoQ29udGVudEJ1aWxkZXIsIEVVbmljb2RlQmlkaTo6T3ZlcnJpZGUsIHJvb3RTdHls
ZS5pc0xlZnRUb1JpZ2h0RGlyZWN0aW9uKCksIEVudGVyRXhpdFR5cGU6OkVudGVyaW5nQmxvY2ss
IGJpZGlDb250ZXh0U3RhY2spOworICAgICAgICBoYW5kbGVFbnRlckV4aXRCaWRpQ29udGV4dChw
YXJhZ3JhcGhDb250ZW50QnVpbGRlciwgVW5pY29kZUJpZGk6Ok92ZXJyaWRlLCByb290U3R5bGUu
aXNMZWZ0VG9SaWdodERpcmVjdGlvbigpLCBFbnRlckV4aXRUeXBlOjpFbnRlcmluZ0Jsb2NrLCBi
aWRpQ29udGV4dFN0YWNrKTsKIAogICAgIGNvbnN0IEJveCogbGFzdElubGluZVRleHRCb3ggPSBu
dWxscHRyOwogICAgIHNpemVfdCBpbmxpbmVUZXh0Qm94T2Zmc2V0ID0gMDsKQEAgLTI1Miw3ICsy
NTIsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgYnVpbGRCaWRpUGFyYWdyYXBoKGNvbnN0IFJlbmRl
clN0eWxlJiByb290U3R5bGUsIGNvbnN0IElubGluZQogICAgICAgICB9IGVsc2UgaWYgKGlubGlu
ZUl0ZW0uaXNJbmxpbmVCb3hTdGFydCgpIHx8IGlubGluZUl0ZW0uaXNJbmxpbmVCb3hFbmQoKSkg
ewogICAgICAgICAgICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL2Nzcy13cml0aW5nLW1v
ZGVzLyN1bmljb2RlLWJpZGkKICAgICAgICAgICAgIGF1dG8mIHN0eWxlID0gaW5saW5lSXRlbS5z
dHlsZSgpOwotICAgICAgICAgICAgYXV0byBpbml0aWF0ZXNDb250cm9sQ2hhcmFjdGVyID0gc3R5
bGUucnRsT3JkZXJpbmcoKSA9PSBPcmRlcjo6TG9naWNhbCAmJiBzdHlsZS51bmljb2RlQmlkaSgp
ICE9IEVVbmljb2RlQmlkaTo6VUJOb3JtYWw7CisgICAgICAgICAgICBhdXRvIGluaXRpYXRlc0Nv
bnRyb2xDaGFyYWN0ZXIgPSBzdHlsZS5ydGxPcmRlcmluZygpID09IE9yZGVyOjpMb2dpY2FsICYm
IHN0eWxlLnVuaWNvZGVCaWRpKCkgIT0gVW5pY29kZUJpZGk6OlVCTm9ybWFsOwogICAgICAgICAg
ICAgaWYgKCFpbml0aWF0ZXNDb250cm9sQ2hhcmFjdGVyKSB7CiAgICAgICAgICAgICAgICAgLy8g
T3BhcXVlIGl0ZW1zIGRvIG5vdCBoYXZlIHBvc2l0aW9uIGluIHRoZSBiaWRpIHBhcmFncmFwaC4g
VGhleSBpbmhlcml0IHRoZWlyIGJpZGkgbGV2ZWwgZnJvbSB0aGUgbmV4dCBpbmxpbmUgaXRlbS4K
ICAgICAgICAgICAgICAgICBpbmxpbmVJdGVtT2Zmc2V0TGlzdC51bmNoZWNrZWRBcHBlbmQoeyB9
KTsKQEAgLTMzOSw3ICszMzksNyBAQCB2b2lkIElubGluZUl0ZW1zQnVpbGRlcjo6YnJlYWtBbmRD
b21wdXRlQmlkaUxldmVscyhJbmxpbmVJdGVtcyYgaW5saW5lSXRlbXMpCiAgICAgfSk7CiAKICAg
ICBVQmlEaUxldmVsIHJvb3RCaWRpTGV2ZWwgPSBVQklESV9ERUZBVUxUX0xUUjsKLSAgICBib29s
IHVzZUhldXJpc3RpY0Jhc2VEaXJlY3Rpb24gPSByb290KCkuc3R5bGUoKS51bmljb2RlQmlkaSgp
ID09IEVVbmljb2RlQmlkaTo6UGxhaW50ZXh0OworICAgIGJvb2wgdXNlSGV1cmlzdGljQmFzZURp
cmVjdGlvbiA9IHJvb3QoKS5zdHlsZSgpLnVuaWNvZGVCaWRpKCkgPT0gVW5pY29kZUJpZGk6OlBs
YWludGV4dDsKICAgICBpZiAoIXVzZUhldXJpc3RpY0Jhc2VEaXJlY3Rpb24pCiAgICAgICAgIHJv
b3RCaWRpTGV2ZWwgPSByb290KCkuc3R5bGUoKS5pc0xlZnRUb1JpZ2h0RGlyZWN0aW9uKCkgPyBV
QklESV9MVFIgOiBVQklESV9SVEw7CiAKQEAgLTU1NywxNCArNTU3LDE0IEBAIHZvaWQgSW5saW5l
SXRlbXNCdWlsZGVyOjpoYW5kbGVJbmxpbmVCb3hTdGFydChjb25zdCBCb3gmIGlubGluZUJveCwg
SW5saW5lSXRlbXMmCiB7CiAgICAgaW5saW5lSXRlbXMuYXBwZW5kKHsgaW5saW5lQm94LCBJbmxp
bmVJdGVtOjpUeXBlOjpJbmxpbmVCb3hTdGFydCB9KTsKICAgICBhdXRvJiBzdHlsZSA9IGlubGlu
ZUJveC5zdHlsZSgpOwotICAgIG1fbmVlZHNWaXN1YWxSZW9yZGVyaW5nID0gbV9uZWVkc1Zpc3Vh
bFJlb3JkZXJpbmcgfHwgIXN0eWxlLmlzTGVmdFRvUmlnaHREaXJlY3Rpb24oKSB8fCAoc3R5bGUu
cnRsT3JkZXJpbmcoKSA9PSBPcmRlcjo6TG9naWNhbCAmJiBzdHlsZS51bmljb2RlQmlkaSgpICE9
IEVVbmljb2RlQmlkaTo6VUJOb3JtYWwpOworICAgIG1fbmVlZHNWaXN1YWxSZW9yZGVyaW5nID0g
bV9uZWVkc1Zpc3VhbFJlb3JkZXJpbmcgfHwgIXN0eWxlLmlzTGVmdFRvUmlnaHREaXJlY3Rpb24o
KSB8fCAoc3R5bGUucnRsT3JkZXJpbmcoKSA9PSBPcmRlcjo6TG9naWNhbCAmJiBzdHlsZS51bmlj
b2RlQmlkaSgpICE9IFVuaWNvZGVCaWRpOjpVQk5vcm1hbCk7CiB9CiAKIHZvaWQgSW5saW5lSXRl
bXNCdWlsZGVyOjpoYW5kbGVJbmxpbmVCb3hFbmQoY29uc3QgQm94JiBpbmxpbmVCb3gsIElubGlu
ZUl0ZW1zJiBpbmxpbmVJdGVtcykKIHsKICAgICBpbmxpbmVJdGVtcy5hcHBlbmQoeyBpbmxpbmVC
b3gsIElubGluZUl0ZW06OlR5cGU6OklubGluZUJveEVuZCB9KTsKICAgICAvLyBJbmxpbmUgYm94
IGVuZCBpdGVtIGl0c2VsZiBjYW4gbm90IHRyaWdnZXIgYmlkaSBjb250ZW50LgotICAgIEFTU0VS
VChuZWVkc1Zpc3VhbFJlb3JkZXJpbmcoKSB8fCBpbmxpbmVCb3guc3R5bGUoKS5pc0xlZnRUb1Jp
Z2h0RGlyZWN0aW9uKCkgfHwgaW5saW5lQm94LnN0eWxlKCkucnRsT3JkZXJpbmcoKSA9PSBPcmRl
cjo6VmlzdWFsIHx8IGlubGluZUJveC5zdHlsZSgpLnVuaWNvZGVCaWRpKCkgPT0gRVVuaWNvZGVC
aWRpOjpVQk5vcm1hbCk7CisgICAgQVNTRVJUKG5lZWRzVmlzdWFsUmVvcmRlcmluZygpIHx8IGlu
bGluZUJveC5zdHlsZSgpLmlzTGVmdFRvUmlnaHREaXJlY3Rpb24oKSB8fCBpbmxpbmVCb3guc3R5
bGUoKS5ydGxPcmRlcmluZygpID09IE9yZGVyOjpWaXN1YWwgfHwgaW5saW5lQm94LnN0eWxlKCku
dW5pY29kZUJpZGkoKSA9PSBVbmljb2RlQmlkaTo6VUJOb3JtYWwpOwogfQogCiB2b2lkIElubGlu
ZUl0ZW1zQnVpbGRlcjo6aGFuZGxlSW5saW5lTGV2ZWxCb3goY29uc3QgQm94JiBsYXlvdXRCb3gs
IElubGluZUl0ZW1zJiBpbmxpbmVJdGVtcykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmNwcApp
bmRleCBhMzRlYWM4NzljMzBlNGYzNDlmMzFjNjk4NmRjYzBmYjA5ZTZlNmVmLi45OTk4OGIzYWUw
MmJiNzJlNDg1NjRlNDQ0NGQ2NzdmOTJjYmNiZDZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uQ292ZXJh
Z2UuY3BwCkBAIC00MTUsNyArNDE1LDcgQEAgc3RhdGljIE9wdGlvblNldDxBdm9pZGFuY2VSZWFz
b24+IGNhblVzZUZvclN0eWxlKGNvbnN0IFJlbmRlckVsZW1lbnQmIHJlbmRlcmVyLAogICAgICAg
ICBTRVRfUkVBU09OX0FORF9SRVRVUk5fSUZfTkVFREVEKEZsb3dIYXNPdmVyZmxvd05vdFZpc2li
bGUsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKICAgICBpZiAoc3R5bGUudGV4dE92ZXJmbG93
KCkgPT0gVGV4dE92ZXJmbG93OjpFbGxpcHNpcykKICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVU
VVJOX0lGX05FRURFRChGbG93SGFzVGV4dE92ZXJmbG93LCByZWFzb25zLCBpbmNsdWRlUmVhc29u
cyk7Ci0gICAgaWYgKGlzPFJlbmRlckJsb2NrRmxvdz4ocmVuZGVyZXIpICYmIHN0eWxlLnVuaWNv
ZGVCaWRpKCkgPT0gRVVuaWNvZGVCaWRpOjpQbGFpbnRleHQpCisgICAgaWYgKGlzPFJlbmRlckJs
b2NrRmxvdz4ocmVuZGVyZXIpICYmIHN0eWxlLnVuaWNvZGVCaWRpKCkgPT0gVW5pY29kZUJpZGk6
OlBsYWludGV4dCkKICAgICAgICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93
TWF5Tm90QmVMVFIsIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKICAgICBpZiAoc3R5bGUud3Jp
dGluZ01vZGUoKSAhPSBXcml0aW5nTW9kZTo6VG9wVG9Cb3R0b20pCiAgICAgICAgIFNFVF9SRUFT
T05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0lzTm90VG9wVG9Cb3R0b20sIHJlYXNvbnMsIGlu
Y2x1ZGVSZWFzb25zKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQv
VW5pY29kZUJpZGkuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvVW5pY29kZUJpZGku
aAppbmRleCA3MjQ5Y2ZlZmU2NmM0Y2NmMzcyM2EwMjM1OWQ0NTcwNTcwMDFlMjYzLi4wMjc3MzZm
YmQxYTE0ZmE2YmJmMjZhZmU4MmI4NGE4MmE4MTU1YjFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS90ZXh0L1VuaWNvZGVCaWRpLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vdGV4dC9Vbmljb2RlQmlkaS5oCkBAIC0yOCw3ICsyOCw3IEBACiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotZW51bSBFVW5pY29kZUJpZGkgeworZW51bSBjbGFzcyBVbmljb2RlQmlkaSA6
IHVpbnQ4X3QgewogICAgIFVCTm9ybWFsLAogICAgIEVtYmVkLAogICAgIE92ZXJyaWRlLApAQCAt
MzcsMTQgKzM3LDE0IEBAIGVudW0gRVVuaWNvZGVCaWRpIHsKICAgICBJc29sYXRlT3ZlcnJpZGUs
CiB9OyAKIAotaW5saW5lIGJvb2wgaXNJc29sYXRlZChjb25zdCBFVW5pY29kZUJpZGkmIHVuaWNv
ZGVCaWRpKQoraW5saW5lIGJvb2wgaXNJc29sYXRlZChjb25zdCBVbmljb2RlQmlkaSYgdW5pY29k
ZUJpZGkpCiB7Ci0gICAgcmV0dXJuIHVuaWNvZGVCaWRpID09IElzb2xhdGUgfHwgdW5pY29kZUJp
ZGkgPT0gSXNvbGF0ZU92ZXJyaWRlIHx8IHVuaWNvZGVCaWRpID09IFBsYWludGV4dDsKKyAgICBy
ZXR1cm4gdW5pY29kZUJpZGkgPT0gVW5pY29kZUJpZGk6Oklzb2xhdGUgfHwgdW5pY29kZUJpZGkg
PT0gVW5pY29kZUJpZGk6Oklzb2xhdGVPdmVycmlkZSB8fCB1bmljb2RlQmlkaSA9PSBVbmljb2Rl
QmlkaTo6UGxhaW50ZXh0OwogfQogCi1pbmxpbmUgYm9vbCBpc092ZXJyaWRlKEVVbmljb2RlQmlk
aSB1bmljb2RlQmlkaSkKK2lubGluZSBib29sIGlzT3ZlcnJpZGUoVW5pY29kZUJpZGkgdW5pY29k
ZUJpZGkpCiB7Ci0gICAgcmV0dXJuIHVuaWNvZGVCaWRpID09IE92ZXJyaWRlIHx8IHVuaWNvZGVC
aWRpID09IElzb2xhdGVPdmVycmlkZTsKKyAgICByZXR1cm4gdW5pY29kZUJpZGkgPT0gVW5pY29k
ZUJpZGk6Ok92ZXJyaWRlIHx8IHVuaWNvZGVCaWRpID09IFVuaWNvZGVCaWRpOjpJc29sYXRlT3Zl
cnJpZGU7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MZWdh
Y3lJbmxpbmVJdGVyYXRvci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGlu
ZUl0ZXJhdG9yLmgKaW5kZXggMWZhMGYwNmE2ZDkyOTYwYTQyNDAxMjdkMDdiNzcxMTBlODkwNTNi
Mi4uMGFiNTkwYTJhMWQyNDc5ZDNjNWM0ZDUxY2FiM2M1N2QxNzdhZGQ3ZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUl0ZXJhdG9yLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUl0ZXJhdG9yLmgKQEAgLTE0MCw5ICsx
NDAsOSBAQCBpbmxpbmUgYm9vbCBvcGVyYXRvciE9KGNvbnN0IExlZ2FjeUlubGluZUl0ZXJhdG9y
JiBpdDEsIGNvbnN0IExlZ2FjeUlubGluZUl0ZXJhdAogICAgIHJldHVybiBpdDEub2Zmc2V0KCkg
IT0gaXQyLm9mZnNldCgpIHx8IGl0MS5yZW5kZXJlcigpICE9IGl0Mi5yZW5kZXJlcigpOwogfQog
Ci1zdGF0aWMgaW5saW5lIFVDaGFyRGlyZWN0aW9uIGVtYmVkQ2hhckZyb21EaXJlY3Rpb24oVGV4
dERpcmVjdGlvbiBkaXJlY3Rpb24sIEVVbmljb2RlQmlkaSB1bmljb2RlQmlkaSkKK3N0YXRpYyBp
bmxpbmUgVUNoYXJEaXJlY3Rpb24gZW1iZWRDaGFyRnJvbURpcmVjdGlvbihUZXh0RGlyZWN0aW9u
IGRpcmVjdGlvbiwgVW5pY29kZUJpZGkgdW5pY29kZUJpZGkpCiB7Ci0gICAgaWYgKHVuaWNvZGVC
aWRpID09IEVtYmVkKQorICAgIGlmICh1bmljb2RlQmlkaSA9PSBVbmljb2RlQmlkaTo6RW1iZWQp
CiAgICAgICAgIHJldHVybiBkaXJlY3Rpb24gPT0gVGV4dERpcmVjdGlvbjo6UlRMID8gVV9SSUdI
VF9UT19MRUZUX0VNQkVERElORyA6IFVfTEVGVF9UT19SSUdIVF9FTUJFRERJTkc7CiAgICAgcmV0
dXJuIGRpcmVjdGlvbiA9PSBUZXh0RGlyZWN0aW9uOjpSVEwgPyBVX1JJR0hUX1RPX0xFRlRfT1ZF
UlJJREUgOiBVX0xFRlRfVE9fUklHSFRfT1ZFUlJJREU7CiB9CkBAIC0xNTQsOCArMTU0LDggQEAg
c3RhdGljIGlubGluZSB2b2lkIG5vdGlmeU9ic2VydmVyRW50ZXJlZE9iamVjdChPYnNlcnZlciog
b2JzZXJ2ZXIsIFJlbmRlck9iamVjdCoKICAgICAgICAgcmV0dXJuOwogCiAgICAgY29uc3QgUmVu
ZGVyU3R5bGUmIHN0eWxlID0gb2JqZWN0LT5zdHlsZSgpOwotICAgIEVVbmljb2RlQmlkaSB1bmlj
b2RlQmlkaSA9IHN0eWxlLnVuaWNvZGVCaWRpKCk7Ci0gICAgaWYgKHVuaWNvZGVCaWRpID09IFVC
Tm9ybWFsKSB7CisgICAgYXV0byB1bmljb2RlQmlkaSA9IHN0eWxlLnVuaWNvZGVCaWRpKCk7Cisg
ICAgaWYgKHVuaWNvZGVCaWRpID09IFVuaWNvZGVCaWRpOjpVQk5vcm1hbCkgewogICAgICAgICAv
LyBodHRwOi8vZGV2LnczLm9yZy9jc3N3Zy9jc3MzLXdyaXRpbmctbW9kZXMvI3VuaWNvZGUtYmlk
aQogICAgICAgICAvLyAiVGhlIGVsZW1lbnQgZG9lcyBub3Qgb3BlbiBhbiBhZGRpdGlvbmFsIGxl
dmVsIG9mIGVtYmVkZGluZyB3aXRoIHJlc3BlY3QgdG8gdGhlIGJpZGlyZWN0aW9uYWwgYWxnb3Jp
dGhtLiIKICAgICAgICAgLy8gVGh1cyB3ZSBpZ25vcmUgYW55IHBvc3NpYmxlIGRpcj0gYXR0cmli
dXRlIG9uIHRoZSBzcGFuLgpAQCAtMTgwLDggKzE4MCw4IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBu
b3RpZnlPYnNlcnZlcldpbGxFeGl0T2JqZWN0KE9ic2VydmVyKiBvYnNlcnZlciwgUmVuZGVyT2Jq
ZWN0CiAgICAgaWYgKCFvYnNlcnZlciB8fCAhb2JqZWN0IHx8ICFvYmplY3QtPmlzUmVuZGVySW5s
aW5lKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIEVVbmljb2RlQmlkaSB1bmljb2RlQmlkaSA9
IG9iamVjdC0+c3R5bGUoKS51bmljb2RlQmlkaSgpOwotICAgIGlmICh1bmljb2RlQmlkaSA9PSBV
Qk5vcm1hbCkKKyAgICBhdXRvIHVuaWNvZGVCaWRpID0gb2JqZWN0LT5zdHlsZSgpLnVuaWNvZGVC
aWRpKCk7CisgICAgaWYgKHVuaWNvZGVCaWRpID09IFVuaWNvZGVCaWRpOjpVQk5vcm1hbCkKICAg
ICAgICAgcmV0dXJuOyAvLyBOb3RoaW5nIHRvIGRvIGZvciB1bmljb2RlLWJpZGk6IG5vcm1hbAog
ICAgIGlmIChpc0lzb2xhdGVkKHVuaWNvZGVCaWRpKSkgewogICAgICAgICBvYnNlcnZlci0+ZXhp
dElzb2xhdGUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lM
aW5lTGF5b3V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lMaW5lTGF5b3V0
LmNwcAppbmRleCA3MWQxOTE2ZDQ3MjNiZGZlODZhMzExZjZlMzIxZGE0YjFmNDViN2Y4Li44N2Qw
Y2JhZGRiNGZkNTUzNmNmY2EzMjRhNTg3MjFiYWYwZmJjODdlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5TGluZUxheW91dC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL0xlZ2FjeUxpbmVMYXlvdXQuY3BwCkBAIC02MzIsNyArNjMyLDcgQEAgdm9p
ZCBMZWdhY3lMaW5lTGF5b3V0Ojpjb21wdXRlRXhwYW5zaW9uRm9ySnVzdGlmaWVkVGV4dChCaWRp
UnVuKiBmaXJzdFJ1biwgQmlkaVIKIHZvaWQgTGVnYWN5TGluZUxheW91dDo6dXBkYXRlTG9naWNh
bFdpZHRoRm9yQWxpZ25tZW50KFJlbmRlckJsb2NrRmxvdyYgZmxvdywgY29uc3QgVGV4dEFsaWdu
TW9kZSYgdGV4dEFsaWduLCBjb25zdCBMZWdhY3lSb290SW5saW5lQm94KiByb290SW5saW5lQm94
LCBCaWRpUnVuKiB0cmFpbGluZ1NwYWNlUnVuLCBmbG9hdCYgbG9naWNhbExlZnQsIGZsb2F0JiB0
b3RhbExvZ2ljYWxXaWR0aCwgZmxvYXQmIGF2YWlsYWJsZUxvZ2ljYWxXaWR0aCwgaW50IGV4cGFu
c2lvbk9wcG9ydHVuaXR5Q291bnQpCiB7CiAgICAgVGV4dERpcmVjdGlvbiBkaXJlY3Rpb247Ci0g
ICAgaWYgKHJvb3RJbmxpbmVCb3ggJiYgZmxvdy5zdHlsZSgpLnVuaWNvZGVCaWRpKCkgPT0gUGxh
aW50ZXh0KQorICAgIGlmIChyb290SW5saW5lQm94ICYmIGZsb3cuc3R5bGUoKS51bmljb2RlQmlk
aSgpID09IFVuaWNvZGVCaWRpOjpQbGFpbnRleHQpCiAgICAgICAgIGRpcmVjdGlvbiA9IHJvb3RJ
bmxpbmVCb3gtPmRpcmVjdGlvbigpOwogICAgIGVsc2UKICAgICAgICAgZGlyZWN0aW9uID0gZmxv
dy5zdHlsZSgpLmRpcmVjdGlvbigpOwpAQCAtMTE5NiwxMiArMTE5NiwxMiBAQCBzdGF0aWMgaW5s
aW5lIHZvaWQgY29uc3RydWN0QmlkaVJ1bnNGb3JTZWdtZW50KElubGluZUJpZGlSZXNvbHZlciYg
dG9wUmVzb2x2ZXIsCiAgICAgICAgIEFTU0VSVChpc29sYXRlZElubGluZSk7CiAKICAgICAgICAg
SW5saW5lQmlkaVJlc29sdmVyIGlzb2xhdGVkUmVzb2x2ZXI7Ci0gICAgICAgIEVVbmljb2RlQmlk
aSB1bmljb2RlQmlkaSA9IGlzb2xhdGVkSW5saW5lLT5zdHlsZSgpLnVuaWNvZGVCaWRpKCk7Cisg
ICAgICAgIGF1dG8gdW5pY29kZUJpZGkgPSBpc29sYXRlZElubGluZS0+c3R5bGUoKS51bmljb2Rl
QmlkaSgpOwogICAgICAgICBUZXh0RGlyZWN0aW9uIGRpcmVjdGlvbjsKLSAgICAgICAgaWYgKHVu
aWNvZGVCaWRpID09IFBsYWludGV4dCkKKyAgICAgICAgaWYgKHVuaWNvZGVCaWRpID09IFVuaWNv
ZGVCaWRpOjpQbGFpbnRleHQpCiAgICAgICAgICAgICBkZXRlcm1pbmVEaXJlY3Rpb25hbGl0eShk
aXJlY3Rpb24sIExlZ2FjeUlubGluZUl0ZXJhdG9yKGlzb2xhdGVkSW5saW5lLCAmaXNvbGF0ZWRS
dW4ub2JqZWN0LCAwKSk7CiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgQVNTRVJUKHVuaWNv
ZGVCaWRpID09IElzb2xhdGUgfHwgdW5pY29kZUJpZGkgPT0gSXNvbGF0ZU92ZXJyaWRlKTsKKyAg
ICAgICAgICAgIEFTU0VSVCh1bmljb2RlQmlkaSA9PSBVbmljb2RlQmlkaTo6SXNvbGF0ZSB8fCB1
bmljb2RlQmlkaSA9PSBVbmljb2RlQmlkaTo6SXNvbGF0ZU92ZXJyaWRlKTsKICAgICAgICAgICAg
IGRpcmVjdGlvbiA9IGlzb2xhdGVkSW5saW5lLT5zdHlsZSgpLmRpcmVjdGlvbigpOwogICAgICAg
ICB9CiAgICAgICAgIGlzb2xhdGVkUmVzb2x2ZXIuc2V0U3RhdHVzKEJpZGlTdGF0dXMoZGlyZWN0
aW9uLCBpc092ZXJyaWRlKHVuaWNvZGVCaWRpKSkpOwpAQCAtMTQzMyw3ICsxNDMzLDcgQEAgdm9p
ZCBMZWdhY3lMaW5lTGF5b3V0OjpsYXlvdXRSdW5zQW5kRmxvYXRzSW5SYW5nZShMaW5lTGF5b3V0
U3RhdGUmIGxheW91dFN0YXRlLAogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgVmlzdWFs
RGlyZWN0aW9uT3ZlcnJpZGUgb3ZlcnJpZGUgPSAoc3R5bGVUb1VzZS5ydGxPcmRlcmluZygpID09
IE9yZGVyOjpWaXN1YWwgPyAoc3R5bGVUb1VzZS5kaXJlY3Rpb24oKSA9PSBUZXh0RGlyZWN0aW9u
OjpMVFIgPyBWaXN1YWxMZWZ0VG9SaWdodE92ZXJyaWRlIDogVmlzdWFsUmlnaHRUb0xlZnRPdmVy
cmlkZSkgOiBOb1Zpc3VhbE92ZXJyaWRlKTsKIAotICAgICAgICAgICAgaWYgKGlzTmV3VUJBUGFy
YWdyYXBoICYmIHN0eWxlVG9Vc2UudW5pY29kZUJpZGkoKSA9PSBQbGFpbnRleHQgJiYgIXJlc29s
dmVyLmNvbnRleHQoKS0+cGFyZW50KCkpIHsKKyAgICAgICAgICAgIGlmIChpc05ld1VCQVBhcmFn
cmFwaCAmJiBzdHlsZVRvVXNlLnVuaWNvZGVCaWRpKCkgPT0gVW5pY29kZUJpZGk6OlBsYWludGV4
dCAmJiAhcmVzb2x2ZXIuY29udGV4dCgpLT5wYXJlbnQoKSkgewogICAgICAgICAgICAgICAgIFRl
eHREaXJlY3Rpb24gZGlyZWN0aW9uID0gc3R5bGVUb1VzZS5kaXJlY3Rpb24oKTsKICAgICAgICAg
ICAgICAgICBkZXRlcm1pbmVEaXJlY3Rpb25hbGl0eShkaXJlY3Rpb24sIHJlc29sdmVyLnBvc2l0
aW9uKCkpOwogICAgICAgICAgICAgICAgIHJlc29sdmVyLnNldFN0YXR1cyhCaWRpU3RhdHVzKGRp
cmVjdGlvbiwgaXNPdmVycmlkZShzdHlsZVRvVXNlLnVuaWNvZGVCaWRpKCkpKSk7CkBAIC0xOTY0
LDcgKzE5NjQsNyBAQCBMZWdhY3lSb290SW5saW5lQm94KiBMZWdhY3lMaW5lTGF5b3V0OjpkZXRl
cm1pbmVTdGFydFBvc2l0aW9uKExpbmVMYXlvdXRTdGF0ZSYgbAogICAgICAgICByZXNvbHZlci5z
ZXRTdGF0dXMobGFzdExpbmUtPmxpbmVCcmVha0JpZGlTdGF0dXMoKSk7CiAgICAgfSBlbHNlIHsK
ICAgICAgICAgVGV4dERpcmVjdGlvbiBkaXJlY3Rpb24gPSBzdHlsZSgpLmRpcmVjdGlvbigpOwot
ICAgICAgICBpZiAoc3R5bGUoKS51bmljb2RlQmlkaSgpID09IFBsYWludGV4dCkKKyAgICAgICAg
aWYgKHN0eWxlKCkudW5pY29kZUJpZGkoKSA9PSBVbmljb2RlQmlkaTo6UGxhaW50ZXh0KQogICAg
ICAgICAgICAgZGV0ZXJtaW5lRGlyZWN0aW9uYWxpdHkoZGlyZWN0aW9uLCBMZWdhY3lJbmxpbmVJ
dGVyYXRvcigmbV9mbG93LCBmaXJzdElubGluZVJlbmRlcmVyU2tpcHBpbmdFbXB0eShtX2Zsb3cp
LCAwKSk7CiAgICAgICAgIHJlc29sdmVyLnNldFN0YXR1cyhCaWRpU3RhdHVzKGRpcmVjdGlvbiwg
aXNPdmVycmlkZShzdHlsZSgpLnVuaWNvZGVCaWRpKCkpKSk7CiAgICAgICAgIExlZ2FjeUlubGlu
ZUl0ZXJhdG9yIGl0ZXIgPSBMZWdhY3lJbmxpbmVJdGVyYXRvcigmbV9mbG93LCBmaXJzdElubGlu
ZVJlbmRlcmVyU2tpcHBpbmdFbXB0eShtX2Zsb3csICZyZXNvbHZlciksIDApOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RJdGVtLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMaXN0SXRlbS5jcHAKaW5kZXggNWJkZGUyMmQ4Njg5YjNi
NWE1NDUzNWQ0N2JjY2I0ODhmZTU1MjJmYS4uZTdkZDlmNGMwNjBhM2MzMmY5OTEwOTE3ODcxODBl
YmNhZjcxYTFiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxp
c3RJdGVtLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdEl0ZW0u
Y3BwCkBAIC03Nyw3ICs3Nyw3IEBAIFJlbmRlclN0eWxlIFJlbmRlckxpc3RJdGVtOjpjb21wdXRl
TWFya2VyU3R5bGUoKSBjb25zdAogICAgIGZvbnREZXNjcmlwdGlvbi5zZXRWYXJpYW50TnVtZXJp
Y1NwYWNpbmcoRm9udFZhcmlhbnROdW1lcmljU3BhY2luZzo6VGFidWxhck51bWJlcnMpOwogICAg
IG1hcmtlclN0eWxlLnNldEZvbnREZXNjcmlwdGlvbihXVEZNb3ZlKGZvbnREZXNjcmlwdGlvbikp
OwogICAgIG1hcmtlclN0eWxlLmZvbnRDYXNjYWRlKCkudXBkYXRlKCZkb2N1bWVudCgpLmZvbnRT
ZWxlY3RvcigpKTsKLSAgICBtYXJrZXJTdHlsZS5zZXRVbmljb2RlQmlkaShFVW5pY29kZUJpZGk6
Oklzb2xhdGUpOworICAgIG1hcmtlclN0eWxlLnNldFVuaWNvZGVCaWRpKFVuaWNvZGVCaWRpOjpJ
c29sYXRlKTsKICAgICBtYXJrZXJTdHlsZS5zZXRXaGl0ZVNwYWNlKFdoaXRlU3BhY2U6OlByZSk7
CiAgICAgbWFya2VyU3R5bGUuc2V0VGV4dFRyYW5zZm9ybShUZXh0VHJhbnNmb3JtOjpOb25lKTsK
ICAgICByZXR1cm4gbWFya2VyU3R5bGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ck1lbnVMaXN0LmNwcAppbmRleCA0MDU2MWYxZDFmZmM0YzIzMDY0YTQ1M2E3OTUxMDRiZjJhYjk1
MjI3Li5jMDEyMjI3Zjc2YjJmMzMwMjM3YjhmY2Y5NmIzMTJiOGNiYWNlMTE1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZW51TGlzdC5jcHAKQEAgLTEzOCwxMCArMTM4LDEw
IEBAIHZvaWQgUmVuZGVyTWVudUxpc3Q6OmFkanVzdElubmVyU3R5bGUoKQogICAgIH0gZWxzZSBp
ZiAoZG9jdW1lbnQoKS5wYWdlKCktPmNocm9tZSgpLnNlbGVjdEl0ZW1BbGlnbm1lbnRGb2xsb3dz
TWVudVdyaXRpbmdEaXJlY3Rpb24oKSkgewogICAgICAgICBpbm5lclN0eWxlLnNldFRleHRBbGln
bihzdHlsZSgpLmRpcmVjdGlvbigpID09IFRleHREaXJlY3Rpb246OkxUUiA/IFRleHRBbGlnbk1v
ZGU6OkxlZnQgOiBUZXh0QWxpZ25Nb2RlOjpSaWdodCk7CiAgICAgICAgIFRleHREaXJlY3Rpb24g
ZGlyZWN0aW9uOwotICAgICAgICBFVW5pY29kZUJpZGkgdW5pY29kZUJpZGk7CisgICAgICAgIFVu
aWNvZGVCaWRpIHVuaWNvZGVCaWRpOwogICAgICAgICBpZiAobXVsdGlwbGUoKSAmJiBzZWxlY3Rl
ZE9wdGlvbkNvdW50KCp0aGlzKSAhPSAxKSB7CiAgICAgICAgICAgICBkaXJlY3Rpb24gPSAobV9i
dXR0b25UZXh0ICYmIG1fYnV0dG9uVGV4dC0+dGV4dCgpLmRlZmF1bHRXcml0aW5nRGlyZWN0aW9u
KCkgPT0gVV9SSUdIVF9UT19MRUZUKSA/IFRleHREaXJlY3Rpb246OlJUTCA6IFRleHREaXJlY3Rp
b246OkxUUjsKLSAgICAgICAgICAgIHVuaWNvZGVCaWRpID0gVUJOb3JtYWw7CisgICAgICAgICAg
ICB1bmljb2RlQmlkaSA9IFVuaWNvZGVCaWRpOjpVQk5vcm1hbDsKICAgICAgICAgfSBlbHNlIGlm
IChtX29wdGlvblN0eWxlKSB7CiAgICAgICAgICAgICBkaXJlY3Rpb24gPSBtX29wdGlvblN0eWxl
LT5kaXJlY3Rpb24oKTsKICAgICAgICAgICAgIHVuaWNvZGVCaWRpID0gbV9vcHRpb25TdHlsZS0+
dW5pY29kZUJpZGkoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9SZW5kZXJTdHlsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVy
U3R5bGUuY3BwCmluZGV4IDNmMDQyZWU2ZWNiOTY0MDRhNWIxYTAwOTRlYzA5YzRjYWJiZGZkYzIu
LmFkNWFiYWRhYzA0ZjdkMmViYmNjNjcwNGUwMTI5M2IxZGRmYWUzYTQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcApAQCAtMTgwLDcgKzE4MCw3
IEBAIFJlbmRlclN0eWxlOjpSZW5kZXJTdHlsZShDcmVhdGVEZWZhdWx0U3R5bGVUYWcpCiAgICAg
bV9ub25Jbmhlcml0ZWRGbGFncy52ZXJ0aWNhbEFsaWduID0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KGluaXRpYWxWZXJ0aWNhbEFsaWduKCkpOwogICAgIG1fbm9uSW5oZXJpdGVkRmxhZ3MuY2xlYXIg
PSBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oaW5pdGlhbENsZWFyKCkpOwogICAgIG1fbm9uSW5oZXJp
dGVkRmxhZ3MucG9zaXRpb24gPSBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oaW5pdGlhbFBvc2l0aW9u
KCkpOwotICAgIG1fbm9uSW5oZXJpdGVkRmxhZ3MudW5pY29kZUJpZGkgPSBpbml0aWFsVW5pY29k
ZUJpZGkoKTsKKyAgICBtX25vbkluaGVyaXRlZEZsYWdzLnVuaWNvZGVCaWRpID0gc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KGluaXRpYWxVbmljb2RlQmlkaSgpKTsKICAgICBtX25vbkluaGVyaXRlZEZs
YWdzLmZsb2F0aW5nID0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KGluaXRpYWxGbG9hdGluZygpKTsK
ICAgICBtX25vbkluaGVyaXRlZEZsYWdzLnRhYmxlTGF5b3V0ID0gc3RhdGljX2Nhc3Q8dW5zaWdu
ZWQ+KGluaXRpYWxUYWJsZUxheW91dCgpKTsKICAgICBtX25vbkluaGVyaXRlZEZsYWdzLmhhc0V4
cGxpY2l0bHlTZXRCb3JkZXJSYWRpdXMgPSBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggZDY1MTJhOTk1NTk5ZjczY2E5MTQ0MjMxM2Vj
NWNmZDJhZGUwYmFiYS4uMWJlYmNhMmU5NTNiY2FiZmU2M2I4NDM0OWMzZWJjMmY1MTJmMzA0ZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKQEAgLTM0
OSw3ICszNDksNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgTGVuZ3RoQm94JiBjbGlwKCkgY29uc3Qg
eyByZXR1cm4gbV92aXN1YWxEYXRhLT5jbGlwOyB9CiAgICAgYm9vbCBoYXNDbGlwKCkgY29uc3Qg
eyByZXR1cm4gbV92aXN1YWxEYXRhLT5oYXNDbGlwOyB9CiAKLSAgICBFVW5pY29kZUJpZGkgdW5p
Y29kZUJpZGkoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxFVW5pY29kZUJpZGk+KG1fbm9u
SW5oZXJpdGVkRmxhZ3MudW5pY29kZUJpZGkpOyB9CisgICAgVW5pY29kZUJpZGkgdW5pY29kZUJp
ZGkoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxVbmljb2RlQmlkaT4obV9ub25Jbmhlcml0
ZWRGbGFncy51bmljb2RlQmlkaSk7IH0KIAogICAgIENsZWFyIGNsZWFyKCkgY29uc3QgeyByZXR1
cm4gc3RhdGljX2Nhc3Q8Q2xlYXI+KG1fbm9uSW5oZXJpdGVkRmxhZ3MuY2xlYXIpOyB9CiAgICAg
c3RhdGljIFVzZWRDbGVhciB1c2VkQ2xlYXIoY29uc3QgUmVuZGVyT2JqZWN0Jik7CkBAIC05NjUs
NyArOTY1LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Q2xpcChMZW5ndGgmJiB0b3AsIExlbmd0
aCYmIHJpZ2h0LCBMZW5ndGgmJiBib3R0b20sIExlbmd0aCYmIGxlZnQpOwogICAgIHZvaWQgc2V0
Q2xpcChMZW5ndGhCb3gmJiBib3gpIHsgU0VUX1ZBUihtX3Zpc3VhbERhdGEsIGNsaXAsIFdURk1v
dmUoYm94KSk7IH0KIAotICAgIHZvaWQgc2V0VW5pY29kZUJpZGkoRVVuaWNvZGVCaWRpIHYpIHsg
bV9ub25Jbmhlcml0ZWRGbGFncy51bmljb2RlQmlkaSA9IHY7IH0KKyAgICB2b2lkIHNldFVuaWNv
ZGVCaWRpKFVuaWNvZGVCaWRpIHYpIHsgbV9ub25Jbmhlcml0ZWRGbGFncy51bmljb2RlQmlkaSA9
IHN0YXRpY19jYXN0PHVuc2lnbmVkPih2KTsgfQogCiAgICAgdm9pZCBzZXRDbGVhcihDbGVhciB2
KSB7IG1fbm9uSW5oZXJpdGVkRmxhZ3MuY2xlYXIgPSBzdGF0aWNfY2FzdDx1bnNpZ25lZD4odik7
IH0KICAgICB2b2lkIHNldFRhYmxlTGF5b3V0KFRhYmxlTGF5b3V0VHlwZSB2KSB7IG1fbm9uSW5o
ZXJpdGVkRmxhZ3MudGFibGVMYXlvdXQgPSBzdGF0aWNfY2FzdDx1bnNpZ25lZD4odik7IH0KQEAg
LTE1NjEsNyArMTU2MSw3IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyBDbGVhciBpbml0aWFsQ2xl
YXIoKSB7IHJldHVybiBDbGVhcjo6Tm9uZTsgfQogICAgIHN0YXRpYyBEaXNwbGF5VHlwZSBpbml0
aWFsRGlzcGxheSgpIHsgcmV0dXJuIERpc3BsYXlUeXBlOjpJbmxpbmU7IH0KLSAgICBzdGF0aWMg
RVVuaWNvZGVCaWRpIGluaXRpYWxVbmljb2RlQmlkaSgpIHsgcmV0dXJuIFVCTm9ybWFsOyB9Cisg
ICAgc3RhdGljIFVuaWNvZGVCaWRpIGluaXRpYWxVbmljb2RlQmlkaSgpIHsgcmV0dXJuIFVuaWNv
ZGVCaWRpOjpVQk5vcm1hbDsgfQogICAgIHN0YXRpYyBQb3NpdGlvblR5cGUgaW5pdGlhbFBvc2l0
aW9uKCkgeyByZXR1cm4gUG9zaXRpb25UeXBlOjpTdGF0aWM7IH0KICAgICBzdGF0aWMgVmVydGlj
YWxBbGlnbiBpbml0aWFsVmVydGljYWxBbGlnbigpIHsgcmV0dXJuIFZlcnRpY2FsQWxpZ246OkJh
c2VsaW5lOyB9CiAgICAgc3RhdGljIEZsb2F0IGluaXRpYWxGbG9hdGluZygpIHsgcmV0dXJuIEZs
b2F0OjpOb25lOyB9CkBAIC0xOTIzLDcgKzE5MjMsNyBAQCBwcml2YXRlOgogICAgICAgICB1bnNp
Z25lZCB2ZXJ0aWNhbEFsaWduIDogNDsgLy8gVmVydGljYWxBbGlnbgogICAgICAgICB1bnNpZ25l
ZCBjbGVhciA6IDM7IC8vIENsZWFyCiAgICAgICAgIHVuc2lnbmVkIHBvc2l0aW9uIDogMzsgLy8g
UG9zaXRpb25UeXBlCi0gICAgICAgIHVuc2lnbmVkIHVuaWNvZGVCaWRpIDogMzsgLy8gRVVuaWNv
ZGVCaWRpCisgICAgICAgIHVuc2lnbmVkIHVuaWNvZGVCaWRpIDogMzsgLy8gVW5pY29kZUJpZGkK
ICAgICAgICAgdW5zaWduZWQgZmxvYXRpbmcgOiAzOyAvLyBGbG9hdAogICAgICAgICB1bnNpZ25l
ZCB0YWJsZUxheW91dCA6IDE7IC8vIFRhYmxlTGF5b3V0VHlwZQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>449544</attachid>
            <date>2022-01-19 19:33:27 -0800</date>
            <delta_ts>2022-01-20 07:11:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>Patch.txt</filename>
            <type>text/plain</type>
            <size>8546</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBhOWQwNzQ1ZDdkYzEuLjBlZWI0YjY5MjA1ZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDIzIEBACisyMDIyLTAxLTE5ICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4K
KworICAgICAgICBBZGRyZXNzIHBvc3QtbGFuZGluZyByZXZpZXcgY29tbWVudHMgZnJvbSBEYXJp
bi4KKworICAgICAgICAqIGNzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmg6CisgICAgICAg
IChXZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUpOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIFVuaWNvZGVCaWRpIGNvbnN0
KToKKyAgICAgICAgKiBsYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVJdGVt
c0J1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpoYW5kbGVFbnRlckV4aXRC
aWRpQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OmJ1aWxkQmlkaVBhcmFncmFw
aCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXQ6OklubGluZUl0ZW1zQnVpbGRlcjo6aGFuZGxl
SW5saW5lQm94U3RhcnQpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVJdGVtc0J1
aWxkZXI6OmhhbmRsZUlubGluZUJveEVuZCk6CisgICAgICAgICogcmVuZGVyaW5nL0xlZ2FjeUlu
bGluZUl0ZXJhdG9yLmg6CisgICAgICAgIChXZWJDb3JlOjpub3RpZnlPYnNlcnZlckVudGVyZWRP
YmplY3QpOgorICAgICAgICAoV2ViQ29yZTo6bm90aWZ5T2JzZXJ2ZXJXaWxsRXhpdE9iamVjdCk6
CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck1lbnVMaXN0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlck1lbnVMaXN0OjphZGp1c3RJbm5lclN0eWxlKToKKyAgICAgICAgKiByZW5kZXJp
bmcvc3R5bGUvUmVuZGVyU3R5bGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpp
bml0aWFsVW5pY29kZUJpZGkpOgorCiAyMDIyLTAxLTE5ICBDaHJpcyBEdW1leiAgPGNkdW1lekBh
cHBsZS5jb20+CiAKICAgICAgICAgQWxpZ24gb3VyIHF1YWxpZmllZCBuYW1lIHZhbGlkYXRpb24g
d2l0aCB0aGUgc3BlY2lmaWNhdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRp
dmVWYWx1ZU1hcHBpbmdzLmgKaW5kZXggODZlZmU2YmFmZTNlLi5kZTY3Yzc3YTRmMDggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaApAQCAtMjYx
OSw3ICsyNjE5LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1By
aW1pdGl2ZVZhbHVlKFVuaWNvZGVCaWRpIGUpCiB7CiAgICAgc2V0UHJpbWl0aXZlVW5pdFR5cGUo
Q1NTVW5pdFR5cGU6OkNTU19WQUxVRV9JRCk7CiAgICAgc3dpdGNoIChlKSB7Ci0gICAgY2FzZSBV
bmljb2RlQmlkaTo6VUJOb3JtYWw6CisgICAgY2FzZSBVbmljb2RlQmlkaTo6Tm9ybWFsOgogICAg
ICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZU5vcm1hbDsKICAgICAgICAgYnJlYWs7CiAg
ICAgY2FzZSBVbmljb2RlQmlkaTo6RW1iZWQ6CkBAIC0yNjQ2LDcgKzI2NDYsNyBAQCB0ZW1wbGF0
ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVW5pY29kZUJpZGkoKSBjb25z
dAogCiAgICAgc3dpdGNoIChtX3ZhbHVlLnZhbHVlSUQpIHsKICAgICBjYXNlIENTU1ZhbHVlTm9y
bWFsOgotICAgICAgICByZXR1cm4gVW5pY29kZUJpZGk6OlVCTm9ybWFsOworICAgICAgICByZXR1
cm4gVW5pY29kZUJpZGk6Ok5vcm1hbDsKICAgICBjYXNlIENTU1ZhbHVlRW1iZWQ6CiAgICAgICAg
IHJldHVybiBVbmljb2RlQmlkaTo6RW1iZWQ7CiAgICAgY2FzZSBDU1NWYWx1ZUJpZGlPdmVycmlk
ZToKQEAgLTI2NjUsNyArMjY2NSw3IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZh
bHVlOjpvcGVyYXRvciBVbmljb2RlQmlkaSgpIGNvbnN0CiAgICAgfQogCiAgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuIFVuaWNvZGVCaWRpOjpVQk5vcm1hbDsKKyAgICByZXR1
cm4gVW5pY29kZUJpZGk6Ok5vcm1hbDsKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0
aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKFVzZXJEcmFnIGUpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVJdGVtc0J1
aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxp
bmUvSW5saW5lSXRlbXNCdWlsZGVyLmNwcAppbmRleCBjM2U3ZjBmYmRkOTQuLjBmZjcyNzA3OWNm
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9p
bmxpbmUvSW5saW5lSXRlbXNCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
Zm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuY3BwCkBAIC0xODgs
NyArMTg4LDcgQEAgc3RhdGljIGlubGluZSB2b2lkIGhhbmRsZUVudGVyRXhpdEJpZGlDb250ZXh0
KFN0cmluZ0J1aWxkZXImIHBhcmFncmFwaENvbnRlbnRCdWkKIHsKICAgICBhdXRvIGlzRW50ZXJp
bmdCaWRpID0gZW50ZXJFeGl0VHlwZSA9PSBFbnRlckV4aXRUeXBlOjpFbnRlcmluZ0Jsb2NrIHx8
IGVudGVyRXhpdFR5cGUgPT0gRW50ZXJFeGl0VHlwZTo6RW50ZXJpbmdJbmxpbmVCb3g7CiAgICAg
c3dpdGNoICh1bmljb2RlQmlkaSkgewotICAgIGNhc2UgVW5pY29kZUJpZGk6OlVCTm9ybWFsOgor
ICAgIGNhc2UgVW5pY29kZUJpZGk6Ok5vcm1hbDoKICAgICAgICAgLy8gVGhlIGJveCBkb2VzIG5v
dCBvcGVuIGFuIGFkZGl0aW9uYWwgbGV2ZWwgb2YgZW1iZWRkaW5nIHdpdGggcmVzcGVjdCB0byB0
aGUgYmlkaXJlY3Rpb25hbCBhbGdvcml0aG0uCiAgICAgICAgIC8vIEZvciBpbmxpbmUgYm94ZXMs
IGltcGxpY2l0IHJlb3JkZXJpbmcgd29ya3MgYWNyb3NzIGJveCBib3VuZGFyaWVzLgogICAgICAg
ICBicmVhazsKQEAgLTI1Miw3ICsyNTIsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgYnVpbGRCaWRp
UGFyYWdyYXBoKGNvbnN0IFJlbmRlclN0eWxlJiByb290U3R5bGUsIGNvbnN0IElubGluZQogICAg
ICAgICB9IGVsc2UgaWYgKGlubGluZUl0ZW0uaXNJbmxpbmVCb3hTdGFydCgpIHx8IGlubGluZUl0
ZW0uaXNJbmxpbmVCb3hFbmQoKSkgewogICAgICAgICAgICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3Nz
d2cub3JnL2Nzcy13cml0aW5nLW1vZGVzLyN1bmljb2RlLWJpZGkKICAgICAgICAgICAgIGF1dG8m
IHN0eWxlID0gaW5saW5lSXRlbS5zdHlsZSgpOwotICAgICAgICAgICAgYXV0byBpbml0aWF0ZXND
b250cm9sQ2hhcmFjdGVyID0gc3R5bGUucnRsT3JkZXJpbmcoKSA9PSBPcmRlcjo6TG9naWNhbCAm
JiBzdHlsZS51bmljb2RlQmlkaSgpICE9IFVuaWNvZGVCaWRpOjpVQk5vcm1hbDsKKyAgICAgICAg
ICAgIGF1dG8gaW5pdGlhdGVzQ29udHJvbENoYXJhY3RlciA9IHN0eWxlLnJ0bE9yZGVyaW5nKCkg
PT0gT3JkZXI6OkxvZ2ljYWwgJiYgc3R5bGUudW5pY29kZUJpZGkoKSAhPSBVbmljb2RlQmlkaTo6
Tm9ybWFsOwogICAgICAgICAgICAgaWYgKCFpbml0aWF0ZXNDb250cm9sQ2hhcmFjdGVyKSB7CiAg
ICAgICAgICAgICAgICAgLy8gT3BhcXVlIGl0ZW1zIGRvIG5vdCBoYXZlIHBvc2l0aW9uIGluIHRo
ZSBiaWRpIHBhcmFncmFwaC4gVGhleSBpbmhlcml0IHRoZWlyIGJpZGkgbGV2ZWwgZnJvbSB0aGUg
bmV4dCBpbmxpbmUgaXRlbS4KICAgICAgICAgICAgICAgICBpbmxpbmVJdGVtT2Zmc2V0TGlzdC51
bmNoZWNrZWRBcHBlbmQoeyB9KTsKQEAgLTU1NywxNCArNTU3LDE0IEBAIHZvaWQgSW5saW5lSXRl
bXNCdWlsZGVyOjpoYW5kbGVJbmxpbmVCb3hTdGFydChjb25zdCBCb3gmIGlubGluZUJveCwgSW5s
aW5lSXRlbXMmCiB7CiAgICAgaW5saW5lSXRlbXMuYXBwZW5kKHsgaW5saW5lQm94LCBJbmxpbmVJ
dGVtOjpUeXBlOjpJbmxpbmVCb3hTdGFydCB9KTsKICAgICBhdXRvJiBzdHlsZSA9IGlubGluZUJv
eC5zdHlsZSgpOwotICAgIG1fbmVlZHNWaXN1YWxSZW9yZGVyaW5nID0gbV9uZWVkc1Zpc3VhbFJl
b3JkZXJpbmcgfHwgIXN0eWxlLmlzTGVmdFRvUmlnaHREaXJlY3Rpb24oKSB8fCAoc3R5bGUucnRs
T3JkZXJpbmcoKSA9PSBPcmRlcjo6TG9naWNhbCAmJiBzdHlsZS51bmljb2RlQmlkaSgpICE9IFVu
aWNvZGVCaWRpOjpVQk5vcm1hbCk7CisgICAgbV9uZWVkc1Zpc3VhbFJlb3JkZXJpbmcgPSBtX25l
ZWRzVmlzdWFsUmVvcmRlcmluZyB8fCAhc3R5bGUuaXNMZWZ0VG9SaWdodERpcmVjdGlvbigpIHx8
IChzdHlsZS5ydGxPcmRlcmluZygpID09IE9yZGVyOjpMb2dpY2FsICYmIHN0eWxlLnVuaWNvZGVC
aWRpKCkgIT0gVW5pY29kZUJpZGk6Ok5vcm1hbCk7CiB9CiAKIHZvaWQgSW5saW5lSXRlbXNCdWls
ZGVyOjpoYW5kbGVJbmxpbmVCb3hFbmQoY29uc3QgQm94JiBpbmxpbmVCb3gsIElubGluZUl0ZW1z
JiBpbmxpbmVJdGVtcykKIHsKICAgICBpbmxpbmVJdGVtcy5hcHBlbmQoeyBpbmxpbmVCb3gsIElu
bGluZUl0ZW06OlR5cGU6OklubGluZUJveEVuZCB9KTsKICAgICAvLyBJbmxpbmUgYm94IGVuZCBp
dGVtIGl0c2VsZiBjYW4gbm90IHRyaWdnZXIgYmlkaSBjb250ZW50LgotICAgIEFTU0VSVChuZWVk
c1Zpc3VhbFJlb3JkZXJpbmcoKSB8fCBpbmxpbmVCb3guc3R5bGUoKS5pc0xlZnRUb1JpZ2h0RGly
ZWN0aW9uKCkgfHwgaW5saW5lQm94LnN0eWxlKCkucnRsT3JkZXJpbmcoKSA9PSBPcmRlcjo6Vmlz
dWFsIHx8IGlubGluZUJveC5zdHlsZSgpLnVuaWNvZGVCaWRpKCkgPT0gVW5pY29kZUJpZGk6OlVC
Tm9ybWFsKTsKKyAgICBBU1NFUlQobmVlZHNWaXN1YWxSZW9yZGVyaW5nKCkgfHwgaW5saW5lQm94
LnN0eWxlKCkuaXNMZWZ0VG9SaWdodERpcmVjdGlvbigpIHx8IGlubGluZUJveC5zdHlsZSgpLnJ0
bE9yZGVyaW5nKCkgPT0gT3JkZXI6OlZpc3VhbCB8fCBpbmxpbmVCb3guc3R5bGUoKS51bmljb2Rl
QmlkaSgpID09IFVuaWNvZGVCaWRpOjpOb3JtYWwpOwogfQogCiB2b2lkIElubGluZUl0ZW1zQnVp
bGRlcjo6aGFuZGxlSW5saW5lTGV2ZWxCb3goY29uc3QgQm94JiBsYXlvdXRCb3gsIElubGluZUl0
ZW1zJiBpbmxpbmVJdGVtcykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3Rl
eHQvVW5pY29kZUJpZGkuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvVW5pY29kZUJp
ZGkuaAppbmRleCAwMjc3MzZmYmQxYTEuLmNiMzNkZjVjNjVkOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9Vbmljb2RlQmlkaS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL3RleHQvVW5pY29kZUJpZGkuaApAQCAtMjksNyArMjksNyBAQAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCiBlbnVtIGNsYXNzIFVuaWNvZGVCaWRpIDogdWludDhfdCB7Ci0gICAgVUJO
b3JtYWwsCisgICAgTm9ybWFsLAogICAgIEVtYmVkLAogICAgIE92ZXJyaWRlLAogICAgIElzb2xh
dGUsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lSXRl
cmF0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MZWdhY3lJbmxpbmVJdGVyYXRvci5o
CmluZGV4IDBhYjU5MGEyYTFkMi4uZWY0NWJlNDA2NGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lSXRlcmF0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lSXRlcmF0b3IuaApAQCAtMTU1LDcgKzE1NSw3IEBAIHN0
YXRpYyBpbmxpbmUgdm9pZCBub3RpZnlPYnNlcnZlckVudGVyZWRPYmplY3QoT2JzZXJ2ZXIqIG9i
c2VydmVyLCBSZW5kZXJPYmplY3QqCiAKICAgICBjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUgPSBv
YmplY3QtPnN0eWxlKCk7CiAgICAgYXV0byB1bmljb2RlQmlkaSA9IHN0eWxlLnVuaWNvZGVCaWRp
KCk7Ci0gICAgaWYgKHVuaWNvZGVCaWRpID09IFVuaWNvZGVCaWRpOjpVQk5vcm1hbCkgeworICAg
IGlmICh1bmljb2RlQmlkaSA9PSBVbmljb2RlQmlkaTo6Tm9ybWFsKSB7CiAgICAgICAgIC8vIGh0
dHA6Ly9kZXYudzMub3JnL2Nzc3dnL2NzczMtd3JpdGluZy1tb2Rlcy8jdW5pY29kZS1iaWRpCiAg
ICAgICAgIC8vICJUaGUgZWxlbWVudCBkb2VzIG5vdCBvcGVuIGFuIGFkZGl0aW9uYWwgbGV2ZWwg
b2YgZW1iZWRkaW5nIHdpdGggcmVzcGVjdCB0byB0aGUgYmlkaXJlY3Rpb25hbCBhbGdvcml0aG0u
IgogICAgICAgICAvLyBUaHVzIHdlIGlnbm9yZSBhbnkgcG9zc2libGUgZGlyPSBhdHRyaWJ1dGUg
b24gdGhlIHNwYW4uCkBAIC0xODEsNyArMTgxLDcgQEAgc3RhdGljIGlubGluZSB2b2lkIG5vdGlm
eU9ic2VydmVyV2lsbEV4aXRPYmplY3QoT2JzZXJ2ZXIqIG9ic2VydmVyLCBSZW5kZXJPYmplY3QK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgYXV0byB1bmljb2RlQmlkaSA9IG9iamVjdC0+c3R5bGUo
KS51bmljb2RlQmlkaSgpOwotICAgIGlmICh1bmljb2RlQmlkaSA9PSBVbmljb2RlQmlkaTo6VUJO
b3JtYWwpCisgICAgaWYgKHVuaWNvZGVCaWRpID09IFVuaWNvZGVCaWRpOjpOb3JtYWwpCiAgICAg
ICAgIHJldHVybjsgLy8gTm90aGluZyB0byBkbyBmb3IgdW5pY29kZS1iaWRpOiBub3JtYWwKICAg
ICBpZiAoaXNJc29sYXRlZCh1bmljb2RlQmlkaSkpIHsKICAgICAgICAgb2JzZXJ2ZXItPmV4aXRJ
c29sYXRlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVu
dUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck1lbnVMaXN0LmNwcApp
bmRleCBjMDEyMjI3Zjc2YjIuLjAxYzU5NjYxNmZkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlck1lbnVMaXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwCkBAIC0xNDEsNyArMTQxLDcgQEAgdm9pZCBSZW5kZXJN
ZW51TGlzdDo6YWRqdXN0SW5uZXJTdHlsZSgpCiAgICAgICAgIFVuaWNvZGVCaWRpIHVuaWNvZGVC
aWRpOwogICAgICAgICBpZiAobXVsdGlwbGUoKSAmJiBzZWxlY3RlZE9wdGlvbkNvdW50KCp0aGlz
KSAhPSAxKSB7CiAgICAgICAgICAgICBkaXJlY3Rpb24gPSAobV9idXR0b25UZXh0ICYmIG1fYnV0
dG9uVGV4dC0+dGV4dCgpLmRlZmF1bHRXcml0aW5nRGlyZWN0aW9uKCkgPT0gVV9SSUdIVF9UT19M
RUZUKSA/IFRleHREaXJlY3Rpb246OlJUTCA6IFRleHREaXJlY3Rpb246OkxUUjsKLSAgICAgICAg
ICAgIHVuaWNvZGVCaWRpID0gVW5pY29kZUJpZGk6OlVCTm9ybWFsOworICAgICAgICAgICAgdW5p
Y29kZUJpZGkgPSBVbmljb2RlQmlkaTo6Tm9ybWFsOwogICAgICAgICB9IGVsc2UgaWYgKG1fb3B0
aW9uU3R5bGUpIHsKICAgICAgICAgICAgIGRpcmVjdGlvbiA9IG1fb3B0aW9uU3R5bGUtPmRpcmVj
dGlvbigpOwogICAgICAgICAgICAgdW5pY29kZUJpZGkgPSBtX29wdGlvblN0eWxlLT51bmljb2Rl
QmlkaSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRl
clN0eWxlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaApp
bmRleCAxYmViY2EyZTk1M2IuLjc0ZGU5MjdmZmM3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKQEAgLTE1NjEsNyArMTU2MSw3IEBAIHB1YmxpYzoK
IAogICAgIHN0YXRpYyBDbGVhciBpbml0aWFsQ2xlYXIoKSB7IHJldHVybiBDbGVhcjo6Tm9uZTsg
fQogICAgIHN0YXRpYyBEaXNwbGF5VHlwZSBpbml0aWFsRGlzcGxheSgpIHsgcmV0dXJuIERpc3Bs
YXlUeXBlOjpJbmxpbmU7IH0KLSAgICBzdGF0aWMgVW5pY29kZUJpZGkgaW5pdGlhbFVuaWNvZGVC
aWRpKCkgeyByZXR1cm4gVW5pY29kZUJpZGk6OlVCTm9ybWFsOyB9CisgICAgc3RhdGljIFVuaWNv
ZGVCaWRpIGluaXRpYWxVbmljb2RlQmlkaSgpIHsgcmV0dXJuIFVuaWNvZGVCaWRpOjpOb3JtYWw7
IH0KICAgICBzdGF0aWMgUG9zaXRpb25UeXBlIGluaXRpYWxQb3NpdGlvbigpIHsgcmV0dXJuIFBv
c2l0aW9uVHlwZTo6U3RhdGljOyB9CiAgICAgc3RhdGljIFZlcnRpY2FsQWxpZ24gaW5pdGlhbFZl
cnRpY2FsQWxpZ24oKSB7IHJldHVybiBWZXJ0aWNhbEFsaWduOjpCYXNlbGluZTsgfQogICAgIHN0
YXRpYyBGbG9hdCBpbml0aWFsRmxvYXRpbmcoKSB7IHJldHVybiBGbG9hdDo6Tm9uZTsgfQo=
</data>
<flag name="commit-queue"
          id="475670"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>449572</attachid>
            <date>2022-01-20 07:11:38 -0800</date>
            <delta_ts>2022-01-20 08:00:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>Patch.txt</filename>
            <type>text/plain</type>
            <size>8601</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBhOWQwNzQ1ZDdkYzEuLjhiOGE1OWMzYmY4ZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDI1IEBACisyMDIyLTAxLTE5ICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4K
KworICAgICAgICBBZGRyZXNzIHBvc3QtbGFuZGluZyByZXZpZXcgY29tbWVudHMgZnJvbSBEYXJp
bi4KKworICAgICAgICBSZXZpZXdlZCBieSBBbnR0aSBLb2l2aXN0byBhbmQgRGFyaW4gQWRsZXIu
CisKKyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOgorICAgICAgICAo
V2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKToKKyAgICAgICAg
KFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBVbmljb2RlQmlkaSBjb25zdCk6
CisgICAgICAgICogbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lSXRlbXNC
dWlsZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6aGFuZGxlRW50ZXJFeGl0Qmlk
aUNvbnRleHQpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpidWlsZEJpZGlQYXJhZ3JhcGgp
OgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVJdGVtc0J1aWxkZXI6OmhhbmRsZUlu
bGluZUJveFN0YXJ0KToKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dDo6SW5saW5lSXRlbXNCdWls
ZGVyOjpoYW5kbGVJbmxpbmVCb3hFbmQpOgorICAgICAgICAqIHJlbmRlcmluZy9MZWdhY3lJbmxp
bmVJdGVyYXRvci5oOgorICAgICAgICAoV2ViQ29yZTo6bm90aWZ5T2JzZXJ2ZXJFbnRlcmVkT2Jq
ZWN0KToKKyAgICAgICAgKFdlYkNvcmU6Om5vdGlmeU9ic2VydmVyV2lsbEV4aXRPYmplY3QpOgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJNZW51TGlzdC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJNZW51TGlzdDo6YWRqdXN0SW5uZXJTdHlsZSk6CisgICAgICAgICogcmVuZGVyaW5n
L3N0eWxlL1JlbmRlclN0eWxlLmg6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6aW5p
dGlhbFVuaWNvZGVCaWRpKToKKwogMjAyMi0wMS0xOSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBw
bGUuY29tPgogCiAgICAgICAgIEFsaWduIG91ciBxdWFsaWZpZWQgbmFtZSB2YWxpZGF0aW9uIHdp
dGggdGhlIHNwZWNpZmljYXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQ
cmltaXRpdmVWYWx1ZU1hcHBpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZl
VmFsdWVNYXBwaW5ncy5oCmluZGV4IDg2ZWZlNmJhZmUzZS4uZGU2N2M3N2E0ZjA4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKQEAgLTI2MTks
NyArMjYxOSw3IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmlt
aXRpdmVWYWx1ZShVbmljb2RlQmlkaSBlKQogewogICAgIHNldFByaW1pdGl2ZVVuaXRUeXBlKENT
U1VuaXRUeXBlOjpDU1NfVkFMVUVfSUQpOwogICAgIHN3aXRjaCAoZSkgewotICAgIGNhc2UgVW5p
Y29kZUJpZGk6OlVCTm9ybWFsOgorICAgIGNhc2UgVW5pY29kZUJpZGk6Ok5vcm1hbDoKICAgICAg
ICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVOb3JtYWw7CiAgICAgICAgIGJyZWFrOwogICAg
IGNhc2UgVW5pY29kZUJpZGk6OkVtYmVkOgpAQCAtMjY0Niw3ICsyNjQ2LDcgQEAgdGVtcGxhdGU8
PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIFVuaWNvZGVCaWRpKCkgY29uc3QK
IAogICAgIHN3aXRjaCAobV92YWx1ZS52YWx1ZUlEKSB7CiAgICAgY2FzZSBDU1NWYWx1ZU5vcm1h
bDoKLSAgICAgICAgcmV0dXJuIFVuaWNvZGVCaWRpOjpVQk5vcm1hbDsKKyAgICAgICAgcmV0dXJu
IFVuaWNvZGVCaWRpOjpOb3JtYWw7CiAgICAgY2FzZSBDU1NWYWx1ZUVtYmVkOgogICAgICAgICBy
ZXR1cm4gVW5pY29kZUJpZGk6OkVtYmVkOwogICAgIGNhc2UgQ1NTVmFsdWVCaWRpT3ZlcnJpZGU6
CkBAIC0yNjY1LDcgKzI2NjUsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1
ZTo6b3BlcmF0b3IgVW5pY29kZUJpZGkoKSBjb25zdAogICAgIH0KIAogICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOwotICAgIHJldHVybiBVbmljb2RlQmlkaTo6VUJOb3JtYWw7CisgICAgcmV0dXJu
IFVuaWNvZGVCaWRpOjpOb3JtYWw7CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2
ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShVc2VyRHJhZyBlKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lSXRlbXNCdWls
ZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5l
L0lubGluZUl0ZW1zQnVpbGRlci5jcHAKaW5kZXggYzNlN2YwZmJkZDk0Li4wZmY3MjcwNzljZmEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5s
aW5lL0lubGluZUl0ZW1zQnVpbGRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zv
cm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lSXRlbXNCdWlsZGVyLmNwcApAQCAtMTg4LDcg
KzE4OCw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBoYW5kbGVFbnRlckV4aXRCaWRpQ29udGV4dChT
dHJpbmdCdWlsZGVyJiBwYXJhZ3JhcGhDb250ZW50QnVpCiB7CiAgICAgYXV0byBpc0VudGVyaW5n
QmlkaSA9IGVudGVyRXhpdFR5cGUgPT0gRW50ZXJFeGl0VHlwZTo6RW50ZXJpbmdCbG9jayB8fCBl
bnRlckV4aXRUeXBlID09IEVudGVyRXhpdFR5cGU6OkVudGVyaW5nSW5saW5lQm94OwogICAgIHN3
aXRjaCAodW5pY29kZUJpZGkpIHsKLSAgICBjYXNlIFVuaWNvZGVCaWRpOjpVQk5vcm1hbDoKKyAg
ICBjYXNlIFVuaWNvZGVCaWRpOjpOb3JtYWw6CiAgICAgICAgIC8vIFRoZSBib3ggZG9lcyBub3Qg
b3BlbiBhbiBhZGRpdGlvbmFsIGxldmVsIG9mIGVtYmVkZGluZyB3aXRoIHJlc3BlY3QgdG8gdGhl
IGJpZGlyZWN0aW9uYWwgYWxnb3JpdGhtLgogICAgICAgICAvLyBGb3IgaW5saW5lIGJveGVzLCBp
bXBsaWNpdCByZW9yZGVyaW5nIHdvcmtzIGFjcm9zcyBib3ggYm91bmRhcmllcy4KICAgICAgICAg
YnJlYWs7CkBAIC0yNTIsNyArMjUyLDcgQEAgc3RhdGljIGlubGluZSB2b2lkIGJ1aWxkQmlkaVBh
cmFncmFwaChjb25zdCBSZW5kZXJTdHlsZSYgcm9vdFN0eWxlLCBjb25zdCBJbmxpbmUKICAgICAg
ICAgfSBlbHNlIGlmIChpbmxpbmVJdGVtLmlzSW5saW5lQm94U3RhcnQoKSB8fCBpbmxpbmVJdGVt
LmlzSW5saW5lQm94RW5kKCkpIHsKICAgICAgICAgICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzc3dn
Lm9yZy9jc3Mtd3JpdGluZy1tb2Rlcy8jdW5pY29kZS1iaWRpCiAgICAgICAgICAgICBhdXRvJiBz
dHlsZSA9IGlubGluZUl0ZW0uc3R5bGUoKTsKLSAgICAgICAgICAgIGF1dG8gaW5pdGlhdGVzQ29u
dHJvbENoYXJhY3RlciA9IHN0eWxlLnJ0bE9yZGVyaW5nKCkgPT0gT3JkZXI6OkxvZ2ljYWwgJiYg
c3R5bGUudW5pY29kZUJpZGkoKSAhPSBVbmljb2RlQmlkaTo6VUJOb3JtYWw7CisgICAgICAgICAg
ICBhdXRvIGluaXRpYXRlc0NvbnRyb2xDaGFyYWN0ZXIgPSBzdHlsZS5ydGxPcmRlcmluZygpID09
IE9yZGVyOjpMb2dpY2FsICYmIHN0eWxlLnVuaWNvZGVCaWRpKCkgIT0gVW5pY29kZUJpZGk6Ok5v
cm1hbDsKICAgICAgICAgICAgIGlmICghaW5pdGlhdGVzQ29udHJvbENoYXJhY3RlcikgewogICAg
ICAgICAgICAgICAgIC8vIE9wYXF1ZSBpdGVtcyBkbyBub3QgaGF2ZSBwb3NpdGlvbiBpbiB0aGUg
YmlkaSBwYXJhZ3JhcGguIFRoZXkgaW5oZXJpdCB0aGVpciBiaWRpIGxldmVsIGZyb20gdGhlIG5l
eHQgaW5saW5lIGl0ZW0uCiAgICAgICAgICAgICAgICAgaW5saW5lSXRlbU9mZnNldExpc3QudW5j
aGVja2VkQXBwZW5kKHsgfSk7CkBAIC01NTcsMTQgKzU1NywxNCBAQCB2b2lkIElubGluZUl0ZW1z
QnVpbGRlcjo6aGFuZGxlSW5saW5lQm94U3RhcnQoY29uc3QgQm94JiBpbmxpbmVCb3gsIElubGlu
ZUl0ZW1zJgogewogICAgIGlubGluZUl0ZW1zLmFwcGVuZCh7IGlubGluZUJveCwgSW5saW5lSXRl
bTo6VHlwZTo6SW5saW5lQm94U3RhcnQgfSk7CiAgICAgYXV0byYgc3R5bGUgPSBpbmxpbmVCb3gu
c3R5bGUoKTsKLSAgICBtX25lZWRzVmlzdWFsUmVvcmRlcmluZyA9IG1fbmVlZHNWaXN1YWxSZW9y
ZGVyaW5nIHx8ICFzdHlsZS5pc0xlZnRUb1JpZ2h0RGlyZWN0aW9uKCkgfHwgKHN0eWxlLnJ0bE9y
ZGVyaW5nKCkgPT0gT3JkZXI6OkxvZ2ljYWwgJiYgc3R5bGUudW5pY29kZUJpZGkoKSAhPSBVbmlj
b2RlQmlkaTo6VUJOb3JtYWwpOworICAgIG1fbmVlZHNWaXN1YWxSZW9yZGVyaW5nID0gbV9uZWVk
c1Zpc3VhbFJlb3JkZXJpbmcgfHwgIXN0eWxlLmlzTGVmdFRvUmlnaHREaXJlY3Rpb24oKSB8fCAo
c3R5bGUucnRsT3JkZXJpbmcoKSA9PSBPcmRlcjo6TG9naWNhbCAmJiBzdHlsZS51bmljb2RlQmlk
aSgpICE9IFVuaWNvZGVCaWRpOjpOb3JtYWwpOwogfQogCiB2b2lkIElubGluZUl0ZW1zQnVpbGRl
cjo6aGFuZGxlSW5saW5lQm94RW5kKGNvbnN0IEJveCYgaW5saW5lQm94LCBJbmxpbmVJdGVtcyYg
aW5saW5lSXRlbXMpCiB7CiAgICAgaW5saW5lSXRlbXMuYXBwZW5kKHsgaW5saW5lQm94LCBJbmxp
bmVJdGVtOjpUeXBlOjpJbmxpbmVCb3hFbmQgfSk7CiAgICAgLy8gSW5saW5lIGJveCBlbmQgaXRl
bSBpdHNlbGYgY2FuIG5vdCB0cmlnZ2VyIGJpZGkgY29udGVudC4KLSAgICBBU1NFUlQobmVlZHNW
aXN1YWxSZW9yZGVyaW5nKCkgfHwgaW5saW5lQm94LnN0eWxlKCkuaXNMZWZ0VG9SaWdodERpcmVj
dGlvbigpIHx8IGlubGluZUJveC5zdHlsZSgpLnJ0bE9yZGVyaW5nKCkgPT0gT3JkZXI6OlZpc3Vh
bCB8fCBpbmxpbmVCb3guc3R5bGUoKS51bmljb2RlQmlkaSgpID09IFVuaWNvZGVCaWRpOjpVQk5v
cm1hbCk7CisgICAgQVNTRVJUKG5lZWRzVmlzdWFsUmVvcmRlcmluZygpIHx8IGlubGluZUJveC5z
dHlsZSgpLmlzTGVmdFRvUmlnaHREaXJlY3Rpb24oKSB8fCBpbmxpbmVCb3guc3R5bGUoKS5ydGxP
cmRlcmluZygpID09IE9yZGVyOjpWaXN1YWwgfHwgaW5saW5lQm94LnN0eWxlKCkudW5pY29kZUJp
ZGkoKSA9PSBVbmljb2RlQmlkaTo6Tm9ybWFsKTsKIH0KIAogdm9pZCBJbmxpbmVJdGVtc0J1aWxk
ZXI6OmhhbmRsZUlubGluZUxldmVsQm94KGNvbnN0IEJveCYgbGF5b3V0Qm94LCBJbmxpbmVJdGVt
cyYgaW5saW5lSXRlbXMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0
L1VuaWNvZGVCaWRpLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1VuaWNvZGVCaWRp
LmgKaW5kZXggMDI3NzM2ZmJkMWExLi5jYjMzZGY1YzY1ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL3RleHQvVW5pY29kZUJpZGkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS90ZXh0L1VuaWNvZGVCaWRpLmgKQEAgLTI5LDcgKzI5LDcgQEAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogZW51bSBjbGFzcyBVbmljb2RlQmlkaSA6IHVpbnQ4X3QgewotICAgIFVCTm9y
bWFsLAorICAgIE5vcm1hbCwKICAgICBFbWJlZCwKICAgICBPdmVycmlkZSwKICAgICBJc29sYXRl
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUl0ZXJh
dG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVnYWN5SW5saW5lSXRlcmF0b3IuaApp
bmRleCAwYWI1OTBhMmExZDIuLmVmNDViZTQwNjRhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUl0ZXJhdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL0xlZ2FjeUlubGluZUl0ZXJhdG9yLmgKQEAgLTE1NSw3ICsxNTUsNyBAQCBzdGF0
aWMgaW5saW5lIHZvaWQgbm90aWZ5T2JzZXJ2ZXJFbnRlcmVkT2JqZWN0KE9ic2VydmVyKiBvYnNl
cnZlciwgUmVuZGVyT2JqZWN0KgogCiAgICAgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlID0gb2Jq
ZWN0LT5zdHlsZSgpOwogICAgIGF1dG8gdW5pY29kZUJpZGkgPSBzdHlsZS51bmljb2RlQmlkaSgp
OwotICAgIGlmICh1bmljb2RlQmlkaSA9PSBVbmljb2RlQmlkaTo6VUJOb3JtYWwpIHsKKyAgICBp
ZiAodW5pY29kZUJpZGkgPT0gVW5pY29kZUJpZGk6Ok5vcm1hbCkgewogICAgICAgICAvLyBodHRw
Oi8vZGV2LnczLm9yZy9jc3N3Zy9jc3MzLXdyaXRpbmctbW9kZXMvI3VuaWNvZGUtYmlkaQogICAg
ICAgICAvLyAiVGhlIGVsZW1lbnQgZG9lcyBub3Qgb3BlbiBhbiBhZGRpdGlvbmFsIGxldmVsIG9m
IGVtYmVkZGluZyB3aXRoIHJlc3BlY3QgdG8gdGhlIGJpZGlyZWN0aW9uYWwgYWxnb3JpdGhtLiIK
ICAgICAgICAgLy8gVGh1cyB3ZSBpZ25vcmUgYW55IHBvc3NpYmxlIGRpcj0gYXR0cmlidXRlIG9u
IHRoZSBzcGFuLgpAQCAtMTgxLDcgKzE4MSw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBub3RpZnlP
YnNlcnZlcldpbGxFeGl0T2JqZWN0KE9ic2VydmVyKiBvYnNlcnZlciwgUmVuZGVyT2JqZWN0CiAg
ICAgICAgIHJldHVybjsKIAogICAgIGF1dG8gdW5pY29kZUJpZGkgPSBvYmplY3QtPnN0eWxlKCku
dW5pY29kZUJpZGkoKTsKLSAgICBpZiAodW5pY29kZUJpZGkgPT0gVW5pY29kZUJpZGk6OlVCTm9y
bWFsKQorICAgIGlmICh1bmljb2RlQmlkaSA9PSBVbmljb2RlQmlkaTo6Tm9ybWFsKQogICAgICAg
ICByZXR1cm47IC8vIE5vdGhpbmcgdG8gZG8gZm9yIHVuaWNvZGUtYmlkaTogbm9ybWFsCiAgICAg
aWYgKGlzSXNvbGF0ZWQodW5pY29kZUJpZGkpKSB7CiAgICAgICAgIG9ic2VydmVyLT5leGl0SXNv
bGF0ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck1lbnVM
aXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZW51TGlzdC5jcHAKaW5k
ZXggYzAxMjIyN2Y3NmIyLi4wMWM1OTY2MTZmZGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJNZW51TGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlck1lbnVMaXN0LmNwcApAQCAtMTQxLDcgKzE0MSw3IEBAIHZvaWQgUmVuZGVyTWVu
dUxpc3Q6OmFkanVzdElubmVyU3R5bGUoKQogICAgICAgICBVbmljb2RlQmlkaSB1bmljb2RlQmlk
aTsKICAgICAgICAgaWYgKG11bHRpcGxlKCkgJiYgc2VsZWN0ZWRPcHRpb25Db3VudCgqdGhpcykg
IT0gMSkgewogICAgICAgICAgICAgZGlyZWN0aW9uID0gKG1fYnV0dG9uVGV4dCAmJiBtX2J1dHRv
blRleHQtPnRleHQoKS5kZWZhdWx0V3JpdGluZ0RpcmVjdGlvbigpID09IFVfUklHSFRfVE9fTEVG
VCkgPyBUZXh0RGlyZWN0aW9uOjpSVEwgOiBUZXh0RGlyZWN0aW9uOjpMVFI7Ci0gICAgICAgICAg
ICB1bmljb2RlQmlkaSA9IFVuaWNvZGVCaWRpOjpVQk5vcm1hbDsKKyAgICAgICAgICAgIHVuaWNv
ZGVCaWRpID0gVW5pY29kZUJpZGk6Ok5vcm1hbDsKICAgICAgICAgfSBlbHNlIGlmIChtX29wdGlv
blN0eWxlKSB7CiAgICAgICAgICAgICBkaXJlY3Rpb24gPSBtX29wdGlvblN0eWxlLT5kaXJlY3Rp
b24oKTsKICAgICAgICAgICAgIHVuaWNvZGVCaWRpID0gbV9vcHRpb25TdHlsZS0+dW5pY29kZUJp
ZGkoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKaW5k
ZXggMWJlYmNhMmU5NTNiLi43NGRlOTI3ZmZjNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC0xNTYxLDcgKzE1NjEsNyBAQCBwdWJsaWM6CiAK
ICAgICBzdGF0aWMgQ2xlYXIgaW5pdGlhbENsZWFyKCkgeyByZXR1cm4gQ2xlYXI6Ok5vbmU7IH0K
ICAgICBzdGF0aWMgRGlzcGxheVR5cGUgaW5pdGlhbERpc3BsYXkoKSB7IHJldHVybiBEaXNwbGF5
VHlwZTo6SW5saW5lOyB9Ci0gICAgc3RhdGljIFVuaWNvZGVCaWRpIGluaXRpYWxVbmljb2RlQmlk
aSgpIHsgcmV0dXJuIFVuaWNvZGVCaWRpOjpVQk5vcm1hbDsgfQorICAgIHN0YXRpYyBVbmljb2Rl
QmlkaSBpbml0aWFsVW5pY29kZUJpZGkoKSB7IHJldHVybiBVbmljb2RlQmlkaTo6Tm9ybWFsOyB9
CiAgICAgc3RhdGljIFBvc2l0aW9uVHlwZSBpbml0aWFsUG9zaXRpb24oKSB7IHJldHVybiBQb3Np
dGlvblR5cGU6OlN0YXRpYzsgfQogICAgIHN0YXRpYyBWZXJ0aWNhbEFsaWduIGluaXRpYWxWZXJ0
aWNhbEFsaWduKCkgeyByZXR1cm4gVmVydGljYWxBbGlnbjo6QmFzZWxpbmU7IH0KICAgICBzdGF0
aWMgRmxvYXQgaW5pdGlhbEZsb2F0aW5nKCkgeyByZXR1cm4gRmxvYXQ6Ok5vbmU7IH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>