<?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>178076</bug_id>
          
          <creation_ts>2017-10-09 03:20:36 -0700</creation_ts>
          <short_desc>[MSE][GStreamer] Insert parser elements in AppendPipeline when demuxing opus or Vorbis</short_desc>
          <delta_ts>2017-10-17 02:40:53 -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>WebKitGTK</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alicia Boya García">aboya</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>calvaris</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eocanha</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1358204</commentid>
    <comment_count>0</comment_count>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2017-10-09 03:20:36 -0700</bug_when>
    <thetext>YouTube does not include durations in the webm container for files containing
Opus audio, so we need to read them from the contained stream. Fortunately,
GStreamer has an element to do that: opusparse.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1358957</commentid>
    <comment_count>1</comment_count>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2017-10-10 16:00:35 -0700</bug_when>
    <thetext>webm files from the W3C WPT containing Vorbis have the same problem.

Unfortunately, the output of vorbisparse is not as simple as opusparse&apos;s:
streamheader packets are emitted as GstBuffers downstream even when that same
initialization data has been already pushed with caps events.

Also, buffers with zero-duration appear. It&apos;s not yet clear whether this could
cause a problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1359096</commentid>
    <comment_count>2</comment_count>
      <attachid>323400</attachid>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2017-10-11 02:24:28 -0700</bug_when>
    <thetext>Created attachment 323400
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1359100</commentid>
    <comment_count>3</comment_count>
      <attachid>323400</attachid>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2017-10-11 02:48:50 -0700</bug_when>
    <thetext>Comment on attachment 323400
Patch

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

&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:955
&gt; +    GRefPtr&lt;GstCaps&gt; padCaps = adoptGRef(gst_pad_get_current_caps(GST_PAD(demuxerSrcPad)));

Is this GST_PAD() macro actually needed?

&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:965
&gt; +        return opusparse;

Just a comment for future reference without any action required on your side: opusparse is a floating reference. The return type is GRefPtr. This means that there&apos;s going to be a GRefPtr(opusparse) call under the hood which will call g_object_ref_sink() and convert the floating ref into a regular ref owned by the GRefPtr.

&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:1034
&gt; +        // This is known to be an issue with YouTube webm files containing Opus audio as of YT2018.

YouTube/tv (isn&apos;t the same as YouTube)

&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:-1094
&gt; -    // Must be done in the thread we were called from (usually streaming thread).

What happened to the black hole probe?

&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:-1111
&gt; -        gst_element_unlink(m_demux.get(), m_decryptor.get());

No unlinking now? Why?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1359968</commentid>
    <comment_count>4</comment_count>
      <attachid>323400</attachid>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2017-10-13 03:39:16 -0700</bug_when>
    <thetext>Comment on attachment 323400
Patch

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

&gt;&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:955
&gt;&gt; +    GRefPtr&lt;GstCaps&gt; padCaps = adoptGRef(gst_pad_get_current_caps(GST_PAD(demuxerSrcPad)));
&gt; 
&gt; Is this GST_PAD() macro actually needed?

Not really, I should remove it.

&gt;&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:965
&gt;&gt; +        return opusparse;
&gt; 
&gt; Just a comment for future reference without any action required on your side: opusparse is a floating reference. The return type is GRefPtr. This means that there&apos;s going to be a GRefPtr(opusparse) call under the hood which will call g_object_ref_sink() and convert the floating ref into a regular ref owned by the GRefPtr.

That is intended in this case, though I could be more explicit, right.

&gt;&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:1034
&gt;&gt; +        // This is known to be an issue with YouTube webm files containing Opus audio as of YT2018.
&gt; 
&gt; YouTube/tv (isn&apos;t the same as YouTube)

Regular YouTube also uses Opus, I would be surprised if the files were different in regard to durations in the container.

&gt;&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:-1094
&gt;&gt; -    // Must be done in the thread we were called from (usually streaming thread).
&gt; 
&gt; What happened to the black hole probe?

The condition in the `if` block was always false because by the time `pad-removed` is emitted the pad is already unlinked.
I&apos;m not completely sure about probes lifecycle but I think they are removed automatically with the pad when the pad refcount hits zero (which should be soon after the `pad-removed` handler finishes unless it&apos;s re-linked there).

&gt;&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:-1111
&gt;&gt; -        gst_element_unlink(m_demux.get(), m_decryptor.get());
&gt; 
&gt; No unlinking now? Why?

Removing the elements from the bin automatically unlinks them. It&apos;s easier to remove a series of optional elements than to remove links between a chain of optional elements then also removing the elements.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1359971</commentid>
    <comment_count>5</comment_count>
      <attachid>323400</attachid>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2017-10-13 04:30:53 -0700</bug_when>
    <thetext>Comment on attachment 323400
Patch

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

&gt;&gt;&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:-1094
&gt;&gt;&gt; -    // Must be done in the thread we were called from (usually streaming thread).
&gt;&gt; 
&gt;&gt; What happened to the black hole probe?
&gt; 
&gt; The condition in the `if` block was always false because by the time `pad-removed` is emitted the pad is already unlinked.
&gt; I&apos;m not completely sure about probes lifecycle but I think they are removed automatically with the pad when the pad refcount hits zero (which should be soon after the `pad-removed` handler finishes unless it&apos;s re-linked there).

I just checked it by adding a dummy constructor that prints to a file every time it&apos;s invoked: the probes are being destroyed correctly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1359973</commentid>
    <comment_count>6</comment_count>
      <attachid>323657</attachid>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2017-10-13 04:37:53 -0700</bug_when>
    <thetext>Created attachment 323657
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1359974</commentid>
    <comment_count>7</comment_count>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2017-10-13 04:44:20 -0700</bug_when>
    <thetext>Ok, then I don&apos;t have any more to comment. All your explanations sound reasonable. Just rebase the patch because it&apos;s not applying in trunk right now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1359977</commentid>
    <comment_count>8</comment_count>
      <attachid>323659</attachid>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2017-10-13 04:55:50 -0700</bug_when>
    <thetext>Created attachment 323659
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1360725</commentid>
    <comment_count>9</comment_count>
      <attachid>323659</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2017-10-16 03:59:53 -0700</bug_when>
    <thetext>Comment on attachment 323659
Patch

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

The nits are optional, at your discretion. Careful with the compilation.

&gt; Source/WebCore/ChangeLog:6
&gt; +        YouTube does not include durations in the webm container for files

WebM

&gt; Source/WebCore/ChangeLog:10
&gt; +        The same thing happens with Vorbis contained in webm files from the

Ditto.

&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:736
&gt; +        GST_TRACE(&quot;append: trackId=%s PTS=%s DTS=%s DUR=%s presentationSize=%.0fx%.0f&quot;,
&gt; +            mediaSample-&gt;trackID().string().utf8().data(),
&gt; +            mediaSample-&gt;presentationTime().toString().utf8().data(),
&gt; +            mediaSample-&gt;decodeTime().toString().utf8().data(),
&gt; +            mediaSample-&gt;duration().toString().utf8().data(),
&gt; +            mediaSample-&gt;presentationSize().width(), mediaSample-&gt;presentationSize().height());

Nit: You can have longer lines.

&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:1034
&gt; +        // This is known to be an issue with YouTube webm files containing Opus audio as of YT2018.

WebM and nit, I&apos;d say YTTV2018.

&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:1143
&gt; +    GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN(m_pipeline.get()), GST_DEBUG_GRAPH_SHOW_ALL, &quot;pad-removed-before&quot;);

Nit: Why do we need so much pipeline dumping?

&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:1148
&gt; +    if (m_decrytor) {

This does not compile.

&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:1161
&gt; +    GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN(m_pipeline.get()), GST_DEBUG_GRAPH_SHOW_ALL, &quot;pad-removed-after&quot;);

Nit: Why do we need so much pipeline dumping?

&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.h:121
&gt; +    GRefPtr&lt;GstElement&gt; m_parser; // optional

// Optional.

&gt; Source/WebCore/platform/graphics/gstreamer/mse/PlaybackPipeline.cpp:241
&gt; +    } else if (!g_strcmp0(mediaType, &quot;video/x-vp8&quot;)
&gt; +        || !g_strcmp0(mediaType, &quot;video/x-vp9&quot;)
&gt; +        || !g_strcmp0(mediaType, &quot;audio/x-opus&quot;)
&gt; +        || !g_strcmp0(mediaType, &quot;audio/x-vorbis&quot;))

Nit: You can have longer lines here.

&gt; LayoutTests/ChangeLog:6
&gt; +        YouTube does not include durations in the webm container for files

WebM

&gt; LayoutTests/ChangeLog:10
&gt; +        The same thing happens with Vorbis contained in webm files from the

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1360768</commentid>
    <comment_count>10</comment_count>
      <attachid>323659</attachid>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2017-10-16 09:08:46 -0700</bug_when>
    <thetext>Comment on attachment 323659
Patch

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

&gt;&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:736
&gt;&gt; +            mediaSample-&gt;presentationSize().width(), mediaSample-&gt;presentationSize().height());
&gt; 
&gt; Nit: You can have longer lines.

Next time you are checking whether the number and order of parameters is OK you&apos;ll be grateful for them to be separate lines.

&gt;&gt; Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:1161
&gt;&gt; +    GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN(m_pipeline.get()), GST_DEBUG_GRAPH_SHOW_ALL, &quot;pad-removed-after&quot;);
&gt; 
&gt; Nit: Why do we need so much pipeline dumping?

Should the unlinking fail or stop the player somehow we would like to know what happened in the append pipeline.

&gt;&gt; Source/WebCore/platform/graphics/gstreamer/mse/PlaybackPipeline.cpp:241
&gt;&gt; +        || !g_strcmp0(mediaType, &quot;audio/x-vorbis&quot;))
&gt; 
&gt; Nit: You can have longer lines here.

IMHO it&apos;s more readable this way: one line, one separate case where the condition is met.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1360771</commentid>
    <comment_count>11</comment_count>
      <attachid>323899</attachid>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2017-10-16 09:12:43 -0700</bug_when>
    <thetext>Created attachment 323899
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1360781</commentid>
    <comment_count>12</comment_count>
      <attachid>323901</attachid>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2017-10-16 09:26:56 -0700</bug_when>
    <thetext>Created attachment 323901
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1361163</commentid>
    <comment_count>13</comment_count>
      <attachid>323901</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-17 00:31:27 -0700</bug_when>
    <thetext>Comment on attachment 323901
Patch

Rejecting attachment 323901 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-03&apos;, &apos;validate-changelog&apos;, &apos;--check-oops&apos;, &apos;--non-interactive&apos;, 323901, &apos;--port=mac&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

/Volumes/Data/EWS/WebKit/LayoutTests/ChangeLog neither lists a valid reviewer nor contains the string &quot;Unreviewed&quot; or &quot;Rubber stamp&quot; (case insensitive).

Full output: http://webkit-queues.webkit.org/results/4880340</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1361173</commentid>
    <comment_count>14</comment_count>
      <attachid>324002</attachid>
    <who name="Alicia Boya García">aboya</who>
    <bug_when>2017-10-17 02:08:25 -0700</bug_when>
    <thetext>Created attachment 324002
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1361187</commentid>
    <comment_count>15</comment_count>
      <attachid>324002</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-17 02:40:51 -0700</bug_when>
    <thetext>Comment on attachment 324002
Patch

Clearing flags on attachment: 324002

Committed r223505: &lt;https://trac.webkit.org/changeset/223505&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1361188</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-17 02:40:53 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>323400</attachid>
            <date>2017-10-11 02:24:28 -0700</date>
            <delta_ts>2017-10-13 04:37:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178076-20171011112422.patch</filename>
            <type>text/plain</type>
            <size>15683</size>
            <attacher name="Alicia Boya García">aboya</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIyNzAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBmZGFmZTZkNzk3YmIw
N2VmNTY5ZDk0YTVlYmIwZThmNWIzZGIzMS4uMTY5MzJkZjJiN2FkNDk5MjhjMzJlZDQ2ZjJkMGYx
YzFhOWFhNjA3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE3LTEwLTExICBBbGlj
aWEgQm95YSBHYXJjw61hICA8YWJveWFAaWdhbGlhLmNvbT4KKworICAgICAgICBbTVNFXVtHU3Ry
ZWFtZXJdIEluc2VydCBwYXJzZXIgZWxlbWVudHMgaW4gQXBwZW5kUGlwZWxpbmUgd2hlbiBkZW11
eGluZyBvcHVzIG9yIFZvcmJpcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTc4MDc2CisKKyAgICAgICAgWW91VHViZSBkb2VzIG5vdCBpbmNsdWRlIGR1
cmF0aW9ucyBpbiB0aGUgd2VibSBjb250YWluZXIgZm9yIGZpbGVzCisgICAgICAgIGNvbnRhaW5p
bmcgT3B1cyBhdWRpbywgc28gd2UgbmVlZCB0byByZWFkIHRoZW0gZnJvbSB0aGUgY29udGFpbmVk
CisgICAgICAgIHN0cmVhbS4gRm9ydHVuYXRlbHksIEdTdHJlYW1lciBoYXMgYW4gZWxlbWVudCB0
byBkbyB0aGF0OiBvcHVzcGFyc2UuCisKKyAgICAgICAgVGhlIHNhbWUgdGhpbmcgaGFwcGVucyB3
aXRoIFZvcmJpcyBjb250YWluZWQgaW4gd2VibSBmaWxlcyBmcm9tIHRoZQorICAgICAgICBXM0Mg
dGVzdHMsIHdoaWNoIHNob3VsZCBhbHNvIGJlIGZpeGVkIGJ5IHRoZSBHU3RyZWFtZXIgZWxlbWVu
dAorICAgICAgICB2b3JiaXNwYXJzZS4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYW4gb3B1
c3BhcnNlIG9yIHZvcmJpc3BhcnNlIGVsZW1lbnQgdG8gdGhlCisgICAgICAgIEFwcGVuZFBpcGVs
aW5lIGF0IHRoZSBzaW5rcGFkIG9mIHRoZSBkZW11eGVyIHdoZW4gZWl0aGVyIGlzIGZvdW5kLgor
CisgICAgICAgIFRlc3RzOiB1cGRhdGVkIGV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6QXBwZW5kUGlwZWxpbmU6OmFwcHNpbmtOZXdTYW1wbGUpOgorICAgICAgICAoV2Vi
Q29yZTo6Y3JlYXRlT3B0aW9uYWxQYXJzZXJGb3JGb3JtYXQpOgorICAgICAgICAoV2ViQ29yZTo6
QXBwZW5kUGlwZWxpbmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rRnJvbUFueVRocmVh
ZCk6CisgICAgICAgIChXZWJDb3JlOjpBcHBlbmRQaXBlbGluZTo6ZGlzY29ubmVjdERlbXV4ZXJT
cmNQYWRGcm9tQXBwc2lua0Zyb21BbnlUaHJlYWQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkdTdHJlYW1lck1lZGlhU2FtcGxlOjpHU3RyZWFtZXJNZWRpYVNhbXBsZSk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9QbGF5YmFja1BpcGVsaW5l
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXliYWNrUGlwZWxpbmU6OmF0dGFjaFRyYWNrKToK
KwogMjAxNy0xMC0wOSAgQWxpY2lhIEJveWEgR2FyY8OtYSAgPGFib3lhQGlnYWxpYS5jb20+CiAK
ICAgICAgICAgW01TRV1bR1N0cmVhbWVyXSBBZGQgZHVtcCBvZiBhcHBlbmQgcGlwZWxpbmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2Uv
QXBwZW5kUGlwZWxpbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKaW5kZXggM2VhZDdkNGIxZDhiZjU1MzI3OTEw
OGNmNTU4NmY5NTI5ZjQ1OWRlMS4uYWE1MTExYzIzOWE5MTIyMjE2YmVlMDVhYzQzOTY5ZDJhYmU3
ODc1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVh
bWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKQEAgLTcyOCw3ICs3Mjgs
MTIgQEAgdm9pZCBBcHBlbmRQaXBlbGluZTo6YXBwc2lua05ld1NhbXBsZShHc3RTYW1wbGUqIHNh
bXBsZSkKIAogICAgICAgICBSZWZQdHI8R1N0cmVhbWVyTWVkaWFTYW1wbGU+IG1lZGlhU2FtcGxl
ID0gV2ViQ29yZTo6R1N0cmVhbWVyTWVkaWFTYW1wbGU6OmNyZWF0ZShzYW1wbGUsIG1fcHJlc2Vu
dGF0aW9uU2l6ZSwgdHJhY2tJZCgpKTsKIAotICAgICAgICBHU1RfVFJBQ0UoImFwcGVuZDogdHJh
Y2tJZD0lcyBQVFM9JWYgcHJlc2VudGF0aW9uU2l6ZT0lLjBmeCUuMGYiLCBtZWRpYVNhbXBsZS0+
dHJhY2tJRCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCksIG1lZGlhU2FtcGxlLT5wcmVzZW50YXRp
b25UaW1lKCkudG9GbG9hdCgpLCBtZWRpYVNhbXBsZS0+cHJlc2VudGF0aW9uU2l6ZSgpLndpZHRo
KCksIG1lZGlhU2FtcGxlLT5wcmVzZW50YXRpb25TaXplKCkuaGVpZ2h0KCkpOworICAgICAgICBH
U1RfVFJBQ0UoImFwcGVuZDogdHJhY2tJZD0lcyBQVFM9JXMgRFRTPSVzIERVUj0lcyBwcmVzZW50
YXRpb25TaXplPSUuMGZ4JS4wZiIsCisgICAgICAgICAgICBtZWRpYVNhbXBsZS0+dHJhY2tJRCgp
LnN0cmluZygpLnV0ZjgoKS5kYXRhKCksCisgICAgICAgICAgICBtZWRpYVNhbXBsZS0+cHJlc2Vu
dGF0aW9uVGltZSgpLnRvU3RyaW5nKCkudXRmOCgpLmRhdGEoKSwKKyAgICAgICAgICAgIG1lZGlh
U2FtcGxlLT5kZWNvZGVUaW1lKCkudG9TdHJpbmcoKS51dGY4KCkuZGF0YSgpLAorICAgICAgICAg
ICAgbWVkaWFTYW1wbGUtPmR1cmF0aW9uKCkudG9TdHJpbmcoKS51dGY4KCkuZGF0YSgpLAorICAg
ICAgICAgICAgbWVkaWFTYW1wbGUtPnByZXNlbnRhdGlvblNpemUoKS53aWR0aCgpLCBtZWRpYVNh
bXBsZS0+cHJlc2VudGF0aW9uU2l6ZSgpLmhlaWdodCgpKTsKIAogICAgICAgICAvLyBJZiB3ZSdy
ZSBiZXlvbmQgdGhlIGR1cmF0aW9uLCBpZ25vcmUgdGhpcyBzYW1wbGUgYW5kIHRoZSByZW1haW5p
bmcgb25lcy4KICAgICAgICAgTWVkaWFUaW1lIGR1cmF0aW9uID0gbV9tZWRpYVNvdXJjZUNsaWVu
dC0+ZHVyYXRpb24oKTsKQEAgLTk0NCw2ICs5NDksMzAgQEAgR3N0Rmxvd1JldHVybiBBcHBlbmRQ
aXBlbGluZTo6aGFuZGxlTmV3QXBwc2lua1NhbXBsZShHc3RFbGVtZW50KiBhcHBzaW5rKQogICAg
IHJldHVybiBtX2Zsb3dSZXR1cm47CiB9CiAKK3N0YXRpYyBHUmVmUHRyPEdzdEVsZW1lbnQ+Citj
cmVhdGVPcHRpb25hbFBhcnNlckZvckZvcm1hdChHc3RQYWQqIGRlbXV4ZXJTcmNQYWQpCit7Cisg
ICAgR1JlZlB0cjxHc3RDYXBzPiBwYWRDYXBzID0gYWRvcHRHUmVmKGdzdF9wYWRfZ2V0X2N1cnJl
bnRfY2FwcyhHU1RfUEFEKGRlbXV4ZXJTcmNQYWQpKSk7CisgICAgR3N0U3RydWN0dXJlKiBzdHJ1
Y3R1cmUgPSBnc3RfY2Fwc19nZXRfc3RydWN0dXJlKHBhZENhcHMuZ2V0KCksIDApOworICAgIGNv
bnN0IGNoYXIqIG1lZGlhVHlwZSA9IGdzdF9zdHJ1Y3R1cmVfZ2V0X25hbWUoc3RydWN0dXJlKTsK
KworICAgIEdVbmlxdWVQdHI8Y2hhcj4gZGVtdXhlclBhZE5hbWUoZ3N0X3BhZF9nZXRfbmFtZShk
ZW11eGVyU3JjUGFkKSk7CisgICAgR1VuaXF1ZVB0cjxjaGFyPiBwYXJzZXJOYW1lKGdfc3RyZHVw
X3ByaW50ZigiJXNfcGFyc2VyIiwgZGVtdXhlclBhZE5hbWUuZ2V0KCkpKTsKKworICAgIGlmICgh
Z19zdHJjbXAwKG1lZGlhVHlwZSwgImF1ZGlvL3gtb3B1cyIpKSB7CisgICAgICAgIEdzdEVsZW1l
bnQqIG9wdXNwYXJzZSA9IGdzdF9lbGVtZW50X2ZhY3RvcnlfbWFrZSgib3B1c3BhcnNlIiwgcGFy
c2VyTmFtZS5nZXQoKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKG9wdXNwYXJzZSk7CisgICAg
ICAgIHJldHVybiBvcHVzcGFyc2U7CisgICAgfQorICAgIGlmICghZ19zdHJjbXAwKG1lZGlhVHlw
ZSwgImF1ZGlvL3gtdm9yYmlzIikpIHsKKyAgICAgICAgR3N0RWxlbWVudCogdm9yYmlzcGFyc2Ug
PSBnc3RfZWxlbWVudF9mYWN0b3J5X21ha2UoInZvcmJpc3BhcnNlIiwgcGFyc2VyTmFtZS5nZXQo
KSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKHZvcmJpc3BhcnNlKTsKKyAgICAgICAgcmV0dXJu
IHZvcmJpc3BhcnNlOworICAgIH0KKworICAgIHJldHVybiBudWxscHRyOworfQorCiB2b2lkIEFw
cGVuZFBpcGVsaW5lOjpjb25uZWN0RGVtdXhlclNyY1BhZFRvQXBwc2lua0Zyb21BbnlUaHJlYWQo
R3N0UGFkKiBkZW11eGVyU3JjUGFkKQogewogICAgIGlmICghbV9hcHBzaW5rKQpAQCAtOTk3LDMw
ICsxMDI2LDUwIEBAIHZvaWQgQXBwZW5kUGlwZWxpbmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9B
cHBzaW5rRnJvbUFueVRocmVhZChHc3RQYWQqIGRlbXV4ZXJTCiAgICAgICAgIGlmICghcGFyZW50
KQogICAgICAgICAgICAgZ3N0X2Jpbl9hZGQoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9h
cHBzaW5rLmdldCgpKTsKIAorICAgICAgICAvLyBDdXJyZW50IGhlYWQgb2YgdGhlIHBpcGVsaW5l
IGJlaW5nIGJ1aWx0LgorICAgICAgICBHUmVmUHRyPEdzdFBhZD4gY3VycmVudFNyY1BhZCA9IGRl
bXV4ZXJTcmNQYWQ7CisKKyAgICAgICAgLy8gU29tZSBhdWRpbyBmaWxlcyB1bmhlbHBmdWxseSBv
bWl0IHRoZSBkdXJhdGlvbiBvZiBmcmFtZXMgaW4gdGhlIGNvbnRhaW5lci4gV2UgbmVlZCB0byBw
YXJzZQorICAgICAgICAvLyB0aGUgY29udGFpbmVkIGF1ZGlvIHN0cmVhbXMgaW4gb3JkZXIgdG8g
a25vdyB0aGUgZHVyYXRpb24gb2YgdGhlIGZyYW1lcy4KKyAgICAgICAgLy8gVGhpcyBpcyBrbm93
biB0byBiZSBhbiBpc3N1ZSB3aXRoIFlvdVR1YmUgd2VibSBmaWxlcyBjb250YWluaW5nIE9wdXMg
YXVkaW8gYXMgb2YgWVQyMDE4LgorICAgICAgICBtX3BhcnNlciA9IGNyZWF0ZU9wdGlvbmFsUGFy
c2VyRm9yRm9ybWF0KGN1cnJlbnRTcmNQYWQuZ2V0KCkpOworICAgICAgICBpZiAobV9wYXJzZXIp
IHsKKyAgICAgICAgICAgIGdzdF9iaW5fYWRkKEdTVF9CSU4obV9waXBlbGluZS5nZXQoKSksIG1f
cGFyc2VyLmdldCgpKTsKKyAgICAgICAgICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9w
YXJlbnQobV9wYXJzZXIuZ2V0KCkpOworCisgICAgICAgICAgICBHUmVmUHRyPEdzdFBhZD4gcGFy
c2VyU2lua1BhZCA9IGFkb3B0R1JlZihnc3RfZWxlbWVudF9nZXRfc3RhdGljX3BhZChtX3BhcnNl
ci5nZXQoKSwgInNpbmsiKSk7CisgICAgICAgICAgICBHUmVmUHRyPEdzdFBhZD4gcGFyc2VyU3Jj
UGFkID0gYWRvcHRHUmVmKGdzdF9lbGVtZW50X2dldF9zdGF0aWNfcGFkKG1fcGFyc2VyLmdldCgp
LCAic3JjIikpOworCisgICAgICAgICAgICBnc3RfcGFkX2xpbmsoY3VycmVudFNyY1BhZC5nZXQo
KSwgcGFyc2VyU2lua1BhZC5nZXQoKSk7CisgICAgICAgICAgICBjdXJyZW50U3JjUGFkID0gcGFy
c2VyU3JjUGFkOworICAgICAgICB9CisKICNpZiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQogICAg
ICAgICBpZiAobV9kZWNyeXB0b3IpIHsKICAgICAgICAgICAgIGdzdF9vYmplY3RfcmVmKG1fZGVj
cnlwdG9yLmdldCgpKTsKICAgICAgICAgICAgIGdzdF9iaW5fYWRkKEdTVF9CSU4obV9waXBlbGlu
ZS5nZXQoKSksIG1fZGVjcnlwdG9yLmdldCgpKTsKKyAgICAgICAgICAgIGdzdF9lbGVtZW50X3N5
bmNfc3RhdGVfd2l0aF9wYXJlbnQobV9kZWNyeXB0b3IuZ2V0KCkpOwogCiAgICAgICAgICAgICBH
UmVmUHRyPEdzdFBhZD4gZGVjcnlwdG9yU2lua1BhZCA9IGFkb3B0R1JlZihnc3RfZWxlbWVudF9n
ZXRfc3RhdGljX3BhZChtX2RlY3J5cHRvci5nZXQoKSwgInNpbmsiKSk7Ci0gICAgICAgICAgICBn
c3RfcGFkX2xpbmsoZGVtdXhlclNyY1BhZCwgZGVjcnlwdG9yU2lua1BhZC5nZXQoKSk7Ci0KICAg
ICAgICAgICAgIEdSZWZQdHI8R3N0UGFkPiBkZWNyeXB0b3JTcmNQYWQgPSBhZG9wdEdSZWYoZ3N0
X2VsZW1lbnRfZ2V0X3N0YXRpY19wYWQobV9kZWNyeXB0b3IuZ2V0KCksICJzcmMiKSk7Ci0gICAg
ICAgICAgICBnc3RfcGFkX2xpbmsoZGVjcnlwdG9yU3JjUGFkLmdldCgpLCBhcHBzaW5rU2lua1Bh
ZC5nZXQoKSk7Ci0KLSAgICAgICAgICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJl
bnQobV9hcHBzaW5rLmdldCgpKTsKLSAgICAgICAgICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVf
d2l0aF9wYXJlbnQobV9kZWNyeXB0b3IuZ2V0KCkpOwogCi0gICAgICAgICAgICBpZiAobV9wZW5k
aW5nRGVjcnlwdGlvblN0cnVjdHVyZSkKLSAgICAgICAgICAgICAgICBkaXNwYXRjaFBlbmRpbmdE
ZWNyeXB0aW9uU3RydWN0dXJlKCk7Ci0gICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBnc3Rf
cGFkX2xpbmsoY3VycmVudFNyY1BhZC5nZXQoKSwgZGVjcnlwdG9yU2lua1BhZC5nZXQoKSk7Cisg
ICAgICAgICAgICBjdXJyZW50U3JjUGFkID0gZGVjcnlwdG9yU3JjUGFkOworICAgICAgICB9CiAj
ZW5kaWYKLSAgICAgICAgICAgIGdzdF9wYWRfbGluayhkZW11eGVyU3JjUGFkLCBhcHBzaW5rU2lu
a1BhZC5nZXQoKSk7Ci0gICAgICAgICAgICBnc3RfZWxlbWVudF9zeW5jX3N0YXRlX3dpdGhfcGFy
ZW50KG1fYXBwc2luay5nZXQoKSk7CisKKyAgICAgICAgZ3N0X3BhZF9saW5rKGN1cnJlbnRTcmNQ
YWQuZ2V0KCksIGFwcHNpbmtTaW5rUGFkLmdldCgpKTsKKworICAgICAgICBnc3RfZWxlbWVudF9z
eW5jX3N0YXRlX3dpdGhfcGFyZW50KG1fYXBwc2luay5nZXQoKSk7CisKICNpZiBFTkFCTEUoRU5D
UllQVEVEX01FRElBKQotICAgICAgICB9CisgICAgICAgIGlmIChtX3BlbmRpbmdEZWNyeXB0aW9u
U3RydWN0dXJlKQorICAgICAgICAgICAgZGlzcGF0Y2hQZW5kaW5nRGVjcnlwdGlvblN0cnVjdHVy
ZSgpOwogI2VuZGlmCiAgICAgICAgIGdzdF9lbGVtZW50X3NldF9zdGF0ZShtX3BpcGVsaW5lLmdl
dCgpLCBHU1RfU1RBVEVfUEFVU0VEKTsKKyAgICAgICAgZ3N0X2VsZW1lbnRfc3luY19zdGF0ZV93
aXRoX3BhcmVudChtX2FwcHNpbmsuZ2V0KCkpOworCisgICAgICAgIEdTVF9ERUJVR19CSU5fVE9f
RE9UX0ZJTEVfV0lUSF9UUyhHU1RfQklOKG1fcGlwZWxpbmUuZ2V0KCkpLCBHU1RfREVCVUdfR1JB
UEhfU0hPV19BTEwsICJ3ZWJraXQtYWZ0ZXItbGluayIpOwogICAgIH0KIH0KIApAQCAtMTA4OSwz
MSArMTEzOCwyNyBAQCB2b2lkIEFwcGVuZFBpcGVsaW5lOjpjb25uZWN0RGVtdXhlclNyY1BhZFRv
QXBwc2luayhHc3RQYWQqIGRlbXV4ZXJTcmNQYWQpCiAgICAgbV9wYWRBZGRSZW1vdmVDb25kaXRp
b24ubm90aWZ5T25lKCk7CiB9CiAKLXZvaWQgQXBwZW5kUGlwZWxpbmU6OmRpc2Nvbm5lY3REZW11
eGVyU3JjUGFkRnJvbUFwcHNpbmtGcm9tQW55VGhyZWFkKEdzdFBhZCogZGVtdXhlclNyY1BhZCkK
K3ZvaWQgQXBwZW5kUGlwZWxpbmU6OmRpc2Nvbm5lY3REZW11eGVyU3JjUGFkRnJvbUFwcHNpbmtG
cm9tQW55VGhyZWFkKEdzdFBhZCopCiB7Ci0gICAgLy8gTXVzdCBiZSBkb25lIGluIHRoZSB0aHJl
YWQgd2Ugd2VyZSBjYWxsZWQgZnJvbSAodXN1YWxseSBzdHJlYW1pbmcgdGhyZWFkKS4KLSAgICBp
ZiAoIWdzdF9wYWRfaXNfbGlua2VkKGRlbXV4ZXJTcmNQYWQpKSB7Ci0gICAgICAgIGd1bG9uZyBw
cm9iZUlkID0gR1BPSU5URVJfVE9fVUxPTkcoZ19vYmplY3RfZ2V0X2RhdGEoR19PQkpFQ1QoZGVt
dXhlclNyY1BhZCksICJibGFja0hvbGVQcm9iZUlkIikpOwotICAgICAgICBpZiAocHJvYmVJZCkg
ewotICAgICAgICAgICAgR1NUX0RFQlVHKCJEaXNjb25uZWN0aW5nIGJsYWNrIGhvbGUgcHJvYmUu
Iik7Ci0gICAgICAgICAgICBnX29iamVjdF9zZXRfZGF0YShHX09CSkVDVChkZW11eGVyU3JjUGFk
KSwgImJsYWNrSG9sZVByb2JlSWQiLCBudWxscHRyKTsKLSAgICAgICAgICAgIGdzdF9wYWRfcmVt
b3ZlX3Byb2JlKGRlbXV4ZXJTcmNQYWQsIHByb2JlSWQpOwotICAgICAgICB9IGVsc2UKLSAgICAg
ICAgICAgIEdTVF9XQVJOSU5HKCJOb3QgZGlzY29ubmVjdGluZyBkZW11eGVyIHNyYyBwYWQgYmVj
YXVzZSBpdCB3YXNuJ3QgbGlua2VkIik7Ci0gICAgICAgIHJldHVybjsKLSAgICB9CisgICAgR1NU
X0RFQlVHX0JJTl9UT19ET1RfRklMRV9XSVRIX1RTKEdTVF9CSU4obV9waXBlbGluZS5nZXQoKSks
IEdTVF9ERUJVR19HUkFQSF9TSE9XX0FMTCwgInBhZC1yZW1vdmVkLWJlZm9yZSIpOwogCiAgICAg
R1NUX0RFQlVHKCJEaXNjb25uZWN0aW5nIGFwcHNpbmsiKTsKIAogI2lmIEVOQUJMRShFTkNSWVBU
RURfTUVESUEpCi0gICAgaWYgKG1fZGVjcnlwdG9yKSB7Ci0gICAgICAgIGdzdF9lbGVtZW50X3Vu
bGluayhtX2RlY3J5cHRvci5nZXQoKSwgbV9hcHBzaW5rLmdldCgpKTsKLSAgICAgICAgZ3N0X2Vs
ZW1lbnRfdW5saW5rKG1fZGVtdXguZ2V0KCksIG1fZGVjcnlwdG9yLmdldCgpKTsKKyAgICBpZiAo
bV9kZWNyeXRvcikgewogICAgICAgICBnc3RfZWxlbWVudF9zZXRfc3RhdGUobV9kZWNyeXB0b3Iu
Z2V0KCksIEdTVF9TVEFURV9OVUxMKTsKICAgICAgICAgZ3N0X2Jpbl9yZW1vdmUoR1NUX0JJTiht
X3BpcGVsaW5lLmdldCgpKSwgbV9kZWNyeXB0b3IuZ2V0KCkpOwotICAgIH0gZWxzZQorICAgICAg
ICBtX2RlY3J5cHRvciA9IG51bGxwdHI7CisgICAgfQogI2VuZGlmCi0gICAgICAgIGdzdF9lbGVt
ZW50X3VubGluayhtX2RlbXV4LmdldCgpLCBtX2FwcHNpbmsuZ2V0KCkpOworCisgICAgaWYgKG1f
cGFyc2VyKSB7CisgICAgICAgIGdzdF9lbGVtZW50X3NldF9zdGF0ZShtX3BhcnNlci5nZXQoKSwg
R1NUX1NUQVRFX05VTEwpOworICAgICAgICBnc3RfYmluX3JlbW92ZShHU1RfQklOKG1fcGlwZWxp
bmUuZ2V0KCkpLCBtX3BhcnNlci5nZXQoKSk7CisgICAgICAgIG1fcGFyc2VyID0gbnVsbHB0cjsK
KyAgICB9CisKKyAgICBHU1RfREVCVUdfQklOX1RPX0RPVF9GSUxFX1dJVEhfVFMoR1NUX0JJTiht
X3BpcGVsaW5lLmdldCgpKSwgR1NUX0RFQlVHX0dSQVBIX1NIT1dfQUxMLCAicGFkLXJlbW92ZWQt
YWZ0ZXIiKTsKIH0KIAogI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL0FwcGVuZFBpcGVs
aW5lLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL0Fw
cGVuZFBpcGVsaW5lLmgKaW5kZXggMjVjYjNiZWQ1NDE2MzMwOTViMWNmZTYzMDJiZTE0YjQxNTI0
NTI0Mi4uM2ZiNTA5YjIzNDY5YzIzZTUzYTk5YjA0YjRlYzg1ODk5NTI3NmVjNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9BcHBlbmRQ
aXBlbGluZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1l
ci9tc2UvQXBwZW5kUGlwZWxpbmUuaApAQCAtMTE4LDYgKzExOCw3IEBAIHByaXZhdGU6CiAgICAg
R1JlZlB0cjxHc3RCdXM+IG1fYnVzOwogICAgIEdSZWZQdHI8R3N0RWxlbWVudD4gbV9hcHBzcmM7
CiAgICAgR1JlZlB0cjxHc3RFbGVtZW50PiBtX2RlbXV4OworICAgIEdSZWZQdHI8R3N0RWxlbWVu
dD4gbV9wYXJzZXI7IC8vIG9wdGlvbmFsCiAjaWYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKICAg
ICBHUmVmUHRyPEdzdEVsZW1lbnQ+IG1fZGVjcnlwdG9yOwogI2VuZGlmCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1l
ZGlhU2FtcGxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1l
ci9tc2UvR1N0cmVhbWVyTWVkaWFTYW1wbGUuY3BwCmluZGV4IDIyOWRlZmFhZDMwOGQ0ODUzYTEw
MTM0ZTRlYTc5N2YzYjIyYzEyN2EuLjI5NTEwMDM0YTY4MDA5ODdlYjM0OTg2NWVjZjZiZGMzZmZk
ZDRmNjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJl
YW1lci9tc2UvR1N0cmVhbWVyTWVkaWFTYW1wbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvR1N0cmVhbWVyTWVkaWFTYW1wbGUuY3BwCkBA
IC01Miw4ICs1Miw4IEBAIEdTdHJlYW1lck1lZGlhU2FtcGxlOjpHU3RyZWFtZXJNZWRpYVNhbXBs
ZShHc3RTYW1wbGUqIHNhbXBsZSwgY29uc3QgRmxvYXRTaXplJiBwCiAKICAgICBpZiAoR1NUX0JV
RkZFUl9QVFNfSVNfVkFMSUQoYnVmZmVyKSkKICAgICAgICAgbV9wdHMgPSBjcmVhdGVNZWRpYVRp
bWUoR1NUX0JVRkZFUl9QVFMoYnVmZmVyKSk7Ci0gICAgaWYgKEdTVF9CVUZGRVJfRFRTX0lTX1ZB
TElEKGJ1ZmZlcikpCi0gICAgICAgIG1fZHRzID0gY3JlYXRlTWVkaWFUaW1lKEdTVF9CVUZGRVJf
RFRTKGJ1ZmZlcikpOworICAgIGlmIChHU1RfQlVGRkVSX0RUU19JU19WQUxJRChidWZmZXIpIHx8
IEdTVF9CVUZGRVJfUFRTX0lTX1ZBTElEKGJ1ZmZlcikpCisgICAgICAgIG1fZHRzID0gY3JlYXRl
TWVkaWFUaW1lKEdTVF9CVUZGRVJfRFRTX09SX1BUUyhidWZmZXIpKTsKICAgICBpZiAoR1NUX0JV
RkZFUl9EVVJBVElPTl9JU19WQUxJRChidWZmZXIpKQogICAgICAgICBtX2R1cmF0aW9uID0gY3Jl
YXRlTWVkaWFUaW1lKEdTVF9CVUZGRVJfRFVSQVRJT04oYnVmZmVyKSk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvUGxheWJhY2tQ
aXBlbGluZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
bXNlL1BsYXliYWNrUGlwZWxpbmUuY3BwCmluZGV4IDgwOWIwOGMxNzQ3ZjRmNTQ3MTdjNzNjN2Nl
NTNmY2IwMzUwMzllN2UuLjM4MWRlNmU2ODcxNjNiZWQ0ZGMxYjU4YjBjMDQ5N2M4NTkwM2Q4N2Ug
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9t
c2UvUGxheWJhY2tQaXBlbGluZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZ3N0cmVhbWVyL21zZS9QbGF5YmFja1BpcGVsaW5lLmNwcApAQCAtMjM1LDcgKzIzNSwx
MCBAQCB2b2lkIFBsYXliYWNrUGlwZWxpbmU6OmF0dGFjaFRyYWNrKFJlZlB0cjxTb3VyY2VCdWZm
ZXJQcml2YXRlR1N0cmVhbWVyPiBzb3VyY2VCdQogCiAgICAgICAgIHBhZCA9IGFkb3B0R1JlZihn
c3RfZWxlbWVudF9nZXRfc3RhdGljX3BhZChwYXJzZXIsICJzcmMiKSk7CiAgICAgICAgIGdzdF9l
bGVtZW50X2FkZF9wYWQoc3RyZWFtLT5wYXJzZXIsIGdzdF9naG9zdF9wYWRfbmV3KCJzcmMiLCBw
YWQuZ2V0KCkpKTsKLSAgICB9IGVsc2UgaWYgKCFnX3N0cmNtcDAobWVkaWFUeXBlLCAidmlkZW8v
eC12cDkiKSkKKyAgICB9IGVsc2UgaWYgKCFnX3N0cmNtcDAobWVkaWFUeXBlLCAidmlkZW8veC12
cDgiKQorICAgICAgICB8fCAhZ19zdHJjbXAwKG1lZGlhVHlwZSwgInZpZGVvL3gtdnA5IikKKyAg
ICAgICAgfHwgIWdfc3RyY21wMChtZWRpYVR5cGUsICJhdWRpby94LW9wdXMiKQorICAgICAgICB8
fCAhZ19zdHJjbXAwKG1lZGlhVHlwZSwgImF1ZGlvL3gtdm9yYmlzIikpCiAgICAgICAgIHN0cmVh
bS0+cGFyc2VyID0gbnVsbHB0cjsKICAgICBlbHNlIHsKICAgICAgICAgR1NUX0VSUk9SX09CSkVD
VChzdHJlYW0tPnBhcmVudCwgIlVuc3VwcG9ydGVkIG1lZGlhIGZvcm1hdDogJXMiLCBtZWRpYVR5
cGUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCmluZGV4IGM2YjgwNTJmYTMxOWU4YjllMThlYTAwN2JiNDgyY2JiNzQ4YzZlMTguLjg0
MTNjYWU3OTI5Y2FmNjRiZTM3Mjg5YzdiZjhjOGNiYjM3NWMxMDAgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwy
MyBAQAorMjAxNy0xMC0xMSAgQWxpY2lhIEJveWEgR2FyY8OtYSAgPGFib3lhQGlnYWxpYS5jb20+
CisKKyAgICAgICAgW01TRV1bR1N0cmVhbWVyXSBJbnNlcnQgcGFyc2VyIGVsZW1lbnRzIGluIEFw
cGVuZFBpcGVsaW5lIHdoZW4gZGVtdXhpbmcgb3B1cyBvciBWb3JiaXMKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODA3NgorCisgICAgICAgIFlvdVR1
YmUgZG9lcyBub3QgaW5jbHVkZSBkdXJhdGlvbnMgaW4gdGhlIHdlYm0gY29udGFpbmVyIGZvciBm
aWxlcworICAgICAgICBjb250YWluaW5nIE9wdXMgYXVkaW8sIHNvIHdlIG5lZWQgdG8gcmVhZCB0
aGVtIGZyb20gdGhlIGNvbnRhaW5lZAorICAgICAgICBzdHJlYW0uIEZvcnR1bmF0ZWx5LCBHU3Ry
ZWFtZXIgaGFzIGFuIGVsZW1lbnQgdG8gZG8gdGhhdDogb3B1c3BhcnNlLgorCisgICAgICAgIFRo
ZSBzYW1lIHRoaW5nIGhhcHBlbnMgd2l0aCBWb3JiaXMgY29udGFpbmVkIGluIHdlYm0gZmlsZXMg
ZnJvbSB0aGUKKyAgICAgICAgVzNDIHRlc3RzLCB3aGljaCBzaG91bGQgYWxzbyBiZSBmaXhlZCBi
eSB0aGUgR1N0cmVhbWVyIGVsZW1lbnQKKyAgICAgICAgdm9yYmlzcGFyc2UuCisKKyAgICAgICAg
VGhpcyBwYXRjaCBhZGRzIGFuIG9wdXNwYXJzZSBvciB2b3JiaXNwYXJzZSBlbGVtZW50IHRvIHRo
ZQorICAgICAgICBBcHBlbmRQaXBlbGluZSBhdCB0aGUgc2lua3BhZCBvZiB0aGUgZGVtdXhlciB3
aGVuIGVpdGhlciBpcyBmb3VuZC4KKworICAgICAgICBUZXN0czogdXBkYXRlZCBleHBlY3RhdGlv
bnMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9uczoKKwogMjAxNy0x
MC0wMSAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgogCiAgICAgICAgIFNraXAgZmFpbGlu
ZyB0ZXN0cyBmcm9tIHIyMjI2OTIgdGhhdCBoYXZlIGRpZmZlcmVudCBvdXRwdXQgb24gZWFjaCBy
dW4uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9u
cyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDMyYzc3
YjAwNmVlYzQwMTY5ZTdiMzFiZGI0Mjg1Y2UyODdjMjEzMjAuLmYwZTcwOThmY2QwMzEwMWNiNmFj
OTUzMTliZjNjNWYyN2NiYzFiMzcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0
ay9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhw
ZWN0YXRpb25zCkBAIC0yMjEsMTAgKzIyMSw2IEBAIHdlYmtpdC5vcmcvYi82MTY2MSBlZGl0aW5n
L3Bhc3RlYm9hcmQvZHJhZy1kcm9wLWxpc3QuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9i
LzkyNzQ5IGZhc3QvZG9tL05hdmlnYXRvckNvbnRlbnRVdGlscy9pcy1wcm90b2NvbC1oYW5kbGVy
LXJlZ2lzdGVyZWQuaHRtbCBbIFNraXAgXQogCiAjIE1TRSBmYWlsdXJlcwotd2Via2l0Lm9yZy9i
LzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9Tb3Vy
Y2VCdWZmZXItYWJvcnQtcmVhZHlTdGF0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJraXQub3JnL2Iv
MTY3MTA4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL1NvdXJj
ZUJ1ZmZlci1hYm9ydC1yZW1vdmVkLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xNjcx
MDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvU291cmNlQnVm
ZmVyLWFib3J0LXVwZGF0aW5nLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xNjcxMDgg
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvU291cmNlQnVmZmVy
LWFib3J0Lmh0bWwgWyBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvVVJMLWNyZWF0ZU9iamVjdFVSTC1yZXZv
a2UuaHRtbCBbIEZhaWx1cmUgXQogIyBTZWUgYWxzbyBidWcgIzE3NTU3OAogd2Via2l0Lm9yZy9i
LzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRp
YXNvdXJjZS1hY3RpdmVzb3VyY2VidWZmZXJzLmh0bWwgWyBDcmFzaCBGYWlsdXJlIF0KQEAgLTIz
NiwxMiArMjMyLDkgQEAgd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1hcHAKIHdlYmtpdC5vcmcvYi8xNjcx
MDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3Vy
Y2UtYXZ0cmFja3MuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1idWZmZXJl
ZC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Utd2Vi
bS1hLWJpdHJhdGUuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWct
Y2hhbmdlLXdlYm0tYXYtYXVkaW8tYml0cmF0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3Jn
L2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21l
ZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Utd2VibS1hdi1mcmFtZXNpemUuaHRtbCBbIEZhaWx1cmUg
XQotd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21l
ZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdlYm0tYXYtdmlkZW8tYml0cmF0
ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Utd2Vi
bS12LWJpdHJhdGUuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWct
Y2hhbmdlLXdlYm0tdi1mcmFtZXJhdGUuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE2
NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNv
dXJjZS1jb25maWctY2hhbmdlLXdlYm0tdi1mcmFtZXNpemUuaHRtbCBbIEZhaWx1cmUgXQord2Vi
a2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNv
dXJjZS9tZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdlYm0tdi1mcmFtZXNpemUuaHRtbCBbIEZh
aWx1cmUgUGFzcyBdCiAjIENyYXNoIGlzIHdlYmtpdC5vcmcvYi8xNzY4MDQKIHdlYmtpdC5vcmcv
Yi8xNjcxMDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVk
aWFzb3VyY2UtZHVyYXRpb24uaHRtbCBbIEZhaWx1cmUgQ3Jhc2ggXQogIyBDcmFzaCBpbiBidWcg
IzE3NjAxOQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>323657</attachid>
            <date>2017-10-13 04:37:53 -0700</date>
            <delta_ts>2017-10-13 04:55:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178076-20171013133751.patch</filename>
            <type>text/plain</type>
            <size>15716</size>
            <attacher name="Alicia Boya García">aboya</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIyNzAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBmZGFmZTZkNzk3YmIw
N2VmNTY5ZDk0YTVlYmIwZThmNWIzZGIzMS4uMTY5MzJkZjJiN2FkNDk5MjhjMzJlZDQ2ZjJkMGYx
YzFhOWFhNjA3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE3LTEwLTExICBBbGlj
aWEgQm95YSBHYXJjw61hICA8YWJveWFAaWdhbGlhLmNvbT4KKworICAgICAgICBbTVNFXVtHU3Ry
ZWFtZXJdIEluc2VydCBwYXJzZXIgZWxlbWVudHMgaW4gQXBwZW5kUGlwZWxpbmUgd2hlbiBkZW11
eGluZyBvcHVzIG9yIFZvcmJpcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTc4MDc2CisKKyAgICAgICAgWW91VHViZSBkb2VzIG5vdCBpbmNsdWRlIGR1
cmF0aW9ucyBpbiB0aGUgd2VibSBjb250YWluZXIgZm9yIGZpbGVzCisgICAgICAgIGNvbnRhaW5p
bmcgT3B1cyBhdWRpbywgc28gd2UgbmVlZCB0byByZWFkIHRoZW0gZnJvbSB0aGUgY29udGFpbmVk
CisgICAgICAgIHN0cmVhbS4gRm9ydHVuYXRlbHksIEdTdHJlYW1lciBoYXMgYW4gZWxlbWVudCB0
byBkbyB0aGF0OiBvcHVzcGFyc2UuCisKKyAgICAgICAgVGhlIHNhbWUgdGhpbmcgaGFwcGVucyB3
aXRoIFZvcmJpcyBjb250YWluZWQgaW4gd2VibSBmaWxlcyBmcm9tIHRoZQorICAgICAgICBXM0Mg
dGVzdHMsIHdoaWNoIHNob3VsZCBhbHNvIGJlIGZpeGVkIGJ5IHRoZSBHU3RyZWFtZXIgZWxlbWVu
dAorICAgICAgICB2b3JiaXNwYXJzZS4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYW4gb3B1
c3BhcnNlIG9yIHZvcmJpc3BhcnNlIGVsZW1lbnQgdG8gdGhlCisgICAgICAgIEFwcGVuZFBpcGVs
aW5lIGF0IHRoZSBzaW5rcGFkIG9mIHRoZSBkZW11eGVyIHdoZW4gZWl0aGVyIGlzIGZvdW5kLgor
CisgICAgICAgIFRlc3RzOiB1cGRhdGVkIGV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6QXBwZW5kUGlwZWxpbmU6OmFwcHNpbmtOZXdTYW1wbGUpOgorICAgICAgICAoV2Vi
Q29yZTo6Y3JlYXRlT3B0aW9uYWxQYXJzZXJGb3JGb3JtYXQpOgorICAgICAgICAoV2ViQ29yZTo6
QXBwZW5kUGlwZWxpbmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rRnJvbUFueVRocmVh
ZCk6CisgICAgICAgIChXZWJDb3JlOjpBcHBlbmRQaXBlbGluZTo6ZGlzY29ubmVjdERlbXV4ZXJT
cmNQYWRGcm9tQXBwc2lua0Zyb21BbnlUaHJlYWQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkdTdHJlYW1lck1lZGlhU2FtcGxlOjpHU3RyZWFtZXJNZWRpYVNhbXBsZSk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9QbGF5YmFja1BpcGVsaW5l
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXliYWNrUGlwZWxpbmU6OmF0dGFjaFRyYWNrKToK
KwogMjAxNy0xMC0wOSAgQWxpY2lhIEJveWEgR2FyY8OtYSAgPGFib3lhQGlnYWxpYS5jb20+CiAK
ICAgICAgICAgW01TRV1bR1N0cmVhbWVyXSBBZGQgZHVtcCBvZiBhcHBlbmQgcGlwZWxpbmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2Uv
QXBwZW5kUGlwZWxpbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKaW5kZXggM2VhZDdkNGIxZDhiZjU1MzI3OTEw
OGNmNTU4NmY5NTI5ZjQ1OWRlMS4uMmM1ZTY5ZjRiMzI1NWRlNzUzYWMzOTdiMzI3NThiMjJjZDhk
MGI3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVh
bWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKQEAgLTcyOCw3ICs3Mjgs
MTIgQEAgdm9pZCBBcHBlbmRQaXBlbGluZTo6YXBwc2lua05ld1NhbXBsZShHc3RTYW1wbGUqIHNh
bXBsZSkKIAogICAgICAgICBSZWZQdHI8R1N0cmVhbWVyTWVkaWFTYW1wbGU+IG1lZGlhU2FtcGxl
ID0gV2ViQ29yZTo6R1N0cmVhbWVyTWVkaWFTYW1wbGU6OmNyZWF0ZShzYW1wbGUsIG1fcHJlc2Vu
dGF0aW9uU2l6ZSwgdHJhY2tJZCgpKTsKIAotICAgICAgICBHU1RfVFJBQ0UoImFwcGVuZDogdHJh
Y2tJZD0lcyBQVFM9JWYgcHJlc2VudGF0aW9uU2l6ZT0lLjBmeCUuMGYiLCBtZWRpYVNhbXBsZS0+
dHJhY2tJRCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCksIG1lZGlhU2FtcGxlLT5wcmVzZW50YXRp
b25UaW1lKCkudG9GbG9hdCgpLCBtZWRpYVNhbXBsZS0+cHJlc2VudGF0aW9uU2l6ZSgpLndpZHRo
KCksIG1lZGlhU2FtcGxlLT5wcmVzZW50YXRpb25TaXplKCkuaGVpZ2h0KCkpOworICAgICAgICBH
U1RfVFJBQ0UoImFwcGVuZDogdHJhY2tJZD0lcyBQVFM9JXMgRFRTPSVzIERVUj0lcyBwcmVzZW50
YXRpb25TaXplPSUuMGZ4JS4wZiIsCisgICAgICAgICAgICBtZWRpYVNhbXBsZS0+dHJhY2tJRCgp
LnN0cmluZygpLnV0ZjgoKS5kYXRhKCksCisgICAgICAgICAgICBtZWRpYVNhbXBsZS0+cHJlc2Vu
dGF0aW9uVGltZSgpLnRvU3RyaW5nKCkudXRmOCgpLmRhdGEoKSwKKyAgICAgICAgICAgIG1lZGlh
U2FtcGxlLT5kZWNvZGVUaW1lKCkudG9TdHJpbmcoKS51dGY4KCkuZGF0YSgpLAorICAgICAgICAg
ICAgbWVkaWFTYW1wbGUtPmR1cmF0aW9uKCkudG9TdHJpbmcoKS51dGY4KCkuZGF0YSgpLAorICAg
ICAgICAgICAgbWVkaWFTYW1wbGUtPnByZXNlbnRhdGlvblNpemUoKS53aWR0aCgpLCBtZWRpYVNh
bXBsZS0+cHJlc2VudGF0aW9uU2l6ZSgpLmhlaWdodCgpKTsKIAogICAgICAgICAvLyBJZiB3ZSdy
ZSBiZXlvbmQgdGhlIGR1cmF0aW9uLCBpZ25vcmUgdGhpcyBzYW1wbGUgYW5kIHRoZSByZW1haW5p
bmcgb25lcy4KICAgICAgICAgTWVkaWFUaW1lIGR1cmF0aW9uID0gbV9tZWRpYVNvdXJjZUNsaWVu
dC0+ZHVyYXRpb24oKTsKQEAgLTk0NCw2ICs5NDksMzAgQEAgR3N0Rmxvd1JldHVybiBBcHBlbmRQ
aXBlbGluZTo6aGFuZGxlTmV3QXBwc2lua1NhbXBsZShHc3RFbGVtZW50KiBhcHBzaW5rKQogICAg
IHJldHVybiBtX2Zsb3dSZXR1cm47CiB9CiAKK3N0YXRpYyBHUmVmUHRyPEdzdEVsZW1lbnQ+Citj
cmVhdGVPcHRpb25hbFBhcnNlckZvckZvcm1hdChHc3RQYWQqIGRlbXV4ZXJTcmNQYWQpCit7Cisg
ICAgR1JlZlB0cjxHc3RDYXBzPiBwYWRDYXBzID0gYWRvcHRHUmVmKGdzdF9wYWRfZ2V0X2N1cnJl
bnRfY2FwcyhkZW11eGVyU3JjUGFkKSk7CisgICAgR3N0U3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBn
c3RfY2Fwc19nZXRfc3RydWN0dXJlKHBhZENhcHMuZ2V0KCksIDApOworICAgIGNvbnN0IGNoYXIq
IG1lZGlhVHlwZSA9IGdzdF9zdHJ1Y3R1cmVfZ2V0X25hbWUoc3RydWN0dXJlKTsKKworICAgIEdV
bmlxdWVQdHI8Y2hhcj4gZGVtdXhlclBhZE5hbWUoZ3N0X3BhZF9nZXRfbmFtZShkZW11eGVyU3Jj
UGFkKSk7CisgICAgR1VuaXF1ZVB0cjxjaGFyPiBwYXJzZXJOYW1lKGdfc3RyZHVwX3ByaW50Zigi
JXNfcGFyc2VyIiwgZGVtdXhlclBhZE5hbWUuZ2V0KCkpKTsKKworICAgIGlmICghZ19zdHJjbXAw
KG1lZGlhVHlwZSwgImF1ZGlvL3gtb3B1cyIpKSB7CisgICAgICAgIEdzdEVsZW1lbnQqIG9wdXNw
YXJzZSA9IGdzdF9lbGVtZW50X2ZhY3RvcnlfbWFrZSgib3B1c3BhcnNlIiwgcGFyc2VyTmFtZS5n
ZXQoKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKG9wdXNwYXJzZSk7CisgICAgICAgIHJldHVy
biBHUmVmUHRyPEdzdEVsZW1lbnQ+KG9wdXNwYXJzZSk7CisgICAgfQorICAgIGlmICghZ19zdHJj
bXAwKG1lZGlhVHlwZSwgImF1ZGlvL3gtdm9yYmlzIikpIHsKKyAgICAgICAgR3N0RWxlbWVudCog
dm9yYmlzcGFyc2UgPSBnc3RfZWxlbWVudF9mYWN0b3J5X21ha2UoInZvcmJpc3BhcnNlIiwgcGFy
c2VyTmFtZS5nZXQoKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKHZvcmJpc3BhcnNlKTsKKyAg
ICAgICAgcmV0dXJuIEdSZWZQdHI8R3N0RWxlbWVudD4odm9yYmlzcGFyc2UpOworICAgIH0KKwor
ICAgIHJldHVybiBudWxscHRyOworfQorCiB2b2lkIEFwcGVuZFBpcGVsaW5lOjpjb25uZWN0RGVt
dXhlclNyY1BhZFRvQXBwc2lua0Zyb21BbnlUaHJlYWQoR3N0UGFkKiBkZW11eGVyU3JjUGFkKQog
ewogICAgIGlmICghbV9hcHBzaW5rKQpAQCAtOTk3LDMwICsxMDI2LDUwIEBAIHZvaWQgQXBwZW5k
UGlwZWxpbmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rRnJvbUFueVRocmVhZChHc3RQ
YWQqIGRlbXV4ZXJTCiAgICAgICAgIGlmICghcGFyZW50KQogICAgICAgICAgICAgZ3N0X2Jpbl9h
ZGQoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9hcHBzaW5rLmdldCgpKTsKIAorICAgICAg
ICAvLyBDdXJyZW50IGhlYWQgb2YgdGhlIHBpcGVsaW5lIGJlaW5nIGJ1aWx0LgorICAgICAgICBH
UmVmUHRyPEdzdFBhZD4gY3VycmVudFNyY1BhZCA9IGRlbXV4ZXJTcmNQYWQ7CisKKyAgICAgICAg
Ly8gU29tZSBhdWRpbyBmaWxlcyB1bmhlbHBmdWxseSBvbWl0IHRoZSBkdXJhdGlvbiBvZiBmcmFt
ZXMgaW4gdGhlIGNvbnRhaW5lci4gV2UgbmVlZCB0byBwYXJzZQorICAgICAgICAvLyB0aGUgY29u
dGFpbmVkIGF1ZGlvIHN0cmVhbXMgaW4gb3JkZXIgdG8ga25vdyB0aGUgZHVyYXRpb24gb2YgdGhl
IGZyYW1lcy4KKyAgICAgICAgLy8gVGhpcyBpcyBrbm93biB0byBiZSBhbiBpc3N1ZSB3aXRoIFlv
dVR1YmUgd2VibSBmaWxlcyBjb250YWluaW5nIE9wdXMgYXVkaW8gYXMgb2YgWVQyMDE4LgorICAg
ICAgICBtX3BhcnNlciA9IGNyZWF0ZU9wdGlvbmFsUGFyc2VyRm9yRm9ybWF0KGN1cnJlbnRTcmNQ
YWQuZ2V0KCkpOworICAgICAgICBpZiAobV9wYXJzZXIpIHsKKyAgICAgICAgICAgIGdzdF9iaW5f
YWRkKEdTVF9CSU4obV9waXBlbGluZS5nZXQoKSksIG1fcGFyc2VyLmdldCgpKTsKKyAgICAgICAg
ICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQobV9wYXJzZXIuZ2V0KCkpOwor
CisgICAgICAgICAgICBHUmVmUHRyPEdzdFBhZD4gcGFyc2VyU2lua1BhZCA9IGFkb3B0R1JlZihn
c3RfZWxlbWVudF9nZXRfc3RhdGljX3BhZChtX3BhcnNlci5nZXQoKSwgInNpbmsiKSk7CisgICAg
ICAgICAgICBHUmVmUHRyPEdzdFBhZD4gcGFyc2VyU3JjUGFkID0gYWRvcHRHUmVmKGdzdF9lbGVt
ZW50X2dldF9zdGF0aWNfcGFkKG1fcGFyc2VyLmdldCgpLCAic3JjIikpOworCisgICAgICAgICAg
ICBnc3RfcGFkX2xpbmsoY3VycmVudFNyY1BhZC5nZXQoKSwgcGFyc2VyU2lua1BhZC5nZXQoKSk7
CisgICAgICAgICAgICBjdXJyZW50U3JjUGFkID0gcGFyc2VyU3JjUGFkOworICAgICAgICB9CisK
ICNpZiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQogICAgICAgICBpZiAobV9kZWNyeXB0b3IpIHsK
ICAgICAgICAgICAgIGdzdF9vYmplY3RfcmVmKG1fZGVjcnlwdG9yLmdldCgpKTsKICAgICAgICAg
ICAgIGdzdF9iaW5fYWRkKEdTVF9CSU4obV9waXBlbGluZS5nZXQoKSksIG1fZGVjcnlwdG9yLmdl
dCgpKTsKKyAgICAgICAgICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQobV9k
ZWNyeXB0b3IuZ2V0KCkpOwogCiAgICAgICAgICAgICBHUmVmUHRyPEdzdFBhZD4gZGVjcnlwdG9y
U2lua1BhZCA9IGFkb3B0R1JlZihnc3RfZWxlbWVudF9nZXRfc3RhdGljX3BhZChtX2RlY3J5cHRv
ci5nZXQoKSwgInNpbmsiKSk7Ci0gICAgICAgICAgICBnc3RfcGFkX2xpbmsoZGVtdXhlclNyY1Bh
ZCwgZGVjcnlwdG9yU2lua1BhZC5nZXQoKSk7Ci0KICAgICAgICAgICAgIEdSZWZQdHI8R3N0UGFk
PiBkZWNyeXB0b3JTcmNQYWQgPSBhZG9wdEdSZWYoZ3N0X2VsZW1lbnRfZ2V0X3N0YXRpY19wYWQo
bV9kZWNyeXB0b3IuZ2V0KCksICJzcmMiKSk7Ci0gICAgICAgICAgICBnc3RfcGFkX2xpbmsoZGVj
cnlwdG9yU3JjUGFkLmdldCgpLCBhcHBzaW5rU2lua1BhZC5nZXQoKSk7Ci0KLSAgICAgICAgICAg
IGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQobV9hcHBzaW5rLmdldCgpKTsKLSAg
ICAgICAgICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQobV9kZWNyeXB0b3Iu
Z2V0KCkpOwogCi0gICAgICAgICAgICBpZiAobV9wZW5kaW5nRGVjcnlwdGlvblN0cnVjdHVyZSkK
LSAgICAgICAgICAgICAgICBkaXNwYXRjaFBlbmRpbmdEZWNyeXB0aW9uU3RydWN0dXJlKCk7Ci0g
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBnc3RfcGFkX2xpbmsoY3VycmVudFNyY1BhZC5n
ZXQoKSwgZGVjcnlwdG9yU2lua1BhZC5nZXQoKSk7CisgICAgICAgICAgICBjdXJyZW50U3JjUGFk
ID0gZGVjcnlwdG9yU3JjUGFkOworICAgICAgICB9CiAjZW5kaWYKLSAgICAgICAgICAgIGdzdF9w
YWRfbGluayhkZW11eGVyU3JjUGFkLCBhcHBzaW5rU2lua1BhZC5nZXQoKSk7Ci0gICAgICAgICAg
ICBnc3RfZWxlbWVudF9zeW5jX3N0YXRlX3dpdGhfcGFyZW50KG1fYXBwc2luay5nZXQoKSk7CisK
KyAgICAgICAgZ3N0X3BhZF9saW5rKGN1cnJlbnRTcmNQYWQuZ2V0KCksIGFwcHNpbmtTaW5rUGFk
LmdldCgpKTsKKworICAgICAgICBnc3RfZWxlbWVudF9zeW5jX3N0YXRlX3dpdGhfcGFyZW50KG1f
YXBwc2luay5nZXQoKSk7CisKICNpZiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQotICAgICAgICB9
CisgICAgICAgIGlmIChtX3BlbmRpbmdEZWNyeXB0aW9uU3RydWN0dXJlKQorICAgICAgICAgICAg
ZGlzcGF0Y2hQZW5kaW5nRGVjcnlwdGlvblN0cnVjdHVyZSgpOwogI2VuZGlmCiAgICAgICAgIGdz
dF9lbGVtZW50X3NldF9zdGF0ZShtX3BpcGVsaW5lLmdldCgpLCBHU1RfU1RBVEVfUEFVU0VEKTsK
KyAgICAgICAgZ3N0X2VsZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudChtX2FwcHNpbmsuZ2V0
KCkpOworCisgICAgICAgIEdTVF9ERUJVR19CSU5fVE9fRE9UX0ZJTEVfV0lUSF9UUyhHU1RfQklO
KG1fcGlwZWxpbmUuZ2V0KCkpLCBHU1RfREVCVUdfR1JBUEhfU0hPV19BTEwsICJ3ZWJraXQtYWZ0
ZXItbGluayIpOwogICAgIH0KIH0KIApAQCAtMTA4OSwzMSArMTEzOCwyNyBAQCB2b2lkIEFwcGVu
ZFBpcGVsaW5lOjpjb25uZWN0RGVtdXhlclNyY1BhZFRvQXBwc2luayhHc3RQYWQqIGRlbXV4ZXJT
cmNQYWQpCiAgICAgbV9wYWRBZGRSZW1vdmVDb25kaXRpb24ubm90aWZ5T25lKCk7CiB9CiAKLXZv
aWQgQXBwZW5kUGlwZWxpbmU6OmRpc2Nvbm5lY3REZW11eGVyU3JjUGFkRnJvbUFwcHNpbmtGcm9t
QW55VGhyZWFkKEdzdFBhZCogZGVtdXhlclNyY1BhZCkKK3ZvaWQgQXBwZW5kUGlwZWxpbmU6OmRp
c2Nvbm5lY3REZW11eGVyU3JjUGFkRnJvbUFwcHNpbmtGcm9tQW55VGhyZWFkKEdzdFBhZCopCiB7
Ci0gICAgLy8gTXVzdCBiZSBkb25lIGluIHRoZSB0aHJlYWQgd2Ugd2VyZSBjYWxsZWQgZnJvbSAo
dXN1YWxseSBzdHJlYW1pbmcgdGhyZWFkKS4KLSAgICBpZiAoIWdzdF9wYWRfaXNfbGlua2VkKGRl
bXV4ZXJTcmNQYWQpKSB7Ci0gICAgICAgIGd1bG9uZyBwcm9iZUlkID0gR1BPSU5URVJfVE9fVUxP
TkcoZ19vYmplY3RfZ2V0X2RhdGEoR19PQkpFQ1QoZGVtdXhlclNyY1BhZCksICJibGFja0hvbGVQ
cm9iZUlkIikpOwotICAgICAgICBpZiAocHJvYmVJZCkgewotICAgICAgICAgICAgR1NUX0RFQlVH
KCJEaXNjb25uZWN0aW5nIGJsYWNrIGhvbGUgcHJvYmUuIik7Ci0gICAgICAgICAgICBnX29iamVj
dF9zZXRfZGF0YShHX09CSkVDVChkZW11eGVyU3JjUGFkKSwgImJsYWNrSG9sZVByb2JlSWQiLCBu
dWxscHRyKTsKLSAgICAgICAgICAgIGdzdF9wYWRfcmVtb3ZlX3Byb2JlKGRlbXV4ZXJTcmNQYWQs
IHByb2JlSWQpOwotICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIEdTVF9XQVJOSU5HKCJOb3Qg
ZGlzY29ubmVjdGluZyBkZW11eGVyIHNyYyBwYWQgYmVjYXVzZSBpdCB3YXNuJ3QgbGlua2VkIik7
Ci0gICAgICAgIHJldHVybjsKLSAgICB9CisgICAgR1NUX0RFQlVHX0JJTl9UT19ET1RfRklMRV9X
SVRIX1RTKEdTVF9CSU4obV9waXBlbGluZS5nZXQoKSksIEdTVF9ERUJVR19HUkFQSF9TSE9XX0FM
TCwgInBhZC1yZW1vdmVkLWJlZm9yZSIpOwogCiAgICAgR1NUX0RFQlVHKCJEaXNjb25uZWN0aW5n
IGFwcHNpbmsiKTsKIAogI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCi0gICAgaWYgKG1fZGVj
cnlwdG9yKSB7Ci0gICAgICAgIGdzdF9lbGVtZW50X3VubGluayhtX2RlY3J5cHRvci5nZXQoKSwg
bV9hcHBzaW5rLmdldCgpKTsKLSAgICAgICAgZ3N0X2VsZW1lbnRfdW5saW5rKG1fZGVtdXguZ2V0
KCksIG1fZGVjcnlwdG9yLmdldCgpKTsKKyAgICBpZiAobV9kZWNyeXRvcikgewogICAgICAgICBn
c3RfZWxlbWVudF9zZXRfc3RhdGUobV9kZWNyeXB0b3IuZ2V0KCksIEdTVF9TVEFURV9OVUxMKTsK
ICAgICAgICAgZ3N0X2Jpbl9yZW1vdmUoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9kZWNy
eXB0b3IuZ2V0KCkpOwotICAgIH0gZWxzZQorICAgICAgICBtX2RlY3J5cHRvciA9IG51bGxwdHI7
CisgICAgfQogI2VuZGlmCi0gICAgICAgIGdzdF9lbGVtZW50X3VubGluayhtX2RlbXV4LmdldCgp
LCBtX2FwcHNpbmsuZ2V0KCkpOworCisgICAgaWYgKG1fcGFyc2VyKSB7CisgICAgICAgIGdzdF9l
bGVtZW50X3NldF9zdGF0ZShtX3BhcnNlci5nZXQoKSwgR1NUX1NUQVRFX05VTEwpOworICAgICAg
ICBnc3RfYmluX3JlbW92ZShHU1RfQklOKG1fcGlwZWxpbmUuZ2V0KCkpLCBtX3BhcnNlci5nZXQo
KSk7CisgICAgICAgIG1fcGFyc2VyID0gbnVsbHB0cjsKKyAgICB9CisKKyAgICBHU1RfREVCVUdf
QklOX1RPX0RPVF9GSUxFX1dJVEhfVFMoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgR1NUX0RF
QlVHX0dSQVBIX1NIT1dfQUxMLCAicGFkLXJlbW92ZWQtYWZ0ZXIiKTsKIH0KIAogI2lmIEVOQUJM
RShFTkNSWVBURURfTUVESUEpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvbXNlL0FwcGVuZFBpcGVsaW5lLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL0FwcGVuZFBpcGVsaW5lLmgKaW5kZXggMjVj
YjNiZWQ1NDE2MzMwOTViMWNmZTYzMDJiZTE0YjQxNTI0NTI0Mi4uM2ZiNTA5YjIzNDY5YzIzZTUz
YTk5YjA0YjRlYzg1ODk5NTI3NmVjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9BcHBlbmRQaXBlbGluZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuaApA
QCAtMTE4LDYgKzExOCw3IEBAIHByaXZhdGU6CiAgICAgR1JlZlB0cjxHc3RCdXM+IG1fYnVzOwog
ICAgIEdSZWZQdHI8R3N0RWxlbWVudD4gbV9hcHBzcmM7CiAgICAgR1JlZlB0cjxHc3RFbGVtZW50
PiBtX2RlbXV4OworICAgIEdSZWZQdHI8R3N0RWxlbWVudD4gbV9wYXJzZXI7IC8vIG9wdGlvbmFs
CiAjaWYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKICAgICBHUmVmUHRyPEdzdEVsZW1lbnQ+IG1f
ZGVjcnlwdG9yOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvR1N0cmVhbWVyTWVkaWFTYW1w
bGUuY3BwCmluZGV4IDIyOWRlZmFhZDMwOGQ0ODUzYTEwMTM0ZTRlYTc5N2YzYjIyYzEyN2EuLjI5
NTEwMDM0YTY4MDA5ODdlYjM0OTg2NWVjZjZiZGMzZmZkZDRmNjUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvR1N0cmVhbWVyTWVkaWFT
YW1wbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1l
ci9tc2UvR1N0cmVhbWVyTWVkaWFTYW1wbGUuY3BwCkBAIC01Miw4ICs1Miw4IEBAIEdTdHJlYW1l
ck1lZGlhU2FtcGxlOjpHU3RyZWFtZXJNZWRpYVNhbXBsZShHc3RTYW1wbGUqIHNhbXBsZSwgY29u
c3QgRmxvYXRTaXplJiBwCiAKICAgICBpZiAoR1NUX0JVRkZFUl9QVFNfSVNfVkFMSUQoYnVmZmVy
KSkKICAgICAgICAgbV9wdHMgPSBjcmVhdGVNZWRpYVRpbWUoR1NUX0JVRkZFUl9QVFMoYnVmZmVy
KSk7Ci0gICAgaWYgKEdTVF9CVUZGRVJfRFRTX0lTX1ZBTElEKGJ1ZmZlcikpCi0gICAgICAgIG1f
ZHRzID0gY3JlYXRlTWVkaWFUaW1lKEdTVF9CVUZGRVJfRFRTKGJ1ZmZlcikpOworICAgIGlmIChH
U1RfQlVGRkVSX0RUU19JU19WQUxJRChidWZmZXIpIHx8IEdTVF9CVUZGRVJfUFRTX0lTX1ZBTElE
KGJ1ZmZlcikpCisgICAgICAgIG1fZHRzID0gY3JlYXRlTWVkaWFUaW1lKEdTVF9CVUZGRVJfRFRT
X09SX1BUUyhidWZmZXIpKTsKICAgICBpZiAoR1NUX0JVRkZFUl9EVVJBVElPTl9JU19WQUxJRChi
dWZmZXIpKQogICAgICAgICBtX2R1cmF0aW9uID0gY3JlYXRlTWVkaWFUaW1lKEdTVF9CVUZGRVJf
RFVSQVRJT04oYnVmZmVyKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvUGxheWJhY2tQaXBlbGluZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL1BsYXliYWNrUGlwZWxpbmUuY3Bw
CmluZGV4IDgwOWIwOGMxNzQ3ZjRmNTQ3MTdjNzNjN2NlNTNmY2IwMzUwMzllN2UuLjM4MWRlNmU2
ODcxNjNiZWQ0ZGMxYjU4YjBjMDQ5N2M4NTkwM2Q4N2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvUGxheWJhY2tQaXBlbGluZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9QbGF5
YmFja1BpcGVsaW5lLmNwcApAQCAtMjM1LDcgKzIzNSwxMCBAQCB2b2lkIFBsYXliYWNrUGlwZWxp
bmU6OmF0dGFjaFRyYWNrKFJlZlB0cjxTb3VyY2VCdWZmZXJQcml2YXRlR1N0cmVhbWVyPiBzb3Vy
Y2VCdQogCiAgICAgICAgIHBhZCA9IGFkb3B0R1JlZihnc3RfZWxlbWVudF9nZXRfc3RhdGljX3Bh
ZChwYXJzZXIsICJzcmMiKSk7CiAgICAgICAgIGdzdF9lbGVtZW50X2FkZF9wYWQoc3RyZWFtLT5w
YXJzZXIsIGdzdF9naG9zdF9wYWRfbmV3KCJzcmMiLCBwYWQuZ2V0KCkpKTsKLSAgICB9IGVsc2Ug
aWYgKCFnX3N0cmNtcDAobWVkaWFUeXBlLCAidmlkZW8veC12cDkiKSkKKyAgICB9IGVsc2UgaWYg
KCFnX3N0cmNtcDAobWVkaWFUeXBlLCAidmlkZW8veC12cDgiKQorICAgICAgICB8fCAhZ19zdHJj
bXAwKG1lZGlhVHlwZSwgInZpZGVvL3gtdnA5IikKKyAgICAgICAgfHwgIWdfc3RyY21wMChtZWRp
YVR5cGUsICJhdWRpby94LW9wdXMiKQorICAgICAgICB8fCAhZ19zdHJjbXAwKG1lZGlhVHlwZSwg
ImF1ZGlvL3gtdm9yYmlzIikpCiAgICAgICAgIHN0cmVhbS0+cGFyc2VyID0gbnVsbHB0cjsKICAg
ICBlbHNlIHsKICAgICAgICAgR1NUX0VSUk9SX09CSkVDVChzdHJlYW0tPnBhcmVudCwgIlVuc3Vw
cG9ydGVkIG1lZGlhIGZvcm1hdDogJXMiLCBtZWRpYVR5cGUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGM2YjgwNTJmYTMx
OWU4YjllMThlYTAwN2JiNDgyY2JiNzQ4YzZlMTguLjg0MTNjYWU3OTI5Y2FmNjRiZTM3Mjg5Yzdi
ZjhjOGNiYjM3NWMxMDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxNy0xMC0xMSAgQWxpY2lh
IEJveWEgR2FyY8OtYSAgPGFib3lhQGlnYWxpYS5jb20+CisKKyAgICAgICAgW01TRV1bR1N0cmVh
bWVyXSBJbnNlcnQgcGFyc2VyIGVsZW1lbnRzIGluIEFwcGVuZFBpcGVsaW5lIHdoZW4gZGVtdXhp
bmcgb3B1cyBvciBWb3JiaXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE3ODA3NgorCisgICAgICAgIFlvdVR1YmUgZG9lcyBub3QgaW5jbHVkZSBkdXJh
dGlvbnMgaW4gdGhlIHdlYm0gY29udGFpbmVyIGZvciBmaWxlcworICAgICAgICBjb250YWluaW5n
IE9wdXMgYXVkaW8sIHNvIHdlIG5lZWQgdG8gcmVhZCB0aGVtIGZyb20gdGhlIGNvbnRhaW5lZAor
ICAgICAgICBzdHJlYW0uIEZvcnR1bmF0ZWx5LCBHU3RyZWFtZXIgaGFzIGFuIGVsZW1lbnQgdG8g
ZG8gdGhhdDogb3B1c3BhcnNlLgorCisgICAgICAgIFRoZSBzYW1lIHRoaW5nIGhhcHBlbnMgd2l0
aCBWb3JiaXMgY29udGFpbmVkIGluIHdlYm0gZmlsZXMgZnJvbSB0aGUKKyAgICAgICAgVzNDIHRl
c3RzLCB3aGljaCBzaG91bGQgYWxzbyBiZSBmaXhlZCBieSB0aGUgR1N0cmVhbWVyIGVsZW1lbnQK
KyAgICAgICAgdm9yYmlzcGFyc2UuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGFuIG9wdXNw
YXJzZSBvciB2b3JiaXNwYXJzZSBlbGVtZW50IHRvIHRoZQorICAgICAgICBBcHBlbmRQaXBlbGlu
ZSBhdCB0aGUgc2lua3BhZCBvZiB0aGUgZGVtdXhlciB3aGVuIGVpdGhlciBpcyBmb3VuZC4KKwor
ICAgICAgICBUZXN0czogdXBkYXRlZCBleHBlY3RhdGlvbnMuCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9ndGsvVGVzdEV4cGVjdGF0aW9uczoKKwogMjAxNy0xMC0wMSAgU2FtIFdlaW5pZyAgPHNhbUB3
ZWJraXQub3JnPgogCiAgICAgICAgIFNraXAgZmFpbGluZyB0ZXN0cyBmcm9tIHIyMjI2OTIgdGhh
dCBoYXZlIGRpZmZlcmVudCBvdXRwdXQgb24gZWFjaCBydW4uCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDMyYzc3YjAwNmVlYzQwMTY5ZTdiMzFiZGI0Mjg1
Y2UyODdjMjEzMjAuLmYwZTcwOThmY2QwMzEwMWNiNmFjOTUzMTliZjNjNWYyN2NiYzFiMzcgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMjEsMTAgKzIy
MSw2IEBAIHdlYmtpdC5vcmcvYi82MTY2MSBlZGl0aW5nL3Bhc3RlYm9hcmQvZHJhZy1kcm9wLWxp
c3QuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzkyNzQ5IGZhc3QvZG9tL05hdmlnYXRv
ckNvbnRlbnRVdGlscy9pcy1wcm90b2NvbC1oYW5kbGVyLXJlZ2lzdGVyZWQuaHRtbCBbIFNraXAg
XQogCiAjIE1TRSBmYWlsdXJlcwotd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9Tb3VyY2VCdWZmZXItYWJvcnQtcmVhZHlTdGF0
ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL1NvdXJjZUJ1ZmZlci1hYm9ydC1yZW1vdmVkLmh0
bWwgWyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvU291cmNlQnVmZmVyLWFib3J0LXVwZGF0aW5nLmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9tZWRpYS1zb3VyY2UvU291cmNlQnVmZmVyLWFib3J0Lmh0bWwgWyBGYWlsdXJlIF0K
IHdlYmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRp
YS1zb3VyY2UvVVJMLWNyZWF0ZU9iamVjdFVSTC1yZXZva2UuaHRtbCBbIEZhaWx1cmUgXQogIyBT
ZWUgYWxzbyBidWcgIzE3NTU3OAogd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1hY3RpdmVzb3VyY2VidWZm
ZXJzLmh0bWwgWyBDcmFzaCBGYWlsdXJlIF0KQEAgLTIzNiwxMiArMjMyLDkgQEAgd2Via2l0Lm9y
Zy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9t
ZWRpYXNvdXJjZS1hcHAKIHdlYmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtYXZ0cmFja3MuaHRtbCBbIEZhaWx1
cmUgXQogd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1idWZmZXJlZC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJr
aXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291
cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Utd2VibS1hLWJpdHJhdGUuaHRtbCBbIEZhaWx1
cmUgXQotd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdlYm0tYXYtYXVkaW8tYml0
cmF0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Ut
d2VibS1hdi1mcmFtZXNpemUuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE2NzEwOCBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1j
b25maWctY2hhbmdlLXdlYm0tYXYtdmlkZW8tYml0cmF0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJr
aXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291
cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Utd2VibS12LWJpdHJhdGUuaHRtbCBbIEZhaWx1
cmUgXQogd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdlYm0tdi1mcmFtZXJhdGUu
aHRtbCBbIEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdlYm0t
di1mcmFtZXNpemUuaHRtbCBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWct
Y2hhbmdlLXdlYm0tdi1mcmFtZXNpemUuaHRtbCBbIEZhaWx1cmUgUGFzcyBdCiAjIENyYXNoIGlz
IHdlYmtpdC5vcmcvYi8xNzY4MDQKIHdlYmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtZHVyYXRpb24uaHRtbCBb
IEZhaWx1cmUgQ3Jhc2ggXQogIyBDcmFzaCBpbiBidWcgIzE3NjAxOQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>323659</attachid>
            <date>2017-10-13 04:55:50 -0700</date>
            <delta_ts>2017-10-16 09:12:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178076-20171013135548.patch</filename>
            <type>text/plain</type>
            <size>15728</size>
            <attacher name="Alicia Boya García">aboya</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIzMjc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWRmNmJmNDMwMDIyYTll
MjFlZjJkNDk3ZWE3ZjFlZTc1ZTRhYjU1My4uMWM0MTc3ODNkMGMwMDMyYmNmMjE4MGY5MThjZDQz
YjNiZGM3YWZkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE3LTEwLTExICBBbGlj
aWEgQm95YSBHYXJjw61hICA8YWJveWFAaWdhbGlhLmNvbT4KKworICAgICAgICBbTVNFXVtHU3Ry
ZWFtZXJdIEluc2VydCBwYXJzZXIgZWxlbWVudHMgaW4gQXBwZW5kUGlwZWxpbmUgd2hlbiBkZW11
eGluZyBvcHVzIG9yIFZvcmJpcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTc4MDc2CisKKyAgICAgICAgWW91VHViZSBkb2VzIG5vdCBpbmNsdWRlIGR1
cmF0aW9ucyBpbiB0aGUgd2VibSBjb250YWluZXIgZm9yIGZpbGVzCisgICAgICAgIGNvbnRhaW5p
bmcgT3B1cyBhdWRpbywgc28gd2UgbmVlZCB0byByZWFkIHRoZW0gZnJvbSB0aGUgY29udGFpbmVk
CisgICAgICAgIHN0cmVhbS4gRm9ydHVuYXRlbHksIEdTdHJlYW1lciBoYXMgYW4gZWxlbWVudCB0
byBkbyB0aGF0OiBvcHVzcGFyc2UuCisKKyAgICAgICAgVGhlIHNhbWUgdGhpbmcgaGFwcGVucyB3
aXRoIFZvcmJpcyBjb250YWluZWQgaW4gd2VibSBmaWxlcyBmcm9tIHRoZQorICAgICAgICBXM0Mg
dGVzdHMsIHdoaWNoIHNob3VsZCBhbHNvIGJlIGZpeGVkIGJ5IHRoZSBHU3RyZWFtZXIgZWxlbWVu
dAorICAgICAgICB2b3JiaXNwYXJzZS4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYW4gb3B1
c3BhcnNlIG9yIHZvcmJpc3BhcnNlIGVsZW1lbnQgdG8gdGhlCisgICAgICAgIEFwcGVuZFBpcGVs
aW5lIGF0IHRoZSBzaW5rcGFkIG9mIHRoZSBkZW11eGVyIHdoZW4gZWl0aGVyIGlzIGZvdW5kLgor
CisgICAgICAgIFRlc3RzOiB1cGRhdGVkIGV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6QXBwZW5kUGlwZWxpbmU6OmFwcHNpbmtOZXdTYW1wbGUpOgorICAgICAgICAoV2Vi
Q29yZTo6Y3JlYXRlT3B0aW9uYWxQYXJzZXJGb3JGb3JtYXQpOgorICAgICAgICAoV2ViQ29yZTo6
QXBwZW5kUGlwZWxpbmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rRnJvbUFueVRocmVh
ZCk6CisgICAgICAgIChXZWJDb3JlOjpBcHBlbmRQaXBlbGluZTo6ZGlzY29ubmVjdERlbXV4ZXJT
cmNQYWRGcm9tQXBwc2lua0Zyb21BbnlUaHJlYWQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkdTdHJlYW1lck1lZGlhU2FtcGxlOjpHU3RyZWFtZXJNZWRpYVNhbXBsZSk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9QbGF5YmFja1BpcGVsaW5l
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXliYWNrUGlwZWxpbmU6OmF0dGFjaFRyYWNrKToK
KwogMjAxNy0xMC0wOSAgQWxpY2lhIEJveWEgR2FyY8OtYSAgPGFib3lhQGlnYWxpYS5jb20+CiAK
ICAgICAgICAgW01TRV1bR1N0cmVhbWVyXSBBZGQgZHVtcCBvZiBhcHBlbmQgcGlwZWxpbmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2Uv
QXBwZW5kUGlwZWxpbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKaW5kZXggM2VhZDdkNGIxZDhiZjU1MzI3OTEw
OGNmNTU4NmY5NTI5ZjQ1OWRlMS4uMmM1ZTY5ZjRiMzI1NWRlNzUzYWMzOTdiMzI3NThiMjJjZDhk
MGI3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVh
bWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKQEAgLTcyOCw3ICs3Mjgs
MTIgQEAgdm9pZCBBcHBlbmRQaXBlbGluZTo6YXBwc2lua05ld1NhbXBsZShHc3RTYW1wbGUqIHNh
bXBsZSkKIAogICAgICAgICBSZWZQdHI8R1N0cmVhbWVyTWVkaWFTYW1wbGU+IG1lZGlhU2FtcGxl
ID0gV2ViQ29yZTo6R1N0cmVhbWVyTWVkaWFTYW1wbGU6OmNyZWF0ZShzYW1wbGUsIG1fcHJlc2Vu
dGF0aW9uU2l6ZSwgdHJhY2tJZCgpKTsKIAotICAgICAgICBHU1RfVFJBQ0UoImFwcGVuZDogdHJh
Y2tJZD0lcyBQVFM9JWYgcHJlc2VudGF0aW9uU2l6ZT0lLjBmeCUuMGYiLCBtZWRpYVNhbXBsZS0+
dHJhY2tJRCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCksIG1lZGlhU2FtcGxlLT5wcmVzZW50YXRp
b25UaW1lKCkudG9GbG9hdCgpLCBtZWRpYVNhbXBsZS0+cHJlc2VudGF0aW9uU2l6ZSgpLndpZHRo
KCksIG1lZGlhU2FtcGxlLT5wcmVzZW50YXRpb25TaXplKCkuaGVpZ2h0KCkpOworICAgICAgICBH
U1RfVFJBQ0UoImFwcGVuZDogdHJhY2tJZD0lcyBQVFM9JXMgRFRTPSVzIERVUj0lcyBwcmVzZW50
YXRpb25TaXplPSUuMGZ4JS4wZiIsCisgICAgICAgICAgICBtZWRpYVNhbXBsZS0+dHJhY2tJRCgp
LnN0cmluZygpLnV0ZjgoKS5kYXRhKCksCisgICAgICAgICAgICBtZWRpYVNhbXBsZS0+cHJlc2Vu
dGF0aW9uVGltZSgpLnRvU3RyaW5nKCkudXRmOCgpLmRhdGEoKSwKKyAgICAgICAgICAgIG1lZGlh
U2FtcGxlLT5kZWNvZGVUaW1lKCkudG9TdHJpbmcoKS51dGY4KCkuZGF0YSgpLAorICAgICAgICAg
ICAgbWVkaWFTYW1wbGUtPmR1cmF0aW9uKCkudG9TdHJpbmcoKS51dGY4KCkuZGF0YSgpLAorICAg
ICAgICAgICAgbWVkaWFTYW1wbGUtPnByZXNlbnRhdGlvblNpemUoKS53aWR0aCgpLCBtZWRpYVNh
bXBsZS0+cHJlc2VudGF0aW9uU2l6ZSgpLmhlaWdodCgpKTsKIAogICAgICAgICAvLyBJZiB3ZSdy
ZSBiZXlvbmQgdGhlIGR1cmF0aW9uLCBpZ25vcmUgdGhpcyBzYW1wbGUgYW5kIHRoZSByZW1haW5p
bmcgb25lcy4KICAgICAgICAgTWVkaWFUaW1lIGR1cmF0aW9uID0gbV9tZWRpYVNvdXJjZUNsaWVu
dC0+ZHVyYXRpb24oKTsKQEAgLTk0NCw2ICs5NDksMzAgQEAgR3N0Rmxvd1JldHVybiBBcHBlbmRQ
aXBlbGluZTo6aGFuZGxlTmV3QXBwc2lua1NhbXBsZShHc3RFbGVtZW50KiBhcHBzaW5rKQogICAg
IHJldHVybiBtX2Zsb3dSZXR1cm47CiB9CiAKK3N0YXRpYyBHUmVmUHRyPEdzdEVsZW1lbnQ+Citj
cmVhdGVPcHRpb25hbFBhcnNlckZvckZvcm1hdChHc3RQYWQqIGRlbXV4ZXJTcmNQYWQpCit7Cisg
ICAgR1JlZlB0cjxHc3RDYXBzPiBwYWRDYXBzID0gYWRvcHRHUmVmKGdzdF9wYWRfZ2V0X2N1cnJl
bnRfY2FwcyhkZW11eGVyU3JjUGFkKSk7CisgICAgR3N0U3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBn
c3RfY2Fwc19nZXRfc3RydWN0dXJlKHBhZENhcHMuZ2V0KCksIDApOworICAgIGNvbnN0IGNoYXIq
IG1lZGlhVHlwZSA9IGdzdF9zdHJ1Y3R1cmVfZ2V0X25hbWUoc3RydWN0dXJlKTsKKworICAgIEdV
bmlxdWVQdHI8Y2hhcj4gZGVtdXhlclBhZE5hbWUoZ3N0X3BhZF9nZXRfbmFtZShkZW11eGVyU3Jj
UGFkKSk7CisgICAgR1VuaXF1ZVB0cjxjaGFyPiBwYXJzZXJOYW1lKGdfc3RyZHVwX3ByaW50Zigi
JXNfcGFyc2VyIiwgZGVtdXhlclBhZE5hbWUuZ2V0KCkpKTsKKworICAgIGlmICghZ19zdHJjbXAw
KG1lZGlhVHlwZSwgImF1ZGlvL3gtb3B1cyIpKSB7CisgICAgICAgIEdzdEVsZW1lbnQqIG9wdXNw
YXJzZSA9IGdzdF9lbGVtZW50X2ZhY3RvcnlfbWFrZSgib3B1c3BhcnNlIiwgcGFyc2VyTmFtZS5n
ZXQoKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKG9wdXNwYXJzZSk7CisgICAgICAgIHJldHVy
biBHUmVmUHRyPEdzdEVsZW1lbnQ+KG9wdXNwYXJzZSk7CisgICAgfQorICAgIGlmICghZ19zdHJj
bXAwKG1lZGlhVHlwZSwgImF1ZGlvL3gtdm9yYmlzIikpIHsKKyAgICAgICAgR3N0RWxlbWVudCog
dm9yYmlzcGFyc2UgPSBnc3RfZWxlbWVudF9mYWN0b3J5X21ha2UoInZvcmJpc3BhcnNlIiwgcGFy
c2VyTmFtZS5nZXQoKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKHZvcmJpc3BhcnNlKTsKKyAg
ICAgICAgcmV0dXJuIEdSZWZQdHI8R3N0RWxlbWVudD4odm9yYmlzcGFyc2UpOworICAgIH0KKwor
ICAgIHJldHVybiBudWxscHRyOworfQorCiB2b2lkIEFwcGVuZFBpcGVsaW5lOjpjb25uZWN0RGVt
dXhlclNyY1BhZFRvQXBwc2lua0Zyb21BbnlUaHJlYWQoR3N0UGFkKiBkZW11eGVyU3JjUGFkKQog
ewogICAgIGlmICghbV9hcHBzaW5rKQpAQCAtOTk3LDMwICsxMDI2LDUwIEBAIHZvaWQgQXBwZW5k
UGlwZWxpbmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rRnJvbUFueVRocmVhZChHc3RQ
YWQqIGRlbXV4ZXJTCiAgICAgICAgIGlmICghcGFyZW50KQogICAgICAgICAgICAgZ3N0X2Jpbl9h
ZGQoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9hcHBzaW5rLmdldCgpKTsKIAorICAgICAg
ICAvLyBDdXJyZW50IGhlYWQgb2YgdGhlIHBpcGVsaW5lIGJlaW5nIGJ1aWx0LgorICAgICAgICBH
UmVmUHRyPEdzdFBhZD4gY3VycmVudFNyY1BhZCA9IGRlbXV4ZXJTcmNQYWQ7CisKKyAgICAgICAg
Ly8gU29tZSBhdWRpbyBmaWxlcyB1bmhlbHBmdWxseSBvbWl0IHRoZSBkdXJhdGlvbiBvZiBmcmFt
ZXMgaW4gdGhlIGNvbnRhaW5lci4gV2UgbmVlZCB0byBwYXJzZQorICAgICAgICAvLyB0aGUgY29u
dGFpbmVkIGF1ZGlvIHN0cmVhbXMgaW4gb3JkZXIgdG8ga25vdyB0aGUgZHVyYXRpb24gb2YgdGhl
IGZyYW1lcy4KKyAgICAgICAgLy8gVGhpcyBpcyBrbm93biB0byBiZSBhbiBpc3N1ZSB3aXRoIFlv
dVR1YmUgd2VibSBmaWxlcyBjb250YWluaW5nIE9wdXMgYXVkaW8gYXMgb2YgWVQyMDE4LgorICAg
ICAgICBtX3BhcnNlciA9IGNyZWF0ZU9wdGlvbmFsUGFyc2VyRm9yRm9ybWF0KGN1cnJlbnRTcmNQ
YWQuZ2V0KCkpOworICAgICAgICBpZiAobV9wYXJzZXIpIHsKKyAgICAgICAgICAgIGdzdF9iaW5f
YWRkKEdTVF9CSU4obV9waXBlbGluZS5nZXQoKSksIG1fcGFyc2VyLmdldCgpKTsKKyAgICAgICAg
ICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQobV9wYXJzZXIuZ2V0KCkpOwor
CisgICAgICAgICAgICBHUmVmUHRyPEdzdFBhZD4gcGFyc2VyU2lua1BhZCA9IGFkb3B0R1JlZihn
c3RfZWxlbWVudF9nZXRfc3RhdGljX3BhZChtX3BhcnNlci5nZXQoKSwgInNpbmsiKSk7CisgICAg
ICAgICAgICBHUmVmUHRyPEdzdFBhZD4gcGFyc2VyU3JjUGFkID0gYWRvcHRHUmVmKGdzdF9lbGVt
ZW50X2dldF9zdGF0aWNfcGFkKG1fcGFyc2VyLmdldCgpLCAic3JjIikpOworCisgICAgICAgICAg
ICBnc3RfcGFkX2xpbmsoY3VycmVudFNyY1BhZC5nZXQoKSwgcGFyc2VyU2lua1BhZC5nZXQoKSk7
CisgICAgICAgICAgICBjdXJyZW50U3JjUGFkID0gcGFyc2VyU3JjUGFkOworICAgICAgICB9CisK
ICNpZiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQogICAgICAgICBpZiAobV9kZWNyeXB0b3IpIHsK
ICAgICAgICAgICAgIGdzdF9vYmplY3RfcmVmKG1fZGVjcnlwdG9yLmdldCgpKTsKICAgICAgICAg
ICAgIGdzdF9iaW5fYWRkKEdTVF9CSU4obV9waXBlbGluZS5nZXQoKSksIG1fZGVjcnlwdG9yLmdl
dCgpKTsKKyAgICAgICAgICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQobV9k
ZWNyeXB0b3IuZ2V0KCkpOwogCiAgICAgICAgICAgICBHUmVmUHRyPEdzdFBhZD4gZGVjcnlwdG9y
U2lua1BhZCA9IGFkb3B0R1JlZihnc3RfZWxlbWVudF9nZXRfc3RhdGljX3BhZChtX2RlY3J5cHRv
ci5nZXQoKSwgInNpbmsiKSk7Ci0gICAgICAgICAgICBnc3RfcGFkX2xpbmsoZGVtdXhlclNyY1Bh
ZCwgZGVjcnlwdG9yU2lua1BhZC5nZXQoKSk7Ci0KICAgICAgICAgICAgIEdSZWZQdHI8R3N0UGFk
PiBkZWNyeXB0b3JTcmNQYWQgPSBhZG9wdEdSZWYoZ3N0X2VsZW1lbnRfZ2V0X3N0YXRpY19wYWQo
bV9kZWNyeXB0b3IuZ2V0KCksICJzcmMiKSk7Ci0gICAgICAgICAgICBnc3RfcGFkX2xpbmsoZGVj
cnlwdG9yU3JjUGFkLmdldCgpLCBhcHBzaW5rU2lua1BhZC5nZXQoKSk7Ci0KLSAgICAgICAgICAg
IGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQobV9hcHBzaW5rLmdldCgpKTsKLSAg
ICAgICAgICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQobV9kZWNyeXB0b3Iu
Z2V0KCkpOwogCi0gICAgICAgICAgICBpZiAobV9wZW5kaW5nRGVjcnlwdGlvblN0cnVjdHVyZSkK
LSAgICAgICAgICAgICAgICBkaXNwYXRjaFBlbmRpbmdEZWNyeXB0aW9uU3RydWN0dXJlKCk7Ci0g
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBnc3RfcGFkX2xpbmsoY3VycmVudFNyY1BhZC5n
ZXQoKSwgZGVjcnlwdG9yU2lua1BhZC5nZXQoKSk7CisgICAgICAgICAgICBjdXJyZW50U3JjUGFk
ID0gZGVjcnlwdG9yU3JjUGFkOworICAgICAgICB9CiAjZW5kaWYKLSAgICAgICAgICAgIGdzdF9w
YWRfbGluayhkZW11eGVyU3JjUGFkLCBhcHBzaW5rU2lua1BhZC5nZXQoKSk7Ci0gICAgICAgICAg
ICBnc3RfZWxlbWVudF9zeW5jX3N0YXRlX3dpdGhfcGFyZW50KG1fYXBwc2luay5nZXQoKSk7CisK
KyAgICAgICAgZ3N0X3BhZF9saW5rKGN1cnJlbnRTcmNQYWQuZ2V0KCksIGFwcHNpbmtTaW5rUGFk
LmdldCgpKTsKKworICAgICAgICBnc3RfZWxlbWVudF9zeW5jX3N0YXRlX3dpdGhfcGFyZW50KG1f
YXBwc2luay5nZXQoKSk7CisKICNpZiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQotICAgICAgICB9
CisgICAgICAgIGlmIChtX3BlbmRpbmdEZWNyeXB0aW9uU3RydWN0dXJlKQorICAgICAgICAgICAg
ZGlzcGF0Y2hQZW5kaW5nRGVjcnlwdGlvblN0cnVjdHVyZSgpOwogI2VuZGlmCiAgICAgICAgIGdz
dF9lbGVtZW50X3NldF9zdGF0ZShtX3BpcGVsaW5lLmdldCgpLCBHU1RfU1RBVEVfUEFVU0VEKTsK
KyAgICAgICAgZ3N0X2VsZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudChtX2FwcHNpbmsuZ2V0
KCkpOworCisgICAgICAgIEdTVF9ERUJVR19CSU5fVE9fRE9UX0ZJTEVfV0lUSF9UUyhHU1RfQklO
KG1fcGlwZWxpbmUuZ2V0KCkpLCBHU1RfREVCVUdfR1JBUEhfU0hPV19BTEwsICJ3ZWJraXQtYWZ0
ZXItbGluayIpOwogICAgIH0KIH0KIApAQCAtMTA4OSwzMSArMTEzOCwyNyBAQCB2b2lkIEFwcGVu
ZFBpcGVsaW5lOjpjb25uZWN0RGVtdXhlclNyY1BhZFRvQXBwc2luayhHc3RQYWQqIGRlbXV4ZXJT
cmNQYWQpCiAgICAgbV9wYWRBZGRSZW1vdmVDb25kaXRpb24ubm90aWZ5T25lKCk7CiB9CiAKLXZv
aWQgQXBwZW5kUGlwZWxpbmU6OmRpc2Nvbm5lY3REZW11eGVyU3JjUGFkRnJvbUFwcHNpbmtGcm9t
QW55VGhyZWFkKEdzdFBhZCogZGVtdXhlclNyY1BhZCkKK3ZvaWQgQXBwZW5kUGlwZWxpbmU6OmRp
c2Nvbm5lY3REZW11eGVyU3JjUGFkRnJvbUFwcHNpbmtGcm9tQW55VGhyZWFkKEdzdFBhZCopCiB7
Ci0gICAgLy8gTXVzdCBiZSBkb25lIGluIHRoZSB0aHJlYWQgd2Ugd2VyZSBjYWxsZWQgZnJvbSAo
dXN1YWxseSBzdHJlYW1pbmcgdGhyZWFkKS4KLSAgICBpZiAoIWdzdF9wYWRfaXNfbGlua2VkKGRl
bXV4ZXJTcmNQYWQpKSB7Ci0gICAgICAgIGd1bG9uZyBwcm9iZUlkID0gR1BPSU5URVJfVE9fVUxP
TkcoZ19vYmplY3RfZ2V0X2RhdGEoR19PQkpFQ1QoZGVtdXhlclNyY1BhZCksICJibGFja0hvbGVQ
cm9iZUlkIikpOwotICAgICAgICBpZiAocHJvYmVJZCkgewotICAgICAgICAgICAgR1NUX0RFQlVH
KCJEaXNjb25uZWN0aW5nIGJsYWNrIGhvbGUgcHJvYmUuIik7Ci0gICAgICAgICAgICBnX29iamVj
dF9zZXRfZGF0YShHX09CSkVDVChkZW11eGVyU3JjUGFkKSwgImJsYWNrSG9sZVByb2JlSWQiLCBu
dWxscHRyKTsKLSAgICAgICAgICAgIGdzdF9wYWRfcmVtb3ZlX3Byb2JlKGRlbXV4ZXJTcmNQYWQs
IHByb2JlSWQpOwotICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIEdTVF9XQVJOSU5HKCJOb3Qg
ZGlzY29ubmVjdGluZyBkZW11eGVyIHNyYyBwYWQgYmVjYXVzZSBpdCB3YXNuJ3QgbGlua2VkIik7
Ci0gICAgICAgIHJldHVybjsKLSAgICB9CisgICAgR1NUX0RFQlVHX0JJTl9UT19ET1RfRklMRV9X
SVRIX1RTKEdTVF9CSU4obV9waXBlbGluZS5nZXQoKSksIEdTVF9ERUJVR19HUkFQSF9TSE9XX0FM
TCwgInBhZC1yZW1vdmVkLWJlZm9yZSIpOwogCiAgICAgR1NUX0RFQlVHKCJEaXNjb25uZWN0aW5n
IGFwcHNpbmsiKTsKIAogI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCi0gICAgaWYgKG1fZGVj
cnlwdG9yKSB7Ci0gICAgICAgIGdzdF9lbGVtZW50X3VubGluayhtX2RlY3J5cHRvci5nZXQoKSwg
bV9hcHBzaW5rLmdldCgpKTsKLSAgICAgICAgZ3N0X2VsZW1lbnRfdW5saW5rKG1fZGVtdXguZ2V0
KCksIG1fZGVjcnlwdG9yLmdldCgpKTsKKyAgICBpZiAobV9kZWNyeXRvcikgewogICAgICAgICBn
c3RfZWxlbWVudF9zZXRfc3RhdGUobV9kZWNyeXB0b3IuZ2V0KCksIEdTVF9TVEFURV9OVUxMKTsK
ICAgICAgICAgZ3N0X2Jpbl9yZW1vdmUoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9kZWNy
eXB0b3IuZ2V0KCkpOwotICAgIH0gZWxzZQorICAgICAgICBtX2RlY3J5cHRvciA9IG51bGxwdHI7
CisgICAgfQogI2VuZGlmCi0gICAgICAgIGdzdF9lbGVtZW50X3VubGluayhtX2RlbXV4LmdldCgp
LCBtX2FwcHNpbmsuZ2V0KCkpOworCisgICAgaWYgKG1fcGFyc2VyKSB7CisgICAgICAgIGdzdF9l
bGVtZW50X3NldF9zdGF0ZShtX3BhcnNlci5nZXQoKSwgR1NUX1NUQVRFX05VTEwpOworICAgICAg
ICBnc3RfYmluX3JlbW92ZShHU1RfQklOKG1fcGlwZWxpbmUuZ2V0KCkpLCBtX3BhcnNlci5nZXQo
KSk7CisgICAgICAgIG1fcGFyc2VyID0gbnVsbHB0cjsKKyAgICB9CisKKyAgICBHU1RfREVCVUdf
QklOX1RPX0RPVF9GSUxFX1dJVEhfVFMoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgR1NUX0RF
QlVHX0dSQVBIX1NIT1dfQUxMLCAicGFkLXJlbW92ZWQtYWZ0ZXIiKTsKIH0KIAogI2lmIEVOQUJM
RShFTkNSWVBURURfTUVESUEpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvbXNlL0FwcGVuZFBpcGVsaW5lLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL0FwcGVuZFBpcGVsaW5lLmgKaW5kZXggMjVj
YjNiZWQ1NDE2MzMwOTViMWNmZTYzMDJiZTE0YjQxNTI0NTI0Mi4uM2ZiNTA5YjIzNDY5YzIzZTUz
YTk5YjA0YjRlYzg1ODk5NTI3NmVjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9BcHBlbmRQaXBlbGluZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuaApA
QCAtMTE4LDYgKzExOCw3IEBAIHByaXZhdGU6CiAgICAgR1JlZlB0cjxHc3RCdXM+IG1fYnVzOwog
ICAgIEdSZWZQdHI8R3N0RWxlbWVudD4gbV9hcHBzcmM7CiAgICAgR1JlZlB0cjxHc3RFbGVtZW50
PiBtX2RlbXV4OworICAgIEdSZWZQdHI8R3N0RWxlbWVudD4gbV9wYXJzZXI7IC8vIG9wdGlvbmFs
CiAjaWYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKICAgICBHUmVmUHRyPEdzdEVsZW1lbnQ+IG1f
ZGVjcnlwdG9yOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvR1N0cmVhbWVyTWVkaWFTYW1w
bGUuY3BwCmluZGV4IDIyOWRlZmFhZDMwOGQ0ODUzYTEwMTM0ZTRlYTc5N2YzYjIyYzEyN2EuLjI5
NTEwMDM0YTY4MDA5ODdlYjM0OTg2NWVjZjZiZGMzZmZkZDRmNjUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvR1N0cmVhbWVyTWVkaWFT
YW1wbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1l
ci9tc2UvR1N0cmVhbWVyTWVkaWFTYW1wbGUuY3BwCkBAIC01Miw4ICs1Miw4IEBAIEdTdHJlYW1l
ck1lZGlhU2FtcGxlOjpHU3RyZWFtZXJNZWRpYVNhbXBsZShHc3RTYW1wbGUqIHNhbXBsZSwgY29u
c3QgRmxvYXRTaXplJiBwCiAKICAgICBpZiAoR1NUX0JVRkZFUl9QVFNfSVNfVkFMSUQoYnVmZmVy
KSkKICAgICAgICAgbV9wdHMgPSBjcmVhdGVNZWRpYVRpbWUoR1NUX0JVRkZFUl9QVFMoYnVmZmVy
KSk7Ci0gICAgaWYgKEdTVF9CVUZGRVJfRFRTX0lTX1ZBTElEKGJ1ZmZlcikpCi0gICAgICAgIG1f
ZHRzID0gY3JlYXRlTWVkaWFUaW1lKEdTVF9CVUZGRVJfRFRTKGJ1ZmZlcikpOworICAgIGlmIChH
U1RfQlVGRkVSX0RUU19JU19WQUxJRChidWZmZXIpIHx8IEdTVF9CVUZGRVJfUFRTX0lTX1ZBTElE
KGJ1ZmZlcikpCisgICAgICAgIG1fZHRzID0gY3JlYXRlTWVkaWFUaW1lKEdTVF9CVUZGRVJfRFRT
X09SX1BUUyhidWZmZXIpKTsKICAgICBpZiAoR1NUX0JVRkZFUl9EVVJBVElPTl9JU19WQUxJRChi
dWZmZXIpKQogICAgICAgICBtX2R1cmF0aW9uID0gY3JlYXRlTWVkaWFUaW1lKEdTVF9CVUZGRVJf
RFVSQVRJT04oYnVmZmVyKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvUGxheWJhY2tQaXBlbGluZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL1BsYXliYWNrUGlwZWxpbmUuY3Bw
CmluZGV4IGJkMzRlNDU3MDdhZmJkYjIwNDAwNDM3YjE3ODBkMmQ4MTM1NGM4YTQuLjdlNjA2OTQ5
MjJlYTQzMjZmYzllY2NiNmViNTc4ZDNmMTNhMGI5ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvUGxheWJhY2tQaXBlbGluZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9QbGF5
YmFja1BpcGVsaW5lLmNwcApAQCAtMjM1LDcgKzIzNSwxMCBAQCB2b2lkIFBsYXliYWNrUGlwZWxp
bmU6OmF0dGFjaFRyYWNrKFJlZlB0cjxTb3VyY2VCdWZmZXJQcml2YXRlR1N0cmVhbWVyPiBzb3Vy
Y2VCdQogCiAgICAgICAgIHBhZCA9IGFkb3B0R1JlZihnc3RfZWxlbWVudF9nZXRfc3RhdGljX3Bh
ZChwYXJzZXIsICJzcmMiKSk7CiAgICAgICAgIGdzdF9lbGVtZW50X2FkZF9wYWQoc3RyZWFtLT5w
YXJzZXIsIGdzdF9naG9zdF9wYWRfbmV3KCJzcmMiLCBwYWQuZ2V0KCkpKTsKLSAgICB9IGVsc2Ug
aWYgKCFnX3N0cmNtcDAobWVkaWFUeXBlLCAidmlkZW8veC12cDkiKSkKKyAgICB9IGVsc2UgaWYg
KCFnX3N0cmNtcDAobWVkaWFUeXBlLCAidmlkZW8veC12cDgiKQorICAgICAgICB8fCAhZ19zdHJj
bXAwKG1lZGlhVHlwZSwgInZpZGVvL3gtdnA5IikKKyAgICAgICAgfHwgIWdfc3RyY21wMChtZWRp
YVR5cGUsICJhdWRpby94LW9wdXMiKQorICAgICAgICB8fCAhZ19zdHJjbXAwKG1lZGlhVHlwZSwg
ImF1ZGlvL3gtdm9yYmlzIikpCiAgICAgICAgIHN0cmVhbS0+cGFyc2VyID0gbnVsbHB0cjsKICAg
ICBlbHNlIHsKICAgICAgICAgR1NUX0VSUk9SX09CSkVDVChzdHJlYW0tPnBhcmVudCwgIlVuc3Vw
cG9ydGVkIG1lZGlhIGZvcm1hdDogJXMiLCBtZWRpYVR5cGUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU3YmUzMzQ3NTU4
MTQ5ZmViZGY5YjI1ZTUyNjhhYjhlMzZmM2QzMzIuLjcyNjQxYWVkYjkzMDI4NGZhY2E1ZDc2ODFl
MTc0YjlhYmFhM2I0YjUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxNy0xMC0xMSAgQWxpY2lh
IEJveWEgR2FyY8OtYSAgPGFib3lhQGlnYWxpYS5jb20+CisKKyAgICAgICAgW01TRV1bR1N0cmVh
bWVyXSBJbnNlcnQgcGFyc2VyIGVsZW1lbnRzIGluIEFwcGVuZFBpcGVsaW5lIHdoZW4gZGVtdXhp
bmcgb3B1cyBvciBWb3JiaXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE3ODA3NgorCisgICAgICAgIFlvdVR1YmUgZG9lcyBub3QgaW5jbHVkZSBkdXJh
dGlvbnMgaW4gdGhlIHdlYm0gY29udGFpbmVyIGZvciBmaWxlcworICAgICAgICBjb250YWluaW5n
IE9wdXMgYXVkaW8sIHNvIHdlIG5lZWQgdG8gcmVhZCB0aGVtIGZyb20gdGhlIGNvbnRhaW5lZAor
ICAgICAgICBzdHJlYW0uIEZvcnR1bmF0ZWx5LCBHU3RyZWFtZXIgaGFzIGFuIGVsZW1lbnQgdG8g
ZG8gdGhhdDogb3B1c3BhcnNlLgorCisgICAgICAgIFRoZSBzYW1lIHRoaW5nIGhhcHBlbnMgd2l0
aCBWb3JiaXMgY29udGFpbmVkIGluIHdlYm0gZmlsZXMgZnJvbSB0aGUKKyAgICAgICAgVzNDIHRl
c3RzLCB3aGljaCBzaG91bGQgYWxzbyBiZSBmaXhlZCBieSB0aGUgR1N0cmVhbWVyIGVsZW1lbnQK
KyAgICAgICAgdm9yYmlzcGFyc2UuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGFuIG9wdXNw
YXJzZSBvciB2b3JiaXNwYXJzZSBlbGVtZW50IHRvIHRoZQorICAgICAgICBBcHBlbmRQaXBlbGlu
ZSBhdCB0aGUgc2lua3BhZCBvZiB0aGUgZGVtdXhlciB3aGVuIGVpdGhlciBpcyBmb3VuZC4KKwor
ICAgICAgICBUZXN0czogdXBkYXRlZCBleHBlY3RhdGlvbnMuCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9ndGsvVGVzdEV4cGVjdGF0aW9uczoKKwogMjAxNy0xMC0xMyAgV2Vuc29uIEhzaWVoICA8d2Vu
c29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICAidGV4dC9odG1sIiBkYXRhIGlzIG5vdCBl
eHBvc2VkIHdoZW4gZHJhZ2dpbmcgYW5kIGRyb3BwaW5nIGFjcm9zcyBvcmlnaW5zCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDJmNjRhNzQ3Y2JiMjhhN2Yw
ZjMxNGQ2ZTRiMmZjOTAxYzZlNjc0YTYuLmZiZWM5MDRiZWMzYmNiNDBjNzIzZmQxMGNlNDQxZWM1
MzVhZTAyZTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0
YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCkBA
IC0yMTUsMTAgKzIxNSw2IEBAIHdlYmtpdC5vcmcvYi82MTY2MSBlZGl0aW5nL3Bhc3RlYm9hcmQv
ZHJhZy1kcm9wLWxpc3QuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzkyNzQ5IGZhc3Qv
ZG9tL05hdmlnYXRvckNvbnRlbnRVdGlscy9pcy1wcm90b2NvbC1oYW5kbGVyLXJlZ2lzdGVyZWQu
aHRtbCBbIFNraXAgXQogCiAjIE1TRSBmYWlsdXJlcwotd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9Tb3VyY2VCdWZmZXItYWJv
cnQtcmVhZHlTdGF0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTY3MTA4IGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL1NvdXJjZUJ1ZmZlci1hYm9y
dC1yZW1vdmVkLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvU291cmNlQnVmZmVyLWFib3J0LXVw
ZGF0aW5nLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvU291cmNlQnVmZmVyLWFib3J0Lmh0bWwg
WyBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9tZWRpYS1zb3VyY2UvVVJMLWNyZWF0ZU9iamVjdFVSTC1yZXZva2UuaHRtbCBbIEZh
aWx1cmUgXQogIyBTZWUgYWxzbyBidWcgIzE3NTU3OAogd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1hY3Rp
dmVzb3VyY2VidWZmZXJzLmh0bWwgWyBDcmFzaCBGYWlsdXJlIF0KQEAgLTIyOCwxMiArMjI0LDkg
QEAgd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21l
ZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1hcHAKIHdlYmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtYXZ0cmFja3Mu
aHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1idWZmZXJlZC5odG1sIFsgRmFp
bHVyZSBdCiB3ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Utd2VibS1hLWJpdHJhdGUu
aHRtbCBbIEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdlYm0t
YXYtYXVkaW8tYml0cmF0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTY3MTA4IGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNv
bmZpZy1jaGFuZ2Utd2VibS1hdi1mcmFtZXNpemUuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0Lm9y
Zy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9t
ZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdlYm0tYXYtdmlkZW8tYml0cmF0ZS5odG1sIFsgRmFp
bHVyZSBdCi13ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Utd2VibS12LWJpdHJhdGUu
aHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdlYm0t
di1mcmFtZXJhdGUuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWct
Y2hhbmdlLXdlYm0tdi1mcmFtZXNpemUuaHRtbCBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzE2
NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNv
dXJjZS1jb25maWctY2hhbmdlLXdlYm0tdi1mcmFtZXNpemUuaHRtbCBbIEZhaWx1cmUgUGFzcyBd
CiAjIENyYXNoIGlzIHdlYmtpdC5vcmcvYi8xNzYwMjAKIHdlYmtpdC5vcmcvYi8xNjcxMDggaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtZHVy
YXRpb24uaHRtbCBbIEZhaWx1cmUgQ3Jhc2ggXQogIyBDcmFzaCBpbiBidWcgIzE3NjAxOQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>323899</attachid>
            <date>2017-10-16 09:12:43 -0700</date>
            <delta_ts>2017-10-16 09:26:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178076-20171016181241.patch</filename>
            <type>text/plain</type>
            <size>15733</size>
            <attacher name="Alicia Boya García">aboya</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIzMzQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTFjMjdlNTg3YWFkZDRm
YzY0MGU3M2Q3OTc2YjZlN2JlODE0NGU3OS4uOTQyM2U1MjJkNDg2ZmJjYTQ5N2RjZDNkMGQ1MmNl
NWMwMTBlMjNiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE3LTEwLTExICBBbGlj
aWEgQm95YSBHYXJjw61hICA8YWJveWFAaWdhbGlhLmNvbT4KKworICAgICAgICBbTVNFXVtHU3Ry
ZWFtZXJdIEluc2VydCBwYXJzZXIgZWxlbWVudHMgaW4gQXBwZW5kUGlwZWxpbmUgd2hlbiBkZW11
eGluZyBvcHVzIG9yIFZvcmJpcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTc4MDc2CisKKyAgICAgICAgWW91VHViZSBkb2VzIG5vdCBpbmNsdWRlIGR1
cmF0aW9ucyBpbiB0aGUgV2ViTSBjb250YWluZXIgZm9yIGZpbGVzCisgICAgICAgIGNvbnRhaW5p
bmcgT3B1cyBhdWRpbywgc28gd2UgbmVlZCB0byByZWFkIHRoZW0gZnJvbSB0aGUgY29udGFpbmVk
CisgICAgICAgIHN0cmVhbS4gRm9ydHVuYXRlbHksIEdTdHJlYW1lciBoYXMgYW4gZWxlbWVudCB0
byBkbyB0aGF0OiBvcHVzcGFyc2UuCisKKyAgICAgICAgVGhlIHNhbWUgdGhpbmcgaGFwcGVucyB3
aXRoIFZvcmJpcyBjb250YWluZWQgaW4gV2ViTSBmaWxlcyBmcm9tIHRoZQorICAgICAgICBXM0Mg
dGVzdHMsIHdoaWNoIHNob3VsZCBhbHNvIGJlIGZpeGVkIGJ5IHRoZSBHU3RyZWFtZXIgZWxlbWVu
dAorICAgICAgICB2b3JiaXNwYXJzZS4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYW4gb3B1
c3BhcnNlIG9yIHZvcmJpc3BhcnNlIGVsZW1lbnQgdG8gdGhlCisgICAgICAgIEFwcGVuZFBpcGVs
aW5lIGF0IHRoZSBzaW5rcGFkIG9mIHRoZSBkZW11eGVyIHdoZW4gZWl0aGVyIGlzIGZvdW5kLgor
CisgICAgICAgIFRlc3RzOiB1cGRhdGVkIGV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6QXBwZW5kUGlwZWxpbmU6OmFwcHNpbmtOZXdTYW1wbGUpOgorICAgICAgICAoV2Vi
Q29yZTo6Y3JlYXRlT3B0aW9uYWxQYXJzZXJGb3JGb3JtYXQpOgorICAgICAgICAoV2ViQ29yZTo6
QXBwZW5kUGlwZWxpbmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rRnJvbUFueVRocmVh
ZCk6CisgICAgICAgIChXZWJDb3JlOjpBcHBlbmRQaXBlbGluZTo6ZGlzY29ubmVjdERlbXV4ZXJT
cmNQYWRGcm9tQXBwc2lua0Zyb21BbnlUaHJlYWQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkdTdHJlYW1lck1lZGlhU2FtcGxlOjpHU3RyZWFtZXJNZWRpYVNhbXBsZSk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9QbGF5YmFja1BpcGVsaW5l
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXliYWNrUGlwZWxpbmU6OmF0dGFjaFRyYWNrKToK
KwogMjAxNy0xMC0wOSAgQWxpY2lhIEJveWEgR2FyY8OtYSAgPGFib3lhQGlnYWxpYS5jb20+CiAK
ICAgICAgICAgW01TRV1bR1N0cmVhbWVyXSBBZGQgZHVtcCBvZiBhcHBlbmQgcGlwZWxpbmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2Uv
QXBwZW5kUGlwZWxpbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKaW5kZXggM2VhZDdkNGIxZDhiZjU1MzI3OTEw
OGNmNTU4NmY5NTI5ZjQ1OWRlMS4uZTk2Y2RjODc2M2VlNjk2NzM3YWM5M2I0ZDk2NzAwMDMyZGM0
MTZmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVh
bWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKQEAgLTcyOCw3ICs3Mjgs
MTIgQEAgdm9pZCBBcHBlbmRQaXBlbGluZTo6YXBwc2lua05ld1NhbXBsZShHc3RTYW1wbGUqIHNh
bXBsZSkKIAogICAgICAgICBSZWZQdHI8R1N0cmVhbWVyTWVkaWFTYW1wbGU+IG1lZGlhU2FtcGxl
ID0gV2ViQ29yZTo6R1N0cmVhbWVyTWVkaWFTYW1wbGU6OmNyZWF0ZShzYW1wbGUsIG1fcHJlc2Vu
dGF0aW9uU2l6ZSwgdHJhY2tJZCgpKTsKIAotICAgICAgICBHU1RfVFJBQ0UoImFwcGVuZDogdHJh
Y2tJZD0lcyBQVFM9JWYgcHJlc2VudGF0aW9uU2l6ZT0lLjBmeCUuMGYiLCBtZWRpYVNhbXBsZS0+
dHJhY2tJRCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCksIG1lZGlhU2FtcGxlLT5wcmVzZW50YXRp
b25UaW1lKCkudG9GbG9hdCgpLCBtZWRpYVNhbXBsZS0+cHJlc2VudGF0aW9uU2l6ZSgpLndpZHRo
KCksIG1lZGlhU2FtcGxlLT5wcmVzZW50YXRpb25TaXplKCkuaGVpZ2h0KCkpOworICAgICAgICBH
U1RfVFJBQ0UoImFwcGVuZDogdHJhY2tJZD0lcyBQVFM9JXMgRFRTPSVzIERVUj0lcyBwcmVzZW50
YXRpb25TaXplPSUuMGZ4JS4wZiIsCisgICAgICAgICAgICBtZWRpYVNhbXBsZS0+dHJhY2tJRCgp
LnN0cmluZygpLnV0ZjgoKS5kYXRhKCksCisgICAgICAgICAgICBtZWRpYVNhbXBsZS0+cHJlc2Vu
dGF0aW9uVGltZSgpLnRvU3RyaW5nKCkudXRmOCgpLmRhdGEoKSwKKyAgICAgICAgICAgIG1lZGlh
U2FtcGxlLT5kZWNvZGVUaW1lKCkudG9TdHJpbmcoKS51dGY4KCkuZGF0YSgpLAorICAgICAgICAg
ICAgbWVkaWFTYW1wbGUtPmR1cmF0aW9uKCkudG9TdHJpbmcoKS51dGY4KCkuZGF0YSgpLAorICAg
ICAgICAgICAgbWVkaWFTYW1wbGUtPnByZXNlbnRhdGlvblNpemUoKS53aWR0aCgpLCBtZWRpYVNh
bXBsZS0+cHJlc2VudGF0aW9uU2l6ZSgpLmhlaWdodCgpKTsKIAogICAgICAgICAvLyBJZiB3ZSdy
ZSBiZXlvbmQgdGhlIGR1cmF0aW9uLCBpZ25vcmUgdGhpcyBzYW1wbGUgYW5kIHRoZSByZW1haW5p
bmcgb25lcy4KICAgICAgICAgTWVkaWFUaW1lIGR1cmF0aW9uID0gbV9tZWRpYVNvdXJjZUNsaWVu
dC0+ZHVyYXRpb24oKTsKQEAgLTk0NCw2ICs5NDksMzAgQEAgR3N0Rmxvd1JldHVybiBBcHBlbmRQ
aXBlbGluZTo6aGFuZGxlTmV3QXBwc2lua1NhbXBsZShHc3RFbGVtZW50KiBhcHBzaW5rKQogICAg
IHJldHVybiBtX2Zsb3dSZXR1cm47CiB9CiAKK3N0YXRpYyBHUmVmUHRyPEdzdEVsZW1lbnQ+Citj
cmVhdGVPcHRpb25hbFBhcnNlckZvckZvcm1hdChHc3RQYWQqIGRlbXV4ZXJTcmNQYWQpCit7Cisg
ICAgR1JlZlB0cjxHc3RDYXBzPiBwYWRDYXBzID0gYWRvcHRHUmVmKGdzdF9wYWRfZ2V0X2N1cnJl
bnRfY2FwcyhkZW11eGVyU3JjUGFkKSk7CisgICAgR3N0U3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBn
c3RfY2Fwc19nZXRfc3RydWN0dXJlKHBhZENhcHMuZ2V0KCksIDApOworICAgIGNvbnN0IGNoYXIq
IG1lZGlhVHlwZSA9IGdzdF9zdHJ1Y3R1cmVfZ2V0X25hbWUoc3RydWN0dXJlKTsKKworICAgIEdV
bmlxdWVQdHI8Y2hhcj4gZGVtdXhlclBhZE5hbWUoZ3N0X3BhZF9nZXRfbmFtZShkZW11eGVyU3Jj
UGFkKSk7CisgICAgR1VuaXF1ZVB0cjxjaGFyPiBwYXJzZXJOYW1lKGdfc3RyZHVwX3ByaW50Zigi
JXNfcGFyc2VyIiwgZGVtdXhlclBhZE5hbWUuZ2V0KCkpKTsKKworICAgIGlmICghZ19zdHJjbXAw
KG1lZGlhVHlwZSwgImF1ZGlvL3gtb3B1cyIpKSB7CisgICAgICAgIEdzdEVsZW1lbnQqIG9wdXNw
YXJzZSA9IGdzdF9lbGVtZW50X2ZhY3RvcnlfbWFrZSgib3B1c3BhcnNlIiwgcGFyc2VyTmFtZS5n
ZXQoKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKG9wdXNwYXJzZSk7CisgICAgICAgIHJldHVy
biBHUmVmUHRyPEdzdEVsZW1lbnQ+KG9wdXNwYXJzZSk7CisgICAgfQorICAgIGlmICghZ19zdHJj
bXAwKG1lZGlhVHlwZSwgImF1ZGlvL3gtdm9yYmlzIikpIHsKKyAgICAgICAgR3N0RWxlbWVudCog
dm9yYmlzcGFyc2UgPSBnc3RfZWxlbWVudF9mYWN0b3J5X21ha2UoInZvcmJpc3BhcnNlIiwgcGFy
c2VyTmFtZS5nZXQoKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKHZvcmJpc3BhcnNlKTsKKyAg
ICAgICAgcmV0dXJuIEdSZWZQdHI8R3N0RWxlbWVudD4odm9yYmlzcGFyc2UpOworICAgIH0KKwor
ICAgIHJldHVybiBudWxscHRyOworfQorCiB2b2lkIEFwcGVuZFBpcGVsaW5lOjpjb25uZWN0RGVt
dXhlclNyY1BhZFRvQXBwc2lua0Zyb21BbnlUaHJlYWQoR3N0UGFkKiBkZW11eGVyU3JjUGFkKQog
ewogICAgIGlmICghbV9hcHBzaW5rKQpAQCAtOTk3LDMwICsxMDI2LDUwIEBAIHZvaWQgQXBwZW5k
UGlwZWxpbmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rRnJvbUFueVRocmVhZChHc3RQ
YWQqIGRlbXV4ZXJTCiAgICAgICAgIGlmICghcGFyZW50KQogICAgICAgICAgICAgZ3N0X2Jpbl9h
ZGQoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9hcHBzaW5rLmdldCgpKTsKIAorICAgICAg
ICAvLyBDdXJyZW50IGhlYWQgb2YgdGhlIHBpcGVsaW5lIGJlaW5nIGJ1aWx0LgorICAgICAgICBH
UmVmUHRyPEdzdFBhZD4gY3VycmVudFNyY1BhZCA9IGRlbXV4ZXJTcmNQYWQ7CisKKyAgICAgICAg
Ly8gU29tZSBhdWRpbyBmaWxlcyB1bmhlbHBmdWxseSBvbWl0IHRoZSBkdXJhdGlvbiBvZiBmcmFt
ZXMgaW4gdGhlIGNvbnRhaW5lci4gV2UgbmVlZCB0byBwYXJzZQorICAgICAgICAvLyB0aGUgY29u
dGFpbmVkIGF1ZGlvIHN0cmVhbXMgaW4gb3JkZXIgdG8ga25vdyB0aGUgZHVyYXRpb24gb2YgdGhl
IGZyYW1lcy4KKyAgICAgICAgLy8gVGhpcyBpcyBrbm93biB0byBiZSBhbiBpc3N1ZSB3aXRoIFlv
dVR1YmUgV2ViTSBmaWxlcyBjb250YWluaW5nIE9wdXMgYXVkaW8gYXMgb2YgWVRUVjIwMTguCisg
ICAgICAgIG1fcGFyc2VyID0gY3JlYXRlT3B0aW9uYWxQYXJzZXJGb3JGb3JtYXQoY3VycmVudFNy
Y1BhZC5nZXQoKSk7CisgICAgICAgIGlmIChtX3BhcnNlcikgeworICAgICAgICAgICAgZ3N0X2Jp
bl9hZGQoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9wYXJzZXIuZ2V0KCkpOworICAgICAg
ICAgICAgZ3N0X2VsZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudChtX3BhcnNlci5nZXQoKSk7
CisKKyAgICAgICAgICAgIEdSZWZQdHI8R3N0UGFkPiBwYXJzZXJTaW5rUGFkID0gYWRvcHRHUmVm
KGdzdF9lbGVtZW50X2dldF9zdGF0aWNfcGFkKG1fcGFyc2VyLmdldCgpLCAic2luayIpKTsKKyAg
ICAgICAgICAgIEdSZWZQdHI8R3N0UGFkPiBwYXJzZXJTcmNQYWQgPSBhZG9wdEdSZWYoZ3N0X2Vs
ZW1lbnRfZ2V0X3N0YXRpY19wYWQobV9wYXJzZXIuZ2V0KCksICJzcmMiKSk7CisKKyAgICAgICAg
ICAgIGdzdF9wYWRfbGluayhjdXJyZW50U3JjUGFkLmdldCgpLCBwYXJzZXJTaW5rUGFkLmdldCgp
KTsKKyAgICAgICAgICAgIGN1cnJlbnRTcmNQYWQgPSBwYXJzZXJTcmNQYWQ7CisgICAgICAgIH0K
KwogI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCiAgICAgICAgIGlmIChtX2RlY3J5cHRvcikg
ewogICAgICAgICAgICAgZ3N0X29iamVjdF9yZWYobV9kZWNyeXB0b3IuZ2V0KCkpOwogICAgICAg
ICAgICAgZ3N0X2Jpbl9hZGQoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9kZWNyeXB0b3Iu
Z2V0KCkpOworICAgICAgICAgICAgZ3N0X2VsZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudCht
X2RlY3J5cHRvci5nZXQoKSk7CiAKICAgICAgICAgICAgIEdSZWZQdHI8R3N0UGFkPiBkZWNyeXB0
b3JTaW5rUGFkID0gYWRvcHRHUmVmKGdzdF9lbGVtZW50X2dldF9zdGF0aWNfcGFkKG1fZGVjcnlw
dG9yLmdldCgpLCAic2luayIpKTsKLSAgICAgICAgICAgIGdzdF9wYWRfbGluayhkZW11eGVyU3Jj
UGFkLCBkZWNyeXB0b3JTaW5rUGFkLmdldCgpKTsKLQogICAgICAgICAgICAgR1JlZlB0cjxHc3RQ
YWQ+IGRlY3J5cHRvclNyY1BhZCA9IGFkb3B0R1JlZihnc3RfZWxlbWVudF9nZXRfc3RhdGljX3Bh
ZChtX2RlY3J5cHRvci5nZXQoKSwgInNyYyIpKTsKLSAgICAgICAgICAgIGdzdF9wYWRfbGluayhk
ZWNyeXB0b3JTcmNQYWQuZ2V0KCksIGFwcHNpbmtTaW5rUGFkLmdldCgpKTsKLQotICAgICAgICAg
ICAgZ3N0X2VsZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudChtX2FwcHNpbmsuZ2V0KCkpOwot
ICAgICAgICAgICAgZ3N0X2VsZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudChtX2RlY3J5cHRv
ci5nZXQoKSk7CiAKLSAgICAgICAgICAgIGlmIChtX3BlbmRpbmdEZWNyeXB0aW9uU3RydWN0dXJl
KQotICAgICAgICAgICAgICAgIGRpc3BhdGNoUGVuZGluZ0RlY3J5cHRpb25TdHJ1Y3R1cmUoKTsK
LSAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGdzdF9wYWRfbGluayhjdXJyZW50U3JjUGFk
LmdldCgpLCBkZWNyeXB0b3JTaW5rUGFkLmdldCgpKTsKKyAgICAgICAgICAgIGN1cnJlbnRTcmNQ
YWQgPSBkZWNyeXB0b3JTcmNQYWQ7CisgICAgICAgIH0KICNlbmRpZgotICAgICAgICAgICAgZ3N0
X3BhZF9saW5rKGRlbXV4ZXJTcmNQYWQsIGFwcHNpbmtTaW5rUGFkLmdldCgpKTsKLSAgICAgICAg
ICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQobV9hcHBzaW5rLmdldCgpKTsK
KworICAgICAgICBnc3RfcGFkX2xpbmsoY3VycmVudFNyY1BhZC5nZXQoKSwgYXBwc2lua1NpbmtQ
YWQuZ2V0KCkpOworCisgICAgICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQo
bV9hcHBzaW5rLmdldCgpKTsKKwogI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCi0gICAgICAg
IH0KKyAgICAgICAgaWYgKG1fcGVuZGluZ0RlY3J5cHRpb25TdHJ1Y3R1cmUpCisgICAgICAgICAg
ICBkaXNwYXRjaFBlbmRpbmdEZWNyeXB0aW9uU3RydWN0dXJlKCk7CiAjZW5kaWYKICAgICAgICAg
Z3N0X2VsZW1lbnRfc2V0X3N0YXRlKG1fcGlwZWxpbmUuZ2V0KCksIEdTVF9TVEFURV9QQVVTRUQp
OworICAgICAgICBnc3RfZWxlbWVudF9zeW5jX3N0YXRlX3dpdGhfcGFyZW50KG1fYXBwc2luay5n
ZXQoKSk7CisKKyAgICAgICAgR1NUX0RFQlVHX0JJTl9UT19ET1RfRklMRV9XSVRIX1RTKEdTVF9C
SU4obV9waXBlbGluZS5nZXQoKSksIEdTVF9ERUJVR19HUkFQSF9TSE9XX0FMTCwgIndlYmtpdC1h
ZnRlci1saW5rIik7CiAgICAgfQogfQogCkBAIC0xMDg5LDMxICsxMTM4LDI3IEBAIHZvaWQgQXBw
ZW5kUGlwZWxpbmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rKEdzdFBhZCogZGVtdXhl
clNyY1BhZCkKICAgICBtX3BhZEFkZFJlbW92ZUNvbmRpdGlvbi5ub3RpZnlPbmUoKTsKIH0KIAot
dm9pZCBBcHBlbmRQaXBlbGluZTo6ZGlzY29ubmVjdERlbXV4ZXJTcmNQYWRGcm9tQXBwc2lua0Zy
b21BbnlUaHJlYWQoR3N0UGFkKiBkZW11eGVyU3JjUGFkKQordm9pZCBBcHBlbmRQaXBlbGluZTo6
ZGlzY29ubmVjdERlbXV4ZXJTcmNQYWRGcm9tQXBwc2lua0Zyb21BbnlUaHJlYWQoR3N0UGFkKikK
IHsKLSAgICAvLyBNdXN0IGJlIGRvbmUgaW4gdGhlIHRocmVhZCB3ZSB3ZXJlIGNhbGxlZCBmcm9t
ICh1c3VhbGx5IHN0cmVhbWluZyB0aHJlYWQpLgotICAgIGlmICghZ3N0X3BhZF9pc19saW5rZWQo
ZGVtdXhlclNyY1BhZCkpIHsKLSAgICAgICAgZ3Vsb25nIHByb2JlSWQgPSBHUE9JTlRFUl9UT19V
TE9ORyhnX29iamVjdF9nZXRfZGF0YShHX09CSkVDVChkZW11eGVyU3JjUGFkKSwgImJsYWNrSG9s
ZVByb2JlSWQiKSk7Ci0gICAgICAgIGlmIChwcm9iZUlkKSB7Ci0gICAgICAgICAgICBHU1RfREVC
VUcoIkRpc2Nvbm5lY3RpbmcgYmxhY2sgaG9sZSBwcm9iZS4iKTsKLSAgICAgICAgICAgIGdfb2Jq
ZWN0X3NldF9kYXRhKEdfT0JKRUNUKGRlbXV4ZXJTcmNQYWQpLCAiYmxhY2tIb2xlUHJvYmVJZCIs
IG51bGxwdHIpOwotICAgICAgICAgICAgZ3N0X3BhZF9yZW1vdmVfcHJvYmUoZGVtdXhlclNyY1Bh
ZCwgcHJvYmVJZCk7Ci0gICAgICAgIH0gZWxzZQotICAgICAgICAgICAgR1NUX1dBUk5JTkcoIk5v
dCBkaXNjb25uZWN0aW5nIGRlbXV4ZXIgc3JjIHBhZCBiZWNhdXNlIGl0IHdhc24ndCBsaW5rZWQi
KTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KKyAgICBHU1RfREVCVUdfQklOX1RPX0RPVF9GSUxF
X1dJVEhfVFMoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgR1NUX0RFQlVHX0dSQVBIX1NIT1df
QUxMLCAicGFkLXJlbW92ZWQtYmVmb3JlIik7CiAKICAgICBHU1RfREVCVUcoIkRpc2Nvbm5lY3Rp
bmcgYXBwc2luayIpOwogCiAjaWYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKICAgICBpZiAobV9k
ZWNyeXB0b3IpIHsKLSAgICAgICAgZ3N0X2VsZW1lbnRfdW5saW5rKG1fZGVjcnlwdG9yLmdldCgp
LCBtX2FwcHNpbmsuZ2V0KCkpOwotICAgICAgICBnc3RfZWxlbWVudF91bmxpbmsobV9kZW11eC5n
ZXQoKSwgbV9kZWNyeXB0b3IuZ2V0KCkpOwogICAgICAgICBnc3RfZWxlbWVudF9zZXRfc3RhdGUo
bV9kZWNyeXB0b3IuZ2V0KCksIEdTVF9TVEFURV9OVUxMKTsKICAgICAgICAgZ3N0X2Jpbl9yZW1v
dmUoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9kZWNyeXB0b3IuZ2V0KCkpOwotICAgIH0g
ZWxzZQorICAgICAgICBtX2RlY3J5cHRvciA9IG51bGxwdHI7CisgICAgfQogI2VuZGlmCi0gICAg
ICAgIGdzdF9lbGVtZW50X3VubGluayhtX2RlbXV4LmdldCgpLCBtX2FwcHNpbmsuZ2V0KCkpOwor
CisgICAgaWYgKG1fcGFyc2VyKSB7CisgICAgICAgIGdzdF9lbGVtZW50X3NldF9zdGF0ZShtX3Bh
cnNlci5nZXQoKSwgR1NUX1NUQVRFX05VTEwpOworICAgICAgICBnc3RfYmluX3JlbW92ZShHU1Rf
QklOKG1fcGlwZWxpbmUuZ2V0KCkpLCBtX3BhcnNlci5nZXQoKSk7CisgICAgICAgIG1fcGFyc2Vy
ID0gbnVsbHB0cjsKKyAgICB9CisKKyAgICBHU1RfREVCVUdfQklOX1RPX0RPVF9GSUxFX1dJVEhf
VFMoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgR1NUX0RFQlVHX0dSQVBIX1NIT1dfQUxMLCAi
cGFkLXJlbW92ZWQtYWZ0ZXIiKTsKIH0KIAogI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNl
L0FwcGVuZFBpcGVsaW5lLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3Ry
ZWFtZXIvbXNlL0FwcGVuZFBpcGVsaW5lLmgKaW5kZXggMjVjYjNiZWQ1NDE2MzMwOTViMWNmZTYz
MDJiZTE0YjQxNTI0NTI0Mi4uZjI4OTM1YTA2YzgzMGY4NzcxOTRhNDEyMzAzYmEzN2ZiNDEyZTNj
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVy
L21zZS9BcHBlbmRQaXBlbGluZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuaApAQCAtMTE4LDYgKzExOCw3IEBAIHBy
aXZhdGU6CiAgICAgR1JlZlB0cjxHc3RCdXM+IG1fYnVzOwogICAgIEdSZWZQdHI8R3N0RWxlbWVu
dD4gbV9hcHBzcmM7CiAgICAgR1JlZlB0cjxHc3RFbGVtZW50PiBtX2RlbXV4OworICAgIEdSZWZQ
dHI8R3N0RWxlbWVudD4gbV9wYXJzZXI7IC8vIE9wdGlvbmFsLgogI2lmIEVOQUJMRShFTkNSWVBU
RURfTUVESUEpCiAgICAgR1JlZlB0cjxHc3RFbGVtZW50PiBtX2RlY3J5cHRvcjsKICNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21z
ZS9HU3RyZWFtZXJNZWRpYVNhbXBsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcAppbmRleCAyMjlkZWZh
YWQzMDhkNDg1M2ExMDEzNGU0ZWE3OTdmM2IyMmMxMjdhLi4yOTUxMDAzNGE2ODAwOTg3ZWIzNDk4
NjVlY2Y2YmRjM2ZmZGQ0ZjY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlh
U2FtcGxlLmNwcApAQCAtNTIsOCArNTIsOCBAQCBHU3RyZWFtZXJNZWRpYVNhbXBsZTo6R1N0cmVh
bWVyTWVkaWFTYW1wbGUoR3N0U2FtcGxlKiBzYW1wbGUsIGNvbnN0IEZsb2F0U2l6ZSYgcAogCiAg
ICAgaWYgKEdTVF9CVUZGRVJfUFRTX0lTX1ZBTElEKGJ1ZmZlcikpCiAgICAgICAgIG1fcHRzID0g
Y3JlYXRlTWVkaWFUaW1lKEdTVF9CVUZGRVJfUFRTKGJ1ZmZlcikpOwotICAgIGlmIChHU1RfQlVG
RkVSX0RUU19JU19WQUxJRChidWZmZXIpKQotICAgICAgICBtX2R0cyA9IGNyZWF0ZU1lZGlhVGlt
ZShHU1RfQlVGRkVSX0RUUyhidWZmZXIpKTsKKyAgICBpZiAoR1NUX0JVRkZFUl9EVFNfSVNfVkFM
SUQoYnVmZmVyKSB8fCBHU1RfQlVGRkVSX1BUU19JU19WQUxJRChidWZmZXIpKQorICAgICAgICBt
X2R0cyA9IGNyZWF0ZU1lZGlhVGltZShHU1RfQlVGRkVSX0RUU19PUl9QVFMoYnVmZmVyKSk7CiAg
ICAgaWYgKEdTVF9CVUZGRVJfRFVSQVRJT05fSVNfVkFMSUQoYnVmZmVyKSkKICAgICAgICAgbV9k
dXJhdGlvbiA9IGNyZWF0ZU1lZGlhVGltZShHU1RfQlVGRkVSX0RVUkFUSU9OKGJ1ZmZlcikpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
bXNlL1BsYXliYWNrUGlwZWxpbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3N0cmVhbWVyL21zZS9QbGF5YmFja1BpcGVsaW5lLmNwcAppbmRleCBiZDM0ZTQ1NzA3YWZi
ZGIyMDQwMDQzN2IxNzgwZDJkODEzNTRjOGE0Li43ZTYwNjk0OTIyZWE0MzI2ZmM5ZWNjYjZlYjU3
OGQzZjEzYTBiOWUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvbXNlL1BsYXliYWNrUGlwZWxpbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvUGxheWJhY2tQaXBlbGluZS5jcHAKQEAg
LTIzNSw3ICsyMzUsMTAgQEAgdm9pZCBQbGF5YmFja1BpcGVsaW5lOjphdHRhY2hUcmFjayhSZWZQ
dHI8U291cmNlQnVmZmVyUHJpdmF0ZUdTdHJlYW1lcj4gc291cmNlQnUKIAogICAgICAgICBwYWQg
PSBhZG9wdEdSZWYoZ3N0X2VsZW1lbnRfZ2V0X3N0YXRpY19wYWQocGFyc2VyLCAic3JjIikpOwog
ICAgICAgICBnc3RfZWxlbWVudF9hZGRfcGFkKHN0cmVhbS0+cGFyc2VyLCBnc3RfZ2hvc3RfcGFk
X25ldygic3JjIiwgcGFkLmdldCgpKSk7Ci0gICAgfSBlbHNlIGlmICghZ19zdHJjbXAwKG1lZGlh
VHlwZSwgInZpZGVvL3gtdnA5IikpCisgICAgfSBlbHNlIGlmICghZ19zdHJjbXAwKG1lZGlhVHlw
ZSwgInZpZGVvL3gtdnA4IikKKyAgICAgICAgfHwgIWdfc3RyY21wMChtZWRpYVR5cGUsICJ2aWRl
by94LXZwOSIpCisgICAgICAgIHx8ICFnX3N0cmNtcDAobWVkaWFUeXBlLCAiYXVkaW8veC1vcHVz
IikKKyAgICAgICAgfHwgIWdfc3RyY21wMChtZWRpYVR5cGUsICJhdWRpby94LXZvcmJpcyIpKQog
ICAgICAgICBzdHJlYW0tPnBhcnNlciA9IG51bGxwdHI7CiAgICAgZWxzZSB7CiAgICAgICAgIEdT
VF9FUlJPUl9PQkpFQ1Qoc3RyZWFtLT5wYXJlbnQsICJVbnN1cHBvcnRlZCBtZWRpYSBmb3JtYXQ6
ICVzIiwgbWVkaWFUeXBlKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBkNDRiNWM2NzFkMDYzZjRmZmRjYmE1YTM3OGZkNTU1
ZTY3MmY5ZmU4Li5kZDEwMDI4ZTg0ZWEzYTI0ZWJiYmFjYWQwYjVmZjA2Y2VhYmExZjUyIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjMgQEAKKzIwMTctMTAtMTEgIEFsaWNpYSBCb3lhIEdhcmPDrWEgIDxhYm95
YUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtNU0VdW0dTdHJlYW1lcl0gSW5zZXJ0IHBhcnNlciBl
bGVtZW50cyBpbiBBcHBlbmRQaXBlbGluZSB3aGVuIGRlbXV4aW5nIG9wdXMgb3IgVm9yYmlzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgwNzYKKwor
ICAgICAgICBZb3VUdWJlIGRvZXMgbm90IGluY2x1ZGUgZHVyYXRpb25zIGluIHRoZSBXZWJNIGNv
bnRhaW5lciBmb3IgZmlsZXMKKyAgICAgICAgY29udGFpbmluZyBPcHVzIGF1ZGlvLCBzbyB3ZSBu
ZWVkIHRvIHJlYWQgdGhlbSBmcm9tIHRoZSBjb250YWluZWQKKyAgICAgICAgc3RyZWFtLiBGb3J0
dW5hdGVseSwgR1N0cmVhbWVyIGhhcyBhbiBlbGVtZW50IHRvIGRvIHRoYXQ6IG9wdXNwYXJzZS4K
KworICAgICAgICBUaGUgc2FtZSB0aGluZyBoYXBwZW5zIHdpdGggVm9yYmlzIGNvbnRhaW5lZCBp
biBXZWJNIGZpbGVzIGZyb20gdGhlCisgICAgICAgIFczQyB0ZXN0cywgd2hpY2ggc2hvdWxkIGFs
c28gYmUgZml4ZWQgYnkgdGhlIEdTdHJlYW1lciBlbGVtZW50CisgICAgICAgIHZvcmJpc3BhcnNl
LgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBhbiBvcHVzcGFyc2Ugb3Igdm9yYmlzcGFyc2Ug
ZWxlbWVudCB0byB0aGUKKyAgICAgICAgQXBwZW5kUGlwZWxpbmUgYXQgdGhlIHNpbmtwYWQgb2Yg
dGhlIGRlbXV4ZXIgd2hlbiBlaXRoZXIgaXMgZm91bmQuCisKKyAgICAgICAgVGVzdHM6IHVwZGF0
ZWQgZXhwZWN0YXRpb25zLgorCisgICAgICAgICogcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlv
bnM6CisKIDIwMTctMTAtMTYgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+
CiAKICAgICAgICAgT24gVG9ULCBldmVudC5kYXRhVHJhbnNmZXIuZ2V0RGF0YSgidGV4dC91cmkt
bGlzdCIpIHJldHVybnMgYW4gZW1wdHkgc3RyaW5nIHdoZW4gZHJhZ2dpbmcgYW4gaW1hZ2UKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggOWZkZWNlY2ExODQ1
NmU5YjQ1NjZiZWUzMDFkN2NhOTAzYjE2ZTA4My4uNTRlY2EzMzk5YWZiZjZhMmU2NTg5MTNkYjg5
YTgyYTQ5MTIxNjYxZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RF
eHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlv
bnMKQEAgLTIxNSwxMCArMjE1LDYgQEAgd2Via2l0Lm9yZy9iLzYxNjYxIGVkaXRpbmcvcGFzdGVi
b2FyZC9kcmFnLWRyb3AtbGlzdC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvOTI3NDkg
ZmFzdC9kb20vTmF2aWdhdG9yQ29udGVudFV0aWxzL2lzLXByb3RvY29sLWhhbmRsZXItcmVnaXN0
ZXJlZC5odG1sIFsgU2tpcCBdCiAKICMgTVNFIGZhaWx1cmVzCi13ZWJraXQub3JnL2IvMTY3MTA4
IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL1NvdXJjZUJ1ZmZl
ci1hYm9ydC1yZWFkeVN0YXRlLmh0bWwgWyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xNjcxMDgg
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvU291cmNlQnVmZmVy
LWFib3J0LXJlbW92ZWQuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9Tb3VyY2VCdWZmZXItYWJv
cnQtdXBkYXRpbmcuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9Tb3VyY2VCdWZmZXItYWJvcnQu
aHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9VUkwtY3JlYXRlT2JqZWN0VVJMLXJldm9rZS5odG1s
IFsgRmFpbHVyZSBdCiAjIFNlZSBhbHNvIGJ1ZyAjMTc1NTc4CiB3ZWJraXQub3JnL2IvMTY3MTA4
IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNl
LWFjdGl2ZXNvdXJjZWJ1ZmZlcnMuaHRtbCBbIENyYXNoIEZhaWx1cmUgXQpAQCAtMjI4LDEyICsy
MjQsOSBAQCB3ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWFwcAogd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1hdnRy
YWNrcy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWJ1ZmZlcmVkLmh0bWwg
WyBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtY29uZmlnLWNoYW5nZS13ZWJtLWEtYml0
cmF0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Ut
d2VibS1hdi1hdWRpby1iaXRyYXRlLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xNjcx
MDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3Vy
Y2UtY29uZmlnLWNoYW5nZS13ZWJtLWF2LWZyYW1lc2l6ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJr
aXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291
cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Utd2VibS1hdi12aWRlby1iaXRyYXRlLmh0bWwg
WyBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtY29uZmlnLWNoYW5nZS13ZWJtLXYtYml0
cmF0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Ut
d2VibS12LWZyYW1lcmF0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTY3MTA4IGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNv
bmZpZy1jaGFuZ2Utd2VibS12LWZyYW1lc2l6ZS5odG1sIFsgRmFpbHVyZSBdCit3ZWJraXQub3Jn
L2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21l
ZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Utd2VibS12LWZyYW1lc2l6ZS5odG1sIFsgRmFpbHVyZSBQ
YXNzIF0KICMgQ3Jhc2ggaXMgd2Via2l0Lm9yZy9iLzE3NjAyMAogd2Via2l0Lm9yZy9iLzE2NzEw
OCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJj
ZS1kdXJhdGlvbi5odG1sIFsgRmFpbHVyZSBDcmFzaCBdCiAjIENyYXNoIGluIGJ1ZyAjMTc2MDE5
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>323901</attachid>
            <date>2017-10-16 09:26:56 -0700</date>
            <delta_ts>2017-10-17 02:08:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178076-20171016182654.patch</filename>
            <type>text/plain</type>
            <size>14837</size>
            <attacher name="Alicia Boya García">aboya</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIzMzQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTFjMjdlNTg3YWFkZDRm
YzY0MGU3M2Q3OTc2YjZlN2JlODE0NGU3OS4uOTQyM2U1MjJkNDg2ZmJjYTQ5N2RjZDNkMGQ1MmNl
NWMwMTBlMjNiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE3LTEwLTExICBBbGlj
aWEgQm95YSBHYXJjw61hICA8YWJveWFAaWdhbGlhLmNvbT4KKworICAgICAgICBbTVNFXVtHU3Ry
ZWFtZXJdIEluc2VydCBwYXJzZXIgZWxlbWVudHMgaW4gQXBwZW5kUGlwZWxpbmUgd2hlbiBkZW11
eGluZyBvcHVzIG9yIFZvcmJpcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTc4MDc2CisKKyAgICAgICAgWW91VHViZSBkb2VzIG5vdCBpbmNsdWRlIGR1
cmF0aW9ucyBpbiB0aGUgV2ViTSBjb250YWluZXIgZm9yIGZpbGVzCisgICAgICAgIGNvbnRhaW5p
bmcgT3B1cyBhdWRpbywgc28gd2UgbmVlZCB0byByZWFkIHRoZW0gZnJvbSB0aGUgY29udGFpbmVk
CisgICAgICAgIHN0cmVhbS4gRm9ydHVuYXRlbHksIEdTdHJlYW1lciBoYXMgYW4gZWxlbWVudCB0
byBkbyB0aGF0OiBvcHVzcGFyc2UuCisKKyAgICAgICAgVGhlIHNhbWUgdGhpbmcgaGFwcGVucyB3
aXRoIFZvcmJpcyBjb250YWluZWQgaW4gV2ViTSBmaWxlcyBmcm9tIHRoZQorICAgICAgICBXM0Mg
dGVzdHMsIHdoaWNoIHNob3VsZCBhbHNvIGJlIGZpeGVkIGJ5IHRoZSBHU3RyZWFtZXIgZWxlbWVu
dAorICAgICAgICB2b3JiaXNwYXJzZS4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYW4gb3B1
c3BhcnNlIG9yIHZvcmJpc3BhcnNlIGVsZW1lbnQgdG8gdGhlCisgICAgICAgIEFwcGVuZFBpcGVs
aW5lIGF0IHRoZSBzaW5rcGFkIG9mIHRoZSBkZW11eGVyIHdoZW4gZWl0aGVyIGlzIGZvdW5kLgor
CisgICAgICAgIFRlc3RzOiB1cGRhdGVkIGV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6QXBwZW5kUGlwZWxpbmU6OmFwcHNpbmtOZXdTYW1wbGUpOgorICAgICAgICAoV2Vi
Q29yZTo6Y3JlYXRlT3B0aW9uYWxQYXJzZXJGb3JGb3JtYXQpOgorICAgICAgICAoV2ViQ29yZTo6
QXBwZW5kUGlwZWxpbmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rRnJvbUFueVRocmVh
ZCk6CisgICAgICAgIChXZWJDb3JlOjpBcHBlbmRQaXBlbGluZTo6ZGlzY29ubmVjdERlbXV4ZXJT
cmNQYWRGcm9tQXBwc2lua0Zyb21BbnlUaHJlYWQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkdTdHJlYW1lck1lZGlhU2FtcGxlOjpHU3RyZWFtZXJNZWRpYVNhbXBsZSk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9QbGF5YmFja1BpcGVsaW5l
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXliYWNrUGlwZWxpbmU6OmF0dGFjaFRyYWNrKToK
KwogMjAxNy0xMC0wOSAgQWxpY2lhIEJveWEgR2FyY8OtYSAgPGFib3lhQGlnYWxpYS5jb20+CiAK
ICAgICAgICAgW01TRV1bR1N0cmVhbWVyXSBBZGQgZHVtcCBvZiBhcHBlbmQgcGlwZWxpbmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2Uv
QXBwZW5kUGlwZWxpbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKaW5kZXggM2VhZDdkNGIxZDhiZjU1MzI3OTEw
OGNmNTU4NmY5NTI5ZjQ1OWRlMS4uZTk2Y2RjODc2M2VlNjk2NzM3YWM5M2I0ZDk2NzAwMDMyZGM0
MTZmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVh
bWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKQEAgLTcyOCw3ICs3Mjgs
MTIgQEAgdm9pZCBBcHBlbmRQaXBlbGluZTo6YXBwc2lua05ld1NhbXBsZShHc3RTYW1wbGUqIHNh
bXBsZSkKIAogICAgICAgICBSZWZQdHI8R1N0cmVhbWVyTWVkaWFTYW1wbGU+IG1lZGlhU2FtcGxl
ID0gV2ViQ29yZTo6R1N0cmVhbWVyTWVkaWFTYW1wbGU6OmNyZWF0ZShzYW1wbGUsIG1fcHJlc2Vu
dGF0aW9uU2l6ZSwgdHJhY2tJZCgpKTsKIAotICAgICAgICBHU1RfVFJBQ0UoImFwcGVuZDogdHJh
Y2tJZD0lcyBQVFM9JWYgcHJlc2VudGF0aW9uU2l6ZT0lLjBmeCUuMGYiLCBtZWRpYVNhbXBsZS0+
dHJhY2tJRCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCksIG1lZGlhU2FtcGxlLT5wcmVzZW50YXRp
b25UaW1lKCkudG9GbG9hdCgpLCBtZWRpYVNhbXBsZS0+cHJlc2VudGF0aW9uU2l6ZSgpLndpZHRo
KCksIG1lZGlhU2FtcGxlLT5wcmVzZW50YXRpb25TaXplKCkuaGVpZ2h0KCkpOworICAgICAgICBH
U1RfVFJBQ0UoImFwcGVuZDogdHJhY2tJZD0lcyBQVFM9JXMgRFRTPSVzIERVUj0lcyBwcmVzZW50
YXRpb25TaXplPSUuMGZ4JS4wZiIsCisgICAgICAgICAgICBtZWRpYVNhbXBsZS0+dHJhY2tJRCgp
LnN0cmluZygpLnV0ZjgoKS5kYXRhKCksCisgICAgICAgICAgICBtZWRpYVNhbXBsZS0+cHJlc2Vu
dGF0aW9uVGltZSgpLnRvU3RyaW5nKCkudXRmOCgpLmRhdGEoKSwKKyAgICAgICAgICAgIG1lZGlh
U2FtcGxlLT5kZWNvZGVUaW1lKCkudG9TdHJpbmcoKS51dGY4KCkuZGF0YSgpLAorICAgICAgICAg
ICAgbWVkaWFTYW1wbGUtPmR1cmF0aW9uKCkudG9TdHJpbmcoKS51dGY4KCkuZGF0YSgpLAorICAg
ICAgICAgICAgbWVkaWFTYW1wbGUtPnByZXNlbnRhdGlvblNpemUoKS53aWR0aCgpLCBtZWRpYVNh
bXBsZS0+cHJlc2VudGF0aW9uU2l6ZSgpLmhlaWdodCgpKTsKIAogICAgICAgICAvLyBJZiB3ZSdy
ZSBiZXlvbmQgdGhlIGR1cmF0aW9uLCBpZ25vcmUgdGhpcyBzYW1wbGUgYW5kIHRoZSByZW1haW5p
bmcgb25lcy4KICAgICAgICAgTWVkaWFUaW1lIGR1cmF0aW9uID0gbV9tZWRpYVNvdXJjZUNsaWVu
dC0+ZHVyYXRpb24oKTsKQEAgLTk0NCw2ICs5NDksMzAgQEAgR3N0Rmxvd1JldHVybiBBcHBlbmRQ
aXBlbGluZTo6aGFuZGxlTmV3QXBwc2lua1NhbXBsZShHc3RFbGVtZW50KiBhcHBzaW5rKQogICAg
IHJldHVybiBtX2Zsb3dSZXR1cm47CiB9CiAKK3N0YXRpYyBHUmVmUHRyPEdzdEVsZW1lbnQ+Citj
cmVhdGVPcHRpb25hbFBhcnNlckZvckZvcm1hdChHc3RQYWQqIGRlbXV4ZXJTcmNQYWQpCit7Cisg
ICAgR1JlZlB0cjxHc3RDYXBzPiBwYWRDYXBzID0gYWRvcHRHUmVmKGdzdF9wYWRfZ2V0X2N1cnJl
bnRfY2FwcyhkZW11eGVyU3JjUGFkKSk7CisgICAgR3N0U3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBn
c3RfY2Fwc19nZXRfc3RydWN0dXJlKHBhZENhcHMuZ2V0KCksIDApOworICAgIGNvbnN0IGNoYXIq
IG1lZGlhVHlwZSA9IGdzdF9zdHJ1Y3R1cmVfZ2V0X25hbWUoc3RydWN0dXJlKTsKKworICAgIEdV
bmlxdWVQdHI8Y2hhcj4gZGVtdXhlclBhZE5hbWUoZ3N0X3BhZF9nZXRfbmFtZShkZW11eGVyU3Jj
UGFkKSk7CisgICAgR1VuaXF1ZVB0cjxjaGFyPiBwYXJzZXJOYW1lKGdfc3RyZHVwX3ByaW50Zigi
JXNfcGFyc2VyIiwgZGVtdXhlclBhZE5hbWUuZ2V0KCkpKTsKKworICAgIGlmICghZ19zdHJjbXAw
KG1lZGlhVHlwZSwgImF1ZGlvL3gtb3B1cyIpKSB7CisgICAgICAgIEdzdEVsZW1lbnQqIG9wdXNw
YXJzZSA9IGdzdF9lbGVtZW50X2ZhY3RvcnlfbWFrZSgib3B1c3BhcnNlIiwgcGFyc2VyTmFtZS5n
ZXQoKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKG9wdXNwYXJzZSk7CisgICAgICAgIHJldHVy
biBHUmVmUHRyPEdzdEVsZW1lbnQ+KG9wdXNwYXJzZSk7CisgICAgfQorICAgIGlmICghZ19zdHJj
bXAwKG1lZGlhVHlwZSwgImF1ZGlvL3gtdm9yYmlzIikpIHsKKyAgICAgICAgR3N0RWxlbWVudCog
dm9yYmlzcGFyc2UgPSBnc3RfZWxlbWVudF9mYWN0b3J5X21ha2UoInZvcmJpc3BhcnNlIiwgcGFy
c2VyTmFtZS5nZXQoKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKHZvcmJpc3BhcnNlKTsKKyAg
ICAgICAgcmV0dXJuIEdSZWZQdHI8R3N0RWxlbWVudD4odm9yYmlzcGFyc2UpOworICAgIH0KKwor
ICAgIHJldHVybiBudWxscHRyOworfQorCiB2b2lkIEFwcGVuZFBpcGVsaW5lOjpjb25uZWN0RGVt
dXhlclNyY1BhZFRvQXBwc2lua0Zyb21BbnlUaHJlYWQoR3N0UGFkKiBkZW11eGVyU3JjUGFkKQog
ewogICAgIGlmICghbV9hcHBzaW5rKQpAQCAtOTk3LDMwICsxMDI2LDUwIEBAIHZvaWQgQXBwZW5k
UGlwZWxpbmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rRnJvbUFueVRocmVhZChHc3RQ
YWQqIGRlbXV4ZXJTCiAgICAgICAgIGlmICghcGFyZW50KQogICAgICAgICAgICAgZ3N0X2Jpbl9h
ZGQoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9hcHBzaW5rLmdldCgpKTsKIAorICAgICAg
ICAvLyBDdXJyZW50IGhlYWQgb2YgdGhlIHBpcGVsaW5lIGJlaW5nIGJ1aWx0LgorICAgICAgICBH
UmVmUHRyPEdzdFBhZD4gY3VycmVudFNyY1BhZCA9IGRlbXV4ZXJTcmNQYWQ7CisKKyAgICAgICAg
Ly8gU29tZSBhdWRpbyBmaWxlcyB1bmhlbHBmdWxseSBvbWl0IHRoZSBkdXJhdGlvbiBvZiBmcmFt
ZXMgaW4gdGhlIGNvbnRhaW5lci4gV2UgbmVlZCB0byBwYXJzZQorICAgICAgICAvLyB0aGUgY29u
dGFpbmVkIGF1ZGlvIHN0cmVhbXMgaW4gb3JkZXIgdG8ga25vdyB0aGUgZHVyYXRpb24gb2YgdGhl
IGZyYW1lcy4KKyAgICAgICAgLy8gVGhpcyBpcyBrbm93biB0byBiZSBhbiBpc3N1ZSB3aXRoIFlv
dVR1YmUgV2ViTSBmaWxlcyBjb250YWluaW5nIE9wdXMgYXVkaW8gYXMgb2YgWVRUVjIwMTguCisg
ICAgICAgIG1fcGFyc2VyID0gY3JlYXRlT3B0aW9uYWxQYXJzZXJGb3JGb3JtYXQoY3VycmVudFNy
Y1BhZC5nZXQoKSk7CisgICAgICAgIGlmIChtX3BhcnNlcikgeworICAgICAgICAgICAgZ3N0X2Jp
bl9hZGQoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9wYXJzZXIuZ2V0KCkpOworICAgICAg
ICAgICAgZ3N0X2VsZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudChtX3BhcnNlci5nZXQoKSk7
CisKKyAgICAgICAgICAgIEdSZWZQdHI8R3N0UGFkPiBwYXJzZXJTaW5rUGFkID0gYWRvcHRHUmVm
KGdzdF9lbGVtZW50X2dldF9zdGF0aWNfcGFkKG1fcGFyc2VyLmdldCgpLCAic2luayIpKTsKKyAg
ICAgICAgICAgIEdSZWZQdHI8R3N0UGFkPiBwYXJzZXJTcmNQYWQgPSBhZG9wdEdSZWYoZ3N0X2Vs
ZW1lbnRfZ2V0X3N0YXRpY19wYWQobV9wYXJzZXIuZ2V0KCksICJzcmMiKSk7CisKKyAgICAgICAg
ICAgIGdzdF9wYWRfbGluayhjdXJyZW50U3JjUGFkLmdldCgpLCBwYXJzZXJTaW5rUGFkLmdldCgp
KTsKKyAgICAgICAgICAgIGN1cnJlbnRTcmNQYWQgPSBwYXJzZXJTcmNQYWQ7CisgICAgICAgIH0K
KwogI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCiAgICAgICAgIGlmIChtX2RlY3J5cHRvcikg
ewogICAgICAgICAgICAgZ3N0X29iamVjdF9yZWYobV9kZWNyeXB0b3IuZ2V0KCkpOwogICAgICAg
ICAgICAgZ3N0X2Jpbl9hZGQoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9kZWNyeXB0b3Iu
Z2V0KCkpOworICAgICAgICAgICAgZ3N0X2VsZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudCht
X2RlY3J5cHRvci5nZXQoKSk7CiAKICAgICAgICAgICAgIEdSZWZQdHI8R3N0UGFkPiBkZWNyeXB0
b3JTaW5rUGFkID0gYWRvcHRHUmVmKGdzdF9lbGVtZW50X2dldF9zdGF0aWNfcGFkKG1fZGVjcnlw
dG9yLmdldCgpLCAic2luayIpKTsKLSAgICAgICAgICAgIGdzdF9wYWRfbGluayhkZW11eGVyU3Jj
UGFkLCBkZWNyeXB0b3JTaW5rUGFkLmdldCgpKTsKLQogICAgICAgICAgICAgR1JlZlB0cjxHc3RQ
YWQ+IGRlY3J5cHRvclNyY1BhZCA9IGFkb3B0R1JlZihnc3RfZWxlbWVudF9nZXRfc3RhdGljX3Bh
ZChtX2RlY3J5cHRvci5nZXQoKSwgInNyYyIpKTsKLSAgICAgICAgICAgIGdzdF9wYWRfbGluayhk
ZWNyeXB0b3JTcmNQYWQuZ2V0KCksIGFwcHNpbmtTaW5rUGFkLmdldCgpKTsKLQotICAgICAgICAg
ICAgZ3N0X2VsZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudChtX2FwcHNpbmsuZ2V0KCkpOwot
ICAgICAgICAgICAgZ3N0X2VsZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudChtX2RlY3J5cHRv
ci5nZXQoKSk7CiAKLSAgICAgICAgICAgIGlmIChtX3BlbmRpbmdEZWNyeXB0aW9uU3RydWN0dXJl
KQotICAgICAgICAgICAgICAgIGRpc3BhdGNoUGVuZGluZ0RlY3J5cHRpb25TdHJ1Y3R1cmUoKTsK
LSAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGdzdF9wYWRfbGluayhjdXJyZW50U3JjUGFk
LmdldCgpLCBkZWNyeXB0b3JTaW5rUGFkLmdldCgpKTsKKyAgICAgICAgICAgIGN1cnJlbnRTcmNQ
YWQgPSBkZWNyeXB0b3JTcmNQYWQ7CisgICAgICAgIH0KICNlbmRpZgotICAgICAgICAgICAgZ3N0
X3BhZF9saW5rKGRlbXV4ZXJTcmNQYWQsIGFwcHNpbmtTaW5rUGFkLmdldCgpKTsKLSAgICAgICAg
ICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQobV9hcHBzaW5rLmdldCgpKTsK
KworICAgICAgICBnc3RfcGFkX2xpbmsoY3VycmVudFNyY1BhZC5nZXQoKSwgYXBwc2lua1NpbmtQ
YWQuZ2V0KCkpOworCisgICAgICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQo
bV9hcHBzaW5rLmdldCgpKTsKKwogI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCi0gICAgICAg
IH0KKyAgICAgICAgaWYgKG1fcGVuZGluZ0RlY3J5cHRpb25TdHJ1Y3R1cmUpCisgICAgICAgICAg
ICBkaXNwYXRjaFBlbmRpbmdEZWNyeXB0aW9uU3RydWN0dXJlKCk7CiAjZW5kaWYKICAgICAgICAg
Z3N0X2VsZW1lbnRfc2V0X3N0YXRlKG1fcGlwZWxpbmUuZ2V0KCksIEdTVF9TVEFURV9QQVVTRUQp
OworICAgICAgICBnc3RfZWxlbWVudF9zeW5jX3N0YXRlX3dpdGhfcGFyZW50KG1fYXBwc2luay5n
ZXQoKSk7CisKKyAgICAgICAgR1NUX0RFQlVHX0JJTl9UT19ET1RfRklMRV9XSVRIX1RTKEdTVF9C
SU4obV9waXBlbGluZS5nZXQoKSksIEdTVF9ERUJVR19HUkFQSF9TSE9XX0FMTCwgIndlYmtpdC1h
ZnRlci1saW5rIik7CiAgICAgfQogfQogCkBAIC0xMDg5LDMxICsxMTM4LDI3IEBAIHZvaWQgQXBw
ZW5kUGlwZWxpbmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rKEdzdFBhZCogZGVtdXhl
clNyY1BhZCkKICAgICBtX3BhZEFkZFJlbW92ZUNvbmRpdGlvbi5ub3RpZnlPbmUoKTsKIH0KIAot
dm9pZCBBcHBlbmRQaXBlbGluZTo6ZGlzY29ubmVjdERlbXV4ZXJTcmNQYWRGcm9tQXBwc2lua0Zy
b21BbnlUaHJlYWQoR3N0UGFkKiBkZW11eGVyU3JjUGFkKQordm9pZCBBcHBlbmRQaXBlbGluZTo6
ZGlzY29ubmVjdERlbXV4ZXJTcmNQYWRGcm9tQXBwc2lua0Zyb21BbnlUaHJlYWQoR3N0UGFkKikK
IHsKLSAgICAvLyBNdXN0IGJlIGRvbmUgaW4gdGhlIHRocmVhZCB3ZSB3ZXJlIGNhbGxlZCBmcm9t
ICh1c3VhbGx5IHN0cmVhbWluZyB0aHJlYWQpLgotICAgIGlmICghZ3N0X3BhZF9pc19saW5rZWQo
ZGVtdXhlclNyY1BhZCkpIHsKLSAgICAgICAgZ3Vsb25nIHByb2JlSWQgPSBHUE9JTlRFUl9UT19V
TE9ORyhnX29iamVjdF9nZXRfZGF0YShHX09CSkVDVChkZW11eGVyU3JjUGFkKSwgImJsYWNrSG9s
ZVByb2JlSWQiKSk7Ci0gICAgICAgIGlmIChwcm9iZUlkKSB7Ci0gICAgICAgICAgICBHU1RfREVC
VUcoIkRpc2Nvbm5lY3RpbmcgYmxhY2sgaG9sZSBwcm9iZS4iKTsKLSAgICAgICAgICAgIGdfb2Jq
ZWN0X3NldF9kYXRhKEdfT0JKRUNUKGRlbXV4ZXJTcmNQYWQpLCAiYmxhY2tIb2xlUHJvYmVJZCIs
IG51bGxwdHIpOwotICAgICAgICAgICAgZ3N0X3BhZF9yZW1vdmVfcHJvYmUoZGVtdXhlclNyY1Bh
ZCwgcHJvYmVJZCk7Ci0gICAgICAgIH0gZWxzZQotICAgICAgICAgICAgR1NUX1dBUk5JTkcoIk5v
dCBkaXNjb25uZWN0aW5nIGRlbXV4ZXIgc3JjIHBhZCBiZWNhdXNlIGl0IHdhc24ndCBsaW5rZWQi
KTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KKyAgICBHU1RfREVCVUdfQklOX1RPX0RPVF9GSUxF
X1dJVEhfVFMoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgR1NUX0RFQlVHX0dSQVBIX1NIT1df
QUxMLCAicGFkLXJlbW92ZWQtYmVmb3JlIik7CiAKICAgICBHU1RfREVCVUcoIkRpc2Nvbm5lY3Rp
bmcgYXBwc2luayIpOwogCiAjaWYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKICAgICBpZiAobV9k
ZWNyeXB0b3IpIHsKLSAgICAgICAgZ3N0X2VsZW1lbnRfdW5saW5rKG1fZGVjcnlwdG9yLmdldCgp
LCBtX2FwcHNpbmsuZ2V0KCkpOwotICAgICAgICBnc3RfZWxlbWVudF91bmxpbmsobV9kZW11eC5n
ZXQoKSwgbV9kZWNyeXB0b3IuZ2V0KCkpOwogICAgICAgICBnc3RfZWxlbWVudF9zZXRfc3RhdGUo
bV9kZWNyeXB0b3IuZ2V0KCksIEdTVF9TVEFURV9OVUxMKTsKICAgICAgICAgZ3N0X2Jpbl9yZW1v
dmUoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9kZWNyeXB0b3IuZ2V0KCkpOwotICAgIH0g
ZWxzZQorICAgICAgICBtX2RlY3J5cHRvciA9IG51bGxwdHI7CisgICAgfQogI2VuZGlmCi0gICAg
ICAgIGdzdF9lbGVtZW50X3VubGluayhtX2RlbXV4LmdldCgpLCBtX2FwcHNpbmsuZ2V0KCkpOwor
CisgICAgaWYgKG1fcGFyc2VyKSB7CisgICAgICAgIGdzdF9lbGVtZW50X3NldF9zdGF0ZShtX3Bh
cnNlci5nZXQoKSwgR1NUX1NUQVRFX05VTEwpOworICAgICAgICBnc3RfYmluX3JlbW92ZShHU1Rf
QklOKG1fcGlwZWxpbmUuZ2V0KCkpLCBtX3BhcnNlci5nZXQoKSk7CisgICAgICAgIG1fcGFyc2Vy
ID0gbnVsbHB0cjsKKyAgICB9CisKKyAgICBHU1RfREVCVUdfQklOX1RPX0RPVF9GSUxFX1dJVEhf
VFMoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgR1NUX0RFQlVHX0dSQVBIX1NIT1dfQUxMLCAi
cGFkLXJlbW92ZWQtYWZ0ZXIiKTsKIH0KIAogI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNl
L0FwcGVuZFBpcGVsaW5lLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3Ry
ZWFtZXIvbXNlL0FwcGVuZFBpcGVsaW5lLmgKaW5kZXggMjVjYjNiZWQ1NDE2MzMwOTViMWNmZTYz
MDJiZTE0YjQxNTI0NTI0Mi4uZjI4OTM1YTA2YzgzMGY4NzcxOTRhNDEyMzAzYmEzN2ZiNDEyZTNj
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVy
L21zZS9BcHBlbmRQaXBlbGluZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuaApAQCAtMTE4LDYgKzExOCw3IEBAIHBy
aXZhdGU6CiAgICAgR1JlZlB0cjxHc3RCdXM+IG1fYnVzOwogICAgIEdSZWZQdHI8R3N0RWxlbWVu
dD4gbV9hcHBzcmM7CiAgICAgR1JlZlB0cjxHc3RFbGVtZW50PiBtX2RlbXV4OworICAgIEdSZWZQ
dHI8R3N0RWxlbWVudD4gbV9wYXJzZXI7IC8vIE9wdGlvbmFsLgogI2lmIEVOQUJMRShFTkNSWVBU
RURfTUVESUEpCiAgICAgR1JlZlB0cjxHc3RFbGVtZW50PiBtX2RlY3J5cHRvcjsKICNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21z
ZS9HU3RyZWFtZXJNZWRpYVNhbXBsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcAppbmRleCAyMjlkZWZh
YWQzMDhkNDg1M2ExMDEzNGU0ZWE3OTdmM2IyMmMxMjdhLi4yOTUxMDAzNGE2ODAwOTg3ZWIzNDk4
NjVlY2Y2YmRjM2ZmZGQ0ZjY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlh
U2FtcGxlLmNwcApAQCAtNTIsOCArNTIsOCBAQCBHU3RyZWFtZXJNZWRpYVNhbXBsZTo6R1N0cmVh
bWVyTWVkaWFTYW1wbGUoR3N0U2FtcGxlKiBzYW1wbGUsIGNvbnN0IEZsb2F0U2l6ZSYgcAogCiAg
ICAgaWYgKEdTVF9CVUZGRVJfUFRTX0lTX1ZBTElEKGJ1ZmZlcikpCiAgICAgICAgIG1fcHRzID0g
Y3JlYXRlTWVkaWFUaW1lKEdTVF9CVUZGRVJfUFRTKGJ1ZmZlcikpOwotICAgIGlmIChHU1RfQlVG
RkVSX0RUU19JU19WQUxJRChidWZmZXIpKQotICAgICAgICBtX2R0cyA9IGNyZWF0ZU1lZGlhVGlt
ZShHU1RfQlVGRkVSX0RUUyhidWZmZXIpKTsKKyAgICBpZiAoR1NUX0JVRkZFUl9EVFNfSVNfVkFM
SUQoYnVmZmVyKSB8fCBHU1RfQlVGRkVSX1BUU19JU19WQUxJRChidWZmZXIpKQorICAgICAgICBt
X2R0cyA9IGNyZWF0ZU1lZGlhVGltZShHU1RfQlVGRkVSX0RUU19PUl9QVFMoYnVmZmVyKSk7CiAg
ICAgaWYgKEdTVF9CVUZGRVJfRFVSQVRJT05fSVNfVkFMSUQoYnVmZmVyKSkKICAgICAgICAgbV9k
dXJhdGlvbiA9IGNyZWF0ZU1lZGlhVGltZShHU1RfQlVGRkVSX0RVUkFUSU9OKGJ1ZmZlcikpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
bXNlL1BsYXliYWNrUGlwZWxpbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3N0cmVhbWVyL21zZS9QbGF5YmFja1BpcGVsaW5lLmNwcAppbmRleCBiZDM0ZTQ1NzA3YWZi
ZGIyMDQwMDQzN2IxNzgwZDJkODEzNTRjOGE0Li43ZTYwNjk0OTIyZWE0MzI2ZmM5ZWNjYjZlYjU3
OGQzZjEzYTBiOWUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvbXNlL1BsYXliYWNrUGlwZWxpbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvUGxheWJhY2tQaXBlbGluZS5jcHAKQEAg
LTIzNSw3ICsyMzUsMTAgQEAgdm9pZCBQbGF5YmFja1BpcGVsaW5lOjphdHRhY2hUcmFjayhSZWZQ
dHI8U291cmNlQnVmZmVyUHJpdmF0ZUdTdHJlYW1lcj4gc291cmNlQnUKIAogICAgICAgICBwYWQg
PSBhZG9wdEdSZWYoZ3N0X2VsZW1lbnRfZ2V0X3N0YXRpY19wYWQocGFyc2VyLCAic3JjIikpOwog
ICAgICAgICBnc3RfZWxlbWVudF9hZGRfcGFkKHN0cmVhbS0+cGFyc2VyLCBnc3RfZ2hvc3RfcGFk
X25ldygic3JjIiwgcGFkLmdldCgpKSk7Ci0gICAgfSBlbHNlIGlmICghZ19zdHJjbXAwKG1lZGlh
VHlwZSwgInZpZGVvL3gtdnA5IikpCisgICAgfSBlbHNlIGlmICghZ19zdHJjbXAwKG1lZGlhVHlw
ZSwgInZpZGVvL3gtdnA4IikKKyAgICAgICAgfHwgIWdfc3RyY21wMChtZWRpYVR5cGUsICJ2aWRl
by94LXZwOSIpCisgICAgICAgIHx8ICFnX3N0cmNtcDAobWVkaWFUeXBlLCAiYXVkaW8veC1vcHVz
IikKKyAgICAgICAgfHwgIWdfc3RyY21wMChtZWRpYVR5cGUsICJhdWRpby94LXZvcmJpcyIpKQog
ICAgICAgICBzdHJlYW0tPnBhcnNlciA9IG51bGxwdHI7CiAgICAgZWxzZSB7CiAgICAgICAgIEdT
VF9FUlJPUl9PQkpFQ1Qoc3RyZWFtLT5wYXJlbnQsICJVbnN1cHBvcnRlZCBtZWRpYSBmb3JtYXQ6
ICVzIiwgbWVkaWFUeXBlKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBkNDRiNWM2NzFkMDYzZjRmZmRjYmE1YTM3OGZkNTU1
ZTY3MmY5ZmU4Li5kZDEwMDI4ZTg0ZWEzYTI0ZWJiYmFjYWQwYjVmZjA2Y2VhYmExZjUyIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjMgQEAKKzIwMTctMTAtMTEgIEFsaWNpYSBCb3lhIEdhcmPDrWEgIDxhYm95
YUBpZ2FsaWEuY29tPgorCisgICAgICAgIFtNU0VdW0dTdHJlYW1lcl0gSW5zZXJ0IHBhcnNlciBl
bGVtZW50cyBpbiBBcHBlbmRQaXBlbGluZSB3aGVuIGRlbXV4aW5nIG9wdXMgb3IgVm9yYmlzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgwNzYKKwor
ICAgICAgICBZb3VUdWJlIGRvZXMgbm90IGluY2x1ZGUgZHVyYXRpb25zIGluIHRoZSBXZWJNIGNv
bnRhaW5lciBmb3IgZmlsZXMKKyAgICAgICAgY29udGFpbmluZyBPcHVzIGF1ZGlvLCBzbyB3ZSBu
ZWVkIHRvIHJlYWQgdGhlbSBmcm9tIHRoZSBjb250YWluZWQKKyAgICAgICAgc3RyZWFtLiBGb3J0
dW5hdGVseSwgR1N0cmVhbWVyIGhhcyBhbiBlbGVtZW50IHRvIGRvIHRoYXQ6IG9wdXNwYXJzZS4K
KworICAgICAgICBUaGUgc2FtZSB0aGluZyBoYXBwZW5zIHdpdGggVm9yYmlzIGNvbnRhaW5lZCBp
biBXZWJNIGZpbGVzIGZyb20gdGhlCisgICAgICAgIFczQyB0ZXN0cywgd2hpY2ggc2hvdWxkIGFs
c28gYmUgZml4ZWQgYnkgdGhlIEdTdHJlYW1lciBlbGVtZW50CisgICAgICAgIHZvcmJpc3BhcnNl
LgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBhbiBvcHVzcGFyc2Ugb3Igdm9yYmlzcGFyc2Ug
ZWxlbWVudCB0byB0aGUKKyAgICAgICAgQXBwZW5kUGlwZWxpbmUgYXQgdGhlIHNpbmtwYWQgb2Yg
dGhlIGRlbXV4ZXIgd2hlbiBlaXRoZXIgaXMgZm91bmQuCisKKyAgICAgICAgVGVzdHM6IHVwZGF0
ZWQgZXhwZWN0YXRpb25zLgorCisgICAgICAgICogcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlv
bnM6CisKIDIwMTctMTAtMTYgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+
CiAKICAgICAgICAgT24gVG9ULCBldmVudC5kYXRhVHJhbnNmZXIuZ2V0RGF0YSgidGV4dC91cmkt
bGlzdCIpIHJldHVybnMgYW4gZW1wdHkgc3RyaW5nIHdoZW4gZHJhZ2dpbmcgYW4gaW1hZ2UKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggOWZkZWNlY2ExODQ1
NmU5YjQ1NjZiZWUzMDFkN2NhOTAzYjE2ZTA4My4uMWJiMDNiMWNlMzcyNjBhYTM2NWIyMTVmNDc3
NDJhMTExMzliYjFkMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RF
eHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlv
bnMKQEAgLTIyOCwxMiArMjI4LDkgQEAgd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1hcHAKIHdlYmtpdC5v
cmcvYi8xNjcxMDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2Uv
bWVkaWFzb3VyY2UtYXZ0cmFja3MuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE2NzEw
OCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJj
ZS1idWZmZXJlZC5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1j
aGFuZ2Utd2VibS1hLWJpdHJhdGUuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE2NzEw
OCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJj
ZS1jb25maWctY2hhbmdlLXdlYm0tYXYtYXVkaW8tYml0cmF0ZS5odG1sIFsgRmFpbHVyZSBdCiB3
ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEt
c291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Utd2VibS1hdi1mcmFtZXNpemUuaHRtbCBb
IEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdlYm0tYXYtdmlk
ZW8tYml0cmF0ZS5odG1sIFsgRmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1j
aGFuZ2Utd2VibS12LWJpdHJhdGUuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE2NzEw
OCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJj
ZS1jb25maWctY2hhbmdlLXdlYm0tdi1mcmFtZXJhdGUuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0
Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJj
ZS9tZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdlYm0tdi1mcmFtZXNpemUuaHRtbCBbIEZhaWx1
cmUgXQord2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdlYm0tdi1mcmFtZXNpemUu
aHRtbCBbIEZhaWx1cmUgUGFzcyBdCiAjIENyYXNoIGlzIHdlYmtpdC5vcmcvYi8xNzYwMjAKIHdl
YmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1z
b3VyY2UvbWVkaWFzb3VyY2UtZHVyYXRpb24uaHRtbCBbIEZhaWx1cmUgQ3Jhc2ggXQogIyBDcmFz
aCBpbiBidWcgIzE3NjAxOQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>324002</attachid>
            <date>2017-10-17 02:08:25 -0700</date>
            <delta_ts>2017-10-17 02:40:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-178076-20171017110823.patch</filename>
            <type>text/plain</type>
            <size>14933</size>
            <attacher name="Alicia Boya García">aboya</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIzMzQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTFjMjdlNTg3YWFkZDRm
YzY0MGU3M2Q3OTc2YjZlN2JlODE0NGU3OS4uMDBlYTI0ODU4Y2Q0MTc1MGEwZGY4ZjhkMjdlMTkx
ZGFhY2VjOGVlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDE3LTEwLTExICBBbGlj
aWEgQm95YSBHYXJjw61hICA8YWJveWFAaWdhbGlhLmNvbT4KKworICAgICAgICBbTVNFXVtHU3Ry
ZWFtZXJdIEluc2VydCBwYXJzZXIgZWxlbWVudHMgaW4gQXBwZW5kUGlwZWxpbmUgd2hlbiBkZW11
eGluZyBvcHVzIG9yIFZvcmJpcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTc4MDc2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgWGFiaWVyIFJvZHJpZ3Vl
ei1DYWx2YXIuCisKKyAgICAgICAgWW91VHViZSBkb2VzIG5vdCBpbmNsdWRlIGR1cmF0aW9ucyBp
biB0aGUgV2ViTSBjb250YWluZXIgZm9yIGZpbGVzCisgICAgICAgIGNvbnRhaW5pbmcgT3B1cyBh
dWRpbywgc28gd2UgbmVlZCB0byByZWFkIHRoZW0gZnJvbSB0aGUgY29udGFpbmVkCisgICAgICAg
IHN0cmVhbS4gRm9ydHVuYXRlbHksIEdTdHJlYW1lciBoYXMgYW4gZWxlbWVudCB0byBkbyB0aGF0
OiBvcHVzcGFyc2UuCisKKyAgICAgICAgVGhlIHNhbWUgdGhpbmcgaGFwcGVucyB3aXRoIFZvcmJp
cyBjb250YWluZWQgaW4gV2ViTSBmaWxlcyBmcm9tIHRoZQorICAgICAgICBXM0MgdGVzdHMsIHdo
aWNoIHNob3VsZCBhbHNvIGJlIGZpeGVkIGJ5IHRoZSBHU3RyZWFtZXIgZWxlbWVudAorICAgICAg
ICB2b3JiaXNwYXJzZS4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYW4gb3B1c3BhcnNlIG9y
IHZvcmJpc3BhcnNlIGVsZW1lbnQgdG8gdGhlCisgICAgICAgIEFwcGVuZFBpcGVsaW5lIGF0IHRo
ZSBzaW5rcGFkIG9mIHRoZSBkZW11eGVyIHdoZW4gZWl0aGVyIGlzIGZvdW5kLgorCisgICAgICAg
IFRlc3RzOiB1cGRhdGVkIGV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
QXBwZW5kUGlwZWxpbmU6OmFwcHNpbmtOZXdTYW1wbGUpOgorICAgICAgICAoV2ViQ29yZTo6Y3Jl
YXRlT3B0aW9uYWxQYXJzZXJGb3JGb3JtYXQpOgorICAgICAgICAoV2ViQ29yZTo6QXBwZW5kUGlw
ZWxpbmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rRnJvbUFueVRocmVhZCk6CisgICAg
ICAgIChXZWJDb3JlOjpBcHBlbmRQaXBlbGluZTo6ZGlzY29ubmVjdERlbXV4ZXJTcmNQYWRGcm9t
QXBwc2lua0Zyb21BbnlUaHJlYWQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJl
YW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9n
c3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkdTdHJlYW1lck1lZGlhU2FtcGxlOjpHU3RyZWFtZXJNZWRpYVNhbXBsZSk6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9QbGF5YmFja1BpcGVsaW5lLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlBsYXliYWNrUGlwZWxpbmU6OmF0dGFjaFRyYWNrKToKKwogMjAxNy0x
MC0wOSAgQWxpY2lhIEJveWEgR2FyY8OtYSAgPGFib3lhQGlnYWxpYS5jb20+CiAKICAgICAgICAg
W01TRV1bR1N0cmVhbWVyXSBBZGQgZHVtcCBvZiBhcHBlbmQgcGlwZWxpbmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvQXBwZW5kUGlw
ZWxpbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21z
ZS9BcHBlbmRQaXBlbGluZS5jcHAKaW5kZXggM2VhZDdkNGIxZDhiZjU1MzI3OTEwOGNmNTU4NmY5
NTI5ZjQ1OWRlMS4uZTk2Y2RjODc2M2VlNjk2NzM3YWM5M2I0ZDk2NzAwMDMyZGM0MTZmNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9B
cHBlbmRQaXBlbGluZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3N0cmVhbWVyL21zZS9BcHBlbmRQaXBlbGluZS5jcHAKQEAgLTcyOCw3ICs3MjgsMTIgQEAgdm9p
ZCBBcHBlbmRQaXBlbGluZTo6YXBwc2lua05ld1NhbXBsZShHc3RTYW1wbGUqIHNhbXBsZSkKIAog
ICAgICAgICBSZWZQdHI8R1N0cmVhbWVyTWVkaWFTYW1wbGU+IG1lZGlhU2FtcGxlID0gV2ViQ29y
ZTo6R1N0cmVhbWVyTWVkaWFTYW1wbGU6OmNyZWF0ZShzYW1wbGUsIG1fcHJlc2VudGF0aW9uU2l6
ZSwgdHJhY2tJZCgpKTsKIAotICAgICAgICBHU1RfVFJBQ0UoImFwcGVuZDogdHJhY2tJZD0lcyBQ
VFM9JWYgcHJlc2VudGF0aW9uU2l6ZT0lLjBmeCUuMGYiLCBtZWRpYVNhbXBsZS0+dHJhY2tJRCgp
LnN0cmluZygpLnV0ZjgoKS5kYXRhKCksIG1lZGlhU2FtcGxlLT5wcmVzZW50YXRpb25UaW1lKCku
dG9GbG9hdCgpLCBtZWRpYVNhbXBsZS0+cHJlc2VudGF0aW9uU2l6ZSgpLndpZHRoKCksIG1lZGlh
U2FtcGxlLT5wcmVzZW50YXRpb25TaXplKCkuaGVpZ2h0KCkpOworICAgICAgICBHU1RfVFJBQ0Uo
ImFwcGVuZDogdHJhY2tJZD0lcyBQVFM9JXMgRFRTPSVzIERVUj0lcyBwcmVzZW50YXRpb25TaXpl
PSUuMGZ4JS4wZiIsCisgICAgICAgICAgICBtZWRpYVNhbXBsZS0+dHJhY2tJRCgpLnN0cmluZygp
LnV0ZjgoKS5kYXRhKCksCisgICAgICAgICAgICBtZWRpYVNhbXBsZS0+cHJlc2VudGF0aW9uVGlt
ZSgpLnRvU3RyaW5nKCkudXRmOCgpLmRhdGEoKSwKKyAgICAgICAgICAgIG1lZGlhU2FtcGxlLT5k
ZWNvZGVUaW1lKCkudG9TdHJpbmcoKS51dGY4KCkuZGF0YSgpLAorICAgICAgICAgICAgbWVkaWFT
YW1wbGUtPmR1cmF0aW9uKCkudG9TdHJpbmcoKS51dGY4KCkuZGF0YSgpLAorICAgICAgICAgICAg
bWVkaWFTYW1wbGUtPnByZXNlbnRhdGlvblNpemUoKS53aWR0aCgpLCBtZWRpYVNhbXBsZS0+cHJl
c2VudGF0aW9uU2l6ZSgpLmhlaWdodCgpKTsKIAogICAgICAgICAvLyBJZiB3ZSdyZSBiZXlvbmQg
dGhlIGR1cmF0aW9uLCBpZ25vcmUgdGhpcyBzYW1wbGUgYW5kIHRoZSByZW1haW5pbmcgb25lcy4K
ICAgICAgICAgTWVkaWFUaW1lIGR1cmF0aW9uID0gbV9tZWRpYVNvdXJjZUNsaWVudC0+ZHVyYXRp
b24oKTsKQEAgLTk0NCw2ICs5NDksMzAgQEAgR3N0Rmxvd1JldHVybiBBcHBlbmRQaXBlbGluZTo6
aGFuZGxlTmV3QXBwc2lua1NhbXBsZShHc3RFbGVtZW50KiBhcHBzaW5rKQogICAgIHJldHVybiBt
X2Zsb3dSZXR1cm47CiB9CiAKK3N0YXRpYyBHUmVmUHRyPEdzdEVsZW1lbnQ+CitjcmVhdGVPcHRp
b25hbFBhcnNlckZvckZvcm1hdChHc3RQYWQqIGRlbXV4ZXJTcmNQYWQpCit7CisgICAgR1JlZlB0
cjxHc3RDYXBzPiBwYWRDYXBzID0gYWRvcHRHUmVmKGdzdF9wYWRfZ2V0X2N1cnJlbnRfY2Fwcyhk
ZW11eGVyU3JjUGFkKSk7CisgICAgR3N0U3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBnc3RfY2Fwc19n
ZXRfc3RydWN0dXJlKHBhZENhcHMuZ2V0KCksIDApOworICAgIGNvbnN0IGNoYXIqIG1lZGlhVHlw
ZSA9IGdzdF9zdHJ1Y3R1cmVfZ2V0X25hbWUoc3RydWN0dXJlKTsKKworICAgIEdVbmlxdWVQdHI8
Y2hhcj4gZGVtdXhlclBhZE5hbWUoZ3N0X3BhZF9nZXRfbmFtZShkZW11eGVyU3JjUGFkKSk7Cisg
ICAgR1VuaXF1ZVB0cjxjaGFyPiBwYXJzZXJOYW1lKGdfc3RyZHVwX3ByaW50ZigiJXNfcGFyc2Vy
IiwgZGVtdXhlclBhZE5hbWUuZ2V0KCkpKTsKKworICAgIGlmICghZ19zdHJjbXAwKG1lZGlhVHlw
ZSwgImF1ZGlvL3gtb3B1cyIpKSB7CisgICAgICAgIEdzdEVsZW1lbnQqIG9wdXNwYXJzZSA9IGdz
dF9lbGVtZW50X2ZhY3RvcnlfbWFrZSgib3B1c3BhcnNlIiwgcGFyc2VyTmFtZS5nZXQoKSk7Cisg
ICAgICAgIFJFTEVBU0VfQVNTRVJUKG9wdXNwYXJzZSk7CisgICAgICAgIHJldHVybiBHUmVmUHRy
PEdzdEVsZW1lbnQ+KG9wdXNwYXJzZSk7CisgICAgfQorICAgIGlmICghZ19zdHJjbXAwKG1lZGlh
VHlwZSwgImF1ZGlvL3gtdm9yYmlzIikpIHsKKyAgICAgICAgR3N0RWxlbWVudCogdm9yYmlzcGFy
c2UgPSBnc3RfZWxlbWVudF9mYWN0b3J5X21ha2UoInZvcmJpc3BhcnNlIiwgcGFyc2VyTmFtZS5n
ZXQoKSk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJUKHZvcmJpc3BhcnNlKTsKKyAgICAgICAgcmV0
dXJuIEdSZWZQdHI8R3N0RWxlbWVudD4odm9yYmlzcGFyc2UpOworICAgIH0KKworICAgIHJldHVy
biBudWxscHRyOworfQorCiB2b2lkIEFwcGVuZFBpcGVsaW5lOjpjb25uZWN0RGVtdXhlclNyY1Bh
ZFRvQXBwc2lua0Zyb21BbnlUaHJlYWQoR3N0UGFkKiBkZW11eGVyU3JjUGFkKQogewogICAgIGlm
ICghbV9hcHBzaW5rKQpAQCAtOTk3LDMwICsxMDI2LDUwIEBAIHZvaWQgQXBwZW5kUGlwZWxpbmU6
OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rRnJvbUFueVRocmVhZChHc3RQYWQqIGRlbXV4
ZXJTCiAgICAgICAgIGlmICghcGFyZW50KQogICAgICAgICAgICAgZ3N0X2Jpbl9hZGQoR1NUX0JJ
TihtX3BpcGVsaW5lLmdldCgpKSwgbV9hcHBzaW5rLmdldCgpKTsKIAorICAgICAgICAvLyBDdXJy
ZW50IGhlYWQgb2YgdGhlIHBpcGVsaW5lIGJlaW5nIGJ1aWx0LgorICAgICAgICBHUmVmUHRyPEdz
dFBhZD4gY3VycmVudFNyY1BhZCA9IGRlbXV4ZXJTcmNQYWQ7CisKKyAgICAgICAgLy8gU29tZSBh
dWRpbyBmaWxlcyB1bmhlbHBmdWxseSBvbWl0IHRoZSBkdXJhdGlvbiBvZiBmcmFtZXMgaW4gdGhl
IGNvbnRhaW5lci4gV2UgbmVlZCB0byBwYXJzZQorICAgICAgICAvLyB0aGUgY29udGFpbmVkIGF1
ZGlvIHN0cmVhbXMgaW4gb3JkZXIgdG8ga25vdyB0aGUgZHVyYXRpb24gb2YgdGhlIGZyYW1lcy4K
KyAgICAgICAgLy8gVGhpcyBpcyBrbm93biB0byBiZSBhbiBpc3N1ZSB3aXRoIFlvdVR1YmUgV2Vi
TSBmaWxlcyBjb250YWluaW5nIE9wdXMgYXVkaW8gYXMgb2YgWVRUVjIwMTguCisgICAgICAgIG1f
cGFyc2VyID0gY3JlYXRlT3B0aW9uYWxQYXJzZXJGb3JGb3JtYXQoY3VycmVudFNyY1BhZC5nZXQo
KSk7CisgICAgICAgIGlmIChtX3BhcnNlcikgeworICAgICAgICAgICAgZ3N0X2Jpbl9hZGQoR1NU
X0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9wYXJzZXIuZ2V0KCkpOworICAgICAgICAgICAgZ3N0
X2VsZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudChtX3BhcnNlci5nZXQoKSk7CisKKyAgICAg
ICAgICAgIEdSZWZQdHI8R3N0UGFkPiBwYXJzZXJTaW5rUGFkID0gYWRvcHRHUmVmKGdzdF9lbGVt
ZW50X2dldF9zdGF0aWNfcGFkKG1fcGFyc2VyLmdldCgpLCAic2luayIpKTsKKyAgICAgICAgICAg
IEdSZWZQdHI8R3N0UGFkPiBwYXJzZXJTcmNQYWQgPSBhZG9wdEdSZWYoZ3N0X2VsZW1lbnRfZ2V0
X3N0YXRpY19wYWQobV9wYXJzZXIuZ2V0KCksICJzcmMiKSk7CisKKyAgICAgICAgICAgIGdzdF9w
YWRfbGluayhjdXJyZW50U3JjUGFkLmdldCgpLCBwYXJzZXJTaW5rUGFkLmdldCgpKTsKKyAgICAg
ICAgICAgIGN1cnJlbnRTcmNQYWQgPSBwYXJzZXJTcmNQYWQ7CisgICAgICAgIH0KKwogI2lmIEVO
QUJMRShFTkNSWVBURURfTUVESUEpCiAgICAgICAgIGlmIChtX2RlY3J5cHRvcikgewogICAgICAg
ICAgICAgZ3N0X29iamVjdF9yZWYobV9kZWNyeXB0b3IuZ2V0KCkpOwogICAgICAgICAgICAgZ3N0
X2Jpbl9hZGQoR1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgbV9kZWNyeXB0b3IuZ2V0KCkpOwor
ICAgICAgICAgICAgZ3N0X2VsZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudChtX2RlY3J5cHRv
ci5nZXQoKSk7CiAKICAgICAgICAgICAgIEdSZWZQdHI8R3N0UGFkPiBkZWNyeXB0b3JTaW5rUGFk
ID0gYWRvcHRHUmVmKGdzdF9lbGVtZW50X2dldF9zdGF0aWNfcGFkKG1fZGVjcnlwdG9yLmdldCgp
LCAic2luayIpKTsKLSAgICAgICAgICAgIGdzdF9wYWRfbGluayhkZW11eGVyU3JjUGFkLCBkZWNy
eXB0b3JTaW5rUGFkLmdldCgpKTsKLQogICAgICAgICAgICAgR1JlZlB0cjxHc3RQYWQ+IGRlY3J5
cHRvclNyY1BhZCA9IGFkb3B0R1JlZihnc3RfZWxlbWVudF9nZXRfc3RhdGljX3BhZChtX2RlY3J5
cHRvci5nZXQoKSwgInNyYyIpKTsKLSAgICAgICAgICAgIGdzdF9wYWRfbGluayhkZWNyeXB0b3JT
cmNQYWQuZ2V0KCksIGFwcHNpbmtTaW5rUGFkLmdldCgpKTsKLQotICAgICAgICAgICAgZ3N0X2Vs
ZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudChtX2FwcHNpbmsuZ2V0KCkpOwotICAgICAgICAg
ICAgZ3N0X2VsZW1lbnRfc3luY19zdGF0ZV93aXRoX3BhcmVudChtX2RlY3J5cHRvci5nZXQoKSk7
CiAKLSAgICAgICAgICAgIGlmIChtX3BlbmRpbmdEZWNyeXB0aW9uU3RydWN0dXJlKQotICAgICAg
ICAgICAgICAgIGRpc3BhdGNoUGVuZGluZ0RlY3J5cHRpb25TdHJ1Y3R1cmUoKTsKLSAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgIGdzdF9wYWRfbGluayhjdXJyZW50U3JjUGFkLmdldCgpLCBk
ZWNyeXB0b3JTaW5rUGFkLmdldCgpKTsKKyAgICAgICAgICAgIGN1cnJlbnRTcmNQYWQgPSBkZWNy
eXB0b3JTcmNQYWQ7CisgICAgICAgIH0KICNlbmRpZgotICAgICAgICAgICAgZ3N0X3BhZF9saW5r
KGRlbXV4ZXJTcmNQYWQsIGFwcHNpbmtTaW5rUGFkLmdldCgpKTsKLSAgICAgICAgICAgIGdzdF9l
bGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQobV9hcHBzaW5rLmdldCgpKTsKKworICAgICAg
ICBnc3RfcGFkX2xpbmsoY3VycmVudFNyY1BhZC5nZXQoKSwgYXBwc2lua1NpbmtQYWQuZ2V0KCkp
OworCisgICAgICAgIGdzdF9lbGVtZW50X3N5bmNfc3RhdGVfd2l0aF9wYXJlbnQobV9hcHBzaW5r
LmdldCgpKTsKKwogI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCi0gICAgICAgIH0KKyAgICAg
ICAgaWYgKG1fcGVuZGluZ0RlY3J5cHRpb25TdHJ1Y3R1cmUpCisgICAgICAgICAgICBkaXNwYXRj
aFBlbmRpbmdEZWNyeXB0aW9uU3RydWN0dXJlKCk7CiAjZW5kaWYKICAgICAgICAgZ3N0X2VsZW1l
bnRfc2V0X3N0YXRlKG1fcGlwZWxpbmUuZ2V0KCksIEdTVF9TVEFURV9QQVVTRUQpOworICAgICAg
ICBnc3RfZWxlbWVudF9zeW5jX3N0YXRlX3dpdGhfcGFyZW50KG1fYXBwc2luay5nZXQoKSk7CisK
KyAgICAgICAgR1NUX0RFQlVHX0JJTl9UT19ET1RfRklMRV9XSVRIX1RTKEdTVF9CSU4obV9waXBl
bGluZS5nZXQoKSksIEdTVF9ERUJVR19HUkFQSF9TSE9XX0FMTCwgIndlYmtpdC1hZnRlci1saW5r
Iik7CiAgICAgfQogfQogCkBAIC0xMDg5LDMxICsxMTM4LDI3IEBAIHZvaWQgQXBwZW5kUGlwZWxp
bmU6OmNvbm5lY3REZW11eGVyU3JjUGFkVG9BcHBzaW5rKEdzdFBhZCogZGVtdXhlclNyY1BhZCkK
ICAgICBtX3BhZEFkZFJlbW92ZUNvbmRpdGlvbi5ub3RpZnlPbmUoKTsKIH0KIAotdm9pZCBBcHBl
bmRQaXBlbGluZTo6ZGlzY29ubmVjdERlbXV4ZXJTcmNQYWRGcm9tQXBwc2lua0Zyb21BbnlUaHJl
YWQoR3N0UGFkKiBkZW11eGVyU3JjUGFkKQordm9pZCBBcHBlbmRQaXBlbGluZTo6ZGlzY29ubmVj
dERlbXV4ZXJTcmNQYWRGcm9tQXBwc2lua0Zyb21BbnlUaHJlYWQoR3N0UGFkKikKIHsKLSAgICAv
LyBNdXN0IGJlIGRvbmUgaW4gdGhlIHRocmVhZCB3ZSB3ZXJlIGNhbGxlZCBmcm9tICh1c3VhbGx5
IHN0cmVhbWluZyB0aHJlYWQpLgotICAgIGlmICghZ3N0X3BhZF9pc19saW5rZWQoZGVtdXhlclNy
Y1BhZCkpIHsKLSAgICAgICAgZ3Vsb25nIHByb2JlSWQgPSBHUE9JTlRFUl9UT19VTE9ORyhnX29i
amVjdF9nZXRfZGF0YShHX09CSkVDVChkZW11eGVyU3JjUGFkKSwgImJsYWNrSG9sZVByb2JlSWQi
KSk7Ci0gICAgICAgIGlmIChwcm9iZUlkKSB7Ci0gICAgICAgICAgICBHU1RfREVCVUcoIkRpc2Nv
bm5lY3RpbmcgYmxhY2sgaG9sZSBwcm9iZS4iKTsKLSAgICAgICAgICAgIGdfb2JqZWN0X3NldF9k
YXRhKEdfT0JKRUNUKGRlbXV4ZXJTcmNQYWQpLCAiYmxhY2tIb2xlUHJvYmVJZCIsIG51bGxwdHIp
OwotICAgICAgICAgICAgZ3N0X3BhZF9yZW1vdmVfcHJvYmUoZGVtdXhlclNyY1BhZCwgcHJvYmVJ
ZCk7Ci0gICAgICAgIH0gZWxzZQotICAgICAgICAgICAgR1NUX1dBUk5JTkcoIk5vdCBkaXNjb25u
ZWN0aW5nIGRlbXV4ZXIgc3JjIHBhZCBiZWNhdXNlIGl0IHdhc24ndCBsaW5rZWQiKTsKLSAgICAg
ICAgcmV0dXJuOwotICAgIH0KKyAgICBHU1RfREVCVUdfQklOX1RPX0RPVF9GSUxFX1dJVEhfVFMo
R1NUX0JJTihtX3BpcGVsaW5lLmdldCgpKSwgR1NUX0RFQlVHX0dSQVBIX1NIT1dfQUxMLCAicGFk
LXJlbW92ZWQtYmVmb3JlIik7CiAKICAgICBHU1RfREVCVUcoIkRpc2Nvbm5lY3RpbmcgYXBwc2lu
ayIpOwogCiAjaWYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKICAgICBpZiAobV9kZWNyeXB0b3Ip
IHsKLSAgICAgICAgZ3N0X2VsZW1lbnRfdW5saW5rKG1fZGVjcnlwdG9yLmdldCgpLCBtX2FwcHNp
bmsuZ2V0KCkpOwotICAgICAgICBnc3RfZWxlbWVudF91bmxpbmsobV9kZW11eC5nZXQoKSwgbV9k
ZWNyeXB0b3IuZ2V0KCkpOwogICAgICAgICBnc3RfZWxlbWVudF9zZXRfc3RhdGUobV9kZWNyeXB0
b3IuZ2V0KCksIEdTVF9TVEFURV9OVUxMKTsKICAgICAgICAgZ3N0X2Jpbl9yZW1vdmUoR1NUX0JJ
TihtX3BpcGVsaW5lLmdldCgpKSwgbV9kZWNyeXB0b3IuZ2V0KCkpOwotICAgIH0gZWxzZQorICAg
ICAgICBtX2RlY3J5cHRvciA9IG51bGxwdHI7CisgICAgfQogI2VuZGlmCi0gICAgICAgIGdzdF9l
bGVtZW50X3VubGluayhtX2RlbXV4LmdldCgpLCBtX2FwcHNpbmsuZ2V0KCkpOworCisgICAgaWYg
KG1fcGFyc2VyKSB7CisgICAgICAgIGdzdF9lbGVtZW50X3NldF9zdGF0ZShtX3BhcnNlci5nZXQo
KSwgR1NUX1NUQVRFX05VTEwpOworICAgICAgICBnc3RfYmluX3JlbW92ZShHU1RfQklOKG1fcGlw
ZWxpbmUuZ2V0KCkpLCBtX3BhcnNlci5nZXQoKSk7CisgICAgICAgIG1fcGFyc2VyID0gbnVsbHB0
cjsKKyAgICB9CisKKyAgICBHU1RfREVCVUdfQklOX1RPX0RPVF9GSUxFX1dJVEhfVFMoR1NUX0JJ
TihtX3BpcGVsaW5lLmdldCgpKSwgR1NUX0RFQlVHX0dSQVBIX1NIT1dfQUxMLCAicGFkLXJlbW92
ZWQtYWZ0ZXIiKTsKIH0KIAogI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL0FwcGVuZFBp
cGVsaW5lLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNl
L0FwcGVuZFBpcGVsaW5lLmgKaW5kZXggMjVjYjNiZWQ1NDE2MzMwOTViMWNmZTYzMDJiZTE0YjQx
NTI0NTI0Mi4uZjI4OTM1YTA2YzgzMGY4NzcxOTRhNDEyMzAzYmEzN2ZiNDEyZTNjMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9BcHBl
bmRQaXBlbGluZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJl
YW1lci9tc2UvQXBwZW5kUGlwZWxpbmUuaApAQCAtMTE4LDYgKzExOCw3IEBAIHByaXZhdGU6CiAg
ICAgR1JlZlB0cjxHc3RCdXM+IG1fYnVzOwogICAgIEdSZWZQdHI8R3N0RWxlbWVudD4gbV9hcHBz
cmM7CiAgICAgR1JlZlB0cjxHc3RFbGVtZW50PiBtX2RlbXV4OworICAgIEdSZWZQdHI8R3N0RWxl
bWVudD4gbV9wYXJzZXI7IC8vIE9wdGlvbmFsLgogI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEp
CiAgICAgR1JlZlB0cjxHc3RFbGVtZW50PiBtX2RlY3J5cHRvcjsKICNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9HU3RyZWFt
ZXJNZWRpYVNhbXBsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3Ry
ZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcAppbmRleCAyMjlkZWZhYWQzMDhkNDg1
M2ExMDEzNGU0ZWE3OTdmM2IyMmMxMjdhLi4yOTUxMDAzNGE2ODAwOTg3ZWIzNDk4NjVlY2Y2YmRj
M2ZmZGQ0ZjY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9n
c3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lck1lZGlhU2FtcGxlLmNw
cApAQCAtNTIsOCArNTIsOCBAQCBHU3RyZWFtZXJNZWRpYVNhbXBsZTo6R1N0cmVhbWVyTWVkaWFT
YW1wbGUoR3N0U2FtcGxlKiBzYW1wbGUsIGNvbnN0IEZsb2F0U2l6ZSYgcAogCiAgICAgaWYgKEdT
VF9CVUZGRVJfUFRTX0lTX1ZBTElEKGJ1ZmZlcikpCiAgICAgICAgIG1fcHRzID0gY3JlYXRlTWVk
aWFUaW1lKEdTVF9CVUZGRVJfUFRTKGJ1ZmZlcikpOwotICAgIGlmIChHU1RfQlVGRkVSX0RUU19J
U19WQUxJRChidWZmZXIpKQotICAgICAgICBtX2R0cyA9IGNyZWF0ZU1lZGlhVGltZShHU1RfQlVG
RkVSX0RUUyhidWZmZXIpKTsKKyAgICBpZiAoR1NUX0JVRkZFUl9EVFNfSVNfVkFMSUQoYnVmZmVy
KSB8fCBHU1RfQlVGRkVSX1BUU19JU19WQUxJRChidWZmZXIpKQorICAgICAgICBtX2R0cyA9IGNy
ZWF0ZU1lZGlhVGltZShHU1RfQlVGRkVSX0RUU19PUl9QVFMoYnVmZmVyKSk7CiAgICAgaWYgKEdT
VF9CVUZGRVJfRFVSQVRJT05fSVNfVkFMSUQoYnVmZmVyKSkKICAgICAgICAgbV9kdXJhdGlvbiA9
IGNyZWF0ZU1lZGlhVGltZShHU1RfQlVGRkVSX0RVUkFUSU9OKGJ1ZmZlcikpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL1BsYXli
YWNrUGlwZWxpbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVh
bWVyL21zZS9QbGF5YmFja1BpcGVsaW5lLmNwcAppbmRleCBiZDM0ZTQ1NzA3YWZiZGIyMDQwMDQz
N2IxNzgwZDJkODEzNTRjOGE0Li43ZTYwNjk0OTIyZWE0MzI2ZmM5ZWNjYjZlYjU3OGQzZjEzYTBi
OWUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFt
ZXIvbXNlL1BsYXliYWNrUGlwZWxpbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvUGxheWJhY2tQaXBlbGluZS5jcHAKQEAgLTIzNSw3ICsy
MzUsMTAgQEAgdm9pZCBQbGF5YmFja1BpcGVsaW5lOjphdHRhY2hUcmFjayhSZWZQdHI8U291cmNl
QnVmZmVyUHJpdmF0ZUdTdHJlYW1lcj4gc291cmNlQnUKIAogICAgICAgICBwYWQgPSBhZG9wdEdS
ZWYoZ3N0X2VsZW1lbnRfZ2V0X3N0YXRpY19wYWQocGFyc2VyLCAic3JjIikpOwogICAgICAgICBn
c3RfZWxlbWVudF9hZGRfcGFkKHN0cmVhbS0+cGFyc2VyLCBnc3RfZ2hvc3RfcGFkX25ldygic3Jj
IiwgcGFkLmdldCgpKSk7Ci0gICAgfSBlbHNlIGlmICghZ19zdHJjbXAwKG1lZGlhVHlwZSwgInZp
ZGVvL3gtdnA5IikpCisgICAgfSBlbHNlIGlmICghZ19zdHJjbXAwKG1lZGlhVHlwZSwgInZpZGVv
L3gtdnA4IikKKyAgICAgICAgfHwgIWdfc3RyY21wMChtZWRpYVR5cGUsICJ2aWRlby94LXZwOSIp
CisgICAgICAgIHx8ICFnX3N0cmNtcDAobWVkaWFUeXBlLCAiYXVkaW8veC1vcHVzIikKKyAgICAg
ICAgfHwgIWdfc3RyY21wMChtZWRpYVR5cGUsICJhdWRpby94LXZvcmJpcyIpKQogICAgICAgICBz
dHJlYW0tPnBhcnNlciA9IG51bGxwdHI7CiAgICAgZWxzZSB7CiAgICAgICAgIEdTVF9FUlJPUl9P
QkpFQ1Qoc3RyZWFtLT5wYXJlbnQsICJVbnN1cHBvcnRlZCBtZWRpYSBmb3JtYXQ6ICVzIiwgbWVk
aWFUeXBlKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCBkNDRiNWM2NzFkMDYzZjRmZmRjYmE1YTM3OGZkNTU1ZTY3MmY5ZmU4
Li40MjQ5ZDExMTc1NjgyOTMxYTI3YjRhOTgzNmZjYTEwZDg0ZGMyNmIwIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMjUgQEAKKzIwMTctMTAtMTEgIEFsaWNpYSBCb3lhIEdhcmPDrWEgIDxhYm95YUBpZ2FsaWEu
Y29tPgorCisgICAgICAgIFtNU0VdW0dTdHJlYW1lcl0gSW5zZXJ0IHBhcnNlciBlbGVtZW50cyBp
biBBcHBlbmRQaXBlbGluZSB3aGVuIGRlbXV4aW5nIG9wdXMgb3IgVm9yYmlzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgwNzYKKworICAgICAgICBS
ZXZpZXdlZCBieSBYYWJpZXIgUm9kcmlndWV6LUNhbHZhci4KKworICAgICAgICBZb3VUdWJlIGRv
ZXMgbm90IGluY2x1ZGUgZHVyYXRpb25zIGluIHRoZSBXZWJNIGNvbnRhaW5lciBmb3IgZmlsZXMK
KyAgICAgICAgY29udGFpbmluZyBPcHVzIGF1ZGlvLCBzbyB3ZSBuZWVkIHRvIHJlYWQgdGhlbSBm
cm9tIHRoZSBjb250YWluZWQKKyAgICAgICAgc3RyZWFtLiBGb3J0dW5hdGVseSwgR1N0cmVhbWVy
IGhhcyBhbiBlbGVtZW50IHRvIGRvIHRoYXQ6IG9wdXNwYXJzZS4KKworICAgICAgICBUaGUgc2Ft
ZSB0aGluZyBoYXBwZW5zIHdpdGggVm9yYmlzIGNvbnRhaW5lZCBpbiBXZWJNIGZpbGVzIGZyb20g
dGhlCisgICAgICAgIFczQyB0ZXN0cywgd2hpY2ggc2hvdWxkIGFsc28gYmUgZml4ZWQgYnkgdGhl
IEdTdHJlYW1lciBlbGVtZW50CisgICAgICAgIHZvcmJpc3BhcnNlLgorCisgICAgICAgIFRoaXMg
cGF0Y2ggYWRkcyBhbiBvcHVzcGFyc2Ugb3Igdm9yYmlzcGFyc2UgZWxlbWVudCB0byB0aGUKKyAg
ICAgICAgQXBwZW5kUGlwZWxpbmUgYXQgdGhlIHNpbmtwYWQgb2YgdGhlIGRlbXV4ZXIgd2hlbiBl
aXRoZXIgaXMgZm91bmQuCisKKyAgICAgICAgVGVzdHM6IHVwZGF0ZWQgZXhwZWN0YXRpb25zLgor
CisgICAgICAgICogcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMTctMTAtMTYg
IFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgT24gVG9U
LCBldmVudC5kYXRhVHJhbnNmZXIuZ2V0RGF0YSgidGV4dC91cmktbGlzdCIpIHJldHVybnMgYW4g
ZW1wdHkgc3RyaW5nIHdoZW4gZHJhZ2dpbmcgYW4gaW1hZ2UKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Z3RrL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggOWZkZWNlY2ExODQ1NmU5YjQ1NjZiZWUzMDFkN2Nh
OTAzYjE2ZTA4My4uMWJiMDNiMWNlMzcyNjBhYTM2NWIyMTVmNDc3NDJhMTExMzliYjFkMiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIyOCwxMiArMjI4
LDkgQEAgd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1hcHAKIHdlYmtpdC5vcmcvYi8xNjcxMDggaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2UtYXZ0cmFj
a3MuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1idWZmZXJlZC5odG1sIFsg
RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Utd2VibS1hLWJpdHJh
dGUuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdl
Ym0tYXYtYXVkaW8tYml0cmF0ZS5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTY3MTA4
IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNl
LWNvbmZpZy1jaGFuZ2Utd2VibS1hdi1mcmFtZXNpemUuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0
Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJj
ZS9tZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdlYm0tYXYtdmlkZW8tYml0cmF0ZS5odG1sIFsg
RmFpbHVyZSBdCi13ZWJraXQub3JnL2IvMTY3MTA4IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvbWVkaWEtc291cmNlL21lZGlhc291cmNlLWNvbmZpZy1jaGFuZ2Utd2VibS12LWJpdHJh
dGUuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25maWctY2hhbmdlLXdl
Ym0tdi1mcmFtZXJhdGUuaHRtbCBbIEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE2NzEwOCBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRpYXNvdXJjZS1jb25m
aWctY2hhbmdlLXdlYm0tdi1mcmFtZXNpemUuaHRtbCBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9i
LzE2NzEwOCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhLXNvdXJjZS9tZWRp
YXNvdXJjZS1jb25maWctY2hhbmdlLXdlYm0tdi1mcmFtZXNpemUuaHRtbCBbIEZhaWx1cmUgUGFz
cyBdCiAjIENyYXNoIGlzIHdlYmtpdC5vcmcvYi8xNzYwMjAKIHdlYmtpdC5vcmcvYi8xNjcxMDgg
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYS1zb3VyY2UvbWVkaWFzb3VyY2Ut
ZHVyYXRpb24uaHRtbCBbIEZhaWx1cmUgQ3Jhc2ggXQogIyBDcmFzaCBpbiBidWcgIzE3NjAxOQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>