<?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>222448</bug_id>
          
          <creation_ts>2021-02-25 17:33:50 -0800</creation_ts>
          <short_desc>[MSE] Overlapping MediaSamples are not deleted</short_desc>
          <delta_ts>2021-06-16 00:27:25 -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>Media</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</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="Toshio Ogasawara">toshio.ogasawara</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aboya</cc>
    
    <cc>calvaris</cc>
    
    <cc>don.olmstead</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jean-yves.avenard</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>smoley</cc>
    
    <cc>tomoki.imai</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>Yousuke.Kimoto</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1733614</commentid>
    <comment_count>0</comment_count>
    <who name="Toshio Ogasawara">toshio.ogasawara</who>
    <bug_when>2021-02-25 17:33:50 -0800</bug_when>
    <thetext>In WebKit&apos;s SourceBuffer design, MediaSamples can handle plural frames but the eviction process seemingly expects that a MediaSample should be linked to one frame. With this precondition, some unnecessary MediaSamples in SourceBuffer are not deleted when overlapped MediaSamples are appended.

When overlapped MediaSamples are composed of multiple frame data with DTS order and the following Condition A) or Condition B) is valid, the overlapped MediaSamples are not deleted; such MediaSamples are leaked.

Condition A): A MediaSample&apos;s PTS + its duration exceeds the next MediaSample&apos;s PTS
Condition B): The I-Frame start position of a newly appended MediaSample doesn&apos;t match the I-Frame start position of a MediaSample which is already buffered.

To make the SourceBuffer eviction algorithm more general, the eviction process should check the end of MediaSample instead of presentation timestamp (PTS).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733674</commentid>
    <comment_count>1</comment_count>
      <attachid>421614</attachid>
    <who name="Toshio Ogasawara">toshio.ogasawara</who>
    <bug_when>2021-02-25 22:59:25 -0800</bug_when>
    <thetext>Created attachment 421614
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733773</commentid>
    <comment_count>2</comment_count>
      <attachid>421614</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2021-02-26 08:34:30 -0800</bug_when>
    <thetext>Comment on attachment 421614
patch

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

Happy to see your first patch here! I&apos;ll hunt some reviewers for you that should be cced to this bug.

The EWS is red because the Mac bots are not passing the test you added so that needs to be resolved before this can land.

&gt; Source/WebCore/ChangeLog:8
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        Test: media/media-source/media-source-append-overlapping-mediasample-with-multiple-samples.html

You did a very descriptive bug report so you should include some of that language in here to communicate the change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733806</commentid>
    <comment_count>3</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-02-26 09:33:14 -0800</bug_when>
    <thetext>(In reply to Don Olmstead from comment #2)
&gt; Comment on attachment 421614 [details]
&gt; The EWS is red because the Mac bots are not passing the test you added so
&gt; that needs to be resolved before this can land.

Looks like the macOS EWS bots are unhappy about the capitalization of &quot;bufferedSamplesForTrackID&quot;, which should be &quot;bufferedSamplesForTrackId&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733824</commentid>
    <comment_count>4</comment_count>
      <attachid>421614</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-02-26 09:47:39 -0800</bug_when>
    <thetext>Comment on attachment 421614
patch

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

&gt; Source/WebCore/platform/graphics/SourceBufferPrivate.cpp:1141
&gt; -        // If highest presentation timestamp for track buffer is set and less than or equal to presentation timestamp
&gt; -        if (trackBuffer.highestPresentationTimestamp.isValid() &amp;&amp; trackBuffer.highestPresentationTimestamp - contiguousFrameTolerance &lt;= presentationTimestamp) {
&gt; +        // If highest presentation timestamp for track buffer is set and less than frame end timestamp.
&gt; +        if (trackBuffer.highestPresentationTimestamp.isValid() &amp;&amp; trackBuffer.highestPresentationTimestamp - contiguousFrameTolerance &lt; frameEndTimestamp) {

This text comes directly from the MSE standard, and it looks like it has been changed since this comment was written.  The new text of &quot;3.5.8 Coded Frame Processing&quot; step 1.14, part 2 says:

&gt; If highest end timestamp for track buffer is set and less than or equal to presentation timestamp:

It looks like we do correctly set &quot;highestPresentationTimestamp&quot; to the &quot;frame end timestamp&quot; later in step 1.19, but I do wonder if there were other changes to the specification around &quot;frame end timestamp&quot; that may have been missed. So your proposed change would be a willful departure from the text of the specification. Should this be brought up to the MSE spec authors first?  Or is there another way to solve the issue you&apos;re attempting to fix?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733828</commentid>
    <comment_count>5</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-02-26 09:52:06 -0800</bug_when>
    <thetext>(In reply to Jer Noble from comment #4)
&gt; Comment on attachment 421614 [details]
&gt; patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=421614&amp;action=review
&gt; 
&gt; This text comes directly from the MSE standard, and it looks like it has
&gt; been changed since this comment was written.  The new text of &quot;3.5.8 Coded
&gt; Frame Processing&quot; step 1.14, part 2 says:
&gt; 
&gt; &gt; If highest end timestamp for track buffer is set and less than or equal to presentation timestamp:


Looks like that rename happened as part of: https://github.com/w3c/media-source/commit/ae1709ea0b5152febc81b7992d8a0046f1f51ba6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734742</commentid>
    <comment_count>6</comment_count>
      <attachid>421902</attachid>
    <who name="Toshio Ogasawara">toshio.ogasawara</who>
    <bug_when>2021-03-01 20:54:01 -0800</bug_when>
    <thetext>Created attachment 421902
patch

Fixed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734749</commentid>
    <comment_count>7</comment_count>
    <who name="Toshio Ogasawara">toshio.ogasawara</who>
    <bug_when>2021-03-01 21:20:26 -0800</bug_when>
    <thetext>(In reply to Jer Noble from comment #4)
&gt; Comment on attachment 421614 [details]
&gt; patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=421614&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/SourceBufferPrivate.cpp:1141
&gt; &gt; -        // If highest presentation timestamp for track buffer is set and less than or equal to presentation timestamp
&gt; &gt; -        if (trackBuffer.highestPresentationTimestamp.isValid() &amp;&amp; trackBuffer.highestPresentationTimestamp - contiguousFrameTolerance &lt;= presentationTimestamp) {
&gt; &gt; +        // If highest presentation timestamp for track buffer is set and less than frame end timestamp.
&gt; &gt; +        if (trackBuffer.highestPresentationTimestamp.isValid() &amp;&amp; trackBuffer.highestPresentationTimestamp - contiguousFrameTolerance &lt; frameEndTimestamp) {
&gt; 
&gt; This text comes directly from the MSE standard, and it looks like it has
&gt; been changed since this comment was written.  The new text of &quot;3.5.8 Coded
&gt; Frame Processing&quot; step 1.14, part 2 says:
&gt; 
&gt; &gt; If highest end timestamp for track buffer is set and less than or equal to presentation timestamp:
&gt; 
&gt; It looks like we do correctly set &quot;highestPresentationTimestamp&quot; to the
&gt; &quot;frame end timestamp&quot; later in step 1.19, but I do wonder if there were
&gt; other changes to the specification around &quot;frame end timestamp&quot; that may
&gt; have been missed. So your proposed change would be a willful departure from
&gt; the text of the specification. Should this be brought up to the MSE spec
&gt; authors first?  Or is there another way to solve the issue you&apos;re attempting
&gt; to fix?

I will ask &apos;https://github.com/w3c/media-source/issues&apos; about this issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734774</commentid>
    <comment_count>8</comment_count>
      <attachid>421910</attachid>
    <who name="Toshio Ogasawara">toshio.ogasawara</who>
    <bug_when>2021-03-01 23:54:34 -0800</bug_when>
    <thetext>Created attachment 421910
patch

Fixed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1735203</commentid>
    <comment_count>9</comment_count>
      <attachid>422048</attachid>
    <who name="Toshio Ogasawara">toshio.ogasawara</who>
    <bug_when>2021-03-02 23:36:02 -0800</bug_when>
    <thetext>Created attachment 422048
patch

Fixed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1736033</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-03-04 15:07:45 -0800</bug_when>
    <thetext>&lt;rdar://problem/75059534&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1741050</commentid>
    <comment_count>11</comment_count>
    <who name="Toshio Ogasawara">toshio.ogasawara</who>
    <bug_when>2021-03-17 23:35:11 -0700</bug_when>
    <thetext>I am discussing this issue at w3c/media-source/issue.
https://github.com/w3c/media-source/issues/269</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1741165</commentid>
    <comment_count>12</comment_count>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2021-03-18 04:36:34 -0700</bug_when>
    <thetext>Do you have a sample file or stream that makes use of plural frames?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1742676</commentid>
    <comment_count>13</comment_count>
    <who name="Toshio Ogasawara">toshio.ogasawara</who>
    <bug_when>2021-03-22 22:07:46 -0700</bug_when>
    <thetext>Sample URL:
https://tama.tok.access-company.com/public/WebKit/sample00

In this sample, 0s-6s video&apos;s MediaSamples overlap.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750545</commentid>
    <comment_count>14</comment_count>
    <who name="Toshio Ogasawara">toshio.ogasawara</who>
    <bug_when>2021-04-15 02:27:54 -0700</bug_when>
    <thetext>&gt; If highest end timestamp for track buffer is set and less than or equal to presentation timestamp:
Currently, I am inquiring about the description of this MSE spec in the following issue, but the MSE spec authors has not responded for 3 weeks.

https://github.com/w3c/media-source/issues/269

Please let me know if there is a good way to solve this issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1770099</commentid>
    <comment_count>15</comment_count>
    <who name="Toshio Ogasawara">toshio.ogasawara</who>
    <bug_when>2021-06-16 00:27:25 -0700</bug_when>
    <thetext>Thank you for your cooperation.

https://bugs.webkit.org/show_bug.cgi?id=226481#c9

&gt;A MediaSample can only contain frames that have their pts only ever monotonically increasing.
&gt;MediaSample was only ever designed to contained multiple *audio* frames ; not video.

I understand the specifications of MediaSample.
For video frames, multiple frames are not packaged into the same MediaSample.
We made a mistake in the design for MediaSample
So this ticket is closed as INVALID.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>421614</attachid>
            <date>2021-02-25 22:59:25 -0800</date>
            <delta_ts>2021-03-01 20:50:44 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>7297</size>
            <attacher name="Toshio Ogasawara">toshio.ogasawara</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxYmQzOTRlYTE3ODQuLmQ5NzExNDViNGViNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBA
CisyMDIxLTAyLTI1ICBUb3NoaW8gT2dhc2F3YXJhICA8dG9zaGlvLm9nYXNhd2FyYUBhY2Nlc3Mt
Y29tcGFueS5jb20+CisKKyAgICAgICAgW01TRV0gT3ZlcmxhcHBpbmcgTWVkaWFTYW1wbGVzIGFy
ZSBub3QgZGVsZXRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjIyNDQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1vdmVybGFwcGlu
Zy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1vdmVybGFw
cGluZy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMuaHRtbDogQWRkZWQuCisKIDIw
MjEtMDItMjUgIExhdXJvIE1vdXJhICA8bG1vdXJhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dM
SUJdIEdhcmRlbmluZyBhIGNvdXBsZSBjcmFzaGVzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9t
ZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1vdmVybGFwcGluZy1tZWRpYXNh
bXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVk
aWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtb3ZlcmxhcHBpbmctbWVkaWFzYW1w
bGUtd2l0aC1tdWx0aXBsZS1zYW1wbGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAuLjNhNjNiZTI5NmQ2MAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLW92ZXJsYXBw
aW5nLW1lZGlhc2FtcGxlLXdpdGgtbXVsdGlwbGUtc2FtcGxlcy1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxOCBAQAorCitFWFBFQ1RFRCAoc291cmNlLnJlYWR5U3RhdGUgPT0gJ2Nsb3NlZCcpIE9L
CitFVkVOVChzb3VyY2VvcGVuKQorUlVOKHNvdXJjZUJ1ZmZlciA9IHNvdXJjZS5hZGRTb3VyY2VC
dWZmZXIoInZpZGVvL21vY2s7IGNvZGVjcz1tb2NrIikpCitSVU4oc291cmNlQnVmZmVyLmFwcGVu
ZEJ1ZmZlcihpbml0U2VnbWVudCkpCitFVkVOVCh1cGRhdGVlbmQpCitSVU4oc291cmNlQnVmZmVy
LmFwcGVuZEJ1ZmZlcihzYW1wbGVzKSkKK0VWRU5UKHVwZGF0ZWVuZCkKK1JVTihzb3VyY2VCdWZm
ZXIuYXBwZW5kQnVmZmVyKHNhbXBsZXMpKQorRVZFTlQodXBkYXRlZW5kKQorRVhQRUNURUQgKGJ1
ZmZlcmVkU2FtcGxlcy5sZW5ndGggPT0gJzUnKSBPSwore1BUUyh7NDAxMi8xMDAgPSA0MC4xMjAw
MDB9KSwgRFRTKHs0MDAwLzEwMCA9IDQwLjAwMDAwMH0pLCBkdXJhdGlvbih7OTIvMTAwID0gMC45
MjAwMDB9KSwgZmxhZ3MoMSksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MTA0LzEwMCA9IDQxLjA0
MDAwMH0pLCBEVFMoezQwOTIvMTAwID0gNDAuOTIwMDAwfSksIGR1cmF0aW9uKHsxMDAvMTAwID0g
MS4wMDAwMDB9KSwgZmxhZ3MoMSksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MTg0LzEwMCA9IDQx
Ljg0MDAwMH0pLCBEVFMoezQxNjQvMTAwID0gNDEuNjQwMDAwfSksIGR1cmF0aW9uKHsxMTYvMTAw
ID0gMS4xNjAwMDB9KSwgZmxhZ3MoMCksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MjgwLzEwMCA9
IDQyLjgwMDAwMH0pLCBEVFMoezQyNDgvMTAwID0gNDIuNDgwMDAwfSksIGR1cmF0aW9uKHsxMjgv
MTAwID0gMS4yODAwMDB9KSwgZmxhZ3MoMCksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MzUyLzEw
MCA9IDQzLjUyMDAwMH0pLCBEVFMoezQzNDQvMTAwID0gNDMuNDQwMDAwfSksIGR1cmF0aW9uKHs2
MC8xMDAgPSAwLjYwMDAwMH0pLCBmbGFncygwKSwgZ2VuZXJhdGlvbigwKX0KK0VORCBPRiBURVNU
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3Vy
Y2UtYXBwZW5kLW92ZXJsYXBwaW5nLW1lZGlhc2FtcGxlLXdpdGgtbXVsdGlwbGUtc2FtcGxlcy5o
dG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQt
b3ZlcmxhcHBpbmctbWVkaWFzYW1wbGUtd2l0aC1tdWx0aXBsZS1zYW1wbGVzLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi4zYTRlNzJlNjk4NDUKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFw
cGVuZC1vdmVybGFwcGluZy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMuaHRtbApA
QCAtMCwwICsxLDczIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRp
dGxlPm1vY2stbWVkaWEtc291cmNlPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0ibW9jay1tZWRp
YS1zb3VyY2UuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi92aWRlby10ZXN0Lmpz
Ij48L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorICAgIHZhciBzb3VyY2U7CisgICAgdmFyIHNvdXJj
ZUJ1ZmZlcjsKKyAgICB2YXIgaW5pdFNlZ21lbnQ7CisgICAgdmFyIHNhbXBsZXM7CisgICAgdmFy
IGJ1ZmZlcmVkU2FtcGxlczsKKworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICBp
bnRlcm5hbHMuaW5pdGlhbGl6ZU1vY2tNZWRpYVNvdXJjZSgpOworCisgICAgZnVuY3Rpb24gcnVu
VGVzdCgpIHsKKyAgICAgICAgZmluZE1lZGlhRWxlbWVudCgpOworCisgICAgICAgIHNvdXJjZSA9
IG5ldyBNZWRpYVNvdXJjZSgpOworICAgICAgICB0ZXN0RXhwZWN0ZWQoJ3NvdXJjZS5yZWFkeVN0
YXRlJywgJ2Nsb3NlZCcpOworCisgICAgICAgIHdhaXRGb3JFdmVudE9uKHNvdXJjZSwgJ3NvdXJj
ZW9wZW4nLCBzb3VyY2VPcGVuKTsKKyAgICAgICAgdmFyIHZpZGVvU291cmNlID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgnc291cmNlJyk7CisgICAgICAgIHZpZGVvU291cmNlLnR5cGUgPSAndmlk
ZW8vbW9jazsgY29kZWNzPW1vY2snOworICAgICAgICB2aWRlb1NvdXJjZS5zcmMgPSBVUkwuY3Jl
YXRlT2JqZWN0VVJMKHNvdXJjZSk7CisgICAgICAgIHZpZGVvLmFwcGVuZENoaWxkKHZpZGVvU291
cmNlKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBzb3VyY2VPcGVuKCkgeworICAgICAgICBydW4o
J3NvdXJjZUJ1ZmZlciA9IHNvdXJjZS5hZGRTb3VyY2VCdWZmZXIoInZpZGVvL21vY2s7IGNvZGVj
cz1tb2NrIiknKTsKKyAgICAgICAgd2FpdEZvckV2ZW50T24oc291cmNlQnVmZmVyLCAndXBkYXRl
ZW5kJywgbG9hZFNhbXBsZXMsIGZhbHNlLCB0cnVlKTsKKyAgICAgICAgaW5pdFNlZ21lbnQgPSBt
YWtlQUluaXQoOCwgW21ha2VBVHJhY2soMSwgJ21vY2snLCBUUkFDS19LSU5ELlZJREVPKV0pOwor
ICAgICAgICBydW4oJ3NvdXJjZUJ1ZmZlci5hcHBlbmRCdWZmZXIoaW5pdFNlZ21lbnQpJyk7Cisg
ICAgfQorCisgICAgZnVuY3Rpb24gbG9hZFNhbXBsZXMoKSB7CisgICAgICAgIHNhbXBsZXMgPSBj
b25jYXRlbmF0ZVNhbXBsZXMoWworICAgICAgICAgICAgbWFrZUFTYW1wbGUoNDAxMiwgNDAwMCwg
MTE2LCAxMDAsIDEsIFNBTVBMRV9GTEFHLlNZTkMpLAorICAgICAgICAgICAgbWFrZUFTYW1wbGUo
NDEwMCwgNDA5MiwgIDg0LCAxMDAsIDEsIFNBTVBMRV9GTEFHLk5PTkUpLAorICAgICAgICAgICAg
bWFrZUFTYW1wbGUoNDE4NCwgNDE3MiwgMTI4LCAxMDAsIDEsIFNBTVBMRV9GTEFHLlNZTkMpLAor
ICAgICAgICAgICAgbWFrZUFTYW1wbGUoNDI4MCwgNDI3MiwgIDk2LCAxMDAsIDEsIFNBTVBMRV9G
TEFHLk5PTkUpLAorICAgICAgICAgICAgbWFrZUFTYW1wbGUoNDM3NiwgNDM2NCwgIDM2LCAxMDAs
IDEsIFNBTVBMRV9GTEFHLlNZTkMpLAorICAgICAgICBdKTsKKyAgICAgICAgd2FpdEZvckV2ZW50
T24oc291cmNlQnVmZmVyLCAndXBkYXRlZW5kJywgbG9hZE1vcmVTYW1wbGVzLCBmYWxzZSwgdHJ1
ZSk7CisgICAgICAgIHJ1bignc291cmNlQnVmZmVyLmFwcGVuZEJ1ZmZlcihzYW1wbGVzKScpOwor
ICAgIH0KKworICAgIGZ1bmN0aW9uIGxvYWRNb3JlU2FtcGxlcygpIHsKKyAgICAgICAgc2FtcGxl
cyA9IGNvbmNhdGVuYXRlU2FtcGxlcyhbCisgICAgICAgICAgICBtYWtlQVNhbXBsZSg0MDEyLCA0
MDAwLCAgOTIsIDEwMCwgMSwgU0FNUExFX0ZMQUcuU1lOQyksCisgICAgICAgICAgICBtYWtlQVNh
bXBsZSg0MTA0LCA0MDkyLCAxMDAsIDEwMCwgMSwgU0FNUExFX0ZMQUcuU1lOQyksCisgICAgICAg
ICAgICBtYWtlQVNhbXBsZSg0MTg0LCA0MTY0LCAxMTYsIDEwMCwgMSwgU0FNUExFX0ZMQUcuTk9O
RSksCisgICAgICAgICAgICBtYWtlQVNhbXBsZSg0MjgwLCA0MjQ4LCAxMjgsIDEwMCwgMSwgU0FN
UExFX0ZMQUcuTk9ORSksCisgICAgICAgICAgICBtYWtlQVNhbXBsZSg0MzUyLCA0MzQ0LCAgNjAs
IDEwMCwgMSwgU0FNUExFX0ZMQUcuTk9ORSksCisgICAgICAgIF0pOworICAgICAgICB3YWl0Rm9y
RXZlbnRPbihzb3VyY2VCdWZmZXIsICd1cGRhdGVlbmQnLCBsb2FkQ29tcGxldGUsIGZhbHNlLCB0
cnVlKTsKKyAgICAgICAgcnVuKCdzb3VyY2VCdWZmZXIuYXBwZW5kQnVmZmVyKHNhbXBsZXMpJyk7
CisgICAgfQorCisgICAgZnVuY3Rpb24gbG9hZENvbXBsZXRlKCkgeworICAgICAgICBidWZmZXJl
ZFNhbXBsZXMgPSBpbnRlcm5hbHMuYnVmZmVyZWRTYW1wbGVzRm9yVHJhY2tJRChzb3VyY2VCdWZm
ZXIsIDEpOworICAgICAgICB0ZXN0RXhwZWN0ZWQoImJ1ZmZlcmVkU2FtcGxlcy5sZW5ndGgiLCA1
KTsKKyAgICAgICAgYnVmZmVyZWRTYW1wbGVzLmZvckVhY2goY29uc29sZVdyaXRlKTsKKyAgICAg
ICAgZW5kVGVzdCgpOworICAgIH0KKworICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25s
b2FkPSJydW5UZXN0KCkiPgorICAgIDx2aWRlbz48L3ZpZGVvPgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nCmluZGV4IDRjNWI0MmM0YzM3Mi4uZDUwMWNlYTM5MDA1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTUgQEAKKzIwMjEtMDItMjUgIFRvc2hpbyBPZ2FzYXdhcmEgIDx0b3NoaW8ub2dhc2F3
YXJhQGFjY2Vzcy1jb21wYW55LmNvbT4KKworICAgICAgICBbTVNFXSBPdmVybGFwcGluZyBNZWRp
YVNhbXBsZXMgYXJlIG5vdCBkZWxldGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjI0NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBUZXN0OiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFw
cGVuZC1vdmVybGFwcGluZy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMuaHRtbAor
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvU291cmNlQnVmZmVyUHJpdmF0ZS5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlOjpkaWRSZWNlaXZlU2FtcGxlKToK
KwogMjAyMS0wMi0yNSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgog
CiAgICAgICAgIEVtb2ppIHNlcXVlbmNlcyB3aXRoIGNvbnN0aXR1ZW50cyBpbiB0aGUgVUJMT0NL
X1NZTUJPTFNfQU5EX1BJQ1RPR1JBUEhTX0VYVEVOREVEX0EgVW5pY29kZSBibG9jayBkb24ndCBn
ZXQgY29tYmluZWQgcHJvcGVybHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL1NvdXJjZUJ1ZmZlclByaXZhdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvU291cmNlQnVmZmVyUHJpdmF0ZS5jcHAKaW5kZXggNWMyNjRhYjc2M2Q1Li41
ZGNhMzgyNDE5NDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L1NvdXJjZUJ1ZmZlclByaXZhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL1NvdXJjZUJ1ZmZlclByaXZhdGUuY3BwCkBAIC0xMTM3LDggKzExMzcsOCBAQCB2b2lk
IFNvdXJjZUJ1ZmZlclByaXZhdGU6OmRpZFJlY2VpdmVTYW1wbGUoUmVmPE1lZGlhU2FtcGxlPiYm
IG9yaWdpbmFsU2FtcGxlKQogICAgICAgICAvLyBNUDQgZmlsZXMgd2l0aCBzbGlnaHRseSBvZmYg
dGZkdCBib3hlcywgcHJlc2VudGluZyBhIHNpbWlsYXIgcHJvYmxlbSBhdCB0aGUgYmVnaW5uaW5n
IG9mIGVhY2ggZnJhZ21lbnQuCiAgICAgICAgIGNvbnN0IE1lZGlhVGltZSBjb250aWd1b3VzRnJh
bWVUb2xlcmFuY2UgPSBNZWRpYVRpbWUoMSwgMTAwMCk7CiAKLSAgICAgICAgLy8gSWYgaGlnaGVz
dCBwcmVzZW50YXRpb24gdGltZXN0YW1wIGZvciB0cmFjayBidWZmZXIgaXMgc2V0IGFuZCBsZXNz
IHRoYW4gb3IgZXF1YWwgdG8gcHJlc2VudGF0aW9uIHRpbWVzdGFtcAotICAgICAgICBpZiAodHJh
Y2tCdWZmZXIuaGlnaGVzdFByZXNlbnRhdGlvblRpbWVzdGFtcC5pc1ZhbGlkKCkgJiYgdHJhY2tC
dWZmZXIuaGlnaGVzdFByZXNlbnRhdGlvblRpbWVzdGFtcCAtIGNvbnRpZ3VvdXNGcmFtZVRvbGVy
YW5jZSA8PSBwcmVzZW50YXRpb25UaW1lc3RhbXApIHsKKyAgICAgICAgLy8gSWYgaGlnaGVzdCBw
cmVzZW50YXRpb24gdGltZXN0YW1wIGZvciB0cmFjayBidWZmZXIgaXMgc2V0IGFuZCBsZXNzIHRo
YW4gZnJhbWUgZW5kIHRpbWVzdGFtcC4KKyAgICAgICAgaWYgKHRyYWNrQnVmZmVyLmhpZ2hlc3RQ
cmVzZW50YXRpb25UaW1lc3RhbXAuaXNWYWxpZCgpICYmIHRyYWNrQnVmZmVyLmhpZ2hlc3RQcmVz
ZW50YXRpb25UaW1lc3RhbXAgLSBjb250aWd1b3VzRnJhbWVUb2xlcmFuY2UgPCBmcmFtZUVuZFRp
bWVzdGFtcCkgewogICAgICAgICAgICAgLy8gUmVtb3ZlIGFsbCBjb2RlZCBmcmFtZXMgZnJvbSB0
cmFjayBidWZmZXIgdGhhdCBoYXZlIGEgcHJlc2VudGF0aW9uIHRpbWVzdGFtcCBncmVhdGVyIHRo
YW4gaGlnaGVzdAogICAgICAgICAgICAgLy8gcHJlc2VudGF0aW9uIHRpbWVzdGFtcCBhbmQgbGVz
cyB0aGFuIG9yIGVxdWFsIHRvIGZyYW1lIGVuZCB0aW1lc3RhbXAuCiAgICAgICAgICAgICBkbyB7
Cg==
</data>
<flag name="commit-queue"
          id="440507"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>421902</attachid>
            <date>2021-03-01 20:54:01 -0800</date>
            <delta_ts>2021-03-01 23:53:39 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>7579</size>
            <attacher name="Toshio Ogasawara">toshio.ogasawara</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxYmQzOTRlYTE3ODQuLmQ5NzExNDViNGViNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBA
CisyMDIxLTAyLTI1ICBUb3NoaW8gT2dhc2F3YXJhICA8dG9zaGlvLm9nYXNhd2FyYUBhY2Nlc3Mt
Y29tcGFueS5jb20+CisKKyAgICAgICAgW01TRV0gT3ZlcmxhcHBpbmcgTWVkaWFTYW1wbGVzIGFy
ZSBub3QgZGVsZXRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjIyNDQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1vdmVybGFwcGlu
Zy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1vdmVybGFw
cGluZy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMuaHRtbDogQWRkZWQuCisKIDIw
MjEtMDItMjUgIExhdXJvIE1vdXJhICA8bG1vdXJhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dM
SUJdIEdhcmRlbmluZyBhIGNvdXBsZSBjcmFzaGVzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9t
ZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1vdmVybGFwcGluZy1tZWRpYXNh
bXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVk
aWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtb3ZlcmxhcHBpbmctbWVkaWFzYW1w
bGUtd2l0aC1tdWx0aXBsZS1zYW1wbGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAuLjNhNjNiZTI5NmQ2MAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLW92ZXJsYXBw
aW5nLW1lZGlhc2FtcGxlLXdpdGgtbXVsdGlwbGUtc2FtcGxlcy1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxOCBAQAorCitFWFBFQ1RFRCAoc291cmNlLnJlYWR5U3RhdGUgPT0gJ2Nsb3NlZCcpIE9L
CitFVkVOVChzb3VyY2VvcGVuKQorUlVOKHNvdXJjZUJ1ZmZlciA9IHNvdXJjZS5hZGRTb3VyY2VC
dWZmZXIoInZpZGVvL21vY2s7IGNvZGVjcz1tb2NrIikpCitSVU4oc291cmNlQnVmZmVyLmFwcGVu
ZEJ1ZmZlcihpbml0U2VnbWVudCkpCitFVkVOVCh1cGRhdGVlbmQpCitSVU4oc291cmNlQnVmZmVy
LmFwcGVuZEJ1ZmZlcihzYW1wbGVzKSkKK0VWRU5UKHVwZGF0ZWVuZCkKK1JVTihzb3VyY2VCdWZm
ZXIuYXBwZW5kQnVmZmVyKHNhbXBsZXMpKQorRVZFTlQodXBkYXRlZW5kKQorRVhQRUNURUQgKGJ1
ZmZlcmVkU2FtcGxlcy5sZW5ndGggPT0gJzUnKSBPSwore1BUUyh7NDAxMi8xMDAgPSA0MC4xMjAw
MDB9KSwgRFRTKHs0MDAwLzEwMCA9IDQwLjAwMDAwMH0pLCBkdXJhdGlvbih7OTIvMTAwID0gMC45
MjAwMDB9KSwgZmxhZ3MoMSksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MTA0LzEwMCA9IDQxLjA0
MDAwMH0pLCBEVFMoezQwOTIvMTAwID0gNDAuOTIwMDAwfSksIGR1cmF0aW9uKHsxMDAvMTAwID0g
MS4wMDAwMDB9KSwgZmxhZ3MoMSksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MTg0LzEwMCA9IDQx
Ljg0MDAwMH0pLCBEVFMoezQxNjQvMTAwID0gNDEuNjQwMDAwfSksIGR1cmF0aW9uKHsxMTYvMTAw
ID0gMS4xNjAwMDB9KSwgZmxhZ3MoMCksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MjgwLzEwMCA9
IDQyLjgwMDAwMH0pLCBEVFMoezQyNDgvMTAwID0gNDIuNDgwMDAwfSksIGR1cmF0aW9uKHsxMjgv
MTAwID0gMS4yODAwMDB9KSwgZmxhZ3MoMCksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MzUyLzEw
MCA9IDQzLjUyMDAwMH0pLCBEVFMoezQzNDQvMTAwID0gNDMuNDQwMDAwfSksIGR1cmF0aW9uKHs2
MC8xMDAgPSAwLjYwMDAwMH0pLCBmbGFncygwKSwgZ2VuZXJhdGlvbigwKX0KK0VORCBPRiBURVNU
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3Vy
Y2UtYXBwZW5kLW92ZXJsYXBwaW5nLW1lZGlhc2FtcGxlLXdpdGgtbXVsdGlwbGUtc2FtcGxlcy5o
dG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQt
b3ZlcmxhcHBpbmctbWVkaWFzYW1wbGUtd2l0aC1tdWx0aXBsZS1zYW1wbGVzLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5mZDE1ODk1MGJkZmMKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFw
cGVuZC1vdmVybGFwcGluZy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMuaHRtbApA
QCAtMCwwICsxLDczIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRp
dGxlPm1vY2stbWVkaWEtc291cmNlPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0ibW9jay1tZWRp
YS1zb3VyY2UuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi92aWRlby10ZXN0Lmpz
Ij48L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorICAgIHZhciBzb3VyY2U7CisgICAgdmFyIHNvdXJj
ZUJ1ZmZlcjsKKyAgICB2YXIgaW5pdFNlZ21lbnQ7CisgICAgdmFyIHNhbXBsZXM7CisgICAgdmFy
IGJ1ZmZlcmVkU2FtcGxlczsKKworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICBp
bnRlcm5hbHMuaW5pdGlhbGl6ZU1vY2tNZWRpYVNvdXJjZSgpOworCisgICAgZnVuY3Rpb24gcnVu
VGVzdCgpIHsKKyAgICAgICAgZmluZE1lZGlhRWxlbWVudCgpOworCisgICAgICAgIHNvdXJjZSA9
IG5ldyBNZWRpYVNvdXJjZSgpOworICAgICAgICB0ZXN0RXhwZWN0ZWQoJ3NvdXJjZS5yZWFkeVN0
YXRlJywgJ2Nsb3NlZCcpOworCisgICAgICAgIHdhaXRGb3JFdmVudE9uKHNvdXJjZSwgJ3NvdXJj
ZW9wZW4nLCBzb3VyY2VPcGVuKTsKKyAgICAgICAgdmFyIHZpZGVvU291cmNlID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgnc291cmNlJyk7CisgICAgICAgIHZpZGVvU291cmNlLnR5cGUgPSAndmlk
ZW8vbW9jazsgY29kZWNzPW1vY2snOworICAgICAgICB2aWRlb1NvdXJjZS5zcmMgPSBVUkwuY3Jl
YXRlT2JqZWN0VVJMKHNvdXJjZSk7CisgICAgICAgIHZpZGVvLmFwcGVuZENoaWxkKHZpZGVvU291
cmNlKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBzb3VyY2VPcGVuKCkgeworICAgICAgICBydW4o
J3NvdXJjZUJ1ZmZlciA9IHNvdXJjZS5hZGRTb3VyY2VCdWZmZXIoInZpZGVvL21vY2s7IGNvZGVj
cz1tb2NrIiknKTsKKyAgICAgICAgd2FpdEZvckV2ZW50T24oc291cmNlQnVmZmVyLCAndXBkYXRl
ZW5kJywgbG9hZFNhbXBsZXMsIGZhbHNlLCB0cnVlKTsKKyAgICAgICAgaW5pdFNlZ21lbnQgPSBt
YWtlQUluaXQoOCwgW21ha2VBVHJhY2soMSwgJ21vY2snLCBUUkFDS19LSU5ELlZJREVPKV0pOwor
ICAgICAgICBydW4oJ3NvdXJjZUJ1ZmZlci5hcHBlbmRCdWZmZXIoaW5pdFNlZ21lbnQpJyk7Cisg
ICAgfQorCisgICAgZnVuY3Rpb24gbG9hZFNhbXBsZXMoKSB7CisgICAgICAgIHNhbXBsZXMgPSBj
b25jYXRlbmF0ZVNhbXBsZXMoWworICAgICAgICAgICAgbWFrZUFTYW1wbGUoNDAxMiwgNDAwMCwg
MTE2LCAxMDAsIDEsIFNBTVBMRV9GTEFHLlNZTkMpLAorICAgICAgICAgICAgbWFrZUFTYW1wbGUo
NDEwMCwgNDA5MiwgIDg0LCAxMDAsIDEsIFNBTVBMRV9GTEFHLk5PTkUpLAorICAgICAgICAgICAg
bWFrZUFTYW1wbGUoNDE4NCwgNDE3MiwgMTI4LCAxMDAsIDEsIFNBTVBMRV9GTEFHLlNZTkMpLAor
ICAgICAgICAgICAgbWFrZUFTYW1wbGUoNDI4MCwgNDI3MiwgIDk2LCAxMDAsIDEsIFNBTVBMRV9G
TEFHLk5PTkUpLAorICAgICAgICAgICAgbWFrZUFTYW1wbGUoNDM3NiwgNDM2NCwgIDM2LCAxMDAs
IDEsIFNBTVBMRV9GTEFHLlNZTkMpLAorICAgICAgICBdKTsKKyAgICAgICAgd2FpdEZvckV2ZW50
T24oc291cmNlQnVmZmVyLCAndXBkYXRlZW5kJywgbG9hZE1vcmVTYW1wbGVzLCBmYWxzZSwgdHJ1
ZSk7CisgICAgICAgIHJ1bignc291cmNlQnVmZmVyLmFwcGVuZEJ1ZmZlcihzYW1wbGVzKScpOwor
ICAgIH0KKworICAgIGZ1bmN0aW9uIGxvYWRNb3JlU2FtcGxlcygpIHsKKyAgICAgICAgc2FtcGxl
cyA9IGNvbmNhdGVuYXRlU2FtcGxlcyhbCisgICAgICAgICAgICBtYWtlQVNhbXBsZSg0MDEyLCA0
MDAwLCAgOTIsIDEwMCwgMSwgU0FNUExFX0ZMQUcuU1lOQyksCisgICAgICAgICAgICBtYWtlQVNh
bXBsZSg0MTA0LCA0MDkyLCAxMDAsIDEwMCwgMSwgU0FNUExFX0ZMQUcuU1lOQyksCisgICAgICAg
ICAgICBtYWtlQVNhbXBsZSg0MTg0LCA0MTY0LCAxMTYsIDEwMCwgMSwgU0FNUExFX0ZMQUcuTk9O
RSksCisgICAgICAgICAgICBtYWtlQVNhbXBsZSg0MjgwLCA0MjQ4LCAxMjgsIDEwMCwgMSwgU0FN
UExFX0ZMQUcuTk9ORSksCisgICAgICAgICAgICBtYWtlQVNhbXBsZSg0MzUyLCA0MzQ0LCAgNjAs
IDEwMCwgMSwgU0FNUExFX0ZMQUcuTk9ORSksCisgICAgICAgIF0pOworICAgICAgICB3YWl0Rm9y
RXZlbnRPbihzb3VyY2VCdWZmZXIsICd1cGRhdGVlbmQnLCBsb2FkQ29tcGxldGUsIGZhbHNlLCB0
cnVlKTsKKyAgICAgICAgcnVuKCdzb3VyY2VCdWZmZXIuYXBwZW5kQnVmZmVyKHNhbXBsZXMpJyk7
CisgICAgfQorCisgICAgZnVuY3Rpb24gbG9hZENvbXBsZXRlKCkgeworICAgICAgICBidWZmZXJl
ZFNhbXBsZXMgPSBpbnRlcm5hbHMuYnVmZmVyZWRTYW1wbGVzRm9yVHJhY2tJZChzb3VyY2VCdWZm
ZXIsIDEpOworICAgICAgICB0ZXN0RXhwZWN0ZWQoImJ1ZmZlcmVkU2FtcGxlcy5sZW5ndGgiLCA1
KTsKKyAgICAgICAgYnVmZmVyZWRTYW1wbGVzLmZvckVhY2goY29uc29sZVdyaXRlKTsKKyAgICAg
ICAgZW5kVGVzdCgpOworICAgIH0KKworICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25s
b2FkPSJydW5UZXN0KCkiPgorICAgIDx2aWRlbz48L3ZpZGVvPgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nCmluZGV4IDRjNWI0MmM0YzM3Mi4uOGUwMzFiMGEwZGRlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjAgQEAKKzIwMjEtMDItMjUgIFRvc2hpbyBPZ2FzYXdhcmEgIDx0b3NoaW8ub2dhc2F3
YXJhQGFjY2Vzcy1jb21wYW55LmNvbT4KKworICAgICAgICBbTVNFXSBPdmVybGFwcGluZyBNZWRp
YVNhbXBsZXMgYXJlIG5vdCBkZWxldGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjI0NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBJZiBNZWRpYVNhbXBsZXMgaGFuZGxlIHBsdXJhbCBmcmFtZXMsIHNv
bWUgdW5uZWNlc3NhcnkgTWVkaWFTYW1wbGVzIGluIFNvdXJjZUJ1ZmZlcgorICAgICAgICBtYXkg
bm90IGJlIGRlbGV0ZWQgd2hlbiBvdmVybGFwcGVkIE1lZGlhU2FtcGxlcyBhcmUgYXBwZW5kZWQu
CisgICAgICAgIFRoZSBldmljdGlvbiBwcm9jZXNzIHNob3VsZCBjaGVjayB0aGUgZW5kIG9mIE1l
ZGlhU2FtcGxlIGluc3RlYWQgb2YgcHJlc2VudGF0aW9uCisgICAgICAgIHRpbWVzdGFtcCAoUFRT
KS4KKworICAgICAgICBUZXN0OiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVu
ZC1vdmVybGFwcGluZy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMuaHRtbAorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvU291cmNlQnVmZmVyUHJpdmF0ZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlOjpkaWRSZWNlaXZlU2FtcGxlKToKKwog
MjAyMS0wMi0yNSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAg
ICAgICAgIEVtb2ppIHNlcXVlbmNlcyB3aXRoIGNvbnN0aXR1ZW50cyBpbiB0aGUgVUJMT0NLX1NZ
TUJPTFNfQU5EX1BJQ1RPR1JBUEhTX0VYVEVOREVEX0EgVW5pY29kZSBibG9jayBkb24ndCBnZXQg
Y29tYmluZWQgcHJvcGVybHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL1NvdXJjZUJ1ZmZlclByaXZhdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvU291cmNlQnVmZmVyUHJpdmF0ZS5jcHAKaW5kZXggNWMyNjRhYjc2M2Q1Li41ZGNh
MzgyNDE5NDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1Nv
dXJjZUJ1ZmZlclByaXZhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL1NvdXJjZUJ1ZmZlclByaXZhdGUuY3BwCkBAIC0xMTM3LDggKzExMzcsOCBAQCB2b2lkIFNv
dXJjZUJ1ZmZlclByaXZhdGU6OmRpZFJlY2VpdmVTYW1wbGUoUmVmPE1lZGlhU2FtcGxlPiYmIG9y
aWdpbmFsU2FtcGxlKQogICAgICAgICAvLyBNUDQgZmlsZXMgd2l0aCBzbGlnaHRseSBvZmYgdGZk
dCBib3hlcywgcHJlc2VudGluZyBhIHNpbWlsYXIgcHJvYmxlbSBhdCB0aGUgYmVnaW5uaW5nIG9m
IGVhY2ggZnJhZ21lbnQuCiAgICAgICAgIGNvbnN0IE1lZGlhVGltZSBjb250aWd1b3VzRnJhbWVU
b2xlcmFuY2UgPSBNZWRpYVRpbWUoMSwgMTAwMCk7CiAKLSAgICAgICAgLy8gSWYgaGlnaGVzdCBw
cmVzZW50YXRpb24gdGltZXN0YW1wIGZvciB0cmFjayBidWZmZXIgaXMgc2V0IGFuZCBsZXNzIHRo
YW4gb3IgZXF1YWwgdG8gcHJlc2VudGF0aW9uIHRpbWVzdGFtcAotICAgICAgICBpZiAodHJhY2tC
dWZmZXIuaGlnaGVzdFByZXNlbnRhdGlvblRpbWVzdGFtcC5pc1ZhbGlkKCkgJiYgdHJhY2tCdWZm
ZXIuaGlnaGVzdFByZXNlbnRhdGlvblRpbWVzdGFtcCAtIGNvbnRpZ3VvdXNGcmFtZVRvbGVyYW5j
ZSA8PSBwcmVzZW50YXRpb25UaW1lc3RhbXApIHsKKyAgICAgICAgLy8gSWYgaGlnaGVzdCBwcmVz
ZW50YXRpb24gdGltZXN0YW1wIGZvciB0cmFjayBidWZmZXIgaXMgc2V0IGFuZCBsZXNzIHRoYW4g
ZnJhbWUgZW5kIHRpbWVzdGFtcC4KKyAgICAgICAgaWYgKHRyYWNrQnVmZmVyLmhpZ2hlc3RQcmVz
ZW50YXRpb25UaW1lc3RhbXAuaXNWYWxpZCgpICYmIHRyYWNrQnVmZmVyLmhpZ2hlc3RQcmVzZW50
YXRpb25UaW1lc3RhbXAgLSBjb250aWd1b3VzRnJhbWVUb2xlcmFuY2UgPCBmcmFtZUVuZFRpbWVz
dGFtcCkgewogICAgICAgICAgICAgLy8gUmVtb3ZlIGFsbCBjb2RlZCBmcmFtZXMgZnJvbSB0cmFj
ayBidWZmZXIgdGhhdCBoYXZlIGEgcHJlc2VudGF0aW9uIHRpbWVzdGFtcCBncmVhdGVyIHRoYW4g
aGlnaGVzdAogICAgICAgICAgICAgLy8gcHJlc2VudGF0aW9uIHRpbWVzdGFtcCBhbmQgbGVzcyB0
aGFuIG9yIGVxdWFsIHRvIGZyYW1lIGVuZCB0aW1lc3RhbXAuCiAgICAgICAgICAgICBkbyB7Cg==
</data>
<flag name="commit-queue"
          id="440886"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>421910</attachid>
            <date>2021-03-01 23:54:34 -0800</date>
            <delta_ts>2021-03-02 23:35:06 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>7585</size>
            <attacher name="Toshio Ogasawara">toshio.ogasawara</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxYmQzOTRlYTE3ODQuLmQ5NzExNDViNGViNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBA
CisyMDIxLTAyLTI1ICBUb3NoaW8gT2dhc2F3YXJhICA8dG9zaGlvLm9nYXNhd2FyYUBhY2Nlc3Mt
Y29tcGFueS5jb20+CisKKyAgICAgICAgW01TRV0gT3ZlcmxhcHBpbmcgTWVkaWFTYW1wbGVzIGFy
ZSBub3QgZGVsZXRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjIyNDQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1vdmVybGFwcGlu
Zy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1vdmVybGFw
cGluZy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMuaHRtbDogQWRkZWQuCisKIDIw
MjEtMDItMjUgIExhdXJvIE1vdXJhICA8bG1vdXJhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dM
SUJdIEdhcmRlbmluZyBhIGNvdXBsZSBjcmFzaGVzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9t
ZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1vdmVybGFwcGluZy1tZWRpYXNh
bXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVk
aWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtb3ZlcmxhcHBpbmctbWVkaWFzYW1w
bGUtd2l0aC1tdWx0aXBsZS1zYW1wbGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAuLjNhNjNiZTI5NmQ2MAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLW92ZXJsYXBw
aW5nLW1lZGlhc2FtcGxlLXdpdGgtbXVsdGlwbGUtc2FtcGxlcy1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxOCBAQAorCitFWFBFQ1RFRCAoc291cmNlLnJlYWR5U3RhdGUgPT0gJ2Nsb3NlZCcpIE9L
CitFVkVOVChzb3VyY2VvcGVuKQorUlVOKHNvdXJjZUJ1ZmZlciA9IHNvdXJjZS5hZGRTb3VyY2VC
dWZmZXIoInZpZGVvL21vY2s7IGNvZGVjcz1tb2NrIikpCitSVU4oc291cmNlQnVmZmVyLmFwcGVu
ZEJ1ZmZlcihpbml0U2VnbWVudCkpCitFVkVOVCh1cGRhdGVlbmQpCitSVU4oc291cmNlQnVmZmVy
LmFwcGVuZEJ1ZmZlcihzYW1wbGVzKSkKK0VWRU5UKHVwZGF0ZWVuZCkKK1JVTihzb3VyY2VCdWZm
ZXIuYXBwZW5kQnVmZmVyKHNhbXBsZXMpKQorRVZFTlQodXBkYXRlZW5kKQorRVhQRUNURUQgKGJ1
ZmZlcmVkU2FtcGxlcy5sZW5ndGggPT0gJzUnKSBPSwore1BUUyh7NDAxMi8xMDAgPSA0MC4xMjAw
MDB9KSwgRFRTKHs0MDAwLzEwMCA9IDQwLjAwMDAwMH0pLCBkdXJhdGlvbih7OTIvMTAwID0gMC45
MjAwMDB9KSwgZmxhZ3MoMSksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MTA0LzEwMCA9IDQxLjA0
MDAwMH0pLCBEVFMoezQwOTIvMTAwID0gNDAuOTIwMDAwfSksIGR1cmF0aW9uKHsxMDAvMTAwID0g
MS4wMDAwMDB9KSwgZmxhZ3MoMSksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MTg0LzEwMCA9IDQx
Ljg0MDAwMH0pLCBEVFMoezQxNjQvMTAwID0gNDEuNjQwMDAwfSksIGR1cmF0aW9uKHsxMTYvMTAw
ID0gMS4xNjAwMDB9KSwgZmxhZ3MoMCksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MjgwLzEwMCA9
IDQyLjgwMDAwMH0pLCBEVFMoezQyNDgvMTAwID0gNDIuNDgwMDAwfSksIGR1cmF0aW9uKHsxMjgv
MTAwID0gMS4yODAwMDB9KSwgZmxhZ3MoMCksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MzUyLzEw
MCA9IDQzLjUyMDAwMH0pLCBEVFMoezQzNDQvMTAwID0gNDMuNDQwMDAwfSksIGR1cmF0aW9uKHs2
MC8xMDAgPSAwLjYwMDAwMH0pLCBmbGFncygwKSwgZ2VuZXJhdGlvbigwKX0KK0VORCBPRiBURVNU
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3Vy
Y2UtYXBwZW5kLW92ZXJsYXBwaW5nLW1lZGlhc2FtcGxlLXdpdGgtbXVsdGlwbGUtc2FtcGxlcy5o
dG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQt
b3ZlcmxhcHBpbmctbWVkaWFzYW1wbGUtd2l0aC1tdWx0aXBsZS1zYW1wbGVzLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi44YTdkNzMzOWZiNDEKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFw
cGVuZC1vdmVybGFwcGluZy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMuaHRtbApA
QCAtMCwwICsxLDczIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRp
dGxlPm1vY2stbWVkaWEtc291cmNlPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0ibW9jay1tZWRp
YS1zb3VyY2UuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi92aWRlby10ZXN0Lmpz
Ij48L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorICAgIHZhciBzb3VyY2U7CisgICAgdmFyIHNvdXJj
ZUJ1ZmZlcjsKKyAgICB2YXIgaW5pdFNlZ21lbnQ7CisgICAgdmFyIHNhbXBsZXM7CisgICAgdmFy
IGJ1ZmZlcmVkU2FtcGxlczsKKworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICBp
bnRlcm5hbHMuaW5pdGlhbGl6ZU1vY2tNZWRpYVNvdXJjZSgpOworCisgICAgZnVuY3Rpb24gcnVu
VGVzdCgpIHsKKyAgICAgICAgZmluZE1lZGlhRWxlbWVudCgpOworCisgICAgICAgIHNvdXJjZSA9
IG5ldyBNZWRpYVNvdXJjZSgpOworICAgICAgICB0ZXN0RXhwZWN0ZWQoJ3NvdXJjZS5yZWFkeVN0
YXRlJywgJ2Nsb3NlZCcpOworCisgICAgICAgIHdhaXRGb3JFdmVudE9uKHNvdXJjZSwgJ3NvdXJj
ZW9wZW4nLCBzb3VyY2VPcGVuKTsKKyAgICAgICAgdmFyIHZpZGVvU291cmNlID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgnc291cmNlJyk7CisgICAgICAgIHZpZGVvU291cmNlLnR5cGUgPSAndmlk
ZW8vbW9jazsgY29kZWNzPW1vY2snOworICAgICAgICB2aWRlb1NvdXJjZS5zcmMgPSBVUkwuY3Jl
YXRlT2JqZWN0VVJMKHNvdXJjZSk7CisgICAgICAgIHZpZGVvLmFwcGVuZENoaWxkKHZpZGVvU291
cmNlKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBzb3VyY2VPcGVuKCkgeworICAgICAgICBydW4o
J3NvdXJjZUJ1ZmZlciA9IHNvdXJjZS5hZGRTb3VyY2VCdWZmZXIoInZpZGVvL21vY2s7IGNvZGVj
cz1tb2NrIiknKTsKKyAgICAgICAgd2FpdEZvckV2ZW50T24oc291cmNlQnVmZmVyLCAndXBkYXRl
ZW5kJywgbG9hZFNhbXBsZXMsIGZhbHNlLCB0cnVlKTsKKyAgICAgICAgaW5pdFNlZ21lbnQgPSBt
YWtlQUluaXQoOCwgW21ha2VBVHJhY2soMSwgJ21vY2snLCBUUkFDS19LSU5ELlZJREVPKV0pOwor
ICAgICAgICBydW4oJ3NvdXJjZUJ1ZmZlci5hcHBlbmRCdWZmZXIoaW5pdFNlZ21lbnQpJyk7Cisg
ICAgfQorCisgICAgZnVuY3Rpb24gbG9hZFNhbXBsZXMoKSB7CisgICAgICAgIHNhbXBsZXMgPSBj
b25jYXRlbmF0ZVNhbXBsZXMoWworICAgICAgICAgICAgbWFrZUFTYW1wbGUoNDAxMiwgNDAwMCwg
MTE2LCAxMDAsIDEsIFNBTVBMRV9GTEFHLlNZTkMpLAorICAgICAgICAgICAgbWFrZUFTYW1wbGUo
NDEwMCwgNDA5MiwgIDg0LCAxMDAsIDEsIFNBTVBMRV9GTEFHLk5PTkUpLAorICAgICAgICAgICAg
bWFrZUFTYW1wbGUoNDE4NCwgNDE3MiwgMTI4LCAxMDAsIDEsIFNBTVBMRV9GTEFHLlNZTkMpLAor
ICAgICAgICAgICAgbWFrZUFTYW1wbGUoNDI4MCwgNDI3MiwgIDk2LCAxMDAsIDEsIFNBTVBMRV9G
TEFHLk5PTkUpLAorICAgICAgICAgICAgbWFrZUFTYW1wbGUoNDM3NiwgNDM2NCwgIDM2LCAxMDAs
IDEsIFNBTVBMRV9GTEFHLlNZTkMpLAorICAgICAgICBdKTsKKyAgICAgICAgd2FpdEZvckV2ZW50
T24oc291cmNlQnVmZmVyLCAndXBkYXRlZW5kJywgbG9hZE1vcmVTYW1wbGVzLCBmYWxzZSwgdHJ1
ZSk7CisgICAgICAgIHJ1bignc291cmNlQnVmZmVyLmFwcGVuZEJ1ZmZlcihzYW1wbGVzKScpOwor
ICAgIH0KKworICAgIGZ1bmN0aW9uIGxvYWRNb3JlU2FtcGxlcygpIHsKKyAgICAgICAgc2FtcGxl
cyA9IGNvbmNhdGVuYXRlU2FtcGxlcyhbCisgICAgICAgICAgICBtYWtlQVNhbXBsZSg0MDEyLCA0
MDAwLCAgOTIsIDEwMCwgMSwgU0FNUExFX0ZMQUcuU1lOQyksCisgICAgICAgICAgICBtYWtlQVNh
bXBsZSg0MTA0LCA0MDkyLCAxMDAsIDEwMCwgMSwgU0FNUExFX0ZMQUcuU1lOQyksCisgICAgICAg
ICAgICBtYWtlQVNhbXBsZSg0MTg0LCA0MTY0LCAxMTYsIDEwMCwgMSwgU0FNUExFX0ZMQUcuTk9O
RSksCisgICAgICAgICAgICBtYWtlQVNhbXBsZSg0MjgwLCA0MjQ4LCAxMjgsIDEwMCwgMSwgU0FN
UExFX0ZMQUcuTk9ORSksCisgICAgICAgICAgICBtYWtlQVNhbXBsZSg0MzUyLCA0MzQ0LCAgNjAs
IDEwMCwgMSwgU0FNUExFX0ZMQUcuTk9ORSksCisgICAgICAgIF0pOworICAgICAgICB3YWl0Rm9y
RXZlbnRPbihzb3VyY2VCdWZmZXIsICd1cGRhdGVlbmQnLCBsb2FkQ29tcGxldGUsIGZhbHNlLCB0
cnVlKTsKKyAgICAgICAgcnVuKCdzb3VyY2VCdWZmZXIuYXBwZW5kQnVmZmVyKHNhbXBsZXMpJyk7
CisgICAgfQorCisgICAgZnVuY3Rpb24gbG9hZENvbXBsZXRlKCkgeworICAgICAgICBidWZmZXJl
ZFNhbXBsZXMgPSBhd2FpdCBpbnRlcm5hbHMuYnVmZmVyZWRTYW1wbGVzRm9yVHJhY2tJZChzb3Vy
Y2VCdWZmZXIsIDEpOworICAgICAgICB0ZXN0RXhwZWN0ZWQoImJ1ZmZlcmVkU2FtcGxlcy5sZW5n
dGgiLCA1KTsKKyAgICAgICAgYnVmZmVyZWRTYW1wbGVzLmZvckVhY2goY29uc29sZVdyaXRlKTsK
KyAgICAgICAgZW5kVGVzdCgpOworICAgIH0KKworICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHkgb25sb2FkPSJydW5UZXN0KCkiPgorICAgIDx2aWRlbz48L3ZpZGVvPgorPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCmluZGV4IDRjNWI0MmM0YzM3Mi4uOGUwMzFiMGEwZGRlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjAgQEAKKzIwMjEtMDItMjUgIFRvc2hpbyBPZ2FzYXdhcmEgIDx0b3NoaW8u
b2dhc2F3YXJhQGFjY2Vzcy1jb21wYW55LmNvbT4KKworICAgICAgICBbTVNFXSBPdmVybGFwcGlu
ZyBNZWRpYVNhbXBsZXMgYXJlIG5vdCBkZWxldGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjI0NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBJZiBNZWRpYVNhbXBsZXMgaGFuZGxlIHBsdXJhbCBmcmFt
ZXMsIHNvbWUgdW5uZWNlc3NhcnkgTWVkaWFTYW1wbGVzIGluIFNvdXJjZUJ1ZmZlcgorICAgICAg
ICBtYXkgbm90IGJlIGRlbGV0ZWQgd2hlbiBvdmVybGFwcGVkIE1lZGlhU2FtcGxlcyBhcmUgYXBw
ZW5kZWQuCisgICAgICAgIFRoZSBldmljdGlvbiBwcm9jZXNzIHNob3VsZCBjaGVjayB0aGUgZW5k
IG9mIE1lZGlhU2FtcGxlIGluc3RlYWQgb2YgcHJlc2VudGF0aW9uCisgICAgICAgIHRpbWVzdGFt
cCAoUFRTKS4KKworICAgICAgICBUZXN0OiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNl
LWFwcGVuZC1vdmVybGFwcGluZy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMuaHRt
bAorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvU291cmNlQnVmZmVyUHJpdmF0ZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlOjpkaWRSZWNlaXZlU2FtcGxl
KToKKwogMjAyMS0wMi0yNSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29t
PgogCiAgICAgICAgIEVtb2ppIHNlcXVlbmNlcyB3aXRoIGNvbnN0aXR1ZW50cyBpbiB0aGUgVUJM
T0NLX1NZTUJPTFNfQU5EX1BJQ1RPR1JBUEhTX0VYVEVOREVEX0EgVW5pY29kZSBibG9jayBkb24n
dCBnZXQgY29tYmluZWQgcHJvcGVybHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL1NvdXJjZUJ1ZmZlclByaXZhdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvU291cmNlQnVmZmVyUHJpdmF0ZS5jcHAKaW5kZXggNWMyNjRhYjc2M2Q1
Li41ZGNhMzgyNDE5NDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL1NvdXJjZUJ1ZmZlclByaXZhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL1NvdXJjZUJ1ZmZlclByaXZhdGUuY3BwCkBAIC0xMTM3LDggKzExMzcsOCBAQCB2
b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGU6OmRpZFJlY2VpdmVTYW1wbGUoUmVmPE1lZGlhU2FtcGxl
PiYmIG9yaWdpbmFsU2FtcGxlKQogICAgICAgICAvLyBNUDQgZmlsZXMgd2l0aCBzbGlnaHRseSBv
ZmYgdGZkdCBib3hlcywgcHJlc2VudGluZyBhIHNpbWlsYXIgcHJvYmxlbSBhdCB0aGUgYmVnaW5u
aW5nIG9mIGVhY2ggZnJhZ21lbnQuCiAgICAgICAgIGNvbnN0IE1lZGlhVGltZSBjb250aWd1b3Vz
RnJhbWVUb2xlcmFuY2UgPSBNZWRpYVRpbWUoMSwgMTAwMCk7CiAKLSAgICAgICAgLy8gSWYgaGln
aGVzdCBwcmVzZW50YXRpb24gdGltZXN0YW1wIGZvciB0cmFjayBidWZmZXIgaXMgc2V0IGFuZCBs
ZXNzIHRoYW4gb3IgZXF1YWwgdG8gcHJlc2VudGF0aW9uIHRpbWVzdGFtcAotICAgICAgICBpZiAo
dHJhY2tCdWZmZXIuaGlnaGVzdFByZXNlbnRhdGlvblRpbWVzdGFtcC5pc1ZhbGlkKCkgJiYgdHJh
Y2tCdWZmZXIuaGlnaGVzdFByZXNlbnRhdGlvblRpbWVzdGFtcCAtIGNvbnRpZ3VvdXNGcmFtZVRv
bGVyYW5jZSA8PSBwcmVzZW50YXRpb25UaW1lc3RhbXApIHsKKyAgICAgICAgLy8gSWYgaGlnaGVz
dCBwcmVzZW50YXRpb24gdGltZXN0YW1wIGZvciB0cmFjayBidWZmZXIgaXMgc2V0IGFuZCBsZXNz
IHRoYW4gZnJhbWUgZW5kIHRpbWVzdGFtcC4KKyAgICAgICAgaWYgKHRyYWNrQnVmZmVyLmhpZ2hl
c3RQcmVzZW50YXRpb25UaW1lc3RhbXAuaXNWYWxpZCgpICYmIHRyYWNrQnVmZmVyLmhpZ2hlc3RQ
cmVzZW50YXRpb25UaW1lc3RhbXAgLSBjb250aWd1b3VzRnJhbWVUb2xlcmFuY2UgPCBmcmFtZUVu
ZFRpbWVzdGFtcCkgewogICAgICAgICAgICAgLy8gUmVtb3ZlIGFsbCBjb2RlZCBmcmFtZXMgZnJv
bSB0cmFjayBidWZmZXIgdGhhdCBoYXZlIGEgcHJlc2VudGF0aW9uIHRpbWVzdGFtcCBncmVhdGVy
IHRoYW4gaGlnaGVzdAogICAgICAgICAgICAgLy8gcHJlc2VudGF0aW9uIHRpbWVzdGFtcCBhbmQg
bGVzcyB0aGFuIG9yIGVxdWFsIHRvIGZyYW1lIGVuZCB0aW1lc3RhbXAuCiAgICAgICAgICAgICBk
byB7Cg==
</data>
<flag name="commit-queue"
          id="440899"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422048</attachid>
            <date>2021-03-02 23:36:02 -0800</date>
            <delta_ts>2021-03-02 23:36:02 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>7591</size>
            <attacher name="Toshio Ogasawara">toshio.ogasawara</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxYmQzOTRlYTE3ODQuLmQ5NzExNDViNGViNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBA
CisyMDIxLTAyLTI1ICBUb3NoaW8gT2dhc2F3YXJhICA8dG9zaGlvLm9nYXNhd2FyYUBhY2Nlc3Mt
Y29tcGFueS5jb20+CisKKyAgICAgICAgW01TRV0gT3ZlcmxhcHBpbmcgTWVkaWFTYW1wbGVzIGFy
ZSBub3QgZGVsZXRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjIyNDQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1vdmVybGFwcGlu
Zy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1vdmVybGFw
cGluZy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMuaHRtbDogQWRkZWQuCisKIDIw
MjEtMDItMjUgIExhdXJvIE1vdXJhICA8bG1vdXJhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dM
SUJdIEdhcmRlbmluZyBhIGNvdXBsZSBjcmFzaGVzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9t
ZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFwcGVuZC1vdmVybGFwcGluZy1tZWRpYXNh
bXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVk
aWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQtb3ZlcmxhcHBpbmctbWVkaWFzYW1w
bGUtd2l0aC1tdWx0aXBsZS1zYW1wbGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAuLjNhNjNiZTI5NmQ2MAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYXBwZW5kLW92ZXJsYXBw
aW5nLW1lZGlhc2FtcGxlLXdpdGgtbXVsdGlwbGUtc2FtcGxlcy1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxOCBAQAorCitFWFBFQ1RFRCAoc291cmNlLnJlYWR5U3RhdGUgPT0gJ2Nsb3NlZCcpIE9L
CitFVkVOVChzb3VyY2VvcGVuKQorUlVOKHNvdXJjZUJ1ZmZlciA9IHNvdXJjZS5hZGRTb3VyY2VC
dWZmZXIoInZpZGVvL21vY2s7IGNvZGVjcz1tb2NrIikpCitSVU4oc291cmNlQnVmZmVyLmFwcGVu
ZEJ1ZmZlcihpbml0U2VnbWVudCkpCitFVkVOVCh1cGRhdGVlbmQpCitSVU4oc291cmNlQnVmZmVy
LmFwcGVuZEJ1ZmZlcihzYW1wbGVzKSkKK0VWRU5UKHVwZGF0ZWVuZCkKK1JVTihzb3VyY2VCdWZm
ZXIuYXBwZW5kQnVmZmVyKHNhbXBsZXMpKQorRVZFTlQodXBkYXRlZW5kKQorRVhQRUNURUQgKGJ1
ZmZlcmVkU2FtcGxlcy5sZW5ndGggPT0gJzUnKSBPSwore1BUUyh7NDAxMi8xMDAgPSA0MC4xMjAw
MDB9KSwgRFRTKHs0MDAwLzEwMCA9IDQwLjAwMDAwMH0pLCBkdXJhdGlvbih7OTIvMTAwID0gMC45
MjAwMDB9KSwgZmxhZ3MoMSksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MTA0LzEwMCA9IDQxLjA0
MDAwMH0pLCBEVFMoezQwOTIvMTAwID0gNDAuOTIwMDAwfSksIGR1cmF0aW9uKHsxMDAvMTAwID0g
MS4wMDAwMDB9KSwgZmxhZ3MoMSksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MTg0LzEwMCA9IDQx
Ljg0MDAwMH0pLCBEVFMoezQxNjQvMTAwID0gNDEuNjQwMDAwfSksIGR1cmF0aW9uKHsxMTYvMTAw
ID0gMS4xNjAwMDB9KSwgZmxhZ3MoMCksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MjgwLzEwMCA9
IDQyLjgwMDAwMH0pLCBEVFMoezQyNDgvMTAwID0gNDIuNDgwMDAwfSksIGR1cmF0aW9uKHsxMjgv
MTAwID0gMS4yODAwMDB9KSwgZmxhZ3MoMCksIGdlbmVyYXRpb24oMCl9Cit7UFRTKHs0MzUyLzEw
MCA9IDQzLjUyMDAwMH0pLCBEVFMoezQzNDQvMTAwID0gNDMuNDQwMDAwfSksIGR1cmF0aW9uKHs2
MC8xMDAgPSAwLjYwMDAwMH0pLCBmbGFncygwKSwgZ2VuZXJhdGlvbigwKX0KK0VORCBPRiBURVNU
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3Vy
Y2UtYXBwZW5kLW92ZXJsYXBwaW5nLW1lZGlhc2FtcGxlLXdpdGgtbXVsdGlwbGUtc2FtcGxlcy5o
dG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1hcHBlbmQt
b3ZlcmxhcHBpbmctbWVkaWFzYW1wbGUtd2l0aC1tdWx0aXBsZS1zYW1wbGVzLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5kMjg3OTlkMGM4NzAKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFw
cGVuZC1vdmVybGFwcGluZy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBsZXMuaHRtbApA
QCAtMCwwICsxLDczIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRp
dGxlPm1vY2stbWVkaWEtc291cmNlPC90aXRsZT4KKyAgICA8c2NyaXB0IHNyYz0ibW9jay1tZWRp
YS1zb3VyY2UuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi92aWRlby10ZXN0Lmpz
Ij48L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorICAgIHZhciBzb3VyY2U7CisgICAgdmFyIHNvdXJj
ZUJ1ZmZlcjsKKyAgICB2YXIgaW5pdFNlZ21lbnQ7CisgICAgdmFyIHNhbXBsZXM7CisgICAgdmFy
IGJ1ZmZlcmVkU2FtcGxlczsKKworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICBp
bnRlcm5hbHMuaW5pdGlhbGl6ZU1vY2tNZWRpYVNvdXJjZSgpOworCisgICAgZnVuY3Rpb24gcnVu
VGVzdCgpIHsKKyAgICAgICAgZmluZE1lZGlhRWxlbWVudCgpOworCisgICAgICAgIHNvdXJjZSA9
IG5ldyBNZWRpYVNvdXJjZSgpOworICAgICAgICB0ZXN0RXhwZWN0ZWQoJ3NvdXJjZS5yZWFkeVN0
YXRlJywgJ2Nsb3NlZCcpOworCisgICAgICAgIHdhaXRGb3JFdmVudE9uKHNvdXJjZSwgJ3NvdXJj
ZW9wZW4nLCBzb3VyY2VPcGVuKTsKKyAgICAgICAgdmFyIHZpZGVvU291cmNlID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgnc291cmNlJyk7CisgICAgICAgIHZpZGVvU291cmNlLnR5cGUgPSAndmlk
ZW8vbW9jazsgY29kZWNzPW1vY2snOworICAgICAgICB2aWRlb1NvdXJjZS5zcmMgPSBVUkwuY3Jl
YXRlT2JqZWN0VVJMKHNvdXJjZSk7CisgICAgICAgIHZpZGVvLmFwcGVuZENoaWxkKHZpZGVvU291
cmNlKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBzb3VyY2VPcGVuKCkgeworICAgICAgICBydW4o
J3NvdXJjZUJ1ZmZlciA9IHNvdXJjZS5hZGRTb3VyY2VCdWZmZXIoInZpZGVvL21vY2s7IGNvZGVj
cz1tb2NrIiknKTsKKyAgICAgICAgd2FpdEZvckV2ZW50T24oc291cmNlQnVmZmVyLCAndXBkYXRl
ZW5kJywgbG9hZFNhbXBsZXMsIGZhbHNlLCB0cnVlKTsKKyAgICAgICAgaW5pdFNlZ21lbnQgPSBt
YWtlQUluaXQoOCwgW21ha2VBVHJhY2soMSwgJ21vY2snLCBUUkFDS19LSU5ELlZJREVPKV0pOwor
ICAgICAgICBydW4oJ3NvdXJjZUJ1ZmZlci5hcHBlbmRCdWZmZXIoaW5pdFNlZ21lbnQpJyk7Cisg
ICAgfQorCisgICAgZnVuY3Rpb24gbG9hZFNhbXBsZXMoKSB7CisgICAgICAgIHNhbXBsZXMgPSBj
b25jYXRlbmF0ZVNhbXBsZXMoWworICAgICAgICAgICAgbWFrZUFTYW1wbGUoNDAxMiwgNDAwMCwg
MTE2LCAxMDAsIDEsIFNBTVBMRV9GTEFHLlNZTkMpLAorICAgICAgICAgICAgbWFrZUFTYW1wbGUo
NDEwMCwgNDA5MiwgIDg0LCAxMDAsIDEsIFNBTVBMRV9GTEFHLk5PTkUpLAorICAgICAgICAgICAg
bWFrZUFTYW1wbGUoNDE4NCwgNDE3MiwgMTI4LCAxMDAsIDEsIFNBTVBMRV9GTEFHLlNZTkMpLAor
ICAgICAgICAgICAgbWFrZUFTYW1wbGUoNDI4MCwgNDI3MiwgIDk2LCAxMDAsIDEsIFNBTVBMRV9G
TEFHLk5PTkUpLAorICAgICAgICAgICAgbWFrZUFTYW1wbGUoNDM3NiwgNDM2NCwgIDM2LCAxMDAs
IDEsIFNBTVBMRV9GTEFHLlNZTkMpLAorICAgICAgICBdKTsKKyAgICAgICAgd2FpdEZvckV2ZW50
T24oc291cmNlQnVmZmVyLCAndXBkYXRlZW5kJywgbG9hZE1vcmVTYW1wbGVzLCBmYWxzZSwgdHJ1
ZSk7CisgICAgICAgIHJ1bignc291cmNlQnVmZmVyLmFwcGVuZEJ1ZmZlcihzYW1wbGVzKScpOwor
ICAgIH0KKworICAgIGZ1bmN0aW9uIGxvYWRNb3JlU2FtcGxlcygpIHsKKyAgICAgICAgc2FtcGxl
cyA9IGNvbmNhdGVuYXRlU2FtcGxlcyhbCisgICAgICAgICAgICBtYWtlQVNhbXBsZSg0MDEyLCA0
MDAwLCAgOTIsIDEwMCwgMSwgU0FNUExFX0ZMQUcuU1lOQyksCisgICAgICAgICAgICBtYWtlQVNh
bXBsZSg0MTA0LCA0MDkyLCAxMDAsIDEwMCwgMSwgU0FNUExFX0ZMQUcuU1lOQyksCisgICAgICAg
ICAgICBtYWtlQVNhbXBsZSg0MTg0LCA0MTY0LCAxMTYsIDEwMCwgMSwgU0FNUExFX0ZMQUcuTk9O
RSksCisgICAgICAgICAgICBtYWtlQVNhbXBsZSg0MjgwLCA0MjQ4LCAxMjgsIDEwMCwgMSwgU0FN
UExFX0ZMQUcuTk9ORSksCisgICAgICAgICAgICBtYWtlQVNhbXBsZSg0MzUyLCA0MzQ0LCAgNjAs
IDEwMCwgMSwgU0FNUExFX0ZMQUcuTk9ORSksCisgICAgICAgIF0pOworICAgICAgICB3YWl0Rm9y
RXZlbnRPbihzb3VyY2VCdWZmZXIsICd1cGRhdGVlbmQnLCBsb2FkQ29tcGxldGUsIGZhbHNlLCB0
cnVlKTsKKyAgICAgICAgcnVuKCdzb3VyY2VCdWZmZXIuYXBwZW5kQnVmZmVyKHNhbXBsZXMpJyk7
CisgICAgfQorCisgICAgYXN5bmMgZnVuY3Rpb24gbG9hZENvbXBsZXRlKCkgeworICAgICAgICBi
dWZmZXJlZFNhbXBsZXMgPSBhd2FpdCBpbnRlcm5hbHMuYnVmZmVyZWRTYW1wbGVzRm9yVHJhY2tJ
ZChzb3VyY2VCdWZmZXIsIDEpOworICAgICAgICB0ZXN0RXhwZWN0ZWQoImJ1ZmZlcmVkU2FtcGxl
cy5sZW5ndGgiLCA1KTsKKyAgICAgICAgYnVmZmVyZWRTYW1wbGVzLmZvckVhY2goY29uc29sZVdy
aXRlKTsKKyAgICAgICAgZW5kVGVzdCgpOworICAgIH0KKworICAgIDwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgorICAgIDx2aWRlbz48L3ZpZGVvPgorPC9ib2R5
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDRjNWI0MmM0YzM3Mi4uOGUwMzFiMGEwZGRlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjEtMDItMjUgIFRvc2hpbyBPZ2FzYXdhcmEgIDx0
b3NoaW8ub2dhc2F3YXJhQGFjY2Vzcy1jb21wYW55LmNvbT4KKworICAgICAgICBbTVNFXSBPdmVy
bGFwcGluZyBNZWRpYVNhbXBsZXMgYXJlIG5vdCBkZWxldGVkCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjI0NDgKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJZiBNZWRpYVNhbXBsZXMgaGFuZGxlIHBsdXJh
bCBmcmFtZXMsIHNvbWUgdW5uZWNlc3NhcnkgTWVkaWFTYW1wbGVzIGluIFNvdXJjZUJ1ZmZlcgor
ICAgICAgICBtYXkgbm90IGJlIGRlbGV0ZWQgd2hlbiBvdmVybGFwcGVkIE1lZGlhU2FtcGxlcyBh
cmUgYXBwZW5kZWQuCisgICAgICAgIFRoZSBldmljdGlvbiBwcm9jZXNzIHNob3VsZCBjaGVjayB0
aGUgZW5kIG9mIE1lZGlhU2FtcGxlIGluc3RlYWQgb2YgcHJlc2VudGF0aW9uCisgICAgICAgIHRp
bWVzdGFtcCAoUFRTKS4KKworICAgICAgICBUZXN0OiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEt
c291cmNlLWFwcGVuZC1vdmVybGFwcGluZy1tZWRpYXNhbXBsZS13aXRoLW11bHRpcGxlLXNhbXBs
ZXMuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvU291cmNlQnVmZmVyUHJpdmF0
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlOjpkaWRSZWNlaXZl
U2FtcGxlKToKKwogMjAyMS0wMi0yNSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBw
bGUuY29tPgogCiAgICAgICAgIEVtb2ppIHNlcXVlbmNlcyB3aXRoIGNvbnN0aXR1ZW50cyBpbiB0
aGUgVUJMT0NLX1NZTUJPTFNfQU5EX1BJQ1RPR1JBUEhTX0VYVEVOREVEX0EgVW5pY29kZSBibG9j
ayBkb24ndCBnZXQgY29tYmluZWQgcHJvcGVybHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL1NvdXJjZUJ1ZmZlclByaXZhdGUuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvU291cmNlQnVmZmVyUHJpdmF0ZS5jcHAKaW5kZXggNWMyNjRh
Yjc2M2Q1Li41ZGNhMzgyNDE5NDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL1NvdXJjZUJ1ZmZlclByaXZhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL1NvdXJjZUJ1ZmZlclByaXZhdGUuY3BwCkBAIC0xMTM3LDggKzExMzcs
OCBAQCB2b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGU6OmRpZFJlY2VpdmVTYW1wbGUoUmVmPE1lZGlh
U2FtcGxlPiYmIG9yaWdpbmFsU2FtcGxlKQogICAgICAgICAvLyBNUDQgZmlsZXMgd2l0aCBzbGln
aHRseSBvZmYgdGZkdCBib3hlcywgcHJlc2VudGluZyBhIHNpbWlsYXIgcHJvYmxlbSBhdCB0aGUg
YmVnaW5uaW5nIG9mIGVhY2ggZnJhZ21lbnQuCiAgICAgICAgIGNvbnN0IE1lZGlhVGltZSBjb250
aWd1b3VzRnJhbWVUb2xlcmFuY2UgPSBNZWRpYVRpbWUoMSwgMTAwMCk7CiAKLSAgICAgICAgLy8g
SWYgaGlnaGVzdCBwcmVzZW50YXRpb24gdGltZXN0YW1wIGZvciB0cmFjayBidWZmZXIgaXMgc2V0
IGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gcHJlc2VudGF0aW9uIHRpbWVzdGFtcAotICAgICAg
ICBpZiAodHJhY2tCdWZmZXIuaGlnaGVzdFByZXNlbnRhdGlvblRpbWVzdGFtcC5pc1ZhbGlkKCkg
JiYgdHJhY2tCdWZmZXIuaGlnaGVzdFByZXNlbnRhdGlvblRpbWVzdGFtcCAtIGNvbnRpZ3VvdXNG
cmFtZVRvbGVyYW5jZSA8PSBwcmVzZW50YXRpb25UaW1lc3RhbXApIHsKKyAgICAgICAgLy8gSWYg
aGlnaGVzdCBwcmVzZW50YXRpb24gdGltZXN0YW1wIGZvciB0cmFjayBidWZmZXIgaXMgc2V0IGFu
ZCBsZXNzIHRoYW4gZnJhbWUgZW5kIHRpbWVzdGFtcC4KKyAgICAgICAgaWYgKHRyYWNrQnVmZmVy
LmhpZ2hlc3RQcmVzZW50YXRpb25UaW1lc3RhbXAuaXNWYWxpZCgpICYmIHRyYWNrQnVmZmVyLmhp
Z2hlc3RQcmVzZW50YXRpb25UaW1lc3RhbXAgLSBjb250aWd1b3VzRnJhbWVUb2xlcmFuY2UgPCBm
cmFtZUVuZFRpbWVzdGFtcCkgewogICAgICAgICAgICAgLy8gUmVtb3ZlIGFsbCBjb2RlZCBmcmFt
ZXMgZnJvbSB0cmFjayBidWZmZXIgdGhhdCBoYXZlIGEgcHJlc2VudGF0aW9uIHRpbWVzdGFtcCBn
cmVhdGVyIHRoYW4gaGlnaGVzdAogICAgICAgICAgICAgLy8gcHJlc2VudGF0aW9uIHRpbWVzdGFt
cCBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIGZyYW1lIGVuZCB0aW1lc3RhbXAuCiAgICAgICAg
ICAgICBkbyB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>