<?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>199843</bug_id>
          
          <creation_ts>2019-07-16 16:37:52 -0700</creation_ts>
          <short_desc>[SVG2]: Add auto behavior for rx and ry to the SVG &lt;ellipse&gt; and &lt;rect&gt; elements</short_desc>
          <delta_ts>2019-09-20 13:30:42 -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>SVG</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>201663</dependson>
          <blocked>191292</blocked>
    
    <blocked>200143</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fmalita</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>joepeck</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>pdr</cc>
    
    <cc>rniwa</cc>
    
    <cc>schenney</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1553380</commentid>
    <comment_count>0</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2019-07-16 16:37:52 -0700</bug_when>
    <thetext>Specs: https://www.w3.org/TR/SVG/geometry.html#RX

Test case:

&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot;&gt;
    &lt;ellipse style=&quot;rx: auto;&quot; ry=&quot;30&quot; cx=&quot;50&quot; cy=&quot;50&quot; fill=&quot;none&quot; stroke=&quot;blue&quot; stroke-width=&quot;5&quot;/&gt;
&lt;/svg&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1555876</commentid>
    <comment_count>1</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2019-07-25 13:09:31 -0700</bug_when>
    <thetext>WPT failed tests:

http://web-platform-tests.live/svg/shapes/ellipse-02.svg
http://web-platform-tests.live/svg/shapes/ellipse-03.svg
http://web-platform-tests.live/svg/shapes/ellipse-05.svg
http://web-platform-tests.live/svg/shapes/ellipse-06.svg
http://web-platform-tests.live/svg/shapes/ellipse-07.svg
http://web-platform-tests.live/svg/shapes/ellipse-08.svg</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1555894</commentid>
    <comment_count>2</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2019-07-25 14:16:10 -0700</bug_when>
    <thetext>http://web-platform-tests.live/svg/shapes/rx-ry-not-inherited.svg</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1571934</commentid>
    <comment_count>3</comment_count>
      <attachid>379046</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2019-09-18 09:57:59 -0700</bug_when>
    <thetext>Created attachment 379046
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1571937</commentid>
    <comment_count>4</comment_count>
      <attachid>379046</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2019-09-18 10:05:48 -0700</bug_when>
    <thetext>Comment on attachment 379046
Patch

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

Nice tests, thanks Said.

&gt; LayoutTests/ChangeLog:3
&gt; +        [SVG2]: Add auto behavior for rx and ry to the SVG &lt;ellipse&gt; and&lt;rect&gt; elements

and&lt;rect&gt; -&gt; and &lt;rect&gt;

&gt; LayoutTests/ChangeLog:8
&gt; +        Skip the tests with dynmaic chnages till webkit.org/b/201918 is fixed.

typo: dynamic changes.
Maybe add one sentence regarding the new tests?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1571961</commentid>
    <comment_count>5</comment_count>
      <attachid>379050</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2019-09-18 11:13:45 -0700</bug_when>
    <thetext>Created attachment 379050
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1571962</commentid>
    <comment_count>6</comment_count>
      <attachid>379046</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2019-09-18 11:19:11 -0700</bug_when>
    <thetext>Comment on attachment 379046
Patch

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

&gt;&gt; LayoutTests/ChangeLog:3
&gt;&gt; +        [SVG2]: Add auto behavior for rx and ry to the SVG &lt;ellipse&gt; and&lt;rect&gt; elements
&gt; 
&gt; and&lt;rect&gt; -&gt; and &lt;rect&gt;

Fixed. I just realized the space key in my keyboard is malfunctioning. It got stuck many times while typing this comment.

&gt;&gt; LayoutTests/ChangeLog:8
&gt;&gt; +        Skip the tests with dynmaic chnages till webkit.org/b/201918 is fixed.
&gt; 
&gt; typo: dynamic changes.
&gt; Maybe add one sentence regarding the new tests?

The typo is fixed and comments were added regarding the new tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1571964</commentid>
    <comment_count>7</comment_count>
      <attachid>379050</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2019-09-18 11:23:41 -0700</bug_when>
    <thetext>Comment on attachment 379050
Patch

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

Sorry, just found another typo :/ For me the code changes look just fine.

&gt; Source/WebCore/ChangeLog:8
&gt; +        The sepcs is: https://www.w3.org/TR/SVG2/geometry.html#RxProperty.

sepcs, spec :-)

&gt; Source/WebCore/ChangeLog:11
&gt; +        parse LengthOrAuto for these  properties. Handle the case if one of them

s/these  /these /</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572299</commentid>
    <comment_count>8</comment_count>
      <attachid>379050</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2019-09-19 02:54:49 -0700</bug_when>
    <thetext>Comment on attachment 379050
Patch

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

&gt; Source/WebCore/rendering/svg/RenderSVGEllipse.cpp:92
&gt; +    Length rx = style().svgStyle().rx().isAuto() ? style().svgStyle().ry() : style().svgStyle().rx();

Maybe avoid reading style().svgStyle().rx() twice. 

Length rx = style().svgStyle().rx();
if (rx.isAuto()
  rx = style().svgStyle().ry();</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572411</commentid>
    <comment_count>9</comment_count>
      <attachid>379147</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2019-09-19 10:48:24 -0700</bug_when>
    <thetext>Created attachment 379147
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572464</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-19 13:51:33 -0700</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 379147:

imported/w3c/web-platform-tests/websockets/bufferedAmount-unchanged-by-sync-xhr.any.worker.html bug 202003 (author: youennf@gmail.com)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572466</commentid>
    <comment_count>11</comment_count>
      <attachid>379147</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-19 13:52:36 -0700</bug_when>
    <thetext>Comment on attachment 379147
Patch

Clearing flags on attachment: 379147

Committed r250103: &lt;https://trac.webkit.org/changeset/250103&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572468</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-19 13:52:39 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572470</commentid>
    <comment_count>13</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-09-19 13:53:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/55532838&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572565</commentid>
    <comment_count>14</comment_count>
      <attachid>379147</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2019-09-19 17:55:57 -0700</bug_when>
    <thetext>Comment on attachment 379147
Patch

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

&gt; Source/WebCore/rendering/svg/RenderSVGEllipse.cpp:98
&gt; +    Length rx = style().svgStyle().rx();
&gt; +    if (rx.isAuto())
&gt; +        rx = style().svgStyle().ry();
&gt; +    
&gt; +    Length ry = style().svgStyle().ry();
&gt; +    if (ry.isAuto())
&gt; +        ry = style().svgStyle().rx();

How about this alternative version?

    Length rx = style().svgStyle().rx();
    Length ry = style().svgStyle().ry();
    if (rx.isAuto())
        rx = ry;
    else if (ry.isAuto())
        ry = rx;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572581</commentid>
    <comment_count>15</comment_count>
      <attachid>379147</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2019-09-19 18:25:42 -0700</bug_when>
    <thetext>Comment on attachment 379147
Patch

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

&gt;&gt; Source/WebCore/rendering/svg/RenderSVGEllipse.cpp:98
&gt;&gt; +        ry = style().svgStyle().rx();
&gt; 
&gt; How about this alternative version?
&gt; 
&gt;     Length rx = style().svgStyle().rx();
&gt;     Length ry = style().svgStyle().ry();
&gt;     if (rx.isAuto())
&gt;         rx = ry;
&gt;     else if (ry.isAuto())
&gt;         ry = rx;

I agree.

-- In the worst case scenario, which happens when rx and ry are both &apos;auto&apos;, my solution will calculate rx/ry four times. It will also call the Length::operator==() four times.
-- Your solution will calculate rx/ry two times and will call Length::operator==() three times.
-- How about this?

    Length rx = style().svgStyle().rx();
    Length ry = style().svgStyle().ry();
    m_radii = FloatSize(
        lengthContext.valueForLength(rx.isAuto() ? ry : rx, SVGLengthMode::Width),
        lengthContext.valueForLength(ry.isAuto() ? rx : ry, SVGLengthMode::Height));

This will calculate rx/ry two times and will call Length::operator==() two times.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572766</commentid>
    <comment_count>16</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2019-09-20 08:49:43 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572767</commentid>
    <comment_count>17</comment_count>
      <attachid>379243</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2019-09-20 08:49:44 -0700</bug_when>
    <thetext>Created attachment 379243
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572856</commentid>
    <comment_count>18</comment_count>
      <attachid>379243</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-20 13:30:40 -0700</bug_when>
    <thetext>Comment on attachment 379243
Patch

Clearing flags on attachment: 379243

Committed r250147: &lt;https://trac.webkit.org/changeset/250147&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1572857</commentid>
    <comment_count>19</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-20 13:30:42 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>379046</attachid>
            <date>2019-09-18 09:57:59 -0700</date>
            <delta_ts>2019-09-18 11:13:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-199843-20190918095758.patch</filename>
            <type>text/plain</type>
            <size>25439</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ5NzcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDJiMzk5MDA3ZmJiOWIy
N2Y4ZDAzZWU1YjNhNTZkMjA0YWNiN2QxYy4uZmYzYjRmN2RlYTcyNDVhMzI5NjkzZTg3N2UyMWE2
YzY2ZGYyOWFkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE5LTA5LTE4ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgW1NWRzJd
OiBBZGQgYXV0byBiZWhhdmlvciBmb3IgcnggYW5kIHJ5IHRvIHRoZSBTVkcgPGVsbGlwc2U+IGFu
ZDxyZWN0PiBlbGVtZW50cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTk5ODQzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgVGhlIHNlcGNzIGlzOiBodHRwczovL3d3dy53My5vcmcvVFIvU1ZHMi9nZW9tZXRy
eS5odG1sI1J4UHJvcGVydHkuCisKKyAgICAgICAgQ2hhbmdlIHRoZSBpbml0aWFsIHZhbHVlIG9m
IHJ4IGFuZCByeSB0byBiZSAiYXV0byIuIENoYW5nZSB0aGUgcGFyc2VyIHRvCisgICAgICAgIHBh
cnNlIExlbmd0aE9yQXV0byBmb3IgdGhlc2UgIHByb3BlcnRpZXMuIEhhbmRsZSB0aGUgY2FzZSBp
ZiBvbmUgb2YgdGhlbQorICAgICAgICBpcyBtaXNzaW5nLgorCisgICAgICAgIFRlc3RzOiBzdmcv
Y3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8tZHluYW1pYy5zdmcKKyAgICAgICAgICAgICAgIHN2
Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMtYXV0by1pbml0aWFsLnN2ZworICAgICAgICAgICAgICAg
c3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1sZW5ndGgtaW5pdGlhbC5zdmcKKyAgICAgICAgICAg
ICAgIHN2Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0by1keW5hbWljLnN2ZworICAgICAgICAgICAg
ICAgc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1hdXRvLWluaXRpYWwuc3ZnCisgICAgICAgICAgICAg
ICBzdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWxlbmd0aC1pbml0aWFsLnN2ZworCisgICAgICAgICog
Y3NzL0NTU1Byb3BlcnRpZXMuanNvbjoKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5
UGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbnN1bWVSeE9yUnkpOgorICAgICAgICAq
IHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
U3R5bGU6OmluaXRpYWxSYWRpdXMpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TVkdSZW5k
ZXJTdHlsZURlZnMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVMYXlvdXREYXRhOjpTdHls
ZUxheW91dERhdGEpOgorICAgICAgICAqIHJlbmRlcmluZy9zdmcvUmVuZGVyU1ZHRWxsaXBzZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdFbGxpcHNlOjpjYWxjdWxhdGVSYWRpaUFu
ZENlbnRlcik6CisKIDIwMTktMDktMTEgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29t
PgogCiAgICAgICAgIFJFR1JFU1NJT04gKDI0NTAwNik6IGNhbid0IHNjcm9sbCBpbiAicmVhZCBt
b3JlIiB2aWV3IGluIEV2ZW50YnJpdGUgYXBwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUHJvcGVydGllcy5qc29uIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMu
anNvbgppbmRleCBiY2YxNjFjMDFiNGJlNTRjMTU0Zjc5NmMxODRhZWM4OGFlYmU0ZTliLi5hYWMy
ZmI5ODVlN2E4NzU4ZGU2MjExYzkyNTAzMWQ1ZmVlYjdhM2Y1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQcm9wZXJ0aWVzLmpzb24KQEAgLTM1NDUsOCArMzU0NSw4IEBACiAgICAgICAgIH0sCiAgICAg
ICAgICJyeCI6IHsKICAgICAgICAgICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7Ci0gICAgICAg
ICAgICAgICAgImluaXRpYWwiOiAiaW5pdGlhbFplcm9MZW5ndGgiLAotICAgICAgICAgICAgICAg
ICJjb252ZXJ0ZXIiOiAiTGVuZ3RoIgorICAgICAgICAgICAgICAgICJpbml0aWFsIjogImluaXRp
YWxSYWRpdXMiLAorICAgICAgICAgICAgICAgICJjb252ZXJ0ZXIiOiAiTGVuZ3RoT3JBdXRvIgog
ICAgICAgICAgICAgfSwKICAgICAgICAgICAgICJzcGVjaWZpY2F0aW9uIjogewogICAgICAgICAg
ICAgICAgICJjYXRlZ29yeSI6ICJzdmciLApAQCAtMzU1NSw4ICszNTU1LDggQEAKICAgICAgICAg
fSwKICAgICAgICAgInJ5IjogewogICAgICAgICAgICAgImNvZGVnZW4tcHJvcGVydGllcyI6IHsK
LSAgICAgICAgICAgICAgICAiaW5pdGlhbCI6ICJpbml0aWFsWmVyb0xlbmd0aCIsCi0gICAgICAg
ICAgICAgICAgImNvbnZlcnRlciI6ICJMZW5ndGgiCisgICAgICAgICAgICAgICAgImluaXRpYWwi
OiAiaW5pdGlhbFJhZGl1cyIsCisgICAgICAgICAgICAgICAgImNvbnZlcnRlciI6ICJMZW5ndGhP
ckF1dG8iCiAgICAgICAgICAgICB9LAogICAgICAgICAgICAgInNwZWNpZmljYXRpb24iOiB7CiAg
ICAgICAgICAgICAgICAgImNhdGVnb3J5IjogInN2ZyIsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwCmluZGV4IDcwOGVjNzc3M2MxOGQ2ZTA4ZTAw
MWNhZmEzZDI4YzgwZDlmODcyZjcuLmQzMmY2YjA4YTZhNTI0MzdjMTk4MmQ0YWE2OWQ0MjczNjFm
MGIyMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQ
YXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJz
ZXIuY3BwCkBAIC0yMTQyLDEwICsyMTQyLDggQEAgc3RhdGljIFJlZlB0cjxDU1NQcmltaXRpdmVW
YWx1ZT4gY29uc3VtZUJhc2VsaW5lU2hpZnQoQ1NTUGFyc2VyVG9rZW5SYW5nZSYgcmFuZ2UKIAog
c3RhdGljIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3VtZVJ4T3JSeShDU1NQYXJzZXJU
b2tlblJhbmdlJiByYW5nZSkKIHsKLSAgICAvLyBGSVhNRS1ORVdQQVJTRVI6IFdlIGRvbid0IHN1
cHBvcnQgYXV0byB2YWx1ZXMgd2hlbiBtYXBwaW5nLCBzbyBmb3Igbm93IHR1cm4gdGhpcwotICAg
IC8vIG9mZiB1bnRpbCB3ZSBjYW4gZmlndXJlIG91dCBpZiB3ZSdyZSBldmVuIHN1cHBvc2VkIHRv
IHN1cHBvcnQgaXQuCi0gICAgLy8gaWYgKHJhbmdlLnBlZWsoKS5pZCgpID09IENTU1ZhbHVlQXV0
bykKLSAgICAvLyAgICAgcmV0dXJuIGNvbnN1bWVJZGVudChyYW5nZSk7CisgICAgaWYgKHJhbmdl
LnBlZWsoKS5pZCgpID09IENTU1ZhbHVlQXV0bykKKyAgICAgICAgcmV0dXJuIGNvbnN1bWVJZGVu
dChyYW5nZSk7CiAgICAgcmV0dXJuIGNvbnN1bWVMZW5ndGhPclBlcmNlbnQocmFuZ2UsIFNWR0F0
dHJpYnV0ZU1vZGUsIFZhbHVlUmFuZ2VBbGwsIFVuaXRsZXNzUXVpcms6OkZvcmJpZCk7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5o
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggYzM2
MTIwN2RiZjAyYjk1MTY5NDNlOTQ3N2MyODZlYjgyMWYwMjgyNy4uY2JmMjUzNjNhYzViZmZkODQ0
NThhOWE1YTVjZjZlZmY3NTVhZjk4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlLmgKQEAgLTE0ODksNiArMTQ4OSw3IEBAIHB1YmxpYzoKICAgICBzdGF0
aWMgTGVuZ3RoIGluaXRpYWxNaW5TaXplKCkgeyByZXR1cm4gTGVuZ3RoKCk7IH0KICAgICBzdGF0
aWMgTGVuZ3RoIGluaXRpYWxNYXhTaXplKCkgeyByZXR1cm4gTGVuZ3RoKFVuZGVmaW5lZCk7IH0K
ICAgICBzdGF0aWMgTGVuZ3RoIGluaXRpYWxPZmZzZXQoKSB7IHJldHVybiBMZW5ndGgoKTsgfQor
ICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbFJhZGl1cygpIHsgcmV0dXJuIExlbmd0aCgpOyB9CiAg
ICAgc3RhdGljIExlbmd0aCBpbml0aWFsTWFyZ2luKCkgeyByZXR1cm4gTGVuZ3RoKEZpeGVkKTsg
fQogICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbFBhZGRpbmcoKSB7IHJldHVybiBMZW5ndGgoRml4
ZWQpOyB9CiAgICAgc3RhdGljIExlbmd0aCBpbml0aWFsVGV4dEluZGVudCgpIHsgcmV0dXJuIExl
bmd0aChGaXhlZCk7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9TVkdSZW5kZXJTdHlsZURlZnMuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1NWR1JlbmRlclN0eWxlRGVmcy5jcHAKaW5kZXggNmUzN2NmOGZiOGFiYTU1ZWMzMzBhOTYwMzNh
OGE5NTRjN2NiMDRiYS4uNTgxYjA3YzY4OTBkMzkxMjVmMjYzZjUyMmU2N2FhNjI1YmY0MmVlZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NWR1JlbmRlclN0eWxl
RGVmcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NWR1JlbmRlclN0
eWxlRGVmcy5jcHAKQEAgLTI3MCw4ICsyNzAsOCBAQCBTdHlsZUxheW91dERhdGE6OlN0eWxlTGF5
b3V0RGF0YSgpCiAgICAgOiBjeChSZW5kZXJTdHlsZTo6aW5pdGlhbFplcm9MZW5ndGgoKSkKICAg
ICAsIGN5KFJlbmRlclN0eWxlOjppbml0aWFsWmVyb0xlbmd0aCgpKQogICAgICwgcihSZW5kZXJT
dHlsZTo6aW5pdGlhbFplcm9MZW5ndGgoKSkKLSAgICAsIHJ4KFJlbmRlclN0eWxlOjppbml0aWFs
WmVyb0xlbmd0aCgpKQotICAgICwgcnkoUmVuZGVyU3R5bGU6OmluaXRpYWxaZXJvTGVuZ3RoKCkp
CisgICAgLCByeChSZW5kZXJTdHlsZTo6aW5pdGlhbFJhZGl1cygpKQorICAgICwgcnkoUmVuZGVy
U3R5bGU6OmluaXRpYWxSYWRpdXMoKSkKICAgICAsIHgoUmVuZGVyU3R5bGU6OmluaXRpYWxaZXJv
TGVuZ3RoKCkpCiAgICAgLCB5KFJlbmRlclN0eWxlOjppbml0aWFsWmVyb0xlbmd0aCgpKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdFbGxpcHNl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHRWxsaXBzZS5jcHAK
aW5kZXggN2RhOTE5OTNlM2ZjZThiODBhZjg1NmRjY2VlNWQ4YWFhNjAxYmI5YS4uZjNmNDJiMGEz
ODU1ZDNiNWI3N2QxZmQ0ZWY4ZTA2NWE1ZGNhYjIyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdFbGxpcHNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR0VsbGlwc2UuY3BwCkBAIC04NywxMCArODcsMTMgQEAg
dm9pZCBSZW5kZXJTVkdFbGxpcHNlOjpjYWxjdWxhdGVSYWRpaUFuZENlbnRlcigpCiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKKyAgICBMZW5ndGggcnggPSBzdHlsZSgpLnN2Z1N0eWxlKCkucngo
KS5pc0F1dG8oKSA/IHN0eWxlKCkuc3ZnU3R5bGUoKS5yeSgpIDogc3R5bGUoKS5zdmdTdHlsZSgp
LnJ4KCk7CisgICAgTGVuZ3RoIHJ5ID0gc3R5bGUoKS5zdmdTdHlsZSgpLnJ5KCkuaXNBdXRvKCkg
PyBzdHlsZSgpLnN2Z1N0eWxlKCkucngoKSA6IHN0eWxlKCkuc3ZnU3R5bGUoKS5yeSgpOworICAg
IAogICAgIEFTU0VSVChpczxTVkdFbGxpcHNlRWxlbWVudD4oZ3JhcGhpY3NFbGVtZW50KCkpKTsK
ICAgICBtX3JhZGlpID0gRmxvYXRTaXplKAotICAgICAgICBsZW5ndGhDb250ZXh0LnZhbHVlRm9y
TGVuZ3RoKHN0eWxlKCkuc3ZnU3R5bGUoKS5yeCgpLCBMZW5ndGhNb2RlV2lkdGgpLAotICAgICAg
ICBsZW5ndGhDb250ZXh0LnZhbHVlRm9yTGVuZ3RoKHN0eWxlKCkuc3ZnU3R5bGUoKS5yeSgpLCBM
ZW5ndGhNb2RlSGVpZ2h0KSk7CisgICAgICAgIGxlbmd0aENvbnRleHQudmFsdWVGb3JMZW5ndGgo
cngsIExlbmd0aE1vZGVXaWR0aCksCisgICAgICAgIGxlbmd0aENvbnRleHQudmFsdWVGb3JMZW5n
dGgocnksIExlbmd0aE1vZGVIZWlnaHQpKTsKIH0KIAogdm9pZCBSZW5kZXJTVkdFbGxpcHNlOjpm
aWxsU2hhcGUoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0KSBjb25zdApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDhhMWYyZTM0
ZGFkNmYxZGY0MTNiM2E5YThhN2U0YzI5ZWVhNzQ2ZTQuLjE4ZGVlOTI1NGMyZjg1YTdlMTNjYmUw
ZjNhZWY4Yjk0ZWMyZDFkMjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOCBAQAorMjAxOS0wOS0xOCAgU2Fp
ZCBBYm91LUhhbGxhd2EgIDxzYWJvdWhhbGxhd2FAYXBwbGUuY29tPgorCisgICAgICAgIFtTVkcy
XTogQWRkIGF1dG8gYmVoYXZpb3IgZm9yIHJ4IGFuZCByeSB0byB0aGUgU1ZHIDxlbGxpcHNlPiBh
bmQ8cmVjdD4gZWxlbWVudHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE5OTg0MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFNraXAgdGhlIHRlc3RzIHdpdGggZHlubWFpYyBjaG5hZ2VzIHRpbGwgd2Via2l0
Lm9yZy9iLzIwMTkxOCBpcyBmaXhlZC4KKworICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6Cisg
ICAgICAgICogc3ZnL2Nzcy9wYXJzZS1sZW5ndGgtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN2
Zy9jc3MvcGFyc2UtbGVuZ3RoLmh0bWw6CisgICAgICAgICogc3ZnL2N1c3RvbS9lbGxpcHNlLXJh
ZGl1cy1hdXRvLWR5bmFtaWMtZXhwZWN0ZWQuc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvY3Vz
dG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8tZHluYW1pYy5zdmc6IEFkZGVkLgorICAgICAgICAqIHN2
Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMtYXV0by1pbml0aWFsLWV4cGVjdGVkLnN2ZzogQWRkZWQu
CisgICAgICAgICogc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWluaXRpYWwuc3ZnOiBB
ZGRlZC4KKyAgICAgICAgKiBzdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWxlbmd0aC1pbml0aWFs
LWV4cGVjdGVkLnN2ZzogQWRkZWQuCisgICAgICAgICogc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1
cy1sZW5ndGgtaW5pdGlhbC5zdmc6IEFkZGVkLgorICAgICAgICAqIHN2Zy9jdXN0b20vcmVjdC1y
YWRpdXMtYXV0by1keW5hbWljLWV4cGVjdGVkLnN2ZzogQWRkZWQuCisgICAgICAgICogc3ZnL2N1
c3RvbS9yZWN0LXJhZGl1cy1hdXRvLWR5bmFtaWMuc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBzdmcv
Y3VzdG9tL3JlY3QtcmFkaXVzLWF1dG8taW5pdGlhbC1leHBlY3RlZC5zdmc6IEFkZGVkLgorICAg
ICAgICAqIHN2Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0by1pbml0aWFsLnN2ZzogQWRkZWQuCisg
ICAgICAgICogc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1sZW5ndGgtaW5pdGlhbC1leHBlY3RlZC5z
dmc6IEFkZGVkLgorICAgICAgICAqIHN2Zy9jdXN0b20vcmVjdC1yYWRpdXMtbGVuZ3RoLWluaXRp
YWwuc3ZnOiBBZGRlZC4KKwogMjAxOS0wOS0xMSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3Rl
bnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFJlbW92ZSB1bm5lY2Vzc2FyeSBhYnN0cmFjdGlv
bnMgYXJvdW5kIFdlYnNpdGVEYXRhU3RvcmUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rlc3RF
eHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDc2YWQ1YmZk
ZTFmOTk5MzEzYmJkMzI3ZTA1MDJjZGMzMjU4NzUyMzcuLjRiMTk2M2VlZmM3YzY1OTMzZjE4MGE1
MTljOWZlOGE1MmFhNDkzZGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlv
bnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjI4OSw2ICsyMjg5LDgg
QEAgd2Via2l0Lm9yZy9iLzI0NjkwIHBsYXRmb3JtL21hYy9wbHVnaW5zL3BsdWdpbkRvY3VtZW50
Vmlldy1kZWFsbG9jYXRlZC1kYXRhU291cmMKIHdlYmtpdC5vcmcvYi8xNzM5MiBzdmcvYmF0aWsv
dGV4dC90ZXh0QmlEaS5zdmcgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8xMTY2MiBzdmcvY3VzdG9t
L2pzLWZvbnQtdGVzdC5zdmcgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi82MzE4NiBzdmcvem9vbS9w
YWdlL3pvb20tc3ZnLXRocm91Z2gtb2JqZWN0LXdpdGgtdGV4dC54aHRtbCBbIFNraXAgXQord2Vi
a2l0Lm9yZy9iLzIwMTkxOCBzdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8tZHluYW1pYy5z
dmcgWyBTa2lwIF0KK3dlYmtpdC5vcmcvYi8yMDE5MTggc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1h
dXRvLWR5bmFtaWMuc3ZnIFsgU2tpcCBdCiAKICMgVGVzdCBkaXNhYmxlZCBpbiByMzc1MTMgZm9y
IGNhdXNpbmcgbmV4dCB0ZXN0IHRvIGhhbmcKIGFuaW1hdGlvbnMvZm9udC1zaXplLXVzaW5nLWVt
cy5odG1sIFsgU2tpcCBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvY3NzL3BhcnNlLWxl
bmd0aC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdmcvY3NzL3BhcnNlLWxlbmd0aC1leHBl
Y3RlZC50eHQKaW5kZXggNDhiZGEyNTA4OTc1NzFlNTgwNTExNGQxYmU1NWYwMTk4M2EyZmYyNy4u
MzhhOTlhMzU2NWJlN2FjZjMwZTllOTc0ZjZhZDEyMzViODc5YTU1YiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvc3ZnL2Nzcy9wYXJzZS1sZW5ndGgtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL3N2Zy9jc3MvcGFyc2UtbGVuZ3RoLWV4cGVjdGVkLnR4dApAQCAtMTEyLDE2ICsxMTIsMTYg
QEAgUEFTUyBjb21wdXRlZFN0eWxlKCJyIiwgIjEwMCAgIHB4IikgaXMgIjBweCIKIFBBU1MgY29t
cHV0ZWRTdHlsZSgiciIsICIxMDBweDsiKSBpcyAiMHB4IgogUEFTUyBjb21wdXRlZFN0eWxlKCJy
IiwgIjEwMHB4ICFpbXBvcnRhbnQiKSBpcyAiMHB4IgogUEFTUyBjb21wdXRlZFN0eWxlKCJyIiwg
InsgMTAwcHggfSIpIGlzICIwcHgiCi1QQVNTIGNvbXB1dGVkU3R5bGUoInJ4IiwgImF1dG8iKSBp
cyAiMHB4IgotUEFTUyBjb21wdXRlZFN0eWxlKCJyeCIsICIxMDAgICBweCIpIGlzICIwcHgiCi1Q
QVNTIGNvbXB1dGVkU3R5bGUoInJ4IiwgIjEwMHB4OyIpIGlzICIwcHgiCi1QQVNTIGNvbXB1dGVk
U3R5bGUoInJ4IiwgIjEwMHB4ICFpbXBvcnRhbnQiKSBpcyAiMHB4IgotUEFTUyBjb21wdXRlZFN0
eWxlKCJyeCIsICJ7IDEwMHB4IH0iKSBpcyAiMHB4IgotUEFTUyBjb21wdXRlZFN0eWxlKCJyeSIs
ICJhdXRvIikgaXMgIjBweCIKLVBBU1MgY29tcHV0ZWRTdHlsZSgicnkiLCAiMTAwICAgcHgiKSBp
cyAiMHB4IgotUEFTUyBjb21wdXRlZFN0eWxlKCJyeSIsICIxMDBweDsiKSBpcyAiMHB4IgotUEFT
UyBjb21wdXRlZFN0eWxlKCJyeSIsICIxMDBweCAhaW1wb3J0YW50IikgaXMgIjBweCIKLVBBU1Mg
Y29tcHV0ZWRTdHlsZSgicnkiLCAieyAxMDBweCB9IikgaXMgIjBweCIKK1BBU1MgY29tcHV0ZWRT
dHlsZSgicngiLCAiYXV0byIpIGlzICJhdXRvIgorUEFTUyBjb21wdXRlZFN0eWxlKCJyeCIsICIx
MDAgICBweCIpIGlzICJhdXRvIgorUEFTUyBjb21wdXRlZFN0eWxlKCJyeCIsICIxMDBweDsiKSBp
cyAiYXV0byIKK1BBU1MgY29tcHV0ZWRTdHlsZSgicngiLCAiMTAwcHggIWltcG9ydGFudCIpIGlz
ICJhdXRvIgorUEFTUyBjb21wdXRlZFN0eWxlKCJyeCIsICJ7IDEwMHB4IH0iKSBpcyAiYXV0byIK
K1BBU1MgY29tcHV0ZWRTdHlsZSgicnkiLCAiYXV0byIpIGlzICJhdXRvIgorUEFTUyBjb21wdXRl
ZFN0eWxlKCJyeSIsICIxMDAgICBweCIpIGlzICJhdXRvIgorUEFTUyBjb21wdXRlZFN0eWxlKCJy
eSIsICIxMDBweDsiKSBpcyAiYXV0byIKK1BBU1MgY29tcHV0ZWRTdHlsZSgicnkiLCAiMTAwcHgg
IWltcG9ydGFudCIpIGlzICJhdXRvIgorUEFTUyBjb21wdXRlZFN0eWxlKCJyeSIsICJ7IDEwMHB4
IH0iKSBpcyAiYXV0byIKIFBBU1MgY29tcHV0ZWRTdHlsZSgid2lkdGgiLCAiMTAwICAgcHgiKSBp
cyAiYXV0byIKIFBBU1MgY29tcHV0ZWRTdHlsZSgid2lkdGgiLCAiMTAwcHg7IikgaXMgImF1dG8i
CiBQQVNTIGNvbXB1dGVkU3R5bGUoIndpZHRoIiwgIjEwMHB4ICFpbXBvcnRhbnQiKSBpcyAiYXV0
byIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jc3MvcGFyc2UtbGVuZ3RoLmh0bWwgYi9M
YXlvdXRUZXN0cy9zdmcvY3NzL3BhcnNlLWxlbmd0aC5odG1sCmluZGV4IGM3N2EzOWRmN2I1MmEy
MWEwNzU4OWZmMDFjNDYzOTg4ZTU1ZWM4NjAuLjM5NDA0YTg0N2NhYjg2YTg1NjFjNjE5YmQ5Mjc2
ODkzMDAyN2VhNTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N2Zy9jc3MvcGFyc2UtbGVuZ3Ro
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9wYXJzZS1sZW5ndGguaHRtbApAQCAtMTI5
LDE4ICsxMjksMTggQEAgbmVnYXRpdmVUZXN0WmVybygiciIsICIxMDBweCAhaW1wb3J0YW50Iik7
CiBuZWdhdGl2ZVRlc3RaZXJvKCJyIiwgInsgMTAwcHggfSIpOwogCiAvLyBOZWdhdGl2ZSB0ZXN0
cyBmb3IgJ3J4Jy4KLW5lZ2F0aXZlVGVzdFplcm8oInJ4IiwgImF1dG8iLCAiYXV0byIpOwotbmVn
YXRpdmVUZXN0WmVybygicngiLCAiMTAwICAgcHgiKTsKLW5lZ2F0aXZlVGVzdFplcm8oInJ4Iiwg
IjEwMHB4OyIpOwotbmVnYXRpdmVUZXN0WmVybygicngiLCAiMTAwcHggIWltcG9ydGFudCIpOwot
bmVnYXRpdmVUZXN0WmVybygicngiLCAieyAxMDBweCB9Iik7CituZWdhdGl2ZVRlc3QoInJ4Iiwg
ImF1dG8iLCAiYXV0byIpOworbmVnYXRpdmVUZXN0KCJyeCIsICIxMDAgICBweCIsICJhdXRvIik7
CituZWdhdGl2ZVRlc3QoInJ4IiwgIjEwMHB4OyIsICJhdXRvIik7CituZWdhdGl2ZVRlc3QoInJ4
IiwgIjEwMHB4ICFpbXBvcnRhbnQiLCAiYXV0byIpOworbmVnYXRpdmVUZXN0KCJyeCIsICJ7IDEw
MHB4IH0iLCAiYXV0byIpOwogCiAvLyBOZWdhdGl2ZSB0ZXN0cyBmb3IgJ3J5Jy4KLW5lZ2F0aXZl
VGVzdFplcm8oInJ5IiwgImF1dG8iKTsKLW5lZ2F0aXZlVGVzdFplcm8oInJ5IiwgIjEwMCAgIHB4
Iik7Ci1uZWdhdGl2ZVRlc3RaZXJvKCJyeSIsICIxMDBweDsiKTsKLW5lZ2F0aXZlVGVzdFplcm8o
InJ5IiwgIjEwMHB4ICFpbXBvcnRhbnQiKTsKLW5lZ2F0aXZlVGVzdFplcm8oInJ5IiwgInsgMTAw
cHggfSIpOworbmVnYXRpdmVUZXN0KCJyeSIsICJhdXRvIiwgImF1dG8iKTsKK25lZ2F0aXZlVGVz
dCgicnkiLCAiMTAwICAgcHgiLCAiYXV0byIpOworbmVnYXRpdmVUZXN0KCJyeSIsICIxMDBweDsi
LCAiYXV0byIpOworbmVnYXRpdmVUZXN0KCJyeSIsICIxMDBweCAhaW1wb3J0YW50IiwgImF1dG8i
KTsKK25lZ2F0aXZlVGVzdCgicnkiLCAieyAxMDBweCB9IiwgImF1dG8iKTsKIAogLy8gTmVnYXRp
dmUgdGVzdHMgZm9yICd3aWR0aCcuCiBuZWdhdGl2ZVRlc3QoIndpZHRoIiwgIjEwMCAgIHB4Iik7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8t
ZHluYW1pYy1leHBlY3RlZC5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2VsbGlwc2UtcmFk
aXVzLWF1dG8tZHluYW1pYy1leHBlY3RlZC5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmFmY2YyNTdjMTkzODZh
NDU0ZWQyZTYyNjYzNGNiMzZmZmJhNWNjZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L3N2Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMtYXV0by1keW5hbWljLWV4cGVjdGVkLnN2ZwpAQCAt
MCwwICsxLDkgQEAKKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKyAg
ICA8ZyBpZD0iZWxsaXBzZXMiPgorICAgICAgICA8ZWxsaXBzZSBjeD0iNDAiIGN5PSI2MCIgcng9
IjIwIiByeT0iMjAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxlbGxpcHNlIGN4PSI5MCIgY3k9
IjYwIiByeD0iMzAiIHJ5PSIzMCIgZmlsbD0iZ3JlZW4iLz4KKyAgICAgICAgPGVsbGlwc2UgY3g9
IjE2MCIgY3k9IjYwIiByeD0iNDAiIHJ5PSI0MCIgZmlsbD0iZ3JlZW4iLz4KKyAgICAgICAgPGVs
bGlwc2UgY3g9IjI1MCIgY3k9IjYwIiByeD0iNTAiIHJ5PSI1MCIgZmlsbD0iZ3JlZW4iLz4KKyAg
ICA8L2c+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNlbGxpcHNlcyIvPgorPC9zdmc+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8tZHluYW1p
Yy5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8tZHluYW1p
Yy5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMTdkODhkOGJjMmFiNDk2Y2U4ODFkOGE1ZDAxNDQzNWE4ZTAwMTZj
OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vZWxsaXBzZS1yYWRp
dXMtYXV0by1keW5hbWljLnN2ZwpAQCAtMCwwICsxLDM4IEBACis8c3ZnIHhtbG5zPSJodHRwOi8v
d3d3LnczLm9yZy8yMDAwL3N2ZyI+CisgICAgPGVsbGlwc2UgaWQ9ImVsbGlwc2UtMSIgY3g9IjQw
IiBjeT0iNjAiIHJ4PSIyMCIgcnk9IjAiIGZpbGw9ImdyZWVuIi8+CisgICAgPGVsbGlwc2UgaWQ9
ImVsbGlwc2UtMiIgY3g9IjkwIiBjeT0iNjAiIHJ5PSIzMCIgcng9IjAiIGZpbGw9ImdyZWVuIi8+
CisKKyAgICA8ZWxsaXBzZSBpZD0iZWxsaXBzZS0zIiBjeD0iMTYwIiBjeT0iNjAiIHJ4PSIyMCIg
cnk9IjAiIGZpbGw9ImdyZWVuIj4KKyAgICAgICAgPGFuaW1hdGUgYXR0cmlidXRlVHlwZT0iWE1M
IiBhdHRyaWJ1dGVOYW1lPSJyeCIgZnJvbT0iMjAiIHRvPSI0MCIgZHVyPSIxcyIgZmlsbD0iZnJl
ZXplIi8+CisgICAgPC9lbGxpcHNlPgorCisgICAgPGVsbGlwc2UgaWQ9ImVsbGlwc2UtNCIgY3g9
IjI1MCIgY3k9IjYwIiByeT0iMjAiIHJ4PSIwIiBmaWxsPSJncmVlbiI+CisgICAgICAgIDxhbmlt
YXRlIGF0dHJpYnV0ZVR5cGU9IlhNTCIgYXR0cmlidXRlTmFtZT0icnkiIGZyb209IjIwIiB0bz0i
NTAiIGR1cj0iMXMiIGZpbGw9ImZyZWV6ZSIvPgorICAgIDwvZWxsaXBzZT4KKworICAgIDx1c2Ug
eT0iMTAwIiBocmVmPSIjZWxsaXBzZS0xIi8+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNlbGxp
cHNlLTIiLz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI2VsbGlwc2UtMyIvPgorICAgIDx1c2Ug
eT0iMTAwIiBocmVmPSIjZWxsaXBzZS00Ii8+CisKKyAgICA8c2NyaXB0PgorICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUo
KTsKKworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIChldmVudCkgPT4g
eworICAgICAgICAgICAgbGV0IGVsbGlwc2UxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Vs
bGlwc2UtMScpOworICAgICAgICAgICAgbGV0IGVsbGlwc2UyID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ2VsbGlwc2UtMicpOworICAgICAgICAgICAgbGV0IGVsbGlwc2UzID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ2VsbGlwc2UtMycpOworICAgICAgICAgICAgbGV0IGVsbGlwc2U0ID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2VsbGlwc2UtNCcpOworCisgICAgICAgICAgICBlbGxp
cHNlMS5zdHlsZVsncnknXSA9ICdhdXRvJzsKKyAgICAgICAgICAgIGVsbGlwc2UyLnN0eWxlWydy
eCddID0gJ2F1dG8nOworICAgICAgICAgICAgZWxsaXBzZTMuc3R5bGVbJ3J5J10gPSAnYXV0byc7
CisgICAgICAgICAgICBlbGxpcHNlNC5zdHlsZVsncngnXSA9ICdhdXRvJzsKKworICAgICAgICAg
ICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNldEN1cnJlbnRUaW1lKDUpOworICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIubm90
aWZ5RG9uZSgpOworICAgICAgICB9KTsKKyAgICA8L3NjcmlwdD4KKzwvc3ZnPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWluaXRpYWwtZXhw
ZWN0ZWQuc3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWlu
aXRpYWwtZXhwZWN0ZWQuc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJhZmNmMjU3YzE5Mzg2YTQ1NGVkMmU2MjY2
MzRjYjM2ZmZiYTVjY2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9t
L2VsbGlwc2UtcmFkaXVzLWF1dG8taW5pdGlhbC1leHBlY3RlZC5zdmcKQEAgLTAsMCArMSw5IEBA
Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CisgICAgPGcgaWQ9ImVs
bGlwc2VzIj4KKyAgICAgICAgPGVsbGlwc2UgY3g9IjQwIiBjeT0iNjAiIHJ4PSIyMCIgcnk9IjIw
IiBmaWxsPSJncmVlbiIvPgorICAgICAgICA8ZWxsaXBzZSBjeD0iOTAiIGN5PSI2MCIgcng9IjMw
IiByeT0iMzAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxlbGxpcHNlIGN4PSIxNjAiIGN5PSI2
MCIgcng9IjQwIiByeT0iNDAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxlbGxpcHNlIGN4PSIy
NTAiIGN5PSI2MCIgcng9IjUwIiByeT0iNTAiIGZpbGw9ImdyZWVuIi8+CisgICAgPC9nPgorICAg
IDx1c2UgeT0iMTAwIiBocmVmPSIjZWxsaXBzZXMiLz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWluaXRpYWwuc3ZnIGIvTGF5
b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWluaXRpYWwuc3ZnCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjFiODhlYmEzNTJhOGVjZTExODY2YjEyOWM0NTMxN2Y5ZDVlZjAyYzIKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8taW5p
dGlhbC5zdmcKQEAgLTAsMCArMSwyOCBAQAorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciPgorICAgIDxlbGxpcHNlIGlkPSJlbGxpcHNlLTEiIGN4PSI0MCIgY3k9IjYwIiBy
eD0iMjAiIGZpbGw9ImdyZWVuIi8+CisgICAgPGVsbGlwc2UgaWQ9ImVsbGlwc2UtMiIgY3g9Ijkw
IiBjeT0iNjAiIHJ5PSIzMCIgZmlsbD0iZ3JlZW4iLz4KKworICAgIDxlbGxpcHNlIGlkPSJlbGxp
cHNlLTMiIGN4PSIxNjAiIGN5PSI2MCIgcng9IjIwIiBmaWxsPSJncmVlbiI+CisgICAgICAgIDxh
bmltYXRlIGF0dHJpYnV0ZVR5cGU9IlhNTCIgYXR0cmlidXRlTmFtZT0icngiIGZyb209IjIwIiB0
bz0iNDAiIGR1cj0iMXMiIGZpbGw9ImZyZWV6ZSIvPgorICAgIDwvZWxsaXBzZT4KKworICAgIDxl
bGxpcHNlIGlkPSJlbGxpcHNlLTQiIGN4PSIyNTAiIGN5PSI2MCIgcnk9IjIwIiBmaWxsPSJncmVl
biI+CisgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZVR5cGU9IlhNTCIgYXR0cmlidXRlTmFtZT0i
cnkiIGZyb209IjIwIiB0bz0iNTAiIGR1cj0iMXMiIGZpbGw9ImZyZWV6ZSIvPgorICAgIDwvZWxs
aXBzZT4KKworICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjZWxsaXBzZS0xIi8+CisgICAgPHVzZSB5
PSIxMDAiIGhyZWY9IiNlbGxpcHNlLTIiLz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI2VsbGlw
c2UtMyIvPgorICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjZWxsaXBzZS00Ii8+CisKKyAgICA8c2Ny
aXB0PgorICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVu
bmVyLndhaXRVbnRpbERvbmUoKTsKKworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcign
bG9hZCcsIChldmVudCkgPT4geworICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50
LnNldEN1cnJlbnRUaW1lKDUpOworICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgICAgICB9KTsKKyAg
ICA8L3NjcmlwdD4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9l
bGxpcHNlLXJhZGl1cy1sZW5ndGgtaW5pdGlhbC1leHBlY3RlZC5zdmcgYi9MYXlvdXRUZXN0cy9z
dmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWxlbmd0aC1pbml0aWFsLWV4cGVjdGVkLnN2ZwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4yYWZjZjI1N2MxOTM4NmE0NTRlZDJlNjI2NjM0Y2IzNmZmYmE1Y2NmCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1sZW5ndGgt
aW5pdGlhbC1leHBlY3RlZC5zdmcKQEAgLTAsMCArMSw5IEBACis8c3ZnIHhtbG5zPSJodHRwOi8v
d3d3LnczLm9yZy8yMDAwL3N2ZyI+CisgICAgPGcgaWQ9ImVsbGlwc2VzIj4KKyAgICAgICAgPGVs
bGlwc2UgY3g9IjQwIiBjeT0iNjAiIHJ4PSIyMCIgcnk9IjIwIiBmaWxsPSJncmVlbiIvPgorICAg
ICAgICA8ZWxsaXBzZSBjeD0iOTAiIGN5PSI2MCIgcng9IjMwIiByeT0iMzAiIGZpbGw9ImdyZWVu
Ii8+CisgICAgICAgIDxlbGxpcHNlIGN4PSIxNjAiIGN5PSI2MCIgcng9IjQwIiByeT0iNDAiIGZp
bGw9ImdyZWVuIi8+CisgICAgICAgIDxlbGxpcHNlIGN4PSIyNTAiIGN5PSI2MCIgcng9IjUwIiBy
eT0iNTAiIGZpbGw9ImdyZWVuIi8+CisgICAgPC9nPgorICAgIDx1c2UgeT0iMTAwIiBocmVmPSIj
ZWxsaXBzZXMiLz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9l
bGxpcHNlLXJhZGl1cy1sZW5ndGgtaW5pdGlhbC5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9t
L2VsbGlwc2UtcmFkaXVzLWxlbmd0aC1pbml0aWFsLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZGU5MWE5ZGM3
NTY2Yzc2MzA2Y2IzY2U0MjRjOTk3MGY1NjI5MGE4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1sZW5ndGgtaW5pdGlhbC5zdmcKQEAgLTAs
MCArMSwzNCBAQAorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorICAg
IDxzdHlsZT4KKyAgICAgICAgI2VsbGlwc2UtMSB7IHJ5OiAyMHB4OyB9CisgICAgICAgICNlbGxp
cHNlLTIgeyByeDogMzBweDsgfQorICAgICAgICAjZWxsaXBzZS0zIHsgcnk6IDQwcHg7IH0KKyAg
ICAgICAgI2VsbGlwc2UtNCB7IHJ4OiA1MHB4OyB9CisgICAgPC9zdHlsZT4KKyAgICA8ZWxsaXBz
ZSBpZD0iZWxsaXBzZS0xIiBjeD0iNDAiIGN5PSI2MCIgcng9IjIwIiBmaWxsPSJncmVlbiIvPgor
ICAgIDxlbGxpcHNlIGlkPSJlbGxpcHNlLTIiIGN4PSI5MCIgY3k9IjYwIiByeT0iMzAiIGZpbGw9
ImdyZWVuIi8+CisKKyAgICA8ZWxsaXBzZSBpZD0iZWxsaXBzZS0zIiBjeD0iMTYwIiBjeT0iNjAi
IHJ4PSIyMCIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVUeXBlPSJY
TUwiIGF0dHJpYnV0ZU5hbWU9InJ4IiBmcm9tPSIyMCIgdG89IjQwIiBkdXI9IjFzIiBmaWxsPSJm
cmVlemUiLz4KKyAgICA8L2VsbGlwc2U+CisKKyAgICA8ZWxsaXBzZSBpZD0iZWxsaXBzZS00IiBj
eD0iMjUwIiBjeT0iNjAiIHJ5PSIyMCIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8YW5pbWF0ZSBh
dHRyaWJ1dGVUeXBlPSJYTUwiIGF0dHJpYnV0ZU5hbWU9InJ5IiBmcm9tPSIyMCIgdG89IjUwIiBk
dXI9IjFzIiBmaWxsPSJmcmVlemUiLz4KKyAgICA8L2VsbGlwc2U+CisKKyAgICA8dXNlIHk9IjEw
MCIgaHJlZj0iI2VsbGlwc2UtMSIvPgorICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjZWxsaXBzZS0y
Ii8+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNlbGxpcHNlLTMiLz4KKyAgICA8dXNlIHk9IjEw
MCIgaHJlZj0iI2VsbGlwc2UtNCIvPgorCisgICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKQorICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisK
KyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoZXZlbnQpID0+IHsKKyAg
ICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zZXRDdXJyZW50VGltZSg1KTsKKyAg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgfSk7CisgICAgPC9zY3JpcHQ+Cis8L3N2Zz4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0by1keW5hbWlj
LWV4cGVjdGVkLnN2ZyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0by1k
eW5hbWljLWV4cGVjdGVkLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYmIxODhkOWIyMzc1OTg3NGQyODc1MTI1
M2I5MTM0Y2NhMDQ0YTcwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3Rv
bS9yZWN0LXJhZGl1cy1hdXRvLWR5bmFtaWMtZXhwZWN0ZWQuc3ZnCkBAIC0wLDAgKzEsOSBAQAor
PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorICAgIDxnIGlkPSJyZWN0
cyI+CisgICAgICAgIDxyZWN0IHg9IjIwIiB5PSI0MCIgd2lkdGg9IjQwIiBoZWlnaHQ9IjQwIiBy
eD0iMjAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxyZWN0IHg9IjYwIiB5PSIzMCIgd2lkdGg9
IjYwIiBoZWlnaHQ9IjYwIiByeT0iMzAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxyZWN0IHg9
IjEyMCIgeT0iMjAiIHdpZHRoPSI4MCIgaGVpZ2h0PSI4MCIgcnk9IjQwIiBmaWxsPSJncmVlbiIv
PgorICAgICAgICA8cmVjdCB4PSIyMDAiIHk9IjEwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIg
cng9IjUwIiBmaWxsPSJncmVlbiIvPgorICAgIDwvZz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0i
I3JlY3RzIi8+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVj
dC1yYWRpdXMtYXV0by1keW5hbWljLnN2ZyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVjdC1y
YWRpdXMtYXV0by1keW5hbWljLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMzU0NzQ0ZDQwYzg4MjM5NTQ0NmZi
N2U4NDY5M2U1Y2FmODlkNGFlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2N1
c3RvbS9yZWN0LXJhZGl1cy1hdXRvLWR5bmFtaWMuc3ZnCkBAIC0wLDAgKzEsMzggQEAKKzxzdmcg
eG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKyAgICA8cmVjdCBpZD0icmVjdC0x
IiB4PSIyMCIgeT0iNDAiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgcng9IjIwIiByeT0iMSIgZmls
bD0iZ3JlZW4iLz4KKyAgICA8cmVjdCBpZD0icmVjdC0yIiB4PSI2MCIgeT0iMzAiIHdpZHRoPSI2
MCIgaGVpZ2h0PSI2MCIgcnk9IjMwIiByeD0iMSIgZmlsbD0iZ3JlZW4iLz4KKworICAgIDxyZWN0
IGlkPSJyZWN0LTMiIHg9IjEyMCIgeT0iMjAiIHdpZHRoPSI4MCIgaGVpZ2h0PSI4MCIgcng9IjIw
IiByeT0iMSIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVUeXBlPSJY
TUwiIGF0dHJpYnV0ZU5hbWU9InJ4IiBmcm9tPSIyMCIgdG89IjQwIiBkdXI9IjFzIiBmaWxsPSJm
cmVlemUiLz4KKyAgICA8L3JlY3Q+CisKKyAgICA8cmVjdCBpZD0icmVjdC00IiB4PSIyMDAiIHk9
IjEwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgcnk9IjIwIiByeD0iMSIgZmlsbD0iZ3JlZW4i
PgorICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVUeXBlPSJYTUwiIGF0dHJpYnV0ZU5hbWU9InJ5
IiBmcm9tPSIyMCIgdG89IjUwIiBkdXI9IjFzIiBmaWxsPSJmcmVlemUiLz4KKyAgICA8L3JlY3Q+
CisKKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI3JlY3QtMSIvPgorICAgIDx1c2UgeT0iMTAwIiBo
cmVmPSIjcmVjdC0yIi8+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNyZWN0LTMiLz4KKyAgICA8
dXNlIHk9IjEwMCIgaHJlZj0iI3JlY3QtNCIvPgorCisgICAgPHNjcmlwdD4KKyAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25l
KCk7CisKKyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoZXZlbnQpID0+
IHsKKyAgICAgICAgICAgIGxldCByZWN0MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZWN0
LTEnKTsKKyAgICAgICAgICAgIGxldCByZWN0MiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdy
ZWN0LTInKTsKKyAgICAgICAgICAgIGxldCByZWN0MyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCdyZWN0LTMnKTsKKyAgICAgICAgICAgIGxldCByZWN0NCA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdyZWN0LTQnKTsKKworICAgICAgICAgICAgcmVjdDEuc3R5bGVbJ3J5J10gPSAnYXV0byc7
CisgICAgICAgICAgICByZWN0Mi5zdHlsZVsncngnXSA9ICdhdXRvJzsKKyAgICAgICAgICAgIHJl
Y3QzLnN0eWxlWydyeSddID0gJ2F1dG8nOworICAgICAgICAgICAgcmVjdDQuc3R5bGVbJ3J4J10g
PSAnYXV0byc7CisKKyAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zZXRDdXJy
ZW50VGltZSg1KTsKKyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAg
ICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgfSk7CisgICAgPC9zY3Jp
cHQ+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVjdC1yYWRp
dXMtYXV0by1pbml0aWFsLWV4cGVjdGVkLnN2ZyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVj
dC1yYWRpdXMtYXV0by1pbml0aWFsLWV4cGVjdGVkLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYmIxODhkOWIy
Mzc1OTg3NGQyODc1MTI1M2I5MTM0Y2NhMDQ0YTcwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1hdXRvLWluaXRpYWwtZXhwZWN0ZWQuc3ZnCkBA
IC0wLDAgKzEsOSBAQAorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgor
ICAgIDxnIGlkPSJyZWN0cyI+CisgICAgICAgIDxyZWN0IHg9IjIwIiB5PSI0MCIgd2lkdGg9IjQw
IiBoZWlnaHQ9IjQwIiByeD0iMjAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxyZWN0IHg9IjYw
IiB5PSIzMCIgd2lkdGg9IjYwIiBoZWlnaHQ9IjYwIiByeT0iMzAiIGZpbGw9ImdyZWVuIi8+Cisg
ICAgICAgIDxyZWN0IHg9IjEyMCIgeT0iMjAiIHdpZHRoPSI4MCIgaGVpZ2h0PSI4MCIgcnk9IjQw
IiBmaWxsPSJncmVlbiIvPgorICAgICAgICA8cmVjdCB4PSIyMDAiIHk9IjEwIiB3aWR0aD0iMTAw
IiBoZWlnaHQ9IjEwMCIgcng9IjUwIiBmaWxsPSJncmVlbiIvPgorICAgIDwvZz4KKyAgICA8dXNl
IHk9IjEwMCIgaHJlZj0iI3JlY3RzIi8+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3N2Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0by1pbml0aWFsLnN2ZyBiL0xheW91dFRlc3RzL3N2
Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0by1pbml0aWFsLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZGQyZDll
MmZhYzZhODYwZjhiMDdlNTBiZmIxNzI2MGRhNmI4YjI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1hdXRvLWluaXRpYWwuc3ZnCkBAIC0wLDAg
KzEsMjggQEAKKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKyAgICA8
cmVjdCBpZD0icmVjdC0xIiB4PSIyMCIgeT0iNDAiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgcng9
IjIwIiBmaWxsPSJncmVlbiIvPgorICAgIDxyZWN0IGlkPSJyZWN0LTIiIHg9IjYwIiB5PSIzMCIg
d2lkdGg9IjYwIiBoZWlnaHQ9IjYwIiByeT0iMzAiIGZpbGw9ImdyZWVuIi8+CisKKyAgICA8cmVj
dCBpZD0icmVjdC0zIiB4PSIxMjAiIHk9IjIwIiB3aWR0aD0iODAiIGhlaWdodD0iODAiIHJ4PSIy
MCIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVUeXBlPSJYTUwiIGF0
dHJpYnV0ZU5hbWU9InJ4IiBmcm9tPSIyMCIgdG89IjQwIiBkdXI9IjFzIiBmaWxsPSJmcmVlemUi
Lz4KKyAgICA8L3JlY3Q+CisKKyAgICA8cmVjdCBpZD0icmVjdC00IiB4PSIyMDAiIHk9IjEwIiB3
aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgcnk9IjIwIiBmaWxsPSJncmVlbiI+CisgICAgICAgIDxh
bmltYXRlIGF0dHJpYnV0ZVR5cGU9IlhNTCIgYXR0cmlidXRlTmFtZT0icnkiIGZyb209IjIwIiB0
bz0iNTAiIGR1cj0iMXMiIGZpbGw9ImZyZWV6ZSIvPgorICAgIDwvcmVjdD4KKworICAgIDx1c2Ug
eT0iMTAwIiBocmVmPSIjcmVjdC0xIi8+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNyZWN0LTIi
Lz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI3JlY3QtMyIvPgorICAgIDx1c2UgeT0iMTAwIiBo
cmVmPSIjcmVjdC00Ii8+CisKKyAgICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKworICAgICAg
ICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIChldmVudCkgPT4geworICAgICAgICAg
ICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNldEN1cnJlbnRUaW1lKDUpOworICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIubm90
aWZ5RG9uZSgpOworICAgICAgICB9KTsKKyAgICA8L3NjcmlwdD4KKzwvc3ZnPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1sZW5ndGgtaW5pdGlhbC1leHBl
Y3RlZC5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWxlbmd0aC1pbml0
aWFsLWV4cGVjdGVkLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYmIxODhkOWIyMzc1OTg3NGQyODc1MTI1M2I5
MTM0Y2NhMDQ0YTcwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9y
ZWN0LXJhZGl1cy1sZW5ndGgtaW5pdGlhbC1leHBlY3RlZC5zdmcKQEAgLTAsMCArMSw5IEBACis8
c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CisgICAgPGcgaWQ9InJlY3Rz
Ij4KKyAgICAgICAgPHJlY3QgeD0iMjAiIHk9IjQwIiB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHJ4
PSIyMCIgZmlsbD0iZ3JlZW4iLz4KKyAgICAgICAgPHJlY3QgeD0iNjAiIHk9IjMwIiB3aWR0aD0i
NjAiIGhlaWdodD0iNjAiIHJ5PSIzMCIgZmlsbD0iZ3JlZW4iLz4KKyAgICAgICAgPHJlY3QgeD0i
MTIwIiB5PSIyMCIgd2lkdGg9IjgwIiBoZWlnaHQ9IjgwIiByeT0iNDAiIGZpbGw9ImdyZWVuIi8+
CisgICAgICAgIDxyZWN0IHg9IjIwMCIgeT0iMTAiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiBy
eD0iNTAiIGZpbGw9ImdyZWVuIi8+CisgICAgPC9nPgorICAgIDx1c2UgeT0iMTAwIiBocmVmPSIj
cmVjdHMiLz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9yZWN0
LXJhZGl1cy1sZW5ndGgtaW5pdGlhbC5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3JlY3Qt
cmFkaXVzLWxlbmd0aC1pbml0aWFsLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zZGE2ZDJlYTU3YmY1N2EzNDE5
MWI4ZTJkMDEwMDg1MmZkMGJiNGUwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3Zn
L2N1c3RvbS9yZWN0LXJhZGl1cy1sZW5ndGgtaW5pdGlhbC5zdmcKQEAgLTAsMCArMSwzNCBAQAor
PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorICAgIDxzdHlsZT4KKyAg
ICAgICAgI3JlY3QtMSB7IHJ5OiAyMHB4OyB9CisgICAgICAgICNyZWN0LTIgeyByeDogMzBweDsg
fQorICAgICAgICAjcmVjdC0zIHsgcnk6IDQwcHg7IH0KKyAgICAgICAgI3JlY3QtNCB7IHJ4OiA1
MHB4OyB9CisgICAgPC9zdHlsZT4KKyAgICA8cmVjdCBpZD0icmVjdC0xIiB4PSIyMCIgeT0iNDAi
IHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgcng9IjIwIiBmaWxsPSJncmVlbiIvPgorICAgIDxyZWN0
IGlkPSJyZWN0LTIiIHg9IjYwIiB5PSIzMCIgd2lkdGg9IjYwIiBoZWlnaHQ9IjYwIiByeT0iMzAi
IGZpbGw9ImdyZWVuIi8+CisKKyAgICA8cmVjdCBpZD0icmVjdC0zIiB4PSIxMjAiIHk9IjIwIiB3
aWR0aD0iODAiIGhlaWdodD0iODAiIHJ4PSIyMCIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8YW5p
bWF0ZSBhdHRyaWJ1dGVUeXBlPSJYTUwiIGF0dHJpYnV0ZU5hbWU9InJ4IiBmcm9tPSIyMCIgdG89
IjQwIiBkdXI9IjFzIiBmaWxsPSJmcmVlemUiLz4KKyAgICA8L3JlY3Q+CisKKyAgICA8cmVjdCBp
ZD0icmVjdC00IiB4PSIyMDAiIHk9IjEwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgcnk9IjIw
IiBmaWxsPSJncmVlbiI+CisgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZVR5cGU9IlhNTCIgYXR0
cmlidXRlTmFtZT0icnkiIGZyb209IjIwIiB0bz0iNTAiIGR1cj0iMXMiIGZpbGw9ImZyZWV6ZSIv
PgorICAgIDwvcmVjdD4KKworICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjcmVjdC0xIi8+CisgICAg
PHVzZSB5PSIxMDAiIGhyZWY9IiNyZWN0LTIiLz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI3Jl
Y3QtMyIvPgorICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjcmVjdC00Ii8+CisKKyAgICA8c2NyaXB0
PgorICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVy
LndhaXRVbnRpbERvbmUoKTsKKworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9h
ZCcsIChldmVudCkgPT4geworICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNl
dEN1cnJlbnRUaW1lKDUpOworICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAg
ICAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgICAgICB9KTsKKyAgICA8
L3NjcmlwdD4KKzwvc3ZnPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>379050</attachid>
            <date>2019-09-18 11:13:45 -0700</date>
            <delta_ts>2019-09-19 10:48:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-199843-20190918111344.patch</filename>
            <type>text/plain</type>
            <size>25596</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUwMDQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTE1NGFlZmVjMWQ2YmFj
Yzc1NjY1MDA5NDJlZmVlNjRkNmFlNzgxMS4uYjlkZWNkYjUzN2ExNDk4YzM3MmI3MmQ5YzNlNDBj
ZDliY2JiYTI1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE5LTA5LTE4ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgW1NWRzJd
OiBBZGQgYXV0byBiZWhhdmlvciBmb3IgcnggYW5kIHJ5IHRvIHRoZSBTVkcgPGVsbGlwc2U+IGFu
ZDxyZWN0PiBlbGVtZW50cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTk5ODQzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgVGhlIHNlcGNzIGlzOiBodHRwczovL3d3dy53My5vcmcvVFIvU1ZHMi9nZW9tZXRy
eS5odG1sI1J4UHJvcGVydHkuCisKKyAgICAgICAgQ2hhbmdlIHRoZSBpbml0aWFsIHZhbHVlIG9m
IHJ4IGFuZCByeSB0byBiZSAiYXV0byIuIENoYW5nZSB0aGUgcGFyc2VyIHRvCisgICAgICAgIHBh
cnNlIExlbmd0aE9yQXV0byBmb3IgdGhlc2UgIHByb3BlcnRpZXMuIEhhbmRsZSB0aGUgY2FzZSBp
ZiBvbmUgb2YgdGhlbQorICAgICAgICBpcyBtaXNzaW5nLgorCisgICAgICAgIFRlc3RzOiBzdmcv
Y3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8tZHluYW1pYy5zdmcKKyAgICAgICAgICAgICAgIHN2
Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMtYXV0by1pbml0aWFsLnN2ZworICAgICAgICAgICAgICAg
c3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1sZW5ndGgtaW5pdGlhbC5zdmcKKyAgICAgICAgICAg
ICAgIHN2Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0by1keW5hbWljLnN2ZworICAgICAgICAgICAg
ICAgc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1hdXRvLWluaXRpYWwuc3ZnCisgICAgICAgICAgICAg
ICBzdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWxlbmd0aC1pbml0aWFsLnN2ZworCisgICAgICAgICog
Y3NzL0NTU1Byb3BlcnRpZXMuanNvbjoKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5
UGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbnN1bWVSeE9yUnkpOgorICAgICAgICAq
IHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
U3R5bGU6OmluaXRpYWxSYWRpdXMpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TVkdSZW5k
ZXJTdHlsZURlZnMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVMYXlvdXREYXRhOjpTdHls
ZUxheW91dERhdGEpOgorICAgICAgICAqIHJlbmRlcmluZy9zdmcvUmVuZGVyU1ZHRWxsaXBzZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdFbGxpcHNlOjpjYWxjdWxhdGVSYWRpaUFu
ZENlbnRlcik6CisKIDIwMTktMDktMTggIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4K
IAogICAgICAgICBEcm9wIEZyYW1lTG9hZGVyQ2xpZW50OjpzZXNzaW9uSUQoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbiBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KaW5kZXggYmNmMTYxYzAxYjRiZTU0YzE1NGY3OTZjMTg0
YWVjODhhZWJlNGU5Yi4uYWFjMmZiOTg1ZTdhODc1OGRlNjIxMWM5MjUwMzFkNWZlZWI3YTNmNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uCkBAIC0zNTQ1LDggKzM1NDUsOCBA
QAogICAgICAgICB9LAogICAgICAgICAicngiOiB7CiAgICAgICAgICAgICAiY29kZWdlbi1wcm9w
ZXJ0aWVzIjogewotICAgICAgICAgICAgICAgICJpbml0aWFsIjogImluaXRpYWxaZXJvTGVuZ3Ro
IiwKLSAgICAgICAgICAgICAgICAiY29udmVydGVyIjogIkxlbmd0aCIKKyAgICAgICAgICAgICAg
ICAiaW5pdGlhbCI6ICJpbml0aWFsUmFkaXVzIiwKKyAgICAgICAgICAgICAgICAiY29udmVydGVy
IjogIkxlbmd0aE9yQXV0byIKICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAic3BlY2lmaWNh
dGlvbiI6IHsKICAgICAgICAgICAgICAgICAiY2F0ZWdvcnkiOiAic3ZnIiwKQEAgLTM1NTUsOCAr
MzU1NSw4IEBACiAgICAgICAgIH0sCiAgICAgICAgICJyeSI6IHsKICAgICAgICAgICAgICJjb2Rl
Z2VuLXByb3BlcnRpZXMiOiB7Ci0gICAgICAgICAgICAgICAgImluaXRpYWwiOiAiaW5pdGlhbFpl
cm9MZW5ndGgiLAotICAgICAgICAgICAgICAgICJjb252ZXJ0ZXIiOiAiTGVuZ3RoIgorICAgICAg
ICAgICAgICAgICJpbml0aWFsIjogImluaXRpYWxSYWRpdXMiLAorICAgICAgICAgICAgICAgICJj
b252ZXJ0ZXIiOiAiTGVuZ3RoT3JBdXRvIgogICAgICAgICAgICAgfSwKICAgICAgICAgICAgICJz
cGVjaWZpY2F0aW9uIjogewogICAgICAgICAgICAgICAgICJjYXRlZ29yeSI6ICJzdmciLApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcAppbmRleCA3
MDhlYzc3NzNjMThkNmUwOGUwMDFjYWZhM2QyOGM4MGQ5Zjg3MmY3Li5kMzJmNmIwOGE2YTUyNDM3
YzE5ODJkNGFhNjlkNDI3MzYxZjBiMjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
cGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFy
c2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcApAQCAtMjE0MiwxMCArMjE0Miw4IEBAIHN0YXRpYyBS
ZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1bWVCYXNlbGluZVNoaWZ0KENTU1BhcnNlclRv
a2VuUmFuZ2UmIHJhbmdlCiAKIHN0YXRpYyBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbnN1
bWVSeE9yUnkoQ1NTUGFyc2VyVG9rZW5SYW5nZSYgcmFuZ2UpCiB7Ci0gICAgLy8gRklYTUUtTkVX
UEFSU0VSOiBXZSBkb24ndCBzdXBwb3J0IGF1dG8gdmFsdWVzIHdoZW4gbWFwcGluZywgc28gZm9y
IG5vdyB0dXJuIHRoaXMKLSAgICAvLyBvZmYgdW50aWwgd2UgY2FuIGZpZ3VyZSBvdXQgaWYgd2Un
cmUgZXZlbiBzdXBwb3NlZCB0byBzdXBwb3J0IGl0LgotICAgIC8vIGlmIChyYW5nZS5wZWVrKCku
aWQoKSA9PSBDU1NWYWx1ZUF1dG8pCi0gICAgLy8gICAgIHJldHVybiBjb25zdW1lSWRlbnQocmFu
Z2UpOworICAgIGlmIChyYW5nZS5wZWVrKCkuaWQoKSA9PSBDU1NWYWx1ZUF1dG8pCisgICAgICAg
IHJldHVybiBjb25zdW1lSWRlbnQocmFuZ2UpOwogICAgIHJldHVybiBjb25zdW1lTGVuZ3RoT3JQ
ZXJjZW50KHJhbmdlLCBTVkdBdHRyaWJ1dGVNb2RlLCBWYWx1ZVJhbmdlQWxsLCBVbml0bGVzc1F1
aXJrOjpGb3JiaWQpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvUmVuZGVyU3R5bGUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5k
ZXJTdHlsZS5oCmluZGV4IGMzNjEyMDdkYmYwMmI5NTE2OTQzZTk0NzdjMjg2ZWI4MjFmMDI4Mjcu
LmNiZjI1MzYzYWM1YmZmZDg0NDU4YTlhNWE1Y2Y2ZWZmNzU1YWY5ODUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC0xNDg5LDYgKzE0ODksNyBA
QCBwdWJsaWM6CiAgICAgc3RhdGljIExlbmd0aCBpbml0aWFsTWluU2l6ZSgpIHsgcmV0dXJuIExl
bmd0aCgpOyB9CiAgICAgc3RhdGljIExlbmd0aCBpbml0aWFsTWF4U2l6ZSgpIHsgcmV0dXJuIExl
bmd0aChVbmRlZmluZWQpOyB9CiAgICAgc3RhdGljIExlbmd0aCBpbml0aWFsT2Zmc2V0KCkgeyBy
ZXR1cm4gTGVuZ3RoKCk7IH0KKyAgICBzdGF0aWMgTGVuZ3RoIGluaXRpYWxSYWRpdXMoKSB7IHJl
dHVybiBMZW5ndGgoKTsgfQogICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbE1hcmdpbigpIHsgcmV0
dXJuIExlbmd0aChGaXhlZCk7IH0KICAgICBzdGF0aWMgTGVuZ3RoIGluaXRpYWxQYWRkaW5nKCkg
eyByZXR1cm4gTGVuZ3RoKEZpeGVkKTsgfQogICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbFRleHRJ
bmRlbnQoKSB7IHJldHVybiBMZW5ndGgoRml4ZWQpOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU1ZHUmVuZGVyU3R5bGVEZWZzLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9TVkdSZW5kZXJTdHlsZURlZnMuY3BwCmluZGV4IDZlMzdjZjhm
YjhhYmE1NWVjMzMwYTk2MDMzYThhOTU0YzdjYjA0YmEuLjU4MWIwN2M2ODkwZDM5MTI1ZjI2M2Y1
MjJlNjdhYTYyNWJmNDJlZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TVkdSZW5kZXJTdHlsZURlZnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TVkdSZW5kZXJTdHlsZURlZnMuY3BwCkBAIC0yNzAsOCArMjcwLDggQEAgU3R5bGVM
YXlvdXREYXRhOjpTdHlsZUxheW91dERhdGEoKQogICAgIDogY3goUmVuZGVyU3R5bGU6OmluaXRp
YWxaZXJvTGVuZ3RoKCkpCiAgICAgLCBjeShSZW5kZXJTdHlsZTo6aW5pdGlhbFplcm9MZW5ndGgo
KSkKICAgICAsIHIoUmVuZGVyU3R5bGU6OmluaXRpYWxaZXJvTGVuZ3RoKCkpCi0gICAgLCByeChS
ZW5kZXJTdHlsZTo6aW5pdGlhbFplcm9MZW5ndGgoKSkKLSAgICAsIHJ5KFJlbmRlclN0eWxlOjpp
bml0aWFsWmVyb0xlbmd0aCgpKQorICAgICwgcngoUmVuZGVyU3R5bGU6OmluaXRpYWxSYWRpdXMo
KSkKKyAgICAsIHJ5KFJlbmRlclN0eWxlOjppbml0aWFsUmFkaXVzKCkpCiAgICAgLCB4KFJlbmRl
clN0eWxlOjppbml0aWFsWmVyb0xlbmd0aCgpKQogICAgICwgeShSZW5kZXJTdHlsZTo6aW5pdGlh
bFplcm9MZW5ndGgoKSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dmcvUmVuZGVyU1ZHRWxsaXBzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1Jl
bmRlclNWR0VsbGlwc2UuY3BwCmluZGV4IDE3N2MzOTU2YWZjZWU2MjNhODJmNzEzM2IyMjdjOWJk
YjEwMzkxYzIuLmFjYTg0OGU4MDVlNmE5MmJkM2QwNjc1YzM2YzJiY2E0MjA3NTc1ZTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHRWxsaXBzZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdFbGxpcHNlLmNwcApA
QCAtODgsOSArODgsMTMgQEAgdm9pZCBSZW5kZXJTVkdFbGxpcHNlOjpjYWxjdWxhdGVSYWRpaUFu
ZENlbnRlcigpCiAgICAgfQogCiAgICAgQVNTRVJUKGlzPFNWR0VsbGlwc2VFbGVtZW50PihncmFw
aGljc0VsZW1lbnQoKSkpOworCisgICAgTGVuZ3RoIHJ4ID0gc3R5bGUoKS5zdmdTdHlsZSgpLnJ4
KCkuaXNBdXRvKCkgPyBzdHlsZSgpLnN2Z1N0eWxlKCkucnkoKSA6IHN0eWxlKCkuc3ZnU3R5bGUo
KS5yeCgpOworICAgIExlbmd0aCByeSA9IHN0eWxlKCkuc3ZnU3R5bGUoKS5yeSgpLmlzQXV0bygp
ID8gc3R5bGUoKS5zdmdTdHlsZSgpLnJ4KCkgOiBzdHlsZSgpLnN2Z1N0eWxlKCkucnkoKTsKKwog
ICAgIG1fcmFkaWkgPSBGbG9hdFNpemUoCi0gICAgICAgIGxlbmd0aENvbnRleHQudmFsdWVGb3JM
ZW5ndGgoc3R5bGUoKS5zdmdTdHlsZSgpLnJ4KCksIFNWR0xlbmd0aE1vZGU6OldpZHRoKSwKLSAg
ICAgICAgbGVuZ3RoQ29udGV4dC52YWx1ZUZvckxlbmd0aChzdHlsZSgpLnN2Z1N0eWxlKCkucnko
KSwgU1ZHTGVuZ3RoTW9kZTo6SGVpZ2h0KSk7CisgICAgICAgIGxlbmd0aENvbnRleHQudmFsdWVG
b3JMZW5ndGgocngsIFNWR0xlbmd0aE1vZGU6OldpZHRoKSwKKyAgICAgICAgbGVuZ3RoQ29udGV4
dC52YWx1ZUZvckxlbmd0aChyeSwgU1ZHTGVuZ3RoTW9kZTo6SGVpZ2h0KSk7CiB9CiAKIHZvaWQg
UmVuZGVyU1ZHRWxsaXBzZTo6ZmlsbFNoYXBlKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCkgY29u
c3QKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwppbmRleCA1YWFmYTgwMzMxMjlmZGM5NjZkNGUzMWU5MDQ3Yzk1N2QwMzE1N2I4Li43NTlh
Y2QzYjIzZGQ1MGM2Yjk2Mzc0Mjg0YTBlYTE1Y2JiMzNlZTMxIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIg
QEAKKzIwMTktMDktMTggIFNhaWQgQWJvdS1IYWxsYXdhICA8c2Fib3VoYWxsYXdhQGFwcGxlLmNv
bT4KKworICAgICAgICBbU1ZHMl06IEFkZCBhdXRvIGJlaGF2aW9yIGZvciByeCBhbmQgcnkgdG8g
dGhlIFNWRyA8ZWxsaXBzZT4gYW5kIDxyZWN0PiBlbGVtZW50cworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk5ODQzCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIHRlc3RzIHdoaWNoIGV4ZXJjaXNlIHRo
ZSBpbml0aWFsIHNldHRpbmcgZm9yIHJ4IGFuZCByeTogbGVuZ3RoLCAnYXV0bycuCisgICAgICAg
IEFkZCB0ZXN0cyB0byBkeW5hbWljYWxseSBjaGFuZ2UgdGhlIHZhbHVlcyBvZiB0aGVzZSBwcm9w
ZXJ0aWVzIGZyb20gbGVuZ3RoCisgICAgICAgIHRvICdhdXRvJy4KKworICAgICAgICBTa2lwIHRo
ZSB0ZXN0cyB3aXRoIGR5bmFtaWMgY2hhbmdlcyB0aWxsIHdlYmtpdC5vcmcvYi8yMDE5MTggaXMg
Zml4ZWQuCisKKyAgICAgICAgKiBUZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHN2Zy9jc3Mv
cGFyc2UtbGVuZ3RoLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdmcvY3NzL3BhcnNlLWxlbmd0
aC5odG1sOgorICAgICAgICAqIHN2Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMtYXV0by1keW5hbWlj
LWV4cGVjdGVkLnN2ZzogQWRkZWQuCisgICAgICAgICogc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1
cy1hdXRvLWR5bmFtaWMuc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvY3VzdG9tL2VsbGlwc2Ut
cmFkaXVzLWF1dG8taW5pdGlhbC1leHBlY3RlZC5zdmc6IEFkZGVkLgorICAgICAgICAqIHN2Zy9j
dXN0b20vZWxsaXBzZS1yYWRpdXMtYXV0by1pbml0aWFsLnN2ZzogQWRkZWQuCisgICAgICAgICog
c3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1sZW5ndGgtaW5pdGlhbC1leHBlY3RlZC5zdmc6IEFk
ZGVkLgorICAgICAgICAqIHN2Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMtbGVuZ3RoLWluaXRpYWwu
c3ZnOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWF1dG8tZHluYW1p
Yy1leHBlY3RlZC5zdmc6IEFkZGVkLgorICAgICAgICAqIHN2Zy9jdXN0b20vcmVjdC1yYWRpdXMt
YXV0by1keW5hbWljLnN2ZzogQWRkZWQuCisgICAgICAgICogc3ZnL2N1c3RvbS9yZWN0LXJhZGl1
cy1hdXRvLWluaXRpYWwtZXhwZWN0ZWQuc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvY3VzdG9t
L3JlY3QtcmFkaXVzLWF1dG8taW5pdGlhbC5zdmc6IEFkZGVkLgorICAgICAgICAqIHN2Zy9jdXN0
b20vcmVjdC1yYWRpdXMtbGVuZ3RoLWluaXRpYWwtZXhwZWN0ZWQuc3ZnOiBBZGRlZC4KKyAgICAg
ICAgKiBzdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWxlbmd0aC1pbml0aWFsLnN2ZzogQWRkZWQuCisK
IDIwMTktMDktMTggIFJ1c3NlbGwgRXBzdGVpbiAgPHJlcHN0ZWluQGFwcGxlLmNvbT4KIAogICAg
ICAgICBSRUdSRVNTSU9OIChtYWNPUyk6IE1hbnkgd2ViZ3B1L3dobHNsKiB0ZXN0cyBhcmUgZmxh
a3kgZmFpbHVyZXMuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIv
TGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBkMmNiOGI1NmNmMDhmODM2NzEyNzIx
MWUwZGJlMzVhYzAzZTA2NmNkLi43ZmMwM2QzOGU5ZTBhYjMwNGZjMDEwY2FmMzdiNTgxNGMyMzVl
ZmVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91
dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTI0MjgsNiArMjQyOCw4IEBAIHdlYmtpdC5vcmcv
Yi8yNDY5MCBwbGF0Zm9ybS9tYWMvcGx1Z2lucy9wbHVnaW5Eb2N1bWVudFZpZXctZGVhbGxvY2F0
ZWQtZGF0YVNvdXJjCiB3ZWJraXQub3JnL2IvMTczOTIgc3ZnL2JhdGlrL3RleHQvdGV4dEJpRGku
c3ZnIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMTE2NjIgc3ZnL2N1c3RvbS9qcy1mb250LXRlc3Qu
c3ZnIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvNjMxODYgc3ZnL3pvb20vcGFnZS96b29tLXN2Zy10
aHJvdWdoLW9iamVjdC13aXRoLXRleHQueGh0bWwgWyBTa2lwIF0KK3dlYmtpdC5vcmcvYi8yMDE5
MTggc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWR5bmFtaWMuc3ZnIFsgU2tpcCBdCit3
ZWJraXQub3JnL2IvMjAxOTE4IHN2Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0by1keW5hbWljLnN2
ZyBbIFNraXAgXQogCiAjIFRlc3QgZGlzYWJsZWQgaW4gcjM3NTEzIGZvciBjYXVzaW5nIG5leHQg
dGVzdCB0byBoYW5nCiBhbmltYXRpb25zL2ZvbnQtc2l6ZS11c2luZy1lbXMuaHRtbCBbIFNraXAg
XQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9wYXJzZS1sZW5ndGgtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9wYXJzZS1sZW5ndGgtZXhwZWN0ZWQudHh0CmluZGV4
IDQ4YmRhMjUwODk3NTcxZTU4MDUxMTRkMWJlNTVmMDE5ODNhMmZmMjcuLjM4YTk5YTM1NjViZTdh
Y2YzMGU5ZTk3NGY2YWQxMjM1Yjg3OWE1NWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N2Zy9j
c3MvcGFyc2UtbGVuZ3RoLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3NzL3Bh
cnNlLWxlbmd0aC1leHBlY3RlZC50eHQKQEAgLTExMiwxNiArMTEyLDE2IEBAIFBBU1MgY29tcHV0
ZWRTdHlsZSgiciIsICIxMDAgICBweCIpIGlzICIwcHgiCiBQQVNTIGNvbXB1dGVkU3R5bGUoInIi
LCAiMTAwcHg7IikgaXMgIjBweCIKIFBBU1MgY29tcHV0ZWRTdHlsZSgiciIsICIxMDBweCAhaW1w
b3J0YW50IikgaXMgIjBweCIKIFBBU1MgY29tcHV0ZWRTdHlsZSgiciIsICJ7IDEwMHB4IH0iKSBp
cyAiMHB4IgotUEFTUyBjb21wdXRlZFN0eWxlKCJyeCIsICJhdXRvIikgaXMgIjBweCIKLVBBU1Mg
Y29tcHV0ZWRTdHlsZSgicngiLCAiMTAwICAgcHgiKSBpcyAiMHB4IgotUEFTUyBjb21wdXRlZFN0
eWxlKCJyeCIsICIxMDBweDsiKSBpcyAiMHB4IgotUEFTUyBjb21wdXRlZFN0eWxlKCJyeCIsICIx
MDBweCAhaW1wb3J0YW50IikgaXMgIjBweCIKLVBBU1MgY29tcHV0ZWRTdHlsZSgicngiLCAieyAx
MDBweCB9IikgaXMgIjBweCIKLVBBU1MgY29tcHV0ZWRTdHlsZSgicnkiLCAiYXV0byIpIGlzICIw
cHgiCi1QQVNTIGNvbXB1dGVkU3R5bGUoInJ5IiwgIjEwMCAgIHB4IikgaXMgIjBweCIKLVBBU1Mg
Y29tcHV0ZWRTdHlsZSgicnkiLCAiMTAwcHg7IikgaXMgIjBweCIKLVBBU1MgY29tcHV0ZWRTdHls
ZSgicnkiLCAiMTAwcHggIWltcG9ydGFudCIpIGlzICIwcHgiCi1QQVNTIGNvbXB1dGVkU3R5bGUo
InJ5IiwgInsgMTAwcHggfSIpIGlzICIwcHgiCitQQVNTIGNvbXB1dGVkU3R5bGUoInJ4IiwgImF1
dG8iKSBpcyAiYXV0byIKK1BBU1MgY29tcHV0ZWRTdHlsZSgicngiLCAiMTAwICAgcHgiKSBpcyAi
YXV0byIKK1BBU1MgY29tcHV0ZWRTdHlsZSgicngiLCAiMTAwcHg7IikgaXMgImF1dG8iCitQQVNT
IGNvbXB1dGVkU3R5bGUoInJ4IiwgIjEwMHB4ICFpbXBvcnRhbnQiKSBpcyAiYXV0byIKK1BBU1Mg
Y29tcHV0ZWRTdHlsZSgicngiLCAieyAxMDBweCB9IikgaXMgImF1dG8iCitQQVNTIGNvbXB1dGVk
U3R5bGUoInJ5IiwgImF1dG8iKSBpcyAiYXV0byIKK1BBU1MgY29tcHV0ZWRTdHlsZSgicnkiLCAi
MTAwICAgcHgiKSBpcyAiYXV0byIKK1BBU1MgY29tcHV0ZWRTdHlsZSgicnkiLCAiMTAwcHg7Iikg
aXMgImF1dG8iCitQQVNTIGNvbXB1dGVkU3R5bGUoInJ5IiwgIjEwMHB4ICFpbXBvcnRhbnQiKSBp
cyAiYXV0byIKK1BBU1MgY29tcHV0ZWRTdHlsZSgicnkiLCAieyAxMDBweCB9IikgaXMgImF1dG8i
CiBQQVNTIGNvbXB1dGVkU3R5bGUoIndpZHRoIiwgIjEwMCAgIHB4IikgaXMgImF1dG8iCiBQQVNT
IGNvbXB1dGVkU3R5bGUoIndpZHRoIiwgIjEwMHB4OyIpIGlzICJhdXRvIgogUEFTUyBjb21wdXRl
ZFN0eWxlKCJ3aWR0aCIsICIxMDBweCAhaW1wb3J0YW50IikgaXMgImF1dG8iCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9zdmcvY3NzL3BhcnNlLWxlbmd0aC5odG1sIGIvTGF5b3V0VGVzdHMvc3Zn
L2Nzcy9wYXJzZS1sZW5ndGguaHRtbAppbmRleCBjNzdhMzlkZjdiNTJhMjFhMDc1ODlmZjAxYzQ2
Mzk4OGU1NWVjODYwLi4zOTQwNGE4NDdjYWI4NmE4NTYxYzYxOWJkOTI3Njg5MzAwMjdlYTUyIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdmcvY3NzL3BhcnNlLWxlbmd0aC5odG1sCisrKyBiL0xh
eW91dFRlc3RzL3N2Zy9jc3MvcGFyc2UtbGVuZ3RoLmh0bWwKQEAgLTEyOSwxOCArMTI5LDE4IEBA
IG5lZ2F0aXZlVGVzdFplcm8oInIiLCAiMTAwcHggIWltcG9ydGFudCIpOwogbmVnYXRpdmVUZXN0
WmVybygiciIsICJ7IDEwMHB4IH0iKTsKIAogLy8gTmVnYXRpdmUgdGVzdHMgZm9yICdyeCcuCi1u
ZWdhdGl2ZVRlc3RaZXJvKCJyeCIsICJhdXRvIiwgImF1dG8iKTsKLW5lZ2F0aXZlVGVzdFplcm8o
InJ4IiwgIjEwMCAgIHB4Iik7Ci1uZWdhdGl2ZVRlc3RaZXJvKCJyeCIsICIxMDBweDsiKTsKLW5l
Z2F0aXZlVGVzdFplcm8oInJ4IiwgIjEwMHB4ICFpbXBvcnRhbnQiKTsKLW5lZ2F0aXZlVGVzdFpl
cm8oInJ4IiwgInsgMTAwcHggfSIpOworbmVnYXRpdmVUZXN0KCJyeCIsICJhdXRvIiwgImF1dG8i
KTsKK25lZ2F0aXZlVGVzdCgicngiLCAiMTAwICAgcHgiLCAiYXV0byIpOworbmVnYXRpdmVUZXN0
KCJyeCIsICIxMDBweDsiLCAiYXV0byIpOworbmVnYXRpdmVUZXN0KCJyeCIsICIxMDBweCAhaW1w
b3J0YW50IiwgImF1dG8iKTsKK25lZ2F0aXZlVGVzdCgicngiLCAieyAxMDBweCB9IiwgImF1dG8i
KTsKIAogLy8gTmVnYXRpdmUgdGVzdHMgZm9yICdyeScuCi1uZWdhdGl2ZVRlc3RaZXJvKCJyeSIs
ICJhdXRvIik7Ci1uZWdhdGl2ZVRlc3RaZXJvKCJyeSIsICIxMDAgICBweCIpOwotbmVnYXRpdmVU
ZXN0WmVybygicnkiLCAiMTAwcHg7Iik7Ci1uZWdhdGl2ZVRlc3RaZXJvKCJyeSIsICIxMDBweCAh
aW1wb3J0YW50Iik7Ci1uZWdhdGl2ZVRlc3RaZXJvKCJyeSIsICJ7IDEwMHB4IH0iKTsKK25lZ2F0
aXZlVGVzdCgicnkiLCAiYXV0byIsICJhdXRvIik7CituZWdhdGl2ZVRlc3QoInJ5IiwgIjEwMCAg
IHB4IiwgImF1dG8iKTsKK25lZ2F0aXZlVGVzdCgicnkiLCAiMTAwcHg7IiwgImF1dG8iKTsKK25l
Z2F0aXZlVGVzdCgicnkiLCAiMTAwcHggIWltcG9ydGFudCIsICJhdXRvIik7CituZWdhdGl2ZVRl
c3QoInJ5IiwgInsgMTAwcHggfSIsICJhdXRvIik7CiAKIC8vIE5lZ2F0aXZlIHRlc3RzIGZvciAn
d2lkdGgnLgogbmVnYXRpdmVUZXN0KCJ3aWR0aCIsICIxMDAgICBweCIpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWR5bmFtaWMtZXhwZWN0
ZWQuc3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWR5bmFt
aWMtZXhwZWN0ZWQuc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJhZmNmMjU3YzE5Mzg2YTQ1NGVkMmU2MjY2MzRj
YjM2ZmZiYTVjY2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2Vs
bGlwc2UtcmFkaXVzLWF1dG8tZHluYW1pYy1leHBlY3RlZC5zdmcKQEAgLTAsMCArMSw5IEBACis8
c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CisgICAgPGcgaWQ9ImVsbGlw
c2VzIj4KKyAgICAgICAgPGVsbGlwc2UgY3g9IjQwIiBjeT0iNjAiIHJ4PSIyMCIgcnk9IjIwIiBm
aWxsPSJncmVlbiIvPgorICAgICAgICA8ZWxsaXBzZSBjeD0iOTAiIGN5PSI2MCIgcng9IjMwIiBy
eT0iMzAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxlbGxpcHNlIGN4PSIxNjAiIGN5PSI2MCIg
cng9IjQwIiByeT0iNDAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxlbGxpcHNlIGN4PSIyNTAi
IGN5PSI2MCIgcng9IjUwIiByeT0iNTAiIGZpbGw9ImdyZWVuIi8+CisgICAgPC9nPgorICAgIDx1
c2UgeT0iMTAwIiBocmVmPSIjZWxsaXBzZXMiLz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWR5bmFtaWMuc3ZnIGIvTGF5b3V0
VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWR5bmFtaWMuc3ZnCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjE3ZDg4ZDhiYzJhYjQ5NmNlODgxZDhhNWQwMTQ0MzVhOGUwMDE2YzkKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8tZHluYW1p
Yy5zdmcKQEAgLTAsMCArMSwzOCBAQAorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAw
MC9zdmciPgorICAgIDxlbGxpcHNlIGlkPSJlbGxpcHNlLTEiIGN4PSI0MCIgY3k9IjYwIiByeD0i
MjAiIHJ5PSIwIiBmaWxsPSJncmVlbiIvPgorICAgIDxlbGxpcHNlIGlkPSJlbGxpcHNlLTIiIGN4
PSI5MCIgY3k9IjYwIiByeT0iMzAiIHJ4PSIwIiBmaWxsPSJncmVlbiIvPgorCisgICAgPGVsbGlw
c2UgaWQ9ImVsbGlwc2UtMyIgY3g9IjE2MCIgY3k9IjYwIiByeD0iMjAiIHJ5PSIwIiBmaWxsPSJn
cmVlbiI+CisgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZVR5cGU9IlhNTCIgYXR0cmlidXRlTmFt
ZT0icngiIGZyb209IjIwIiB0bz0iNDAiIGR1cj0iMXMiIGZpbGw9ImZyZWV6ZSIvPgorICAgIDwv
ZWxsaXBzZT4KKworICAgIDxlbGxpcHNlIGlkPSJlbGxpcHNlLTQiIGN4PSIyNTAiIGN5PSI2MCIg
cnk9IjIwIiByeD0iMCIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVU
eXBlPSJYTUwiIGF0dHJpYnV0ZU5hbWU9InJ5IiBmcm9tPSIyMCIgdG89IjUwIiBkdXI9IjFzIiBm
aWxsPSJmcmVlemUiLz4KKyAgICA8L2VsbGlwc2U+CisKKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0i
I2VsbGlwc2UtMSIvPgorICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjZWxsaXBzZS0yIi8+CisgICAg
PHVzZSB5PSIxMDAiIGhyZWY9IiNlbGxpcHNlLTMiLz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0i
I2VsbGlwc2UtNCIvPgorCisgICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQorICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisKKyAgICAgICAg
d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoZXZlbnQpID0+IHsKKyAgICAgICAgICAg
IGxldCBlbGxpcHNlMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlbGxpcHNlLTEnKTsKKyAg
ICAgICAgICAgIGxldCBlbGxpcHNlMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlbGxpcHNl
LTInKTsKKyAgICAgICAgICAgIGxldCBlbGxpcHNlMyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCdlbGxpcHNlLTMnKTsKKyAgICAgICAgICAgIGxldCBlbGxpcHNlNCA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdlbGxpcHNlLTQnKTsKKworICAgICAgICAgICAgZWxsaXBzZTEuc3R5bGVbJ3J5
J10gPSAnYXV0byc7CisgICAgICAgICAgICBlbGxpcHNlMi5zdHlsZVsncngnXSA9ICdhdXRvJzsK
KyAgICAgICAgICAgIGVsbGlwc2UzLnN0eWxlWydyeSddID0gJ2F1dG8nOworICAgICAgICAgICAg
ZWxsaXBzZTQuc3R5bGVbJ3J4J10gPSAnYXV0byc7CisKKyAgICAgICAgICAgIGRvY3VtZW50LmRv
Y3VtZW50RWxlbWVudC5zZXRDdXJyZW50VGltZSg1KTsKKyAgICAgICAgICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAg
ICAgICAgfSk7CisgICAgPC9zY3JpcHQ+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3N2Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMtYXV0by1pbml0aWFsLWV4cGVjdGVkLnN2ZyBiL0xh
eW91dFRlc3RzL3N2Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMtYXV0by1pbml0aWFsLWV4cGVjdGVk
LnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yYWZjZjI1N2MxOTM4NmE0NTRlZDJlNjI2NjM0Y2IzNmZmYmE1Y2Nm
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1
cy1hdXRvLWluaXRpYWwtZXhwZWN0ZWQuc3ZnCkBAIC0wLDAgKzEsOSBAQAorPHN2ZyB4bWxucz0i
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorICAgIDxnIGlkPSJlbGxpcHNlcyI+CisgICAg
ICAgIDxlbGxpcHNlIGN4PSI0MCIgY3k9IjYwIiByeD0iMjAiIHJ5PSIyMCIgZmlsbD0iZ3JlZW4i
Lz4KKyAgICAgICAgPGVsbGlwc2UgY3g9IjkwIiBjeT0iNjAiIHJ4PSIzMCIgcnk9IjMwIiBmaWxs
PSJncmVlbiIvPgorICAgICAgICA8ZWxsaXBzZSBjeD0iMTYwIiBjeT0iNjAiIHJ4PSI0MCIgcnk9
IjQwIiBmaWxsPSJncmVlbiIvPgorICAgICAgICA8ZWxsaXBzZSBjeD0iMjUwIiBjeT0iNjAiIHJ4
PSI1MCIgcnk9IjUwIiBmaWxsPSJncmVlbiIvPgorICAgIDwvZz4KKyAgICA8dXNlIHk9IjEwMCIg
aHJlZj0iI2VsbGlwc2VzIi8+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9j
dXN0b20vZWxsaXBzZS1yYWRpdXMtYXV0by1pbml0aWFsLnN2ZyBiL0xheW91dFRlc3RzL3N2Zy9j
dXN0b20vZWxsaXBzZS1yYWRpdXMtYXV0by1pbml0aWFsLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYjg4ZWJh
MzUyYThlY2UxMTg2NmIxMjljNDUzMTdmOWQ1ZWYwMmMyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWluaXRpYWwuc3ZnCkBAIC0w
LDAgKzEsMjggQEAKKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKyAg
ICA8ZWxsaXBzZSBpZD0iZWxsaXBzZS0xIiBjeD0iNDAiIGN5PSI2MCIgcng9IjIwIiBmaWxsPSJn
cmVlbiIvPgorICAgIDxlbGxpcHNlIGlkPSJlbGxpcHNlLTIiIGN4PSI5MCIgY3k9IjYwIiByeT0i
MzAiIGZpbGw9ImdyZWVuIi8+CisKKyAgICA8ZWxsaXBzZSBpZD0iZWxsaXBzZS0zIiBjeD0iMTYw
IiBjeT0iNjAiIHJ4PSIyMCIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1
dGVUeXBlPSJYTUwiIGF0dHJpYnV0ZU5hbWU9InJ4IiBmcm9tPSIyMCIgdG89IjQwIiBkdXI9IjFz
IiBmaWxsPSJmcmVlemUiLz4KKyAgICA8L2VsbGlwc2U+CisKKyAgICA8ZWxsaXBzZSBpZD0iZWxs
aXBzZS00IiBjeD0iMjUwIiBjeT0iNjAiIHJ5PSIyMCIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8
YW5pbWF0ZSBhdHRyaWJ1dGVUeXBlPSJYTUwiIGF0dHJpYnV0ZU5hbWU9InJ5IiBmcm9tPSIyMCIg
dG89IjUwIiBkdXI9IjFzIiBmaWxsPSJmcmVlemUiLz4KKyAgICA8L2VsbGlwc2U+CisKKyAgICA8
dXNlIHk9IjEwMCIgaHJlZj0iI2VsbGlwc2UtMSIvPgorICAgIDx1c2UgeT0iMTAwIiBocmVmPSIj
ZWxsaXBzZS0yIi8+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNlbGxpcHNlLTMiLz4KKyAgICA8
dXNlIHk9IjEwMCIgaHJlZj0iI2VsbGlwc2UtNCIvPgorCisgICAgPHNjcmlwdD4KKyAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxE
b25lKCk7CisKKyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoZXZlbnQp
ID0+IHsKKyAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zZXRDdXJyZW50VGlt
ZSg1KTsKKyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAg
ICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgfSk7CisgICAgPC9zY3JpcHQ+Cis8
L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMt
bGVuZ3RoLWluaXRpYWwtZXhwZWN0ZWQuc3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxp
cHNlLXJhZGl1cy1sZW5ndGgtaW5pdGlhbC1leHBlY3RlZC5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmFmY2Yy
NTdjMTkzODZhNDU0ZWQyZTYyNjYzNGNiMzZmZmJhNWNjZgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL3N2Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMtbGVuZ3RoLWluaXRpYWwtZXhwZWN0
ZWQuc3ZnCkBAIC0wLDAgKzEsOSBAQAorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAw
MC9zdmciPgorICAgIDxnIGlkPSJlbGxpcHNlcyI+CisgICAgICAgIDxlbGxpcHNlIGN4PSI0MCIg
Y3k9IjYwIiByeD0iMjAiIHJ5PSIyMCIgZmlsbD0iZ3JlZW4iLz4KKyAgICAgICAgPGVsbGlwc2Ug
Y3g9IjkwIiBjeT0iNjAiIHJ4PSIzMCIgcnk9IjMwIiBmaWxsPSJncmVlbiIvPgorICAgICAgICA8
ZWxsaXBzZSBjeD0iMTYwIiBjeT0iNjAiIHJ4PSI0MCIgcnk9IjQwIiBmaWxsPSJncmVlbiIvPgor
ICAgICAgICA8ZWxsaXBzZSBjeD0iMjUwIiBjeT0iNjAiIHJ4PSI1MCIgcnk9IjUwIiBmaWxsPSJn
cmVlbiIvPgorICAgIDwvZz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI2VsbGlwc2VzIi8+Cis8
L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMt
bGVuZ3RoLWluaXRpYWwuc3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1
cy1sZW5ndGgtaW5pdGlhbC5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2RlOTFhOWRjNzU2NmM3NjMwNmNiM2Nl
NDI0Yzk5NzBmNTYyOTBhOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0
b20vZWxsaXBzZS1yYWRpdXMtbGVuZ3RoLWluaXRpYWwuc3ZnCkBAIC0wLDAgKzEsMzQgQEAKKzxz
dmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKyAgICA8c3R5bGU+CisgICAg
ICAgICNlbGxpcHNlLTEgeyByeTogMjBweDsgfQorICAgICAgICAjZWxsaXBzZS0yIHsgcng6IDMw
cHg7IH0KKyAgICAgICAgI2VsbGlwc2UtMyB7IHJ5OiA0MHB4OyB9CisgICAgICAgICNlbGxpcHNl
LTQgeyByeDogNTBweDsgfQorICAgIDwvc3R5bGU+CisgICAgPGVsbGlwc2UgaWQ9ImVsbGlwc2Ut
MSIgY3g9IjQwIiBjeT0iNjAiIHJ4PSIyMCIgZmlsbD0iZ3JlZW4iLz4KKyAgICA8ZWxsaXBzZSBp
ZD0iZWxsaXBzZS0yIiBjeD0iOTAiIGN5PSI2MCIgcnk9IjMwIiBmaWxsPSJncmVlbiIvPgorCisg
ICAgPGVsbGlwc2UgaWQ9ImVsbGlwc2UtMyIgY3g9IjE2MCIgY3k9IjYwIiByeD0iMjAiIGZpbGw9
ImdyZWVuIj4KKyAgICAgICAgPGFuaW1hdGUgYXR0cmlidXRlVHlwZT0iWE1MIiBhdHRyaWJ1dGVO
YW1lPSJyeCIgZnJvbT0iMjAiIHRvPSI0MCIgZHVyPSIxcyIgZmlsbD0iZnJlZXplIi8+CisgICAg
PC9lbGxpcHNlPgorCisgICAgPGVsbGlwc2UgaWQ9ImVsbGlwc2UtNCIgY3g9IjI1MCIgY3k9IjYw
IiByeT0iMjAiIGZpbGw9ImdyZWVuIj4KKyAgICAgICAgPGFuaW1hdGUgYXR0cmlidXRlVHlwZT0i
WE1MIiBhdHRyaWJ1dGVOYW1lPSJyeSIgZnJvbT0iMjAiIHRvPSI1MCIgZHVyPSIxcyIgZmlsbD0i
ZnJlZXplIi8+CisgICAgPC9lbGxpcHNlPgorCisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNlbGxp
cHNlLTEiLz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI2VsbGlwc2UtMiIvPgorICAgIDx1c2Ug
eT0iMTAwIiBocmVmPSIjZWxsaXBzZS0zIi8+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNlbGxp
cHNlLTQiLz4KKworICAgIDxzY3JpcHQ+CisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
KyAgICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworCisgICAgICAgIHdpbmRv
dy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgKGV2ZW50KSA9PiB7CisgICAgICAgICAgICBkb2N1
bWVudC5kb2N1bWVudEVsZW1lbnQuc2V0Q3VycmVudFRpbWUoNSk7CisgICAgICAgICAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25l
KCk7CisgICAgICAgIH0pOworICAgIDwvc2NyaXB0PgorPC9zdmc+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9zdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWF1dG8tZHluYW1pYy1leHBlY3RlZC5zdmcg
Yi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWF1dG8tZHluYW1pYy1leHBlY3Rl
ZC5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMWJiMTg4ZDliMjM3NTk4NzRkMjg3NTEyNTNiOTEzNGNjYTA0NGE3
MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVjdC1yYWRpdXMt
YXV0by1keW5hbWljLWV4cGVjdGVkLnN2ZwpAQCAtMCwwICsxLDkgQEAKKzxzdmcgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKyAgICA8ZyBpZD0icmVjdHMiPgorICAgICAgICA8
cmVjdCB4PSIyMCIgeT0iNDAiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgcng9IjIwIiBmaWxsPSJn
cmVlbiIvPgorICAgICAgICA8cmVjdCB4PSI2MCIgeT0iMzAiIHdpZHRoPSI2MCIgaGVpZ2h0PSI2
MCIgcnk9IjMwIiBmaWxsPSJncmVlbiIvPgorICAgICAgICA8cmVjdCB4PSIxMjAiIHk9IjIwIiB3
aWR0aD0iODAiIGhlaWdodD0iODAiIHJ5PSI0MCIgZmlsbD0iZ3JlZW4iLz4KKyAgICAgICAgPHJl
Y3QgeD0iMjAwIiB5PSIxMCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMDAiIHJ4PSI1MCIgZmlsbD0i
Z3JlZW4iLz4KKyAgICA8L2c+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNyZWN0cyIvPgorPC9z
dmc+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWF1dG8t
ZHluYW1pYy5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWF1dG8tZHlu
YW1pYy5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMzM1NDc0NGQ0MGM4ODIzOTU0NDZmYjdlODQ2OTNlNWNhZjg5
ZDRhZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVjdC1yYWRp
dXMtYXV0by1keW5hbWljLnN2ZwpAQCAtMCwwICsxLDM4IEBACis8c3ZnIHhtbG5zPSJodHRwOi8v
d3d3LnczLm9yZy8yMDAwL3N2ZyI+CisgICAgPHJlY3QgaWQ9InJlY3QtMSIgeD0iMjAiIHk9IjQw
IiB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHJ4PSIyMCIgcnk9IjEiIGZpbGw9ImdyZWVuIi8+Cisg
ICAgPHJlY3QgaWQ9InJlY3QtMiIgeD0iNjAiIHk9IjMwIiB3aWR0aD0iNjAiIGhlaWdodD0iNjAi
IHJ5PSIzMCIgcng9IjEiIGZpbGw9ImdyZWVuIi8+CisKKyAgICA8cmVjdCBpZD0icmVjdC0zIiB4
PSIxMjAiIHk9IjIwIiB3aWR0aD0iODAiIGhlaWdodD0iODAiIHJ4PSIyMCIgcnk9IjEiIGZpbGw9
ImdyZWVuIj4KKyAgICAgICAgPGFuaW1hdGUgYXR0cmlidXRlVHlwZT0iWE1MIiBhdHRyaWJ1dGVO
YW1lPSJyeCIgZnJvbT0iMjAiIHRvPSI0MCIgZHVyPSIxcyIgZmlsbD0iZnJlZXplIi8+CisgICAg
PC9yZWN0PgorCisgICAgPHJlY3QgaWQ9InJlY3QtNCIgeD0iMjAwIiB5PSIxMCIgd2lkdGg9IjEw
MCIgaGVpZ2h0PSIxMDAiIHJ5PSIyMCIgcng9IjEiIGZpbGw9ImdyZWVuIj4KKyAgICAgICAgPGFu
aW1hdGUgYXR0cmlidXRlVHlwZT0iWE1MIiBhdHRyaWJ1dGVOYW1lPSJyeSIgZnJvbT0iMjAiIHRv
PSI1MCIgZHVyPSIxcyIgZmlsbD0iZnJlZXplIi8+CisgICAgPC9yZWN0PgorCisgICAgPHVzZSB5
PSIxMDAiIGhyZWY9IiNyZWN0LTEiLz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI3JlY3QtMiIv
PgorICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjcmVjdC0zIi8+CisgICAgPHVzZSB5PSIxMDAiIGhy
ZWY9IiNyZWN0LTQiLz4KKworICAgIDxzY3JpcHQ+CisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworCisgICAgICAg
IHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgKGV2ZW50KSA9PiB7CisgICAgICAgICAg
ICBsZXQgcmVjdDEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVjdC0xJyk7CisgICAgICAg
ICAgICBsZXQgcmVjdDIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVjdC0yJyk7CisgICAg
ICAgICAgICBsZXQgcmVjdDMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVjdC0zJyk7Cisg
ICAgICAgICAgICBsZXQgcmVjdDQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVjdC00Jyk7
CisKKyAgICAgICAgICAgIHJlY3QxLnN0eWxlWydyeSddID0gJ2F1dG8nOworICAgICAgICAgICAg
cmVjdDIuc3R5bGVbJ3J4J10gPSAnYXV0byc7CisgICAgICAgICAgICByZWN0My5zdHlsZVsncnkn
XSA9ICdhdXRvJzsKKyAgICAgICAgICAgIHJlY3Q0LnN0eWxlWydyeCddID0gJ2F1dG8nOworCisg
ICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2V0Q3VycmVudFRpbWUoNSk7Cisg
ICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1
bm5lci5ub3RpZnlEb25lKCk7CisgICAgICAgIH0pOworICAgIDwvc2NyaXB0PgorPC9zdmc+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWF1dG8taW5pdGlh
bC1leHBlY3RlZC5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWF1dG8t
aW5pdGlhbC1leHBlY3RlZC5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWJiMTg4ZDliMjM3NTk4NzRkMjg3NTEy
NTNiOTEzNGNjYTA0NGE3MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0
b20vcmVjdC1yYWRpdXMtYXV0by1pbml0aWFsLWV4cGVjdGVkLnN2ZwpAQCAtMCwwICsxLDkgQEAK
KzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKyAgICA8ZyBpZD0icmVj
dHMiPgorICAgICAgICA8cmVjdCB4PSIyMCIgeT0iNDAiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIg
cng9IjIwIiBmaWxsPSJncmVlbiIvPgorICAgICAgICA8cmVjdCB4PSI2MCIgeT0iMzAiIHdpZHRo
PSI2MCIgaGVpZ2h0PSI2MCIgcnk9IjMwIiBmaWxsPSJncmVlbiIvPgorICAgICAgICA8cmVjdCB4
PSIxMjAiIHk9IjIwIiB3aWR0aD0iODAiIGhlaWdodD0iODAiIHJ5PSI0MCIgZmlsbD0iZ3JlZW4i
Lz4KKyAgICAgICAgPHJlY3QgeD0iMjAwIiB5PSIxMCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMDAi
IHJ4PSI1MCIgZmlsbD0iZ3JlZW4iLz4KKyAgICA8L2c+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9
IiNyZWN0cyIvPgorPC9zdmc+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3Jl
Y3QtcmFkaXVzLWF1dG8taW5pdGlhbC5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3JlY3Qt
cmFkaXVzLWF1dG8taW5pdGlhbC5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmRkMmQ5ZTJmYWM2YTg2MGY4YjA3
ZTUwYmZiMTcyNjBkYTZiOGIyNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9j
dXN0b20vcmVjdC1yYWRpdXMtYXV0by1pbml0aWFsLnN2ZwpAQCAtMCwwICsxLDI4IEBACis8c3Zn
IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CisgICAgPHJlY3QgaWQ9InJlY3Qt
MSIgeD0iMjAiIHk9IjQwIiB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHJ4PSIyMCIgZmlsbD0iZ3Jl
ZW4iLz4KKyAgICA8cmVjdCBpZD0icmVjdC0yIiB4PSI2MCIgeT0iMzAiIHdpZHRoPSI2MCIgaGVp
Z2h0PSI2MCIgcnk9IjMwIiBmaWxsPSJncmVlbiIvPgorCisgICAgPHJlY3QgaWQ9InJlY3QtMyIg
eD0iMTIwIiB5PSIyMCIgd2lkdGg9IjgwIiBoZWlnaHQ9IjgwIiByeD0iMjAiIGZpbGw9ImdyZWVu
Ij4KKyAgICAgICAgPGFuaW1hdGUgYXR0cmlidXRlVHlwZT0iWE1MIiBhdHRyaWJ1dGVOYW1lPSJy
eCIgZnJvbT0iMjAiIHRvPSI0MCIgZHVyPSIxcyIgZmlsbD0iZnJlZXplIi8+CisgICAgPC9yZWN0
PgorCisgICAgPHJlY3QgaWQ9InJlY3QtNCIgeD0iMjAwIiB5PSIxMCIgd2lkdGg9IjEwMCIgaGVp
Z2h0PSIxMDAiIHJ5PSIyMCIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1
dGVUeXBlPSJYTUwiIGF0dHJpYnV0ZU5hbWU9InJ5IiBmcm9tPSIyMCIgdG89IjUwIiBkdXI9IjFz
IiBmaWxsPSJmcmVlemUiLz4KKyAgICA8L3JlY3Q+CisKKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0i
I3JlY3QtMSIvPgorICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjcmVjdC0yIi8+CisgICAgPHVzZSB5
PSIxMDAiIGhyZWY9IiNyZWN0LTMiLz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI3JlY3QtNCIv
PgorCisgICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAg
ICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisKKyAgICAgICAgd2luZG93LmFkZEV2
ZW50TGlzdGVuZXIoJ2xvYWQnLCAoZXZlbnQpID0+IHsKKyAgICAgICAgICAgIGRvY3VtZW50LmRv
Y3VtZW50RWxlbWVudC5zZXRDdXJyZW50VGltZSg1KTsKKyAgICAgICAgICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAg
ICAgICAgfSk7CisgICAgPC9zY3JpcHQ+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3N2Zy9jdXN0b20vcmVjdC1yYWRpdXMtbGVuZ3RoLWluaXRpYWwtZXhwZWN0ZWQuc3ZnIGIvTGF5
b3V0VGVzdHMvc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1sZW5ndGgtaW5pdGlhbC1leHBlY3RlZC5z
dmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMWJiMTg4ZDliMjM3NTk4NzRkMjg3NTEyNTNiOTEzNGNjYTA0NGE3MAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVjdC1yYWRpdXMtbGVu
Z3RoLWluaXRpYWwtZXhwZWN0ZWQuc3ZnCkBAIC0wLDAgKzEsOSBAQAorPHN2ZyB4bWxucz0iaHR0
cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorICAgIDxnIGlkPSJyZWN0cyI+CisgICAgICAgIDxy
ZWN0IHg9IjIwIiB5PSI0MCIgd2lkdGg9IjQwIiBoZWlnaHQ9IjQwIiByeD0iMjAiIGZpbGw9Imdy
ZWVuIi8+CisgICAgICAgIDxyZWN0IHg9IjYwIiB5PSIzMCIgd2lkdGg9IjYwIiBoZWlnaHQ9IjYw
IiByeT0iMzAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxyZWN0IHg9IjEyMCIgeT0iMjAiIHdp
ZHRoPSI4MCIgaGVpZ2h0PSI4MCIgcnk9IjQwIiBmaWxsPSJncmVlbiIvPgorICAgICAgICA8cmVj
dCB4PSIyMDAiIHk9IjEwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgcng9IjUwIiBmaWxsPSJn
cmVlbiIvPgorICAgIDwvZz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI3JlY3RzIi8+Cis8L3N2
Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVjdC1yYWRpdXMtbGVuZ3Ro
LWluaXRpYWwuc3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1sZW5ndGgt
aW5pdGlhbC5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2RhNmQyZWE1N2JmNTdhMzQxOTFiOGUyZDAxMDA4NTJm
ZDBiYjRlMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVjdC1y
YWRpdXMtbGVuZ3RoLWluaXRpYWwuc3ZnCkBAIC0wLDAgKzEsMzQgQEAKKzxzdmcgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKyAgICA8c3R5bGU+CisgICAgICAgICNyZWN0LTEg
eyByeTogMjBweDsgfQorICAgICAgICAjcmVjdC0yIHsgcng6IDMwcHg7IH0KKyAgICAgICAgI3Jl
Y3QtMyB7IHJ5OiA0MHB4OyB9CisgICAgICAgICNyZWN0LTQgeyByeDogNTBweDsgfQorICAgIDwv
c3R5bGU+CisgICAgPHJlY3QgaWQ9InJlY3QtMSIgeD0iMjAiIHk9IjQwIiB3aWR0aD0iNDAiIGhl
aWdodD0iNDAiIHJ4PSIyMCIgZmlsbD0iZ3JlZW4iLz4KKyAgICA8cmVjdCBpZD0icmVjdC0yIiB4
PSI2MCIgeT0iMzAiIHdpZHRoPSI2MCIgaGVpZ2h0PSI2MCIgcnk9IjMwIiBmaWxsPSJncmVlbiIv
PgorCisgICAgPHJlY3QgaWQ9InJlY3QtMyIgeD0iMTIwIiB5PSIyMCIgd2lkdGg9IjgwIiBoZWln
aHQ9IjgwIiByeD0iMjAiIGZpbGw9ImdyZWVuIj4KKyAgICAgICAgPGFuaW1hdGUgYXR0cmlidXRl
VHlwZT0iWE1MIiBhdHRyaWJ1dGVOYW1lPSJyeCIgZnJvbT0iMjAiIHRvPSI0MCIgZHVyPSIxcyIg
ZmlsbD0iZnJlZXplIi8+CisgICAgPC9yZWN0PgorCisgICAgPHJlY3QgaWQ9InJlY3QtNCIgeD0i
MjAwIiB5PSIxMCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMDAiIHJ5PSIyMCIgZmlsbD0iZ3JlZW4i
PgorICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVUeXBlPSJYTUwiIGF0dHJpYnV0ZU5hbWU9InJ5
IiBmcm9tPSIyMCIgdG89IjUwIiBkdXI9IjFzIiBmaWxsPSJmcmVlemUiLz4KKyAgICA8L3JlY3Q+
CisKKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI3JlY3QtMSIvPgorICAgIDx1c2UgeT0iMTAwIiBo
cmVmPSIjcmVjdC0yIi8+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNyZWN0LTMiLz4KKyAgICA8
dXNlIHk9IjEwMCIgaHJlZj0iI3JlY3QtNCIvPgorCisgICAgPHNjcmlwdD4KKyAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25l
KCk7CisKKyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoZXZlbnQpID0+
IHsKKyAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zZXRDdXJyZW50VGltZSg1
KTsKKyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0
ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgfSk7CisgICAgPC9zY3JpcHQ+Cis8L3N2
Zz4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>379147</attachid>
            <date>2019-09-19 10:48:24 -0700</date>
            <delta_ts>2019-09-20 08:49:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-199843-20190919104823.patch</filename>
            <type>text/plain</type>
            <size>25670</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUwMDk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTFlM2I3MGY2NzI1ODdi
MTVmNThiMGUyZjFhNTUzYjIwYjliNzAwYS4uZGExZThkMTgxMzQxNmQ5ZTNlM2Q5MmY5ZTRhZDM3
YWY1ZjY3MzMyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE5LTA5LTE5ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgW1NWRzJd
OiBBZGQgYXV0byBiZWhhdmlvciBmb3IgcnggYW5kIHJ5IHRvIHRoZSBTVkcgPGVsbGlwc2U+IGFu
ZDxyZWN0PiBlbGVtZW50cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTk5ODQzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLCBOaWtv
bGFzIFppbW1lcm1hbm4uCisKKyAgICAgICAgVGhlIHNwZWNpZmljYXRpb24gaXM6IGh0dHBzOi8v
d3d3LnczLm9yZy9UUi9TVkcyL2dlb21ldHJ5Lmh0bWwjUnhQcm9wZXJ0eS4KKworICAgICAgICBD
aGFuZ2UgdGhlIGluaXRpYWwgdmFsdWUgb2YgcnggYW5kIHJ5IHRvIGJlICJhdXRvIi4gQ2hhbmdl
IHRoZSBwYXJzZXIgdG8KKyAgICAgICAgcGFyc2UgTGVuZ3RoT3JBdXRvIGZvciB0aGVzZSBwcm9w
ZXJ0aWVzLiBIYW5kbGUgdGhlIGNhc2UgaWYgb25lIG9mIHRoZW0KKyAgICAgICAgaXMgbWlzc2lu
Zy4KKworICAgICAgICBUZXN0czogc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWR5bmFt
aWMuc3ZnCisgICAgICAgICAgICAgICBzdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8taW5p
dGlhbC5zdmcKKyAgICAgICAgICAgICAgIHN2Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMtbGVuZ3Ro
LWluaXRpYWwuc3ZnCisgICAgICAgICAgICAgICBzdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWF1dG8t
ZHluYW1pYy5zdmcKKyAgICAgICAgICAgICAgIHN2Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0by1p
bml0aWFsLnN2ZworICAgICAgICAgICAgICAgc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1sZW5ndGgt
aW5pdGlhbC5zdmcKKworICAgICAgICAqIGNzcy9DU1NQcm9wZXJ0aWVzLmpzb246CisgICAgICAg
ICogY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpj
b25zdW1lUnhPclJ5KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjppbml0aWFsUmFkaXVzKToKKyAgICAgICAg
KiByZW5kZXJpbmcvc3R5bGUvU1ZHUmVuZGVyU3R5bGVEZWZzLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlTGF5b3V0RGF0YTo6U3R5bGVMYXlvdXREYXRhKToKKyAgICAgICAgKiByZW5kZXJp
bmcvc3ZnL1JlbmRlclNWR0VsbGlwc2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZH
RWxsaXBzZTo6Y2FsY3VsYXRlUmFkaWlBbmRDZW50ZXIpOgorCiAyMDE5LTA5LTE5ICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBUdXJuIHN0YXRpYyBEb2N1bWVu
dFJ1bGVTZXRzOjpzX2lzSW52YWxpZGF0aW5nU3R5bGVXaXRoUnVsZVNldHMgYXNzZXJ0aW9uIGJp
dCBpbnRvIGEgbWVtYmVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVy
dGllcy5qc29uIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgppbmRleCBi
Y2YxNjFjMDFiNGJlNTRjMTU0Zjc5NmMxODRhZWM4OGFlYmU0ZTliLi5hYWMyZmI5ODVlN2E4NzU4
ZGU2MjExYzkyNTAzMWQ1ZmVlYjdhM2Y1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTUHJvcGVydGllcy5qc29uCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVz
Lmpzb24KQEAgLTM1NDUsOCArMzU0NSw4IEBACiAgICAgICAgIH0sCiAgICAgICAgICJyeCI6IHsK
ICAgICAgICAgICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7Ci0gICAgICAgICAgICAgICAgImlu
aXRpYWwiOiAiaW5pdGlhbFplcm9MZW5ndGgiLAotICAgICAgICAgICAgICAgICJjb252ZXJ0ZXIi
OiAiTGVuZ3RoIgorICAgICAgICAgICAgICAgICJpbml0aWFsIjogImluaXRpYWxSYWRpdXMiLAor
ICAgICAgICAgICAgICAgICJjb252ZXJ0ZXIiOiAiTGVuZ3RoT3JBdXRvIgogICAgICAgICAgICAg
fSwKICAgICAgICAgICAgICJzcGVjaWZpY2F0aW9uIjogewogICAgICAgICAgICAgICAgICJjYXRl
Z29yeSI6ICJzdmciLApAQCAtMzU1NSw4ICszNTU1LDggQEAKICAgICAgICAgfSwKICAgICAgICAg
InJ5IjogewogICAgICAgICAgICAgImNvZGVnZW4tcHJvcGVydGllcyI6IHsKLSAgICAgICAgICAg
ICAgICAiaW5pdGlhbCI6ICJpbml0aWFsWmVyb0xlbmd0aCIsCi0gICAgICAgICAgICAgICAgImNv
bnZlcnRlciI6ICJMZW5ndGgiCisgICAgICAgICAgICAgICAgImluaXRpYWwiOiAiaW5pdGlhbFJh
ZGl1cyIsCisgICAgICAgICAgICAgICAgImNvbnZlcnRlciI6ICJMZW5ndGhPckF1dG8iCiAgICAg
ICAgICAgICB9LAogICAgICAgICAgICAgInNwZWNpZmljYXRpb24iOiB7CiAgICAgICAgICAgICAg
ICAgImNhdGVnb3J5IjogInN2ZyIsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFy
c2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NT
UHJvcGVydHlQYXJzZXIuY3BwCmluZGV4IDcwOGVjNzc3M2MxOGQ2ZTA4ZTAwMWNhZmEzZDI4Yzgw
ZDlmODcyZjcuLmQzMmY2YjA4YTZhNTI0MzdjMTk4MmQ0YWE2OWQ0MjczNjFmMGIyMzUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwCkBAIC0y
MTQyLDEwICsyMTQyLDggQEAgc3RhdGljIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3Vt
ZUJhc2VsaW5lU2hpZnQoQ1NTUGFyc2VyVG9rZW5SYW5nZSYgcmFuZ2UKIAogc3RhdGljIFJlZlB0
cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3VtZVJ4T3JSeShDU1NQYXJzZXJUb2tlblJhbmdlJiBy
YW5nZSkKIHsKLSAgICAvLyBGSVhNRS1ORVdQQVJTRVI6IFdlIGRvbid0IHN1cHBvcnQgYXV0byB2
YWx1ZXMgd2hlbiBtYXBwaW5nLCBzbyBmb3Igbm93IHR1cm4gdGhpcwotICAgIC8vIG9mZiB1bnRp
bCB3ZSBjYW4gZmlndXJlIG91dCBpZiB3ZSdyZSBldmVuIHN1cHBvc2VkIHRvIHN1cHBvcnQgaXQu
Ci0gICAgLy8gaWYgKHJhbmdlLnBlZWsoKS5pZCgpID09IENTU1ZhbHVlQXV0bykKLSAgICAvLyAg
ICAgcmV0dXJuIGNvbnN1bWVJZGVudChyYW5nZSk7CisgICAgaWYgKHJhbmdlLnBlZWsoKS5pZCgp
ID09IENTU1ZhbHVlQXV0bykKKyAgICAgICAgcmV0dXJuIGNvbnN1bWVJZGVudChyYW5nZSk7CiAg
ICAgcmV0dXJuIGNvbnN1bWVMZW5ndGhPclBlcmNlbnQocmFuZ2UsIFNWR0F0dHJpYnV0ZU1vZGUs
IFZhbHVlUmFuZ2VBbGwsIFVuaXRsZXNzUXVpcms6OkZvcmJpZCk7CiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggYzM2MTIwN2RiZjAyYjk1
MTY5NDNlOTQ3N2MyODZlYjgyMWYwMjgyNy4uY2JmMjUzNjNhYzViZmZkODQ0NThhOWE1YTVjZjZl
ZmY3NTVhZjk4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1Jl
bmRlclN0eWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0
eWxlLmgKQEAgLTE0ODksNiArMTQ4OSw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgTGVuZ3RoIGlu
aXRpYWxNaW5TaXplKCkgeyByZXR1cm4gTGVuZ3RoKCk7IH0KICAgICBzdGF0aWMgTGVuZ3RoIGlu
aXRpYWxNYXhTaXplKCkgeyByZXR1cm4gTGVuZ3RoKFVuZGVmaW5lZCk7IH0KICAgICBzdGF0aWMg
TGVuZ3RoIGluaXRpYWxPZmZzZXQoKSB7IHJldHVybiBMZW5ndGgoKTsgfQorICAgIHN0YXRpYyBM
ZW5ndGggaW5pdGlhbFJhZGl1cygpIHsgcmV0dXJuIExlbmd0aCgpOyB9CiAgICAgc3RhdGljIExl
bmd0aCBpbml0aWFsTWFyZ2luKCkgeyByZXR1cm4gTGVuZ3RoKEZpeGVkKTsgfQogICAgIHN0YXRp
YyBMZW5ndGggaW5pdGlhbFBhZGRpbmcoKSB7IHJldHVybiBMZW5ndGgoRml4ZWQpOyB9CiAgICAg
c3RhdGljIExlbmd0aCBpbml0aWFsVGV4dEluZGVudCgpIHsgcmV0dXJuIExlbmd0aChGaXhlZCk7
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TVkdSZW5kZXJT
dHlsZURlZnMuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NWR1JlbmRlclN0
eWxlRGVmcy5jcHAKaW5kZXggNmUzN2NmOGZiOGFiYTU1ZWMzMzBhOTYwMzNhOGE5NTRjN2NiMDRi
YS4uNTgxYjA3YzY4OTBkMzkxMjVmMjYzZjUyMmU2N2FhNjI1YmY0MmVlZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NWR1JlbmRlclN0eWxlRGVmcy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NWR1JlbmRlclN0eWxlRGVmcy5jcHAK
QEAgLTI3MCw4ICsyNzAsOCBAQCBTdHlsZUxheW91dERhdGE6OlN0eWxlTGF5b3V0RGF0YSgpCiAg
ICAgOiBjeChSZW5kZXJTdHlsZTo6aW5pdGlhbFplcm9MZW5ndGgoKSkKICAgICAsIGN5KFJlbmRl
clN0eWxlOjppbml0aWFsWmVyb0xlbmd0aCgpKQogICAgICwgcihSZW5kZXJTdHlsZTo6aW5pdGlh
bFplcm9MZW5ndGgoKSkKLSAgICAsIHJ4KFJlbmRlclN0eWxlOjppbml0aWFsWmVyb0xlbmd0aCgp
KQotICAgICwgcnkoUmVuZGVyU3R5bGU6OmluaXRpYWxaZXJvTGVuZ3RoKCkpCisgICAgLCByeChS
ZW5kZXJTdHlsZTo6aW5pdGlhbFJhZGl1cygpKQorICAgICwgcnkoUmVuZGVyU3R5bGU6OmluaXRp
YWxSYWRpdXMoKSkKICAgICAsIHgoUmVuZGVyU3R5bGU6OmluaXRpYWxaZXJvTGVuZ3RoKCkpCiAg
ICAgLCB5KFJlbmRlclN0eWxlOjppbml0aWFsWmVyb0xlbmd0aCgpKQogewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdFbGxpcHNlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHRWxsaXBzZS5jcHAKaW5kZXggMTc3YzM5
NTZhZmNlZTYyM2E4MmY3MTMzYjIyN2M5YmRiMTAzOTFjMi4uZGVlNjEyZWUyMzk4OTdkODA3ZWE5
OWZlMWY4ZmM4ODRhMDAxZTc1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N2Zy9SZW5kZXJTVkdFbGxpcHNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3ZnL1JlbmRlclNWR0VsbGlwc2UuY3BwCkBAIC04OCw5ICs4OCwxOCBAQCB2b2lkIFJlbmRlclNW
R0VsbGlwc2U6OmNhbGN1bGF0ZVJhZGlpQW5kQ2VudGVyKCkKICAgICB9CiAKICAgICBBU1NFUlQo
aXM8U1ZHRWxsaXBzZUVsZW1lbnQ+KGdyYXBoaWNzRWxlbWVudCgpKSk7CisKKyAgICBMZW5ndGgg
cnggPSBzdHlsZSgpLnN2Z1N0eWxlKCkucngoKTsKKyAgICBpZiAocnguaXNBdXRvKCkpCisgICAg
ICAgIHJ4ID0gc3R5bGUoKS5zdmdTdHlsZSgpLnJ5KCk7CisgICAgCisgICAgTGVuZ3RoIHJ5ID0g
c3R5bGUoKS5zdmdTdHlsZSgpLnJ5KCk7CisgICAgaWYgKHJ5LmlzQXV0bygpKQorICAgICAgICBy
eSA9IHN0eWxlKCkuc3ZnU3R5bGUoKS5yeCgpOworCiAgICAgbV9yYWRpaSA9IEZsb2F0U2l6ZSgK
LSAgICAgICAgbGVuZ3RoQ29udGV4dC52YWx1ZUZvckxlbmd0aChzdHlsZSgpLnN2Z1N0eWxlKCku
cngoKSwgU1ZHTGVuZ3RoTW9kZTo6V2lkdGgpLAotICAgICAgICBsZW5ndGhDb250ZXh0LnZhbHVl
Rm9yTGVuZ3RoKHN0eWxlKCkuc3ZnU3R5bGUoKS5yeSgpLCBTVkdMZW5ndGhNb2RlOjpIZWlnaHQp
KTsKKyAgICAgICAgbGVuZ3RoQ29udGV4dC52YWx1ZUZvckxlbmd0aChyeCwgU1ZHTGVuZ3RoTW9k
ZTo6V2lkdGgpLAorICAgICAgICBsZW5ndGhDb250ZXh0LnZhbHVlRm9yTGVuZ3RoKHJ5LCBTVkdM
ZW5ndGhNb2RlOjpIZWlnaHQpKTsKIH0KIAogdm9pZCBSZW5kZXJTVkdFbGxpcHNlOjpmaWxsU2hh
cGUoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0KSBjb25zdApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDMyZTRlMWVlNzNlYjIx
OTRiYmUxNjVlYTY4MWY3NjU4ODgxNDI3ZjUuLmE2ZWU0MDEwZWMwYWQ4NDI1NzQxODMxMTUyYzQ1
NGQ2YjNjNGQyOTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMiBAQAorMjAxOS0wOS0xOSAgU2FpZCBBYm91
LUhhbGxhd2EgIDxzYWJvdWhhbGxhd2FAYXBwbGUuY29tPgorCisgICAgICAgIFtTVkcyXTogQWRk
IGF1dG8gYmVoYXZpb3IgZm9yIHJ4IGFuZCByeSB0byB0aGUgU1ZHIDxlbGxpcHNlPiBhbmQgPHJl
Y3Q+IGVsZW1lbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xOTk4NDMKKworICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIsIE5pa29sYXMg
WmltbWVybWFubi4KKworICAgICAgICBBZGQgdGVzdHMgd2hpY2ggZXhlcmNpc2UgdGhlIGluaXRp
YWwgc2V0dGluZyBmb3IgcnggYW5kIHJ5OiBsZW5ndGgsICdhdXRvJy4KKyAgICAgICAgQWRkIHRl
c3RzIHRvIGR5bmFtaWNhbGx5IGNoYW5nZSB0aGUgdmFsdWVzIG9mIHRoZXNlIHByb3BlcnRpZXMg
ZnJvbSBsZW5ndGgKKyAgICAgICAgdG8gJ2F1dG8nLgorCisgICAgICAgIFNraXAgdGhlIHRlc3Rz
IHdpdGggZHluYW1pYyBjaGFuZ2VzIHRpbGwgd2Via2l0Lm9yZy9iLzIwMTkxOCBpcyBmaXhlZC4K
KworICAgICAgICAqIFRlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogc3ZnL2Nzcy9wYXJzZS1s
ZW5ndGgtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN2Zy9jc3MvcGFyc2UtbGVuZ3RoLmh0bWw6
CisgICAgICAgICogc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWR5bmFtaWMtZXhwZWN0
ZWQuc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8t
ZHluYW1pYy5zdmc6IEFkZGVkLgorICAgICAgICAqIHN2Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMt
YXV0by1pbml0aWFsLWV4cGVjdGVkLnN2ZzogQWRkZWQuCisgICAgICAgICogc3ZnL2N1c3RvbS9l
bGxpcHNlLXJhZGl1cy1hdXRvLWluaXRpYWwuc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvY3Vz
dG9tL2VsbGlwc2UtcmFkaXVzLWxlbmd0aC1pbml0aWFsLWV4cGVjdGVkLnN2ZzogQWRkZWQuCisg
ICAgICAgICogc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1sZW5ndGgtaW5pdGlhbC5zdmc6IEFk
ZGVkLgorICAgICAgICAqIHN2Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0by1keW5hbWljLWV4cGVj
dGVkLnN2ZzogQWRkZWQuCisgICAgICAgICogc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1hdXRvLWR5
bmFtaWMuc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBzdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWF1dG8t
aW5pdGlhbC1leHBlY3RlZC5zdmc6IEFkZGVkLgorICAgICAgICAqIHN2Zy9jdXN0b20vcmVjdC1y
YWRpdXMtYXV0by1pbml0aWFsLnN2ZzogQWRkZWQuCisgICAgICAgICogc3ZnL2N1c3RvbS9yZWN0
LXJhZGl1cy1sZW5ndGgtaW5pdGlhbC1leHBlY3RlZC5zdmc6IEFkZGVkLgorICAgICAgICAqIHN2
Zy9jdXN0b20vcmVjdC1yYWRpdXMtbGVuZ3RoLWluaXRpYWwuc3ZnOiBBZGRlZC4KKwogMjAxOS0w
OS0xOSAgTWlndWVsIEdvbWV6ICA8bWFnb21lekBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtXUEVd
W0dUS10gR2FyZGVuaW5nIGFmdGVyIHIyNTAwODcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rl
c3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGQyY2I4
YjU2Y2YwOGY4MzY3MTI3MjExZTBkYmUzNWFjMDNlMDY2Y2QuLjdmYzAzZDM4ZTllMGFiMzA0ZmMw
MTBjYWYzN2I1ODE0YzIzNWVmZWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3Rh
dGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjQyOCw2ICsyNDI4
LDggQEAgd2Via2l0Lm9yZy9iLzI0NjkwIHBsYXRmb3JtL21hYy9wbHVnaW5zL3BsdWdpbkRvY3Vt
ZW50Vmlldy1kZWFsbG9jYXRlZC1kYXRhU291cmMKIHdlYmtpdC5vcmcvYi8xNzM5MiBzdmcvYmF0
aWsvdGV4dC90ZXh0QmlEaS5zdmcgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8xMTY2MiBzdmcvY3Vz
dG9tL2pzLWZvbnQtdGVzdC5zdmcgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi82MzE4NiBzdmcvem9v
bS9wYWdlL3pvb20tc3ZnLXRocm91Z2gtb2JqZWN0LXdpdGgtdGV4dC54aHRtbCBbIFNraXAgXQor
d2Via2l0Lm9yZy9iLzIwMTkxOCBzdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8tZHluYW1p
Yy5zdmcgWyBTa2lwIF0KK3dlYmtpdC5vcmcvYi8yMDE5MTggc3ZnL2N1c3RvbS9yZWN0LXJhZGl1
cy1hdXRvLWR5bmFtaWMuc3ZnIFsgU2tpcCBdCiAKICMgVGVzdCBkaXNhYmxlZCBpbiByMzc1MTMg
Zm9yIGNhdXNpbmcgbmV4dCB0ZXN0IHRvIGhhbmcKIGFuaW1hdGlvbnMvZm9udC1zaXplLXVzaW5n
LWVtcy5odG1sIFsgU2tpcCBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvY3NzL3BhcnNl
LWxlbmd0aC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdmcvY3NzL3BhcnNlLWxlbmd0aC1l
eHBlY3RlZC50eHQKaW5kZXggNDhiZGEyNTA4OTc1NzFlNTgwNTExNGQxYmU1NWYwMTk4M2EyZmYy
Ny4uMzhhOTlhMzU2NWJlN2FjZjMwZTllOTc0ZjZhZDEyMzViODc5YTU1YiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvc3ZnL2Nzcy9wYXJzZS1sZW5ndGgtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL3N2Zy9jc3MvcGFyc2UtbGVuZ3RoLWV4cGVjdGVkLnR4dApAQCAtMTEyLDE2ICsxMTIs
MTYgQEAgUEFTUyBjb21wdXRlZFN0eWxlKCJyIiwgIjEwMCAgIHB4IikgaXMgIjBweCIKIFBBU1Mg
Y29tcHV0ZWRTdHlsZSgiciIsICIxMDBweDsiKSBpcyAiMHB4IgogUEFTUyBjb21wdXRlZFN0eWxl
KCJyIiwgIjEwMHB4ICFpbXBvcnRhbnQiKSBpcyAiMHB4IgogUEFTUyBjb21wdXRlZFN0eWxlKCJy
IiwgInsgMTAwcHggfSIpIGlzICIwcHgiCi1QQVNTIGNvbXB1dGVkU3R5bGUoInJ4IiwgImF1dG8i
KSBpcyAiMHB4IgotUEFTUyBjb21wdXRlZFN0eWxlKCJyeCIsICIxMDAgICBweCIpIGlzICIwcHgi
Ci1QQVNTIGNvbXB1dGVkU3R5bGUoInJ4IiwgIjEwMHB4OyIpIGlzICIwcHgiCi1QQVNTIGNvbXB1
dGVkU3R5bGUoInJ4IiwgIjEwMHB4ICFpbXBvcnRhbnQiKSBpcyAiMHB4IgotUEFTUyBjb21wdXRl
ZFN0eWxlKCJyeCIsICJ7IDEwMHB4IH0iKSBpcyAiMHB4IgotUEFTUyBjb21wdXRlZFN0eWxlKCJy
eSIsICJhdXRvIikgaXMgIjBweCIKLVBBU1MgY29tcHV0ZWRTdHlsZSgicnkiLCAiMTAwICAgcHgi
KSBpcyAiMHB4IgotUEFTUyBjb21wdXRlZFN0eWxlKCJyeSIsICIxMDBweDsiKSBpcyAiMHB4Igot
UEFTUyBjb21wdXRlZFN0eWxlKCJyeSIsICIxMDBweCAhaW1wb3J0YW50IikgaXMgIjBweCIKLVBB
U1MgY29tcHV0ZWRTdHlsZSgicnkiLCAieyAxMDBweCB9IikgaXMgIjBweCIKK1BBU1MgY29tcHV0
ZWRTdHlsZSgicngiLCAiYXV0byIpIGlzICJhdXRvIgorUEFTUyBjb21wdXRlZFN0eWxlKCJyeCIs
ICIxMDAgICBweCIpIGlzICJhdXRvIgorUEFTUyBjb21wdXRlZFN0eWxlKCJyeCIsICIxMDBweDsi
KSBpcyAiYXV0byIKK1BBU1MgY29tcHV0ZWRTdHlsZSgicngiLCAiMTAwcHggIWltcG9ydGFudCIp
IGlzICJhdXRvIgorUEFTUyBjb21wdXRlZFN0eWxlKCJyeCIsICJ7IDEwMHB4IH0iKSBpcyAiYXV0
byIKK1BBU1MgY29tcHV0ZWRTdHlsZSgicnkiLCAiYXV0byIpIGlzICJhdXRvIgorUEFTUyBjb21w
dXRlZFN0eWxlKCJyeSIsICIxMDAgICBweCIpIGlzICJhdXRvIgorUEFTUyBjb21wdXRlZFN0eWxl
KCJyeSIsICIxMDBweDsiKSBpcyAiYXV0byIKK1BBU1MgY29tcHV0ZWRTdHlsZSgicnkiLCAiMTAw
cHggIWltcG9ydGFudCIpIGlzICJhdXRvIgorUEFTUyBjb21wdXRlZFN0eWxlKCJyeSIsICJ7IDEw
MHB4IH0iKSBpcyAiYXV0byIKIFBBU1MgY29tcHV0ZWRTdHlsZSgid2lkdGgiLCAiMTAwICAgcHgi
KSBpcyAiYXV0byIKIFBBU1MgY29tcHV0ZWRTdHlsZSgid2lkdGgiLCAiMTAwcHg7IikgaXMgImF1
dG8iCiBQQVNTIGNvbXB1dGVkU3R5bGUoIndpZHRoIiwgIjEwMHB4ICFpbXBvcnRhbnQiKSBpcyAi
YXV0byIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jc3MvcGFyc2UtbGVuZ3RoLmh0bWwg
Yi9MYXlvdXRUZXN0cy9zdmcvY3NzL3BhcnNlLWxlbmd0aC5odG1sCmluZGV4IGM3N2EzOWRmN2I1
MmEyMWEwNzU4OWZmMDFjNDYzOTg4ZTU1ZWM4NjAuLjM5NDA0YTg0N2NhYjg2YTg1NjFjNjE5YmQ5
Mjc2ODkzMDAyN2VhNTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N2Zy9jc3MvcGFyc2UtbGVu
Z3RoLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2Nzcy9wYXJzZS1sZW5ndGguaHRtbApAQCAt
MTI5LDE4ICsxMjksMTggQEAgbmVnYXRpdmVUZXN0WmVybygiciIsICIxMDBweCAhaW1wb3J0YW50
Iik7CiBuZWdhdGl2ZVRlc3RaZXJvKCJyIiwgInsgMTAwcHggfSIpOwogCiAvLyBOZWdhdGl2ZSB0
ZXN0cyBmb3IgJ3J4Jy4KLW5lZ2F0aXZlVGVzdFplcm8oInJ4IiwgImF1dG8iLCAiYXV0byIpOwot
bmVnYXRpdmVUZXN0WmVybygicngiLCAiMTAwICAgcHgiKTsKLW5lZ2F0aXZlVGVzdFplcm8oInJ4
IiwgIjEwMHB4OyIpOwotbmVnYXRpdmVUZXN0WmVybygicngiLCAiMTAwcHggIWltcG9ydGFudCIp
OwotbmVnYXRpdmVUZXN0WmVybygicngiLCAieyAxMDBweCB9Iik7CituZWdhdGl2ZVRlc3QoInJ4
IiwgImF1dG8iLCAiYXV0byIpOworbmVnYXRpdmVUZXN0KCJyeCIsICIxMDAgICBweCIsICJhdXRv
Iik7CituZWdhdGl2ZVRlc3QoInJ4IiwgIjEwMHB4OyIsICJhdXRvIik7CituZWdhdGl2ZVRlc3Qo
InJ4IiwgIjEwMHB4ICFpbXBvcnRhbnQiLCAiYXV0byIpOworbmVnYXRpdmVUZXN0KCJyeCIsICJ7
IDEwMHB4IH0iLCAiYXV0byIpOwogCiAvLyBOZWdhdGl2ZSB0ZXN0cyBmb3IgJ3J5Jy4KLW5lZ2F0
aXZlVGVzdFplcm8oInJ5IiwgImF1dG8iKTsKLW5lZ2F0aXZlVGVzdFplcm8oInJ5IiwgIjEwMCAg
IHB4Iik7Ci1uZWdhdGl2ZVRlc3RaZXJvKCJyeSIsICIxMDBweDsiKTsKLW5lZ2F0aXZlVGVzdFpl
cm8oInJ5IiwgIjEwMHB4ICFpbXBvcnRhbnQiKTsKLW5lZ2F0aXZlVGVzdFplcm8oInJ5IiwgInsg
MTAwcHggfSIpOworbmVnYXRpdmVUZXN0KCJyeSIsICJhdXRvIiwgImF1dG8iKTsKK25lZ2F0aXZl
VGVzdCgicnkiLCAiMTAwICAgcHgiLCAiYXV0byIpOworbmVnYXRpdmVUZXN0KCJyeSIsICIxMDBw
eDsiLCAiYXV0byIpOworbmVnYXRpdmVUZXN0KCJyeSIsICIxMDBweCAhaW1wb3J0YW50IiwgImF1
dG8iKTsKK25lZ2F0aXZlVGVzdCgicnkiLCAieyAxMDBweCB9IiwgImF1dG8iKTsKIAogLy8gTmVn
YXRpdmUgdGVzdHMgZm9yICd3aWR0aCcuCiBuZWdhdGl2ZVRlc3QoIndpZHRoIiwgIjEwMCAgIHB4
Iik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1
dG8tZHluYW1pYy1leHBlY3RlZC5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2VsbGlwc2Ut
cmFkaXVzLWF1dG8tZHluYW1pYy1leHBlY3RlZC5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmFmY2YyNTdjMTkz
ODZhNDU0ZWQyZTYyNjYzNGNiMzZmZmJhNWNjZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL3N2Zy9jdXN0b20vZWxsaXBzZS1yYWRpdXMtYXV0by1keW5hbWljLWV4cGVjdGVkLnN2ZwpA
QCAtMCwwICsxLDkgQEAKKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4K
KyAgICA8ZyBpZD0iZWxsaXBzZXMiPgorICAgICAgICA8ZWxsaXBzZSBjeD0iNDAiIGN5PSI2MCIg
cng9IjIwIiByeT0iMjAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxlbGxpcHNlIGN4PSI5MCIg
Y3k9IjYwIiByeD0iMzAiIHJ5PSIzMCIgZmlsbD0iZ3JlZW4iLz4KKyAgICAgICAgPGVsbGlwc2Ug
Y3g9IjE2MCIgY3k9IjYwIiByeD0iNDAiIHJ5PSI0MCIgZmlsbD0iZ3JlZW4iLz4KKyAgICAgICAg
PGVsbGlwc2UgY3g9IjI1MCIgY3k9IjYwIiByeD0iNTAiIHJ5PSI1MCIgZmlsbD0iZ3JlZW4iLz4K
KyAgICA8L2c+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNlbGxpcHNlcyIvPgorPC9zdmc+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8tZHlu
YW1pYy5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8tZHlu
YW1pYy5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMTdkODhkOGJjMmFiNDk2Y2U4ODFkOGE1ZDAxNDQzNWE4ZTAw
MTZjOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vZWxsaXBzZS1y
YWRpdXMtYXV0by1keW5hbWljLnN2ZwpAQCAtMCwwICsxLDM4IEBACis8c3ZnIHhtbG5zPSJodHRw
Oi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CisgICAgPGVsbGlwc2UgaWQ9ImVsbGlwc2UtMSIgY3g9
IjQwIiBjeT0iNjAiIHJ4PSIyMCIgcnk9IjAiIGZpbGw9ImdyZWVuIi8+CisgICAgPGVsbGlwc2Ug
aWQ9ImVsbGlwc2UtMiIgY3g9IjkwIiBjeT0iNjAiIHJ5PSIzMCIgcng9IjAiIGZpbGw9ImdyZWVu
Ii8+CisKKyAgICA8ZWxsaXBzZSBpZD0iZWxsaXBzZS0zIiBjeD0iMTYwIiBjeT0iNjAiIHJ4PSIy
MCIgcnk9IjAiIGZpbGw9ImdyZWVuIj4KKyAgICAgICAgPGFuaW1hdGUgYXR0cmlidXRlVHlwZT0i
WE1MIiBhdHRyaWJ1dGVOYW1lPSJyeCIgZnJvbT0iMjAiIHRvPSI0MCIgZHVyPSIxcyIgZmlsbD0i
ZnJlZXplIi8+CisgICAgPC9lbGxpcHNlPgorCisgICAgPGVsbGlwc2UgaWQ9ImVsbGlwc2UtNCIg
Y3g9IjI1MCIgY3k9IjYwIiByeT0iMjAiIHJ4PSIwIiBmaWxsPSJncmVlbiI+CisgICAgICAgIDxh
bmltYXRlIGF0dHJpYnV0ZVR5cGU9IlhNTCIgYXR0cmlidXRlTmFtZT0icnkiIGZyb209IjIwIiB0
bz0iNTAiIGR1cj0iMXMiIGZpbGw9ImZyZWV6ZSIvPgorICAgIDwvZWxsaXBzZT4KKworICAgIDx1
c2UgeT0iMTAwIiBocmVmPSIjZWxsaXBzZS0xIi8+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNl
bGxpcHNlLTIiLz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI2VsbGlwc2UtMyIvPgorICAgIDx1
c2UgeT0iMTAwIiBocmVmPSIjZWxsaXBzZS00Ii8+CisKKyAgICA8c2NyaXB0PgorICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKKworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIChldmVudCkg
PT4geworICAgICAgICAgICAgbGV0IGVsbGlwc2UxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J2VsbGlwc2UtMScpOworICAgICAgICAgICAgbGV0IGVsbGlwc2UyID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ2VsbGlwc2UtMicpOworICAgICAgICAgICAgbGV0IGVsbGlwc2UzID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ2VsbGlwc2UtMycpOworICAgICAgICAgICAgbGV0IGVsbGlwc2U0
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2VsbGlwc2UtNCcpOworCisgICAgICAgICAgICBl
bGxpcHNlMS5zdHlsZVsncnknXSA9ICdhdXRvJzsKKyAgICAgICAgICAgIGVsbGlwc2UyLnN0eWxl
WydyeCddID0gJ2F1dG8nOworICAgICAgICAgICAgZWxsaXBzZTMuc3R5bGVbJ3J5J10gPSAnYXV0
byc7CisgICAgICAgICAgICBlbGxpcHNlNC5zdHlsZVsncngnXSA9ICdhdXRvJzsKKworICAgICAg
ICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNldEN1cnJlbnRUaW1lKDUpOworICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIu
bm90aWZ5RG9uZSgpOworICAgICAgICB9KTsKKyAgICA8L3NjcmlwdD4KKzwvc3ZnPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWluaXRpYWwt
ZXhwZWN0ZWQuc3ZnIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRv
LWluaXRpYWwtZXhwZWN0ZWQuc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJhZmNmMjU3YzE5Mzg2YTQ1NGVkMmU2
MjY2MzRjYjM2ZmZiYTVjY2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3Vz
dG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8taW5pdGlhbC1leHBlY3RlZC5zdmcKQEAgLTAsMCArMSw5
IEBACis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CisgICAgPGcgaWQ9
ImVsbGlwc2VzIj4KKyAgICAgICAgPGVsbGlwc2UgY3g9IjQwIiBjeT0iNjAiIHJ4PSIyMCIgcnk9
IjIwIiBmaWxsPSJncmVlbiIvPgorICAgICAgICA8ZWxsaXBzZSBjeD0iOTAiIGN5PSI2MCIgcng9
IjMwIiByeT0iMzAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxlbGxpcHNlIGN4PSIxNjAiIGN5
PSI2MCIgcng9IjQwIiByeT0iNDAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxlbGxpcHNlIGN4
PSIyNTAiIGN5PSI2MCIgcng9IjUwIiByeT0iNTAiIGZpbGw9ImdyZWVuIi8+CisgICAgPC9nPgor
ICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjZWxsaXBzZXMiLz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWluaXRpYWwuc3ZnIGIv
TGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1hdXRvLWluaXRpYWwuc3ZnCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjFiODhlYmEzNTJhOGVjZTExODY2YjEyOWM0NTMxN2Y5ZDVlZjAyYzIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWF1dG8t
aW5pdGlhbC5zdmcKQEAgLTAsMCArMSwyOCBAQAorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5v
cmcvMjAwMC9zdmciPgorICAgIDxlbGxpcHNlIGlkPSJlbGxpcHNlLTEiIGN4PSI0MCIgY3k9IjYw
IiByeD0iMjAiIGZpbGw9ImdyZWVuIi8+CisgICAgPGVsbGlwc2UgaWQ9ImVsbGlwc2UtMiIgY3g9
IjkwIiBjeT0iNjAiIHJ5PSIzMCIgZmlsbD0iZ3JlZW4iLz4KKworICAgIDxlbGxpcHNlIGlkPSJl
bGxpcHNlLTMiIGN4PSIxNjAiIGN5PSI2MCIgcng9IjIwIiBmaWxsPSJncmVlbiI+CisgICAgICAg
IDxhbmltYXRlIGF0dHJpYnV0ZVR5cGU9IlhNTCIgYXR0cmlidXRlTmFtZT0icngiIGZyb209IjIw
IiB0bz0iNDAiIGR1cj0iMXMiIGZpbGw9ImZyZWV6ZSIvPgorICAgIDwvZWxsaXBzZT4KKworICAg
IDxlbGxpcHNlIGlkPSJlbGxpcHNlLTQiIGN4PSIyNTAiIGN5PSI2MCIgcnk9IjIwIiBmaWxsPSJn
cmVlbiI+CisgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZVR5cGU9IlhNTCIgYXR0cmlidXRlTmFt
ZT0icnkiIGZyb209IjIwIiB0bz0iNTAiIGR1cj0iMXMiIGZpbGw9ImZyZWV6ZSIvPgorICAgIDwv
ZWxsaXBzZT4KKworICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjZWxsaXBzZS0xIi8+CisgICAgPHVz
ZSB5PSIxMDAiIGhyZWY9IiNlbGxpcHNlLTIiLz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI2Vs
bGlwc2UtMyIvPgorICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjZWxsaXBzZS00Ii8+CisKKyAgICA8
c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0
UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5l
cignbG9hZCcsIChldmVudCkgPT4geworICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVt
ZW50LnNldEN1cnJlbnRUaW1lKDUpOworICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgICAgICB9KTsK
KyAgICA8L3NjcmlwdD4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3Rv
bS9lbGxpcHNlLXJhZGl1cy1sZW5ndGgtaW5pdGlhbC1leHBlY3RlZC5zdmcgYi9MYXlvdXRUZXN0
cy9zdmcvY3VzdG9tL2VsbGlwc2UtcmFkaXVzLWxlbmd0aC1pbml0aWFsLWV4cGVjdGVkLnN2Zwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4yYWZjZjI1N2MxOTM4NmE0NTRlZDJlNjI2NjM0Y2IzNmZmYmE1Y2NmCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1sZW5n
dGgtaW5pdGlhbC1leHBlY3RlZC5zdmcKQEAgLTAsMCArMSw5IEBACis8c3ZnIHhtbG5zPSJodHRw
Oi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CisgICAgPGcgaWQ9ImVsbGlwc2VzIj4KKyAgICAgICAg
PGVsbGlwc2UgY3g9IjQwIiBjeT0iNjAiIHJ4PSIyMCIgcnk9IjIwIiBmaWxsPSJncmVlbiIvPgor
ICAgICAgICA8ZWxsaXBzZSBjeD0iOTAiIGN5PSI2MCIgcng9IjMwIiByeT0iMzAiIGZpbGw9Imdy
ZWVuIi8+CisgICAgICAgIDxlbGxpcHNlIGN4PSIxNjAiIGN5PSI2MCIgcng9IjQwIiByeT0iNDAi
IGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxlbGxpcHNlIGN4PSIyNTAiIGN5PSI2MCIgcng9IjUw
IiByeT0iNTAiIGZpbGw9ImdyZWVuIi8+CisgICAgPC9nPgorICAgIDx1c2UgeT0iMTAwIiBocmVm
PSIjZWxsaXBzZXMiLz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3Rv
bS9lbGxpcHNlLXJhZGl1cy1sZW5ndGgtaW5pdGlhbC5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3Vz
dG9tL2VsbGlwc2UtcmFkaXVzLWxlbmd0aC1pbml0aWFsLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZGU5MWE5
ZGM3NTY2Yzc2MzA2Y2IzY2U0MjRjOTk3MGY1NjI5MGE4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvc3ZnL2N1c3RvbS9lbGxpcHNlLXJhZGl1cy1sZW5ndGgtaW5pdGlhbC5zdmcKQEAg
LTAsMCArMSwzNCBAQAorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgor
ICAgIDxzdHlsZT4KKyAgICAgICAgI2VsbGlwc2UtMSB7IHJ5OiAyMHB4OyB9CisgICAgICAgICNl
bGxpcHNlLTIgeyByeDogMzBweDsgfQorICAgICAgICAjZWxsaXBzZS0zIHsgcnk6IDQwcHg7IH0K
KyAgICAgICAgI2VsbGlwc2UtNCB7IHJ4OiA1MHB4OyB9CisgICAgPC9zdHlsZT4KKyAgICA8ZWxs
aXBzZSBpZD0iZWxsaXBzZS0xIiBjeD0iNDAiIGN5PSI2MCIgcng9IjIwIiBmaWxsPSJncmVlbiIv
PgorICAgIDxlbGxpcHNlIGlkPSJlbGxpcHNlLTIiIGN4PSI5MCIgY3k9IjYwIiByeT0iMzAiIGZp
bGw9ImdyZWVuIi8+CisKKyAgICA8ZWxsaXBzZSBpZD0iZWxsaXBzZS0zIiBjeD0iMTYwIiBjeT0i
NjAiIHJ4PSIyMCIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVUeXBl
PSJYTUwiIGF0dHJpYnV0ZU5hbWU9InJ4IiBmcm9tPSIyMCIgdG89IjQwIiBkdXI9IjFzIiBmaWxs
PSJmcmVlemUiLz4KKyAgICA8L2VsbGlwc2U+CisKKyAgICA8ZWxsaXBzZSBpZD0iZWxsaXBzZS00
IiBjeD0iMjUwIiBjeT0iNjAiIHJ5PSIyMCIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8YW5pbWF0
ZSBhdHRyaWJ1dGVUeXBlPSJYTUwiIGF0dHJpYnV0ZU5hbWU9InJ5IiBmcm9tPSIyMCIgdG89IjUw
IiBkdXI9IjFzIiBmaWxsPSJmcmVlemUiLz4KKyAgICA8L2VsbGlwc2U+CisKKyAgICA8dXNlIHk9
IjEwMCIgaHJlZj0iI2VsbGlwc2UtMSIvPgorICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjZWxsaXBz
ZS0yIi8+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNlbGxpcHNlLTMiLz4KKyAgICA8dXNlIHk9
IjEwMCIgaHJlZj0iI2VsbGlwc2UtNCIvPgorCisgICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7
CisKKyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoZXZlbnQpID0+IHsK
KyAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zZXRDdXJyZW50VGltZSg1KTsK
KyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0
UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgfSk7CisgICAgPC9zY3JpcHQ+Cis8L3N2Zz4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0by1keW5h
bWljLWV4cGVjdGVkLnN2ZyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0
by1keW5hbWljLWV4cGVjdGVkLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYmIxODhkOWIyMzc1OTg3NGQyODc1
MTI1M2I5MTM0Y2NhMDQ0YTcwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2N1
c3RvbS9yZWN0LXJhZGl1cy1hdXRvLWR5bmFtaWMtZXhwZWN0ZWQuc3ZnCkBAIC0wLDAgKzEsOSBA
QAorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorICAgIDxnIGlkPSJy
ZWN0cyI+CisgICAgICAgIDxyZWN0IHg9IjIwIiB5PSI0MCIgd2lkdGg9IjQwIiBoZWlnaHQ9IjQw
IiByeD0iMjAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxyZWN0IHg9IjYwIiB5PSIzMCIgd2lk
dGg9IjYwIiBoZWlnaHQ9IjYwIiByeT0iMzAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxyZWN0
IHg9IjEyMCIgeT0iMjAiIHdpZHRoPSI4MCIgaGVpZ2h0PSI4MCIgcnk9IjQwIiBmaWxsPSJncmVl
biIvPgorICAgICAgICA8cmVjdCB4PSIyMDAiIHk9IjEwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEw
MCIgcng9IjUwIiBmaWxsPSJncmVlbiIvPgorICAgIDwvZz4KKyAgICA8dXNlIHk9IjEwMCIgaHJl
Zj0iI3JlY3RzIi8+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jdXN0b20v
cmVjdC1yYWRpdXMtYXV0by1keW5hbWljLnN2ZyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVj
dC1yYWRpdXMtYXV0by1keW5hbWljLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMzU0NzQ0ZDQwYzg4MjM5NTQ0
NmZiN2U4NDY5M2U1Y2FmODlkNGFlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3Zn
L2N1c3RvbS9yZWN0LXJhZGl1cy1hdXRvLWR5bmFtaWMuc3ZnCkBAIC0wLDAgKzEsMzggQEAKKzxz
dmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKyAgICA8cmVjdCBpZD0icmVj
dC0xIiB4PSIyMCIgeT0iNDAiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgcng9IjIwIiByeT0iMSIg
ZmlsbD0iZ3JlZW4iLz4KKyAgICA8cmVjdCBpZD0icmVjdC0yIiB4PSI2MCIgeT0iMzAiIHdpZHRo
PSI2MCIgaGVpZ2h0PSI2MCIgcnk9IjMwIiByeD0iMSIgZmlsbD0iZ3JlZW4iLz4KKworICAgIDxy
ZWN0IGlkPSJyZWN0LTMiIHg9IjEyMCIgeT0iMjAiIHdpZHRoPSI4MCIgaGVpZ2h0PSI4MCIgcng9
IjIwIiByeT0iMSIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVUeXBl
PSJYTUwiIGF0dHJpYnV0ZU5hbWU9InJ4IiBmcm9tPSIyMCIgdG89IjQwIiBkdXI9IjFzIiBmaWxs
PSJmcmVlemUiLz4KKyAgICA8L3JlY3Q+CisKKyAgICA8cmVjdCBpZD0icmVjdC00IiB4PSIyMDAi
IHk9IjEwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgcnk9IjIwIiByeD0iMSIgZmlsbD0iZ3Jl
ZW4iPgorICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVUeXBlPSJYTUwiIGF0dHJpYnV0ZU5hbWU9
InJ5IiBmcm9tPSIyMCIgdG89IjUwIiBkdXI9IjFzIiBmaWxsPSJmcmVlemUiLz4KKyAgICA8L3Jl
Y3Q+CisKKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI3JlY3QtMSIvPgorICAgIDx1c2UgeT0iMTAw
IiBocmVmPSIjcmVjdC0yIi8+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNyZWN0LTMiLz4KKyAg
ICA8dXNlIHk9IjEwMCIgaHJlZj0iI3JlY3QtNCIvPgorCisgICAgPHNjcmlwdD4KKyAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxE
b25lKCk7CisKKyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoZXZlbnQp
ID0+IHsKKyAgICAgICAgICAgIGxldCByZWN0MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdy
ZWN0LTEnKTsKKyAgICAgICAgICAgIGxldCByZWN0MiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCdyZWN0LTInKTsKKyAgICAgICAgICAgIGxldCByZWN0MyA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdyZWN0LTMnKTsKKyAgICAgICAgICAgIGxldCByZWN0NCA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdyZWN0LTQnKTsKKworICAgICAgICAgICAgcmVjdDEuc3R5bGVbJ3J5J10gPSAnYXV0
byc7CisgICAgICAgICAgICByZWN0Mi5zdHlsZVsncngnXSA9ICdhdXRvJzsKKyAgICAgICAgICAg
IHJlY3QzLnN0eWxlWydyeSddID0gJ2F1dG8nOworICAgICAgICAgICAgcmVjdDQuc3R5bGVbJ3J4
J10gPSAnYXV0byc7CisKKyAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zZXRD
dXJyZW50VGltZSg1KTsKKyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAg
ICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgfSk7CisgICAgPC9z
Y3JpcHQ+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vcmVjdC1y
YWRpdXMtYXV0by1pbml0aWFsLWV4cGVjdGVkLnN2ZyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20v
cmVjdC1yYWRpdXMtYXV0by1pbml0aWFsLWV4cGVjdGVkLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYmIxODhk
OWIyMzc1OTg3NGQyODc1MTI1M2I5MTM0Y2NhMDQ0YTcwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1hdXRvLWluaXRpYWwtZXhwZWN0ZWQuc3Zn
CkBAIC0wLDAgKzEsOSBAQAorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmci
PgorICAgIDxnIGlkPSJyZWN0cyI+CisgICAgICAgIDxyZWN0IHg9IjIwIiB5PSI0MCIgd2lkdGg9
IjQwIiBoZWlnaHQ9IjQwIiByeD0iMjAiIGZpbGw9ImdyZWVuIi8+CisgICAgICAgIDxyZWN0IHg9
IjYwIiB5PSIzMCIgd2lkdGg9IjYwIiBoZWlnaHQ9IjYwIiByeT0iMzAiIGZpbGw9ImdyZWVuIi8+
CisgICAgICAgIDxyZWN0IHg9IjEyMCIgeT0iMjAiIHdpZHRoPSI4MCIgaGVpZ2h0PSI4MCIgcnk9
IjQwIiBmaWxsPSJncmVlbiIvPgorICAgICAgICA8cmVjdCB4PSIyMDAiIHk9IjEwIiB3aWR0aD0i
MTAwIiBoZWlnaHQ9IjEwMCIgcng9IjUwIiBmaWxsPSJncmVlbiIvPgorICAgIDwvZz4KKyAgICA8
dXNlIHk9IjEwMCIgaHJlZj0iI3JlY3RzIi8+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3N2Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0by1pbml0aWFsLnN2ZyBiL0xheW91dFRlc3Rz
L3N2Zy9jdXN0b20vcmVjdC1yYWRpdXMtYXV0by1pbml0aWFsLnN2ZwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZGQy
ZDllMmZhYzZhODYwZjhiMDdlNTBiZmIxNzI2MGRhNmI4YjI0Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1hdXRvLWluaXRpYWwuc3ZnCkBAIC0w
LDAgKzEsMjggQEAKKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKyAg
ICA8cmVjdCBpZD0icmVjdC0xIiB4PSIyMCIgeT0iNDAiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIg
cng9IjIwIiBmaWxsPSJncmVlbiIvPgorICAgIDxyZWN0IGlkPSJyZWN0LTIiIHg9IjYwIiB5PSIz
MCIgd2lkdGg9IjYwIiBoZWlnaHQ9IjYwIiByeT0iMzAiIGZpbGw9ImdyZWVuIi8+CisKKyAgICA8
cmVjdCBpZD0icmVjdC0zIiB4PSIxMjAiIHk9IjIwIiB3aWR0aD0iODAiIGhlaWdodD0iODAiIHJ4
PSIyMCIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVUeXBlPSJYTUwi
IGF0dHJpYnV0ZU5hbWU9InJ4IiBmcm9tPSIyMCIgdG89IjQwIiBkdXI9IjFzIiBmaWxsPSJmcmVl
emUiLz4KKyAgICA8L3JlY3Q+CisKKyAgICA8cmVjdCBpZD0icmVjdC00IiB4PSIyMDAiIHk9IjEw
IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgcnk9IjIwIiBmaWxsPSJncmVlbiI+CisgICAgICAg
IDxhbmltYXRlIGF0dHJpYnV0ZVR5cGU9IlhNTCIgYXR0cmlidXRlTmFtZT0icnkiIGZyb209IjIw
IiB0bz0iNTAiIGR1cj0iMXMiIGZpbGw9ImZyZWV6ZSIvPgorICAgIDwvcmVjdD4KKworICAgIDx1
c2UgeT0iMTAwIiBocmVmPSIjcmVjdC0xIi8+CisgICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNyZWN0
LTIiLz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0iI3JlY3QtMyIvPgorICAgIDx1c2UgeT0iMTAw
IiBocmVmPSIjcmVjdC00Ii8+CisKKyAgICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKworICAg
ICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIChldmVudCkgPT4geworICAgICAg
ICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNldEN1cnJlbnRUaW1lKDUpOworICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIu
bm90aWZ5RG9uZSgpOworICAgICAgICB9KTsKKyAgICA8L3NjcmlwdD4KKzwvc3ZnPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1sZW5ndGgtaW5pdGlhbC1l
eHBlY3RlZC5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3JlY3QtcmFkaXVzLWxlbmd0aC1p
bml0aWFsLWV4cGVjdGVkLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYmIxODhkOWIyMzc1OTg3NGQyODc1MTI1
M2I5MTM0Y2NhMDQ0YTcwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3Rv
bS9yZWN0LXJhZGl1cy1sZW5ndGgtaW5pdGlhbC1leHBlY3RlZC5zdmcKQEAgLTAsMCArMSw5IEBA
Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CisgICAgPGcgaWQ9InJl
Y3RzIj4KKyAgICAgICAgPHJlY3QgeD0iMjAiIHk9IjQwIiB3aWR0aD0iNDAiIGhlaWdodD0iNDAi
IHJ4PSIyMCIgZmlsbD0iZ3JlZW4iLz4KKyAgICAgICAgPHJlY3QgeD0iNjAiIHk9IjMwIiB3aWR0
aD0iNjAiIGhlaWdodD0iNjAiIHJ5PSIzMCIgZmlsbD0iZ3JlZW4iLz4KKyAgICAgICAgPHJlY3Qg
eD0iMTIwIiB5PSIyMCIgd2lkdGg9IjgwIiBoZWlnaHQ9IjgwIiByeT0iNDAiIGZpbGw9ImdyZWVu
Ii8+CisgICAgICAgIDxyZWN0IHg9IjIwMCIgeT0iMTAiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAw
IiByeD0iNTAiIGZpbGw9ImdyZWVuIi8+CisgICAgPC9nPgorICAgIDx1c2UgeT0iMTAwIiBocmVm
PSIjcmVjdHMiLz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9y
ZWN0LXJhZGl1cy1sZW5ndGgtaW5pdGlhbC5zdmcgYi9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3Jl
Y3QtcmFkaXVzLWxlbmd0aC1pbml0aWFsLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zZGE2ZDJlYTU3YmY1N2Ez
NDE5MWI4ZTJkMDEwMDg1MmZkMGJiNGUwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
c3ZnL2N1c3RvbS9yZWN0LXJhZGl1cy1sZW5ndGgtaW5pdGlhbC5zdmcKQEAgLTAsMCArMSwzNCBA
QAorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorICAgIDxzdHlsZT4K
KyAgICAgICAgI3JlY3QtMSB7IHJ5OiAyMHB4OyB9CisgICAgICAgICNyZWN0LTIgeyByeDogMzBw
eDsgfQorICAgICAgICAjcmVjdC0zIHsgcnk6IDQwcHg7IH0KKyAgICAgICAgI3JlY3QtNCB7IHJ4
OiA1MHB4OyB9CisgICAgPC9zdHlsZT4KKyAgICA8cmVjdCBpZD0icmVjdC0xIiB4PSIyMCIgeT0i
NDAiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgcng9IjIwIiBmaWxsPSJncmVlbiIvPgorICAgIDxy
ZWN0IGlkPSJyZWN0LTIiIHg9IjYwIiB5PSIzMCIgd2lkdGg9IjYwIiBoZWlnaHQ9IjYwIiByeT0i
MzAiIGZpbGw9ImdyZWVuIi8+CisKKyAgICA8cmVjdCBpZD0icmVjdC0zIiB4PSIxMjAiIHk9IjIw
IiB3aWR0aD0iODAiIGhlaWdodD0iODAiIHJ4PSIyMCIgZmlsbD0iZ3JlZW4iPgorICAgICAgICA8
YW5pbWF0ZSBhdHRyaWJ1dGVUeXBlPSJYTUwiIGF0dHJpYnV0ZU5hbWU9InJ4IiBmcm9tPSIyMCIg
dG89IjQwIiBkdXI9IjFzIiBmaWxsPSJmcmVlemUiLz4KKyAgICA8L3JlY3Q+CisKKyAgICA8cmVj
dCBpZD0icmVjdC00IiB4PSIyMDAiIHk9IjEwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgcnk9
IjIwIiBmaWxsPSJncmVlbiI+CisgICAgICAgIDxhbmltYXRlIGF0dHJpYnV0ZVR5cGU9IlhNTCIg
YXR0cmlidXRlTmFtZT0icnkiIGZyb209IjIwIiB0bz0iNTAiIGR1cj0iMXMiIGZpbGw9ImZyZWV6
ZSIvPgorICAgIDwvcmVjdD4KKworICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjcmVjdC0xIi8+Cisg
ICAgPHVzZSB5PSIxMDAiIGhyZWY9IiNyZWN0LTIiLz4KKyAgICA8dXNlIHk9IjEwMCIgaHJlZj0i
I3JlY3QtMyIvPgorICAgIDx1c2UgeT0iMTAwIiBocmVmPSIjcmVjdC00Ii8+CisKKyAgICA8c2Ny
aXB0PgorICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVu
bmVyLndhaXRVbnRpbERvbmUoKTsKKworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcign
bG9hZCcsIChldmVudCkgPT4geworICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50
LnNldEN1cnJlbnRUaW1lKDUpOworICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgICAgICB9KTsKKyAg
ICA8L3NjcmlwdD4KKzwvc3ZnPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>379243</attachid>
            <date>2019-09-20 08:49:44 -0700</date>
            <delta_ts>2019-09-20 13:30:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-199843-20190920084944.patch</filename>
            <type>text/plain</type>
            <size>1818</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1MDEzMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDE5LTA5LTIwICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgW1NWRzJdOiBB
ZGQgYXV0byBiZWhhdmlvciBmb3IgcnggYW5kIHJ5IHRvIHRoZSBTVkcgPGVsbGlwc2U+IGFuZCA8
cmVjdD4gZWxlbWVudHMgKEFkZHJlc3NpbmcgcmV2aWV3IGNvbW1lbnRzKQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk5ODQzCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSBSZW5kZXJTVkdFbGxpcHNl
IGNhbGN1bGF0ZSBvZiB0aGUgZWxsaXBzZSdzIHJ4IGFuZCByeSBtb3JlIGVmZmljaWVudGx5Lgor
CisgICAgICAgICogcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdFbGxpcHNlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclNWR0VsbGlwc2U6OmNhbGN1bGF0ZVJhZGlpQW5kQ2VudGVyKToKKwog
MjAxOS0wOS0yMCAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAg
SW1wbGVtZW50IFBvc2l0aW9uOjp1cHN0cmVhbSBhbmQgUG9zaXRpb246OmRvd25zdHJlYW0gd2l0
aCBsaW5lIGxheW91dCBpdGVyYXRvcgpJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2
Zy9SZW5kZXJTVkdFbGxpcHNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3ZnL1JlbmRlclNWR0VsbGlwc2UuY3BwCShyZXZpc2lvbiAyNTAxMTMpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR0VsbGlwc2UuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC05MCwxNiArOTAsMTAgQEAgdm9pZCBSZW5kZXJTVkdFbGxpcHNlOjpjYWxjdWxhdGVS
YWRpaUFuZAogICAgIEFTU0VSVChpczxTVkdFbGxpcHNlRWxlbWVudD4oZ3JhcGhpY3NFbGVtZW50
KCkpKTsKIAogICAgIExlbmd0aCByeCA9IHN0eWxlKCkuc3ZnU3R5bGUoKS5yeCgpOwotICAgIGlm
IChyeC5pc0F1dG8oKSkKLSAgICAgICAgcnggPSBzdHlsZSgpLnN2Z1N0eWxlKCkucnkoKTsKLSAg
ICAKICAgICBMZW5ndGggcnkgPSBzdHlsZSgpLnN2Z1N0eWxlKCkucnkoKTsKLSAgICBpZiAocnku
aXNBdXRvKCkpCi0gICAgICAgIHJ5ID0gc3R5bGUoKS5zdmdTdHlsZSgpLnJ4KCk7Ci0KICAgICBt
X3JhZGlpID0gRmxvYXRTaXplKAotICAgICAgICBsZW5ndGhDb250ZXh0LnZhbHVlRm9yTGVuZ3Ro
KHJ4LCBTVkdMZW5ndGhNb2RlOjpXaWR0aCksCi0gICAgICAgIGxlbmd0aENvbnRleHQudmFsdWVG
b3JMZW5ndGgocnksIFNWR0xlbmd0aE1vZGU6OkhlaWdodCkpOworICAgICAgICBsZW5ndGhDb250
ZXh0LnZhbHVlRm9yTGVuZ3RoKHJ4LmlzQXV0bygpID8gcnkgOiByeCwgU1ZHTGVuZ3RoTW9kZTo6
V2lkdGgpLAorICAgICAgICBsZW5ndGhDb250ZXh0LnZhbHVlRm9yTGVuZ3RoKHJ5LmlzQXV0bygp
ID8gcnggOiByeSwgU1ZHTGVuZ3RoTW9kZTo6SGVpZ2h0KSk7CiB9CiAKIHZvaWQgUmVuZGVyU1ZH
RWxsaXBzZTo6ZmlsbFNoYXBlKEdyYXBoaWNzQ29udGV4dCYgY29udGV4dCkgY29uc3QK
</data>

          </attachment>
      

    </bug>

</bugzilla>