<?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>224817</bug_id>
          
          <creation_ts>2021-04-20 09:17:50 -0700</creation_ts>
          <short_desc>FullGCActivityCallback should use the percentage of pages uncompressed in RAM to determine deferral.</short_desc>
          <delta_ts>2021-04-20 15:42:17 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</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="Keith Miller">keith_miller</reporter>
          <assigned_to name="Keith Miller">keith_miller</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fpizlo</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1752284</commentid>
    <comment_count>0</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-04-20 09:17:50 -0700</bug_when>
    <thetext>FullGCActivityCallback should use the percentage of pages uncompressed in RAM to determine deferral.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752308</commentid>
    <comment_count>1</comment_count>
      <attachid>426561</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-04-20 09:53:48 -0700</bug_when>
    <thetext>Created attachment 426561
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752318</commentid>
    <comment_count>2</comment_count>
      <attachid>426563</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-04-20 10:18:08 -0700</bug_when>
    <thetext>Created attachment 426563
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752335</commentid>
    <comment_count>3</comment_count>
      <attachid>426569</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-04-20 10:57:45 -0700</bug_when>
    <thetext>Created attachment 426569
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752343</commentid>
    <comment_count>4</comment_count>
      <attachid>426571</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-04-20 11:17:40 -0700</bug_when>
    <thetext>Created attachment 426571
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752356</commentid>
    <comment_count>5</comment_count>
      <attachid>426571</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-20 11:37:26 -0700</bug_when>
    <thetext>Comment on attachment 426571
Patch

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

&gt; Source/WTF/ChangeLog:8
&gt; +        Add a noexecpt flavor of FunctionTraits.

Why? Where is noexcept coming into play? Some std namespace function?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752357</commentid>
    <comment_count>6</comment_count>
      <attachid>426575</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-04-20 11:37:52 -0700</bug_when>
    <thetext>Created attachment 426575
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752361</commentid>
    <comment_count>7</comment_count>
      <attachid>426571</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-04-20 11:40:30 -0700</bug_when>
    <thetext>Comment on attachment 426571
Patch

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

&gt;&gt; Source/WTF/ChangeLog:8
&gt;&gt; +        Add a noexecpt flavor of FunctionTraits.
&gt; 
&gt; Why? Where is noexcept coming into play? Some std namespace function?

mincore is marked noexcept on linux apparently, which is part of the reason I was getting build failures there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752365</commentid>
    <comment_count>8</comment_count>
      <attachid>426577</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-04-20 11:58:40 -0700</bug_when>
    <thetext>Created attachment 426577
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752394</commentid>
    <comment_count>9</comment_count>
      <attachid>426577</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-04-20 13:08:56 -0700</bug_when>
    <thetext>Comment on attachment 426577
Patch

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

&gt; Source/WTF/ChangeLog:8
&gt; +        Add a noexecpt flavor of FunctionTraits.

I suggest you fix the typo here and mention mincore as the reason.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752395</commentid>
    <comment_count>10</comment_count>
      <attachid>426577</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-04-20 13:09:49 -0700</bug_when>
    <thetext>Comment on attachment 426577
Patch

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

&gt;&gt; Source/WTF/ChangeLog:8
&gt;&gt; +        Add a noexecpt flavor of FunctionTraits.
&gt; 
&gt; I suggest you fix the typo here and mention mincore as the reason.

Sure, will do both before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752396</commentid>
    <comment_count>11</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-04-20 13:10:44 -0700</bug_when>
    <thetext>rdar://76425456</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752397</commentid>
    <comment_count>12</comment_count>
      <attachid>426577</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-04-20 13:13:00 -0700</bug_when>
    <thetext>Comment on attachment 426577
Patch

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

In a follow up patch I&apos;ll make sure we account for PreciseAllocations too.

&gt; Source/JavaScriptCore/heap/BlockDirectory.cpp:80
&gt; +        // FIXME: We could cache this in bulk (e.g. 25 MB chunks) but we haven&apos;t seen any data that it actually matters.

Actually, this probably shouldn&apos;t be marked as a FIXME since we&apos;re not actually going to fix this until we say data saying it matters.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752428</commentid>
    <comment_count>13</comment_count>
      <attachid>426593</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-04-20 14:33:16 -0700</bug_when>
    <thetext>Created attachment 426593
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1752479</commentid>
    <comment_count>14</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-20 15:42:13 -0700</bug_when>
    <thetext>Committed r276324 (236804@main): &lt;https://commits.webkit.org/236804@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 426593.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426561</attachid>
            <date>2021-04-20 09:53:48 -0700</date>
            <delta_ts>2021-04-20 10:18:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224817-20210420125347.patch</filename>
            <type>text/plain</type>
            <size>10654</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1OTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
OWRjZjNkNGRjODkyYjcyNDhmOGExZDljNmRhZmQ3NmU1ZTAwOGM0Li5lOWQwZTFmNjQ3MDA1OWJh
NTVhYWMxZjcyODQ1NTI1ZjBiNjg3MDFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMS0wNC0yMCAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBGdWxsR0NBY3Rpdml0eUNhbGxiYWNrIHNob3VsZCB1c2UgdGhlIHBl
cmNlbnRhZ2Ugb2YgcGFnZXMgdW5jb21wcmVzc2VkIGluIFJBTSB0byBkZXRlcm1pbmUgZGVmZXJy
YWwuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQ4
MTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSaWdo
dCBub3cgd2UgdHJ5IHRvIGRldGVybWluZSBpZiB0b28gbWFueSBwYWdlcyBhcmUgcGFnZWQgb3V0
IGJ5CisgICAgICAgIGRlcmVmZXJlbmNpbmcgdGhlbSBhbmQgYmFpbGluZyBvdXQgb2YgdGhlIEdD
IGlmIHdlIGdvIG92ZXIgYQorICAgICAgICBkZWFkbGluZS4gV2hpbGUgdGhpcyB3b3JrcyBpZiB0
aGUgb25seSBnb2FsIGlzIHRvIGF2b2lkIGNhdXNpbmcKKyAgICAgICAgZXh0ZW5zaXZlIHRocmFz
aGluZyBvbiBzcGlubnkgZGlza3MgKEhERCksIGl0IGRvZXNuJ3QgcHJldmVudAorICAgICAgICB0
aHJhc2hpbmcgd2hlbiBhY2Nlc3MgdG8gZGlzayBpcyBmYXN0IChlLmcuIFNTRCkuIFRoaXMgaXMg
YmVjYXVzZQorICAgICAgICBvbiBmYXN0IGRpc2tzIHRoZSBwcm9wb3J0aW9uYWwgdGltZSB0byBs
b2FkIHRoZSBtZW1vcnkgZnJvbSBkaXNrCisgICAgICAgIGlzIG11Y2ggbG93ZXIuIEFkZGl0aW9u
YWxseSwgb24gU1NEcyBpbiBwYXJ0aWN1bGFyIHdlIGRvbid0IHdhbnQKKyAgICAgICAgdG8gbG9h
ZCB0aGUgcGFnZXMgaW50byBSQU0gdGhlbiBiYWlsIGFzIHRoYXQgd2lsbCBmb3JjZSBhCisgICAg
ICAgIGRpZmZlcmVudCBwYWdlIG9udG8gZGlzaywgaW5jcmVhc2luZyB3ZWFyLgorCisgICAgICAg
IFRoaXMgcGF0Y2ggc3dpdGNoZXMgdG8gYXNraW5nIHRoZSBPUyBpZiBlYWNoIE1hcmtlZEJsb2Nr
IGlzIHBhZ2VkCisgICAgICAgIG91dC4gVGhlbiBpZiB3ZSBhcmUgb3ZlciBhIHRocmVzaG9sZCB3
ZSB3YWl0IHVudGlsIHdlIHdvdWxkIGhhdmUKKyAgICAgICAgR0MnZCBhbnl3YXkuIFRoaXMgcGF0
Y2ggdXNlcyB0aGUgKG1heFZNR3Jvd3RoRmFjdG9yIC0gMSkgYXMgdGhlCisgICAgICAgIHBlcmNl
bnRhZ2Ugb2YgInNsb3ciIHBhZ2VzIChwYWdlZCBvdXQgb3IgY29tcHJlc3NlZCkgbmVlZGVkIHRv
CisgICAgICAgIGRlZmVyIHRoZSBHQy4gVGhlIGlkZWEgYmVoaW5kIHRoYXQgdGhyZXNob2xkIGlz
IHRoYXQgaWYgd2UgYWRkCisgICAgICAgIHRoYXQgbWFueSBwYWdlcyB0aGVuIHRoZSBzYW1lIG51
bWJlciBvZiBwYWdlcyB3b3VsZCBiZSBmb3JjZWQKKyAgICAgICAgb3V0IG9mIFJBTSBmb3IgdXMg
dG8gZG8gYSBHQyBhbnl3YXkgKGluIHRoZSBsaW1pdCkuCisKKyAgICAgICAgKiBoZWFwL0Jsb2Nr
RGlyZWN0b3J5LmNwcDoKKyAgICAgICAgKEpTQzo6QmxvY2tEaXJlY3Rvcnk6OnVwZGF0ZVBlcmNl
bnRhZ2VPZlBhZ2VkT3V0UGFnZXMpOgorICAgICAgICAoSlNDOjpCbG9ja0RpcmVjdG9yeTo6aXNQ
YWdlZE91dCk6IERlbGV0ZWQuCisgICAgICAgICogaGVhcC9CbG9ja0RpcmVjdG9yeS5oOgorICAg
ICAgICAqIGhlYXAvRnVsbEdDQWN0aXZpdHlDYWxsYmFjay5jcHA6CisgICAgICAgIChKU0M6OkZ1
bGxHQ0FjdGl2aXR5Q2FsbGJhY2s6OmRvQ29sbGVjdGlvbik6CisgICAgICAgICogaGVhcC9IZWFw
LmNwcDoKKyAgICAgICAgKEpTQzo6SGVhcDo6aXNQYWdlZE91dCk6CisgICAgICAgICogaGVhcC9I
ZWFwLmg6CisgICAgICAgICogaGVhcC9NYXJrZWRTcGFjZS5jcHA6CisgICAgICAgIChKU0M6Ok1h
cmtlZFNwYWNlOjppc1BhZ2VkT3V0KToKKyAgICAgICAgKiBoZWFwL01hcmtlZFNwYWNlLmg6Cisg
ICAgICAgICogcnVudGltZS9PcHRpb25zTGlzdC5oOgorCiAyMDIxLTA0LTEzICBNYXJrIExhbSAg
PG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBUaGUgd2F0Y2hkb2cgc2hvdWxkIG5vdCBm
aXJlIHdoZW4gaXQncyBub3QgYWN0aXZlLgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
QmxvY2tEaXJlY3RvcnkuY3BwCmluZGV4IDhkMmI5M2QzNjYxODgxZDg0MTU5OTZhOTVmMDBlYTA5
MTkyZWRlMjguLjlkYTE0YTY0ZTcwOWU5ZjQ4NTdjN2YyNTVlZmRmYjYyMWVjYzM0MjkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2NrRGlyZWN0b3J5LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9ja0RpcmVjdG9yeS5jcHAKQEAgLTMxLDYg
KzMxLDggQEAKICNpbmNsdWRlICJTdWJzcGFjZUlubGluZXMuaCIKICNpbmNsdWRlICJTdXBlclNh
bXBsZXIuaCIKIAorI2luY2x1ZGUgPHd0Zi9TaW1wbGVTdGF0cy5oPgorCiBuYW1lc3BhY2UgSlND
IHsKIAogREVGSU5FX0FMTE9DQVRPUl9XSVRIX0hFQVBfSURFTlRJRklFUihCbG9ja0RpcmVjdG9y
eSk7CkBAIC01MywyMSArNTUsMzEgQEAgdm9pZCBCbG9ja0RpcmVjdG9yeTo6c2V0U3Vic3BhY2Uo
U3Vic3BhY2UqIHN1YnNwYWNlKQogICAgIG1fc3Vic3BhY2UgPSBzdWJzcGFjZTsKIH0KIAotYm9v
bCBCbG9ja0RpcmVjdG9yeTo6aXNQYWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKQordm9p
ZCBCbG9ja0RpcmVjdG9yeTo6dXBkYXRlUGVyY2VudGFnZU9mUGFnZWRPdXRQYWdlcyhTaW1wbGVT
dGF0cyYgc3RhdHMpCiB7Ci0gICAgdW5zaWduZWQgaXRlcnNTaW5jZUxhc3RUaW1lQ2hlY2sgPSAw
OwotICAgIGZvciAoYXV0byogYmxvY2sgOiBtX2Jsb2NrcykgewotICAgICAgICBpZiAoYmxvY2sp
Ci0gICAgICAgICAgICBibG9jay0+YmxvY2soKS5wb3B1bGF0ZVBhZ2UoKTsKLSAgICAgICAgKytp
dGVyc1NpbmNlTGFzdFRpbWVDaGVjazsKLSAgICAgICAgaWYgKGl0ZXJzU2luY2VMYXN0VGltZUNo
ZWNrID49IEhlYXA6OnNfdGltZUNoZWNrUmVzb2x1dGlvbikgewotICAgICAgICAgICAgTW9ub3Rv
bmljVGltZSBjdXJyZW50VGltZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOwotICAgICAgICAgICAg
aWYgKGN1cnJlbnRUaW1lID4gZGVhZGxpbmUpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7
Ci0gICAgICAgICAgICBpdGVyc1NpbmNlTGFzdFRpbWVDaGVjayA9IDA7Ci0gICAgICAgIH0KKyAg
ICAvLyBGSVhNRTogV2Ugc2hvdWxkIGZpZ3VyZSBvdXQgYSBzb2x1dGlvbiBmb3IgV2luZG93cy4K
KyNpZiBPUyhVTklYKQorICAgIHNpemVfdCBwYWdlU2l6ZSA9IFdURjo6cGFnZVNpemUoKTsKKyAg
ICBBU1NFUlQoIShNYXJrZWRCbG9jazo6YmxvY2tTaXplICUgcGFnZVNpemUpKTsKKyAgICBhdXRv
IG51bWJlck9mUGFnZXNJbk1hcmtlZEJsb2NrID0gTWFya2VkQmxvY2s6OmJsb2NrU2l6ZSAvIHBh
Z2VTaXplOworICAgIC8vIHBhZ2VTaXplIGlzIGVmZmVjdGl2ZWx5IGEgY29uc3RhbnQgc28gdGhp
cyBpc24ndCByZWFsbHkgdmFyaWFibGUuCisgICAgSUdOT1JFX0NMQU5HX1dBUk5JTkdTX0JFR0lO
KCJ2bGEiKQorICAgIGNoYXIgcGFnZWRCaXRzW251bWJlck9mUGFnZXNJbk1hcmtlZEJsb2NrXTsK
KyAgICBJR05PUkVfQ0xBTkdfV0FSTklOR1NfRU5ECisKKyAgICBmb3IgKGF1dG8qIGhhbmRsZSA6
IG1fYmxvY2tzKSB7CisgICAgICAgIGlmICghaGFuZGxlKQorICAgICAgICAgICAgY29udGludWU7
CisKKyAgICAgICAgYXV0byBtYXJrZWRCbG9ja1NpemVJbkJ5dGVzID0gc3RhdGljX2Nhc3Q8c2l6
ZV90PihyZWludGVycHJldF9jYXN0PGNoYXIqPihoYW5kbGUtPmVuZCgpKSAtIHJlaW50ZXJwcmV0
X2Nhc3Q8Y2hhcio+KGhhbmRsZS0+c3RhcnQoKSkpOworICAgICAgICBSRUxFQVNFX0FTU0VSVCht
YXJrZWRCbG9ja1NpemVJbkJ5dGVzIC8gcGFnZVNpemUgPD0gbnVtYmVyT2ZQYWdlc0luTWFya2Vk
QmxvY2spOworICAgICAgICAvLyBGSVhNRTogV2UgY291bGQgY2FjaGUgdGhpcyBpbiBidWxrIChl
LmcuIDI1IE1CIGNodW5rcykgYnV0IHdlIGhhdmVuJ3Qgc2VlbiBhbnkgZGF0YSB0aGF0IGl0IGFj
dHVhbGx5IG1hdHRlcnMuCisgICAgICAgIGF1dG8gcmVzdWx0ID0gbWluY29yZShoYW5kbGUtPnN0
YXJ0KCksIG1hcmtlZEJsb2NrU2l6ZUluQnl0ZXMsIHBhZ2VkQml0cyk7CisgICAgICAgIFJFTEVB
U0VfQVNTRVJUKCFyZXN1bHQpOworICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVt
YmVyT2ZQYWdlc0luTWFya2VkQmxvY2s7ICsraSkKKyAgICAgICAgICAgIHN0YXRzLmFkZCghKHBh
Z2VkQml0c1tpXSAmIE1JTkNPUkVfSU5DT1JFKSk7CiAgICAgfQotICAgIHJldHVybiBmYWxzZTsK
KyNlbmRpZgogfQogCiBNYXJrZWRCbG9jazo6SGFuZGxlKiBCbG9ja0RpcmVjdG9yeTo6ZmluZEVt
cHR5QmxvY2tUb1N0ZWFsKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFw
L0Jsb2NrRGlyZWN0b3J5LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9ja0RpcmVj
dG9yeS5oCmluZGV4IDY3NDJjMzE1OGI5NjE2NTI0YTJiMGE2OGNhZDQwMTYyNDQ3ZWVhNDEuLmFk
N2RkYTAxYjI5ZTg3NWVhYmRiNTcyZjViNGVhMjBhZDI0YjFlNjIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2NrRGlyZWN0b3J5LmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuaApAQCAtMzcsNiArMzcsMTAgQEAKICNpbmNs
dWRlIDx3dGYvU2hhcmVkVGFzay5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAorbmFtZXNw
YWNlIFdURiB7CitjbGFzcyBTaW1wbGVTdGF0czsKK30KKwogbmFtZXNwYWNlIEpTQyB7CiAKIGNs
YXNzIEdDRGVmZXJyYWxDb250ZXh0OwpAQCAtODUsNyArODksNyBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBhZGRCbG9jayhNYXJrZWRCbG9jazo6SGFuZGxlKik7CiAgICAgdm9pZCByZW1vdmVCbG9jayhN
YXJrZWRCbG9jazo6SGFuZGxlKik7CiAKLSAgICBib29sIGlzUGFnZWRPdXQoTW9ub3RvbmljVGlt
ZSBkZWFkbGluZSk7CisgICAgdm9pZCB1cGRhdGVQZXJjZW50YWdlT2ZQYWdlZE91dFBhZ2VzKFdU
Rjo6U2ltcGxlU3RhdHMmKTsKICAgICAKICAgICBMb2NrJiBiaXR2ZWN0b3JMb2NrKCkgeyByZXR1
cm4gbV9iaXR2ZWN0b3JMb2NrOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9oZWFwL0Z1bGxHQ0FjdGl2aXR5Q2FsbGJhY2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2hlYXAvRnVsbEdDQWN0aXZpdHlDYWxsYmFjay5jcHAKaW5kZXggMjQ4ODAyYjlkNGM4NDE1N2U1
NmFlMDNlMjA3MDkxYjlkNDM4ZTU5Zi4uNmQxN2UxMTFkYjliZWRkYWJhNGY4N2UyNWQ0OTI4NzE0
ZGU1MGZjYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvRnVsbEdDQWN0
aXZpdHlDYWxsYmFjay5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvRnVsbEdD
QWN0aXZpdHlDYWxsYmFjay5jcHAKQEAgLTQ0LDExICs0NCwxMSBAQCB2b2lkIEZ1bGxHQ0FjdGl2
aXR5Q2FsbGJhY2s6OmRvQ29sbGVjdGlvbihWTSYgdm0pCiAgICAgSGVhcCYgaGVhcCA9IHZtLmhl
YXA7CiAgICAgbV9kaWRHQ1JlY2VudGx5ID0gZmFsc2U7CiAKLSNpZiAhUExBVEZPUk0oSU9TX0ZB
TUlMWSkKKyNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1Qp
CiAgICAgTW9ub3RvbmljVGltZSBzdGFydFRpbWUgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKLSAg
ICBpZiAoaGVhcC5pc1BhZ2VkT3V0KHN0YXJ0VGltZSArIHBhZ2luZ1RpbWVPdXQpKSB7CisgICAg
aWYgKGhlYXAuaXNQYWdlZE91dCgpKSB7CiAgICAgICAgIGNhbmNlbCgpOwotICAgICAgICBoZWFw
LmluY3JlYXNlTGFzdEZ1bGxHQ0xlbmd0aChwYWdpbmdUaW1lT3V0KTsKKyAgICAgICAgaGVhcC5p
bmNyZWFzZUxhc3RGdWxsR0NMZW5ndGgoTW9ub3RvbmljVGltZTo6bm93KCkgLSBzdGFydFRpbWUp
OwogICAgICAgICByZXR1cm47CiAgICAgfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hl
YXAuY3BwCmluZGV4IGIyNmU5MTNkMjJhZjAwZmUyY2FmNjFiNjdjYzc3OTc4OWJkMmNkYzkuLjgx
YTcxYTBkYzdmZjczMGNkMWM5ZmFmN2M4YzhiZGVjYzAyNTk5ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9oZWFwL0hlYXAuY3BwCkBAIC0zNTUsOSArMzU1LDkgQEAgSGVhcDo6fkhlYXAoKQogICAgICAg
ICBXZWFrQmxvY2s6OmRlc3Ryb3koKnRoaXMsIGJsb2NrKTsKIH0KIAotYm9vbCBIZWFwOjppc1Bh
Z2VkT3V0KE1vbm90b25pY1RpbWUgZGVhZGxpbmUpCitib29sIEhlYXA6OmlzUGFnZWRPdXQoKQog
ewotICAgIHJldHVybiBtX29iamVjdFNwYWNlLmlzUGFnZWRPdXQoZGVhZGxpbmUpOworICAgIHJl
dHVybiBtX29iamVjdFNwYWNlLmlzUGFnZWRPdXQoKTsKIH0KIAogdm9pZCBIZWFwOjpkdW1wSGVh
cFN0YXRpc3RpY3NBdFZNRGVzdHJ1Y3Rpb24oKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2hlYXAvSGVhcC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5oCmlu
ZGV4IDA0NzE4YmVjNDcyMWMyZGRkOTcxMjgyZDYxYTc0ZGRjNmRiMGVlYWEuLjM3M2ViZWI1YWZk
ZmIzNjM3Y2M4ZDMxODk3OWU0YTE1NjQxZWIxNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL0hlYXAuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFw
LmgKQEAgLTI3MCw3ICsyNzAsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBkZWxldGVBbGxVbmxpbmtl
ZENvZGVCbG9ja3MoRGVsZXRlQWxsQ29kZUVmZm9ydCk7CiAKICAgICB2b2lkIGRpZEFsbG9jYXRl
KHNpemVfdCk7Ci0gICAgYm9vbCBpc1BhZ2VkT3V0KE1vbm90b25pY1RpbWUgZGVhZGxpbmUpOwor
ICAgIGJvb2wgaXNQYWdlZE91dCgpOwogICAgIAogICAgIGNvbnN0IEpJVFN0dWJSb3V0aW5lU2V0
JiBqaXRTdHViUm91dGluZXMoKSB7IHJldHVybiAqbV9qaXRTdHViUm91dGluZXM7IH0KICAgICAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmNwcAppbmRleCAyN2NlMmVm
NTUyNmJlZDY4YWMwOGE3NjM0YTk5NjNhMzEwYjg2MDBlLi5mMzMzMjYxNGM4YTM0MTQyOWI1Y2Jk
ZGU4MDkxMzFlODZiZjYxZWVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVh
cC9NYXJrZWRTcGFjZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2Vk
U3BhY2UuY3BwCkBAIC0yNyw2ICsyNyw3IEBACiAjaW5jbHVkZSAiTWFya2VkQmxvY2tJbmxpbmVz
LmgiCiAjaW5jbHVkZSAiTWFya2VkU3BhY2VJbmxpbmVzLmgiCiAjaW5jbHVkZSA8d3RmL0xpc3RE
dW1wLmg+CisjaW5jbHVkZSA8d3RmL1NpbXBsZVN0YXRzLmg+CiAKIG5hbWVzcGFjZSBKU0Mgewog
CkBAIC0zNTgsMTkgKzM1OSwxOSBAQCB2b2lkIE1hcmtlZFNwYWNlOjpyZXN1bWVBbGxvY2F0aW5n
KCkKICAgICAvLyBOb3RoaW5nIHRvIGRvIGZvciBQcmVjaXNlQWxsb2NhdGlvbnMuCiB9CiAKLWJv
b2wgTWFya2VkU3BhY2U6OmlzUGFnZWRPdXQoTW9ub3RvbmljVGltZSBkZWFkbGluZSkKK2Jvb2wg
TWFya2VkU3BhY2U6OmlzUGFnZWRPdXQoKQogewotICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7Cisg
ICAgU2ltcGxlU3RhdHMgcGFnZWRPdXRQYWdlc1N0YXRzOworCiAgICAgZm9yRWFjaERpcmVjdG9y
eSgKICAgICAgICAgWyZdIChCbG9ja0RpcmVjdG9yeSYgZGlyZWN0b3J5KSAtPiBJdGVyYXRpb25T
dGF0dXMgewotICAgICAgICAgICAgaWYgKGRpcmVjdG9yeS5pc1BhZ2VkT3V0KGRlYWRsaW5lKSkg
ewotICAgICAgICAgICAgICAgIHJlc3VsdCA9IHRydWU7Ci0gICAgICAgICAgICAgICAgcmV0dXJu
IEl0ZXJhdGlvblN0YXR1czo6RG9uZTsKLSAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGRpcmVj
dG9yeS51cGRhdGVQZXJjZW50YWdlT2ZQYWdlZE91dFBhZ2VzKHBhZ2VkT3V0UGFnZXNTdGF0cyk7
CiAgICAgICAgICAgICByZXR1cm4gSXRlcmF0aW9uU3RhdHVzOjpDb250aW51ZTsKICAgICAgICAg
fSk7CiAgICAgLy8gRklYTUU6IENvbnNpZGVyIHRha2luZyBQcmVjaXNlQWxsb2NhdGlvbnMgaW50
byBhY2NvdW50IGhlcmUuCi0gICAgcmV0dXJuIHJlc3VsdDsKKyAgICBkb3VibGUgbWF4SGVhcEdy
b3d0aEZhY3RvciA9IFZNOjppc0luTWluaU1vZGUoKSA/IE9wdGlvbnM6Om1pbmlWTUhlYXBHcm93
dGhGYWN0b3IoKSA6IE9wdGlvbnM6OmxhcmdlSGVhcEdyb3d0aEZhY3RvcigpOworICAgIGRvdWJs
ZSBiYWlsb3V0UGVyY2VudGFnZSA9IE9wdGlvbnM6OmN1c3RvbUZ1bGxHQ0NhbGxiYWNrQmFpbFRo
cmVzaG9sZCgpID09IC0xLjAgPyBtYXhIZWFwR3Jvd3RoRmFjdG9yIC0gMSA6IE9wdGlvbnM6OmN1
c3RvbUZ1bGxHQ0NhbGxiYWNrQmFpbFRocmVzaG9sZCgpOworICAgIHJldHVybiBwYWdlZE91dFBh
Z2VzU3RhdHMubWVhbigpID4gcGFnZWRPdXRQYWdlc1N0YXRzLmNvdW50KCkgKiBiYWlsb3V0UGVy
Y2VudGFnZTsKIH0KIAogdm9pZCBNYXJrZWRTcGFjZTo6ZnJlZUJsb2NrKE1hcmtlZEJsb2NrOjpI
YW5kbGUqIGJsb2NrKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFy
a2VkU3BhY2UuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmgKaW5k
ZXggNmI0MzdjMmUxZjQ0ODYzNDRhNmU4MGY0MmQxMzcyMjA3NzEwN2ZhYS4uNWJlNTFkZTdlNGNm
OTliM2Q2ZjQ3Nzc3ZjAwYjZkMmE5N2FiODA0ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVh
cC9NYXJrZWRTcGFjZS5oCkBAIC0xNDgsNyArMTQ4LDcgQEAgcHVibGljOgogICAgIHNpemVfdCBz
aXplKCk7CiAgICAgc2l6ZV90IGNhcGFjaXR5KCk7CiAKLSAgICBib29sIGlzUGFnZWRPdXQoTW9u
b3RvbmljVGltZSBkZWFkbGluZSk7CisgICAgYm9vbCBpc1BhZ2VkT3V0KCk7CiAgICAgCiAgICAg
SGVhcFZlcnNpb24gbWFya2luZ1ZlcnNpb24oKSBjb25zdCB7IHJldHVybiBtX21hcmtpbmdWZXJz
aW9uOyB9CiAgICAgSGVhcFZlcnNpb24gbmV3bHlBbGxvY2F0ZWRWZXJzaW9uKCkgY29uc3QgeyBy
ZXR1cm4gbV9uZXdseUFsbG9jYXRlZFZlcnNpb247IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9PcHRpb25zTGlzdC5oCmluZGV4IDE1YTA2ZWI2NzFjODRlYmI0ZDBjM2EzNGIxMGE4
NTQwZGEzMDQzY2IuLmFjZGU0ZjBjMDExNjZlOWMwMDc1ZTFhNDVjNTEzMzhiZjUyYjU1Y2MgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaApAQCAtMjA0LDYg
KzIwNCw3IEBAIGNvbnN0ZXhwciB1bnNpZ25lZCBqc2NSZXNlcnZlZFpvbmVTaXplID0gNjQgKiBL
QjsKICAgICB2KERvdWJsZSwgbGFyZ2VIZWFwR3Jvd3RoRmFjdG9yLCAxLjI0LCBOb3JtYWwsIG51
bGxwdHIpIFwKICAgICB2KERvdWJsZSwgbWluaVZNSGVhcEdyb3d0aEZhY3RvciwgMS4yNywgTm9y
bWFsLCBudWxscHRyKSBcCiAgICAgdihEb3VibGUsIGNyaXRpY2FsR0NNZW1vcnlUaHJlc2hvbGQs
IDAuODAsIE5vcm1hbCwgInBlcmNlbnQgbWVtb3J5IGluIHVzZSB0aGUgR0MgY29uc2lkZXJzIGNy
aXRpY2FsLiAgVGhlIGNvbGxlY3RvciBpcyBtdWNoIG1vcmUgYWdncmVzc2l2ZSBhYm92ZSB0aGlz
IHRocmVzaG9sZCIpIFwKKyAgICB2KERvdWJsZSwgY3VzdG9tRnVsbEdDQ2FsbGJhY2tCYWlsVGhy
ZXNob2xkLCAtMS4wLCBOb3JtYWwsICJwZXJjZW50IG9mIG1lbW9yeSBwYWdlZCBvdXQgYmVmb3Jl
IHdlIGJhaWwgb3V0IG9mIHRpbWVyIGJhc2VkIEZ1bGwgR0NzLiAtMS4wIG1lYW5zIHVzZSAobWF4
SGVhcEdyb3d0aEZhY3RvciAtIDEpIikgXAogICAgIHYoRG91YmxlLCBtaW5pbXVtTXV0YXRvclV0
aWxpemF0aW9uLCAwLCBOb3JtYWwsIG51bGxwdHIpIFwKICAgICB2KERvdWJsZSwgbWF4aW11bU11
dGF0b3JVdGlsaXphdGlvbiwgMC43LCBOb3JtYWwsIG51bGxwdHIpIFwKICAgICB2KERvdWJsZSwg
ZXBzaWxvbk11dGF0b3JVdGlsaXphdGlvbiwgMC4wMSwgTm9ybWFsLCBudWxscHRyKSBcCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426563</attachid>
            <date>2021-04-20 10:18:08 -0700</date>
            <delta_ts>2021-04-20 10:57:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224817-20210420131807.patch</filename>
            <type>text/plain</type>
            <size>10977</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1OTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
OWRjZjNkNGRjODkyYjcyNDhmOGExZDljNmRhZmQ3NmU1ZTAwOGM0Li5lOWQwZTFmNjQ3MDA1OWJh
NTVhYWMxZjcyODQ1NTI1ZjBiNjg3MDFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMS0wNC0yMCAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBGdWxsR0NBY3Rpdml0eUNhbGxiYWNrIHNob3VsZCB1c2UgdGhlIHBl
cmNlbnRhZ2Ugb2YgcGFnZXMgdW5jb21wcmVzc2VkIGluIFJBTSB0byBkZXRlcm1pbmUgZGVmZXJy
YWwuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQ4
MTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSaWdo
dCBub3cgd2UgdHJ5IHRvIGRldGVybWluZSBpZiB0b28gbWFueSBwYWdlcyBhcmUgcGFnZWQgb3V0
IGJ5CisgICAgICAgIGRlcmVmZXJlbmNpbmcgdGhlbSBhbmQgYmFpbGluZyBvdXQgb2YgdGhlIEdD
IGlmIHdlIGdvIG92ZXIgYQorICAgICAgICBkZWFkbGluZS4gV2hpbGUgdGhpcyB3b3JrcyBpZiB0
aGUgb25seSBnb2FsIGlzIHRvIGF2b2lkIGNhdXNpbmcKKyAgICAgICAgZXh0ZW5zaXZlIHRocmFz
aGluZyBvbiBzcGlubnkgZGlza3MgKEhERCksIGl0IGRvZXNuJ3QgcHJldmVudAorICAgICAgICB0
aHJhc2hpbmcgd2hlbiBhY2Nlc3MgdG8gZGlzayBpcyBmYXN0IChlLmcuIFNTRCkuIFRoaXMgaXMg
YmVjYXVzZQorICAgICAgICBvbiBmYXN0IGRpc2tzIHRoZSBwcm9wb3J0aW9uYWwgdGltZSB0byBs
b2FkIHRoZSBtZW1vcnkgZnJvbSBkaXNrCisgICAgICAgIGlzIG11Y2ggbG93ZXIuIEFkZGl0aW9u
YWxseSwgb24gU1NEcyBpbiBwYXJ0aWN1bGFyIHdlIGRvbid0IHdhbnQKKyAgICAgICAgdG8gbG9h
ZCB0aGUgcGFnZXMgaW50byBSQU0gdGhlbiBiYWlsIGFzIHRoYXQgd2lsbCBmb3JjZSBhCisgICAg
ICAgIGRpZmZlcmVudCBwYWdlIG9udG8gZGlzaywgaW5jcmVhc2luZyB3ZWFyLgorCisgICAgICAg
IFRoaXMgcGF0Y2ggc3dpdGNoZXMgdG8gYXNraW5nIHRoZSBPUyBpZiBlYWNoIE1hcmtlZEJsb2Nr
IGlzIHBhZ2VkCisgICAgICAgIG91dC4gVGhlbiBpZiB3ZSBhcmUgb3ZlciBhIHRocmVzaG9sZCB3
ZSB3YWl0IHVudGlsIHdlIHdvdWxkIGhhdmUKKyAgICAgICAgR0MnZCBhbnl3YXkuIFRoaXMgcGF0
Y2ggdXNlcyB0aGUgKG1heFZNR3Jvd3RoRmFjdG9yIC0gMSkgYXMgdGhlCisgICAgICAgIHBlcmNl
bnRhZ2Ugb2YgInNsb3ciIHBhZ2VzIChwYWdlZCBvdXQgb3IgY29tcHJlc3NlZCkgbmVlZGVkIHRv
CisgICAgICAgIGRlZmVyIHRoZSBHQy4gVGhlIGlkZWEgYmVoaW5kIHRoYXQgdGhyZXNob2xkIGlz
IHRoYXQgaWYgd2UgYWRkCisgICAgICAgIHRoYXQgbWFueSBwYWdlcyB0aGVuIHRoZSBzYW1lIG51
bWJlciBvZiBwYWdlcyB3b3VsZCBiZSBmb3JjZWQKKyAgICAgICAgb3V0IG9mIFJBTSBmb3IgdXMg
dG8gZG8gYSBHQyBhbnl3YXkgKGluIHRoZSBsaW1pdCkuCisKKyAgICAgICAgKiBoZWFwL0Jsb2Nr
RGlyZWN0b3J5LmNwcDoKKyAgICAgICAgKEpTQzo6QmxvY2tEaXJlY3Rvcnk6OnVwZGF0ZVBlcmNl
bnRhZ2VPZlBhZ2VkT3V0UGFnZXMpOgorICAgICAgICAoSlNDOjpCbG9ja0RpcmVjdG9yeTo6aXNQ
YWdlZE91dCk6IERlbGV0ZWQuCisgICAgICAgICogaGVhcC9CbG9ja0RpcmVjdG9yeS5oOgorICAg
ICAgICAqIGhlYXAvRnVsbEdDQWN0aXZpdHlDYWxsYmFjay5jcHA6CisgICAgICAgIChKU0M6OkZ1
bGxHQ0FjdGl2aXR5Q2FsbGJhY2s6OmRvQ29sbGVjdGlvbik6CisgICAgICAgICogaGVhcC9IZWFw
LmNwcDoKKyAgICAgICAgKEpTQzo6SGVhcDo6aXNQYWdlZE91dCk6CisgICAgICAgICogaGVhcC9I
ZWFwLmg6CisgICAgICAgICogaGVhcC9NYXJrZWRTcGFjZS5jcHA6CisgICAgICAgIChKU0M6Ok1h
cmtlZFNwYWNlOjppc1BhZ2VkT3V0KToKKyAgICAgICAgKiBoZWFwL01hcmtlZFNwYWNlLmg6Cisg
ICAgICAgICogcnVudGltZS9PcHRpb25zTGlzdC5oOgorCiAyMDIxLTA0LTEzICBNYXJrIExhbSAg
PG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBUaGUgd2F0Y2hkb2cgc2hvdWxkIG5vdCBm
aXJlIHdoZW4gaXQncyBub3QgYWN0aXZlLgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
QmxvY2tEaXJlY3RvcnkuY3BwCmluZGV4IDhkMmI5M2QzNjYxODgxZDg0MTU5OTZhOTVmMDBlYTA5
MTkyZWRlMjguLjIxMmUxZDEwN2E4ZDBiNTdhYzJiZDBlZWI5YTYzOWJkNDUwYjVlMmEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2NrRGlyZWN0b3J5LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9ja0RpcmVjdG9yeS5jcHAKQEAgLTMxLDYg
KzMxLDkgQEAKICNpbmNsdWRlICJTdWJzcGFjZUlubGluZXMuaCIKICNpbmNsdWRlICJTdXBlclNh
bXBsZXIuaCIKIAorI2luY2x1ZGUgPHd0Zi9GdW5jdGlvblRyYWl0cy5oPgorI2luY2x1ZGUgPHd0
Zi9TaW1wbGVTdGF0cy5oPgorCiBuYW1lc3BhY2UgSlNDIHsKIAogREVGSU5FX0FMTE9DQVRPUl9X
SVRIX0hFQVBfSURFTlRJRklFUihCbG9ja0RpcmVjdG9yeSk7CkBAIC01MywyMSArNTYsMzQgQEAg
dm9pZCBCbG9ja0RpcmVjdG9yeTo6c2V0U3Vic3BhY2UoU3Vic3BhY2UqIHN1YnNwYWNlKQogICAg
IG1fc3Vic3BhY2UgPSBzdWJzcGFjZTsKIH0KIAotYm9vbCBCbG9ja0RpcmVjdG9yeTo6aXNQYWdl
ZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKQordm9pZCBCbG9ja0RpcmVjdG9yeTo6dXBkYXRl
UGVyY2VudGFnZU9mUGFnZWRPdXRQYWdlcyhTaW1wbGVTdGF0cyYgc3RhdHMpCiB7Ci0gICAgdW5z
aWduZWQgaXRlcnNTaW5jZUxhc3RUaW1lQ2hlY2sgPSAwOwotICAgIGZvciAoYXV0byogYmxvY2sg
OiBtX2Jsb2NrcykgewotICAgICAgICBpZiAoYmxvY2spCi0gICAgICAgICAgICBibG9jay0+Ymxv
Y2soKS5wb3B1bGF0ZVBhZ2UoKTsKLSAgICAgICAgKytpdGVyc1NpbmNlTGFzdFRpbWVDaGVjazsK
LSAgICAgICAgaWYgKGl0ZXJzU2luY2VMYXN0VGltZUNoZWNrID49IEhlYXA6OnNfdGltZUNoZWNr
UmVzb2x1dGlvbikgewotICAgICAgICAgICAgTW9ub3RvbmljVGltZSBjdXJyZW50VGltZSA9IE1v
bm90b25pY1RpbWU6Om5vdygpOwotICAgICAgICAgICAgaWYgKGN1cnJlbnRUaW1lID4gZGVhZGxp
bmUpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgICAgICBpdGVyc1NpbmNl
TGFzdFRpbWVDaGVjayA9IDA7Ci0gICAgICAgIH0KKyAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGZp
Z3VyZSBvdXQgYSBzb2x1dGlvbiBmb3IgV2luZG93cy4KKyNpZiBPUyhVTklYKQorICAgIHNpemVf
dCBwYWdlU2l6ZSA9IFdURjo6cGFnZVNpemUoKTsKKyAgICBBU1NFUlQoIShNYXJrZWRCbG9jazo6
YmxvY2tTaXplICUgcGFnZVNpemUpKTsKKyAgICBhdXRvIG51bWJlck9mUGFnZXNJbk1hcmtlZEJs
b2NrID0gTWFya2VkQmxvY2s6OmJsb2NrU2l6ZSAvIHBhZ2VTaXplOworICAgIC8vIEZvciBzb21l
IHJlYXNvbiB0aGlzIGNhbiBiZSB1bnNpZ25lZCBjaGFyIG9yIGNoYXIgb24gZGlmZmVyZW50IE9T
ZXMuLi4KKyAgICB1c2luZyBNaW5jb3JlQnVmZmVyVHlwZSA9IHN0ZDo6cmVtb3ZlX3BvaW50ZXJf
dDxGdW5jdGlvblRyYWl0czxkZWNsdHlwZShtaW5jb3JlKT46OkFyZ3VtZW50VHlwZTwyPj47Cisg
ICAgc3RhdGljX2Fzc2VydChzdGQ6OmlzX3NhbWVfdjxzdGQ6Om1ha2VfdW5zaWduZWRfdDxNaW5j
b3JlQnVmZmVyVHlwZT4sIHVuc2lnbmVkIGNoYXI+KTsKKyAgICAvLyBwYWdlU2l6ZSBpcyBlZmZl
Y3RpdmVseSBhIGNvbnN0YW50IHNvIHRoaXMgaXNuJ3QgcmVhbGx5IHZhcmlhYmxlLgorICAgIElH
Tk9SRV9DTEFOR19XQVJOSU5HU19CRUdJTigidmxhIikKKyAgICBNaW5jb3JlQnVmZmVyVHlwZSBw
YWdlZEJpdHNbbnVtYmVyT2ZQYWdlc0luTWFya2VkQmxvY2tdOworICAgIElHTk9SRV9DTEFOR19X
QVJOSU5HU19FTkQKKworICAgIGZvciAoYXV0byogaGFuZGxlIDogbV9ibG9ja3MpIHsKKyAgICAg
ICAgaWYgKCFoYW5kbGUpCisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICBhdXRvIG1h
cmtlZEJsb2NrU2l6ZUluQnl0ZXMgPSBzdGF0aWNfY2FzdDxzaXplX3Q+KHJlaW50ZXJwcmV0X2Nh
c3Q8Y2hhcio+KGhhbmRsZS0+ZW5kKCkpIC0gcmVpbnRlcnByZXRfY2FzdDxjaGFyKj4oaGFuZGxl
LT5zdGFydCgpKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKG1hcmtlZEJsb2NrU2l6ZUluQnl0
ZXMgLyBwYWdlU2l6ZSA8PSBudW1iZXJPZlBhZ2VzSW5NYXJrZWRCbG9jayk7CisgICAgICAgIC8v
IEZJWE1FOiBXZSBjb3VsZCBjYWNoZSB0aGlzIGluIGJ1bGsgKGUuZy4gMjUgTUIgY2h1bmtzKSBi
dXQgd2UgaGF2ZW4ndCBzZWVuIGFueSBkYXRhIHRoYXQgaXQgYWN0dWFsbHkgbWF0dGVycy4KKyAg
ICAgICAgYXV0byByZXN1bHQgPSBtaW5jb3JlKGhhbmRsZS0+c3RhcnQoKSwgbWFya2VkQmxvY2tT
aXplSW5CeXRlcywgcGFnZWRCaXRzKTsKKyAgICAgICAgUkVMRUFTRV9BU1NFUlQoIXJlc3VsdCk7
CisgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1iZXJPZlBhZ2VzSW5NYXJrZWRC
bG9jazsgKytpKQorICAgICAgICAgICAgc3RhdHMuYWRkKCEocGFnZWRCaXRzW2ldICYgTUlOQ09S
RV9JTkNPUkUpKTsKICAgICB9Ci0gICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCiB9CiAKIE1hcmtl
ZEJsb2NrOjpIYW5kbGUqIEJsb2NrRGlyZWN0b3J5OjpmaW5kRW1wdHlCbG9ja1RvU3RlYWwoKQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2NrRGlyZWN0b3J5LmgKaW5kZXggNjc0MmMz
MTU4Yjk2MTY1MjRhMmIwYTY4Y2FkNDAxNjI0NDdlZWE0MS4uYWQ3ZGRhMDFiMjllODc1ZWFiZGI1
NzJmNWI0ZWEyMGFkMjRiMWU2MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hl
YXAvQmxvY2tEaXJlY3RvcnkuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9j
a0RpcmVjdG9yeS5oCkBAIC0zNyw2ICszNywxMCBAQAogI2luY2x1ZGUgPHd0Zi9TaGFyZWRUYXNr
Lmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogCituYW1lc3BhY2UgV1RGIHsKK2NsYXNzIFNp
bXBsZVN0YXRzOworfQorCiBuYW1lc3BhY2UgSlNDIHsKIAogY2xhc3MgR0NEZWZlcnJhbENvbnRl
eHQ7CkBAIC04NSw3ICs4OSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGFkZEJsb2NrKE1hcmtlZEJs
b2NrOjpIYW5kbGUqKTsKICAgICB2b2lkIHJlbW92ZUJsb2NrKE1hcmtlZEJsb2NrOjpIYW5kbGUq
KTsKIAotICAgIGJvb2wgaXNQYWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKTsKKyAgICB2
b2lkIHVwZGF0ZVBlcmNlbnRhZ2VPZlBhZ2VkT3V0UGFnZXMoV1RGOjpTaW1wbGVTdGF0cyYpOwog
ICAgIAogICAgIExvY2smIGJpdHZlY3RvckxvY2soKSB7IHJldHVybiBtX2JpdHZlY3RvckxvY2s7
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvRnVsbEdDQWN0aXZp
dHlDYWxsYmFjay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9GdWxsR0NBY3Rpdml0
eUNhbGxiYWNrLmNwcAppbmRleCAyNDg4MDJiOWQ0Yzg0MTU3ZTU2YWUwM2UyMDcwOTFiOWQ0Mzhl
NTlmLi42ZDE3ZTExMWRiOWJlZGRhYmE0Zjg3ZTI1ZDQ5Mjg3MTRkZTUwZmNiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9GdWxsR0NBY3Rpdml0eUNhbGxiYWNrLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9GdWxsR0NBY3Rpdml0eUNhbGxiYWNrLmNw
cApAQCAtNDQsMTEgKzQ0LDExIEBAIHZvaWQgRnVsbEdDQWN0aXZpdHlDYWxsYmFjazo6ZG9Db2xs
ZWN0aW9uKFZNJiB2bSkKICAgICBIZWFwJiBoZWFwID0gdm0uaGVhcDsKICAgICBtX2RpZEdDUmVj
ZW50bHkgPSBmYWxzZTsKIAotI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQorI2lmICFQTEFURk9S
TShJT1NfRkFNSUxZKSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkKICAgICBNb25vdG9uaWNUaW1l
IHN0YXJ0VGltZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOwotICAgIGlmIChoZWFwLmlzUGFnZWRP
dXQoc3RhcnRUaW1lICsgcGFnaW5nVGltZU91dCkpIHsKKyAgICBpZiAoaGVhcC5pc1BhZ2VkT3V0
KCkpIHsKICAgICAgICAgY2FuY2VsKCk7Ci0gICAgICAgIGhlYXAuaW5jcmVhc2VMYXN0RnVsbEdD
TGVuZ3RoKHBhZ2luZ1RpbWVPdXQpOworICAgICAgICBoZWFwLmluY3JlYXNlTGFzdEZ1bGxHQ0xl
bmd0aChNb25vdG9uaWNUaW1lOjpub3coKSAtIHN0YXJ0VGltZSk7CiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hl
YXAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5jcHAKaW5kZXggYjI2ZTkx
M2QyMmFmMDBmZTJjYWY2MWI2N2NjNzc5Nzg5YmQyY2RjOS4uODFhNzFhMGRjN2ZmNzMwY2QxYzlm
YWY3YzhjOGJkZWNjMDI1OTllMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hl
YXAvSGVhcC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5jcHAKQEAg
LTM1NSw5ICszNTUsOSBAQCBIZWFwOjp+SGVhcCgpCiAgICAgICAgIFdlYWtCbG9jazo6ZGVzdHJv
eSgqdGhpcywgYmxvY2spOwogfQogCi1ib29sIEhlYXA6OmlzUGFnZWRPdXQoTW9ub3RvbmljVGlt
ZSBkZWFkbGluZSkKK2Jvb2wgSGVhcDo6aXNQYWdlZE91dCgpCiB7Ci0gICAgcmV0dXJuIG1fb2Jq
ZWN0U3BhY2UuaXNQYWdlZE91dChkZWFkbGluZSk7CisgICAgcmV0dXJuIG1fb2JqZWN0U3BhY2Uu
aXNQYWdlZE91dCgpOwogfQogCiB2b2lkIEhlYXA6OmR1bXBIZWFwU3RhdGlzdGljc0F0Vk1EZXN0
cnVjdGlvbigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmgKaW5kZXggMDQ3MThiZWM0NzIxYzJk
ZGQ5NzEyODJkNjFhNzRkZGM2ZGIwZWVhYS4uMzczZWJlYjVhZmRmYjM2MzdjYzhkMzE4OTc5ZTRh
MTU2NDFlYjE0OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuaApAQCAtMjcwLDcgKzI3MCw3
IEBAIHB1YmxpYzoKICAgICB2b2lkIGRlbGV0ZUFsbFVubGlua2VkQ29kZUJsb2NrcyhEZWxldGVB
bGxDb2RlRWZmb3J0KTsKIAogICAgIHZvaWQgZGlkQWxsb2NhdGUoc2l6ZV90KTsKLSAgICBib29s
IGlzUGFnZWRPdXQoTW9ub3RvbmljVGltZSBkZWFkbGluZSk7CisgICAgYm9vbCBpc1BhZ2VkT3V0
KCk7CiAgICAgCiAgICAgY29uc3QgSklUU3R1YlJvdXRpbmVTZXQmIGppdFN0dWJSb3V0aW5lcygp
IHsgcmV0dXJuICptX2ppdFN0dWJSb3V0aW5lczsgfQogICAgIApkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvTWFya2VkU3BhY2UuY3BwCmluZGV4IDI3Y2UyZWY1NTI2YmVkNjhhYzA4YTc2MzRh
OTk2M2EzMTBiODYwMGUuLmYzMzMyNjE0YzhhMzQxNDI5YjVjYmRkZTgwOTEzMWU4NmJmNjFlZWMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRTcGFjZS5jcHAKQEAgLTI3LDYg
KzI3LDcgQEAKICNpbmNsdWRlICJNYXJrZWRCbG9ja0lubGluZXMuaCIKICNpbmNsdWRlICJNYXJr
ZWRTcGFjZUlubGluZXMuaCIKICNpbmNsdWRlIDx3dGYvTGlzdER1bXAuaD4KKyNpbmNsdWRlIDx3
dGYvU2ltcGxlU3RhdHMuaD4KIAogbmFtZXNwYWNlIEpTQyB7CiAKQEAgLTM1OCwxOSArMzU5LDE5
IEBAIHZvaWQgTWFya2VkU3BhY2U6OnJlc3VtZUFsbG9jYXRpbmcoKQogICAgIC8vIE5vdGhpbmcg
dG8gZG8gZm9yIFByZWNpc2VBbGxvY2F0aW9ucy4KIH0KIAotYm9vbCBNYXJrZWRTcGFjZTo6aXNQ
YWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKQorYm9vbCBNYXJrZWRTcGFjZTo6aXNQYWdl
ZE91dCgpCiB7Ci0gICAgYm9vbCByZXN1bHQgPSBmYWxzZTsKKyAgICBTaW1wbGVTdGF0cyBwYWdl
ZE91dFBhZ2VzU3RhdHM7CisKICAgICBmb3JFYWNoRGlyZWN0b3J5KAogICAgICAgICBbJl0gKEJs
b2NrRGlyZWN0b3J5JiBkaXJlY3RvcnkpIC0+IEl0ZXJhdGlvblN0YXR1cyB7Ci0gICAgICAgICAg
ICBpZiAoZGlyZWN0b3J5LmlzUGFnZWRPdXQoZGVhZGxpbmUpKSB7Ci0gICAgICAgICAgICAgICAg
cmVzdWx0ID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICByZXR1cm4gSXRlcmF0aW9uU3RhdHVzOjpE
b25lOwotICAgICAgICAgICAgfQorICAgICAgICAgICAgZGlyZWN0b3J5LnVwZGF0ZVBlcmNlbnRh
Z2VPZlBhZ2VkT3V0UGFnZXMocGFnZWRPdXRQYWdlc1N0YXRzKTsKICAgICAgICAgICAgIHJldHVy
biBJdGVyYXRpb25TdGF0dXM6OkNvbnRpbnVlOwogICAgICAgICB9KTsKICAgICAvLyBGSVhNRTog
Q29uc2lkZXIgdGFraW5nIFByZWNpc2VBbGxvY2F0aW9ucyBpbnRvIGFjY291bnQgaGVyZS4KLSAg
ICByZXR1cm4gcmVzdWx0OworICAgIGRvdWJsZSBtYXhIZWFwR3Jvd3RoRmFjdG9yID0gVk06Omlz
SW5NaW5pTW9kZSgpID8gT3B0aW9uczo6bWluaVZNSGVhcEdyb3d0aEZhY3RvcigpIDogT3B0aW9u
czo6bGFyZ2VIZWFwR3Jvd3RoRmFjdG9yKCk7CisgICAgZG91YmxlIGJhaWxvdXRQZXJjZW50YWdl
ID0gT3B0aW9uczo6Y3VzdG9tRnVsbEdDQ2FsbGJhY2tCYWlsVGhyZXNob2xkKCkgPT0gLTEuMCA/
IG1heEhlYXBHcm93dGhGYWN0b3IgLSAxIDogT3B0aW9uczo6Y3VzdG9tRnVsbEdDQ2FsbGJhY2tC
YWlsVGhyZXNob2xkKCk7CisgICAgcmV0dXJuIHBhZ2VkT3V0UGFnZXNTdGF0cy5tZWFuKCkgPiBw
YWdlZE91dFBhZ2VzU3RhdHMuY291bnQoKSAqIGJhaWxvdXRQZXJjZW50YWdlOwogfQogCiB2b2lk
IE1hcmtlZFNwYWNlOjpmcmVlQmxvY2soTWFya2VkQmxvY2s6OkhhbmRsZSogYmxvY2spCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRTcGFjZS5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuaAppbmRleCA2YjQzN2MyZTFmNDQ4NjM0
NGE2ZTgwZjQyZDEzNzIyMDc3MTA3ZmFhLi41YmU1MWRlN2U0Y2Y5OWIzZDZmNDc3NzdmMDBiNmQy
YTk3YWI4MDRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRT
cGFjZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmgKQEAg
LTE0OCw3ICsxNDgsNyBAQCBwdWJsaWM6CiAgICAgc2l6ZV90IHNpemUoKTsKICAgICBzaXplX3Qg
Y2FwYWNpdHkoKTsKIAotICAgIGJvb2wgaXNQYWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5l
KTsKKyAgICBib29sIGlzUGFnZWRPdXQoKTsKICAgICAKICAgICBIZWFwVmVyc2lvbiBtYXJraW5n
VmVyc2lvbigpIGNvbnN0IHsgcmV0dXJuIG1fbWFya2luZ1ZlcnNpb247IH0KICAgICBIZWFwVmVy
c2lvbiBuZXdseUFsbG9jYXRlZFZlcnNpb24oKSBjb25zdCB7IHJldHVybiBtX25ld2x5QWxsb2Nh
dGVkVmVyc2lvbjsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
T3B0aW9uc0xpc3QuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0
LmgKaW5kZXggMTVhMDZlYjY3MWM4NGViYjRkMGMzYTM0YjEwYTg1NDBkYTMwNDNjYi4uYWNkZTRm
MGMwMTE2NmU5YzAwNzVlMWE0NWM1MTMzOGJmNTJiNTVjYyAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9PcHRpb25zTGlzdC5oCkBAIC0yMDQsNiArMjA0LDcgQEAgY29uc3RleHBy
IHVuc2lnbmVkIGpzY1Jlc2VydmVkWm9uZVNpemUgPSA2NCAqIEtCOwogICAgIHYoRG91YmxlLCBs
YXJnZUhlYXBHcm93dGhGYWN0b3IsIDEuMjQsIE5vcm1hbCwgbnVsbHB0cikgXAogICAgIHYoRG91
YmxlLCBtaW5pVk1IZWFwR3Jvd3RoRmFjdG9yLCAxLjI3LCBOb3JtYWwsIG51bGxwdHIpIFwKICAg
ICB2KERvdWJsZSwgY3JpdGljYWxHQ01lbW9yeVRocmVzaG9sZCwgMC44MCwgTm9ybWFsLCAicGVy
Y2VudCBtZW1vcnkgaW4gdXNlIHRoZSBHQyBjb25zaWRlcnMgY3JpdGljYWwuICBUaGUgY29sbGVj
dG9yIGlzIG11Y2ggbW9yZSBhZ2dyZXNzaXZlIGFib3ZlIHRoaXMgdGhyZXNob2xkIikgXAorICAg
IHYoRG91YmxlLCBjdXN0b21GdWxsR0NDYWxsYmFja0JhaWxUaHJlc2hvbGQsIC0xLjAsIE5vcm1h
bCwgInBlcmNlbnQgb2YgbWVtb3J5IHBhZ2VkIG91dCBiZWZvcmUgd2UgYmFpbCBvdXQgb2YgdGlt
ZXIgYmFzZWQgRnVsbCBHQ3MuIC0xLjAgbWVhbnMgdXNlIChtYXhIZWFwR3Jvd3RoRmFjdG9yIC0g
MSkiKSBcCiAgICAgdihEb3VibGUsIG1pbmltdW1NdXRhdG9yVXRpbGl6YXRpb24sIDAsIE5vcm1h
bCwgbnVsbHB0cikgXAogICAgIHYoRG91YmxlLCBtYXhpbXVtTXV0YXRvclV0aWxpemF0aW9uLCAw
LjcsIE5vcm1hbCwgbnVsbHB0cikgXAogICAgIHYoRG91YmxlLCBlcHNpbG9uTXV0YXRvclV0aWxp
emF0aW9uLCAwLjAxLCBOb3JtYWwsIG51bGxwdHIpIFwK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426569</attachid>
            <date>2021-04-20 10:57:45 -0700</date>
            <delta_ts>2021-04-20 11:17:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224817-20210420135744.patch</filename>
            <type>text/plain</type>
            <size>13636</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1OTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
OWRjZjNkNGRjODkyYjcyNDhmOGExZDljNmRhZmQ3NmU1ZTAwOGM0Li5lOWQwZTFmNjQ3MDA1OWJh
NTVhYWMxZjcyODQ1NTI1ZjBiNjg3MDFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMS0wNC0yMCAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBGdWxsR0NBY3Rpdml0eUNhbGxiYWNrIHNob3VsZCB1c2UgdGhlIHBl
cmNlbnRhZ2Ugb2YgcGFnZXMgdW5jb21wcmVzc2VkIGluIFJBTSB0byBkZXRlcm1pbmUgZGVmZXJy
YWwuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQ4
MTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSaWdo
dCBub3cgd2UgdHJ5IHRvIGRldGVybWluZSBpZiB0b28gbWFueSBwYWdlcyBhcmUgcGFnZWQgb3V0
IGJ5CisgICAgICAgIGRlcmVmZXJlbmNpbmcgdGhlbSBhbmQgYmFpbGluZyBvdXQgb2YgdGhlIEdD
IGlmIHdlIGdvIG92ZXIgYQorICAgICAgICBkZWFkbGluZS4gV2hpbGUgdGhpcyB3b3JrcyBpZiB0
aGUgb25seSBnb2FsIGlzIHRvIGF2b2lkIGNhdXNpbmcKKyAgICAgICAgZXh0ZW5zaXZlIHRocmFz
aGluZyBvbiBzcGlubnkgZGlza3MgKEhERCksIGl0IGRvZXNuJ3QgcHJldmVudAorICAgICAgICB0
aHJhc2hpbmcgd2hlbiBhY2Nlc3MgdG8gZGlzayBpcyBmYXN0IChlLmcuIFNTRCkuIFRoaXMgaXMg
YmVjYXVzZQorICAgICAgICBvbiBmYXN0IGRpc2tzIHRoZSBwcm9wb3J0aW9uYWwgdGltZSB0byBs
b2FkIHRoZSBtZW1vcnkgZnJvbSBkaXNrCisgICAgICAgIGlzIG11Y2ggbG93ZXIuIEFkZGl0aW9u
YWxseSwgb24gU1NEcyBpbiBwYXJ0aWN1bGFyIHdlIGRvbid0IHdhbnQKKyAgICAgICAgdG8gbG9h
ZCB0aGUgcGFnZXMgaW50byBSQU0gdGhlbiBiYWlsIGFzIHRoYXQgd2lsbCBmb3JjZSBhCisgICAg
ICAgIGRpZmZlcmVudCBwYWdlIG9udG8gZGlzaywgaW5jcmVhc2luZyB3ZWFyLgorCisgICAgICAg
IFRoaXMgcGF0Y2ggc3dpdGNoZXMgdG8gYXNraW5nIHRoZSBPUyBpZiBlYWNoIE1hcmtlZEJsb2Nr
IGlzIHBhZ2VkCisgICAgICAgIG91dC4gVGhlbiBpZiB3ZSBhcmUgb3ZlciBhIHRocmVzaG9sZCB3
ZSB3YWl0IHVudGlsIHdlIHdvdWxkIGhhdmUKKyAgICAgICAgR0MnZCBhbnl3YXkuIFRoaXMgcGF0
Y2ggdXNlcyB0aGUgKG1heFZNR3Jvd3RoRmFjdG9yIC0gMSkgYXMgdGhlCisgICAgICAgIHBlcmNl
bnRhZ2Ugb2YgInNsb3ciIHBhZ2VzIChwYWdlZCBvdXQgb3IgY29tcHJlc3NlZCkgbmVlZGVkIHRv
CisgICAgICAgIGRlZmVyIHRoZSBHQy4gVGhlIGlkZWEgYmVoaW5kIHRoYXQgdGhyZXNob2xkIGlz
IHRoYXQgaWYgd2UgYWRkCisgICAgICAgIHRoYXQgbWFueSBwYWdlcyB0aGVuIHRoZSBzYW1lIG51
bWJlciBvZiBwYWdlcyB3b3VsZCBiZSBmb3JjZWQKKyAgICAgICAgb3V0IG9mIFJBTSBmb3IgdXMg
dG8gZG8gYSBHQyBhbnl3YXkgKGluIHRoZSBsaW1pdCkuCisKKyAgICAgICAgKiBoZWFwL0Jsb2Nr
RGlyZWN0b3J5LmNwcDoKKyAgICAgICAgKEpTQzo6QmxvY2tEaXJlY3Rvcnk6OnVwZGF0ZVBlcmNl
bnRhZ2VPZlBhZ2VkT3V0UGFnZXMpOgorICAgICAgICAoSlNDOjpCbG9ja0RpcmVjdG9yeTo6aXNQ
YWdlZE91dCk6IERlbGV0ZWQuCisgICAgICAgICogaGVhcC9CbG9ja0RpcmVjdG9yeS5oOgorICAg
ICAgICAqIGhlYXAvRnVsbEdDQWN0aXZpdHlDYWxsYmFjay5jcHA6CisgICAgICAgIChKU0M6OkZ1
bGxHQ0FjdGl2aXR5Q2FsbGJhY2s6OmRvQ29sbGVjdGlvbik6CisgICAgICAgICogaGVhcC9IZWFw
LmNwcDoKKyAgICAgICAgKEpTQzo6SGVhcDo6aXNQYWdlZE91dCk6CisgICAgICAgICogaGVhcC9I
ZWFwLmg6CisgICAgICAgICogaGVhcC9NYXJrZWRTcGFjZS5jcHA6CisgICAgICAgIChKU0M6Ok1h
cmtlZFNwYWNlOjppc1BhZ2VkT3V0KToKKyAgICAgICAgKiBoZWFwL01hcmtlZFNwYWNlLmg6Cisg
ICAgICAgICogcnVudGltZS9PcHRpb25zTGlzdC5oOgorCiAyMDIxLTA0LTEzICBNYXJrIExhbSAg
PG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBUaGUgd2F0Y2hkb2cgc2hvdWxkIG5vdCBm
aXJlIHdoZW4gaXQncyBub3QgYWN0aXZlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCA3ODNiOWNiYWUxZTVmNzc2ZGE2NWU0MTcy
ODBlYTQyYWUzNDFiZmUxLi42NzMzNzJjNWMzNzExYWFkZTY3YjdhNzgxY2YwODBmZjdmMWM1NGY3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA0LTIwICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9t
aWxsZXJAYXBwbGUuY29tPgorCisgICAgICAgIEZ1bGxHQ0FjdGl2aXR5Q2FsbGJhY2sgc2hvdWxk
IHVzZSB0aGUgcGVyY2VudGFnZSBvZiBwYWdlcyB1bmNvbXByZXNzZWQgaW4gUkFNIHRvIGRldGVy
bWluZSBkZWZlcnJhbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNDgxNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEFkZCBhIG5vZXhlY3B0IGZsYXZvciBvZiBGdW5jdGlvblRyYWl0cy4KKworICAgICAg
ICAqIHd0Zi9GdW5jdGlvblRyYWl0cy5oOgorCiAyMDIxLTA0LTEzICBBZGEgQ2hhbiAgPGFkYS5j
aGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQgUGxhdGZvcm1YUlN5c3RlbTo6eHJD
b29yZGluYXRvcigpIGZvciBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA2MzVk
NGU3NTFhZWY1MmZhNTZhNzFkOGEwOTc5YjA5MTE1NWIzNmRkLi40MzM3NjNjMmUwMzlkYmZmNGE3
MjljYzA0ZmZjYmE1Y2VjNzlhOGJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA0
LTIwICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29tPgorCisgICAgICAgIEZ1
bGxHQ0FjdGl2aXR5Q2FsbGJhY2sgc2hvdWxkIHVzZSB0aGUgcGVyY2VudGFnZSBvZiBwYWdlcyB1
bmNvbXByZXNzZWQgaW4gUkFNIHRvIGRldGVybWluZSBkZWZlcnJhbC4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDgxNworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBtaW5jb3JlIHRvIHRoZSBhY2Nl
cHRhYmxlIHN5c2NhbGwgbGlzdC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvY29tLmFwcGxlLldl
YlByb2Nlc3Muc2IuaW46CisKIDIwMjEtMDQtMTQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxl
LmNvbT4KIAogICAgICAgICBbaU9TXSBXS01vdXNlRGV2aWNlT2JzZXJ2ZXIgaXMgY2FsbGluZyBX
ZWJQcm9jZXNzUHJveHk6OnNlbmQoKSBvbiBhIG5vbi1tYWluIHRocmVhZApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuY3BwCmluZGV4IDhkMmI5M2QzNjYxODgx
ZDg0MTU5OTZhOTVmMDBlYTA5MTkyZWRlMjguLjIxMmUxZDEwN2E4ZDBiNTdhYzJiZDBlZWI5YTYz
OWJkNDUwYjVlMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2Nr
RGlyZWN0b3J5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9ja0RpcmVj
dG9yeS5jcHAKQEAgLTMxLDYgKzMxLDkgQEAKICNpbmNsdWRlICJTdWJzcGFjZUlubGluZXMuaCIK
ICNpbmNsdWRlICJTdXBlclNhbXBsZXIuaCIKIAorI2luY2x1ZGUgPHd0Zi9GdW5jdGlvblRyYWl0
cy5oPgorI2luY2x1ZGUgPHd0Zi9TaW1wbGVTdGF0cy5oPgorCiBuYW1lc3BhY2UgSlNDIHsKIAog
REVGSU5FX0FMTE9DQVRPUl9XSVRIX0hFQVBfSURFTlRJRklFUihCbG9ja0RpcmVjdG9yeSk7CkBA
IC01MywyMSArNTYsMzQgQEAgdm9pZCBCbG9ja0RpcmVjdG9yeTo6c2V0U3Vic3BhY2UoU3Vic3Bh
Y2UqIHN1YnNwYWNlKQogICAgIG1fc3Vic3BhY2UgPSBzdWJzcGFjZTsKIH0KIAotYm9vbCBCbG9j
a0RpcmVjdG9yeTo6aXNQYWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKQordm9pZCBCbG9j
a0RpcmVjdG9yeTo6dXBkYXRlUGVyY2VudGFnZU9mUGFnZWRPdXRQYWdlcyhTaW1wbGVTdGF0cyYg
c3RhdHMpCiB7Ci0gICAgdW5zaWduZWQgaXRlcnNTaW5jZUxhc3RUaW1lQ2hlY2sgPSAwOwotICAg
IGZvciAoYXV0byogYmxvY2sgOiBtX2Jsb2NrcykgewotICAgICAgICBpZiAoYmxvY2spCi0gICAg
ICAgICAgICBibG9jay0+YmxvY2soKS5wb3B1bGF0ZVBhZ2UoKTsKLSAgICAgICAgKytpdGVyc1Np
bmNlTGFzdFRpbWVDaGVjazsKLSAgICAgICAgaWYgKGl0ZXJzU2luY2VMYXN0VGltZUNoZWNrID49
IEhlYXA6OnNfdGltZUNoZWNrUmVzb2x1dGlvbikgewotICAgICAgICAgICAgTW9ub3RvbmljVGlt
ZSBjdXJyZW50VGltZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOwotICAgICAgICAgICAgaWYgKGN1
cnJlbnRUaW1lID4gZGVhZGxpbmUpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAg
ICAgICAgICBpdGVyc1NpbmNlTGFzdFRpbWVDaGVjayA9IDA7Ci0gICAgICAgIH0KKyAgICAvLyBG
SVhNRTogV2Ugc2hvdWxkIGZpZ3VyZSBvdXQgYSBzb2x1dGlvbiBmb3IgV2luZG93cy4KKyNpZiBP
UyhVTklYKQorICAgIHNpemVfdCBwYWdlU2l6ZSA9IFdURjo6cGFnZVNpemUoKTsKKyAgICBBU1NF
UlQoIShNYXJrZWRCbG9jazo6YmxvY2tTaXplICUgcGFnZVNpemUpKTsKKyAgICBhdXRvIG51bWJl
ck9mUGFnZXNJbk1hcmtlZEJsb2NrID0gTWFya2VkQmxvY2s6OmJsb2NrU2l6ZSAvIHBhZ2VTaXpl
OworICAgIC8vIEZvciBzb21lIHJlYXNvbiB0aGlzIGNhbiBiZSB1bnNpZ25lZCBjaGFyIG9yIGNo
YXIgb24gZGlmZmVyZW50IE9TZXMuLi4KKyAgICB1c2luZyBNaW5jb3JlQnVmZmVyVHlwZSA9IHN0
ZDo6cmVtb3ZlX3BvaW50ZXJfdDxGdW5jdGlvblRyYWl0czxkZWNsdHlwZShtaW5jb3JlKT46OkFy
Z3VtZW50VHlwZTwyPj47CisgICAgc3RhdGljX2Fzc2VydChzdGQ6OmlzX3NhbWVfdjxzdGQ6Om1h
a2VfdW5zaWduZWRfdDxNaW5jb3JlQnVmZmVyVHlwZT4sIHVuc2lnbmVkIGNoYXI+KTsKKyAgICAv
LyBwYWdlU2l6ZSBpcyBlZmZlY3RpdmVseSBhIGNvbnN0YW50IHNvIHRoaXMgaXNuJ3QgcmVhbGx5
IHZhcmlhYmxlLgorICAgIElHTk9SRV9DTEFOR19XQVJOSU5HU19CRUdJTigidmxhIikKKyAgICBN
aW5jb3JlQnVmZmVyVHlwZSBwYWdlZEJpdHNbbnVtYmVyT2ZQYWdlc0luTWFya2VkQmxvY2tdOwor
ICAgIElHTk9SRV9DTEFOR19XQVJOSU5HU19FTkQKKworICAgIGZvciAoYXV0byogaGFuZGxlIDog
bV9ibG9ja3MpIHsKKyAgICAgICAgaWYgKCFoYW5kbGUpCisgICAgICAgICAgICBjb250aW51ZTsK
KworICAgICAgICBhdXRvIG1hcmtlZEJsb2NrU2l6ZUluQnl0ZXMgPSBzdGF0aWNfY2FzdDxzaXpl
X3Q+KHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KGhhbmRsZS0+ZW5kKCkpIC0gcmVpbnRlcnByZXRf
Y2FzdDxjaGFyKj4oaGFuZGxlLT5zdGFydCgpKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKG1h
cmtlZEJsb2NrU2l6ZUluQnl0ZXMgLyBwYWdlU2l6ZSA8PSBudW1iZXJPZlBhZ2VzSW5NYXJrZWRC
bG9jayk7CisgICAgICAgIC8vIEZJWE1FOiBXZSBjb3VsZCBjYWNoZSB0aGlzIGluIGJ1bGsgKGUu
Zy4gMjUgTUIgY2h1bmtzKSBidXQgd2UgaGF2ZW4ndCBzZWVuIGFueSBkYXRhIHRoYXQgaXQgYWN0
dWFsbHkgbWF0dGVycy4KKyAgICAgICAgYXV0byByZXN1bHQgPSBtaW5jb3JlKGhhbmRsZS0+c3Rh
cnQoKSwgbWFya2VkQmxvY2tTaXplSW5CeXRlcywgcGFnZWRCaXRzKTsKKyAgICAgICAgUkVMRUFT
RV9BU1NFUlQoIXJlc3VsdCk7CisgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1i
ZXJPZlBhZ2VzSW5NYXJrZWRCbG9jazsgKytpKQorICAgICAgICAgICAgc3RhdHMuYWRkKCEocGFn
ZWRCaXRzW2ldICYgTUlOQ09SRV9JTkNPUkUpKTsKICAgICB9Ci0gICAgcmV0dXJuIGZhbHNlOwor
I2VuZGlmCiB9CiAKIE1hcmtlZEJsb2NrOjpIYW5kbGUqIEJsb2NrRGlyZWN0b3J5OjpmaW5kRW1w
dHlCbG9ja1RvU3RlYWwoKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
QmxvY2tEaXJlY3RvcnkuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2NrRGlyZWN0
b3J5LmgKaW5kZXggNjc0MmMzMTU4Yjk2MTY1MjRhMmIwYTY4Y2FkNDAxNjI0NDdlZWE0MS4uYWQ3
ZGRhMDFiMjllODc1ZWFiZGI1NzJmNWI0ZWEyMGFkMjRiMWU2MiAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaGVhcC9CbG9ja0RpcmVjdG9yeS5oCkBAIC0zNyw2ICszNywxMCBAQAogI2luY2x1
ZGUgPHd0Zi9TaGFyZWRUYXNrLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogCituYW1lc3Bh
Y2UgV1RGIHsKK2NsYXNzIFNpbXBsZVN0YXRzOworfQorCiBuYW1lc3BhY2UgSlNDIHsKIAogY2xh
c3MgR0NEZWZlcnJhbENvbnRleHQ7CkBAIC04NSw3ICs4OSw3IEBAIHB1YmxpYzoKICAgICB2b2lk
IGFkZEJsb2NrKE1hcmtlZEJsb2NrOjpIYW5kbGUqKTsKICAgICB2b2lkIHJlbW92ZUJsb2NrKE1h
cmtlZEJsb2NrOjpIYW5kbGUqKTsKIAotICAgIGJvb2wgaXNQYWdlZE91dChNb25vdG9uaWNUaW1l
IGRlYWRsaW5lKTsKKyAgICB2b2lkIHVwZGF0ZVBlcmNlbnRhZ2VPZlBhZ2VkT3V0UGFnZXMoV1RG
OjpTaW1wbGVTdGF0cyYpOwogICAgIAogICAgIExvY2smIGJpdHZlY3RvckxvY2soKSB7IHJldHVy
biBtX2JpdHZlY3RvckxvY2s7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2hlYXAvRnVsbEdDQWN0aXZpdHlDYWxsYmFjay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9GdWxsR0NBY3Rpdml0eUNhbGxiYWNrLmNwcAppbmRleCAyNDg4MDJiOWQ0Yzg0MTU3ZTU2
YWUwM2UyMDcwOTFiOWQ0MzhlNTlmLi42ZDE3ZTExMWRiOWJlZGRhYmE0Zjg3ZTI1ZDQ5Mjg3MTRk
ZTUwZmNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9GdWxsR0NBY3Rp
dml0eUNhbGxiYWNrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9GdWxsR0NB
Y3Rpdml0eUNhbGxiYWNrLmNwcApAQCAtNDQsMTEgKzQ0LDExIEBAIHZvaWQgRnVsbEdDQWN0aXZp
dHlDYWxsYmFjazo6ZG9Db2xsZWN0aW9uKFZNJiB2bSkKICAgICBIZWFwJiBoZWFwID0gdm0uaGVh
cDsKICAgICBtX2RpZEdDUmVjZW50bHkgPSBmYWxzZTsKIAotI2lmICFQTEFURk9STShJT1NfRkFN
SUxZKQorI2lmICFQTEFURk9STShJT1NfRkFNSUxZKSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkK
ICAgICBNb25vdG9uaWNUaW1lIHN0YXJ0VGltZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOwotICAg
IGlmIChoZWFwLmlzUGFnZWRPdXQoc3RhcnRUaW1lICsgcGFnaW5nVGltZU91dCkpIHsKKyAgICBp
ZiAoaGVhcC5pc1BhZ2VkT3V0KCkpIHsKICAgICAgICAgY2FuY2VsKCk7Ci0gICAgICAgIGhlYXAu
aW5jcmVhc2VMYXN0RnVsbEdDTGVuZ3RoKHBhZ2luZ1RpbWVPdXQpOworICAgICAgICBoZWFwLmlu
Y3JlYXNlTGFzdEZ1bGxHQ0xlbmd0aChNb25vdG9uaWNUaW1lOjpub3coKSAtIHN0YXJ0VGltZSk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL0hlYXAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVh
cC5jcHAKaW5kZXggYjI2ZTkxM2QyMmFmMDBmZTJjYWY2MWI2N2NjNzc5Nzg5YmQyY2RjOS4uODFh
NzFhMGRjN2ZmNzMwY2QxYzlmYWY3YzhjOGJkZWNjMDI1OTllMyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2hlYXAvSGVhcC5jcHAKQEAgLTM1NSw5ICszNTUsOSBAQCBIZWFwOjp+SGVhcCgpCiAgICAgICAg
IFdlYWtCbG9jazo6ZGVzdHJveSgqdGhpcywgYmxvY2spOwogfQogCi1ib29sIEhlYXA6OmlzUGFn
ZWRPdXQoTW9ub3RvbmljVGltZSBkZWFkbGluZSkKK2Jvb2wgSGVhcDo6aXNQYWdlZE91dCgpCiB7
Ci0gICAgcmV0dXJuIG1fb2JqZWN0U3BhY2UuaXNQYWdlZE91dChkZWFkbGluZSk7CisgICAgcmV0
dXJuIG1fb2JqZWN0U3BhY2UuaXNQYWdlZE91dCgpOwogfQogCiB2b2lkIEhlYXA6OmR1bXBIZWFw
U3RhdGlzdGljc0F0Vk1EZXN0cnVjdGlvbigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaGVhcC9IZWFwLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmgKaW5k
ZXggMDQ3MThiZWM0NzIxYzJkZGQ5NzEyODJkNjFhNzRkZGM2ZGIwZWVhYS4uMzczZWJlYjVhZmRm
YjM2MzdjYzhkMzE4OTc5ZTRhMTU2NDFlYjE0OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2hlYXAvSGVhcC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAu
aApAQCAtMjcwLDcgKzI3MCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGRlbGV0ZUFsbFVubGlua2Vk
Q29kZUJsb2NrcyhEZWxldGVBbGxDb2RlRWZmb3J0KTsKIAogICAgIHZvaWQgZGlkQWxsb2NhdGUo
c2l6ZV90KTsKLSAgICBib29sIGlzUGFnZWRPdXQoTW9ub3RvbmljVGltZSBkZWFkbGluZSk7Cisg
ICAgYm9vbCBpc1BhZ2VkT3V0KCk7CiAgICAgCiAgICAgY29uc3QgSklUU3R1YlJvdXRpbmVTZXQm
IGppdFN0dWJSb3V0aW5lcygpIHsgcmV0dXJuICptX2ppdFN0dWJSb3V0aW5lczsgfQogICAgIApk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuY3BwCmluZGV4IDI3Y2UyZWY1
NTI2YmVkNjhhYzA4YTc2MzRhOTk2M2EzMTBiODYwMGUuLmYzMzMyNjE0YzhhMzQxNDI5YjVjYmRk
ZTgwOTEzMWU4NmJmNjFlZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFw
L01hcmtlZFNwYWNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRT
cGFjZS5jcHAKQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNsdWRlICJNYXJrZWRCbG9ja0lubGluZXMu
aCIKICNpbmNsdWRlICJNYXJrZWRTcGFjZUlubGluZXMuaCIKICNpbmNsdWRlIDx3dGYvTGlzdER1
bXAuaD4KKyNpbmNsdWRlIDx3dGYvU2ltcGxlU3RhdHMuaD4KIAogbmFtZXNwYWNlIEpTQyB7CiAK
QEAgLTM1OCwxOSArMzU5LDE5IEBAIHZvaWQgTWFya2VkU3BhY2U6OnJlc3VtZUFsbG9jYXRpbmco
KQogICAgIC8vIE5vdGhpbmcgdG8gZG8gZm9yIFByZWNpc2VBbGxvY2F0aW9ucy4KIH0KIAotYm9v
bCBNYXJrZWRTcGFjZTo6aXNQYWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKQorYm9vbCBN
YXJrZWRTcGFjZTo6aXNQYWdlZE91dCgpCiB7Ci0gICAgYm9vbCByZXN1bHQgPSBmYWxzZTsKKyAg
ICBTaW1wbGVTdGF0cyBwYWdlZE91dFBhZ2VzU3RhdHM7CisKICAgICBmb3JFYWNoRGlyZWN0b3J5
KAogICAgICAgICBbJl0gKEJsb2NrRGlyZWN0b3J5JiBkaXJlY3RvcnkpIC0+IEl0ZXJhdGlvblN0
YXR1cyB7Ci0gICAgICAgICAgICBpZiAoZGlyZWN0b3J5LmlzUGFnZWRPdXQoZGVhZGxpbmUpKSB7
Ci0gICAgICAgICAgICAgICAgcmVzdWx0ID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICByZXR1cm4g
SXRlcmF0aW9uU3RhdHVzOjpEb25lOwotICAgICAgICAgICAgfQorICAgICAgICAgICAgZGlyZWN0
b3J5LnVwZGF0ZVBlcmNlbnRhZ2VPZlBhZ2VkT3V0UGFnZXMocGFnZWRPdXRQYWdlc1N0YXRzKTsK
ICAgICAgICAgICAgIHJldHVybiBJdGVyYXRpb25TdGF0dXM6OkNvbnRpbnVlOwogICAgICAgICB9
KTsKICAgICAvLyBGSVhNRTogQ29uc2lkZXIgdGFraW5nIFByZWNpc2VBbGxvY2F0aW9ucyBpbnRv
IGFjY291bnQgaGVyZS4KLSAgICByZXR1cm4gcmVzdWx0OworICAgIGRvdWJsZSBtYXhIZWFwR3Jv
d3RoRmFjdG9yID0gVk06OmlzSW5NaW5pTW9kZSgpID8gT3B0aW9uczo6bWluaVZNSGVhcEdyb3d0
aEZhY3RvcigpIDogT3B0aW9uczo6bGFyZ2VIZWFwR3Jvd3RoRmFjdG9yKCk7CisgICAgZG91Ymxl
IGJhaWxvdXRQZXJjZW50YWdlID0gT3B0aW9uczo6Y3VzdG9tRnVsbEdDQ2FsbGJhY2tCYWlsVGhy
ZXNob2xkKCkgPT0gLTEuMCA/IG1heEhlYXBHcm93dGhGYWN0b3IgLSAxIDogT3B0aW9uczo6Y3Vz
dG9tRnVsbEdDQ2FsbGJhY2tCYWlsVGhyZXNob2xkKCk7CisgICAgcmV0dXJuIHBhZ2VkT3V0UGFn
ZXNTdGF0cy5tZWFuKCkgPiBwYWdlZE91dFBhZ2VzU3RhdHMuY291bnQoKSAqIGJhaWxvdXRQZXJj
ZW50YWdlOwogfQogCiB2b2lkIE1hcmtlZFNwYWNlOjpmcmVlQmxvY2soTWFya2VkQmxvY2s6Okhh
bmRsZSogYmxvY2spCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJr
ZWRTcGFjZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuaAppbmRl
eCA2YjQzN2MyZTFmNDQ4NjM0NGE2ZTgwZjQyZDEzNzIyMDc3MTA3ZmFhLi41YmU1MWRlN2U0Y2Y5
OWIzZDZmNDc3NzdmMDBiNmQyYTk3YWI4MDRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaGVhcC9NYXJrZWRTcGFjZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFw
L01hcmtlZFNwYWNlLmgKQEAgLTE0OCw3ICsxNDgsNyBAQCBwdWJsaWM6CiAgICAgc2l6ZV90IHNp
emUoKTsKICAgICBzaXplX3QgY2FwYWNpdHkoKTsKIAotICAgIGJvb2wgaXNQYWdlZE91dChNb25v
dG9uaWNUaW1lIGRlYWRsaW5lKTsKKyAgICBib29sIGlzUGFnZWRPdXQoKTsKICAgICAKICAgICBI
ZWFwVmVyc2lvbiBtYXJraW5nVmVyc2lvbigpIGNvbnN0IHsgcmV0dXJuIG1fbWFya2luZ1ZlcnNp
b247IH0KICAgICBIZWFwVmVyc2lvbiBuZXdseUFsbG9jYXRlZFZlcnNpb24oKSBjb25zdCB7IHJl
dHVybiBtX25ld2x5QWxsb2NhdGVkVmVyc2lvbjsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL09wdGlvbnNMaXN0LmgKaW5kZXggMTVhMDZlYjY3MWM4NGViYjRkMGMzYTM0YjEwYTg1
NDBkYTMwNDNjYi4uYWNkZTRmMGMwMTE2NmU5YzAwNzVlMWE0NWM1MTMzOGJmNTJiNTVjYyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zTGlzdC5oCkBAIC0yMDQsNiAr
MjA0LDcgQEAgY29uc3RleHByIHVuc2lnbmVkIGpzY1Jlc2VydmVkWm9uZVNpemUgPSA2NCAqIEtC
OwogICAgIHYoRG91YmxlLCBsYXJnZUhlYXBHcm93dGhGYWN0b3IsIDEuMjQsIE5vcm1hbCwgbnVs
bHB0cikgXAogICAgIHYoRG91YmxlLCBtaW5pVk1IZWFwR3Jvd3RoRmFjdG9yLCAxLjI3LCBOb3Jt
YWwsIG51bGxwdHIpIFwKICAgICB2KERvdWJsZSwgY3JpdGljYWxHQ01lbW9yeVRocmVzaG9sZCwg
MC44MCwgTm9ybWFsLCAicGVyY2VudCBtZW1vcnkgaW4gdXNlIHRoZSBHQyBjb25zaWRlcnMgY3Jp
dGljYWwuICBUaGUgY29sbGVjdG9yIGlzIG11Y2ggbW9yZSBhZ2dyZXNzaXZlIGFib3ZlIHRoaXMg
dGhyZXNob2xkIikgXAorICAgIHYoRG91YmxlLCBjdXN0b21GdWxsR0NDYWxsYmFja0JhaWxUaHJl
c2hvbGQsIC0xLjAsIE5vcm1hbCwgInBlcmNlbnQgb2YgbWVtb3J5IHBhZ2VkIG91dCBiZWZvcmUg
d2UgYmFpbCBvdXQgb2YgdGltZXIgYmFzZWQgRnVsbCBHQ3MuIC0xLjAgbWVhbnMgdXNlIChtYXhI
ZWFwR3Jvd3RoRmFjdG9yIC0gMSkiKSBcCiAgICAgdihEb3VibGUsIG1pbmltdW1NdXRhdG9yVXRp
bGl6YXRpb24sIDAsIE5vcm1hbCwgbnVsbHB0cikgXAogICAgIHYoRG91YmxlLCBtYXhpbXVtTXV0
YXRvclV0aWxpemF0aW9uLCAwLjcsIE5vcm1hbCwgbnVsbHB0cikgXAogICAgIHYoRG91YmxlLCBl
cHNpbG9uTXV0YXRvclV0aWxpemF0aW9uLCAwLjAxLCBOb3JtYWwsIG51bGxwdHIpIFwKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XVEYvd3RmL0Z1bmN0aW9uVHJhaXRzLmggYi9Tb3VyY2UvV1RGL3d0Zi9G
dW5jdGlvblRyYWl0cy5oCmluZGV4IDM1MzNmYjJiZjNhMTA4NjMwZTQzYzk2NzBiZmUxZTk1OWRl
MzUxMmMuLjdiMTNhMDhiNTMzNmI5ZTliOTE5YzRhMjQ2MjE1M2JjZGIxZWQ4NzYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XVEYvd3RmL0Z1bmN0aW9uVHJhaXRzLmgKKysrIGIvU291cmNlL1dURi93dGYv
RnVuY3Rpb25UcmFpdHMuaApAQCAtODAsNiArODAsMTAgQEAgdGVtcGxhdGU8dHlwZW5hbWUgUmVz
dWx0LCB0eXBlbmFtZS4uLiBBcmdzPgogc3RydWN0IEZ1bmN0aW9uVHJhaXRzPFJlc3VsdCgqKShB
cmdzLi4uKT4gOiBwdWJsaWMgRnVuY3Rpb25UcmFpdHM8UmVzdWx0KEFyZ3MuLi4pPiB7CiB9Owog
Cit0ZW1wbGF0ZTx0eXBlbmFtZSBSZXN1bHQsIHR5cGVuYW1lLi4uIEFyZ3M+CitzdHJ1Y3QgRnVu
Y3Rpb25UcmFpdHM8UmVzdWx0KCopKEFyZ3MuLi4pIG5vZXhjZXB0PiA6IHB1YmxpYyBGdW5jdGlv
blRyYWl0czxSZXN1bHQoQXJncy4uLik+IHsKK307CisKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1
c2luZyBXVEY6OkZ1bmN0aW9uVHJhaXRzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL2NvbS5hcHBsZS5XZWJQcm9jZXNzLnNiLmluIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL2NvbS5hcHBsZS5XZWJQcm9jZXNzLnNiLmluCmluZGV4IDBhZWNhYWJmM2I2MGZlZjY1YWI3
YTQ3ZTE3MTkzMThmZmNkMTA1NzguLjllYjY3NDY0OGY0YjU3NTE3ZDMwMzc5Y2Y2MDJmOWExZDM1
ODU0NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb20uYXBwbGUuV2Vi
UHJvY2Vzcy5zYi5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29tLmFwcGxlLldl
YlByb2Nlc3Muc2IuaW4KQEAgLTE3NzYsNiArMTc3Niw3IEBACiAgICAgICAgIChzeXNjYWxsLW51
bWJlciBTWVNfbXVubWFwKQogICAgICAgICAoc3lzY2FsbC1udW1iZXIgU1lTX21wcm90ZWN0KQog
ICAgICAgICAoc3lzY2FsbC1udW1iZXIgU1lTX21hZHZpc2UpCisgICAgICAgIChzeXNjYWxsLW51
bWJlciBTWVNfbWluY29yZSkKICAgICAgICAgKHN5c2NhbGwtbnVtYmVyIFNZU19mY250bCkKICAg
ICAgICAgKHN5c2NhbGwtbnVtYmVyIFNZU19zZWxlY3QpCiAgICAgICAgIChzeXNjYWxsLW51bWJl
ciBTWVNfZnN5bmMpCg==
</data>
<flag name="commit-queue"
          id="446896"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426571</attachid>
            <date>2021-04-20 11:17:40 -0700</date>
            <delta_ts>2021-04-20 11:37:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224817-20210420141739.patch</filename>
            <type>text/plain</type>
            <size>13779</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1OTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
OWRjZjNkNGRjODkyYjcyNDhmOGExZDljNmRhZmQ3NmU1ZTAwOGM0Li5lOWQwZTFmNjQ3MDA1OWJh
NTVhYWMxZjcyODQ1NTI1ZjBiNjg3MDFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMS0wNC0yMCAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBGdWxsR0NBY3Rpdml0eUNhbGxiYWNrIHNob3VsZCB1c2UgdGhlIHBl
cmNlbnRhZ2Ugb2YgcGFnZXMgdW5jb21wcmVzc2VkIGluIFJBTSB0byBkZXRlcm1pbmUgZGVmZXJy
YWwuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQ4
MTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSaWdo
dCBub3cgd2UgdHJ5IHRvIGRldGVybWluZSBpZiB0b28gbWFueSBwYWdlcyBhcmUgcGFnZWQgb3V0
IGJ5CisgICAgICAgIGRlcmVmZXJlbmNpbmcgdGhlbSBhbmQgYmFpbGluZyBvdXQgb2YgdGhlIEdD
IGlmIHdlIGdvIG92ZXIgYQorICAgICAgICBkZWFkbGluZS4gV2hpbGUgdGhpcyB3b3JrcyBpZiB0
aGUgb25seSBnb2FsIGlzIHRvIGF2b2lkIGNhdXNpbmcKKyAgICAgICAgZXh0ZW5zaXZlIHRocmFz
aGluZyBvbiBzcGlubnkgZGlza3MgKEhERCksIGl0IGRvZXNuJ3QgcHJldmVudAorICAgICAgICB0
aHJhc2hpbmcgd2hlbiBhY2Nlc3MgdG8gZGlzayBpcyBmYXN0IChlLmcuIFNTRCkuIFRoaXMgaXMg
YmVjYXVzZQorICAgICAgICBvbiBmYXN0IGRpc2tzIHRoZSBwcm9wb3J0aW9uYWwgdGltZSB0byBs
b2FkIHRoZSBtZW1vcnkgZnJvbSBkaXNrCisgICAgICAgIGlzIG11Y2ggbG93ZXIuIEFkZGl0aW9u
YWxseSwgb24gU1NEcyBpbiBwYXJ0aWN1bGFyIHdlIGRvbid0IHdhbnQKKyAgICAgICAgdG8gbG9h
ZCB0aGUgcGFnZXMgaW50byBSQU0gdGhlbiBiYWlsIGFzIHRoYXQgd2lsbCBmb3JjZSBhCisgICAg
ICAgIGRpZmZlcmVudCBwYWdlIG9udG8gZGlzaywgaW5jcmVhc2luZyB3ZWFyLgorCisgICAgICAg
IFRoaXMgcGF0Y2ggc3dpdGNoZXMgdG8gYXNraW5nIHRoZSBPUyBpZiBlYWNoIE1hcmtlZEJsb2Nr
IGlzIHBhZ2VkCisgICAgICAgIG91dC4gVGhlbiBpZiB3ZSBhcmUgb3ZlciBhIHRocmVzaG9sZCB3
ZSB3YWl0IHVudGlsIHdlIHdvdWxkIGhhdmUKKyAgICAgICAgR0MnZCBhbnl3YXkuIFRoaXMgcGF0
Y2ggdXNlcyB0aGUgKG1heFZNR3Jvd3RoRmFjdG9yIC0gMSkgYXMgdGhlCisgICAgICAgIHBlcmNl
bnRhZ2Ugb2YgInNsb3ciIHBhZ2VzIChwYWdlZCBvdXQgb3IgY29tcHJlc3NlZCkgbmVlZGVkIHRv
CisgICAgICAgIGRlZmVyIHRoZSBHQy4gVGhlIGlkZWEgYmVoaW5kIHRoYXQgdGhyZXNob2xkIGlz
IHRoYXQgaWYgd2UgYWRkCisgICAgICAgIHRoYXQgbWFueSBwYWdlcyB0aGVuIHRoZSBzYW1lIG51
bWJlciBvZiBwYWdlcyB3b3VsZCBiZSBmb3JjZWQKKyAgICAgICAgb3V0IG9mIFJBTSBmb3IgdXMg
dG8gZG8gYSBHQyBhbnl3YXkgKGluIHRoZSBsaW1pdCkuCisKKyAgICAgICAgKiBoZWFwL0Jsb2Nr
RGlyZWN0b3J5LmNwcDoKKyAgICAgICAgKEpTQzo6QmxvY2tEaXJlY3Rvcnk6OnVwZGF0ZVBlcmNl
bnRhZ2VPZlBhZ2VkT3V0UGFnZXMpOgorICAgICAgICAoSlNDOjpCbG9ja0RpcmVjdG9yeTo6aXNQ
YWdlZE91dCk6IERlbGV0ZWQuCisgICAgICAgICogaGVhcC9CbG9ja0RpcmVjdG9yeS5oOgorICAg
ICAgICAqIGhlYXAvRnVsbEdDQWN0aXZpdHlDYWxsYmFjay5jcHA6CisgICAgICAgIChKU0M6OkZ1
bGxHQ0FjdGl2aXR5Q2FsbGJhY2s6OmRvQ29sbGVjdGlvbik6CisgICAgICAgICogaGVhcC9IZWFw
LmNwcDoKKyAgICAgICAgKEpTQzo6SGVhcDo6aXNQYWdlZE91dCk6CisgICAgICAgICogaGVhcC9I
ZWFwLmg6CisgICAgICAgICogaGVhcC9NYXJrZWRTcGFjZS5jcHA6CisgICAgICAgIChKU0M6Ok1h
cmtlZFNwYWNlOjppc1BhZ2VkT3V0KToKKyAgICAgICAgKiBoZWFwL01hcmtlZFNwYWNlLmg6Cisg
ICAgICAgICogcnVudGltZS9PcHRpb25zTGlzdC5oOgorCiAyMDIxLTA0LTEzICBNYXJrIExhbSAg
PG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBUaGUgd2F0Y2hkb2cgc2hvdWxkIG5vdCBm
aXJlIHdoZW4gaXQncyBub3QgYWN0aXZlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCA3ODNiOWNiYWUxZTVmNzc2ZGE2NWU0MTcy
ODBlYTQyYWUzNDFiZmUxLi42NzMzNzJjNWMzNzExYWFkZTY3YjdhNzgxY2YwODBmZjdmMWM1NGY3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA0LTIwICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9t
aWxsZXJAYXBwbGUuY29tPgorCisgICAgICAgIEZ1bGxHQ0FjdGl2aXR5Q2FsbGJhY2sgc2hvdWxk
IHVzZSB0aGUgcGVyY2VudGFnZSBvZiBwYWdlcyB1bmNvbXByZXNzZWQgaW4gUkFNIHRvIGRldGVy
bWluZSBkZWZlcnJhbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNDgxNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEFkZCBhIG5vZXhlY3B0IGZsYXZvciBvZiBGdW5jdGlvblRyYWl0cy4KKworICAgICAg
ICAqIHd0Zi9GdW5jdGlvblRyYWl0cy5oOgorCiAyMDIxLTA0LTEzICBBZGEgQ2hhbiAgPGFkYS5j
aGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQgUGxhdGZvcm1YUlN5c3RlbTo6eHJD
b29yZGluYXRvcigpIGZvciBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA2MzVk
NGU3NTFhZWY1MmZhNTZhNzFkOGEwOTc5YjA5MTE1NWIzNmRkLi40MzM3NjNjMmUwMzlkYmZmNGE3
MjljYzA0ZmZjYmE1Y2VjNzlhOGJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA0
LTIwICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29tPgorCisgICAgICAgIEZ1
bGxHQ0FjdGl2aXR5Q2FsbGJhY2sgc2hvdWxkIHVzZSB0aGUgcGVyY2VudGFnZSBvZiBwYWdlcyB1
bmNvbXByZXNzZWQgaW4gUkFNIHRvIGRldGVybWluZSBkZWZlcnJhbC4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDgxNworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBtaW5jb3JlIHRvIHRoZSBhY2Nl
cHRhYmxlIHN5c2NhbGwgbGlzdC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvY29tLmFwcGxlLldl
YlByb2Nlc3Muc2IuaW46CisKIDIwMjEtMDQtMTQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxl
LmNvbT4KIAogICAgICAgICBbaU9TXSBXS01vdXNlRGV2aWNlT2JzZXJ2ZXIgaXMgY2FsbGluZyBX
ZWJQcm9jZXNzUHJveHk6OnNlbmQoKSBvbiBhIG5vbi1tYWluIHRocmVhZApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuY3BwCmluZGV4IDhkMmI5M2QzNjYxODgx
ZDg0MTU5OTZhOTVmMDBlYTA5MTkyZWRlMjguLjIxMmUxZDEwN2E4ZDBiNTdhYzJiZDBlZWI5YTYz
OWJkNDUwYjVlMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2Nr
RGlyZWN0b3J5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9ja0RpcmVj
dG9yeS5jcHAKQEAgLTMxLDYgKzMxLDkgQEAKICNpbmNsdWRlICJTdWJzcGFjZUlubGluZXMuaCIK
ICNpbmNsdWRlICJTdXBlclNhbXBsZXIuaCIKIAorI2luY2x1ZGUgPHd0Zi9GdW5jdGlvblRyYWl0
cy5oPgorI2luY2x1ZGUgPHd0Zi9TaW1wbGVTdGF0cy5oPgorCiBuYW1lc3BhY2UgSlNDIHsKIAog
REVGSU5FX0FMTE9DQVRPUl9XSVRIX0hFQVBfSURFTlRJRklFUihCbG9ja0RpcmVjdG9yeSk7CkBA
IC01MywyMSArNTYsMzQgQEAgdm9pZCBCbG9ja0RpcmVjdG9yeTo6c2V0U3Vic3BhY2UoU3Vic3Bh
Y2UqIHN1YnNwYWNlKQogICAgIG1fc3Vic3BhY2UgPSBzdWJzcGFjZTsKIH0KIAotYm9vbCBCbG9j
a0RpcmVjdG9yeTo6aXNQYWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKQordm9pZCBCbG9j
a0RpcmVjdG9yeTo6dXBkYXRlUGVyY2VudGFnZU9mUGFnZWRPdXRQYWdlcyhTaW1wbGVTdGF0cyYg
c3RhdHMpCiB7Ci0gICAgdW5zaWduZWQgaXRlcnNTaW5jZUxhc3RUaW1lQ2hlY2sgPSAwOwotICAg
IGZvciAoYXV0byogYmxvY2sgOiBtX2Jsb2NrcykgewotICAgICAgICBpZiAoYmxvY2spCi0gICAg
ICAgICAgICBibG9jay0+YmxvY2soKS5wb3B1bGF0ZVBhZ2UoKTsKLSAgICAgICAgKytpdGVyc1Np
bmNlTGFzdFRpbWVDaGVjazsKLSAgICAgICAgaWYgKGl0ZXJzU2luY2VMYXN0VGltZUNoZWNrID49
IEhlYXA6OnNfdGltZUNoZWNrUmVzb2x1dGlvbikgewotICAgICAgICAgICAgTW9ub3RvbmljVGlt
ZSBjdXJyZW50VGltZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOwotICAgICAgICAgICAgaWYgKGN1
cnJlbnRUaW1lID4gZGVhZGxpbmUpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAg
ICAgICAgICBpdGVyc1NpbmNlTGFzdFRpbWVDaGVjayA9IDA7Ci0gICAgICAgIH0KKyAgICAvLyBG
SVhNRTogV2Ugc2hvdWxkIGZpZ3VyZSBvdXQgYSBzb2x1dGlvbiBmb3IgV2luZG93cy4KKyNpZiBP
UyhVTklYKQorICAgIHNpemVfdCBwYWdlU2l6ZSA9IFdURjo6cGFnZVNpemUoKTsKKyAgICBBU1NF
UlQoIShNYXJrZWRCbG9jazo6YmxvY2tTaXplICUgcGFnZVNpemUpKTsKKyAgICBhdXRvIG51bWJl
ck9mUGFnZXNJbk1hcmtlZEJsb2NrID0gTWFya2VkQmxvY2s6OmJsb2NrU2l6ZSAvIHBhZ2VTaXpl
OworICAgIC8vIEZvciBzb21lIHJlYXNvbiB0aGlzIGNhbiBiZSB1bnNpZ25lZCBjaGFyIG9yIGNo
YXIgb24gZGlmZmVyZW50IE9TZXMuLi4KKyAgICB1c2luZyBNaW5jb3JlQnVmZmVyVHlwZSA9IHN0
ZDo6cmVtb3ZlX3BvaW50ZXJfdDxGdW5jdGlvblRyYWl0czxkZWNsdHlwZShtaW5jb3JlKT46OkFy
Z3VtZW50VHlwZTwyPj47CisgICAgc3RhdGljX2Fzc2VydChzdGQ6OmlzX3NhbWVfdjxzdGQ6Om1h
a2VfdW5zaWduZWRfdDxNaW5jb3JlQnVmZmVyVHlwZT4sIHVuc2lnbmVkIGNoYXI+KTsKKyAgICAv
LyBwYWdlU2l6ZSBpcyBlZmZlY3RpdmVseSBhIGNvbnN0YW50IHNvIHRoaXMgaXNuJ3QgcmVhbGx5
IHZhcmlhYmxlLgorICAgIElHTk9SRV9DTEFOR19XQVJOSU5HU19CRUdJTigidmxhIikKKyAgICBN
aW5jb3JlQnVmZmVyVHlwZSBwYWdlZEJpdHNbbnVtYmVyT2ZQYWdlc0luTWFya2VkQmxvY2tdOwor
ICAgIElHTk9SRV9DTEFOR19XQVJOSU5HU19FTkQKKworICAgIGZvciAoYXV0byogaGFuZGxlIDog
bV9ibG9ja3MpIHsKKyAgICAgICAgaWYgKCFoYW5kbGUpCisgICAgICAgICAgICBjb250aW51ZTsK
KworICAgICAgICBhdXRvIG1hcmtlZEJsb2NrU2l6ZUluQnl0ZXMgPSBzdGF0aWNfY2FzdDxzaXpl
X3Q+KHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KGhhbmRsZS0+ZW5kKCkpIC0gcmVpbnRlcnByZXRf
Y2FzdDxjaGFyKj4oaGFuZGxlLT5zdGFydCgpKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKG1h
cmtlZEJsb2NrU2l6ZUluQnl0ZXMgLyBwYWdlU2l6ZSA8PSBudW1iZXJPZlBhZ2VzSW5NYXJrZWRC
bG9jayk7CisgICAgICAgIC8vIEZJWE1FOiBXZSBjb3VsZCBjYWNoZSB0aGlzIGluIGJ1bGsgKGUu
Zy4gMjUgTUIgY2h1bmtzKSBidXQgd2UgaGF2ZW4ndCBzZWVuIGFueSBkYXRhIHRoYXQgaXQgYWN0
dWFsbHkgbWF0dGVycy4KKyAgICAgICAgYXV0byByZXN1bHQgPSBtaW5jb3JlKGhhbmRsZS0+c3Rh
cnQoKSwgbWFya2VkQmxvY2tTaXplSW5CeXRlcywgcGFnZWRCaXRzKTsKKyAgICAgICAgUkVMRUFT
RV9BU1NFUlQoIXJlc3VsdCk7CisgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1i
ZXJPZlBhZ2VzSW5NYXJrZWRCbG9jazsgKytpKQorICAgICAgICAgICAgc3RhdHMuYWRkKCEocGFn
ZWRCaXRzW2ldICYgTUlOQ09SRV9JTkNPUkUpKTsKICAgICB9Ci0gICAgcmV0dXJuIGZhbHNlOwor
I2VuZGlmCiB9CiAKIE1hcmtlZEJsb2NrOjpIYW5kbGUqIEJsb2NrRGlyZWN0b3J5OjpmaW5kRW1w
dHlCbG9ja1RvU3RlYWwoKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
QmxvY2tEaXJlY3RvcnkuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2NrRGlyZWN0
b3J5LmgKaW5kZXggNjc0MmMzMTU4Yjk2MTY1MjRhMmIwYTY4Y2FkNDAxNjI0NDdlZWE0MS4uYWQ3
ZGRhMDFiMjllODc1ZWFiZGI1NzJmNWI0ZWEyMGFkMjRiMWU2MiAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaGVhcC9CbG9ja0RpcmVjdG9yeS5oCkBAIC0zNyw2ICszNywxMCBAQAogI2luY2x1
ZGUgPHd0Zi9TaGFyZWRUYXNrLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogCituYW1lc3Bh
Y2UgV1RGIHsKK2NsYXNzIFNpbXBsZVN0YXRzOworfQorCiBuYW1lc3BhY2UgSlNDIHsKIAogY2xh
c3MgR0NEZWZlcnJhbENvbnRleHQ7CkBAIC04NSw3ICs4OSw3IEBAIHB1YmxpYzoKICAgICB2b2lk
IGFkZEJsb2NrKE1hcmtlZEJsb2NrOjpIYW5kbGUqKTsKICAgICB2b2lkIHJlbW92ZUJsb2NrKE1h
cmtlZEJsb2NrOjpIYW5kbGUqKTsKIAotICAgIGJvb2wgaXNQYWdlZE91dChNb25vdG9uaWNUaW1l
IGRlYWRsaW5lKTsKKyAgICB2b2lkIHVwZGF0ZVBlcmNlbnRhZ2VPZlBhZ2VkT3V0UGFnZXMoV1RG
OjpTaW1wbGVTdGF0cyYpOwogICAgIAogICAgIExvY2smIGJpdHZlY3RvckxvY2soKSB7IHJldHVy
biBtX2JpdHZlY3RvckxvY2s7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2hlYXAvRnVsbEdDQWN0aXZpdHlDYWxsYmFjay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9GdWxsR0NBY3Rpdml0eUNhbGxiYWNrLmNwcAppbmRleCAyNDg4MDJiOWQ0Yzg0MTU3ZTU2
YWUwM2UyMDcwOTFiOWQ0MzhlNTlmLi42ZDE3ZTExMWRiOWJlZGRhYmE0Zjg3ZTI1ZDQ5Mjg3MTRk
ZTUwZmNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9GdWxsR0NBY3Rp
dml0eUNhbGxiYWNrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9GdWxsR0NB
Y3Rpdml0eUNhbGxiYWNrLmNwcApAQCAtNDQsMTEgKzQ0LDExIEBAIHZvaWQgRnVsbEdDQWN0aXZp
dHlDYWxsYmFjazo6ZG9Db2xsZWN0aW9uKFZNJiB2bSkKICAgICBIZWFwJiBoZWFwID0gdm0uaGVh
cDsKICAgICBtX2RpZEdDUmVjZW50bHkgPSBmYWxzZTsKIAotI2lmICFQTEFURk9STShJT1NfRkFN
SUxZKQorI2lmICFQTEFURk9STShJT1NfRkFNSUxZKSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkK
ICAgICBNb25vdG9uaWNUaW1lIHN0YXJ0VGltZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOwotICAg
IGlmIChoZWFwLmlzUGFnZWRPdXQoc3RhcnRUaW1lICsgcGFnaW5nVGltZU91dCkpIHsKKyAgICBp
ZiAoaGVhcC5pc1BhZ2VkT3V0KCkpIHsKICAgICAgICAgY2FuY2VsKCk7Ci0gICAgICAgIGhlYXAu
aW5jcmVhc2VMYXN0RnVsbEdDTGVuZ3RoKHBhZ2luZ1RpbWVPdXQpOworICAgICAgICBoZWFwLmlu
Y3JlYXNlTGFzdEZ1bGxHQ0xlbmd0aChNb25vdG9uaWNUaW1lOjpub3coKSAtIHN0YXJ0VGltZSk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL0hlYXAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVh
cC5jcHAKaW5kZXggYjI2ZTkxM2QyMmFmMDBmZTJjYWY2MWI2N2NjNzc5Nzg5YmQyY2RjOS4uODFh
NzFhMGRjN2ZmNzMwY2QxYzlmYWY3YzhjOGJkZWNjMDI1OTllMyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2hlYXAvSGVhcC5jcHAKQEAgLTM1NSw5ICszNTUsOSBAQCBIZWFwOjp+SGVhcCgpCiAgICAgICAg
IFdlYWtCbG9jazo6ZGVzdHJveSgqdGhpcywgYmxvY2spOwogfQogCi1ib29sIEhlYXA6OmlzUGFn
ZWRPdXQoTW9ub3RvbmljVGltZSBkZWFkbGluZSkKK2Jvb2wgSGVhcDo6aXNQYWdlZE91dCgpCiB7
Ci0gICAgcmV0dXJuIG1fb2JqZWN0U3BhY2UuaXNQYWdlZE91dChkZWFkbGluZSk7CisgICAgcmV0
dXJuIG1fb2JqZWN0U3BhY2UuaXNQYWdlZE91dCgpOwogfQogCiB2b2lkIEhlYXA6OmR1bXBIZWFw
U3RhdGlzdGljc0F0Vk1EZXN0cnVjdGlvbigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaGVhcC9IZWFwLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmgKaW5k
ZXggMDQ3MThiZWM0NzIxYzJkZGQ5NzEyODJkNjFhNzRkZGM2ZGIwZWVhYS4uMzczZWJlYjVhZmRm
YjM2MzdjYzhkMzE4OTc5ZTRhMTU2NDFlYjE0OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2hlYXAvSGVhcC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAu
aApAQCAtMjcwLDcgKzI3MCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGRlbGV0ZUFsbFVubGlua2Vk
Q29kZUJsb2NrcyhEZWxldGVBbGxDb2RlRWZmb3J0KTsKIAogICAgIHZvaWQgZGlkQWxsb2NhdGUo
c2l6ZV90KTsKLSAgICBib29sIGlzUGFnZWRPdXQoTW9ub3RvbmljVGltZSBkZWFkbGluZSk7Cisg
ICAgYm9vbCBpc1BhZ2VkT3V0KCk7CiAgICAgCiAgICAgY29uc3QgSklUU3R1YlJvdXRpbmVTZXQm
IGppdFN0dWJSb3V0aW5lcygpIHsgcmV0dXJuICptX2ppdFN0dWJSb3V0aW5lczsgfQogICAgIApk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuY3BwCmluZGV4IDI3Y2UyZWY1
NTI2YmVkNjhhYzA4YTc2MzRhOTk2M2EzMTBiODYwMGUuLmYzMzMyNjE0YzhhMzQxNDI5YjVjYmRk
ZTgwOTEzMWU4NmJmNjFlZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFw
L01hcmtlZFNwYWNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRT
cGFjZS5jcHAKQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNsdWRlICJNYXJrZWRCbG9ja0lubGluZXMu
aCIKICNpbmNsdWRlICJNYXJrZWRTcGFjZUlubGluZXMuaCIKICNpbmNsdWRlIDx3dGYvTGlzdER1
bXAuaD4KKyNpbmNsdWRlIDx3dGYvU2ltcGxlU3RhdHMuaD4KIAogbmFtZXNwYWNlIEpTQyB7CiAK
QEAgLTM1OCwxOSArMzU5LDE5IEBAIHZvaWQgTWFya2VkU3BhY2U6OnJlc3VtZUFsbG9jYXRpbmco
KQogICAgIC8vIE5vdGhpbmcgdG8gZG8gZm9yIFByZWNpc2VBbGxvY2F0aW9ucy4KIH0KIAotYm9v
bCBNYXJrZWRTcGFjZTo6aXNQYWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKQorYm9vbCBN
YXJrZWRTcGFjZTo6aXNQYWdlZE91dCgpCiB7Ci0gICAgYm9vbCByZXN1bHQgPSBmYWxzZTsKKyAg
ICBTaW1wbGVTdGF0cyBwYWdlZE91dFBhZ2VzU3RhdHM7CisKICAgICBmb3JFYWNoRGlyZWN0b3J5
KAogICAgICAgICBbJl0gKEJsb2NrRGlyZWN0b3J5JiBkaXJlY3RvcnkpIC0+IEl0ZXJhdGlvblN0
YXR1cyB7Ci0gICAgICAgICAgICBpZiAoZGlyZWN0b3J5LmlzUGFnZWRPdXQoZGVhZGxpbmUpKSB7
Ci0gICAgICAgICAgICAgICAgcmVzdWx0ID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICByZXR1cm4g
SXRlcmF0aW9uU3RhdHVzOjpEb25lOwotICAgICAgICAgICAgfQorICAgICAgICAgICAgZGlyZWN0
b3J5LnVwZGF0ZVBlcmNlbnRhZ2VPZlBhZ2VkT3V0UGFnZXMocGFnZWRPdXRQYWdlc1N0YXRzKTsK
ICAgICAgICAgICAgIHJldHVybiBJdGVyYXRpb25TdGF0dXM6OkNvbnRpbnVlOwogICAgICAgICB9
KTsKICAgICAvLyBGSVhNRTogQ29uc2lkZXIgdGFraW5nIFByZWNpc2VBbGxvY2F0aW9ucyBpbnRv
IGFjY291bnQgaGVyZS4KLSAgICByZXR1cm4gcmVzdWx0OworICAgIGRvdWJsZSBtYXhIZWFwR3Jv
d3RoRmFjdG9yID0gVk06OmlzSW5NaW5pTW9kZSgpID8gT3B0aW9uczo6bWluaVZNSGVhcEdyb3d0
aEZhY3RvcigpIDogT3B0aW9uczo6bGFyZ2VIZWFwR3Jvd3RoRmFjdG9yKCk7CisgICAgZG91Ymxl
IGJhaWxvdXRQZXJjZW50YWdlID0gT3B0aW9uczo6Y3VzdG9tRnVsbEdDQ2FsbGJhY2tCYWlsVGhy
ZXNob2xkKCkgPT0gLTEuMCA/IG1heEhlYXBHcm93dGhGYWN0b3IgLSAxIDogT3B0aW9uczo6Y3Vz
dG9tRnVsbEdDQ2FsbGJhY2tCYWlsVGhyZXNob2xkKCk7CisgICAgcmV0dXJuIHBhZ2VkT3V0UGFn
ZXNTdGF0cy5tZWFuKCkgPiBwYWdlZE91dFBhZ2VzU3RhdHMuY291bnQoKSAqIGJhaWxvdXRQZXJj
ZW50YWdlOwogfQogCiB2b2lkIE1hcmtlZFNwYWNlOjpmcmVlQmxvY2soTWFya2VkQmxvY2s6Okhh
bmRsZSogYmxvY2spCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJr
ZWRTcGFjZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuaAppbmRl
eCA2YjQzN2MyZTFmNDQ4NjM0NGE2ZTgwZjQyZDEzNzIyMDc3MTA3ZmFhLi41YmU1MWRlN2U0Y2Y5
OWIzZDZmNDc3NzdmMDBiNmQyYTk3YWI4MDRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaGVhcC9NYXJrZWRTcGFjZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFw
L01hcmtlZFNwYWNlLmgKQEAgLTE0OCw3ICsxNDgsNyBAQCBwdWJsaWM6CiAgICAgc2l6ZV90IHNp
emUoKTsKICAgICBzaXplX3QgY2FwYWNpdHkoKTsKIAotICAgIGJvb2wgaXNQYWdlZE91dChNb25v
dG9uaWNUaW1lIGRlYWRsaW5lKTsKKyAgICBib29sIGlzUGFnZWRPdXQoKTsKICAgICAKICAgICBI
ZWFwVmVyc2lvbiBtYXJraW5nVmVyc2lvbigpIGNvbnN0IHsgcmV0dXJuIG1fbWFya2luZ1ZlcnNp
b247IH0KICAgICBIZWFwVmVyc2lvbiBuZXdseUFsbG9jYXRlZFZlcnNpb24oKSBjb25zdCB7IHJl
dHVybiBtX25ld2x5QWxsb2NhdGVkVmVyc2lvbjsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL09wdGlvbnNMaXN0LmgKaW5kZXggMTVhMDZlYjY3MWM4NGViYjRkMGMzYTM0YjEwYTg1
NDBkYTMwNDNjYi4uYWNkZTRmMGMwMTE2NmU5YzAwNzVlMWE0NWM1MTMzOGJmNTJiNTVjYyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zTGlzdC5oCkBAIC0yMDQsNiAr
MjA0LDcgQEAgY29uc3RleHByIHVuc2lnbmVkIGpzY1Jlc2VydmVkWm9uZVNpemUgPSA2NCAqIEtC
OwogICAgIHYoRG91YmxlLCBsYXJnZUhlYXBHcm93dGhGYWN0b3IsIDEuMjQsIE5vcm1hbCwgbnVs
bHB0cikgXAogICAgIHYoRG91YmxlLCBtaW5pVk1IZWFwR3Jvd3RoRmFjdG9yLCAxLjI3LCBOb3Jt
YWwsIG51bGxwdHIpIFwKICAgICB2KERvdWJsZSwgY3JpdGljYWxHQ01lbW9yeVRocmVzaG9sZCwg
MC44MCwgTm9ybWFsLCAicGVyY2VudCBtZW1vcnkgaW4gdXNlIHRoZSBHQyBjb25zaWRlcnMgY3Jp
dGljYWwuICBUaGUgY29sbGVjdG9yIGlzIG11Y2ggbW9yZSBhZ2dyZXNzaXZlIGFib3ZlIHRoaXMg
dGhyZXNob2xkIikgXAorICAgIHYoRG91YmxlLCBjdXN0b21GdWxsR0NDYWxsYmFja0JhaWxUaHJl
c2hvbGQsIC0xLjAsIE5vcm1hbCwgInBlcmNlbnQgb2YgbWVtb3J5IHBhZ2VkIG91dCBiZWZvcmUg
d2UgYmFpbCBvdXQgb2YgdGltZXIgYmFzZWQgRnVsbCBHQ3MuIC0xLjAgbWVhbnMgdXNlIChtYXhI
ZWFwR3Jvd3RoRmFjdG9yIC0gMSkiKSBcCiAgICAgdihEb3VibGUsIG1pbmltdW1NdXRhdG9yVXRp
bGl6YXRpb24sIDAsIE5vcm1hbCwgbnVsbHB0cikgXAogICAgIHYoRG91YmxlLCBtYXhpbXVtTXV0
YXRvclV0aWxpemF0aW9uLCAwLjcsIE5vcm1hbCwgbnVsbHB0cikgXAogICAgIHYoRG91YmxlLCBl
cHNpbG9uTXV0YXRvclV0aWxpemF0aW9uLCAwLjAxLCBOb3JtYWwsIG51bGxwdHIpIFwKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XVEYvd3RmL0Z1bmN0aW9uVHJhaXRzLmggYi9Tb3VyY2UvV1RGL3d0Zi9G
dW5jdGlvblRyYWl0cy5oCmluZGV4IDM1MzNmYjJiZjNhMTA4NjMwZTQzYzk2NzBiZmUxZTk1OWRl
MzUxMmMuLmIyNDA2MmFhNWNiZmZjYTYzNDBlYmZmOWRmOGNkNWNiZTBmZmZkNTYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XVEYvd3RmL0Z1bmN0aW9uVHJhaXRzLmgKKysrIGIvU291cmNlL1dURi93dGYv
RnVuY3Rpb25UcmFpdHMuaApAQCAtODAsNiArODAsMTQgQEAgdGVtcGxhdGU8dHlwZW5hbWUgUmVz
dWx0LCB0eXBlbmFtZS4uLiBBcmdzPgogc3RydWN0IEZ1bmN0aW9uVHJhaXRzPFJlc3VsdCgqKShB
cmdzLi4uKT4gOiBwdWJsaWMgRnVuY3Rpb25UcmFpdHM8UmVzdWx0KEFyZ3MuLi4pPiB7CiB9Owog
Cit0ZW1wbGF0ZTx0eXBlbmFtZSBSZXN1bHQsIHR5cGVuYW1lLi4uIEFyZ3M+CitzdHJ1Y3QgRnVu
Y3Rpb25UcmFpdHM8UmVzdWx0KEFyZ3MuLi4pIG5vZXhjZXB0PiA6IHB1YmxpYyBGdW5jdGlvblRy
YWl0czxSZXN1bHQoQXJncy4uLik+IHsKK307CisKK3RlbXBsYXRlPHR5cGVuYW1lIFJlc3VsdCwg
dHlwZW5hbWUuLi4gQXJncz4KK3N0cnVjdCBGdW5jdGlvblRyYWl0czxSZXN1bHQoKikoQXJncy4u
Likgbm9leGNlcHQ+IDogcHVibGljIEZ1bmN0aW9uVHJhaXRzPFJlc3VsdChBcmdzLi4uKT4gewor
fTsKKwogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6RnVuY3Rpb25UcmFpdHM7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29tLmFwcGxlLldlYlByb2Nlc3Mu
c2IuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29tLmFwcGxlLldlYlByb2Nlc3Muc2Iu
aW4KaW5kZXggMGFlY2FhYmYzYjYwZmVmNjVhYjdhNDdlMTcxOTMxOGZmY2QxMDU3OC4uOWViNjc0
NjQ4ZjRiNTc1MTdkMzAzNzljZjYwMmY5YTFkMzU4NTQ0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL2NvbS5hcHBsZS5XZWJQcm9jZXNzLnNiLmluCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9jb20uYXBwbGUuV2ViUHJvY2Vzcy5zYi5pbgpAQCAtMTc3Niw2ICsx
Nzc2LDcgQEAKICAgICAgICAgKHN5c2NhbGwtbnVtYmVyIFNZU19tdW5tYXApCiAgICAgICAgIChz
eXNjYWxsLW51bWJlciBTWVNfbXByb3RlY3QpCiAgICAgICAgIChzeXNjYWxsLW51bWJlciBTWVNf
bWFkdmlzZSkKKyAgICAgICAgKHN5c2NhbGwtbnVtYmVyIFNZU19taW5jb3JlKQogICAgICAgICAo
c3lzY2FsbC1udW1iZXIgU1lTX2ZjbnRsKQogICAgICAgICAoc3lzY2FsbC1udW1iZXIgU1lTX3Nl
bGVjdCkKICAgICAgICAgKHN5c2NhbGwtbnVtYmVyIFNZU19mc3luYykK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426575</attachid>
            <date>2021-04-20 11:37:52 -0700</date>
            <delta_ts>2021-04-20 11:58:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224817-20210420143750.patch</filename>
            <type>text/plain</type>
            <size>13859</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1OTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
OWRjZjNkNGRjODkyYjcyNDhmOGExZDljNmRhZmQ3NmU1ZTAwOGM0Li5lOWQwZTFmNjQ3MDA1OWJh
NTVhYWMxZjcyODQ1NTI1ZjBiNjg3MDFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMS0wNC0yMCAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBGdWxsR0NBY3Rpdml0eUNhbGxiYWNrIHNob3VsZCB1c2UgdGhlIHBl
cmNlbnRhZ2Ugb2YgcGFnZXMgdW5jb21wcmVzc2VkIGluIFJBTSB0byBkZXRlcm1pbmUgZGVmZXJy
YWwuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQ4
MTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSaWdo
dCBub3cgd2UgdHJ5IHRvIGRldGVybWluZSBpZiB0b28gbWFueSBwYWdlcyBhcmUgcGFnZWQgb3V0
IGJ5CisgICAgICAgIGRlcmVmZXJlbmNpbmcgdGhlbSBhbmQgYmFpbGluZyBvdXQgb2YgdGhlIEdD
IGlmIHdlIGdvIG92ZXIgYQorICAgICAgICBkZWFkbGluZS4gV2hpbGUgdGhpcyB3b3JrcyBpZiB0
aGUgb25seSBnb2FsIGlzIHRvIGF2b2lkIGNhdXNpbmcKKyAgICAgICAgZXh0ZW5zaXZlIHRocmFz
aGluZyBvbiBzcGlubnkgZGlza3MgKEhERCksIGl0IGRvZXNuJ3QgcHJldmVudAorICAgICAgICB0
aHJhc2hpbmcgd2hlbiBhY2Nlc3MgdG8gZGlzayBpcyBmYXN0IChlLmcuIFNTRCkuIFRoaXMgaXMg
YmVjYXVzZQorICAgICAgICBvbiBmYXN0IGRpc2tzIHRoZSBwcm9wb3J0aW9uYWwgdGltZSB0byBs
b2FkIHRoZSBtZW1vcnkgZnJvbSBkaXNrCisgICAgICAgIGlzIG11Y2ggbG93ZXIuIEFkZGl0aW9u
YWxseSwgb24gU1NEcyBpbiBwYXJ0aWN1bGFyIHdlIGRvbid0IHdhbnQKKyAgICAgICAgdG8gbG9h
ZCB0aGUgcGFnZXMgaW50byBSQU0gdGhlbiBiYWlsIGFzIHRoYXQgd2lsbCBmb3JjZSBhCisgICAg
ICAgIGRpZmZlcmVudCBwYWdlIG9udG8gZGlzaywgaW5jcmVhc2luZyB3ZWFyLgorCisgICAgICAg
IFRoaXMgcGF0Y2ggc3dpdGNoZXMgdG8gYXNraW5nIHRoZSBPUyBpZiBlYWNoIE1hcmtlZEJsb2Nr
IGlzIHBhZ2VkCisgICAgICAgIG91dC4gVGhlbiBpZiB3ZSBhcmUgb3ZlciBhIHRocmVzaG9sZCB3
ZSB3YWl0IHVudGlsIHdlIHdvdWxkIGhhdmUKKyAgICAgICAgR0MnZCBhbnl3YXkuIFRoaXMgcGF0
Y2ggdXNlcyB0aGUgKG1heFZNR3Jvd3RoRmFjdG9yIC0gMSkgYXMgdGhlCisgICAgICAgIHBlcmNl
bnRhZ2Ugb2YgInNsb3ciIHBhZ2VzIChwYWdlZCBvdXQgb3IgY29tcHJlc3NlZCkgbmVlZGVkIHRv
CisgICAgICAgIGRlZmVyIHRoZSBHQy4gVGhlIGlkZWEgYmVoaW5kIHRoYXQgdGhyZXNob2xkIGlz
IHRoYXQgaWYgd2UgYWRkCisgICAgICAgIHRoYXQgbWFueSBwYWdlcyB0aGVuIHRoZSBzYW1lIG51
bWJlciBvZiBwYWdlcyB3b3VsZCBiZSBmb3JjZWQKKyAgICAgICAgb3V0IG9mIFJBTSBmb3IgdXMg
dG8gZG8gYSBHQyBhbnl3YXkgKGluIHRoZSBsaW1pdCkuCisKKyAgICAgICAgKiBoZWFwL0Jsb2Nr
RGlyZWN0b3J5LmNwcDoKKyAgICAgICAgKEpTQzo6QmxvY2tEaXJlY3Rvcnk6OnVwZGF0ZVBlcmNl
bnRhZ2VPZlBhZ2VkT3V0UGFnZXMpOgorICAgICAgICAoSlNDOjpCbG9ja0RpcmVjdG9yeTo6aXNQ
YWdlZE91dCk6IERlbGV0ZWQuCisgICAgICAgICogaGVhcC9CbG9ja0RpcmVjdG9yeS5oOgorICAg
ICAgICAqIGhlYXAvRnVsbEdDQWN0aXZpdHlDYWxsYmFjay5jcHA6CisgICAgICAgIChKU0M6OkZ1
bGxHQ0FjdGl2aXR5Q2FsbGJhY2s6OmRvQ29sbGVjdGlvbik6CisgICAgICAgICogaGVhcC9IZWFw
LmNwcDoKKyAgICAgICAgKEpTQzo6SGVhcDo6aXNQYWdlZE91dCk6CisgICAgICAgICogaGVhcC9I
ZWFwLmg6CisgICAgICAgICogaGVhcC9NYXJrZWRTcGFjZS5jcHA6CisgICAgICAgIChKU0M6Ok1h
cmtlZFNwYWNlOjppc1BhZ2VkT3V0KToKKyAgICAgICAgKiBoZWFwL01hcmtlZFNwYWNlLmg6Cisg
ICAgICAgICogcnVudGltZS9PcHRpb25zTGlzdC5oOgorCiAyMDIxLTA0LTEzICBNYXJrIExhbSAg
PG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBUaGUgd2F0Y2hkb2cgc2hvdWxkIG5vdCBm
aXJlIHdoZW4gaXQncyBub3QgYWN0aXZlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCA3ODNiOWNiYWUxZTVmNzc2ZGE2NWU0MTcy
ODBlYTQyYWUzNDFiZmUxLi42NzMzNzJjNWMzNzExYWFkZTY3YjdhNzgxY2YwODBmZjdmMWM1NGY3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA0LTIwICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9t
aWxsZXJAYXBwbGUuY29tPgorCisgICAgICAgIEZ1bGxHQ0FjdGl2aXR5Q2FsbGJhY2sgc2hvdWxk
IHVzZSB0aGUgcGVyY2VudGFnZSBvZiBwYWdlcyB1bmNvbXByZXNzZWQgaW4gUkFNIHRvIGRldGVy
bWluZSBkZWZlcnJhbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNDgxNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEFkZCBhIG5vZXhlY3B0IGZsYXZvciBvZiBGdW5jdGlvblRyYWl0cy4KKworICAgICAg
ICAqIHd0Zi9GdW5jdGlvblRyYWl0cy5oOgorCiAyMDIxLTA0LTEzICBBZGEgQ2hhbiAgPGFkYS5j
aGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQgUGxhdGZvcm1YUlN5c3RlbTo6eHJD
b29yZGluYXRvcigpIGZvciBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA2MzVk
NGU3NTFhZWY1MmZhNTZhNzFkOGEwOTc5YjA5MTE1NWIzNmRkLi40MzM3NjNjMmUwMzlkYmZmNGE3
MjljYzA0ZmZjYmE1Y2VjNzlhOGJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA0
LTIwICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29tPgorCisgICAgICAgIEZ1
bGxHQ0FjdGl2aXR5Q2FsbGJhY2sgc2hvdWxkIHVzZSB0aGUgcGVyY2VudGFnZSBvZiBwYWdlcyB1
bmNvbXByZXNzZWQgaW4gUkFNIHRvIGRldGVybWluZSBkZWZlcnJhbC4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDgxNworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBtaW5jb3JlIHRvIHRoZSBhY2Nl
cHRhYmxlIHN5c2NhbGwgbGlzdC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvY29tLmFwcGxlLldl
YlByb2Nlc3Muc2IuaW46CisKIDIwMjEtMDQtMTQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxl
LmNvbT4KIAogICAgICAgICBbaU9TXSBXS01vdXNlRGV2aWNlT2JzZXJ2ZXIgaXMgY2FsbGluZyBX
ZWJQcm9jZXNzUHJveHk6OnNlbmQoKSBvbiBhIG5vbi1tYWluIHRocmVhZApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuY3BwCmluZGV4IDhkMmI5M2QzNjYxODgx
ZDg0MTU5OTZhOTVmMDBlYTA5MTkyZWRlMjguLjJjZThlYjk1ZTBjYTA4NmNmZWU2MDkwOWRiNTFm
Yjg1MmUwNDljYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2Nr
RGlyZWN0b3J5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9ja0RpcmVj
dG9yeS5jcHAKQEAgLTMxLDYgKzMxLDkgQEAKICNpbmNsdWRlICJTdWJzcGFjZUlubGluZXMuaCIK
ICNpbmNsdWRlICJTdXBlclNhbXBsZXIuaCIKIAorI2luY2x1ZGUgPHd0Zi9GdW5jdGlvblRyYWl0
cy5oPgorI2luY2x1ZGUgPHd0Zi9TaW1wbGVTdGF0cy5oPgorCiBuYW1lc3BhY2UgSlNDIHsKIAog
REVGSU5FX0FMTE9DQVRPUl9XSVRIX0hFQVBfSURFTlRJRklFUihCbG9ja0RpcmVjdG9yeSk7CkBA
IC01MywyMSArNTYsMzUgQEAgdm9pZCBCbG9ja0RpcmVjdG9yeTo6c2V0U3Vic3BhY2UoU3Vic3Bh
Y2UqIHN1YnNwYWNlKQogICAgIG1fc3Vic3BhY2UgPSBzdWJzcGFjZTsKIH0KIAotYm9vbCBCbG9j
a0RpcmVjdG9yeTo6aXNQYWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKQordm9pZCBCbG9j
a0RpcmVjdG9yeTo6dXBkYXRlUGVyY2VudGFnZU9mUGFnZWRPdXRQYWdlcyhTaW1wbGVTdGF0cyYg
c3RhdHMpCiB7Ci0gICAgdW5zaWduZWQgaXRlcnNTaW5jZUxhc3RUaW1lQ2hlY2sgPSAwOwotICAg
IGZvciAoYXV0byogYmxvY2sgOiBtX2Jsb2NrcykgewotICAgICAgICBpZiAoYmxvY2spCi0gICAg
ICAgICAgICBibG9jay0+YmxvY2soKS5wb3B1bGF0ZVBhZ2UoKTsKLSAgICAgICAgKytpdGVyc1Np
bmNlTGFzdFRpbWVDaGVjazsKLSAgICAgICAgaWYgKGl0ZXJzU2luY2VMYXN0VGltZUNoZWNrID49
IEhlYXA6OnNfdGltZUNoZWNrUmVzb2x1dGlvbikgewotICAgICAgICAgICAgTW9ub3RvbmljVGlt
ZSBjdXJyZW50VGltZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOwotICAgICAgICAgICAgaWYgKGN1
cnJlbnRUaW1lID4gZGVhZGxpbmUpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAg
ICAgICAgICBpdGVyc1NpbmNlTGFzdFRpbWVDaGVjayA9IDA7Ci0gICAgICAgIH0KKyAgICAvLyBG
SVhNRTogV2Ugc2hvdWxkIGZpZ3VyZSBvdXQgYSBzb2x1dGlvbiBmb3IgV2luZG93cy4KKyNpZiBP
UyhVTklYKQorICAgIHNpemVfdCBwYWdlU2l6ZSA9IFdURjo6cGFnZVNpemUoKTsKKyAgICBBU1NF
UlQoIShNYXJrZWRCbG9jazo6YmxvY2tTaXplICUgcGFnZVNpemUpKTsKKyAgICBhdXRvIG51bWJl
ck9mUGFnZXNJbk1hcmtlZEJsb2NrID0gTWFya2VkQmxvY2s6OmJsb2NrU2l6ZSAvIHBhZ2VTaXpl
OworICAgIC8vIEZvciBzb21lIHJlYXNvbiB0aGlzIGNhbiBiZSB1bnNpZ25lZCBjaGFyIG9yIGNo
YXIgb24gZGlmZmVyZW50IE9TZXMuLi4KKyAgICB1c2luZyBNaW5jb3JlQnVmZmVyVHlwZSA9IHN0
ZDo6cmVtb3ZlX3BvaW50ZXJfdDxGdW5jdGlvblRyYWl0czxkZWNsdHlwZShtaW5jb3JlKT46OkFy
Z3VtZW50VHlwZTwyPj47CisgICAgc3RhdGljX2Fzc2VydChzdGQ6OmlzX3NhbWVfdjxzdGQ6Om1h
a2VfdW5zaWduZWRfdDxNaW5jb3JlQnVmZmVyVHlwZT4sIHVuc2lnbmVkIGNoYXI+KTsKKyAgICAv
LyBwYWdlU2l6ZSBpcyBlZmZlY3RpdmVseSBhIGNvbnN0YW50IHNvIHRoaXMgaXNuJ3QgcmVhbGx5
IHZhcmlhYmxlLgorICAgIElHTk9SRV9DTEFOR19XQVJOSU5HU19CRUdJTigidmxhIikKKyAgICBN
aW5jb3JlQnVmZmVyVHlwZSBwYWdlZEJpdHNbbnVtYmVyT2ZQYWdlc0luTWFya2VkQmxvY2tdOwor
ICAgIElHTk9SRV9DTEFOR19XQVJOSU5HU19FTkQKKworICAgIGZvciAoYXV0byogaGFuZGxlIDog
bV9ibG9ja3MpIHsKKyAgICAgICAgaWYgKCFoYW5kbGUpCisgICAgICAgICAgICBjb250aW51ZTsK
KworICAgICAgICBhdXRvIG1hcmtlZEJsb2NrU2l6ZUluQnl0ZXMgPSBzdGF0aWNfY2FzdDxzaXpl
X3Q+KHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KGhhbmRsZS0+ZW5kKCkpIC0gcmVpbnRlcnByZXRf
Y2FzdDxjaGFyKj4oaGFuZGxlLT5zdGFydCgpKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKG1h
cmtlZEJsb2NrU2l6ZUluQnl0ZXMgLyBwYWdlU2l6ZSA8PSBudW1iZXJPZlBhZ2VzSW5NYXJrZWRC
bG9jayk7CisgICAgICAgIC8vIEZJWE1FOiBXZSBjb3VsZCBjYWNoZSB0aGlzIGluIGJ1bGsgKGUu
Zy4gMjUgTUIgY2h1bmtzKSBidXQgd2UgaGF2ZW4ndCBzZWVuIGFueSBkYXRhIHRoYXQgaXQgYWN0
dWFsbHkgbWF0dGVycy4KKyAgICAgICAgYXV0byByZXN1bHQgPSBtaW5jb3JlKGhhbmRsZS0+c3Rh
cnQoKSwgbWFya2VkQmxvY2tTaXplSW5CeXRlcywgcGFnZWRCaXRzKTsKKyAgICAgICAgUkVMRUFT
RV9BU1NFUlQoIXJlc3VsdCk7CisgICAgICAgIGNvbnN0ZXhwciB1bnNpZ25lZCBwYWdlSXNSZXNp
ZGVudEFuZE5vdENvbXByZXNzZWQgPSAxOworICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBp
IDwgbnVtYmVyT2ZQYWdlc0luTWFya2VkQmxvY2s7ICsraSkKKyAgICAgICAgICAgIHN0YXRzLmFk
ZCghKHBhZ2VkQml0c1tpXSAmIHBhZ2VJc1Jlc2lkZW50QW5kTm90Q29tcHJlc3NlZCkpOwogICAg
IH0KLSAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKIH0KIAogTWFya2VkQmxvY2s6OkhhbmRsZSog
QmxvY2tEaXJlY3Rvcnk6OmZpbmRFbXB0eUJsb2NrVG9TdGVhbCgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9ja0RpcmVjdG9yeS5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuaAppbmRleCA2NzQyYzMxNThiOTYxNjUyNGEyYjBh
NjhjYWQ0MDE2MjQ0N2VlYTQxLi5hZDdkZGEwMWIyOWU4NzVlYWJkYjU3MmY1YjRlYTIwYWQyNGIx
ZTYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9ja0RpcmVjdG9y
eS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2NrRGlyZWN0b3J5LmgKQEAg
LTM3LDYgKzM3LDEwIEBACiAjaW5jbHVkZSA8d3RmL1NoYXJlZFRhc2suaD4KICNpbmNsdWRlIDx3
dGYvVmVjdG9yLmg+CiAKK25hbWVzcGFjZSBXVEYgeworY2xhc3MgU2ltcGxlU3RhdHM7Cit9CisK
IG5hbWVzcGFjZSBKU0MgewogCiBjbGFzcyBHQ0RlZmVycmFsQ29udGV4dDsKQEAgLTg1LDcgKzg5
LDcgQEAgcHVibGljOgogICAgIHZvaWQgYWRkQmxvY2soTWFya2VkQmxvY2s6OkhhbmRsZSopOwog
ICAgIHZvaWQgcmVtb3ZlQmxvY2soTWFya2VkQmxvY2s6OkhhbmRsZSopOwogCi0gICAgYm9vbCBp
c1BhZ2VkT3V0KE1vbm90b25pY1RpbWUgZGVhZGxpbmUpOworICAgIHZvaWQgdXBkYXRlUGVyY2Vu
dGFnZU9mUGFnZWRPdXRQYWdlcyhXVEY6OlNpbXBsZVN0YXRzJik7CiAgICAgCiAgICAgTG9jayYg
Yml0dmVjdG9yTG9jaygpIHsgcmV0dXJuIG1fYml0dmVjdG9yTG9jazsgfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9GdWxsR0NBY3Rpdml0eUNhbGxiYWNrLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Z1bGxHQ0FjdGl2aXR5Q2FsbGJhY2suY3BwCmlu
ZGV4IDI0ODgwMmI5ZDRjODQxNTdlNTZhZTAzZTIwNzA5MWI5ZDQzOGU1OWYuLjZkMTdlMTExZGI5
YmVkZGFiYTRmODdlMjVkNDkyODcxNGRlNTBmY2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL0Z1bGxHQ0FjdGl2aXR5Q2FsbGJhY2suY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL0Z1bGxHQ0FjdGl2aXR5Q2FsbGJhY2suY3BwCkBAIC00NCwxMSArNDQs
MTEgQEAgdm9pZCBGdWxsR0NBY3Rpdml0eUNhbGxiYWNrOjpkb0NvbGxlY3Rpb24oVk0mIHZtKQog
ICAgIEhlYXAmIGhlYXAgPSB2bS5oZWFwOwogICAgIG1fZGlkR0NSZWNlbnRseSA9IGZhbHNlOwog
Ci0jaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpIHx8
IFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQogICAgIE1vbm90b25pY1RpbWUgc3RhcnRUaW1lID0gTW9u
b3RvbmljVGltZTo6bm93KCk7Ci0gICAgaWYgKGhlYXAuaXNQYWdlZE91dChzdGFydFRpbWUgKyBw
YWdpbmdUaW1lT3V0KSkgeworICAgIGlmIChoZWFwLmlzUGFnZWRPdXQoKSkgewogICAgICAgICBj
YW5jZWwoKTsKLSAgICAgICAgaGVhcC5pbmNyZWFzZUxhc3RGdWxsR0NMZW5ndGgocGFnaW5nVGlt
ZU91dCk7CisgICAgICAgIGhlYXAuaW5jcmVhc2VMYXN0RnVsbEdDTGVuZ3RoKE1vbm90b25pY1Rp
bWU6Om5vdygpIC0gc3RhcnRUaW1lKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KICNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcAppbmRleCBiMjZlOTEzZDIyYWYwMGZlMmNhZjYx
YjY3Y2M3Nzk3ODliZDJjZGM5Li44MWE3MWEwZGM3ZmY3MzBjZDFjOWZhZjdjOGM4YmRlY2MwMjU5
OWUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcApAQCAtMzU1LDkgKzM1NSw5IEBA
IEhlYXA6On5IZWFwKCkKICAgICAgICAgV2Vha0Jsb2NrOjpkZXN0cm95KCp0aGlzLCBibG9jayk7
CiB9CiAKLWJvb2wgSGVhcDo6aXNQYWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKQorYm9v
bCBIZWFwOjppc1BhZ2VkT3V0KCkKIHsKLSAgICByZXR1cm4gbV9vYmplY3RTcGFjZS5pc1BhZ2Vk
T3V0KGRlYWRsaW5lKTsKKyAgICByZXR1cm4gbV9vYmplY3RTcGFjZS5pc1BhZ2VkT3V0KCk7CiB9
CiAKIHZvaWQgSGVhcDo6ZHVtcEhlYXBTdGF0aXN0aWNzQXRWTURlc3RydWN0aW9uKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuaCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL0hlYXAuaAppbmRleCAwNDcxOGJlYzQ3MjFjMmRkZDk3MTI4MmQ2MWE3NGRk
YzZkYjBlZWFhLi4zNzNlYmViNWFmZGZiMzYzN2NjOGQzMTg5NzllNGExNTY0MWViMTQ5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5oCkBAIC0yNzAsNyArMjcwLDcgQEAgcHVibGljOgogICAg
IHZvaWQgZGVsZXRlQWxsVW5saW5rZWRDb2RlQmxvY2tzKERlbGV0ZUFsbENvZGVFZmZvcnQpOwog
CiAgICAgdm9pZCBkaWRBbGxvY2F0ZShzaXplX3QpOwotICAgIGJvb2wgaXNQYWdlZE91dChNb25v
dG9uaWNUaW1lIGRlYWRsaW5lKTsKKyAgICBib29sIGlzUGFnZWRPdXQoKTsKICAgICAKICAgICBj
b25zdCBKSVRTdHViUm91dGluZVNldCYgaml0U3R1YlJvdXRpbmVzKCkgeyByZXR1cm4gKm1faml0
U3R1YlJvdXRpbmVzOyB9CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9NYXJrZWRTcGFjZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRT
cGFjZS5jcHAKaW5kZXggMjdjZTJlZjU1MjZiZWQ2OGFjMDhhNzYzNGE5OTYzYTMxMGI4NjAwZS4u
ZjMzMzI2MTRjOGEzNDE0MjliNWNiZGRlODA5MTMxZTg2YmY2MWVlYyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmNwcApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1
ZGUgIk1hcmtlZEJsb2NrSW5saW5lcy5oIgogI2luY2x1ZGUgIk1hcmtlZFNwYWNlSW5saW5lcy5o
IgogI2luY2x1ZGUgPHd0Zi9MaXN0RHVtcC5oPgorI2luY2x1ZGUgPHd0Zi9TaW1wbGVTdGF0cy5o
PgogCiBuYW1lc3BhY2UgSlNDIHsKIApAQCAtMzU4LDE5ICszNTksMTkgQEAgdm9pZCBNYXJrZWRT
cGFjZTo6cmVzdW1lQWxsb2NhdGluZygpCiAgICAgLy8gTm90aGluZyB0byBkbyBmb3IgUHJlY2lz
ZUFsbG9jYXRpb25zLgogfQogCi1ib29sIE1hcmtlZFNwYWNlOjppc1BhZ2VkT3V0KE1vbm90b25p
Y1RpbWUgZGVhZGxpbmUpCitib29sIE1hcmtlZFNwYWNlOjppc1BhZ2VkT3V0KCkKIHsKLSAgICBi
b29sIHJlc3VsdCA9IGZhbHNlOworICAgIFNpbXBsZVN0YXRzIHBhZ2VkT3V0UGFnZXNTdGF0czsK
KwogICAgIGZvckVhY2hEaXJlY3RvcnkoCiAgICAgICAgIFsmXSAoQmxvY2tEaXJlY3RvcnkmIGRp
cmVjdG9yeSkgLT4gSXRlcmF0aW9uU3RhdHVzIHsKLSAgICAgICAgICAgIGlmIChkaXJlY3Rvcnku
aXNQYWdlZE91dChkZWFkbGluZSkpIHsKLSAgICAgICAgICAgICAgICByZXN1bHQgPSB0cnVlOwot
ICAgICAgICAgICAgICAgIHJldHVybiBJdGVyYXRpb25TdGF0dXM6OkRvbmU7Ci0gICAgICAgICAg
ICB9CisgICAgICAgICAgICBkaXJlY3RvcnkudXBkYXRlUGVyY2VudGFnZU9mUGFnZWRPdXRQYWdl
cyhwYWdlZE91dFBhZ2VzU3RhdHMpOwogICAgICAgICAgICAgcmV0dXJuIEl0ZXJhdGlvblN0YXR1
czo6Q29udGludWU7CiAgICAgICAgIH0pOwogICAgIC8vIEZJWE1FOiBDb25zaWRlciB0YWtpbmcg
UHJlY2lzZUFsbG9jYXRpb25zIGludG8gYWNjb3VudCBoZXJlLgotICAgIHJldHVybiByZXN1bHQ7
CisgICAgZG91YmxlIG1heEhlYXBHcm93dGhGYWN0b3IgPSBWTTo6aXNJbk1pbmlNb2RlKCkgPyBP
cHRpb25zOjptaW5pVk1IZWFwR3Jvd3RoRmFjdG9yKCkgOiBPcHRpb25zOjpsYXJnZUhlYXBHcm93
dGhGYWN0b3IoKTsKKyAgICBkb3VibGUgYmFpbG91dFBlcmNlbnRhZ2UgPSBPcHRpb25zOjpjdXN0
b21GdWxsR0NDYWxsYmFja0JhaWxUaHJlc2hvbGQoKSA9PSAtMS4wID8gbWF4SGVhcEdyb3d0aEZh
Y3RvciAtIDEgOiBPcHRpb25zOjpjdXN0b21GdWxsR0NDYWxsYmFja0JhaWxUaHJlc2hvbGQoKTsK
KyAgICByZXR1cm4gcGFnZWRPdXRQYWdlc1N0YXRzLm1lYW4oKSA+IHBhZ2VkT3V0UGFnZXNTdGF0
cy5jb3VudCgpICogYmFpbG91dFBlcmNlbnRhZ2U7CiB9CiAKIHZvaWQgTWFya2VkU3BhY2U6OmZy
ZWVCbG9jayhNYXJrZWRCbG9jazo6SGFuZGxlKiBibG9jaykKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9NYXJrZWRTcGFjZS5oCmluZGV4IDZiNDM3YzJlMWY0NDg2MzQ0YTZlODBmNDJkMTM3MjIw
NzcxMDdmYWEuLjViZTUxZGU3ZTRjZjk5YjNkNmY0Nzc3N2YwMGI2ZDJhOTdhYjgwNGYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuaApAQCAtMTQ4LDcgKzE0OCw3IEBA
IHB1YmxpYzoKICAgICBzaXplX3Qgc2l6ZSgpOwogICAgIHNpemVfdCBjYXBhY2l0eSgpOwogCi0g
ICAgYm9vbCBpc1BhZ2VkT3V0KE1vbm90b25pY1RpbWUgZGVhZGxpbmUpOworICAgIGJvb2wgaXNQ
YWdlZE91dCgpOwogICAgIAogICAgIEhlYXBWZXJzaW9uIG1hcmtpbmdWZXJzaW9uKCkgY29uc3Qg
eyByZXR1cm4gbV9tYXJraW5nVmVyc2lvbjsgfQogICAgIEhlYXBWZXJzaW9uIG5ld2x5QWxsb2Nh
dGVkVmVyc2lvbigpIGNvbnN0IHsgcmV0dXJuIG1fbmV3bHlBbGxvY2F0ZWRWZXJzaW9uOyB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zTGlzdC5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaAppbmRleCAxNWEwNmVi
NjcxYzg0ZWJiNGQwYzNhMzRiMTBhODU0MGRhMzA0M2NiLi5hY2RlNGYwYzAxMTY2ZTljMDA3NWUx
YTQ1YzUxMzM4YmY1MmI1NWNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9PcHRpb25zTGlzdC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09w
dGlvbnNMaXN0LmgKQEAgLTIwNCw2ICsyMDQsNyBAQCBjb25zdGV4cHIgdW5zaWduZWQganNjUmVz
ZXJ2ZWRab25lU2l6ZSA9IDY0ICogS0I7CiAgICAgdihEb3VibGUsIGxhcmdlSGVhcEdyb3d0aEZh
Y3RvciwgMS4yNCwgTm9ybWFsLCBudWxscHRyKSBcCiAgICAgdihEb3VibGUsIG1pbmlWTUhlYXBH
cm93dGhGYWN0b3IsIDEuMjcsIE5vcm1hbCwgbnVsbHB0cikgXAogICAgIHYoRG91YmxlLCBjcml0
aWNhbEdDTWVtb3J5VGhyZXNob2xkLCAwLjgwLCBOb3JtYWwsICJwZXJjZW50IG1lbW9yeSBpbiB1
c2UgdGhlIEdDIGNvbnNpZGVycyBjcml0aWNhbC4gIFRoZSBjb2xsZWN0b3IgaXMgbXVjaCBtb3Jl
IGFnZ3Jlc3NpdmUgYWJvdmUgdGhpcyB0aHJlc2hvbGQiKSBcCisgICAgdihEb3VibGUsIGN1c3Rv
bUZ1bGxHQ0NhbGxiYWNrQmFpbFRocmVzaG9sZCwgLTEuMCwgTm9ybWFsLCAicGVyY2VudCBvZiBt
ZW1vcnkgcGFnZWQgb3V0IGJlZm9yZSB3ZSBiYWlsIG91dCBvZiB0aW1lciBiYXNlZCBGdWxsIEdD
cy4gLTEuMCBtZWFucyB1c2UgKG1heEhlYXBHcm93dGhGYWN0b3IgLSAxKSIpIFwKICAgICB2KERv
dWJsZSwgbWluaW11bU11dGF0b3JVdGlsaXphdGlvbiwgMCwgTm9ybWFsLCBudWxscHRyKSBcCiAg
ICAgdihEb3VibGUsIG1heGltdW1NdXRhdG9yVXRpbGl6YXRpb24sIDAuNywgTm9ybWFsLCBudWxs
cHRyKSBcCiAgICAgdihEb3VibGUsIGVwc2lsb25NdXRhdG9yVXRpbGl6YXRpb24sIDAuMDEsIE5v
cm1hbCwgbnVsbHB0cikgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvRnVuY3Rpb25UcmFp
dHMuaCBiL1NvdXJjZS9XVEYvd3RmL0Z1bmN0aW9uVHJhaXRzLmgKaW5kZXggMzUzM2ZiMmJmM2Ex
MDg2MzBlNDNjOTY3MGJmZTFlOTU5ZGUzNTEyYy4uYjI0MDYyYWE1Y2JmZmNhNjM0MGViZmY5ZGY4
Y2Q1Y2JlMGZmZmQ1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvRnVuY3Rpb25UcmFpdHMu
aAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9GdW5jdGlvblRyYWl0cy5oCkBAIC04MCw2ICs4MCwxNCBA
QCB0ZW1wbGF0ZTx0eXBlbmFtZSBSZXN1bHQsIHR5cGVuYW1lLi4uIEFyZ3M+CiBzdHJ1Y3QgRnVu
Y3Rpb25UcmFpdHM8UmVzdWx0KCopKEFyZ3MuLi4pPiA6IHB1YmxpYyBGdW5jdGlvblRyYWl0czxS
ZXN1bHQoQXJncy4uLik+IHsKIH07CiAKK3RlbXBsYXRlPHR5cGVuYW1lIFJlc3VsdCwgdHlwZW5h
bWUuLi4gQXJncz4KK3N0cnVjdCBGdW5jdGlvblRyYWl0czxSZXN1bHQoQXJncy4uLikgbm9leGNl
cHQ+IDogcHVibGljIEZ1bmN0aW9uVHJhaXRzPFJlc3VsdChBcmdzLi4uKT4geworfTsKKwordGVt
cGxhdGU8dHlwZW5hbWUgUmVzdWx0LCB0eXBlbmFtZS4uLiBBcmdzPgorc3RydWN0IEZ1bmN0aW9u
VHJhaXRzPFJlc3VsdCgqKShBcmdzLi4uKSBub2V4Y2VwdD4gOiBwdWJsaWMgRnVuY3Rpb25UcmFp
dHM8UmVzdWx0KEFyZ3MuLi4pPiB7Cit9OworCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcg
V1RGOjpGdW5jdGlvblRyYWl0czsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9jb20uYXBwbGUuV2ViUHJvY2Vzcy5zYi5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9j
b20uYXBwbGUuV2ViUHJvY2Vzcy5zYi5pbgppbmRleCAwYWVjYWFiZjNiNjBmZWY2NWFiN2E0N2Ux
NzE5MzE4ZmZjZDEwNTc4Li45ZWI2NzQ2NDhmNGI1NzUxN2QzMDM3OWNmNjAyZjlhMWQzNTg1NDQ1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29tLmFwcGxlLldlYlByb2Nl
c3Muc2IuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvbS5hcHBsZS5XZWJQcm9j
ZXNzLnNiLmluCkBAIC0xNzc2LDYgKzE3NzYsNyBAQAogICAgICAgICAoc3lzY2FsbC1udW1iZXIg
U1lTX211bm1hcCkKICAgICAgICAgKHN5c2NhbGwtbnVtYmVyIFNZU19tcHJvdGVjdCkKICAgICAg
ICAgKHN5c2NhbGwtbnVtYmVyIFNZU19tYWR2aXNlKQorICAgICAgICAoc3lzY2FsbC1udW1iZXIg
U1lTX21pbmNvcmUpCiAgICAgICAgIChzeXNjYWxsLW51bWJlciBTWVNfZmNudGwpCiAgICAgICAg
IChzeXNjYWxsLW51bWJlciBTWVNfc2VsZWN0KQogICAgICAgICAoc3lzY2FsbC1udW1iZXIgU1lT
X2ZzeW5jKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426577</attachid>
            <date>2021-04-20 11:58:40 -0700</date>
            <delta_ts>2021-04-20 14:33:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224817-20210420145839.patch</filename>
            <type>text/plain</type>
            <size>14190</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1OTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
OWRjZjNkNGRjODkyYjcyNDhmOGExZDljNmRhZmQ3NmU1ZTAwOGM0Li5lOWQwZTFmNjQ3MDA1OWJh
NTVhYWMxZjcyODQ1NTI1ZjBiNjg3MDFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMS0wNC0yMCAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBGdWxsR0NBY3Rpdml0eUNhbGxiYWNrIHNob3VsZCB1c2UgdGhlIHBl
cmNlbnRhZ2Ugb2YgcGFnZXMgdW5jb21wcmVzc2VkIGluIFJBTSB0byBkZXRlcm1pbmUgZGVmZXJy
YWwuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQ4
MTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSaWdo
dCBub3cgd2UgdHJ5IHRvIGRldGVybWluZSBpZiB0b28gbWFueSBwYWdlcyBhcmUgcGFnZWQgb3V0
IGJ5CisgICAgICAgIGRlcmVmZXJlbmNpbmcgdGhlbSBhbmQgYmFpbGluZyBvdXQgb2YgdGhlIEdD
IGlmIHdlIGdvIG92ZXIgYQorICAgICAgICBkZWFkbGluZS4gV2hpbGUgdGhpcyB3b3JrcyBpZiB0
aGUgb25seSBnb2FsIGlzIHRvIGF2b2lkIGNhdXNpbmcKKyAgICAgICAgZXh0ZW5zaXZlIHRocmFz
aGluZyBvbiBzcGlubnkgZGlza3MgKEhERCksIGl0IGRvZXNuJ3QgcHJldmVudAorICAgICAgICB0
aHJhc2hpbmcgd2hlbiBhY2Nlc3MgdG8gZGlzayBpcyBmYXN0IChlLmcuIFNTRCkuIFRoaXMgaXMg
YmVjYXVzZQorICAgICAgICBvbiBmYXN0IGRpc2tzIHRoZSBwcm9wb3J0aW9uYWwgdGltZSB0byBs
b2FkIHRoZSBtZW1vcnkgZnJvbSBkaXNrCisgICAgICAgIGlzIG11Y2ggbG93ZXIuIEFkZGl0aW9u
YWxseSwgb24gU1NEcyBpbiBwYXJ0aWN1bGFyIHdlIGRvbid0IHdhbnQKKyAgICAgICAgdG8gbG9h
ZCB0aGUgcGFnZXMgaW50byBSQU0gdGhlbiBiYWlsIGFzIHRoYXQgd2lsbCBmb3JjZSBhCisgICAg
ICAgIGRpZmZlcmVudCBwYWdlIG9udG8gZGlzaywgaW5jcmVhc2luZyB3ZWFyLgorCisgICAgICAg
IFRoaXMgcGF0Y2ggc3dpdGNoZXMgdG8gYXNraW5nIHRoZSBPUyBpZiBlYWNoIE1hcmtlZEJsb2Nr
IGlzIHBhZ2VkCisgICAgICAgIG91dC4gVGhlbiBpZiB3ZSBhcmUgb3ZlciBhIHRocmVzaG9sZCB3
ZSB3YWl0IHVudGlsIHdlIHdvdWxkIGhhdmUKKyAgICAgICAgR0MnZCBhbnl3YXkuIFRoaXMgcGF0
Y2ggdXNlcyB0aGUgKG1heFZNR3Jvd3RoRmFjdG9yIC0gMSkgYXMgdGhlCisgICAgICAgIHBlcmNl
bnRhZ2Ugb2YgInNsb3ciIHBhZ2VzIChwYWdlZCBvdXQgb3IgY29tcHJlc3NlZCkgbmVlZGVkIHRv
CisgICAgICAgIGRlZmVyIHRoZSBHQy4gVGhlIGlkZWEgYmVoaW5kIHRoYXQgdGhyZXNob2xkIGlz
IHRoYXQgaWYgd2UgYWRkCisgICAgICAgIHRoYXQgbWFueSBwYWdlcyB0aGVuIHRoZSBzYW1lIG51
bWJlciBvZiBwYWdlcyB3b3VsZCBiZSBmb3JjZWQKKyAgICAgICAgb3V0IG9mIFJBTSBmb3IgdXMg
dG8gZG8gYSBHQyBhbnl3YXkgKGluIHRoZSBsaW1pdCkuCisKKyAgICAgICAgKiBoZWFwL0Jsb2Nr
RGlyZWN0b3J5LmNwcDoKKyAgICAgICAgKEpTQzo6QmxvY2tEaXJlY3Rvcnk6OnVwZGF0ZVBlcmNl
bnRhZ2VPZlBhZ2VkT3V0UGFnZXMpOgorICAgICAgICAoSlNDOjpCbG9ja0RpcmVjdG9yeTo6aXNQ
YWdlZE91dCk6IERlbGV0ZWQuCisgICAgICAgICogaGVhcC9CbG9ja0RpcmVjdG9yeS5oOgorICAg
ICAgICAqIGhlYXAvRnVsbEdDQWN0aXZpdHlDYWxsYmFjay5jcHA6CisgICAgICAgIChKU0M6OkZ1
bGxHQ0FjdGl2aXR5Q2FsbGJhY2s6OmRvQ29sbGVjdGlvbik6CisgICAgICAgICogaGVhcC9IZWFw
LmNwcDoKKyAgICAgICAgKEpTQzo6SGVhcDo6aXNQYWdlZE91dCk6CisgICAgICAgICogaGVhcC9I
ZWFwLmg6CisgICAgICAgICogaGVhcC9NYXJrZWRTcGFjZS5jcHA6CisgICAgICAgIChKU0M6Ok1h
cmtlZFNwYWNlOjppc1BhZ2VkT3V0KToKKyAgICAgICAgKiBoZWFwL01hcmtlZFNwYWNlLmg6Cisg
ICAgICAgICogcnVudGltZS9PcHRpb25zTGlzdC5oOgorCiAyMDIxLTA0LTEzICBNYXJrIExhbSAg
PG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBUaGUgd2F0Y2hkb2cgc2hvdWxkIG5vdCBm
aXJlIHdoZW4gaXQncyBub3QgYWN0aXZlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCA3ODNiOWNiYWUxZTVmNzc2ZGE2NWU0MTcy
ODBlYTQyYWUzNDFiZmUxLi42NzMzNzJjNWMzNzExYWFkZTY3YjdhNzgxY2YwODBmZjdmMWM1NGY3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA0LTIwICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9t
aWxsZXJAYXBwbGUuY29tPgorCisgICAgICAgIEZ1bGxHQ0FjdGl2aXR5Q2FsbGJhY2sgc2hvdWxk
IHVzZSB0aGUgcGVyY2VudGFnZSBvZiBwYWdlcyB1bmNvbXByZXNzZWQgaW4gUkFNIHRvIGRldGVy
bWluZSBkZWZlcnJhbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyNDgxNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEFkZCBhIG5vZXhlY3B0IGZsYXZvciBvZiBGdW5jdGlvblRyYWl0cy4KKworICAgICAg
ICAqIHd0Zi9GdW5jdGlvblRyYWl0cy5oOgorCiAyMDIxLTA0LTEzICBBZGEgQ2hhbiAgPGFkYS5j
aGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQgUGxhdGZvcm1YUlN5c3RlbTo6eHJD
b29yZGluYXRvcigpIGZvciBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA2MzVk
NGU3NTFhZWY1MmZhNTZhNzFkOGEwOTc5YjA5MTE1NWIzNmRkLi40MzM3NjNjMmUwMzlkYmZmNGE3
MjljYzA0ZmZjYmE1Y2VjNzlhOGJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA0
LTIwICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29tPgorCisgICAgICAgIEZ1
bGxHQ0FjdGl2aXR5Q2FsbGJhY2sgc2hvdWxkIHVzZSB0aGUgcGVyY2VudGFnZSBvZiBwYWdlcyB1
bmNvbXByZXNzZWQgaW4gUkFNIHRvIGRldGVybWluZSBkZWZlcnJhbC4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDgxNworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBtaW5jb3JlIHRvIHRoZSBhY2Nl
cHRhYmxlIHN5c2NhbGwgbGlzdC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvY29tLmFwcGxlLldl
YlByb2Nlc3Muc2IuaW46CisKIDIwMjEtMDQtMTQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxl
LmNvbT4KIAogICAgICAgICBbaU9TXSBXS01vdXNlRGV2aWNlT2JzZXJ2ZXIgaXMgY2FsbGluZyBX
ZWJQcm9jZXNzUHJveHk6OnNlbmQoKSBvbiBhIG5vbi1tYWluIHRocmVhZApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuY3BwCmluZGV4IDhkMmI5M2QzNjYxODgx
ZDg0MTU5OTZhOTVmMDBlYTA5MTkyZWRlMjguLjJjZThlYjk1ZTBjYTA4NmNmZWU2MDkwOWRiNTFm
Yjg1MmUwNDljYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2Nr
RGlyZWN0b3J5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9ja0RpcmVj
dG9yeS5jcHAKQEAgLTMxLDYgKzMxLDkgQEAKICNpbmNsdWRlICJTdWJzcGFjZUlubGluZXMuaCIK
ICNpbmNsdWRlICJTdXBlclNhbXBsZXIuaCIKIAorI2luY2x1ZGUgPHd0Zi9GdW5jdGlvblRyYWl0
cy5oPgorI2luY2x1ZGUgPHd0Zi9TaW1wbGVTdGF0cy5oPgorCiBuYW1lc3BhY2UgSlNDIHsKIAog
REVGSU5FX0FMTE9DQVRPUl9XSVRIX0hFQVBfSURFTlRJRklFUihCbG9ja0RpcmVjdG9yeSk7CkBA
IC01MywyMSArNTYsMzUgQEAgdm9pZCBCbG9ja0RpcmVjdG9yeTo6c2V0U3Vic3BhY2UoU3Vic3Bh
Y2UqIHN1YnNwYWNlKQogICAgIG1fc3Vic3BhY2UgPSBzdWJzcGFjZTsKIH0KIAotYm9vbCBCbG9j
a0RpcmVjdG9yeTo6aXNQYWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKQordm9pZCBCbG9j
a0RpcmVjdG9yeTo6dXBkYXRlUGVyY2VudGFnZU9mUGFnZWRPdXRQYWdlcyhTaW1wbGVTdGF0cyYg
c3RhdHMpCiB7Ci0gICAgdW5zaWduZWQgaXRlcnNTaW5jZUxhc3RUaW1lQ2hlY2sgPSAwOwotICAg
IGZvciAoYXV0byogYmxvY2sgOiBtX2Jsb2NrcykgewotICAgICAgICBpZiAoYmxvY2spCi0gICAg
ICAgICAgICBibG9jay0+YmxvY2soKS5wb3B1bGF0ZVBhZ2UoKTsKLSAgICAgICAgKytpdGVyc1Np
bmNlTGFzdFRpbWVDaGVjazsKLSAgICAgICAgaWYgKGl0ZXJzU2luY2VMYXN0VGltZUNoZWNrID49
IEhlYXA6OnNfdGltZUNoZWNrUmVzb2x1dGlvbikgewotICAgICAgICAgICAgTW9ub3RvbmljVGlt
ZSBjdXJyZW50VGltZSA9IE1vbm90b25pY1RpbWU6Om5vdygpOwotICAgICAgICAgICAgaWYgKGN1
cnJlbnRUaW1lID4gZGVhZGxpbmUpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAg
ICAgICAgICBpdGVyc1NpbmNlTGFzdFRpbWVDaGVjayA9IDA7Ci0gICAgICAgIH0KKyAgICAvLyBG
SVhNRTogV2Ugc2hvdWxkIGZpZ3VyZSBvdXQgYSBzb2x1dGlvbiBmb3IgV2luZG93cy4KKyNpZiBP
UyhVTklYKQorICAgIHNpemVfdCBwYWdlU2l6ZSA9IFdURjo6cGFnZVNpemUoKTsKKyAgICBBU1NF
UlQoIShNYXJrZWRCbG9jazo6YmxvY2tTaXplICUgcGFnZVNpemUpKTsKKyAgICBhdXRvIG51bWJl
ck9mUGFnZXNJbk1hcmtlZEJsb2NrID0gTWFya2VkQmxvY2s6OmJsb2NrU2l6ZSAvIHBhZ2VTaXpl
OworICAgIC8vIEZvciBzb21lIHJlYXNvbiB0aGlzIGNhbiBiZSB1bnNpZ25lZCBjaGFyIG9yIGNo
YXIgb24gZGlmZmVyZW50IE9TZXMuLi4KKyAgICB1c2luZyBNaW5jb3JlQnVmZmVyVHlwZSA9IHN0
ZDo6cmVtb3ZlX3BvaW50ZXJfdDxGdW5jdGlvblRyYWl0czxkZWNsdHlwZShtaW5jb3JlKT46OkFy
Z3VtZW50VHlwZTwyPj47CisgICAgc3RhdGljX2Fzc2VydChzdGQ6OmlzX3NhbWVfdjxzdGQ6Om1h
a2VfdW5zaWduZWRfdDxNaW5jb3JlQnVmZmVyVHlwZT4sIHVuc2lnbmVkIGNoYXI+KTsKKyAgICAv
LyBwYWdlU2l6ZSBpcyBlZmZlY3RpdmVseSBhIGNvbnN0YW50IHNvIHRoaXMgaXNuJ3QgcmVhbGx5
IHZhcmlhYmxlLgorICAgIElHTk9SRV9DTEFOR19XQVJOSU5HU19CRUdJTigidmxhIikKKyAgICBN
aW5jb3JlQnVmZmVyVHlwZSBwYWdlZEJpdHNbbnVtYmVyT2ZQYWdlc0luTWFya2VkQmxvY2tdOwor
ICAgIElHTk9SRV9DTEFOR19XQVJOSU5HU19FTkQKKworICAgIGZvciAoYXV0byogaGFuZGxlIDog
bV9ibG9ja3MpIHsKKyAgICAgICAgaWYgKCFoYW5kbGUpCisgICAgICAgICAgICBjb250aW51ZTsK
KworICAgICAgICBhdXRvIG1hcmtlZEJsb2NrU2l6ZUluQnl0ZXMgPSBzdGF0aWNfY2FzdDxzaXpl
X3Q+KHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KGhhbmRsZS0+ZW5kKCkpIC0gcmVpbnRlcnByZXRf
Y2FzdDxjaGFyKj4oaGFuZGxlLT5zdGFydCgpKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKG1h
cmtlZEJsb2NrU2l6ZUluQnl0ZXMgLyBwYWdlU2l6ZSA8PSBudW1iZXJPZlBhZ2VzSW5NYXJrZWRC
bG9jayk7CisgICAgICAgIC8vIEZJWE1FOiBXZSBjb3VsZCBjYWNoZSB0aGlzIGluIGJ1bGsgKGUu
Zy4gMjUgTUIgY2h1bmtzKSBidXQgd2UgaGF2ZW4ndCBzZWVuIGFueSBkYXRhIHRoYXQgaXQgYWN0
dWFsbHkgbWF0dGVycy4KKyAgICAgICAgYXV0byByZXN1bHQgPSBtaW5jb3JlKGhhbmRsZS0+c3Rh
cnQoKSwgbWFya2VkQmxvY2tTaXplSW5CeXRlcywgcGFnZWRCaXRzKTsKKyAgICAgICAgUkVMRUFT
RV9BU1NFUlQoIXJlc3VsdCk7CisgICAgICAgIGNvbnN0ZXhwciB1bnNpZ25lZCBwYWdlSXNSZXNp
ZGVudEFuZE5vdENvbXByZXNzZWQgPSAxOworICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBp
IDwgbnVtYmVyT2ZQYWdlc0luTWFya2VkQmxvY2s7ICsraSkKKyAgICAgICAgICAgIHN0YXRzLmFk
ZCghKHBhZ2VkQml0c1tpXSAmIHBhZ2VJc1Jlc2lkZW50QW5kTm90Q29tcHJlc3NlZCkpOwogICAg
IH0KLSAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKIH0KIAogTWFya2VkQmxvY2s6OkhhbmRsZSog
QmxvY2tEaXJlY3Rvcnk6OmZpbmRFbXB0eUJsb2NrVG9TdGVhbCgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9ja0RpcmVjdG9yeS5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuaAppbmRleCA2NzQyYzMxNThiOTYxNjUyNGEyYjBh
NjhjYWQ0MDE2MjQ0N2VlYTQxLi5hZDdkZGEwMWIyOWU4NzVlYWJkYjU3MmY1YjRlYTIwYWQyNGIx
ZTYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9ja0RpcmVjdG9y
eS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2NrRGlyZWN0b3J5LmgKQEAg
LTM3LDYgKzM3LDEwIEBACiAjaW5jbHVkZSA8d3RmL1NoYXJlZFRhc2suaD4KICNpbmNsdWRlIDx3
dGYvVmVjdG9yLmg+CiAKK25hbWVzcGFjZSBXVEYgeworY2xhc3MgU2ltcGxlU3RhdHM7Cit9CisK
IG5hbWVzcGFjZSBKU0MgewogCiBjbGFzcyBHQ0RlZmVycmFsQ29udGV4dDsKQEAgLTg1LDcgKzg5
LDcgQEAgcHVibGljOgogICAgIHZvaWQgYWRkQmxvY2soTWFya2VkQmxvY2s6OkhhbmRsZSopOwog
ICAgIHZvaWQgcmVtb3ZlQmxvY2soTWFya2VkQmxvY2s6OkhhbmRsZSopOwogCi0gICAgYm9vbCBp
c1BhZ2VkT3V0KE1vbm90b25pY1RpbWUgZGVhZGxpbmUpOworICAgIHZvaWQgdXBkYXRlUGVyY2Vu
dGFnZU9mUGFnZWRPdXRQYWdlcyhXVEY6OlNpbXBsZVN0YXRzJik7CiAgICAgCiAgICAgTG9jayYg
Yml0dmVjdG9yTG9jaygpIHsgcmV0dXJuIG1fYml0dmVjdG9yTG9jazsgfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9GdWxsR0NBY3Rpdml0eUNhbGxiYWNrLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Z1bGxHQ0FjdGl2aXR5Q2FsbGJhY2suY3BwCmlu
ZGV4IDI0ODgwMmI5ZDRjODQxNTdlNTZhZTAzZTIwNzA5MWI5ZDQzOGU1OWYuLmY1NGQyZDI2Yzlj
ZDM3YjM4NzMyNzZhZDA3MTA2NmU1MGMzZWI0OWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL0Z1bGxHQ0FjdGl2aXR5Q2FsbGJhY2suY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL0Z1bGxHQ0FjdGl2aXR5Q2FsbGJhY2suY3BwCkBAIC0zMCwxMCArMzAs
NiBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQotY29u
c3QgY29uc3RleHByIFNlY29uZHMgcGFnaW5nVGltZU91dCB7IDEwMF9tcyB9OyAvLyBUaW1lIGlu
IHNlY29uZHMgdG8gYWxsb3cgb3Bwb3J0dW5pc3RpYyB0aW1lciB0byBpdGVyYXRlIG92ZXIgYWxs
IGJsb2NrcyB0byBzZWUgaWYgdGhlIEhlYXAgaXMgcGFnZWQgb3V0LgotI2VuZGlmCi0KIEZ1bGxH
Q0FjdGl2aXR5Q2FsbGJhY2s6OkZ1bGxHQ0FjdGl2aXR5Q2FsbGJhY2soSGVhcCogaGVhcCkKICAg
ICA6IEdDQWN0aXZpdHlDYWxsYmFjayhoZWFwKQogewpAQCAtNDQsMTEgKzQwLDExIEBAIHZvaWQg
RnVsbEdDQWN0aXZpdHlDYWxsYmFjazo6ZG9Db2xsZWN0aW9uKFZNJiB2bSkKICAgICBIZWFwJiBo
ZWFwID0gdm0uaGVhcDsKICAgICBtX2RpZEdDUmVjZW50bHkgPSBmYWxzZTsKIAotI2lmICFQTEFU
Rk9STShJT1NfRkFNSUxZKQorI2lmICFQTEFURk9STShJT1NfRkFNSUxZKSB8fCBQTEFURk9STShN
QUNDQVRBTFlTVCkKICAgICBNb25vdG9uaWNUaW1lIHN0YXJ0VGltZSA9IE1vbm90b25pY1RpbWU6
Om5vdygpOwotICAgIGlmIChoZWFwLmlzUGFnZWRPdXQoc3RhcnRUaW1lICsgcGFnaW5nVGltZU91
dCkpIHsKKyAgICBpZiAoaGVhcC5pc1BhZ2VkT3V0KCkpIHsKICAgICAgICAgY2FuY2VsKCk7Ci0g
ICAgICAgIGhlYXAuaW5jcmVhc2VMYXN0RnVsbEdDTGVuZ3RoKHBhZ2luZ1RpbWVPdXQpOworICAg
ICAgICBoZWFwLmluY3JlYXNlTGFzdEZ1bGxHQ0xlbmd0aChNb25vdG9uaWNUaW1lOjpub3coKSAt
IHN0YXJ0VGltZSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAjZW5kaWYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvSGVhcC5jcHAKaW5kZXggYjI2ZTkxM2QyMmFmMDBmZTJjYWY2MWI2N2NjNzc5Nzg5
YmQyY2RjOS4uODFhNzFhMGRjN2ZmNzMwY2QxYzlmYWY3YzhjOGJkZWNjMDI1OTllMyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5jcHAKQEAgLTM1NSw5ICszNTUsOSBAQCBIZWFwOjp+SGVh
cCgpCiAgICAgICAgIFdlYWtCbG9jazo6ZGVzdHJveSgqdGhpcywgYmxvY2spOwogfQogCi1ib29s
IEhlYXA6OmlzUGFnZWRPdXQoTW9ub3RvbmljVGltZSBkZWFkbGluZSkKK2Jvb2wgSGVhcDo6aXNQ
YWdlZE91dCgpCiB7Ci0gICAgcmV0dXJuIG1fb2JqZWN0U3BhY2UuaXNQYWdlZE91dChkZWFkbGlu
ZSk7CisgICAgcmV0dXJuIG1fb2JqZWN0U3BhY2UuaXNQYWdlZE91dCgpOwogfQogCiB2b2lkIEhl
YXA6OmR1bXBIZWFwU3RhdGlzdGljc0F0Vk1EZXN0cnVjdGlvbigpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVh
cC9IZWFwLmgKaW5kZXggMDQ3MThiZWM0NzIxYzJkZGQ5NzEyODJkNjFhNzRkZGM2ZGIwZWVhYS4u
MzczZWJlYjVhZmRmYjM2MzdjYzhkMzE4OTc5ZTRhMTU2NDFlYjE0OSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9oZWFwL0hlYXAuaApAQCAtMjcwLDcgKzI3MCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGRlbGV0
ZUFsbFVubGlua2VkQ29kZUJsb2NrcyhEZWxldGVBbGxDb2RlRWZmb3J0KTsKIAogICAgIHZvaWQg
ZGlkQWxsb2NhdGUoc2l6ZV90KTsKLSAgICBib29sIGlzUGFnZWRPdXQoTW9ub3RvbmljVGltZSBk
ZWFkbGluZSk7CisgICAgYm9vbCBpc1BhZ2VkT3V0KCk7CiAgICAgCiAgICAgY29uc3QgSklUU3R1
YlJvdXRpbmVTZXQmIGppdFN0dWJSb3V0aW5lcygpIHsgcmV0dXJuICptX2ppdFN0dWJSb3V0aW5l
czsgfQogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2Vk
U3BhY2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuY3BwCmlu
ZGV4IDI3Y2UyZWY1NTI2YmVkNjhhYzA4YTc2MzRhOTk2M2EzMTBiODYwMGUuLmYzMzMyNjE0Yzhh
MzQxNDI5YjVjYmRkZTgwOTEzMWU4NmJmNjFlZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9NYXJrZWRTcGFjZS5jcHAKQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNsdWRlICJNYXJrZWRC
bG9ja0lubGluZXMuaCIKICNpbmNsdWRlICJNYXJrZWRTcGFjZUlubGluZXMuaCIKICNpbmNsdWRl
IDx3dGYvTGlzdER1bXAuaD4KKyNpbmNsdWRlIDx3dGYvU2ltcGxlU3RhdHMuaD4KIAogbmFtZXNw
YWNlIEpTQyB7CiAKQEAgLTM1OCwxOSArMzU5LDE5IEBAIHZvaWQgTWFya2VkU3BhY2U6OnJlc3Vt
ZUFsbG9jYXRpbmcoKQogICAgIC8vIE5vdGhpbmcgdG8gZG8gZm9yIFByZWNpc2VBbGxvY2F0aW9u
cy4KIH0KIAotYm9vbCBNYXJrZWRTcGFjZTo6aXNQYWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRs
aW5lKQorYm9vbCBNYXJrZWRTcGFjZTo6aXNQYWdlZE91dCgpCiB7Ci0gICAgYm9vbCByZXN1bHQg
PSBmYWxzZTsKKyAgICBTaW1wbGVTdGF0cyBwYWdlZE91dFBhZ2VzU3RhdHM7CisKICAgICBmb3JF
YWNoRGlyZWN0b3J5KAogICAgICAgICBbJl0gKEJsb2NrRGlyZWN0b3J5JiBkaXJlY3RvcnkpIC0+
IEl0ZXJhdGlvblN0YXR1cyB7Ci0gICAgICAgICAgICBpZiAoZGlyZWN0b3J5LmlzUGFnZWRPdXQo
ZGVhZGxpbmUpKSB7Ci0gICAgICAgICAgICAgICAgcmVzdWx0ID0gdHJ1ZTsKLSAgICAgICAgICAg
ICAgICByZXR1cm4gSXRlcmF0aW9uU3RhdHVzOjpEb25lOwotICAgICAgICAgICAgfQorICAgICAg
ICAgICAgZGlyZWN0b3J5LnVwZGF0ZVBlcmNlbnRhZ2VPZlBhZ2VkT3V0UGFnZXMocGFnZWRPdXRQ
YWdlc1N0YXRzKTsKICAgICAgICAgICAgIHJldHVybiBJdGVyYXRpb25TdGF0dXM6OkNvbnRpbnVl
OwogICAgICAgICB9KTsKICAgICAvLyBGSVhNRTogQ29uc2lkZXIgdGFraW5nIFByZWNpc2VBbGxv
Y2F0aW9ucyBpbnRvIGFjY291bnQgaGVyZS4KLSAgICByZXR1cm4gcmVzdWx0OworICAgIGRvdWJs
ZSBtYXhIZWFwR3Jvd3RoRmFjdG9yID0gVk06OmlzSW5NaW5pTW9kZSgpID8gT3B0aW9uczo6bWlu
aVZNSGVhcEdyb3d0aEZhY3RvcigpIDogT3B0aW9uczo6bGFyZ2VIZWFwR3Jvd3RoRmFjdG9yKCk7
CisgICAgZG91YmxlIGJhaWxvdXRQZXJjZW50YWdlID0gT3B0aW9uczo6Y3VzdG9tRnVsbEdDQ2Fs
bGJhY2tCYWlsVGhyZXNob2xkKCkgPT0gLTEuMCA/IG1heEhlYXBHcm93dGhGYWN0b3IgLSAxIDog
T3B0aW9uczo6Y3VzdG9tRnVsbEdDQ2FsbGJhY2tCYWlsVGhyZXNob2xkKCk7CisgICAgcmV0dXJu
IHBhZ2VkT3V0UGFnZXNTdGF0cy5tZWFuKCkgPiBwYWdlZE91dFBhZ2VzU3RhdHMuY291bnQoKSAq
IGJhaWxvdXRQZXJjZW50YWdlOwogfQogCiB2b2lkIE1hcmtlZFNwYWNlOjpmcmVlQmxvY2soTWFy
a2VkQmxvY2s6OkhhbmRsZSogYmxvY2spCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaGVhcC9NYXJrZWRTcGFjZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2Vk
U3BhY2UuaAppbmRleCA2YjQzN2MyZTFmNDQ4NjM0NGE2ZTgwZjQyZDEzNzIyMDc3MTA3ZmFhLi41
YmU1MWRlN2U0Y2Y5OWIzZDZmNDc3NzdmMDBiNmQyYTk3YWI4MDRmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRTcGFjZS5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmgKQEAgLTE0OCw3ICsxNDgsNyBAQCBwdWJsaWM6CiAg
ICAgc2l6ZV90IHNpemUoKTsKICAgICBzaXplX3QgY2FwYWNpdHkoKTsKIAotICAgIGJvb2wgaXNQ
YWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKTsKKyAgICBib29sIGlzUGFnZWRPdXQoKTsK
ICAgICAKICAgICBIZWFwVmVyc2lvbiBtYXJraW5nVmVyc2lvbigpIGNvbnN0IHsgcmV0dXJuIG1f
bWFya2luZ1ZlcnNpb247IH0KICAgICBIZWFwVmVyc2lvbiBuZXdseUFsbG9jYXRlZFZlcnNpb24o
KSBjb25zdCB7IHJldHVybiBtX25ld2x5QWxsb2NhdGVkVmVyc2lvbjsgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKaW5kZXggMTVhMDZlYjY3MWM4NGViYjRk
MGMzYTM0YjEwYTg1NDBkYTMwNDNjYi4uYWNkZTRmMGMwMTE2NmU5YzAwNzVlMWE0NWM1MTMzOGJm
NTJiNTVjYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9u
c0xpc3QuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zTGlzdC5o
CkBAIC0yMDQsNiArMjA0LDcgQEAgY29uc3RleHByIHVuc2lnbmVkIGpzY1Jlc2VydmVkWm9uZVNp
emUgPSA2NCAqIEtCOwogICAgIHYoRG91YmxlLCBsYXJnZUhlYXBHcm93dGhGYWN0b3IsIDEuMjQs
IE5vcm1hbCwgbnVsbHB0cikgXAogICAgIHYoRG91YmxlLCBtaW5pVk1IZWFwR3Jvd3RoRmFjdG9y
LCAxLjI3LCBOb3JtYWwsIG51bGxwdHIpIFwKICAgICB2KERvdWJsZSwgY3JpdGljYWxHQ01lbW9y
eVRocmVzaG9sZCwgMC44MCwgTm9ybWFsLCAicGVyY2VudCBtZW1vcnkgaW4gdXNlIHRoZSBHQyBj
b25zaWRlcnMgY3JpdGljYWwuICBUaGUgY29sbGVjdG9yIGlzIG11Y2ggbW9yZSBhZ2dyZXNzaXZl
IGFib3ZlIHRoaXMgdGhyZXNob2xkIikgXAorICAgIHYoRG91YmxlLCBjdXN0b21GdWxsR0NDYWxs
YmFja0JhaWxUaHJlc2hvbGQsIC0xLjAsIE5vcm1hbCwgInBlcmNlbnQgb2YgbWVtb3J5IHBhZ2Vk
IG91dCBiZWZvcmUgd2UgYmFpbCBvdXQgb2YgdGltZXIgYmFzZWQgRnVsbCBHQ3MuIC0xLjAgbWVh
bnMgdXNlIChtYXhIZWFwR3Jvd3RoRmFjdG9yIC0gMSkiKSBcCiAgICAgdihEb3VibGUsIG1pbmlt
dW1NdXRhdG9yVXRpbGl6YXRpb24sIDAsIE5vcm1hbCwgbnVsbHB0cikgXAogICAgIHYoRG91Ymxl
LCBtYXhpbXVtTXV0YXRvclV0aWxpemF0aW9uLCAwLjcsIE5vcm1hbCwgbnVsbHB0cikgXAogICAg
IHYoRG91YmxlLCBlcHNpbG9uTXV0YXRvclV0aWxpemF0aW9uLCAwLjAxLCBOb3JtYWwsIG51bGxw
dHIpIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0Z1bmN0aW9uVHJhaXRzLmggYi9Tb3Vy
Y2UvV1RGL3d0Zi9GdW5jdGlvblRyYWl0cy5oCmluZGV4IDM1MzNmYjJiZjNhMTA4NjMwZTQzYzk2
NzBiZmUxZTk1OWRlMzUxMmMuLmIyNDA2MmFhNWNiZmZjYTYzNDBlYmZmOWRmOGNkNWNiZTBmZmZk
NTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0Z1bmN0aW9uVHJhaXRzLmgKKysrIGIvU291
cmNlL1dURi93dGYvRnVuY3Rpb25UcmFpdHMuaApAQCAtODAsNiArODAsMTQgQEAgdGVtcGxhdGU8
dHlwZW5hbWUgUmVzdWx0LCB0eXBlbmFtZS4uLiBBcmdzPgogc3RydWN0IEZ1bmN0aW9uVHJhaXRz
PFJlc3VsdCgqKShBcmdzLi4uKT4gOiBwdWJsaWMgRnVuY3Rpb25UcmFpdHM8UmVzdWx0KEFyZ3Mu
Li4pPiB7CiB9OwogCit0ZW1wbGF0ZTx0eXBlbmFtZSBSZXN1bHQsIHR5cGVuYW1lLi4uIEFyZ3M+
CitzdHJ1Y3QgRnVuY3Rpb25UcmFpdHM8UmVzdWx0KEFyZ3MuLi4pIG5vZXhjZXB0PiA6IHB1Ymxp
YyBGdW5jdGlvblRyYWl0czxSZXN1bHQoQXJncy4uLik+IHsKK307CisKK3RlbXBsYXRlPHR5cGVu
YW1lIFJlc3VsdCwgdHlwZW5hbWUuLi4gQXJncz4KK3N0cnVjdCBGdW5jdGlvblRyYWl0czxSZXN1
bHQoKikoQXJncy4uLikgbm9leGNlcHQ+IDogcHVibGljIEZ1bmN0aW9uVHJhaXRzPFJlc3VsdChB
cmdzLi4uKT4geworfTsKKwogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6RnVuY3Rp
b25UcmFpdHM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29tLmFwcGxl
LldlYlByb2Nlc3Muc2IuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29tLmFwcGxlLldl
YlByb2Nlc3Muc2IuaW4KaW5kZXggMGFlY2FhYmYzYjYwZmVmNjVhYjdhNDdlMTcxOTMxOGZmY2Qx
MDU3OC4uOWViNjc0NjQ4ZjRiNTc1MTdkMzAzNzljZjYwMmY5YTFkMzU4NTQ0NSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvbS5hcHBsZS5XZWJQcm9jZXNzLnNiLmluCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb20uYXBwbGUuV2ViUHJvY2Vzcy5zYi5pbgpA
QCAtMTc3Niw2ICsxNzc2LDcgQEAKICAgICAgICAgKHN5c2NhbGwtbnVtYmVyIFNZU19tdW5tYXAp
CiAgICAgICAgIChzeXNjYWxsLW51bWJlciBTWVNfbXByb3RlY3QpCiAgICAgICAgIChzeXNjYWxs
LW51bWJlciBTWVNfbWFkdmlzZSkKKyAgICAgICAgKHN5c2NhbGwtbnVtYmVyIFNZU19taW5jb3Jl
KQogICAgICAgICAoc3lzY2FsbC1udW1iZXIgU1lTX2ZjbnRsKQogICAgICAgICAoc3lzY2FsbC1u
dW1iZXIgU1lTX3NlbGVjdCkKICAgICAgICAgKHN5c2NhbGwtbnVtYmVyIFNZU19mc3luYykK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426593</attachid>
            <date>2021-04-20 14:33:16 -0700</date>
            <delta_ts>2021-04-20 15:42:15 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-224817-20210420173315.patch</filename>
            <type>text/plain</type>
            <size>14279</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1OTQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
OWRjZjNkNGRjODkyYjcyNDhmOGExZDljNmRhZmQ3NmU1ZTAwOGM0Li5mZGMwMjg2Y2NiZDAyZWFk
MjBkYjZjNmI4ZjZiNWIzMWI0ZDg1ZmMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMS0wNC0yMCAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBGdWxsR0NBY3Rpdml0eUNhbGxiYWNrIHNob3VsZCB1c2UgdGhlIHBl
cmNlbnRhZ2Ugb2YgcGFnZXMgdW5jb21wcmVzc2VkIGluIFJBTSB0byBkZXRlcm1pbmUgZGVmZXJy
YWwuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQ4
MTcKKworICAgICAgICBSZXZpZXdlZCBieSBGaWxpcCBQaXpsby4KKworICAgICAgICBSaWdodCBu
b3cgd2UgdHJ5IHRvIGRldGVybWluZSBpZiB0b28gbWFueSBwYWdlcyBhcmUgcGFnZWQgb3V0IGJ5
CisgICAgICAgIGRlcmVmZXJlbmNpbmcgdGhlbSBhbmQgYmFpbGluZyBvdXQgb2YgdGhlIEdDIGlm
IHdlIGdvIG92ZXIgYQorICAgICAgICBkZWFkbGluZS4gV2hpbGUgdGhpcyB3b3JrcyBpZiB0aGUg
b25seSBnb2FsIGlzIHRvIGF2b2lkIGNhdXNpbmcKKyAgICAgICAgZXh0ZW5zaXZlIHRocmFzaGlu
ZyBvbiBzcGlubnkgZGlza3MgKEhERCksIGl0IGRvZXNuJ3QgcHJldmVudAorICAgICAgICB0aHJh
c2hpbmcgd2hlbiBhY2Nlc3MgdG8gZGlzayBpcyBmYXN0IChlLmcuIFNTRCkuIFRoaXMgaXMgYmVj
YXVzZQorICAgICAgICBvbiBmYXN0IGRpc2tzIHRoZSBwcm9wb3J0aW9uYWwgdGltZSB0byBsb2Fk
IHRoZSBtZW1vcnkgZnJvbSBkaXNrCisgICAgICAgIGlzIG11Y2ggbG93ZXIuIEFkZGl0aW9uYWxs
eSwgb24gU1NEcyBpbiBwYXJ0aWN1bGFyIHdlIGRvbid0IHdhbnQKKyAgICAgICAgdG8gbG9hZCB0
aGUgcGFnZXMgaW50byBSQU0gdGhlbiBiYWlsIGFzIHRoYXQgd2lsbCBmb3JjZSBhCisgICAgICAg
IGRpZmZlcmVudCBwYWdlIG9udG8gZGlzaywgaW5jcmVhc2luZyB3ZWFyLgorCisgICAgICAgIFRo
aXMgcGF0Y2ggc3dpdGNoZXMgdG8gYXNraW5nIHRoZSBPUyBpZiBlYWNoIE1hcmtlZEJsb2NrIGlz
IHBhZ2VkCisgICAgICAgIG91dC4gVGhlbiBpZiB3ZSBhcmUgb3ZlciBhIHRocmVzaG9sZCB3ZSB3
YWl0IHVudGlsIHdlIHdvdWxkIGhhdmUKKyAgICAgICAgR0MnZCBhbnl3YXkuIFRoaXMgcGF0Y2gg
dXNlcyB0aGUgKG1heFZNR3Jvd3RoRmFjdG9yIC0gMSkgYXMgdGhlCisgICAgICAgIHBlcmNlbnRh
Z2Ugb2YgInNsb3ciIHBhZ2VzIChwYWdlZCBvdXQgb3IgY29tcHJlc3NlZCkgbmVlZGVkIHRvCisg
ICAgICAgIGRlZmVyIHRoZSBHQy4gVGhlIGlkZWEgYmVoaW5kIHRoYXQgdGhyZXNob2xkIGlzIHRo
YXQgaWYgd2UgYWRkCisgICAgICAgIHRoYXQgbWFueSBwYWdlcyB0aGVuIHRoZSBzYW1lIG51bWJl
ciBvZiBwYWdlcyB3b3VsZCBiZSBmb3JjZWQKKyAgICAgICAgb3V0IG9mIFJBTSBmb3IgdXMgdG8g
ZG8gYSBHQyBhbnl3YXkgKGluIHRoZSBsaW1pdCkuCisKKyAgICAgICAgKiBoZWFwL0Jsb2NrRGly
ZWN0b3J5LmNwcDoKKyAgICAgICAgKEpTQzo6QmxvY2tEaXJlY3Rvcnk6OnVwZGF0ZVBlcmNlbnRh
Z2VPZlBhZ2VkT3V0UGFnZXMpOgorICAgICAgICAoSlNDOjpCbG9ja0RpcmVjdG9yeTo6aXNQYWdl
ZE91dCk6IERlbGV0ZWQuCisgICAgICAgICogaGVhcC9CbG9ja0RpcmVjdG9yeS5oOgorICAgICAg
ICAqIGhlYXAvRnVsbEdDQWN0aXZpdHlDYWxsYmFjay5jcHA6CisgICAgICAgIChKU0M6OkZ1bGxH
Q0FjdGl2aXR5Q2FsbGJhY2s6OmRvQ29sbGVjdGlvbik6CisgICAgICAgICogaGVhcC9IZWFwLmNw
cDoKKyAgICAgICAgKEpTQzo6SGVhcDo6aXNQYWdlZE91dCk6CisgICAgICAgICogaGVhcC9IZWFw
Lmg6CisgICAgICAgICogaGVhcC9NYXJrZWRTcGFjZS5jcHA6CisgICAgICAgIChKU0M6Ok1hcmtl
ZFNwYWNlOjppc1BhZ2VkT3V0KToKKyAgICAgICAgKiBoZWFwL01hcmtlZFNwYWNlLmg6CisgICAg
ICAgICogcnVudGltZS9PcHRpb25zTGlzdC5oOgorCiAyMDIxLTA0LTEzICBNYXJrIExhbSAgPG1h
cmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBUaGUgd2F0Y2hkb2cgc2hvdWxkIG5vdCBmaXJl
IHdoZW4gaXQncyBub3QgYWN0aXZlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCA3ODNiOWNiYWUxZTVmNzc2ZGE2NWU0MTcyODBl
YTQyYWUzNDFiZmUxLi5lODQ5YWU0ODAwZTdiZjhmM2E2ZjljODVjMDVlZTExM2RhOGFjYzc4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV1RGL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA0LTIwICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxs
ZXJAYXBwbGUuY29tPgorCisgICAgICAgIEZ1bGxHQ0FjdGl2aXR5Q2FsbGJhY2sgc2hvdWxkIHVz
ZSB0aGUgcGVyY2VudGFnZSBvZiBwYWdlcyB1bmNvbXByZXNzZWQgaW4gUkFNIHRvIGRldGVybWlu
ZSBkZWZlcnJhbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyNDgxNworCisgICAgICAgIFJldmlld2VkIGJ5IEZpbGlwIFBpemxvLgorCisgICAgICAg
IEFkZCBhIG5vZXhjZXB0IGZsYXZvciBvZiBGdW5jdGlvblRyYWl0cy4gT24gTGludXggbWluY29y
ZSAoYW5kIHByb2JhYmx5IG90aGVyIHN5c2NhbGxzKSBhcmUgbWFya2VkIG5vZXhjZXB0IHNvIHRo
ZSBleGlzdGluZyBvdmVybG9hZHMgZG9uJ3Qgd29yay4KKworICAgICAgICAqIHd0Zi9GdW5jdGlv
blRyYWl0cy5oOgorCiAyMDIxLTA0LTEzICBBZGEgQ2hhbiAgPGFkYS5jaGFuQGFwcGxlLmNvbT4K
IAogICAgICAgICBJbXBsZW1lbnQgUGxhdGZvcm1YUlN5c3RlbTo6eHJDb29yZGluYXRvcigpIGZv
ciBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA2MzVkNGU3NTFhZWY1MmZhNTZh
NzFkOGEwOTc5YjA5MTE1NWIzNmRkLi5hMGNmZDdlN2ZlZjY2YzgxY2MxZDYxMmVjNWRiNzZhOGI1
YTM5N2I3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA0LTIwICBLZWl0aCBNaWxs
ZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29tPgorCisgICAgICAgIEZ1bGxHQ0FjdGl2aXR5Q2Fs
bGJhY2sgc2hvdWxkIHVzZSB0aGUgcGVyY2VudGFnZSBvZiBwYWdlcyB1bmNvbXByZXNzZWQgaW4g
UkFNIHRvIGRldGVybWluZSBkZWZlcnJhbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyNDgxNworCisgICAgICAgIFJldmlld2VkIGJ5IEZpbGlwIFBp
emxvLgorCisgICAgICAgIEFkZCBtaW5jb3JlIHRvIHRoZSBhY2NlcHRhYmxlIHN5c2NhbGwgbGlz
dC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvY29tLmFwcGxlLldlYlByb2Nlc3Muc2IuaW46CisK
IDIwMjEtMDQtMTQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBb
aU9TXSBXS01vdXNlRGV2aWNlT2JzZXJ2ZXIgaXMgY2FsbGluZyBXZWJQcm9jZXNzUHJveHk6OnNl
bmQoKSBvbiBhIG5vbi1tYWluIHRocmVhZApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
QmxvY2tEaXJlY3RvcnkuY3BwCmluZGV4IDhkMmI5M2QzNjYxODgxZDg0MTU5OTZhOTVmMDBlYTA5
MTkyZWRlMjguLjIzMTg1YWMwYWVjZDJjYjI0ODA5N2ZiODczOGRkMWZmNWU4MGM1OTAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2NrRGlyZWN0b3J5LmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9ja0RpcmVjdG9yeS5jcHAKQEAgLTMxLDYg
KzMxLDkgQEAKICNpbmNsdWRlICJTdWJzcGFjZUlubGluZXMuaCIKICNpbmNsdWRlICJTdXBlclNh
bXBsZXIuaCIKIAorI2luY2x1ZGUgPHd0Zi9GdW5jdGlvblRyYWl0cy5oPgorI2luY2x1ZGUgPHd0
Zi9TaW1wbGVTdGF0cy5oPgorCiBuYW1lc3BhY2UgSlNDIHsKIAogREVGSU5FX0FMTE9DQVRPUl9X
SVRIX0hFQVBfSURFTlRJRklFUihCbG9ja0RpcmVjdG9yeSk7CkBAIC01MywyMSArNTYsMzUgQEAg
dm9pZCBCbG9ja0RpcmVjdG9yeTo6c2V0U3Vic3BhY2UoU3Vic3BhY2UqIHN1YnNwYWNlKQogICAg
IG1fc3Vic3BhY2UgPSBzdWJzcGFjZTsKIH0KIAotYm9vbCBCbG9ja0RpcmVjdG9yeTo6aXNQYWdl
ZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKQordm9pZCBCbG9ja0RpcmVjdG9yeTo6dXBkYXRl
UGVyY2VudGFnZU9mUGFnZWRPdXRQYWdlcyhTaW1wbGVTdGF0cyYgc3RhdHMpCiB7Ci0gICAgdW5z
aWduZWQgaXRlcnNTaW5jZUxhc3RUaW1lQ2hlY2sgPSAwOwotICAgIGZvciAoYXV0byogYmxvY2sg
OiBtX2Jsb2NrcykgewotICAgICAgICBpZiAoYmxvY2spCi0gICAgICAgICAgICBibG9jay0+Ymxv
Y2soKS5wb3B1bGF0ZVBhZ2UoKTsKLSAgICAgICAgKytpdGVyc1NpbmNlTGFzdFRpbWVDaGVjazsK
LSAgICAgICAgaWYgKGl0ZXJzU2luY2VMYXN0VGltZUNoZWNrID49IEhlYXA6OnNfdGltZUNoZWNr
UmVzb2x1dGlvbikgewotICAgICAgICAgICAgTW9ub3RvbmljVGltZSBjdXJyZW50VGltZSA9IE1v
bm90b25pY1RpbWU6Om5vdygpOwotICAgICAgICAgICAgaWYgKGN1cnJlbnRUaW1lID4gZGVhZGxp
bmUpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgICAgICBpdGVyc1NpbmNl
TGFzdFRpbWVDaGVjayA9IDA7Ci0gICAgICAgIH0KKyAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGZp
Z3VyZSBvdXQgYSBzb2x1dGlvbiBmb3IgV2luZG93cy4KKyNpZiBPUyhVTklYKQorICAgIHNpemVf
dCBwYWdlU2l6ZSA9IFdURjo6cGFnZVNpemUoKTsKKyAgICBBU1NFUlQoIShNYXJrZWRCbG9jazo6
YmxvY2tTaXplICUgcGFnZVNpemUpKTsKKyAgICBhdXRvIG51bWJlck9mUGFnZXNJbk1hcmtlZEJs
b2NrID0gTWFya2VkQmxvY2s6OmJsb2NrU2l6ZSAvIHBhZ2VTaXplOworICAgIC8vIEZvciBzb21l
IHJlYXNvbiB0aGlzIGNhbiBiZSB1bnNpZ25lZCBjaGFyIG9yIGNoYXIgb24gZGlmZmVyZW50IE9T
ZXMuLi4KKyAgICB1c2luZyBNaW5jb3JlQnVmZmVyVHlwZSA9IHN0ZDo6cmVtb3ZlX3BvaW50ZXJf
dDxGdW5jdGlvblRyYWl0czxkZWNsdHlwZShtaW5jb3JlKT46OkFyZ3VtZW50VHlwZTwyPj47Cisg
ICAgc3RhdGljX2Fzc2VydChzdGQ6OmlzX3NhbWVfdjxzdGQ6Om1ha2VfdW5zaWduZWRfdDxNaW5j
b3JlQnVmZmVyVHlwZT4sIHVuc2lnbmVkIGNoYXI+KTsKKyAgICAvLyBwYWdlU2l6ZSBpcyBlZmZl
Y3RpdmVseSBhIGNvbnN0YW50IHNvIHRoaXMgaXNuJ3QgcmVhbGx5IHZhcmlhYmxlLgorICAgIElH
Tk9SRV9DTEFOR19XQVJOSU5HU19CRUdJTigidmxhIikKKyAgICBNaW5jb3JlQnVmZmVyVHlwZSBw
YWdlZEJpdHNbbnVtYmVyT2ZQYWdlc0luTWFya2VkQmxvY2tdOworICAgIElHTk9SRV9DTEFOR19X
QVJOSU5HU19FTkQKKworICAgIGZvciAoYXV0byogaGFuZGxlIDogbV9ibG9ja3MpIHsKKyAgICAg
ICAgaWYgKCFoYW5kbGUpCisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICBhdXRvIG1h
cmtlZEJsb2NrU2l6ZUluQnl0ZXMgPSBzdGF0aWNfY2FzdDxzaXplX3Q+KHJlaW50ZXJwcmV0X2Nh
c3Q8Y2hhcio+KGhhbmRsZS0+ZW5kKCkpIC0gcmVpbnRlcnByZXRfY2FzdDxjaGFyKj4oaGFuZGxl
LT5zdGFydCgpKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKG1hcmtlZEJsb2NrU2l6ZUluQnl0
ZXMgLyBwYWdlU2l6ZSA8PSBudW1iZXJPZlBhZ2VzSW5NYXJrZWRCbG9jayk7CisgICAgICAgIC8v
IFdlIGNvdWxkIGNhY2hlIHRoaXMgaW4gYnVsayAoZS5nLiAyNSBNQiBjaHVua3MpIGJ1dCB3ZSBo
YXZlbid0IHNlZW4gYW55IGRhdGEgdGhhdCBpdCBhY3R1YWxseSBtYXR0ZXJzLgorICAgICAgICBh
dXRvIHJlc3VsdCA9IG1pbmNvcmUoaGFuZGxlLT5zdGFydCgpLCBtYXJrZWRCbG9ja1NpemVJbkJ5
dGVzLCBwYWdlZEJpdHMpOworICAgICAgICBSRUxFQVNFX0FTU0VSVCghcmVzdWx0KTsKKyAgICAg
ICAgY29uc3RleHByIHVuc2lnbmVkIHBhZ2VJc1Jlc2lkZW50QW5kTm90Q29tcHJlc3NlZCA9IDE7
CisgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1iZXJPZlBhZ2VzSW5NYXJrZWRC
bG9jazsgKytpKQorICAgICAgICAgICAgc3RhdHMuYWRkKCEocGFnZWRCaXRzW2ldICYgcGFnZUlz
UmVzaWRlbnRBbmROb3RDb21wcmVzc2VkKSk7CiAgICAgfQotICAgIHJldHVybiBmYWxzZTsKKyNl
bmRpZgogfQogCiBNYXJrZWRCbG9jazo6SGFuZGxlKiBCbG9ja0RpcmVjdG9yeTo6ZmluZEVtcHR5
QmxvY2tUb1N0ZWFsKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0Js
b2NrRGlyZWN0b3J5LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9CbG9ja0RpcmVjdG9y
eS5oCmluZGV4IDY3NDJjMzE1OGI5NjE2NTI0YTJiMGE2OGNhZDQwMTYyNDQ3ZWVhNDEuLmFkN2Rk
YTAxYjI5ZTg3NWVhYmRiNTcyZjViNGVhMjBhZDI0YjFlNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9oZWFwL0Jsb2NrRGlyZWN0b3J5LmgKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2hlYXAvQmxvY2tEaXJlY3RvcnkuaApAQCAtMzcsNiArMzcsMTAgQEAKICNpbmNsdWRl
IDx3dGYvU2hhcmVkVGFzay5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAorbmFtZXNwYWNl
IFdURiB7CitjbGFzcyBTaW1wbGVTdGF0czsKK30KKwogbmFtZXNwYWNlIEpTQyB7CiAKIGNsYXNz
IEdDRGVmZXJyYWxDb250ZXh0OwpAQCAtODUsNyArODksNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBh
ZGRCbG9jayhNYXJrZWRCbG9jazo6SGFuZGxlKik7CiAgICAgdm9pZCByZW1vdmVCbG9jayhNYXJr
ZWRCbG9jazo6SGFuZGxlKik7CiAKLSAgICBib29sIGlzUGFnZWRPdXQoTW9ub3RvbmljVGltZSBk
ZWFkbGluZSk7CisgICAgdm9pZCB1cGRhdGVQZXJjZW50YWdlT2ZQYWdlZE91dFBhZ2VzKFdURjo6
U2ltcGxlU3RhdHMmKTsKICAgICAKICAgICBMb2NrJiBiaXR2ZWN0b3JMb2NrKCkgeyByZXR1cm4g
bV9iaXR2ZWN0b3JMb2NrOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9o
ZWFwL0Z1bGxHQ0FjdGl2aXR5Q2FsbGJhY2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hl
YXAvRnVsbEdDQWN0aXZpdHlDYWxsYmFjay5jcHAKaW5kZXggMjQ4ODAyYjlkNGM4NDE1N2U1NmFl
MDNlMjA3MDkxYjlkNDM4ZTU5Zi4uZjU0ZDJkMjZjOWNkMzdiMzg3MzI3NmFkMDcxMDY2ZTUwYzNl
YjQ5ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvRnVsbEdDQWN0aXZp
dHlDYWxsYmFjay5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvRnVsbEdDQWN0
aXZpdHlDYWxsYmFjay5jcHAKQEAgLTMwLDEwICszMCw2IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci0jaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCi1jb25zdCBjb25zdGV4cHIgU2Vjb25kcyBwYWdp
bmdUaW1lT3V0IHsgMTAwX21zIH07IC8vIFRpbWUgaW4gc2Vjb25kcyB0byBhbGxvdyBvcHBvcnR1
bmlzdGljIHRpbWVyIHRvIGl0ZXJhdGUgb3ZlciBhbGwgYmxvY2tzIHRvIHNlZSBpZiB0aGUgSGVh
cCBpcyBwYWdlZCBvdXQuCi0jZW5kaWYKLQogRnVsbEdDQWN0aXZpdHlDYWxsYmFjazo6RnVsbEdD
QWN0aXZpdHlDYWxsYmFjayhIZWFwKiBoZWFwKQogICAgIDogR0NBY3Rpdml0eUNhbGxiYWNrKGhl
YXApCiB7CkBAIC00NCwxMSArNDAsMTEgQEAgdm9pZCBGdWxsR0NBY3Rpdml0eUNhbGxiYWNrOjpk
b0NvbGxlY3Rpb24oVk0mIHZtKQogICAgIEhlYXAmIGhlYXAgPSB2bS5oZWFwOwogICAgIG1fZGlk
R0NSZWNlbnRseSA9IGZhbHNlOwogCi0jaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCisjaWYgIVBM
QVRGT1JNKElPU19GQU1JTFkpIHx8IFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQogICAgIE1vbm90b25p
Y1RpbWUgc3RhcnRUaW1lID0gTW9ub3RvbmljVGltZTo6bm93KCk7Ci0gICAgaWYgKGhlYXAuaXNQ
YWdlZE91dChzdGFydFRpbWUgKyBwYWdpbmdUaW1lT3V0KSkgeworICAgIGlmIChoZWFwLmlzUGFn
ZWRPdXQoKSkgewogICAgICAgICBjYW5jZWwoKTsKLSAgICAgICAgaGVhcC5pbmNyZWFzZUxhc3RG
dWxsR0NMZW5ndGgocGFnaW5nVGltZU91dCk7CisgICAgICAgIGhlYXAuaW5jcmVhc2VMYXN0RnVs
bEdDTGVuZ3RoKE1vbm90b25pY1RpbWU6Om5vdygpIC0gc3RhcnRUaW1lKTsKICAgICAgICAgcmV0
dXJuOwogICAgIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hl
YXAvSGVhcC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcAppbmRleCBi
MjZlOTEzZDIyYWYwMGZlMmNhZjYxYjY3Y2M3Nzk3ODliZDJjZGM5Li44MWE3MWEwZGM3ZmY3MzBj
ZDFjOWZhZjdjOGM4YmRlY2MwMjU5OWUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaGVhcC9IZWFwLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNw
cApAQCAtMzU1LDkgKzM1NSw5IEBAIEhlYXA6On5IZWFwKCkKICAgICAgICAgV2Vha0Jsb2NrOjpk
ZXN0cm95KCp0aGlzLCBibG9jayk7CiB9CiAKLWJvb2wgSGVhcDo6aXNQYWdlZE91dChNb25vdG9u
aWNUaW1lIGRlYWRsaW5lKQorYm9vbCBIZWFwOjppc1BhZ2VkT3V0KCkKIHsKLSAgICByZXR1cm4g
bV9vYmplY3RTcGFjZS5pc1BhZ2VkT3V0KGRlYWRsaW5lKTsKKyAgICByZXR1cm4gbV9vYmplY3RT
cGFjZS5pc1BhZ2VkT3V0KCk7CiB9CiAKIHZvaWQgSGVhcDo6ZHVtcEhlYXBTdGF0aXN0aWNzQXRW
TURlc3RydWN0aW9uKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hl
YXAuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuaAppbmRleCAwNDcxOGJlYzQ3
MjFjMmRkZDk3MTI4MmQ2MWE3NGRkYzZkYjBlZWFhLi4zNzNlYmViNWFmZGZiMzYzN2NjOGQzMTg5
NzllNGExNTY0MWViMTQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9I
ZWFwLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5oCkBAIC0yNzAsNyAr
MjcwLDcgQEAgcHVibGljOgogICAgIHZvaWQgZGVsZXRlQWxsVW5saW5rZWRDb2RlQmxvY2tzKERl
bGV0ZUFsbENvZGVFZmZvcnQpOwogCiAgICAgdm9pZCBkaWRBbGxvY2F0ZShzaXplX3QpOwotICAg
IGJvb2wgaXNQYWdlZE91dChNb25vdG9uaWNUaW1lIGRlYWRsaW5lKTsKKyAgICBib29sIGlzUGFn
ZWRPdXQoKTsKICAgICAKICAgICBjb25zdCBKSVRTdHViUm91dGluZVNldCYgaml0U3R1YlJvdXRp
bmVzKCkgeyByZXR1cm4gKm1faml0U3R1YlJvdXRpbmVzOyB9CiAgICAgCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRTcGFjZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaGVhcC9NYXJrZWRTcGFjZS5jcHAKaW5kZXggMjdjZTJlZjU1MjZiZWQ2OGFjMDhh
NzYzNGE5OTYzYTMxMGI4NjAwZS4uZjMzMzI2MTRjOGEzNDE0MjliNWNiZGRlODA5MTMxZTg2YmY2
MWVlYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2Uu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmNwcApAQCAt
MjcsNiArMjcsNyBAQAogI2luY2x1ZGUgIk1hcmtlZEJsb2NrSW5saW5lcy5oIgogI2luY2x1ZGUg
Ik1hcmtlZFNwYWNlSW5saW5lcy5oIgogI2luY2x1ZGUgPHd0Zi9MaXN0RHVtcC5oPgorI2luY2x1
ZGUgPHd0Zi9TaW1wbGVTdGF0cy5oPgogCiBuYW1lc3BhY2UgSlNDIHsKIApAQCAtMzU4LDE5ICsz
NTksMTkgQEAgdm9pZCBNYXJrZWRTcGFjZTo6cmVzdW1lQWxsb2NhdGluZygpCiAgICAgLy8gTm90
aGluZyB0byBkbyBmb3IgUHJlY2lzZUFsbG9jYXRpb25zLgogfQogCi1ib29sIE1hcmtlZFNwYWNl
Ojppc1BhZ2VkT3V0KE1vbm90b25pY1RpbWUgZGVhZGxpbmUpCitib29sIE1hcmtlZFNwYWNlOjpp
c1BhZ2VkT3V0KCkKIHsKLSAgICBib29sIHJlc3VsdCA9IGZhbHNlOworICAgIFNpbXBsZVN0YXRz
IHBhZ2VkT3V0UGFnZXNTdGF0czsKKwogICAgIGZvckVhY2hEaXJlY3RvcnkoCiAgICAgICAgIFsm
XSAoQmxvY2tEaXJlY3RvcnkmIGRpcmVjdG9yeSkgLT4gSXRlcmF0aW9uU3RhdHVzIHsKLSAgICAg
ICAgICAgIGlmIChkaXJlY3RvcnkuaXNQYWdlZE91dChkZWFkbGluZSkpIHsKLSAgICAgICAgICAg
ICAgICByZXN1bHQgPSB0cnVlOwotICAgICAgICAgICAgICAgIHJldHVybiBJdGVyYXRpb25TdGF0
dXM6OkRvbmU7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICBkaXJlY3RvcnkudXBkYXRlUGVy
Y2VudGFnZU9mUGFnZWRPdXRQYWdlcyhwYWdlZE91dFBhZ2VzU3RhdHMpOwogICAgICAgICAgICAg
cmV0dXJuIEl0ZXJhdGlvblN0YXR1czo6Q29udGludWU7CiAgICAgICAgIH0pOwogICAgIC8vIEZJ
WE1FOiBDb25zaWRlciB0YWtpbmcgUHJlY2lzZUFsbG9jYXRpb25zIGludG8gYWNjb3VudCBoZXJl
LgotICAgIHJldHVybiByZXN1bHQ7CisgICAgZG91YmxlIG1heEhlYXBHcm93dGhGYWN0b3IgPSBW
TTo6aXNJbk1pbmlNb2RlKCkgPyBPcHRpb25zOjptaW5pVk1IZWFwR3Jvd3RoRmFjdG9yKCkgOiBP
cHRpb25zOjpsYXJnZUhlYXBHcm93dGhGYWN0b3IoKTsKKyAgICBkb3VibGUgYmFpbG91dFBlcmNl
bnRhZ2UgPSBPcHRpb25zOjpjdXN0b21GdWxsR0NDYWxsYmFja0JhaWxUaHJlc2hvbGQoKSA9PSAt
MS4wID8gbWF4SGVhcEdyb3d0aEZhY3RvciAtIDEgOiBPcHRpb25zOjpjdXN0b21GdWxsR0NDYWxs
YmFja0JhaWxUaHJlc2hvbGQoKTsKKyAgICByZXR1cm4gcGFnZWRPdXRQYWdlc1N0YXRzLm1lYW4o
KSA+IHBhZ2VkT3V0UGFnZXNTdGF0cy5jb3VudCgpICogYmFpbG91dFBlcmNlbnRhZ2U7CiB9CiAK
IHZvaWQgTWFya2VkU3BhY2U6OmZyZWVCbG9jayhNYXJrZWRCbG9jazo6SGFuZGxlKiBibG9jaykK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmggYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRTcGFjZS5oCmluZGV4IDZiNDM3YzJlMWY0
NDg2MzQ0YTZlODBmNDJkMTM3MjIwNzcxMDdmYWEuLjViZTUxZGU3ZTRjZjk5YjNkNmY0Nzc3N2Yw
MGI2ZDJhOTdhYjgwNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01h
cmtlZFNwYWNlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2Uu
aApAQCAtMTQ4LDcgKzE0OCw3IEBAIHB1YmxpYzoKICAgICBzaXplX3Qgc2l6ZSgpOwogICAgIHNp
emVfdCBjYXBhY2l0eSgpOwogCi0gICAgYm9vbCBpc1BhZ2VkT3V0KE1vbm90b25pY1RpbWUgZGVh
ZGxpbmUpOworICAgIGJvb2wgaXNQYWdlZE91dCgpOwogICAgIAogICAgIEhlYXBWZXJzaW9uIG1h
cmtpbmdWZXJzaW9uKCkgY29uc3QgeyByZXR1cm4gbV9tYXJraW5nVmVyc2lvbjsgfQogICAgIEhl
YXBWZXJzaW9uIG5ld2x5QWxsb2NhdGVkVmVyc2lvbigpIGNvbnN0IHsgcmV0dXJuIG1fbmV3bHlB
bGxvY2F0ZWRWZXJzaW9uOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9PcHRpb25zTGlzdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9u
c0xpc3QuaAppbmRleCAxNWEwNmViNjcxYzg0ZWJiNGQwYzNhMzRiMTBhODU0MGRhMzA0M2NiLi5h
Y2RlNGYwYzAxMTY2ZTljMDA3NWUxYTQ1YzUxMzM4YmY1MmI1NWNjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zTGlzdC5oCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKQEAgLTIwNCw2ICsyMDQsNyBAQCBjb25z
dGV4cHIgdW5zaWduZWQganNjUmVzZXJ2ZWRab25lU2l6ZSA9IDY0ICogS0I7CiAgICAgdihEb3Vi
bGUsIGxhcmdlSGVhcEdyb3d0aEZhY3RvciwgMS4yNCwgTm9ybWFsLCBudWxscHRyKSBcCiAgICAg
dihEb3VibGUsIG1pbmlWTUhlYXBHcm93dGhGYWN0b3IsIDEuMjcsIE5vcm1hbCwgbnVsbHB0cikg
XAogICAgIHYoRG91YmxlLCBjcml0aWNhbEdDTWVtb3J5VGhyZXNob2xkLCAwLjgwLCBOb3JtYWws
ICJwZXJjZW50IG1lbW9yeSBpbiB1c2UgdGhlIEdDIGNvbnNpZGVycyBjcml0aWNhbC4gIFRoZSBj
b2xsZWN0b3IgaXMgbXVjaCBtb3JlIGFnZ3Jlc3NpdmUgYWJvdmUgdGhpcyB0aHJlc2hvbGQiKSBc
CisgICAgdihEb3VibGUsIGN1c3RvbUZ1bGxHQ0NhbGxiYWNrQmFpbFRocmVzaG9sZCwgLTEuMCwg
Tm9ybWFsLCAicGVyY2VudCBvZiBtZW1vcnkgcGFnZWQgb3V0IGJlZm9yZSB3ZSBiYWlsIG91dCBv
ZiB0aW1lciBiYXNlZCBGdWxsIEdDcy4gLTEuMCBtZWFucyB1c2UgKG1heEhlYXBHcm93dGhGYWN0
b3IgLSAxKSIpIFwKICAgICB2KERvdWJsZSwgbWluaW11bU11dGF0b3JVdGlsaXphdGlvbiwgMCwg
Tm9ybWFsLCBudWxscHRyKSBcCiAgICAgdihEb3VibGUsIG1heGltdW1NdXRhdG9yVXRpbGl6YXRp
b24sIDAuNywgTm9ybWFsLCBudWxscHRyKSBcCiAgICAgdihEb3VibGUsIGVwc2lsb25NdXRhdG9y
VXRpbGl6YXRpb24sIDAuMDEsIE5vcm1hbCwgbnVsbHB0cikgXApkaWZmIC0tZ2l0IGEvU291cmNl
L1dURi93dGYvRnVuY3Rpb25UcmFpdHMuaCBiL1NvdXJjZS9XVEYvd3RmL0Z1bmN0aW9uVHJhaXRz
LmgKaW5kZXggMzUzM2ZiMmJmM2ExMDg2MzBlNDNjOTY3MGJmZTFlOTU5ZGUzNTEyYy4uYjI0MDYy
YWE1Y2JmZmNhNjM0MGViZmY5ZGY4Y2Q1Y2JlMGZmZmQ1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dU
Ri93dGYvRnVuY3Rpb25UcmFpdHMuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9GdW5jdGlvblRyYWl0
cy5oCkBAIC04MCw2ICs4MCwxNCBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBSZXN1bHQsIHR5cGVuYW1l
Li4uIEFyZ3M+CiBzdHJ1Y3QgRnVuY3Rpb25UcmFpdHM8UmVzdWx0KCopKEFyZ3MuLi4pPiA6IHB1
YmxpYyBGdW5jdGlvblRyYWl0czxSZXN1bHQoQXJncy4uLik+IHsKIH07CiAKK3RlbXBsYXRlPHR5
cGVuYW1lIFJlc3VsdCwgdHlwZW5hbWUuLi4gQXJncz4KK3N0cnVjdCBGdW5jdGlvblRyYWl0czxS
ZXN1bHQoQXJncy4uLikgbm9leGNlcHQ+IDogcHVibGljIEZ1bmN0aW9uVHJhaXRzPFJlc3VsdChB
cmdzLi4uKT4geworfTsKKwordGVtcGxhdGU8dHlwZW5hbWUgUmVzdWx0LCB0eXBlbmFtZS4uLiBB
cmdzPgorc3RydWN0IEZ1bmN0aW9uVHJhaXRzPFJlc3VsdCgqKShBcmdzLi4uKSBub2V4Y2VwdD4g
OiBwdWJsaWMgRnVuY3Rpb25UcmFpdHM8UmVzdWx0KEFyZ3MuLi4pPiB7Cit9OworCiB9IC8vIG5h
bWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpGdW5jdGlvblRyYWl0czsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb20uYXBwbGUuV2ViUHJvY2Vzcy5zYi5pbiBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb20uYXBwbGUuV2ViUHJvY2Vzcy5zYi5pbgppbmRleCAwYWVj
YWFiZjNiNjBmZWY2NWFiN2E0N2UxNzE5MzE4ZmZjZDEwNTc4Li45ZWI2NzQ2NDhmNGI1NzUxN2Qz
MDM3OWNmNjAyZjlhMWQzNTg1NDQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvY29tLmFwcGxlLldlYlByb2Nlc3Muc2IuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL2NvbS5hcHBsZS5XZWJQcm9jZXNzLnNiLmluCkBAIC0xNzc2LDYgKzE3NzYsNyBAQAogICAg
ICAgICAoc3lzY2FsbC1udW1iZXIgU1lTX211bm1hcCkKICAgICAgICAgKHN5c2NhbGwtbnVtYmVy
IFNZU19tcHJvdGVjdCkKICAgICAgICAgKHN5c2NhbGwtbnVtYmVyIFNZU19tYWR2aXNlKQorICAg
ICAgICAoc3lzY2FsbC1udW1iZXIgU1lTX21pbmNvcmUpCiAgICAgICAgIChzeXNjYWxsLW51bWJl
ciBTWVNfZmNudGwpCiAgICAgICAgIChzeXNjYWxsLW51bWJlciBTWVNfc2VsZWN0KQogICAgICAg
ICAoc3lzY2FsbC1udW1iZXIgU1lTX2ZzeW5jKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>