<?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>228710</bug_id>
          
          <creation_ts>2021-08-02 11:47:13 -0700</creation_ts>
          <short_desc>[ARM64] Use link register instead of pinning a register for materializing big load constants</short_desc>
          <delta_ts>2022-08-04 02:45:54 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <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>
          <dependson>228791</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yijia Huang">yijia_huang</reporter>
          <assigned_to name="Yijia Huang">yijia_huang</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</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>1781342</commentid>
    <comment_count>0</comment_count>
    <who name="Yijia Huang">yijia_huang</who>
    <bug_when>2021-08-02 11:47:13 -0700</bug_when>
    <thetext>...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781343</commentid>
    <comment_count>1</comment_count>
      <attachid>434782</attachid>
    <who name="Yijia Huang">yijia_huang</who>
    <bug_when>2021-08-02 11:51:39 -0700</bug_when>
    <thetext>Created attachment 434782
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781620</commentid>
    <comment_count>2</comment_count>
      <attachid>434835</attachid>
    <who name="Yijia Huang">yijia_huang</who>
    <bug_when>2021-08-03 08:42:57 -0700</bug_when>
    <thetext>Created attachment 434835
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781654</commentid>
    <comment_count>3</comment_count>
      <attachid>434835</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2021-08-03 10:49:50 -0700</bug_when>
    <thetext>Comment on attachment 434835
Patch

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

&gt; Source/JavaScriptCore/b3/air/AirCode.cpp:96
&gt; +#if !CPU(ARM64)
&gt;      if (auto reg = pinnedExtendedOffsetAddrRegister())
&gt;          pinRegister(*reg);
&gt; +#endif

I wouldn&apos;t write this patch this way.
- This call is now a no-op, since no other platform provided a value for pinnedExtendedOffsetAddrRegister
- I think I&apos;d just directly use the linkRegister in those places that use `pinnedExtendedOffsetAddrRegister`.
- pinnedExtendedOffsetAddrRegister is now a wrong name, since it&apos;s no longer pinned.

I think the cleanest patch is to remove pinnedExtendedOffsetAddrRegister and just use linkRegister inside those phases. You could write a helper function that just returns the linkRegister on arm64, and crashes on other platforms, so you can keep various code runtime enabled. But you could also just change the code to using #if CPU(ARM64) instead of &quot;if (isARM64())&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781665</commentid>
    <comment_count>4</comment_count>
      <attachid>434843</attachid>
    <who name="Yijia Huang">yijia_huang</who>
    <bug_when>2021-08-03 11:22:43 -0700</bug_when>
    <thetext>Created attachment 434843
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781673</commentid>
    <comment_count>5</comment_count>
      <attachid>434845</attachid>
    <who name="Yijia Huang">yijia_huang</who>
    <bug_when>2021-08-03 11:38:33 -0700</bug_when>
    <thetext>Created attachment 434845
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781679</commentid>
    <comment_count>6</comment_count>
      <attachid>434845</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2021-08-03 11:54:01 -0700</bug_when>
    <thetext>Comment on attachment 434845
Patch

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

r+ with fixes.

&gt; Source/JavaScriptCore/ChangeLog:3
&gt; +        Use link register instead of pinning a register for materializing big load constants

I suggest prefixing the title with [ARM64] so that it is clear that this change only applies to ARM64 ports.

&gt; Source/JavaScriptCore/ChangeLog:10
&gt; +        A link register is a special-purpose register which holds the address to return to when a function call 
&gt; +        completes. This is more efficient than the more traditional scheme of storing return addresses on a 
&gt; +        machine stack. Previouly, we pin a register for materializing a large constant that cannot fit in Load/Store

I think the first 2 sentences are not needed because the use of lr is a commonly known thing for anyone programming for ARM64.  Also, what is claimed in these 2 sentences is not relevant to this patch.

typo: /Previouly/Previously/
I also suggest &quot;pin a register for&quot; ==&gt; &quot;pin a register as a temp for&quot;

&gt; Source/JavaScriptCore/ChangeLog:11
&gt; +        imm form. This is not efficient since the allocator has one less register to access. To solve this problem, we 

I suggest &quot;the allocator&quot; ==&gt; &quot;the register allocator&quot;, and &quot;to access&quot; ==&gt; &quot;to allocate from&quot;.

&gt; Source/JavaScriptCore/ChangeLog:12
&gt; +        should switch to the link register supported by ARM64.

I suggest &quot;switch to the link register supported by ARM64&quot; ==&gt; &quot;switch to using the link register as the temp on ARM64&quot;.

&gt; Source/JavaScriptCore/b3/B3Common.cpp:70
&gt; +std::optional&lt;GPRReg&gt; getLinkRegister()

I think WebKit style is to not prefix getters with &quot;get&quot; (except for some special cases).  Can you rename this to simply &quot;linkRegister()&quot;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781695</commentid>
    <comment_count>7</comment_count>
      <attachid>434849</attachid>
    <who name="Yijia Huang">yijia_huang</who>
    <bug_when>2021-08-03 12:13:56 -0700</bug_when>
    <thetext>Created attachment 434849
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781701</commentid>
    <comment_count>8</comment_count>
      <attachid>434851</attachid>
    <who name="Yijia Huang">yijia_huang</who>
    <bug_when>2021-08-03 12:25:32 -0700</bug_when>
    <thetext>Created attachment 434851
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781704</commentid>
    <comment_count>9</comment_count>
      <attachid>434851</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2021-08-03 12:32:38 -0700</bug_when>
    <thetext>Comment on attachment 434851
Patch for landing

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

&gt; Source/JavaScriptCore/b3/air/AirLowerStackArgs.cpp:81
&gt; +                        ASSERT(linkRegister());

Can remove this because this code only applies to isARM64().

&gt; Source/JavaScriptCore/b3/air/AirLowerStackArgs.cpp:131
&gt; +                        ASSERT(linkRegister());

Ditto.  Can remove.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781712</commentid>
    <comment_count>10</comment_count>
      <attachid>434856</attachid>
    <who name="Yijia Huang">yijia_huang</who>
    <bug_when>2021-08-03 12:53:44 -0700</bug_when>
    <thetext>Created attachment 434856
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781725</commentid>
    <comment_count>11</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-08-03 13:27:02 -0700</bug_when>
    <thetext>Committed r280609 (240227@main): &lt;https://commits.webkit.org/240227@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 434856.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781726</commentid>
    <comment_count>12</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-08-03 13:28:22 -0700</bug_when>
    <thetext>&lt;rdar://problem/81477534&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1781991</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2021-08-04 12:17:52 -0700</bug_when>
    <thetext>Re-opened since this is blocked by bug 228791</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1782220</commentid>
    <comment_count>14</comment_count>
      <attachid>434988</attachid>
    <who name="Yijia Huang">yijia_huang</who>
    <bug_when>2021-08-05 08:39:36 -0700</bug_when>
    <thetext>Created attachment 434988
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1782230</commentid>
    <comment_count>15</comment_count>
      <attachid>434993</attachid>
    <who name="Yijia Huang">yijia_huang</who>
    <bug_when>2021-08-05 09:12:21 -0700</bug_when>
    <thetext>Created attachment 434993
Patch for reviewing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1782232</commentid>
    <comment_count>16</comment_count>
      <attachid>434993</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2021-08-05 09:21:15 -0700</bug_when>
    <thetext>Comment on attachment 434993
Patch for reviewing

Why are we pinning the data temp register? Isn’t the point of this patch to stop doing that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1787267</commentid>
    <comment_count>17</comment_count>
    <who name="Yijia Huang">yijia_huang</who>
    <bug_when>2021-08-25 13:17:21 -0700</bug_when>
    <thetext>The modifications to replace the pinned register with the LR should be simple. However, when we try to remove this in AirCode.cpp:

```
if (auto reg = pinnedExtendedOffsetAddrRegister())
     pinRegister(*reg);
```

Some stress tests fail. And one of them is:

```
stress/dont-assert-ai-proved-array-mode.js.ftl-no-cjit-b3o0: test_script_4413: line 2: 24736 Segmentation fault: 11  ( &quot;$@&quot; ../../.vm/JavaScriptCore.framework/Helpers/jsc --useFTLJIT\=false --useFunctionDotArguments\=true --validateExceptionChecks\=true --useDollarVM\=true --maxPerThreadStackUsage\=1572864 --useArrayAllocationProfiling\=false --forcePolyProto\=true --useRandomizingExecutableIslandAllocation\=true --useFTLJIT\=true --useConcurrentJIT\=false --thresholdForJITAfterWarmUp\=100 --scribbleFreeCells\=true --maxDFGNodesInBasicBlockForPreciseAnalysis\=100 --defaultB3OptLevel\=0 --forceOSRExitToLLInt\=true --jitPolicyScale\=0 --slowPathAllocsBetweenGCs\=15 dont-assert-ai-proved-array-mode.js )
stress/dont-assert-ai-proved-array-mode.js.ftl-no-cjit-b3o0: ERROR: Unexpected exit code: 139
```</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1886070</commentid>
    <comment_count>18</comment_count>
    <who name="Yijia Huang">yijia_huang</who>
    <bug_when>2022-07-22 12:28:55 -0700</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/2665</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1888819</commentid>
    <comment_count>19</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-08-04 02:45:52 -0700</bug_when>
    <thetext>Committed 253105@main (fb402aa86c16): &lt;https://commits.webkit.org/253105@main&gt;

Reviewed commits have been landed. Closing PR #2665 and removing active labels.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434782</attachid>
            <date>2021-08-02 11:51:39 -0700</date>
            <delta_ts>2021-08-03 08:42:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-228710-20210802135138.patch</filename>
            <type>text/plain</type>
            <size>1276</size>
            <attacher name="Yijia Huang">yijia_huang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNDk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA0
N2M5NTU4ZWFiZGIxNjY0YzU2YWQyZGU0YWQzNGQ3ZDA3Y2UxNzI1Li5mMjQ0ZjA4N2I2ZWJjNGFk
MWVmMjYwYWZmYTZmODg5YTNjMDRiNDQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMyBAQAorMjAyMS0wOC0wMiAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5j
b20+CisKKyAgICAgICAgVXNlIGxpbmsgcmVnaXN0ZXIgaW5zdGVhZCBvZiBwaW5uaW5nIGEgcmVn
aXN0ZXIgZm9yIG1hdGVyaWFsaXppbmcgYmlnIGxvYWQgY29uc3RhbnRzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjg3MTAKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGIzL0IzQ29tbW9uLmNwcDoKKyAg
ICAgICAgKEpTQzo6QjM6OnBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKToKKwogMjAy
MS0wNy0zMCAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5jb20+CiAKICAgICAgICAg
QWRkIFByZS9Qb3N0LUluZGV4ZWQgQWRkcmVzcyBNb2RlIHRvIEFpciBmb3IgQVJNNjQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYjMvQjNDb21tb24uY3BwCmluZGV4IDk3YjFmZDAwOTAzMzY4ZGY0OTA5M2Jk
OTU0Y2ZlY2RjZmY3ZWE5MjMuLjdjNWFiNmM0MmEwZTE4YTg2MjRjYmM5NTJhZWU2YTliMzg4YTFm
OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmNwcApAQCAtNzAsNyArNzAsNyBA
QCBib29sIHNob3VsZFNhdmVJUkJlZm9yZVBoYXNlKCkKIHN0ZDo6b3B0aW9uYWw8R1BSUmVnPiBw
aW5uZWRFeHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpCiB7CiAjaWYgQ1BVKEFSTTY0KQotICAg
IHJldHVybiBNYWNyb0Fzc2VtYmxlcjo6ZGF0YVRlbXBSZWdpc3RlcjsKKyAgICByZXR1cm4gTWFj
cm9Bc3NlbWJsZXI6OmxpbmtSZWdpc3RlcjsKICNlbGlmIENQVShYODZfNjQpCiAgICAgcmV0dXJu
IHN0ZDo6bnVsbG9wdDsKICNlbHNlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434835</attachid>
            <date>2021-08-03 08:42:57 -0700</date>
            <delta_ts>2021-08-03 11:22:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-228710-20210803104256.patch</filename>
            <type>text/plain</type>
            <size>2475</size>
            <attacher name="Yijia Huang">yijia_huang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNTg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
MDBlNWQ4OWJjMjRjMDk0NmU4Njc0MWRkZTU4YzMxNjJlNDgyOWNiLi4wMDEyNTQ1NDkzMTk1ZWMy
NzQ1YzdhZTFlMzM0NzQxZTNhNWEzYmRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMSBAQAorMjAyMS0wOC0wMyAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5j
b20+CisKKyAgICAgICAgVXNlIGxpbmsgcmVnaXN0ZXIgaW5zdGVhZCBvZiBwaW5uaW5nIGEgcmVn
aXN0ZXIgZm9yIG1hdGVyaWFsaXppbmcgYmlnIGxvYWQgY29uc3RhbnRzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjg3MTAKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBIGxpbmsgcmVnaXN0ZXIgaXMgYSBz
cGVjaWFsLXB1cnBvc2UgcmVnaXN0ZXIgd2hpY2ggaG9sZHMgdGhlIGFkZHJlc3MgdG8gcmV0dXJu
IHRvIHdoZW4gYSBmdW5jdGlvbiBjYWxsIAorICAgICAgICBjb21wbGV0ZXMuIFRoaXMgaXMgbW9y
ZSBlZmZpY2llbnQgdGhhbiB0aGUgbW9yZSB0cmFkaXRpb25hbCBzY2hlbWUgb2Ygc3RvcmluZyBy
ZXR1cm4gYWRkcmVzc2VzIG9uIGEgCisgICAgICAgIG1hY2hpbmUgc3RhY2suIFByZXZpb3VseSwg
d2UgcGluIGEgcmVnaXN0ZXIgZm9yIG1hdGVyaWFsaXppbmcgYSBsYXJnZSBjb25zdGFudCB0aGF0
IGNhbm5vdCBmaXQgaW4gTG9hZC9TdG9yZQorICAgICAgICBpbW0gZm9ybS4gVGhpcyBpcyBub3Qg
ZWZmaWNpZW50IHNpbmNlIHRoZSBhbGxvY2F0b3IgaGFzIG9uZSBsZXNzIHJlZ2lzdGVyIHRvIGFj
Y2Vzcy4gVG8gc29sdmUgdGhpcyBwcm9ibGVtLCB3ZSAKKyAgICAgICAgc2hvdWxkIHN3aXRjaCB0
byB0aGUgbGluayByZWdpc3RlciBzdXBwb3J0ZWQgYnkgQVJNNjQuCisKKyAgICAgICAgKiBiMy9C
M0NvbW1vbi5jcHA6CisgICAgICAgIChKU0M6OkIzOjpwaW5uZWRFeHRlbmRlZE9mZnNldEFkZHJS
ZWdpc3Rlcik6CisgICAgICAgICogYjMvYWlyL0FpckNvZGUuY3BwOgorICAgICAgICAoSlNDOjpC
Mzo6QWlyOjpDb2RlOjpDb2RlKToKKwogMjAyMS0wOC0wMiAgWWlqaWEgSHVhbmcgIDx5aWppYV9o
dWFuZ0BhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGEgbmV3IHBhdHRlcm4gdG8gaW5zdHJ1Y3Rp
b24gc2VsZWN0b3IgdG8gdXRpbGl6ZSBVTVVMTCBzdXBwb3J0ZWQgYnkgQVJNNjQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYjMvQjNDb21tb24uY3BwCmluZGV4IDk3YjFmZDAwOTAzMzY4ZGY0OTA5M2JkOTU0
Y2ZlY2RjZmY3ZWE5MjMuLjdjNWFiNmM0MmEwZTE4YTg2MjRjYmM5NTJhZWU2YTliMzg4YTFmOGMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmNwcApAQCAtNzAsNyArNzAsNyBAQCBi
b29sIHNob3VsZFNhdmVJUkJlZm9yZVBoYXNlKCkKIHN0ZDo6b3B0aW9uYWw8R1BSUmVnPiBwaW5u
ZWRFeHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpCiB7CiAjaWYgQ1BVKEFSTTY0KQotICAgIHJl
dHVybiBNYWNyb0Fzc2VtYmxlcjo6ZGF0YVRlbXBSZWdpc3RlcjsKKyAgICByZXR1cm4gTWFjcm9B
c3NlbWJsZXI6OmxpbmtSZWdpc3RlcjsKICNlbGlmIENQVShYODZfNjQpCiAgICAgcmV0dXJuIHN0
ZDo6bnVsbG9wdDsKICNlbHNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMv
YWlyL0FpckNvZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJDb2RlLmNw
cAppbmRleCA4YmFiNGRiYThhNWFkMDRiYWMzYzk1MmU3MGYzMTE4MDcxOWQwYmVlLi5hNjAyNGU3
ODM0YTExMTdhMDJmZDhhMzRmYTYzOTZlM2Y0ZTNlMzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYjMvYWlyL0FpckNvZGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9iMy9haXIvQWlyQ29kZS5jcHAKQEAgLTkwLDggKzkwLDEwIEBAIENvZGU6OkNvZGUoUHJvY2Vk
dXJlJiBwcm9jKQogICAgICAgICAgICAgc2V0UmVnc0luUHJpb3JpdHlPcmRlcihiYW5rLCByZXN1
bHQpOwogICAgICAgICB9KTsKIAorI2lmICFDUFUoQVJNNjQpCiAgICAgaWYgKGF1dG8gcmVnID0g
cGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIoKSkKICAgICAgICAgcGluUmVnaXN0ZXIo
KnJlZyk7CisjZW5kaWYKIAogICAgIG1fcGlubmVkUmVncy5zZXQoTWFjcm9Bc3NlbWJsZXI6OmZy
YW1lUG9pbnRlclJlZ2lzdGVyKTsKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434843</attachid>
            <date>2021-08-03 11:22:43 -0700</date>
            <delta_ts>2021-08-03 11:42:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-228710-20210803132242.patch</filename>
            <type>text/plain</type>
            <size>6310</size>
            <attacher name="Yijia Huang">yijia_huang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNTg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
MDBlNWQ4OWJjMjRjMDk0NmU4Njc0MWRkZTU4YzMxNjJlNDgyOWNiLi4zZWViZTcyMTZjOGE4OGM1
YTI0ZDUwMWQwMzE5ZGRmM2JiMGM1OTBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNyBAQAorMjAyMS0wOC0wMyAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5j
b20+CisKKyAgICAgICAgVXNlIGxpbmsgcmVnaXN0ZXIgaW5zdGVhZCBvZiBwaW5uaW5nIGEgcmVn
aXN0ZXIgZm9yIG1hdGVyaWFsaXppbmcgYmlnIGxvYWQgY29uc3RhbnRzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjg3MTAKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBIGxpbmsgcmVnaXN0ZXIgaXMgYSBz
cGVjaWFsLXB1cnBvc2UgcmVnaXN0ZXIgd2hpY2ggaG9sZHMgdGhlIGFkZHJlc3MgdG8gcmV0dXJu
IHRvIHdoZW4gYSBmdW5jdGlvbiBjYWxsIAorICAgICAgICBjb21wbGV0ZXMuIFRoaXMgaXMgbW9y
ZSBlZmZpY2llbnQgdGhhbiB0aGUgbW9yZSB0cmFkaXRpb25hbCBzY2hlbWUgb2Ygc3RvcmluZyBy
ZXR1cm4gYWRkcmVzc2VzIG9uIGEgCisgICAgICAgIG1hY2hpbmUgc3RhY2suIFByZXZpb3VseSwg
d2UgcGluIGEgcmVnaXN0ZXIgZm9yIG1hdGVyaWFsaXppbmcgYSBsYXJnZSBjb25zdGFudCB0aGF0
IGNhbm5vdCBmaXQgaW4gTG9hZC9TdG9yZQorICAgICAgICBpbW0gZm9ybS4gVGhpcyBpcyBub3Qg
ZWZmaWNpZW50IHNpbmNlIHRoZSBhbGxvY2F0b3IgaGFzIG9uZSBsZXNzIHJlZ2lzdGVyIHRvIGFj
Y2Vzcy4gVG8gc29sdmUgdGhpcyBwcm9ibGVtLCB3ZSAKKyAgICAgICAgc2hvdWxkIHN3aXRjaCB0
byB0aGUgbGluayByZWdpc3RlciBzdXBwb3J0ZWQgYnkgQVJNNjQuCisKKyAgICAgICAgKiBiMy9C
M0NvbW1vbi5jcHA6CisgICAgICAgIChKU0M6OkIzOjpnZXRMaW5rUmVnaXN0ZXIpOgorICAgICAg
ICAoSlNDOjpCMzo6cGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIpOiBEZWxldGVkLgor
ICAgICAgICAqIGIzL0IzQ29tbW9uLmg6CisgICAgICAgICogYjMvYWlyL0FpckFsbG9jYXRlUmVn
aXN0ZXJzQW5kU3RhY2tBbmRHZW5lcmF0ZUNvZGUuY3BwOgorICAgICAgICAoSlNDOjpCMzo6QWly
OjpjYWxsRnJhbWVBZGRyKToKKyAgICAgICAgKiBiMy9haXIvQWlyQ29kZS5jcHA6CisgICAgICAg
IChKU0M6OkIzOjpBaXI6OkNvZGU6OkNvZGUpOgorICAgICAgICAqIGIzL2Fpci9BaXJMb3dlclN0
YWNrQXJncy5jcHA6CisgICAgICAgIChKU0M6OkIzOjpBaXI6Omxvd2VyU3RhY2tBcmdzKToKKwog
MjAyMS0wOC0wMiAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5jb20+CiAKICAgICAg
ICAgQWRkIGEgbmV3IHBhdHRlcm4gdG8gaW5zdHJ1Y3Rpb24gc2VsZWN0b3IgdG8gdXRpbGl6ZSBV
TVVMTCBzdXBwb3J0ZWQgYnkgQVJNNjQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9iMy9CM0NvbW1vbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb21tb24uY3Bw
CmluZGV4IDk3YjFmZDAwOTAzMzY4ZGY0OTA5M2JkOTU0Y2ZlY2RjZmY3ZWE5MjMuLjJlMzUxODMz
Yjk5NTdjM2VjMjMyYzhkNzBlYjA2YThiM2MyMTM0YmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Iz
L0IzQ29tbW9uLmNwcApAQCAtNjcsMTIgKzY3LDEwIEBAIGJvb2wgc2hvdWxkU2F2ZUlSQmVmb3Jl
UGhhc2UoKQogICAgIHJldHVybiBPcHRpb25zOjp2ZXJib3NlVmFsaWRhdGlvbkZhaWx1cmUoKTsK
IH0KIAotc3RkOjpvcHRpb25hbDxHUFJSZWc+IHBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lz
dGVyKCkKK3N0ZDo6b3B0aW9uYWw8R1BSUmVnPiBnZXRMaW5rUmVnaXN0ZXIoKQogewogI2lmIENQ
VShBUk02NCkKLSAgICByZXR1cm4gTWFjcm9Bc3NlbWJsZXI6OmRhdGFUZW1wUmVnaXN0ZXI7Ci0j
ZWxpZiBDUFUoWDg2XzY0KQotICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgcmV0dXJuIE1h
Y3JvQXNzZW1ibGVyOjpsaW5rUmVnaXN0ZXI7CiAjZWxzZQogI2Vycm9yIFVuaGFuZGxlZCBhcmNo
aXRlY3R1cmUuCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9C
M0NvbW1vbi5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmgKaW5kZXggNjQ4
ZGViOWYxZGZhY2Q2ZjEwYzBkZmFjMTk0YTcxZTMwNGY5MGQyNy4uYjc1YjM5MmRmNzZmYTc5NWRk
ZTczODFjNTA4MWFkNzc0ZWJkN2I4NiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2IzL0IzQ29tbW9uLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmgK
QEAgLTE4Myw3ICsxODMsNyBAQCBpbmxpbmUgdW5zaWduZWQgZGVmYXVsdE9wdExldmVsKCkKICAg
ICByZXR1cm4gT3B0aW9uczo6ZGVmYXVsdEIzT3B0TGV2ZWwoKTsKIH0KIAotc3RkOjpvcHRpb25h
bDxHUFJSZWc+IHBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCk7CitzdGQ6Om9wdGlv
bmFsPEdQUlJlZz4gZ2V0TGlua1JlZ2lzdGVyKCk7CiAKIH0gfSAvLyBuYW1lc3BhY2UgSlNDOjpC
MwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0FpckFsbG9jYXRl
UmVnaXN0ZXJzQW5kU3RhY2tBbmRHZW5lcmF0ZUNvZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2IzL2Fpci9BaXJBbGxvY2F0ZVJlZ2lzdGVyc0FuZFN0YWNrQW5kR2VuZXJhdGVDb2RlLmNw
cAppbmRleCBlM2M2Mzg0M2YwZWJkYjcxY2I2ZjZhY2RlMjVmMTNhYTNjZWE4YmNhLi45MjRlODMw
NDdhZTA1YTJiOGFlYTkxOTBiYTA5MDhjMWRhMjkyMmUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYjMvYWlyL0FpckFsbG9jYXRlUmVnaXN0ZXJzQW5kU3RhY2tBbmRHZW5lcmF0
ZUNvZGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyQWxsb2NhdGVS
ZWdpc3RlcnNBbmRTdGFja0FuZEdlbmVyYXRlQ29kZS5jcHAKQEAgLTE0NCwxMSArMTQ0LDExIEBA
IHN0YXRpYyBBTFdBWVNfSU5MSU5FIENDYWxsSGVscGVyczo6QWRkcmVzcyBjYWxsRnJhbWVBZGRy
KENDYWxsSGVscGVycyYgaml0LCBpbnRwCiAgICAgICAgIHJldHVybiBDQ2FsbEhlbHBlcnM6OkFk
ZHJlc3MoR1BSSW5mbzo6Y2FsbEZyYW1lUmVnaXN0ZXIsIG9mZnNldEZyb21GUCk7CiAgICAgfQog
Ci0gICAgQVNTRVJUKHBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCkpOworICAgIEFT
U0VSVChnZXRMaW5rUmVnaXN0ZXIoKSk7CiAgICAgYXV0byBhZGRyID0gQXJnOjphZGRyKEFpcjo6
VG1wKEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVyKSwgb2Zmc2V0RnJvbUZQKTsKICAgICBpZiAo
YWRkci5pc1ZhbGlkRm9ybShXaWR0aDY0KSkKICAgICAgICAgcmV0dXJuIENDYWxsSGVscGVyczo6
QWRkcmVzcyhHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3Rlciwgb2Zmc2V0RnJvbUZQKTsKLSAgICBH
UFJSZWcgcmVnID0gKnBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCk7CisgICAgR1BS
UmVnIHJlZyA9ICpnZXRMaW5rUmVnaXN0ZXIoKTsKICAgICBqaXQubW92ZShDQ2FsbEhlbHBlcnM6
OlRydXN0ZWRJbW1QdHIob2Zmc2V0RnJvbUZQKSwgcmVnKTsKICAgICBqaXQuYWRkNjQoR1BSSW5m
bzo6Y2FsbEZyYW1lUmVnaXN0ZXIsIHJlZyk7CiAgICAgcmV0dXJuIENDYWxsSGVscGVyczo6QWRk
cmVzcyhyZWcpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJD
b2RlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyQ29kZS5jcHAKaW5kZXgg
OGJhYjRkYmE4YTVhZDA0YmFjM2M5NTJlNzBmMzExODA3MTlkMGJlZS4uZjEzNWU2OTdhYjQ3M2I4
ODc2ZGYxNGJiMTBmMDI3ODY4Zjg0OTBjYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2IzL2Fpci9BaXJDb2RlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWly
L0FpckNvZGUuY3BwCkBAIC05MCw5ICs5MCw2IEBAIENvZGU6OkNvZGUoUHJvY2VkdXJlJiBwcm9j
KQogICAgICAgICAgICAgc2V0UmVnc0luUHJpb3JpdHlPcmRlcihiYW5rLCByZXN1bHQpOwogICAg
ICAgICB9KTsKIAotICAgIGlmIChhdXRvIHJlZyA9IHBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJl
Z2lzdGVyKCkpCi0gICAgICAgIHBpblJlZ2lzdGVyKCpyZWcpOwotCiAgICAgbV9waW5uZWRSZWdz
LnNldChNYWNyb0Fzc2VtYmxlcjo6ZnJhbWVQb2ludGVyUmVnaXN0ZXIpOwogfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0Fpckxvd2VyU3RhY2tBcmdzLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyTG93ZXJTdGFja0FyZ3MuY3BwCmluZGV4
IDkwNWU2MTdmYmRlMGUyYjdkNzU1NTYzZTY4ODU4OWJkYWQ3MjZjODAuLjYxYjIwMjQ0N2NmYTYy
ZmQwNTgxYjY1YzhjYTJjZDgyMjZmMjRiY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9iMy9haXIvQWlyTG93ZXJTdGFja0FyZ3MuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9iMy9haXIvQWlyTG93ZXJTdGFja0FyZ3MuY3BwCkBAIC03OCw4ICs3OCw4IEBAIHZvaWQg
bG93ZXJTdGFja0FyZ3MoQ29kZSYgY29kZSkKICAgICAgICAgICAgICAgICAgICAgaWYgKEFyZzo6
aXNWYWxpZEltbUZvcm0ob2Zmc2V0KSkKICAgICAgICAgICAgICAgICAgICAgICAgIGluc3QgPSBJ
bnN0KGluc3Qua2luZC5vcGNvZGUgPT0gTGVhMzIgPyBBZGQzMiA6IEFkZDY0LCBpbnN0Lm9yaWdp
biwgQXJnOjppbW0ob2Zmc2V0KSwgYmFzZSwgaW5zdC5hcmdzWzFdKTsKICAgICAgICAgICAgICAg
ICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBBU1NFUlQocGlubmVkRXh0ZW5k
ZWRPZmZzZXRBZGRyUmVnaXN0ZXIoKSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBBaXI6OlRt
cCB0bXAgPSBBaXI6OlRtcCgqcGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIoKSk7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBBU1NFUlQoZ2V0TGlua1JlZ2lzdGVyKCkpOworICAgICAg
ICAgICAgICAgICAgICAgICAgQWlyOjpUbXAgdG1wID0gQWlyOjpUbXAoKmdldExpbmtSZWdpc3Rl
cigpKTsKICAgICAgICAgICAgICAgICAgICAgICAgIEFyZyBvZmZzZXRBcmcgPSBBcmc6OmJpZ0lt
bShvZmZzZXQpOwogICAgICAgICAgICAgICAgICAgICAgICAgaW5zZXJ0aW9uU2V0Lmluc2VydChp
bnN0SW5kZXgsIE1vdmUsIGluc3Qub3JpZ2luLCBvZmZzZXRBcmcsIHRtcCk7CiAgICAgICAgICAg
ICAgICAgICAgICAgICBpbnN0ID0gSW5zdChpbnN0LmtpbmQub3Bjb2RlID09IExlYTMyID8gQWRk
MzIgOiBBZGQ2NCwgaW5zdC5vcmlnaW4sIHRtcCwgYmFzZSwgaW5zdC5hcmdzWzFdKTsKQEAgLTEy
OCw4ICsxMjgsOCBAQCB2b2lkIGxvd2VyU3RhY2tBcmdzKENvZGUmIGNvZGUpCiAgICAgICAgICAg
ICAgICAgICAgICAgICBpZiAocmVzdWx0LmlzVmFsaWRGb3JtKHdpZHRoKSkKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0OwogI2lmIENQVShBUk02NCkKLSAgICAgICAg
ICAgICAgICAgICAgICAgIEFTU0VSVChwaW5uZWRFeHRlbmRlZE9mZnNldEFkZHJSZWdpc3Rlcigp
KTsKLSAgICAgICAgICAgICAgICAgICAgICAgIEFpcjo6VG1wIHRtcCA9IEFpcjo6VG1wKCpwaW5u
ZWRFeHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpKTsKKyAgICAgICAgICAgICAgICAgICAgICAg
IEFTU0VSVChnZXRMaW5rUmVnaXN0ZXIoKSk7CisgICAgICAgICAgICAgICAgICAgICAgICBBaXI6
OlRtcCB0bXAgPSBBaXI6OlRtcCgqZ2V0TGlua1JlZ2lzdGVyKCkpOwogCiAgICAgICAgICAgICAg
ICAgICAgICAgICBBcmcgbGFyZ2VPZmZzZXQgPSBBcmc6OmlzVmFsaWRJbW1Gb3JtKG9mZnNldEZy
b21TUCkgPyBBcmc6OmltbShvZmZzZXRGcm9tU1ApIDogQXJnOjpiaWdJbW0ob2Zmc2V0RnJvbVNQ
KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGluc2VydGlvblNldC5pbnNlcnQoaW5zdEluZGV4
LCBNb3ZlLCBpbnN0Lm9yaWdpbiwgbGFyZ2VPZmZzZXQsIHRtcCk7Cg==
</data>
<flag name="commit-queue"
          id="457470"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434845</attachid>
            <date>2021-08-03 11:38:33 -0700</date>
            <delta_ts>2021-08-03 11:54:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-228710-20210803133832.patch</filename>
            <type>text/plain</type>
            <size>6270</size>
            <attacher name="Yijia Huang">yijia_huang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNTg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
MDBlNWQ4OWJjMjRjMDk0NmU4Njc0MWRkZTU4YzMxNjJlNDgyOWNiLi4zZWViZTcyMTZjOGE4OGM1
YTI0ZDUwMWQwMzE5ZGRmM2JiMGM1OTBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNyBAQAorMjAyMS0wOC0wMyAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5j
b20+CisKKyAgICAgICAgVXNlIGxpbmsgcmVnaXN0ZXIgaW5zdGVhZCBvZiBwaW5uaW5nIGEgcmVn
aXN0ZXIgZm9yIG1hdGVyaWFsaXppbmcgYmlnIGxvYWQgY29uc3RhbnRzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjg3MTAKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBIGxpbmsgcmVnaXN0ZXIgaXMgYSBz
cGVjaWFsLXB1cnBvc2UgcmVnaXN0ZXIgd2hpY2ggaG9sZHMgdGhlIGFkZHJlc3MgdG8gcmV0dXJu
IHRvIHdoZW4gYSBmdW5jdGlvbiBjYWxsIAorICAgICAgICBjb21wbGV0ZXMuIFRoaXMgaXMgbW9y
ZSBlZmZpY2llbnQgdGhhbiB0aGUgbW9yZSB0cmFkaXRpb25hbCBzY2hlbWUgb2Ygc3RvcmluZyBy
ZXR1cm4gYWRkcmVzc2VzIG9uIGEgCisgICAgICAgIG1hY2hpbmUgc3RhY2suIFByZXZpb3VseSwg
d2UgcGluIGEgcmVnaXN0ZXIgZm9yIG1hdGVyaWFsaXppbmcgYSBsYXJnZSBjb25zdGFudCB0aGF0
IGNhbm5vdCBmaXQgaW4gTG9hZC9TdG9yZQorICAgICAgICBpbW0gZm9ybS4gVGhpcyBpcyBub3Qg
ZWZmaWNpZW50IHNpbmNlIHRoZSBhbGxvY2F0b3IgaGFzIG9uZSBsZXNzIHJlZ2lzdGVyIHRvIGFj
Y2Vzcy4gVG8gc29sdmUgdGhpcyBwcm9ibGVtLCB3ZSAKKyAgICAgICAgc2hvdWxkIHN3aXRjaCB0
byB0aGUgbGluayByZWdpc3RlciBzdXBwb3J0ZWQgYnkgQVJNNjQuCisKKyAgICAgICAgKiBiMy9C
M0NvbW1vbi5jcHA6CisgICAgICAgIChKU0M6OkIzOjpnZXRMaW5rUmVnaXN0ZXIpOgorICAgICAg
ICAoSlNDOjpCMzo6cGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIpOiBEZWxldGVkLgor
ICAgICAgICAqIGIzL0IzQ29tbW9uLmg6CisgICAgICAgICogYjMvYWlyL0FpckFsbG9jYXRlUmVn
aXN0ZXJzQW5kU3RhY2tBbmRHZW5lcmF0ZUNvZGUuY3BwOgorICAgICAgICAoSlNDOjpCMzo6QWly
OjpjYWxsRnJhbWVBZGRyKToKKyAgICAgICAgKiBiMy9haXIvQWlyQ29kZS5jcHA6CisgICAgICAg
IChKU0M6OkIzOjpBaXI6OkNvZGU6OkNvZGUpOgorICAgICAgICAqIGIzL2Fpci9BaXJMb3dlclN0
YWNrQXJncy5jcHA6CisgICAgICAgIChKU0M6OkIzOjpBaXI6Omxvd2VyU3RhY2tBcmdzKToKKwog
MjAyMS0wOC0wMiAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5jb20+CiAKICAgICAg
ICAgQWRkIGEgbmV3IHBhdHRlcm4gdG8gaW5zdHJ1Y3Rpb24gc2VsZWN0b3IgdG8gdXRpbGl6ZSBV
TVVMTCBzdXBwb3J0ZWQgYnkgQVJNNjQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9iMy9CM0NvbW1vbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb21tb24uY3Bw
CmluZGV4IDk3YjFmZDAwOTAzMzY4ZGY0OTA5M2JkOTU0Y2ZlY2RjZmY3ZWE5MjMuLjhiMDQ5YWQ0
NmZlZDFiOWIxMmI4YmNlZDdhNjhlNmQ3ZjYwM2NhYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Iz
L0IzQ29tbW9uLmNwcApAQCAtNjcsMTAgKzY3LDEwIEBAIGJvb2wgc2hvdWxkU2F2ZUlSQmVmb3Jl
UGhhc2UoKQogICAgIHJldHVybiBPcHRpb25zOjp2ZXJib3NlVmFsaWRhdGlvbkZhaWx1cmUoKTsK
IH0KIAotc3RkOjpvcHRpb25hbDxHUFJSZWc+IHBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lz
dGVyKCkKK3N0ZDo6b3B0aW9uYWw8R1BSUmVnPiBnZXRMaW5rUmVnaXN0ZXIoKQogewogI2lmIENQ
VShBUk02NCkKLSAgICByZXR1cm4gTWFjcm9Bc3NlbWJsZXI6OmRhdGFUZW1wUmVnaXN0ZXI7Cisg
ICAgcmV0dXJuIE1hY3JvQXNzZW1ibGVyOjpsaW5rUmVnaXN0ZXI7CiAjZWxpZiBDUFUoWDg2XzY0
KQogICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiAjZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjND
b21tb24uaAppbmRleCA2NDhkZWI5ZjFkZmFjZDZmMTBjMGRmYWMxOTRhNzFlMzA0ZjkwZDI3Li5i
NzViMzkyZGY3NmZhNzk1ZGRlNzM4MWM1MDgxYWQ3NzRlYmQ3Yjg2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb21tb24uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYjMvQjNDb21tb24uaApAQCAtMTgzLDcgKzE4Myw3IEBAIGlubGluZSB1bnNpZ25lZCBkZWZh
dWx0T3B0TGV2ZWwoKQogICAgIHJldHVybiBPcHRpb25zOjpkZWZhdWx0QjNPcHRMZXZlbCgpOwog
fQogCi1zdGQ6Om9wdGlvbmFsPEdQUlJlZz4gcGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0
ZXIoKTsKK3N0ZDo6b3B0aW9uYWw8R1BSUmVnPiBnZXRMaW5rUmVnaXN0ZXIoKTsKIAogfSB9IC8v
IG5hbWVzcGFjZSBKU0M6OkIzCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
My9haXIvQWlyQWxsb2NhdGVSZWdpc3RlcnNBbmRTdGFja0FuZEdlbmVyYXRlQ29kZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0FpckFsbG9jYXRlUmVnaXN0ZXJzQW5kU3RhY2tB
bmRHZW5lcmF0ZUNvZGUuY3BwCmluZGV4IGUzYzYzODQzZjBlYmRiNzFjYjZmNmFjZGUyNWYxM2Fh
M2NlYThiY2EuLjkyNGU4MzA0N2FlMDVhMmI4YWVhOTE5MGJhMDkwOGMxZGEyOTIyZTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyQWxsb2NhdGVSZWdpc3RlcnNB
bmRTdGFja0FuZEdlbmVyYXRlQ29kZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Iz
L2Fpci9BaXJBbGxvY2F0ZVJlZ2lzdGVyc0FuZFN0YWNrQW5kR2VuZXJhdGVDb2RlLmNwcApAQCAt
MTQ0LDExICsxNDQsMTEgQEAgc3RhdGljIEFMV0FZU19JTkxJTkUgQ0NhbGxIZWxwZXJzOjpBZGRy
ZXNzIGNhbGxGcmFtZUFkZHIoQ0NhbGxIZWxwZXJzJiBqaXQsIGludHAKICAgICAgICAgcmV0dXJu
IENDYWxsSGVscGVyczo6QWRkcmVzcyhHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3Rlciwgb2Zmc2V0
RnJvbUZQKTsKICAgICB9CiAKLSAgICBBU1NFUlQocGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVn
aXN0ZXIoKSk7CisgICAgQVNTRVJUKGdldExpbmtSZWdpc3RlcigpKTsKICAgICBhdXRvIGFkZHIg
PSBBcmc6OmFkZHIoQWlyOjpUbXAoR1BSSW5mbzo6Y2FsbEZyYW1lUmVnaXN0ZXIpLCBvZmZzZXRG
cm9tRlApOwogICAgIGlmIChhZGRyLmlzVmFsaWRGb3JtKFdpZHRoNjQpKQogICAgICAgICByZXR1
cm4gQ0NhbGxIZWxwZXJzOjpBZGRyZXNzKEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVyLCBvZmZz
ZXRGcm9tRlApOwotICAgIEdQUlJlZyByZWcgPSAqcGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVn
aXN0ZXIoKTsKKyAgICBHUFJSZWcgcmVnID0gKmdldExpbmtSZWdpc3RlcigpOwogICAgIGppdC5t
b3ZlKENDYWxsSGVscGVyczo6VHJ1c3RlZEltbVB0cihvZmZzZXRGcm9tRlApLCByZWcpOwogICAg
IGppdC5hZGQ2NChHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3RlciwgcmVnKTsKICAgICByZXR1cm4g
Q0NhbGxIZWxwZXJzOjpBZGRyZXNzKHJlZyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYjMvYWlyL0FpckNvZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9B
aXJDb2RlLmNwcAppbmRleCA4YmFiNGRiYThhNWFkMDRiYWMzYzk1MmU3MGYzMTE4MDcxOWQwYmVl
Li5mMTM1ZTY5N2FiNDczYjg4NzZkZjE0YmIxMGYwMjc4NjhmODQ5MGNhIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0FpckNvZGUuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9iMy9haXIvQWlyQ29kZS5jcHAKQEAgLTkwLDkgKzkwLDYgQEAgQ29kZTo6Q29k
ZShQcm9jZWR1cmUmIHByb2MpCiAgICAgICAgICAgICBzZXRSZWdzSW5Qcmlvcml0eU9yZGVyKGJh
bmssIHJlc3VsdCk7CiAgICAgICAgIH0pOwogCi0gICAgaWYgKGF1dG8gcmVnID0gcGlubmVkRXh0
ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIoKSkKLSAgICAgICAgcGluUmVnaXN0ZXIoKnJlZyk7Ci0K
ICAgICBtX3Bpbm5lZFJlZ3Muc2V0KE1hY3JvQXNzZW1ibGVyOjpmcmFtZVBvaW50ZXJSZWdpc3Rl
cik7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyTG93
ZXJTdGFja0FyZ3MuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJMb3dlclN0
YWNrQXJncy5jcHAKaW5kZXggOTA1ZTYxN2ZiZGUwZTJiN2Q3NTU1NjNlNjg4NTg5YmRhZDcyNmM4
MC4uNjFiMjAyNDQ3Y2ZhNjJmZDA1ODFiNjVjOGNhMmNkODIyNmYyNGJjZCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJMb3dlclN0YWNrQXJncy5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJMb3dlclN0YWNrQXJncy5jcHAKQEAgLTc4
LDggKzc4LDggQEAgdm9pZCBsb3dlclN0YWNrQXJncyhDb2RlJiBjb2RlKQogICAgICAgICAgICAg
ICAgICAgICBpZiAoQXJnOjppc1ZhbGlkSW1tRm9ybShvZmZzZXQpKQogICAgICAgICAgICAgICAg
ICAgICAgICAgaW5zdCA9IEluc3QoaW5zdC5raW5kLm9wY29kZSA9PSBMZWEzMiA/IEFkZDMyIDog
QWRkNjQsIGluc3Qub3JpZ2luLCBBcmc6OmltbShvZmZzZXQpLCBiYXNlLCBpbnN0LmFyZ3NbMV0p
OwogICAgICAgICAgICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIEFT
U0VSVChwaW5uZWRFeHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpKTsKLSAgICAgICAgICAgICAg
ICAgICAgICAgIEFpcjo6VG1wIHRtcCA9IEFpcjo6VG1wKCpwaW5uZWRFeHRlbmRlZE9mZnNldEFk
ZHJSZWdpc3RlcigpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIEFTU0VSVChnZXRMaW5rUmVn
aXN0ZXIoKSk7CisgICAgICAgICAgICAgICAgICAgICAgICBBaXI6OlRtcCB0bXAgPSBBaXI6OlRt
cCgqZ2V0TGlua1JlZ2lzdGVyKCkpOwogICAgICAgICAgICAgICAgICAgICAgICAgQXJnIG9mZnNl
dEFyZyA9IEFyZzo6YmlnSW1tKG9mZnNldCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnNl
cnRpb25TZXQuaW5zZXJ0KGluc3RJbmRleCwgTW92ZSwgaW5zdC5vcmlnaW4sIG9mZnNldEFyZywg
dG1wKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGluc3QgPSBJbnN0KGluc3Qua2luZC5vcGNv
ZGUgPT0gTGVhMzIgPyBBZGQzMiA6IEFkZDY0LCBpbnN0Lm9yaWdpbiwgdG1wLCBiYXNlLCBpbnN0
LmFyZ3NbMV0pOwpAQCAtMTI4LDggKzEyOCw4IEBAIHZvaWQgbG93ZXJTdGFja0FyZ3MoQ29kZSYg
Y29kZSkKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQuaXNWYWxpZEZvcm0od2lk
dGgpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAjaWYgQ1BV
KEFSTTY0KQotICAgICAgICAgICAgICAgICAgICAgICAgQVNTRVJUKHBpbm5lZEV4dGVuZGVkT2Zm
c2V0QWRkclJlZ2lzdGVyKCkpOwotICAgICAgICAgICAgICAgICAgICAgICAgQWlyOjpUbXAgdG1w
ID0gQWlyOjpUbXAoKnBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCkpOworICAgICAg
ICAgICAgICAgICAgICAgICAgQVNTRVJUKGdldExpbmtSZWdpc3RlcigpKTsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIEFpcjo6VG1wIHRtcCA9IEFpcjo6VG1wKCpnZXRMaW5rUmVnaXN0ZXIoKSk7
CiAKICAgICAgICAgICAgICAgICAgICAgICAgIEFyZyBsYXJnZU9mZnNldCA9IEFyZzo6aXNWYWxp
ZEltbUZvcm0ob2Zmc2V0RnJvbVNQKSA/IEFyZzo6aW1tKG9mZnNldEZyb21TUCkgOiBBcmc6OmJp
Z0ltbShvZmZzZXRGcm9tU1ApOwogICAgICAgICAgICAgICAgICAgICAgICAgaW5zZXJ0aW9uU2V0
Lmluc2VydChpbnN0SW5kZXgsIE1vdmUsIGluc3Qub3JpZ2luLCBsYXJnZU9mZnNldCwgdG1wKTsK
</data>
<flag name="review"
          id="457469"
          type_id="1"
          status="+"
          setter="mark.lam"
    />
    <flag name="commit-queue"
          id="457471"
          type_id="3"
          status="-"
          setter="mark.lam"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434849</attachid>
            <date>2021-08-03 12:13:56 -0700</date>
            <delta_ts>2021-08-03 12:30:50 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-228710-20210803141355.patch</filename>
            <type>text/plain</type>
            <size>6089</size>
            <attacher name="Yijia Huang">yijia_huang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNTg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
MDBlNWQ4OWJjMjRjMDk0NmU4Njc0MWRkZTU4YzMxNjJlNDgyOWNiLi40M2MxY2IxMmZhYWMwZGU5
OGQyNTY1NWJhYjNiZTA0MjVlZTVlYTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNiBAQAorMjAyMS0wOC0wMyAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5j
b20+CisKKyAgICAgICAgW0FSTTY0XSBVc2UgbGluayByZWdpc3RlciBpbnN0ZWFkIG9mIHBpbm5p
bmcgYSByZWdpc3RlciBmb3IgbWF0ZXJpYWxpemluZyBiaWcgbG9hZCBjb25zdGFudHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyODcxMAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE1hcmsgTGFtLgorCisgICAgICAgIFByZXZpb3VzbHksIHdlIHBpbiBh
IHJlZ2lzdGVyIGFzIGEgdGVtcCBmb3IgbWF0ZXJpYWxpemluZyBhIGxhcmdlIGNvbnN0YW50IHRo
YXQgY2Fubm90IGZpdCBpbgorICAgICAgICBMb2FkL1N0b3JlIGltbSBmb3JtLiBUaGlzIGlzIG5v
dCBlZmZpY2llbnQgc2luY2UgdGhlIHJlZ2lzdGVyIGFsbG9jYXRvciBoYXMgb25lIGxlc3MgcmVn
aXN0ZXIKKyAgICAgICAgdG8gYWxsb2NhdGUgZnJvbS4gVG8gc29sdmUgdGhpcyBwcm9ibGVtLCB3
ZSBzaG91bGQgc3dpdGNoIHRvIHVzaW5nIHRoZSBsaW5rIHJlZ2lzdGVyIGFzIHRoZSB0ZW1wCisg
ICAgICAgIG9uIEFSTTY0LgorCisgICAgICAgICogYjMvQjNDb21tb24uY3BwOgorICAgICAgICAo
SlNDOjpCMzo6bGlua1JlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6QjM6OnBpbm5lZEV4dGVuZGVk
T2Zmc2V0QWRkclJlZ2lzdGVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBiMy9CM0NvbW1vbi5oOgor
ICAgICAgICAqIGIzL2Fpci9BaXJBbGxvY2F0ZVJlZ2lzdGVyc0FuZFN0YWNrQW5kR2VuZXJhdGVD
b2RlLmNwcDoKKyAgICAgICAgKEpTQzo6QjM6OkFpcjo6Y2FsbEZyYW1lQWRkcik6CisgICAgICAg
ICogYjMvYWlyL0FpckNvZGUuY3BwOgorICAgICAgICAoSlNDOjpCMzo6QWlyOjpDb2RlOjpDb2Rl
KToKKyAgICAgICAgKiBiMy9haXIvQWlyTG93ZXJTdGFja0FyZ3MuY3BwOgorICAgICAgICAoSlND
OjpCMzo6QWlyOjpsb3dlclN0YWNrQXJncyk6CisKIDIwMjEtMDgtMDIgIFlpamlhIEh1YW5nICA8
eWlqaWFfaHVhbmdAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBhIG5ldyBwYXR0ZXJuIHRvIGlu
c3RydWN0aW9uIHNlbGVjdG9yIHRvIHV0aWxpemUgVU1VTEwgc3VwcG9ydGVkIGJ5IEFSTTY0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb21tb24uY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmNwcAppbmRleCA5N2IxZmQwMDkwMzM2OGRmNDkw
OTNiZDk1NGNmZWNkY2ZmN2VhOTIzLi4xNWU3NTk5NmJmMDhmODk5YzNlNGI5Y2MwMjQ1NzAzYzAx
MTEwOWE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb21tb24uY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5jcHAKQEAgLTY3LDEyICs2
NywxMCBAQCBib29sIHNob3VsZFNhdmVJUkJlZm9yZVBoYXNlKCkKICAgICByZXR1cm4gT3B0aW9u
czo6dmVyYm9zZVZhbGlkYXRpb25GYWlsdXJlKCk7CiB9CiAKLXN0ZDo6b3B0aW9uYWw8R1BSUmVn
PiBwaW5uZWRFeHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpCitzdGQ6Om9wdGlvbmFsPEdQUlJl
Zz4gbGlua1JlZ2lzdGVyKCkKIHsKICNpZiBDUFUoQVJNNjQpCi0gICAgcmV0dXJuIE1hY3JvQXNz
ZW1ibGVyOjpkYXRhVGVtcFJlZ2lzdGVyOwotI2VsaWYgQ1BVKFg4Nl82NCkKLSAgICByZXR1cm4g
c3RkOjpudWxsb3B0OworICAgIHJldHVybiBNYWNyb0Fzc2VtYmxlcjo6bGlua1JlZ2lzdGVyOwog
I2Vsc2UKICNlcnJvciBVbmhhbmRsZWQgYXJjaGl0ZWN0dXJlLgogI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb21tb24uaCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9iMy9CM0NvbW1vbi5oCmluZGV4IDY0OGRlYjlmMWRmYWNkNmYxMGMwZGZhYzE5NGE3MWUz
MDRmOTBkMjcuLjlmMmVjMzkxYzQzN2I0MzdkNmI1YzAzNmY4YjRhNTczMmNlNjhmNzAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5oCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5oCkBAIC0xODMsNyArMTgzLDcgQEAgaW5saW5lIHVu
c2lnbmVkIGRlZmF1bHRPcHRMZXZlbCgpCiAgICAgcmV0dXJuIE9wdGlvbnM6OmRlZmF1bHRCM09w
dExldmVsKCk7CiB9CiAKLXN0ZDo6b3B0aW9uYWw8R1BSUmVnPiBwaW5uZWRFeHRlbmRlZE9mZnNl
dEFkZHJSZWdpc3RlcigpOworc3RkOjpvcHRpb25hbDxHUFJSZWc+IGxpbmtSZWdpc3RlcigpOwog
CiB9IH0gLy8gbmFtZXNwYWNlIEpTQzo6QjMKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2IzL2Fpci9BaXJBbGxvY2F0ZVJlZ2lzdGVyc0FuZFN0YWNrQW5kR2VuZXJhdGVDb2Rl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyQWxsb2NhdGVSZWdpc3RlcnNB
bmRTdGFja0FuZEdlbmVyYXRlQ29kZS5jcHAKaW5kZXggZTNjNjM4NDNmMGViZGI3MWNiNmY2YWNk
ZTI1ZjEzYWEzY2VhOGJjYS4uNzVkYTc2NGQ5Y2Y5MTZmMzZmZDBmY2VhMDJkY2Y2ZDYxYThmNzVh
MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJBbGxvY2F0ZVJl
Z2lzdGVyc0FuZFN0YWNrQW5kR2VuZXJhdGVDb2RlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYjMvYWlyL0FpckFsbG9jYXRlUmVnaXN0ZXJzQW5kU3RhY2tBbmRHZW5lcmF0ZUNvZGUu
Y3BwCkBAIC0xNDQsMTEgKzE0NCwxMSBAQCBzdGF0aWMgQUxXQVlTX0lOTElORSBDQ2FsbEhlbHBl
cnM6OkFkZHJlc3MgY2FsbEZyYW1lQWRkcihDQ2FsbEhlbHBlcnMmIGppdCwgaW50cAogICAgICAg
ICByZXR1cm4gQ0NhbGxIZWxwZXJzOjpBZGRyZXNzKEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVy
LCBvZmZzZXRGcm9tRlApOwogICAgIH0KIAotICAgIEFTU0VSVChwaW5uZWRFeHRlbmRlZE9mZnNl
dEFkZHJSZWdpc3RlcigpKTsKKyAgICBBU1NFUlQobGlua1JlZ2lzdGVyKCkpOwogICAgIGF1dG8g
YWRkciA9IEFyZzo6YWRkcihBaXI6OlRtcChHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3RlciksIG9m
ZnNldEZyb21GUCk7CiAgICAgaWYgKGFkZHIuaXNWYWxpZEZvcm0oV2lkdGg2NCkpCiAgICAgICAg
IHJldHVybiBDQ2FsbEhlbHBlcnM6OkFkZHJlc3MoR1BSSW5mbzo6Y2FsbEZyYW1lUmVnaXN0ZXIs
IG9mZnNldEZyb21GUCk7Ci0gICAgR1BSUmVnIHJlZyA9ICpwaW5uZWRFeHRlbmRlZE9mZnNldEFk
ZHJSZWdpc3RlcigpOworICAgIEdQUlJlZyByZWcgPSAqbGlua1JlZ2lzdGVyKCk7CiAgICAgaml0
Lm1vdmUoQ0NhbGxIZWxwZXJzOjpUcnVzdGVkSW1tUHRyKG9mZnNldEZyb21GUCksIHJlZyk7CiAg
ICAgaml0LmFkZDY0KEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVyLCByZWcpOwogICAgIHJldHVy
biBDQ2FsbEhlbHBlcnM6OkFkZHJlc3MocmVnKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9iMy9haXIvQWlyQ29kZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWly
L0FpckNvZGUuY3BwCmluZGV4IDhiYWI0ZGJhOGE1YWQwNGJhYzNjOTUyZTcwZjMxMTgwNzE5ZDBi
ZWUuLmYxMzVlNjk3YWI0NzNiODg3NmRmMTRiYjEwZjAyNzg2OGY4NDkwY2EgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyQ29kZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJDb2RlLmNwcApAQCAtOTAsOSArOTAsNiBAQCBDb2RlOjpD
b2RlKFByb2NlZHVyZSYgcHJvYykKICAgICAgICAgICAgIHNldFJlZ3NJblByaW9yaXR5T3JkZXIo
YmFuaywgcmVzdWx0KTsKICAgICAgICAgfSk7CiAKLSAgICBpZiAoYXV0byByZWcgPSBwaW5uZWRF
eHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpKQotICAgICAgICBwaW5SZWdpc3RlcigqcmVnKTsK
LQogICAgIG1fcGlubmVkUmVncy5zZXQoTWFjcm9Bc3NlbWJsZXI6OmZyYW1lUG9pbnRlclJlZ2lz
dGVyKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJM
b3dlclN0YWNrQXJncy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0Fpckxvd2Vy
U3RhY2tBcmdzLmNwcAppbmRleCA5MDVlNjE3ZmJkZTBlMmI3ZDc1NTU2M2U2ODg1ODliZGFkNzI2
YzgwLi44NGYzODJhNWYyNTIxNGMzMTg2YzA2OWQ1N2YzODliMTg5NjA2Zjg3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0Fpckxvd2VyU3RhY2tBcmdzLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0Fpckxvd2VyU3RhY2tBcmdzLmNwcApAQCAt
NzgsOCArNzgsOCBAQCB2b2lkIGxvd2VyU3RhY2tBcmdzKENvZGUmIGNvZGUpCiAgICAgICAgICAg
ICAgICAgICAgIGlmIChBcmc6OmlzVmFsaWRJbW1Gb3JtKG9mZnNldCkpCiAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnN0ID0gSW5zdChpbnN0LmtpbmQub3Bjb2RlID09IExlYTMyID8gQWRkMzIg
OiBBZGQ2NCwgaW5zdC5vcmlnaW4sIEFyZzo6aW1tKG9mZnNldCksIGJhc2UsIGluc3QuYXJnc1sx
XSk7CiAgICAgICAgICAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgICAgICAgICAg
QVNTRVJUKHBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCkpOwotICAgICAgICAgICAg
ICAgICAgICAgICAgQWlyOjpUbXAgdG1wID0gQWlyOjpUbXAoKnBpbm5lZEV4dGVuZGVkT2Zmc2V0
QWRkclJlZ2lzdGVyKCkpOworICAgICAgICAgICAgICAgICAgICAgICAgQVNTRVJUKGxpbmtSZWdp
c3RlcigpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIEFpcjo6VG1wIHRtcCA9IEFpcjo6VG1w
KCpsaW5rUmVnaXN0ZXIoKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBBcmcgb2Zmc2V0QXJn
ID0gQXJnOjpiaWdJbW0ob2Zmc2V0KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGluc2VydGlv
blNldC5pbnNlcnQoaW5zdEluZGV4LCBNb3ZlLCBpbnN0Lm9yaWdpbiwgb2Zmc2V0QXJnLCB0bXAp
OwogICAgICAgICAgICAgICAgICAgICAgICAgaW5zdCA9IEluc3QoaW5zdC5raW5kLm9wY29kZSA9
PSBMZWEzMiA/IEFkZDMyIDogQWRkNjQsIGluc3Qub3JpZ2luLCB0bXAsIGJhc2UsIGluc3QuYXJn
c1sxXSk7CkBAIC0xMjgsOCArMTI4LDggQEAgdm9pZCBsb3dlclN0YWNrQXJncyhDb2RlJiBjb2Rl
KQogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3VsdC5pc1ZhbGlkRm9ybSh3aWR0aCkp
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICNpZiBDUFUoQVJN
NjQpCi0gICAgICAgICAgICAgICAgICAgICAgICBBU1NFUlQocGlubmVkRXh0ZW5kZWRPZmZzZXRB
ZGRyUmVnaXN0ZXIoKSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBBaXI6OlRtcCB0bXAgPSBB
aXI6OlRtcCgqcGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIoKSk7CisgICAgICAgICAg
ICAgICAgICAgICAgICBBU1NFUlQobGlua1JlZ2lzdGVyKCkpOworICAgICAgICAgICAgICAgICAg
ICAgICAgQWlyOjpUbXAgdG1wID0gQWlyOjpUbXAoKmxpbmtSZWdpc3RlcigpKTsKIAogICAgICAg
ICAgICAgICAgICAgICAgICAgQXJnIGxhcmdlT2Zmc2V0ID0gQXJnOjppc1ZhbGlkSW1tRm9ybShv
ZmZzZXRGcm9tU1ApID8gQXJnOjppbW0ob2Zmc2V0RnJvbVNQKSA6IEFyZzo6YmlnSW1tKG9mZnNl
dEZyb21TUCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnNlcnRpb25TZXQuaW5zZXJ0KGlu
c3RJbmRleCwgTW92ZSwgaW5zdC5vcmlnaW4sIGxhcmdlT2Zmc2V0LCB0bXApOwo=
</data>
<flag name="commit-queue"
          id="457478"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434851</attachid>
            <date>2021-08-03 12:25:32 -0700</date>
            <delta_ts>2021-08-03 12:36:34 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-228710-20210803142531.patch</filename>
            <type>text/plain</type>
            <size>6049</size>
            <attacher name="Yijia Huang">yijia_huang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNTg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
MDBlNWQ4OWJjMjRjMDk0NmU4Njc0MWRkZTU4YzMxNjJlNDgyOWNiLi40M2MxY2IxMmZhYWMwZGU5
OGQyNTY1NWJhYjNiZTA0MjVlZTVlYTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNiBAQAorMjAyMS0wOC0wMyAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5j
b20+CisKKyAgICAgICAgW0FSTTY0XSBVc2UgbGluayByZWdpc3RlciBpbnN0ZWFkIG9mIHBpbm5p
bmcgYSByZWdpc3RlciBmb3IgbWF0ZXJpYWxpemluZyBiaWcgbG9hZCBjb25zdGFudHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyODcxMAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE1hcmsgTGFtLgorCisgICAgICAgIFByZXZpb3VzbHksIHdlIHBpbiBh
IHJlZ2lzdGVyIGFzIGEgdGVtcCBmb3IgbWF0ZXJpYWxpemluZyBhIGxhcmdlIGNvbnN0YW50IHRo
YXQgY2Fubm90IGZpdCBpbgorICAgICAgICBMb2FkL1N0b3JlIGltbSBmb3JtLiBUaGlzIGlzIG5v
dCBlZmZpY2llbnQgc2luY2UgdGhlIHJlZ2lzdGVyIGFsbG9jYXRvciBoYXMgb25lIGxlc3MgcmVn
aXN0ZXIKKyAgICAgICAgdG8gYWxsb2NhdGUgZnJvbS4gVG8gc29sdmUgdGhpcyBwcm9ibGVtLCB3
ZSBzaG91bGQgc3dpdGNoIHRvIHVzaW5nIHRoZSBsaW5rIHJlZ2lzdGVyIGFzIHRoZSB0ZW1wCisg
ICAgICAgIG9uIEFSTTY0LgorCisgICAgICAgICogYjMvQjNDb21tb24uY3BwOgorICAgICAgICAo
SlNDOjpCMzo6bGlua1JlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6QjM6OnBpbm5lZEV4dGVuZGVk
T2Zmc2V0QWRkclJlZ2lzdGVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBiMy9CM0NvbW1vbi5oOgor
ICAgICAgICAqIGIzL2Fpci9BaXJBbGxvY2F0ZVJlZ2lzdGVyc0FuZFN0YWNrQW5kR2VuZXJhdGVD
b2RlLmNwcDoKKyAgICAgICAgKEpTQzo6QjM6OkFpcjo6Y2FsbEZyYW1lQWRkcik6CisgICAgICAg
ICogYjMvYWlyL0FpckNvZGUuY3BwOgorICAgICAgICAoSlNDOjpCMzo6QWlyOjpDb2RlOjpDb2Rl
KToKKyAgICAgICAgKiBiMy9haXIvQWlyTG93ZXJTdGFja0FyZ3MuY3BwOgorICAgICAgICAoSlND
OjpCMzo6QWlyOjpsb3dlclN0YWNrQXJncyk6CisKIDIwMjEtMDgtMDIgIFlpamlhIEh1YW5nICA8
eWlqaWFfaHVhbmdAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBhIG5ldyBwYXR0ZXJuIHRvIGlu
c3RydWN0aW9uIHNlbGVjdG9yIHRvIHV0aWxpemUgVU1VTEwgc3VwcG9ydGVkIGJ5IEFSTTY0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb21tb24uY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmNwcAppbmRleCA5N2IxZmQwMDkwMzM2OGRmNDkw
OTNiZDk1NGNmZWNkY2ZmN2VhOTIzLi41OGFjNTM4YTI0ODM5N2U0NjRhZGMwNmEyNjY2OTBlZDY2
MzI4Mzg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb21tb24uY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5jcHAKQEAgLTY3LDEwICs2
NywxMCBAQCBib29sIHNob3VsZFNhdmVJUkJlZm9yZVBoYXNlKCkKICAgICByZXR1cm4gT3B0aW9u
czo6dmVyYm9zZVZhbGlkYXRpb25GYWlsdXJlKCk7CiB9CiAKLXN0ZDo6b3B0aW9uYWw8R1BSUmVn
PiBwaW5uZWRFeHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpCitzdGQ6Om9wdGlvbmFsPEdQUlJl
Zz4gbGlua1JlZ2lzdGVyKCkKIHsKICNpZiBDUFUoQVJNNjQpCi0gICAgcmV0dXJuIE1hY3JvQXNz
ZW1ibGVyOjpkYXRhVGVtcFJlZ2lzdGVyOworICAgIHJldHVybiBNYWNyb0Fzc2VtYmxlcjo6bGlu
a1JlZ2lzdGVyOwogI2VsaWYgQ1BVKFg4Nl82NCkKICAgICByZXR1cm4gc3RkOjpudWxsb3B0Owog
I2Vsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmgKaW5kZXggNjQ4ZGViOWYxZGZhY2Q2
ZjEwYzBkZmFjMTk0YTcxZTMwNGY5MGQyNy4uOWYyZWMzOTFjNDM3YjQzN2Q2YjVjMDM2ZjhiNGE1
NzMyY2U2OGY3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9u
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmgKQEAgLTE4Myw3ICsx
ODMsNyBAQCBpbmxpbmUgdW5zaWduZWQgZGVmYXVsdE9wdExldmVsKCkKICAgICByZXR1cm4gT3B0
aW9uczo6ZGVmYXVsdEIzT3B0TGV2ZWwoKTsKIH0KIAotc3RkOjpvcHRpb25hbDxHUFJSZWc+IHBp
bm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCk7CitzdGQ6Om9wdGlvbmFsPEdQUlJlZz4g
bGlua1JlZ2lzdGVyKCk7CiAKIH0gfSAvLyBuYW1lc3BhY2UgSlNDOjpCMwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0FpckFsbG9jYXRlUmVnaXN0ZXJzQW5kU3Rh
Y2tBbmRHZW5lcmF0ZUNvZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJB
bGxvY2F0ZVJlZ2lzdGVyc0FuZFN0YWNrQW5kR2VuZXJhdGVDb2RlLmNwcAppbmRleCBlM2M2Mzg0
M2YwZWJkYjcxY2I2ZjZhY2RlMjVmMTNhYTNjZWE4YmNhLi43NWRhNzY0ZDljZjkxNmYzNmZkMGZj
ZWEwMmRjZjZkNjFhOGY3NWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMv
YWlyL0FpckFsbG9jYXRlUmVnaXN0ZXJzQW5kU3RhY2tBbmRHZW5lcmF0ZUNvZGUuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyQWxsb2NhdGVSZWdpc3RlcnNBbmRTdGFj
a0FuZEdlbmVyYXRlQ29kZS5jcHAKQEAgLTE0NCwxMSArMTQ0LDExIEBAIHN0YXRpYyBBTFdBWVNf
SU5MSU5FIENDYWxsSGVscGVyczo6QWRkcmVzcyBjYWxsRnJhbWVBZGRyKENDYWxsSGVscGVycyYg
aml0LCBpbnRwCiAgICAgICAgIHJldHVybiBDQ2FsbEhlbHBlcnM6OkFkZHJlc3MoR1BSSW5mbzo6
Y2FsbEZyYW1lUmVnaXN0ZXIsIG9mZnNldEZyb21GUCk7CiAgICAgfQogCi0gICAgQVNTRVJUKHBp
bm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCkpOworICAgIEFTU0VSVChsaW5rUmVnaXN0
ZXIoKSk7CiAgICAgYXV0byBhZGRyID0gQXJnOjphZGRyKEFpcjo6VG1wKEdQUkluZm86OmNhbGxG
cmFtZVJlZ2lzdGVyKSwgb2Zmc2V0RnJvbUZQKTsKICAgICBpZiAoYWRkci5pc1ZhbGlkRm9ybShX
aWR0aDY0KSkKICAgICAgICAgcmV0dXJuIENDYWxsSGVscGVyczo6QWRkcmVzcyhHUFJJbmZvOjpj
YWxsRnJhbWVSZWdpc3Rlciwgb2Zmc2V0RnJvbUZQKTsKLSAgICBHUFJSZWcgcmVnID0gKnBpbm5l
ZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCk7CisgICAgR1BSUmVnIHJlZyA9ICpsaW5rUmVn
aXN0ZXIoKTsKICAgICBqaXQubW92ZShDQ2FsbEhlbHBlcnM6OlRydXN0ZWRJbW1QdHIob2Zmc2V0
RnJvbUZQKSwgcmVnKTsKICAgICBqaXQuYWRkNjQoR1BSSW5mbzo6Y2FsbEZyYW1lUmVnaXN0ZXIs
IHJlZyk7CiAgICAgcmV0dXJuIENDYWxsSGVscGVyczo6QWRkcmVzcyhyZWcpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJDb2RlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9iMy9haXIvQWlyQ29kZS5jcHAKaW5kZXggOGJhYjRkYmE4YTVhZDA0YmFjM2M5
NTJlNzBmMzExODA3MTlkMGJlZS4uZjEzNWU2OTdhYjQ3M2I4ODc2ZGYxNGJiMTBmMDI3ODY4Zjg0
OTBjYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJDb2RlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0FpckNvZGUuY3BwCkBAIC05MCw5
ICs5MCw2IEBAIENvZGU6OkNvZGUoUHJvY2VkdXJlJiBwcm9jKQogICAgICAgICAgICAgc2V0UmVn
c0luUHJpb3JpdHlPcmRlcihiYW5rLCByZXN1bHQpOwogICAgICAgICB9KTsKIAotICAgIGlmIChh
dXRvIHJlZyA9IHBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCkpCi0gICAgICAgIHBp
blJlZ2lzdGVyKCpyZWcpOwotCiAgICAgbV9waW5uZWRSZWdzLnNldChNYWNyb0Fzc2VtYmxlcjo6
ZnJhbWVQb2ludGVyUmVnaXN0ZXIpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYjMvYWlyL0Fpckxvd2VyU3RhY2tBcmdzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9iMy9haXIvQWlyTG93ZXJTdGFja0FyZ3MuY3BwCmluZGV4IDkwNWU2MTdmYmRlMGUyYjdkNzU1
NTYzZTY4ODU4OWJkYWQ3MjZjODAuLjg0ZjM4MmE1ZjI1MjE0YzMxODZjMDY5ZDU3ZjM4OWIxODk2
MDZmODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyTG93ZXJT
dGFja0FyZ3MuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyTG93ZXJT
dGFja0FyZ3MuY3BwCkBAIC03OCw4ICs3OCw4IEBAIHZvaWQgbG93ZXJTdGFja0FyZ3MoQ29kZSYg
Y29kZSkKICAgICAgICAgICAgICAgICAgICAgaWYgKEFyZzo6aXNWYWxpZEltbUZvcm0ob2Zmc2V0
KSkKICAgICAgICAgICAgICAgICAgICAgICAgIGluc3QgPSBJbnN0KGluc3Qua2luZC5vcGNvZGUg
PT0gTGVhMzIgPyBBZGQzMiA6IEFkZDY0LCBpbnN0Lm9yaWdpbiwgQXJnOjppbW0ob2Zmc2V0KSwg
YmFzZSwgaW5zdC5hcmdzWzFdKTsKICAgICAgICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICBBU1NFUlQocGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIo
KSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBBaXI6OlRtcCB0bXAgPSBBaXI6OlRtcCgqcGlu
bmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIoKSk7CisgICAgICAgICAgICAgICAgICAgICAg
ICBBU1NFUlQobGlua1JlZ2lzdGVyKCkpOworICAgICAgICAgICAgICAgICAgICAgICAgQWlyOjpU
bXAgdG1wID0gQWlyOjpUbXAoKmxpbmtSZWdpc3RlcigpKTsKICAgICAgICAgICAgICAgICAgICAg
ICAgIEFyZyBvZmZzZXRBcmcgPSBBcmc6OmJpZ0ltbShvZmZzZXQpOwogICAgICAgICAgICAgICAg
ICAgICAgICAgaW5zZXJ0aW9uU2V0Lmluc2VydChpbnN0SW5kZXgsIE1vdmUsIGluc3Qub3JpZ2lu
LCBvZmZzZXRBcmcsIHRtcCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnN0ID0gSW5zdChp
bnN0LmtpbmQub3Bjb2RlID09IExlYTMyID8gQWRkMzIgOiBBZGQ2NCwgaW5zdC5vcmlnaW4sIHRt
cCwgYmFzZSwgaW5zdC5hcmdzWzFdKTsKQEAgLTEyOCw4ICsxMjgsOCBAQCB2b2lkIGxvd2VyU3Rh
Y2tBcmdzKENvZGUmIGNvZGUpCiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzdWx0Lmlz
VmFsaWRGb3JtKHdpZHRoKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVz
dWx0OwogI2lmIENQVShBUk02NCkKLSAgICAgICAgICAgICAgICAgICAgICAgIEFTU0VSVChwaW5u
ZWRFeHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpKTsKLSAgICAgICAgICAgICAgICAgICAgICAg
IEFpcjo6VG1wIHRtcCA9IEFpcjo6VG1wKCpwaW5uZWRFeHRlbmRlZE9mZnNldEFkZHJSZWdpc3Rl
cigpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIEFTU0VSVChsaW5rUmVnaXN0ZXIoKSk7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBBaXI6OlRtcCB0bXAgPSBBaXI6OlRtcCgqbGlua1JlZ2lz
dGVyKCkpOwogCiAgICAgICAgICAgICAgICAgICAgICAgICBBcmcgbGFyZ2VPZmZzZXQgPSBBcmc6
OmlzVmFsaWRJbW1Gb3JtKG9mZnNldEZyb21TUCkgPyBBcmc6OmltbShvZmZzZXRGcm9tU1ApIDog
QXJnOjpiaWdJbW0ob2Zmc2V0RnJvbVNQKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGluc2Vy
dGlvblNldC5pbnNlcnQoaW5zdEluZGV4LCBNb3ZlLCBpbnN0Lm9yaWdpbiwgbGFyZ2VPZmZzZXQs
IHRtcCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434856</attachid>
            <date>2021-08-03 12:53:44 -0700</date>
            <delta_ts>2021-08-03 13:27:03 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-228710-20210803145343.patch</filename>
            <type>text/plain</type>
            <size>5951</size>
            <attacher name="Yijia Huang">yijia_huang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNTg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
MDBlNWQ4OWJjMjRjMDk0NmU4Njc0MWRkZTU4YzMxNjJlNDgyOWNiLi40M2MxY2IxMmZhYWMwZGU5
OGQyNTY1NWJhYjNiZTA0MjVlZTVlYTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNiBAQAorMjAyMS0wOC0wMyAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5j
b20+CisKKyAgICAgICAgW0FSTTY0XSBVc2UgbGluayByZWdpc3RlciBpbnN0ZWFkIG9mIHBpbm5p
bmcgYSByZWdpc3RlciBmb3IgbWF0ZXJpYWxpemluZyBiaWcgbG9hZCBjb25zdGFudHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyODcxMAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE1hcmsgTGFtLgorCisgICAgICAgIFByZXZpb3VzbHksIHdlIHBpbiBh
IHJlZ2lzdGVyIGFzIGEgdGVtcCBmb3IgbWF0ZXJpYWxpemluZyBhIGxhcmdlIGNvbnN0YW50IHRo
YXQgY2Fubm90IGZpdCBpbgorICAgICAgICBMb2FkL1N0b3JlIGltbSBmb3JtLiBUaGlzIGlzIG5v
dCBlZmZpY2llbnQgc2luY2UgdGhlIHJlZ2lzdGVyIGFsbG9jYXRvciBoYXMgb25lIGxlc3MgcmVn
aXN0ZXIKKyAgICAgICAgdG8gYWxsb2NhdGUgZnJvbS4gVG8gc29sdmUgdGhpcyBwcm9ibGVtLCB3
ZSBzaG91bGQgc3dpdGNoIHRvIHVzaW5nIHRoZSBsaW5rIHJlZ2lzdGVyIGFzIHRoZSB0ZW1wCisg
ICAgICAgIG9uIEFSTTY0LgorCisgICAgICAgICogYjMvQjNDb21tb24uY3BwOgorICAgICAgICAo
SlNDOjpCMzo6bGlua1JlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6QjM6OnBpbm5lZEV4dGVuZGVk
T2Zmc2V0QWRkclJlZ2lzdGVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBiMy9CM0NvbW1vbi5oOgor
ICAgICAgICAqIGIzL2Fpci9BaXJBbGxvY2F0ZVJlZ2lzdGVyc0FuZFN0YWNrQW5kR2VuZXJhdGVD
b2RlLmNwcDoKKyAgICAgICAgKEpTQzo6QjM6OkFpcjo6Y2FsbEZyYW1lQWRkcik6CisgICAgICAg
ICogYjMvYWlyL0FpckNvZGUuY3BwOgorICAgICAgICAoSlNDOjpCMzo6QWlyOjpDb2RlOjpDb2Rl
KToKKyAgICAgICAgKiBiMy9haXIvQWlyTG93ZXJTdGFja0FyZ3MuY3BwOgorICAgICAgICAoSlND
OjpCMzo6QWlyOjpsb3dlclN0YWNrQXJncyk6CisKIDIwMjEtMDgtMDIgIFlpamlhIEh1YW5nICA8
eWlqaWFfaHVhbmdAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBhIG5ldyBwYXR0ZXJuIHRvIGlu
c3RydWN0aW9uIHNlbGVjdG9yIHRvIHV0aWxpemUgVU1VTEwgc3VwcG9ydGVkIGJ5IEFSTTY0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb21tb24uY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmNwcAppbmRleCA5N2IxZmQwMDkwMzM2OGRmNDkw
OTNiZDk1NGNmZWNkY2ZmN2VhOTIzLi41OGFjNTM4YTI0ODM5N2U0NjRhZGMwNmEyNjY2OTBlZDY2
MzI4Mzg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb21tb24uY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5jcHAKQEAgLTY3LDEwICs2
NywxMCBAQCBib29sIHNob3VsZFNhdmVJUkJlZm9yZVBoYXNlKCkKICAgICByZXR1cm4gT3B0aW9u
czo6dmVyYm9zZVZhbGlkYXRpb25GYWlsdXJlKCk7CiB9CiAKLXN0ZDo6b3B0aW9uYWw8R1BSUmVn
PiBwaW5uZWRFeHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpCitzdGQ6Om9wdGlvbmFsPEdQUlJl
Zz4gbGlua1JlZ2lzdGVyKCkKIHsKICNpZiBDUFUoQVJNNjQpCi0gICAgcmV0dXJuIE1hY3JvQXNz
ZW1ibGVyOjpkYXRhVGVtcFJlZ2lzdGVyOworICAgIHJldHVybiBNYWNyb0Fzc2VtYmxlcjo6bGlu
a1JlZ2lzdGVyOwogI2VsaWYgQ1BVKFg4Nl82NCkKICAgICByZXR1cm4gc3RkOjpudWxsb3B0Owog
I2Vsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmgKaW5kZXggNjQ4ZGViOWYxZGZhY2Q2
ZjEwYzBkZmFjMTk0YTcxZTMwNGY5MGQyNy4uOWYyZWMzOTFjNDM3YjQzN2Q2YjVjMDM2ZjhiNGE1
NzMyY2U2OGY3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9u
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmgKQEAgLTE4Myw3ICsx
ODMsNyBAQCBpbmxpbmUgdW5zaWduZWQgZGVmYXVsdE9wdExldmVsKCkKICAgICByZXR1cm4gT3B0
aW9uczo6ZGVmYXVsdEIzT3B0TGV2ZWwoKTsKIH0KIAotc3RkOjpvcHRpb25hbDxHUFJSZWc+IHBp
bm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCk7CitzdGQ6Om9wdGlvbmFsPEdQUlJlZz4g
bGlua1JlZ2lzdGVyKCk7CiAKIH0gfSAvLyBuYW1lc3BhY2UgSlNDOjpCMwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0FpckFsbG9jYXRlUmVnaXN0ZXJzQW5kU3Rh
Y2tBbmRHZW5lcmF0ZUNvZGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJB
bGxvY2F0ZVJlZ2lzdGVyc0FuZFN0YWNrQW5kR2VuZXJhdGVDb2RlLmNwcAppbmRleCBlM2M2Mzg0
M2YwZWJkYjcxY2I2ZjZhY2RlMjVmMTNhYTNjZWE4YmNhLi43NWRhNzY0ZDljZjkxNmYzNmZkMGZj
ZWEwMmRjZjZkNjFhOGY3NWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMv
YWlyL0FpckFsbG9jYXRlUmVnaXN0ZXJzQW5kU3RhY2tBbmRHZW5lcmF0ZUNvZGUuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyQWxsb2NhdGVSZWdpc3RlcnNBbmRTdGFj
a0FuZEdlbmVyYXRlQ29kZS5jcHAKQEAgLTE0NCwxMSArMTQ0LDExIEBAIHN0YXRpYyBBTFdBWVNf
SU5MSU5FIENDYWxsSGVscGVyczo6QWRkcmVzcyBjYWxsRnJhbWVBZGRyKENDYWxsSGVscGVycyYg
aml0LCBpbnRwCiAgICAgICAgIHJldHVybiBDQ2FsbEhlbHBlcnM6OkFkZHJlc3MoR1BSSW5mbzo6
Y2FsbEZyYW1lUmVnaXN0ZXIsIG9mZnNldEZyb21GUCk7CiAgICAgfQogCi0gICAgQVNTRVJUKHBp
bm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCkpOworICAgIEFTU0VSVChsaW5rUmVnaXN0
ZXIoKSk7CiAgICAgYXV0byBhZGRyID0gQXJnOjphZGRyKEFpcjo6VG1wKEdQUkluZm86OmNhbGxG
cmFtZVJlZ2lzdGVyKSwgb2Zmc2V0RnJvbUZQKTsKICAgICBpZiAoYWRkci5pc1ZhbGlkRm9ybShX
aWR0aDY0KSkKICAgICAgICAgcmV0dXJuIENDYWxsSGVscGVyczo6QWRkcmVzcyhHUFJJbmZvOjpj
YWxsRnJhbWVSZWdpc3Rlciwgb2Zmc2V0RnJvbUZQKTsKLSAgICBHUFJSZWcgcmVnID0gKnBpbm5l
ZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCk7CisgICAgR1BSUmVnIHJlZyA9ICpsaW5rUmVn
aXN0ZXIoKTsKICAgICBqaXQubW92ZShDQ2FsbEhlbHBlcnM6OlRydXN0ZWRJbW1QdHIob2Zmc2V0
RnJvbUZQKSwgcmVnKTsKICAgICBqaXQuYWRkNjQoR1BSSW5mbzo6Y2FsbEZyYW1lUmVnaXN0ZXIs
IHJlZyk7CiAgICAgcmV0dXJuIENDYWxsSGVscGVyczo6QWRkcmVzcyhyZWcpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJDb2RlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9iMy9haXIvQWlyQ29kZS5jcHAKaW5kZXggOGJhYjRkYmE4YTVhZDA0YmFjM2M5
NTJlNzBmMzExODA3MTlkMGJlZS4uZjEzNWU2OTdhYjQ3M2I4ODc2ZGYxNGJiMTBmMDI3ODY4Zjg0
OTBjYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJDb2RlLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0FpckNvZGUuY3BwCkBAIC05MCw5
ICs5MCw2IEBAIENvZGU6OkNvZGUoUHJvY2VkdXJlJiBwcm9jKQogICAgICAgICAgICAgc2V0UmVn
c0luUHJpb3JpdHlPcmRlcihiYW5rLCByZXN1bHQpOwogICAgICAgICB9KTsKIAotICAgIGlmIChh
dXRvIHJlZyA9IHBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCkpCi0gICAgICAgIHBp
blJlZ2lzdGVyKCpyZWcpOwotCiAgICAgbV9waW5uZWRSZWdzLnNldChNYWNyb0Fzc2VtYmxlcjo6
ZnJhbWVQb2ludGVyUmVnaXN0ZXIpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYjMvYWlyL0Fpckxvd2VyU3RhY2tBcmdzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9iMy9haXIvQWlyTG93ZXJTdGFja0FyZ3MuY3BwCmluZGV4IDkwNWU2MTdmYmRlMGUyYjdkNzU1
NTYzZTY4ODU4OWJkYWQ3MjZjODAuLjFhYWYyODhkNzQ4NThmZWJjYTM0N2Y1MjBmYmRjZWNiMzBm
OGQxOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyTG93ZXJT
dGFja0FyZ3MuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyTG93ZXJT
dGFja0FyZ3MuY3BwCkBAIC03OCw4ICs3OCw3IEBAIHZvaWQgbG93ZXJTdGFja0FyZ3MoQ29kZSYg
Y29kZSkKICAgICAgICAgICAgICAgICAgICAgaWYgKEFyZzo6aXNWYWxpZEltbUZvcm0ob2Zmc2V0
KSkKICAgICAgICAgICAgICAgICAgICAgICAgIGluc3QgPSBJbnN0KGluc3Qua2luZC5vcGNvZGUg
PT0gTGVhMzIgPyBBZGQzMiA6IEFkZDY0LCBpbnN0Lm9yaWdpbiwgQXJnOjppbW0ob2Zmc2V0KSwg
YmFzZSwgaW5zdC5hcmdzWzFdKTsKICAgICAgICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICBBU1NFUlQocGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIo
KSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBBaXI6OlRtcCB0bXAgPSBBaXI6OlRtcCgqcGlu
bmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIoKSk7CisgICAgICAgICAgICAgICAgICAgICAg
ICBBaXI6OlRtcCB0bXAgPSBBaXI6OlRtcCgqbGlua1JlZ2lzdGVyKCkpOwogICAgICAgICAgICAg
ICAgICAgICAgICAgQXJnIG9mZnNldEFyZyA9IEFyZzo6YmlnSW1tKG9mZnNldCk7CiAgICAgICAg
ICAgICAgICAgICAgICAgICBpbnNlcnRpb25TZXQuaW5zZXJ0KGluc3RJbmRleCwgTW92ZSwgaW5z
dC5vcmlnaW4sIG9mZnNldEFyZywgdG1wKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGluc3Qg
PSBJbnN0KGluc3Qua2luZC5vcGNvZGUgPT0gTGVhMzIgPyBBZGQzMiA6IEFkZDY0LCBpbnN0Lm9y
aWdpbiwgdG1wLCBiYXNlLCBpbnN0LmFyZ3NbMV0pOwpAQCAtMTI4LDggKzEyNyw3IEBAIHZvaWQg
bG93ZXJTdGFja0FyZ3MoQ29kZSYgY29kZSkKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChy
ZXN1bHQuaXNWYWxpZEZvcm0od2lkdGgpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJl
dHVybiByZXN1bHQ7CiAjaWYgQ1BVKEFSTTY0KQotICAgICAgICAgICAgICAgICAgICAgICAgQVNT
RVJUKHBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCkpOwotICAgICAgICAgICAgICAg
ICAgICAgICAgQWlyOjpUbXAgdG1wID0gQWlyOjpUbXAoKnBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRk
clJlZ2lzdGVyKCkpOworICAgICAgICAgICAgICAgICAgICAgICAgQWlyOjpUbXAgdG1wID0gQWly
OjpUbXAoKmxpbmtSZWdpc3RlcigpKTsKIAogICAgICAgICAgICAgICAgICAgICAgICAgQXJnIGxh
cmdlT2Zmc2V0ID0gQXJnOjppc1ZhbGlkSW1tRm9ybShvZmZzZXRGcm9tU1ApID8gQXJnOjppbW0o
b2Zmc2V0RnJvbVNQKSA6IEFyZzo6YmlnSW1tKG9mZnNldEZyb21TUCk7CiAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnNlcnRpb25TZXQuaW5zZXJ0KGluc3RJbmRleCwgTW92ZSwgaW5zdC5vcmln
aW4sIGxhcmdlT2Zmc2V0LCB0bXApOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434988</attachid>
            <date>2021-08-05 08:39:36 -0700</date>
            <delta_ts>2021-08-05 08:56:50 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-228710-20210805103935.patch</filename>
            <type>text/plain</type>
            <size>5971</size>
            <attacher name="Yijia Huang">yijia_huang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNjY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2
NDRiYTFjNDM3MjllYjAwYWE4ZDVmNWJjN2E0ZmZjMmM3ZWQ5YzQ1Li4yZjAyOTdjOTJkYWQ4N2M4
M2Q1YzE4YzNlZDc4M2Y5NzQxNDdmZGM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNSBAQAorMjAyMS0wOC0wNSAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5j
b20+CisKKyAgICAgICAgW0FSTTY0XSBVc2UgbGluayByZWdpc3RlciBpbnN0ZWFkIG9mIHBpbm5p
bmcgYSByZWdpc3RlciBmb3IgbWF0ZXJpYWxpemluZyBiaWcgbG9hZCBjb25zdGFudHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyODcxMAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFByZXZpb3VzbHksIHdl
IHBpbiBhIHJlZ2lzdGVyIGFzIGEgdGVtcCBmb3IgbWF0ZXJpYWxpemluZyBhIGxhcmdlIGNvbnN0
YW50IHRoYXQgY2Fubm90IGZpdCBpbgorICAgICAgICBMb2FkL1N0b3JlIGltbSBmb3JtLiBUaGlz
IGlzIG5vdCBlZmZpY2llbnQgc2luY2UgdGhlIHJlZ2lzdGVyIGFsbG9jYXRvciBoYXMgb25lIGxl
c3MgcmVnaXN0ZXIKKyAgICAgICAgdG8gYWxsb2NhdGUgZnJvbS4gVG8gc29sdmUgdGhpcyBwcm9i
bGVtLCB3ZSBzaG91bGQgc3dpdGNoIHRvIHVzaW5nIHRoZSBsaW5rIHJlZ2lzdGVyIGFzIHRoZSB0
ZW1wCisgICAgICAgIG9uIEFSTTY0LgorCisgICAgICAgICogYjMvQjNDb21tb24uY3BwOgorICAg
ICAgICAoSlNDOjpCMzo6cGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIpOiBEZWxldGVk
LgorICAgICAgICAqIGIzL0IzQ29tbW9uLmg6CisgICAgICAgICogYjMvYWlyL0FpckFsbG9jYXRl
UmVnaXN0ZXJzQW5kU3RhY2tBbmRHZW5lcmF0ZUNvZGUuY3BwOgorICAgICAgICAoSlNDOjpCMzo6
QWlyOjpjYWxsRnJhbWVBZGRyKToKKyAgICAgICAgKiBiMy9haXIvQWlyQ29kZS5jcHA6CisgICAg
ICAgIChKU0M6OkIzOjpBaXI6OkNvZGU6OkNvZGUpOgorICAgICAgICAqIGIzL2Fpci9BaXJMb3dl
clN0YWNrQXJncy5jcHA6CisgICAgICAgIChKU0M6OkIzOjpBaXI6Omxvd2VyU3RhY2tBcmdzKToK
KwogMjAyMS0wOC0wNCAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5jb20+CiAKICAg
ICAgICAgW0FSTTY0XSBGaXggWm9vbSBibGFjayBzY3JlZW4gZHVyaW5nIHZpZGVvIG1lZXRpbmcg
b24gU2FmYXJpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb21tb24u
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmNwcAppbmRleCA5N2IxZmQw
MDkwMzM2OGRmNDkwOTNiZDk1NGNmZWNkY2ZmN2VhOTIzLi43NTRhZmVjNGNmYzFiY2UzZDdlNjQw
MzU3ZWQ5NGZjZjM1ZDY5YWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMv
QjNDb21tb24uY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5jcHAK
QEAgLTY3LDE3ICs2Nyw2IEBAIGJvb2wgc2hvdWxkU2F2ZUlSQmVmb3JlUGhhc2UoKQogICAgIHJl
dHVybiBPcHRpb25zOjp2ZXJib3NlVmFsaWRhdGlvbkZhaWx1cmUoKTsKIH0KIAotc3RkOjpvcHRp
b25hbDxHUFJSZWc+IHBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCkKLXsKLSNpZiBD
UFUoQVJNNjQpCi0gICAgcmV0dXJuIE1hY3JvQXNzZW1ibGVyOjpkYXRhVGVtcFJlZ2lzdGVyOwot
I2VsaWYgQ1BVKFg4Nl82NCkKLSAgICByZXR1cm4gc3RkOjpudWxsb3B0OwotI2Vsc2UKLSNlcnJv
ciBVbmhhbmRsZWQgYXJjaGl0ZWN0dXJlLgotI2VuZGlmCi19Ci0KIH0gfSAvLyBuYW1lc3BhY2Ug
SlNDOjpCMwogCiAjZW5kaWYgLy8gRU5BQkxFKEIzX0pJVCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0Iz
Q29tbW9uLmgKaW5kZXggNjQ4ZGViOWYxZGZhY2Q2ZjEwYzBkZmFjMTk0YTcxZTMwNGY5MGQyNy4u
ZTk1ZTk3ODM3N2NmNDFlMDE2NDgxOGM2NjhkNGRiZTQyNTM5YmZlYiAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2IzL0IzQ29tbW9uLmgKQEAgLTE4Myw4ICsxODMsNiBAQCBpbmxpbmUgdW5zaWduZWQgZGVm
YXVsdE9wdExldmVsKCkKICAgICByZXR1cm4gT3B0aW9uczo6ZGVmYXVsdEIzT3B0TGV2ZWwoKTsK
IH0KIAotc3RkOjpvcHRpb25hbDxHUFJSZWc+IHBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lz
dGVyKCk7Ci0KIH0gfSAvLyBuYW1lc3BhY2UgSlNDOjpCMwogCiAjZW5kaWYgLy8gRU5BQkxFKEIz
X0pJVCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyQWxsb2Nh
dGVSZWdpc3RlcnNBbmRTdGFja0FuZEdlbmVyYXRlQ29kZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYjMvYWlyL0FpckFsbG9jYXRlUmVnaXN0ZXJzQW5kU3RhY2tBbmRHZW5lcmF0ZUNvZGUu
Y3BwCmluZGV4IGUzYzYzODQzZjBlYmRiNzFjYjZmNmFjZGUyNWYxM2FhM2NlYThiY2EuLjhiMzYw
MjViYTkyMmI0YWQ3ZmIyNmNkYWVmZjU2ZDdjN2I0M2ZjYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyQWxsb2NhdGVSZWdpc3RlcnNBbmRTdGFja0FuZEdlbmVy
YXRlQ29kZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJBbGxvY2F0
ZVJlZ2lzdGVyc0FuZFN0YWNrQW5kR2VuZXJhdGVDb2RlLmNwcApAQCAtMTQ0LDExICsxNDQsMTAg
QEAgc3RhdGljIEFMV0FZU19JTkxJTkUgQ0NhbGxIZWxwZXJzOjpBZGRyZXNzIGNhbGxGcmFtZUFk
ZHIoQ0NhbGxIZWxwZXJzJiBqaXQsIGludHAKICAgICAgICAgcmV0dXJuIENDYWxsSGVscGVyczo6
QWRkcmVzcyhHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3Rlciwgb2Zmc2V0RnJvbUZQKTsKICAgICB9
CiAKLSAgICBBU1NFUlQocGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIoKSk7CiAgICAg
YXV0byBhZGRyID0gQXJnOjphZGRyKEFpcjo6VG1wKEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVy
KSwgb2Zmc2V0RnJvbUZQKTsKICAgICBpZiAoYWRkci5pc1ZhbGlkRm9ybShXaWR0aDY0KSkKICAg
ICAgICAgcmV0dXJuIENDYWxsSGVscGVyczo6QWRkcmVzcyhHUFJJbmZvOjpjYWxsRnJhbWVSZWdp
c3Rlciwgb2Zmc2V0RnJvbUZQKTsKLSAgICBHUFJSZWcgcmVnID0gKnBpbm5lZEV4dGVuZGVkT2Zm
c2V0QWRkclJlZ2lzdGVyKCk7CisgICAgR1BSUmVnIHJlZyA9IE1hY3JvQXNzZW1ibGVyOjpsaW5r
UmVnaXN0ZXI7CiAgICAgaml0Lm1vdmUoQ0NhbGxIZWxwZXJzOjpUcnVzdGVkSW1tUHRyKG9mZnNl
dEZyb21GUCksIHJlZyk7CiAgICAgaml0LmFkZDY0KEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVy
LCByZWcpOwogICAgIHJldHVybiBDQ2FsbEhlbHBlcnM6OkFkZHJlc3MocmVnKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyQ29kZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYjMvYWlyL0FpckNvZGUuY3BwCmluZGV4IDhiYWI0ZGJhOGE1YWQwNGJhYzNj
OTUyZTcwZjMxMTgwNzE5ZDBiZWUuLjZjZTc5M2JjMDI1NzZkZDMwNWI3Y2YwNWYyNmZjZTdiY2Zm
MjRmZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyQ29kZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJDb2RlLmNwcApAQCAtOTAs
OCArOTAsNyBAQCBDb2RlOjpDb2RlKFByb2NlZHVyZSYgcHJvYykKICAgICAgICAgICAgIHNldFJl
Z3NJblByaW9yaXR5T3JkZXIoYmFuaywgcmVzdWx0KTsKICAgICAgICAgfSk7CiAKLSAgICBpZiAo
YXV0byByZWcgPSBwaW5uZWRFeHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpKQotICAgICAgICBw
aW5SZWdpc3RlcigqcmVnKTsKKyAgICBwaW5SZWdpc3RlcihNYWNyb0Fzc2VtYmxlcjo6ZGF0YVRl
bXBSZWdpc3Rlcik7CiAKICAgICBtX3Bpbm5lZFJlZ3Muc2V0KE1hY3JvQXNzZW1ibGVyOjpmcmFt
ZVBvaW50ZXJSZWdpc3Rlcik7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YjMvYWlyL0Fpckxvd2VyU3RhY2tBcmdzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9h
aXIvQWlyTG93ZXJTdGFja0FyZ3MuY3BwCmluZGV4IDkwNWU2MTdmYmRlMGUyYjdkNzU1NTYzZTY4
ODU4OWJkYWQ3MjZjODAuLmFkY2FiMGVmZjc1ZGYwNTU5ZTI2ZGE4Y2M2ZTc3NjM4MjhhYjljNzYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyTG93ZXJTdGFja0Fy
Z3MuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyTG93ZXJTdGFja0Fy
Z3MuY3BwCkBAIC03OCw4ICs3OCw3IEBAIHZvaWQgbG93ZXJTdGFja0FyZ3MoQ29kZSYgY29kZSkK
ICAgICAgICAgICAgICAgICAgICAgaWYgKEFyZzo6aXNWYWxpZEltbUZvcm0ob2Zmc2V0KSkKICAg
ICAgICAgICAgICAgICAgICAgICAgIGluc3QgPSBJbnN0KGluc3Qua2luZC5vcGNvZGUgPT0gTGVh
MzIgPyBBZGQzMiA6IEFkZDY0LCBpbnN0Lm9yaWdpbiwgQXJnOjppbW0ob2Zmc2V0KSwgYmFzZSwg
aW5zdC5hcmdzWzFdKTsKICAgICAgICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICBBU1NFUlQocGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIoKSk7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICBBaXI6OlRtcCB0bXAgPSBBaXI6OlRtcCgqcGlubmVkRXh0
ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIoKSk7CisgICAgICAgICAgICAgICAgICAgICAgICBBaXI6
OlRtcCB0bXAgPSBBaXI6OlRtcChNYWNyb0Fzc2VtYmxlcjo6bGlua1JlZ2lzdGVyKTsKICAgICAg
ICAgICAgICAgICAgICAgICAgIEFyZyBvZmZzZXRBcmcgPSBBcmc6OmJpZ0ltbShvZmZzZXQpOwog
ICAgICAgICAgICAgICAgICAgICAgICAgaW5zZXJ0aW9uU2V0Lmluc2VydChpbnN0SW5kZXgsIE1v
dmUsIGluc3Qub3JpZ2luLCBvZmZzZXRBcmcsIHRtcCk7CiAgICAgICAgICAgICAgICAgICAgICAg
ICBpbnN0ID0gSW5zdChpbnN0LmtpbmQub3Bjb2RlID09IExlYTMyID8gQWRkMzIgOiBBZGQ2NCwg
aW5zdC5vcmlnaW4sIHRtcCwgYmFzZSwgaW5zdC5hcmdzWzFdKTsKQEAgLTEyOCw4ICsxMjcsNyBA
QCB2b2lkIGxvd2VyU3RhY2tBcmdzKENvZGUmIGNvZGUpCiAgICAgICAgICAgICAgICAgICAgICAg
ICBpZiAocmVzdWx0LmlzVmFsaWRGb3JtKHdpZHRoKSkKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gcmVzdWx0OwogI2lmIENQVShBUk02NCkKLSAgICAgICAgICAgICAgICAgICAg
ICAgIEFTU0VSVChwaW5uZWRFeHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpKTsKLSAgICAgICAg
ICAgICAgICAgICAgICAgIEFpcjo6VG1wIHRtcCA9IEFpcjo6VG1wKCpwaW5uZWRFeHRlbmRlZE9m
ZnNldEFkZHJSZWdpc3RlcigpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIEFpcjo6VG1wIHRt
cCA9IEFpcjo6VG1wKE1hY3JvQXNzZW1ibGVyOjpsaW5rUmVnaXN0ZXIpOwogCiAgICAgICAgICAg
ICAgICAgICAgICAgICBBcmcgbGFyZ2VPZmZzZXQgPSBBcmc6OmlzVmFsaWRJbW1Gb3JtKG9mZnNl
dEZyb21TUCkgPyBBcmc6OmltbShvZmZzZXRGcm9tU1ApIDogQXJnOjpiaWdJbW0ob2Zmc2V0RnJv
bVNQKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGluc2VydGlvblNldC5pbnNlcnQoaW5zdElu
ZGV4LCBNb3ZlLCBpbnN0Lm9yaWdpbiwgbGFyZ2VPZmZzZXQsIHRtcCk7Cg==
</data>
<flag name="commit-queue"
          id="457668"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434993</attachid>
            <date>2021-08-05 09:12:21 -0700</date>
            <delta_ts>2021-08-05 09:21:15 -0700</delta_ts>
            <desc>Patch for reviewing</desc>
            <filename>bug-228710-20210805111220.patch</filename>
            <type>text/plain</type>
            <size>6539</size>
            <attacher name="Yijia Huang">yijia_huang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwNjY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2
NDRiYTFjNDM3MjllYjAwYWE4ZDVmNWJjN2E0ZmZjMmM3ZWQ5YzQ1Li44ZmQ0NzUyMzI2NjcxYzRi
NjA1OTUwN2Y5YzcwMGUwNWRhYjRkM2IxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzNyBAQAorMjAyMS0wOC0wNSAgWWlqaWEgSHVhbmcgIDx5aWppYV9odWFuZ0BhcHBsZS5j
b20+CisKKyAgICAgICAgW0FSTTY0XSBVc2UgbGluayByZWdpc3RlciBpbnN0ZWFkIG9mIHBpbm5p
bmcgYSByZWdpc3RlciBmb3IgbWF0ZXJpYWxpemluZyBiaWcgbG9hZCBjb25zdGFudHMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyODcxMAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFByZXZpb3VzbHksIHdl
IHBpbiBhIHJlZ2lzdGVyIGFzIGEgdGVtcCBmb3IgbWF0ZXJpYWxpemluZyBhIGxhcmdlIGNvbnN0
YW50IHRoYXQgY2Fubm90IGZpdCBpbgorICAgICAgICBMb2FkL1N0b3JlIGltbSBmb3JtLiBUaGlz
IGlzIG5vdCBlZmZpY2llbnQgc2luY2UgdGhlIHJlZ2lzdGVyIGFsbG9jYXRvciBoYXMgb25lIGxl
c3MgcmVnaXN0ZXIKKyAgICAgICAgdG8gYWxsb2NhdGUgZnJvbS4gVG8gc29sdmUgdGhpcyBwcm9i
bGVtLCB3ZSBzaG91bGQgc3dpdGNoIHRvIHVzaW5nIHRoZSBsaW5rIHJlZ2lzdGVyIGFzIHRoZSB0
ZW1wCisgICAgICAgIG9uIEFSTTY0LgorCisgICAgICAgICogYjMvQjNDb21tb24uY3BwOgorICAg
ICAgICAoSlNDOjpCMzo6cGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIpOiBEZWxldGVk
LgorICAgICAgICAqIGIzL0IzQ29tbW9uLmg6CisgICAgICAgICogYjMvYWlyL0FpckFsbG9jYXRl
UmVnaXN0ZXJzQW5kU3RhY2tBbmRHZW5lcmF0ZUNvZGUuY3BwOgorICAgICAgICAoSlNDOjpCMzo6
QWlyOjpjYWxsRnJhbWVBZGRyKToKKyAgICAgICAgKiBiMy9haXIvQWlyQ29kZS5jcHA6CisgICAg
ICAgIChKU0M6OkIzOjpBaXI6OkNvZGU6OkNvZGUpOgorICAgICAgICAqIGIzL2Fpci9BaXJMb3dl
clN0YWNrQXJncy5jcHA6CisgICAgICAgIChKU0M6OkIzOjpBaXI6Omxvd2VyU3RhY2tBcmdzKToK
KworICAgICAgICAqIGIzL0IzQ29tbW9uLmNwcDoKKyAgICAgICAgKEpTQzo6QjM6OmxpbmtSZWdp
c3Rlcik6CisgICAgICAgIChKU0M6OkIzOjpkYXRhVGVtcFJlZ2lzdGVyKToKKyAgICAgICAgKEpT
Qzo6QjM6OnBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBiMy9CM0NvbW1vbi5oOgorICAgICAgICAqIGIzL2Fpci9BaXJBbGxvY2F0ZVJlZ2lzdGVy
c0FuZFN0YWNrQW5kR2VuZXJhdGVDb2RlLmNwcDoKKyAgICAgICAgKEpTQzo6QjM6OkFpcjo6Y2Fs
bEZyYW1lQWRkcik6CisgICAgICAgICogYjMvYWlyL0FpckNvZGUuY3BwOgorICAgICAgICAoSlND
OjpCMzo6QWlyOjpDb2RlOjpDb2RlKToKKyAgICAgICAgKiBiMy9haXIvQWlyTG93ZXJTdGFja0Fy
Z3MuY3BwOgorICAgICAgICAoSlNDOjpCMzo6QWlyOjpsb3dlclN0YWNrQXJncyk6CisKIDIwMjEt
MDgtMDQgIFlpamlhIEh1YW5nICA8eWlqaWFfaHVhbmdAYXBwbGUuY29tPgogCiAgICAgICAgIFtB
Uk02NF0gRml4IFpvb20gYmxhY2sgc2NyZWVuIGR1cmluZyB2aWRlbyBtZWV0aW5nIG9uIFNhZmFy
aQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9uLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5jcHAKaW5kZXggOTdiMWZkMDA5MDMzNjhk
ZjQ5MDkzYmQ5NTRjZmVjZGNmZjdlYTkyMy4uNGY5MmY3Mjc1NGZkODVmNDBiOTZkODE3OTQzMDlj
NTRkMjk0ZjljZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzQ29tbW9u
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb21tb24uY3BwCkBAIC02Nyw3
ICs2NywxOCBAQCBib29sIHNob3VsZFNhdmVJUkJlZm9yZVBoYXNlKCkKICAgICByZXR1cm4gT3B0
aW9uczo6dmVyYm9zZVZhbGlkYXRpb25GYWlsdXJlKCk7CiB9CiAKLXN0ZDo6b3B0aW9uYWw8R1BS
UmVnPiBwaW5uZWRFeHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpCitzdGQ6Om9wdGlvbmFsPEdQ
UlJlZz4gbGlua1JlZ2lzdGVyKCkKK3sKKyNpZiBDUFUoQVJNNjQpCisgICAgcmV0dXJuIE1hY3Jv
QXNzZW1ibGVyOjpsaW5rUmVnaXN0ZXI7CisjZWxpZiBDUFUoWDg2XzY0KQorICAgIHJldHVybiBz
dGQ6Om51bGxvcHQ7CisjZWxzZQorI2Vycm9yIFVuaGFuZGxlZCBhcmNoaXRlY3R1cmUuCisjZW5k
aWYKK30KKworc3RkOjpvcHRpb25hbDxHUFJSZWc+IGRhdGFUZW1wUmVnaXN0ZXIoKQogewogI2lm
IENQVShBUk02NCkKICAgICByZXR1cm4gTWFjcm9Bc3NlbWJsZXI6OmRhdGFUZW1wUmVnaXN0ZXI7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb21tb24uaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5oCmluZGV4IDY0OGRlYjlmMWRmYWNkNmYxMGMw
ZGZhYzE5NGE3MWUzMDRmOTBkMjcuLmI3MTM5NTYzY2M4Nzk5ZTg2ZTdkM2NlODFiZTQzZTM4ZGFi
ZGZiZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbW1vbi5oCkBAIC0xODMsNyArMTgzLDkg
QEAgaW5saW5lIHVuc2lnbmVkIGRlZmF1bHRPcHRMZXZlbCgpCiAgICAgcmV0dXJuIE9wdGlvbnM6
OmRlZmF1bHRCM09wdExldmVsKCk7CiB9CiAKLXN0ZDo6b3B0aW9uYWw8R1BSUmVnPiBwaW5uZWRF
eHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpOworc3RkOjpvcHRpb25hbDxHUFJSZWc+IGxpbmtS
ZWdpc3RlcigpOworCitzdGQ6Om9wdGlvbmFsPEdQUlJlZz4gZGF0YVRlbXBSZWdpc3RlcigpOwog
CiB9IH0gLy8gbmFtZXNwYWNlIEpTQzo6QjMKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2IzL2Fpci9BaXJBbGxvY2F0ZVJlZ2lzdGVyc0FuZFN0YWNrQW5kR2VuZXJhdGVDb2Rl
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyQWxsb2NhdGVSZWdpc3RlcnNB
bmRTdGFja0FuZEdlbmVyYXRlQ29kZS5jcHAKaW5kZXggZTNjNjM4NDNmMGViZGI3MWNiNmY2YWNk
ZTI1ZjEzYWEzY2VhOGJjYS4uNzVkYTc2NGQ5Y2Y5MTZmMzZmZDBmY2VhMDJkY2Y2ZDYxYThmNzVh
MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJBbGxvY2F0ZVJl
Z2lzdGVyc0FuZFN0YWNrQW5kR2VuZXJhdGVDb2RlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYjMvYWlyL0FpckFsbG9jYXRlUmVnaXN0ZXJzQW5kU3RhY2tBbmRHZW5lcmF0ZUNvZGUu
Y3BwCkBAIC0xNDQsMTEgKzE0NCwxMSBAQCBzdGF0aWMgQUxXQVlTX0lOTElORSBDQ2FsbEhlbHBl
cnM6OkFkZHJlc3MgY2FsbEZyYW1lQWRkcihDQ2FsbEhlbHBlcnMmIGppdCwgaW50cAogICAgICAg
ICByZXR1cm4gQ0NhbGxIZWxwZXJzOjpBZGRyZXNzKEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVy
LCBvZmZzZXRGcm9tRlApOwogICAgIH0KIAotICAgIEFTU0VSVChwaW5uZWRFeHRlbmRlZE9mZnNl
dEFkZHJSZWdpc3RlcigpKTsKKyAgICBBU1NFUlQobGlua1JlZ2lzdGVyKCkpOwogICAgIGF1dG8g
YWRkciA9IEFyZzo6YWRkcihBaXI6OlRtcChHUFJJbmZvOjpjYWxsRnJhbWVSZWdpc3RlciksIG9m
ZnNldEZyb21GUCk7CiAgICAgaWYgKGFkZHIuaXNWYWxpZEZvcm0oV2lkdGg2NCkpCiAgICAgICAg
IHJldHVybiBDQ2FsbEhlbHBlcnM6OkFkZHJlc3MoR1BSSW5mbzo6Y2FsbEZyYW1lUmVnaXN0ZXIs
IG9mZnNldEZyb21GUCk7Ci0gICAgR1BSUmVnIHJlZyA9ICpwaW5uZWRFeHRlbmRlZE9mZnNldEFk
ZHJSZWdpc3RlcigpOworICAgIEdQUlJlZyByZWcgPSAqbGlua1JlZ2lzdGVyKCk7CiAgICAgaml0
Lm1vdmUoQ0NhbGxIZWxwZXJzOjpUcnVzdGVkSW1tUHRyKG9mZnNldEZyb21GUCksIHJlZyk7CiAg
ICAgaml0LmFkZDY0KEdQUkluZm86OmNhbGxGcmFtZVJlZ2lzdGVyLCByZWcpOwogICAgIHJldHVy
biBDQ2FsbEhlbHBlcnM6OkFkZHJlc3MocmVnKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9iMy9haXIvQWlyQ29kZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWly
L0FpckNvZGUuY3BwCmluZGV4IDhiYWI0ZGJhOGE1YWQwNGJhYzNjOTUyZTcwZjMxMTgwNzE5ZDBi
ZWUuLjhiYjQ1ZGQ1OTMxZWU0MDBmYmI3NTdjNDcxNGFkMDYyMDI0YmEzMDkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyQ29kZS5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2IzL2Fpci9BaXJDb2RlLmNwcApAQCAtOTAsNyArOTAsNyBAQCBDb2RlOjpD
b2RlKFByb2NlZHVyZSYgcHJvYykKICAgICAgICAgICAgIHNldFJlZ3NJblByaW9yaXR5T3JkZXIo
YmFuaywgcmVzdWx0KTsKICAgICAgICAgfSk7CiAKLSAgICBpZiAoYXV0byByZWcgPSBwaW5uZWRF
eHRlbmRlZE9mZnNldEFkZHJSZWdpc3RlcigpKQorICAgIGlmIChhdXRvIHJlZyA9IGRhdGFUZW1w
UmVnaXN0ZXIoKSkKICAgICAgICAgcGluUmVnaXN0ZXIoKnJlZyk7CiAKICAgICBtX3Bpbm5lZFJl
Z3Muc2V0KE1hY3JvQXNzZW1ibGVyOjpmcmFtZVBvaW50ZXJSZWdpc3Rlcik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0Fpckxvd2VyU3RhY2tBcmdzLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyTG93ZXJTdGFja0FyZ3MuY3BwCmluZGV4IDkw
NWU2MTdmYmRlMGUyYjdkNzU1NTYzZTY4ODU4OWJkYWQ3MjZjODAuLjFhYWYyODhkNzQ4NThmZWJj
YTM0N2Y1MjBmYmRjZWNiMzBmOGQxOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9iMy9haXIvQWlyTG93ZXJTdGFja0FyZ3MuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9iMy9haXIvQWlyTG93ZXJTdGFja0FyZ3MuY3BwCkBAIC03OCw4ICs3OCw3IEBAIHZvaWQgbG93
ZXJTdGFja0FyZ3MoQ29kZSYgY29kZSkKICAgICAgICAgICAgICAgICAgICAgaWYgKEFyZzo6aXNW
YWxpZEltbUZvcm0ob2Zmc2V0KSkKICAgICAgICAgICAgICAgICAgICAgICAgIGluc3QgPSBJbnN0
KGluc3Qua2luZC5vcGNvZGUgPT0gTGVhMzIgPyBBZGQzMiA6IEFkZDY0LCBpbnN0Lm9yaWdpbiwg
QXJnOjppbW0ob2Zmc2V0KSwgYmFzZSwgaW5zdC5hcmdzWzFdKTsKICAgICAgICAgICAgICAgICAg
ICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBBU1NFUlQocGlubmVkRXh0ZW5kZWRP
ZmZzZXRBZGRyUmVnaXN0ZXIoKSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBBaXI6OlRtcCB0
bXAgPSBBaXI6OlRtcCgqcGlubmVkRXh0ZW5kZWRPZmZzZXRBZGRyUmVnaXN0ZXIoKSk7CisgICAg
ICAgICAgICAgICAgICAgICAgICBBaXI6OlRtcCB0bXAgPSBBaXI6OlRtcCgqbGlua1JlZ2lzdGVy
KCkpOwogICAgICAgICAgICAgICAgICAgICAgICAgQXJnIG9mZnNldEFyZyA9IEFyZzo6YmlnSW1t
KG9mZnNldCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnNlcnRpb25TZXQuaW5zZXJ0KGlu
c3RJbmRleCwgTW92ZSwgaW5zdC5vcmlnaW4sIG9mZnNldEFyZywgdG1wKTsKICAgICAgICAgICAg
ICAgICAgICAgICAgIGluc3QgPSBJbnN0KGluc3Qua2luZC5vcGNvZGUgPT0gTGVhMzIgPyBBZGQz
MiA6IEFkZDY0LCBpbnN0Lm9yaWdpbiwgdG1wLCBiYXNlLCBpbnN0LmFyZ3NbMV0pOwpAQCAtMTI4
LDggKzEyNyw3IEBAIHZvaWQgbG93ZXJTdGFja0FyZ3MoQ29kZSYgY29kZSkKICAgICAgICAgICAg
ICAgICAgICAgICAgIGlmIChyZXN1bHQuaXNWYWxpZEZvcm0od2lkdGgpKQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CiAjaWYgQ1BVKEFSTTY0KQotICAgICAgICAg
ICAgICAgICAgICAgICAgQVNTRVJUKHBpbm5lZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCkp
OwotICAgICAgICAgICAgICAgICAgICAgICAgQWlyOjpUbXAgdG1wID0gQWlyOjpUbXAoKnBpbm5l
ZEV4dGVuZGVkT2Zmc2V0QWRkclJlZ2lzdGVyKCkpOworICAgICAgICAgICAgICAgICAgICAgICAg
QWlyOjpUbXAgdG1wID0gQWlyOjpUbXAoKmxpbmtSZWdpc3RlcigpKTsKIAogICAgICAgICAgICAg
ICAgICAgICAgICAgQXJnIGxhcmdlT2Zmc2V0ID0gQXJnOjppc1ZhbGlkSW1tRm9ybShvZmZzZXRG
cm9tU1ApID8gQXJnOjppbW0ob2Zmc2V0RnJvbVNQKSA6IEFyZzo6YmlnSW1tKG9mZnNldEZyb21T
UCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnNlcnRpb25TZXQuaW5zZXJ0KGluc3RJbmRl
eCwgTW92ZSwgaW5zdC5vcmlnaW4sIGxhcmdlT2Zmc2V0LCB0bXApOwo=
</data>
<flag name="review"
          id="457671"
          type_id="1"
          status="-"
          setter="saam"
    />
          </attachment>
      

    </bug>

</bugzilla>