<?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>213686</bug_id>
          
          <creation_ts>2020-06-27 16:21:52 -0700</creation_ts>
          <short_desc>ConservativeRoots should mark any cell it finds an interior pointer to</short_desc>
          <delta_ts>2020-06-29 12:08:03 -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></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>ews-watchlist</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1666820</commentid>
    <comment_count>0</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-06-27 16:21:52 -0700</bug_when>
    <thetext>ConservativeRoots should any cell it finds an interior pointer to</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1666822</commentid>
    <comment_count>1</comment_count>
      <attachid>402975</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-06-27 16:48:43 -0700</bug_when>
    <thetext>Created attachment 402975
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1666830</commentid>
    <comment_count>2</comment_count>
      <attachid>402975</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-06-27 18:34:54 -0700</bug_when>
    <thetext>Comment on attachment 402975
Patch

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

&gt; Source/JavaScriptCore/ChangeLog:3
&gt; +        ConservativeRoots should any cell it finds an interior pointer to

Will update the title before committing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1666970</commentid>
    <comment_count>3</comment_count>
      <attachid>402975</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-06-28 19:08:19 -0700</bug_when>
    <thetext>Comment on attachment 402975
Patch

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

&gt; Source/JavaScriptCore/ChangeLog:23
&gt; +        A naive patch that doesn&apos;t exit return from
&gt; +        findGCObjectPointersForMarking after finding a live non-butterfly
&gt; +        cell was a 2% regression. So, this patch immediately returns
&gt; +        immediately after marking some non-butterfly. Given this was such
&gt; +        a big regression (likely from running MarkedBlock::isLive) more
&gt; +        than once there&apos;s possibly an optimization opportunity here. I
&gt; +        filed https://bugs.webkit.org/show_bug.cgi?id=213687 to
&gt; +        investigate further.

some grammatical issues  in this paragraph.

- 2% regression on what?
- What&apos;s &quot;exit return&quot;?
- &quot;immediately returns  immediately after marking some non-butterfly&quot;. What do you  mean here? What&apos;s the  thing we&apos;re doing to make up  perf?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1666971</commentid>
    <comment_count>4</comment_count>
      <attachid>402975</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2020-06-28 19:40:09 -0700</bug_when>
    <thetext>Comment on attachment 402975
Patch

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

Some drive by comments ...

&gt; Source/JavaScriptCore/ChangeLog:16
&gt; +        A naive patch that doesn&apos;t exit return from

typo: &quot;exit return&quot;.

&gt; Source/JavaScriptCore/ChangeLog:19
&gt; +        cell was a 2% regression. So, this patch immediately returns
&gt; +        immediately after marking some non-butterfly. Given this was such

&quot;immediately&quot; used twice.  I suggest removing the one that preceded &quot;returns&quot;.

Also, you didn&apos;t explicitly state whether this change fixed the 2% regression, or are we choosing to live with this regression?  Please add a statement to make it clear and explicit what the end result is.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667125</commentid>
    <comment_count>5</comment_count>
      <attachid>402975</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-06-29 09:14:35 -0700</bug_when>
    <thetext>Comment on attachment 402975
Patch

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

&gt;&gt; Source/JavaScriptCore/ChangeLog:23
&gt;&gt; +        investigate further.
&gt; 
&gt; some grammatical issues  in this paragraph.
&gt; 
&gt; - 2% regression on what?
&gt; - What&apos;s &quot;exit return&quot;?
&gt; - &quot;immediately returns  immediately after marking some non-butterfly&quot;. What do you  mean here? What&apos;s the  thing we&apos;re doing to make up  perf?

Yeah, regression was fixed in local testing. Will update comments</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667128</commentid>
    <comment_count>6</comment_count>
      <attachid>402975</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-06-29 09:17:10 -0700</bug_when>
    <thetext>Comment on attachment 402975
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667129</commentid>
    <comment_count>7</comment_count>
      <attachid>402975</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-06-29 09:17:37 -0700</bug_when>
    <thetext>Comment on attachment 402975
Patch

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

&gt;&gt;&gt; Source/JavaScriptCore/ChangeLog:23
&gt;&gt;&gt; +        investigate further.
&gt;&gt; 
&gt;&gt; some grammatical issues  in this paragraph.
&gt;&gt; 
&gt;&gt; - 2% regression on what?
&gt;&gt; - What&apos;s &quot;exit return&quot;?
&gt;&gt; - &quot;immediately returns  immediately after marking some non-butterfly&quot;. What do you  mean here? What&apos;s the  thing we&apos;re doing to make up  perf?
&gt; 
&gt; Yeah, regression was fixed in local testing. Will update comments

The regression was fixed by not checking for interior pointers if we found a pointer to the base of a live object. I would have done this for all pointers including JSImmutableButterfly and Auxiliaries but I don&apos;t think that&apos;s correct. Since you could have a property only butterfly pointed to off the end of the object.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667134</commentid>
    <comment_count>8</comment_count>
      <attachid>403070</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-06-29 09:24:11 -0700</bug_when>
    <thetext>Created attachment 403070
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667150</commentid>
    <comment_count>9</comment_count>
      <attachid>403074</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-06-29 09:44:05 -0700</bug_when>
    <thetext>Created attachment 403074
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667167</commentid>
    <comment_count>10</comment_count>
      <attachid>403074</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-06-29 10:20:34 -0700</bug_when>
    <thetext>Comment on attachment 403074
Patch for landing

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

&gt; Source/JavaScriptCore/heap/HeapUtil.h:112
&gt; +            return isLive &amp;&amp; !mayHaveIndexingHeader(cellKind);

If we call  &quot;func&quot; because isLive is true, why do we care about  mayHaveIndexingHeader after that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667172</commentid>
    <comment_count>11</comment_count>
      <attachid>403074</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-06-29 10:24:43 -0700</bug_when>
    <thetext>Comment on attachment 403074
Patch for landing

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

&gt;&gt; Source/JavaScriptCore/heap/HeapUtil.h:112
&gt;&gt; +            return isLive &amp;&amp; !mayHaveIndexingHeader(cellKind);
&gt; 
&gt; If we call  &quot;func&quot; because isLive is true, why do we care about  mayHaveIndexingHeader after that?

I see why now, because of the one cell over check. Might be worth a comment I guess since it&apos;s a bit confusing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667174</commentid>
    <comment_count>12</comment_count>
      <attachid>403074</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-06-29 10:28:29 -0700</bug_when>
    <thetext>Comment on attachment 403074
Patch for landing

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

&gt;&gt;&gt; Source/JavaScriptCore/heap/HeapUtil.h:112
&gt;&gt;&gt; +            return isLive &amp;&amp; !mayHaveIndexingHeader(cellKind);
&gt;&gt; 
&gt;&gt; If we call  &quot;func&quot; because isLive is true, why do we care about  mayHaveIndexingHeader after that?
&gt; 
&gt; I see why now, because of the one cell over check. Might be worth a comment I guess since it&apos;s a bit confusing

Correct, I actually think it&apos;s currently only possibly for true butterflies. If we ever add CoW object literals we may have this problem for immutable butterflies too, however, so I just went with the conservative answer. We could also avoid checking for self interior pointers in the case we marked the first value but I think that&apos;s rare enough it&apos;s not worth the complexity.

Yeah, it seems somewhat non-obvious and no tests break if you always return for butterflies. I&apos;ll add a comment so we don&apos;t accidentally break it in the future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667194</commentid>
    <comment_count>13</comment_count>
      <attachid>403085</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-06-29 11:01:55 -0700</bug_when>
    <thetext>Created attachment 403085
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667196</commentid>
    <comment_count>14</comment_count>
      <attachid>403087</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-06-29 11:06:30 -0700</bug_when>
    <thetext>Created attachment 403087
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667200</commentid>
    <comment_count>15</comment_count>
      <attachid>403089</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-06-29 11:10:58 -0700</bug_when>
    <thetext>Created attachment 403089
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667216</commentid>
    <comment_count>16</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-06-29 12:07:30 -0700</bug_when>
    <thetext>Committed r263674: &lt;https://trac.webkit.org/changeset/263674&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 403089.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>402975</attachid>
            <date>2020-06-27 16:48:43 -0700</date>
            <delta_ts>2020-06-29 09:23:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-213686-20200627164842.patch</filename>
            <type>text/plain</type>
            <size>9363</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzNTI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
MzU3NzE2ODQ4NTRlMzdmNDlhMzRlZTczOTMxNmVhZDQxZTM4MDkxLi4wMWNmMzgzZWEyMWJmNzVl
OGM3YzQxM2Q1ZmUzZTJmZWEzZjNkMjYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MCBAQAorMjAyMC0wNi0yNyAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBDb25zZXJ2YXRpdmVSb290cyBzaG91bGQgYW55IGNlbGwgaXQgZmlu
ZHMgYW4gaW50ZXJpb3IgcG9pbnRlciB0bworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjEzNjg2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQ3VycmVudGx5LCBpZiBDb25zZXJhdGl2ZVJvb3RzIGZpbmRzIGFu
IGludGVyaW9yIHBvaW50ZXIgdG8gYSBjZWxsCisgICAgICAgIGl0IHdpbGwgb25seSBtYXJrIHRo
YXQgY2VsbCBpZiBpdCdzIGEgYnV0dGVyZmx5IG9mIHNvbWUKKyAgICAgICAga2luZC4gSG93ZXZl
ciwgdGhpcyBjYW4gY2F1c2UgcHJvYmxlbXMgaWYgdGhlIEMrKyBvciBCMyBjb21waWxlcnMKKyAg
ICAgICAgcHJlLWNvbXB1dGUgdGhlIG9mZnNldCBvZiBzb21lIGNlbGwgbWVtYmVyIHRoZXkgd2Fu
dCB0byBsb2FkIGZyb20KKyAgICAgICAgYWZ0ZXIgYSBjYWxsLiBJZiB0aGlzIGhhcHBlbnMgYW5k
IHRoYXQgaW50ZXJpb3IgcG9pbnRlciBpcyB0aGUKKyAgICAgICAgb25seSByZWZlcmVuY2UgdG8g
dGhlIGNlbGwgaXQgY2FuIGdldCBjb2xsZWN0ZWQgd2hpbGUgaXQgaXMgc3RpbGwKKyAgICAgICAg
ImFsaXZlIi4KKworICAgICAgICBBIG5haXZlIHBhdGNoIHRoYXQgZG9lc24ndCBleGl0IHJldHVy
biBmcm9tCisgICAgICAgIGZpbmRHQ09iamVjdFBvaW50ZXJzRm9yTWFya2luZyBhZnRlciBmaW5k
aW5nIGEgbGl2ZSBub24tYnV0dGVyZmx5CisgICAgICAgIGNlbGwgd2FzIGEgMiUgcmVncmVzc2lv
bi4gU28sIHRoaXMgcGF0Y2ggaW1tZWRpYXRlbHkgcmV0dXJucworICAgICAgICBpbW1lZGlhdGVs
eSBhZnRlciBtYXJraW5nIHNvbWUgbm9uLWJ1dHRlcmZseS4gR2l2ZW4gdGhpcyB3YXMgc3VjaAor
ICAgICAgICBhIGJpZyByZWdyZXNzaW9uIChsaWtlbHkgZnJvbSBydW5uaW5nIE1hcmtlZEJsb2Nr
Ojppc0xpdmUpIG1vcmUKKyAgICAgICAgdGhhbiBvbmNlIHRoZXJlJ3MgcG9zc2libHkgYW4gb3B0
aW1pemF0aW9uIG9wcG9ydHVuaXR5IGhlcmUuIEkKKyAgICAgICAgZmlsZWQgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMzY4NyB0bworICAgICAgICBpbnZlc3RpZ2F0
ZSBmdXJ0aGVyLgorCisgICAgICAgICogaGVhcC9IZWFwQ2VsbC5jcHA6CisgICAgICAgIChXVEY6
OnByaW50SW50ZXJuYWwpOgorICAgICAgICAqIGhlYXAvSGVhcENlbGwuaDoKKyAgICAgICAgKEpT
Qzo6aXNKU0NlbGxLaW5kKToKKyAgICAgICAgKEpTQzo6bWF5SGF2ZUluZGV4aW5nSGVhZGVyKToK
KyAgICAgICAgKEpTQzo6aGFzSW50ZXJpb3JQb2ludGVycyk6IERlbGV0ZWQuCisgICAgICAgICog
aGVhcC9IZWFwVXRpbC5oOgorICAgICAgICAoSlNDOjpIZWFwVXRpbDo6ZmluZEdDT2JqZWN0UG9p
bnRlcnNGb3JNYXJraW5nKToKKyAgICAgICAgKiBoZWFwL1Nsb3RWaXNpdG9yLmNwcDoKKyAgICAg
ICAgKEpTQzo6U2xvdFZpc2l0b3I6OmFwcGVuZEpTQ2VsbE9yQXV4aWxpYXJ5KToKKyAgICAgICAg
KiBydW50aW1lL1ZNLmNwcDoKKyAgICAgICAgKEpTQzo6Vk06OlZNKToKKwogMjAyMC0wNi0yNSAg
TWFyayBMYW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgSlNDZWxsIGNvbnN0cnVj
dG9yIG5lZWRzIHRvIGVuc3VyZSB0aGF0IHRoZSBwYXNzZWQgaW4gc3RydWN0dXJlIGlzIHN0aWxs
IGFsaXZlLgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcENlbGwu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcENlbGwuY3BwCmluZGV4IDIwMDA1
ZDYxYTk0OTI3ZGU1Njc1N2E5NWYwYzA5ZDNlYzM4MjA5MjMuLmNiNDU3OWNkYWNmNDVlNmI4NTFk
ODU0NmFiZTA0Yzg1NGE2MzkwMGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9o
ZWFwL0hlYXBDZWxsLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2Vs
bC5jcHAKQEAgLTU0LDggKzU0LDggQEAgdm9pZCBwcmludEludGVybmFsKFByaW50U3RyZWFtJiBv
dXQsIEhlYXBDZWxsOjpLaW5kIGtpbmQpCiAgICAgY2FzZSBIZWFwQ2VsbDo6SlNDZWxsOgogICAg
ICAgICBvdXQucHJpbnQoIkpTQ2VsbCIpOwogICAgICAgICByZXR1cm47Ci0gICAgY2FzZSBIZWFw
Q2VsbDo6SlNDZWxsV2l0aEludGVyaW9yUG9pbnRlcnM6Ci0gICAgICAgIG91dC5wcmludCgiSlND
ZWxsV2l0aEludGVyaW9yUG9pbnRlcnMiKTsKKyAgICBjYXNlIEhlYXBDZWxsOjpKU0NlbGxXaXRo
SW5kZXhpbmdIZWFkZXI6CisgICAgICAgIG91dC5wcmludCgiSlNDZWxsV2l0aEluZGV4aW5nSGVh
ZGVyIik7CiAgICAgICAgIHJldHVybjsKICAgICBjYXNlIEhlYXBDZWxsOjpBdXhpbGlhcnk6CiAg
ICAgICAgIG91dC5wcmludCgiQXV4aWxpYXJ5Iik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVh
cENlbGwuaAppbmRleCAwYWEzNTJhZmE3NDE5MmZiNjI3OTFiNTc0NjljMzU3NDk3YzEwM2E2Li5i
MjY3MzY2ODZjOWExMTNmODI1ZTU5NWZiNDE0MzhkYjg2NjhkODhlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9oZWFwL0hlYXBDZWxsLmgKQEAgLTQyLDcgKzQyLDcgQEAgY2xhc3MgSGVhcENlbGwgewog
cHVibGljOgogICAgIGVudW0gS2luZCA6IGludDhfdCB7CiAgICAgICAgIEpTQ2VsbCwKLSAgICAg
ICAgSlNDZWxsV2l0aEludGVyaW9yUG9pbnRlcnMsCisgICAgICAgIEpTQ2VsbFdpdGhJbmRleGlu
Z0hlYWRlciwKICAgICAgICAgQXV4aWxpYXJ5CiAgICAgfTsKICAgICAKQEAgLTkzLDEyICs5Mywx
MiBAQCBwdWJsaWM6CiAKIGlubGluZSBib29sIGlzSlNDZWxsS2luZChIZWFwQ2VsbDo6S2luZCBr
aW5kKQogewotICAgIHJldHVybiBraW5kID09IEhlYXBDZWxsOjpKU0NlbGwgfHwga2luZCA9PSBI
ZWFwQ2VsbDo6SlNDZWxsV2l0aEludGVyaW9yUG9pbnRlcnM7CisgICAgcmV0dXJuIGtpbmQgPT0g
SGVhcENlbGw6OkpTQ2VsbCB8fCBraW5kID09IEhlYXBDZWxsOjpKU0NlbGxXaXRoSW5kZXhpbmdI
ZWFkZXI7CiB9CiAKLWlubGluZSBib29sIGhhc0ludGVyaW9yUG9pbnRlcnMoSGVhcENlbGw6Oktp
bmQga2luZCkKK2lubGluZSBib29sIG1heUhhdmVJbmRleGluZ0hlYWRlcihIZWFwQ2VsbDo6S2lu
ZCBraW5kKQogewotICAgIHJldHVybiBraW5kID09IEhlYXBDZWxsOjpBdXhpbGlhcnkgfHwga2lu
ZCA9PSBIZWFwQ2VsbDo6SlNDZWxsV2l0aEludGVyaW9yUG9pbnRlcnM7CisgICAgcmV0dXJuIGtp
bmQgPT0gSGVhcENlbGw6OkF1eGlsaWFyeSB8fCBraW5kID09IEhlYXBDZWxsOjpKU0NlbGxXaXRo
SW5kZXhpbmdIZWFkZXI7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFV0aWwuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9oZWFwL0hlYXBVdGlsLmgKaW5kZXggZTljZGM5NjBkNjFiOGMzOGEyOTk4MTBlZGUxZTQyNGM2
M2ZiNjg1OS4uZGNmNTI2NTM3ZDhhZDllZjM2YmQyYzhlNGVmN2I0OWNmZjg5ZWVhNSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFV0aWwuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVXRpbC5oCkBAIC04OCw3ICs4OCw3IEBAIHB1YmxpYzoK
ICAgICAgICAgICAgIE1hcmtlZEJsb2NrKiBwcmV2aW91c0NhbmRpZGF0ZSA9IE1hcmtlZEJsb2Nr
OjpibG9ja0ZvcihwcmV2aW91c1BvaW50ZXIpOwogICAgICAgICAgICAgaWYgKCFmaWx0ZXIucnVs
ZU91dChiaXR3aXNlX2Nhc3Q8Qml0cz4ocHJldmlvdXNDYW5kaWRhdGUpKQogICAgICAgICAgICAg
ICAgICYmIHNldC5jb250YWlucyhwcmV2aW91c0NhbmRpZGF0ZSkKLSAgICAgICAgICAgICAgICAm
JiBoYXNJbnRlcmlvclBvaW50ZXJzKHByZXZpb3VzQ2FuZGlkYXRlLT5oYW5kbGUoKS5jZWxsS2lu
ZCgpKSkgeworICAgICAgICAgICAgICAgICYmIG1heUhhdmVJbmRleGluZ0hlYWRlcihwcmV2aW91
c0NhbmRpZGF0ZS0+aGFuZGxlKCkuY2VsbEtpbmQoKSkpIHsKICAgICAgICAgICAgICAgICBwcmV2
aW91c1BvaW50ZXIgPSBzdGF0aWNfY2FzdDxjaGFyKj4ocHJldmlvdXNDYW5kaWRhdGUtPmhhbmRs
ZSgpLmNlbGxBbGlnbihwcmV2aW91c1BvaW50ZXIpKTsKICAgICAgICAgICAgICAgICBpZiAocHJl
dmlvdXNDYW5kaWRhdGUtPmhhbmRsZSgpLmlzTGl2ZUNlbGwobWFya2luZ1ZlcnNpb24sIG5ld2x5
QWxsb2NhdGVkVmVyc2lvbiwgaXNNYXJraW5nLCBwcmV2aW91c1BvaW50ZXIpKQogICAgICAgICAg
ICAgICAgICAgICBmdW5jKHByZXZpb3VzUG9pbnRlciwgcHJldmlvdXNDYW5kaWRhdGUtPmhhbmRs
ZSgpLmNlbGxLaW5kKCkpOwpAQCAtMTA2LDIxICsxMDYsMjQgQEAgcHVibGljOgogICAgICAgICBI
ZWFwQ2VsbDo6S2luZCBjZWxsS2luZCA9IGNhbmRpZGF0ZS0+aGFuZGxlKCkuY2VsbEtpbmQoKTsK
ICAgICAgICAgCiAgICAgICAgIGF1dG8gdHJ5UG9pbnRlciA9IFsmXSAodm9pZCogcG9pbnRlcikg
ewotICAgICAgICAgICAgaWYgKGNhbmRpZGF0ZS0+aGFuZGxlKCkuaXNMaXZlQ2VsbChtYXJraW5n
VmVyc2lvbiwgbmV3bHlBbGxvY2F0ZWRWZXJzaW9uLCBpc01hcmtpbmcsIHBvaW50ZXIpKQorICAg
ICAgICAgICAgYm9vbCBpc0xpdmUgPSBjYW5kaWRhdGUtPmhhbmRsZSgpLmlzTGl2ZUNlbGwobWFy
a2luZ1ZlcnNpb24sIG5ld2x5QWxsb2NhdGVkVmVyc2lvbiwgaXNNYXJraW5nLCBwb2ludGVyKTsK
KyAgICAgICAgICAgIGlmIChpc0xpdmUpCiAgICAgICAgICAgICAgICAgZnVuYyhwb2ludGVyLCBj
ZWxsS2luZCk7CisgICAgICAgICAgICByZXR1cm4gaXNMaXZlICYmICFtYXlIYXZlSW5kZXhpbmdI
ZWFkZXIoY2VsbEtpbmQpOwogICAgICAgICB9OwogICAgIAogICAgICAgICBpZiAoaXNKU0NlbGxL
aW5kKGNlbGxLaW5kKSkgewotICAgICAgICAgICAgaWYgKE1hcmtlZEJsb2NrOjppc0F0b21BbGln
bmVkKHBvaW50ZXIpKQotICAgICAgICAgICAgICAgIHRyeVBvaW50ZXIocG9pbnRlcik7Ci0gICAg
ICAgICAgICBpZiAoIWhhc0ludGVyaW9yUG9pbnRlcnMoY2VsbEtpbmQpKQotICAgICAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgICAgIGlmIChMSUtFTFkoTWFya2VkQmxvY2s6OmlzQXRvbUFs
aWduZWQocG9pbnRlcikpKSB7CisgICAgICAgICAgICAgICAgaWYgKHRyeVBvaW50ZXIocG9pbnRl
cikpCisgICAgICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0KICAgICAgICAg
fQogICAgIAotICAgICAgICAvLyBBIGJ1dHRlcmZseSBjb3VsZCBwb2ludCBpbnRvIHRoZSBtaWRk
bGUgb2YgYW4gb2JqZWN0LgorICAgICAgICAvLyBXZSBjb3VsZCBwb2ludCBpbnRvIHRoZSBtaWRk
bGUgb2YgYW4gb2JqZWN0LgogICAgICAgICBjaGFyKiBhbGlnbmVkUG9pbnRlciA9IHN0YXRpY19j
YXN0PGNoYXIqPihjYW5kaWRhdGUtPmhhbmRsZSgpLmNlbGxBbGlnbihwb2ludGVyKSk7Ci0gICAg
ICAgIHRyeVBvaW50ZXIoYWxpZ25lZFBvaW50ZXIpOwotICAgIAorICAgICAgICBpZiAodHJ5UG9p
bnRlcihhbGlnbmVkUG9pbnRlcikpCisgICAgICAgICAgICByZXR1cm47CisKICAgICAgICAgLy8g
QWxzbywgYSBidXR0ZXJmbHkgY291bGQgcG9pbnQgYXQgdGhlIGVuZCBvZiBhbiBvYmplY3QgcGx1
cyBzaXplb2YoSW5kZXhpbmdIZWFkZXIpLiBJbiB0aGF0CiAgICAgICAgIC8vIGNhc2UsIHRoaXMg
aXMgcG9pbnRpbmcgdG8gdGhlIG9iamVjdCB0byB0aGUgcmlnaHQgb2YgdGhlIG9uZSB3ZSBzaG91
bGQgYmUgbWFya2luZy4KICAgICAgICAgaWYgKGNhbmRpZGF0ZS0+Y2FuZGlkYXRlQXRvbU51bWJl
cihhbGlnbmVkUG9pbnRlcikgPiAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9TbG90VmlzaXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9TbG90Vmlz
aXRvci5jcHAKaW5kZXggMDA5ZDU0NjMxMzhmY2U5ZTc2MjY1MjY2MmNlMDlmZGM5YzAwYTFiYi4u
YmZkYmY0NDAyMmM0YTU2MDMzNGU4MDAwMWVkYjQ2ZThlMmUwOGZiZSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvU2xvdFZpc2l0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL1Nsb3RWaXNpdG9yLmNwcApAQCAtMjA4LDcgKzIwOCw3IEBAIHZvaWQg
U2xvdFZpc2l0b3I6OmFwcGVuZEpTQ2VsbE9yQXV4aWxpYXJ5KEhlYXBDZWxsKiBoZWFwQ2VsbCkK
ICAgICAKICAgICBzd2l0Y2ggKGhlYXBDZWxsLT5jZWxsS2luZCgpKSB7CiAgICAgY2FzZSBIZWFw
Q2VsbDo6SlNDZWxsOgotICAgIGNhc2UgSGVhcENlbGw6OkpTQ2VsbFdpdGhJbnRlcmlvclBvaW50
ZXJzOiB7CisgICAgY2FzZSBIZWFwQ2VsbDo6SlNDZWxsV2l0aEluZGV4aW5nSGVhZGVyOiB7CiAg
ICAgICAgIC8vIFdlIGhhdmUgYW1wbGUgYnVkZ2V0IHRvIHBlcmZvcm0gdmFsaWRhdGlvbiBoZXJl
LgogICAgIAogICAgICAgICBKU0NlbGwqIGpzQ2VsbCA9IHN0YXRpY19jYXN0PEpTQ2VsbCo+KGhl
YXBDZWxsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNwcAppbmRleCAxMTRiYTk3NzBi
YTVhNTY1MjJlYjViYTI4OGQ5MmY3MDA2ZTIzYjY1Li4xNjdjZjBmNWQ5ZmNmYmM3NzNiMGM1NWQ3
MWIyM2NiYTVmZTYyYjc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9WTS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCkBAIC0y
NzUsNyArMjc1LDcgQEAgVk06OlZNKFZNVHlwZSB2bVR5cGUsIEhlYXBUeXBlIGhlYXBUeXBlKQog
ICAgICwgcHJpbWl0aXZlR2lnYWNhZ2VBbGxvY2F0b3IobWFrZVVuaXF1ZTxHaWdhY2FnZUFsaWdu
ZWRNZW1vcnlBbGxvY2F0b3I+KEdpZ2FjYWdlOjpQcmltaXRpdmUpKQogICAgICwganNWYWx1ZUdp
Z2FjYWdlQWxsb2NhdG9yKG1ha2VVbmlxdWU8R2lnYWNhZ2VBbGlnbmVkTWVtb3J5QWxsb2NhdG9y
PihHaWdhY2FnZTo6SlNWYWx1ZSkpCiAgICAgLCBhdXhpbGlhcnlIZWFwQ2VsbFR5cGUobWFrZVVu
aXF1ZTxIZWFwQ2VsbFR5cGU+KENlbGxBdHRyaWJ1dGVzKERvZXNOb3ROZWVkRGVzdHJ1Y3Rpb24s
IEhlYXBDZWxsOjpBdXhpbGlhcnkpKSkKLSAgICAsIGltbXV0YWJsZUJ1dHRlcmZseUhlYXBDZWxs
VHlwZShtYWtlVW5pcXVlPEhlYXBDZWxsVHlwZT4oQ2VsbEF0dHJpYnV0ZXMoRG9lc05vdE5lZWRE
ZXN0cnVjdGlvbiwgSGVhcENlbGw6OkpTQ2VsbFdpdGhJbnRlcmlvclBvaW50ZXJzKSkpCisgICAg
LCBpbW11dGFibGVCdXR0ZXJmbHlIZWFwQ2VsbFR5cGUobWFrZVVuaXF1ZTxIZWFwQ2VsbFR5cGU+
KENlbGxBdHRyaWJ1dGVzKERvZXNOb3ROZWVkRGVzdHJ1Y3Rpb24sIEhlYXBDZWxsOjpKU0NlbGxX
aXRoSW5kZXhpbmdIZWFkZXIpKSkKICAgICAsIGNlbGxIZWFwQ2VsbFR5cGUobWFrZVVuaXF1ZTxI
ZWFwQ2VsbFR5cGU+KENlbGxBdHRyaWJ1dGVzKERvZXNOb3ROZWVkRGVzdHJ1Y3Rpb24sIEhlYXBD
ZWxsOjpKU0NlbGwpKSkKICAgICAsIGRlc3RydWN0aWJsZUNlbGxIZWFwQ2VsbFR5cGUobWFrZVVu
aXF1ZTxIZWFwQ2VsbFR5cGU+KENlbGxBdHRyaWJ1dGVzKE5lZWRzRGVzdHJ1Y3Rpb24sIEhlYXBD
ZWxsOjpKU0NlbGwpKSkKICAgICAsIGFwaUdsb2JhbE9iamVjdEhlYXBDZWxsVHlwZShJc29IZWFw
Q2VsbFR5cGU6OmNyZWF0ZTxKU0FQSUdsb2JhbE9iamVjdD4oKSkKQEAgLTMyMiw3ICszMjIsNyBA
QCBWTTo6Vk0oVk1UeXBlIHZtVHlwZSwgSGVhcFR5cGUgaGVhcFR5cGUpCiAjZW5kaWYKICAgICAs
IHByaW1pdGl2ZUdpZ2FjYWdlQXV4aWxpYXJ5U3BhY2UoIlByaW1pdGl2ZSBHaWdhY2FnZSBBdXhp
bGlhcnkiLCBoZWFwLCBhdXhpbGlhcnlIZWFwQ2VsbFR5cGUuZ2V0KCksIHByaW1pdGl2ZUdpZ2Fj
YWdlQWxsb2NhdG9yLmdldCgpKSAvLyBIYXNoOjB4M2U3Y2Q3NjIKICAgICAsIGpzVmFsdWVHaWdh
Y2FnZUF1eGlsaWFyeVNwYWNlKCJKU1ZhbHVlIEdpZ2FjYWdlIEF1eGlsaWFyeSIsIGhlYXAsIGF1
eGlsaWFyeUhlYXBDZWxsVHlwZS5nZXQoKSwganNWYWx1ZUdpZ2FjYWdlQWxsb2NhdG9yLmdldCgp
KSAvLyBIYXNoOjB4MjQxZTk0NgotICAgICwgaW1tdXRhYmxlQnV0dGVyZmx5SlNWYWx1ZUdpZ2Fj
YWdlQXV4aWxpYXJ5U3BhY2UoIkltbXV0YWJsZUJ1dHRlcmZseSBHaWdhY2FnZSBKU0NlbGxXaXRo
SW50ZXJpb3JQb2ludGVycyIsIGhlYXAsIGltbXV0YWJsZUJ1dHRlcmZseUhlYXBDZWxsVHlwZS5n
ZXQoKSwganNWYWx1ZUdpZ2FjYWdlQWxsb2NhdG9yLmdldCgpKSAvLyBIYXNoOjB4N2E5NDUzMDAK
KyAgICAsIGltbXV0YWJsZUJ1dHRlcmZseUpTVmFsdWVHaWdhY2FnZUF1eGlsaWFyeVNwYWNlKCJJ
bW11dGFibGVCdXR0ZXJmbHkgR2lnYWNhZ2UgSlNDZWxsV2l0aEluZGV4aW5nSGVhZGVyIiwgaGVh
cCwgaW1tdXRhYmxlQnV0dGVyZmx5SGVhcENlbGxUeXBlLmdldCgpLCBqc1ZhbHVlR2lnYWNhZ2VB
bGxvY2F0b3IuZ2V0KCkpIC8vIEhhc2g6MHg3YTk0NTMwMAogICAgICwgY2VsbFNwYWNlKCJKU0Nl
bGwiLCBoZWFwLCBjZWxsSGVhcENlbGxUeXBlLmdldCgpLCBmYXN0TWFsbG9jQWxsb2NhdG9yLmdl
dCgpKSAvLyBIYXNoOjB4YWRmYjVhNzkKICAgICAsIHZhcmlhYmxlU2l6ZWRDZWxsU3BhY2UoIlZh
cmlhYmxlIFNpemVkIEpTQ2VsbCIsIGhlYXAsIGNlbGxIZWFwQ2VsbFR5cGUuZ2V0KCksIGZhc3RN
YWxsb2NBbGxvY2F0b3IuZ2V0KCkpIC8vIEhhc2g6MHhiY2Q3NjljYwogICAgICwgZGVzdHJ1Y3Rp
YmxlT2JqZWN0U3BhY2UoIkpTRGVzdHJ1Y3RpYmxlT2JqZWN0IiwgaGVhcCwgZGVzdHJ1Y3RpYmxl
T2JqZWN0SGVhcENlbGxUeXBlLmdldCgpLCBmYXN0TWFsbG9jQWxsb2NhdG9yLmdldCgpKSAvLyBI
YXNoOjB4NGY1ZWQ3YTkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403070</attachid>
            <date>2020-06-29 09:24:11 -0700</date>
            <delta_ts>2020-06-29 09:44:03 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-213686-20200629092410.patch</filename>
            <type>text/plain</type>
            <size>9482</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzNTI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
MzU3NzE2ODQ4NTRlMzdmNDlhMzRlZTczOTMxNmVhZDQxZTM4MDkxLi4yYTk0YmNlMjIyNmExNDlk
NWQyNzRiMjRlYzVkYWI3MzU1YThmNDg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMC0wNi0yOSAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBDb25zZXJ2YXRpdmVSb290cyBzaG91bGQgbWFyayBhbnkgY2VsbCBp
dCBmaW5kcyBhbiBpbnRlcmlvciBwb2ludGVyIHRvCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTM2ODYKKworICAgICAgICBSZXZpZXdlZCBieSBZdXN1
a2UgU3V6dWtpLgorCisgICAgICAgIEN1cnJlbnRseSwgaWYgQ29uc2VyYXRpdmVSb290cyBmaW5k
cyBhbiBpbnRlcmlvciBwb2ludGVyIHRvIGEgY2VsbAorICAgICAgICBpdCB3aWxsIG9ubHkgbWFy
ayB0aGF0IGNlbGwgaWYgaXQncyBhIGJ1dHRlcmZseSBvZiBzb21lCisgICAgICAgIGtpbmQuIEhv
d2V2ZXIsIHRoaXMgY2FuIGNhdXNlIHByb2JsZW1zIGlmIHRoZSBDKysgb3IgQjMgY29tcGlsZXJz
CisgICAgICAgIHByZS1jb21wdXRlIHRoZSBvZmZzZXQgb2Ygc29tZSBjZWxsIG1lbWJlciB0aGV5
IHdhbnQgdG8gbG9hZCBmcm9tCisgICAgICAgIGFmdGVyIGEgY2FsbC4gSWYgdGhpcyBoYXBwZW5z
IGFuZCB0aGF0IGludGVyaW9yIHBvaW50ZXIgaXMgdGhlCisgICAgICAgIG9ubHkgcmVmZXJlbmNl
IHRvIHRoZSBjZWxsIGl0IGNhbiBnZXQgY29sbGVjdGVkIHdoaWxlIGl0IGlzIHN0aWxsCisgICAg
ICAgICJhbGl2ZSIuCisKKyAgICAgICAgQSBuYWl2ZSBwYXRjaCB0aGF0IGRvZXNuJ3QgcmV0dXJu
IGZyb20KKyAgICAgICAgZmluZEdDT2JqZWN0UG9pbnRlcnNGb3JNYXJraW5nIGFmdGVyIGZpbmRp
bmcgYSBsaXZlIG5vbi1pbnRlcmlvciwKKyAgICAgICAgbm9uLWJ1dHRlcmZseSBjZWxsIHdhcyBh
IDIlIHJlZ3Jlc3Npb24gb24gU3BlZWRvbWV0ZXIyIGFuZAorICAgICAgICBKZXRTdHJlYW0yLiBT
bywgdGhpcyBwYXRjaCBpbW1lZGlhdGVseSByZXR1cm5zIGltbWVkaWF0ZWx5IGFmdGVyCisgICAg
ICAgIG1hcmtpbmcgc29tZSBub24tYnV0dGVyZmx5IGNlbGwsIHdoaWNoIGFwcGVhcnMgdG8gaGF2
ZSBmaXhlZCB0aGUKKyAgICAgICAgcmVncmVzc2lvbiBsb2NhbGx5LiBHaXZlbiB0aGlzIHdhcyBz
dWNoIGEgYmlnIHJlZ3Jlc3Npb24gKGxpa2VseQorICAgICAgICBmcm9tIHJ1bm5pbmcgTWFya2Vk
QmxvY2s6OmlzTGl2ZSkgbW9yZSB0aGFuIG9uY2UgdGhlcmUncyBwb3NzaWJseQorICAgICAgICBh
biBvcHRpbWl6YXRpb24gb3Bwb3J0dW5pdHkgaGVyZS4gSSBmaWxlZAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEzNjg3IHRvIGludmVzdGlnYXRlCisg
ICAgICAgIGZ1cnRoZXIuCisKKyAgICAgICAgKiBoZWFwL0hlYXBDZWxsLmNwcDoKKyAgICAgICAg
KFdURjo6cHJpbnRJbnRlcm5hbCk6CisgICAgICAgICogaGVhcC9IZWFwQ2VsbC5oOgorICAgICAg
ICAoSlNDOjppc0pTQ2VsbEtpbmQpOgorICAgICAgICAoSlNDOjptYXlIYXZlSW5kZXhpbmdIZWFk
ZXIpOgorICAgICAgICAoSlNDOjpoYXNJbnRlcmlvclBvaW50ZXJzKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBoZWFwL0hlYXBVdGlsLmg6CisgICAgICAgIChKU0M6OkhlYXBVdGlsOjpmaW5kR0NPYmpl
Y3RQb2ludGVyc0Zvck1hcmtpbmcpOgorICAgICAgICAqIGhlYXAvU2xvdFZpc2l0b3IuY3BwOgor
ICAgICAgICAoSlNDOjpTbG90VmlzaXRvcjo6YXBwZW5kSlNDZWxsT3JBdXhpbGlhcnkpOgorICAg
ICAgICAqIHJ1bnRpbWUvVk0uY3BwOgorICAgICAgICAoSlNDOjpWTTo6Vk0pOgorCiAyMDIwLTA2
LTI1ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBKU0NlbGwgY29u
c3RydWN0b3IgbmVlZHMgdG8gZW5zdXJlIHRoYXQgdGhlIHBhc3NlZCBpbiBzdHJ1Y3R1cmUgaXMg
c3RpbGwgYWxpdmUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFw
Q2VsbC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5jcHAKaW5kZXgg
MjAwMDVkNjFhOTQ5MjdkZTU2NzU3YTk1ZjBjMDlkM2VjMzgyMDkyMy4uY2I0NTc5Y2RhY2Y0NWU2
Yjg1MWQ4NTQ2YWJlMDRjODU0YTYzOTAwYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvSGVhcENlbGwuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hl
YXBDZWxsLmNwcApAQCAtNTQsOCArNTQsOCBAQCB2b2lkIHByaW50SW50ZXJuYWwoUHJpbnRTdHJl
YW0mIG91dCwgSGVhcENlbGw6OktpbmQga2luZCkKICAgICBjYXNlIEhlYXBDZWxsOjpKU0NlbGw6
CiAgICAgICAgIG91dC5wcmludCgiSlNDZWxsIik7CiAgICAgICAgIHJldHVybjsKLSAgICBjYXNl
IEhlYXBDZWxsOjpKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczoKLSAgICAgICAgb3V0LnByaW50
KCJKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVycyIpOworICAgIGNhc2UgSGVhcENlbGw6OkpTQ2Vs
bFdpdGhJbmRleGluZ0hlYWRlcjoKKyAgICAgICAgb3V0LnByaW50KCJKU0NlbGxXaXRoSW5kZXhp
bmdIZWFkZXIiKTsKICAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgSGVhcENlbGw6OkF1eGlsaWFy
eToKICAgICAgICAgb3V0LnByaW50KCJBdXhpbGlhcnkiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBDZWxsLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVh
cC9IZWFwQ2VsbC5oCmluZGV4IDBhYTM1MmFmYTc0MTkyZmI2Mjc5MWI1NzQ2OWMzNTc0OTdjMTAz
YTYuLmIyNjczNjY4NmM5YTExM2Y4MjVlNTk1ZmI0MTQzOGRiODY2OGQ4OGUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBDZWxsLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2hlYXAvSGVhcENlbGwuaApAQCAtNDIsNyArNDIsNyBAQCBjbGFzcyBIZWFwQ2Vs
bCB7CiBwdWJsaWM6CiAgICAgZW51bSBLaW5kIDogaW50OF90IHsKICAgICAgICAgSlNDZWxsLAot
ICAgICAgICBKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVycywKKyAgICAgICAgSlNDZWxsV2l0aElu
ZGV4aW5nSGVhZGVyLAogICAgICAgICBBdXhpbGlhcnkKICAgICB9OwogICAgIApAQCAtOTMsMTIg
KzkzLDEyIEBAIHB1YmxpYzoKIAogaW5saW5lIGJvb2wgaXNKU0NlbGxLaW5kKEhlYXBDZWxsOjpL
aW5kIGtpbmQpCiB7Ci0gICAgcmV0dXJuIGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbCB8fCBraW5k
ID09IEhlYXBDZWxsOjpKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczsKKyAgICByZXR1cm4ga2lu
ZCA9PSBIZWFwQ2VsbDo6SlNDZWxsIHx8IGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRl
eGluZ0hlYWRlcjsKIH0KIAotaW5saW5lIGJvb2wgaGFzSW50ZXJpb3JQb2ludGVycyhIZWFwQ2Vs
bDo6S2luZCBraW5kKQoraW5saW5lIGJvb2wgbWF5SGF2ZUluZGV4aW5nSGVhZGVyKEhlYXBDZWxs
OjpLaW5kIGtpbmQpCiB7Ci0gICAgcmV0dXJuIGtpbmQgPT0gSGVhcENlbGw6OkF1eGlsaWFyeSB8
fCBraW5kID09IEhlYXBDZWxsOjpKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczsKKyAgICByZXR1
cm4ga2luZCA9PSBIZWFwQ2VsbDo6QXV4aWxpYXJ5IHx8IGtpbmQgPT0gSGVhcENlbGw6OkpTQ2Vs
bFdpdGhJbmRleGluZ0hlYWRlcjsKIH0KIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVXRpbC5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2hlYXAvSGVhcFV0aWwuaAppbmRleCBlOWNkYzk2MGQ2MWI4YzM4YTI5OTgxMGVkZTFl
NDI0YzYzZmI2ODU5Li5kY2Y1MjY1MzdkOGFkOWVmMzZiZDJjOGU0ZWY3YjQ5Y2ZmODllZWE1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVXRpbC5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBVdGlsLmgKQEAgLTg4LDcgKzg4LDcgQEAgcHVi
bGljOgogICAgICAgICAgICAgTWFya2VkQmxvY2sqIHByZXZpb3VzQ2FuZGlkYXRlID0gTWFya2Vk
QmxvY2s6OmJsb2NrRm9yKHByZXZpb3VzUG9pbnRlcik7CiAgICAgICAgICAgICBpZiAoIWZpbHRl
ci5ydWxlT3V0KGJpdHdpc2VfY2FzdDxCaXRzPihwcmV2aW91c0NhbmRpZGF0ZSkpCiAgICAgICAg
ICAgICAgICAgJiYgc2V0LmNvbnRhaW5zKHByZXZpb3VzQ2FuZGlkYXRlKQotICAgICAgICAgICAg
ICAgICYmIGhhc0ludGVyaW9yUG9pbnRlcnMocHJldmlvdXNDYW5kaWRhdGUtPmhhbmRsZSgpLmNl
bGxLaW5kKCkpKSB7CisgICAgICAgICAgICAgICAgJiYgbWF5SGF2ZUluZGV4aW5nSGVhZGVyKHBy
ZXZpb3VzQ2FuZGlkYXRlLT5oYW5kbGUoKS5jZWxsS2luZCgpKSkgewogICAgICAgICAgICAgICAg
IHByZXZpb3VzUG9pbnRlciA9IHN0YXRpY19jYXN0PGNoYXIqPihwcmV2aW91c0NhbmRpZGF0ZS0+
aGFuZGxlKCkuY2VsbEFsaWduKHByZXZpb3VzUG9pbnRlcikpOwogICAgICAgICAgICAgICAgIGlm
IChwcmV2aW91c0NhbmRpZGF0ZS0+aGFuZGxlKCkuaXNMaXZlQ2VsbChtYXJraW5nVmVyc2lvbiwg
bmV3bHlBbGxvY2F0ZWRWZXJzaW9uLCBpc01hcmtpbmcsIHByZXZpb3VzUG9pbnRlcikpCiAgICAg
ICAgICAgICAgICAgICAgIGZ1bmMocHJldmlvdXNQb2ludGVyLCBwcmV2aW91c0NhbmRpZGF0ZS0+
aGFuZGxlKCkuY2VsbEtpbmQoKSk7CkBAIC0xMDYsMjEgKzEwNiwyNCBAQCBwdWJsaWM6CiAgICAg
ICAgIEhlYXBDZWxsOjpLaW5kIGNlbGxLaW5kID0gY2FuZGlkYXRlLT5oYW5kbGUoKS5jZWxsS2lu
ZCgpOwogICAgICAgICAKICAgICAgICAgYXV0byB0cnlQb2ludGVyID0gWyZdICh2b2lkKiBwb2lu
dGVyKSB7Ci0gICAgICAgICAgICBpZiAoY2FuZGlkYXRlLT5oYW5kbGUoKS5pc0xpdmVDZWxsKG1h
cmtpbmdWZXJzaW9uLCBuZXdseUFsbG9jYXRlZFZlcnNpb24sIGlzTWFya2luZywgcG9pbnRlcikp
CisgICAgICAgICAgICBib29sIGlzTGl2ZSA9IGNhbmRpZGF0ZS0+aGFuZGxlKCkuaXNMaXZlQ2Vs
bChtYXJraW5nVmVyc2lvbiwgbmV3bHlBbGxvY2F0ZWRWZXJzaW9uLCBpc01hcmtpbmcsIHBvaW50
ZXIpOworICAgICAgICAgICAgaWYgKGlzTGl2ZSkKICAgICAgICAgICAgICAgICBmdW5jKHBvaW50
ZXIsIGNlbGxLaW5kKTsKKyAgICAgICAgICAgIHJldHVybiBpc0xpdmUgJiYgIW1heUhhdmVJbmRl
eGluZ0hlYWRlcihjZWxsS2luZCk7CiAgICAgICAgIH07CiAgICAgCiAgICAgICAgIGlmIChpc0pT
Q2VsbEtpbmQoY2VsbEtpbmQpKSB7Ci0gICAgICAgICAgICBpZiAoTWFya2VkQmxvY2s6OmlzQXRv
bUFsaWduZWQocG9pbnRlcikpCi0gICAgICAgICAgICAgICAgdHJ5UG9pbnRlcihwb2ludGVyKTsK
LSAgICAgICAgICAgIGlmICghaGFzSW50ZXJpb3JQb2ludGVycyhjZWxsS2luZCkpCi0gICAgICAg
ICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgaWYgKExJS0VMWShNYXJrZWRCbG9jazo6aXNB
dG9tQWxpZ25lZChwb2ludGVyKSkpIHsKKyAgICAgICAgICAgICAgICBpZiAodHJ5UG9pbnRlcihw
b2ludGVyKSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQogICAg
ICAgICB9CiAgICAgCi0gICAgICAgIC8vIEEgYnV0dGVyZmx5IGNvdWxkIHBvaW50IGludG8gdGhl
IG1pZGRsZSBvZiBhbiBvYmplY3QuCisgICAgICAgIC8vIFdlIGNvdWxkIHBvaW50IGludG8gdGhl
IG1pZGRsZSBvZiBhbiBvYmplY3QuCiAgICAgICAgIGNoYXIqIGFsaWduZWRQb2ludGVyID0gc3Rh
dGljX2Nhc3Q8Y2hhcio+KGNhbmRpZGF0ZS0+aGFuZGxlKCkuY2VsbEFsaWduKHBvaW50ZXIpKTsK
LSAgICAgICAgdHJ5UG9pbnRlcihhbGlnbmVkUG9pbnRlcik7Ci0gICAgCisgICAgICAgIGlmICh0
cnlQb2ludGVyKGFsaWduZWRQb2ludGVyKSkKKyAgICAgICAgICAgIHJldHVybjsKKwogICAgICAg
ICAvLyBBbHNvLCBhIGJ1dHRlcmZseSBjb3VsZCBwb2ludCBhdCB0aGUgZW5kIG9mIGFuIG9iamVj
dCBwbHVzIHNpemVvZihJbmRleGluZ0hlYWRlcikuIEluIHRoYXQKICAgICAgICAgLy8gY2FzZSwg
dGhpcyBpcyBwb2ludGluZyB0byB0aGUgb2JqZWN0IHRvIHRoZSByaWdodCBvZiB0aGUgb25lIHdl
IHNob3VsZCBiZSBtYXJraW5nLgogICAgICAgICBpZiAoY2FuZGlkYXRlLT5jYW5kaWRhdGVBdG9t
TnVtYmVyKGFsaWduZWRQb2ludGVyKSA+IDAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9oZWFwL1Nsb3RWaXNpdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Ns
b3RWaXNpdG9yLmNwcAppbmRleCAwMDlkNTQ2MzEzOGZjZTllNzYyNjUyNjYyY2UwOWZkYzljMDBh
MWJiLi5iZmRiZjQ0MDIyYzRhNTYwMzM0ZTgwMDAxZWRiNDZlOGUyZTA4ZmJlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9TbG90VmlzaXRvci5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2hlYXAvU2xvdFZpc2l0b3IuY3BwCkBAIC0yMDgsNyArMjA4LDcgQEAg
dm9pZCBTbG90VmlzaXRvcjo6YXBwZW5kSlNDZWxsT3JBdXhpbGlhcnkoSGVhcENlbGwqIGhlYXBD
ZWxsKQogICAgIAogICAgIHN3aXRjaCAoaGVhcENlbGwtPmNlbGxLaW5kKCkpIHsKICAgICBjYXNl
IEhlYXBDZWxsOjpKU0NlbGw6Ci0gICAgY2FzZSBIZWFwQ2VsbDo6SlNDZWxsV2l0aEludGVyaW9y
UG9pbnRlcnM6IHsKKyAgICBjYXNlIEhlYXBDZWxsOjpKU0NlbGxXaXRoSW5kZXhpbmdIZWFkZXI6
IHsKICAgICAgICAgLy8gV2UgaGF2ZSBhbXBsZSBidWRnZXQgdG8gcGVyZm9ybSB2YWxpZGF0aW9u
IGhlcmUuCiAgICAgCiAgICAgICAgIEpTQ2VsbCoganNDZWxsID0gc3RhdGljX2Nhc3Q8SlNDZWxs
Kj4oaGVhcENlbGwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
Vk0uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCmluZGV4IDExNGJh
OTc3MGJhNWE1NjUyMmViNWJhMjg4ZDkyZjcwMDZlMjNiNjUuLjE2N2NmMGY1ZDlmY2ZiYzc3M2Iw
YzU1ZDcxYjIzY2JhNWZlNjJiNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1ZNLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAK
QEAgLTI3NSw3ICsyNzUsNyBAQCBWTTo6Vk0oVk1UeXBlIHZtVHlwZSwgSGVhcFR5cGUgaGVhcFR5
cGUpCiAgICAgLCBwcmltaXRpdmVHaWdhY2FnZUFsbG9jYXRvcihtYWtlVW5pcXVlPEdpZ2FjYWdl
QWxpZ25lZE1lbW9yeUFsbG9jYXRvcj4oR2lnYWNhZ2U6OlByaW1pdGl2ZSkpCiAgICAgLCBqc1Zh
bHVlR2lnYWNhZ2VBbGxvY2F0b3IobWFrZVVuaXF1ZTxHaWdhY2FnZUFsaWduZWRNZW1vcnlBbGxv
Y2F0b3I+KEdpZ2FjYWdlOjpKU1ZhbHVlKSkKICAgICAsIGF1eGlsaWFyeUhlYXBDZWxsVHlwZSht
YWtlVW5pcXVlPEhlYXBDZWxsVHlwZT4oQ2VsbEF0dHJpYnV0ZXMoRG9lc05vdE5lZWREZXN0cnVj
dGlvbiwgSGVhcENlbGw6OkF1eGlsaWFyeSkpKQotICAgICwgaW1tdXRhYmxlQnV0dGVyZmx5SGVh
cENlbGxUeXBlKG1ha2VVbmlxdWU8SGVhcENlbGxUeXBlPihDZWxsQXR0cmlidXRlcyhEb2VzTm90
TmVlZERlc3RydWN0aW9uLCBIZWFwQ2VsbDo6SlNDZWxsV2l0aEludGVyaW9yUG9pbnRlcnMpKSkK
KyAgICAsIGltbXV0YWJsZUJ1dHRlcmZseUhlYXBDZWxsVHlwZShtYWtlVW5pcXVlPEhlYXBDZWxs
VHlwZT4oQ2VsbEF0dHJpYnV0ZXMoRG9lc05vdE5lZWREZXN0cnVjdGlvbiwgSGVhcENlbGw6OkpT
Q2VsbFdpdGhJbmRleGluZ0hlYWRlcikpKQogICAgICwgY2VsbEhlYXBDZWxsVHlwZShtYWtlVW5p
cXVlPEhlYXBDZWxsVHlwZT4oQ2VsbEF0dHJpYnV0ZXMoRG9lc05vdE5lZWREZXN0cnVjdGlvbiwg
SGVhcENlbGw6OkpTQ2VsbCkpKQogICAgICwgZGVzdHJ1Y3RpYmxlQ2VsbEhlYXBDZWxsVHlwZSht
YWtlVW5pcXVlPEhlYXBDZWxsVHlwZT4oQ2VsbEF0dHJpYnV0ZXMoTmVlZHNEZXN0cnVjdGlvbiwg
SGVhcENlbGw6OkpTQ2VsbCkpKQogICAgICwgYXBpR2xvYmFsT2JqZWN0SGVhcENlbGxUeXBlKElz
b0hlYXBDZWxsVHlwZTo6Y3JlYXRlPEpTQVBJR2xvYmFsT2JqZWN0PigpKQpAQCAtMzIyLDcgKzMy
Miw3IEBAIFZNOjpWTShWTVR5cGUgdm1UeXBlLCBIZWFwVHlwZSBoZWFwVHlwZSkKICNlbmRpZgog
ICAgICwgcHJpbWl0aXZlR2lnYWNhZ2VBdXhpbGlhcnlTcGFjZSgiUHJpbWl0aXZlIEdpZ2FjYWdl
IEF1eGlsaWFyeSIsIGhlYXAsIGF1eGlsaWFyeUhlYXBDZWxsVHlwZS5nZXQoKSwgcHJpbWl0aXZl
R2lnYWNhZ2VBbGxvY2F0b3IuZ2V0KCkpIC8vIEhhc2g6MHgzZTdjZDc2MgogICAgICwganNWYWx1
ZUdpZ2FjYWdlQXV4aWxpYXJ5U3BhY2UoIkpTVmFsdWUgR2lnYWNhZ2UgQXV4aWxpYXJ5IiwgaGVh
cCwgYXV4aWxpYXJ5SGVhcENlbGxUeXBlLmdldCgpLCBqc1ZhbHVlR2lnYWNhZ2VBbGxvY2F0b3Iu
Z2V0KCkpIC8vIEhhc2g6MHgyNDFlOTQ2Ci0gICAgLCBpbW11dGFibGVCdXR0ZXJmbHlKU1ZhbHVl
R2lnYWNhZ2VBdXhpbGlhcnlTcGFjZSgiSW1tdXRhYmxlQnV0dGVyZmx5IEdpZ2FjYWdlIEpTQ2Vs
bFdpdGhJbnRlcmlvclBvaW50ZXJzIiwgaGVhcCwgaW1tdXRhYmxlQnV0dGVyZmx5SGVhcENlbGxU
eXBlLmdldCgpLCBqc1ZhbHVlR2lnYWNhZ2VBbGxvY2F0b3IuZ2V0KCkpIC8vIEhhc2g6MHg3YTk0
NTMwMAorICAgICwgaW1tdXRhYmxlQnV0dGVyZmx5SlNWYWx1ZUdpZ2FjYWdlQXV4aWxpYXJ5U3Bh
Y2UoIkltbXV0YWJsZUJ1dHRlcmZseSBHaWdhY2FnZSBKU0NlbGxXaXRoSW5kZXhpbmdIZWFkZXIi
LCBoZWFwLCBpbW11dGFibGVCdXR0ZXJmbHlIZWFwQ2VsbFR5cGUuZ2V0KCksIGpzVmFsdWVHaWdh
Y2FnZUFsbG9jYXRvci5nZXQoKSkgLy8gSGFzaDoweDdhOTQ1MzAwCiAgICAgLCBjZWxsU3BhY2Uo
IkpTQ2VsbCIsIGhlYXAsIGNlbGxIZWFwQ2VsbFR5cGUuZ2V0KCksIGZhc3RNYWxsb2NBbGxvY2F0
b3IuZ2V0KCkpIC8vIEhhc2g6MHhhZGZiNWE3OQogICAgICwgdmFyaWFibGVTaXplZENlbGxTcGFj
ZSgiVmFyaWFibGUgU2l6ZWQgSlNDZWxsIiwgaGVhcCwgY2VsbEhlYXBDZWxsVHlwZS5nZXQoKSwg
ZmFzdE1hbGxvY0FsbG9jYXRvci5nZXQoKSkgLy8gSGFzaDoweGJjZDc2OWNjCiAgICAgLCBkZXN0
cnVjdGlibGVPYmplY3RTcGFjZSgiSlNEZXN0cnVjdGlibGVPYmplY3QiLCBoZWFwLCBkZXN0cnVj
dGlibGVPYmplY3RIZWFwQ2VsbFR5cGUuZ2V0KCksIGZhc3RNYWxsb2NBbGxvY2F0b3IuZ2V0KCkp
IC8vIEhhc2g6MHg0ZjVlZDdhOQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403074</attachid>
            <date>2020-06-29 09:44:05 -0700</date>
            <delta_ts>2020-06-29 11:01:53 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-213686-20200629094404.patch</filename>
            <type>text/plain</type>
            <size>9470</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzNTI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
MzU3NzE2ODQ4NTRlMzdmNDlhMzRlZTczOTMxNmVhZDQxZTM4MDkxLi4wNTVmOTg1YTBlNGIxN2Zk
MWFlYjQxMTBmY2Y1MmE3OWU1NjY2N2U1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMC0wNi0yOSAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBDb25zZXJ2YXRpdmVSb290cyBzaG91bGQgbWFyayBhbnkgY2VsbCBp
dCBmaW5kcyBhbiBpbnRlcmlvciBwb2ludGVyIHRvCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTM2ODYKKworICAgICAgICBSZXZpZXdlZCBieSBZdXN1
a2UgU3V6dWtpLgorCisgICAgICAgIEN1cnJlbnRseSwgaWYgQ29uc2VyYXRpdmVSb290cyBmaW5k
cyBhbiBpbnRlcmlvciBwb2ludGVyIHRvIGEgY2VsbAorICAgICAgICBpdCB3aWxsIG9ubHkgbWFy
ayB0aGF0IGNlbGwgaWYgaXQncyBhIGJ1dHRlcmZseSBvZiBzb21lCisgICAgICAgIGtpbmQuIEhv
d2V2ZXIsIHRoaXMgY2FuIGNhdXNlIHByb2JsZW1zIGlmIHRoZSBDKysgb3IgQjMgY29tcGlsZXJz
CisgICAgICAgIHByZS1jb21wdXRlIHRoZSBvZmZzZXQgb2Ygc29tZSBjZWxsIG1lbWJlciB0aGV5
IHdhbnQgdG8gbG9hZCBmcm9tCisgICAgICAgIGFmdGVyIGEgY2FsbC4gSWYgdGhpcyBoYXBwZW5z
IGFuZCB0aGF0IGludGVyaW9yIHBvaW50ZXIgaXMgdGhlCisgICAgICAgIG9ubHkgcmVmZXJlbmNl
IHRvIHRoZSBjZWxsIGl0IGNhbiBnZXQgY29sbGVjdGVkIHdoaWxlIGl0IGlzIHN0aWxsCisgICAg
ICAgICJhbGl2ZSIuCisKKyAgICAgICAgQSBuYWl2ZSBwYXRjaCB0aGF0IGRvZXNuJ3QgcmV0dXJu
IGZyb20KKyAgICAgICAgZmluZEdDT2JqZWN0UG9pbnRlcnNGb3JNYXJraW5nIGFmdGVyIGZpbmRp
bmcgYSBsaXZlIG5vbi1pbnRlcmlvciwKKyAgICAgICAgbm9uLWJ1dHRlcmZseSBjZWxsIHdhcyBh
IDIlIHJlZ3Jlc3Npb24gb24gU3BlZWRvbWV0ZXIyIGFuZAorICAgICAgICBKZXRTdHJlYW0yLiBT
bywgdGhpcyBwYXRjaCBpbW1lZGlhdGVseSByZXR1cm5zIGFmdGVyCisgICAgICAgIG1hcmtpbmcg
c29tZSBub24tYnV0dGVyZmx5IGNlbGwsIHdoaWNoIGFwcGVhcnMgdG8gaGF2ZSBmaXhlZCB0aGUK
KyAgICAgICAgcmVncmVzc2lvbiBsb2NhbGx5LiBHaXZlbiB0aGlzIHdhcyBzdWNoIGEgYmlnIHJl
Z3Jlc3Npb24gKGxpa2VseQorICAgICAgICBmcm9tIHJ1bm5pbmcgTWFya2VkQmxvY2s6OmlzTGl2
ZSkgbW9yZSB0aGFuIG9uY2UgdGhlcmUncyBwb3NzaWJseQorICAgICAgICBhbiBvcHRpbWl6YXRp
b24gb3Bwb3J0dW5pdHkgaGVyZS4gSSBmaWxlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEzNjg3IHRvIGludmVzdGlnYXRlCisgICAgICAgIGZ1cnRo
ZXIuCisKKyAgICAgICAgKiBoZWFwL0hlYXBDZWxsLmNwcDoKKyAgICAgICAgKFdURjo6cHJpbnRJ
bnRlcm5hbCk6CisgICAgICAgICogaGVhcC9IZWFwQ2VsbC5oOgorICAgICAgICAoSlNDOjppc0pT
Q2VsbEtpbmQpOgorICAgICAgICAoSlNDOjptYXlIYXZlSW5kZXhpbmdIZWFkZXIpOgorICAgICAg
ICAoSlNDOjpoYXNJbnRlcmlvclBvaW50ZXJzKTogRGVsZXRlZC4KKyAgICAgICAgKiBoZWFwL0hl
YXBVdGlsLmg6CisgICAgICAgIChKU0M6OkhlYXBVdGlsOjpmaW5kR0NPYmplY3RQb2ludGVyc0Zv
ck1hcmtpbmcpOgorICAgICAgICAqIGhlYXAvU2xvdFZpc2l0b3IuY3BwOgorICAgICAgICAoSlND
OjpTbG90VmlzaXRvcjo6YXBwZW5kSlNDZWxsT3JBdXhpbGlhcnkpOgorICAgICAgICAqIHJ1bnRp
bWUvVk0uY3BwOgorICAgICAgICAoSlNDOjpWTTo6Vk0pOgorCiAyMDIwLTA2LTI1ICBNYXJrIExh
bSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBKU0NlbGwgY29uc3RydWN0b3IgbmVl
ZHMgdG8gZW5zdXJlIHRoYXQgdGhlIHBhc3NlZCBpbiBzdHJ1Y3R1cmUgaXMgc3RpbGwgYWxpdmUu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5jcHAKaW5kZXggMjAwMDVkNjFhOTQ5
MjdkZTU2NzU3YTk1ZjBjMDlkM2VjMzgyMDkyMy4uY2I0NTc5Y2RhY2Y0NWU2Yjg1MWQ4NTQ2YWJl
MDRjODU0YTYzOTAwYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVh
cENlbGwuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBDZWxsLmNwcApA
QCAtNTQsOCArNTQsOCBAQCB2b2lkIHByaW50SW50ZXJuYWwoUHJpbnRTdHJlYW0mIG91dCwgSGVh
cENlbGw6OktpbmQga2luZCkKICAgICBjYXNlIEhlYXBDZWxsOjpKU0NlbGw6CiAgICAgICAgIG91
dC5wcmludCgiSlNDZWxsIik7CiAgICAgICAgIHJldHVybjsKLSAgICBjYXNlIEhlYXBDZWxsOjpK
U0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczoKLSAgICAgICAgb3V0LnByaW50KCJKU0NlbGxXaXRo
SW50ZXJpb3JQb2ludGVycyIpOworICAgIGNhc2UgSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRleGlu
Z0hlYWRlcjoKKyAgICAgICAgb3V0LnByaW50KCJKU0NlbGxXaXRoSW5kZXhpbmdIZWFkZXIiKTsK
ICAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgSGVhcENlbGw6OkF1eGlsaWFyeToKICAgICAgICAg
b3V0LnByaW50KCJBdXhpbGlhcnkiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9oZWFwL0hlYXBDZWxsLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5o
CmluZGV4IDBhYTM1MmFmYTc0MTkyZmI2Mjc5MWI1NzQ2OWMzNTc0OTdjMTAzYTYuLmIyNjczNjY4
NmM5YTExM2Y4MjVlNTk1ZmI0MTQzOGRiODY2OGQ4OGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL0hlYXBDZWxsLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hl
YXAvSGVhcENlbGwuaApAQCAtNDIsNyArNDIsNyBAQCBjbGFzcyBIZWFwQ2VsbCB7CiBwdWJsaWM6
CiAgICAgZW51bSBLaW5kIDogaW50OF90IHsKICAgICAgICAgSlNDZWxsLAotICAgICAgICBKU0Nl
bGxXaXRoSW50ZXJpb3JQb2ludGVycywKKyAgICAgICAgSlNDZWxsV2l0aEluZGV4aW5nSGVhZGVy
LAogICAgICAgICBBdXhpbGlhcnkKICAgICB9OwogICAgIApAQCAtOTMsMTIgKzkzLDEyIEBAIHB1
YmxpYzoKIAogaW5saW5lIGJvb2wgaXNKU0NlbGxLaW5kKEhlYXBDZWxsOjpLaW5kIGtpbmQpCiB7
Ci0gICAgcmV0dXJuIGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbCB8fCBraW5kID09IEhlYXBDZWxs
OjpKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczsKKyAgICByZXR1cm4ga2luZCA9PSBIZWFwQ2Vs
bDo6SlNDZWxsIHx8IGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRleGluZ0hlYWRlcjsK
IH0KIAotaW5saW5lIGJvb2wgaGFzSW50ZXJpb3JQb2ludGVycyhIZWFwQ2VsbDo6S2luZCBraW5k
KQoraW5saW5lIGJvb2wgbWF5SGF2ZUluZGV4aW5nSGVhZGVyKEhlYXBDZWxsOjpLaW5kIGtpbmQp
CiB7Ci0gICAgcmV0dXJuIGtpbmQgPT0gSGVhcENlbGw6OkF1eGlsaWFyeSB8fCBraW5kID09IEhl
YXBDZWxsOjpKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczsKKyAgICByZXR1cm4ga2luZCA9PSBI
ZWFwQ2VsbDo6QXV4aWxpYXJ5IHx8IGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRleGlu
Z0hlYWRlcjsKIH0KIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaGVhcC9IZWFwVXRpbC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
SGVhcFV0aWwuaAppbmRleCBlOWNkYzk2MGQ2MWI4YzM4YTI5OTgxMGVkZTFlNDI0YzYzZmI2ODU5
Li5kY2Y1MjY1MzdkOGFkOWVmMzZiZDJjOGU0ZWY3YjQ5Y2ZmODllZWE1IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVXRpbC5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL0hlYXBVdGlsLmgKQEAgLTg4LDcgKzg4LDcgQEAgcHVibGljOgogICAgICAg
ICAgICAgTWFya2VkQmxvY2sqIHByZXZpb3VzQ2FuZGlkYXRlID0gTWFya2VkQmxvY2s6OmJsb2Nr
Rm9yKHByZXZpb3VzUG9pbnRlcik7CiAgICAgICAgICAgICBpZiAoIWZpbHRlci5ydWxlT3V0KGJp
dHdpc2VfY2FzdDxCaXRzPihwcmV2aW91c0NhbmRpZGF0ZSkpCiAgICAgICAgICAgICAgICAgJiYg
c2V0LmNvbnRhaW5zKHByZXZpb3VzQ2FuZGlkYXRlKQotICAgICAgICAgICAgICAgICYmIGhhc0lu
dGVyaW9yUG9pbnRlcnMocHJldmlvdXNDYW5kaWRhdGUtPmhhbmRsZSgpLmNlbGxLaW5kKCkpKSB7
CisgICAgICAgICAgICAgICAgJiYgbWF5SGF2ZUluZGV4aW5nSGVhZGVyKHByZXZpb3VzQ2FuZGlk
YXRlLT5oYW5kbGUoKS5jZWxsS2luZCgpKSkgewogICAgICAgICAgICAgICAgIHByZXZpb3VzUG9p
bnRlciA9IHN0YXRpY19jYXN0PGNoYXIqPihwcmV2aW91c0NhbmRpZGF0ZS0+aGFuZGxlKCkuY2Vs
bEFsaWduKHByZXZpb3VzUG9pbnRlcikpOwogICAgICAgICAgICAgICAgIGlmIChwcmV2aW91c0Nh
bmRpZGF0ZS0+aGFuZGxlKCkuaXNMaXZlQ2VsbChtYXJraW5nVmVyc2lvbiwgbmV3bHlBbGxvY2F0
ZWRWZXJzaW9uLCBpc01hcmtpbmcsIHByZXZpb3VzUG9pbnRlcikpCiAgICAgICAgICAgICAgICAg
ICAgIGZ1bmMocHJldmlvdXNQb2ludGVyLCBwcmV2aW91c0NhbmRpZGF0ZS0+aGFuZGxlKCkuY2Vs
bEtpbmQoKSk7CkBAIC0xMDYsMjEgKzEwNiwyNCBAQCBwdWJsaWM6CiAgICAgICAgIEhlYXBDZWxs
OjpLaW5kIGNlbGxLaW5kID0gY2FuZGlkYXRlLT5oYW5kbGUoKS5jZWxsS2luZCgpOwogICAgICAg
ICAKICAgICAgICAgYXV0byB0cnlQb2ludGVyID0gWyZdICh2b2lkKiBwb2ludGVyKSB7Ci0gICAg
ICAgICAgICBpZiAoY2FuZGlkYXRlLT5oYW5kbGUoKS5pc0xpdmVDZWxsKG1hcmtpbmdWZXJzaW9u
LCBuZXdseUFsbG9jYXRlZFZlcnNpb24sIGlzTWFya2luZywgcG9pbnRlcikpCisgICAgICAgICAg
ICBib29sIGlzTGl2ZSA9IGNhbmRpZGF0ZS0+aGFuZGxlKCkuaXNMaXZlQ2VsbChtYXJraW5nVmVy
c2lvbiwgbmV3bHlBbGxvY2F0ZWRWZXJzaW9uLCBpc01hcmtpbmcsIHBvaW50ZXIpOworICAgICAg
ICAgICAgaWYgKGlzTGl2ZSkKICAgICAgICAgICAgICAgICBmdW5jKHBvaW50ZXIsIGNlbGxLaW5k
KTsKKyAgICAgICAgICAgIHJldHVybiBpc0xpdmUgJiYgIW1heUhhdmVJbmRleGluZ0hlYWRlcihj
ZWxsS2luZCk7CiAgICAgICAgIH07CiAgICAgCiAgICAgICAgIGlmIChpc0pTQ2VsbEtpbmQoY2Vs
bEtpbmQpKSB7Ci0gICAgICAgICAgICBpZiAoTWFya2VkQmxvY2s6OmlzQXRvbUFsaWduZWQocG9p
bnRlcikpCi0gICAgICAgICAgICAgICAgdHJ5UG9pbnRlcihwb2ludGVyKTsKLSAgICAgICAgICAg
IGlmICghaGFzSW50ZXJpb3JQb2ludGVycyhjZWxsS2luZCkpCi0gICAgICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICAgICAgaWYgKExJS0VMWShNYXJrZWRCbG9jazo6aXNBdG9tQWxpZ25lZChw
b2ludGVyKSkpIHsKKyAgICAgICAgICAgICAgICBpZiAodHJ5UG9pbnRlcihwb2ludGVyKSkKKyAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAg
Ci0gICAgICAgIC8vIEEgYnV0dGVyZmx5IGNvdWxkIHBvaW50IGludG8gdGhlIG1pZGRsZSBvZiBh
biBvYmplY3QuCisgICAgICAgIC8vIFdlIGNvdWxkIHBvaW50IGludG8gdGhlIG1pZGRsZSBvZiBh
biBvYmplY3QuCiAgICAgICAgIGNoYXIqIGFsaWduZWRQb2ludGVyID0gc3RhdGljX2Nhc3Q8Y2hh
cio+KGNhbmRpZGF0ZS0+aGFuZGxlKCkuY2VsbEFsaWduKHBvaW50ZXIpKTsKLSAgICAgICAgdHJ5
UG9pbnRlcihhbGlnbmVkUG9pbnRlcik7Ci0gICAgCisgICAgICAgIGlmICh0cnlQb2ludGVyKGFs
aWduZWRQb2ludGVyKSkKKyAgICAgICAgICAgIHJldHVybjsKKwogICAgICAgICAvLyBBbHNvLCBh
IGJ1dHRlcmZseSBjb3VsZCBwb2ludCBhdCB0aGUgZW5kIG9mIGFuIG9iamVjdCBwbHVzIHNpemVv
ZihJbmRleGluZ0hlYWRlcikuIEluIHRoYXQKICAgICAgICAgLy8gY2FzZSwgdGhpcyBpcyBwb2lu
dGluZyB0byB0aGUgb2JqZWN0IHRvIHRoZSByaWdodCBvZiB0aGUgb25lIHdlIHNob3VsZCBiZSBt
YXJraW5nLgogICAgICAgICBpZiAoY2FuZGlkYXRlLT5jYW5kaWRhdGVBdG9tTnVtYmVyKGFsaWdu
ZWRQb2ludGVyKSA+IDAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Ns
b3RWaXNpdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Nsb3RWaXNpdG9yLmNw
cAppbmRleCAwMDlkNTQ2MzEzOGZjZTllNzYyNjUyNjYyY2UwOWZkYzljMDBhMWJiLi5iZmRiZjQ0
MDIyYzRhNTYwMzM0ZTgwMDAxZWRiNDZlOGUyZTA4ZmJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaGVhcC9TbG90VmlzaXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvU2xvdFZpc2l0b3IuY3BwCkBAIC0yMDgsNyArMjA4LDcgQEAgdm9pZCBTbG90Vmlz
aXRvcjo6YXBwZW5kSlNDZWxsT3JBdXhpbGlhcnkoSGVhcENlbGwqIGhlYXBDZWxsKQogICAgIAog
ICAgIHN3aXRjaCAoaGVhcENlbGwtPmNlbGxLaW5kKCkpIHsKICAgICBjYXNlIEhlYXBDZWxsOjpK
U0NlbGw6Ci0gICAgY2FzZSBIZWFwQ2VsbDo6SlNDZWxsV2l0aEludGVyaW9yUG9pbnRlcnM6IHsK
KyAgICBjYXNlIEhlYXBDZWxsOjpKU0NlbGxXaXRoSW5kZXhpbmdIZWFkZXI6IHsKICAgICAgICAg
Ly8gV2UgaGF2ZSBhbXBsZSBidWRnZXQgdG8gcGVyZm9ybSB2YWxpZGF0aW9uIGhlcmUuCiAgICAg
CiAgICAgICAgIEpTQ2VsbCoganNDZWxsID0gc3RhdGljX2Nhc3Q8SlNDZWxsKj4oaGVhcENlbGwp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCmluZGV4IDExNGJhOTc3MGJhNWE1NjUy
MmViNWJhMjg4ZDkyZjcwMDZlMjNiNjUuLjE2N2NmMGY1ZDlmY2ZiYzc3M2IwYzU1ZDcxYjIzY2Jh
NWZlNjJiNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAKQEAgLTI3NSw3ICsy
NzUsNyBAQCBWTTo6Vk0oVk1UeXBlIHZtVHlwZSwgSGVhcFR5cGUgaGVhcFR5cGUpCiAgICAgLCBw
cmltaXRpdmVHaWdhY2FnZUFsbG9jYXRvcihtYWtlVW5pcXVlPEdpZ2FjYWdlQWxpZ25lZE1lbW9y
eUFsbG9jYXRvcj4oR2lnYWNhZ2U6OlByaW1pdGl2ZSkpCiAgICAgLCBqc1ZhbHVlR2lnYWNhZ2VB
bGxvY2F0b3IobWFrZVVuaXF1ZTxHaWdhY2FnZUFsaWduZWRNZW1vcnlBbGxvY2F0b3I+KEdpZ2Fj
YWdlOjpKU1ZhbHVlKSkKICAgICAsIGF1eGlsaWFyeUhlYXBDZWxsVHlwZShtYWtlVW5pcXVlPEhl
YXBDZWxsVHlwZT4oQ2VsbEF0dHJpYnV0ZXMoRG9lc05vdE5lZWREZXN0cnVjdGlvbiwgSGVhcENl
bGw6OkF1eGlsaWFyeSkpKQotICAgICwgaW1tdXRhYmxlQnV0dGVyZmx5SGVhcENlbGxUeXBlKG1h
a2VVbmlxdWU8SGVhcENlbGxUeXBlPihDZWxsQXR0cmlidXRlcyhEb2VzTm90TmVlZERlc3RydWN0
aW9uLCBIZWFwQ2VsbDo6SlNDZWxsV2l0aEludGVyaW9yUG9pbnRlcnMpKSkKKyAgICAsIGltbXV0
YWJsZUJ1dHRlcmZseUhlYXBDZWxsVHlwZShtYWtlVW5pcXVlPEhlYXBDZWxsVHlwZT4oQ2VsbEF0
dHJpYnV0ZXMoRG9lc05vdE5lZWREZXN0cnVjdGlvbiwgSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRl
eGluZ0hlYWRlcikpKQogICAgICwgY2VsbEhlYXBDZWxsVHlwZShtYWtlVW5pcXVlPEhlYXBDZWxs
VHlwZT4oQ2VsbEF0dHJpYnV0ZXMoRG9lc05vdE5lZWREZXN0cnVjdGlvbiwgSGVhcENlbGw6OkpT
Q2VsbCkpKQogICAgICwgZGVzdHJ1Y3RpYmxlQ2VsbEhlYXBDZWxsVHlwZShtYWtlVW5pcXVlPEhl
YXBDZWxsVHlwZT4oQ2VsbEF0dHJpYnV0ZXMoTmVlZHNEZXN0cnVjdGlvbiwgSGVhcENlbGw6OkpT
Q2VsbCkpKQogICAgICwgYXBpR2xvYmFsT2JqZWN0SGVhcENlbGxUeXBlKElzb0hlYXBDZWxsVHlw
ZTo6Y3JlYXRlPEpTQVBJR2xvYmFsT2JqZWN0PigpKQpAQCAtMzIyLDcgKzMyMiw3IEBAIFZNOjpW
TShWTVR5cGUgdm1UeXBlLCBIZWFwVHlwZSBoZWFwVHlwZSkKICNlbmRpZgogICAgICwgcHJpbWl0
aXZlR2lnYWNhZ2VBdXhpbGlhcnlTcGFjZSgiUHJpbWl0aXZlIEdpZ2FjYWdlIEF1eGlsaWFyeSIs
IGhlYXAsIGF1eGlsaWFyeUhlYXBDZWxsVHlwZS5nZXQoKSwgcHJpbWl0aXZlR2lnYWNhZ2VBbGxv
Y2F0b3IuZ2V0KCkpIC8vIEhhc2g6MHgzZTdjZDc2MgogICAgICwganNWYWx1ZUdpZ2FjYWdlQXV4
aWxpYXJ5U3BhY2UoIkpTVmFsdWUgR2lnYWNhZ2UgQXV4aWxpYXJ5IiwgaGVhcCwgYXV4aWxpYXJ5
SGVhcENlbGxUeXBlLmdldCgpLCBqc1ZhbHVlR2lnYWNhZ2VBbGxvY2F0b3IuZ2V0KCkpIC8vIEhh
c2g6MHgyNDFlOTQ2Ci0gICAgLCBpbW11dGFibGVCdXR0ZXJmbHlKU1ZhbHVlR2lnYWNhZ2VBdXhp
bGlhcnlTcGFjZSgiSW1tdXRhYmxlQnV0dGVyZmx5IEdpZ2FjYWdlIEpTQ2VsbFdpdGhJbnRlcmlv
clBvaW50ZXJzIiwgaGVhcCwgaW1tdXRhYmxlQnV0dGVyZmx5SGVhcENlbGxUeXBlLmdldCgpLCBq
c1ZhbHVlR2lnYWNhZ2VBbGxvY2F0b3IuZ2V0KCkpIC8vIEhhc2g6MHg3YTk0NTMwMAorICAgICwg
aW1tdXRhYmxlQnV0dGVyZmx5SlNWYWx1ZUdpZ2FjYWdlQXV4aWxpYXJ5U3BhY2UoIkltbXV0YWJs
ZUJ1dHRlcmZseSBHaWdhY2FnZSBKU0NlbGxXaXRoSW5kZXhpbmdIZWFkZXIiLCBoZWFwLCBpbW11
dGFibGVCdXR0ZXJmbHlIZWFwQ2VsbFR5cGUuZ2V0KCksIGpzVmFsdWVHaWdhY2FnZUFsbG9jYXRv
ci5nZXQoKSkgLy8gSGFzaDoweDdhOTQ1MzAwCiAgICAgLCBjZWxsU3BhY2UoIkpTQ2VsbCIsIGhl
YXAsIGNlbGxIZWFwQ2VsbFR5cGUuZ2V0KCksIGZhc3RNYWxsb2NBbGxvY2F0b3IuZ2V0KCkpIC8v
IEhhc2g6MHhhZGZiNWE3OQogICAgICwgdmFyaWFibGVTaXplZENlbGxTcGFjZSgiVmFyaWFibGUg
U2l6ZWQgSlNDZWxsIiwgaGVhcCwgY2VsbEhlYXBDZWxsVHlwZS5nZXQoKSwgZmFzdE1hbGxvY0Fs
bG9jYXRvci5nZXQoKSkgLy8gSGFzaDoweGJjZDc2OWNjCiAgICAgLCBkZXN0cnVjdGlibGVPYmpl
Y3RTcGFjZSgiSlNEZXN0cnVjdGlibGVPYmplY3QiLCBoZWFwLCBkZXN0cnVjdGlibGVPYmplY3RI
ZWFwQ2VsbFR5cGUuZ2V0KCksIGZhc3RNYWxsb2NBbGxvY2F0b3IuZ2V0KCkpIC8vIEhhc2g6MHg0
ZjVlZDdhOQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403085</attachid>
            <date>2020-06-29 11:01:55 -0700</date>
            <delta_ts>2020-06-29 11:06:28 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-213686-20200629110154.patch</filename>
            <type>text/plain</type>
            <size>9799</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzNTI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
MzU3NzE2ODQ4NTRlMzdmNDlhMzRlZTczOTMxNmVhZDQxZTM4MDkxLi4wNTVmOTg1YTBlNGIxN2Zk
MWFlYjQxMTBmY2Y1MmE3OWU1NjY2N2U1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMC0wNi0yOSAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBDb25zZXJ2YXRpdmVSb290cyBzaG91bGQgbWFyayBhbnkgY2VsbCBp
dCBmaW5kcyBhbiBpbnRlcmlvciBwb2ludGVyIHRvCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTM2ODYKKworICAgICAgICBSZXZpZXdlZCBieSBZdXN1
a2UgU3V6dWtpLgorCisgICAgICAgIEN1cnJlbnRseSwgaWYgQ29uc2VyYXRpdmVSb290cyBmaW5k
cyBhbiBpbnRlcmlvciBwb2ludGVyIHRvIGEgY2VsbAorICAgICAgICBpdCB3aWxsIG9ubHkgbWFy
ayB0aGF0IGNlbGwgaWYgaXQncyBhIGJ1dHRlcmZseSBvZiBzb21lCisgICAgICAgIGtpbmQuIEhv
d2V2ZXIsIHRoaXMgY2FuIGNhdXNlIHByb2JsZW1zIGlmIHRoZSBDKysgb3IgQjMgY29tcGlsZXJz
CisgICAgICAgIHByZS1jb21wdXRlIHRoZSBvZmZzZXQgb2Ygc29tZSBjZWxsIG1lbWJlciB0aGV5
IHdhbnQgdG8gbG9hZCBmcm9tCisgICAgICAgIGFmdGVyIGEgY2FsbC4gSWYgdGhpcyBoYXBwZW5z
IGFuZCB0aGF0IGludGVyaW9yIHBvaW50ZXIgaXMgdGhlCisgICAgICAgIG9ubHkgcmVmZXJlbmNl
IHRvIHRoZSBjZWxsIGl0IGNhbiBnZXQgY29sbGVjdGVkIHdoaWxlIGl0IGlzIHN0aWxsCisgICAg
ICAgICJhbGl2ZSIuCisKKyAgICAgICAgQSBuYWl2ZSBwYXRjaCB0aGF0IGRvZXNuJ3QgcmV0dXJu
IGZyb20KKyAgICAgICAgZmluZEdDT2JqZWN0UG9pbnRlcnNGb3JNYXJraW5nIGFmdGVyIGZpbmRp
bmcgYSBsaXZlIG5vbi1pbnRlcmlvciwKKyAgICAgICAgbm9uLWJ1dHRlcmZseSBjZWxsIHdhcyBh
IDIlIHJlZ3Jlc3Npb24gb24gU3BlZWRvbWV0ZXIyIGFuZAorICAgICAgICBKZXRTdHJlYW0yLiBT
bywgdGhpcyBwYXRjaCBpbW1lZGlhdGVseSByZXR1cm5zIGFmdGVyCisgICAgICAgIG1hcmtpbmcg
c29tZSBub24tYnV0dGVyZmx5IGNlbGwsIHdoaWNoIGFwcGVhcnMgdG8gaGF2ZSBmaXhlZCB0aGUK
KyAgICAgICAgcmVncmVzc2lvbiBsb2NhbGx5LiBHaXZlbiB0aGlzIHdhcyBzdWNoIGEgYmlnIHJl
Z3Jlc3Npb24gKGxpa2VseQorICAgICAgICBmcm9tIHJ1bm5pbmcgTWFya2VkQmxvY2s6OmlzTGl2
ZSkgbW9yZSB0aGFuIG9uY2UgdGhlcmUncyBwb3NzaWJseQorICAgICAgICBhbiBvcHRpbWl6YXRp
b24gb3Bwb3J0dW5pdHkgaGVyZS4gSSBmaWxlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEzNjg3IHRvIGludmVzdGlnYXRlCisgICAgICAgIGZ1cnRo
ZXIuCisKKyAgICAgICAgKiBoZWFwL0hlYXBDZWxsLmNwcDoKKyAgICAgICAgKFdURjo6cHJpbnRJ
bnRlcm5hbCk6CisgICAgICAgICogaGVhcC9IZWFwQ2VsbC5oOgorICAgICAgICAoSlNDOjppc0pT
Q2VsbEtpbmQpOgorICAgICAgICAoSlNDOjptYXlIYXZlSW5kZXhpbmdIZWFkZXIpOgorICAgICAg
ICAoSlNDOjpoYXNJbnRlcmlvclBvaW50ZXJzKTogRGVsZXRlZC4KKyAgICAgICAgKiBoZWFwL0hl
YXBVdGlsLmg6CisgICAgICAgIChKU0M6OkhlYXBVdGlsOjpmaW5kR0NPYmplY3RQb2ludGVyc0Zv
ck1hcmtpbmcpOgorICAgICAgICAqIGhlYXAvU2xvdFZpc2l0b3IuY3BwOgorICAgICAgICAoSlND
OjpTbG90VmlzaXRvcjo6YXBwZW5kSlNDZWxsT3JBdXhpbGlhcnkpOgorICAgICAgICAqIHJ1bnRp
bWUvVk0uY3BwOgorICAgICAgICAoSlNDOjpWTTo6Vk0pOgorCiAyMDIwLTA2LTI1ICBNYXJrIExh
bSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBKU0NlbGwgY29uc3RydWN0b3IgbmVl
ZHMgdG8gZW5zdXJlIHRoYXQgdGhlIHBhc3NlZCBpbiBzdHJ1Y3R1cmUgaXMgc3RpbGwgYWxpdmUu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5jcHAKaW5kZXggMjAwMDVkNjFhOTQ5
MjdkZTU2NzU3YTk1ZjBjMDlkM2VjMzgyMDkyMy4uY2I0NTc5Y2RhY2Y0NWU2Yjg1MWQ4NTQ2YWJl
MDRjODU0YTYzOTAwYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVh
cENlbGwuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBDZWxsLmNwcApA
QCAtNTQsOCArNTQsOCBAQCB2b2lkIHByaW50SW50ZXJuYWwoUHJpbnRTdHJlYW0mIG91dCwgSGVh
cENlbGw6OktpbmQga2luZCkKICAgICBjYXNlIEhlYXBDZWxsOjpKU0NlbGw6CiAgICAgICAgIG91
dC5wcmludCgiSlNDZWxsIik7CiAgICAgICAgIHJldHVybjsKLSAgICBjYXNlIEhlYXBDZWxsOjpK
U0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczoKLSAgICAgICAgb3V0LnByaW50KCJKU0NlbGxXaXRo
SW50ZXJpb3JQb2ludGVycyIpOworICAgIGNhc2UgSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRleGlu
Z0hlYWRlcjoKKyAgICAgICAgb3V0LnByaW50KCJKU0NlbGxXaXRoSW5kZXhpbmdIZWFkZXIiKTsK
ICAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgSGVhcENlbGw6OkF1eGlsaWFyeToKICAgICAgICAg
b3V0LnByaW50KCJBdXhpbGlhcnkiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9oZWFwL0hlYXBDZWxsLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5o
CmluZGV4IDBhYTM1MmFmYTc0MTkyZmI2Mjc5MWI1NzQ2OWMzNTc0OTdjMTAzYTYuLmIyNjczNjY4
NmM5YTExM2Y4MjVlNTk1ZmI0MTQzOGRiODY2OGQ4OGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL0hlYXBDZWxsLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hl
YXAvSGVhcENlbGwuaApAQCAtNDIsNyArNDIsNyBAQCBjbGFzcyBIZWFwQ2VsbCB7CiBwdWJsaWM6
CiAgICAgZW51bSBLaW5kIDogaW50OF90IHsKICAgICAgICAgSlNDZWxsLAotICAgICAgICBKU0Nl
bGxXaXRoSW50ZXJpb3JQb2ludGVycywKKyAgICAgICAgSlNDZWxsV2l0aEluZGV4aW5nSGVhZGVy
LAogICAgICAgICBBdXhpbGlhcnkKICAgICB9OwogICAgIApAQCAtOTMsMTIgKzkzLDEyIEBAIHB1
YmxpYzoKIAogaW5saW5lIGJvb2wgaXNKU0NlbGxLaW5kKEhlYXBDZWxsOjpLaW5kIGtpbmQpCiB7
Ci0gICAgcmV0dXJuIGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbCB8fCBraW5kID09IEhlYXBDZWxs
OjpKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczsKKyAgICByZXR1cm4ga2luZCA9PSBIZWFwQ2Vs
bDo6SlNDZWxsIHx8IGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRleGluZ0hlYWRlcjsK
IH0KIAotaW5saW5lIGJvb2wgaGFzSW50ZXJpb3JQb2ludGVycyhIZWFwQ2VsbDo6S2luZCBraW5k
KQoraW5saW5lIGJvb2wgbWF5SGF2ZUluZGV4aW5nSGVhZGVyKEhlYXBDZWxsOjpLaW5kIGtpbmQp
CiB7Ci0gICAgcmV0dXJuIGtpbmQgPT0gSGVhcENlbGw6OkF1eGlsaWFyeSB8fCBraW5kID09IEhl
YXBDZWxsOjpKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczsKKyAgICByZXR1cm4ga2luZCA9PSBI
ZWFwQ2VsbDo6QXV4aWxpYXJ5IHx8IGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRleGlu
Z0hlYWRlcjsKIH0KIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaGVhcC9IZWFwVXRpbC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
SGVhcFV0aWwuaAppbmRleCBlOWNkYzk2MGQ2MWI4YzM4YTI5OTgxMGVkZTFlNDI0YzYzZmI2ODU5
Li5lYjNhMzZlODk2OTg0MjA3YzBlZThjNmEzN2ZkYzAzYmQ4Y2E5ZjEzIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVXRpbC5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL0hlYXBVdGlsLmgKQEAgLTg4LDcgKzg4LDcgQEAgcHVibGljOgogICAgICAg
ICAgICAgTWFya2VkQmxvY2sqIHByZXZpb3VzQ2FuZGlkYXRlID0gTWFya2VkQmxvY2s6OmJsb2Nr
Rm9yKHByZXZpb3VzUG9pbnRlcik7CiAgICAgICAgICAgICBpZiAoIWZpbHRlci5ydWxlT3V0KGJp
dHdpc2VfY2FzdDxCaXRzPihwcmV2aW91c0NhbmRpZGF0ZSkpCiAgICAgICAgICAgICAgICAgJiYg
c2V0LmNvbnRhaW5zKHByZXZpb3VzQ2FuZGlkYXRlKQotICAgICAgICAgICAgICAgICYmIGhhc0lu
dGVyaW9yUG9pbnRlcnMocHJldmlvdXNDYW5kaWRhdGUtPmhhbmRsZSgpLmNlbGxLaW5kKCkpKSB7
CisgICAgICAgICAgICAgICAgJiYgbWF5SGF2ZUluZGV4aW5nSGVhZGVyKHByZXZpb3VzQ2FuZGlk
YXRlLT5oYW5kbGUoKS5jZWxsS2luZCgpKSkgewogICAgICAgICAgICAgICAgIHByZXZpb3VzUG9p
bnRlciA9IHN0YXRpY19jYXN0PGNoYXIqPihwcmV2aW91c0NhbmRpZGF0ZS0+aGFuZGxlKCkuY2Vs
bEFsaWduKHByZXZpb3VzUG9pbnRlcikpOwogICAgICAgICAgICAgICAgIGlmIChwcmV2aW91c0Nh
bmRpZGF0ZS0+aGFuZGxlKCkuaXNMaXZlQ2VsbChtYXJraW5nVmVyc2lvbiwgbmV3bHlBbGxvY2F0
ZWRWZXJzaW9uLCBpc01hcmtpbmcsIHByZXZpb3VzUG9pbnRlcikpCiAgICAgICAgICAgICAgICAg
ICAgIGZ1bmMocHJldmlvdXNQb2ludGVyLCBwcmV2aW91c0NhbmRpZGF0ZS0+aGFuZGxlKCkuY2Vs
bEtpbmQoKSk7CkBAIC0xMDYsMjEgKzEwNiwyNyBAQCBwdWJsaWM6CiAgICAgICAgIEhlYXBDZWxs
OjpLaW5kIGNlbGxLaW5kID0gY2FuZGlkYXRlLT5oYW5kbGUoKS5jZWxsS2luZCgpOwogICAgICAg
ICAKICAgICAgICAgYXV0byB0cnlQb2ludGVyID0gWyZdICh2b2lkKiBwb2ludGVyKSB7Ci0gICAg
ICAgICAgICBpZiAoY2FuZGlkYXRlLT5oYW5kbGUoKS5pc0xpdmVDZWxsKG1hcmtpbmdWZXJzaW9u
LCBuZXdseUFsbG9jYXRlZFZlcnNpb24sIGlzTWFya2luZywgcG9pbnRlcikpCisgICAgICAgICAg
ICBib29sIGlzTGl2ZSA9IGNhbmRpZGF0ZS0+aGFuZGxlKCkuaXNMaXZlQ2VsbChtYXJraW5nVmVy
c2lvbiwgbmV3bHlBbGxvY2F0ZWRWZXJzaW9uLCBpc01hcmtpbmcsIHBvaW50ZXIpOworICAgICAg
ICAgICAgaWYgKGlzTGl2ZSkKICAgICAgICAgICAgICAgICBmdW5jKHBvaW50ZXIsIGNlbGxLaW5k
KTsKKyAgICAgICAgICAgIC8vIE9ubHkgcmV0dXJuICBlYXJseSBpZiB3ZSBhcmUgbWFya2luZyBh
IG5vbi1idXR0ZXJmbHkgc2luY2UgYnV0dGVyZmxpZXMgd2l0aG91dCBpbmRleGVkIHByb3BlcnRp
ZXMgY291bGQgcG9pbnQgcGFzdCB0aGUgZW5kIG9mIHRoZWlyIGFsbG9jYXRpb24uCisgICAgICAg
ICAgICAvLyBJZiB0aGV5IGRvIGFuZCB0aGVyZSBpcyBhIGxpdmUgYnV0dGVyZmx5IGltbWVkaWF0
ZWx5IGZvbGxvd2luZyBpdCB3ZSB3aWxsIG1hcmsgdGhlIGxhdHRlciBvbmUgaGVyZSBidXQgd2Ug
c3RpbGwgbmVlZCB0bworICAgICAgICAgICAgLy8gbWFyayB0aGUgZm9ybWVyLgorICAgICAgICAg
ICAgcmV0dXJuIGlzTGl2ZSAmJiAhbWF5SGF2ZUluZGV4aW5nSGVhZGVyKGNlbGxLaW5kKTsKICAg
ICAgICAgfTsKICAgICAKICAgICAgICAgaWYgKGlzSlNDZWxsS2luZChjZWxsS2luZCkpIHsKLSAg
ICAgICAgICAgIGlmIChNYXJrZWRCbG9jazo6aXNBdG9tQWxpZ25lZChwb2ludGVyKSkKLSAgICAg
ICAgICAgICAgICB0cnlQb2ludGVyKHBvaW50ZXIpOwotICAgICAgICAgICAgaWYgKCFoYXNJbnRl
cmlvclBvaW50ZXJzKGNlbGxLaW5kKSkKLSAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAg
ICAgICBpZiAoTElLRUxZKE1hcmtlZEJsb2NrOjppc0F0b21BbGlnbmVkKHBvaW50ZXIpKSkgewor
ICAgICAgICAgICAgICAgIGlmICh0cnlQb2ludGVyKHBvaW50ZXIpKQorICAgICAgICAgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAKLSAgICAgICAgLy8g
QSBidXR0ZXJmbHkgY291bGQgcG9pbnQgaW50byB0aGUgbWlkZGxlIG9mIGFuIG9iamVjdC4KKyAg
ICAgICAgLy8gV2UgY291bGQgcG9pbnQgaW50byB0aGUgbWlkZGxlIG9mIGFuIG9iamVjdC4KICAg
ICAgICAgY2hhciogYWxpZ25lZFBvaW50ZXIgPSBzdGF0aWNfY2FzdDxjaGFyKj4oY2FuZGlkYXRl
LT5oYW5kbGUoKS5jZWxsQWxpZ24ocG9pbnRlcikpOwotICAgICAgICB0cnlQb2ludGVyKGFsaWdu
ZWRQb2ludGVyKTsKLSAgICAKKyAgICAgICAgaWYgKHRyeVBvaW50ZXIoYWxpZ25lZFBvaW50ZXIp
KQorICAgICAgICAgICAgcmV0dXJuOworCiAgICAgICAgIC8vIEFsc28sIGEgYnV0dGVyZmx5IGNv
dWxkIHBvaW50IGF0IHRoZSBlbmQgb2YgYW4gb2JqZWN0IHBsdXMgc2l6ZW9mKEluZGV4aW5nSGVh
ZGVyKS4gSW4gdGhhdAogICAgICAgICAvLyBjYXNlLCB0aGlzIGlzIHBvaW50aW5nIHRvIHRoZSBv
YmplY3QgdG8gdGhlIHJpZ2h0IG9mIHRoZSBvbmUgd2Ugc2hvdWxkIGJlIG1hcmtpbmcuCiAgICAg
ICAgIGlmIChjYW5kaWRhdGUtPmNhbmRpZGF0ZUF0b21OdW1iZXIoYWxpZ25lZFBvaW50ZXIpID4g
MApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvU2xvdFZpc2l0b3IuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvU2xvdFZpc2l0b3IuY3BwCmluZGV4IDAwOWQ1
NDYzMTM4ZmNlOWU3NjI2NTI2NjJjZTA5ZmRjOWMwMGExYmIuLmJmZGJmNDQwMjJjNGE1NjAzMzRl
ODAwMDFlZGI0NmU4ZTJlMDhmYmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9o
ZWFwL1Nsb3RWaXNpdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9TbG90
VmlzaXRvci5jcHAKQEAgLTIwOCw3ICsyMDgsNyBAQCB2b2lkIFNsb3RWaXNpdG9yOjphcHBlbmRK
U0NlbGxPckF1eGlsaWFyeShIZWFwQ2VsbCogaGVhcENlbGwpCiAgICAgCiAgICAgc3dpdGNoICho
ZWFwQ2VsbC0+Y2VsbEtpbmQoKSkgewogICAgIGNhc2UgSGVhcENlbGw6OkpTQ2VsbDoKLSAgICBj
YXNlIEhlYXBDZWxsOjpKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczogeworICAgIGNhc2UgSGVh
cENlbGw6OkpTQ2VsbFdpdGhJbmRleGluZ0hlYWRlcjogewogICAgICAgICAvLyBXZSBoYXZlIGFt
cGxlIGJ1ZGdldCB0byBwZXJmb3JtIHZhbGlkYXRpb24gaGVyZS4KICAgICAKICAgICAgICAgSlND
ZWxsKiBqc0NlbGwgPSBzdGF0aWNfY2FzdDxKU0NlbGwqPihoZWFwQ2VsbCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9WTS5jcHAKaW5kZXggMTE0YmE5NzcwYmE1YTU2NTIyZWI1YmEyODhkOTJm
NzAwNmUyM2I2NS4uMTY3Y2YwZjVkOWZjZmJjNzczYjBjNTVkNzFiMjNjYmE1ZmU2MmI3NiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNwcApAQCAtMjc1LDcgKzI3NSw3IEBAIFZNOjpW
TShWTVR5cGUgdm1UeXBlLCBIZWFwVHlwZSBoZWFwVHlwZSkKICAgICAsIHByaW1pdGl2ZUdpZ2Fj
YWdlQWxsb2NhdG9yKG1ha2VVbmlxdWU8R2lnYWNhZ2VBbGlnbmVkTWVtb3J5QWxsb2NhdG9yPihH
aWdhY2FnZTo6UHJpbWl0aXZlKSkKICAgICAsIGpzVmFsdWVHaWdhY2FnZUFsbG9jYXRvcihtYWtl
VW5pcXVlPEdpZ2FjYWdlQWxpZ25lZE1lbW9yeUFsbG9jYXRvcj4oR2lnYWNhZ2U6OkpTVmFsdWUp
KQogICAgICwgYXV4aWxpYXJ5SGVhcENlbGxUeXBlKG1ha2VVbmlxdWU8SGVhcENlbGxUeXBlPihD
ZWxsQXR0cmlidXRlcyhEb2VzTm90TmVlZERlc3RydWN0aW9uLCBIZWFwQ2VsbDo6QXV4aWxpYXJ5
KSkpCi0gICAgLCBpbW11dGFibGVCdXR0ZXJmbHlIZWFwQ2VsbFR5cGUobWFrZVVuaXF1ZTxIZWFw
Q2VsbFR5cGU+KENlbGxBdHRyaWJ1dGVzKERvZXNOb3ROZWVkRGVzdHJ1Y3Rpb24sIEhlYXBDZWxs
OjpKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVycykpKQorICAgICwgaW1tdXRhYmxlQnV0dGVyZmx5
SGVhcENlbGxUeXBlKG1ha2VVbmlxdWU8SGVhcENlbGxUeXBlPihDZWxsQXR0cmlidXRlcyhEb2Vz
Tm90TmVlZERlc3RydWN0aW9uLCBIZWFwQ2VsbDo6SlNDZWxsV2l0aEluZGV4aW5nSGVhZGVyKSkp
CiAgICAgLCBjZWxsSGVhcENlbGxUeXBlKG1ha2VVbmlxdWU8SGVhcENlbGxUeXBlPihDZWxsQXR0
cmlidXRlcyhEb2VzTm90TmVlZERlc3RydWN0aW9uLCBIZWFwQ2VsbDo6SlNDZWxsKSkpCiAgICAg
LCBkZXN0cnVjdGlibGVDZWxsSGVhcENlbGxUeXBlKG1ha2VVbmlxdWU8SGVhcENlbGxUeXBlPihD
ZWxsQXR0cmlidXRlcyhOZWVkc0Rlc3RydWN0aW9uLCBIZWFwQ2VsbDo6SlNDZWxsKSkpCiAgICAg
LCBhcGlHbG9iYWxPYmplY3RIZWFwQ2VsbFR5cGUoSXNvSGVhcENlbGxUeXBlOjpjcmVhdGU8SlNB
UElHbG9iYWxPYmplY3Q+KCkpCkBAIC0zMjIsNyArMzIyLDcgQEAgVk06OlZNKFZNVHlwZSB2bVR5
cGUsIEhlYXBUeXBlIGhlYXBUeXBlKQogI2VuZGlmCiAgICAgLCBwcmltaXRpdmVHaWdhY2FnZUF1
eGlsaWFyeVNwYWNlKCJQcmltaXRpdmUgR2lnYWNhZ2UgQXV4aWxpYXJ5IiwgaGVhcCwgYXV4aWxp
YXJ5SGVhcENlbGxUeXBlLmdldCgpLCBwcmltaXRpdmVHaWdhY2FnZUFsbG9jYXRvci5nZXQoKSkg
Ly8gSGFzaDoweDNlN2NkNzYyCiAgICAgLCBqc1ZhbHVlR2lnYWNhZ2VBdXhpbGlhcnlTcGFjZSgi
SlNWYWx1ZSBHaWdhY2FnZSBBdXhpbGlhcnkiLCBoZWFwLCBhdXhpbGlhcnlIZWFwQ2VsbFR5cGUu
Z2V0KCksIGpzVmFsdWVHaWdhY2FnZUFsbG9jYXRvci5nZXQoKSkgLy8gSGFzaDoweDI0MWU5NDYK
LSAgICAsIGltbXV0YWJsZUJ1dHRlcmZseUpTVmFsdWVHaWdhY2FnZUF1eGlsaWFyeVNwYWNlKCJJ
bW11dGFibGVCdXR0ZXJmbHkgR2lnYWNhZ2UgSlNDZWxsV2l0aEludGVyaW9yUG9pbnRlcnMiLCBo
ZWFwLCBpbW11dGFibGVCdXR0ZXJmbHlIZWFwQ2VsbFR5cGUuZ2V0KCksIGpzVmFsdWVHaWdhY2Fn
ZUFsbG9jYXRvci5nZXQoKSkgLy8gSGFzaDoweDdhOTQ1MzAwCisgICAgLCBpbW11dGFibGVCdXR0
ZXJmbHlKU1ZhbHVlR2lnYWNhZ2VBdXhpbGlhcnlTcGFjZSgiSW1tdXRhYmxlQnV0dGVyZmx5IEdp
Z2FjYWdlIEpTQ2VsbFdpdGhJbmRleGluZ0hlYWRlciIsIGhlYXAsIGltbXV0YWJsZUJ1dHRlcmZs
eUhlYXBDZWxsVHlwZS5nZXQoKSwganNWYWx1ZUdpZ2FjYWdlQWxsb2NhdG9yLmdldCgpKSAvLyBI
YXNoOjB4N2E5NDUzMDAKICAgICAsIGNlbGxTcGFjZSgiSlNDZWxsIiwgaGVhcCwgY2VsbEhlYXBD
ZWxsVHlwZS5nZXQoKSwgZmFzdE1hbGxvY0FsbG9jYXRvci5nZXQoKSkgLy8gSGFzaDoweGFkZmI1
YTc5CiAgICAgLCB2YXJpYWJsZVNpemVkQ2VsbFNwYWNlKCJWYXJpYWJsZSBTaXplZCBKU0NlbGwi
LCBoZWFwLCBjZWxsSGVhcENlbGxUeXBlLmdldCgpLCBmYXN0TWFsbG9jQWxsb2NhdG9yLmdldCgp
KSAvLyBIYXNoOjB4YmNkNzY5Y2MKICAgICAsIGRlc3RydWN0aWJsZU9iamVjdFNwYWNlKCJKU0Rl
c3RydWN0aWJsZU9iamVjdCIsIGhlYXAsIGRlc3RydWN0aWJsZU9iamVjdEhlYXBDZWxsVHlwZS5n
ZXQoKSwgZmFzdE1hbGxvY0FsbG9jYXRvci5nZXQoKSkgLy8gSGFzaDoweDRmNWVkN2E5Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403087</attachid>
            <date>2020-06-29 11:06:30 -0700</date>
            <delta_ts>2020-06-29 11:10:56 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-213686-20200629110629.patch</filename>
            <type>text/plain</type>
            <size>9813</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzNTI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
MzU3NzE2ODQ4NTRlMzdmNDlhMzRlZTczOTMxNmVhZDQxZTM4MDkxLi4wNTVmOTg1YTBlNGIxN2Zk
MWFlYjQxMTBmY2Y1MmE3OWU1NjY2N2U1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMC0wNi0yOSAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBDb25zZXJ2YXRpdmVSb290cyBzaG91bGQgbWFyayBhbnkgY2VsbCBp
dCBmaW5kcyBhbiBpbnRlcmlvciBwb2ludGVyIHRvCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTM2ODYKKworICAgICAgICBSZXZpZXdlZCBieSBZdXN1
a2UgU3V6dWtpLgorCisgICAgICAgIEN1cnJlbnRseSwgaWYgQ29uc2VyYXRpdmVSb290cyBmaW5k
cyBhbiBpbnRlcmlvciBwb2ludGVyIHRvIGEgY2VsbAorICAgICAgICBpdCB3aWxsIG9ubHkgbWFy
ayB0aGF0IGNlbGwgaWYgaXQncyBhIGJ1dHRlcmZseSBvZiBzb21lCisgICAgICAgIGtpbmQuIEhv
d2V2ZXIsIHRoaXMgY2FuIGNhdXNlIHByb2JsZW1zIGlmIHRoZSBDKysgb3IgQjMgY29tcGlsZXJz
CisgICAgICAgIHByZS1jb21wdXRlIHRoZSBvZmZzZXQgb2Ygc29tZSBjZWxsIG1lbWJlciB0aGV5
IHdhbnQgdG8gbG9hZCBmcm9tCisgICAgICAgIGFmdGVyIGEgY2FsbC4gSWYgdGhpcyBoYXBwZW5z
IGFuZCB0aGF0IGludGVyaW9yIHBvaW50ZXIgaXMgdGhlCisgICAgICAgIG9ubHkgcmVmZXJlbmNl
IHRvIHRoZSBjZWxsIGl0IGNhbiBnZXQgY29sbGVjdGVkIHdoaWxlIGl0IGlzIHN0aWxsCisgICAg
ICAgICJhbGl2ZSIuCisKKyAgICAgICAgQSBuYWl2ZSBwYXRjaCB0aGF0IGRvZXNuJ3QgcmV0dXJu
IGZyb20KKyAgICAgICAgZmluZEdDT2JqZWN0UG9pbnRlcnNGb3JNYXJraW5nIGFmdGVyIGZpbmRp
bmcgYSBsaXZlIG5vbi1pbnRlcmlvciwKKyAgICAgICAgbm9uLWJ1dHRlcmZseSBjZWxsIHdhcyBh
IDIlIHJlZ3Jlc3Npb24gb24gU3BlZWRvbWV0ZXIyIGFuZAorICAgICAgICBKZXRTdHJlYW0yLiBT
bywgdGhpcyBwYXRjaCBpbW1lZGlhdGVseSByZXR1cm5zIGFmdGVyCisgICAgICAgIG1hcmtpbmcg
c29tZSBub24tYnV0dGVyZmx5IGNlbGwsIHdoaWNoIGFwcGVhcnMgdG8gaGF2ZSBmaXhlZCB0aGUK
KyAgICAgICAgcmVncmVzc2lvbiBsb2NhbGx5LiBHaXZlbiB0aGlzIHdhcyBzdWNoIGEgYmlnIHJl
Z3Jlc3Npb24gKGxpa2VseQorICAgICAgICBmcm9tIHJ1bm5pbmcgTWFya2VkQmxvY2s6OmlzTGl2
ZSkgbW9yZSB0aGFuIG9uY2UgdGhlcmUncyBwb3NzaWJseQorICAgICAgICBhbiBvcHRpbWl6YXRp
b24gb3Bwb3J0dW5pdHkgaGVyZS4gSSBmaWxlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEzNjg3IHRvIGludmVzdGlnYXRlCisgICAgICAgIGZ1cnRo
ZXIuCisKKyAgICAgICAgKiBoZWFwL0hlYXBDZWxsLmNwcDoKKyAgICAgICAgKFdURjo6cHJpbnRJ
bnRlcm5hbCk6CisgICAgICAgICogaGVhcC9IZWFwQ2VsbC5oOgorICAgICAgICAoSlNDOjppc0pT
Q2VsbEtpbmQpOgorICAgICAgICAoSlNDOjptYXlIYXZlSW5kZXhpbmdIZWFkZXIpOgorICAgICAg
ICAoSlNDOjpoYXNJbnRlcmlvclBvaW50ZXJzKTogRGVsZXRlZC4KKyAgICAgICAgKiBoZWFwL0hl
YXBVdGlsLmg6CisgICAgICAgIChKU0M6OkhlYXBVdGlsOjpmaW5kR0NPYmplY3RQb2ludGVyc0Zv
ck1hcmtpbmcpOgorICAgICAgICAqIGhlYXAvU2xvdFZpc2l0b3IuY3BwOgorICAgICAgICAoSlND
OjpTbG90VmlzaXRvcjo6YXBwZW5kSlNDZWxsT3JBdXhpbGlhcnkpOgorICAgICAgICAqIHJ1bnRp
bWUvVk0uY3BwOgorICAgICAgICAoSlNDOjpWTTo6Vk0pOgorCiAyMDIwLTA2LTI1ICBNYXJrIExh
bSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBKU0NlbGwgY29uc3RydWN0b3IgbmVl
ZHMgdG8gZW5zdXJlIHRoYXQgdGhlIHBhc3NlZCBpbiBzdHJ1Y3R1cmUgaXMgc3RpbGwgYWxpdmUu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5jcHAKaW5kZXggMjAwMDVkNjFhOTQ5
MjdkZTU2NzU3YTk1ZjBjMDlkM2VjMzgyMDkyMy4uY2I0NTc5Y2RhY2Y0NWU2Yjg1MWQ4NTQ2YWJl
MDRjODU0YTYzOTAwYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVh
cENlbGwuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBDZWxsLmNwcApA
QCAtNTQsOCArNTQsOCBAQCB2b2lkIHByaW50SW50ZXJuYWwoUHJpbnRTdHJlYW0mIG91dCwgSGVh
cENlbGw6OktpbmQga2luZCkKICAgICBjYXNlIEhlYXBDZWxsOjpKU0NlbGw6CiAgICAgICAgIG91
dC5wcmludCgiSlNDZWxsIik7CiAgICAgICAgIHJldHVybjsKLSAgICBjYXNlIEhlYXBDZWxsOjpK
U0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczoKLSAgICAgICAgb3V0LnByaW50KCJKU0NlbGxXaXRo
SW50ZXJpb3JQb2ludGVycyIpOworICAgIGNhc2UgSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRleGlu
Z0hlYWRlcjoKKyAgICAgICAgb3V0LnByaW50KCJKU0NlbGxXaXRoSW5kZXhpbmdIZWFkZXIiKTsK
ICAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgSGVhcENlbGw6OkF1eGlsaWFyeToKICAgICAgICAg
b3V0LnByaW50KCJBdXhpbGlhcnkiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9oZWFwL0hlYXBDZWxsLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5o
CmluZGV4IDBhYTM1MmFmYTc0MTkyZmI2Mjc5MWI1NzQ2OWMzNTc0OTdjMTAzYTYuLmIyNjczNjY4
NmM5YTExM2Y4MjVlNTk1ZmI0MTQzOGRiODY2OGQ4OGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL0hlYXBDZWxsLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hl
YXAvSGVhcENlbGwuaApAQCAtNDIsNyArNDIsNyBAQCBjbGFzcyBIZWFwQ2VsbCB7CiBwdWJsaWM6
CiAgICAgZW51bSBLaW5kIDogaW50OF90IHsKICAgICAgICAgSlNDZWxsLAotICAgICAgICBKU0Nl
bGxXaXRoSW50ZXJpb3JQb2ludGVycywKKyAgICAgICAgSlNDZWxsV2l0aEluZGV4aW5nSGVhZGVy
LAogICAgICAgICBBdXhpbGlhcnkKICAgICB9OwogICAgIApAQCAtOTMsMTIgKzkzLDEyIEBAIHB1
YmxpYzoKIAogaW5saW5lIGJvb2wgaXNKU0NlbGxLaW5kKEhlYXBDZWxsOjpLaW5kIGtpbmQpCiB7
Ci0gICAgcmV0dXJuIGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbCB8fCBraW5kID09IEhlYXBDZWxs
OjpKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczsKKyAgICByZXR1cm4ga2luZCA9PSBIZWFwQ2Vs
bDo6SlNDZWxsIHx8IGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRleGluZ0hlYWRlcjsK
IH0KIAotaW5saW5lIGJvb2wgaGFzSW50ZXJpb3JQb2ludGVycyhIZWFwQ2VsbDo6S2luZCBraW5k
KQoraW5saW5lIGJvb2wgbWF5SGF2ZUluZGV4aW5nSGVhZGVyKEhlYXBDZWxsOjpLaW5kIGtpbmQp
CiB7Ci0gICAgcmV0dXJuIGtpbmQgPT0gSGVhcENlbGw6OkF1eGlsaWFyeSB8fCBraW5kID09IEhl
YXBDZWxsOjpKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczsKKyAgICByZXR1cm4ga2luZCA9PSBI
ZWFwQ2VsbDo6QXV4aWxpYXJ5IHx8IGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRleGlu
Z0hlYWRlcjsKIH0KIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaGVhcC9IZWFwVXRpbC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
SGVhcFV0aWwuaAppbmRleCBlOWNkYzk2MGQ2MWI4YzM4YTI5OTgxMGVkZTFlNDI0YzYzZmI2ODU5
Li4zNzc1ODhkYzRjMzNjMWE1MDNlZGZmNDJmMDcyZGQ2Y2IwZjQ5NDE1IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVXRpbC5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL0hlYXBVdGlsLmgKQEAgLTg4LDcgKzg4LDcgQEAgcHVibGljOgogICAgICAg
ICAgICAgTWFya2VkQmxvY2sqIHByZXZpb3VzQ2FuZGlkYXRlID0gTWFya2VkQmxvY2s6OmJsb2Nr
Rm9yKHByZXZpb3VzUG9pbnRlcik7CiAgICAgICAgICAgICBpZiAoIWZpbHRlci5ydWxlT3V0KGJp
dHdpc2VfY2FzdDxCaXRzPihwcmV2aW91c0NhbmRpZGF0ZSkpCiAgICAgICAgICAgICAgICAgJiYg
c2V0LmNvbnRhaW5zKHByZXZpb3VzQ2FuZGlkYXRlKQotICAgICAgICAgICAgICAgICYmIGhhc0lu
dGVyaW9yUG9pbnRlcnMocHJldmlvdXNDYW5kaWRhdGUtPmhhbmRsZSgpLmNlbGxLaW5kKCkpKSB7
CisgICAgICAgICAgICAgICAgJiYgbWF5SGF2ZUluZGV4aW5nSGVhZGVyKHByZXZpb3VzQ2FuZGlk
YXRlLT5oYW5kbGUoKS5jZWxsS2luZCgpKSkgewogICAgICAgICAgICAgICAgIHByZXZpb3VzUG9p
bnRlciA9IHN0YXRpY19jYXN0PGNoYXIqPihwcmV2aW91c0NhbmRpZGF0ZS0+aGFuZGxlKCkuY2Vs
bEFsaWduKHByZXZpb3VzUG9pbnRlcikpOwogICAgICAgICAgICAgICAgIGlmIChwcmV2aW91c0Nh
bmRpZGF0ZS0+aGFuZGxlKCkuaXNMaXZlQ2VsbChtYXJraW5nVmVyc2lvbiwgbmV3bHlBbGxvY2F0
ZWRWZXJzaW9uLCBpc01hcmtpbmcsIHByZXZpb3VzUG9pbnRlcikpCiAgICAgICAgICAgICAgICAg
ICAgIGZ1bmMocHJldmlvdXNQb2ludGVyLCBwcmV2aW91c0NhbmRpZGF0ZS0+aGFuZGxlKCkuY2Vs
bEtpbmQoKSk7CkBAIC0xMDYsMjEgKzEwNiwyNyBAQCBwdWJsaWM6CiAgICAgICAgIEhlYXBDZWxs
OjpLaW5kIGNlbGxLaW5kID0gY2FuZGlkYXRlLT5oYW5kbGUoKS5jZWxsS2luZCgpOwogICAgICAg
ICAKICAgICAgICAgYXV0byB0cnlQb2ludGVyID0gWyZdICh2b2lkKiBwb2ludGVyKSB7Ci0gICAg
ICAgICAgICBpZiAoY2FuZGlkYXRlLT5oYW5kbGUoKS5pc0xpdmVDZWxsKG1hcmtpbmdWZXJzaW9u
LCBuZXdseUFsbG9jYXRlZFZlcnNpb24sIGlzTWFya2luZywgcG9pbnRlcikpCisgICAgICAgICAg
ICBib29sIGlzTGl2ZSA9IGNhbmRpZGF0ZS0+aGFuZGxlKCkuaXNMaXZlQ2VsbChtYXJraW5nVmVy
c2lvbiwgbmV3bHlBbGxvY2F0ZWRWZXJzaW9uLCBpc01hcmtpbmcsIHBvaW50ZXIpOworICAgICAg
ICAgICAgaWYgKGlzTGl2ZSkKICAgICAgICAgICAgICAgICBmdW5jKHBvaW50ZXIsIGNlbGxLaW5k
KTsKKyAgICAgICAgICAgIC8vIE9ubHkgcmV0dXJuIGVhcmx5IGlmIHdlIGFyZSBtYXJraW5nIGEg
bm9uLWJ1dHRlcmZseSwgcyBpbmNlIGJ1dHRlcmZsaWVzIHdpdGhvdXQgaW5kZXhlZCBwcm9wZXJ0
aWVzIGNvdWxkIHBvaW50IHBhc3QgdGhlIGVuZCBvZiB0aGVpciBhbGxvY2F0aW9uLgorICAgICAg
ICAgICAgLy8gSWYgd2UgZG8sIGFuZCB0aGVyZSBpcyBhbm90aGVyIGxpdmUgYnV0dGVyZmx5IGlt
bWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgZmlyc3QsIHdlIHdpbGwgbWFyayB0aGUgbGF0dGVyIG9u
ZSBoZXJlIGJ1dCB3ZSBzdGlsbCBuZWVkIHRvCisgICAgICAgICAgICAvLyBtYXJrIHRoZSBmb3Jt
ZXIuCisgICAgICAgICAgICByZXR1cm4gaXNMaXZlICYmICFtYXlIYXZlSW5kZXhpbmdIZWFkZXIo
Y2VsbEtpbmQpOwogICAgICAgICB9OwogICAgIAogICAgICAgICBpZiAoaXNKU0NlbGxLaW5kKGNl
bGxLaW5kKSkgewotICAgICAgICAgICAgaWYgKE1hcmtlZEJsb2NrOjppc0F0b21BbGlnbmVkKHBv
aW50ZXIpKQotICAgICAgICAgICAgICAgIHRyeVBvaW50ZXIocG9pbnRlcik7Ci0gICAgICAgICAg
ICBpZiAoIWhhc0ludGVyaW9yUG9pbnRlcnMoY2VsbEtpbmQpKQotICAgICAgICAgICAgICAgIHJl
dHVybjsKKyAgICAgICAgICAgIGlmIChMSUtFTFkoTWFya2VkQmxvY2s6OmlzQXRvbUFsaWduZWQo
cG9pbnRlcikpKSB7CisgICAgICAgICAgICAgICAgaWYgKHRyeVBvaW50ZXIocG9pbnRlcikpCisg
ICAgICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogICAg
IAotICAgICAgICAvLyBBIGJ1dHRlcmZseSBjb3VsZCBwb2ludCBpbnRvIHRoZSBtaWRkbGUgb2Yg
YW4gb2JqZWN0LgorICAgICAgICAvLyBXZSBjb3VsZCBwb2ludCBpbnRvIHRoZSBtaWRkbGUgb2Yg
YW4gb2JqZWN0LgogICAgICAgICBjaGFyKiBhbGlnbmVkUG9pbnRlciA9IHN0YXRpY19jYXN0PGNo
YXIqPihjYW5kaWRhdGUtPmhhbmRsZSgpLmNlbGxBbGlnbihwb2ludGVyKSk7Ci0gICAgICAgIHRy
eVBvaW50ZXIoYWxpZ25lZFBvaW50ZXIpOwotICAgIAorICAgICAgICBpZiAodHJ5UG9pbnRlcihh
bGlnbmVkUG9pbnRlcikpCisgICAgICAgICAgICByZXR1cm47CisKICAgICAgICAgLy8gQWxzbywg
YSBidXR0ZXJmbHkgY291bGQgcG9pbnQgYXQgdGhlIGVuZCBvZiBhbiBvYmplY3QgcGx1cyBzaXpl
b2YoSW5kZXhpbmdIZWFkZXIpLiBJbiB0aGF0CiAgICAgICAgIC8vIGNhc2UsIHRoaXMgaXMgcG9p
bnRpbmcgdG8gdGhlIG9iamVjdCB0byB0aGUgcmlnaHQgb2YgdGhlIG9uZSB3ZSBzaG91bGQgYmUg
bWFya2luZy4KICAgICAgICAgaWYgKGNhbmRpZGF0ZS0+Y2FuZGlkYXRlQXRvbU51bWJlcihhbGln
bmVkUG9pbnRlcikgPiAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9T
bG90VmlzaXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9TbG90VmlzaXRvci5j
cHAKaW5kZXggMDA5ZDU0NjMxMzhmY2U5ZTc2MjY1MjY2MmNlMDlmZGM5YzAwYTFiYi4uYmZkYmY0
NDAyMmM0YTU2MDMzNGU4MDAwMWVkYjQ2ZThlMmUwOGZiZSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2hlYXAvU2xvdFZpc2l0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9oZWFwL1Nsb3RWaXNpdG9yLmNwcApAQCAtMjA4LDcgKzIwOCw3IEBAIHZvaWQgU2xvdFZp
c2l0b3I6OmFwcGVuZEpTQ2VsbE9yQXV4aWxpYXJ5KEhlYXBDZWxsKiBoZWFwQ2VsbCkKICAgICAK
ICAgICBzd2l0Y2ggKGhlYXBDZWxsLT5jZWxsS2luZCgpKSB7CiAgICAgY2FzZSBIZWFwQ2VsbDo6
SlNDZWxsOgotICAgIGNhc2UgSGVhcENlbGw6OkpTQ2VsbFdpdGhJbnRlcmlvclBvaW50ZXJzOiB7
CisgICAgY2FzZSBIZWFwQ2VsbDo6SlNDZWxsV2l0aEluZGV4aW5nSGVhZGVyOiB7CiAgICAgICAg
IC8vIFdlIGhhdmUgYW1wbGUgYnVkZ2V0IHRvIHBlcmZvcm0gdmFsaWRhdGlvbiBoZXJlLgogICAg
IAogICAgICAgICBKU0NlbGwqIGpzQ2VsbCA9IHN0YXRpY19jYXN0PEpTQ2VsbCo+KGhlYXBDZWxs
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNwcAppbmRleCAxMTRiYTk3NzBiYTVhNTY1
MjJlYjViYTI4OGQ5MmY3MDA2ZTIzYjY1Li4xNjdjZjBmNWQ5ZmNmYmM3NzNiMGM1NWQ3MWIyM2Ni
YTVmZTYyYjc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCkBAIC0yNzUsNyAr
Mjc1LDcgQEAgVk06OlZNKFZNVHlwZSB2bVR5cGUsIEhlYXBUeXBlIGhlYXBUeXBlKQogICAgICwg
cHJpbWl0aXZlR2lnYWNhZ2VBbGxvY2F0b3IobWFrZVVuaXF1ZTxHaWdhY2FnZUFsaWduZWRNZW1v
cnlBbGxvY2F0b3I+KEdpZ2FjYWdlOjpQcmltaXRpdmUpKQogICAgICwganNWYWx1ZUdpZ2FjYWdl
QWxsb2NhdG9yKG1ha2VVbmlxdWU8R2lnYWNhZ2VBbGlnbmVkTWVtb3J5QWxsb2NhdG9yPihHaWdh
Y2FnZTo6SlNWYWx1ZSkpCiAgICAgLCBhdXhpbGlhcnlIZWFwQ2VsbFR5cGUobWFrZVVuaXF1ZTxI
ZWFwQ2VsbFR5cGU+KENlbGxBdHRyaWJ1dGVzKERvZXNOb3ROZWVkRGVzdHJ1Y3Rpb24sIEhlYXBD
ZWxsOjpBdXhpbGlhcnkpKSkKLSAgICAsIGltbXV0YWJsZUJ1dHRlcmZseUhlYXBDZWxsVHlwZSht
YWtlVW5pcXVlPEhlYXBDZWxsVHlwZT4oQ2VsbEF0dHJpYnV0ZXMoRG9lc05vdE5lZWREZXN0cnVj
dGlvbiwgSGVhcENlbGw6OkpTQ2VsbFdpdGhJbnRlcmlvclBvaW50ZXJzKSkpCisgICAgLCBpbW11
dGFibGVCdXR0ZXJmbHlIZWFwQ2VsbFR5cGUobWFrZVVuaXF1ZTxIZWFwQ2VsbFR5cGU+KENlbGxB
dHRyaWJ1dGVzKERvZXNOb3ROZWVkRGVzdHJ1Y3Rpb24sIEhlYXBDZWxsOjpKU0NlbGxXaXRoSW5k
ZXhpbmdIZWFkZXIpKSkKICAgICAsIGNlbGxIZWFwQ2VsbFR5cGUobWFrZVVuaXF1ZTxIZWFwQ2Vs
bFR5cGU+KENlbGxBdHRyaWJ1dGVzKERvZXNOb3ROZWVkRGVzdHJ1Y3Rpb24sIEhlYXBDZWxsOjpK
U0NlbGwpKSkKICAgICAsIGRlc3RydWN0aWJsZUNlbGxIZWFwQ2VsbFR5cGUobWFrZVVuaXF1ZTxI
ZWFwQ2VsbFR5cGU+KENlbGxBdHRyaWJ1dGVzKE5lZWRzRGVzdHJ1Y3Rpb24sIEhlYXBDZWxsOjpK
U0NlbGwpKSkKICAgICAsIGFwaUdsb2JhbE9iamVjdEhlYXBDZWxsVHlwZShJc29IZWFwQ2VsbFR5
cGU6OmNyZWF0ZTxKU0FQSUdsb2JhbE9iamVjdD4oKSkKQEAgLTMyMiw3ICszMjIsNyBAQCBWTTo6
Vk0oVk1UeXBlIHZtVHlwZSwgSGVhcFR5cGUgaGVhcFR5cGUpCiAjZW5kaWYKICAgICAsIHByaW1p
dGl2ZUdpZ2FjYWdlQXV4aWxpYXJ5U3BhY2UoIlByaW1pdGl2ZSBHaWdhY2FnZSBBdXhpbGlhcnki
LCBoZWFwLCBhdXhpbGlhcnlIZWFwQ2VsbFR5cGUuZ2V0KCksIHByaW1pdGl2ZUdpZ2FjYWdlQWxs
b2NhdG9yLmdldCgpKSAvLyBIYXNoOjB4M2U3Y2Q3NjIKICAgICAsIGpzVmFsdWVHaWdhY2FnZUF1
eGlsaWFyeVNwYWNlKCJKU1ZhbHVlIEdpZ2FjYWdlIEF1eGlsaWFyeSIsIGhlYXAsIGF1eGlsaWFy
eUhlYXBDZWxsVHlwZS5nZXQoKSwganNWYWx1ZUdpZ2FjYWdlQWxsb2NhdG9yLmdldCgpKSAvLyBI
YXNoOjB4MjQxZTk0NgotICAgICwgaW1tdXRhYmxlQnV0dGVyZmx5SlNWYWx1ZUdpZ2FjYWdlQXV4
aWxpYXJ5U3BhY2UoIkltbXV0YWJsZUJ1dHRlcmZseSBHaWdhY2FnZSBKU0NlbGxXaXRoSW50ZXJp
b3JQb2ludGVycyIsIGhlYXAsIGltbXV0YWJsZUJ1dHRlcmZseUhlYXBDZWxsVHlwZS5nZXQoKSwg
anNWYWx1ZUdpZ2FjYWdlQWxsb2NhdG9yLmdldCgpKSAvLyBIYXNoOjB4N2E5NDUzMDAKKyAgICAs
IGltbXV0YWJsZUJ1dHRlcmZseUpTVmFsdWVHaWdhY2FnZUF1eGlsaWFyeVNwYWNlKCJJbW11dGFi
bGVCdXR0ZXJmbHkgR2lnYWNhZ2UgSlNDZWxsV2l0aEluZGV4aW5nSGVhZGVyIiwgaGVhcCwgaW1t
dXRhYmxlQnV0dGVyZmx5SGVhcENlbGxUeXBlLmdldCgpLCBqc1ZhbHVlR2lnYWNhZ2VBbGxvY2F0
b3IuZ2V0KCkpIC8vIEhhc2g6MHg3YTk0NTMwMAogICAgICwgY2VsbFNwYWNlKCJKU0NlbGwiLCBo
ZWFwLCBjZWxsSGVhcENlbGxUeXBlLmdldCgpLCBmYXN0TWFsbG9jQWxsb2NhdG9yLmdldCgpKSAv
LyBIYXNoOjB4YWRmYjVhNzkKICAgICAsIHZhcmlhYmxlU2l6ZWRDZWxsU3BhY2UoIlZhcmlhYmxl
IFNpemVkIEpTQ2VsbCIsIGhlYXAsIGNlbGxIZWFwQ2VsbFR5cGUuZ2V0KCksIGZhc3RNYWxsb2NB
bGxvY2F0b3IuZ2V0KCkpIC8vIEhhc2g6MHhiY2Q3NjljYwogICAgICwgZGVzdHJ1Y3RpYmxlT2Jq
ZWN0U3BhY2UoIkpTRGVzdHJ1Y3RpYmxlT2JqZWN0IiwgaGVhcCwgZGVzdHJ1Y3RpYmxlT2JqZWN0
SGVhcENlbGxUeXBlLmdldCgpLCBmYXN0TWFsbG9jQWxsb2NhdG9yLmdldCgpKSAvLyBIYXNoOjB4
NGY1ZWQ3YTkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403089</attachid>
            <date>2020-06-29 11:10:58 -0700</date>
            <delta_ts>2020-06-29 12:07:31 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-213686-20200629111057.patch</filename>
            <type>text/plain</type>
            <size>9812</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzNTI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
MzU3NzE2ODQ4NTRlMzdmNDlhMzRlZTczOTMxNmVhZDQxZTM4MDkxLi4wNTVmOTg1YTBlNGIxN2Zk
MWFlYjQxMTBmY2Y1MmE3OWU1NjY2N2U1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAyMC0wNi0yOSAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBDb25zZXJ2YXRpdmVSb290cyBzaG91bGQgbWFyayBhbnkgY2VsbCBp
dCBmaW5kcyBhbiBpbnRlcmlvciBwb2ludGVyIHRvCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTM2ODYKKworICAgICAgICBSZXZpZXdlZCBieSBZdXN1
a2UgU3V6dWtpLgorCisgICAgICAgIEN1cnJlbnRseSwgaWYgQ29uc2VyYXRpdmVSb290cyBmaW5k
cyBhbiBpbnRlcmlvciBwb2ludGVyIHRvIGEgY2VsbAorICAgICAgICBpdCB3aWxsIG9ubHkgbWFy
ayB0aGF0IGNlbGwgaWYgaXQncyBhIGJ1dHRlcmZseSBvZiBzb21lCisgICAgICAgIGtpbmQuIEhv
d2V2ZXIsIHRoaXMgY2FuIGNhdXNlIHByb2JsZW1zIGlmIHRoZSBDKysgb3IgQjMgY29tcGlsZXJz
CisgICAgICAgIHByZS1jb21wdXRlIHRoZSBvZmZzZXQgb2Ygc29tZSBjZWxsIG1lbWJlciB0aGV5
IHdhbnQgdG8gbG9hZCBmcm9tCisgICAgICAgIGFmdGVyIGEgY2FsbC4gSWYgdGhpcyBoYXBwZW5z
IGFuZCB0aGF0IGludGVyaW9yIHBvaW50ZXIgaXMgdGhlCisgICAgICAgIG9ubHkgcmVmZXJlbmNl
IHRvIHRoZSBjZWxsIGl0IGNhbiBnZXQgY29sbGVjdGVkIHdoaWxlIGl0IGlzIHN0aWxsCisgICAg
ICAgICJhbGl2ZSIuCisKKyAgICAgICAgQSBuYWl2ZSBwYXRjaCB0aGF0IGRvZXNuJ3QgcmV0dXJu
IGZyb20KKyAgICAgICAgZmluZEdDT2JqZWN0UG9pbnRlcnNGb3JNYXJraW5nIGFmdGVyIGZpbmRp
bmcgYSBsaXZlIG5vbi1pbnRlcmlvciwKKyAgICAgICAgbm9uLWJ1dHRlcmZseSBjZWxsIHdhcyBh
IDIlIHJlZ3Jlc3Npb24gb24gU3BlZWRvbWV0ZXIyIGFuZAorICAgICAgICBKZXRTdHJlYW0yLiBT
bywgdGhpcyBwYXRjaCBpbW1lZGlhdGVseSByZXR1cm5zIGFmdGVyCisgICAgICAgIG1hcmtpbmcg
c29tZSBub24tYnV0dGVyZmx5IGNlbGwsIHdoaWNoIGFwcGVhcnMgdG8gaGF2ZSBmaXhlZCB0aGUK
KyAgICAgICAgcmVncmVzc2lvbiBsb2NhbGx5LiBHaXZlbiB0aGlzIHdhcyBzdWNoIGEgYmlnIHJl
Z3Jlc3Npb24gKGxpa2VseQorICAgICAgICBmcm9tIHJ1bm5pbmcgTWFya2VkQmxvY2s6OmlzTGl2
ZSkgbW9yZSB0aGFuIG9uY2UgdGhlcmUncyBwb3NzaWJseQorICAgICAgICBhbiBvcHRpbWl6YXRp
b24gb3Bwb3J0dW5pdHkgaGVyZS4gSSBmaWxlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEzNjg3IHRvIGludmVzdGlnYXRlCisgICAgICAgIGZ1cnRo
ZXIuCisKKyAgICAgICAgKiBoZWFwL0hlYXBDZWxsLmNwcDoKKyAgICAgICAgKFdURjo6cHJpbnRJ
bnRlcm5hbCk6CisgICAgICAgICogaGVhcC9IZWFwQ2VsbC5oOgorICAgICAgICAoSlNDOjppc0pT
Q2VsbEtpbmQpOgorICAgICAgICAoSlNDOjptYXlIYXZlSW5kZXhpbmdIZWFkZXIpOgorICAgICAg
ICAoSlNDOjpoYXNJbnRlcmlvclBvaW50ZXJzKTogRGVsZXRlZC4KKyAgICAgICAgKiBoZWFwL0hl
YXBVdGlsLmg6CisgICAgICAgIChKU0M6OkhlYXBVdGlsOjpmaW5kR0NPYmplY3RQb2ludGVyc0Zv
ck1hcmtpbmcpOgorICAgICAgICAqIGhlYXAvU2xvdFZpc2l0b3IuY3BwOgorICAgICAgICAoSlND
OjpTbG90VmlzaXRvcjo6YXBwZW5kSlNDZWxsT3JBdXhpbGlhcnkpOgorICAgICAgICAqIHJ1bnRp
bWUvVk0uY3BwOgorICAgICAgICAoSlNDOjpWTTo6Vk0pOgorCiAyMDIwLTA2LTI1ICBNYXJrIExh
bSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBKU0NlbGwgY29uc3RydWN0b3IgbmVl
ZHMgdG8gZW5zdXJlIHRoYXQgdGhlIHBhc3NlZCBpbiBzdHJ1Y3R1cmUgaXMgc3RpbGwgYWxpdmUu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5jcHAKaW5kZXggMjAwMDVkNjFhOTQ5
MjdkZTU2NzU3YTk1ZjBjMDlkM2VjMzgyMDkyMy4uY2I0NTc5Y2RhY2Y0NWU2Yjg1MWQ4NTQ2YWJl
MDRjODU0YTYzOTAwYyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVh
cENlbGwuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBDZWxsLmNwcApA
QCAtNTQsOCArNTQsOCBAQCB2b2lkIHByaW50SW50ZXJuYWwoUHJpbnRTdHJlYW0mIG91dCwgSGVh
cENlbGw6OktpbmQga2luZCkKICAgICBjYXNlIEhlYXBDZWxsOjpKU0NlbGw6CiAgICAgICAgIG91
dC5wcmludCgiSlNDZWxsIik7CiAgICAgICAgIHJldHVybjsKLSAgICBjYXNlIEhlYXBDZWxsOjpK
U0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczoKLSAgICAgICAgb3V0LnByaW50KCJKU0NlbGxXaXRo
SW50ZXJpb3JQb2ludGVycyIpOworICAgIGNhc2UgSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRleGlu
Z0hlYWRlcjoKKyAgICAgICAgb3V0LnByaW50KCJKU0NlbGxXaXRoSW5kZXhpbmdIZWFkZXIiKTsK
ICAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgSGVhcENlbGw6OkF1eGlsaWFyeToKICAgICAgICAg
b3V0LnByaW50KCJBdXhpbGlhcnkiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9oZWFwL0hlYXBDZWxsLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwQ2VsbC5o
CmluZGV4IDBhYTM1MmFmYTc0MTkyZmI2Mjc5MWI1NzQ2OWMzNTc0OTdjMTAzYTYuLmIyNjczNjY4
NmM5YTExM2Y4MjVlNTk1ZmI0MTQzOGRiODY2OGQ4OGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL0hlYXBDZWxsLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hl
YXAvSGVhcENlbGwuaApAQCAtNDIsNyArNDIsNyBAQCBjbGFzcyBIZWFwQ2VsbCB7CiBwdWJsaWM6
CiAgICAgZW51bSBLaW5kIDogaW50OF90IHsKICAgICAgICAgSlNDZWxsLAotICAgICAgICBKU0Nl
bGxXaXRoSW50ZXJpb3JQb2ludGVycywKKyAgICAgICAgSlNDZWxsV2l0aEluZGV4aW5nSGVhZGVy
LAogICAgICAgICBBdXhpbGlhcnkKICAgICB9OwogICAgIApAQCAtOTMsMTIgKzkzLDEyIEBAIHB1
YmxpYzoKIAogaW5saW5lIGJvb2wgaXNKU0NlbGxLaW5kKEhlYXBDZWxsOjpLaW5kIGtpbmQpCiB7
Ci0gICAgcmV0dXJuIGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbCB8fCBraW5kID09IEhlYXBDZWxs
OjpKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczsKKyAgICByZXR1cm4ga2luZCA9PSBIZWFwQ2Vs
bDo6SlNDZWxsIHx8IGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRleGluZ0hlYWRlcjsK
IH0KIAotaW5saW5lIGJvb2wgaGFzSW50ZXJpb3JQb2ludGVycyhIZWFwQ2VsbDo6S2luZCBraW5k
KQoraW5saW5lIGJvb2wgbWF5SGF2ZUluZGV4aW5nSGVhZGVyKEhlYXBDZWxsOjpLaW5kIGtpbmQp
CiB7Ci0gICAgcmV0dXJuIGtpbmQgPT0gSGVhcENlbGw6OkF1eGlsaWFyeSB8fCBraW5kID09IEhl
YXBDZWxsOjpKU0NlbGxXaXRoSW50ZXJpb3JQb2ludGVyczsKKyAgICByZXR1cm4ga2luZCA9PSBI
ZWFwQ2VsbDo6QXV4aWxpYXJ5IHx8IGtpbmQgPT0gSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRleGlu
Z0hlYWRlcjsKIH0KIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaGVhcC9IZWFwVXRpbC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
SGVhcFV0aWwuaAppbmRleCBlOWNkYzk2MGQ2MWI4YzM4YTI5OTgxMGVkZTFlNDI0YzYzZmI2ODU5
Li5kNmFhYzNlNDBiOTBmYTY3ZmMwNjUzMmNlZWIwZmJkNmI2M2EwOGZiIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVXRpbC5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL0hlYXBVdGlsLmgKQEAgLTg4LDcgKzg4LDcgQEAgcHVibGljOgogICAgICAg
ICAgICAgTWFya2VkQmxvY2sqIHByZXZpb3VzQ2FuZGlkYXRlID0gTWFya2VkQmxvY2s6OmJsb2Nr
Rm9yKHByZXZpb3VzUG9pbnRlcik7CiAgICAgICAgICAgICBpZiAoIWZpbHRlci5ydWxlT3V0KGJp
dHdpc2VfY2FzdDxCaXRzPihwcmV2aW91c0NhbmRpZGF0ZSkpCiAgICAgICAgICAgICAgICAgJiYg
c2V0LmNvbnRhaW5zKHByZXZpb3VzQ2FuZGlkYXRlKQotICAgICAgICAgICAgICAgICYmIGhhc0lu
dGVyaW9yUG9pbnRlcnMocHJldmlvdXNDYW5kaWRhdGUtPmhhbmRsZSgpLmNlbGxLaW5kKCkpKSB7
CisgICAgICAgICAgICAgICAgJiYgbWF5SGF2ZUluZGV4aW5nSGVhZGVyKHByZXZpb3VzQ2FuZGlk
YXRlLT5oYW5kbGUoKS5jZWxsS2luZCgpKSkgewogICAgICAgICAgICAgICAgIHByZXZpb3VzUG9p
bnRlciA9IHN0YXRpY19jYXN0PGNoYXIqPihwcmV2aW91c0NhbmRpZGF0ZS0+aGFuZGxlKCkuY2Vs
bEFsaWduKHByZXZpb3VzUG9pbnRlcikpOwogICAgICAgICAgICAgICAgIGlmIChwcmV2aW91c0Nh
bmRpZGF0ZS0+aGFuZGxlKCkuaXNMaXZlQ2VsbChtYXJraW5nVmVyc2lvbiwgbmV3bHlBbGxvY2F0
ZWRWZXJzaW9uLCBpc01hcmtpbmcsIHByZXZpb3VzUG9pbnRlcikpCiAgICAgICAgICAgICAgICAg
ICAgIGZ1bmMocHJldmlvdXNQb2ludGVyLCBwcmV2aW91c0NhbmRpZGF0ZS0+aGFuZGxlKCkuY2Vs
bEtpbmQoKSk7CkBAIC0xMDYsMjEgKzEwNiwyNyBAQCBwdWJsaWM6CiAgICAgICAgIEhlYXBDZWxs
OjpLaW5kIGNlbGxLaW5kID0gY2FuZGlkYXRlLT5oYW5kbGUoKS5jZWxsS2luZCgpOwogICAgICAg
ICAKICAgICAgICAgYXV0byB0cnlQb2ludGVyID0gWyZdICh2b2lkKiBwb2ludGVyKSB7Ci0gICAg
ICAgICAgICBpZiAoY2FuZGlkYXRlLT5oYW5kbGUoKS5pc0xpdmVDZWxsKG1hcmtpbmdWZXJzaW9u
LCBuZXdseUFsbG9jYXRlZFZlcnNpb24sIGlzTWFya2luZywgcG9pbnRlcikpCisgICAgICAgICAg
ICBib29sIGlzTGl2ZSA9IGNhbmRpZGF0ZS0+aGFuZGxlKCkuaXNMaXZlQ2VsbChtYXJraW5nVmVy
c2lvbiwgbmV3bHlBbGxvY2F0ZWRWZXJzaW9uLCBpc01hcmtpbmcsIHBvaW50ZXIpOworICAgICAg
ICAgICAgaWYgKGlzTGl2ZSkKICAgICAgICAgICAgICAgICBmdW5jKHBvaW50ZXIsIGNlbGxLaW5k
KTsKKyAgICAgICAgICAgIC8vIE9ubHkgcmV0dXJuIGVhcmx5IGlmIHdlIGFyZSBtYXJraW5nIGEg
bm9uLWJ1dHRlcmZseSwgc2luY2UgYnV0dGVyZmxpZXMgd2l0aG91dCBpbmRleGVkIHByb3BlcnRp
ZXMgY291bGQgcG9pbnQgcGFzdCB0aGUgZW5kIG9mIHRoZWlyIGFsbG9jYXRpb24uCisgICAgICAg
ICAgICAvLyBJZiB3ZSBkbywgYW5kIHRoZXJlIGlzIGFub3RoZXIgbGl2ZSBidXR0ZXJmbHkgaW1t
ZWRpYXRlbHkgZm9sbG93aW5nIHRoZSBmaXJzdCwgd2Ugd2lsbCBtYXJrIHRoZSBsYXR0ZXIgb25l
IGhlcmUgYnV0IHdlIHN0aWxsIG5lZWQgdG8KKyAgICAgICAgICAgIC8vIG1hcmsgdGhlIGZvcm1l
ci4KKyAgICAgICAgICAgIHJldHVybiBpc0xpdmUgJiYgIW1heUhhdmVJbmRleGluZ0hlYWRlcihj
ZWxsS2luZCk7CiAgICAgICAgIH07CiAgICAgCiAgICAgICAgIGlmIChpc0pTQ2VsbEtpbmQoY2Vs
bEtpbmQpKSB7Ci0gICAgICAgICAgICBpZiAoTWFya2VkQmxvY2s6OmlzQXRvbUFsaWduZWQocG9p
bnRlcikpCi0gICAgICAgICAgICAgICAgdHJ5UG9pbnRlcihwb2ludGVyKTsKLSAgICAgICAgICAg
IGlmICghaGFzSW50ZXJpb3JQb2ludGVycyhjZWxsS2luZCkpCi0gICAgICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICAgICAgaWYgKExJS0VMWShNYXJrZWRCbG9jazo6aXNBdG9tQWxpZ25lZChw
b2ludGVyKSkpIHsKKyAgICAgICAgICAgICAgICBpZiAodHJ5UG9pbnRlcihwb2ludGVyKSkKKyAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAg
Ci0gICAgICAgIC8vIEEgYnV0dGVyZmx5IGNvdWxkIHBvaW50IGludG8gdGhlIG1pZGRsZSBvZiBh
biBvYmplY3QuCisgICAgICAgIC8vIFdlIGNvdWxkIHBvaW50IGludG8gdGhlIG1pZGRsZSBvZiBh
biBvYmplY3QuCiAgICAgICAgIGNoYXIqIGFsaWduZWRQb2ludGVyID0gc3RhdGljX2Nhc3Q8Y2hh
cio+KGNhbmRpZGF0ZS0+aGFuZGxlKCkuY2VsbEFsaWduKHBvaW50ZXIpKTsKLSAgICAgICAgdHJ5
UG9pbnRlcihhbGlnbmVkUG9pbnRlcik7Ci0gICAgCisgICAgICAgIGlmICh0cnlQb2ludGVyKGFs
aWduZWRQb2ludGVyKSkKKyAgICAgICAgICAgIHJldHVybjsKKwogICAgICAgICAvLyBBbHNvLCBh
IGJ1dHRlcmZseSBjb3VsZCBwb2ludCBhdCB0aGUgZW5kIG9mIGFuIG9iamVjdCBwbHVzIHNpemVv
ZihJbmRleGluZ0hlYWRlcikuIEluIHRoYXQKICAgICAgICAgLy8gY2FzZSwgdGhpcyBpcyBwb2lu
dGluZyB0byB0aGUgb2JqZWN0IHRvIHRoZSByaWdodCBvZiB0aGUgb25lIHdlIHNob3VsZCBiZSBt
YXJraW5nLgogICAgICAgICBpZiAoY2FuZGlkYXRlLT5jYW5kaWRhdGVBdG9tTnVtYmVyKGFsaWdu
ZWRQb2ludGVyKSA+IDAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Ns
b3RWaXNpdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Nsb3RWaXNpdG9yLmNw
cAppbmRleCAwMDlkNTQ2MzEzOGZjZTllNzYyNjUyNjYyY2UwOWZkYzljMDBhMWJiLi5iZmRiZjQ0
MDIyYzRhNTYwMzM0ZTgwMDAxZWRiNDZlOGUyZTA4ZmJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaGVhcC9TbG90VmlzaXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvU2xvdFZpc2l0b3IuY3BwCkBAIC0yMDgsNyArMjA4LDcgQEAgdm9pZCBTbG90Vmlz
aXRvcjo6YXBwZW5kSlNDZWxsT3JBdXhpbGlhcnkoSGVhcENlbGwqIGhlYXBDZWxsKQogICAgIAog
ICAgIHN3aXRjaCAoaGVhcENlbGwtPmNlbGxLaW5kKCkpIHsKICAgICBjYXNlIEhlYXBDZWxsOjpK
U0NlbGw6Ci0gICAgY2FzZSBIZWFwQ2VsbDo6SlNDZWxsV2l0aEludGVyaW9yUG9pbnRlcnM6IHsK
KyAgICBjYXNlIEhlYXBDZWxsOjpKU0NlbGxXaXRoSW5kZXhpbmdIZWFkZXI6IHsKICAgICAgICAg
Ly8gV2UgaGF2ZSBhbXBsZSBidWRnZXQgdG8gcGVyZm9ybSB2YWxpZGF0aW9uIGhlcmUuCiAgICAg
CiAgICAgICAgIEpTQ2VsbCoganNDZWxsID0gc3RhdGljX2Nhc3Q8SlNDZWxsKj4oaGVhcENlbGwp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uY3BwCmluZGV4IDExNGJhOTc3MGJhNWE1NjUy
MmViNWJhMjg4ZDkyZjcwMDZlMjNiNjUuLjE2N2NmMGY1ZDlmY2ZiYzc3M2IwYzU1ZDcxYjIzY2Jh
NWZlNjJiNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5jcHAKQEAgLTI3NSw3ICsy
NzUsNyBAQCBWTTo6Vk0oVk1UeXBlIHZtVHlwZSwgSGVhcFR5cGUgaGVhcFR5cGUpCiAgICAgLCBw
cmltaXRpdmVHaWdhY2FnZUFsbG9jYXRvcihtYWtlVW5pcXVlPEdpZ2FjYWdlQWxpZ25lZE1lbW9y
eUFsbG9jYXRvcj4oR2lnYWNhZ2U6OlByaW1pdGl2ZSkpCiAgICAgLCBqc1ZhbHVlR2lnYWNhZ2VB
bGxvY2F0b3IobWFrZVVuaXF1ZTxHaWdhY2FnZUFsaWduZWRNZW1vcnlBbGxvY2F0b3I+KEdpZ2Fj
YWdlOjpKU1ZhbHVlKSkKICAgICAsIGF1eGlsaWFyeUhlYXBDZWxsVHlwZShtYWtlVW5pcXVlPEhl
YXBDZWxsVHlwZT4oQ2VsbEF0dHJpYnV0ZXMoRG9lc05vdE5lZWREZXN0cnVjdGlvbiwgSGVhcENl
bGw6OkF1eGlsaWFyeSkpKQotICAgICwgaW1tdXRhYmxlQnV0dGVyZmx5SGVhcENlbGxUeXBlKG1h
a2VVbmlxdWU8SGVhcENlbGxUeXBlPihDZWxsQXR0cmlidXRlcyhEb2VzTm90TmVlZERlc3RydWN0
aW9uLCBIZWFwQ2VsbDo6SlNDZWxsV2l0aEludGVyaW9yUG9pbnRlcnMpKSkKKyAgICAsIGltbXV0
YWJsZUJ1dHRlcmZseUhlYXBDZWxsVHlwZShtYWtlVW5pcXVlPEhlYXBDZWxsVHlwZT4oQ2VsbEF0
dHJpYnV0ZXMoRG9lc05vdE5lZWREZXN0cnVjdGlvbiwgSGVhcENlbGw6OkpTQ2VsbFdpdGhJbmRl
eGluZ0hlYWRlcikpKQogICAgICwgY2VsbEhlYXBDZWxsVHlwZShtYWtlVW5pcXVlPEhlYXBDZWxs
VHlwZT4oQ2VsbEF0dHJpYnV0ZXMoRG9lc05vdE5lZWREZXN0cnVjdGlvbiwgSGVhcENlbGw6OkpT
Q2VsbCkpKQogICAgICwgZGVzdHJ1Y3RpYmxlQ2VsbEhlYXBDZWxsVHlwZShtYWtlVW5pcXVlPEhl
YXBDZWxsVHlwZT4oQ2VsbEF0dHJpYnV0ZXMoTmVlZHNEZXN0cnVjdGlvbiwgSGVhcENlbGw6OkpT
Q2VsbCkpKQogICAgICwgYXBpR2xvYmFsT2JqZWN0SGVhcENlbGxUeXBlKElzb0hlYXBDZWxsVHlw
ZTo6Y3JlYXRlPEpTQVBJR2xvYmFsT2JqZWN0PigpKQpAQCAtMzIyLDcgKzMyMiw3IEBAIFZNOjpW
TShWTVR5cGUgdm1UeXBlLCBIZWFwVHlwZSBoZWFwVHlwZSkKICNlbmRpZgogICAgICwgcHJpbWl0
aXZlR2lnYWNhZ2VBdXhpbGlhcnlTcGFjZSgiUHJpbWl0aXZlIEdpZ2FjYWdlIEF1eGlsaWFyeSIs
IGhlYXAsIGF1eGlsaWFyeUhlYXBDZWxsVHlwZS5nZXQoKSwgcHJpbWl0aXZlR2lnYWNhZ2VBbGxv
Y2F0b3IuZ2V0KCkpIC8vIEhhc2g6MHgzZTdjZDc2MgogICAgICwganNWYWx1ZUdpZ2FjYWdlQXV4
aWxpYXJ5U3BhY2UoIkpTVmFsdWUgR2lnYWNhZ2UgQXV4aWxpYXJ5IiwgaGVhcCwgYXV4aWxpYXJ5
SGVhcENlbGxUeXBlLmdldCgpLCBqc1ZhbHVlR2lnYWNhZ2VBbGxvY2F0b3IuZ2V0KCkpIC8vIEhh
c2g6MHgyNDFlOTQ2Ci0gICAgLCBpbW11dGFibGVCdXR0ZXJmbHlKU1ZhbHVlR2lnYWNhZ2VBdXhp
bGlhcnlTcGFjZSgiSW1tdXRhYmxlQnV0dGVyZmx5IEdpZ2FjYWdlIEpTQ2VsbFdpdGhJbnRlcmlv
clBvaW50ZXJzIiwgaGVhcCwgaW1tdXRhYmxlQnV0dGVyZmx5SGVhcENlbGxUeXBlLmdldCgpLCBq
c1ZhbHVlR2lnYWNhZ2VBbGxvY2F0b3IuZ2V0KCkpIC8vIEhhc2g6MHg3YTk0NTMwMAorICAgICwg
aW1tdXRhYmxlQnV0dGVyZmx5SlNWYWx1ZUdpZ2FjYWdlQXV4aWxpYXJ5U3BhY2UoIkltbXV0YWJs
ZUJ1dHRlcmZseSBHaWdhY2FnZSBKU0NlbGxXaXRoSW5kZXhpbmdIZWFkZXIiLCBoZWFwLCBpbW11
dGFibGVCdXR0ZXJmbHlIZWFwQ2VsbFR5cGUuZ2V0KCksIGpzVmFsdWVHaWdhY2FnZUFsbG9jYXRv
ci5nZXQoKSkgLy8gSGFzaDoweDdhOTQ1MzAwCiAgICAgLCBjZWxsU3BhY2UoIkpTQ2VsbCIsIGhl
YXAsIGNlbGxIZWFwQ2VsbFR5cGUuZ2V0KCksIGZhc3RNYWxsb2NBbGxvY2F0b3IuZ2V0KCkpIC8v
IEhhc2g6MHhhZGZiNWE3OQogICAgICwgdmFyaWFibGVTaXplZENlbGxTcGFjZSgiVmFyaWFibGUg
U2l6ZWQgSlNDZWxsIiwgaGVhcCwgY2VsbEhlYXBDZWxsVHlwZS5nZXQoKSwgZmFzdE1hbGxvY0Fs
bG9jYXRvci5nZXQoKSkgLy8gSGFzaDoweGJjZDc2OWNjCiAgICAgLCBkZXN0cnVjdGlibGVPYmpl
Y3RTcGFjZSgiSlNEZXN0cnVjdGlibGVPYmplY3QiLCBoZWFwLCBkZXN0cnVjdGlibGVPYmplY3RI
ZWFwQ2VsbFR5cGUuZ2V0KCksIGZhc3RNYWxsb2NBbGxvY2F0b3IuZ2V0KCkpIC8vIEhhc2g6MHg0
ZjVlZDdhOQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>