<?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>130891</bug_id>
          
          <creation_ts>2014-03-28 02:42:22 -0700</creation_ts>
          <short_desc>[CSS Blending] Blending doesn&apos;t work if the parent stacking context is not a self painting layer</short_desc>
          <delta_ts>2014-05-07 22:42:55 -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>CSS</component>
          <version>528+ (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>
          
          <blocked>95614</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ion Rosca">rosca</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>WebkitBugTracker</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>995278</commentid>
    <comment_count>0</comment_count>
    <who name="Ion Rosca">rosca</who>
    <bug_when>2014-03-28 02:42:22 -0700</bug_when>
    <thetext>Blending does not work if its parent, being also the stacking context that isolates blending, is a normal flow only element.

The consequence for software blending is that the parent element cannot create the transparencyLayer because it&apos;s not a self painting layer, and for accelerated blending the parent cannot become accelerated for the same reason.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>995279</commentid>
    <comment_count>1</comment_count>
      <attachid>228032</attachid>
    <who name="Ion Rosca">rosca</who>
    <bug_when>2014-03-28 02:46:53 -0700</bug_when>
    <thetext>Created attachment 228032
failing use case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>998529</commentid>
    <comment_count>2</comment_count>
      <attachid>228828</attachid>
    <who name="Ion Rosca">rosca</who>
    <bug_when>2014-04-08 04:38:26 -0700</bug_when>
    <thetext>Created attachment 228828
patch #1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>998531</commentid>
    <comment_count>3</comment_count>
    <who name="Ion Rosca">rosca</who>
    <bug_when>2014-04-08 04:39:49 -0700</bug_when>
    <thetext>The patch #1 is based on the patch submitted for this bug: https://bugs.webkit.org/show_bug.cgi?id=130892</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1001525</commentid>
    <comment_count>4</comment_count>
      <attachid>228828</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2014-04-17 04:00:38 -0700</bug_when>
    <thetext>Comment on attachment 228828
patch #1

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

&gt; Source/WebCore/ChangeLog:11
&gt; +        The stacking context layers having unisolated blending descendants should be able to create

I guess you are referring to stacking content layers in normal flow here.

&gt; Source/WebCore/ChangeLog:21
&gt; +        There is another affected flag for ancestors (A) of the isolating stacking context layer S:

What is this comment about?

&gt; Source/WebCore/ChangeLog:29
&gt; +        (WebCore::RenderLayer::updateDescendantDependentFlags): turning off the isSelfPaintgLayer flag.

isSelfPaintgLayer -&gt; isSelfPaintingLayer

&gt; LayoutTests/ChangeLog:3
&gt; +        [CSS Blending] Blending doesn&apos;t work if the parent stacking context is a normal flow only element

I would like to see tests in which this behaviour- transitioning between normal flow only and self painting layer - is dynamically tested. For the layout tests, please make sure you have the right indentation.

&gt; LayoutTests/css3/compositing/blend-mode-accelerated-parent-overflow-hidden-transparent.html:13
&gt; +		margin-left: 10px;

Why do you need this?

&gt; LayoutTests/css3/compositing/blend-mode-accelerated-parent-overflow-hidden-transparent.html:26
&gt; +&lt;p&gt;This test checks that accelerated blending has no effect when the backdrop is a transparent normal flow only layer.&lt;/p&gt;

Please add a line here in which you describe what success looks like when you run the test manually. For instance:
&lt;p&gt;On success you should see a green rectangle below.&lt;/p&gt;

&gt; LayoutTests/css3/compositing/blend-mode-parent-overflow-hidden.html:22
&gt; +&lt;p&gt;This test checks that software blending has no effect when the backdrop is a transparent normal flow only layer.&lt;/p&gt;

Same as above, please add a note about how success looks like when you manually load this test into a browser.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1004556</commentid>
    <comment_count>5</comment_count>
      <attachid>230293</attachid>
    <who name="Ion Rosca">rosca</who>
    <bug_when>2014-04-28 05:30:47 -0700</bug_when>
    <thetext>Created attachment 230293
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1004937</commentid>
    <comment_count>6</comment_count>
      <attachid>230376</attachid>
    <who name="Ion Rosca">rosca</who>
    <bug_when>2014-04-29 07:29:32 -0700</bug_when>
    <thetext>Created attachment 230376
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1005032</commentid>
    <comment_count>7</comment_count>
      <attachid>230376</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-04-29 11:20:03 -0700</bug_when>
    <thetext>Comment on attachment 230376
Patch

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

&gt; Source/WebCore/rendering/RenderLayer.cpp:825
&gt; +    if (m_hasUnisolatedBlendingDescendantsStatusDirty) {

Do an early return instead of having the whole body indented.

&gt; Source/WebCore/rendering/RenderLayerCompositor.cpp:1108
&gt; +#if ENABLE(CSS_COMPOSITING)
&gt; +    layer.updateIsolationForBlendingDescendantsIfNeeded();
&gt; +#endif
&gt;      layer.updateDescendantDependentFlags();

Can layer.updateIsolationForBlendingDescendantsIfNeeded() be rolled into layer.updateDescendantDependentFlags()? That would avoid adding an extra child walk.

&gt; Source/WebCore/rendering/RenderLayerModelObject.cpp:157
&gt; +#if ENABLE(CSS_COMPOSITING)
&gt; +        if (oldStyle-&gt;hasBlendMode())
&gt; +            layer()-&gt;parent()-&gt;dirtyAncestorChainHasBlendingDescendants();
&gt; +#endif

Can&apos;t we do this in RenderLayer::styleChanged()?

&gt; LayoutTests/ChangeLog:19
&gt; +        * css3/compositing/blend-mode-isolation-accelerated-overflow-hidden-expected.txt: Added.
&gt; +        * css3/compositing/blend-mode-isolation-accelerated-overflow-hidden.html: Added.
&gt; +        * css3/compositing/blend-mode-isolation-overflow-hidden-expected.html: Added.
&gt; +        * css3/compositing/blend-mode-isolation-overflow-hidden.html: Added.
&gt; +        * css3/compositing/blend-mode-isolation-turn-off-self-painting-layer-expected.txt: Added.
&gt; +        * css3/compositing/blend-mode-isolation-turn-off-self-painting-layer.html: Added.
&gt; +        * css3/compositing/blend-mode-isolation-turn-off-self-painting-layer1-expected.txt: Added.
&gt; +        * css3/compositing/blend-mode-isolation-turn-off-self-painting-layer1.html: Added.
&gt; +        * css3/compositing/blend-mode-isolation-turn-off-self-painting-layer2-expected.txt: Added.
&gt; +        * css3/compositing/blend-mode-isolation-turn-off-self-painting-layer2.html: Added.
&gt; +        * css3/compositing/blend-mode-isolation-turn-on-self-painting-layer-expected.txt: Added.
&gt; +        * css3/compositing/blend-mode-isolation-turn-on-self-painting-layer.html: Added.

Can we make these ref tests please?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1005109</commentid>
    <comment_count>8</comment_count>
      <attachid>230417</attachid>
    <who name="Ion Rosca">rosca</who>
    <bug_when>2014-04-29 14:22:08 -0700</bug_when>
    <thetext>Created attachment 230417
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1005118</commentid>
    <comment_count>9</comment_count>
      <attachid>230376</attachid>
    <who name="Ion Rosca">rosca</who>
    <bug_when>2014-04-29 14:34:34 -0700</bug_when>
    <thetext>Comment on attachment 230376
Patch

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

&gt;&gt; Source/WebCore/rendering/RenderLayerCompositor.cpp:1108
&gt;&gt;      layer.updateDescendantDependentFlags();
&gt; 
&gt; Can layer.updateIsolationForBlendingDescendantsIfNeeded() be rolled into layer.updateDescendantDependentFlags()? That would avoid adding an extra child walk.

Done. I had to change some code for the other flags, but not the logic.

&gt;&gt; Source/WebCore/rendering/RenderLayerModelObject.cpp:157
&gt;&gt; +#endif
&gt; 
&gt; Can&apos;t we do this in RenderLayer::styleChanged()?

On this branch RenderLayer is going to be removed for this RenderObject and RenderLayer::styleChanged will never get called.

&gt;&gt; LayoutTests/ChangeLog:19
&gt;&gt; +        * css3/compositing/blend-mode-isolation-turn-on-self-painting-layer.html: Added.
&gt; 
&gt; Can we make these ref tests please?

It&apos;s hard to make ref tests for blending. There is a bug regarding wrong color results: https://bugs.webkit.org/show_bug.cgi?id=130582 and we don&apos;t really know what colors to expect. The blending output colors have slightly diferrent  on retina vs non retina displays and among OS versions. I think layer tree is the more appropriate way to test isolation, because isolation flag is also dumped in RenderTreeAsText.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1005138</commentid>
    <comment_count>10</comment_count>
      <attachid>230417</attachid>
    <who name="Ion Rosca">rosca</who>
    <bug_when>2014-04-29 14:57:32 -0700</bug_when>
    <thetext>Comment on attachment 230417
Patch

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

&gt; Source/WebCore/rendering/RenderLayer.cpp:1129
&gt;                  break;

We can optimize this descendant walk in updateDescendantDependentFlags by leaving the loop if just dirty flags are set, not all of them. Also, we can skip entering updateDescendantDependentFlags() on a child if some conditions are met. For example if we know that a child has blendMode, we are not interested if it has other descendants with blend modes; if a child is self painting layer, we are not interested if it has descendants with that property. I can address this in a follow up patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006889</commentid>
    <comment_count>11</comment_count>
      <attachid>230417</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2014-05-06 01:25:48 -0700</bug_when>
    <thetext>Comment on attachment 230417
Patch

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

The final review should definitely be done by someone with more insight. In general, the patch looks good to me. Some snippets.

&gt; Source/WebCore/ChangeLog:27
&gt; +        When hasUnisolatedBlendingDescendants gets set we make sure that isSelfPaintingLayer flag is set too.

I think it looks better to replace Unisolated with NotIsolated . Seems easier to read.

&gt; Source/WebCore/ChangeLog:34
&gt; +        This change should not affect the logics behind the other flags.

I hope our test coverage is good enough to assume that.

&gt; Source/WebCore/ChangeLog:39
&gt; +        Changing isolatesBlending() to check isStackingContext() first, this will avoid
&gt; +        the assertion in hasUnisolatedBlendingDescendants() for non-stacking context elements.

Wow, there should probably a comment in RenderLayer.h to warn others.

&gt;&gt; Source/WebCore/rendering/RenderLayer.cpp:1129
&gt;&gt;                  break;
&gt; 
&gt; We can optimize this descendant walk in updateDescendantDependentFlags by leaving the loop if just dirty flags are set, not all of them. Also, we can skip entering updateDescendantDependentFlags() on a child if some conditions are met. For example if we know that a child has blendMode, we are not interested if it has other descendants with blend modes; if a child is self painting layer, we are not interested if it has descendants with that property. I can address this in a follow up patch.

Can/Should it be done before this patch then? To be honest, I am not really into the code to judge.


After reading though the code again, I think it is fine to do this in a second patch afterwards.

&gt; Source/WebCore/rendering/RenderLayer.h:805
&gt; +    bool isolatesBlending() const { return isStackingContext() &amp;&amp; hasUnisolatedBlendingDescendants(); }

Please put a comment why it is necessary to do that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006912</commentid>
    <comment_count>12</comment_count>
      <attachid>230417</attachid>
    <who name="Ion Rosca">rosca</who>
    <bug_when>2014-05-06 04:30:15 -0700</bug_when>
    <thetext>Comment on attachment 230417
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:27
&gt;&gt; +        When hasUnisolatedBlendingDescendants gets set we make sure that isSelfPaintingLayer flag is set too.
&gt; 
&gt; I think it looks better to replace Unisolated with NotIsolated . Seems easier to read.

Ok.

&gt;&gt; Source/WebCore/ChangeLog:39
&gt;&gt; +        the assertion in hasUnisolatedBlendingDescendants() for non-stacking context elements.
&gt; 
&gt; Wow, there should probably a comment in RenderLayer.h to warn others.

Actually I think we should remove the ASSERT from hasUnisolatedBlendingDescendants() for now. I still hit it in some circumstances and I&apos;ve heard other people complaining about that too. Asserts have been removed for the other flags as well (see comments in RenderLayer.h: https://bugs.webkit.org/show_bug.cgi?id=71044).
I hit this assertion mostly on minibrowser and in layout tests. On safari flags are updated correctly after changing the style because computeCompositingRequirements calls updateDescendantDependentFlags.

We need a generic mechanism for updating all types of dirty flags on ancestors after the style gets changed and turn the asserts back on. I will remove this change and I&apos;ll comment the assert, addressing the issue #71044 with another patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006945</commentid>
    <comment_count>13</comment_count>
      <attachid>230903</attachid>
    <who name="Ion Rosca">rosca</who>
    <bug_when>2014-05-06 07:03:16 -0700</bug_when>
    <thetext>Created attachment 230903
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1007425</commentid>
    <comment_count>14</comment_count>
      <attachid>230903</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2014-05-07 13:58:51 -0700</bug_when>
    <thetext>Comment on attachment 230903
Patch

&quot;LGTM&quot; - but please give smfr a chance to reject my review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1007426</commentid>
    <comment_count>15</comment_count>
      <attachid>230903</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-05-07 14:01:03 -0700</bug_when>
    <thetext>Comment on attachment 230903
Patch

Looks fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1007533</commentid>
    <comment_count>16</comment_count>
      <attachid>230903</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-05-07 22:42:50 -0700</bug_when>
    <thetext>Comment on attachment 230903
Patch

Clearing flags on attachment: 230903

Committed r168462: &lt;http://trac.webkit.org/changeset/168462&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1007534</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-05-07 22:42:55 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>228032</attachid>
            <date>2014-03-28 02:46:53 -0700</date>
            <delta_ts>2014-03-28 02:46:53 -0700</delta_ts>
            <desc>failing use case</desc>
            <filename>blend-mode-parent-overflow-hidden.html</filename>
            <type>text/html</type>
            <size>507</size>
            <attacher name="Ion Rosca">rosca</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIEhUTUw+Cgo8c3R5bGU+CgkucGFyZW50IHsKCQl3aWR0aDogMTAwcHg7CgkJaGVp
Z2h0OiAxMDBweDsKCQlvdmVyZmxvdzpoaWRkZW47CgkJaXNvbGF0aW9uOmlzb2xhdGU7CgkJLXdl
YmtpdC1pc29sYXRpb246aXNvbGF0ZTsKCX0KCgkuYmxlbmRlciB7CgkJbWFyZ2luLWxlZnQ6IDEw
cHg7CgkJd2lkdGg6IDQwMHB4OwoJCWhlaWdodDogMjBweDsKCQliYWNrZ3JvdW5kOiByZ2IoMCwg
MjU1LCAwKTsKCQktd2Via2l0LW1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlOwoJCW1peC1ibGVu
ZC1tb2RlOiBkaWZmZXJlbmNlOwoJfQo8L3N0eWxlPgoKPCEtLSA8cD5UaGlzIHRlc3QgY2hlY2tz
IHRoYXQgc29mdHdhcmUgYmxlbmRpbmcgaGFzIG5vIGVmZmVjdCB3aGVuIHRoZSBiYWNrZHJvcCBp
cyBhIHRyYW5zcGFyZW50IG5vcm1hbCBmbG93IG9ubHkgbGF5ZXIuPC9wPiAtLT4KPGRpdiBjbGFz
cz0icGFyZW50Ij4KICAgIDxkaXYgY2xhc3M9ImJsZW5kZXIiPjwvZGl2Pgo8L2Rpdj4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>228828</attachid>
            <date>2014-04-08 04:38:26 -0700</date>
            <delta_ts>2014-04-28 05:30:39 -0700</delta_ts>
            <desc>patch #1</desc>
            <filename>bug-130891-20140408143805.patch</filename>
            <type>text/plain</type>
            <size>8558</size>
            <attacher name="Ion Rosca">rosca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY2OTE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjJhMmMxNDcyMmYwNTU1
ZGJiYWJkYWU0MGY5NzZmZDFjOWVlZjQyYS4uMmU3ODQ2Yzc5ODg5ZDZkZTY3YzJmMmZjYmE4NzE5
OTRmZjFiMDUzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM2IEBACiAyMDE0LTA0LTA4ICBJb24g
Um9zY2EgIDxyb3NjYUBhZG9iZS5jb20+CiAKKyAgICAgICAgW0NTUyBCbGVuZGluZ10gQmxlbmRp
bmcgZG9lc24ndCB3b3JrIGlmIHRoZSBwYXJlbnQgc3RhY2tpbmcgY29udGV4dCBpcyBhIG5vcm1h
bCBmbG93IG9ubHkgZWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTMwODkxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGVzdHM6IGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1hY2NlbGVyYXRl
ZC1wYXJlbnQtb3ZlcmZsb3ctaGlkZGVuLXRyYW5zcGFyZW50Lmh0bWwKKyAgICAgICAgICAgICAg
IGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1wYXJlbnQtb3ZlcmZsb3ctaGlkZGVuLmh0bWwK
KworICAgICAgICBUaGUgc3RhY2tpbmcgY29udGV4dCBsYXllcnMgaGF2aW5nIHVuaXNvbGF0ZWQg
YmxlbmRpbmcgZGVzY2VuZGFudHMgc2hvdWxkIGJlIGFibGUgdG8gY3JlYXRlCisgICAgICAgIHRy
YW5zcGFyZW5jeSBsYXllcnMgb3IgdG8gYmVjb21lIGNvbXBvc2l0ZWQgaW4gb3JkZXIgdG8gcmVz
dHJpY3QgYmxlbmRpbmcgY29udGVudCB0bworICAgICAgICBhY2Nlc3NpbmcgdGhlIGluZm9ybWF0
aW9uIG91dHNpZGUgdGhlIGN1cnJlbnQgc3RhY2tpbmcgY29udGV4dC4KKyAgICAgICAgVGhlIHNv
bHV0aW9uIGluIHRoaXMgcGF0Y2ggaXMgdG8gYWRkIHRoZSBpc29sYXRlc0JsZW5kaW5nKCkgY29u
ZGl0aW9uIHRvIHNob3VsZEJlU2VsZlBhaW50aW5nTGF5ZXIoKSBjaGVjay4KKworICAgICAgICBX
aGVuIHR1cm5pbmcgb24gYmxlbmQgbW9kZSBwcm9wZXJ0eSBmb3IgYSBsYXllciBCLCB0aGUgYW5j
ZXN0b3Igc3RhY2tpbmcgY29udGV4dCBsYXllciBTIHdpbGwKKyAgICAgICAgc3RhcnQgaXNvbGF0
aW5nIGJsZW5kaW5nIGFuZCBTIHdpbGwgc3RhcnQgYmVpbmcgKGlmIGl0J3Mgbm90IGFscmVhZHkp
IGEgc2VsZiBwYWludGluZyBsYXllci4KKyAgICAgICAgV2hlbiBibGVuZGluZyBpcyB0dXJuZWQg
b2ZmIGZvciBCLCB0aGUgYW5jZXN0b3IgUyB3aWxsIGJlIG1hcmtlZCBhcyBkaXJ0eSBmb3IgaXNv
bGF0aW9uIAorICAgICAgICBhbmQgd2hlbiBpdCBnZXRzIHJlY29tcHV0ZWQsIHRoZSBzZWxmIHBh
aW50aW5nIHN0YXR1cyB3aWxsIGJlIHR1cm5lZCBvZmYgYXMgd2VsbC4KKworICAgICAgICBUaGVy
ZSBpcyBhbm90aGVyIGFmZmVjdGVkIGZsYWcgZm9yIGFuY2VzdG9ycyAoQSkgb2YgdGhlIGlzb2xh
dGluZyBzdGFja2luZyBjb250ZXh0IGxheWVyIFM6CisgICAgICAgIGhhc1NlbGZQYWludGluZ0xh
eWVyRGVzY2VuZGFudHMsIHdpY2ggaXMgZGlydGllZCB3aGVuIHRoZSBzZWxmIHBhaW50aW5nIHN0
YXR1cworICAgICAgICBpcyB0dXJuZWQgb2ZmIG9uIFMuIFRoaXMgZmxhZyByZW1haW5zIGluIGEg
ZGlydHkgc3RhdGUgaW4gdGhpcyBjYXNlIGJlY2F1c2UgaXQgZGVwZW5kcyBvbgorICAgICAgICBh
bm90aGVyIGRlc2NlbmRhbnQgZGVwZW5kZW50IGZsYWcgLSBpc29sYXRpb24sIGFuZCB1cGRhdGVE
ZXNjZW5kYW50RGVwZW5kZW50RmxhZ3MoKSBpcyBjYWxsZWQKKyAgICAgICAgb24gYSBsYXllciBi
ZWZvcmUgY2FsbGluZyBpdCBvbiBpdHMgZGVzY2VuZGFudHMuCisKKyAgICAgICAgKiByZW5kZXJp
bmcvUmVuZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OnVwZGF0
ZUFuY2VzdG9yQ2hhaW5IYXNCbGVuZGluZ0Rlc2NlbmRhbnRzKTogdHVybmluZyBvbiB0aGUgaXNT
ZWxmUGFpbnRpbmdMYXllciBmbGFnCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6dXBk
YXRlRGVzY2VuZGFudERlcGVuZGVudEZsYWdzKTogdHVybmluZyBvZmYgdGhlIGlzU2VsZlBhaW50
Z0xheWVyIGZsYWcuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6c2hvdWxkQmVTZWxm
UGFpbnRpbmdMYXllcik6IGFkZGluZyB0aGUgaXNvbGF0ZXNCbGVuZGluZygpIGRpc2p1bmN0aW9u
LgorCisyMDE0LTA0LTA4ICBJb24gUm9zY2EgIDxyb3NjYUBhZG9iZS5jb20+CisKICAgICAgICAg
W0NTUyBCbGVuZGluZ10gSXNvbGF0aW9uIGRlc2NlbmRhbnQgZGVwZW5kZW50IGZsYWdzIGFyZSBu
b3QgdXBkYXRlZCBjb3JyZWN0bHkKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEzMDg5MgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVy
LmNwcAppbmRleCA2OGZlOWFhYmIxZjI4YjNhOTBiNGQxNzRjZGQ3YWZmZGVmNzJjMDgxLi4yMGM5
ZTg4NTczOTJkMTBmMmZjOTk4Mjg4N2ExMGQ4ODlkMTU4YmU5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMYXllci5jcHAKQEAgLTgyOCw2ICs4MjgsOCBAQCB2b2lkIFJlbmRlckxh
eWVyOjp1cGRhdGVBbmNlc3RvckNoYWluSGFzQmxlbmRpbmdEZXNjZW5kYW50cygpCiAgICAgICAg
IGxheWVyLT5tX2hhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzID0gdHJ1ZTsKICAgICAg
ICAgbGF5ZXItPm1faGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHNTdGF0dXNEaXJ0eSA9
IGZhbHNlOwogCisgICAgICAgIGxheWVyLT51cGRhdGVTZWxmUGFpbnRpbmdMYXllcigpOworCiAg
ICAgICAgIGlmIChsYXllci0+aXNTdGFja2luZ0NvbnRleHQoKSkKICAgICAgICAgICAgIGJyZWFr
OwogICAgIH0KQEAgLTExNDMsNyArMTE0NSwxMCBAQCB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVE
ZXNjZW5kYW50RGVwZW5kZW50RmxhZ3MoSGFzaFNldDxjb25zdCBSZW5kZXJPYmplY3QqPiogbwog
CiAgICAgICAgIG1faGFzT3V0T2ZGbG93UG9zaXRpb25lZERlc2NlbmRhbnREaXJ0eSA9IGZhbHNl
OwogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCi0gICAgICAgIG1faGFzVW5pc29sYXRlZEJs
ZW5kaW5nRGVzY2VuZGFudHNTdGF0dXNEaXJ0eSA9IGZhbHNlOworICAgICAgICBpZiAobV9oYXNV
bmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50c1N0YXR1c0RpcnR5KSB7CisgICAgICAgICAgICBt
X2hhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzU3RhdHVzRGlydHkgPSBmYWxzZTsKKyAg
ICAgICAgICAgIHVwZGF0ZVNlbGZQYWludGluZ0xheWVyKCk7CisgICAgICAgIH0KICNlbmRpZgog
ICAgIH0KIApAQCAtNjMzNyw2ICs2MzQyLDcgQEAgYm9vbCBSZW5kZXJMYXllcjo6c2hvdWxkQmVT
ZWxmUGFpbnRpbmdMYXllcigpIGNvbnN0CiAgICAgcmV0dXJuICFpc05vcm1hbEZsb3dPbmx5KCkK
ICAgICAgICAgfHwgaGFzT3ZlcmxheVNjcm9sbGJhcnMoKQogICAgICAgICB8fCBuZWVkc0NvbXBv
c2l0ZWRTY3JvbGxpbmcoKQorICAgICAgICB8fCBpc29sYXRlc0JsZW5kaW5nKCkKICAgICAgICAg
fHwgcmVuZGVyZXIoKS5oYXNSZWZsZWN0aW9uKCkKICAgICAgICAgfHwgcmVuZGVyZXIoKS5oYXNN
YXNrKCkKICAgICAgICAgfHwgcmVuZGVyZXIoKS5pc1RhYmxlUm93KCkKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA4ODU3MTEz
NDY3YWRjMDRlZDg2MzYzMzkzNjZkZDI1Mzc3NGYzMTgyLi4xYzk5YTIxMWQ2YWRiMzVjYTQ0MDIw
ZWI1MTE1YWQxYTI0MGZjMjc0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysr
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTcgQEAKIDIwMTQtMDQtMDggIElv
biBSb3NjYSAgPHJvc2NhQGFkb2JlLmNvbT4KIAorICAgICAgICBbQ1NTIEJsZW5kaW5nXSBCbGVu
ZGluZyBkb2Vzbid0IHdvcmsgaWYgdGhlIHBhcmVudCBzdGFja2luZyBjb250ZXh0IGlzIGEgbm9y
bWFsIGZsb3cgb25seSBlbGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMzA4OTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1hY2NlbGVyYXRlZC1w
YXJlbnQtb3ZlcmZsb3ctaGlkZGVuLXRyYW5zcGFyZW50LWV4cGVjdGVkLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1hY2NlbGVyYXRlZC1wYXJlbnQt
b3ZlcmZsb3ctaGlkZGVuLXRyYW5zcGFyZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMv
Y29tcG9zaXRpbmcvYmxlbmQtbW9kZS1wYXJlbnQtb3ZlcmZsb3ctaGlkZGVuLWV4cGVjdGVkLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1wYXJlbnQt
b3ZlcmZsb3ctaGlkZGVuLmh0bWw6IEFkZGVkLgorCisyMDE0LTA0LTA4ICBJb24gUm9zY2EgIDxy
b3NjYUBhZG9iZS5jb20+CisKICAgICAgICAgW0NTUyBCbGVuZGluZ10gSXNvbGF0aW9uIGRlc2Nl
bmRhbnQgZGVwZW5kZW50IGZsYWdzIGFyZSBub3QgdXBkYXRlZCBjb3JyZWN0bHkKICAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMDg5MgogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtYWNjZWxlcmF0ZWQt
cGFyZW50LW92ZXJmbG93LWhpZGRlbi10cmFuc3BhcmVudC1leHBlY3RlZC5odG1sIGIvTGF5b3V0
VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWFjY2VsZXJhdGVkLXBhcmVudC1vdmVy
Zmxvdy1oaWRkZW4tdHJhbnNwYXJlbnQtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41YjNlOWM2
M2Y0YTE3OTE0NzIzNzE2ZmQ3YzBkYzJjY2Y4NDc0YTAyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWFjY2VsZXJhdGVkLXBhcmVudC1v
dmVyZmxvdy1oaWRkZW4tdHJhbnNwYXJlbnQtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDI1IEBA
Cis8IURPQ1RZUEUgSFRNTD4KKworPHN0eWxlPgorCS5wYXJlbnQgeworCQl3aWR0aDogMTAwcHg7
CisJCWhlaWdodDogMTAwcHg7CisJCW92ZXJmbG93OmhpZGRlbjsKKwl9CisKKwkuYmxlbmRlciB7
CisJCW1hcmdpbi1sZWZ0OiAxMHB4OworCQl3aWR0aDogNDAwcHg7CisJCWhlaWdodDogMjBweDsK
KwkJYmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7CisJfQorCisJLmFjY2VsZXJhdGVkIHsKKwkJ
LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMHB4KTsKKwl9Cis8L3N0eWxlPgorCis8cD5U
aGlzIHRlc3QgY2hlY2tzIHRoYXQgYWNjZWxlcmF0ZWQgYmxlbmRpbmcgaGFzIG5vIGVmZmVjdCB3
aGVuIHRoZSBiYWNrZHJvcCBpcyBhIHRyYW5zcGFyZW50IG5vcm1hbCBmbG93IG9ubHkgbGF5ZXIu
PC9wPgorPGRpdiBjbGFzcz0icGFyZW50Ij4KKyAgICA8ZGl2IGNsYXNzPSJibGVuZGVyIGFjY2Vs
ZXJhdGVkIj48L2Rpdj4KKzwvZGl2PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21w
b3NpdGluZy9ibGVuZC1tb2RlLWFjY2VsZXJhdGVkLXBhcmVudC1vdmVyZmxvdy1oaWRkZW4tdHJh
bnNwYXJlbnQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1h
Y2NlbGVyYXRlZC1wYXJlbnQtb3ZlcmZsb3ctaGlkZGVuLXRyYW5zcGFyZW50Lmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMmJiY2Y2NmMzYTE2NDgwN2I0NzhiNWUzM2I4NzkxZjdhMTM5Y2RiZAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1hY2NlbGVy
YXRlZC1wYXJlbnQtb3ZlcmZsb3ctaGlkZGVuLXRyYW5zcGFyZW50Lmh0bWwKQEAgLTAsMCArMSwy
OSBAQAorPCFET0NUWVBFIEhUTUw+CisKKzxzdHlsZT4KKwkucGFyZW50IHsKKwkJd2lkdGg6IDEw
MHB4OworCQloZWlnaHQ6IDEwMHB4OworCQlvdmVyZmxvdzpoaWRkZW47CisJCWlzb2xhdGlvbjpp
c29sYXRlOworCQktd2Via2l0LWlzb2xhdGlvbjppc29sYXRlOworCX0KKworCS5ibGVuZGVyIHsK
KwkJbWFyZ2luLWxlZnQ6IDEwcHg7CisJCXdpZHRoOiA0MDBweDsKKwkJaGVpZ2h0OiAyMHB4Owor
CQliYWNrZ3JvdW5kOiByZ2IoMCwgMjU1LCAwKTsKKwkJLXdlYmtpdC1taXgtYmxlbmQtbW9kZTog
ZGlmZmVyZW5jZTsKKwkJbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisJfQorCisJLmFjY2Vs
ZXJhdGVkIHsKKwkJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMHB4KTsKKwl9Cis8L3N0
eWxlPgorCis8cD5UaGlzIHRlc3QgY2hlY2tzIHRoYXQgYWNjZWxlcmF0ZWQgYmxlbmRpbmcgaGFz
IG5vIGVmZmVjdCB3aGVuIHRoZSBiYWNrZHJvcCBpcyBhIHRyYW5zcGFyZW50IG5vcm1hbCBmbG93
IG9ubHkgbGF5ZXIuPC9wPgorPGRpdiBjbGFzcz0icGFyZW50Ij4KKyAgICA8ZGl2IGNsYXNzPSJi
bGVuZGVyIGFjY2VsZXJhdGVkIj48L2Rpdj4KKzwvZGl2PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLXBhcmVudC1vdmVyZmxvdy1oaWRkZW4tZXhw
ZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1wYXJl
bnQtb3ZlcmZsb3ctaGlkZGVuLWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWEzMDVlNDE4OTk0
ZTU0MDA1MDkzNjg2NjViZDg5OTQ5YzYwYmFhNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2NzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1wYXJlbnQtb3ZlcmZsb3ctaGlkZGVuLWV4
cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwyMSBAQAorPCFET0NUWVBFIEhUTUw+CisKKzxzdHlsZT4K
KwkucGFyZW50IHsKKwkJd2lkdGg6IDEwMHB4OworCQloZWlnaHQ6IDEwMHB4OworCQlvdmVyZmxv
dzpoaWRkZW47CisJfQorCisJLmJsZW5kZXIgeworCQltYXJnaW4tbGVmdDogMTBweDsKKwkJd2lk
dGg6IDQwMHB4OworCQloZWlnaHQ6IDIwcHg7CisJCWJhY2tncm91bmQ6IHJnYigwLCAyNTUsIDAp
OworCX0KKzwvc3R5bGU+CisKKzxwPlRoaXMgdGVzdCBjaGVja3MgdGhhdCBzb2Z0d2FyZSBibGVu
ZGluZyBoYXMgbm8gZWZmZWN0IHdoZW4gdGhlIGJhY2tkcm9wIGlzIGEgdHJhbnNwYXJlbnQgbm9y
bWFsIGZsb3cgb25seSBsYXllci48L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAgIDxkaXYg
Y2xhc3M9ImJsZW5kZXIiPjwvZGl2PgorPC9kaXY+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtcGFyZW50LW92ZXJmbG93LWhpZGRlbi5odG1sIGIv
TGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLXBhcmVudC1vdmVyZmxvdy1o
aWRkZW4uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45YTY5NWZmMjExNTdmNjVjNDMyYjE5ZWMyYzc1NTg2NWFl
NjE3MGIyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9i
bGVuZC1tb2RlLXBhcmVudC1vdmVyZmxvdy1oaWRkZW4uaHRtbApAQCAtMCwwICsxLDI1IEBACis8
IURPQ1RZUEUgSFRNTD4KKworPHN0eWxlPgorCS5wYXJlbnQgeworCQl3aWR0aDogMTAwcHg7CisJ
CWhlaWdodDogMTAwcHg7CisJCW92ZXJmbG93OmhpZGRlbjsKKwkJaXNvbGF0aW9uOmlzb2xhdGU7
CisJCS13ZWJraXQtaXNvbGF0aW9uOmlzb2xhdGU7CisJfQorCisJLmJsZW5kZXIgeworCQltYXJn
aW4tbGVmdDogMTBweDsKKwkJd2lkdGg6IDQwMHB4OworCQloZWlnaHQ6IDIwcHg7CisJCWJhY2tn
cm91bmQ6IHJnYigwLCAyNTUsIDApOworCQktd2Via2l0LW1peC1ibGVuZC1tb2RlOiBkaWZmZXJl
bmNlOworCQltaXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTsKKwl9Cis8L3N0eWxlPgorCis8cD5U
aGlzIHRlc3QgY2hlY2tzIHRoYXQgc29mdHdhcmUgYmxlbmRpbmcgaGFzIG5vIGVmZmVjdCB3aGVu
IHRoZSBiYWNrZHJvcCBpcyBhIHRyYW5zcGFyZW50IG5vcm1hbCBmbG93IG9ubHkgbGF5ZXIuPC9w
PgorPGRpdiBjbGFzcz0icGFyZW50Ij4KKyAgICA8ZGl2IGNsYXNzPSJibGVuZGVyIj48L2Rpdj4K
KzwvZGl2Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>230293</attachid>
            <date>2014-04-28 05:30:47 -0700</date>
            <delta_ts>2014-04-29 07:29:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-130891-20140428153023.patch</filename>
            <type>text/plain</type>
            <size>29726</size>
            <attacher name="Ion Rosca">rosca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY3ODcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzRhYTVhY2Q3ZTk3OWRl
ZTUyYTIwMGE2ODdlNTk5MjE5NDE1ZGVmYS4uOWJmYzkzYzE3N2YxZDI2Njk0MTBmM2UxODZmMDlm
NmFjNWM5MTgyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY3IEBACisyMDE0LTA0LTI4ICBJb24g
Um9zY2EgIDxyb3NjYUBhZG9iZS5jb20+CisKKyAgICAgICAgW0NTUyBCbGVuZGluZ10gQmxlbmRp
bmcgZG9lc24ndCB3b3JrIGlmIHRoZSBwYXJlbnQgc3RhY2tpbmcgY29udGV4dCBpcyBhIG5vcm1h
bCBmbG93IG9ubHkgZWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTMwODkxCisKKyAgICAgICAgVGhlIHN0YWNraW5nIGNvbnRleHQgbGF5ZXJz
IGhhdmluZyB1bmlzb2xhdGVkIGJsZW5kaW5nIGRlc2NlbmRhbnRzIHNob3VsZCBiZSBhYmxlCisg
ICAgICAgIHRvIGNyZWF0ZSB0cmFuc3BhcmVuY3kgbGF5ZXJzIG9yIHRvIGJlY29tZSBjb21wb3Np
dGVkIGluIG9yZGVyIHRvIHJlc3RyaWN0IGJsZW5kaW5nIAorICAgICAgICBjb250ZW50IHRvIGFj
Y2Vzc2luZyB0aGUgaW5mb3JtYXRpb24gb3V0c2lkZSB0aGUgY3VycmVudCBzdGFja2luZyBjb250
ZXh0LgorICAgICAgICBTb21lIGxheWVycyBhcmUgbm90IHNlbGYgcGFpbnRpbmcgbGF5ZXJzIGFu
ZCB0aGVzZSBsYXllcnMgY2Fubm90IGNyYXRlIHRyYW5zcGFyZW5jeQorICAgICAgICBsYXllcnMg
YW5kIGNhbm5vdCBiZSBjb21wb3NpdGVkLCB0aHVzIHRoZXkgYXJlIG5vdCBhYmxlIHRvIGlzb2xh
dGUgYmxlbmRpbmcgZGVzY2VuZGFudHMKKyAgICAgICAgd2hlbiBpdCdzIHJlcXVpcmVkLgorICAg
ICAgICAKKyAgICAgICAgVGhlIHNvbHV0aW9uIGluIHRoaXMgcGF0Y2ggaXMgdG8gbWFrZSBhIGxh
eWVyIGlzU2VsZlBhaW50aW5nTGF5ZXIgd2hlbgorICAgICAgICBpdCBuZWVkcyB0byBpc29sYXRl
IGJsZW5kaW5nIGRlc2NlbmRhbnRzIChoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cyku
CisKKyAgICAgICAgV2hlbiB3ZSByZXNldCBpc1NlbGZQYWludGluZ0xheWVyLCBoYXNTZWxmUGFp
bnRpbmdMYXllckRlc2NlbmRhbnQgdHVybnMgZGlydHkKKyAgICAgICAgZm9yIGFuY2VzdG9yIGxh
eWVycy4gVGhpcyBkaXJ0eSBmbGFnIGlzIGNvbXB1dGVkIGluIHVwZGF0ZURlc2NlbmRhbnREZXBl
bmRlbnRGbGFncygpCisgICAgICAgIG1ldGhvZC4gV2UgbmVlZCB0byB0YWtlIHRoZSBsb2dpYyBm
b3IgY29tcHV0aW5nIHRoZSBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cyBmbGFnCisg
ICAgICAgIG91dCBvZiB1cGRhdGVEZXNjZW5kYW50RGVwZW5kZW50RmxhZ3MoKSwgb3RoZXJ3aXNl
IHdlIGFyZSBnb2luZyB0byBzZXQvZGlydHkgCisgICAgICAgIGhhc1NlbGZQYWludGluZ0xheWVy
RGVzY2VuZGFudCB3aGlsZSBpdCdzIGJlaW5nIGNvbXB1dGVkIHJlY3Vyc2l2ZWx5LgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3RzOiBjc3MzL2Nv
bXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLWFjY2VsZXJhdGVkLW92ZXJmbG93LWhpZGRl
bi5odG1sCisgICAgICAgICAgICAgICBjc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0
aW9uLW92ZXJmbG93LWhpZGRlbi5odG1sCisgICAgICAgICAgICAgICBjc3MzL2NvbXBvc2l0aW5n
L2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIuaHRtbAor
ICAgICAgICAgICAgICAgY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJu
LW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMS5odG1sCisgICAgICAgICAgICAgICBjc3MzL2NvbXBv
c2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIy
Lmh0bWwKKyAgICAgICAgICAgICAgIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRp
b24tdHVybi1vbi1zZWxmLXBhaW50aW5nLWxheWVyLmh0bWwKKworICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJMYXllci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6dXBkYXRl
SXNvbGF0aW9uRm9yQmxlbmRpbmdEZXNjZW5kYW50c0lmTmVlZGVkKToKKyAgICAgICAgQWRkaW5n
IHRoZSBsb2dpYyBmb3IgY29tcHV0aW5nIHRoZSBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5k
YW50cyBmbGFnIGlmIGRpcnR5LgorICAgICAgICBUaGlzIGxvZ2ljIHdhcyBtb3ZlZCBmcm9tIHVw
ZGF0ZURlc2NlbmRhbnREZXBlbmRlbnRGbGFncygpIGxpbWl0aW5nIHJlY3Vyc2lvbgorICAgICAg
ICB0byB0aGUgY3VycmVudCBzdGFja2luZyBjb250ZXh0LgorICAgICAgICBNYWtpbmcgc3VyZSB0
aGF0IGlzU2VsZlBhaW50aW5nTGF5ZXIgZmxhZyBpcyB1cCB0byBkYXRlIGFmdGVyIHRoZSBpc29s
YXRpb24gZmxhZyBpcyBjb21wdXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjp1
cGRhdGVBbmNlc3RvckNoYWluSGFzQmxlbmRpbmdEZXNjZW5kYW50cyk6CisgICAgICAgIFdoZW4g
aGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMgaXMgc2V0IGZvciBhIGxheWVyIHdlIG1h
a2Ugc3VyZSB0aGF0CisgICAgICAgIGlzU2VsZlBhaW50aW5nTGF5ZXIgZmxhZyBpcyBzZXQgdG9v
LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OnVwZGF0ZURlc2NlbmRhbnREZXBlbmRl
bnRGbGFncyk6CisgICAgICAgIFJlbW92aW5nIHRoZSBsb2dpYyBmb3IgY29tcHV0aW5nIHRoZSBk
aXJ0eSBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cyBmbGFnLgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyTGF5ZXI6OmFkZENoaWxkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxh
eWVyOjpyZW1vdmVDaGlsZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6Y29sbGVj
dExheWVycyk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6c3R5bGVDaGFuZ2VkKToK
KyAgICAgICAgTWFraW5nIHN1cmUgdGhhdCB0aGUgaGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2Vu
ZGFudHMgZmxhZyBpcyBub3QgZGlydHkgYmVmb3JlCisgICAgICAgIGFkZGluZywgcmVtb3Zpbmcg
YSBsYXllciwgYmVmb3JlIGNvbGxlY3RpbmcgbGF5ZXJzIGZvciB6b3JkZXIgbGlzdHMgb3Igd2hl
bgorICAgICAgICBzdHlsZSBnZXRzIGNoYW5nZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJM
YXllcjo6c2hvdWxkQmVTZWxmUGFpbnRpbmdMYXllcik6CisgICAgICAgIEFkZGluZyBpc29sYXRl
c0JsZW5kaW5nKCkgY29uZGl0aW9uIGZvciBhIGxheWVyIHRvIGJlIHNlbGYgcGFpbnRpbmcuCisK
KyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaDoKKyAgICAgICAgQWRkaW5nIHVwZGF0
ZUlzb2xhdGlvbkZvckJsZW5kaW5nRGVzY2VuZGFudHNJZk5lZWRlZCgpIG1ldGhvZC4KKyAgICAg
ICAgQ2hhbmdpbmcgaXNvbGF0ZXNCbGVuZGluZygpIHRvIGNoZWNrIGlzU3RhY2tpbmdDb250ZXh0
KCkgZmlyc3QsIHRoaXMgd2lsbCBhdm9pZAorICAgICAgICB0aGUgYXNzZXJ0aW9uIGluIGhhc1Vu
aXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzKCkgZm9yIG5vbi1zdGFja2luZyBjb250ZXh0IGVs
ZW1lbnRzLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpjb21wdXRlQ29tcG9zaXRp
bmdSZXF1aXJlbWVudHMpOgorICAgICAgICBNYWtpbmcgc3VyZSB0aGF0IHRoZSBoYXNVbmlzb2xh
dGVkQmxlbmRpbmdEZXNjZW5kYW50cyBmbGFnIGlzIG5vdCBkaXJ0eSBiZWZvcmUgY29tcHV0aW5n
CisgICAgICAgIGNvbXBvc2l0aW5nIHJlcXVpcmVtZW50cy4KKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyTGF5ZXJNb2RlbE9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXll
ck1vZGVsT2JqZWN0OjpzdHlsZURpZENoYW5nZSk6CisgICAgICAgIFRlbGxpbmcgYW5jZXN0b3Jz
IHRoYXQgYmxlbmQgbW9kZSBwcm9wZXJ0eSBoYXMgYmVlbiByZW1vdmVkIGZyb20gQ1NTIHdoZW4g
dGhlIGxheWVyIGZvcgorICAgICAgICB0aGlzIGVsZW1lbnQgaXMgbm90IG5lZWRlZCBhbnltb3Jl
IGFuZCBpdCdzIGdvaW5nIHRvIGJlIHJlbW92ZWQuCisKIDIwMTQtMDQtMjcgIEFuZHJlaSBCdWN1
ciAgPGFidWN1ckBhZG9iZS5jb20+CiAKICAgICAgICAgU3RvcmUgdGhlIGNvbnRhaW5pbmcgcmVn
aW9uIG1hcCBpbnNpZGUgdGhlIGZsb3cgdGhyZWFkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckxheWVyLmNwcAppbmRleCA1NWJlOTI0YTc3M2JkMDBkYWJjZGY5NDczZmU0NTUzMmI4MmU5
NGU4Li4xNjExNTJmZjgyNzk5YjVkOTBhNWRlZjNmOTdlMzI1YmMwOWJhOWU2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKQEAgLTgyMCw2ICs4MjAsMjkgQEAgdm9p
ZCBSZW5kZXJMYXllcjo6dXBkYXRlQmxlbmRNb2RlKCkKICAgICAgICAgbV9ibGVuZE1vZGUgPSBu
ZXdCbGVuZE1vZGU7CiB9CiAKK3ZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZUlzb2xhdGlvbkZvckJs
ZW5kaW5nRGVzY2VuZGFudHNJZk5lZWRlZCgpCit7CisgICAgaWYgKG1faGFzVW5pc29sYXRlZEJs
ZW5kaW5nRGVzY2VuZGFudHNTdGF0dXNEaXJ0eSkgeworICAgICAgICBib29sIGhhc1VuaXNvbGF0
ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzID0gZmFsc2U7CisKKyAgICAgICAgZm9yIChSZW5kZXJMYXll
ciogY2hpbGQgPSBmaXJzdENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9IGNoaWxkLT5uZXh0U2libGlu
ZygpKSB7CisgICAgICAgICAgICBpZiAoY2hpbGQtPmhhc0JsZW5kTW9kZSgpKQorICAgICAgICAg
ICAgICAgIGhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzID0gdHJ1ZTsKKyAgICAgICAg
ICAgIGVsc2UgaWYgKCFjaGlsZC0+aXNTdGFja2luZ0NvbnRleHQoKSkgeworICAgICAgICAgICAg
ICAgIGNoaWxkLT51cGRhdGVJc29sYXRpb25Gb3JCbGVuZGluZ0Rlc2NlbmRhbnRzSWZOZWVkZWQo
KTsKKyAgICAgICAgICAgICAgICBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cyA9IGNo
aWxkLT5oYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cygpOworICAgICAgICAgICAgfQor
CisgICAgICAgICAgICBpZiAoaGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMpCisgICAg
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKworICAgICAgICBtX2hhc1VuaXNvbGF0ZWRC
bGVuZGluZ0Rlc2NlbmRhbnRzID0gaGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHM7Cisg
ICAgICAgIG1faGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHNTdGF0dXNEaXJ0eSA9IGZh
bHNlOworICAgICAgICB1cGRhdGVTZWxmUGFpbnRpbmdMYXllcigpOworICAgIH0KK30KKwogdm9p
ZCBSZW5kZXJMYXllcjo6dXBkYXRlQW5jZXN0b3JDaGFpbkhhc0JsZW5kaW5nRGVzY2VuZGFudHMo
KQogewogICAgIGZvciAoYXV0byBsYXllciA9IHRoaXM7IGxheWVyOyBsYXllciA9IGxheWVyLT5w
YXJlbnQoKSkgewpAQCAtODI4LDYgKzg1MSw4IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZUFu
Y2VzdG9yQ2hhaW5IYXNCbGVuZGluZ0Rlc2NlbmRhbnRzKCkKICAgICAgICAgbGF5ZXItPm1faGFz
VW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMgPSB0cnVlOwogICAgICAgICBsYXllci0+bV9o
YXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50c1N0YXR1c0RpcnR5ID0gZmFsc2U7CiAKKyAg
ICAgICAgbGF5ZXItPnVwZGF0ZVNlbGZQYWludGluZ0xheWVyKCk7CisKICAgICAgICAgaWYgKGxh
eWVyLT5pc1N0YWNraW5nQ29udGV4dCgpKQogICAgICAgICAgICAgYnJlYWs7CiAgICAgfQpAQCAt
MTA4OSwxMyArMTExNCwxMCBAQCB2b2lkIFJlbmRlckxheWVyOjpzZXRBbmNlc3RvckNoYWluSGFz
VmlzaWJsZURlc2NlbmRhbnQoKQogCiB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVEZXNjZW5kYW50
RGVwZW5kZW50RmxhZ3MoSGFzaFNldDxjb25zdCBSZW5kZXJPYmplY3QqPiogb3V0T2ZGbG93RGVz
Y2VuZGFudENvbnRhaW5pbmdCbG9ja3MpCiB7Ci0gICAgaWYgKG1fdmlzaWJsZURlc2NlbmRhbnRT
dGF0dXNEaXJ0eSB8fCBtX2hhc1NlbGZQYWludGluZ0xheWVyRGVzY2VuZGFudERpcnR5IHx8IG1f
aGFzT3V0T2ZGbG93UG9zaXRpb25lZERlc2NlbmRhbnREaXJ0eSB8fCBoYXNVbmlzb2xhdGVkQmxl
bmRpbmdEZXNjZW5kYW50c1N0YXR1c0RpcnR5KCkpIHsKKyAgICBpZiAobV92aXNpYmxlRGVzY2Vu
ZGFudFN0YXR1c0RpcnR5IHx8IG1faGFzU2VsZlBhaW50aW5nTGF5ZXJEZXNjZW5kYW50RGlydHkg
fHwgbV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2VuZGFudERpcnR5KSB7CiAgICAgICAgIG1f
aGFzVmlzaWJsZURlc2NlbmRhbnQgPSBmYWxzZTsKICAgICAgICAgbV9oYXNTZWxmUGFpbnRpbmdM
YXllckRlc2NlbmRhbnQgPSBmYWxzZTsKICAgICAgICAgbV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVk
RGVzY2VuZGFudCA9IGZhbHNlOwotI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCi0gICAgICAg
IG1faGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMgPSBmYWxzZTsKLSNlbmRpZgogCiAg
ICAgICAgIEhhc2hTZXQ8Y29uc3QgUmVuZGVyT2JqZWN0Kj4gY2hpbGRPdXRPZkZsb3dEZXNjZW5k
YW50Q29udGFpbmluZ0Jsb2NrczsKICAgICAgICAgZm9yIChSZW5kZXJMYXllciogY2hpbGQgPSBm
aXJzdENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9IGNoaWxkLT5uZXh0U2libGluZygpKSB7CkBAIC0x
MTE1LDE5ICsxMTM3LDExIEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZURlc2NlbmRhbnREZXBl
bmRlbnRGbGFncyhIYXNoU2V0PGNvbnN0IFJlbmRlck9iamVjdCo+KiBvCiAgICAgICAgICAgICBi
b29sIGhhc1Zpc2libGVEZXNjZW5kYW50ID0gY2hpbGQtPm1faGFzVmlzaWJsZUNvbnRlbnQgfHwg
Y2hpbGQtPm1faGFzVmlzaWJsZURlc2NlbmRhbnQ7CiAgICAgICAgICAgICBib29sIGhhc1NlbGZQ
YWludGluZ0xheWVyRGVzY2VuZGFudCA9IGNoaWxkLT5pc1NlbGZQYWludGluZ0xheWVyKCkgfHwg
Y2hpbGQtPmhhc1NlbGZQYWludGluZ0xheWVyRGVzY2VuZGFudCgpOwogICAgICAgICAgICAgYm9v
bCBoYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2VuZGFudCA9ICFjaGlsZE91dE9mRmxvd0Rlc2Nl
bmRhbnRDb250YWluaW5nQmxvY2tzLmlzRW1wdHkoKTsKLSNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lU
SU5HKQotICAgICAgICAgICAgYm9vbCBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cyA9
IGNoaWxkLT5oYXNCbGVuZE1vZGUoKSB8fCAoY2hpbGQtPmhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rl
c2NlbmRhbnRzKCkgJiYgIWNoaWxkLT5pc29sYXRlc0JsZW5kaW5nKCkpOwotCi0gICAgICAgICAg
ICBtX2hhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzIHw9IGhhc1VuaXNvbGF0ZWRCbGVu
ZGluZ0Rlc2NlbmRhbnRzOwotI2VuZGlmCiAgICAgICAgICAgICBtX2hhc1Zpc2libGVEZXNjZW5k
YW50IHw9IGhhc1Zpc2libGVEZXNjZW5kYW50OwogICAgICAgICAgICAgbV9oYXNTZWxmUGFpbnRp
bmdMYXllckRlc2NlbmRhbnQgfD0gaGFzU2VsZlBhaW50aW5nTGF5ZXJEZXNjZW5kYW50OwogICAg
ICAgICAgICAgbV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2VuZGFudCB8PSBoYXNPdXRPZkZs
b3dQb3NpdGlvbmVkRGVzY2VuZGFudDsKIAogICAgICAgICAgICAgYm9vbCBhbGxGbGFnc1NldCA9
IG1faGFzVmlzaWJsZURlc2NlbmRhbnQgJiYgbV9oYXNTZWxmUGFpbnRpbmdMYXllckRlc2NlbmRh
bnQgJiYgbV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2VuZGFudDsKLSNpZiBFTkFCTEUoQ1NT
X0NPTVBPU0lUSU5HKQotICAgICAgICAgICAgYWxsRmxhZ3NTZXQgJj0gbV9oYXNVbmlzb2xhdGVk
QmxlbmRpbmdEZXNjZW5kYW50czsKLSNlbmRpZgogICAgICAgICAgICAgaWYgKGFsbEZsYWdzU2V0
KQogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBAIC0xMTQyLDkgKzExNTYsNiBA
QCB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVEZXNjZW5kYW50RGVwZW5kZW50RmxhZ3MoSGFzaFNl
dDxjb25zdCBSZW5kZXJPYmplY3QqPiogbwogICAgICAgICAgICAgdXBkYXRlTmVlZHNDb21wb3Np
dGVkU2Nyb2xsaW5nKCk7CiAKICAgICAgICAgbV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2Vu
ZGFudERpcnR5ID0gZmFsc2U7Ci0jaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKLSAgICAgICAg
bV9oYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50c1N0YXR1c0RpcnR5ID0gZmFsc2U7Ci0j
ZW5kaWYKICAgICB9CiAKICAgICBpZiAobV92aXNpYmxlQ29udGVudFN0YXR1c0RpcnR5KSB7CkBA
IC0xNzkwLDYgKzE4MDEsOSBAQCB2b2lkIFJlbmRlckxheWVyOjphZGRDaGlsZChSZW5kZXJMYXll
ciogY2hpbGQsIFJlbmRlckxheWVyKiBiZWZvcmVDaGlsZCkKICAgICAgICAgY2hpbGQtPmRpcnR5
U3RhY2tpbmdDb250YWluZXJaT3JkZXJMaXN0cygpOwogICAgIH0KIAorI2lmIEVOQUJMRShDU1Nf
Q09NUE9TSVRJTkcpCisgICAgY2hpbGQtPnVwZGF0ZUlzb2xhdGlvbkZvckJsZW5kaW5nRGVzY2Vu
ZGFudHNJZk5lZWRlZCgpOworI2VuZGlmCiAgICAgY2hpbGQtPnVwZGF0ZURlc2NlbmRhbnREZXBl
bmRlbnRGbGFncygpOwogICAgIGlmIChjaGlsZC0+bV9oYXNWaXNpYmxlQ29udGVudCB8fCBjaGls
ZC0+bV9oYXNWaXNpYmxlRGVzY2VuZGFudCkKICAgICAgICAgc2V0QW5jZXN0b3JDaGFpbkhhc1Zp
c2libGVEZXNjZW5kYW50KCk7CkBAIC0xODQwLDYgKzE4NTQsOSBAQCBSZW5kZXJMYXllciogUmVu
ZGVyTGF5ZXI6OnJlbW92ZUNoaWxkKFJlbmRlckxheWVyKiBvbGRDaGlsZCkKICAgICBvbGRDaGls
ZC0+c2V0TmV4dFNpYmxpbmcoMCk7CiAgICAgb2xkQ2hpbGQtPnNldFBhcmVudCgwKTsKICAgICAK
KyNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQorICAgIG9sZENoaWxkLT51cGRhdGVJc29sYXRp
b25Gb3JCbGVuZGluZ0Rlc2NlbmRhbnRzSWZOZWVkZWQoKTsKKyNlbmRpZgogICAgIG9sZENoaWxk
LT51cGRhdGVEZXNjZW5kYW50RGVwZW5kZW50RmxhZ3MoKTsKICAgICBpZiAob2xkQ2hpbGQtPm1f
aGFzVmlzaWJsZUNvbnRlbnQgfHwgb2xkQ2hpbGQtPm1faGFzVmlzaWJsZURlc2NlbmRhbnQpCiAg
ICAgICAgIGRpcnR5QW5jZXN0b3JDaGFpblZpc2libGVEZXNjZW5kYW50U3RhdHVzKCk7CkBAIC02
MjQ1LDYgKzYyNjIsOSBAQCB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVOb3JtYWxGbG93TGlzdCgp
CiAKIHZvaWQgUmVuZGVyTGF5ZXI6OmNvbGxlY3RMYXllcnMoYm9vbCBpbmNsdWRlSGlkZGVuTGF5
ZXJzLCBDb2xsZWN0TGF5ZXJzQmVoYXZpb3IgYmVoYXZpb3IsIHN0ZDo6dW5pcXVlX3B0cjxWZWN0
b3I8UmVuZGVyTGF5ZXIqPj4mIHBvc0J1ZmZlciwgc3RkOjp1bmlxdWVfcHRyPFZlY3RvcjxSZW5k
ZXJMYXllcio+PiYgbmVnQnVmZmVyKQogeworI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCisg
ICAgdXBkYXRlSXNvbGF0aW9uRm9yQmxlbmRpbmdEZXNjZW5kYW50c0lmTmVlZGVkKCk7CisjZW5k
aWYKICAgICB1cGRhdGVEZXNjZW5kYW50RGVwZW5kZW50RmxhZ3MoKTsKIAogICAgIGJvb2wgaXNT
dGFja2luZyA9IGJlaGF2aW9yID09IFN0b3BBdFN0YWNraW5nQ29udGV4dHMgPyBpc1N0YWNraW5n
Q29udGV4dCgpIDogaXNTdGFja2luZ0NvbnRhaW5lcigpOwpAQCAtNjQzNCw2ICs2NDU0LDcgQEAg
Ym9vbCBSZW5kZXJMYXllcjo6c2hvdWxkQmVTZWxmUGFpbnRpbmdMYXllcigpIGNvbnN0CiAgICAg
cmV0dXJuICFpc05vcm1hbEZsb3dPbmx5KCkKICAgICAgICAgfHwgaGFzT3ZlcmxheVNjcm9sbGJh
cnMoKQogICAgICAgICB8fCBuZWVkc0NvbXBvc2l0ZWRTY3JvbGxpbmcoKQorICAgICAgICB8fCBp
c29sYXRlc0JsZW5kaW5nKCkKICAgICAgICAgfHwgcmVuZGVyZXIoKS5oYXNSZWZsZWN0aW9uKCkK
ICAgICAgICAgfHwgcmVuZGVyZXIoKS5oYXNNYXNrKCkKICAgICAgICAgfHwgcmVuZGVyZXIoKS5p
c1RhYmxlUm93KCkKQEAgLTY2NjEsNiArNjY4Miw5IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnN0eWxl
Q2hhbmdlZChTdHlsZURpZmZlcmVuY2UgZGlmZiwgY29uc3QgUmVuZGVyU3R5bGUqIG9sZFN0eWxl
CiAgICAgICAgIG1fbWFycXVlZSA9IG51bGxwdHI7CiAgICAgfQogCisjaWYgRU5BQkxFKENTU19D
T01QT1NJVElORykKKyAgICB1cGRhdGVJc29sYXRpb25Gb3JCbGVuZGluZ0Rlc2NlbmRhbnRzSWZO
ZWVkZWQoKTsKKyNlbmRpZgogICAgIHVwZGF0ZVNjcm9sbGJhcnNBZnRlclN0eWxlQ2hhbmdlKG9s
ZFN0eWxlKTsKICAgICB1cGRhdGVTdGFja2luZ0NvbnRleHRzQWZ0ZXJTdHlsZUNoYW5nZShvbGRT
dHlsZSk7CiAgICAgLy8gT3ZlcmxheSBzY3JvbGxiYXJzIGNhbiBtYWtlIHRoaXMgbGF5ZXIgc2Vs
Zi1wYWludGluZyBzbyB3ZSBuZWVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTGF5ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5o
CmluZGV4IDAwZjZkZDJkYTlhMTNjMGU0MjkzZjkxODBkNjU0Yjc0NDgwMWEwZGIuLmNiZjMxNDZj
YjczNzQyMmM4ZTJjOWI3MzZjMzVmNDEyODhmNzAxZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJMYXllci5oCkBAIC01MTgsNiArNTE4LDcgQEAgcHVibGljOgogICAgIAogI2lmIEVO
QUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgdm9pZCB1cGRhdGVCbGVuZE1vZGUoKTsKKyAgICB2
b2lkIHVwZGF0ZUlzb2xhdGlvbkZvckJsZW5kaW5nRGVzY2VuZGFudHNJZk5lZWRlZCgpOwogI2Vu
ZGlmCiAKICAgICBjb25zdCBMYXlvdXRTaXplJiBvZmZzZXRGb3JJbkZsb3dQb3NpdGlvbigpIGNv
bnN0IHsgcmV0dXJuIG1fb2Zmc2V0Rm9ySW5GbG93UG9zaXRpb247IH0KQEAgLTgwMiw3ICs4MDMs
NyBAQCBwdWJsaWM6CiAgICAgICAgIG1faGFzVW5pc29sYXRlZENvbXBvc2l0ZWRCbGVuZGluZ0Rl
c2NlbmRhbnRzID0gaGFzVW5pc29sYXRlZENvbXBvc2l0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzOwog
ICAgIH0KIAotICAgIGJvb2wgaXNvbGF0ZXNCbGVuZGluZygpIGNvbnN0IHsgcmV0dXJuIGhhc1Vu
aXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzKCkgJiYgaXNTdGFja2luZ0NvbnRleHQoKTsgfQor
ICAgIGJvb2wgaXNvbGF0ZXNCbGVuZGluZygpIGNvbnN0IHsgcmV0dXJuIGlzU3RhY2tpbmdDb250
ZXh0KCkgJiYgaGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMoKTsgfQogICAgIGJvb2wg
aGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMoKSBjb25zdAogICAgIHsKICAgICAgICAg
QVNTRVJUKCFtX2hhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzU3RhdHVzRGlydHkpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRv
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNw
cAppbmRleCBiM2JmZTQxYTZkOTlkYWNkY2FjMWZiNTU1NTk4MDNiZTlmOTc2Yzk2Li5iNzZiOWRi
NmQxYzEzMTk1NWFkNDI4Zjc4OGI3ODU4YTJjN2U3M2NmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcApAQCAtMTEwMiw2ICsxMTAy
LDkgQEAgdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OmNvbXB1dGVDb21wb3NpdGluZ1JlcXVp
cmVtZW50c0Zvck5hbWVkRmxvd0ZpeGVkKFJlbmQKIC8vCiB2b2lkIFJlbmRlckxheWVyQ29tcG9z
aXRvcjo6Y29tcHV0ZUNvbXBvc2l0aW5nUmVxdWlyZW1lbnRzKFJlbmRlckxheWVyKiBhbmNlc3Rv
ckxheWVyLCBSZW5kZXJMYXllciYgbGF5ZXIsIE92ZXJsYXBNYXAqIG92ZXJsYXBNYXAsIENvbXBv
c2l0aW5nU3RhdGUmIGNvbXBvc2l0aW5nU3RhdGUsIGJvb2wmIGxheWVyc0NoYW5nZWQsIGJvb2wm
IGRlc2NlbmRhbnRIYXMzRFRyYW5zZm9ybSkKIHsKKyNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5H
KQorICAgIGxheWVyLnVwZGF0ZUlzb2xhdGlvbkZvckJsZW5kaW5nRGVzY2VuZGFudHNJZk5lZWRl
ZCgpOworI2VuZGlmCiAgICAgbGF5ZXIudXBkYXRlRGVzY2VuZGFudERlcGVuZGVudEZsYWdzKCk7
CiAgICAgbGF5ZXIudXBkYXRlTGF5ZXJMaXN0c0lmTmVlZGVkKCk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllck1vZGVsT2JqZWN0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllck1vZGVsT2JqZWN0LmNwcAppbmRleCBlYjhm
MmU5Zjk0MTc4OWZjN2Y5MjczODkzNzg4ZWU1YzcwZTBhMmU4Li5iZWRmNjMyNTM1M2VjMzg4Mjg2
ZDZkZTE1ZGNhOTk2ZGQwODY2NWM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTGF5ZXJNb2RlbE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckxheWVyTW9kZWxPYmplY3QuY3BwCkBAIC0xNTEsNiArMTUxLDEwIEBAIHZvaWQg
UmVuZGVyTGF5ZXJNb2RlbE9iamVjdDo6c3R5bGVEaWRDaGFuZ2UoU3R5bGVEaWZmZXJlbmNlIGRp
ZmYsIGNvbnN0IFJlbmRlclN0CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9IGVsc2Ug
aWYgKGxheWVyKCkgJiYgbGF5ZXIoKS0+cGFyZW50KCkpIHsKKyNpZiBFTkFCTEUoQ1NTX0NPTVBP
U0lUSU5HKQorICAgICAgICBpZiAob2xkU3R5bGUtPmhhc0JsZW5kTW9kZSgpKQorICAgICAgICAg
ICAgbGF5ZXIoKS0+cGFyZW50KCktPmRpcnR5QW5jZXN0b3JDaGFpbkhhc0JsZW5kaW5nRGVzY2Vu
ZGFudHMoKTsKKyNlbmRpZgogICAgICAgICBzZXRIYXNUcmFuc2Zvcm0oZmFsc2UpOyAvLyBFaXRo
ZXIgYSB0cmFuc2Zvcm0gd2Fzbid0IHNwZWNpZmllZCBvciB0aGUgb2JqZWN0IGRvZXNuJ3Qgc3Vw
cG9ydCB0cmFuc2Zvcm1zLCBzbyBqdXN0IG51bGwgb3V0IHRoZSBiaXQuCiAgICAgICAgIHNldEhh
c1JlZmxlY3Rpb24oZmFsc2UpOwogICAgICAgICBsYXllcigpLT5yZW1vdmVPbmx5VGhpc0xheWVy
KCk7IC8vIGNhbGxzIGRlc3Ryb3lMYXllcigpIHdoaWNoIGNsZWFycyBtX2xheWVyCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXgg
YWY3OTNkZmFlMzUzM2MzZDM1MGUxNWY2ZGEzZDg4NWYyYTliYWFlNi4uODYzOTExYWE3NjNiYWY3
MTFiZjI5M2EwMGRiYmI5OGFjNTIyYWViZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE0LTA0
LTI4ICBJb24gUm9zY2EgIDxyb3NjYUBhZG9iZS5jb20+CisKKyAgICAgICAgW0NTUyBCbGVuZGlu
Z10gQmxlbmRpbmcgZG9lc24ndCB3b3JrIGlmIHRoZSBwYXJlbnQgc3RhY2tpbmcgY29udGV4dCBp
cyBhIG5vcm1hbCBmbG93IG9ubHkgZWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMwODkxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0
aW9uLWFjY2VsZXJhdGVkLW92ZXJmbG93LWhpZGRlbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tYWNjZWxlcmF0ZWQt
b3ZlcmZsb3ctaGlkZGVuLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcv
YmxlbmQtbW9kZS1pc29sYXRpb24tb3ZlcmZsb3ctaGlkZGVuLWV4cGVjdGVkLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tb3ZlcmZs
b3ctaGlkZGVuLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQt
bW9kZS1pc29sYXRpb24tdHVybi1vZmYtc2VsZi1wYWludGluZy1sYXllci1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24t
dHVybi1vZmYtc2VsZi1wYWludGluZy1sYXllci5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3Mz
L2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmct
bGF5ZXIxLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogY3NzMy9jb21wb3NpdGluZy9i
bGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMS5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1
cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBh
aW50aW5nLWxheWVyMi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL2Js
ZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb24tc2VsZi1wYWludGluZy1sYXllci1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRp
b24tdHVybi1vbi1zZWxmLXBhaW50aW5nLWxheWVyLmh0bWw6IEFkZGVkLgorCiAyMDE0LTA0LTI3
ICBBbmRyZWkgQnVjdXIgIDxhYnVjdXJAYWRvYmUuY29tPgogCiAgICAgICAgIFN0b3JlIHRoZSBj
b250YWluaW5nIHJlZ2lvbiBtYXAgaW5zaWRlIHRoZSBmbG93IHRocmVhZApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi1hY2NlbGVy
YXRlZC1vdmVyZmxvdy1oaWRkZW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jb21w
b3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi1hY2NlbGVyYXRlZC1vdmVyZmxvdy1oaWRkZW4t
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkxOWFmNjY4NmVjZWNkY2QyNmFiMTMxOGVmNWM5M2I2
NTMyNjQxYzYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5n
L2JsZW5kLW1vZGUtaXNvbGF0aW9uLWFjY2VsZXJhdGVkLW92ZXJmbG93LWhpZGRlbi1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwyOCBAQAorKEdyYXBoaWNzTGF5ZXIKKyAgKGJvdW5kcyA4MDAuMDAg
NjAwLjAwKQorICAoY2hpbGRyZW4gMQorICAgIChHcmFwaGljc0xheWVyCisgICAgICAoYm91bmRz
IDgwMC4wMCA2MDAuMDApCisgICAgICAoY29udGVudHNPcGFxdWUgMSkKKyAgICAgIChjaGlsZHJl
biAxCisgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgKHBvc2l0aW9uIDguMDAgOC4w
MCkKKyAgICAgICAgICAoYm91bmRzIDEwMC4wMCAxMDAuMDApCisgICAgICAgICAgKGNoaWxkcmVu
IDEKKyAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgIChib3VuZHMgMTAw
LjAwIDEwMC4wMCkKKyAgICAgICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgICAgICAo
R3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgKGJvdW5kcyA0MDAuMDAgMjAuMDApCisg
ICAgICAgICAgICAgICAgICAoYmxlbmRNb2RlIGRpZmZlcmVuY2UpCisgICAgICAgICAgICAgICAg
ICAoY29udGVudHNPcGFxdWUgMSkKKyAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICkK
KyAgICAgICAgICAgICkKKyAgICAgICAgICApCisgICAgICAgICkKKyAgICAgICkKKyAgICApCisg
ICkKKykKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1t
b2RlLWlzb2xhdGlvbi1hY2NlbGVyYXRlZC1vdmVyZmxvdy1oaWRkZW4uaHRtbCBiL0xheW91dFRl
c3RzL2NzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tYWNjZWxlcmF0ZWQtb3Zl
cmZsb3ctaGlkZGVuLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTM5NTMwYTRhNmRkNTBhNmRmMDE3ZDEyNjgz
YmVjYjZkMmQ1ZTk1MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY29tcG9z
aXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tYWNjZWxlcmF0ZWQtb3ZlcmZsb3ctaGlkZGVuLmh0
bWwKQEAgLTAsMCArMSwzNyBAQAorPCFET0NUWVBFIEhUTUw+Cis8c3R5bGU+CisgICAgLnBhcmVu
dCB7CisgICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAg
ICAgb3ZlcmZsb3c6aGlkZGVuOworICAgICAgICBpc29sYXRpb246aXNvbGF0ZTsKKyAgICAgICAg
LXdlYmtpdC1pc29sYXRpb246IGlzb2xhdGU7CisgICAgfQorCisgICAgLmJsZW5kZXIgeworICAg
ICAgICB3aWR0aDogNDAwcHg7CisgICAgICAgIGhlaWdodDogMjBweDsKKyAgICAgICAgYmFja2dy
b3VuZDogcmdiKDAsIDI1NSwgMCk7CisgICAgICAgIG1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNl
OworICAgICAgICAtd2Via2l0LW1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlOworICAgIH0KKwor
ICAgIC5hY2NlbGVyYXRlZCB7CisgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVa
KDBweCk7CisgICAgfQorPC9zdHlsZT4KKworPCEtLSBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW4g
ZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRlbiwgYmVpbmcgbm9ybWFsIGZsb3cgb25seSwgY2Fu
IGdldCBhY2NlbGVyYXRlZCBpbiBvcmRlciB0byBpc29sYXRlIGJsZW5kaW5nIGRlc2NlbmRhbnRz
IHByb3Blcmx5LiAtLT4KKzwhLS0gVGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHJlY3Rh
bmdsZS4gLS0+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAgIDxkaXYgY2xhc3M9ImJsZW5kZXIg
YWNjZWxlcmF0ZWQiPjwvZGl2PgorPC9kaXY+CisKKzxwcmUgaWQ9ImxheWVyVHJlZSI+PC9wcmU+
Cis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgdmFyIHRleHQgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgibGF5ZXJUcmVlIik7CisgICAgdGV4dC5pbm5lckhUTUwgPSB3aW5kb3cuaW50ZXJu
YWxzLmxheWVyVHJlZUFzVGV4dChkb2N1bWVudCk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tb3ZlcmZsb3ct
aGlkZGVuLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5k
LW1vZGUtaXNvbGF0aW9uLW92ZXJmbG93LWhpZGRlbi1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjA3M2E2ZTZmYTkwOGNhZjg5ZDA4MDY3YzRjNmY4ZDYzMWYwMTgwNTUKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLW92
ZXJmbG93LWhpZGRlbi1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMjAgQEAKKzwhRE9DVFlQRSBI
VE1MPgorPHN0eWxlPgorICAgIC5wYXJlbnQgeworICAgICAgICB3aWR0aDogMTAwcHg7CisgICAg
ICAgIGhlaWdodDogMTAwcHg7CisgICAgICAgIG92ZXJmbG93OmhpZGRlbjsKKyAgICB9CisKKyAg
ICAuYmxlbmRlciB7CisgICAgICAgIHdpZHRoOiA0MDBweDsKKyAgICAgICAgaGVpZ2h0OiAyMHB4
OworICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMCwgMjU1LCAwKTsKKyAgICB9Cis8L3N0eWxlPgor
Cis8cD5UaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRl
biwgYmVpbmcgbm9ybWFsIGZsb3cgb25seSwgaXNvbGF0ZXMgYmxlbmRpbmcgZGVzY2VuZGFudHMg
cHJvcGVybHkuPGJyLz4KK1Rlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiByZWN0YW5nbGUu
PC9wPgorPGRpdiBjbGFzcz0icGFyZW50Ij4KKyAgICA8ZGl2IGNsYXNzPSJibGVuZGVyIj48L2Rp
dj4KKzwvZGl2PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVu
ZC1tb2RlLWlzb2xhdGlvbi1vdmVyZmxvdy1oaWRkZW4uaHRtbCBiL0xheW91dFRlc3RzL2NzczMv
Y29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tb3ZlcmZsb3ctaGlkZGVuLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMDI2Y2I4MDQ3OWZkNGQwNmFhYTY4MTZjZTQzNDRlNGI3Y2RlZGIwOAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29s
YXRpb24tb3ZlcmZsb3ctaGlkZGVuLmh0bWwKQEAgLTAsMCArMSwyNCBAQAorPCFET0NUWVBFIEhU
TUw+Cis8c3R5bGU+CisgICAgLnBhcmVudCB7CisgICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAg
ICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgb3ZlcmZsb3c6aGlkZGVuOworICAgICAgICBpc29s
YXRpb246aXNvbGF0ZTsKKyAgICAgICAgLXdlYmtpdC1pc29sYXRpb246IGlzb2xhdGU7CisgICAg
fQorCisgICAgLmJsZW5kZXIgeworICAgICAgICB3aWR0aDogNDAwcHg7CisgICAgICAgIGhlaWdo
dDogMjBweDsKKyAgICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7CisgICAgICAgIG1p
eC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlOworICAgICAgICAtd2Via2l0LW1peC1ibGVuZC1tb2Rl
OiBkaWZmZXJlbmNlOworICAgIH0KKzwvc3R5bGU+CisKKzxwPlRoaXMgdGVzdCBjaGVja3MgdGhh
dCBhbiBlbGVtZW50IHdpdGggb3ZlcmZsb3cgaGlkZGVuLCBiZWluZyBub3JtYWwgZmxvdyBvbmx5
LCBpc29sYXRlcyBibGVuZGluZyBkZXNjZW5kYW50cyBwcm9wZXJseS48YnIvPgorVGVzdCBwYXNz
ZXMgaWYgeW91IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQi
PgorICAgIDxkaXYgY2xhc3M9ImJsZW5kZXIiPjwvZGl2PgorPC9kaXY+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2Zm
LXNlbGYtcGFpbnRpbmctbGF5ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jb21w
b3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVy
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MDJjMTNmOTZiMDc5NjVhZmM0NmZhOTI0OGQxODNl
MWYwMzYxMGUxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGlu
Zy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDExIEBACitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAg
UmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgwLDApIHNpemUgODAw
eDE1OAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA4MDB4MTU4CisgICAgUmVu
ZGVyQm9keSB7Qk9EWX0gYXQgKDgsMTYpIHNpemUgNzg0eDEzNAorICAgICAgUmVuZGVyQmxvY2sg
e1B9IGF0ICgwLDApIHNpemUgNzg0eDE4CisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAo
MCwwKSBzaXplIDI1MXgxOAorICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDI1MTog
IlRlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiByZWN0YW5nbGUuIgorbGF5ZXIgYXQgKDgs
NTApIHNpemUgMTAweDEwMCBzY3JvbGxXaWR0aCA0MDAKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQg
KDAsMzQpIHNpemUgMTAweDEwMAorICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUg
NDAweDIwIFtiZ2NvbG9yPSMwMEZGMDBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Nv
bXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5
ZXIuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRp
b24tdHVybi1vZmYtc2VsZi1wYWludGluZy1sYXllci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJlNWQ4NTYz
M2U4Yjg5NmM3NzljYzkyYmJkZjZmMjExNWY0ZTc2ZTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNl
bGYtcGFpbnRpbmctbGF5ZXIuaHRtbApAQCAtMCwwICsxLDQwIEBACis8IURPQ1RZUEUgSFRNTD4K
KzxzdHlsZT4KKyAgICAucGFyZW50IHsKKyAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICBo
ZWlnaHQ6IDEwMHB4OworICAgICAgICBvdmVyZmxvdzpoaWRkZW47CisgICAgICAgIGlzb2xhdGlv
bjppc29sYXRlOworICAgICAgICAtd2Via2l0LWlzb2xhdGlvbjogaXNvbGF0ZTsKKyAgICB9CisK
KyAgICAuY2hpbGQgeworICAgICAgICB3aWR0aDogNDAwcHg7CisgICAgICAgIGhlaWdodDogMjBw
eDsKKyAgICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7CisgICAgfQorCisgICAgLmJs
ZW5kaW5nIHsKKyAgICAgICAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgICAgIC13
ZWJraXQtbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgfQorPC9zdHlsZT4KKworPCEt
LSBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRlbiB3
aWxsIGJlIGFibGUgdG8gc3RvcCBpc29sYXRpbmcgYWZ0ZXIgZGluYW1pY2FsbHkgcmVtb3Zpbmcg
bWl4LWJsZW5kLW1vZGUgb24gZGVzY2VuZGFudHMuIC0tPgorPHA+VGVzdCBwYXNzZXMgaWYgeW91
IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAgIDxk
aXYgaWQ9InRhcmdldCIgY2xhc3M9ImNoaWxkIGJsZW5kaW5nIj48L2Rpdj4KKzwvZGl2PgorCis8
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQorICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisKKyAgICB3aW5k
b3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uKCkgeworICAgICAgIHZhciB0YXJn
ZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CisgICAgICAgdGFyZ2V0LmNs
YXNzTmFtZSA9ICJjaGlsZCI7CisKKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0sIGZhbHNlKTsK
Kzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVu
ZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1
cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIxLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MDJj
MTNmOTZiMDc5NjVhZmM0NmZhOTI0OGQxODNlMWYwMzYxMGUxCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9m
Zi1zZWxmLXBhaW50aW5nLWxheWVyMS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorbGF5
ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4
NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgwMHgxNTgKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0
ICgwLDApIHNpemUgODAweDE1OAorICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDE2KSBzaXpl
IDc4NHgxMzQKKyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwwKSBzaXplIDc4NHgxOAorICAg
ICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAyNTF4MTgKKyAgICAgICAgICB0
ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAyNTE6ICJUZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3Jl
ZW4gcmVjdGFuZ2xlLiIKK2xheWVyIGF0ICg4LDUwKSBzaXplIDEwMHgxMDAgc2Nyb2xsV2lkdGgg
NDAwCisgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDM0KSBzaXplIDEwMHgxMDAKKyAgICBSZW5k
ZXJCbG9jayB7RElWfSBhdCAoMCwwKSBzaXplIDQwMHgyMCBbYmdjb2xvcj0jMDBGRjAwXQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlv
bi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9j
b21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxh
eWVyMS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY5MGM0NmIzNmM4ODgyYTgxNmE1NGMxMGE3NTEyNTc3MWZl
YzEzZjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2Js
ZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIxLmh0bWwKQEAg
LTAsMCArMSw0NSBAQAorPCFET0NUWVBFIEhUTUw+Cis8c3R5bGU+CisgICAgLnBhcmVudCB7Cisg
ICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgb3Zl
cmZsb3c6aGlkZGVuOworICAgICAgICBpc29sYXRpb246aXNvbGF0ZTsKKyAgICAgICAgLXdlYmtp
dC1pc29sYXRpb246IGlzb2xhdGU7CisgICAgfQorCisgICAgLmNoaWxkIHsKKyAgICAgICAgd2lk
dGg6IDQwMHB4OworICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAgICAgIGJhY2tncm91bmQ6IHJn
YigwLCAyNTUsIDApOworICAgIH0KKworICAgIC5ibGVuZGluZyB7CisgICAgICAgIG1peC1ibGVu
ZC1tb2RlOiBkaWZmZXJlbmNlOworICAgICAgICAtd2Via2l0LW1peC1ibGVuZC1tb2RlOiBkaWZm
ZXJlbmNlOworICAgIH0KKworICAgIGh0bWwgeworICAgICAgICAvKkZvcmNlIGNvbXBvc2l0aW5n
LiovCisgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDBweCk7CisgICAgfQor
PC9zdHlsZT4KKworPCEtLSBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRoIG92
ZXJmbG93IGhpZGRlbiB3aWxsIGJlIGFibGUgdG8gc3RvcCBpc29sYXRpbmcgYWZ0ZXIgZGluYW1p
Y2FsbHkgcmVtb3ZpbmcgbWl4LWJsZW5kLW1vZGUgb24gZGVzY2VuZGFudHMuIC0tPgorPHA+VGVz
dCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNzPSJw
YXJlbnQiPgorICAgIDxkaXYgaWQ9InRhcmdldCIgY2xhc3M9ImNoaWxkIGJsZW5kaW5nIj48L2Rp
dj4KKzwvZGl2PgorCis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25l
KCk7CisKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uKCkgewor
ICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7Cisg
ICAgICAgdGFyZ2V0LmNsYXNzTmFtZSA9ICJjaGlsZCI7CisKKyAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOwor
ICAgIH0sIGZhbHNlKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9j
b21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxh
eWVyMi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1v
ZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIyLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4xOWNhNDM1YzhiNjgyM2YyYjI0YzhhN2RhNjAyYmI5OTJhZTI3ZmEwCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlz
b2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMi1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxMiBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlclZpZXcgYXQg
KDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgwMHgxNTgKKyAgUmVuZGVy
QmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDE1OAorICAgIFJlbmRlckJvZHkge0JPRFl9
IGF0ICg4LDE2KSBzaXplIDc4NHgxMzQKKyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwwKSBz
aXplIDc4NHgxOAorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAyNTF4
MTgKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAyNTE6ICJUZXN0IHBhc3NlcyBp
ZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLiIKK2xheWVyIGF0ICg4LDUwKSBzaXplIDEwMHgx
MDAgc2Nyb2xsV2lkdGggNDAwCisgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDM0KSBzaXplIDEw
MHgxMDAKK2xheWVyIGF0ICg4LDUwKSBzaXplIDQwMHgyMCBiYWNrZ3JvdW5kQ2xpcCBhdCAoOCw1
MCkgc2l6ZSAxMDB4MTAwIGNsaXAgYXQgKDgsNTApIHNpemUgMTAweDEwMCBvdXRsaW5lQ2xpcCBh
dCAoOCw1MCkgc2l6ZSAxMDB4MTAwCisgIFJlbmRlckJsb2NrIChyZWxhdGl2ZSBwb3NpdGlvbmVk
KSB7RElWfSBhdCAoMCwwKSBzaXplIDQwMHgyMCBbYmdjb2xvcj0jMDBGRjAwXQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJu
LW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMi5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3Np
dGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMi5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjhlMzg3MGU1NzM4ZWMwMTkyODY1MmRhNzQzY2ViYzE5NDI0OTVlNzEK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1v
ZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIyLmh0bWwKQEAgLTAsMCAr
MSw0MiBAQAorPCFET0NUWVBFIEhUTUw+Cis8c3R5bGU+CisgICAgLnBhcmVudCB7CisgICAgICAg
IHdpZHRoOiAxMDBweDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgb3ZlcmZsb3c6
aGlkZGVuOworICAgICAgICBpc29sYXRpb246aXNvbGF0ZTsKKyAgICAgICAgLXdlYmtpdC1pc29s
YXRpb246IGlzb2xhdGU7CisgICAgfQorCisgICAgLmNoaWxkIHsKKyAgICAgICAgd2lkdGg6IDQw
MHB4OworICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAgICAgIGJhY2tncm91bmQ6IHJnYigwLCAy
NTUsIDApOworICAgICAgICAvKktlZXAgY2hpbGQgUmVuZGVyTGF5ZXIgYWZ0ZXIgcmVtb3Zpbmcg
YmxlbmRpbmcqLworICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgfQorCisgICAgLmJs
ZW5kaW5nIHsKKyAgICAgICAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgICAgIC13
ZWJraXQtbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgfQorPC9zdHlsZT4KKworPCEt
LSBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRlbiB3
aWxsIGJlIGFibGUgdG8gc3RvcCBpc29sYXRpbmcgYWZ0ZXIgZGluYW1pY2FsbHkgcmVtb3Zpbmcg
bWl4LWJsZW5kLW1vZGUgb24gZGVzY2VuZGFudHMuIC0tPgorPHA+VGVzdCBwYXNzZXMgaWYgeW91
IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAgIDxk
aXYgaWQ9InRhcmdldCIgY2xhc3M9ImNoaWxkIGJsZW5kaW5nIj48L2Rpdj4KKzwvZGl2PgorCis8
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQorICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisKKyAgICB3aW5k
b3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uKCkgeworICAgICAgIHZhciB0YXJn
ZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CisgICAgICAgdGFyZ2V0LmNs
YXNzTmFtZSA9ICJjaGlsZCI7CisKKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0sIGZhbHNlKTsK
Kzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVu
ZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9uLXNlbGYtcGFpbnRpbmctbGF5ZXItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJu
LW9uLXNlbGYtcGFpbnRpbmctbGF5ZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJjODhlMmE1
NGI2YjJhNzIyNTRmNzRlOTdlMGIxN2E0MzAyMWRkNjkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb24tc2Vs
Zi1wYWludGluZy1sYXllci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMiBAQAorbGF5ZXIgYXQg
KDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCits
YXllciBhdCAoMCwwKSBzaXplIDgwMHgxNTgKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDAp
IHNpemUgODAweDE1OAorICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDE2KSBzaXplIDc4NHgx
MzQKKyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwwKSBzaXplIDc4NHgxOAorICAgICAgICBS
ZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAyNTF4MTgKKyAgICAgICAgICB0ZXh0IHJ1
biBhdCAoMCwwKSB3aWR0aCAyNTE6ICJUZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVj
dGFuZ2xlLiIKK2xheWVyIGF0ICg4LDUwKSBzaXplIDEwMHgxMDAgc2Nyb2xsV2lkdGggNDAwIGlz
b2xhdGVzQmxlbmRpbmcKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMzQpIHNpemUgMTAweDEw
MAorbGF5ZXIgYXQgKDgsNTApIHNpemUgNDAweDIwIGJhY2tncm91bmRDbGlwIGF0ICg4LDUwKSBz
aXplIDEwMHgxMDAgY2xpcCBhdCAoOCw1MCkgc2l6ZSAxMDB4MTAwIG91dGxpbmVDbGlwIGF0ICg4
LDUwKSBzaXplIDEwMHgxMDAgYmxlbmRNb2RlOiBkaWZmZXJlbmNlCisgIFJlbmRlckJsb2NrIHtE
SVZ9IGF0ICgwLDApIHNpemUgNDAweDIwIFtiZ2NvbG9yPSMwMEZGMDBdCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb24t
c2VsZi1wYWludGluZy1sYXllci5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9i
bGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9uLXNlbGYtcGFpbnRpbmctbGF5ZXIuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5jNmVlZmFmMWEyZjZmZGRiOWY0YWExZjU2ODdlMmYyNTgzYWJhYmIwCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xh
dGlvbi10dXJuLW9uLXNlbGYtcGFpbnRpbmctbGF5ZXIuaHRtbApAQCAtMCwwICsxLDQwIEBACis8
IURPQ1RZUEUgSFRNTD4KKzxzdHlsZT4KKyAgICAucGFyZW50IHsKKyAgICAgICAgd2lkdGg6IDEw
MHB4OworICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICBvdmVyZmxvdzpoaWRkZW47Cisg
ICAgICAgIGlzb2xhdGlvbjppc29sYXRlOworICAgICAgICAtd2Via2l0LWlzb2xhdGlvbjogaXNv
bGF0ZTsKKyAgICB9CisKKyAgICAuY2hpbGQgeworICAgICAgICB3aWR0aDogNDAwcHg7CisgICAg
ICAgIGhlaWdodDogMjBweDsKKyAgICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7Cisg
ICAgfQorCisgICAgLmJsZW5kaW5nIHsKKyAgICAgICAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVu
Y2U7CisgICAgICAgIC13ZWJraXQtbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgfQor
PC9zdHlsZT4KKworPCEtLSBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRoIG92
ZXJmbG93IGhpZGRlbiwgbm90IGJlaW5nIGEgc2VsZiBwYWludGluZyBsYXllciwgd2lsbCBiZSBh
YmxlIHRvIGR5bmFtaWNhbGx5IGlzb2xhdGUgYmxlbmRpbmcgZGVzY2VuZGFudHMuIC0tPgorPHA+
VGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNz
PSJwYXJlbnQiPgorICAgIDxkaXYgaWQ9InRhcmdldCIgY2xhc3M9ImNoaWxkIj48L2Rpdj4KKzwv
ZGl2PgorCis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisK
KyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uKCkgeworICAgICAg
IHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CisgICAgICAg
dGFyZ2V0LmNsYXNzTmFtZSA9ICJibGVuZGluZyBjaGlsZCI7CisKKyAgICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKQorICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgp
OworICAgIH0sIGZhbHNlKTsKKzwvc2NyaXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>230376</attachid>
            <date>2014-04-29 07:29:32 -0700</date>
            <delta_ts>2014-04-29 14:34:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-130891-20140429172909.patch</filename>
            <type>text/plain</type>
            <size>30455</size>
            <attacher name="Ion Rosca">rosca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY3ODcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzRhYTVhY2Q3ZTk3OWRl
ZTUyYTIwMGE2ODdlNTk5MjE5NDE1ZGVmYS4uOWJmYzkzYzE3N2YxZDI2Njk0MTBmM2UxODZmMDlm
NmFjNWM5MTgyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY3IEBACisyMDE0LTA0LTI4ICBJb24g
Um9zY2EgIDxyb3NjYUBhZG9iZS5jb20+CisKKyAgICAgICAgW0NTUyBCbGVuZGluZ10gQmxlbmRp
bmcgZG9lc24ndCB3b3JrIGlmIHRoZSBwYXJlbnQgc3RhY2tpbmcgY29udGV4dCBpcyBhIG5vcm1h
bCBmbG93IG9ubHkgZWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTMwODkxCisKKyAgICAgICAgVGhlIHN0YWNraW5nIGNvbnRleHQgbGF5ZXJz
IGhhdmluZyB1bmlzb2xhdGVkIGJsZW5kaW5nIGRlc2NlbmRhbnRzIHNob3VsZCBiZSBhYmxlCisg
ICAgICAgIHRvIGNyZWF0ZSB0cmFuc3BhcmVuY3kgbGF5ZXJzIG9yIHRvIGJlY29tZSBjb21wb3Np
dGVkIGluIG9yZGVyIHRvIHJlc3RyaWN0IGJsZW5kaW5nIAorICAgICAgICBjb250ZW50IHRvIGFj
Y2Vzc2luZyB0aGUgaW5mb3JtYXRpb24gb3V0c2lkZSB0aGUgY3VycmVudCBzdGFja2luZyBjb250
ZXh0LgorICAgICAgICBTb21lIGxheWVycyBhcmUgbm90IHNlbGYgcGFpbnRpbmcgbGF5ZXJzIGFu
ZCB0aGVzZSBsYXllcnMgY2Fubm90IGNyYXRlIHRyYW5zcGFyZW5jeQorICAgICAgICBsYXllcnMg
YW5kIGNhbm5vdCBiZSBjb21wb3NpdGVkLCB0aHVzIHRoZXkgYXJlIG5vdCBhYmxlIHRvIGlzb2xh
dGUgYmxlbmRpbmcgZGVzY2VuZGFudHMKKyAgICAgICAgd2hlbiBpdCdzIHJlcXVpcmVkLgorICAg
ICAgICAKKyAgICAgICAgVGhlIHNvbHV0aW9uIGluIHRoaXMgcGF0Y2ggaXMgdG8gbWFrZSBhIGxh
eWVyIGlzU2VsZlBhaW50aW5nTGF5ZXIgd2hlbgorICAgICAgICBpdCBuZWVkcyB0byBpc29sYXRl
IGJsZW5kaW5nIGRlc2NlbmRhbnRzIChoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cyku
CisKKyAgICAgICAgV2hlbiB3ZSByZXNldCBpc1NlbGZQYWludGluZ0xheWVyLCBoYXNTZWxmUGFp
bnRpbmdMYXllckRlc2NlbmRhbnQgdHVybnMgZGlydHkKKyAgICAgICAgZm9yIGFuY2VzdG9yIGxh
eWVycy4gVGhpcyBkaXJ0eSBmbGFnIGlzIGNvbXB1dGVkIGluIHVwZGF0ZURlc2NlbmRhbnREZXBl
bmRlbnRGbGFncygpCisgICAgICAgIG1ldGhvZC4gV2UgbmVlZCB0byB0YWtlIHRoZSBsb2dpYyBm
b3IgY29tcHV0aW5nIHRoZSBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cyBmbGFnCisg
ICAgICAgIG91dCBvZiB1cGRhdGVEZXNjZW5kYW50RGVwZW5kZW50RmxhZ3MoKSwgb3RoZXJ3aXNl
IHdlIGFyZSBnb2luZyB0byBzZXQvZGlydHkgCisgICAgICAgIGhhc1NlbGZQYWludGluZ0xheWVy
RGVzY2VuZGFudCB3aGlsZSBpdCdzIGJlaW5nIGNvbXB1dGVkIHJlY3Vyc2l2ZWx5LgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3RzOiBjc3MzL2Nv
bXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLWFjY2VsZXJhdGVkLW92ZXJmbG93LWhpZGRl
bi5odG1sCisgICAgICAgICAgICAgICBjc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0
aW9uLW92ZXJmbG93LWhpZGRlbi5odG1sCisgICAgICAgICAgICAgICBjc3MzL2NvbXBvc2l0aW5n
L2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIuaHRtbAor
ICAgICAgICAgICAgICAgY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJu
LW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMS5odG1sCisgICAgICAgICAgICAgICBjc3MzL2NvbXBv
c2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIy
Lmh0bWwKKyAgICAgICAgICAgICAgIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRp
b24tdHVybi1vbi1zZWxmLXBhaW50aW5nLWxheWVyLmh0bWwKKworICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJMYXllci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6dXBkYXRl
SXNvbGF0aW9uRm9yQmxlbmRpbmdEZXNjZW5kYW50c0lmTmVlZGVkKToKKyAgICAgICAgQWRkaW5n
IHRoZSBsb2dpYyBmb3IgY29tcHV0aW5nIHRoZSBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5k
YW50cyBmbGFnIGlmIGRpcnR5LgorICAgICAgICBUaGlzIGxvZ2ljIHdhcyBtb3ZlZCBmcm9tIHVw
ZGF0ZURlc2NlbmRhbnREZXBlbmRlbnRGbGFncygpIGxpbWl0aW5nIHJlY3Vyc2lvbgorICAgICAg
ICB0byB0aGUgY3VycmVudCBzdGFja2luZyBjb250ZXh0LgorICAgICAgICBNYWtpbmcgc3VyZSB0
aGF0IGlzU2VsZlBhaW50aW5nTGF5ZXIgZmxhZyBpcyB1cCB0byBkYXRlIGFmdGVyIHRoZSBpc29s
YXRpb24gZmxhZyBpcyBjb21wdXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjp1
cGRhdGVBbmNlc3RvckNoYWluSGFzQmxlbmRpbmdEZXNjZW5kYW50cyk6CisgICAgICAgIFdoZW4g
aGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMgaXMgc2V0IGZvciBhIGxheWVyIHdlIG1h
a2Ugc3VyZSB0aGF0CisgICAgICAgIGlzU2VsZlBhaW50aW5nTGF5ZXIgZmxhZyBpcyBzZXQgdG9v
LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OnVwZGF0ZURlc2NlbmRhbnREZXBlbmRl
bnRGbGFncyk6CisgICAgICAgIFJlbW92aW5nIHRoZSBsb2dpYyBmb3IgY29tcHV0aW5nIHRoZSBk
aXJ0eSBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cyBmbGFnLgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyTGF5ZXI6OmFkZENoaWxkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxh
eWVyOjpyZW1vdmVDaGlsZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6Y29sbGVj
dExheWVycyk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6c3R5bGVDaGFuZ2VkKToK
KyAgICAgICAgTWFraW5nIHN1cmUgdGhhdCB0aGUgaGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2Vu
ZGFudHMgZmxhZyBpcyBub3QgZGlydHkgYmVmb3JlCisgICAgICAgIGFkZGluZywgcmVtb3Zpbmcg
YSBsYXllciwgYmVmb3JlIGNvbGxlY3RpbmcgbGF5ZXJzIGZvciB6b3JkZXIgbGlzdHMgb3Igd2hl
bgorICAgICAgICBzdHlsZSBnZXRzIGNoYW5nZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJM
YXllcjo6c2hvdWxkQmVTZWxmUGFpbnRpbmdMYXllcik6CisgICAgICAgIEFkZGluZyBpc29sYXRl
c0JsZW5kaW5nKCkgY29uZGl0aW9uIGZvciBhIGxheWVyIHRvIGJlIHNlbGYgcGFpbnRpbmcuCisK
KyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaDoKKyAgICAgICAgQWRkaW5nIHVwZGF0
ZUlzb2xhdGlvbkZvckJsZW5kaW5nRGVzY2VuZGFudHNJZk5lZWRlZCgpIG1ldGhvZC4KKyAgICAg
ICAgQ2hhbmdpbmcgaXNvbGF0ZXNCbGVuZGluZygpIHRvIGNoZWNrIGlzU3RhY2tpbmdDb250ZXh0
KCkgZmlyc3QsIHRoaXMgd2lsbCBhdm9pZAorICAgICAgICB0aGUgYXNzZXJ0aW9uIGluIGhhc1Vu
aXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzKCkgZm9yIG5vbi1zdGFja2luZyBjb250ZXh0IGVs
ZW1lbnRzLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpjb21wdXRlQ29tcG9zaXRp
bmdSZXF1aXJlbWVudHMpOgorICAgICAgICBNYWtpbmcgc3VyZSB0aGF0IHRoZSBoYXNVbmlzb2xh
dGVkQmxlbmRpbmdEZXNjZW5kYW50cyBmbGFnIGlzIG5vdCBkaXJ0eSBiZWZvcmUgY29tcHV0aW5n
CisgICAgICAgIGNvbXBvc2l0aW5nIHJlcXVpcmVtZW50cy4KKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyTGF5ZXJNb2RlbE9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXll
ck1vZGVsT2JqZWN0OjpzdHlsZURpZENoYW5nZSk6CisgICAgICAgIFRlbGxpbmcgYW5jZXN0b3Jz
IHRoYXQgYmxlbmQgbW9kZSBwcm9wZXJ0eSBoYXMgYmVlbiByZW1vdmVkIGZyb20gQ1NTIHdoZW4g
dGhlIGxheWVyIGZvcgorICAgICAgICB0aGlzIGVsZW1lbnQgaXMgbm90IG5lZWRlZCBhbnltb3Jl
IGFuZCBpdCdzIGdvaW5nIHRvIGJlIHJlbW92ZWQuCisKIDIwMTQtMDQtMjcgIEFuZHJlaSBCdWN1
ciAgPGFidWN1ckBhZG9iZS5jb20+CiAKICAgICAgICAgU3RvcmUgdGhlIGNvbnRhaW5pbmcgcmVn
aW9uIG1hcCBpbnNpZGUgdGhlIGZsb3cgdGhyZWFkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckxheWVyLmNwcAppbmRleCA1NWJlOTI0YTc3M2JkMDBkYWJjZGY5NDczZmU0NTUzMmI4MmU5
NGU4Li4xNjExNTJmZjgyNzk5YjVkOTBhNWRlZjNmOTdlMzI1YmMwOWJhOWU2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKQEAgLTgyMCw2ICs4MjAsMjkgQEAgdm9p
ZCBSZW5kZXJMYXllcjo6dXBkYXRlQmxlbmRNb2RlKCkKICAgICAgICAgbV9ibGVuZE1vZGUgPSBu
ZXdCbGVuZE1vZGU7CiB9CiAKK3ZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZUlzb2xhdGlvbkZvckJs
ZW5kaW5nRGVzY2VuZGFudHNJZk5lZWRlZCgpCit7CisgICAgaWYgKG1faGFzVW5pc29sYXRlZEJs
ZW5kaW5nRGVzY2VuZGFudHNTdGF0dXNEaXJ0eSkgeworICAgICAgICBib29sIGhhc1VuaXNvbGF0
ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzID0gZmFsc2U7CisKKyAgICAgICAgZm9yIChSZW5kZXJMYXll
ciogY2hpbGQgPSBmaXJzdENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9IGNoaWxkLT5uZXh0U2libGlu
ZygpKSB7CisgICAgICAgICAgICBpZiAoY2hpbGQtPmhhc0JsZW5kTW9kZSgpKQorICAgICAgICAg
ICAgICAgIGhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzID0gdHJ1ZTsKKyAgICAgICAg
ICAgIGVsc2UgaWYgKCFjaGlsZC0+aXNTdGFja2luZ0NvbnRleHQoKSkgeworICAgICAgICAgICAg
ICAgIGNoaWxkLT51cGRhdGVJc29sYXRpb25Gb3JCbGVuZGluZ0Rlc2NlbmRhbnRzSWZOZWVkZWQo
KTsKKyAgICAgICAgICAgICAgICBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cyA9IGNo
aWxkLT5oYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cygpOworICAgICAgICAgICAgfQor
CisgICAgICAgICAgICBpZiAoaGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMpCisgICAg
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKworICAgICAgICBtX2hhc1VuaXNvbGF0ZWRC
bGVuZGluZ0Rlc2NlbmRhbnRzID0gaGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHM7Cisg
ICAgICAgIG1faGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHNTdGF0dXNEaXJ0eSA9IGZh
bHNlOworICAgICAgICB1cGRhdGVTZWxmUGFpbnRpbmdMYXllcigpOworICAgIH0KK30KKwogdm9p
ZCBSZW5kZXJMYXllcjo6dXBkYXRlQW5jZXN0b3JDaGFpbkhhc0JsZW5kaW5nRGVzY2VuZGFudHMo
KQogewogICAgIGZvciAoYXV0byBsYXllciA9IHRoaXM7IGxheWVyOyBsYXllciA9IGxheWVyLT5w
YXJlbnQoKSkgewpAQCAtODI4LDYgKzg1MSw4IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZUFu
Y2VzdG9yQ2hhaW5IYXNCbGVuZGluZ0Rlc2NlbmRhbnRzKCkKICAgICAgICAgbGF5ZXItPm1faGFz
VW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMgPSB0cnVlOwogICAgICAgICBsYXllci0+bV9o
YXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50c1N0YXR1c0RpcnR5ID0gZmFsc2U7CiAKKyAg
ICAgICAgbGF5ZXItPnVwZGF0ZVNlbGZQYWludGluZ0xheWVyKCk7CisKICAgICAgICAgaWYgKGxh
eWVyLT5pc1N0YWNraW5nQ29udGV4dCgpKQogICAgICAgICAgICAgYnJlYWs7CiAgICAgfQpAQCAt
MTA4OSwxMyArMTExNCwxMCBAQCB2b2lkIFJlbmRlckxheWVyOjpzZXRBbmNlc3RvckNoYWluSGFz
VmlzaWJsZURlc2NlbmRhbnQoKQogCiB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVEZXNjZW5kYW50
RGVwZW5kZW50RmxhZ3MoSGFzaFNldDxjb25zdCBSZW5kZXJPYmplY3QqPiogb3V0T2ZGbG93RGVz
Y2VuZGFudENvbnRhaW5pbmdCbG9ja3MpCiB7Ci0gICAgaWYgKG1fdmlzaWJsZURlc2NlbmRhbnRT
dGF0dXNEaXJ0eSB8fCBtX2hhc1NlbGZQYWludGluZ0xheWVyRGVzY2VuZGFudERpcnR5IHx8IG1f
aGFzT3V0T2ZGbG93UG9zaXRpb25lZERlc2NlbmRhbnREaXJ0eSB8fCBoYXNVbmlzb2xhdGVkQmxl
bmRpbmdEZXNjZW5kYW50c1N0YXR1c0RpcnR5KCkpIHsKKyAgICBpZiAobV92aXNpYmxlRGVzY2Vu
ZGFudFN0YXR1c0RpcnR5IHx8IG1faGFzU2VsZlBhaW50aW5nTGF5ZXJEZXNjZW5kYW50RGlydHkg
fHwgbV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2VuZGFudERpcnR5KSB7CiAgICAgICAgIG1f
aGFzVmlzaWJsZURlc2NlbmRhbnQgPSBmYWxzZTsKICAgICAgICAgbV9oYXNTZWxmUGFpbnRpbmdM
YXllckRlc2NlbmRhbnQgPSBmYWxzZTsKICAgICAgICAgbV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVk
RGVzY2VuZGFudCA9IGZhbHNlOwotI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCi0gICAgICAg
IG1faGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMgPSBmYWxzZTsKLSNlbmRpZgogCiAg
ICAgICAgIEhhc2hTZXQ8Y29uc3QgUmVuZGVyT2JqZWN0Kj4gY2hpbGRPdXRPZkZsb3dEZXNjZW5k
YW50Q29udGFpbmluZ0Jsb2NrczsKICAgICAgICAgZm9yIChSZW5kZXJMYXllciogY2hpbGQgPSBm
aXJzdENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9IGNoaWxkLT5uZXh0U2libGluZygpKSB7CkBAIC0x
MTE1LDE5ICsxMTM3LDExIEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZURlc2NlbmRhbnREZXBl
bmRlbnRGbGFncyhIYXNoU2V0PGNvbnN0IFJlbmRlck9iamVjdCo+KiBvCiAgICAgICAgICAgICBi
b29sIGhhc1Zpc2libGVEZXNjZW5kYW50ID0gY2hpbGQtPm1faGFzVmlzaWJsZUNvbnRlbnQgfHwg
Y2hpbGQtPm1faGFzVmlzaWJsZURlc2NlbmRhbnQ7CiAgICAgICAgICAgICBib29sIGhhc1NlbGZQ
YWludGluZ0xheWVyRGVzY2VuZGFudCA9IGNoaWxkLT5pc1NlbGZQYWludGluZ0xheWVyKCkgfHwg
Y2hpbGQtPmhhc1NlbGZQYWludGluZ0xheWVyRGVzY2VuZGFudCgpOwogICAgICAgICAgICAgYm9v
bCBoYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2VuZGFudCA9ICFjaGlsZE91dE9mRmxvd0Rlc2Nl
bmRhbnRDb250YWluaW5nQmxvY2tzLmlzRW1wdHkoKTsKLSNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lU
SU5HKQotICAgICAgICAgICAgYm9vbCBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cyA9
IGNoaWxkLT5oYXNCbGVuZE1vZGUoKSB8fCAoY2hpbGQtPmhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rl
c2NlbmRhbnRzKCkgJiYgIWNoaWxkLT5pc29sYXRlc0JsZW5kaW5nKCkpOwotCi0gICAgICAgICAg
ICBtX2hhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzIHw9IGhhc1VuaXNvbGF0ZWRCbGVu
ZGluZ0Rlc2NlbmRhbnRzOwotI2VuZGlmCiAgICAgICAgICAgICBtX2hhc1Zpc2libGVEZXNjZW5k
YW50IHw9IGhhc1Zpc2libGVEZXNjZW5kYW50OwogICAgICAgICAgICAgbV9oYXNTZWxmUGFpbnRp
bmdMYXllckRlc2NlbmRhbnQgfD0gaGFzU2VsZlBhaW50aW5nTGF5ZXJEZXNjZW5kYW50OwogICAg
ICAgICAgICAgbV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2VuZGFudCB8PSBoYXNPdXRPZkZs
b3dQb3NpdGlvbmVkRGVzY2VuZGFudDsKIAogICAgICAgICAgICAgYm9vbCBhbGxGbGFnc1NldCA9
IG1faGFzVmlzaWJsZURlc2NlbmRhbnQgJiYgbV9oYXNTZWxmUGFpbnRpbmdMYXllckRlc2NlbmRh
bnQgJiYgbV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2VuZGFudDsKLSNpZiBFTkFCTEUoQ1NT
X0NPTVBPU0lUSU5HKQotICAgICAgICAgICAgYWxsRmxhZ3NTZXQgJj0gbV9oYXNVbmlzb2xhdGVk
QmxlbmRpbmdEZXNjZW5kYW50czsKLSNlbmRpZgogICAgICAgICAgICAgaWYgKGFsbEZsYWdzU2V0
KQogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBAIC0xMTQyLDkgKzExNTYsNiBA
QCB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVEZXNjZW5kYW50RGVwZW5kZW50RmxhZ3MoSGFzaFNl
dDxjb25zdCBSZW5kZXJPYmplY3QqPiogbwogICAgICAgICAgICAgdXBkYXRlTmVlZHNDb21wb3Np
dGVkU2Nyb2xsaW5nKCk7CiAKICAgICAgICAgbV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2Vu
ZGFudERpcnR5ID0gZmFsc2U7Ci0jaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKLSAgICAgICAg
bV9oYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50c1N0YXR1c0RpcnR5ID0gZmFsc2U7Ci0j
ZW5kaWYKICAgICB9CiAKICAgICBpZiAobV92aXNpYmxlQ29udGVudFN0YXR1c0RpcnR5KSB7CkBA
IC0xNzkwLDYgKzE4MDEsOSBAQCB2b2lkIFJlbmRlckxheWVyOjphZGRDaGlsZChSZW5kZXJMYXll
ciogY2hpbGQsIFJlbmRlckxheWVyKiBiZWZvcmVDaGlsZCkKICAgICAgICAgY2hpbGQtPmRpcnR5
U3RhY2tpbmdDb250YWluZXJaT3JkZXJMaXN0cygpOwogICAgIH0KIAorI2lmIEVOQUJMRShDU1Nf
Q09NUE9TSVRJTkcpCisgICAgY2hpbGQtPnVwZGF0ZUlzb2xhdGlvbkZvckJsZW5kaW5nRGVzY2Vu
ZGFudHNJZk5lZWRlZCgpOworI2VuZGlmCiAgICAgY2hpbGQtPnVwZGF0ZURlc2NlbmRhbnREZXBl
bmRlbnRGbGFncygpOwogICAgIGlmIChjaGlsZC0+bV9oYXNWaXNpYmxlQ29udGVudCB8fCBjaGls
ZC0+bV9oYXNWaXNpYmxlRGVzY2VuZGFudCkKICAgICAgICAgc2V0QW5jZXN0b3JDaGFpbkhhc1Zp
c2libGVEZXNjZW5kYW50KCk7CkBAIC0xODQwLDYgKzE4NTQsOSBAQCBSZW5kZXJMYXllciogUmVu
ZGVyTGF5ZXI6OnJlbW92ZUNoaWxkKFJlbmRlckxheWVyKiBvbGRDaGlsZCkKICAgICBvbGRDaGls
ZC0+c2V0TmV4dFNpYmxpbmcoMCk7CiAgICAgb2xkQ2hpbGQtPnNldFBhcmVudCgwKTsKICAgICAK
KyNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQorICAgIG9sZENoaWxkLT51cGRhdGVJc29sYXRp
b25Gb3JCbGVuZGluZ0Rlc2NlbmRhbnRzSWZOZWVkZWQoKTsKKyNlbmRpZgogICAgIG9sZENoaWxk
LT51cGRhdGVEZXNjZW5kYW50RGVwZW5kZW50RmxhZ3MoKTsKICAgICBpZiAob2xkQ2hpbGQtPm1f
aGFzVmlzaWJsZUNvbnRlbnQgfHwgb2xkQ2hpbGQtPm1faGFzVmlzaWJsZURlc2NlbmRhbnQpCiAg
ICAgICAgIGRpcnR5QW5jZXN0b3JDaGFpblZpc2libGVEZXNjZW5kYW50U3RhdHVzKCk7CkBAIC02
MjQ1LDYgKzYyNjIsOSBAQCB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVOb3JtYWxGbG93TGlzdCgp
CiAKIHZvaWQgUmVuZGVyTGF5ZXI6OmNvbGxlY3RMYXllcnMoYm9vbCBpbmNsdWRlSGlkZGVuTGF5
ZXJzLCBDb2xsZWN0TGF5ZXJzQmVoYXZpb3IgYmVoYXZpb3IsIHN0ZDo6dW5pcXVlX3B0cjxWZWN0
b3I8UmVuZGVyTGF5ZXIqPj4mIHBvc0J1ZmZlciwgc3RkOjp1bmlxdWVfcHRyPFZlY3RvcjxSZW5k
ZXJMYXllcio+PiYgbmVnQnVmZmVyKQogeworI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCisg
ICAgdXBkYXRlSXNvbGF0aW9uRm9yQmxlbmRpbmdEZXNjZW5kYW50c0lmTmVlZGVkKCk7CisjZW5k
aWYKICAgICB1cGRhdGVEZXNjZW5kYW50RGVwZW5kZW50RmxhZ3MoKTsKIAogICAgIGJvb2wgaXNT
dGFja2luZyA9IGJlaGF2aW9yID09IFN0b3BBdFN0YWNraW5nQ29udGV4dHMgPyBpc1N0YWNraW5n
Q29udGV4dCgpIDogaXNTdGFja2luZ0NvbnRhaW5lcigpOwpAQCAtNjQzNCw2ICs2NDU0LDcgQEAg
Ym9vbCBSZW5kZXJMYXllcjo6c2hvdWxkQmVTZWxmUGFpbnRpbmdMYXllcigpIGNvbnN0CiAgICAg
cmV0dXJuICFpc05vcm1hbEZsb3dPbmx5KCkKICAgICAgICAgfHwgaGFzT3ZlcmxheVNjcm9sbGJh
cnMoKQogICAgICAgICB8fCBuZWVkc0NvbXBvc2l0ZWRTY3JvbGxpbmcoKQorICAgICAgICB8fCBp
c29sYXRlc0JsZW5kaW5nKCkKICAgICAgICAgfHwgcmVuZGVyZXIoKS5oYXNSZWZsZWN0aW9uKCkK
ICAgICAgICAgfHwgcmVuZGVyZXIoKS5oYXNNYXNrKCkKICAgICAgICAgfHwgcmVuZGVyZXIoKS5p
c1RhYmxlUm93KCkKQEAgLTY2NjEsNiArNjY4Miw5IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnN0eWxl
Q2hhbmdlZChTdHlsZURpZmZlcmVuY2UgZGlmZiwgY29uc3QgUmVuZGVyU3R5bGUqIG9sZFN0eWxl
CiAgICAgICAgIG1fbWFycXVlZSA9IG51bGxwdHI7CiAgICAgfQogCisjaWYgRU5BQkxFKENTU19D
T01QT1NJVElORykKKyAgICB1cGRhdGVJc29sYXRpb25Gb3JCbGVuZGluZ0Rlc2NlbmRhbnRzSWZO
ZWVkZWQoKTsKKyNlbmRpZgogICAgIHVwZGF0ZVNjcm9sbGJhcnNBZnRlclN0eWxlQ2hhbmdlKG9s
ZFN0eWxlKTsKICAgICB1cGRhdGVTdGFja2luZ0NvbnRleHRzQWZ0ZXJTdHlsZUNoYW5nZShvbGRT
dHlsZSk7CiAgICAgLy8gT3ZlcmxheSBzY3JvbGxiYXJzIGNhbiBtYWtlIHRoaXMgbGF5ZXIgc2Vs
Zi1wYWludGluZyBzbyB3ZSBuZWVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTGF5ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5o
CmluZGV4IDAwZjZkZDJkYTlhMTNjMGU0MjkzZjkxODBkNjU0Yjc0NDgwMWEwZGIuLmNiZjMxNDZj
YjczNzQyMmM4ZTJjOWI3MzZjMzVmNDEyODhmNzAxZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJMYXllci5oCkBAIC01MTgsNiArNTE4LDcgQEAgcHVibGljOgogICAgIAogI2lmIEVO
QUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgdm9pZCB1cGRhdGVCbGVuZE1vZGUoKTsKKyAgICB2
b2lkIHVwZGF0ZUlzb2xhdGlvbkZvckJsZW5kaW5nRGVzY2VuZGFudHNJZk5lZWRlZCgpOwogI2Vu
ZGlmCiAKICAgICBjb25zdCBMYXlvdXRTaXplJiBvZmZzZXRGb3JJbkZsb3dQb3NpdGlvbigpIGNv
bnN0IHsgcmV0dXJuIG1fb2Zmc2V0Rm9ySW5GbG93UG9zaXRpb247IH0KQEAgLTgwMiw3ICs4MDMs
NyBAQCBwdWJsaWM6CiAgICAgICAgIG1faGFzVW5pc29sYXRlZENvbXBvc2l0ZWRCbGVuZGluZ0Rl
c2NlbmRhbnRzID0gaGFzVW5pc29sYXRlZENvbXBvc2l0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzOwog
ICAgIH0KIAotICAgIGJvb2wgaXNvbGF0ZXNCbGVuZGluZygpIGNvbnN0IHsgcmV0dXJuIGhhc1Vu
aXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzKCkgJiYgaXNTdGFja2luZ0NvbnRleHQoKTsgfQor
ICAgIGJvb2wgaXNvbGF0ZXNCbGVuZGluZygpIGNvbnN0IHsgcmV0dXJuIGlzU3RhY2tpbmdDb250
ZXh0KCkgJiYgaGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMoKTsgfQogICAgIGJvb2wg
aGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMoKSBjb25zdAogICAgIHsKICAgICAgICAg
QVNTRVJUKCFtX2hhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzU3RhdHVzRGlydHkpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcAppbmRl
eCBhZmNmY2MyMDFhMTI4ZjZkMDg3YWYwMjcwNWE1MmExNjA1NmFhNGExLi4wNjZjOWIzOTQ5ZmQy
MmRmMmUwMjM2YjFhMzg5OWFlM2ZkMTE3YWEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcApAQCAtNjg5LDYgKzY4OSw5IEBAIHZvaWQgUmVu
ZGVyTGF5ZXJCYWNraW5nOjp1cGRhdGVHcmFwaGljc0xheWVyR2VvbWV0cnkoKQogCiAgICAgYm9v
bCBpc1NpbXBsZUNvbnRhaW5lciA9IGlzU2ltcGxlQ29udGFpbmVyQ29tcG9zaXRpbmdMYXllcigp
OwogICAgIAorI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCisgICAgbV9vd25pbmdMYXllci51
cGRhdGVJc29sYXRpb25Gb3JCbGVuZGluZ0Rlc2NlbmRhbnRzSWZOZWVkZWQoKTsKKyNlbmRpZgog
ICAgIG1fb3duaW5nTGF5ZXIudXBkYXRlRGVzY2VuZGFudERlcGVuZGVudEZsYWdzKCk7CiAKICAg
ICAvLyBtX2dyYXBoaWNzTGF5ZXIgaXMgdGhlIGNvcnJlc3BvbmRpbmcgR3JhcGhpY3NMYXllciBm
b3IgdGhpcyBSZW5kZXJMYXllciBhbmQgaXRzIG5vbi1jb21wb3NpdGluZwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcAppbmRleCBiM2Jm
ZTQxYTZkOTlkYWNkY2FjMWZiNTU1NTk4MDNiZTlmOTc2Yzk2Li5iNzZiOWRiNmQxYzEzMTk1NWFk
NDI4Zjc4OGI3ODU4YTJjN2U3M2NmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcApAQCAtMTEwMiw2ICsxMTAyLDkgQEAgdm9pZCBS
ZW5kZXJMYXllckNvbXBvc2l0b3I6OmNvbXB1dGVDb21wb3NpdGluZ1JlcXVpcmVtZW50c0Zvck5h
bWVkRmxvd0ZpeGVkKFJlbmQKIC8vCiB2b2lkIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6Y29tcHV0
ZUNvbXBvc2l0aW5nUmVxdWlyZW1lbnRzKFJlbmRlckxheWVyKiBhbmNlc3RvckxheWVyLCBSZW5k
ZXJMYXllciYgbGF5ZXIsIE92ZXJsYXBNYXAqIG92ZXJsYXBNYXAsIENvbXBvc2l0aW5nU3RhdGUm
IGNvbXBvc2l0aW5nU3RhdGUsIGJvb2wmIGxheWVyc0NoYW5nZWQsIGJvb2wmIGRlc2NlbmRhbnRI
YXMzRFRyYW5zZm9ybSkKIHsKKyNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQorICAgIGxheWVy
LnVwZGF0ZUlzb2xhdGlvbkZvckJsZW5kaW5nRGVzY2VuZGFudHNJZk5lZWRlZCgpOworI2VuZGlm
CiAgICAgbGF5ZXIudXBkYXRlRGVzY2VuZGFudERlcGVuZGVudEZsYWdzKCk7CiAgICAgbGF5ZXIu
dXBkYXRlTGF5ZXJMaXN0c0lmTmVlZGVkKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMYXllck1vZGVsT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMYXllck1vZGVsT2JqZWN0LmNwcAppbmRleCBlYjhmMmU5Zjk0MTc4OWZj
N2Y5MjczODkzNzg4ZWU1YzcwZTBhMmU4Li5iZWRmNjMyNTM1M2VjMzg4Mjg2ZDZkZTE1ZGNhOTk2
ZGQwODY2NWM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXJNb2RlbE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxh
eWVyTW9kZWxPYmplY3QuY3BwCkBAIC0xNTEsNiArMTUxLDEwIEBAIHZvaWQgUmVuZGVyTGF5ZXJN
b2RlbE9iamVjdDo6c3R5bGVEaWRDaGFuZ2UoU3R5bGVEaWZmZXJlbmNlIGRpZmYsIGNvbnN0IFJl
bmRlclN0CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9IGVsc2UgaWYgKGxheWVyKCkg
JiYgbGF5ZXIoKS0+cGFyZW50KCkpIHsKKyNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQorICAg
ICAgICBpZiAob2xkU3R5bGUtPmhhc0JsZW5kTW9kZSgpKQorICAgICAgICAgICAgbGF5ZXIoKS0+
cGFyZW50KCktPmRpcnR5QW5jZXN0b3JDaGFpbkhhc0JsZW5kaW5nRGVzY2VuZGFudHMoKTsKKyNl
bmRpZgogICAgICAgICBzZXRIYXNUcmFuc2Zvcm0oZmFsc2UpOyAvLyBFaXRoZXIgYSB0cmFuc2Zv
cm0gd2Fzbid0IHNwZWNpZmllZCBvciB0aGUgb2JqZWN0IGRvZXNuJ3Qgc3VwcG9ydCB0cmFuc2Zv
cm1zLCBzbyBqdXN0IG51bGwgb3V0IHRoZSBiaXQuCiAgICAgICAgIHNldEhhc1JlZmxlY3Rpb24o
ZmFsc2UpOwogICAgICAgICBsYXllcigpLT5yZW1vdmVPbmx5VGhpc0xheWVyKCk7IC8vIGNhbGxz
IGRlc3Ryb3lMYXllcigpIHdoaWNoIGNsZWFycyBtX2xheWVyCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYWY3OTNkZmFlMzUz
M2MzZDM1MGUxNWY2ZGEzZDg4NWYyYTliYWFlNi4uODYzOTExYWE3NjNiYWY3MTFiZjI5M2EwMGRi
YmI5OGFjNTIyYWViZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE0LTA0LTI4ICBJb24gUm9z
Y2EgIDxyb3NjYUBhZG9iZS5jb20+CisKKyAgICAgICAgW0NTUyBCbGVuZGluZ10gQmxlbmRpbmcg
ZG9lc24ndCB3b3JrIGlmIHRoZSBwYXJlbnQgc3RhY2tpbmcgY29udGV4dCBpcyBhIG5vcm1hbCBm
bG93IG9ubHkgZWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTMwODkxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLWFjY2VsZXJh
dGVkLW92ZXJmbG93LWhpZGRlbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMv
Y29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tYWNjZWxlcmF0ZWQtb3ZlcmZsb3ctaGlk
ZGVuLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1p
c29sYXRpb24tb3ZlcmZsb3ctaGlkZGVuLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tb3ZlcmZsb3ctaGlkZGVuLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRp
b24tdHVybi1vZmYtc2VsZi1wYWludGluZy1sYXllci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVybi1vZmYtc2Vs
Zi1wYWludGluZy1sYXllci5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5n
L2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIxLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlz
b2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBjc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYt
cGFpbnRpbmctbGF5ZXIyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogY3NzMy9jb21w
b3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVy
Mi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNv
bGF0aW9uLXR1cm4tb24tc2VsZi1wYWludGluZy1sYXllci1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVybi1vbi1z
ZWxmLXBhaW50aW5nLWxheWVyLmh0bWw6IEFkZGVkLgorCiAyMDE0LTA0LTI3ICBBbmRyZWkgQnVj
dXIgIDxhYnVjdXJAYWRvYmUuY29tPgogCiAgICAgICAgIFN0b3JlIHRoZSBjb250YWluaW5nIHJl
Z2lvbiBtYXAgaW5zaWRlIHRoZSBmbG93IHRocmVhZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi1hY2NlbGVyYXRlZC1vdmVyZmxv
dy1oaWRkZW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVu
ZC1tb2RlLWlzb2xhdGlvbi1hY2NlbGVyYXRlZC1vdmVyZmxvdy1oaWRkZW4tZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjkxOWFmNjY4NmVjZWNkY2QyNmFiMTMxOGVmNWM5M2I2NTMyNjQxYzYKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUt
aXNvbGF0aW9uLWFjY2VsZXJhdGVkLW92ZXJmbG93LWhpZGRlbi1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwyOCBAQAorKEdyYXBoaWNzTGF5ZXIKKyAgKGJvdW5kcyA4MDAuMDAgNjAwLjAwKQorICAo
Y2hpbGRyZW4gMQorICAgIChHcmFwaGljc0xheWVyCisgICAgICAoYm91bmRzIDgwMC4wMCA2MDAu
MDApCisgICAgICAoY29udGVudHNPcGFxdWUgMSkKKyAgICAgIChjaGlsZHJlbiAxCisgICAgICAg
IChHcmFwaGljc0xheWVyCisgICAgICAgICAgKHBvc2l0aW9uIDguMDAgOC4wMCkKKyAgICAgICAg
ICAoYm91bmRzIDEwMC4wMCAxMDAuMDApCisgICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAg
ICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgIChib3VuZHMgMTAwLjAwIDEwMC4wMCkK
KyAgICAgICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXll
cgorICAgICAgICAgICAgICAgICAgKGJvdW5kcyA0MDAuMDAgMjAuMDApCisgICAgICAgICAgICAg
ICAgICAoYmxlbmRNb2RlIGRpZmZlcmVuY2UpCisgICAgICAgICAgICAgICAgICAoY29udGVudHNP
cGFxdWUgMSkKKyAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICkKKyAgICAgICAgICAg
ICkKKyAgICAgICAgICApCisgICAgICAgICkKKyAgICAgICkKKyAgICApCisgICkKKykKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlv
bi1hY2NlbGVyYXRlZC1vdmVyZmxvdy1oaWRkZW4uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY29t
cG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tYWNjZWxlcmF0ZWQtb3ZlcmZsb3ctaGlkZGVu
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNTM5NTMwYTRhNmRkNTBhNmRmMDE3ZDEyNjgzYmVjYjZkMmQ1ZTk1
MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvYmxlbmQt
bW9kZS1pc29sYXRpb24tYWNjZWxlcmF0ZWQtb3ZlcmZsb3ctaGlkZGVuLmh0bWwKQEAgLTAsMCAr
MSwzNyBAQAorPCFET0NUWVBFIEhUTUw+Cis8c3R5bGU+CisgICAgLnBhcmVudCB7CisgICAgICAg
IHdpZHRoOiAxMDBweDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgb3ZlcmZsb3c6
aGlkZGVuOworICAgICAgICBpc29sYXRpb246aXNvbGF0ZTsKKyAgICAgICAgLXdlYmtpdC1pc29s
YXRpb246IGlzb2xhdGU7CisgICAgfQorCisgICAgLmJsZW5kZXIgeworICAgICAgICB3aWR0aDog
NDAwcHg7CisgICAgICAgIGhlaWdodDogMjBweDsKKyAgICAgICAgYmFja2dyb3VuZDogcmdiKDAs
IDI1NSwgMCk7CisgICAgICAgIG1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlOworICAgICAgICAt
d2Via2l0LW1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlOworICAgIH0KKworICAgIC5hY2NlbGVy
YXRlZCB7CisgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDBweCk7CisgICAg
fQorPC9zdHlsZT4KKworPCEtLSBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRo
IG92ZXJmbG93IGhpZGRlbiwgYmVpbmcgbm9ybWFsIGZsb3cgb25seSwgY2FuIGdldCBhY2NlbGVy
YXRlZCBpbiBvcmRlciB0byBpc29sYXRlIGJsZW5kaW5nIGRlc2NlbmRhbnRzIHByb3Blcmx5LiAt
LT4KKzwhLS0gVGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS4gLS0+Cis8
ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAgIDxkaXYgY2xhc3M9ImJsZW5kZXIgYWNjZWxlcmF0ZWQi
PjwvZGl2PgorPC9kaXY+CisKKzxwcmUgaWQ9ImxheWVyVHJlZSI+PC9wcmU+Cis8c2NyaXB0Pgor
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOworCisgICAgdmFyIHRleHQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibGF5
ZXJUcmVlIik7CisgICAgdGV4dC5pbm5lckhUTUwgPSB3aW5kb3cuaW50ZXJuYWxzLmxheWVyVHJl
ZUFzVGV4dChkb2N1bWVudCk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tb3ZlcmZsb3ctaGlkZGVuLWV4cGVj
dGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0
aW9uLW92ZXJmbG93LWhpZGRlbi1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA3M2E2ZTZmYTkw
OGNhZjg5ZDA4MDY3YzRjNmY4ZDYzMWYwMTgwNTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLW92ZXJmbG93LWhpZGRl
bi1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMjAgQEAKKzwhRE9DVFlQRSBIVE1MPgorPHN0eWxl
PgorICAgIC5wYXJlbnQgeworICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgIGhlaWdodDog
MTAwcHg7CisgICAgICAgIG92ZXJmbG93OmhpZGRlbjsKKyAgICB9CisKKyAgICAuYmxlbmRlciB7
CisgICAgICAgIHdpZHRoOiA0MDBweDsKKyAgICAgICAgaGVpZ2h0OiAyMHB4OworICAgICAgICBi
YWNrZ3JvdW5kOiByZ2IoMCwgMjU1LCAwKTsKKyAgICB9Cis8L3N0eWxlPgorCis8cD5UaGlzIHRl
c3QgY2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRlbiwgYmVpbmcgbm9y
bWFsIGZsb3cgb25seSwgaXNvbGF0ZXMgYmxlbmRpbmcgZGVzY2VuZGFudHMgcHJvcGVybHkuPGJy
Lz4KK1Rlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiByZWN0YW5nbGUuPC9wPgorPGRpdiBj
bGFzcz0icGFyZW50Ij4KKyAgICA8ZGl2IGNsYXNzPSJibGVuZGVyIj48L2Rpdj4KKzwvZGl2Pgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xh
dGlvbi1vdmVyZmxvdy1oaWRkZW4uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcv
YmxlbmQtbW9kZS1pc29sYXRpb24tb3ZlcmZsb3ctaGlkZGVuLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDI2
Y2I4MDQ3OWZkNGQwNmFhYTY4MTZjZTQzNDRlNGI3Y2RlZGIwOAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tb3ZlcmZs
b3ctaGlkZGVuLmh0bWwKQEAgLTAsMCArMSwyNCBAQAorPCFET0NUWVBFIEhUTUw+Cis8c3R5bGU+
CisgICAgLnBhcmVudCB7CisgICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgICAgaGVpZ2h0OiAx
MDBweDsKKyAgICAgICAgb3ZlcmZsb3c6aGlkZGVuOworICAgICAgICBpc29sYXRpb246aXNvbGF0
ZTsKKyAgICAgICAgLXdlYmtpdC1pc29sYXRpb246IGlzb2xhdGU7CisgICAgfQorCisgICAgLmJs
ZW5kZXIgeworICAgICAgICB3aWR0aDogNDAwcHg7CisgICAgICAgIGhlaWdodDogMjBweDsKKyAg
ICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7CisgICAgICAgIG1peC1ibGVuZC1tb2Rl
OiBkaWZmZXJlbmNlOworICAgICAgICAtd2Via2l0LW1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNl
OworICAgIH0KKzwvc3R5bGU+CisKKzxwPlRoaXMgdGVzdCBjaGVja3MgdGhhdCBhbiBlbGVtZW50
IHdpdGggb3ZlcmZsb3cgaGlkZGVuLCBiZWluZyBub3JtYWwgZmxvdyBvbmx5LCBpc29sYXRlcyBi
bGVuZGluZyBkZXNjZW5kYW50cyBwcm9wZXJseS48YnIvPgorVGVzdCBwYXNzZXMgaWYgeW91IHNl
ZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAgIDxkaXYg
Y2xhc3M9ImJsZW5kZXIiPjwvZGl2PgorPC9kaXY+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRp
bmctbGF5ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVu
ZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi42MDJjMTNmOTZiMDc5NjVhZmM0NmZhOTI0OGQxODNlMWYwMzYxMGUxCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2Rl
LWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDExIEBACitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgUmVuZGVyVmlldyBh
dCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDE1OAorICBSZW5k
ZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA4MDB4MTU4CisgICAgUmVuZGVyQm9keSB7Qk9E
WX0gYXQgKDgsMTYpIHNpemUgNzg0eDEzNAorICAgICAgUmVuZGVyQmxvY2sge1B9IGF0ICgwLDAp
IHNpemUgNzg0eDE4CisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDI1
MXgxOAorICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDI1MTogIlRlc3QgcGFzc2Vz
IGlmIHlvdSBzZWUgYSBncmVlbiByZWN0YW5nbGUuIgorbGF5ZXIgYXQgKDgsNTApIHNpemUgMTAw
eDEwMCBzY3JvbGxXaWR0aCA0MDAKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMzQpIHNpemUg
MTAweDEwMAorICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUgNDAweDIwIFtiZ2Nv
bG9yPSMwMEZGMDBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2Js
ZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIuaHRtbCBiL0xh
eW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVybi1vZmYt
c2VsZi1wYWludGluZy1sYXllci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJlNWQ4NTYzM2U4Yjg5NmM3Nzlj
YzkyYmJkZjZmMjExNWY0ZTc2ZTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3Mz
L2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmct
bGF5ZXIuaHRtbApAQCAtMCwwICsxLDQwIEBACis8IURPQ1RZUEUgSFRNTD4KKzxzdHlsZT4KKyAg
ICAucGFyZW50IHsKKyAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICBoZWlnaHQ6IDEwMHB4
OworICAgICAgICBvdmVyZmxvdzpoaWRkZW47CisgICAgICAgIGlzb2xhdGlvbjppc29sYXRlOwor
ICAgICAgICAtd2Via2l0LWlzb2xhdGlvbjogaXNvbGF0ZTsKKyAgICB9CisKKyAgICAuY2hpbGQg
eworICAgICAgICB3aWR0aDogNDAwcHg7CisgICAgICAgIGhlaWdodDogMjBweDsKKyAgICAgICAg
YmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7CisgICAgfQorCisgICAgLmJsZW5kaW5nIHsKKyAg
ICAgICAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgICAgIC13ZWJraXQtbWl4LWJs
ZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgfQorPC9zdHlsZT4KKworPCEtLSBUaGlzIHRlc3Qg
Y2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRlbiB3aWxsIGJlIGFibGUg
dG8gc3RvcCBpc29sYXRpbmcgYWZ0ZXIgZGluYW1pY2FsbHkgcmVtb3ZpbmcgbWl4LWJsZW5kLW1v
ZGUgb24gZGVzY2VuZGFudHMuIC0tPgorPHA+VGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVu
IHJlY3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAgIDxkaXYgaWQ9InRhcmdl
dCIgY2xhc3M9ImNoaWxkIGJsZW5kaW5nIj48L2Rpdj4KKzwvZGl2PgorCis8c2NyaXB0IHR5cGU9
InRleHQvamF2YXNjcmlwdCI+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisKKyAgICB3aW5kb3cuYWRkRXZlbnRM
aXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uKCkgeworICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CisgICAgICAgdGFyZ2V0LmNsYXNzTmFtZSA9ICJj
aGlsZCI7CisKKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0sIGZhbHNlKTsKKzwvc2NyaXB0Pgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xh
dGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYt
cGFpbnRpbmctbGF5ZXIxLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MDJjMTNmOTZiMDc5NjVh
ZmM0NmZhOTI0OGQxODNlMWYwMzYxMGUxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
Y3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50
aW5nLWxheWVyMS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorbGF5ZXIgYXQgKDAsMCkg
c2l6ZSA4MDB4NjAwCisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBh
dCAoMCwwKSBzaXplIDgwMHgxNTgKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUg
ODAweDE1OAorICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDE2KSBzaXplIDc4NHgxMzQKKyAg
ICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwwKSBzaXplIDc4NHgxOAorICAgICAgICBSZW5kZXJU
ZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAyNTF4MTgKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAo
MCwwKSB3aWR0aCAyNTE6ICJUZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xl
LiIKK2xheWVyIGF0ICg4LDUwKSBzaXplIDEwMHgxMDAgc2Nyb2xsV2lkdGggNDAwCisgIFJlbmRl
ckJsb2NrIHtESVZ9IGF0ICgwLDM0KSBzaXplIDEwMHgxMDAKKyAgICBSZW5kZXJCbG9jayB7RElW
fSBhdCAoMCwwKSBzaXplIDQwMHgyMCBbYmdjb2xvcj0jMDBGRjAwXQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1z
ZWxmLXBhaW50aW5nLWxheWVyMS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9i
bGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMS5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmY5MGM0NmIzNmM4ODgyYTgxNmE1NGMxMGE3NTEyNTc3MWZlYzEzZjYKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNv
bGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIxLmh0bWwKQEAgLTAsMCArMSw0NSBA
QAorPCFET0NUWVBFIEhUTUw+Cis8c3R5bGU+CisgICAgLnBhcmVudCB7CisgICAgICAgIHdpZHRo
OiAxMDBweDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgb3ZlcmZsb3c6aGlkZGVu
OworICAgICAgICBpc29sYXRpb246aXNvbGF0ZTsKKyAgICAgICAgLXdlYmtpdC1pc29sYXRpb246
IGlzb2xhdGU7CisgICAgfQorCisgICAgLmNoaWxkIHsKKyAgICAgICAgd2lkdGg6IDQwMHB4Owor
ICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAgICAgIGJhY2tncm91bmQ6IHJnYigwLCAyNTUsIDAp
OworICAgIH0KKworICAgIC5ibGVuZGluZyB7CisgICAgICAgIG1peC1ibGVuZC1tb2RlOiBkaWZm
ZXJlbmNlOworICAgICAgICAtd2Via2l0LW1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlOworICAg
IH0KKworICAgIGh0bWwgeworICAgICAgICAvKkZvcmNlIGNvbXBvc2l0aW5nLiovCisgICAgICAg
IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDBweCk7CisgICAgfQorPC9zdHlsZT4KKwor
PCEtLSBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRl
biB3aWxsIGJlIGFibGUgdG8gc3RvcCBpc29sYXRpbmcgYWZ0ZXIgZGluYW1pY2FsbHkgcmVtb3Zp
bmcgbWl4LWJsZW5kLW1vZGUgb24gZGVzY2VuZGFudHMuIC0tPgorPHA+VGVzdCBwYXNzZXMgaWYg
eW91IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAg
IDxkaXYgaWQ9InRhcmdldCIgY2xhc3M9ImNoaWxkIGJsZW5kaW5nIj48L2Rpdj4KKzwvZGl2Pgor
Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQorICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisKKyAgICB3
aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uKCkgeworICAgICAgIHZhciB0
YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CisgICAgICAgdGFyZ2V0
LmNsYXNzTmFtZSA9ICJjaGlsZCI7CisKKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0sIGZhbHNl
KTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9i
bGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMi1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9u
LXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4x
OWNhNDM1YzhiNjgyM2YyYjI0YzhhN2RhNjAyYmI5OTJhZTI3ZmEwCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJu
LW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMiBAQAor
bGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4
MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgwMHgxNTgKKyAgUmVuZGVyQmxvY2sge0hUTUx9
IGF0ICgwLDApIHNpemUgODAweDE1OAorICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDE2KSBz
aXplIDc4NHgxMzQKKyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwwKSBzaXplIDc4NHgxOAor
ICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAyNTF4MTgKKyAgICAgICAg
ICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAyNTE6ICJUZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEg
Z3JlZW4gcmVjdGFuZ2xlLiIKK2xheWVyIGF0ICg4LDUwKSBzaXplIDEwMHgxMDAgc2Nyb2xsV2lk
dGggNDAwCisgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDM0KSBzaXplIDEwMHgxMDAKK2xheWVy
IGF0ICg4LDUwKSBzaXplIDQwMHgyMCBiYWNrZ3JvdW5kQ2xpcCBhdCAoOCw1MCkgc2l6ZSAxMDB4
MTAwIGNsaXAgYXQgKDgsNTApIHNpemUgMTAweDEwMCBvdXRsaW5lQ2xpcCBhdCAoOCw1MCkgc2l6
ZSAxMDB4MTAwCisgIFJlbmRlckJsb2NrIChyZWxhdGl2ZSBwb3NpdGlvbmVkKSB7RElWfSBhdCAo
MCwwKSBzaXplIDQwMHgyMCBbYmdjb2xvcj0jMDBGRjAwXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBh
aW50aW5nLWxheWVyMi5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1t
b2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMi5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjhlMzg3MGU1NzM4ZWMwMTkyODY1MmRhNzQzY2ViYzE5NDI0OTVlNzEKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9u
LXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIyLmh0bWwKQEAgLTAsMCArMSw0MiBAQAorPCFE
T0NUWVBFIEhUTUw+Cis8c3R5bGU+CisgICAgLnBhcmVudCB7CisgICAgICAgIHdpZHRoOiAxMDBw
eDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgb3ZlcmZsb3c6aGlkZGVuOworICAg
ICAgICBpc29sYXRpb246aXNvbGF0ZTsKKyAgICAgICAgLXdlYmtpdC1pc29sYXRpb246IGlzb2xh
dGU7CisgICAgfQorCisgICAgLmNoaWxkIHsKKyAgICAgICAgd2lkdGg6IDQwMHB4OworICAgICAg
ICBoZWlnaHQ6IDIwcHg7CisgICAgICAgIGJhY2tncm91bmQ6IHJnYigwLCAyNTUsIDApOworICAg
ICAgICAvKktlZXAgY2hpbGQgUmVuZGVyTGF5ZXIgYWZ0ZXIgcmVtb3ZpbmcgYmxlbmRpbmcqLwor
ICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgfQorCisgICAgLmJsZW5kaW5nIHsKKyAg
ICAgICAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgICAgIC13ZWJraXQtbWl4LWJs
ZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgfQorPC9zdHlsZT4KKworPCEtLSBUaGlzIHRlc3Qg
Y2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRlbiB3aWxsIGJlIGFibGUg
dG8gc3RvcCBpc29sYXRpbmcgYWZ0ZXIgZGluYW1pY2FsbHkgcmVtb3ZpbmcgbWl4LWJsZW5kLW1v
ZGUgb24gZGVzY2VuZGFudHMuIC0tPgorPHA+VGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVu
IHJlY3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAgIDxkaXYgaWQ9InRhcmdl
dCIgY2xhc3M9ImNoaWxkIGJsZW5kaW5nIj48L2Rpdj4KKzwvZGl2PgorCis8c2NyaXB0IHR5cGU9
InRleHQvamF2YXNjcmlwdCI+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB3
aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisKKyAgICB3aW5kb3cuYWRkRXZlbnRM
aXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uKCkgeworICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CisgICAgICAgdGFyZ2V0LmNsYXNzTmFtZSA9ICJj
aGlsZCI7CisKKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgd2lu
ZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0sIGZhbHNlKTsKKzwvc2NyaXB0Pgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xh
dGlvbi10dXJuLW9uLXNlbGYtcGFpbnRpbmctbGF5ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9uLXNlbGYtcGFp
bnRpbmctbGF5ZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJjODhlMmE1NGI2YjJhNzIyNTRm
NzRlOTdlMGIxN2E0MzAyMWRkNjkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3Mz
L2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb24tc2VsZi1wYWludGluZy1s
YXllci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMiBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4
MDB4NjAwCisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCww
KSBzaXplIDgwMHgxNTgKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDE1
OAorICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDE2KSBzaXplIDc4NHgxMzQKKyAgICAgIFJl
bmRlckJsb2NrIHtQfSBhdCAoMCwwKSBzaXplIDc4NHgxOAorICAgICAgICBSZW5kZXJUZXh0IHsj
dGV4dH0gYXQgKDAsMCkgc2l6ZSAyNTF4MTgKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3
aWR0aCAyNTE6ICJUZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLiIKK2xh
eWVyIGF0ICg4LDUwKSBzaXplIDEwMHgxMDAgc2Nyb2xsV2lkdGggNDAwIGlzb2xhdGVzQmxlbmRp
bmcKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMzQpIHNpemUgMTAweDEwMAorbGF5ZXIgYXQg
KDgsNTApIHNpemUgNDAweDIwIGJhY2tncm91bmRDbGlwIGF0ICg4LDUwKSBzaXplIDEwMHgxMDAg
Y2xpcCBhdCAoOCw1MCkgc2l6ZSAxMDB4MTAwIG91dGxpbmVDbGlwIGF0ICg4LDUwKSBzaXplIDEw
MHgxMDAgYmxlbmRNb2RlOiBkaWZmZXJlbmNlCisgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDAp
IHNpemUgNDAweDIwIFtiZ2NvbG9yPSMwMEZGMDBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb24tc2VsZi1wYWludGlu
Zy1sYXllci5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlz
b2xhdGlvbi10dXJuLW9uLXNlbGYtcGFpbnRpbmctbGF5ZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNmVl
ZmFmMWEyZjZmZGRiOWY0YWExZjU2ODdlMmYyNTgzYWJhYmIwCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9u
LXNlbGYtcGFpbnRpbmctbGF5ZXIuaHRtbApAQCAtMCwwICsxLDQwIEBACis8IURPQ1RZUEUgSFRN
TD4KKzxzdHlsZT4KKyAgICAucGFyZW50IHsKKyAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAg
ICBoZWlnaHQ6IDEwMHB4OworICAgICAgICBvdmVyZmxvdzpoaWRkZW47CisgICAgICAgIGlzb2xh
dGlvbjppc29sYXRlOworICAgICAgICAtd2Via2l0LWlzb2xhdGlvbjogaXNvbGF0ZTsKKyAgICB9
CisKKyAgICAuY2hpbGQgeworICAgICAgICB3aWR0aDogNDAwcHg7CisgICAgICAgIGhlaWdodDog
MjBweDsKKyAgICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7CisgICAgfQorCisgICAg
LmJsZW5kaW5nIHsKKyAgICAgICAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgICAg
IC13ZWJraXQtbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgfQorPC9zdHlsZT4KKwor
PCEtLSBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRl
biwgbm90IGJlaW5nIGEgc2VsZiBwYWludGluZyBsYXllciwgd2lsbCBiZSBhYmxlIHRvIGR5bmFt
aWNhbGx5IGlzb2xhdGUgYmxlbmRpbmcgZGVzY2VuZGFudHMuIC0tPgorPHA+VGVzdCBwYXNzZXMg
aWYgeW91IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgor
ICAgIDxkaXYgaWQ9InRhcmdldCIgY2xhc3M9ImNoaWxkIj48L2Rpdj4KKzwvZGl2PgorCis8c2Ny
aXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisKKyAgICB3aW5kb3cu
YWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uKCkgeworICAgICAgIHZhciB0YXJnZXQg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CisgICAgICAgdGFyZ2V0LmNsYXNz
TmFtZSA9ICJibGVuZGluZyBjaGlsZCI7CisKKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQorICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0sIGZh
bHNlKTsKKzwvc2NyaXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>230417</attachid>
            <date>2014-04-29 14:22:08 -0700</date>
            <delta_ts>2014-05-06 07:03:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-130891-20140430002144.patch</filename>
            <type>text/plain</type>
            <size>26054</size>
            <attacher name="Ion Rosca">rosca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY3ODcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzRhYTVhY2Q3ZTk3OWRl
ZTUyYTIwMGE2ODdlNTk5MjE5NDE1ZGVmYS4uODA2NTEwNDczODIxZWZhZmM1NTgxYjgwMGY2NDhl
YWRjMTRjYTk4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDE0LTA0LTI5ICBJb24g
Um9zY2EgIDxyb3NjYUBhZG9iZS5jb20+CisKKyAgICAgICAgW0NTUyBCbGVuZGluZ10gQmxlbmRp
bmcgZG9lc24ndCB3b3JrIGlmIHRoZSBwYXJlbnQgc3RhY2tpbmcgY29udGV4dCBpcyBhIG5vcm1h
bCBmbG93IG9ubHkgZWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTMwODkxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGhlIHN0YWNraW5nIGNvbnRleHQgbGF5ZXJzIGhhdmluZyB1bmlzb2xhdGVk
IGJsZW5kaW5nIGRlc2NlbmRhbnRzIHNob3VsZCBiZSBhYmxlCisgICAgICAgIHRvIGNyZWF0ZSB0
cmFuc3BhcmVuY3kgbGF5ZXJzIG9yIHRvIGJlY29tZSBjb21wb3NpdGVkIGluIG9yZGVyIHRvIHJl
c3RyaWN0IGJsZW5kaW5nIAorICAgICAgICBjb250ZW50IHRvIGFjY2Vzc2luZyB0aGUgaW5mb3Jt
YXRpb24gb3V0c2lkZSB0aGUgY3VycmVudCBzdGFja2luZyBjb250ZXh0LgorICAgICAgICBTb21l
IGxheWVycyBhcmUgbm90IHNlbGYgcGFpbnRpbmcgbGF5ZXJzIGFuZCB0aGVzZSBsYXllcnMgY2Fu
bm90IGNyYXRlIHRyYW5zcGFyZW5jeQorICAgICAgICBsYXllcnMgYW5kIGNhbm5vdCBiZSBjb21w
b3NpdGVkLCB0aHVzIHRoZXkgYXJlIG5vdCBhYmxlIHRvIGlzb2xhdGUgYmxlbmRpbmcgZGVzY2Vu
ZGFudHMKKyAgICAgICAgd2hlbiBpdCdzIHJlcXVpcmVkLgorCisgICAgICAgIFRoZSBzb2x1dGlv
biBpbiB0aGlzIHBhdGNoIGlzIHRvIG1ha2UgYSBsYXllciBpc1NlbGZQYWludGluZ0xheWVyIHdo
ZW4KKyAgICAgICAgaXQgbmVlZHMgdG8gaXNvbGF0ZSBibGVuZGluZyBkZXNjZW5kYW50cyAoaGFz
VW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMpLgorCisgICAgICAgIFRlc3RzOiBjc3MzL2Nv
bXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLWFjY2VsZXJhdGVkLW92ZXJmbG93LWhpZGRl
bi5odG1sCisgICAgICAgICAgICAgICBjc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0
aW9uLW92ZXJmbG93LWhpZGRlbi5odG1sCisgICAgICAgICAgICAgICBjc3MzL2NvbXBvc2l0aW5n
L2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIuaHRtbAor
ICAgICAgICAgICAgICAgY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJu
LW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMS5odG1sCisgICAgICAgICAgICAgICBjc3MzL2NvbXBv
c2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIy
Lmh0bWwKKyAgICAgICAgICAgICAgIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRp
b24tdHVybi1vbi1zZWxmLXBhaW50aW5nLWxheWVyLmh0bWwKKworICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJMYXllci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6dXBkYXRl
QW5jZXN0b3JDaGFpbkhhc0JsZW5kaW5nRGVzY2VuZGFudHMpOgorICAgICAgICBXaGVuIGhhc1Vu
aXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzIGdldHMgc2V0IHdlIG1ha2Ugc3VyZSB0aGF0IGlz
U2VsZlBhaW50aW5nTGF5ZXIgZmxhZyBpcyBzZXQgdG9vLgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTGF5ZXI6OnVwZGF0ZURlc2NlbmRhbnREZXBlbmRlbnRGbGFncyk6CisgICAgICAgIENoYW5n
aW5nIGNvZGUgc28gdGhhdCBtZW1iZXIgZmxhZ3MgYXJlIG5vdCBhZmZlY3RlZCBiZWZvcmUgd2Fs
a2luZyBkZXNjZW5kYW50cy4gV2hlbiBjYWxsaW5nCisgICAgICAgIHVwZGF0ZURlc2NlbmRhbnRE
ZXBlbmRlbnRGbGFncyBvbiBjaGlsZHJlbiwgdGhleSBtaWdodCB3YW50IHRvIHNldC9yZXNldCBm
bGFncyBiYWNrIG9uIGFuY2VzdG9ycy4KKyAgICAgICAgVGhpcyBpcyB0aGUgY2FzZSBmb3IgYmxl
bmRpbmcgY2FsbGluZyB1cGRhdGVJc1NlbGZQYWludGluZ0xheWVyLCB3aGljaCBtaWdodCBzZXQg
b3IgZGlydHkKKyAgICAgICAgb24gYW5jZXN0b3JzIHRoZSBoYXNTZWxmUGFpbnRpbmdMYXllckRl
c2NlbmRhbnRzIGZsYWcgYW5kIGl0IHdpbGwgdHJpZ2dlciBhbiBhc3NlcnQgaW4KKyAgICAgICAg
ZGlydHlBbmNlc3RvckNoYWluSGFzU2VsZlBhaW50aW5nTGF5ZXJEZXNjZW5kYW50U3RhdHVzLgor
ICAgICAgICBUaGlzIGNoYW5nZSBzaG91bGQgbm90IGFmZmVjdCB0aGUgbG9naWNzIGJlaGluZCB0
aGUgb3RoZXIgZmxhZ3MuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6c2hvdWxkQmVT
ZWxmUGFpbnRpbmdMYXllcik6CisgICAgICAgIEFkZGluZyBpc29sYXRlc0JsZW5kaW5nKCkgY29u
ZGl0aW9uIGZvciBhIGxheWVyIHRvIGJlIHNlbGYgcGFpbnRpbmcuCisgICAgICAgICogcmVuZGVy
aW5nL1JlbmRlckxheWVyLmg6CisgICAgICAgIENoYW5naW5nIGlzb2xhdGVzQmxlbmRpbmcoKSB0
byBjaGVjayBpc1N0YWNraW5nQ29udGV4dCgpIGZpcnN0LCB0aGlzIHdpbGwgYXZvaWQKKyAgICAg
ICAgdGhlIGFzc2VydGlvbiBpbiBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cygpIGZv
ciBub24tc3RhY2tpbmcgY29udGV4dCBlbGVtZW50cy4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyTGF5ZXJNb2RlbE9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllck1v
ZGVsT2JqZWN0OjpzdHlsZURpZENoYW5nZSk6CisgICAgICAgIFRlbGxpbmcgYW5jZXN0b3JzIHRo
YXQgYmxlbmQgbW9kZSBwcm9wZXJ0eSBoYXMgYmVlbiByZW1vdmVkIGZyb20gQ1NTIHdoZW4gdGhl
IGxheWVyIGZvcgorICAgICAgICB0aGlzIGVsZW1lbnQgaXMgbm90IG5lZWRlZCBhbnltb3JlIGFu
ZCBpdCdzIGdvaW5nIHRvIGJlIHJlbW92ZWQuCisKIDIwMTQtMDQtMjcgIEFuZHJlaSBCdWN1ciAg
PGFidWN1ckBhZG9iZS5jb20+CiAKICAgICAgICAgU3RvcmUgdGhlIGNvbnRhaW5pbmcgcmVnaW9u
IG1hcCBpbnNpZGUgdGhlIGZsb3cgdGhyZWFkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckxheWVyLmNwcAppbmRleCA1NWJlOTI0YTc3M2JkMDBkYWJjZGY5NDczZmU0NTUzMmI4MmU5NGU4
Li5iMWRhZjVmNjRiNGYwNTlmYTY4NTk3NGM5M2ZjOTM2MTA1NjcyOTI3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKQEAgLTgyOCw2ICs4MjgsOCBAQCB2b2lkIFJl
bmRlckxheWVyOjp1cGRhdGVBbmNlc3RvckNoYWluSGFzQmxlbmRpbmdEZXNjZW5kYW50cygpCiAg
ICAgICAgIGxheWVyLT5tX2hhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzID0gdHJ1ZTsK
ICAgICAgICAgbGF5ZXItPm1faGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHNTdGF0dXNE
aXJ0eSA9IGZhbHNlOwogCisgICAgICAgIGxheWVyLT51cGRhdGVTZWxmUGFpbnRpbmdMYXllcigp
OworCiAgICAgICAgIGlmIChsYXllci0+aXNTdGFja2luZ0NvbnRleHQoKSkKICAgICAgICAgICAg
IGJyZWFrOwogICAgIH0KQEAgLTEwOTAsMTEgKzEwOTIsMTEgQEAgdm9pZCBSZW5kZXJMYXllcjo6
c2V0QW5jZXN0b3JDaGFpbkhhc1Zpc2libGVEZXNjZW5kYW50KCkKIHZvaWQgUmVuZGVyTGF5ZXI6
OnVwZGF0ZURlc2NlbmRhbnREZXBlbmRlbnRGbGFncyhIYXNoU2V0PGNvbnN0IFJlbmRlck9iamVj
dCo+KiBvdXRPZkZsb3dEZXNjZW5kYW50Q29udGFpbmluZ0Jsb2NrcykKIHsKICAgICBpZiAobV92
aXNpYmxlRGVzY2VuZGFudFN0YXR1c0RpcnR5IHx8IG1faGFzU2VsZlBhaW50aW5nTGF5ZXJEZXNj
ZW5kYW50RGlydHkgfHwgbV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2VuZGFudERpcnR5IHx8
IGhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzU3RhdHVzRGlydHkoKSkgewotICAgICAg
ICBtX2hhc1Zpc2libGVEZXNjZW5kYW50ID0gZmFsc2U7Ci0gICAgICAgIG1faGFzU2VsZlBhaW50
aW5nTGF5ZXJEZXNjZW5kYW50ID0gZmFsc2U7Ci0gICAgICAgIG1faGFzT3V0T2ZGbG93UG9zaXRp
b25lZERlc2NlbmRhbnQgPSBmYWxzZTsKKyAgICAgICAgYm9vbCBoYXNWaXNpYmxlRGVzY2VuZGFu
dCA9IGZhbHNlOworICAgICAgICBib29sIGhhc1NlbGZQYWludGluZ0xheWVyRGVzY2VuZGFudCA9
IGZhbHNlOworICAgICAgICBib29sIGhhc091dE9mRmxvd1Bvc2l0aW9uZWREZXNjZW5kYW50ID0g
ZmFsc2U7CiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKLSAgICAgICAgbV9oYXNVbmlzb2xh
dGVkQmxlbmRpbmdEZXNjZW5kYW50cyA9IGZhbHNlOworICAgICAgICBib29sIGhhc1VuaXNvbGF0
ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzID0gZmFsc2U7CiAjZW5kaWYKIAogICAgICAgICBIYXNoU2V0
PGNvbnN0IFJlbmRlck9iamVjdCo+IGNoaWxkT3V0T2ZGbG93RGVzY2VuZGFudENvbnRhaW5pbmdC
bG9ja3M7CkBAIC0xMTEyLDIxICsxMTE0LDE2IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZURl
c2NlbmRhbnREZXBlbmRlbnRGbGFncyhIYXNoU2V0PGNvbnN0IFJlbmRlck9iamVjdCo+KiBvCiAg
ICAgICAgICAgICAgICAgICAgIG91dE9mRmxvd0Rlc2NlbmRhbnRDb250YWluaW5nQmxvY2tzLT5h
ZGQoKml0KTsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgYm9vbCBoYXNWaXNpYmxlRGVz
Y2VuZGFudCA9IGNoaWxkLT5tX2hhc1Zpc2libGVDb250ZW50IHx8IGNoaWxkLT5tX2hhc1Zpc2li
bGVEZXNjZW5kYW50OwotICAgICAgICAgICAgYm9vbCBoYXNTZWxmUGFpbnRpbmdMYXllckRlc2Nl
bmRhbnQgPSBjaGlsZC0+aXNTZWxmUGFpbnRpbmdMYXllcigpIHx8IGNoaWxkLT5oYXNTZWxmUGFp
bnRpbmdMYXllckRlc2NlbmRhbnQoKTsKLSAgICAgICAgICAgIGJvb2wgaGFzT3V0T2ZGbG93UG9z
aXRpb25lZERlc2NlbmRhbnQgPSAhY2hpbGRPdXRPZkZsb3dEZXNjZW5kYW50Q29udGFpbmluZ0Js
b2Nrcy5pc0VtcHR5KCk7CisgICAgICAgICAgICBoYXNWaXNpYmxlRGVzY2VuZGFudCB8PSBjaGls
ZC0+bV9oYXNWaXNpYmxlQ29udGVudCB8fCBjaGlsZC0+bV9oYXNWaXNpYmxlRGVzY2VuZGFudDsK
KyAgICAgICAgICAgIGhhc1NlbGZQYWludGluZ0xheWVyRGVzY2VuZGFudCB8PSBjaGlsZC0+aXNT
ZWxmUGFpbnRpbmdMYXllcigpIHx8IGNoaWxkLT5oYXNTZWxmUGFpbnRpbmdMYXllckRlc2NlbmRh
bnQoKTsKKyAgICAgICAgICAgIGhhc091dE9mRmxvd1Bvc2l0aW9uZWREZXNjZW5kYW50IHw9ICFj
aGlsZE91dE9mRmxvd0Rlc2NlbmRhbnRDb250YWluaW5nQmxvY2tzLmlzRW1wdHkoKTsKICNpZiBF
TkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQotICAgICAgICAgICAgYm9vbCBoYXNVbmlzb2xhdGVkQmxl
bmRpbmdEZXNjZW5kYW50cyA9IGNoaWxkLT5oYXNCbGVuZE1vZGUoKSB8fCAoY2hpbGQtPmhhc1Vu
aXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzKCkgJiYgIWNoaWxkLT5pc29sYXRlc0JsZW5kaW5n
KCkpOwotCi0gICAgICAgICAgICBtX2hhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzIHw9
IGhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzOworICAgICAgICAgICAgaGFzVW5pc29s
YXRlZEJsZW5kaW5nRGVzY2VuZGFudHMgfD0gY2hpbGQtPmhhc0JsZW5kTW9kZSgpIHx8IChjaGls
ZC0+aGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMoKSAmJiAhY2hpbGQtPmlzb2xhdGVz
QmxlbmRpbmcoKSk7CiAjZW5kaWYKLSAgICAgICAgICAgIG1faGFzVmlzaWJsZURlc2NlbmRhbnQg
fD0gaGFzVmlzaWJsZURlc2NlbmRhbnQ7Ci0gICAgICAgICAgICBtX2hhc1NlbGZQYWludGluZ0xh
eWVyRGVzY2VuZGFudCB8PSBoYXNTZWxmUGFpbnRpbmdMYXllckRlc2NlbmRhbnQ7Ci0gICAgICAg
ICAgICBtX2hhc091dE9mRmxvd1Bvc2l0aW9uZWREZXNjZW5kYW50IHw9IGhhc091dE9mRmxvd1Bv
c2l0aW9uZWREZXNjZW5kYW50OwogCi0gICAgICAgICAgICBib29sIGFsbEZsYWdzU2V0ID0gbV9o
YXNWaXNpYmxlRGVzY2VuZGFudCAmJiBtX2hhc1NlbGZQYWludGluZ0xheWVyRGVzY2VuZGFudCAm
JiBtX2hhc091dE9mRmxvd1Bvc2l0aW9uZWREZXNjZW5kYW50OworICAgICAgICAgICAgYm9vbCBh
bGxGbGFnc1NldCA9IGhhc1Zpc2libGVEZXNjZW5kYW50ICYmIGhhc1NlbGZQYWludGluZ0xheWVy
RGVzY2VuZGFudCAmJiBoYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2VuZGFudDsKICNpZiBFTkFC
TEUoQ1NTX0NPTVBPU0lUSU5HKQotICAgICAgICAgICAgYWxsRmxhZ3NTZXQgJj0gbV9oYXNVbmlz
b2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50czsKKyAgICAgICAgICAgIGFsbEZsYWdzU2V0ICY9IGhh
c1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzOwogI2VuZGlmCiAgICAgICAgICAgICBpZiAo
YWxsRmxhZ3NTZXQpCiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0xMTM1LDE1ICsxMTMyLDIy
IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZURlc2NlbmRhbnREZXBlbmRlbnRGbGFncyhIYXNo
U2V0PGNvbnN0IFJlbmRlck9iamVjdCo+KiBvCiAgICAgICAgIGlmIChvdXRPZkZsb3dEZXNjZW5k
YW50Q29udGFpbmluZ0Jsb2NrcykKICAgICAgICAgICAgIG91dE9mRmxvd0Rlc2NlbmRhbnRDb250
YWluaW5nQmxvY2tzLT5yZW1vdmUoJnJlbmRlcmVyKCkpOwogCisgICAgICAgIG1faGFzVmlzaWJs
ZURlc2NlbmRhbnQgPSBoYXNWaXNpYmxlRGVzY2VuZGFudDsKICAgICAgICAgbV92aXNpYmxlRGVz
Y2VuZGFudFN0YXR1c0RpcnR5ID0gZmFsc2U7CisgICAgICAgIG1faGFzU2VsZlBhaW50aW5nTGF5
ZXJEZXNjZW5kYW50ID0gaGFzU2VsZlBhaW50aW5nTGF5ZXJEZXNjZW5kYW50OwogICAgICAgICBt
X2hhc1NlbGZQYWludGluZ0xheWVyRGVzY2VuZGFudERpcnR5ID0gZmFsc2U7CiAKKyAgICAgICAg
bV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2VuZGFudCA9IGhhc091dE9mRmxvd1Bvc2l0aW9u
ZWREZXNjZW5kYW50OwogICAgICAgICBpZiAobV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2Vu
ZGFudERpcnR5KQogICAgICAgICAgICAgdXBkYXRlTmVlZHNDb21wb3NpdGVkU2Nyb2xsaW5nKCk7
CiAKICAgICAgICAgbV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2VuZGFudERpcnR5ID0gZmFs
c2U7CiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKLSAgICAgICAgbV9oYXNVbmlzb2xhdGVk
QmxlbmRpbmdEZXNjZW5kYW50c1N0YXR1c0RpcnR5ID0gZmFsc2U7CisgICAgICAgIG1faGFzVW5p
c29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMgPSBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5k
YW50czsKKyAgICAgICAgaWYgKG1faGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHNTdGF0
dXNEaXJ0eSkgeworICAgICAgICAgICAgbV9oYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50
c1N0YXR1c0RpcnR5ID0gZmFsc2U7CisgICAgICAgICAgICB1cGRhdGVTZWxmUGFpbnRpbmdMYXll
cigpOworICAgICAgICB9CiAjZW5kaWYKICAgICB9CiAKQEAgLTY0MzQsNiArNjQzOCw3IEBAIGJv
b2wgUmVuZGVyTGF5ZXI6OnNob3VsZEJlU2VsZlBhaW50aW5nTGF5ZXIoKSBjb25zdAogICAgIHJl
dHVybiAhaXNOb3JtYWxGbG93T25seSgpCiAgICAgICAgIHx8IGhhc092ZXJsYXlTY3JvbGxiYXJz
KCkKICAgICAgICAgfHwgbmVlZHNDb21wb3NpdGVkU2Nyb2xsaW5nKCkKKyAgICAgICAgfHwgaXNv
bGF0ZXNCbGVuZGluZygpCiAgICAgICAgIHx8IHJlbmRlcmVyKCkuaGFzUmVmbGVjdGlvbigpCiAg
ICAgICAgIHx8IHJlbmRlcmVyKCkuaGFzTWFzaygpCiAgICAgICAgIHx8IHJlbmRlcmVyKCkuaXNU
YWJsZVJvdygpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5oCmluZGV4IDAwZjZk
ZDJkYTlhMTNjMGU0MjkzZjkxODBkNjU0Yjc0NDgwMWEwZGIuLjM3NGM2NGQ0Mzg0NTgxYWI0ODIy
YzAxNDY3ZDIyMmNjYWJjNTIyY2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJMYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXll
ci5oCkBAIC04MDIsNyArODAyLDcgQEAgcHVibGljOgogICAgICAgICBtX2hhc1VuaXNvbGF0ZWRD
b21wb3NpdGVkQmxlbmRpbmdEZXNjZW5kYW50cyA9IGhhc1VuaXNvbGF0ZWRDb21wb3NpdGVkQmxl
bmRpbmdEZXNjZW5kYW50czsKICAgICB9CiAKLSAgICBib29sIGlzb2xhdGVzQmxlbmRpbmcoKSBj
b25zdCB7IHJldHVybiBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cygpICYmIGlzU3Rh
Y2tpbmdDb250ZXh0KCk7IH0KKyAgICBib29sIGlzb2xhdGVzQmxlbmRpbmcoKSBjb25zdCB7IHJl
dHVybiBpc1N0YWNraW5nQ29udGV4dCgpICYmIGhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRh
bnRzKCk7IH0KICAgICBib29sIGhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzKCkgY29u
c3QKICAgICB7CiAgICAgICAgIEFTU0VSVCghbV9oYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5k
YW50c1N0YXR1c0RpcnR5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJMYXllck1vZGVsT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJMYXllck1vZGVsT2JqZWN0LmNwcAppbmRleCBlYjhmMmU5Zjk0MTc4OWZjN2Y5MjczODkzNzg4
ZWU1YzcwZTBhMmU4Li5iZWRmNjMyNTM1M2VjMzg4Mjg2ZDZkZTE1ZGNhOTk2ZGQwODY2NWM2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJNb2RlbE9iamVj
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyTW9kZWxPYmpl
Y3QuY3BwCkBAIC0xNTEsNiArMTUxLDEwIEBAIHZvaWQgUmVuZGVyTGF5ZXJNb2RlbE9iamVjdDo6
c3R5bGVEaWRDaGFuZ2UoU3R5bGVEaWZmZXJlbmNlIGRpZmYsIGNvbnN0IFJlbmRlclN0CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0KICAgICB9IGVsc2UgaWYgKGxheWVyKCkgJiYgbGF5ZXIoKS0+
cGFyZW50KCkpIHsKKyNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQorICAgICAgICBpZiAob2xk
U3R5bGUtPmhhc0JsZW5kTW9kZSgpKQorICAgICAgICAgICAgbGF5ZXIoKS0+cGFyZW50KCktPmRp
cnR5QW5jZXN0b3JDaGFpbkhhc0JsZW5kaW5nRGVzY2VuZGFudHMoKTsKKyNlbmRpZgogICAgICAg
ICBzZXRIYXNUcmFuc2Zvcm0oZmFsc2UpOyAvLyBFaXRoZXIgYSB0cmFuc2Zvcm0gd2Fzbid0IHNw
ZWNpZmllZCBvciB0aGUgb2JqZWN0IGRvZXNuJ3Qgc3VwcG9ydCB0cmFuc2Zvcm1zLCBzbyBqdXN0
IG51bGwgb3V0IHRoZSBiaXQuCiAgICAgICAgIHNldEhhc1JlZmxlY3Rpb24oZmFsc2UpOwogICAg
ICAgICBsYXllcigpLT5yZW1vdmVPbmx5VGhpc0xheWVyKCk7IC8vIGNhbGxzIGRlc3Ryb3lMYXll
cigpIHdoaWNoIGNsZWFycyBtX2xheWVyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYWY3OTNkZmFlMzUzM2MzZDM1MGUxNWY2
ZGEzZDg4NWYyYTliYWFlNi4uMjZjZjU1Y2YzOTBkMDk1OTdmYzIzYzhjYzQ1OTI5NmM5NjJhMTlk
NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE0LTA0LTI5ICBJb24gUm9zY2EgIDxyb3NjYUBh
ZG9iZS5jb20+CisKKyAgICAgICAgW0NTUyBCbGVuZGluZ10gQmxlbmRpbmcgZG9lc24ndCB3b3Jr
IGlmIHRoZSBwYXJlbnQgc3RhY2tpbmcgY29udGV4dCBpcyBhIG5vcm1hbCBmbG93IG9ubHkgZWxl
bWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMw
ODkxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBj
c3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLWFjY2VsZXJhdGVkLW92ZXJmbG93
LWhpZGRlbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcv
YmxlbmQtbW9kZS1pc29sYXRpb24tYWNjZWxlcmF0ZWQtb3ZlcmZsb3ctaGlkZGVuLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tb3Zl
cmZsb3ctaGlkZGVuLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9z
aXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tb3ZlcmZsb3ctaGlkZGVuLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVybi1vZmYt
c2VsZi1wYWludGluZy1sYXllci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMv
Y29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVybi1vZmYtc2VsZi1wYWludGluZy1s
YXllci5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUt
aXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIxLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJu
LW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2Nv
bXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5
ZXIyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogY3NzMy9jb21wb3NpdGluZy9ibGVu
ZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMi5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4t
b24tc2VsZi1wYWludGluZy1sYXllci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNz
czMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVybi1vbi1zZWxmLXBhaW50aW5n
LWxheWVyLmh0bWw6IEFkZGVkLgorCiAyMDE0LTA0LTI3ICBBbmRyZWkgQnVjdXIgIDxhYnVjdXJA
YWRvYmUuY29tPgogCiAgICAgICAgIFN0b3JlIHRoZSBjb250YWluaW5nIHJlZ2lvbiBtYXAgaW5z
aWRlIHRoZSBmbG93IHRocmVhZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3Np
dGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi1hY2NlbGVyYXRlZC1vdmVyZmxvdy1oaWRkZW4tZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xh
dGlvbi1hY2NlbGVyYXRlZC1vdmVyZmxvdy1oaWRkZW4tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjkxOWFmNjY4NmVjZWNkY2QyNmFiMTMxOGVmNWM5M2I2NTMyNjQxYzYKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLWFj
Y2VsZXJhdGVkLW92ZXJmbG93LWhpZGRlbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyOCBAQAor
KEdyYXBoaWNzTGF5ZXIKKyAgKGJvdW5kcyA4MDAuMDAgNjAwLjAwKQorICAoY2hpbGRyZW4gMQor
ICAgIChHcmFwaGljc0xheWVyCisgICAgICAoYm91bmRzIDgwMC4wMCA2MDAuMDApCisgICAgICAo
Y29udGVudHNPcGFxdWUgMSkKKyAgICAgIChjaGlsZHJlbiAxCisgICAgICAgIChHcmFwaGljc0xh
eWVyCisgICAgICAgICAgKHBvc2l0aW9uIDguMDAgOC4wMCkKKyAgICAgICAgICAoYm91bmRzIDEw
MC4wMCAxMDAuMDApCisgICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgIChHcmFwaGlj
c0xheWVyCisgICAgICAgICAgICAgIChib3VuZHMgMTAwLjAwIDEwMC4wMCkKKyAgICAgICAgICAg
ICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAg
ICAgICAgICAgKGJvdW5kcyA0MDAuMDAgMjAuMDApCisgICAgICAgICAgICAgICAgICAoYmxlbmRN
b2RlIGRpZmZlcmVuY2UpCisgICAgICAgICAgICAgICAgICAoY29udGVudHNPcGFxdWUgMSkKKyAg
ICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICkKKyAgICAgICAg
ICApCisgICAgICAgICkKKyAgICAgICkKKyAgICApCisgICkKKykKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi1hY2NlbGVyYXRl
ZC1vdmVyZmxvdy1oaWRkZW4uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvYmxl
bmQtbW9kZS1pc29sYXRpb24tYWNjZWxlcmF0ZWQtb3ZlcmZsb3ctaGlkZGVuLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNTM5NTMwYTRhNmRkNTBhNmRmMDE3ZDEyNjgzYmVjYjZkMmQ1ZTk1MwotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRp
b24tYWNjZWxlcmF0ZWQtb3ZlcmZsb3ctaGlkZGVuLmh0bWwKQEAgLTAsMCArMSwzNyBAQAorPCFE
T0NUWVBFIEhUTUw+Cis8c3R5bGU+CisgICAgLnBhcmVudCB7CisgICAgICAgIHdpZHRoOiAxMDBw
eDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgb3ZlcmZsb3c6aGlkZGVuOworICAg
ICAgICBpc29sYXRpb246aXNvbGF0ZTsKKyAgICAgICAgLXdlYmtpdC1pc29sYXRpb246IGlzb2xh
dGU7CisgICAgfQorCisgICAgLmJsZW5kZXIgeworICAgICAgICB3aWR0aDogNDAwcHg7CisgICAg
ICAgIGhlaWdodDogMjBweDsKKyAgICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7Cisg
ICAgICAgIG1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlOworICAgICAgICAtd2Via2l0LW1peC1i
bGVuZC1tb2RlOiBkaWZmZXJlbmNlOworICAgIH0KKworICAgIC5hY2NlbGVyYXRlZCB7CisgICAg
ICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDBweCk7CisgICAgfQorPC9zdHlsZT4K
KworPCEtLSBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhp
ZGRlbiwgYmVpbmcgbm9ybWFsIGZsb3cgb25seSwgY2FuIGdldCBhY2NlbGVyYXRlZCBpbiBvcmRl
ciB0byBpc29sYXRlIGJsZW5kaW5nIGRlc2NlbmRhbnRzIHByb3Blcmx5LiAtLT4KKzwhLS0gVGVz
dCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS4gLS0+Cis8ZGl2IGNsYXNzPSJw
YXJlbnQiPgorICAgIDxkaXYgY2xhc3M9ImJsZW5kZXIgYWNjZWxlcmF0ZWQiPjwvZGl2PgorPC9k
aXY+CisKKzxwcmUgaWQ9ImxheWVyVHJlZSI+PC9wcmU+Cis8c2NyaXB0PgorICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikKKyAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwor
CisgICAgdmFyIHRleHQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibGF5ZXJUcmVlIik7Cisg
ICAgdGV4dC5pbm5lckhUTUwgPSB3aW5kb3cuaW50ZXJuYWxzLmxheWVyVHJlZUFzVGV4dChkb2N1
bWVudCk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRp
bmcvYmxlbmQtbW9kZS1pc29sYXRpb24tb3ZlcmZsb3ctaGlkZGVuLWV4cGVjdGVkLmh0bWwgYi9M
YXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLW92ZXJmbG93
LWhpZGRlbi1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA3M2E2ZTZmYTkwOGNhZjg5ZDA4MDY3
YzRjNmY4ZDYzMWYwMTgwNTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2Nv
bXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLW92ZXJmbG93LWhpZGRlbi1leHBlY3RlZC5o
dG1sCkBAIC0wLDAgKzEsMjAgQEAKKzwhRE9DVFlQRSBIVE1MPgorPHN0eWxlPgorICAgIC5wYXJl
bnQgeworICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgIGhlaWdodDogMTAwcHg7CisgICAg
ICAgIG92ZXJmbG93OmhpZGRlbjsKKyAgICB9CisKKyAgICAuYmxlbmRlciB7CisgICAgICAgIHdp
ZHRoOiA0MDBweDsKKyAgICAgICAgaGVpZ2h0OiAyMHB4OworICAgICAgICBiYWNrZ3JvdW5kOiBy
Z2IoMCwgMjU1LCAwKTsKKyAgICB9Cis8L3N0eWxlPgorCis8cD5UaGlzIHRlc3QgY2hlY2tzIHRo
YXQgYW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRlbiwgYmVpbmcgbm9ybWFsIGZsb3cgb25s
eSwgaXNvbGF0ZXMgYmxlbmRpbmcgZGVzY2VuZGFudHMgcHJvcGVybHkuPGJyLz4KK1Rlc3QgcGFz
c2VzIGlmIHlvdSBzZWUgYSBncmVlbiByZWN0YW5nbGUuPC9wPgorPGRpdiBjbGFzcz0icGFyZW50
Ij4KKyAgICA8ZGl2IGNsYXNzPSJibGVuZGVyIj48L2Rpdj4KKzwvZGl2PgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi1vdmVyZmxv
dy1oaWRkZW4uaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1p
c29sYXRpb24tb3ZlcmZsb3ctaGlkZGVuLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDI2Y2I4MDQ3OWZkNGQw
NmFhYTY4MTZjZTQzNDRlNGI3Y2RlZGIwOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2NzczMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tb3ZlcmZsb3ctaGlkZGVuLmh0
bWwKQEAgLTAsMCArMSwyNCBAQAorPCFET0NUWVBFIEhUTUw+Cis8c3R5bGU+CisgICAgLnBhcmVu
dCB7CisgICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAg
ICAgb3ZlcmZsb3c6aGlkZGVuOworICAgICAgICBpc29sYXRpb246aXNvbGF0ZTsKKyAgICAgICAg
LXdlYmtpdC1pc29sYXRpb246IGlzb2xhdGU7CisgICAgfQorCisgICAgLmJsZW5kZXIgeworICAg
ICAgICB3aWR0aDogNDAwcHg7CisgICAgICAgIGhlaWdodDogMjBweDsKKyAgICAgICAgYmFja2dy
b3VuZDogcmdiKDAsIDI1NSwgMCk7CisgICAgICAgIG1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNl
OworICAgICAgICAtd2Via2l0LW1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlOworICAgIH0KKzwv
c3R5bGU+CisKKzxwPlRoaXMgdGVzdCBjaGVja3MgdGhhdCBhbiBlbGVtZW50IHdpdGggb3ZlcmZs
b3cgaGlkZGVuLCBiZWluZyBub3JtYWwgZmxvdyBvbmx5LCBpc29sYXRlcyBibGVuZGluZyBkZXNj
ZW5kYW50cyBwcm9wZXJseS48YnIvPgorVGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHJl
Y3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAgIDxkaXYgY2xhc3M9ImJsZW5k
ZXIiPjwvZGl2PgorPC9kaXY+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0
aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXItZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xh
dGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42MDJjMTNmOTZiMDc5NjVhZmM0NmZhOTI0OGQxODNlMWYwMzYxMGUxCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10
dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBA
CitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXpl
IDgwMHg2MDAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDE1OAorICBSZW5kZXJCbG9jayB7SFRN
TH0gYXQgKDAsMCkgc2l6ZSA4MDB4MTU4CisgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsMTYp
IHNpemUgNzg0eDEzNAorICAgICAgUmVuZGVyQmxvY2sge1B9IGF0ICgwLDApIHNpemUgNzg0eDE4
CisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDI1MXgxOAorICAgICAg
ICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDI1MTogIlRlc3QgcGFzc2VzIGlmIHlvdSBzZWUg
YSBncmVlbiByZWN0YW5nbGUuIgorbGF5ZXIgYXQgKDgsNTApIHNpemUgMTAweDEwMCBzY3JvbGxX
aWR0aCA0MDAKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMzQpIHNpemUgMTAweDEwMAorICAg
IFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUgNDAweDIwIFtiZ2NvbG9yPSMwMEZGMDBd
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNv
bGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIuaHRtbCBiL0xheW91dFRlc3RzL2Nz
czMvY29tcG9zaXRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVybi1vZmYtc2VsZi1wYWludGlu
Zy1sYXllci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJlNWQ4NTYzM2U4Yjg5NmM3NzljYzkyYmJkZjZmMjEx
NWY0ZTc2ZTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5n
L2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIuaHRtbApA
QCAtMCwwICsxLDQwIEBACis8IURPQ1RZUEUgSFRNTD4KKzxzdHlsZT4KKyAgICAucGFyZW50IHsK
KyAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICBv
dmVyZmxvdzpoaWRkZW47CisgICAgICAgIGlzb2xhdGlvbjppc29sYXRlOworICAgICAgICAtd2Vi
a2l0LWlzb2xhdGlvbjogaXNvbGF0ZTsKKyAgICB9CisKKyAgICAuY2hpbGQgeworICAgICAgICB3
aWR0aDogNDAwcHg7CisgICAgICAgIGhlaWdodDogMjBweDsKKyAgICAgICAgYmFja2dyb3VuZDog
cmdiKDAsIDI1NSwgMCk7CisgICAgfQorCisgICAgLmJsZW5kaW5nIHsKKyAgICAgICAgbWl4LWJs
ZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgICAgIC13ZWJraXQtbWl4LWJsZW5kLW1vZGU6IGRp
ZmZlcmVuY2U7CisgICAgfQorPC9zdHlsZT4KKworPCEtLSBUaGlzIHRlc3QgY2hlY2tzIHRoYXQg
YW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRlbiB3aWxsIGJlIGFibGUgdG8gc3RvcCBpc29s
YXRpbmcgYWZ0ZXIgZGluYW1pY2FsbHkgcmVtb3ZpbmcgbWl4LWJsZW5kLW1vZGUgb24gZGVzY2Vu
ZGFudHMuIC0tPgorPHA+VGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48
L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAgIDxkaXYgaWQ9InRhcmdldCIgY2xhc3M9ImNo
aWxkIGJsZW5kaW5nIj48L2Rpdj4KKzwvZGl2PgorCis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNj
cmlwdCI+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci53YWl0VW50aWxEb25lKCk7CisKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9h
ZCcsIGZ1bmN0aW9uKCkgeworICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidGFyZ2V0Iik7CisgICAgICAgdGFyZ2V0LmNsYXNzTmFtZSA9ICJjaGlsZCI7CisKKyAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIubm90aWZ5RG9uZSgpOworICAgIH0sIGZhbHNlKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9m
Zi1zZWxmLXBhaW50aW5nLWxheWVyMS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2Nv
bXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5
ZXIxLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MDJjMTNmOTZiMDc5NjVhZmM0NmZhOTI0OGQx
ODNlMWYwMzYxMGUxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3Np
dGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMS1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAw
CisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXpl
IDgwMHgxNTgKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDE1OAorICAg
IFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDE2KSBzaXplIDc4NHgxMzQKKyAgICAgIFJlbmRlckJs
b2NrIHtQfSBhdCAoMCwwKSBzaXplIDc4NHgxOAorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0g
YXQgKDAsMCkgc2l6ZSAyNTF4MTgKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAy
NTE6ICJUZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLiIKK2xheWVyIGF0
ICg4LDUwKSBzaXplIDEwMHgxMDAgc2Nyb2xsV2lkdGggNDAwCisgIFJlbmRlckJsb2NrIHtESVZ9
IGF0ICgwLDM0KSBzaXplIDEwMHgxMDAKKyAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCwwKSBz
aXplIDQwMHgyMCBbYmdjb2xvcj0jMDBGRjAwXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5n
LWxheWVyMS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlz
b2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMS5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY5
MGM0NmIzNmM4ODgyYTgxNmE1NGMxMGE3NTEyNTc3MWZlYzEzZjYKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4t
b2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIxLmh0bWwKQEAgLTAsMCArMSw0NSBAQAorPCFET0NUWVBF
IEhUTUw+Cis8c3R5bGU+CisgICAgLnBhcmVudCB7CisgICAgICAgIHdpZHRoOiAxMDBweDsKKyAg
ICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgICAgb3ZlcmZsb3c6aGlkZGVuOworICAgICAgICBp
c29sYXRpb246aXNvbGF0ZTsKKyAgICAgICAgLXdlYmtpdC1pc29sYXRpb246IGlzb2xhdGU7Cisg
ICAgfQorCisgICAgLmNoaWxkIHsKKyAgICAgICAgd2lkdGg6IDQwMHB4OworICAgICAgICBoZWln
aHQ6IDIwcHg7CisgICAgICAgIGJhY2tncm91bmQ6IHJnYigwLCAyNTUsIDApOworICAgIH0KKwor
ICAgIC5ibGVuZGluZyB7CisgICAgICAgIG1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlOworICAg
ICAgICAtd2Via2l0LW1peC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlOworICAgIH0KKworICAgIGh0
bWwgeworICAgICAgICAvKkZvcmNlIGNvbXBvc2l0aW5nLiovCisgICAgICAgIC13ZWJraXQtdHJh
bnNmb3JtOiB0cmFuc2xhdGVaKDBweCk7CisgICAgfQorPC9zdHlsZT4KKworPCEtLSBUaGlzIHRl
c3QgY2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRlbiB3aWxsIGJlIGFi
bGUgdG8gc3RvcCBpc29sYXRpbmcgYWZ0ZXIgZGluYW1pY2FsbHkgcmVtb3ZpbmcgbWl4LWJsZW5k
LW1vZGUgb24gZGVzY2VuZGFudHMuIC0tPgorPHA+VGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdy
ZWVuIHJlY3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAgIDxkaXYgaWQ9InRh
cmdldCIgY2xhc3M9ImNoaWxkIGJsZW5kaW5nIj48L2Rpdj4KKzwvZGl2PgorCis8c2NyaXB0IHR5
cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAg
ICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisKKyAgICB3aW5kb3cuYWRkRXZl
bnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uKCkgeworICAgICAgIHZhciB0YXJnZXQgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CisgICAgICAgdGFyZ2V0LmNsYXNzTmFtZSA9
ICJjaGlsZCI7CisKKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAg
d2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0sIGZhbHNlKTsKKzwvc2NyaXB0
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlz
b2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMi1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNl
bGYtcGFpbnRpbmctbGF5ZXIyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xOWNhNDM1YzhiNjgy
M2YyYjI0YzhhN2RhNjAyYmI5OTJhZTI3ZmEwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBh
aW50aW5nLWxheWVyMi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMiBAQAorbGF5ZXIgYXQgKDAs
MCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXll
ciBhdCAoMCwwKSBzaXplIDgwMHgxNTgKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNp
emUgODAweDE1OAorICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDE2KSBzaXplIDc4NHgxMzQK
KyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwwKSBzaXplIDc4NHgxOAorICAgICAgICBSZW5k
ZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAyNTF4MTgKKyAgICAgICAgICB0ZXh0IHJ1biBh
dCAoMCwwKSB3aWR0aCAyNTE6ICJUZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFu
Z2xlLiIKK2xheWVyIGF0ICg4LDUwKSBzaXplIDEwMHgxMDAgc2Nyb2xsV2lkdGggNDAwCisgIFJl
bmRlckJsb2NrIHtESVZ9IGF0ICgwLDM0KSBzaXplIDEwMHgxMDAKK2xheWVyIGF0ICg4LDUwKSBz
aXplIDQwMHgyMCBiYWNrZ3JvdW5kQ2xpcCBhdCAoOCw1MCkgc2l6ZSAxMDB4MTAwIGNsaXAgYXQg
KDgsNTApIHNpemUgMTAweDEwMCBvdXRsaW5lQ2xpcCBhdCAoOCw1MCkgc2l6ZSAxMDB4MTAwCisg
IFJlbmRlckJsb2NrIChyZWxhdGl2ZSBwb3NpdGlvbmVkKSB7RElWfSBhdCAoMCwwKSBzaXplIDQw
MHgyMCBbYmdjb2xvcj0jMDBGRjAwXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21w
b3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVy
Mi5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlv
bi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhlMzg3MGU1
NzM4ZWMwMTkyODY1MmRhNzQzY2ViYzE5NDI0OTVlNzEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNl
bGYtcGFpbnRpbmctbGF5ZXIyLmh0bWwKQEAgLTAsMCArMSw0MiBAQAorPCFET0NUWVBFIEhUTUw+
Cis8c3R5bGU+CisgICAgLnBhcmVudCB7CisgICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgICAg
aGVpZ2h0OiAxMDBweDsKKyAgICAgICAgb3ZlcmZsb3c6aGlkZGVuOworICAgICAgICBpc29sYXRp
b246aXNvbGF0ZTsKKyAgICAgICAgLXdlYmtpdC1pc29sYXRpb246IGlzb2xhdGU7CisgICAgfQor
CisgICAgLmNoaWxkIHsKKyAgICAgICAgd2lkdGg6IDQwMHB4OworICAgICAgICBoZWlnaHQ6IDIw
cHg7CisgICAgICAgIGJhY2tncm91bmQ6IHJnYigwLCAyNTUsIDApOworICAgICAgICAvKktlZXAg
Y2hpbGQgUmVuZGVyTGF5ZXIgYWZ0ZXIgcmVtb3ZpbmcgYmxlbmRpbmcqLworICAgICAgICBwb3Np
dGlvbjogcmVsYXRpdmU7CisgICAgfQorCisgICAgLmJsZW5kaW5nIHsKKyAgICAgICAgbWl4LWJs
ZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgICAgIC13ZWJraXQtbWl4LWJsZW5kLW1vZGU6IGRp
ZmZlcmVuY2U7CisgICAgfQorPC9zdHlsZT4KKworPCEtLSBUaGlzIHRlc3QgY2hlY2tzIHRoYXQg
YW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRlbiB3aWxsIGJlIGFibGUgdG8gc3RvcCBpc29s
YXRpbmcgYWZ0ZXIgZGluYW1pY2FsbHkgcmVtb3ZpbmcgbWl4LWJsZW5kLW1vZGUgb24gZGVzY2Vu
ZGFudHMuIC0tPgorPHA+VGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48
L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAgIDxkaXYgaWQ9InRhcmdldCIgY2xhc3M9ImNo
aWxkIGJsZW5kaW5nIj48L2Rpdj4KKzwvZGl2PgorCis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNj
cmlwdCI+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci53YWl0VW50aWxEb25lKCk7CisKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9h
ZCcsIGZ1bmN0aW9uKCkgeworICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidGFyZ2V0Iik7CisgICAgICAgdGFyZ2V0LmNsYXNzTmFtZSA9ICJjaGlsZCI7CisKKyAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIubm90aWZ5RG9uZSgpOworICAgIH0sIGZhbHNlKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9u
LXNlbGYtcGFpbnRpbmctbGF5ZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jb21w
b3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9uLXNlbGYtcGFpbnRpbmctbGF5ZXIt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJjODhlMmE1NGI2YjJhNzIyNTRmNzRlOTdlMGIxN2E0
MzAyMWRkNjkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5n
L2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb24tc2VsZi1wYWludGluZy1sYXllci1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxMiBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJl
bmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDgwMHgx
NTgKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDE1OAorICAgIFJlbmRl
ckJvZHkge0JPRFl9IGF0ICg4LDE2KSBzaXplIDc4NHgxMzQKKyAgICAgIFJlbmRlckJsb2NrIHtQ
fSBhdCAoMCwwKSBzaXplIDc4NHgxOAorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAs
MCkgc2l6ZSAyNTF4MTgKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAyNTE6ICJU
ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLiIKK2xheWVyIGF0ICg4LDUw
KSBzaXplIDEwMHgxMDAgc2Nyb2xsV2lkdGggNDAwIGlzb2xhdGVzQmxlbmRpbmcKKyAgUmVuZGVy
QmxvY2sge0RJVn0gYXQgKDAsMzQpIHNpemUgMTAweDEwMAorbGF5ZXIgYXQgKDgsNTApIHNpemUg
NDAweDIwIGJhY2tncm91bmRDbGlwIGF0ICg4LDUwKSBzaXplIDEwMHgxMDAgY2xpcCBhdCAoOCw1
MCkgc2l6ZSAxMDB4MTAwIG91dGxpbmVDbGlwIGF0ICg4LDUwKSBzaXplIDEwMHgxMDAgYmxlbmRN
b2RlOiBkaWZmZXJlbmNlCisgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUgNDAweDIw
IFtiZ2NvbG9yPSMwMEZGMDBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0
aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb24tc2VsZi1wYWludGluZy1sYXllci5odG1s
IGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJu
LW9uLXNlbGYtcGFpbnRpbmctbGF5ZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNmVlZmFmMWEyZjZmZGRi
OWY0YWExZjU2ODdlMmYyNTgzYWJhYmIwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
Y3NzMy9jb21wb3NpdGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9uLXNlbGYtcGFpbnRp
bmctbGF5ZXIuaHRtbApAQCAtMCwwICsxLDQwIEBACis8IURPQ1RZUEUgSFRNTD4KKzxzdHlsZT4K
KyAgICAucGFyZW50IHsKKyAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICBoZWlnaHQ6IDEw
MHB4OworICAgICAgICBvdmVyZmxvdzpoaWRkZW47CisgICAgICAgIGlzb2xhdGlvbjppc29sYXRl
OworICAgICAgICAtd2Via2l0LWlzb2xhdGlvbjogaXNvbGF0ZTsKKyAgICB9CisKKyAgICAuY2hp
bGQgeworICAgICAgICB3aWR0aDogNDAwcHg7CisgICAgICAgIGhlaWdodDogMjBweDsKKyAgICAg
ICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7CisgICAgfQorCisgICAgLmJsZW5kaW5nIHsK
KyAgICAgICAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgICAgIC13ZWJraXQtbWl4
LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgfQorPC9zdHlsZT4KKworPCEtLSBUaGlzIHRl
c3QgY2hlY2tzIHRoYXQgYW4gZWxlbWVudCB3aXRoIG92ZXJmbG93IGhpZGRlbiwgbm90IGJlaW5n
IGEgc2VsZiBwYWludGluZyBsYXllciwgd2lsbCBiZSBhYmxlIHRvIGR5bmFtaWNhbGx5IGlzb2xh
dGUgYmxlbmRpbmcgZGVzY2VuZGFudHMuIC0tPgorPHA+VGVzdCBwYXNzZXMgaWYgeW91IHNlZSBh
IGdyZWVuIHJlY3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPgorICAgIDxkaXYgaWQ9
InRhcmdldCIgY2xhc3M9ImNoaWxkIj48L2Rpdj4KKzwvZGl2PgorCis8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB3aW5k
b3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0
ZW5lcignbG9hZCcsIGZ1bmN0aW9uKCkgeworICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CisgICAgICAgdGFyZ2V0LmNsYXNzTmFtZSA9ICJibGVu
ZGluZyBjaGlsZCI7CisKKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAg
ICAgd2luZG93LnRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0sIGZhbHNlKTsKKzwvc2Ny
aXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>230903</attachid>
            <date>2014-05-06 07:03:16 -0700</date>
            <delta_ts>2014-05-07 22:42:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-130891-20140506170254.patch</filename>
            <type>text/plain</type>
            <size>29452</size>
            <attacher name="Ion Rosca">rosca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY4MzU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzMxZTRiYzNhMTFkZjVk
ZWVkZTg5N2NhYTBlZTJkZTcyMWQ4ODBiNy4uMTIwZGRlMjJhOWNhYTMyZTEzOTAxOGRhODQ5OTk0
NDg3NzU4NGViNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDE0LTA1LTA2ICBJb24g
Um9zY2EgIDxyb3NjYUBhZG9iZS5jb20+CisKKyAgICAgICAgW0NTUyBCbGVuZGluZ10gQmxlbmRp
bmcgZG9lc24ndCB3b3JrIGlmIHRoZSBwYXJlbnQgc3RhY2tpbmcgY29udGV4dCBpcyBub3QgYSBz
ZWxmIHBhaW50aW5nIGxheWVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMzA4OTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBUaGUgc3RhY2tpbmcgY29udGV4dCBsYXllcnMgaGF2aW5nIHVuaXNvbGF0ZWQg
YmxlbmRpbmcgZGVzY2VuZGFudHMgc2hvdWxkIGJlIGFibGUKKyAgICAgICAgdG8gY3JlYXRlIHRy
YW5zcGFyZW5jeSBsYXllcnMgb3IgdG8gYmVjb21lIGNvbXBvc2l0ZWQgaW4gb3JkZXIgdG8gcmVz
dHJpY3QgYmxlbmRpbmcgCisgICAgICAgIGNvbnRlbnQgdG8gYWNjZXNzaW5nIHRoZSBpbmZvcm1h
dGlvbiBvdXRzaWRlIHRoZSBjdXJyZW50IHN0YWNraW5nIGNvbnRleHQuCisgICAgICAgIFNvbWUg
bGF5ZXJzIGFyZSBub3Qgc2VsZiBwYWludGluZyBsYXllcnMgYW5kIHRoZXNlIGxheWVycyBjYW5u
b3QgY3JhdGUgdHJhbnNwYXJlbmN5CisgICAgICAgIGxheWVycyBhbmQgY2Fubm90IGJlIGNvbXBv
c2l0ZWQsIHRodXMgdGhleSBhcmUgbm90IGFibGUgdG8gaXNvbGF0ZSBibGVuZGluZyBkZXNjZW5k
YW50cworICAgICAgICB3aGVuIGl0J3MgcmVxdWlyZWQuCisgICAgICAgIAorICAgICAgICBUaGUg
c29sdXRpb24gaW4gdGhpcyBwYXRjaCBpcyB0byBtYWtlIGEgbGF5ZXIgaXNTZWxmUGFpbnRpbmdM
YXllciB3aGVuCisgICAgICAgIGl0IG5lZWRzIHRvIGlzb2xhdGUgYmxlbmRpbmcgZGVzY2VuZGFu
dHMgKGhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzKS4KKworICAgICAgICBUZXN0czog
Y3NzMy9ibGVuZGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi1hY2NlbGVyYXRlZC1vdmVyZmxvdy1o
aWRkZW4uaHRtbAorICAgICAgICAgICAgICAgY3NzMy9ibGVuZGluZy9ibGVuZC1tb2RlLWlzb2xh
dGlvbi1vdmVyZmxvdy1oaWRkZW4uaHRtbAorICAgICAgICAgICAgICAgY3NzMy9ibGVuZGluZy9i
bGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyLmh0bWwKKyAg
ICAgICAgICAgICAgIGNzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVybi1vZmYt
c2VsZi1wYWludGluZy1sYXllcjEuaHRtbAorICAgICAgICAgICAgICAgY3NzMy9ibGVuZGluZy9i
bGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyMi5odG1sCisg
ICAgICAgICAgICAgICBjc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb24t
c2VsZi1wYWludGluZy1sYXllci5odG1sCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OnVwZGF0ZUFuY2VzdG9yQ2hh
aW5IYXNCbGVuZGluZ0Rlc2NlbmRhbnRzKToKKyAgICAgICAgV2hlbiBoYXNVbmlzb2xhdGVkQmxl
bmRpbmdEZXNjZW5kYW50cyBpcyBzZXQgd2UgbWFrZSBzdXJlIHRoYXQgaXNTZWxmUGFpbnRpbmdM
YXllciBmbGFnIGlzIHNldCB0b28uCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6dXBk
YXRlRGVzY2VuZGFudERlcGVuZGVudEZsYWdzKToKKyAgICAgICAgVGhlIGZsYWdzIG1pZ2h0IGJl
IHJlYWQgb3IgY2hhbmdlZCB3aGlsZSB3YWxraW5nIHRoZSBkZXNjZW5kYW50cywgc28gd2UgZG9u
J3Qgd2FudCB0byByZXNldAorICAgICAgICB0aGVtIGJlZm9yZSB0cmF2ZXJzaW5nIHRoZSB0cmVl
LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OnNob3VsZEJlU2VsZlBhaW50aW5nTGF5
ZXIpOgorICAgICAgICBBZGRpbmcgaXNvbGF0ZXNCbGVuZGluZygpIGNvbmRpdGlvbiBmb3IgYSBs
YXllciB0byBiZSBzZWxmIHBhaW50aW5nLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXll
ci5oOgorICAgICAgICBSZW1vdmluZyBBU1NFUlQgZnJvbSBoYXNVbmlzb2xhdGVkQmxlbmRpbmdE
ZXNjZW5kYW50cygpLiBJdCBjcmFzaGVzIGluIG1pbmlicm93c2VyCisgICAgICAgIGFuZCBpbiBs
YXlvdXQgdGVzdHMgd2hlbiBwYWludGluZyBjb250ZW50cy4gU2ltaWxhciBidWdzIG9uIG90aGVy
IGZsYWdzOiAjNzEwNDQsICM3MTI3Ny4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJN
b2RlbE9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllck1vZGVsT2JqZWN0
OjpzdHlsZURpZENoYW5nZSk6CisgICAgICAgIFRlbGxpbmcgYW5jZXN0b3JzIHRoYXQgYmxlbmQg
bW9kZSBwcm9wZXJ0eSBoYXMgYmVlbiByZW1vdmVkIGZyb20gQ1NTIHdoZW4gdGhlIGxheWVyIGZv
cgorICAgICAgICB0aGlzIGVsZW1lbnQgaXMgZ29pbmcgdG8gYmUgcmVtb3ZlZDsgc3R5bGVDaGFu
Z2VkIHdpbGwgbm90IGJlIGNhbGxlZCBhbnltb3JlLgorCiAyMDE0LTA1LTA1ICBaYW4gRG9iZXJz
ZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KIAogICAgICAgICBbU291cF0gVXNlIHN0ZDo6dW5p
cXVlX3B0cjxjaGFyW10+IGZvciB0aGUgcmVhZCBidWZmZXIgaW4gU29ja2V0U3RyZWFtSGFuZGxl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAppbmRleCBhMzUwNDdhNzE1
MGQzZjcxMGRhZGY2NDRjZmRlMWE1NGNkNzZkYTdhLi5hYWZkNGU0ZGU5ODk4YjAxNmMwYTVkMWFm
MjQzNDQyZTBiZmM2ZGZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyTGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5j
cHAKQEAgLTgzOCw2ICs4MzgsOCBAQCB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVBbmNlc3RvckNo
YWluSGFzQmxlbmRpbmdEZXNjZW5kYW50cygpCiAgICAgICAgIGxheWVyLT5tX2hhc1VuaXNvbGF0
ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzID0gdHJ1ZTsKICAgICAgICAgbGF5ZXItPm1faGFzVW5pc29s
YXRlZEJsZW5kaW5nRGVzY2VuZGFudHNTdGF0dXNEaXJ0eSA9IGZhbHNlOwogCisgICAgICAgIGxh
eWVyLT51cGRhdGVTZWxmUGFpbnRpbmdMYXllcigpOworCiAgICAgICAgIGlmIChsYXllci0+aXNT
dGFja2luZ0NvbnRleHQoKSkKICAgICAgICAgICAgIGJyZWFrOwogICAgIH0KQEAgLTExMDAsMTEg
KzExMDIsMTEgQEAgdm9pZCBSZW5kZXJMYXllcjo6c2V0QW5jZXN0b3JDaGFpbkhhc1Zpc2libGVE
ZXNjZW5kYW50KCkKIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZURlc2NlbmRhbnREZXBlbmRlbnRG
bGFncyhIYXNoU2V0PGNvbnN0IFJlbmRlck9iamVjdCo+KiBvdXRPZkZsb3dEZXNjZW5kYW50Q29u
dGFpbmluZ0Jsb2NrcykKIHsKICAgICBpZiAobV92aXNpYmxlRGVzY2VuZGFudFN0YXR1c0RpcnR5
IHx8IG1faGFzU2VsZlBhaW50aW5nTGF5ZXJEZXNjZW5kYW50RGlydHkgfHwgbV9oYXNPdXRPZkZs
b3dQb3NpdGlvbmVkRGVzY2VuZGFudERpcnR5IHx8IGhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2Nl
bmRhbnRzU3RhdHVzRGlydHkoKSkgewotICAgICAgICBtX2hhc1Zpc2libGVEZXNjZW5kYW50ID0g
ZmFsc2U7Ci0gICAgICAgIG1faGFzU2VsZlBhaW50aW5nTGF5ZXJEZXNjZW5kYW50ID0gZmFsc2U7
Ci0gICAgICAgIG1faGFzT3V0T2ZGbG93UG9zaXRpb25lZERlc2NlbmRhbnQgPSBmYWxzZTsKKyAg
ICAgICAgYm9vbCBoYXNWaXNpYmxlRGVzY2VuZGFudCA9IGZhbHNlOworICAgICAgICBib29sIGhh
c1NlbGZQYWludGluZ0xheWVyRGVzY2VuZGFudCA9IGZhbHNlOworICAgICAgICBib29sIGhhc091
dE9mRmxvd1Bvc2l0aW9uZWREZXNjZW5kYW50ID0gZmFsc2U7CiAjaWYgRU5BQkxFKENTU19DT01Q
T1NJVElORykKLSAgICAgICAgbV9oYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cyA9IGZh
bHNlOworICAgICAgICBib29sIGhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzID0gZmFs
c2U7CiAjZW5kaWYKIAogICAgICAgICBIYXNoU2V0PGNvbnN0IFJlbmRlck9iamVjdCo+IGNoaWxk
T3V0T2ZGbG93RGVzY2VuZGFudENvbnRhaW5pbmdCbG9ja3M7CkBAIC0xMTIyLDIxICsxMTI0LDE2
IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZURlc2NlbmRhbnREZXBlbmRlbnRGbGFncyhIYXNo
U2V0PGNvbnN0IFJlbmRlck9iamVjdCo+KiBvCiAgICAgICAgICAgICAgICAgICAgIG91dE9mRmxv
d0Rlc2NlbmRhbnRDb250YWluaW5nQmxvY2tzLT5hZGQoKml0KTsKICAgICAgICAgICAgIH0KIAot
ICAgICAgICAgICAgYm9vbCBoYXNWaXNpYmxlRGVzY2VuZGFudCA9IGNoaWxkLT5tX2hhc1Zpc2li
bGVDb250ZW50IHx8IGNoaWxkLT5tX2hhc1Zpc2libGVEZXNjZW5kYW50OwotICAgICAgICAgICAg
Ym9vbCBoYXNTZWxmUGFpbnRpbmdMYXllckRlc2NlbmRhbnQgPSBjaGlsZC0+aXNTZWxmUGFpbnRp
bmdMYXllcigpIHx8IGNoaWxkLT5oYXNTZWxmUGFpbnRpbmdMYXllckRlc2NlbmRhbnQoKTsKLSAg
ICAgICAgICAgIGJvb2wgaGFzT3V0T2ZGbG93UG9zaXRpb25lZERlc2NlbmRhbnQgPSAhY2hpbGRP
dXRPZkZsb3dEZXNjZW5kYW50Q29udGFpbmluZ0Jsb2Nrcy5pc0VtcHR5KCk7CisgICAgICAgICAg
ICBoYXNWaXNpYmxlRGVzY2VuZGFudCB8PSBjaGlsZC0+bV9oYXNWaXNpYmxlQ29udGVudCB8fCBj
aGlsZC0+bV9oYXNWaXNpYmxlRGVzY2VuZGFudDsKKyAgICAgICAgICAgIGhhc1NlbGZQYWludGlu
Z0xheWVyRGVzY2VuZGFudCB8PSBjaGlsZC0+aXNTZWxmUGFpbnRpbmdMYXllcigpIHx8IGNoaWxk
LT5oYXNTZWxmUGFpbnRpbmdMYXllckRlc2NlbmRhbnQoKTsKKyAgICAgICAgICAgIGhhc091dE9m
Rmxvd1Bvc2l0aW9uZWREZXNjZW5kYW50IHw9ICFjaGlsZE91dE9mRmxvd0Rlc2NlbmRhbnRDb250
YWluaW5nQmxvY2tzLmlzRW1wdHkoKTsKICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQotICAg
ICAgICAgICAgYm9vbCBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cyA9IGNoaWxkLT5o
YXNCbGVuZE1vZGUoKSB8fCAoY2hpbGQtPmhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRz
KCkgJiYgIWNoaWxkLT5pc29sYXRlc0JsZW5kaW5nKCkpOwotCi0gICAgICAgICAgICBtX2hhc1Vu
aXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzIHw9IGhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2Nl
bmRhbnRzOworICAgICAgICAgICAgaGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMgfD0g
Y2hpbGQtPmhhc0JsZW5kTW9kZSgpIHx8IChjaGlsZC0+aGFzVW5pc29sYXRlZEJsZW5kaW5nRGVz
Y2VuZGFudHMoKSAmJiAhY2hpbGQtPmlzb2xhdGVzQmxlbmRpbmcoKSk7CiAjZW5kaWYKLSAgICAg
ICAgICAgIG1faGFzVmlzaWJsZURlc2NlbmRhbnQgfD0gaGFzVmlzaWJsZURlc2NlbmRhbnQ7Ci0g
ICAgICAgICAgICBtX2hhc1NlbGZQYWludGluZ0xheWVyRGVzY2VuZGFudCB8PSBoYXNTZWxmUGFp
bnRpbmdMYXllckRlc2NlbmRhbnQ7Ci0gICAgICAgICAgICBtX2hhc091dE9mRmxvd1Bvc2l0aW9u
ZWREZXNjZW5kYW50IHw9IGhhc091dE9mRmxvd1Bvc2l0aW9uZWREZXNjZW5kYW50OwogCi0gICAg
ICAgICAgICBib29sIGFsbEZsYWdzU2V0ID0gbV9oYXNWaXNpYmxlRGVzY2VuZGFudCAmJiBtX2hh
c1NlbGZQYWludGluZ0xheWVyRGVzY2VuZGFudCAmJiBtX2hhc091dE9mRmxvd1Bvc2l0aW9uZWRE
ZXNjZW5kYW50OworICAgICAgICAgICAgYm9vbCBhbGxGbGFnc1NldCA9IGhhc1Zpc2libGVEZXNj
ZW5kYW50ICYmIGhhc1NlbGZQYWludGluZ0xheWVyRGVzY2VuZGFudCAmJiBoYXNPdXRPZkZsb3dQ
b3NpdGlvbmVkRGVzY2VuZGFudDsKICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQotICAgICAg
ICAgICAgYWxsRmxhZ3NTZXQgJj0gbV9oYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50czsK
KyAgICAgICAgICAgIGFsbEZsYWdzU2V0ICY9IGhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRh
bnRzOwogI2VuZGlmCiAgICAgICAgICAgICBpZiAoYWxsRmxhZ3NTZXQpCiAgICAgICAgICAgICAg
ICAgYnJlYWs7CkBAIC0xMTQ1LDE1ICsxMTQyLDIyIEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0
ZURlc2NlbmRhbnREZXBlbmRlbnRGbGFncyhIYXNoU2V0PGNvbnN0IFJlbmRlck9iamVjdCo+KiBv
CiAgICAgICAgIGlmIChvdXRPZkZsb3dEZXNjZW5kYW50Q29udGFpbmluZ0Jsb2NrcykKICAgICAg
ICAgICAgIG91dE9mRmxvd0Rlc2NlbmRhbnRDb250YWluaW5nQmxvY2tzLT5yZW1vdmUoJnJlbmRl
cmVyKCkpOwogCisgICAgICAgIG1faGFzVmlzaWJsZURlc2NlbmRhbnQgPSBoYXNWaXNpYmxlRGVz
Y2VuZGFudDsKICAgICAgICAgbV92aXNpYmxlRGVzY2VuZGFudFN0YXR1c0RpcnR5ID0gZmFsc2U7
CisgICAgICAgIG1faGFzU2VsZlBhaW50aW5nTGF5ZXJEZXNjZW5kYW50ID0gaGFzU2VsZlBhaW50
aW5nTGF5ZXJEZXNjZW5kYW50OwogICAgICAgICBtX2hhc1NlbGZQYWludGluZ0xheWVyRGVzY2Vu
ZGFudERpcnR5ID0gZmFsc2U7CiAKKyAgICAgICAgbV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVz
Y2VuZGFudCA9IGhhc091dE9mRmxvd1Bvc2l0aW9uZWREZXNjZW5kYW50OwogICAgICAgICBpZiAo
bV9oYXNPdXRPZkZsb3dQb3NpdGlvbmVkRGVzY2VuZGFudERpcnR5KQogICAgICAgICAgICAgdXBk
YXRlTmVlZHNDb21wb3NpdGVkU2Nyb2xsaW5nKCk7CiAKICAgICAgICAgbV9oYXNPdXRPZkZsb3dQ
b3NpdGlvbmVkRGVzY2VuZGFudERpcnR5ID0gZmFsc2U7CiAjaWYgRU5BQkxFKENTU19DT01QT1NJ
VElORykKLSAgICAgICAgbV9oYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50c1N0YXR1c0Rp
cnR5ID0gZmFsc2U7CisgICAgICAgIG1faGFzVW5pc29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHMg
PSBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50czsKKyAgICAgICAgaWYgKG1faGFzVW5p
c29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHNTdGF0dXNEaXJ0eSkgeworICAgICAgICAgICAgbV9o
YXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50c1N0YXR1c0RpcnR5ID0gZmFsc2U7CisgICAg
ICAgICAgICB1cGRhdGVTZWxmUGFpbnRpbmdMYXllcigpOworICAgICAgICB9CiAjZW5kaWYKICAg
ICB9CiAKQEAgLTY0NDYsNiArNjQ1MCw3IEBAIGJvb2wgUmVuZGVyTGF5ZXI6OnNob3VsZEJlU2Vs
ZlBhaW50aW5nTGF5ZXIoKSBjb25zdAogICAgIHJldHVybiAhaXNOb3JtYWxGbG93T25seSgpCiAg
ICAgICAgIHx8IGhhc092ZXJsYXlTY3JvbGxiYXJzKCkKICAgICAgICAgfHwgbmVlZHNDb21wb3Np
dGVkU2Nyb2xsaW5nKCkKKyAgICAgICAgfHwgaXNvbGF0ZXNCbGVuZGluZygpCiAgICAgICAgIHx8
IHJlbmRlcmVyKCkuaGFzUmVmbGVjdGlvbigpCiAgICAgICAgIHx8IHJlbmRlcmVyKCkuaGFzTWFz
aygpCiAgICAgICAgIHx8IHJlbmRlcmVyKCkuaXNUYWJsZVJvdygpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJMYXllci5oCmluZGV4IGZjNTkxNzdhMGMzZGY3MzRhNTU4MmM2NjVjMDFiMzgx
NDQ0NWIyNzYuLmNiZGU4MzFkNWU2ZmIwYzJkODI2ZTIzZTAyMzE2OGE5YjdhYjM4MjUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5oCkBAIC04MDcsMTEgKzgwNyw5IEBAIHB1
YmxpYzoKICAgICB9CiAKICAgICBib29sIGlzb2xhdGVzQmxlbmRpbmcoKSBjb25zdCB7IHJldHVy
biBoYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cygpICYmIGlzU3RhY2tpbmdDb250ZXh0
KCk7IH0KLSAgICBib29sIGhhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzKCkgY29uc3QK
LSAgICB7Ci0gICAgICAgIEFTU0VSVCghbV9oYXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50
c1N0YXR1c0RpcnR5KTsKLSAgICAgICAgcmV0dXJuIG1faGFzVW5pc29sYXRlZEJsZW5kaW5nRGVz
Y2VuZGFudHM7Ci0gICAgfQorICAgIAorICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgQVNTRVJUKCFt
X2hhc1VuaXNvbGF0ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzU3RhdHVzRGlydHkpOyBoZXJlIGJ1dCB3
ZSBoaXQgdGhlIHNhbWUgYnVncyBhcyB2aXNpYmxlIGNvbnRlbnQgYWJvdmUuCisgICAgYm9vbCBo
YXNVbmlzb2xhdGVkQmxlbmRpbmdEZXNjZW5kYW50cygpIGNvbnN0IHsgcmV0dXJuIG1faGFzVW5p
c29sYXRlZEJsZW5kaW5nRGVzY2VuZGFudHM7IH0KICAgICBib29sIGhhc1VuaXNvbGF0ZWRCbGVu
ZGluZ0Rlc2NlbmRhbnRzU3RhdHVzRGlydHkoKSBjb25zdCB7IHJldHVybiBtX2hhc1VuaXNvbGF0
ZWRCbGVuZGluZ0Rlc2NlbmRhbnRzU3RhdHVzRGlydHk7IH0KICNlbHNlCiAgICAgYm9vbCBoYXNC
bGVuZE1vZGUoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyTW9kZWxPYmplY3QuY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxheWVyTW9kZWxPYmplY3QuY3BwCmluZGV4IGViOGYyZTlmOTQx
Nzg5ZmM3ZjkyNzM4OTM3ODhlZTVjNzBlMGEyZTguLmJlZGY2MzI1MzUzZWMzODgyODZkNmRlMTVk
Y2E5OTZkZDA4NjY1YzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJMYXllck1vZGVsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyTGF5ZXJNb2RlbE9iamVjdC5jcHAKQEAgLTE1MSw2ICsxNTEsMTAgQEAgdm9pZCBSZW5kZXJM
YXllck1vZGVsT2JqZWN0OjpzdHlsZURpZENoYW5nZShTdHlsZURpZmZlcmVuY2UgZGlmZiwgY29u
c3QgUmVuZGVyU3QKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0gZWxzZSBpZiAobGF5
ZXIoKSAmJiBsYXllcigpLT5wYXJlbnQoKSkgeworI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcp
CisgICAgICAgIGlmIChvbGRTdHlsZS0+aGFzQmxlbmRNb2RlKCkpCisgICAgICAgICAgICBsYXll
cigpLT5wYXJlbnQoKS0+ZGlydHlBbmNlc3RvckNoYWluSGFzQmxlbmRpbmdEZXNjZW5kYW50cygp
OworI2VuZGlmCiAgICAgICAgIHNldEhhc1RyYW5zZm9ybShmYWxzZSk7IC8vIEVpdGhlciBhIHRy
YW5zZm9ybSB3YXNuJ3Qgc3BlY2lmaWVkIG9yIHRoZSBvYmplY3QgZG9lc24ndCBzdXBwb3J0IHRy
YW5zZm9ybXMsIHNvIGp1c3QgbnVsbCBvdXQgdGhlIGJpdC4KICAgICAgICAgc2V0SGFzUmVmbGVj
dGlvbihmYWxzZSk7CiAgICAgICAgIGxheWVyKCktPnJlbW92ZU9ubHlUaGlzTGF5ZXIoKTsgLy8g
Y2FsbHMgZGVzdHJveUxheWVyKCkgd2hpY2ggY2xlYXJzIG1fbGF5ZXIKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjYmJhZGQw
ZjA4Y2VkNmFjODY0MjUwNzljYzczNjZmN2ZlOGZlM2FlLi43Nzc0YjQ0MTI2NDBkY2ZjMTUxYThl
MWJmYjM5MTI3NjRlNjI0YWViIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysr
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMzMgQEAKIDIwMTQtMDUtMDYgIElv
biBSb3NjYSAgPHJvc2NhQGFkb2JlLmNvbT4KIAorICAgICAgICBbQ1NTIEJsZW5kaW5nXSBCbGVu
ZGluZyBkb2Vzbid0IHdvcmsgaWYgdGhlIHBhcmVudCBzdGFja2luZyBjb250ZXh0IGlzIG5vdCBh
IHNlbGYgcGFpbnRpbmcgbGF5ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEzMDg5MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFJlbW92ZWQgcG9zaXRpb246cmVsYXRpdmUgd2hpY2ggZm9yY2VkIHRlc3Rz
IHRvIGF2b2lkIHRoaXMgYnVnLiAKKyAgICAgICAgKiBjc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUt
YWNjZWxlcmF0ZWQtcGFyZW50LW92ZXJmbG93LWhpZGRlbi5odG1sOgorICAgICAgICAqIGNzczMv
YmxlbmRpbmcvYmxlbmQtbW9kZS1jbGlwLWFjY2VsZXJhdGVkLWJsZW5kaW5nLWNhbnZhcy5odG1s
OgorICAgICAgICAqIGNzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1jbGlwLWFjY2VsZXJhdGVkLWJs
ZW5kaW5nLWNoaWxkLmh0bWw6CisgICAgICAgICogY3NzMy9ibGVuZGluZy9ibGVuZC1tb2RlLWNs
aXAtYWNjZWxlcmF0ZWQtYmxlbmRpbmctd2l0aC1zaWJsaW5ncy5odG1sOgorICAgICAgICAqIGNz
czMvYmxlbmRpbmcvYmxlbmQtbW9kZS1jbGlwLWFjY2VsZXJhdGVkLXRyYW5zZm9ybWVkLWJsZW5k
aW5nLmh0bWw6CisKKyAgICAgICAgTmV3IHRlc3RzOgorICAgICAgICAqIGNzczMvYmxlbmRpbmcv
YmxlbmQtbW9kZS1pc29sYXRpb24tYWNjZWxlcmF0ZWQtb3ZlcmZsb3ctaGlkZGVuLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogY3NzMy9ibGVuZGluZy9ibGVuZC1tb2RlLWlzb2xhdGlv
bi1hY2NlbGVyYXRlZC1vdmVyZmxvdy1oaWRkZW4uaHRtbDogQWRkZWQuCisgICAgICAgICogY3Nz
My9ibGVuZGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi1vdmVyZmxvdy1oaWRkZW4tZXhwZWN0ZWQu
aHRtbDogQWRkZWQuCisgICAgICAgICogY3NzMy9ibGVuZGluZy9ibGVuZC1tb2RlLWlzb2xhdGlv
bi1vdmVyZmxvdy1oaWRkZW4uaHRtbDogQWRkZWQuCisgICAgICAgICogY3NzMy9ibGVuZGluZy9i
bGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogY3NzMy9ibGVuZGluZy9ibGVuZC1tb2RlLWlzb2xhdGlv
bi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNz
czMvYmxlbmRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVybi1vZmYtc2VsZi1wYWludGluZy1s
YXllcjEtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2JsZW5kaW5nL2JsZW5k
LW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIxLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIGNzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVybi1vZmYt
c2VsZi1wYWludGluZy1sYXllcjItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBjc3Mz
L2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5
ZXIyLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1pc29s
YXRpb24tdHVybi1vbi1zZWxmLXBhaW50aW5nLWxheWVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogY3NzMy9ibGVuZGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi10dXJuLW9uLXNlbGYt
cGFpbnRpbmctbGF5ZXIuaHRtbDogQWRkZWQuCisKKzIwMTQtMDUtMDYgIElvbiBSb3NjYSAgPHJv
c2NhQGFkb2JlLmNvbT4KKwogICAgICAgICBbQ1NTIEJsZW5kaW5nXSBSZW5hbWUgYWxsIHRoZSB0
ZXN0cyBjc3MzL2NvbXBvc2l0aW5nIHRvIGNzczMvYmxlbmRpbmcKICAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMjYwNgogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtYWNjZWxlcmF0ZWQtcGFyZW50LW92ZXJm
bG93LWhpZGRlbi5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9ibGVuZGluZy9ibGVuZC1tb2RlLWFj
Y2VsZXJhdGVkLXBhcmVudC1vdmVyZmxvdy1oaWRkZW4uaHRtbAppbmRleCA2YjNlNWFkOWQwNDUz
OTMzMWQ0ZThkNmEwMzJjNmE1MjIxOWNhYmJlLi4wODc4YTI2YmJlMGQxMGU4NTZmYzExMDliMGU2
NWUyZGU0OTg4OWRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5k
LW1vZGUtYWNjZWxlcmF0ZWQtcGFyZW50LW92ZXJmbG93LWhpZGRlbi5odG1sCisrKyBiL0xheW91
dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1hY2NlbGVyYXRlZC1wYXJlbnQtb3ZlcmZs
b3ctaGlkZGVuLmh0bWwKQEAgLTgsNyArOCw2IEBACiAJCWJhY2tncm91bmQ6IHJnYigwLCAyNTUs
IDApOwogCQlpc29sYXRpb246aXNvbGF0ZTsKIAkJLXdlYmtpdC1pc29sYXRpb246aXNvbGF0ZTsK
LQkJcG9zaXRpb246IHJlbGF0aXZlOyAvKmF2b2lkICMxMzA4OTEgaXNzdWUqLwogCX0KIAogCS5i
bGVuZGVyIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9k
ZS1jbGlwLWFjY2VsZXJhdGVkLWJsZW5kaW5nLWNhbnZhcy5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9ibGVuZGluZy9ibGVuZC1tb2RlLWNsaXAtYWNjZWxlcmF0ZWQtYmxlbmRpbmctY2FudmFzLmh0
bWwKaW5kZXggYjg5MmMwZmJhMGU5NDE3NjMyZThkYjkzODVhNDUzMzA1ZDNhZDNmMy4uNjFlYzIz
NjM0NzZjNWVlYTZjODQ2ZDFiNDg3NTQ5Yjg2NzM4NThiYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvY3NzMy9ibGVuZGluZy9ibGVuZC1tb2RlLWNsaXAtYWNjZWxlcmF0ZWQtYmxlbmRpbmctY2Fu
dmFzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9ibGVuZGluZy9ibGVuZC1tb2RlLWNsaXAt
YWNjZWxlcmF0ZWQtYmxlbmRpbmctY2FudmFzLmh0bWwKQEAgLTYsNyArNiw2IEBACiAgICAgICAg
b3ZlcmZsb3c6aGlkZGVuOwogICAgICAgIGJhY2tncm91bmQ6IHJnYigwLCAyNTUsIDApOwogICAg
ICAgIGlzb2xhdGlvbjogaXNvbGF0ZTsKLSAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8qYXZv
aWQgIzEzMDg5MSBpc3N1ZSovCiAgICB9CiAgICAuYmxlbmRpbmcgewogICAgICAgICBtaXgtYmxl
bmQtbW9kZTogZGlmZmVyZW5jZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvYmxlbmRp
bmcvYmxlbmQtbW9kZS1jbGlwLWFjY2VsZXJhdGVkLWJsZW5kaW5nLWNoaWxkLmh0bWwgYi9MYXlv
dXRUZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtY2xpcC1hY2NlbGVyYXRlZC1ibGVuZGlu
Zy1jaGlsZC5odG1sCmluZGV4IGM0MGY2YmViM2M0OTQ0ZDNmMTgyNzYwM2U1NjkzNmE4YWUyZGE3
MzkuLjc4ZDAwZDMwMjkzZjBjMDMzMGYzMGQzZWZiM2FlMDQxNTg2YjU0OTYgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1jbGlwLWFjY2VsZXJhdGVkLWJs
ZW5kaW5nLWNoaWxkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9ibGVuZGluZy9ibGVuZC1t
b2RlLWNsaXAtYWNjZWxlcmF0ZWQtYmxlbmRpbmctY2hpbGQuaHRtbApAQCAtNiw3ICs2LDYgQEAK
ICAgICAgICBvdmVyZmxvdzpoaWRkZW47CiAgICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwg
MCk7CiAgICAgICAgaXNvbGF0aW9uOiBpc29sYXRlOwotICAgICAgIHBvc2l0aW9uOiByZWxhdGl2
ZTsgLyphdm9pZCAjMTMwODkxIGlzc3VlKi8KICAgIH0KIAogICAgLmNoaWxkIHsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1jbGlwLWFjY2VsZXJhdGVk
LWJsZW5kaW5nLXdpdGgtc2libGluZ3MuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcv
YmxlbmQtbW9kZS1jbGlwLWFjY2VsZXJhdGVkLWJsZW5kaW5nLXdpdGgtc2libGluZ3MuaHRtbApp
bmRleCBlYTk0M2Y3ODA3ZWYwZmQzZmEyNmUyNDg2OTk5MTYyODI0OTE0OWY1Li5hOGQyMTZiNTA3
MzNmODFlY2RmNDFmNmJhNWE3ZTRjODI4ZGM2ZDRlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9j
c3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtY2xpcC1hY2NlbGVyYXRlZC1ibGVuZGluZy13aXRoLXNp
YmxpbmdzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9ibGVuZGluZy9ibGVuZC1tb2RlLWNs
aXAtYWNjZWxlcmF0ZWQtYmxlbmRpbmctd2l0aC1zaWJsaW5ncy5odG1sCkBAIC01LDcgKzUsNiBA
QAogICAgICAgIGhlaWdodDogMTAwcHg7CiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuOwogICAgICAg
IGlzb2xhdGlvbjogaXNvbGF0ZTsKLSAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8qYXZvaWQg
IzEzMDg5MSBpc3N1ZSovCiAgICB9CiAKICAgIC5jaGlsZCB7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtY2xpcC1hY2NlbGVyYXRlZC10cmFuc2Zvcm1l
ZC1ibGVuZGluZy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9ibGVuZGluZy9ibGVuZC1tb2RlLWNs
aXAtYWNjZWxlcmF0ZWQtdHJhbnNmb3JtZWQtYmxlbmRpbmcuaHRtbAppbmRleCBmMDEwNDFjN2Ey
OTZhZjQ5YWQwMjhiOTY2NTRhZWM1NjFkMWMwYzQxLi5iZGEyY2I0NmU4YjY3YmNlOTA5ZDZmZjQy
ZmRjMzBjOTJjNGQ3MmE5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5nL2Js
ZW5kLW1vZGUtY2xpcC1hY2NlbGVyYXRlZC10cmFuc2Zvcm1lZC1ibGVuZGluZy5odG1sCisrKyBi
L0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1jbGlwLWFjY2VsZXJhdGVkLXRy
YW5zZm9ybWVkLWJsZW5kaW5nLmh0bWwKQEAgLTYsNyArNiw2IEBACiAgICAgICAgb3ZlcmZsb3c6
aGlkZGVuOwogICAgICAgIGJhY2tncm91bmQ6IHJnYigwLCAyNTUsIDApOwogICAgICAgIGlzb2xh
dGlvbjogaXNvbGF0ZTsKLSAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8qYXZvaWQgIzEzMDg5
MSBpc3N1ZSovCiAgICB9CiAKICAgIC5jaGlsZCB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLWFjY2VsZXJhdGVkLW92ZXJmbG93LWhp
ZGRlbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUt
aXNvbGF0aW9uLWFjY2VsZXJhdGVkLW92ZXJmbG93LWhpZGRlbi1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMmIwZGIyYTdkYzdkNWMwZDM5NTRjMDVkMWIyY2E4ZDMwYzBmOWM2ZgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24t
YWNjZWxlcmF0ZWQtb3ZlcmZsb3ctaGlkZGVuLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDI5IEBA
CisoR3JhcGhpY3NMYXllcgorICAoYW5jaG9yIDAuMDAgMC4wMCkKKyAgKGJvdW5kcyA4MDAuMDAg
NjAwLjAwKQorICAoY2hpbGRyZW4gMQorICAgIChHcmFwaGljc0xheWVyCisgICAgICAoYm91bmRz
IDgwMC4wMCA2MDAuMDApCisgICAgICAoY29udGVudHNPcGFxdWUgMSkKKyAgICAgIChjaGlsZHJl
biAxCisgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgKHBvc2l0aW9uIDguMDAgOC4w
MCkKKyAgICAgICAgICAoYm91bmRzIDEwMC4wMCAxMDAuMDApCisgICAgICAgICAgKGNoaWxkcmVu
IDEKKyAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgIChib3VuZHMgMTAw
LjAwIDEwMC4wMCkKKyAgICAgICAgICAgICAgKGJsZW5kTW9kZSBkaWZmZXJlbmNlKQorICAgICAg
ICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAg
ICAgICAgICAgICAgICAoYm91bmRzIDQwMC4wMCAyMC4wMCkKKyAgICAgICAgICAgICAgICAgIChj
b250ZW50c09wYXF1ZSAxKQorICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgKQorICAg
ICAgICAgICAgKQorICAgICAgICAgICkKKyAgICAgICAgKQorICAgICAgKQorICAgICkKKyAgKQor
KQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNv
bGF0aW9uLWFjY2VsZXJhdGVkLW92ZXJmbG93LWhpZGRlbi5odG1sIGIvTGF5b3V0VGVzdHMvY3Nz
My9ibGVuZGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi1hY2NlbGVyYXRlZC1vdmVyZmxvdy1oaWRk
ZW4uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi41Mzk1MzBhNGE2ZGQ1MGE2ZGYwMTdkMTI2ODNiZWNiNmQyZDVl
OTUzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9ibGVuZGluZy9ibGVuZC1t
b2RlLWlzb2xhdGlvbi1hY2NlbGVyYXRlZC1vdmVyZmxvdy1oaWRkZW4uaHRtbApAQCAtMCwwICsx
LDM3IEBACis8IURPQ1RZUEUgSFRNTD4KKzxzdHlsZT4KKyAgICAucGFyZW50IHsKKyAgICAgICAg
d2lkdGg6IDEwMHB4OworICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICBvdmVyZmxvdzpo
aWRkZW47CisgICAgICAgIGlzb2xhdGlvbjppc29sYXRlOworICAgICAgICAtd2Via2l0LWlzb2xh
dGlvbjogaXNvbGF0ZTsKKyAgICB9CisKKyAgICAuYmxlbmRlciB7CisgICAgICAgIHdpZHRoOiA0
MDBweDsKKyAgICAgICAgaGVpZ2h0OiAyMHB4OworICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMCwg
MjU1LCAwKTsKKyAgICAgICAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgICAgIC13
ZWJraXQtbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgfQorCisgICAgLmFjY2VsZXJh
dGVkIHsKKyAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMHB4KTsKKyAgICB9
Cis8L3N0eWxlPgorCis8IS0tIFRoaXMgdGVzdCBjaGVja3MgdGhhdCBhbiBlbGVtZW50IHdpdGgg
b3ZlcmZsb3cgaGlkZGVuLCBiZWluZyBub3JtYWwgZmxvdyBvbmx5LCBjYW4gZ2V0IGFjY2VsZXJh
dGVkIGluIG9yZGVyIHRvIGlzb2xhdGUgYmxlbmRpbmcgZGVzY2VuZGFudHMgcHJvcGVybHkuIC0t
PgorPCEtLSBUZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLiAtLT4KKzxk
aXYgY2xhc3M9InBhcmVudCI+CisgICAgPGRpdiBjbGFzcz0iYmxlbmRlciBhY2NlbGVyYXRlZCI+
PC9kaXY+Cis8L2Rpdj4KKworPHByZSBpZD0ibGF5ZXJUcmVlIj48L3ByZT4KKzxzY3JpcHQ+Cisg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7CisKKyAgICB2YXIgdGV4dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsYXll
clRyZWUiKTsKKyAgICB0ZXh0LmlubmVySFRNTCA9IHdpbmRvdy5pbnRlcm5hbHMubGF5ZXJUcmVl
QXNUZXh0KGRvY3VtZW50KTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9ibGVuZGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi1vdmVyZmxvdy1oaWRkZW4tZXhwZWN0ZWQu
aHRtbCBiL0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tb3Zl
cmZsb3ctaGlkZGVuLWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDczYTZlNmZhOTA4Y2FmODlk
MDgwNjdjNGM2ZjhkNjMxZjAxODA1NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Nz
czMvYmxlbmRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tb3ZlcmZsb3ctaGlkZGVuLWV4cGVjdGVk
Lmh0bWwKQEAgLTAsMCArMSwyMCBAQAorPCFET0NUWVBFIEhUTUw+Cis8c3R5bGU+CisgICAgLnBh
cmVudCB7CisgICAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAg
ICAgICAgb3ZlcmZsb3c6aGlkZGVuOworICAgIH0KKworICAgIC5ibGVuZGVyIHsKKyAgICAgICAg
d2lkdGg6IDQwMHB4OworICAgICAgICBoZWlnaHQ6IDIwcHg7CisgICAgICAgIGJhY2tncm91bmQ6
IHJnYigwLCAyNTUsIDApOworICAgIH0KKzwvc3R5bGU+CisKKzxwPlRoaXMgdGVzdCBjaGVja3Mg
dGhhdCBhbiBlbGVtZW50IHdpdGggb3ZlcmZsb3cgaGlkZGVuLCBiZWluZyBub3JtYWwgZmxvdyBv
bmx5LCBpc29sYXRlcyBibGVuZGluZyBkZXNjZW5kYW50cyBwcm9wZXJseS48YnIvPgorVGVzdCBw
YXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHJlY3RhbmdsZS48L3A+Cis8ZGl2IGNsYXNzPSJwYXJl
bnQiPgorICAgIDxkaXYgY2xhc3M9ImJsZW5kZXIiPjwvZGl2PgorPC9kaXY+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLW92ZXJmbG93
LWhpZGRlbi5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9ibGVuZGluZy9ibGVuZC1tb2RlLWlzb2xh
dGlvbi1vdmVyZmxvdy1oaWRkZW4uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMjZjYjgwNDc5ZmQ0ZDA2YWFh
NjgxNmNlNDM0NGU0YjdjZGVkYjA4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3Nz
My9ibGVuZGluZy9ibGVuZC1tb2RlLWlzb2xhdGlvbi1vdmVyZmxvdy1oaWRkZW4uaHRtbApAQCAt
MCwwICsxLDI0IEBACis8IURPQ1RZUEUgSFRNTD4KKzxzdHlsZT4KKyAgICAucGFyZW50IHsKKyAg
ICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICBvdmVy
ZmxvdzpoaWRkZW47CisgICAgICAgIGlzb2xhdGlvbjppc29sYXRlOworICAgICAgICAtd2Via2l0
LWlzb2xhdGlvbjogaXNvbGF0ZTsKKyAgICB9CisKKyAgICAuYmxlbmRlciB7CisgICAgICAgIHdp
ZHRoOiA0MDBweDsKKyAgICAgICAgaGVpZ2h0OiAyMHB4OworICAgICAgICBiYWNrZ3JvdW5kOiBy
Z2IoMCwgMjU1LCAwKTsKKyAgICAgICAgbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAg
ICAgIC13ZWJraXQtbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7CisgICAgfQorPC9zdHlsZT4K
KworPHA+VGhpcyB0ZXN0IGNoZWNrcyB0aGF0IGFuIGVsZW1lbnQgd2l0aCBvdmVyZmxvdyBoaWRk
ZW4sIGJlaW5nIG5vcm1hbCBmbG93IG9ubHksIGlzb2xhdGVzIGJsZW5kaW5nIGRlc2NlbmRhbnRz
IHByb3Blcmx5Ljxici8+CitUZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xl
LjwvcD4KKzxkaXYgY2xhc3M9InBhcmVudCI+CisgICAgPGRpdiBjbGFzcz0iYmxlbmRlciI+PC9k
aXY+Cis8L2Rpdj4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQt
bW9kZS1pc29sYXRpb24tdHVybi1vZmYtc2VsZi1wYWludGluZy1sYXllci1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2Zm
LXNlbGYtcGFpbnRpbmctbGF5ZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYwMmMxM2Y5NmIw
Nzk2NWFmYzQ2ZmE5MjQ4ZDE4M2UxZjAzNjEwZTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFp
bnRpbmctbGF5ZXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKK2xheWVyIGF0ICgwLDAp
IHNpemUgODAweDYwMAorICBSZW5kZXJWaWV3IGF0ICgwLDApIHNpemUgODAweDYwMAorbGF5ZXIg
YXQgKDAsMCkgc2l6ZSA4MDB4MTU4CisgIFJlbmRlckJsb2NrIHtIVE1MfSBhdCAoMCwwKSBzaXpl
IDgwMHgxNTgKKyAgICBSZW5kZXJCb2R5IHtCT0RZfSBhdCAoOCwxNikgc2l6ZSA3ODR4MTM0Cisg
ICAgICBSZW5kZXJCbG9jayB7UH0gYXQgKDAsMCkgc2l6ZSA3ODR4MTgKKyAgICAgICAgUmVuZGVy
VGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMjUxeDE4CisgICAgICAgICAgdGV4dCBydW4gYXQg
KDAsMCkgd2lkdGggMjUxOiAiVGVzdCBwYXNzZXMgaWYgeW91IHNlZSBhIGdyZWVuIHJlY3Rhbmds
ZS4iCitsYXllciBhdCAoOCw1MCkgc2l6ZSAxMDB4MTAwIHNjcm9sbFdpZHRoIDQwMAorICBSZW5k
ZXJCbG9jayB7RElWfSBhdCAoMCwzNCkgc2l6ZSAxMDB4MTAwCisgICAgUmVuZGVyQmxvY2sge0RJ
Vn0gYXQgKDAsMCkgc2l6ZSA0MDB4MjAgW2JnY29sb3I9IzAwRkYwMF0KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVybi1vZmYtc2Vs
Zi1wYWludGluZy1sYXllci5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9ibGVuZGluZy9ibGVuZC1t
b2RlLWlzb2xhdGlvbi10dXJuLW9mZi1zZWxmLXBhaW50aW5nLWxheWVyLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMmU1ZDg1NjMzZThiODk2Yzc3OWNjOTJiYmRmNmYyMTE1ZjRlNzZlMQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVy
bi1vZmYtc2VsZi1wYWludGluZy1sYXllci5odG1sCkBAIC0wLDAgKzEsNDAgQEAKKzwhRE9DVFlQ
RSBIVE1MPgorPHN0eWxlPgorICAgIC5wYXJlbnQgeworICAgICAgICB3aWR0aDogMTAwcHg7Cisg
ICAgICAgIGhlaWdodDogMTAwcHg7CisgICAgICAgIG92ZXJmbG93OmhpZGRlbjsKKyAgICAgICAg
aXNvbGF0aW9uOmlzb2xhdGU7CisgICAgICAgIC13ZWJraXQtaXNvbGF0aW9uOiBpc29sYXRlOwor
ICAgIH0KKworICAgIC5jaGlsZCB7CisgICAgICAgIHdpZHRoOiA0MDBweDsKKyAgICAgICAgaGVp
Z2h0OiAyMHB4OworICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMCwgMjU1LCAwKTsKKyAgICB9CisK
KyAgICAuYmxlbmRpbmcgeworICAgICAgICBtaXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTsKKyAg
ICAgICAgLXdlYmtpdC1taXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTsKKyAgICB9Cis8L3N0eWxl
PgorCis8IS0tIFRoaXMgdGVzdCBjaGVja3MgdGhhdCBhbiBlbGVtZW50IHdpdGggb3ZlcmZsb3cg
aGlkZGVuIHdpbGwgYmUgYWJsZSB0byBzdG9wIGlzb2xhdGluZyBhZnRlciBkaW5hbWljYWxseSBy
ZW1vdmluZyBtaXgtYmxlbmQtbW9kZSBvbiBkZXNjZW5kYW50cy4gLS0+Cis8cD5UZXN0IHBhc3Nl
cyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLjwvcD4KKzxkaXYgY2xhc3M9InBhcmVudCI+
CisgICAgPGRpdiBpZD0idGFyZ2V0IiBjbGFzcz0iY2hpbGQgYmxlbmRpbmciPjwvZGl2PgorPC9k
aXY+CisKKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpCisgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKwor
ICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZnVuY3Rpb24oKSB7CisgICAgICAg
dmFyIHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQiKTsKKyAgICAgICB0
YXJnZXQuY2xhc3NOYW1lID0gImNoaWxkIjsKKworICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpCisgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgfSwg
ZmFsc2UpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5n
L2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIxLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24t
dHVybi1vZmYtc2VsZi1wYWludGluZy1sYXllcjEtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYw
MmMxM2Y5NmIwNzk2NWFmYzQ2ZmE5MjQ4ZDE4M2UxZjAzNjEwZTEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2Zm
LXNlbGYtcGFpbnRpbmctbGF5ZXIxLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACitsYXll
ciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2
MDAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDE1OAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQg
KDAsMCkgc2l6ZSA4MDB4MTU4CisgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsMTYpIHNpemUg
Nzg0eDEzNAorICAgICAgUmVuZGVyQmxvY2sge1B9IGF0ICgwLDApIHNpemUgNzg0eDE4CisgICAg
ICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDI1MXgxOAorICAgICAgICAgIHRl
eHQgcnVuIGF0ICgwLDApIHdpZHRoIDI1MTogIlRlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVl
biByZWN0YW5nbGUuIgorbGF5ZXIgYXQgKDgsNTApIHNpemUgMTAweDEwMCBzY3JvbGxXaWR0aCA0
MDAKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMzQpIHNpemUgMTAweDEwMAorICAgIFJlbmRl
ckJsb2NrIHtESVZ9IGF0ICgwLDApIHNpemUgNDAweDIwIFtiZ2NvbG9yPSMwMEZGMDBdCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1
cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIxLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2JsZW5k
aW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIxLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZjkwYzQ2YjM2Yzg4ODJhODE2YTU0YzEwYTc1MTI1NzcxZmVjMTNmNgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1p
c29sYXRpb24tdHVybi1vZmYtc2VsZi1wYWludGluZy1sYXllcjEuaHRtbApAQCAtMCwwICsxLDQ1
IEBACis8IURPQ1RZUEUgSFRNTD4KKzxzdHlsZT4KKyAgICAucGFyZW50IHsKKyAgICAgICAgd2lk
dGg6IDEwMHB4OworICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgICBvdmVyZmxvdzpoaWRk
ZW47CisgICAgICAgIGlzb2xhdGlvbjppc29sYXRlOworICAgICAgICAtd2Via2l0LWlzb2xhdGlv
bjogaXNvbGF0ZTsKKyAgICB9CisKKyAgICAuY2hpbGQgeworICAgICAgICB3aWR0aDogNDAwcHg7
CisgICAgICAgIGhlaWdodDogMjBweDsKKyAgICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwg
MCk7CisgICAgfQorCisgICAgLmJsZW5kaW5nIHsKKyAgICAgICAgbWl4LWJsZW5kLW1vZGU6IGRp
ZmZlcmVuY2U7CisgICAgICAgIC13ZWJraXQtbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7Cisg
ICAgfQorCisgICAgaHRtbCB7CisgICAgICAgIC8qRm9yY2UgY29tcG9zaXRpbmcuKi8KKyAgICAg
ICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMHB4KTsKKyAgICB9Cis8L3N0eWxlPgor
Cis8IS0tIFRoaXMgdGVzdCBjaGVja3MgdGhhdCBhbiBlbGVtZW50IHdpdGggb3ZlcmZsb3cgaGlk
ZGVuIHdpbGwgYmUgYWJsZSB0byBzdG9wIGlzb2xhdGluZyBhZnRlciBkaW5hbWljYWxseSByZW1v
dmluZyBtaXgtYmxlbmQtbW9kZSBvbiBkZXNjZW5kYW50cy4gLS0+Cis8cD5UZXN0IHBhc3NlcyBp
ZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLjwvcD4KKzxkaXYgY2xhc3M9InBhcmVudCI+Cisg
ICAgPGRpdiBpZD0idGFyZ2V0IiBjbGFzcz0iY2hpbGQgYmxlbmRpbmciPjwvZGl2PgorPC9kaXY+
CisKKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCisgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKworICAg
IHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZnVuY3Rpb24oKSB7CisgICAgICAgdmFy
IHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQiKTsKKyAgICAgICB0YXJn
ZXQuY2xhc3NOYW1lID0gImNoaWxkIjsKKworICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIp
CisgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgfSwgZmFs
c2UpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5nL2Js
ZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIyLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVy
bi1vZmYtc2VsZi1wYWludGluZy1sYXllcjItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE5Y2E0
MzVjOGI2ODIzZjJiMjRjOGE3ZGE2MDJiYjk5MmFlMjdmYTAKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNl
bGYtcGFpbnRpbmctbGF5ZXIyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACitsYXllciBh
dCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAK
K2xheWVyIGF0ICgwLDApIHNpemUgODAweDE1OAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAs
MCkgc2l6ZSA4MDB4MTU4CisgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgsMTYpIHNpemUgNzg0
eDEzNAorICAgICAgUmVuZGVyQmxvY2sge1B9IGF0ICgwLDApIHNpemUgNzg0eDE4CisgICAgICAg
IFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDI1MXgxOAorICAgICAgICAgIHRleHQg
cnVuIGF0ICgwLDApIHdpZHRoIDI1MTogIlRlc3QgcGFzc2VzIGlmIHlvdSBzZWUgYSBncmVlbiBy
ZWN0YW5nbGUuIgorbGF5ZXIgYXQgKDgsNTApIHNpemUgMTAweDEwMCBzY3JvbGxXaWR0aCA0MDAK
KyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMzQpIHNpemUgMTAweDEwMAorbGF5ZXIgYXQgKDgs
NTApIHNpemUgNDAweDIwIGJhY2tncm91bmRDbGlwIGF0ICg4LDUwKSBzaXplIDEwMHgxMDAgY2xp
cCBhdCAoOCw1MCkgc2l6ZSAxMDB4MTAwIG91dGxpbmVDbGlwIGF0ICg4LDUwKSBzaXplIDEwMHgx
MDAKKyAgUmVuZGVyQmxvY2sgKHJlbGF0aXZlIHBvc2l0aW9uZWQpIHtESVZ9IGF0ICgwLDApIHNp
emUgNDAweDIwIFtiZ2NvbG9yPSMwMEZGMDBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5
ZXIyLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9u
LXR1cm4tb2ZmLXNlbGYtcGFpbnRpbmctbGF5ZXIyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGUzODcwZTU3
MzhlYzAxOTI4NjUyZGE3NDNjZWJjMTk0MjQ5NWU3MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1pc29sYXRpb24tdHVybi1vZmYtc2VsZi1w
YWludGluZy1sYXllcjIuaHRtbApAQCAtMCwwICsxLDQyIEBACis8IURPQ1RZUEUgSFRNTD4KKzxz
dHlsZT4KKyAgICAucGFyZW50IHsKKyAgICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgICBoZWln
aHQ6IDEwMHB4OworICAgICAgICBvdmVyZmxvdzpoaWRkZW47CisgICAgICAgIGlzb2xhdGlvbjpp
c29sYXRlOworICAgICAgICAtd2Via2l0LWlzb2xhdGlvbjogaXNvbGF0ZTsKKyAgICB9CisKKyAg
ICAuY2hpbGQgeworICAgICAgICB3aWR0aDogNDAwcHg7CisgICAgICAgIGhlaWdodDogMjBweDsK
KyAgICAgICAgYmFja2dyb3VuZDogcmdiKDAsIDI1NSwgMCk7CisgICAgICAgIC8qS2VlcCBjaGls
ZCBSZW5kZXJMYXllciBhZnRlciByZW1vdmluZyBibGVuZGluZyovCisgICAgICAgIHBvc2l0aW9u
OiByZWxhdGl2ZTsKKyAgICB9CisKKyAgICAuYmxlbmRpbmcgeworICAgICAgICBtaXgtYmxlbmQt
bW9kZTogZGlmZmVyZW5jZTsKKyAgICAgICAgLXdlYmtpdC1taXgtYmxlbmQtbW9kZTogZGlmZmVy
ZW5jZTsKKyAgICB9Cis8L3N0eWxlPgorCis8IS0tIFRoaXMgdGVzdCBjaGVja3MgdGhhdCBhbiBl
bGVtZW50IHdpdGggb3ZlcmZsb3cgaGlkZGVuIHdpbGwgYmUgYWJsZSB0byBzdG9wIGlzb2xhdGlu
ZyBhZnRlciBkaW5hbWljYWxseSByZW1vdmluZyBtaXgtYmxlbmQtbW9kZSBvbiBkZXNjZW5kYW50
cy4gLS0+Cis8cD5UZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLjwvcD4K
KzxkaXYgY2xhc3M9InBhcmVudCI+CisgICAgPGRpdiBpZD0idGFyZ2V0IiBjbGFzcz0iY2hpbGQg
YmxlbmRpbmciPjwvZGl2PgorPC9kaXY+CisKKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0
Ij4KKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LndhaXRVbnRpbERvbmUoKTsKKworICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywg
ZnVuY3Rpb24oKSB7CisgICAgICAgdmFyIHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ0YXJnZXQiKTsKKyAgICAgICB0YXJnZXQuY2xhc3NOYW1lID0gImNoaWxkIjsKKworICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5u
b3RpZnlEb25lKCk7CisgICAgfSwgZmFsc2UpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb24tc2VsZi1w
YWludGluZy1sYXllci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5nL2Js
ZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb24tc2VsZi1wYWludGluZy1sYXllci1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMmM4OGUyYTU0YjZiMmE3MjI1NGY3NGU5N2UwYjE3YTQzMDIxZGQ2OQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1p
c29sYXRpb24tdHVybi1vbi1zZWxmLXBhaW50aW5nLWxheWVyLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDEyIEBACitsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgUmVuZGVyVmlldyBhdCAo
MCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDE1OAorICBSZW5kZXJC
bG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA4MDB4MTU4CisgICAgUmVuZGVyQm9keSB7Qk9EWX0g
YXQgKDgsMTYpIHNpemUgNzg0eDEzNAorICAgICAgUmVuZGVyQmxvY2sge1B9IGF0ICgwLDApIHNp
emUgNzg0eDE4CisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDI1MXgx
OAorICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDI1MTogIlRlc3QgcGFzc2VzIGlm
IHlvdSBzZWUgYSBncmVlbiByZWN0YW5nbGUuIgorbGF5ZXIgYXQgKDgsNTApIHNpemUgMTAweDEw
MCBzY3JvbGxXaWR0aCA0MDAgaXNvbGF0ZXNCbGVuZGluZworICBSZW5kZXJCbG9jayB7RElWfSBh
dCAoMCwzNCkgc2l6ZSAxMDB4MTAwCitsYXllciBhdCAoOCw1MCkgc2l6ZSA0MDB4MjAgYmFja2dy
b3VuZENsaXAgYXQgKDgsNTApIHNpemUgMTAweDEwMCBjbGlwIGF0ICg4LDUwKSBzaXplIDEwMHgx
MDAgb3V0bGluZUNsaXAgYXQgKDgsNTApIHNpemUgMTAweDEwMCBibGVuZE1vZGU6IGRpZmZlcmVu
Y2UKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSA0MDB4MjAgW2JnY29sb3I9IzAw
RkYwMF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvYmxlbmRpbmcvYmxlbmQtbW9kZS1p
c29sYXRpb24tdHVybi1vbi1zZWxmLXBhaW50aW5nLWxheWVyLmh0bWwgYi9MYXlvdXRUZXN0cy9j
c3MzL2JsZW5kaW5nL2JsZW5kLW1vZGUtaXNvbGF0aW9uLXR1cm4tb24tc2VsZi1wYWludGluZy1s
YXllci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM2ZWVmYWYxYTJmNmZkZGI5ZjRhYTFmNTY4N2UyZjI1ODNh
YmFiYjAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2JsZW5kaW5nL2JsZW5k
LW1vZGUtaXNvbGF0aW9uLXR1cm4tb24tc2VsZi1wYWludGluZy1sYXllci5odG1sCkBAIC0wLDAg
KzEsNDAgQEAKKzwhRE9DVFlQRSBIVE1MPgorPHN0eWxlPgorICAgIC5wYXJlbnQgeworICAgICAg
ICB3aWR0aDogMTAwcHg7CisgICAgICAgIGhlaWdodDogMTAwcHg7CisgICAgICAgIG92ZXJmbG93
OmhpZGRlbjsKKyAgICAgICAgaXNvbGF0aW9uOmlzb2xhdGU7CisgICAgICAgIC13ZWJraXQtaXNv
bGF0aW9uOiBpc29sYXRlOworICAgIH0KKworICAgIC5jaGlsZCB7CisgICAgICAgIHdpZHRoOiA0
MDBweDsKKyAgICAgICAgaGVpZ2h0OiAyMHB4OworICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMCwg
MjU1LCAwKTsKKyAgICB9CisKKyAgICAuYmxlbmRpbmcgeworICAgICAgICBtaXgtYmxlbmQtbW9k
ZTogZGlmZmVyZW5jZTsKKyAgICAgICAgLXdlYmtpdC1taXgtYmxlbmQtbW9kZTogZGlmZmVyZW5j
ZTsKKyAgICB9Cis8L3N0eWxlPgorCis8IS0tIFRoaXMgdGVzdCBjaGVja3MgdGhhdCBhbiBlbGVt
ZW50IHdpdGggb3ZlcmZsb3cgaGlkZGVuLCBub3QgYmVpbmcgYSBzZWxmIHBhaW50aW5nIGxheWVy
LCB3aWxsIGJlIGFibGUgdG8gZHluYW1pY2FsbHkgaXNvbGF0ZSBibGVuZGluZyBkZXNjZW5kYW50
cy4gLS0+Cis8cD5UZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIGEgZ3JlZW4gcmVjdGFuZ2xlLjwvcD4K
KzxkaXYgY2xhc3M9InBhcmVudCI+CisgICAgPGRpdiBpZD0idGFyZ2V0IiBjbGFzcz0iY2hpbGQi
PjwvZGl2PgorPC9kaXY+CisKKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKyAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLndhaXRVbnRp
bERvbmUoKTsKKworICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZnVuY3Rpb24o
KSB7CisgICAgICAgdmFyIHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQi
KTsKKyAgICAgICB0YXJnZXQuY2xhc3NOYW1lID0gImJsZW5kaW5nIGNoaWxkIjsKKworICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5u
b3RpZnlEb25lKCk7CisgICAgfSwgZmFsc2UpOworPC9zY3JpcHQ+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>