<?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>189227</bug_id>
          
          <creation_ts>2018-09-01 22:59:00 -0700</creation_ts>
          <short_desc>The watchdog sometimes fails to terminate a script.</short_desc>
          <delta_ts>2018-09-03 19:48:21 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fpizlo</cc>
    
    <cc>keith_miller</cc>
    
    <cc>msaboff</cc>
    
    <cc>rmorisset</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1456019</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-09-01 22:59:00 -0700</bug_when>
    <thetext>&lt;rdar://problem/39932857&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456020</commentid>
    <comment_count>1</comment_count>
      <attachid>348728</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-09-01 23:38:19 -0700</bug_when>
    <thetext>Created attachment 348728
proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456023</commentid>
    <comment_count>2</comment_count>
      <attachid>348728</attachid>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-09-02 01:02:47 -0700</bug_when>
    <thetext>Comment on attachment 348728
proposed patch.

Attachment 348728 did not pass jsc-ews (mac):
Output: https://webkit-queues.webkit.org/results/9067847

New failing tests:
stress/regress-189227-watchdog-on-infinite-loop.js.dfg-eager
stress/regress-189227-watchdog-on-infinite-loop.js.default
stress/regress-189227-watchdog-on-infinite-loop.js.ftl-no-cjit-small-pool
stress/regress-189227-watchdog-on-infinite-loop.js.ftl-eager-no-cjit-b3o1
stress/regress-189227-watchdog-on-infinite-loop.js.ftl-no-cjit-validate-sampling-profiler
stress/regress-189227-watchdog-on-infinite-loop.js.ftl-eager-no-cjit
stress/regress-189227-watchdog-on-infinite-loop.js.no-ftl
stress/regress-189227-watchdog-on-infinite-loop.js.dfg-eager-no-cjit-validate
stress/regress-189227-watchdog-on-infinite-loop.js.no-cjit-collect-continuously
stress/regress-189227-watchdog-on-infinite-loop.js.ftl-no-cjit-b3o1
stress/regress-189227-watchdog-on-infinite-loop.js.no-cjit-validate-phases
stress/regress-189227-watchdog-on-infinite-loop.js.no-llint
stress/regress-189227-watchdog-on-infinite-loop.js.ftl-no-cjit-no-inline-validate
stress/regress-189227-watchdog-on-infinite-loop.js.ftl-no-cjit-no-put-stack-validate
apiTests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456041</commentid>
    <comment_count>3</comment_count>
      <attachid>348728</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2018-09-02 09:13:40 -0700</bug_when>
    <thetext>Comment on attachment 348728
proposed patch.

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

&gt; Source/JavaScriptCore/dfg/DFGOperations.cpp:2853
&gt; +    if (UNLIKELY(vm.needTrapHandling()))

If you make CheckTraps exit to check_traps, you won’t need this code</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456044</commentid>
    <comment_count>4</comment_count>
      <attachid>348733</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-09-02 09:18:29 -0700</bug_when>
    <thetext>Created attachment 348733
proposed patch.

Adjusted test heuristics to hopefully eliminate flakiness.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456068</commentid>
    <comment_count>5</comment_count>
      <attachid>348733</attachid>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-09-02 10:48:01 -0700</bug_when>
    <thetext>Comment on attachment 348733
proposed patch.

Attachment 348733 did not pass jsc-ews (mac):
Output: https://webkit-queues.webkit.org/results/9071026

New failing tests:
stress/regress-189227-watchdog-on-infinite-loop.js.dfg-eager
stress/regress-189227-watchdog-on-infinite-loop.js.dfg-eager-no-cjit-validate
stress/regress-189227-watchdog-on-infinite-loop.js.ftl-no-cjit-small-pool
stress/regress-189227-watchdog-on-infinite-loop.js.ftl-eager-no-cjit-b3o1
stress/regress-189227-watchdog-on-infinite-loop.js.no-cjit-validate-phases
stress/regress-189227-watchdog-on-infinite-loop.js.no-ftl
stress/regress-189227-watchdog-on-infinite-loop.js.no-cjit-collect-continuously
stress/regress-189227-watchdog-on-infinite-loop.js.ftl-no-cjit-b3o1
stress/regress-189227-watchdog-on-infinite-loop.js.no-llint
stress/regress-189227-watchdog-on-infinite-loop.js.ftl-no-cjit-no-inline-validate
stress/regress-189227-watchdog-on-infinite-loop.js.ftl-no-cjit-no-put-stack-validate
apiTests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456073</commentid>
    <comment_count>6</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2018-09-02 11:46:26 -0700</bug_when>
    <thetext>Are you going to make the change where you fix how check_traps is lowered in the bytecode parser?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456078</commentid>
    <comment_count>7</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-09-02 11:59:24 -0700</bug_when>
    <thetext>(In reply to Saam Barati from comment #6)
&gt; Are you going to make the change where you fix how check_traps is lowered in
&gt; the bytecode parser?

Yes, I should take this patch out of review</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456202</commentid>
    <comment_count>8</comment_count>
      <attachid>348785</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-09-03 11:40:23 -0700</bug_when>
    <thetext>Created attachment 348785
proposed patch.

Let&apos;s get some EWS testing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456206</commentid>
    <comment_count>9</comment_count>
      <attachid>348785</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-09-03 12:27:16 -0700</bug_when>
    <thetext>Comment on attachment 348785
proposed patch.

The EWS is still consistently reproducing a failure on the new test.  I&apos;m going to investigate this first.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456207</commentid>
    <comment_count>10</comment_count>
      <attachid>348786</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-09-03 13:01:48 -0700</bug_when>
    <thetext>Created attachment 348786
proposed patch.

Looks like the issue is that on some bots, the watchdog thread can&apos;t get a time slice before the main thread runs to completion.  Let&apos;s make the test timeout ridiculously large to give it adequate margin.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456210</commentid>
    <comment_count>11</comment_count>
      <attachid>348786</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-09-03 13:07:00 -0700</bug_when>
    <thetext>Comment on attachment 348786
proposed patch.

This margin is still insufficient.  In the end, I cannot make this test not racy.  I have to make the test a true infinite loop and rely on the jsc test harness to timeout the test if it hangs.  New patch coming soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456211</commentid>
    <comment_count>12</comment_count>
      <attachid>348787</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-09-03 13:08:11 -0700</bug_when>
    <thetext>Created attachment 348787
proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456224</commentid>
    <comment_count>13</comment_count>
      <attachid>348787</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2018-09-03 16:04:13 -0700</bug_when>
    <thetext>Comment on attachment 348787
proposed patch.

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

&gt; Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp:3967
&gt; +        compileCheckTraps(node);

You should also call noResult here just for ensuring good style in case CheckTraps ever gets any child nodes

&gt; Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp:4448
&gt; +        compileCheckTraps(node);

Ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456225</commentid>
    <comment_count>14</comment_count>
      <attachid>348787</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-09-03 16:15:13 -0700</bug_when>
    <thetext>Comment on attachment 348787
proposed patch.

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

Thanks for the review.

&gt;&gt; Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp:3967
&gt;&gt; +        compileCheckTraps(node);
&gt; 
&gt; You should also call noResult here just for ensuring good style in case CheckTraps ever gets any child nodes

I&apos;ll add the noResult(node) call to the implementation of compileCheckTraps().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456226</commentid>
    <comment_count>15</comment_count>
      <attachid>348794</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-09-03 16:15:54 -0700</bug_when>
    <thetext>Created attachment 348794
patch for landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456248</commentid>
    <comment_count>16</comment_count>
      <attachid>348794</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-03 19:48:20 -0700</bug_when>
    <thetext>Comment on attachment 348794
patch for landing.

Clearing flags on attachment: 348794

Committed r235605: &lt;https://trac.webkit.org/changeset/235605&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456249</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-03 19:48:21 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348728</attachid>
            <date>2018-09-01 23:38:19 -0700</date>
            <delta_ts>2018-09-02 09:18:29 -0700</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-189227.patch</filename>
            <type>text/plain</type>
            <size>8060</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyMzU1ODgpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEzIEBACisyMDE4LTA5LTAxICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNv
bT4KKworICAgICAgICBUaGUgd2F0Y2hkb2cgc29tZXRpbWVzIGZhaWxzIHRvIHRlcm1pbmF0ZSBh
IHNjcmlwdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE4OTIyNworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzk5MzI4NTc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvcmVncmVzcy0xODky
Mjctd2F0Y2hkb2ctb24taW5maW5pdGUtbG9vcC5qczogQWRkZWQuCisKIDIwMTgtMDgtMjQgIFl1
c3VrZSBTdXp1a2kgIDx5dXN1a2VzdXp1a2lAc2xvd3N0YXJ0Lm9yZz4KIAogICAgICAgICBGdW5j
dGlvbiBvYmplY3Qgc2hvdWxkIGNvbnZlcnQgcGFyYW1zIHRvIHN0cmluZyBiZWZvcmUgdGhyb3cg
YSBwYXJzaW5nIGVycm9yCkluZGV4OiBKU1Rlc3RzL3N0cmVzcy9yZWdyZXNzLTE4OTIyNy13YXRj
aGRvZy1vbi1pbmZpbml0ZS1sb29wLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvc3RyZXNzL3Jl
Z3Jlc3MtMTg5MjI3LXdhdGNoZG9nLW9uLWluZmluaXRlLWxvb3AuanMJKG5vbmV4aXN0ZW50KQor
KysgSlNUZXN0cy9zdHJlc3MvcmVncmVzcy0xODkyMjctd2F0Y2hkb2ctb24taW5maW5pdGUtbG9v
cC5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDcgQEAKKy8vQCByZXF1aXJlT3B0aW9ucygi
LS13YXRjaGRvZz0yMCIsICItLWppdFBvbGljeVNjYWxlPTAiLCAiLS13YXRjaGRvZy1leGNlcHRp
b24tb2siKQordmFyIHggPSAyMDAwMDAwOword2hpbGUoeCkgeworICAgIHgtLTsKK30KKwordGhy
b3cgIkZBSUwiOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzU1ODgp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsNzMgQEAKKzIwMTgtMDktMDEgIE1hcmsgTGFtICA8bWFyay5sYW1AYXBwbGUuY29tPgor
CisgICAgICAgIFRoZSB3YXRjaGRvZyBzb21ldGltZXMgZmFpbHMgdG8gdGVybWluYXRlIGEgc2Ny
aXB0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg5
MjI3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zOTkzMjg1Nz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb25zaWRlciB0aGUgZm9sbG93aW5nIHNj
ZW5hcmlvOgorCisgICAgICAgIDEuIFdlIGhhdmUgYW4gaW5maW5pdGUgbG9vcCBieXRlY29kZSBz
ZXF1ZW5jZSBhcyBmb2xsb3dzOgorCisgICAgICAgICAgICBbICAxM10gbG9vcF9oaW50CisgICAg
ICAgICAgICBbICAxNF0gY2hlY2tfdHJhcHMKKyAgICAgICAgICAgIFsgIDE1XSBqbXAgICAgICAg
ICAgICAgICAtMigtPjEzKQorCisgICAgICAgIDIuIFRoZSBWTSB0aWVycyB1cCBmcm9tIExMSW50
IC0+IEJhc2VsaW5lSklUIC0+IERGRyAtPiBGVEwuCisKKyAgICAgICAgICAgTm90ZSB0aGF0IG9w
X2NoZWNrX3RyYXBzIGlzIHJlcHJlc2VudGVkIGFzIGEgQ2hlY2tUcmFwcyBub2RlIGluIHRoZSBE
RkcgYW5kIEZUTC4KKyAgICAgICAgICAgV2hlbiB3ZSdyZSBub3QgdXNpbmcgcG9sbGluZ1RyYXBz
IChKU0NfdXNlUG9sbGluZ1RyYXBzIGlzIGZhbHNlIGJ5IGRlZmF1bHQpLAorICAgICAgICAgICB3
ZSBlbWl0IG5vIGNvZGUgZm9yIENoZWNrVHJhcHMsIGJ1dCBvbmx5IHJlY29yZCBhbiBJbnZhbGlk
YXRpb25Qb2ludCB0aGVyZS4KKworICAgICAgICAzLiBUaGUgd2F0Y2hkb2cgZmlyZXMsIGFuZCBp
bnZhbGlkYXRlcyBhbGwgSW52YWxpZGF0aW9uUG9pbnRzIGluIHRoZSBGVEwgQ29kZUJsb2NrLgor
CisgICAgICAgICAgIEludmFsaWRhdGlvblBvaW50cyBPU1IgZXhpdHMgdG8gdGhlIG5leHQgaW5z
dHJ1Y3Rpb24gYnkgZGVzaWduLiAgSW4gdGhpcyBjYXNlLAorICAgICAgICAgICB0aGF0IG1lYW5z
IHRoZSBWTSB3aWxsIHJlc3VtZXMgZXhlY3V0aW5nIGF0IHRoZSBvcF9qbXAsIHdoaWNoIGp1bXBz
IHRvIHRoZQorICAgICAgICAgICBvcF9sb29wX2hpbnQgb3Bjb2RlLiAgQXQgdGhlIGxvb3BfaGlu
dCwgdGhlIFZNIGRpc2NvdmVycyB0aGF0IHRoZSBmdW5jdGlvbiBpcworICAgICAgICAgICBhbHJl
YWR5IGhvdCwgYW5kIGF0dGVtcHRzIHRvIHRpZXIgdXAuICBJdCBpbW1lZGlhdGVseSBkaXNjb3Zl
cnMgdGhhdCBhIHJlcGxhY2VtZW50CisgICAgICAgICAgIENvZGVCbG9jayBpcyBhdmFpbGFibGUg
YmVjYXVzZSB3ZSBzdGlsbCBoYXZlbid0IGpldHRpc29uZWQgdGhlIERGRyBDb2RlQmxvY2sKKyAg
ICAgICAgICAgbm9yIHRoZSBGVEwgQ29kZUJsb2NrIHRoYXQgd2FzIHByZXZpb3VzbHkgY29tcGls
ZWQgZm9yIHRoaXMgZnVuY3Rpb24uCisKKyAgICAgICAgICAgTm90ZSB0aGF0IGpldHRpc29uaW5n
IGEgQ29kZUJsb2NrIG5lY2Vzc2FyaWx5IG1lYW5zIHRoZSBWTSB3aWxsIGludmFsaWRhdGUKKyAg
ICAgICAgICAgaXRzIEludmFsaWRhdGlvblBvaW50cyAoaWYgdGhlIENvZGVCbG9jayBpcyBERkcv
RlRMKS4gIEhvd2V2ZXIsIHRoZSByZXZlcnNlCisgICAgICAgICAgIGlzIG5vdCB0cnVlOiBtZXJl
bHkgaW52YWxpZGF0aW5nIHRoZSBJbnZhbGlkYXRpb25Qb2ludHMgZG9lcyBub3QgbmVjZXNzYXJp
bHkKKyAgICAgICAgICAgbWVhbiB0aGF0IHRoZSBDb2RlQmxvY2sgaXMgamV0dGlzb25lZC4KKwor
ICAgICAgICAgICBWTVRyYXBzOjp0cnlJbnN0YWxsVHJhcEJyZWFrcG9pbnRzKCkgcnVucyBmcm9t
IGEgc2VwYXJhdGUgdGhyZWFkLiAgSGVuY2UsCisgICAgICAgICAgIGl0IGlzIG9ubHkgc2FmZSBm
b3IgaXQgdG8gaW52YWxpZGF0ZSBhIENvZGVCbG9jaydzIEludmFsaWRhdGlvblBvaW50cy4gIEl0
CisgICAgICAgICAgIGlzIG5vdCBzYWZlIGZvciB0aGUgQ29kZUJsb2NrIHRvIGJlIGpldHRpc29u
ZWQgZnJvbSBhbm90aGVyIHRocmVhZC4gIEluc3RlYWQsCisgICAgICAgICAgIHRoZSBWTVRyYXBz
IG1lY2hhbmlzbSByZWxpZXMgb24gdGhlIHNjcmlwdCB0aHJlYWQgcnVubmluZyB0byBhbiBvcF9j
aGVja190cmFwcworICAgICAgICAgICBpbiB0aGUgYmFzZWxpbmUgSklUIGNvZGUgd2hlcmUgaXQg
d2lsbCBkbyB0aGUgbmVjZXNzYXJ5IGpldHRpc29uaW5nIG9mIG9wdGltaXplZAorICAgICAgICAg
ICBDb2RlQmxvY2tzLgorCisgICAgICAgIFNpbmNlIHRoZSBvcF9jaGVja190cmFwcyBuZXZlciBn
ZXQgZXhlY3V0ZWQsIHRoZSBWTSB3aWxsIHBlcnBldHVhbGx5IHRpZXIgdXAgaW4KKyAgICAgICAg
dGhlIG9wX2xvb3BfaGludCwgT1NSIGV4aXQgdG8gdGhlIG9wX2ptcCwganVtcCB0byB0aGUgb3Bf
bG9vcF9oaW50LCBhbmQgcmVwZWF0LgorICAgICAgICBDb25zZXF1ZW50bHksIHRoZSB3YXRjaGRv
ZyBmYWlscyB0byB0ZXJtaW5hdGUgdGhpcyBzY3JpcHQuCisKKyAgICAgICAgSW4gdGhpcyBwYXRj
aCwgd2UgZml4IHRoaXMgYnkgYWRkaW5nIHZtLm5lZWRUcmFwSGFuZGxpbmcoKSBjaGVja3MgaW4g
dGhlIGJhc2VsaW5lCisgICAgICAgIEpJVCdzIG9wZXJhdGlvbk9wdGltaXplKCkgYW5kIHRoZSBE
RkcncyB0cmlnZ2VyUmVvcHRpbWl6YXRpb25Ob3coKS4gIElmCisgICAgICAgIHZtLm5lZWRUcmFw
SGFuZGxpbmcoKSBpcyB0cnVlLCB0aGV5IHdlIGNob29zZSBub3QgdG8gdGllciB1cC4KKworICAg
ICAgICBUaGUgY2hlY2sgaXMgbm90IHN0cmljdGx5IG5lZWRlZCBpbiB0cmlnZ2VyUmVvcHRpbWl6
YXRpb25Ob3coKS4gIEhvd2V2ZXIsIGlmIHRoZQorICAgICAgICBWTSBuZWVkcyB0cmFwIGhhbmRs
aW5nLCBhbnkgb3B0aW1pemVkIGNvZGUgd2lsbCBwcm9iYWJseSBoYXZlIHRvIGJlIGludmFsaWRh
dGVkCisgICAgICAgIGFueXdheSBpbiBvcmRlciB0byBoYW5kbGUgdGhlIHRyYXAuICBTbywgdGhl
cmUncyBubyBwb2ludCBpbiBhbGxvd2luZyB0aGUgdGllcgorICAgICAgICB1cCB1bnRpbCB3ZSdy
ZSBkb25lIGhhbmRsaW5nIHRoZSB0cmFwLiAgTm90ZSB0aGF0IHdlIGRvbid0IG5lZWQgdG8gYmFj
ayBvZmYgdGhlCisgICAgICAgIG9wdGltaXphdGlvbiBhdHRlbXB0IGZvciBhIHdoaWxlLiAgVGhp
cyBpcyBiZWNhdXNlIHdlIGV4cGVjdCB0aGUgdHJhcCB0byBiZQorICAgICAgICBjaGVja2VkIGlt
bWluZW50bHkuICBUaGVyZWFmdGVyLCB3ZSBzaG91bGQgYmUgYWxsb3dlZCB0byBvcHRpbWl6ZSBh
bmQgdGllciB1cAorICAgICAgICBpbW1lZGlhdGVseSBpZiBleGVjdXRpb24gaXMgcGVybWl0dGVk
IHRvIGNvbnRpbnVlLgorCisgICAgICAgIEluIHRoaXMgcGF0Y2gsIHdlIGFsc28gY2hhbmdlIFZN
VHJhcHM6OnRyeUluc3RhbGxUcmFwQnJlYWtwb2ludHMoKSB0byB1c2UKKyAgICAgICAgQ2FsbEZy
YW1lOjp1bnNhZmVDb2RlQmxvY2soKSBpbnN0ZWFkIG9mIENhbGxGcmFtZTo6Y29kZUJsb2NrKCku
ICBUaGlzIGlzIGJlY2F1c2UKKyAgICAgICAgd2UgZG9uJ3QgcmVhbGx5IGtub3cgaWYgdGhlIGZy
YW1lIGlzIHByb3Blcmx5IHNldCB1cC4gIFdlJ3JlIGp1c3QgY29uc2VydmF0aXZlbHkKKyAgICAg
ICAgcHJvYmluZyB0aGUgc3RhY2suICBBU0FOIGRvZXMgbm90IGxpa2UgdGhpcyBwcm9iaW5nLiAg
VXNpbmcgdW5zYWZlQ29kZUJsb2NrKCkgaGVyZQorICAgICAgICB3aWxsIHN1cHByZXNzIHRoZSBm
YWxzZSBwb3NpdGl2ZSBBU0FOIGNvbXBsYWludC4KKworICAgICAgICAqIGRmZy9ERkdPcGVyYXRp
b25zLmNwcDoKKyAgICAgICAgKiBqaXQvSklUT3BlcmF0aW9ucy5jcHA6CisgICAgICAgICogcnVu
dGltZS9WTVRyYXBzLmNwcDoKKyAgICAgICAgKEpTQzo6Vk1UcmFwczo6dHJ5SW5zdGFsbFRyYXBC
cmVha3BvaW50cyk6CisKIDIwMTgtMDgtMjQgIFl1c3VrZSBTdXp1a2kgIDx5dXN1a2VzdXp1a2lA
c2xvd3N0YXJ0Lm9yZz4KIAogICAgICAgICBGdW5jdGlvbiBvYmplY3Qgc2hvdWxkIGNvbnZlcnQg
cGFyYW1zIHRvIHN0cmluZyBiZWZvcmUgdGhyb3cgYSBwYXJzaW5nIGVycm9yCkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhdGlvbnMuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAJKHJldmlzaW9uIDIzNTU2
MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTI4NDksOSArMjg0OSwxMyBAQCBleHRlcm4gIkMiIHZvaWQgSklUX09QRVJB
VElPTiB0cmlnZ2VyUmVvCiB7CiAgICAgLy8gSXQncyBzb3J0IG9mIHByZWZlcmFibGUgdGhhdCB3
ZSBkb24ndCBHQyB3aGlsZSBpbiBoZXJlLiBBbnl3YXlzLCBkb2luZyBzbyB3b3VsZG4ndAogICAg
IC8vIHJlYWxseSBiZSBwcm9maXRhYmxlLgotICAgIERlZmVyR0NGb3JBV2hpbGUgZGVmZXJHQyhj
b2RlQmxvY2stPnZtKCktPmhlYXApOwotICAgIAotICAgIHNhbml0aXplU3RhY2tGb3JWTShjb2Rl
QmxvY2stPnZtKCkpOworICAgIFZNJiB2bSA9ICpjb2RlQmxvY2stPnZtKCk7CisgICAgaWYgKFVO
TElLRUxZKHZtLm5lZWRUcmFwSGFuZGxpbmcoKSkpCisgICAgICAgIHJldHVybjsgLy8gQ2hvb3Nl
IG5vdCB0byBvcHRpbWl6ZS4KKworICAgIERlZmVyR0NGb3JBV2hpbGUgZGVmZXJHQyh2bS5oZWFw
KTsKKworICAgIHNhbml0aXplU3RhY2tGb3JWTSgmdm0pOwogCiAgICAgaWYgKE9wdGlvbnM6OnZl
cmJvc2VPU1IoKSkKICAgICAgICAgZGF0YUxvZygqY29kZUJsb2NrLCAiOiBFbnRlcmVkIHJlb3B0
aW1pemVcbiIpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRPcGVyYXRpb25z
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9wZXJhdGlv
bnMuY3BwCShyZXZpc2lvbiAyMzU1NjApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJ
VE9wZXJhdGlvbnMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMzgwLDYgKzEzODAsOSBAQCBTbG93
UGF0aFJldHVyblR5cGUgSklUX09QRVJBVElPTiBvcGVyYXRpCiAgICAgVk0mIHZtID0gZXhlYy0+
dm0oKTsKICAgICBOYXRpdmVDYWxsRnJhbWVUcmFjZXIgdHJhY2VyKCZ2bSwgZXhlYyk7CiAKKyAg
ICBpZiAoVU5MSUtFTFkodm0ubmVlZFRyYXBIYW5kbGluZygpKSkKKyAgICAgICAgcmV0dXJuIGVu
Y29kZVJlc3VsdCgwLCAwKTsgLy8gQ2hvb3NlIG5vdCB0byBvcHRpbWl6ZS4KKwogICAgIC8vIERl
ZmVyIEdDIGZvciBhIHdoaWxlIHNvIHRoYXQgaXQgZG9lc24ndCBydW4gYmV0d2VlbiB3aGVuIHdl
IGVudGVyIGludG8gdGhpcwogICAgIC8vIHNsb3cgcGF0aCBhbmQgd2hlbiB3ZSBmaWd1cmUgb3V0
IHRoZSBzdGF0ZSBvZiBvdXIgY29kZSBibG9jay4gVGhpcyBwcmV2ZW50cwogICAgIC8vIGEgbnVt
YmVyIG9mIGF3a3dhcmQgcmVlbnRyYW5jeSBzY2VuYXJpb3MsIGluY2x1ZGluZzoKQEAgLTEzOTUs
NyArMTM5OCw3IEBAIFNsb3dQYXRoUmV0dXJuVHlwZSBKSVRfT1BFUkFUSU9OIG9wZXJhdGkKICAg
ICAvLyB0aGF0IGNhc2Ugd2Ugd291bGQgaGF2ZSBhbHJlYWR5IHBsYW50ZWQgdGhlIG9wdGltaXpl
ZCBjb2RlIGJsb2NrIGludG8gdGhlIEpTCiAgICAgLy8gc3RhY2suCiAgICAgRGVmZXJHQ0ZvckFX
aGlsZSBkZWZlckdDKHZtLmhlYXApOwotICAgIAorCiAgICAgQ29kZUJsb2NrKiBjb2RlQmxvY2sg
PSBleGVjLT5jb2RlQmxvY2soKTsKICAgICBpZiAoVU5MSUtFTFkoY29kZUJsb2NrLT5qaXRUeXBl
KCkgIT0gSklUQ29kZTo6QmFzZWxpbmVKSVQpKSB7CiAgICAgICAgIGRhdGFMb2coIlVuZXhwZWN0
ZWQgY29kZSBibG9jayBpbiBCYXNlbGluZS0+REZHIHRpZXItdXA6ICIsICpjb2RlQmxvY2ssICJc
biIpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk1UcmFwcy5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk1UcmFwcy5jcHAJKHJl
dmlzaW9uIDIzNTU2MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNVHJhcHMu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjYsNyArMTI2LDcgQEAgdm9pZCBWTVRyYXBzOjp0cnlJ
bnN0YWxsVHJhcEJyZWFrcG9pbnRzKAogICAgICAgICBpZiAoIWlzU2FuZUZyYW1lKGNhbGxGcmFt
ZSwgY2FsbGVlRnJhbWUsIGVudHJ5RnJhbWUsIHN0YWNrQm91bmRzKSkKICAgICAgICAgICAgIHJl
dHVybjsgLy8gTGV0IHRoZSBTaWduYWxTZW5kZXIgdHJ5IGFnYWluIGxhdGVyLgogCi0gICAgICAg
IENvZGVCbG9jayogY2FuZGlkYXRlQ29kZUJsb2NrID0gY2FsbEZyYW1lLT5jb2RlQmxvY2soKTsK
KyAgICAgICAgQ29kZUJsb2NrKiBjYW5kaWRhdGVDb2RlQmxvY2sgPSBjYWxsRnJhbWUtPnVuc2Fm
ZUNvZGVCbG9jaygpOwogICAgICAgICBpZiAoY2FuZGlkYXRlQ29kZUJsb2NrICYmIHZtLmhlYXAu
Y29kZUJsb2NrU2V0KCkuY29udGFpbnMoY29kZUJsb2NrU2V0TG9ja2VyLCBjYW5kaWRhdGVDb2Rl
QmxvY2spKSB7CiAgICAgICAgICAgICBmb3VuZENvZGVCbG9jayA9IGNhbmRpZGF0ZUNvZGVCbG9j
azsKICAgICAgICAgICAgIGJyZWFrOwo=
</data>
<flag name="commit-queue"
          id="366334"
          type_id="3"
          status="-"
          setter="ews-watchlist"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348733</attachid>
            <date>2018-09-02 09:18:29 -0700</date>
            <delta_ts>2018-09-03 11:40:23 -0700</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-189227.patch</filename>
            <type>text/plain</type>
            <size>8060</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyMzU1ODgpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEzIEBACisyMDE4LTA5LTAxICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNv
bT4KKworICAgICAgICBUaGUgd2F0Y2hkb2cgc29tZXRpbWVzIGZhaWxzIHRvIHRlcm1pbmF0ZSBh
IHNjcmlwdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE4OTIyNworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzk5MzI4NTc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvcmVncmVzcy0xODky
Mjctd2F0Y2hkb2ctb24taW5maW5pdGUtbG9vcC5qczogQWRkZWQuCisKIDIwMTgtMDgtMjQgIFl1
c3VrZSBTdXp1a2kgIDx5dXN1a2VzdXp1a2lAc2xvd3N0YXJ0Lm9yZz4KIAogICAgICAgICBGdW5j
dGlvbiBvYmplY3Qgc2hvdWxkIGNvbnZlcnQgcGFyYW1zIHRvIHN0cmluZyBiZWZvcmUgdGhyb3cg
YSBwYXJzaW5nIGVycm9yCkluZGV4OiBKU1Rlc3RzL3N0cmVzcy9yZWdyZXNzLTE4OTIyNy13YXRj
aGRvZy1vbi1pbmZpbml0ZS1sb29wLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvc3RyZXNzL3Jl
Z3Jlc3MtMTg5MjI3LXdhdGNoZG9nLW9uLWluZmluaXRlLWxvb3AuanMJKG5vbmV4aXN0ZW50KQor
KysgSlNUZXN0cy9zdHJlc3MvcmVncmVzcy0xODkyMjctd2F0Y2hkb2ctb24taW5maW5pdGUtbG9v
cC5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDcgQEAKKy8vQCByZXF1aXJlT3B0aW9ucygi
LS13YXRjaGRvZz0xMCIsICItLWppdFBvbGljeVNjYWxlPTAiLCAiLS13YXRjaGRvZy1leGNlcHRp
b24tb2siKQordmFyIHggPSAyMDAwMDAwOword2hpbGUoeCkgeworICAgIHgtLTsKK30KKwordGhy
b3cgIkZBSUwiOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzU1ODgp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsNzMgQEAKKzIwMTgtMDktMDEgIE1hcmsgTGFtICA8bWFyay5sYW1AYXBwbGUuY29tPgor
CisgICAgICAgIFRoZSB3YXRjaGRvZyBzb21ldGltZXMgZmFpbHMgdG8gdGVybWluYXRlIGEgc2Ny
aXB0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg5
MjI3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zOTkzMjg1Nz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb25zaWRlciB0aGUgZm9sbG93aW5nIHNj
ZW5hcmlvOgorCisgICAgICAgIDEuIFdlIGhhdmUgYW4gaW5maW5pdGUgbG9vcCBieXRlY29kZSBz
ZXF1ZW5jZSBhcyBmb2xsb3dzOgorCisgICAgICAgICAgICBbICAxM10gbG9vcF9oaW50CisgICAg
ICAgICAgICBbICAxNF0gY2hlY2tfdHJhcHMKKyAgICAgICAgICAgIFsgIDE1XSBqbXAgICAgICAg
ICAgICAgICAtMigtPjEzKQorCisgICAgICAgIDIuIFRoZSBWTSB0aWVycyB1cCBmcm9tIExMSW50
IC0+IEJhc2VsaW5lSklUIC0+IERGRyAtPiBGVEwuCisKKyAgICAgICAgICAgTm90ZSB0aGF0IG9w
X2NoZWNrX3RyYXBzIGlzIHJlcHJlc2VudGVkIGFzIGEgQ2hlY2tUcmFwcyBub2RlIGluIHRoZSBE
RkcgYW5kIEZUTC4KKyAgICAgICAgICAgV2hlbiB3ZSdyZSBub3QgdXNpbmcgcG9sbGluZ1RyYXBz
IChKU0NfdXNlUG9sbGluZ1RyYXBzIGlzIGZhbHNlIGJ5IGRlZmF1bHQpLAorICAgICAgICAgICB3
ZSBlbWl0IG5vIGNvZGUgZm9yIENoZWNrVHJhcHMsIGJ1dCBvbmx5IHJlY29yZCBhbiBJbnZhbGlk
YXRpb25Qb2ludCB0aGVyZS4KKworICAgICAgICAzLiBUaGUgd2F0Y2hkb2cgZmlyZXMsIGFuZCBp
bnZhbGlkYXRlcyBhbGwgSW52YWxpZGF0aW9uUG9pbnRzIGluIHRoZSBGVEwgQ29kZUJsb2NrLgor
CisgICAgICAgICAgIEludmFsaWRhdGlvblBvaW50cyBPU1IgZXhpdHMgdG8gdGhlIG5leHQgaW5z
dHJ1Y3Rpb24gYnkgZGVzaWduLiAgSW4gdGhpcyBjYXNlLAorICAgICAgICAgICB0aGF0IG1lYW5z
IHRoZSBWTSB3aWxsIHJlc3VtZXMgZXhlY3V0aW5nIGF0IHRoZSBvcF9qbXAsIHdoaWNoIGp1bXBz
IHRvIHRoZQorICAgICAgICAgICBvcF9sb29wX2hpbnQgb3Bjb2RlLiAgQXQgdGhlIGxvb3BfaGlu
dCwgdGhlIFZNIGRpc2NvdmVycyB0aGF0IHRoZSBmdW5jdGlvbiBpcworICAgICAgICAgICBhbHJl
YWR5IGhvdCwgYW5kIGF0dGVtcHRzIHRvIHRpZXIgdXAuICBJdCBpbW1lZGlhdGVseSBkaXNjb3Zl
cnMgdGhhdCBhIHJlcGxhY2VtZW50CisgICAgICAgICAgIENvZGVCbG9jayBpcyBhdmFpbGFibGUg
YmVjYXVzZSB3ZSBzdGlsbCBoYXZlbid0IGpldHRpc29uZWQgdGhlIERGRyBDb2RlQmxvY2sKKyAg
ICAgICAgICAgbm9yIHRoZSBGVEwgQ29kZUJsb2NrIHRoYXQgd2FzIHByZXZpb3VzbHkgY29tcGls
ZWQgZm9yIHRoaXMgZnVuY3Rpb24uCisKKyAgICAgICAgICAgTm90ZSB0aGF0IGpldHRpc29uaW5n
IGEgQ29kZUJsb2NrIG5lY2Vzc2FyaWx5IG1lYW5zIHRoZSBWTSB3aWxsIGludmFsaWRhdGUKKyAg
ICAgICAgICAgaXRzIEludmFsaWRhdGlvblBvaW50cyAoaWYgdGhlIENvZGVCbG9jayBpcyBERkcv
RlRMKS4gIEhvd2V2ZXIsIHRoZSByZXZlcnNlCisgICAgICAgICAgIGlzIG5vdCB0cnVlOiBtZXJl
bHkgaW52YWxpZGF0aW5nIHRoZSBJbnZhbGlkYXRpb25Qb2ludHMgZG9lcyBub3QgbmVjZXNzYXJp
bHkKKyAgICAgICAgICAgbWVhbiB0aGF0IHRoZSBDb2RlQmxvY2sgaXMgamV0dGlzb25lZC4KKwor
ICAgICAgICAgICBWTVRyYXBzOjp0cnlJbnN0YWxsVHJhcEJyZWFrcG9pbnRzKCkgcnVucyBmcm9t
IGEgc2VwYXJhdGUgdGhyZWFkLiAgSGVuY2UsCisgICAgICAgICAgIGl0IGlzIG9ubHkgc2FmZSBm
b3IgaXQgdG8gaW52YWxpZGF0ZSBhIENvZGVCbG9jaydzIEludmFsaWRhdGlvblBvaW50cy4gIEl0
CisgICAgICAgICAgIGlzIG5vdCBzYWZlIGZvciB0aGUgQ29kZUJsb2NrIHRvIGJlIGpldHRpc29u
ZWQgZnJvbSBhbm90aGVyIHRocmVhZC4gIEluc3RlYWQsCisgICAgICAgICAgIHRoZSBWTVRyYXBz
IG1lY2hhbmlzbSByZWxpZXMgb24gdGhlIHNjcmlwdCB0aHJlYWQgcnVubmluZyB0byBhbiBvcF9j
aGVja190cmFwcworICAgICAgICAgICBpbiB0aGUgYmFzZWxpbmUgSklUIGNvZGUgd2hlcmUgaXQg
d2lsbCBkbyB0aGUgbmVjZXNzYXJ5IGpldHRpc29uaW5nIG9mIG9wdGltaXplZAorICAgICAgICAg
ICBDb2RlQmxvY2tzLgorCisgICAgICAgIFNpbmNlIHRoZSBvcF9jaGVja190cmFwcyBuZXZlciBn
ZXQgZXhlY3V0ZWQsIHRoZSBWTSB3aWxsIHBlcnBldHVhbGx5IHRpZXIgdXAgaW4KKyAgICAgICAg
dGhlIG9wX2xvb3BfaGludCwgT1NSIGV4aXQgdG8gdGhlIG9wX2ptcCwganVtcCB0byB0aGUgb3Bf
bG9vcF9oaW50LCBhbmQgcmVwZWF0LgorICAgICAgICBDb25zZXF1ZW50bHksIHRoZSB3YXRjaGRv
ZyBmYWlscyB0byB0ZXJtaW5hdGUgdGhpcyBzY3JpcHQuCisKKyAgICAgICAgSW4gdGhpcyBwYXRj
aCwgd2UgZml4IHRoaXMgYnkgYWRkaW5nIHZtLm5lZWRUcmFwSGFuZGxpbmcoKSBjaGVja3MgaW4g
dGhlIGJhc2VsaW5lCisgICAgICAgIEpJVCdzIG9wZXJhdGlvbk9wdGltaXplKCkgYW5kIHRoZSBE
RkcncyB0cmlnZ2VyUmVvcHRpbWl6YXRpb25Ob3coKS4gIElmCisgICAgICAgIHZtLm5lZWRUcmFw
SGFuZGxpbmcoKSBpcyB0cnVlLCB0aGV5IHdlIGNob29zZSBub3QgdG8gdGllciB1cC4KKworICAg
ICAgICBUaGUgY2hlY2sgaXMgbm90IHN0cmljdGx5IG5lZWRlZCBpbiB0cmlnZ2VyUmVvcHRpbWl6
YXRpb25Ob3coKS4gIEhvd2V2ZXIsIGlmIHRoZQorICAgICAgICBWTSBuZWVkcyB0cmFwIGhhbmRs
aW5nLCBhbnkgb3B0aW1pemVkIGNvZGUgd2lsbCBwcm9iYWJseSBoYXZlIHRvIGJlIGludmFsaWRh
dGVkCisgICAgICAgIGFueXdheSBpbiBvcmRlciB0byBoYW5kbGUgdGhlIHRyYXAuICBTbywgdGhl
cmUncyBubyBwb2ludCBpbiBhbGxvd2luZyB0aGUgdGllcgorICAgICAgICB1cCB1bnRpbCB3ZSdy
ZSBkb25lIGhhbmRsaW5nIHRoZSB0cmFwLiAgTm90ZSB0aGF0IHdlIGRvbid0IG5lZWQgdG8gYmFj
ayBvZmYgdGhlCisgICAgICAgIG9wdGltaXphdGlvbiBhdHRlbXB0IGZvciBhIHdoaWxlLiAgVGhp
cyBpcyBiZWNhdXNlIHdlIGV4cGVjdCB0aGUgdHJhcCB0byBiZQorICAgICAgICBjaGVja2VkIGlt
bWluZW50bHkuICBUaGVyZWFmdGVyLCB3ZSBzaG91bGQgYmUgYWxsb3dlZCB0byBvcHRpbWl6ZSBh
bmQgdGllciB1cAorICAgICAgICBpbW1lZGlhdGVseSBpZiBleGVjdXRpb24gaXMgcGVybWl0dGVk
IHRvIGNvbnRpbnVlLgorCisgICAgICAgIEluIHRoaXMgcGF0Y2gsIHdlIGFsc28gY2hhbmdlIFZN
VHJhcHM6OnRyeUluc3RhbGxUcmFwQnJlYWtwb2ludHMoKSB0byB1c2UKKyAgICAgICAgQ2FsbEZy
YW1lOjp1bnNhZmVDb2RlQmxvY2soKSBpbnN0ZWFkIG9mIENhbGxGcmFtZTo6Y29kZUJsb2NrKCku
ICBUaGlzIGlzIGJlY2F1c2UKKyAgICAgICAgd2UgZG9uJ3QgcmVhbGx5IGtub3cgaWYgdGhlIGZy
YW1lIGlzIHByb3Blcmx5IHNldCB1cC4gIFdlJ3JlIGp1c3QgY29uc2VydmF0aXZlbHkKKyAgICAg
ICAgcHJvYmluZyB0aGUgc3RhY2suICBBU0FOIGRvZXMgbm90IGxpa2UgdGhpcyBwcm9iaW5nLiAg
VXNpbmcgdW5zYWZlQ29kZUJsb2NrKCkgaGVyZQorICAgICAgICB3aWxsIHN1cHByZXNzIHRoZSBm
YWxzZSBwb3NpdGl2ZSBBU0FOIGNvbXBsYWludC4KKworICAgICAgICAqIGRmZy9ERkdPcGVyYXRp
b25zLmNwcDoKKyAgICAgICAgKiBqaXQvSklUT3BlcmF0aW9ucy5jcHA6CisgICAgICAgICogcnVu
dGltZS9WTVRyYXBzLmNwcDoKKyAgICAgICAgKEpTQzo6Vk1UcmFwczo6dHJ5SW5zdGFsbFRyYXBC
cmVha3BvaW50cyk6CisKIDIwMTgtMDgtMjQgIFl1c3VrZSBTdXp1a2kgIDx5dXN1a2VzdXp1a2lA
c2xvd3N0YXJ0Lm9yZz4KIAogICAgICAgICBGdW5jdGlvbiBvYmplY3Qgc2hvdWxkIGNvbnZlcnQg
cGFyYW1zIHRvIHN0cmluZyBiZWZvcmUgdGhyb3cgYSBwYXJzaW5nIGVycm9yCkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhdGlvbnMuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAJKHJldmlzaW9uIDIzNTU2
MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTI4NDksOSArMjg0OSwxMyBAQCBleHRlcm4gIkMiIHZvaWQgSklUX09QRVJB
VElPTiB0cmlnZ2VyUmVvCiB7CiAgICAgLy8gSXQncyBzb3J0IG9mIHByZWZlcmFibGUgdGhhdCB3
ZSBkb24ndCBHQyB3aGlsZSBpbiBoZXJlLiBBbnl3YXlzLCBkb2luZyBzbyB3b3VsZG4ndAogICAg
IC8vIHJlYWxseSBiZSBwcm9maXRhYmxlLgotICAgIERlZmVyR0NGb3JBV2hpbGUgZGVmZXJHQyhj
b2RlQmxvY2stPnZtKCktPmhlYXApOwotICAgIAotICAgIHNhbml0aXplU3RhY2tGb3JWTShjb2Rl
QmxvY2stPnZtKCkpOworICAgIFZNJiB2bSA9ICpjb2RlQmxvY2stPnZtKCk7CisgICAgaWYgKFVO
TElLRUxZKHZtLm5lZWRUcmFwSGFuZGxpbmcoKSkpCisgICAgICAgIHJldHVybjsgLy8gQ2hvb3Nl
IG5vdCB0byBvcHRpbWl6ZS4KKworICAgIERlZmVyR0NGb3JBV2hpbGUgZGVmZXJHQyh2bS5oZWFw
KTsKKworICAgIHNhbml0aXplU3RhY2tGb3JWTSgmdm0pOwogCiAgICAgaWYgKE9wdGlvbnM6OnZl
cmJvc2VPU1IoKSkKICAgICAgICAgZGF0YUxvZygqY29kZUJsb2NrLCAiOiBFbnRlcmVkIHJlb3B0
aW1pemVcbiIpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRPcGVyYXRpb25z
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9wZXJhdGlv
bnMuY3BwCShyZXZpc2lvbiAyMzU1NjApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJ
VE9wZXJhdGlvbnMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMzgwLDYgKzEzODAsOSBAQCBTbG93
UGF0aFJldHVyblR5cGUgSklUX09QRVJBVElPTiBvcGVyYXRpCiAgICAgVk0mIHZtID0gZXhlYy0+
dm0oKTsKICAgICBOYXRpdmVDYWxsRnJhbWVUcmFjZXIgdHJhY2VyKCZ2bSwgZXhlYyk7CiAKKyAg
ICBpZiAoVU5MSUtFTFkodm0ubmVlZFRyYXBIYW5kbGluZygpKSkKKyAgICAgICAgcmV0dXJuIGVu
Y29kZVJlc3VsdCgwLCAwKTsgLy8gQ2hvb3NlIG5vdCB0byBvcHRpbWl6ZS4KKwogICAgIC8vIERl
ZmVyIEdDIGZvciBhIHdoaWxlIHNvIHRoYXQgaXQgZG9lc24ndCBydW4gYmV0d2VlbiB3aGVuIHdl
IGVudGVyIGludG8gdGhpcwogICAgIC8vIHNsb3cgcGF0aCBhbmQgd2hlbiB3ZSBmaWd1cmUgb3V0
IHRoZSBzdGF0ZSBvZiBvdXIgY29kZSBibG9jay4gVGhpcyBwcmV2ZW50cwogICAgIC8vIGEgbnVt
YmVyIG9mIGF3a3dhcmQgcmVlbnRyYW5jeSBzY2VuYXJpb3MsIGluY2x1ZGluZzoKQEAgLTEzOTUs
NyArMTM5OCw3IEBAIFNsb3dQYXRoUmV0dXJuVHlwZSBKSVRfT1BFUkFUSU9OIG9wZXJhdGkKICAg
ICAvLyB0aGF0IGNhc2Ugd2Ugd291bGQgaGF2ZSBhbHJlYWR5IHBsYW50ZWQgdGhlIG9wdGltaXpl
ZCBjb2RlIGJsb2NrIGludG8gdGhlIEpTCiAgICAgLy8gc3RhY2suCiAgICAgRGVmZXJHQ0ZvckFX
aGlsZSBkZWZlckdDKHZtLmhlYXApOwotICAgIAorCiAgICAgQ29kZUJsb2NrKiBjb2RlQmxvY2sg
PSBleGVjLT5jb2RlQmxvY2soKTsKICAgICBpZiAoVU5MSUtFTFkoY29kZUJsb2NrLT5qaXRUeXBl
KCkgIT0gSklUQ29kZTo6QmFzZWxpbmVKSVQpKSB7CiAgICAgICAgIGRhdGFMb2coIlVuZXhwZWN0
ZWQgY29kZSBibG9jayBpbiBCYXNlbGluZS0+REZHIHRpZXItdXA6ICIsICpjb2RlQmxvY2ssICJc
biIpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk1UcmFwcy5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk1UcmFwcy5jcHAJKHJl
dmlzaW9uIDIzNTU2MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNVHJhcHMu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjYsNyArMTI2LDcgQEAgdm9pZCBWTVRyYXBzOjp0cnlJ
bnN0YWxsVHJhcEJyZWFrcG9pbnRzKAogICAgICAgICBpZiAoIWlzU2FuZUZyYW1lKGNhbGxGcmFt
ZSwgY2FsbGVlRnJhbWUsIGVudHJ5RnJhbWUsIHN0YWNrQm91bmRzKSkKICAgICAgICAgICAgIHJl
dHVybjsgLy8gTGV0IHRoZSBTaWduYWxTZW5kZXIgdHJ5IGFnYWluIGxhdGVyLgogCi0gICAgICAg
IENvZGVCbG9jayogY2FuZGlkYXRlQ29kZUJsb2NrID0gY2FsbEZyYW1lLT5jb2RlQmxvY2soKTsK
KyAgICAgICAgQ29kZUJsb2NrKiBjYW5kaWRhdGVDb2RlQmxvY2sgPSBjYWxsRnJhbWUtPnVuc2Fm
ZUNvZGVCbG9jaygpOwogICAgICAgICBpZiAoY2FuZGlkYXRlQ29kZUJsb2NrICYmIHZtLmhlYXAu
Y29kZUJsb2NrU2V0KCkuY29udGFpbnMoY29kZUJsb2NrU2V0TG9ja2VyLCBjYW5kaWRhdGVDb2Rl
QmxvY2spKSB7CiAgICAgICAgICAgICBmb3VuZENvZGVCbG9jayA9IGNhbmRpZGF0ZUNvZGVCbG9j
azsKICAgICAgICAgICAgIGJyZWFrOwo=
</data>
<flag name="review"
          id="366337"
          type_id="1"
          status="-"
          setter="mark.lam"
    />
    <flag name="commit-queue"
          id="366338"
          type_id="3"
          status="-"
          setter="ews-watchlist"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348785</attachid>
            <date>2018-09-03 11:40:23 -0700</date>
            <delta_ts>2018-09-03 13:01:48 -0700</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-189227.patch</filename>
            <type>text/plain</type>
            <size>10481</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyMzU2MDApCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEzIEBACisyMDE4LTA5LTAzICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNv
bT4KKworICAgICAgICBUaGUgd2F0Y2hkb2cgc29tZXRpbWVzIGZhaWxzIHRvIHRlcm1pbmF0ZSBh
IHNjcmlwdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE4OTIyNworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzk5MzI4NTc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvcmVncmVzcy0xODky
Mjctd2F0Y2hkb2ctb24taW5maW5pdGUtbG9vcC5qczogQWRkZWQuCisKIDIwMTgtMDktMDIgIFl1
c3VrZSBTdXp1a2kgIDx5dXN1a2VzdXp1a2lAc2xvd3N0YXJ0Lm9yZz4KIAogICAgICAgICBJbXBs
ZW1lbnQgT2JqZWN0LmZyb21FbnRyaWVzCkluZGV4OiBKU1Rlc3RzL3N0cmVzcy9yZWdyZXNzLTE4
OTIyNy13YXRjaGRvZy1vbi1pbmZpbml0ZS1sb29wLmpzCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMv
c3RyZXNzL3JlZ3Jlc3MtMTg5MjI3LXdhdGNoZG9nLW9uLWluZmluaXRlLWxvb3AuanMJKG5vbmV4
aXN0ZW50KQorKysgSlNUZXN0cy9zdHJlc3MvcmVncmVzcy0xODkyMjctd2F0Y2hkb2ctb24taW5m
aW5pdGUtbG9vcC5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDcgQEAKKy8vQCByZXF1aXJl
T3B0aW9ucygiLS13YXRjaGRvZz0xMCIsICItLWppdFBvbGljeVNjYWxlPTAiLCAiLS13YXRjaGRv
Zy1leGNlcHRpb24tb2siKQordmFyIHggPSAyMDAwMDAwOword2hpbGUoeCkgeworICAgIHgtLTsK
K30KKwordGhyb3cgIkZBSUwiOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCShyZXZpc2lv
biAyMzU1ODgpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsNzcgQEAKKzIwMTgtMDktMDMgIE1hcmsgTGFtICA8bWFyay5sYW1AYXBw
bGUuY29tPgorCisgICAgICAgIFRoZSB3YXRjaGRvZyBzb21ldGltZXMgZmFpbHMgdG8gdGVybWlu
YXRlIGEgc2NyaXB0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTg5MjI3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zOTkzMjg1Nz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb25zaWRlciB0aGUgZm9s
bG93aW5nIHNjZW5hcmlvOgorCisgICAgICAgIDEuIFdlIGhhdmUgYW4gaW5maW5pdGUgbG9vcCBi
eXRlY29kZSBzZXF1ZW5jZSBhcyBmb2xsb3dzOgorCisgICAgICAgICAgICBbICAxM10gbG9vcF9o
aW50CisgICAgICAgICAgICBbICAxNF0gY2hlY2tfdHJhcHMKKyAgICAgICAgICAgIFsgIDE1XSBq
bXAgICAgICAgICAgICAgICAtMigtPjEzKQorCisgICAgICAgIDIuIFRoZSBWTSB0aWVycyB1cCBm
cm9tIExMSW50IC0+IEJhc2VsaW5lSklUIC0+IERGRyAtPiBGVEwuCisKKyAgICAgICAgICAgTm90
ZSB0aGF0IG9wX2NoZWNrX3RyYXBzIGlzIHJlcHJlc2VudGVkIGFzIGEgQ2hlY2tUcmFwcyBub2Rl
IGluIHRoZSBERkcgYW5kIEZUTC4KKyAgICAgICAgICAgV2hlbiB3ZSdyZSBub3QgdXNpbmcgcG9s
bGluZ1RyYXBzIChKU0NfdXNlUG9sbGluZ1RyYXBzIGlzIGZhbHNlIGJ5IGRlZmF1bHQpLAorICAg
ICAgICAgICB3ZSBlbWl0IG5vIGNvZGUgZm9yIENoZWNrVHJhcHMsIGJ1dCBvbmx5IHJlY29yZCBh
biBJbnZhbGlkYXRpb25Qb2ludCB0aGVyZS4KKworICAgICAgICAzLiBUaGUgd2F0Y2hkb2cgZmly
ZXMsIGFuZCBpbnZhbGlkYXRlcyBhbGwgSW52YWxpZGF0aW9uUG9pbnRzIGluIHRoZSBGVEwgQ29k
ZUJsb2NrLgorCisgICAgICAgICAgIEludmFsaWRhdGlvblBvaW50cyBPU1IgZXhpdHMgdG8gdGhl
IG5leHQgaW5zdHJ1Y3Rpb24gYnkgZGVzaWduLiAgSW4gdGhpcyBjYXNlLAorICAgICAgICAgICB0
aGF0IG1lYW5zIHRoZSBWTSB3aWxsIHJlc3VtZXMgZXhlY3V0aW5nIGF0IHRoZSBvcF9qbXAsIHdo
aWNoIGp1bXBzIHRvIHRoZQorICAgICAgICAgICBvcF9sb29wX2hpbnQgb3Bjb2RlLiAgQXQgdGhl
IGxvb3BfaGludCwgdGhlIFZNIGRpc2NvdmVycyB0aGF0IHRoZSBmdW5jdGlvbiBpcworICAgICAg
ICAgICBhbHJlYWR5IGhvdCwgYW5kIGF0dGVtcHRzIHRvIHRpZXIgdXAuICBJdCBpbW1lZGlhdGVs
eSBkaXNjb3ZlcnMgdGhhdCBhIHJlcGxhY2VtZW50CisgICAgICAgICAgIENvZGVCbG9jayBpcyBh
dmFpbGFibGUgYmVjYXVzZSB3ZSBzdGlsbCBoYXZlbid0IGpldHRpc29uZWQgdGhlIERGRyBDb2Rl
QmxvY2sKKyAgICAgICAgICAgbm9yIHRoZSBGVEwgQ29kZUJsb2NrIHRoYXQgd2FzIHByZXZpb3Vz
bHkgY29tcGlsZWQgZm9yIHRoaXMgZnVuY3Rpb24uCisKKyAgICAgICAgICAgTm90ZSB0aGF0IGpl
dHRpc29uaW5nIGEgQ29kZUJsb2NrIG5lY2Vzc2FyaWx5IG1lYW5zIHRoZSBWTSB3aWxsIGludmFs
aWRhdGUKKyAgICAgICAgICAgaXRzIEludmFsaWRhdGlvblBvaW50cyAoaWYgdGhlIENvZGVCbG9j
ayBpcyBERkcvRlRMKS4gIEhvd2V2ZXIsIHRoZSByZXZlcnNlCisgICAgICAgICAgIGlzIG5vdCB0
cnVlOiBtZXJlbHkgaW52YWxpZGF0aW5nIHRoZSBJbnZhbGlkYXRpb25Qb2ludHMgZG9lcyBub3Qg
bmVjZXNzYXJpbHkKKyAgICAgICAgICAgbWVhbiB0aGF0IHRoZSBDb2RlQmxvY2sgaXMgamV0dGlz
b25lZC4KKworICAgICAgICAgICBWTVRyYXBzOjp0cnlJbnN0YWxsVHJhcEJyZWFrcG9pbnRzKCkg
cnVucyBmcm9tIGEgc2VwYXJhdGUgdGhyZWFkLiAgSGVuY2UsCisgICAgICAgICAgIGl0IGlzIG9u
bHkgc2FmZSBmb3IgaXQgdG8gaW52YWxpZGF0ZSBhIENvZGVCbG9jaydzIEludmFsaWRhdGlvblBv
aW50cy4gIEl0CisgICAgICAgICAgIGlzIG5vdCBzYWZlIGZvciB0aGUgQ29kZUJsb2NrIHRvIGJl
IGpldHRpc29uZWQgZnJvbSBhbm90aGVyIHRocmVhZC4gIEluc3RlYWQsCisgICAgICAgICAgIHRo
ZSBWTVRyYXBzIG1lY2hhbmlzbSByZWxpZXMgb24gdGhlIHNjcmlwdCB0aHJlYWQgcnVubmluZyB0
byBhbiBvcF9jaGVja190cmFwcworICAgICAgICAgICBpbiB0aGUgYmFzZWxpbmUgSklUIGNvZGUg
d2hlcmUgaXQgd2lsbCBkbyB0aGUgbmVjZXNzYXJ5IGpldHRpc29uaW5nIG9mIG9wdGltaXplZAor
ICAgICAgICAgICBDb2RlQmxvY2tzLgorCisgICAgICAgIFNpbmNlIHRoZSBvcF9jaGVja190cmFw
cyBuZXZlciBnZXQgZXhlY3V0ZWQsIHRoZSBWTSB3aWxsIHBlcnBldHVhbGx5IHRpZXIgdXAgaW4K
KyAgICAgICAgdGhlIG9wX2xvb3BfaGludCwgT1NSIGV4aXQgdG8gdGhlIG9wX2ptcCwganVtcCB0
byB0aGUgb3BfbG9vcF9oaW50LCBhbmQgcmVwZWF0LgorICAgICAgICBDb25zZXF1ZW50bHksIHRo
ZSB3YXRjaGRvZyBmYWlscyB0byB0ZXJtaW5hdGUgdGhpcyBzY3JpcHQuCisKKyAgICAgICAgSW4g
dGhpcyBwYXRjaCwgd2UgZml4IHRoaXMgYnkgbWFraW5nIHRoZSBERkcgQnl0ZWNvZGVQYXJzZXIg
ZW1pdCBhbiBJbnZhbGlkYXRpb25Qb2ludAorICAgICAgICBub2RlIGRpcmVjdGx5ICh3aGVuIHRo
ZSBWTSBpcyBub3QgY29uZmlndXJlZCB0byB1c2UgcG9sbGluZyB0cmFwcykuICBUaGlzIGVuc3Vy
ZXMKKyAgICAgICAgdGhhdCB0aGUgY2hlY2sgdHJhcHMgaW52YWxpZGF0aW9uIHBvaW50IHdpbGwg
T1NSIGV4aXQgdG8gdGhlIG9wX2NoZWNrX3RyYXBzIG9wY29kZQorICAgICAgICBpbiB0aGUgYmFz
ZWxpbmUgSklULgorCisgICAgICAgIEluIHRoaXMgcGF0Y2gsIHdlIGFsc28gY2hhbmdlIFZNVHJh
cHM6OnRyeUluc3RhbGxUcmFwQnJlYWtwb2ludHMoKSB0byB1c2UKKyAgICAgICAgQ2FsbEZyYW1l
Ojp1bnNhZmVDb2RlQmxvY2soKSBpbnN0ZWFkIG9mIENhbGxGcmFtZTo6Y29kZUJsb2NrKCkuICBU
aGlzIGlzIGJlY2F1c2UKKyAgICAgICAgd2UgZG9uJ3QgcmVhbGx5IGtub3cgaWYgdGhlIGZyYW1l
IGlzIHByb3Blcmx5IHNldCB1cC4gIFdlJ3JlIGp1c3QgY29uc2VydmF0aXZlbHkKKyAgICAgICAg
cHJvYmluZyB0aGUgc3RhY2suICBBU0FOIGRvZXMgbm90IGxpa2UgdGhpcyBwcm9iaW5nLiAgVXNp
bmcgdW5zYWZlQ29kZUJsb2NrKCkgaGVyZQorICAgICAgICB3aWxsIHN1cHByZXNzIHRoZSBmYWxz
ZSBwb3NpdGl2ZSBBU0FOIGNvbXBsYWludC4KKworICAgICAgICAqIGRmZy9ERkdCeXRlQ29kZVBh
cnNlci5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6Qnl0ZUNvZGVQYXJzZXI6OnBhcnNlQmxvY2sp
OgorICAgICAgICAqIGRmZy9ERkdDbG9iYmVyaXplLmg6CisgICAgICAgIChKU0M6OkRGRzo6Y2xv
YmJlcml6ZSk6CisgICAgICAgICogZGZnL0RGR0ZpeHVwUGhhc2UuY3BwOgorICAgICAgICAoSlND
OjpERkc6OkZpeHVwUGhhc2U6OmZpeHVwTm9kZSk6CisgICAgICAgICogZGZnL0RGR1ByZWRpY3Rp
b25Qcm9wYWdhdGlvblBoYXNlLmNwcDoKKyAgICAgICAgKiBkZmcvREZHU3BlY3VsYXRpdmVKSVQz
Ml82NC5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGUpOgor
ICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2ZUpJVDY0LmNwcDoKKyAgICAgICAgKEpTQzo6REZH
OjpTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZSk6CisgICAgICAgICogZnRsL0ZUTExvd2VyREZHVG9C
My5jcHA6CisgICAgICAgIChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvQjM6OmNvbXBpbGVOb2Rl
KToKKyAgICAgICAgKiBydW50aW1lL1ZNVHJhcHMuY3BwOgorICAgICAgICAoSlNDOjpWTVRyYXBz
Ojp0cnlJbnN0YWxsVHJhcEJyZWFrcG9pbnRzKToKKwogMjAxOC0wOC0yNCAgWXVzdWtlIFN1enVr
aSAgPHl1c3VrZXN1enVraUBzbG93c3RhcnQub3JnPgogCiAgICAgICAgIEZ1bmN0aW9uIG9iamVj
dCBzaG91bGQgY29udmVydCBwYXJhbXMgdG8gc3RyaW5nIGJlZm9yZSB0aHJvdyBhIHBhcnNpbmcg
ZXJyb3IKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQ
YXJzZXIuY3BwCShyZXZpc2lvbiAyMzU1NjApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR0J5dGVDb2RlUGFyc2VyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjQwNSw3ICs2NDA1LDcg
QEAgdm9pZCBCeXRlQ29kZVBhcnNlcjo6cGFyc2VCbG9jayh1bnNpZ25lZAogICAgICAgICB9CiAg
ICAgICAgIAogICAgICAgICBjYXNlIG9wX2NoZWNrX3RyYXBzOiB7Ci0gICAgICAgICAgICBhZGRU
b0dyYXBoKENoZWNrVHJhcHMpOworICAgICAgICAgICAgYWRkVG9HcmFwaChPcHRpb25zOjp1c2VQ
b2xsaW5nVHJhcHMoKSA/IENoZWNrVHJhcHMgOiBJbnZhbGlkYXRpb25Qb2ludCk7CiAgICAgICAg
ICAgICBORVhUX09QQ09ERShvcF9jaGVja190cmFwcyk7CiAgICAgICAgIH0KIApJbmRleDogU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDbG9iYmVyaXplLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDbG9iYmVyaXplLmgJKHJldmlzaW9uIDIzNTU2MCkK
KysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ2xvYmJlcml6ZS5oCSh3b3JraW5nIGNv
cHkpCkBAIC00NzEsMTEgKzQ3MSw4IEBAIHZvaWQgY2xvYmJlcml6ZShHcmFwaCYgZ3JhcGgsIE5v
ZGUqIG5vZGUKICAgICAgICAgcmV0dXJuOwogCiAgICAgY2FzZSBDaGVja1RyYXBzOgotICAgICAg
ICBpZiAoT3B0aW9uczo6dXNlUG9sbGluZ1RyYXBzKCkpIHsKLSAgICAgICAgICAgIHJlYWQoSW50
ZXJuYWxTdGF0ZSk7Ci0gICAgICAgICAgICB3cml0ZShJbnRlcm5hbFN0YXRlKTsKLSAgICAgICAg
fSBlbHNlCi0gICAgICAgICAgICB3cml0ZShXYXRjaHBvaW50X2ZpcmUpOworICAgICAgICByZWFk
KEludGVybmFsU3RhdGUpOworICAgICAgICB3cml0ZShJbnRlcm5hbFN0YXRlKTsKICAgICAgICAg
cmV0dXJuOwogCiAgICAgY2FzZSBJbnZhbGlkYXRpb25Qb2ludDoKSW5kZXg6IFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHRml4dXBQaGFzZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0ph
dmFTY3JpcHRDb3JlL2RmZy9ERkdGaXh1cFBoYXNlLmNwcAkocmV2aXNpb24gMjM1NTYwKQorKysg
U291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdGaXh1cFBoYXNlLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMTYxMiw3ICsxNjEyLDYgQEAgcHJpdmF0ZToKICAgICAgICAgY2FzZSBDaGVja1RpZXJV
cEluTG9vcDoKICAgICAgICAgY2FzZSBDaGVja1RpZXJVcEF0UmV0dXJuOgogICAgICAgICBjYXNl
IENoZWNrVGllclVwQW5kT1NSRW50ZXI6Ci0gICAgICAgIGNhc2UgSW52YWxpZGF0aW9uUG9pbnQ6
CiAgICAgICAgIGNhc2UgQ2hlY2tBcnJheToKICAgICAgICAgY2FzZSBDaGVja0luQm91bmRzOgog
ICAgICAgICBjYXNlIENvbnN0YW50U3RvcmFnZVBvaW50ZXI6CkBAIC0yMjQxLDYgKzIyNDAsNyBA
QCBwcml2YXRlOgogICAgICAgICBjYXNlIEZpbHRlckdldEJ5SWRTdGF0dXM6CiAgICAgICAgIGNh
c2UgRmlsdGVyUHV0QnlJZFN0YXR1czoKICAgICAgICAgY2FzZSBGaWx0ZXJJbkJ5SWRTdGF0dXM6
CisgICAgICAgIGNhc2UgSW52YWxpZGF0aW9uUG9pbnQ6CiAgICAgICAgICAgICBicmVhazsKICNl
bHNlCiAgICAgICAgIGRlZmF1bHQ6CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RG
R1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNlLmNwcAkocmV2aXNp
b24gMjM1NTYwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdQcmVkaWN0aW9uUHJv
cGFnYXRpb25QaGFzZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExMDUsNyArMTEwNSw2IEBAIHBy
aXZhdGU6CiAgICAgICAgIGNhc2UgQ2hlY2tUaWVyVXBJbkxvb3A6CiAgICAgICAgIGNhc2UgQ2hl
Y2tUaWVyVXBBdFJldHVybjoKICAgICAgICAgY2FzZSBDaGVja1RpZXJVcEFuZE9TUkVudGVyOgot
ICAgICAgICBjYXNlIEludmFsaWRhdGlvblBvaW50OgogICAgICAgICBjYXNlIENoZWNrSW5Cb3Vu
ZHM6CiAgICAgICAgIGNhc2UgVmFsdWVUb0ludDMyOgogICAgICAgICBjYXNlIERvdWJsZVJlcDoK
QEAgLTEyMzAsNiArMTIyOSw3IEBAIHByaXZhdGU6CiAgICAgICAgIGNhc2UgRmlsdGVySW5CeUlk
U3RhdHVzOgogICAgICAgICBjYXNlIENsZWFyQ2F0Y2hMb2NhbHM6CiAgICAgICAgIGNhc2UgRGF0
YVZpZXdTZXQ6CisgICAgICAgIGNhc2UgSW52YWxpZGF0aW9uUG9pbnQ6CiAgICAgICAgICAgICBi
cmVhazsKICAgICAgICAgICAgIAogICAgICAgICAvLyBUaGlzIGdldHMgaWdub3JlZCBiZWNhdXNl
IGl0IG9ubHkgcHJldGVuZHMgdG8gcHJvZHVjZSBhIHZhbHVlLgpJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUMzJfNjQuY3BwCShyZXZp
c2lvbiAyMzU1NjApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZl
SklUMzJfNjQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zOTY0LDEwICszOTY0LDcgQEAgdm9pZCBT
cGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlKiBub2RlKQogICAgICAgICBicmVhazsKIAogICAg
IGNhc2UgQ2hlY2tUcmFwczoKLSAgICAgICAgaWYgKE9wdGlvbnM6OnVzZVBvbGxpbmdUcmFwcygp
KQotICAgICAgICAgICAgY29tcGlsZUNoZWNrVHJhcHMobm9kZSk7Ci0gICAgICAgIGVsc2UKLSAg
ICAgICAgICAgIG5vUmVzdWx0KG5vZGUpOyAvLyBUaGlzIGlzIGEgbm8tb3AuCisgICAgICAgIGNv
bXBpbGVDaGVja1RyYXBzKG5vZGUpOwogICAgICAgICBicmVhazsKIAogICAgIGNhc2UgQ291bnRF
eGVjdXRpb246CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZl
SklUNjQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3Bl
Y3VsYXRpdmVKSVQ2NC5jcHAJKHJldmlzaW9uIDIzNTU2MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQ2NC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ0NDUs
MTAgKzQ0NDUsNyBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlKE5vZGUqIG5vZGUpCiAg
ICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBDaGVja1RyYXBzOgotICAgICAgICBpZiAoT3B0aW9u
czo6dXNlUG9sbGluZ1RyYXBzKCkpCi0gICAgICAgICAgICBjb21waWxlQ2hlY2tUcmFwcyhub2Rl
KTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgbm9SZXN1bHQobm9kZSk7IC8vIFRoaXMgaXMg
YSBuby1vcC4KKyAgICAgICAgY29tcGlsZUNoZWNrVHJhcHMobm9kZSk7CiAgICAgICAgIGJyZWFr
OwogCiAgICAgY2FzZSBQaGFudG9tOgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9G
VExMb3dlckRGR1RvQjMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9m
dGwvRlRMTG93ZXJERkdUb0IzLmNwcAkocmV2aXNpb24gMjM1NTYwKQorKysgU291cmNlL0phdmFT
Y3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjE2
LDggKzEyMTYsNyBAQCBwcml2YXRlOgogICAgICAgICAgICAgY29tcGlsZU1hdGVyaWFsaXplQ3Jl
YXRlQWN0aXZhdGlvbigpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgQ2hlY2tU
cmFwczoKLSAgICAgICAgICAgIGlmIChPcHRpb25zOjp1c2VQb2xsaW5nVHJhcHMoKSkKLSAgICAg
ICAgICAgICAgICBjb21waWxlQ2hlY2tUcmFwcygpOworICAgICAgICAgICAgY29tcGlsZUNoZWNr
VHJhcHMoKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIENyZWF0ZVJlc3Q6CiAg
ICAgICAgICAgICBjb21waWxlQ3JlYXRlUmVzdCgpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVk1UcmFwcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVk1UcmFwcy5jcHAJKHJldmlzaW9uIDIzNTU2MCkKKysrIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1ZNVHJhcHMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjYsNyAr
MTI2LDcgQEAgdm9pZCBWTVRyYXBzOjp0cnlJbnN0YWxsVHJhcEJyZWFrcG9pbnRzKAogICAgICAg
ICBpZiAoIWlzU2FuZUZyYW1lKGNhbGxGcmFtZSwgY2FsbGVlRnJhbWUsIGVudHJ5RnJhbWUsIHN0
YWNrQm91bmRzKSkKICAgICAgICAgICAgIHJldHVybjsgLy8gTGV0IHRoZSBTaWduYWxTZW5kZXIg
dHJ5IGFnYWluIGxhdGVyLgogCi0gICAgICAgIENvZGVCbG9jayogY2FuZGlkYXRlQ29kZUJsb2Nr
ID0gY2FsbEZyYW1lLT5jb2RlQmxvY2soKTsKKyAgICAgICAgQ29kZUJsb2NrKiBjYW5kaWRhdGVD
b2RlQmxvY2sgPSBjYWxsRnJhbWUtPnVuc2FmZUNvZGVCbG9jaygpOwogICAgICAgICBpZiAoY2Fu
ZGlkYXRlQ29kZUJsb2NrICYmIHZtLmhlYXAuY29kZUJsb2NrU2V0KCkuY29udGFpbnMoY29kZUJs
b2NrU2V0TG9ja2VyLCBjYW5kaWRhdGVDb2RlQmxvY2spKSB7CiAgICAgICAgICAgICBmb3VuZENv
ZGVCbG9jayA9IGNhbmRpZGF0ZUNvZGVCbG9jazsKICAgICAgICAgICAgIGJyZWFrOwo=
</data>
<flag name="review"
          id="366387"
          type_id="1"
          status="-"
          setter="mark.lam"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348786</attachid>
            <date>2018-09-03 13:01:48 -0700</date>
            <delta_ts>2018-09-03 13:08:11 -0700</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-189227.patch</filename>
            <type>text/plain</type>
            <size>10482</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyMzU2MDApCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEzIEBACisyMDE4LTA5LTAzICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNv
bT4KKworICAgICAgICBUaGUgd2F0Y2hkb2cgc29tZXRpbWVzIGZhaWxzIHRvIHRlcm1pbmF0ZSBh
IHNjcmlwdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE4OTIyNworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzk5MzI4NTc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvcmVncmVzcy0xODky
Mjctd2F0Y2hkb2ctb24taW5maW5pdGUtbG9vcC5qczogQWRkZWQuCisKIDIwMTgtMDktMDIgIFl1
c3VrZSBTdXp1a2kgIDx5dXN1a2VzdXp1a2lAc2xvd3N0YXJ0Lm9yZz4KIAogICAgICAgICBJbXBs
ZW1lbnQgT2JqZWN0LmZyb21FbnRyaWVzCkluZGV4OiBKU1Rlc3RzL3N0cmVzcy9yZWdyZXNzLTE4
OTIyNy13YXRjaGRvZy1vbi1pbmZpbml0ZS1sb29wLmpzCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMv
c3RyZXNzL3JlZ3Jlc3MtMTg5MjI3LXdhdGNoZG9nLW9uLWluZmluaXRlLWxvb3AuanMJKG5vbmV4
aXN0ZW50KQorKysgSlNUZXN0cy9zdHJlc3MvcmVncmVzcy0xODkyMjctd2F0Y2hkb2ctb24taW5m
aW5pdGUtbG9vcC5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDcgQEAKKy8vQCByZXF1aXJl
T3B0aW9ucygiLS13YXRjaGRvZz0yMCIsICItLWppdFBvbGljeVNjYWxlPTAiLCAiLS13YXRjaGRv
Zy1leGNlcHRpb24tb2siKQordmFyIHggPSA1MDAwMDAwOword2hpbGUgKHgpIHsKKyAgICB4LS07
Cit9CisKK3Rocm93ICJGQUlMIjsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VM
b2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNp
b24gMjM1NTg4KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDc3IEBACisyMDE4LTA5LTAzICBNYXJrIExhbSAgPG1hcmsubGFtQGFw
cGxlLmNvbT4KKworICAgICAgICBUaGUgd2F0Y2hkb2cgc29tZXRpbWVzIGZhaWxzIHRvIHRlcm1p
bmF0ZSBhIHNjcmlwdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE4OTIyNworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzk5MzI4NTc+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29uc2lkZXIgdGhlIGZv
bGxvd2luZyBzY2VuYXJpbzoKKworICAgICAgICAxLiBXZSBoYXZlIGFuIGluZmluaXRlIGxvb3Ag
Ynl0ZWNvZGUgc2VxdWVuY2UgYXMgZm9sbG93czoKKworICAgICAgICAgICAgWyAgMTNdIGxvb3Bf
aGludAorICAgICAgICAgICAgWyAgMTRdIGNoZWNrX3RyYXBzCisgICAgICAgICAgICBbICAxNV0g
am1wICAgICAgICAgICAgICAgLTIoLT4xMykKKworICAgICAgICAyLiBUaGUgVk0gdGllcnMgdXAg
ZnJvbSBMTEludCAtPiBCYXNlbGluZUpJVCAtPiBERkcgLT4gRlRMLgorCisgICAgICAgICAgIE5v
dGUgdGhhdCBvcF9jaGVja190cmFwcyBpcyByZXByZXNlbnRlZCBhcyBhIENoZWNrVHJhcHMgbm9k
ZSBpbiB0aGUgREZHIGFuZCBGVEwuCisgICAgICAgICAgIFdoZW4gd2UncmUgbm90IHVzaW5nIHBv
bGxpbmdUcmFwcyAoSlNDX3VzZVBvbGxpbmdUcmFwcyBpcyBmYWxzZSBieSBkZWZhdWx0KSwKKyAg
ICAgICAgICAgd2UgZW1pdCBubyBjb2RlIGZvciBDaGVja1RyYXBzLCBidXQgb25seSByZWNvcmQg
YW4gSW52YWxpZGF0aW9uUG9pbnQgdGhlcmUuCisKKyAgICAgICAgMy4gVGhlIHdhdGNoZG9nIGZp
cmVzLCBhbmQgaW52YWxpZGF0ZXMgYWxsIEludmFsaWRhdGlvblBvaW50cyBpbiB0aGUgRlRMIENv
ZGVCbG9jay4KKworICAgICAgICAgICBJbnZhbGlkYXRpb25Qb2ludHMgT1NSIGV4aXRzIHRvIHRo
ZSBuZXh0IGluc3RydWN0aW9uIGJ5IGRlc2lnbi4gIEluIHRoaXMgY2FzZSwKKyAgICAgICAgICAg
dGhhdCBtZWFucyB0aGUgVk0gd2lsbCByZXN1bWVzIGV4ZWN1dGluZyBhdCB0aGUgb3Bfam1wLCB3
aGljaCBqdW1wcyB0byB0aGUKKyAgICAgICAgICAgb3BfbG9vcF9oaW50IG9wY29kZS4gIEF0IHRo
ZSBsb29wX2hpbnQsIHRoZSBWTSBkaXNjb3ZlcnMgdGhhdCB0aGUgZnVuY3Rpb24gaXMKKyAgICAg
ICAgICAgYWxyZWFkeSBob3QsIGFuZCBhdHRlbXB0cyB0byB0aWVyIHVwLiAgSXQgaW1tZWRpYXRl
bHkgZGlzY292ZXJzIHRoYXQgYSByZXBsYWNlbWVudAorICAgICAgICAgICBDb2RlQmxvY2sgaXMg
YXZhaWxhYmxlIGJlY2F1c2Ugd2Ugc3RpbGwgaGF2ZW4ndCBqZXR0aXNvbmVkIHRoZSBERkcgQ29k
ZUJsb2NrCisgICAgICAgICAgIG5vciB0aGUgRlRMIENvZGVCbG9jayB0aGF0IHdhcyBwcmV2aW91
c2x5IGNvbXBpbGVkIGZvciB0aGlzIGZ1bmN0aW9uLgorCisgICAgICAgICAgIE5vdGUgdGhhdCBq
ZXR0aXNvbmluZyBhIENvZGVCbG9jayBuZWNlc3NhcmlseSBtZWFucyB0aGUgVk0gd2lsbCBpbnZh
bGlkYXRlCisgICAgICAgICAgIGl0cyBJbnZhbGlkYXRpb25Qb2ludHMgKGlmIHRoZSBDb2RlQmxv
Y2sgaXMgREZHL0ZUTCkuICBIb3dldmVyLCB0aGUgcmV2ZXJzZQorICAgICAgICAgICBpcyBub3Qg
dHJ1ZTogbWVyZWx5IGludmFsaWRhdGluZyB0aGUgSW52YWxpZGF0aW9uUG9pbnRzIGRvZXMgbm90
IG5lY2Vzc2FyaWx5CisgICAgICAgICAgIG1lYW4gdGhhdCB0aGUgQ29kZUJsb2NrIGlzIGpldHRp
c29uZWQuCisKKyAgICAgICAgICAgVk1UcmFwczo6dHJ5SW5zdGFsbFRyYXBCcmVha3BvaW50cygp
IHJ1bnMgZnJvbSBhIHNlcGFyYXRlIHRocmVhZC4gIEhlbmNlLAorICAgICAgICAgICBpdCBpcyBv
bmx5IHNhZmUgZm9yIGl0IHRvIGludmFsaWRhdGUgYSBDb2RlQmxvY2sncyBJbnZhbGlkYXRpb25Q
b2ludHMuICBJdAorICAgICAgICAgICBpcyBub3Qgc2FmZSBmb3IgdGhlIENvZGVCbG9jayB0byBi
ZSBqZXR0aXNvbmVkIGZyb20gYW5vdGhlciB0aHJlYWQuICBJbnN0ZWFkLAorICAgICAgICAgICB0
aGUgVk1UcmFwcyBtZWNoYW5pc20gcmVsaWVzIG9uIHRoZSBzY3JpcHQgdGhyZWFkIHJ1bm5pbmcg
dG8gYW4gb3BfY2hlY2tfdHJhcHMKKyAgICAgICAgICAgaW4gdGhlIGJhc2VsaW5lIEpJVCBjb2Rl
IHdoZXJlIGl0IHdpbGwgZG8gdGhlIG5lY2Vzc2FyeSBqZXR0aXNvbmluZyBvZiBvcHRpbWl6ZWQK
KyAgICAgICAgICAgQ29kZUJsb2Nrcy4KKworICAgICAgICBTaW5jZSB0aGUgb3BfY2hlY2tfdHJh
cHMgbmV2ZXIgZ2V0IGV4ZWN1dGVkLCB0aGUgVk0gd2lsbCBwZXJwZXR1YWxseSB0aWVyIHVwIGlu
CisgICAgICAgIHRoZSBvcF9sb29wX2hpbnQsIE9TUiBleGl0IHRvIHRoZSBvcF9qbXAsIGp1bXAg
dG8gdGhlIG9wX2xvb3BfaGludCwgYW5kIHJlcGVhdC4KKyAgICAgICAgQ29uc2VxdWVudGx5LCB0
aGUgd2F0Y2hkb2cgZmFpbHMgdG8gdGVybWluYXRlIHRoaXMgc2NyaXB0LgorCisgICAgICAgIElu
IHRoaXMgcGF0Y2gsIHdlIGZpeCB0aGlzIGJ5IG1ha2luZyB0aGUgREZHIEJ5dGVjb2RlUGFyc2Vy
IGVtaXQgYW4gSW52YWxpZGF0aW9uUG9pbnQKKyAgICAgICAgbm9kZSBkaXJlY3RseSAod2hlbiB0
aGUgVk0gaXMgbm90IGNvbmZpZ3VyZWQgdG8gdXNlIHBvbGxpbmcgdHJhcHMpLiAgVGhpcyBlbnN1
cmVzCisgICAgICAgIHRoYXQgdGhlIGNoZWNrIHRyYXBzIGludmFsaWRhdGlvbiBwb2ludCB3aWxs
IE9TUiBleGl0IHRvIHRoZSBvcF9jaGVja190cmFwcyBvcGNvZGUKKyAgICAgICAgaW4gdGhlIGJh
c2VsaW5lIEpJVC4KKworICAgICAgICBJbiB0aGlzIHBhdGNoLCB3ZSBhbHNvIGNoYW5nZSBWTVRy
YXBzOjp0cnlJbnN0YWxsVHJhcEJyZWFrcG9pbnRzKCkgdG8gdXNlCisgICAgICAgIENhbGxGcmFt
ZTo6dW5zYWZlQ29kZUJsb2NrKCkgaW5zdGVhZCBvZiBDYWxsRnJhbWU6OmNvZGVCbG9jaygpLiAg
VGhpcyBpcyBiZWNhdXNlCisgICAgICAgIHdlIGRvbid0IHJlYWxseSBrbm93IGlmIHRoZSBmcmFt
ZSBpcyBwcm9wZXJseSBzZXQgdXAuICBXZSdyZSBqdXN0IGNvbnNlcnZhdGl2ZWx5CisgICAgICAg
IHByb2JpbmcgdGhlIHN0YWNrLiAgQVNBTiBkb2VzIG5vdCBsaWtlIHRoaXMgcHJvYmluZy4gIFVz
aW5nIHVuc2FmZUNvZGVCbG9jaygpIGhlcmUKKyAgICAgICAgd2lsbCBzdXBwcmVzcyB0aGUgZmFs
c2UgcG9zaXRpdmUgQVNBTiBjb21wbGFpbnQuCisKKyAgICAgICAgKiBkZmcvREZHQnl0ZUNvZGVQ
YXJzZXIuY3BwOgorICAgICAgICAoSlNDOjpERkc6OkJ5dGVDb2RlUGFyc2VyOjpwYXJzZUJsb2Nr
KToKKyAgICAgICAgKiBkZmcvREZHQ2xvYmJlcml6ZS5oOgorICAgICAgICAoSlNDOjpERkc6OmNs
b2JiZXJpemUpOgorICAgICAgICAqIGRmZy9ERkdGaXh1cFBoYXNlLmNwcDoKKyAgICAgICAgKEpT
Qzo6REZHOjpGaXh1cFBoYXNlOjpmaXh1cE5vZGUpOgorICAgICAgICAqIGRmZy9ERkdQcmVkaWN0
aW9uUHJvcGFnYXRpb25QaGFzZS5jcHA6CisgICAgICAgICogZGZnL0RGR1NwZWN1bGF0aXZlSklU
MzJfNjQuY3BwOgorICAgICAgICAoSlNDOjpERkc6OlNwZWN1bGF0aXZlSklUOjpjb21waWxlKToK
KyAgICAgICAgKiBkZmcvREZHU3BlY3VsYXRpdmVKSVQ2NC5jcHA6CisgICAgICAgIChKU0M6OkRG
Rzo6U3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGUpOgorICAgICAgICAqIGZ0bC9GVExMb3dlckRGR1Rv
QjMuY3BwOgorICAgICAgICAoSlNDOjpGVEw6OkRGRzo6TG93ZXJERkdUb0IzOjpjb21waWxlTm9k
ZSk6CisgICAgICAgICogcnVudGltZS9WTVRyYXBzLmNwcDoKKyAgICAgICAgKEpTQzo6Vk1UcmFw
czo6dHJ5SW5zdGFsbFRyYXBCcmVha3BvaW50cyk6CisKIDIwMTgtMDgtMjQgIFl1c3VrZSBTdXp1
a2kgIDx5dXN1a2VzdXp1a2lAc2xvd3N0YXJ0Lm9yZz4KIAogICAgICAgICBGdW5jdGlvbiBvYmpl
Y3Qgc2hvdWxkIGNvbnZlcnQgcGFyYW1zIHRvIHN0cmluZyBiZWZvcmUgdGhyb3cgYSBwYXJzaW5n
IGVycm9yCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFyc2Vy
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2Rl
UGFyc2VyLmNwcAkocmV2aXNpb24gMjM1NTYwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdCeXRlQ29kZVBhcnNlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY0MDUsNyArNjQwNSw3
IEBAIHZvaWQgQnl0ZUNvZGVQYXJzZXI6OnBhcnNlQmxvY2sodW5zaWduZWQKICAgICAgICAgfQog
ICAgICAgICAKICAgICAgICAgY2FzZSBvcF9jaGVja190cmFwczogewotICAgICAgICAgICAgYWRk
VG9HcmFwaChDaGVja1RyYXBzKTsKKyAgICAgICAgICAgIGFkZFRvR3JhcGgoT3B0aW9uczo6dXNl
UG9sbGluZ1RyYXBzKCkgPyBDaGVja1RyYXBzIDogSW52YWxpZGF0aW9uUG9pbnQpOwogICAgICAg
ICAgICAgTkVYVF9PUENPREUob3BfY2hlY2tfdHJhcHMpOwogICAgICAgICB9CiAKSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ2xvYmJlcml6ZS5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ2xvYmJlcml6ZS5oCShyZXZpc2lvbiAyMzU1NjAp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Nsb2JiZXJpemUuaAkod29ya2luZyBj
b3B5KQpAQCAtNDcxLDExICs0NzEsOCBAQCB2b2lkIGNsb2JiZXJpemUoR3JhcGgmIGdyYXBoLCBO
b2RlKiBub2RlCiAgICAgICAgIHJldHVybjsKIAogICAgIGNhc2UgQ2hlY2tUcmFwczoKLSAgICAg
ICAgaWYgKE9wdGlvbnM6OnVzZVBvbGxpbmdUcmFwcygpKSB7Ci0gICAgICAgICAgICByZWFkKElu
dGVybmFsU3RhdGUpOwotICAgICAgICAgICAgd3JpdGUoSW50ZXJuYWxTdGF0ZSk7Ci0gICAgICAg
IH0gZWxzZQotICAgICAgICAgICAgd3JpdGUoV2F0Y2hwb2ludF9maXJlKTsKKyAgICAgICAgcmVh
ZChJbnRlcm5hbFN0YXRlKTsKKyAgICAgICAgd3JpdGUoSW50ZXJuYWxTdGF0ZSk7CiAgICAgICAg
IHJldHVybjsKIAogICAgIGNhc2UgSW52YWxpZGF0aW9uUG9pbnQ6CkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR0ZpeHVwUGhhc2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHRml4dXBQaGFzZS5jcHAJKHJldmlzaW9uIDIzNTU2MCkKKysr
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHRml4dXBQaGFzZS5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTE2MTIsNyArMTYxMiw2IEBAIHByaXZhdGU6CiAgICAgICAgIGNhc2UgQ2hlY2tUaWVy
VXBJbkxvb3A6CiAgICAgICAgIGNhc2UgQ2hlY2tUaWVyVXBBdFJldHVybjoKICAgICAgICAgY2Fz
ZSBDaGVja1RpZXJVcEFuZE9TUkVudGVyOgotICAgICAgICBjYXNlIEludmFsaWRhdGlvblBvaW50
OgogICAgICAgICBjYXNlIENoZWNrQXJyYXk6CiAgICAgICAgIGNhc2UgQ2hlY2tJbkJvdW5kczoK
ICAgICAgICAgY2FzZSBDb25zdGFudFN0b3JhZ2VQb2ludGVyOgpAQCAtMjI0MSw2ICsyMjQwLDcg
QEAgcHJpdmF0ZToKICAgICAgICAgY2FzZSBGaWx0ZXJHZXRCeUlkU3RhdHVzOgogICAgICAgICBj
YXNlIEZpbHRlclB1dEJ5SWRTdGF0dXM6CiAgICAgICAgIGNhc2UgRmlsdGVySW5CeUlkU3RhdHVz
OgorICAgICAgICBjYXNlIEludmFsaWRhdGlvblBvaW50OgogICAgICAgICAgICAgYnJlYWs7CiAj
ZWxzZQogICAgICAgICBkZWZhdWx0OgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9E
RkdQcmVkaWN0aW9uUHJvcGFnYXRpb25QaGFzZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0ph
dmFTY3JpcHRDb3JlL2RmZy9ERkdQcmVkaWN0aW9uUHJvcGFnYXRpb25QaGFzZS5jcHAJKHJldmlz
aW9uIDIzNTU2MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUHJlZGljdGlvblBy
b3BhZ2F0aW9uUGhhc2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMTA1LDcgKzExMDUsNiBAQCBw
cml2YXRlOgogICAgICAgICBjYXNlIENoZWNrVGllclVwSW5Mb29wOgogICAgICAgICBjYXNlIENo
ZWNrVGllclVwQXRSZXR1cm46CiAgICAgICAgIGNhc2UgQ2hlY2tUaWVyVXBBbmRPU1JFbnRlcjoK
LSAgICAgICAgY2FzZSBJbnZhbGlkYXRpb25Qb2ludDoKICAgICAgICAgY2FzZSBDaGVja0luQm91
bmRzOgogICAgICAgICBjYXNlIFZhbHVlVG9JbnQzMjoKICAgICAgICAgY2FzZSBEb3VibGVSZXA6
CkBAIC0xMjMwLDYgKzEyMjksNyBAQCBwcml2YXRlOgogICAgICAgICBjYXNlIEZpbHRlckluQnlJ
ZFN0YXR1czoKICAgICAgICAgY2FzZSBDbGVhckNhdGNoTG9jYWxzOgogICAgICAgICBjYXNlIERh
dGFWaWV3U2V0OgorICAgICAgICBjYXNlIEludmFsaWRhdGlvblBvaW50OgogICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgICAgICAKICAgICAgICAgLy8gVGhpcyBnZXRzIGlnbm9yZWQgYmVjYXVz
ZSBpdCBvbmx5IHByZXRlbmRzIHRvIHByb2R1Y2UgYSB2YWx1ZS4KSW5kZXg6IFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0LmNwcAkocmV2
aXNpb24gMjM1NTYwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2
ZUpJVDMyXzY0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzk2NCwxMCArMzk2NCw3IEBAIHZvaWQg
U3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGUoTm9kZSogbm9kZSkKICAgICAgICAgYnJlYWs7CiAKICAg
ICBjYXNlIENoZWNrVHJhcHM6Ci0gICAgICAgIGlmIChPcHRpb25zOjp1c2VQb2xsaW5nVHJhcHMo
KSkKLSAgICAgICAgICAgIGNvbXBpbGVDaGVja1RyYXBzKG5vZGUpOwotICAgICAgICBlbHNlCi0g
ICAgICAgICAgICBub1Jlc3VsdChub2RlKTsgLy8gVGhpcyBpcyBhIG5vLW9wLgorICAgICAgICBj
b21waWxlQ2hlY2tUcmFwcyhub2RlKTsKICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNlIENvdW50
RXhlY3V0aW9uOgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2
ZUpJVDY0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1Nw
ZWN1bGF0aXZlSklUNjQuY3BwCShyZXZpc2lvbiAyMzU1NjApCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NDQ1
LDEwICs0NDQ1LDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlKiBub2RlKQog
ICAgICAgICBicmVhazsKIAogICAgIGNhc2UgQ2hlY2tUcmFwczoKLSAgICAgICAgaWYgKE9wdGlv
bnM6OnVzZVBvbGxpbmdUcmFwcygpKQotICAgICAgICAgICAgY29tcGlsZUNoZWNrVHJhcHMobm9k
ZSk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIG5vUmVzdWx0KG5vZGUpOyAvLyBUaGlzIGlz
IGEgbm8tb3AuCisgICAgICAgIGNvbXBpbGVDaGVja1RyYXBzKG5vZGUpOwogICAgICAgICBicmVh
azsKIAogICAgIGNhc2UgUGhhbnRvbToKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwv
RlRMTG93ZXJERkdUb0IzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZnRsL0ZUTExvd2VyREZHVG9CMy5jcHAJKHJldmlzaW9uIDIzNTU2MCkKKysrIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTIx
Niw4ICsxMjE2LDcgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIGNvbXBpbGVNYXRlcmlhbGl6ZUNy
ZWF0ZUFjdGl2YXRpb24oKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIENoZWNr
VHJhcHM6Ci0gICAgICAgICAgICBpZiAoT3B0aW9uczo6dXNlUG9sbGluZ1RyYXBzKCkpCi0gICAg
ICAgICAgICAgICAgY29tcGlsZUNoZWNrVHJhcHMoKTsKKyAgICAgICAgICAgIGNvbXBpbGVDaGVj
a1RyYXBzKCk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBDcmVhdGVSZXN0Ogog
ICAgICAgICAgICAgY29tcGlsZUNyZWF0ZVJlc3QoKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1ZNVHJhcHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1ZNVHJhcHMuY3BwCShyZXZpc2lvbiAyMzU1NjApCisrKyBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9WTVRyYXBzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTI2LDcg
KzEyNiw3IEBAIHZvaWQgVk1UcmFwczo6dHJ5SW5zdGFsbFRyYXBCcmVha3BvaW50cygKICAgICAg
ICAgaWYgKCFpc1NhbmVGcmFtZShjYWxsRnJhbWUsIGNhbGxlZUZyYW1lLCBlbnRyeUZyYW1lLCBz
dGFja0JvdW5kcykpCiAgICAgICAgICAgICByZXR1cm47IC8vIExldCB0aGUgU2lnbmFsU2VuZGVy
IHRyeSBhZ2FpbiBsYXRlci4KIAotICAgICAgICBDb2RlQmxvY2sqIGNhbmRpZGF0ZUNvZGVCbG9j
ayA9IGNhbGxGcmFtZS0+Y29kZUJsb2NrKCk7CisgICAgICAgIENvZGVCbG9jayogY2FuZGlkYXRl
Q29kZUJsb2NrID0gY2FsbEZyYW1lLT51bnNhZmVDb2RlQmxvY2soKTsKICAgICAgICAgaWYgKGNh
bmRpZGF0ZUNvZGVCbG9jayAmJiB2bS5oZWFwLmNvZGVCbG9ja1NldCgpLmNvbnRhaW5zKGNvZGVC
bG9ja1NldExvY2tlciwgY2FuZGlkYXRlQ29kZUJsb2NrKSkgewogICAgICAgICAgICAgZm91bmRD
b2RlQmxvY2sgPSBjYW5kaWRhdGVDb2RlQmxvY2s7CiAgICAgICAgICAgICBicmVhazsK
</data>
<flag name="review"
          id="366388"
          type_id="1"
          status="-"
          setter="mark.lam"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348787</attachid>
            <date>2018-09-03 13:08:11 -0700</date>
            <delta_ts>2018-09-03 16:15:54 -0700</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-189227.patch</filename>
            <type>text/plain</type>
            <size>10473</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyMzU2MDApCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEzIEBACisyMDE4LTA5LTAzICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNv
bT4KKworICAgICAgICBUaGUgd2F0Y2hkb2cgc29tZXRpbWVzIGZhaWxzIHRvIHRlcm1pbmF0ZSBh
IHNjcmlwdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE4OTIyNworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzk5MzI4NTc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvcmVncmVzcy0xODky
Mjctd2F0Y2hkb2ctb24taW5maW5pdGUtbG9vcC5qczogQWRkZWQuCisKIDIwMTgtMDktMDIgIFl1
c3VrZSBTdXp1a2kgIDx5dXN1a2VzdXp1a2lAc2xvd3N0YXJ0Lm9yZz4KIAogICAgICAgICBJbXBs
ZW1lbnQgT2JqZWN0LmZyb21FbnRyaWVzCkluZGV4OiBKU1Rlc3RzL3N0cmVzcy9yZWdyZXNzLTE4
OTIyNy13YXRjaGRvZy1vbi1pbmZpbml0ZS1sb29wLmpzCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMv
c3RyZXNzL3JlZ3Jlc3MtMTg5MjI3LXdhdGNoZG9nLW9uLWluZmluaXRlLWxvb3AuanMJKG5vbmV4
aXN0ZW50KQorKysgSlNUZXN0cy9zdHJlc3MvcmVncmVzcy0xODkyMjctd2F0Y2hkb2ctb24taW5m
aW5pdGUtbG9vcC5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDQgQEAKKy8vQCByZXF1aXJl
T3B0aW9ucygiLS13YXRjaGRvZz0yMCIsICItLWppdFBvbGljeVNjYWxlPTAiLCAiLS13YXRjaGRv
Zy1leGNlcHRpb24tb2siKQorCisvLyBUaGlzIHRlc3Qgc2hvdWxkIG5vdCB0aW1lIG91dC4KK3do
aWxlICgxKSB7IH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjM1NTg4
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAt
MSwzICsxLDc3IEBACisyMDE4LTA5LTAzICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4K
KworICAgICAgICBUaGUgd2F0Y2hkb2cgc29tZXRpbWVzIGZhaWxzIHRvIHRlcm1pbmF0ZSBhIHNj
cmlwdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4
OTIyNworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzk5MzI4NTc+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29uc2lkZXIgdGhlIGZvbGxvd2luZyBz
Y2VuYXJpbzoKKworICAgICAgICAxLiBXZSBoYXZlIGFuIGluZmluaXRlIGxvb3AgYnl0ZWNvZGUg
c2VxdWVuY2UgYXMgZm9sbG93czoKKworICAgICAgICAgICAgWyAgMTNdIGxvb3BfaGludAorICAg
ICAgICAgICAgWyAgMTRdIGNoZWNrX3RyYXBzCisgICAgICAgICAgICBbICAxNV0gam1wICAgICAg
ICAgICAgICAgLTIoLT4xMykKKworICAgICAgICAyLiBUaGUgVk0gdGllcnMgdXAgZnJvbSBMTElu
dCAtPiBCYXNlbGluZUpJVCAtPiBERkcgLT4gRlRMLgorCisgICAgICAgICAgIE5vdGUgdGhhdCBv
cF9jaGVja190cmFwcyBpcyByZXByZXNlbnRlZCBhcyBhIENoZWNrVHJhcHMgbm9kZSBpbiB0aGUg
REZHIGFuZCBGVEwuCisgICAgICAgICAgIFdoZW4gd2UncmUgbm90IHVzaW5nIHBvbGxpbmdUcmFw
cyAoSlNDX3VzZVBvbGxpbmdUcmFwcyBpcyBmYWxzZSBieSBkZWZhdWx0KSwKKyAgICAgICAgICAg
d2UgZW1pdCBubyBjb2RlIGZvciBDaGVja1RyYXBzLCBidXQgb25seSByZWNvcmQgYW4gSW52YWxp
ZGF0aW9uUG9pbnQgdGhlcmUuCisKKyAgICAgICAgMy4gVGhlIHdhdGNoZG9nIGZpcmVzLCBhbmQg
aW52YWxpZGF0ZXMgYWxsIEludmFsaWRhdGlvblBvaW50cyBpbiB0aGUgRlRMIENvZGVCbG9jay4K
KworICAgICAgICAgICBJbnZhbGlkYXRpb25Qb2ludHMgT1NSIGV4aXRzIHRvIHRoZSBuZXh0IGlu
c3RydWN0aW9uIGJ5IGRlc2lnbi4gIEluIHRoaXMgY2FzZSwKKyAgICAgICAgICAgdGhhdCBtZWFu
cyB0aGUgVk0gd2lsbCByZXN1bWVzIGV4ZWN1dGluZyBhdCB0aGUgb3Bfam1wLCB3aGljaCBqdW1w
cyB0byB0aGUKKyAgICAgICAgICAgb3BfbG9vcF9oaW50IG9wY29kZS4gIEF0IHRoZSBsb29wX2hp
bnQsIHRoZSBWTSBkaXNjb3ZlcnMgdGhhdCB0aGUgZnVuY3Rpb24gaXMKKyAgICAgICAgICAgYWxy
ZWFkeSBob3QsIGFuZCBhdHRlbXB0cyB0byB0aWVyIHVwLiAgSXQgaW1tZWRpYXRlbHkgZGlzY292
ZXJzIHRoYXQgYSByZXBsYWNlbWVudAorICAgICAgICAgICBDb2RlQmxvY2sgaXMgYXZhaWxhYmxl
IGJlY2F1c2Ugd2Ugc3RpbGwgaGF2ZW4ndCBqZXR0aXNvbmVkIHRoZSBERkcgQ29kZUJsb2NrCisg
ICAgICAgICAgIG5vciB0aGUgRlRMIENvZGVCbG9jayB0aGF0IHdhcyBwcmV2aW91c2x5IGNvbXBp
bGVkIGZvciB0aGlzIGZ1bmN0aW9uLgorCisgICAgICAgICAgIE5vdGUgdGhhdCBqZXR0aXNvbmlu
ZyBhIENvZGVCbG9jayBuZWNlc3NhcmlseSBtZWFucyB0aGUgVk0gd2lsbCBpbnZhbGlkYXRlCisg
ICAgICAgICAgIGl0cyBJbnZhbGlkYXRpb25Qb2ludHMgKGlmIHRoZSBDb2RlQmxvY2sgaXMgREZH
L0ZUTCkuICBIb3dldmVyLCB0aGUgcmV2ZXJzZQorICAgICAgICAgICBpcyBub3QgdHJ1ZTogbWVy
ZWx5IGludmFsaWRhdGluZyB0aGUgSW52YWxpZGF0aW9uUG9pbnRzIGRvZXMgbm90IG5lY2Vzc2Fy
aWx5CisgICAgICAgICAgIG1lYW4gdGhhdCB0aGUgQ29kZUJsb2NrIGlzIGpldHRpc29uZWQuCisK
KyAgICAgICAgICAgVk1UcmFwczo6dHJ5SW5zdGFsbFRyYXBCcmVha3BvaW50cygpIHJ1bnMgZnJv
bSBhIHNlcGFyYXRlIHRocmVhZC4gIEhlbmNlLAorICAgICAgICAgICBpdCBpcyBvbmx5IHNhZmUg
Zm9yIGl0IHRvIGludmFsaWRhdGUgYSBDb2RlQmxvY2sncyBJbnZhbGlkYXRpb25Qb2ludHMuICBJ
dAorICAgICAgICAgICBpcyBub3Qgc2FmZSBmb3IgdGhlIENvZGVCbG9jayB0byBiZSBqZXR0aXNv
bmVkIGZyb20gYW5vdGhlciB0aHJlYWQuICBJbnN0ZWFkLAorICAgICAgICAgICB0aGUgVk1UcmFw
cyBtZWNoYW5pc20gcmVsaWVzIG9uIHRoZSBzY3JpcHQgdGhyZWFkIHJ1bm5pbmcgdG8gYW4gb3Bf
Y2hlY2tfdHJhcHMKKyAgICAgICAgICAgaW4gdGhlIGJhc2VsaW5lIEpJVCBjb2RlIHdoZXJlIGl0
IHdpbGwgZG8gdGhlIG5lY2Vzc2FyeSBqZXR0aXNvbmluZyBvZiBvcHRpbWl6ZWQKKyAgICAgICAg
ICAgQ29kZUJsb2Nrcy4KKworICAgICAgICBTaW5jZSB0aGUgb3BfY2hlY2tfdHJhcHMgbmV2ZXIg
Z2V0IGV4ZWN1dGVkLCB0aGUgVk0gd2lsbCBwZXJwZXR1YWxseSB0aWVyIHVwIGluCisgICAgICAg
IHRoZSBvcF9sb29wX2hpbnQsIE9TUiBleGl0IHRvIHRoZSBvcF9qbXAsIGp1bXAgdG8gdGhlIG9w
X2xvb3BfaGludCwgYW5kIHJlcGVhdC4KKyAgICAgICAgQ29uc2VxdWVudGx5LCB0aGUgd2F0Y2hk
b2cgZmFpbHMgdG8gdGVybWluYXRlIHRoaXMgc2NyaXB0LgorCisgICAgICAgIEluIHRoaXMgcGF0
Y2gsIHdlIGZpeCB0aGlzIGJ5IG1ha2luZyB0aGUgREZHIEJ5dGVjb2RlUGFyc2VyIGVtaXQgYW4g
SW52YWxpZGF0aW9uUG9pbnQKKyAgICAgICAgbm9kZSBkaXJlY3RseSAod2hlbiB0aGUgVk0gaXMg
bm90IGNvbmZpZ3VyZWQgdG8gdXNlIHBvbGxpbmcgdHJhcHMpLiAgVGhpcyBlbnN1cmVzCisgICAg
ICAgIHRoYXQgdGhlIGNoZWNrIHRyYXBzIGludmFsaWRhdGlvbiBwb2ludCB3aWxsIE9TUiBleGl0
IHRvIHRoZSBvcF9jaGVja190cmFwcyBvcGNvZGUKKyAgICAgICAgaW4gdGhlIGJhc2VsaW5lIEpJ
VC4KKworICAgICAgICBJbiB0aGlzIHBhdGNoLCB3ZSBhbHNvIGNoYW5nZSBWTVRyYXBzOjp0cnlJ
bnN0YWxsVHJhcEJyZWFrcG9pbnRzKCkgdG8gdXNlCisgICAgICAgIENhbGxGcmFtZTo6dW5zYWZl
Q29kZUJsb2NrKCkgaW5zdGVhZCBvZiBDYWxsRnJhbWU6OmNvZGVCbG9jaygpLiAgVGhpcyBpcyBi
ZWNhdXNlCisgICAgICAgIHdlIGRvbid0IHJlYWxseSBrbm93IGlmIHRoZSBmcmFtZSBpcyBwcm9w
ZXJseSBzZXQgdXAuICBXZSdyZSBqdXN0IGNvbnNlcnZhdGl2ZWx5CisgICAgICAgIHByb2Jpbmcg
dGhlIHN0YWNrLiAgQVNBTiBkb2VzIG5vdCBsaWtlIHRoaXMgcHJvYmluZy4gIFVzaW5nIHVuc2Fm
ZUNvZGVCbG9jaygpIGhlcmUKKyAgICAgICAgd2lsbCBzdXBwcmVzcyB0aGUgZmFsc2UgcG9zaXRp
dmUgQVNBTiBjb21wbGFpbnQuCisKKyAgICAgICAgKiBkZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3Bw
OgorICAgICAgICAoSlNDOjpERkc6OkJ5dGVDb2RlUGFyc2VyOjpwYXJzZUJsb2NrKToKKyAgICAg
ICAgKiBkZmcvREZHQ2xvYmJlcml6ZS5oOgorICAgICAgICAoSlNDOjpERkc6OmNsb2JiZXJpemUp
OgorICAgICAgICAqIGRmZy9ERkdGaXh1cFBoYXNlLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpG
aXh1cFBoYXNlOjpmaXh1cE5vZGUpOgorICAgICAgICAqIGRmZy9ERkdQcmVkaWN0aW9uUHJvcGFn
YXRpb25QaGFzZS5jcHA6CisgICAgICAgICogZGZnL0RGR1NwZWN1bGF0aXZlSklUMzJfNjQuY3Bw
OgorICAgICAgICAoSlNDOjpERkc6OlNwZWN1bGF0aXZlSklUOjpjb21waWxlKToKKyAgICAgICAg
KiBkZmcvREZHU3BlY3VsYXRpdmVKSVQ2NC5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3Vs
YXRpdmVKSVQ6OmNvbXBpbGUpOgorICAgICAgICAqIGZ0bC9GVExMb3dlckRGR1RvQjMuY3BwOgor
ICAgICAgICAoSlNDOjpGVEw6OkRGRzo6TG93ZXJERkdUb0IzOjpjb21waWxlTm9kZSk6CisgICAg
ICAgICogcnVudGltZS9WTVRyYXBzLmNwcDoKKyAgICAgICAgKEpTQzo6Vk1UcmFwczo6dHJ5SW5z
dGFsbFRyYXBCcmVha3BvaW50cyk6CisKIDIwMTgtMDgtMjQgIFl1c3VrZSBTdXp1a2kgIDx5dXN1
a2VzdXp1a2lAc2xvd3N0YXJ0Lm9yZz4KIAogICAgICAgICBGdW5jdGlvbiBvYmplY3Qgc2hvdWxk
IGNvbnZlcnQgcGFyYW1zIHRvIHN0cmluZyBiZWZvcmUgdGhyb3cgYSBwYXJzaW5nIGVycm9yCklu
ZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNw
cAkocmV2aXNpb24gMjM1NTYwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRl
Q29kZVBhcnNlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY0MDUsNyArNjQwNSw3IEBAIHZvaWQg
Qnl0ZUNvZGVQYXJzZXI6OnBhcnNlQmxvY2sodW5zaWduZWQKICAgICAgICAgfQogICAgICAgICAK
ICAgICAgICAgY2FzZSBvcF9jaGVja190cmFwczogewotICAgICAgICAgICAgYWRkVG9HcmFwaChD
aGVja1RyYXBzKTsKKyAgICAgICAgICAgIGFkZFRvR3JhcGgoT3B0aW9uczo6dXNlUG9sbGluZ1Ry
YXBzKCkgPyBDaGVja1RyYXBzIDogSW52YWxpZGF0aW9uUG9pbnQpOwogICAgICAgICAgICAgTkVY
VF9PUENPREUob3BfY2hlY2tfdHJhcHMpOwogICAgICAgICB9CiAKSW5kZXg6IFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHQ2xvYmJlcml6ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHQ2xvYmJlcml6ZS5oCShyZXZpc2lvbiAyMzU1NjApCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Nsb2JiZXJpemUuaAkod29ya2luZyBjb3B5KQpAQCAt
NDcxLDExICs0NzEsOCBAQCB2b2lkIGNsb2JiZXJpemUoR3JhcGgmIGdyYXBoLCBOb2RlKiBub2Rl
CiAgICAgICAgIHJldHVybjsKIAogICAgIGNhc2UgQ2hlY2tUcmFwczoKLSAgICAgICAgaWYgKE9w
dGlvbnM6OnVzZVBvbGxpbmdUcmFwcygpKSB7Ci0gICAgICAgICAgICByZWFkKEludGVybmFsU3Rh
dGUpOwotICAgICAgICAgICAgd3JpdGUoSW50ZXJuYWxTdGF0ZSk7Ci0gICAgICAgIH0gZWxzZQot
ICAgICAgICAgICAgd3JpdGUoV2F0Y2hwb2ludF9maXJlKTsKKyAgICAgICAgcmVhZChJbnRlcm5h
bFN0YXRlKTsKKyAgICAgICAgd3JpdGUoSW50ZXJuYWxTdGF0ZSk7CiAgICAgICAgIHJldHVybjsK
IAogICAgIGNhc2UgSW52YWxpZGF0aW9uUG9pbnQ6CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGZnL0RGR0ZpeHVwUGhhc2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHRml4dXBQaGFzZS5jcHAJKHJldmlzaW9uIDIzNTU2MCkKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHRml4dXBQaGFzZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE2
MTIsNyArMTYxMiw2IEBAIHByaXZhdGU6CiAgICAgICAgIGNhc2UgQ2hlY2tUaWVyVXBJbkxvb3A6
CiAgICAgICAgIGNhc2UgQ2hlY2tUaWVyVXBBdFJldHVybjoKICAgICAgICAgY2FzZSBDaGVja1Rp
ZXJVcEFuZE9TUkVudGVyOgotICAgICAgICBjYXNlIEludmFsaWRhdGlvblBvaW50OgogICAgICAg
ICBjYXNlIENoZWNrQXJyYXk6CiAgICAgICAgIGNhc2UgQ2hlY2tJbkJvdW5kczoKICAgICAgICAg
Y2FzZSBDb25zdGFudFN0b3JhZ2VQb2ludGVyOgpAQCAtMjI0MSw2ICsyMjQwLDcgQEAgcHJpdmF0
ZToKICAgICAgICAgY2FzZSBGaWx0ZXJHZXRCeUlkU3RhdHVzOgogICAgICAgICBjYXNlIEZpbHRl
clB1dEJ5SWRTdGF0dXM6CiAgICAgICAgIGNhc2UgRmlsdGVySW5CeUlkU3RhdHVzOgorICAgICAg
ICBjYXNlIEludmFsaWRhdGlvblBvaW50OgogICAgICAgICAgICAgYnJlYWs7CiAjZWxzZQogICAg
ICAgICBkZWZhdWx0OgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdQcmVkaWN0
aW9uUHJvcGFnYXRpb25QaGFzZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL2RmZy9ERkdQcmVkaWN0aW9uUHJvcGFnYXRpb25QaGFzZS5jcHAJKHJldmlzaW9uIDIzNTU2
MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUHJlZGljdGlvblByb3BhZ2F0aW9u
UGhhc2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMTA1LDcgKzExMDUsNiBAQCBwcml2YXRlOgog
ICAgICAgICBjYXNlIENoZWNrVGllclVwSW5Mb29wOgogICAgICAgICBjYXNlIENoZWNrVGllclVw
QXRSZXR1cm46CiAgICAgICAgIGNhc2UgQ2hlY2tUaWVyVXBBbmRPU1JFbnRlcjoKLSAgICAgICAg
Y2FzZSBJbnZhbGlkYXRpb25Qb2ludDoKICAgICAgICAgY2FzZSBDaGVja0luQm91bmRzOgogICAg
ICAgICBjYXNlIFZhbHVlVG9JbnQzMjoKICAgICAgICAgY2FzZSBEb3VibGVSZXA6CkBAIC0xMjMw
LDYgKzEyMjksNyBAQCBwcml2YXRlOgogICAgICAgICBjYXNlIEZpbHRlckluQnlJZFN0YXR1czoK
ICAgICAgICAgY2FzZSBDbGVhckNhdGNoTG9jYWxzOgogICAgICAgICBjYXNlIERhdGFWaWV3U2V0
OgorICAgICAgICBjYXNlIEludmFsaWRhdGlvblBvaW50OgogICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgICAgICAKICAgICAgICAgLy8gVGhpcyBnZXRzIGlnbm9yZWQgYmVjYXVzZSBpdCBvbmx5
IHByZXRlbmRzIHRvIHByb2R1Y2UgYSB2YWx1ZS4KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0ph
dmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0LmNwcAkocmV2aXNpb24gMjM1
NTYwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzk2NCwxMCArMzk2NCw3IEBAIHZvaWQgU3BlY3VsYXRp
dmVKSVQ6OmNvbXBpbGUoTm9kZSogbm9kZSkKICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNlIENo
ZWNrVHJhcHM6Ci0gICAgICAgIGlmIChPcHRpb25zOjp1c2VQb2xsaW5nVHJhcHMoKSkKLSAgICAg
ICAgICAgIGNvbXBpbGVDaGVja1RyYXBzKG5vZGUpOwotICAgICAgICBlbHNlCi0gICAgICAgICAg
ICBub1Jlc3VsdChub2RlKTsgLy8gVGhpcyBpcyBhIG5vLW9wLgorICAgICAgICBjb21waWxlQ2hl
Y2tUcmFwcyhub2RlKTsKICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNlIENvdW50RXhlY3V0aW9u
OgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDY0LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZl
SklUNjQuY3BwCShyZXZpc2lvbiAyMzU1NjApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR1NwZWN1bGF0aXZlSklUNjQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NDQ1LDEwICs0NDQ1
LDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlKiBub2RlKQogICAgICAgICBi
cmVhazsKIAogICAgIGNhc2UgQ2hlY2tUcmFwczoKLSAgICAgICAgaWYgKE9wdGlvbnM6OnVzZVBv
bGxpbmdUcmFwcygpKQotICAgICAgICAgICAgY29tcGlsZUNoZWNrVHJhcHMobm9kZSk7Ci0gICAg
ICAgIGVsc2UKLSAgICAgICAgICAgIG5vUmVzdWx0KG5vZGUpOyAvLyBUaGlzIGlzIGEgbm8tb3Au
CisgICAgICAgIGNvbXBpbGVDaGVja1RyYXBzKG5vZGUpOwogICAgICAgICBicmVhazsKIAogICAg
IGNhc2UgUGhhbnRvbToKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJE
RkdUb0IzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTExv
d2VyREZHVG9CMy5jcHAJKHJldmlzaW9uIDIzNTU2MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTIxNiw4ICsxMjE2
LDcgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIGNvbXBpbGVNYXRlcmlhbGl6ZUNyZWF0ZUFjdGl2
YXRpb24oKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIENoZWNrVHJhcHM6Ci0g
ICAgICAgICAgICBpZiAoT3B0aW9uczo6dXNlUG9sbGluZ1RyYXBzKCkpCi0gICAgICAgICAgICAg
ICAgY29tcGlsZUNoZWNrVHJhcHMoKTsKKyAgICAgICAgICAgIGNvbXBpbGVDaGVja1RyYXBzKCk7
CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBDcmVhdGVSZXN0OgogICAgICAgICAg
ICAgY29tcGlsZUNyZWF0ZVJlc3QoKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1ZNVHJhcHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1ZNVHJhcHMuY3BwCShyZXZpc2lvbiAyMzU1NjApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9WTVRyYXBzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTI2LDcgKzEyNiw3IEBA
IHZvaWQgVk1UcmFwczo6dHJ5SW5zdGFsbFRyYXBCcmVha3BvaW50cygKICAgICAgICAgaWYgKCFp
c1NhbmVGcmFtZShjYWxsRnJhbWUsIGNhbGxlZUZyYW1lLCBlbnRyeUZyYW1lLCBzdGFja0JvdW5k
cykpCiAgICAgICAgICAgICByZXR1cm47IC8vIExldCB0aGUgU2lnbmFsU2VuZGVyIHRyeSBhZ2Fp
biBsYXRlci4KIAotICAgICAgICBDb2RlQmxvY2sqIGNhbmRpZGF0ZUNvZGVCbG9jayA9IGNhbGxG
cmFtZS0+Y29kZUJsb2NrKCk7CisgICAgICAgIENvZGVCbG9jayogY2FuZGlkYXRlQ29kZUJsb2Nr
ID0gY2FsbEZyYW1lLT51bnNhZmVDb2RlQmxvY2soKTsKICAgICAgICAgaWYgKGNhbmRpZGF0ZUNv
ZGVCbG9jayAmJiB2bS5oZWFwLmNvZGVCbG9ja1NldCgpLmNvbnRhaW5zKGNvZGVCbG9ja1NldExv
Y2tlciwgY2FuZGlkYXRlQ29kZUJsb2NrKSkgewogICAgICAgICAgICAgZm91bmRDb2RlQmxvY2sg
PSBjYW5kaWRhdGVDb2RlQmxvY2s7CiAgICAgICAgICAgICBicmVhazsK
</data>
<flag name="review"
          id="366389"
          type_id="1"
          status="+"
          setter="saam"
    />
    <flag name="commit-queue"
          id="366390"
          type_id="3"
          status="-"
          setter="mark.lam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348794</attachid>
            <date>2018-09-03 16:15:54 -0700</date>
            <delta_ts>2018-09-03 19:48:20 -0700</delta_ts>
            <desc>patch for landing.</desc>
            <filename>bug-189227.patch</filename>
            <type>text/plain</type>
            <size>11418</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyMzU2MDEpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEzIEBACisyMDE4LTA5LTAzICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNv
bT4KKworICAgICAgICBUaGUgd2F0Y2hkb2cgc29tZXRpbWVzIGZhaWxzIHRvIHRlcm1pbmF0ZSBh
IHNjcmlwdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE4OTIyNworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzk5MzI4NTc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgU2FhbSBCYXJhdGkuCisKKyAgICAgICAgKiBzdHJlc3MvcmVncmVzcy0xODkyMjct
d2F0Y2hkb2ctb24taW5maW5pdGUtbG9vcC5qczogQWRkZWQuCisKIDIwMTgtMDktMDIgIFl1c3Vr
ZSBTdXp1a2kgIDx5dXN1a2VzdXp1a2lAc2xvd3N0YXJ0Lm9yZz4KIAogICAgICAgICBJbXBsZW1l
bnQgT2JqZWN0LmZyb21FbnRyaWVzCkluZGV4OiBKU1Rlc3RzL3N0cmVzcy9yZWdyZXNzLTE4OTIy
Ny13YXRjaGRvZy1vbi1pbmZpbml0ZS1sb29wLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvc3Ry
ZXNzL3JlZ3Jlc3MtMTg5MjI3LXdhdGNoZG9nLW9uLWluZmluaXRlLWxvb3AuanMJKG5vbmV4aXN0
ZW50KQorKysgSlNUZXN0cy9zdHJlc3MvcmVncmVzcy0xODkyMjctd2F0Y2hkb2ctb24taW5maW5p
dGUtbG9vcC5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDQgQEAKKy8vQCByZXF1aXJlT3B0
aW9ucygiLS13YXRjaGRvZz0yMCIsICItLWppdFBvbGljeVNjYWxlPTAiLCAiLS13YXRjaGRvZy1l
eGNlcHRpb24tb2siKQorCisvLyBUaGlzIHRlc3Qgc2hvdWxkIG5vdCB0aW1lIG91dC4KK3doaWxl
ICgxKSB7IH0KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjM1NjAxKQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDc5IEBACisyMDE4LTA5LTAzICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKwor
ICAgICAgICBUaGUgd2F0Y2hkb2cgc29tZXRpbWVzIGZhaWxzIHRvIHRlcm1pbmF0ZSBhIHNjcmlw
dC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4OTIy
NworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzk5MzI4NTc+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgU2FhbSBCYXJhdGkuCisKKyAgICAgICAgQ29uc2lkZXIgdGhlIGZvbGxvd2luZyBzY2VuYXJp
bzoKKworICAgICAgICAxLiBXZSBoYXZlIGFuIGluZmluaXRlIGxvb3AgYnl0ZWNvZGUgc2VxdWVu
Y2UgYXMgZm9sbG93czoKKworICAgICAgICAgICAgWyAgMTNdIGxvb3BfaGludAorICAgICAgICAg
ICAgWyAgMTRdIGNoZWNrX3RyYXBzCisgICAgICAgICAgICBbICAxNV0gam1wICAgICAgICAgICAg
ICAgLTIoLT4xMykKKworICAgICAgICAyLiBUaGUgVk0gdGllcnMgdXAgZnJvbSBMTEludCAtPiBC
YXNlbGluZUpJVCAtPiBERkcgLT4gRlRMLgorCisgICAgICAgICAgIE5vdGUgdGhhdCBvcF9jaGVj
a190cmFwcyBpcyByZXByZXNlbnRlZCBhcyBhIENoZWNrVHJhcHMgbm9kZSBpbiB0aGUgREZHIGFu
ZCBGVEwuCisgICAgICAgICAgIFdoZW4gd2UncmUgbm90IHVzaW5nIHBvbGxpbmdUcmFwcyAoSlND
X3VzZVBvbGxpbmdUcmFwcyBpcyBmYWxzZSBieSBkZWZhdWx0KSwKKyAgICAgICAgICAgd2UgZW1p
dCBubyBjb2RlIGZvciBDaGVja1RyYXBzLCBidXQgb25seSByZWNvcmQgYW4gSW52YWxpZGF0aW9u
UG9pbnQgdGhlcmUuCisKKyAgICAgICAgMy4gVGhlIHdhdGNoZG9nIGZpcmVzLCBhbmQgaW52YWxp
ZGF0ZXMgYWxsIEludmFsaWRhdGlvblBvaW50cyBpbiB0aGUgRlRMIENvZGVCbG9jay4KKworICAg
ICAgICAgICBJbnZhbGlkYXRpb25Qb2ludHMgT1NSIGV4aXRzIHRvIHRoZSBuZXh0IGluc3RydWN0
aW9uIGJ5IGRlc2lnbi4gIEluIHRoaXMgY2FzZSwKKyAgICAgICAgICAgdGhhdCBtZWFucyB0aGUg
Vk0gd2lsbCByZXN1bWVzIGV4ZWN1dGluZyBhdCB0aGUgb3Bfam1wLCB3aGljaCBqdW1wcyB0byB0
aGUKKyAgICAgICAgICAgb3BfbG9vcF9oaW50IG9wY29kZS4gIEF0IHRoZSBsb29wX2hpbnQsIHRo
ZSBWTSBkaXNjb3ZlcnMgdGhhdCB0aGUgZnVuY3Rpb24gaXMKKyAgICAgICAgICAgYWxyZWFkeSBo
b3QsIGFuZCBhdHRlbXB0cyB0byB0aWVyIHVwLiAgSXQgaW1tZWRpYXRlbHkgZGlzY292ZXJzIHRo
YXQgYSByZXBsYWNlbWVudAorICAgICAgICAgICBDb2RlQmxvY2sgaXMgYXZhaWxhYmxlIGJlY2F1
c2Ugd2Ugc3RpbGwgaGF2ZW4ndCBqZXR0aXNvbmVkIHRoZSBERkcgQ29kZUJsb2NrCisgICAgICAg
ICAgIG5vciB0aGUgRlRMIENvZGVCbG9jayB0aGF0IHdhcyBwcmV2aW91c2x5IGNvbXBpbGVkIGZv
ciB0aGlzIGZ1bmN0aW9uLgorCisgICAgICAgICAgIE5vdGUgdGhhdCBqZXR0aXNvbmluZyBhIENv
ZGVCbG9jayBuZWNlc3NhcmlseSBtZWFucyB0aGUgVk0gd2lsbCBpbnZhbGlkYXRlCisgICAgICAg
ICAgIGl0cyBJbnZhbGlkYXRpb25Qb2ludHMgKGlmIHRoZSBDb2RlQmxvY2sgaXMgREZHL0ZUTCku
ICBIb3dldmVyLCB0aGUgcmV2ZXJzZQorICAgICAgICAgICBpcyBub3QgdHJ1ZTogbWVyZWx5IGlu
dmFsaWRhdGluZyB0aGUgSW52YWxpZGF0aW9uUG9pbnRzIGRvZXMgbm90IG5lY2Vzc2FyaWx5Cisg
ICAgICAgICAgIG1lYW4gdGhhdCB0aGUgQ29kZUJsb2NrIGlzIGpldHRpc29uZWQuCisKKyAgICAg
ICAgICAgVk1UcmFwczo6dHJ5SW5zdGFsbFRyYXBCcmVha3BvaW50cygpIHJ1bnMgZnJvbSBhIHNl
cGFyYXRlIHRocmVhZC4gIEhlbmNlLAorICAgICAgICAgICBpdCBpcyBvbmx5IHNhZmUgZm9yIGl0
IHRvIGludmFsaWRhdGUgYSBDb2RlQmxvY2sncyBJbnZhbGlkYXRpb25Qb2ludHMuICBJdAorICAg
ICAgICAgICBpcyBub3Qgc2FmZSBmb3IgdGhlIENvZGVCbG9jayB0byBiZSBqZXR0aXNvbmVkIGZy
b20gYW5vdGhlciB0aHJlYWQuICBJbnN0ZWFkLAorICAgICAgICAgICB0aGUgVk1UcmFwcyBtZWNo
YW5pc20gcmVsaWVzIG9uIHRoZSBzY3JpcHQgdGhyZWFkIHJ1bm5pbmcgdG8gYW4gb3BfY2hlY2tf
dHJhcHMKKyAgICAgICAgICAgaW4gdGhlIGJhc2VsaW5lIEpJVCBjb2RlIHdoZXJlIGl0IHdpbGwg
ZG8gdGhlIG5lY2Vzc2FyeSBqZXR0aXNvbmluZyBvZiBvcHRpbWl6ZWQKKyAgICAgICAgICAgQ29k
ZUJsb2Nrcy4KKworICAgICAgICBTaW5jZSB0aGUgb3BfY2hlY2tfdHJhcHMgbmV2ZXIgZ2V0IGV4
ZWN1dGVkLCB0aGUgVk0gd2lsbCBwZXJwZXR1YWxseSB0aWVyIHVwIGluCisgICAgICAgIHRoZSBv
cF9sb29wX2hpbnQsIE9TUiBleGl0IHRvIHRoZSBvcF9qbXAsIGp1bXAgdG8gdGhlIG9wX2xvb3Bf
aGludCwgYW5kIHJlcGVhdC4KKyAgICAgICAgQ29uc2VxdWVudGx5LCB0aGUgd2F0Y2hkb2cgZmFp
bHMgdG8gdGVybWluYXRlIHRoaXMgc2NyaXB0LgorCisgICAgICAgIEluIHRoaXMgcGF0Y2gsIHdl
IGZpeCB0aGlzIGJ5IG1ha2luZyB0aGUgREZHIEJ5dGVjb2RlUGFyc2VyIGVtaXQgYW4gSW52YWxp
ZGF0aW9uUG9pbnQKKyAgICAgICAgbm9kZSBkaXJlY3RseSAod2hlbiB0aGUgVk0gaXMgbm90IGNv
bmZpZ3VyZWQgdG8gdXNlIHBvbGxpbmcgdHJhcHMpLiAgVGhpcyBlbnN1cmVzCisgICAgICAgIHRo
YXQgdGhlIGNoZWNrIHRyYXBzIGludmFsaWRhdGlvbiBwb2ludCB3aWxsIE9TUiBleGl0IHRvIHRo
ZSBvcF9jaGVja190cmFwcyBvcGNvZGUKKyAgICAgICAgaW4gdGhlIGJhc2VsaW5lIEpJVC4KKwor
ICAgICAgICBJbiB0aGlzIHBhdGNoLCB3ZSBhbHNvIGNoYW5nZSBWTVRyYXBzOjp0cnlJbnN0YWxs
VHJhcEJyZWFrcG9pbnRzKCkgdG8gdXNlCisgICAgICAgIENhbGxGcmFtZTo6dW5zYWZlQ29kZUJs
b2NrKCkgaW5zdGVhZCBvZiBDYWxsRnJhbWU6OmNvZGVCbG9jaygpLiAgVGhpcyBpcyBiZWNhdXNl
CisgICAgICAgIHdlIGRvbid0IHJlYWxseSBrbm93IGlmIHRoZSBmcmFtZSBpcyBwcm9wZXJseSBz
ZXQgdXAuICBXZSdyZSBqdXN0IGNvbnNlcnZhdGl2ZWx5CisgICAgICAgIHByb2JpbmcgdGhlIHN0
YWNrLiAgQVNBTiBkb2VzIG5vdCBsaWtlIHRoaXMgcHJvYmluZy4gIFVzaW5nIHVuc2FmZUNvZGVC
bG9jaygpIGhlcmUKKyAgICAgICAgd2lsbCBzdXBwcmVzcyB0aGUgZmFsc2UgcG9zaXRpdmUgQVNB
TiBjb21wbGFpbnQuCisKKyAgICAgICAgKiBkZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwOgorICAg
ICAgICAoSlNDOjpERkc6OkJ5dGVDb2RlUGFyc2VyOjpwYXJzZUJsb2NrKToKKyAgICAgICAgKiBk
ZmcvREZHQ2xvYmJlcml6ZS5oOgorICAgICAgICAoSlNDOjpERkc6OmNsb2JiZXJpemUpOgorICAg
ICAgICAqIGRmZy9ERkdGaXh1cFBoYXNlLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpGaXh1cFBo
YXNlOjpmaXh1cE5vZGUpOgorICAgICAgICAqIGRmZy9ERkdQcmVkaWN0aW9uUHJvcGFnYXRpb25Q
aGFzZS5jcHA6CisgICAgICAgICogZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcDoKKyAgICAgICAg
KEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZUNoZWNrVHJhcHMpOgorICAgICAgICAq
IGRmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0LmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpTcGVj
dWxhdGl2ZUpJVDo6Y29tcGlsZSk6CisgICAgICAgICogZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQu
Y3BwOgorICAgICAgICAoSlNDOjpERkc6OlNwZWN1bGF0aXZlSklUOjpjb21waWxlKToKKyAgICAg
ICAgKiBmdGwvRlRMTG93ZXJERkdUb0IzLmNwcDoKKyAgICAgICAgKEpTQzo6RlRMOjpERkc6Okxv
d2VyREZHVG9CMzo6Y29tcGlsZU5vZGUpOgorICAgICAgICAqIHJ1bnRpbWUvVk1UcmFwcy5jcHA6
CisgICAgICAgIChKU0M6OlZNVHJhcHM6OnRyeUluc3RhbGxUcmFwQnJlYWtwb2ludHMpOgorCiAy
MDE4LTA5LTAyICBZdXN1a2UgU3V6dWtpICA8eXVzdWtlc3V6dWtpQHNsb3dzdGFydC5vcmc+CiAK
ICAgICAgICAgSW1wbGVtZW50IE9iamVjdC5mcm9tRW50cmllcwpJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHAJKHJldmlzaW9uIDIzNTYw
MSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC02NDA1LDcgKzY0MDUsNyBAQCB2b2lkIEJ5dGVDb2RlUGFyc2VyOjpw
YXJzZUJsb2NrKHVuc2lnbmVkCiAgICAgICAgIH0KICAgICAgICAgCiAgICAgICAgIGNhc2Ugb3Bf
Y2hlY2tfdHJhcHM6IHsKLSAgICAgICAgICAgIGFkZFRvR3JhcGgoQ2hlY2tUcmFwcyk7CisgICAg
ICAgICAgICBhZGRUb0dyYXBoKE9wdGlvbnM6OnVzZVBvbGxpbmdUcmFwcygpID8gQ2hlY2tUcmFw
cyA6IEludmFsaWRhdGlvblBvaW50KTsKICAgICAgICAgICAgIE5FWFRfT1BDT0RFKG9wX2NoZWNr
X3RyYXBzKTsKICAgICAgICAgfQogCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RG
R0Nsb2JiZXJpemUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RG
R0Nsb2JiZXJpemUuaAkocmV2aXNpb24gMjM1NjAxKQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L2RmZy9ERkdDbG9iYmVyaXplLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ3MSwxMSArNDcxLDggQEAg
dm9pZCBjbG9iYmVyaXplKEdyYXBoJiBncmFwaCwgTm9kZSogbm9kZQogICAgICAgICByZXR1cm47
CiAKICAgICBjYXNlIENoZWNrVHJhcHM6Ci0gICAgICAgIGlmIChPcHRpb25zOjp1c2VQb2xsaW5n
VHJhcHMoKSkgewotICAgICAgICAgICAgcmVhZChJbnRlcm5hbFN0YXRlKTsKLSAgICAgICAgICAg
IHdyaXRlKEludGVybmFsU3RhdGUpOwotICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIHdyaXRl
KFdhdGNocG9pbnRfZmlyZSk7CisgICAgICAgIHJlYWQoSW50ZXJuYWxTdGF0ZSk7CisgICAgICAg
IHdyaXRlKEludGVybmFsU3RhdGUpOwogICAgICAgICByZXR1cm47CiAKICAgICBjYXNlIEludmFs
aWRhdGlvblBvaW50OgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdGaXh1cFBo
YXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0ZpeHVw
UGhhc2UuY3BwCShyZXZpc2lvbiAyMzU2MDEpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR0ZpeHVwUGhhc2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNjEyLDcgKzE2MTIsNiBAQCBw
cml2YXRlOgogICAgICAgICBjYXNlIENoZWNrVGllclVwSW5Mb29wOgogICAgICAgICBjYXNlIENo
ZWNrVGllclVwQXRSZXR1cm46CiAgICAgICAgIGNhc2UgQ2hlY2tUaWVyVXBBbmRPU1JFbnRlcjoK
LSAgICAgICAgY2FzZSBJbnZhbGlkYXRpb25Qb2ludDoKICAgICAgICAgY2FzZSBDaGVja0FycmF5
OgogICAgICAgICBjYXNlIENoZWNrSW5Cb3VuZHM6CiAgICAgICAgIGNhc2UgQ29uc3RhbnRTdG9y
YWdlUG9pbnRlcjoKQEAgLTIyNDEsNiArMjI0MCw3IEBAIHByaXZhdGU6CiAgICAgICAgIGNhc2Ug
RmlsdGVyR2V0QnlJZFN0YXR1czoKICAgICAgICAgY2FzZSBGaWx0ZXJQdXRCeUlkU3RhdHVzOgog
ICAgICAgICBjYXNlIEZpbHRlckluQnlJZFN0YXR1czoKKyAgICAgICAgY2FzZSBJbnZhbGlkYXRp
b25Qb2ludDoKICAgICAgICAgICAgIGJyZWFrOwogI2Vsc2UKICAgICAgICAgZGVmYXVsdDoKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUHJlZGljdGlvblByb3BhZ2F0aW9uUGhh
c2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUHJlZGlj
dGlvblByb3BhZ2F0aW9uUGhhc2UuY3BwCShyZXZpc2lvbiAyMzU2MDEpCisrKyBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNlLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMTEwNSw3ICsxMTA1LDYgQEAgcHJpdmF0ZToKICAgICAgICAgY2FzZSBDaGVj
a1RpZXJVcEluTG9vcDoKICAgICAgICAgY2FzZSBDaGVja1RpZXJVcEF0UmV0dXJuOgogICAgICAg
ICBjYXNlIENoZWNrVGllclVwQW5kT1NSRW50ZXI6Ci0gICAgICAgIGNhc2UgSW52YWxpZGF0aW9u
UG9pbnQ6CiAgICAgICAgIGNhc2UgQ2hlY2tJbkJvdW5kczoKICAgICAgICAgY2FzZSBWYWx1ZVRv
SW50MzI6CiAgICAgICAgIGNhc2UgRG91YmxlUmVwOgpAQCAtMTIzMCw2ICsxMjI5LDcgQEAgcHJp
dmF0ZToKICAgICAgICAgY2FzZSBGaWx0ZXJJbkJ5SWRTdGF0dXM6CiAgICAgICAgIGNhc2UgQ2xl
YXJDYXRjaExvY2FsczoKICAgICAgICAgY2FzZSBEYXRhVmlld1NldDoKKyAgICAgICAgY2FzZSBJ
bnZhbGlkYXRpb25Qb2ludDoKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgCiAgICAg
ICAgIC8vIFRoaXMgZ2V0cyBpZ25vcmVkIGJlY2F1c2UgaXQgb25seSBwcmV0ZW5kcyB0byBwcm9k
dWNlIGEgdmFsdWUuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0
aXZlSklUMzJfNjQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcv
REZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHAJKHJldmlzaW9uIDIzNTYwMSkKKysrIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTM5NjQsMTAgKzM5NjQsNyBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlKE5v
ZGUqIG5vZGUpCiAgICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBDaGVja1RyYXBzOgotICAgICAg
ICBpZiAoT3B0aW9uczo6dXNlUG9sbGluZ1RyYXBzKCkpCi0gICAgICAgICAgICBjb21waWxlQ2hl
Y2tUcmFwcyhub2RlKTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgbm9SZXN1bHQobm9kZSk7
IC8vIFRoaXMgaXMgYSBuby1vcC4KKyAgICAgICAgY29tcGlsZUNoZWNrVHJhcHMobm9kZSk7CiAg
ICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBDb3VudEV4ZWN1dGlvbjoKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQ2NC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDY0LmNwcAkocmV2aXNp
b24gMjM1NjAxKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJ
VDY0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDQ0NSwxMCArNDQ0NSw3IEBAIHZvaWQgU3BlY3Vs
YXRpdmVKSVQ6OmNvbXBpbGUoTm9kZSogbm9kZSkKICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNl
IENoZWNrVHJhcHM6Ci0gICAgICAgIGlmIChPcHRpb25zOjp1c2VQb2xsaW5nVHJhcHMoKSkKLSAg
ICAgICAgICAgIGNvbXBpbGVDaGVja1RyYXBzKG5vZGUpOwotICAgICAgICBlbHNlCi0gICAgICAg
ICAgICBub1Jlc3VsdChub2RlKTsgLy8gVGhpcyBpcyBhIG5vLW9wLgorICAgICAgICBjb21waWxl
Q2hlY2tUcmFwcyhub2RlKTsKICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNlIFBoYW50b206Cklu
ZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmNw
cAkocmV2aXNpb24gMjM1NjAxKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVj
dWxhdGl2ZUpJVC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIwMjgsNyArMjAyOCw3IEBAIHZvaWQg
U3BlY3VsYXRpdmVKSVQ6OmxpbmtPU1JFbnRyaWVzKExpbmsKICAgICB9CiB9CiAgICAgCi12b2lk
IFNwZWN1bGF0aXZlSklUOjpjb21waWxlQ2hlY2tUcmFwcyhOb2RlKikKK3ZvaWQgU3BlY3VsYXRp
dmVKSVQ6OmNvbXBpbGVDaGVja1RyYXBzKE5vZGUqIG5vZGUpCiB7CiAgICAgQVNTRVJUKE9wdGlv
bnM6OnVzZVBvbGxpbmdUcmFwcygpKTsKICAgICBHUFJUZW1wb3JhcnkgdW51c2VkKHRoaXMpOwpA
QCAtMjAzOCw2ICsyMDM4LDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZUNoZWNrVHJh
cHMoTgogICAgICAgICBKSVRDb21waWxlcjo6QWJzb2x1dGVBZGRyZXNzKG1faml0LnZtKCktPm5l
ZWRUcmFwSGFuZGxpbmdBZGRyZXNzKCkpKTsKIAogICAgIGFkZFNsb3dQYXRoR2VuZXJhdG9yKHNs
b3dQYXRoQ2FsbChuZWVkVHJhcEhhbmRsaW5nLCB0aGlzLCBvcGVyYXRpb25IYW5kbGVUcmFwcywg
dW51c2VkR1BSKSk7CisgICAgbm9SZXN1bHQobm9kZSk7CiB9CiAKIHZvaWQgU3BlY3VsYXRpdmVK
SVQ6OmNvbXBpbGVEb3VibGVQdXRCeVZhbChOb2RlKiBub2RlLCBTcGVjdWxhdGVDZWxsT3BlcmFu
ZCYgYmFzZSwgU3BlY3VsYXRlU3RyaWN0SW50MzJPcGVyYW5kJiBwcm9wZXJ0eSkKSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTExvd2VyREZHVG9CMy5jcHAJKHJldmlzaW9u
IDIzNTYwMSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMTIxNiw4ICsxMjE2LDcgQEAgcHJpdmF0ZToKICAgICAgICAg
ICAgIGNvbXBpbGVNYXRlcmlhbGl6ZUNyZWF0ZUFjdGl2YXRpb24oKTsKICAgICAgICAgICAgIGJy
ZWFrOwogICAgICAgICBjYXNlIENoZWNrVHJhcHM6Ci0gICAgICAgICAgICBpZiAoT3B0aW9uczo6
dXNlUG9sbGluZ1RyYXBzKCkpCi0gICAgICAgICAgICAgICAgY29tcGlsZUNoZWNrVHJhcHMoKTsK
KyAgICAgICAgICAgIGNvbXBpbGVDaGVja1RyYXBzKCk7CiAgICAgICAgICAgICBicmVhazsKICAg
ICAgICAgY2FzZSBDcmVhdGVSZXN0OgogICAgICAgICAgICAgY29tcGlsZUNyZWF0ZVJlc3QoKTsK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNVHJhcHMuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNVHJhcHMuY3BwCShyZXZpc2lv
biAyMzU2MDEpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTVRyYXBzLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMTI2LDcgKzEyNiw3IEBAIHZvaWQgVk1UcmFwczo6dHJ5SW5zdGFs
bFRyYXBCcmVha3BvaW50cygKICAgICAgICAgaWYgKCFpc1NhbmVGcmFtZShjYWxsRnJhbWUsIGNh
bGxlZUZyYW1lLCBlbnRyeUZyYW1lLCBzdGFja0JvdW5kcykpCiAgICAgICAgICAgICByZXR1cm47
IC8vIExldCB0aGUgU2lnbmFsU2VuZGVyIHRyeSBhZ2FpbiBsYXRlci4KIAotICAgICAgICBDb2Rl
QmxvY2sqIGNhbmRpZGF0ZUNvZGVCbG9jayA9IGNhbGxGcmFtZS0+Y29kZUJsb2NrKCk7CisgICAg
ICAgIENvZGVCbG9jayogY2FuZGlkYXRlQ29kZUJsb2NrID0gY2FsbEZyYW1lLT51bnNhZmVDb2Rl
QmxvY2soKTsKICAgICAgICAgaWYgKGNhbmRpZGF0ZUNvZGVCbG9jayAmJiB2bS5oZWFwLmNvZGVC
bG9ja1NldCgpLmNvbnRhaW5zKGNvZGVCbG9ja1NldExvY2tlciwgY2FuZGlkYXRlQ29kZUJsb2Nr
KSkgewogICAgICAgICAgICAgZm91bmRDb2RlQmxvY2sgPSBjYW5kaWRhdGVDb2RlQmxvY2s7CiAg
ICAgICAgICAgICBicmVhazsK
</data>

          </attachment>
      

    </bug>

</bugzilla>