<?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>155014</bug_id>
          
          <creation_ts>2016-03-04 04:02:26 -0800</creation_ts>
          <short_desc>[css-grid] Initial support for implicit grid before explicit grid</short_desc>
          <delta_ts>2016-03-09 02:15:17 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>153488</blocked>
    
    <blocked>155199</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Manuel Rego Casasnovas">rego</reporter>
          <assigned_to name="Manuel Rego Casasnovas">rego</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>jfernandez</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>svillar</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1170569</commentid>
    <comment_count>0</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2016-03-04 04:02:26 -0800</bug_when>
    <thetext>Next step is to port the following patch from Blink:
https://codereview.chromium.org/1529083006/

Main change is the change in GridSpan to start storing ints instead of unsigned.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1171795</commentid>
    <comment_count>1</comment_count>
      <attachid>273225</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2016-03-07 15:19:05 -0800</bug_when>
    <thetext>Created attachment 273225
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172052</commentid>
    <comment_count>2</comment_count>
      <attachid>273225</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-03-08 09:21:52 -0800</bug_when>
    <thetext>Comment on attachment 273225
Patch

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

&gt; Source/WebCore/rendering/RenderGrid.cpp:1167
&gt; +            coordinate.rows.translate(abs(m_smallestRowStart));

Please use std::abs, which won’t silently convert a floating point value, or a uint32_t or size_t, to an int, rather than abs, which despite its generic name *will* do those things.

For example, abs(4294967295U) returns 1, while std::abs(4294967295U) gives us a compile time error because of overload ambiguity. And abs(-1.1) returns 1, while std::abs(-1.1) returns 1.1.

Also note that the return value of abs and std::abs can be negative if it’s passed the most negative integer. Not sure if this is an issue for the correctness of our code.

&gt; Source/WebCore/rendering/RenderGrid.cpp:1169
&gt; +            coordinate.columns.translate(abs(m_smallestColumnStart));

Ditto.

&gt; Source/WebCore/rendering/RenderGrid.cpp:1237
&gt; +    m_grid.grow(maximumRowIndex + abs(m_smallestRowStart));

Ditto.

&gt; Source/WebCore/rendering/RenderGrid.cpp:1239
&gt; +        column.grow(maximumColumnIndex + abs(m_smallestColumnStart));

Ditto.

&gt; Source/WebCore/rendering/style/GridCoordinate.h:168
&gt; +        if (resolvedInitialPosition &gt;= 0)
&gt; +            m_resolvedInitialPosition = std::min(resolvedInitialPosition, kGridMaxTracks - 1);
&gt; +        else
&gt; +            m_resolvedInitialPosition = std::max(resolvedInitialPosition, -kGridMaxTracks);

I normally prefer to write this in a way that brackets the value with the minimum and maximum values. More elegant than comparing with zero, I think.

    m_resolvedInitialPosition = std::max(-kGridMaxTracks, std::min(resolvedInitialPosition, kGridMaxTracks - 1));

&gt; Source/WebCore/rendering/style/GridCoordinate.h:172
&gt; +        if (resolvedFinalPosition &gt;= 0)
&gt; +            m_resolvedFinalPosition = std::min(resolvedFinalPosition, kGridMaxTracks);
&gt; +        else
&gt; +            m_resolvedFinalPosition = std::max(resolvedFinalPosition, -kGridMaxTracks + 1);

Ditto.

&gt; Source/WebCore/rendering/style/GridResolvedPosition.cpp:253
&gt;          unsigned resolvedPosition = abs(position.integerPosition()) - 1;

Same issue with abs rather than std::abs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172218</commentid>
    <comment_count>3</comment_count>
      <attachid>273340</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2016-03-08 14:18:32 -0800</bug_when>
    <thetext>Created attachment 273340
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172220</commentid>
    <comment_count>4</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2016-03-08 14:22:18 -0800</bug_when>
    <thetext>Thanks for the review.

(In reply to comment #2)
&gt; Comment on attachment 273225 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=273225&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/rendering/RenderGrid.cpp:1167
&gt; &gt; +            coordinate.rows.translate(abs(m_smallestRowStart));
&gt; 
&gt; Please use std::abs, which won’t silently convert a floating point value, or
&gt; a uint32_t or size_t, to an int, rather than abs, which despite its generic
&gt; name *will* do those things.
&gt; 
&gt; For example, abs(4294967295U) returns 1, while std::abs(4294967295U) gives
&gt; us a compile time error because of overload ambiguity. And abs(-1.1) returns
&gt; 1, while std::abs(-1.1) returns 1.1.
&gt; 
&gt; Also note that the return value of abs and std::abs can be negative if it’s
&gt; passed the most negative integer. Not sure if this is an issue for the
&gt; correctness of our code.

Thanks for the explanation, I&apos;ve changed it to std::abs() in all the different places.

I think we&apos;re safe regarding the most negative integer as we&apos;re setting the limit in -kGridMaxTracks.

&gt; &gt; Source/WebCore/rendering/style/GridCoordinate.h:168
&gt; &gt; +        if (resolvedInitialPosition &gt;= 0)
&gt; &gt; +            m_resolvedInitialPosition = std::min(resolvedInitialPosition, kGridMaxTracks - 1);
&gt; &gt; +        else
&gt; &gt; +            m_resolvedInitialPosition = std::max(resolvedInitialPosition, -kGridMaxTracks);
&gt; 
&gt; I normally prefer to write this in a way that brackets the value with the
&gt; minimum and maximum values. More elegant than comparing with zero, I think.
&gt; 
&gt;     m_resolvedInitialPosition = std::max(-kGridMaxTracks,
&gt; std::min(resolvedInitialPosition, kGridMaxTracks - 1));

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172236</commentid>
    <comment_count>5</comment_count>
      <attachid>273340</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-03-08 15:11:53 -0800</bug_when>
    <thetext>Comment on attachment 273340
Patch

Rejecting attachment 273340 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-02&apos;, &apos;build&apos;, &apos;--no-clean&apos;, &apos;--no-update&apos;, &apos;--build-style=release&apos;, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
emMac.dia -c /Volumes/Data/EWS/WebKit/Source/WebCore/history/mac/HistoryItemMac.mm -o /Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/x86_64/HistoryItemMac.o

** BUILD FAILED **


The following build commands failed:
	CompileC /Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/x86_64/GridResolvedPosition.o rendering/style/GridResolvedPosition.cpp normal x86_64 c++ com.apple.compilers.llvm.clang.1_0.compiler
(1 failure)

Full output: http://webkit-queues.webkit.org/results/943725</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172466</commentid>
    <comment_count>6</comment_count>
      <attachid>273410</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2016-03-09 01:04:57 -0800</bug_when>
    <thetext>Created attachment 273410
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172485</commentid>
    <comment_count>7</comment_count>
      <attachid>273410</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-03-09 02:15:13 -0800</bug_when>
    <thetext>Comment on attachment 273410
Patch

Clearing flags on attachment: 273410

Committed r197850: &lt;http://trac.webkit.org/changeset/197850&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172486</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-03-09 02:15:17 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>273225</attachid>
            <date>2016-03-07 15:19:05 -0800</date>
            <delta_ts>2016-03-08 14:18:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-155014-20160308001850.patch</filename>
            <type>text/plain</type>
            <size>56342</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3NzAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTJhODIxZTg4NjA1NjA5
ZWIzMWRjN2Y1ODJiMzUwYTk5ODYzY2EyOS4uN2RhNmE0OGMyYjM4ZjhiMzZlZDY0Y2IwMGRjNTNj
MTQzN2UwN2QyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDgyIEBACisyMDE2LTAzLTA3ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtZ3Jp
ZF0gSW5pdGlhbCBzdXBwb3J0IGZvciBpbXBsaWNpdCBncmlkIGJlZm9yZSBleHBsaWNpdCBncmlk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTUwMTQK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDaGFuZ2Ug
R3JpZFNwYW4gdG8gc3RvcmUgaW50IGluc3RlYWQgb2YgdW5zaWduZWQuIFRoaXMgYWxsb3dzIHVz
IHRvCisgICAgICAgIHJlc29sdmUgcG9zaXRpb25zIGJlZm9yZSB0aGUgZXhwbGljaXQgZ3JpZCB3
aXRoIG5lZ2F0aXZlIHZhbHVlcy4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYSBuZXcgdHlw
ZSBvZiBHcmlkU3BhbiBjYWxsZWQgIlVudHJhbnNsYXRlZCIuCisgICAgICAgIFRoaXMgdHlwZSBp
cyBvbmx5IHVzZWQgaW4gcG9wdWxhdGVFeHBsaWNpdEdyaWRBbmRPcmRlckl0ZXJhdG9yKCkuCisg
ICAgICAgIFdoZXJlIHdlIHN0b3JlIHRoZSBzbWFsbGVzdCBuZWdhdGl2ZSBwb3NpdGlvbiBpbiBi
b3RoIGF4aXMuCisKKyAgICAgICAgVGhlbiB0aGUgR3JpZFNwYW5zIGFyZSB0cmFuc2xhdGVkIGlu
dG8gcG9zaXRpdmUgdmFsdWVzLCB1c2luZyB0aGUgb2Zmc2V0CisgICAgICAgIGNhbGN1bGF0ZWQg
YmVmb3JlLiBUaGlzIGlzIGRvbmUgaW4gcGxhY2VJdGVtc09uR3JpZCgpIGFuZCBmcm9tIHRoYXQK
KyAgICAgICAgbW9tZW50IHRoZSByZXN0IG9mIHRoZSBjb2RlIHVzZXMgIkRlZmluaXRlIiBHcmlk
U3BhbnMsIHdoaWNoIHJldHVybnMKKyAgICAgICAgb25seSBwb3NpdGl2ZSBwb3NpdGlvbnMgKHVu
c2lnbmVkIGluc3RlYWQgb2YgaW50KS4KKyAgICAgICAgVGhpcyBhbGxvd3MgdXMgdG8gZG9uJ3Qg
aGF2ZSB0byBtb2RpZnkgdGhlIHJlc3Qgb2YgdGhlIGNvZGUsIGFzIGl0IGtlZXBzCisgICAgICAg
IHVzaW5nIEdyaWRTcGFucyBhcyBiZWZvcmUuCisKKyAgICAgICAgTGV0J3MgdXNlIGFuIGV4YW1w
bGUgdG8gZXhwbGFpbiBob3cgaXQgd29ya3MuIEltYWdpbmUgdGhhdCB3ZSd2ZSBhIDIKKyAgICAg
ICAgY29sdW1ucyBncmlkIGFuZCAyIGl0ZW1zIHBsYWNlZCBsaWtlOgorICAgICAgICAqIEl0ZW0g
QTogZ3JpZC1jb2x1bW46IC01OworICAgICAgICAqIEl0ZW0gQjogZ3JpZC1jb2x1bW46IDE7CisK
KyAgICAgICAgSW5pdGlhbGx5IHdlJ2xsIHVzZSAiVW5zdHJhbnNsYXRlZCIgR3JpZFNwYW5zIHdp
dGggdGhlIGZvbGxvd2luZyB2YWx1ZXM6CisgICAgICAgICogSXRlbSBBOiBHcmlkU3BhbigtMiwg
LTEpCisgICAgICAgICogSXRlbSBCOiBHcmlkU3BhbigwLCAxKQorCisgICAgICAgIFRoZW4gd2Un
bGwgdHJhbnNsYXRlIHRoZW0gdXNpbmcgdGhlIHNtYWxsZXN0IHBvc2l0aW9uIGFzIG9mZnNldCAo
LTIpCisgICAgICAgIHNvIHdlJ3ZlICJEZWZpbml0ZSIgR3JpZFNwYW5zOgorICAgICAgICAqIEl0
ZW0gQTogR3JpZFNwYW4oMCwgMSkKKyAgICAgICAgKiBJdGVtIEI6IEdyaWRTcGFuKDIsIDMpCisK
KyAgICAgICAgVGVzdDogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvaW1wbGljaXQtdHJhY2tzLWJlZm9y
ZS1leHBsaWNpdC5odG1sCisKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNTU1BhcnNlcjo6cGFyc2VHcmlkVGVtcGxhdGVBcmVhc1Jvdyk6CisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlckdyaWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyR3Jp
ZDo6R3JpZEl0ZXJhdG9yOjpuZXh0RW1wdHlHcmlkQXJlYSk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJHcmlkOjpjb21wdXRlVXNlZEJyZWFkdGhPZkdyaWRUcmFja3MpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyR3JpZDo6Z3JpZFRyYWNrU2l6ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJHcmlkOjppbnNlcnRJdGVtSW50b0dyaWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyR3Jp
ZDo6cGxhY2VJdGVtc09uR3JpZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJHcmlkOjpwb3B1
bGF0ZUV4cGxpY2l0R3JpZEFuZE9yZGVySXRlcmF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyR3JpZDo6Y3JlYXRlRW1wdHlHcmlkQXJlYUF0U3BlY2lmaWVkUG9zaXRpb25zT3V0c2lkZUdy
aWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyR3JpZDo6cGxhY2VTcGVjaWZpZWRNYWpvckF4
aXNJdGVtc09uR3JpZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJHcmlkOjpwbGFjZUF1dG9N
YWpvckF4aXNJdGVtT25HcmlkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckdyaWQ6Om9mZnNl
dEFuZEJyZWFkdGhGb3JQb3NpdGlvbmVkQ2hpbGQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
R3JpZDo6cGxhY2VBdXRvTWFqb3JBeGlzSXRlbXNPbkdyaWQpOiBEZWxldGVkLgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyR3JpZDo6bGF5b3V0UG9zaXRpb25lZE9iamVjdCk6IERlbGV0ZWQuCisg
ICAgICAgICogcmVuZGVyaW5nL1JlbmRlckdyaWQuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5
bGUvR3JpZENvb3JkaW5hdGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjp1bnRyYW5z
bGF0ZWREZWZpbml0ZUdyaWRTcGFuKToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjp0cmFu
c2xhdGVkRGVmaW5pdGVHcmlkU3Bhbik6CisgICAgICAgIChXZWJDb3JlOjpHcmlkU3Bhbjo6aW50
ZWdlclNwYW4pOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OnVudHJhbnNsYXRlZFJlc29s
dmVkSW5pdGlhbFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjp1bnRyYW5z
bGF0ZWRSZXNvbHZlZEZpbmFsUG9zaXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFNwYW46
OnJlc29sdmVkSW5pdGlhbFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjpy
ZXNvbHZlZEZpbmFsUG9zaXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OmJlZ2lu
KToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjplbmQpOgorICAgICAgICAoV2ViQ29yZTo6
R3JpZFNwYW46OmlzVHJhbnNsYXRlZERlZmluaXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRT
cGFuOjppc0luZGVmaW5pdGUpOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OnRyYW5zbGF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpHcmlkU3Bhbjo6R3JpZFNwYW4pOgorICAgICAgICAoV2Vi
Q29yZTo6R3JpZFNwYW46Om9wZXJhdG9yPT0pOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6
R3JpZFNwYW46OkdyaWRTcGFuSXRlcmF0b3I6OkdyaWRTcGFuSXRlcmF0b3IpOiBEZWxldGVkLgor
ICAgICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OkdyaWRTcGFuSXRlcmF0b3I6Om9wZXJhdG9yIHVu
c2lnbmVkJik6IERlbGV0ZWQuCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL0dyaWRSZXNvbHZl
ZFBvc2l0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnJlc29sdmVSb3dTdGFydENvbHVtblN0
YXJ0TmFtZWRHcmlkTGluZVBvc2l0aW9uQWdhaW5zdE9wcG9zaXRlUG9zaXRpb24pOgorICAgICAg
ICAoV2ViQ29yZTo6cmVzb2x2ZVJvd0VuZENvbHVtbkVuZE5hbWVkR3JpZExpbmVQb3NpdGlvbkFn
YWluc3RPcHBvc2l0ZVBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OnJlc29sdmVOYW1lZEdy
aWRMaW5lUG9zaXRpb25BZ2FpbnN0T3Bwb3NpdGVQb3NpdGlvbik6CisgICAgICAgIChXZWJDb3Jl
OjpyZXNvbHZlR3JpZFBvc2l0aW9uQWdhaW5zdE9wcG9zaXRlUG9zaXRpb24pOgorICAgICAgICAo
V2ViQ29yZTo6cmVzb2x2ZUdyaWRQb3NpdGlvbkZyb21TdHlsZSk6CisgICAgICAgIChXZWJDb3Jl
OjpHcmlkUmVzb2x2ZWRQb3NpdGlvbjo6cmVzb2x2ZUdyaWRQb3NpdGlvbnNGcm9tU3R5bGUpOgor
ICAgICAgICAoV2ViQ29yZTo6R3JpZFJlc29sdmVkUG9zaXRpb246OnNwYW5TaXplRm9yQXV0b1Bs
YWNlZEl0ZW0pOiBEZWxldGVkLgorCiAyMDE2LTAzLTA3ICBBZGFtIEJlcmdrdmlzdCAgPGFkYW0u
YmVyZ2t2aXN0QGVyaWNzc29uLmNvbT4KIAogICAgICAgICBXZWJSVEM6IEltcGxlbWVudCBNZWRp
YUVuZHBvaW50UGVlckNvbm5lY3Rpb246OmNyZWF0ZU9mZmVyKCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
ci5jcHAKaW5kZXggZGJmMWVjMzYyNWM4ZmY1OGQ1ZWU2MWM1NTM0OGRhNjU5ZGJkOTlkYS4uZDg3
ODM4Mjk2MzNhMzQ3MGZkOTM4MzM0MjFjMjdlNDk4YTQxZThlMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Bh
cnNlci5jcHAKQEAgLTYyNDksNyArNjI0OSw3IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZUdyaWRU
ZW1wbGF0ZUFyZWFzUm93KE5hbWVkR3JpZEFyZWFNYXAmIGdyaWRBcmVhTWFwLCBjb25zdCB1CiAK
ICAgICAgICAgYXV0byBncmlkQXJlYUl0ZXJhdG9yID0gZ3JpZEFyZWFNYXAuZmluZChncmlkQXJl
YU5hbWUpOwogICAgICAgICBpZiAoZ3JpZEFyZWFJdGVyYXRvciA9PSBncmlkQXJlYU1hcC5lbmQo
KSkKLSAgICAgICAgICAgIGdyaWRBcmVhTWFwLmFkZChncmlkQXJlYU5hbWUsIEdyaWRDb29yZGlu
YXRlKEdyaWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFuKHJvd0NvdW50LCByb3dDb3VudCArIDEpLCBH
cmlkU3Bhbjo6ZGVmaW5pdGVHcmlkU3BhbihjdXJyZW50Q29sdW1uLCBsb29rQWhlYWRDb2x1bW4p
KSk7CisgICAgICAgICAgICBncmlkQXJlYU1hcC5hZGQoZ3JpZEFyZWFOYW1lLCBHcmlkQ29vcmRp
bmF0ZShHcmlkU3Bhbjo6dHJhbnNsYXRlZERlZmluaXRlR3JpZFNwYW4ocm93Q291bnQsIHJvd0Nv
dW50ICsgMSksIEdyaWRTcGFuOjp0cmFuc2xhdGVkRGVmaW5pdGVHcmlkU3BhbihjdXJyZW50Q29s
dW1uLCBsb29rQWhlYWRDb2x1bW4pKSk7CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgR3Jp
ZENvb3JkaW5hdGUmIGdyaWRDb29yZGluYXRlID0gZ3JpZEFyZWFJdGVyYXRvci0+dmFsdWU7CiAK
QEAgLTYyNjYsNyArNjI2Niw3IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZUdyaWRUZW1wbGF0ZUFy
ZWFzUm93KE5hbWVkR3JpZEFyZWFNYXAmIGdyaWRBcmVhTWFwLCBjb25zdCB1CiAgICAgICAgICAg
ICBpZiAobG9va0FoZWFkQ29sdW1uICE9IGdyaWRDb29yZGluYXRlLmNvbHVtbnMucmVzb2x2ZWRG
aW5hbFBvc2l0aW9uKCkpCiAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgICAg
ICAgICBncmlkQ29vcmRpbmF0ZS5yb3dzID0gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4oZ3Jp
ZENvb3JkaW5hdGUucm93cy5yZXNvbHZlZEluaXRpYWxQb3NpdGlvbigpLCBncmlkQ29vcmRpbmF0
ZS5yb3dzLnJlc29sdmVkRmluYWxQb3NpdGlvbigpICsgMSk7CisgICAgICAgICAgICBncmlkQ29v
cmRpbmF0ZS5yb3dzID0gR3JpZFNwYW46OnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKGdyaWRD
b29yZGluYXRlLnJvd3MucmVzb2x2ZWRJbml0aWFsUG9zaXRpb24oKSwgZ3JpZENvb3JkaW5hdGUu
cm93cy5yZXNvbHZlZEZpbmFsUG9zaXRpb24oKSArIDEpOwogICAgICAgICB9CiAgICAgICAgIGN1
cnJlbnRDb2x1bW4gPSBsb29rQWhlYWRDb2x1bW4gLSAxOwogICAgIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJHcmlkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJHcmlkLmNwcAppbmRleCA2NmRlMjMwMjJmMWRjNTY5Y2YzMmIzMTcwZmQw
NTA2ODI1NmVmNmMyLi5mYWU5MTQwYmQyMzI1YTc3Zjc0MWMwMmE2M2YyZTc5NjU0ZWM3MGQxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyR3JpZC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckdyaWQuY3BwCkBAIC0xOTAsNyArMTkwLDcg
QEAgcHVibGljOgogICAgICAgICBjb25zdCB1bnNpZ25lZCBlbmRPZlZhcnlpbmdUcmFja0luZGV4
ID0gKG1fZGlyZWN0aW9uID09IEZvckNvbHVtbnMpID8gbV9ncmlkLnNpemUoKSA6IG1fZ3JpZFsw
XS5zaXplKCk7CiAgICAgICAgIGZvciAoOyB2YXJ5aW5nVHJhY2tJbmRleCA8IGVuZE9mVmFyeWlu
Z1RyYWNrSW5kZXg7ICsrdmFyeWluZ1RyYWNrSW5kZXgpIHsKICAgICAgICAgICAgIGlmIChpc0Vt
cHR5QXJlYUVub3VnaChyb3dTcGFuLCBjb2x1bW5TcGFuKSkgewotICAgICAgICAgICAgICAgIHN0
ZDo6dW5pcXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gcmVzdWx0ID0gc3RkOjptYWtlX3VuaXF1ZTxH
cmlkQ29vcmRpbmF0ZT4oR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4obV9yb3dJbmRleCwgbV9y
b3dJbmRleCArIHJvd1NwYW4pLCBHcmlkU3Bhbjo6ZGVmaW5pdGVHcmlkU3BhbihtX2NvbHVtbklu
ZGV4LCBtX2NvbHVtbkluZGV4ICsgY29sdW1uU3BhbikpOworICAgICAgICAgICAgICAgIHN0ZDo6
dW5pcXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gcmVzdWx0ID0gc3RkOjptYWtlX3VuaXF1ZTxHcmlk
Q29vcmRpbmF0ZT4oR3JpZFNwYW46OnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKG1fcm93SW5k
ZXgsIG1fcm93SW5kZXggKyByb3dTcGFuKSwgR3JpZFNwYW46OnRyYW5zbGF0ZWREZWZpbml0ZUdy
aWRTcGFuKG1fY29sdW1uSW5kZXgsIG1fY29sdW1uSW5kZXggKyBjb2x1bW5TcGFuKSk7CiAgICAg
ICAgICAgICAgICAgLy8gQWR2YW5jZSB0aGUgaXRlcmF0b3IgdG8gYXZvaWQgYW4gaW5maW5pdGUg
bG9vcCB3aGVyZSB3ZSB3b3VsZCByZXR1cm4gdGhlIHNhbWUgZ3JpZCBhcmVhIG92ZXIgYW5kIG92
ZXIuCiAgICAgICAgICAgICAgICAgKyt2YXJ5aW5nVHJhY2tJbmRleDsKICAgICAgICAgICAgICAg
ICByZXR1cm4gcmVzdWx0OwpAQCAtNTY2LDcgKzU2Niw3IEBAIHZvaWQgUmVuZGVyR3JpZDo6Y29t
cHV0ZVVzZWRCcmVhZHRoT2ZHcmlkVHJhY2tzKEdyaWRUcmFja1NpemluZ0RpcmVjdGlvbiBkaXJl
Y3RpCiAgICAgLy8gNC4gR3JvdyBhbGwgR3JpZCB0cmFja3MgaGF2aW5nIGEgZnJhY3Rpb24gYXMg
dGhlIE1heFRyYWNrU2l6aW5nRnVuY3Rpb24uCiAgICAgZG91YmxlIGZsZXhGcmFjdGlvbiA9IDA7
CiAgICAgaWYgKGhhc0RlZmluaXRlRnJlZVNwYWNlKQotICAgICAgICBmbGV4RnJhY3Rpb24gPSBm
aW5kRmxleEZhY3RvclVuaXRTaXplKHRyYWNrcywgR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4o
MCwgdHJhY2tzLnNpemUoKSksIGRpcmVjdGlvbiwgaW5pdGlhbEZyZWVTcGFjZS52YWx1ZSgpKTsK
KyAgICAgICAgZmxleEZyYWN0aW9uID0gZmluZEZsZXhGYWN0b3JVbml0U2l6ZSh0cmFja3MsIEdy
aWRTcGFuOjp0cmFuc2xhdGVkRGVmaW5pdGVHcmlkU3BhbigwLCB0cmFja3Muc2l6ZSgpKSwgZGly
ZWN0aW9uLCBpbml0aWFsRnJlZVNwYWNlLnZhbHVlKCkpOwogICAgIGVsc2UgewogICAgICAgICBm
b3IgKGNvbnN0IGF1dG8mIHRyYWNrSW5kZXggOiBmbGV4aWJsZVNpemVkVHJhY2tzSW5kZXgpCiAg
ICAgICAgICAgICBmbGV4RnJhY3Rpb24gPSBzdGQ6Om1heChmbGV4RnJhY3Rpb24sIG5vcm1hbGl6
ZWRGbGV4RnJhY3Rpb24odHJhY2tzW3RyYWNrSW5kZXhdLCBncmlkVHJhY2tTaXplKGRpcmVjdGlv
biwgdHJhY2tJbmRleCkubWF4VHJhY2tCcmVhZHRoKCkuZmxleCgpKSk7CkBAIC02ODcsNyArNjg3
LDEwIEBAIEdyaWRUcmFja1NpemUgUmVuZGVyR3JpZDo6Z3JpZFRyYWNrU2l6ZShHcmlkVHJhY2tT
aXppbmdEaXJlY3Rpb24gZGlyZWN0aW9uLCB1bnNpCiB7CiAgICAgYm9vbCBpc0ZvckNvbHVtbnMg
PSAoZGlyZWN0aW9uID09IEZvckNvbHVtbnMpOwogICAgIGF1dG8mIHRyYWNrU3R5bGVzID0gIGlz
Rm9yQ29sdW1ucyA/IHN0eWxlKCkuZ3JpZENvbHVtbnMoKSA6IHN0eWxlKCkuZ3JpZFJvd3MoKTsK
LSAgICBhdXRvJiB0cmFja1NpemUgPSAoaSA+PSB0cmFja1N0eWxlcy5zaXplKCkpID8gKGlzRm9y
Q29sdW1ucyA/IHN0eWxlKCkuZ3JpZEF1dG9Db2x1bW5zKCkgOiBzdHlsZSgpLmdyaWRBdXRvUm93
cygpKSA6IHRyYWNrU3R5bGVzW2ldOworCisgICAgYXV0byYgYXV0b1RyYWNrU2l6ZSA9IGlzRm9y
Q29sdW1ucyA/IHN0eWxlKCkuZ3JpZEF1dG9Db2x1bW5zKCkgOiBzdHlsZSgpLmdyaWRBdXRvUm93
cygpOworICAgIGludCB0cmFuc2xhdGVkSW5kZXggPSBpICsgKGlzRm9yQ29sdW1ucyA/IG1fc21h
bGxlc3RDb2x1bW5TdGFydCA6IG1fc21hbGxlc3RSb3dTdGFydCk7CisgICAgYXV0byYgdHJhY2tT
aXplID0gKHRyYW5zbGF0ZWRJbmRleCA8IDAgfHwgdHJhbnNsYXRlZEluZGV4ID49IHN0YXRpY19j
YXN0PGludD4odHJhY2tTdHlsZXMuc2l6ZSgpKSkgPyBhdXRvVHJhY2tTaXplIDogdHJhY2tTdHls
ZXNbdHJhbnNsYXRlZEluZGV4XTsKIAogICAgIEdyaWRMZW5ndGggbWluVHJhY2tCcmVhZHRoID0g
dHJhY2tTaXplLm1pblRyYWNrQnJlYWR0aCgpOwogICAgIEdyaWRMZW5ndGggbWF4VHJhY2tCcmVh
ZHRoID0gdHJhY2tTaXplLm1heFRyYWNrQnJlYWR0aCgpOwpAQCAtMTEzNyw3ICsxMTQwLDcgQEAg
dm9pZCBSZW5kZXJHcmlkOjplbnN1cmVHcmlkU2l6ZSh1bnNpZ25lZCBtYXhpbXVtUm93U2l6ZSwg
dW5zaWduZWQgbWF4aW11bUNvbHVtblMKIAogdm9pZCBSZW5kZXJHcmlkOjppbnNlcnRJdGVtSW50
b0dyaWQoUmVuZGVyQm94JiBjaGlsZCwgY29uc3QgR3JpZENvb3JkaW5hdGUmIGNvb3JkaW5hdGUp
CiB7Ci0gICAgQVNTRVJUKGNvb3JkaW5hdGUucm93cy5pc0RlZmluaXRlKCkgJiYgY29vcmRpbmF0
ZS5jb2x1bW5zLmlzRGVmaW5pdGUoKSk7CisgICAgQVNTRVJUKGNvb3JkaW5hdGUucm93cy5pc1Ry
YW5zbGF0ZWREZWZpbml0ZSgpICYmIGNvb3JkaW5hdGUuY29sdW1ucy5pc1RyYW5zbGF0ZWREZWZp
bml0ZSgpKTsKICAgICBlbnN1cmVHcmlkU2l6ZShjb29yZGluYXRlLnJvd3MucmVzb2x2ZWRGaW5h
bFBvc2l0aW9uKCksIGNvb3JkaW5hdGUuY29sdW1ucy5yZXNvbHZlZEZpbmFsUG9zaXRpb24oKSk7
CiAKICAgICBmb3IgKGF1dG8gcm93IDogY29vcmRpbmF0ZS5yb3dzKSB7CkBAIC0xMTYwLDExICsx
MTYzLDE2IEBAIHZvaWQgUmVuZGVyR3JpZDo6cGxhY2VJdGVtc09uR3JpZCgpCiAgICAgICAgICAg
ICBjb250aW51ZTsKIAogICAgICAgICBHcmlkQ29vcmRpbmF0ZSBjb29yZGluYXRlID0gY2FjaGVk
R3JpZENvb3JkaW5hdGUoKmNoaWxkKTsKKyAgICAgICAgaWYgKCFjb29yZGluYXRlLnJvd3MuaXNJ
bmRlZmluaXRlKCkpCisgICAgICAgICAgICBjb29yZGluYXRlLnJvd3MudHJhbnNsYXRlKGFicyht
X3NtYWxsZXN0Um93U3RhcnQpKTsKKyAgICAgICAgaWYgKCFjb29yZGluYXRlLmNvbHVtbnMuaXNJ
bmRlZmluaXRlKCkpCisgICAgICAgICAgICBjb29yZGluYXRlLmNvbHVtbnMudHJhbnNsYXRlKGFi
cyhtX3NtYWxsZXN0Q29sdW1uU3RhcnQpKTsKKyAgICAgICAgbV9ncmlkSXRlbUNvb3JkaW5hdGUu
c2V0KGNoaWxkLCBjb29yZGluYXRlKTsKIAotICAgICAgICBpZiAoIWNvb3JkaW5hdGUucm93cy5p
c0RlZmluaXRlKCkgfHwgIWNvb3JkaW5hdGUuY29sdW1ucy5pc0RlZmluaXRlKCkpIHsKKyAgICAg
ICAgaWYgKGNvb3JkaW5hdGUucm93cy5pc0luZGVmaW5pdGUoKSB8fCBjb29yZGluYXRlLmNvbHVt
bnMuaXNJbmRlZmluaXRlKCkpIHsKICAgICAgICAgICAgIGJvb2wgbWFqb3JBeGlzRGlyZWN0aW9u
SXNGb3JDb2x1bW5zID0gYXV0b1BsYWNlbWVudE1ham9yQXhpc0RpcmVjdGlvbigpID09IEZvckNv
bHVtbnM7Ci0gICAgICAgICAgICBpZiAoKG1ham9yQXhpc0RpcmVjdGlvbklzRm9yQ29sdW1ucyAm
JiAhY29vcmRpbmF0ZS5jb2x1bW5zLmlzRGVmaW5pdGUoKSkKLSAgICAgICAgICAgICAgICB8fCAo
IW1ham9yQXhpc0RpcmVjdGlvbklzRm9yQ29sdW1ucyAmJiAhY29vcmRpbmF0ZS5yb3dzLmlzRGVm
aW5pdGUoKSkpCisgICAgICAgICAgICBpZiAoKG1ham9yQXhpc0RpcmVjdGlvbklzRm9yQ29sdW1u
cyAmJiBjb29yZGluYXRlLmNvbHVtbnMuaXNJbmRlZmluaXRlKCkpCisgICAgICAgICAgICAgICAg
fHwgKCFtYWpvckF4aXNEaXJlY3Rpb25Jc0ZvckNvbHVtbnMgJiYgY29vcmRpbmF0ZS5yb3dzLmlz
SW5kZWZpbml0ZSgpKSkKICAgICAgICAgICAgICAgICBhdXRvTWFqb3JBeGlzQXV0b0dyaWRJdGVt
cy5hcHBlbmQoY2hpbGQpOwogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIHNwZWNp
ZmllZE1ham9yQXhpc0F1dG9HcmlkSXRlbXMuYXBwZW5kKGNoaWxkKTsKQEAgLTExODUsNyArMTE5
Myw3IEBAIHZvaWQgUmVuZGVyR3JpZDo6cGxhY2VJdGVtc09uR3JpZCgpCiAgICAgICAgICAgICBj
b250aW51ZTsKIAogICAgICAgICBHcmlkQ29vcmRpbmF0ZSBjb29yZGluYXRlID0gY2FjaGVkR3Jp
ZENvb3JkaW5hdGUoKmNoaWxkKTsKLSAgICAgICAgQVNTRVJUKGNvb3JkaW5hdGUucm93cy5pc0Rl
ZmluaXRlKCkgJiYgY29vcmRpbmF0ZS5jb2x1bW5zLmlzRGVmaW5pdGUoKSk7CisgICAgICAgIEFT
U0VSVChjb29yZGluYXRlLnJvd3MuaXNUcmFuc2xhdGVkRGVmaW5pdGUoKSAmJiBjb29yZGluYXRl
LmNvbHVtbnMuaXNUcmFuc2xhdGVkRGVmaW5pdGUoKSk7CiAgICAgfQogI2VuZGlmCiB9CkBAIC0x
MTkzLDYgKzEyMDEsNyBAQCB2b2lkIFJlbmRlckdyaWQ6OnBsYWNlSXRlbXNPbkdyaWQoKQogdm9p
ZCBSZW5kZXJHcmlkOjpwb3B1bGF0ZUV4cGxpY2l0R3JpZEFuZE9yZGVySXRlcmF0b3IoKQogewog
ICAgIE9yZGVySXRlcmF0b3JQb3B1bGF0b3IgcG9wdWxhdG9yKG1fb3JkZXJJdGVyYXRvcik7Cisg
ICAgbV9zbWFsbGVzdFJvd1N0YXJ0ID0gbV9zbWFsbGVzdENvbHVtblN0YXJ0ID0gMDsKICAgICB1
bnNpZ25lZCBtYXhpbXVtUm93SW5kZXggPSBzdGQ6Om1heDx1bnNpZ25lZD4oMSwgR3JpZFJlc29s
dmVkUG9zaXRpb246OmV4cGxpY2l0R3JpZFJvd0NvdW50KHN0eWxlKCkpKTsKICAgICB1bnNpZ25l
ZCBtYXhpbXVtQ29sdW1uSW5kZXggPSBzdGQ6Om1heDx1bnNpZ25lZD4oMSwgR3JpZFJlc29sdmVk
UG9zaXRpb246OmV4cGxpY2l0R3JpZENvbHVtbkNvdW50KHN0eWxlKCkpKTsKIApAQCAtMTIwMyw4
ICsxMjEyLDkgQEAgdm9pZCBSZW5kZXJHcmlkOjpwb3B1bGF0ZUV4cGxpY2l0R3JpZEFuZE9yZGVy
SXRlcmF0b3IoKQogICAgICAgICBwb3B1bGF0b3IuY29sbGVjdENoaWxkKCpjaGlsZCk7CiAKICAg
ICAgICAgR3JpZFNwYW4gcm93UG9zaXRpb25zID0gR3JpZFJlc29sdmVkUG9zaXRpb246OnJlc29s
dmVHcmlkUG9zaXRpb25zRnJvbVN0eWxlKHN0eWxlKCksICpjaGlsZCwgRm9yUm93cyk7Ci0gICAg
ICAgIGlmIChyb3dQb3NpdGlvbnMuaXNEZWZpbml0ZSgpKSB7Ci0gICAgICAgICAgICBtYXhpbXVt
Um93SW5kZXggPSBzdGQ6Om1heChtYXhpbXVtUm93SW5kZXgsIHJvd1Bvc2l0aW9ucy5yZXNvbHZl
ZEZpbmFsUG9zaXRpb24oKSk7CisgICAgICAgIGlmICghcm93UG9zaXRpb25zLmlzSW5kZWZpbml0
ZSgpKSB7CisgICAgICAgICAgICBtX3NtYWxsZXN0Um93U3RhcnQgPSBzdGQ6Om1pbihtX3NtYWxs
ZXN0Um93U3RhcnQsIHJvd1Bvc2l0aW9ucy51bnRyYW5zbGF0ZWRSZXNvbHZlZEluaXRpYWxQb3Np
dGlvbigpKTsKKyAgICAgICAgICAgIG1heGltdW1Sb3dJbmRleCA9IHN0ZDo6bWF4PGludD4obWF4
aW11bVJvd0luZGV4LCByb3dQb3NpdGlvbnMudW50cmFuc2xhdGVkUmVzb2x2ZWRGaW5hbFBvc2l0
aW9uKCkpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8gR3JvdyB0aGUgZ3JpZCBm
b3IgaXRlbXMgd2l0aCBhIGRlZmluaXRlIHJvdyBzcGFuLCBnZXR0aW5nIHRoZSBsYXJnZXN0IHN1
Y2ggc3Bhbi4KICAgICAgICAgICAgIHVuc2lnbmVkIHNwYW5TaXplID0gR3JpZFJlc29sdmVkUG9z
aXRpb246OnNwYW5TaXplRm9yQXV0b1BsYWNlZEl0ZW0oc3R5bGUoKSwgKmNoaWxkLCBGb3JSb3dz
KTsKQEAgLTEyMTIsOCArMTIyMiw5IEBAIHZvaWQgUmVuZGVyR3JpZDo6cG9wdWxhdGVFeHBsaWNp
dEdyaWRBbmRPcmRlckl0ZXJhdG9yKCkKICAgICAgICAgfQogCiAgICAgICAgIEdyaWRTcGFuIGNv
bHVtblBvc2l0aW9ucyA9IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpyZXNvbHZlR3JpZFBvc2l0aW9u
c0Zyb21TdHlsZShzdHlsZSgpLCAqY2hpbGQsIEZvckNvbHVtbnMpOwotICAgICAgICBpZiAoY29s
dW1uUG9zaXRpb25zLmlzRGVmaW5pdGUoKSkgewotICAgICAgICAgICAgbWF4aW11bUNvbHVtbklu
ZGV4ID0gc3RkOjptYXgobWF4aW11bUNvbHVtbkluZGV4LCBjb2x1bW5Qb3NpdGlvbnMucmVzb2x2
ZWRGaW5hbFBvc2l0aW9uKCkpOworICAgICAgICBpZiAoIWNvbHVtblBvc2l0aW9ucy5pc0luZGVm
aW5pdGUoKSkgeworICAgICAgICAgICAgbV9zbWFsbGVzdENvbHVtblN0YXJ0ID0gc3RkOjptaW4o
bV9zbWFsbGVzdENvbHVtblN0YXJ0LCBjb2x1bW5Qb3NpdGlvbnMudW50cmFuc2xhdGVkUmVzb2x2
ZWRJbml0aWFsUG9zaXRpb24oKSk7CisgICAgICAgICAgICBtYXhpbXVtQ29sdW1uSW5kZXggPSBz
dGQ6Om1heDxpbnQ+KG1heGltdW1Db2x1bW5JbmRleCwgY29sdW1uUG9zaXRpb25zLnVudHJhbnNs
YXRlZFJlc29sdmVkRmluYWxQb3NpdGlvbigpKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAg
ICAgIC8vIEdyb3cgdGhlIGdyaWQgZm9yIGl0ZW1zIHdpdGggYSBkZWZpbml0ZSBjb2x1bW4gc3Bh
biwgZ2V0dGluZyB0aGUgbGFyZ2VzdCBzdWNoIHNwYW4uCiAgICAgICAgICAgICB1bnNpZ25lZCBz
cGFuU2l6ZSA9IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpzcGFuU2l6ZUZvckF1dG9QbGFjZWRJdGVt
KHN0eWxlKCksICpjaGlsZCwgRm9yQ29sdW1ucyk7CkBAIC0xMjIzLDkgKzEyMzQsOSBAQCB2b2lk
IFJlbmRlckdyaWQ6OnBvcHVsYXRlRXhwbGljaXRHcmlkQW5kT3JkZXJJdGVyYXRvcigpCiAgICAg
ICAgIG1fZ3JpZEl0ZW1Db29yZGluYXRlLnNldChjaGlsZCwgR3JpZENvb3JkaW5hdGUocm93UG9z
aXRpb25zLCBjb2x1bW5Qb3NpdGlvbnMpKTsKICAgICB9CiAKLSAgICBtX2dyaWQuZ3JvdyhtYXhp
bXVtUm93SW5kZXgpOworICAgIG1fZ3JpZC5ncm93KG1heGltdW1Sb3dJbmRleCArIGFicyhtX3Nt
YWxsZXN0Um93U3RhcnQpKTsKICAgICBmb3IgKGF1dG8mIGNvbHVtbiA6IG1fZ3JpZCkKLSAgICAg
ICAgY29sdW1uLmdyb3cobWF4aW11bUNvbHVtbkluZGV4KTsKKyAgICAgICAgY29sdW1uLmdyb3co
bWF4aW11bUNvbHVtbkluZGV4ICsgYWJzKG1fc21hbGxlc3RDb2x1bW5TdGFydCkpOwogfQogCiBz
dGQ6OnVuaXF1ZV9wdHI8R3JpZENvb3JkaW5hdGU+IFJlbmRlckdyaWQ6OmNyZWF0ZUVtcHR5R3Jp
ZEFyZWFBdFNwZWNpZmllZFBvc2l0aW9uc091dHNpZGVHcmlkKGNvbnN0IFJlbmRlckJveCYgZ3Jp
ZEl0ZW0sIEdyaWRUcmFja1NpemluZ0RpcmVjdGlvbiBzcGVjaWZpZWREaXJlY3Rpb24sIGNvbnN0
IEdyaWRTcGFuJiBzcGVjaWZpZWRQb3NpdGlvbnMpIGNvbnN0CkBAIC0xMjMzLDcgKzEyNDQsNyBA
QCBzdGQ6OnVuaXF1ZV9wdHI8R3JpZENvb3JkaW5hdGU+IFJlbmRlckdyaWQ6OmNyZWF0ZUVtcHR5
R3JpZEFyZWFBdFNwZWNpZmllZFBvc2l0aQogICAgIEdyaWRUcmFja1NpemluZ0RpcmVjdGlvbiBj
cm9zc0RpcmVjdGlvbiA9IHNwZWNpZmllZERpcmVjdGlvbiA9PSBGb3JDb2x1bW5zID8gRm9yUm93
cyA6IEZvckNvbHVtbnM7CiAgICAgY29uc3QgdW5zaWduZWQgZW5kT2ZDcm9zc0RpcmVjdGlvbiA9
IGNyb3NzRGlyZWN0aW9uID09IEZvckNvbHVtbnMgPyBncmlkQ29sdW1uQ291bnQoKSA6IGdyaWRS
b3dDb3VudCgpOwogICAgIHVuc2lnbmVkIGNyb3NzRGlyZWN0aW9uU3BhblNpemUgPSBHcmlkUmVz
b2x2ZWRQb3NpdGlvbjo6c3BhblNpemVGb3JBdXRvUGxhY2VkSXRlbShzdHlsZSgpLCBncmlkSXRl
bSwgY3Jvc3NEaXJlY3Rpb24pOwotICAgIEdyaWRTcGFuIGNyb3NzRGlyZWN0aW9uUG9zaXRpb25z
ID0gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4oZW5kT2ZDcm9zc0RpcmVjdGlvbiwgZW5kT2ZD
cm9zc0RpcmVjdGlvbiArIGNyb3NzRGlyZWN0aW9uU3BhblNpemUpOworICAgIEdyaWRTcGFuIGNy
b3NzRGlyZWN0aW9uUG9zaXRpb25zID0gR3JpZFNwYW46OnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRT
cGFuKGVuZE9mQ3Jvc3NEaXJlY3Rpb24sIGVuZE9mQ3Jvc3NEaXJlY3Rpb24gKyBjcm9zc0RpcmVj
dGlvblNwYW5TaXplKTsKICAgICByZXR1cm4gc3RkOjptYWtlX3VuaXF1ZTxHcmlkQ29vcmRpbmF0
ZT4oc3BlY2lmaWVkRGlyZWN0aW9uID09IEZvckNvbHVtbnMgPyBjcm9zc0RpcmVjdGlvblBvc2l0
aW9ucyA6IHNwZWNpZmllZFBvc2l0aW9ucywgc3BlY2lmaWVkRGlyZWN0aW9uID09IEZvckNvbHVt
bnMgPyBzcGVjaWZpZWRQb3NpdGlvbnMgOiBjcm9zc0RpcmVjdGlvblBvc2l0aW9ucyk7CiB9CiAK
QEAgLTEyNDksOCArMTI2MCw4IEBAIHZvaWQgUmVuZGVyR3JpZDo6cGxhY2VTcGVjaWZpZWRNYWpv
ckF4aXNJdGVtc09uR3JpZChjb25zdCBWZWN0b3I8UmVuZGVyQm94Kj4mIGF1CiAKICAgICBmb3Ig
KGF1dG8mIGF1dG9HcmlkSXRlbSA6IGF1dG9HcmlkSXRlbXMpIHsKICAgICAgICAgR3JpZFNwYW4g
bWFqb3JBeGlzUG9zaXRpb25zID0gY2FjaGVkR3JpZFNwYW4oKmF1dG9HcmlkSXRlbSwgYXV0b1Bs
YWNlbWVudE1ham9yQXhpc0RpcmVjdGlvbigpKTsKLSAgICAgICAgQVNTRVJUKG1ham9yQXhpc1Bv
c2l0aW9ucy5pc0RlZmluaXRlKCkpOwotICAgICAgICBBU1NFUlQoIWNhY2hlZEdyaWRTcGFuKCph
dXRvR3JpZEl0ZW0sIGF1dG9QbGFjZW1lbnRNaW5vckF4aXNEaXJlY3Rpb24oKSkuaXNEZWZpbml0
ZSgpKTsKKyAgICAgICAgQVNTRVJUKG1ham9yQXhpc1Bvc2l0aW9ucy5pc1RyYW5zbGF0ZWREZWZp
bml0ZSgpKTsKKyAgICAgICAgQVNTRVJUKGNhY2hlZEdyaWRTcGFuKCphdXRvR3JpZEl0ZW0sIGF1
dG9QbGFjZW1lbnRNaW5vckF4aXNEaXJlY3Rpb24oKSkuaXNJbmRlZmluaXRlKCkpOwogICAgICAg
ICB1bnNpZ25lZCBtaW5vckF4aXNTcGFuU2l6ZSA9IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpzcGFu
U2l6ZUZvckF1dG9QbGFjZWRJdGVtKHN0eWxlKCksICphdXRvR3JpZEl0ZW0sIGF1dG9QbGFjZW1l
bnRNaW5vckF4aXNEaXJlY3Rpb24oKSk7CiAgICAgICAgIHVuc2lnbmVkIG1ham9yQXhpc0luaXRp
YWxQb3NpdGlvbiA9IG1ham9yQXhpc1Bvc2l0aW9ucy5yZXNvbHZlZEluaXRpYWxQb3NpdGlvbigp
OwogCkBAIC0xMjg0LDcgKzEyOTUsNyBAQCB2b2lkIFJlbmRlckdyaWQ6OnBsYWNlQXV0b01ham9y
QXhpc0l0ZW1zT25HcmlkKGNvbnN0IFZlY3RvcjxSZW5kZXJCb3gqPiYgYXV0b0dyaQogCiB2b2lk
IFJlbmRlckdyaWQ6OnBsYWNlQXV0b01ham9yQXhpc0l0ZW1PbkdyaWQoUmVuZGVyQm94JiBncmlk
SXRlbSwgQXV0b1BsYWNlbWVudEN1cnNvciYgYXV0b1BsYWNlbWVudEN1cnNvcikKIHsKLSAgICBB
U1NFUlQoIWNhY2hlZEdyaWRTcGFuKGdyaWRJdGVtLCBhdXRvUGxhY2VtZW50TWFqb3JBeGlzRGly
ZWN0aW9uKCkpLmlzRGVmaW5pdGUoKSk7CisgICAgQVNTRVJUKGNhY2hlZEdyaWRTcGFuKGdyaWRJ
dGVtLCBhdXRvUGxhY2VtZW50TWFqb3JBeGlzRGlyZWN0aW9uKCkpLmlzSW5kZWZpbml0ZSgpKTsK
ICAgICB1bnNpZ25lZCBtYWpvckF4aXNTcGFuU2l6ZSA9IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpz
cGFuU2l6ZUZvckF1dG9QbGFjZWRJdGVtKHN0eWxlKCksIGdyaWRJdGVtLCBhdXRvUGxhY2VtZW50
TWFqb3JBeGlzRGlyZWN0aW9uKCkpOwogCiAgICAgY29uc3QgdW5zaWduZWQgZW5kT2ZNYWpvckF4
aXMgPSAoYXV0b1BsYWNlbWVudE1ham9yQXhpc0RpcmVjdGlvbigpID09IEZvckNvbHVtbnMpID8g
Z3JpZENvbHVtbkNvdW50KCkgOiBncmlkUm93Q291bnQoKTsKQEAgLTEyOTMsNyArMTMwNCw3IEBA
IHZvaWQgUmVuZGVyR3JpZDo6cGxhY2VBdXRvTWFqb3JBeGlzSXRlbU9uR3JpZChSZW5kZXJCb3gm
IGdyaWRJdGVtLCBBdXRvUGxhY2VtZW50CiAKICAgICBzdGQ6OnVuaXF1ZV9wdHI8R3JpZENvb3Jk
aW5hdGU+IGVtcHR5R3JpZEFyZWE7CiAgICAgR3JpZFNwYW4gbWlub3JBeGlzUG9zaXRpb25zID0g
Y2FjaGVkR3JpZFNwYW4oZ3JpZEl0ZW0sIGF1dG9QbGFjZW1lbnRNaW5vckF4aXNEaXJlY3Rpb24o
KSk7Ci0gICAgaWYgKG1pbm9yQXhpc1Bvc2l0aW9ucy5pc0RlZmluaXRlKCkpIHsKKyAgICBpZiAo
bWlub3JBeGlzUG9zaXRpb25zLmlzVHJhbnNsYXRlZERlZmluaXRlKCkpIHsKICAgICAgICAgLy8g
TW92ZSB0byB0aGUgbmV4dCB0cmFjayBpbiBtYWpvciBheGlzIGlmIGluaXRpYWwgcG9zaXRpb24g
aW4gbWlub3IgYXhpcyBpcyBiZWZvcmUgYXV0by1wbGFjZW1lbnQgY3Vyc29yLgogICAgICAgICBp
ZiAobWlub3JBeGlzUG9zaXRpb25zLnJlc29sdmVkSW5pdGlhbFBvc2l0aW9uKCkgPCBtaW5vckF4
aXNBdXRvUGxhY2VtZW50Q3Vyc29yKQogICAgICAgICAgICAgbWFqb3JBeGlzQXV0b1BsYWNlbWVu
dEN1cnNvcisrOwpAQCAtMTMyOSw3ICsxMzQwLDcgQEAgdm9pZCBSZW5kZXJHcmlkOjpwbGFjZUF1
dG9NYWpvckF4aXNJdGVtT25HcmlkKFJlbmRlckJveCYgZ3JpZEl0ZW0sIEF1dG9QbGFjZW1lbnQK
ICAgICAgICAgfQogCiAgICAgICAgIGlmICghZW1wdHlHcmlkQXJlYSkKLSAgICAgICAgICAgIGVt
cHR5R3JpZEFyZWEgPSBjcmVhdGVFbXB0eUdyaWRBcmVhQXRTcGVjaWZpZWRQb3NpdGlvbnNPdXRz
aWRlR3JpZChncmlkSXRlbSwgYXV0b1BsYWNlbWVudE1pbm9yQXhpc0RpcmVjdGlvbigpLCBHcmlk
U3Bhbjo6ZGVmaW5pdGVHcmlkU3BhbigwLCBtaW5vckF4aXNTcGFuU2l6ZSkpOworICAgICAgICAg
ICAgZW1wdHlHcmlkQXJlYSA9IGNyZWF0ZUVtcHR5R3JpZEFyZWFBdFNwZWNpZmllZFBvc2l0aW9u
c091dHNpZGVHcmlkKGdyaWRJdGVtLCBhdXRvUGxhY2VtZW50TWlub3JBeGlzRGlyZWN0aW9uKCks
IEdyaWRTcGFuOjp0cmFuc2xhdGVkRGVmaW5pdGVHcmlkU3BhbigwLCBtaW5vckF4aXNTcGFuU2l6
ZSkpOwogICAgIH0KIAogICAgIG1fZ3JpZEl0ZW1Db29yZGluYXRlLnNldCgmZ3JpZEl0ZW0sICpl
bXB0eUdyaWRBcmVhKTsKQEAgLTE0NzQsMTEgKzE0ODUsMTIgQEAgdm9pZCBSZW5kZXJHcmlkOjpv
ZmZzZXRBbmRCcmVhZHRoRm9yUG9zaXRpb25lZENoaWxkKGNvbnN0IFJlbmRlckJveCYgY2hpbGQs
IEdyaWQKICAgICBBU1NFUlQoY2hpbGQuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSA9PSBpc0hv
cml6b250YWxXcml0aW5nTW9kZSgpKTsKIAogICAgIEdyaWRTcGFuIHBvc2l0aW9ucyA9IEdyaWRS
ZXNvbHZlZFBvc2l0aW9uOjpyZXNvbHZlR3JpZFBvc2l0aW9uc0Zyb21TdHlsZShzdHlsZSgpLCBj
aGlsZCwgZGlyZWN0aW9uKTsKLSAgICBpZiAoIXBvc2l0aW9ucy5pc0RlZmluaXRlKCkpIHsKKyAg
ICBpZiAocG9zaXRpb25zLmlzSW5kZWZpbml0ZSgpKSB7CiAgICAgICAgIG9mZnNldCA9IExheW91
dFVuaXQoKTsKICAgICAgICAgYnJlYWR0aCA9IChkaXJlY3Rpb24gPT0gRm9yQ29sdW1ucykgPyBj
bGllbnRMb2dpY2FsV2lkdGgoKSA6IGNsaWVudExvZ2ljYWxIZWlnaHQoKTsKICAgICAgICAgcmV0
dXJuOwogICAgIH0KKyAgICBwb3NpdGlvbnMudHJhbnNsYXRlKGRpcmVjdGlvbiA9PSBGb3JDb2x1
bW5zID8gbV9zbWFsbGVzdENvbHVtblN0YXJ0IDogbV9zbWFsbGVzdFJvd1N0YXJ0KTsKIAogICAg
IEdyaWRQb3NpdGlvbiBzdGFydFBvc2l0aW9uID0gKGRpcmVjdGlvbiA9PSBGb3JDb2x1bW5zKSA/
IGNoaWxkLnN0eWxlKCkuZ3JpZEl0ZW1Db2x1bW5TdGFydCgpIDogY2hpbGQuc3R5bGUoKS5ncmlk
SXRlbVJvd1N0YXJ0KCk7CiAgICAgR3JpZFBvc2l0aW9uIGVuZFBvc2l0aW9uID0gKGRpcmVjdGlv
biA9PSBGb3JDb2x1bW5zKSA/IGNoaWxkLnN0eWxlKCkuZ3JpZEl0ZW1Db2x1bW5FbmQoKSA6IGNo
aWxkLnN0eWxlKCkuZ3JpZEl0ZW1Sb3dFbmQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJHcmlkLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
R3JpZC5oCmluZGV4IGZjMzk1NzI4MTg0YjQwZWM0ZTA4ZDVjZGZmYzM3NGEzYzJjNGExZmYuLmEz
ZDE4ZWZlYWM1NDE4MWIxY2YzOTI2MTI0YWY3NDI0MGFhYjExZWQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJHcmlkLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckdyaWQuaApAQCAtMTkwLDYgKzE5MCw5IEBAIHByaXZhdGU6CiAKICAgICBP
cHRpb25hbDxMYXlvdXRVbml0PiBtX21pbkNvbnRlbnRIZWlnaHQ7CiAgICAgT3B0aW9uYWw8TGF5
b3V0VW5pdD4gbV9tYXhDb250ZW50SGVpZ2h0OworCisgICAgaW50IG1fc21hbGxlc3RDb2x1bW5T
dGFydDsKKyAgICBpbnQgbV9zbWFsbGVzdFJvd1N0YXJ0OwogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0dyaWRD
b29yZGluYXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvR3JpZENvb3JkaW5h
dGUuaAppbmRleCA1MzU0YmQ2YmUwZDg2MDk0NjRiZWE5NzdlYTAwYzkxNTY3NWYyMTlmLi40NTZj
YWE3ZjY3NWI2MDhlNDc5Yzc1MTVkYzY0ZWE1MzlmOWM1ZmJkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvR3JpZENvb3JkaW5hdGUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvR3JpZENvb3JkaW5hdGUuaApAQCAtNDEsNyArNDEsNyBAQAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCiAvLyBSZWNvbW1lbmRlZCBtYXhpbXVtIHNpemUgZm9yIGJv
dGggZXhwbGljaXQgYW5kIGltcGxpY2l0IGdyaWRzLgotY29uc3QgdW5zaWduZWQga0dyaWRNYXhU
cmFja3MgPSAxMDAwMDAwOworY29uc3QgaW50IGtHcmlkTWF4VHJhY2tzID0gMTAwMDAwMDsKIAog
Ly8gQSBzcGFuIGluIGEgc2luZ2xlIGRpcmVjdGlvbiAoZWl0aGVyIHJvd3Mgb3IgY29sdW1ucyku
IE5vdGUgdGhhdCB8cmVzb2x2ZWRJbml0aWFsUG9zaXRpb258CiAvLyBhbmQgfHJlc29sdmVkRmlu
YWxQb3NpdGlvbnwgYXJlIGdyaWQgbGluZXMnIGluZGV4ZXMuCkBAIC00OSw5ICs0OSwxNCBAQCBj
b25zdCB1bnNpZ25lZCBrR3JpZE1heFRyYWNrcyA9IDEwMDAwMDA7CiBjbGFzcyBHcmlkU3BhbiB7
CiBwdWJsaWM6CiAKLSAgICBzdGF0aWMgR3JpZFNwYW4gZGVmaW5pdGVHcmlkU3Bhbih1bnNpZ25l
ZCByZXNvbHZlZEluaXRpYWxQb3NpdGlvbiwgdW5zaWduZWQgcmVzb2x2ZWRGaW5hbFBvc2l0aW9u
KQorICAgIHN0YXRpYyBHcmlkU3BhbiB1bnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKGludCBy
ZXNvbHZlZEluaXRpYWxQb3NpdGlvbiwgaW50IHJlc29sdmVkRmluYWxQb3NpdGlvbikKICAgICB7
Ci0gICAgICAgIHJldHVybiBHcmlkU3BhbihyZXNvbHZlZEluaXRpYWxQb3NpdGlvbiwgcmVzb2x2
ZWRGaW5hbFBvc2l0aW9uLCBEZWZpbml0ZSk7CisgICAgICAgIHJldHVybiBHcmlkU3BhbihyZXNv
bHZlZEluaXRpYWxQb3NpdGlvbiwgcmVzb2x2ZWRGaW5hbFBvc2l0aW9uLCBVbnRyYW5zbGF0ZWRE
ZWZpbml0ZSk7CisgICAgfQorCisgICAgc3RhdGljIEdyaWRTcGFuIHRyYW5zbGF0ZWREZWZpbml0
ZUdyaWRTcGFuKHVuc2lnbmVkIHJlc29sdmVkSW5pdGlhbFBvc2l0aW9uLCB1bnNpZ25lZCByZXNv
bHZlZEZpbmFsUG9zaXRpb24pCisgICAgeworICAgICAgICByZXR1cm4gR3JpZFNwYW4ocmVzb2x2
ZWRJbml0aWFsUG9zaXRpb24sIHJlc29sdmVkRmluYWxQb3NpdGlvbiwgVHJhbnNsYXRlZERlZmlu
aXRlKTsKICAgICB9CiAKICAgICBzdGF0aWMgR3JpZFNwYW4gaW5kZWZpbml0ZUdyaWRTcGFuKCkK
QEAgLTY2LDIwICs3MSwzMyBAQCBwdWJsaWM6CiAKICAgICB1bnNpZ25lZCBpbnRlZ2VyU3Bhbigp
IGNvbnN0CiAgICAgewotICAgICAgICBBU1NFUlQoaXNEZWZpbml0ZSgpKTsKKyAgICAgICAgQVNT
RVJUKGlzVHJhbnNsYXRlZERlZmluaXRlKCkpOwogICAgICAgICByZXR1cm4gbV9yZXNvbHZlZEZp
bmFsUG9zaXRpb24gLSBtX3Jlc29sdmVkSW5pdGlhbFBvc2l0aW9uOwogICAgIH0KIAorICAgIGlu
dCB1bnRyYW5zbGF0ZWRSZXNvbHZlZEluaXRpYWxQb3NpdGlvbigpIGNvbnN0CisgICAgeworICAg
ICAgICBBU1NFUlQobV90eXBlID09IFVudHJhbnNsYXRlZERlZmluaXRlKTsKKyAgICAgICAgcmV0
dXJuIG1fcmVzb2x2ZWRJbml0aWFsUG9zaXRpb247CisgICAgfQorCisgICAgaW50IHVudHJhbnNs
YXRlZFJlc29sdmVkRmluYWxQb3NpdGlvbigpIGNvbnN0CisgICAgeworICAgICAgICBBU1NFUlQo
bV90eXBlID09IFVudHJhbnNsYXRlZERlZmluaXRlKTsKKyAgICAgICAgcmV0dXJuIG1fcmVzb2x2
ZWRGaW5hbFBvc2l0aW9uOworICAgIH0KKwogICAgIHVuc2lnbmVkIHJlc29sdmVkSW5pdGlhbFBv
c2l0aW9uKCkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVChpc0RlZmluaXRlKCkpOworICAg
ICAgICBBU1NFUlQoaXNUcmFuc2xhdGVkRGVmaW5pdGUoKSk7CisgICAgICAgIEFTU0VSVChtX3Jl
c29sdmVkRmluYWxQb3NpdGlvbiA+PSAwKTsKICAgICAgICAgcmV0dXJuIG1fcmVzb2x2ZWRJbml0
aWFsUG9zaXRpb247CiAgICAgfQogCiAgICAgdW5zaWduZWQgcmVzb2x2ZWRGaW5hbFBvc2l0aW9u
KCkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVChpc0RlZmluaXRlKCkpOwotICAgICAgICBB
U1NFUlQobV9yZXNvbHZlZEZpbmFsUG9zaXRpb24pOworICAgICAgICBBU1NFUlQoaXNUcmFuc2xh
dGVkRGVmaW5pdGUoKSk7CisgICAgICAgIEFTU0VSVChtX3Jlc29sdmVkRmluYWxQb3NpdGlvbiA+
IDApOwogICAgICAgICByZXR1cm4gbV9yZXNvbHZlZEZpbmFsUG9zaXRpb247CiAgICAgfQogCkBA
IC05NywzNSArMTE1LDY1IEBAIHB1YmxpYzoKIAogICAgIEdyaWRTcGFuSXRlcmF0b3IgYmVnaW4o
KSBjb25zdAogICAgIHsKLSAgICAgICAgQVNTRVJUKGlzRGVmaW5pdGUoKSk7CisgICAgICAgIEFT
U0VSVChpc1RyYW5zbGF0ZWREZWZpbml0ZSgpKTsKICAgICAgICAgcmV0dXJuIG1fcmVzb2x2ZWRJ
bml0aWFsUG9zaXRpb247CiAgICAgfQogCiAgICAgR3JpZFNwYW5JdGVyYXRvciBlbmQoKSBjb25z
dAogICAgIHsKLSAgICAgICAgQVNTRVJUKGlzRGVmaW5pdGUoKSk7CisgICAgICAgIEFTU0VSVChp
c1RyYW5zbGF0ZWREZWZpbml0ZSgpKTsKICAgICAgICAgcmV0dXJuIG1fcmVzb2x2ZWRGaW5hbFBv
c2l0aW9uOwogICAgIH0KIAotICAgIGJvb2wgaXNEZWZpbml0ZSgpIGNvbnN0CisgICAgYm9vbCBp
c1RyYW5zbGF0ZWREZWZpbml0ZSgpIGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4gbV90eXBl
ID09IFRyYW5zbGF0ZWREZWZpbml0ZTsKKyAgICB9CisKKyAgICBib29sIGlzSW5kZWZpbml0ZSgp
IGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4gbV90eXBlID09IEluZGVmaW5pdGU7CisgICAg
fQorCisgICAgdm9pZCB0cmFuc2xhdGUodW5zaWduZWQgb2Zmc2V0KQogICAgIHsKLSAgICAgICAg
cmV0dXJuIG1fdHlwZSA9PSBEZWZpbml0ZTsKKyAgICAgICAgQVNTRVJUKG1fdHlwZSA9PSBVbnRy
YW5zbGF0ZWREZWZpbml0ZSk7CisKKyAgICAgICAgbV90eXBlID0gVHJhbnNsYXRlZERlZmluaXRl
OworICAgICAgICBtX3Jlc29sdmVkSW5pdGlhbFBvc2l0aW9uICs9IG9mZnNldDsKKyAgICAgICAg
bV9yZXNvbHZlZEZpbmFsUG9zaXRpb24gKz0gb2Zmc2V0OworCisgICAgICAgIEFTU0VSVChtX3Jl
c29sdmVkSW5pdGlhbFBvc2l0aW9uID49IDApOworICAgICAgICBBU1NFUlQobV9yZXNvbHZlZEZp
bmFsUG9zaXRpb24gPiAwKTsKICAgICB9CiAKIHByaXZhdGU6CiAKLSAgICBlbnVtIEdyaWRTcGFu
VHlwZSB7RGVmaW5pdGUsIEluZGVmaW5pdGV9OworICAgIGVudW0gR3JpZFNwYW5UeXBlIHtVbnRy
YW5zbGF0ZWREZWZpbml0ZSwgVHJhbnNsYXRlZERlZmluaXRlLCBJbmRlZmluaXRlfTsKIAotICAg
IEdyaWRTcGFuKHVuc2lnbmVkIHJlc29sdmVkSW5pdGlhbFBvc2l0aW9uLCB1bnNpZ25lZCByZXNv
bHZlZEZpbmFsUG9zaXRpb24sIEdyaWRTcGFuVHlwZSB0eXBlKQotICAgICAgICA6IG1fcmVzb2x2
ZWRJbml0aWFsUG9zaXRpb24oc3RkOjptaW4ocmVzb2x2ZWRJbml0aWFsUG9zaXRpb24sIGtHcmlk
TWF4VHJhY2tzIC0gMSkpCi0gICAgICAgICwgbV9yZXNvbHZlZEZpbmFsUG9zaXRpb24oc3RkOjpt
aW4ocmVzb2x2ZWRGaW5hbFBvc2l0aW9uLCBrR3JpZE1heFRyYWNrcykpCi0gICAgICAgICwgbV90
eXBlKHR5cGUpCisgICAgR3JpZFNwYW4oaW50IHJlc29sdmVkSW5pdGlhbFBvc2l0aW9uLCBpbnQg
cmVzb2x2ZWRGaW5hbFBvc2l0aW9uLCBHcmlkU3BhblR5cGUgdHlwZSkKKyAgICAgICAgOiBtX3R5
cGUodHlwZSkKICAgICB7CisjaWYgRU5BQkxFKEFTU0VSVCkKICAgICAgICAgQVNTRVJUKHJlc29s
dmVkSW5pdGlhbFBvc2l0aW9uIDwgcmVzb2x2ZWRGaW5hbFBvc2l0aW9uKTsKKyAgICAgICAgaWYg
KHR5cGUgPT0gVHJhbnNsYXRlZERlZmluaXRlKSB7CisgICAgICAgICAgICBBU1NFUlQocmVzb2x2
ZWRJbml0aWFsUG9zaXRpb24gPj0gMCk7CisgICAgICAgICAgICBBU1NFUlQocmVzb2x2ZWRGaW5h
bFBvc2l0aW9uID4gMCk7CisgICAgICAgIH0KKyNlbmRpZgorCisgICAgICAgIGlmIChyZXNvbHZl
ZEluaXRpYWxQb3NpdGlvbiA+PSAwKQorICAgICAgICAgICAgbV9yZXNvbHZlZEluaXRpYWxQb3Np
dGlvbiA9IHN0ZDo6bWluKHJlc29sdmVkSW5pdGlhbFBvc2l0aW9uLCBrR3JpZE1heFRyYWNrcyAt
IDEpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBtX3Jlc29sdmVkSW5pdGlhbFBvc2l0aW9u
ID0gc3RkOjptYXgocmVzb2x2ZWRJbml0aWFsUG9zaXRpb24sIC1rR3JpZE1heFRyYWNrcyk7Cisg
ICAgICAgIGlmIChyZXNvbHZlZEZpbmFsUG9zaXRpb24gPj0gMCkKKyAgICAgICAgICAgIG1fcmVz
b2x2ZWRGaW5hbFBvc2l0aW9uID0gc3RkOjptaW4ocmVzb2x2ZWRGaW5hbFBvc2l0aW9uLCBrR3Jp
ZE1heFRyYWNrcyk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fcmVzb2x2ZWRGaW5hbFBv
c2l0aW9uID0gc3RkOjptYXgocmVzb2x2ZWRGaW5hbFBvc2l0aW9uLCAta0dyaWRNYXhUcmFja3Mg
KyAxKTsKICAgICB9CiAKLSAgICB1bnNpZ25lZCBtX3Jlc29sdmVkSW5pdGlhbFBvc2l0aW9uOwot
ICAgIHVuc2lnbmVkIG1fcmVzb2x2ZWRGaW5hbFBvc2l0aW9uOworICAgIGludCBtX3Jlc29sdmVk
SW5pdGlhbFBvc2l0aW9uOworICAgIGludCBtX3Jlc29sdmVkRmluYWxQb3NpdGlvbjsKICAgICBH
cmlkU3BhblR5cGUgbV90eXBlOwogCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9HcmlkUmVzb2x2ZWRQb3NpdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvR3JpZFJlc29sdmVkUG9zaXRpb24uY3BwCmluZGV4IDU5YTFkYmRhYTk4NDlm
OWRkMjc5YzZiMzA2N2I5YjJmMjU5NWVlNTQuLjUxOTc4N2JkMTYzM2JkMTVkMTc4N2EwZjVkZTcz
YTA0NTM2NzE3Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9H
cmlkUmVzb2x2ZWRQb3NpdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL0dyaWRSZXNvbHZlZFBvc2l0aW9uLmNwcApAQCAtMTQwLDcgKzE0MCw3IEBAIHN0YXRpYyB1
bnNpZ25lZCByZXNvbHZlTmFtZWRHcmlkTGluZVBvc2l0aW9uRnJvbVN0eWxlKGNvbnN0IFJlbmRl
clN0eWxlJiBncmlkQ29uCiBzdGF0aWMgR3JpZFNwYW4gcmVzb2x2ZVJvd1N0YXJ0Q29sdW1uU3Rh
cnROYW1lZEdyaWRMaW5lUG9zaXRpb25BZ2FpbnN0T3Bwb3NpdGVQb3NpdGlvbih1bnNpZ25lZCBy
ZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24sIGNvbnN0IEdyaWRQb3NpdGlvbiYgcG9zaXRpb24sIGNv
bnN0IFZlY3Rvcjx1bnNpZ25lZD4mIGdyaWRMaW5lcykKIHsKICAgICBpZiAoIXJlc29sdmVkT3Bw
b3NpdGVQb3NpdGlvbikKLSAgICAgICAgcmV0dXJuIEdyaWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFu
KHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiwgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uICsgMSk7
CisgICAgICAgIHJldHVybiBHcmlkU3Bhbjo6dW50cmFuc2xhdGVkRGVmaW5pdGVHcmlkU3Bhbihy
ZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24sIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiArIDEpOwog
CiAgICAgdW5zaWduZWQgZmlyc3RMaW5lQmVmb3JlUG9zaXRpb25JbmRleCA9IDA7CiAgICAgYXV0
byBmaXJzdExpbmVCZWZvcmVQb3NpdGlvbiA9IHN0ZDo6bG93ZXJfYm91bmQoZ3JpZExpbmVzLmJl
Z2luKCksIGdyaWRMaW5lcy5lbmQoKSwgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uKTsKQEAgLTE1
Miw3ICsxNTIsNyBAQCBzdGF0aWMgR3JpZFNwYW4gcmVzb2x2ZVJvd1N0YXJ0Q29sdW1uU3RhcnRO
YW1lZEdyaWRMaW5lUG9zaXRpb25BZ2FpbnN0T3Bwb3NpdGVQbwogICAgIHVuc2lnbmVkIHJlc29s
dmVkR3JpZExpbmVQb3NpdGlvbiA9IGdyaWRMaW5lc1tncmlkTGluZUluZGV4XTsKICAgICBpZiAo
cmVzb2x2ZWRHcmlkTGluZVBvc2l0aW9uID49IHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbikKICAg
ICAgICAgcmVzb2x2ZWRHcmlkTGluZVBvc2l0aW9uID0gcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9u
IC0gMTsKLSAgICByZXR1cm4gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4oc3RkOjptaW4ocmVz
b2x2ZWRHcmlkTGluZVBvc2l0aW9uLCByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24pLCByZXNvbHZl
ZE9wcG9zaXRlUG9zaXRpb24pOworICAgIHJldHVybiBHcmlkU3Bhbjo6dW50cmFuc2xhdGVkRGVm
aW5pdGVHcmlkU3BhbihzdGQ6Om1pbihyZXNvbHZlZEdyaWRMaW5lUG9zaXRpb24sIHJlc29sdmVk
T3Bwb3NpdGVQb3NpdGlvbiksIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbik7CiB9CiAKIHN0YXRp
YyBHcmlkU3BhbiByZXNvbHZlUm93RW5kQ29sdW1uRW5kTmFtZWRHcmlkTGluZVBvc2l0aW9uQWdh
aW5zdE9wcG9zaXRlUG9zaXRpb24odW5zaWduZWQgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uLCBj
b25zdCBHcmlkUG9zaXRpb24mIHBvc2l0aW9uLCBjb25zdCBWZWN0b3I8dW5zaWduZWQ+JiBncmlk
TGluZXMpCkBAIC0xNjcsNyArMTY3LDcgQEAgc3RhdGljIEdyaWRTcGFuIHJlc29sdmVSb3dFbmRD
b2x1bW5FbmROYW1lZEdyaWRMaW5lUG9zaXRpb25BZ2FpbnN0T3Bwb3NpdGVQb3NpdGkKICAgICB1
bnNpZ25lZCByZXNvbHZlZEdyaWRMaW5lUG9zaXRpb24gPSBncmlkTGluZXNbZ3JpZExpbmVJbmRl
eF07CiAgICAgaWYgKHJlc29sdmVkR3JpZExpbmVQb3NpdGlvbiA8PSByZXNvbHZlZE9wcG9zaXRl
UG9zaXRpb24pCiAgICAgICAgIHJlc29sdmVkR3JpZExpbmVQb3NpdGlvbiA9IHJlc29sdmVkT3Bw
b3NpdGVQb3NpdGlvbiArIDE7Ci0gICAgcmV0dXJuIEdyaWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFu
KHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiwgcmVzb2x2ZWRHcmlkTGluZVBvc2l0aW9uKTsKKyAg
ICByZXR1cm4gR3JpZFNwYW46OnVudHJhbnNsYXRlZERlZmluaXRlR3JpZFNwYW4ocmVzb2x2ZWRP
cHBvc2l0ZVBvc2l0aW9uLCByZXNvbHZlZEdyaWRMaW5lUG9zaXRpb24pOwogfQogCiBzdGF0aWMg
R3JpZFNwYW4gcmVzb2x2ZU5hbWVkR3JpZExpbmVQb3NpdGlvbkFnYWluc3RPcHBvc2l0ZVBvc2l0
aW9uKGNvbnN0IFJlbmRlclN0eWxlJiBncmlkQ29udGFpbmVyU3R5bGUsIHVuc2lnbmVkIHJlc29s
dmVkT3Bwb3NpdGVQb3NpdGlvbiwgY29uc3QgR3JpZFBvc2l0aW9uJiBwb3NpdGlvbiwgR3JpZFBv
c2l0aW9uU2lkZSBzaWRlKQpAQCAtMTgzLDkgKzE4Myw5IEBAIHN0YXRpYyBHcmlkU3BhbiByZXNv
bHZlTmFtZWRHcmlkTGluZVBvc2l0aW9uQWdhaW5zdE9wcG9zaXRlUG9zaXRpb24oY29uc3QgUmVu
ZGVyCiAgICAgLy8gSWYgdGhlcmUgaXMgbm8gbmFtZWQgZ3JpZCBsaW5lIG9mIHRoYXQgbmFtZSwg
d2UgcmVzb2x2ZSB0aGUgcG9zaXRpb24gdG8gJ2F1dG8nICh3aGljaCBpcyBlcXVpdmFsZW50IHRv
ICdzcGFuIDEnIGluIHRoaXMgY2FzZSkuCiAgICAgLy8gU2VlIGh0dHA6Ly9saXN0cy53My5vcmcv
QXJjaGl2ZXMvUHVibGljL3d3dy1zdHlsZS8yMDEzSnVuLzAzOTQuaHRtbC4KICAgICBpZiAoaXQg
PT0gZ3JpZExpbmVzTmFtZXMuZW5kKCkpIHsKLSAgICAgICAgaWYgKGlzU3RhcnRTaWRlKHNpZGUp
ICYmIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbikKLSAgICAgICAgICAgIHJldHVybiBHcmlkU3Bh
bjo6ZGVmaW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24gLSAxLCByZXNvbHZl
ZE9wcG9zaXRlUG9zaXRpb24pOwotICAgICAgICByZXR1cm4gR3JpZFNwYW46OmRlZmluaXRlR3Jp
ZFNwYW4ocmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uLCByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24g
KyAxKTsKKyAgICAgICAgaWYgKGlzU3RhcnRTaWRlKHNpZGUpKQorICAgICAgICAgICAgcmV0dXJu
IEdyaWRTcGFuOjp1bnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKHJlc29sdmVkT3Bwb3NpdGVQ
b3NpdGlvbiAtIDEsIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbik7CisgICAgICAgIHJldHVybiBH
cmlkU3Bhbjo6dW50cmFuc2xhdGVkRGVmaW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9z
aXRpb24sIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiArIDEpOwogICAgIH0KIAogICAgIGlmIChz
aWRlID09IFJvd1N0YXJ0U2lkZSB8fCBzaWRlID09IENvbHVtblN0YXJ0U2lkZSkKQEAgLTE5Nyw5
ICsxOTcsOSBAQCBzdGF0aWMgR3JpZFNwYW4gcmVzb2x2ZU5hbWVkR3JpZExpbmVQb3NpdGlvbkFn
YWluc3RPcHBvc2l0ZVBvc2l0aW9uKGNvbnN0IFJlbmRlcgogc3RhdGljIEdyaWRTcGFuIHJlc29s
dmVHcmlkUG9zaXRpb25BZ2FpbnN0T3Bwb3NpdGVQb3NpdGlvbihjb25zdCBSZW5kZXJTdHlsZSYg
Z3JpZENvbnRhaW5lclN0eWxlLCB1bnNpZ25lZCByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24sIGNv
bnN0IEdyaWRQb3NpdGlvbiYgcG9zaXRpb24sIEdyaWRQb3NpdGlvblNpZGUgc2lkZSkKIHsKICAg
ICBpZiAocG9zaXRpb24uaXNBdXRvKCkpIHsKLSAgICAgICAgaWYgKGlzU3RhcnRTaWRlKHNpZGUp
ICYmIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbikKLSAgICAgICAgICAgIHJldHVybiBHcmlkU3Bh
bjo6ZGVmaW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24gLSAxLCByZXNvbHZl
ZE9wcG9zaXRlUG9zaXRpb24pOwotICAgICAgICByZXR1cm4gR3JpZFNwYW46OmRlZmluaXRlR3Jp
ZFNwYW4ocmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uLCByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24g
KyAxKTsKKyAgICAgICAgaWYgKGlzU3RhcnRTaWRlKHNpZGUpKQorICAgICAgICAgICAgcmV0dXJu
IEdyaWRTcGFuOjp1bnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKHJlc29sdmVkT3Bwb3NpdGVQ
b3NpdGlvbiAtIDEsIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbik7CisgICAgICAgIHJldHVybiBH
cmlkU3Bhbjo6dW50cmFuc2xhdGVkRGVmaW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9z
aXRpb24sIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiArIDEpOwogICAgIH0KIAogICAgIEFTU0VS
VChwb3NpdGlvbi5pc1NwYW4oKSk7CkBAIC0yMTMsMTUgKzIxMywxMCBAQCBzdGF0aWMgR3JpZFNw
YW4gcmVzb2x2ZUdyaWRQb3NpdGlvbkFnYWluc3RPcHBvc2l0ZVBvc2l0aW9uKGNvbnN0IFJlbmRl
clN0eWxlJiBncgogICAgIC8vICdzcGFuIDEnIGlzIGNvbnRhaW5lZCBpbnNpZGUgYSBzaW5nbGUg
Z3JpZCB0cmFjayByZWdhcmRsZXNzIG9mIHRoZSBkaXJlY3Rpb24uCiAgICAgLy8gVGhhdCdzIHdo
eSB0aGUgQ1NTIHNwYW4gdmFsdWUgaXMgb25lIG1vcmUgdGhhbiB0aGUgb2Zmc2V0IHdlIGFwcGx5
LgogICAgIHVuc2lnbmVkIHBvc2l0aW9uT2Zmc2V0ID0gcG9zaXRpb24uc3BhblBvc2l0aW9uKCk7
Ci0gICAgaWYgKGlzU3RhcnRTaWRlKHNpZGUpKSB7Ci0gICAgICAgIGlmICghcmVzb2x2ZWRPcHBv
c2l0ZVBvc2l0aW9uKQotICAgICAgICAgICAgcmV0dXJuIEdyaWRTcGFuOjpkZWZpbml0ZUdyaWRT
cGFuKHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiwgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uICsg
MSk7CisgICAgaWYgKGlzU3RhcnRTaWRlKHNpZGUpKQorICAgICAgICByZXR1cm4gR3JpZFNwYW46
OnVudHJhbnNsYXRlZERlZmluaXRlR3JpZFNwYW4ocmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uIC0g
cG9zaXRpb25PZmZzZXQsIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbik7CiAKLSAgICAgICAgdW5z
aWduZWQgaW5pdGlhbFJlc29sdmVkUG9zaXRpb24gPSBzdGQ6Om1heDxpbnQ+KDAsIHJlc29sdmVk
T3Bwb3NpdGVQb3NpdGlvbiAtIHBvc2l0aW9uT2Zmc2V0KTsKLSAgICAgICAgcmV0dXJuIEdyaWRT
cGFuOjpkZWZpbml0ZUdyaWRTcGFuKGluaXRpYWxSZXNvbHZlZFBvc2l0aW9uLCByZXNvbHZlZE9w
cG9zaXRlUG9zaXRpb24pOwotICAgIH0KLQotICAgIHJldHVybiBHcmlkU3Bhbjo6ZGVmaW5pdGVH
cmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24sIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlv
biArIHBvc2l0aW9uT2Zmc2V0KTsKKyAgICByZXR1cm4gR3JpZFNwYW46OnVudHJhbnNsYXRlZERl
ZmluaXRlR3JpZFNwYW4ocmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uLCByZXNvbHZlZE9wcG9zaXRl
UG9zaXRpb24gKyBwb3NpdGlvbk9mZnNldCk7CiB9CiAKIHVuc2lnbmVkIEdyaWRSZXNvbHZlZFBv
c2l0aW9uOjpzcGFuU2l6ZUZvckF1dG9QbGFjZWRJdGVtKGNvbnN0IFJlbmRlclN0eWxlJiBncmlk
Q29udGFpbmVyU3R5bGUsIGNvbnN0IFJlbmRlckJveCYgZ3JpZEl0ZW0sIEdyaWRUcmFja1Npemlu
Z0RpcmVjdGlvbiBkaXJlY3Rpb24pCkBAIC0yNDIsNyArMjM3LDcgQEAgdW5zaWduZWQgR3JpZFJl
c29sdmVkUG9zaXRpb246OnNwYW5TaXplRm9yQXV0b1BsYWNlZEl0ZW0oY29uc3QgUmVuZGVyU3R5
bGUmIGdyaWQKICAgICByZXR1cm4gcG9zaXRpb24uc3BhblBvc2l0aW9uKCk7CiB9CiAKLXN0YXRp
YyB1bnNpZ25lZCByZXNvbHZlR3JpZFBvc2l0aW9uRnJvbVN0eWxlKGNvbnN0IFJlbmRlclN0eWxl
JiBncmlkQ29udGFpbmVyU3R5bGUsIGNvbnN0IEdyaWRQb3NpdGlvbiYgcG9zaXRpb24sIEdyaWRQ
b3NpdGlvblNpZGUgc2lkZSkKK3N0YXRpYyBpbnQgcmVzb2x2ZUdyaWRQb3NpdGlvbkZyb21TdHls
ZShjb25zdCBSZW5kZXJTdHlsZSYgZ3JpZENvbnRhaW5lclN0eWxlLCBjb25zdCBHcmlkUG9zaXRp
b24mIHBvc2l0aW9uLCBHcmlkUG9zaXRpb25TaWRlIHNpZGUpCiB7CiAgICAgc3dpdGNoIChwb3Np
dGlvbi50eXBlKCkpIHsKICAgICBjYXNlIEV4cGxpY2l0UG9zaXRpb246IHsKQEAgLTI1OCwxMCAr
MjUzLDYgQEAgc3RhdGljIHVuc2lnbmVkIHJlc29sdmVHcmlkUG9zaXRpb25Gcm9tU3R5bGUoY29u
c3QgUmVuZGVyU3R5bGUmIGdyaWRDb250YWluZXJTdHkKICAgICAgICAgdW5zaWduZWQgcmVzb2x2
ZWRQb3NpdGlvbiA9IGFicyhwb3NpdGlvbi5pbnRlZ2VyUG9zaXRpb24oKSkgLSAxOwogICAgICAg
ICBjb25zdCB1bnNpZ25lZCBlbmRPZlRyYWNrID0gZXhwbGljaXRHcmlkU2l6ZUZvclNpZGUoZ3Jp
ZENvbnRhaW5lclN0eWxlLCBzaWRlKTsKIAotICAgICAgICAvLyBQZXIgaHR0cDovL2xpc3RzLncz
Lm9yZy9BcmNoaXZlcy9QdWJsaWMvd3d3LXN0eWxlLzIwMTNNYXIvMDU4OS5odG1sLCB3ZSBjbGFt
cCBuZWdhdGl2ZSB2YWx1ZSB0byB0aGUgZmlyc3QgbGluZS4KLSAgICAgICAgaWYgKGVuZE9mVHJh
Y2sgPCByZXNvbHZlZFBvc2l0aW9uKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0KICAgICAgICAg
cmV0dXJuIGVuZE9mVHJhY2sgLSByZXNvbHZlZFBvc2l0aW9uOwogICAgIH0KICAgICBjYXNlIE5h
bWVkR3JpZEFyZWFQb3NpdGlvbjoKQEAgLTMyMywxNSArMzE0LDE1IEBAIEdyaWRTcGFuIEdyaWRS
ZXNvbHZlZFBvc2l0aW9uOjpyZXNvbHZlR3JpZFBvc2l0aW9uc0Zyb21TdHlsZShjb25zdCBSZW5k
ZXJTdHlsZSYKICAgICAgICAgcmV0dXJuIHJlc29sdmVHcmlkUG9zaXRpb25BZ2FpbnN0T3Bwb3Np
dGVQb3NpdGlvbihncmlkQ29udGFpbmVyU3R5bGUsIGluaXRpYWxSZXNvbHZlZFBvc2l0aW9uLCBm
aW5hbFBvc2l0aW9uLCBmaW5hbFNpZGUpOwogICAgIH0KIAotICAgIHVuc2lnbmVkIHJlc29sdmVk
SW5pdGlhbFBvc2l0aW9uID0gcmVzb2x2ZUdyaWRQb3NpdGlvbkZyb21TdHlsZShncmlkQ29udGFp
bmVyU3R5bGUsIGluaXRpYWxQb3NpdGlvbiwgaW5pdGlhbFNpZGUpOwotICAgIHVuc2lnbmVkIHJl
c29sdmVkRmluYWxQb3NpdGlvbiA9IHJlc29sdmVHcmlkUG9zaXRpb25Gcm9tU3R5bGUoZ3JpZENv
bnRhaW5lclN0eWxlLCBmaW5hbFBvc2l0aW9uLCBmaW5hbFNpZGUpOworICAgIGludCByZXNvbHZl
ZEluaXRpYWxQb3NpdGlvbiA9IHJlc29sdmVHcmlkUG9zaXRpb25Gcm9tU3R5bGUoZ3JpZENvbnRh
aW5lclN0eWxlLCBpbml0aWFsUG9zaXRpb24sIGluaXRpYWxTaWRlKTsKKyAgICBpbnQgcmVzb2x2
ZWRGaW5hbFBvc2l0aW9uID0gcmVzb2x2ZUdyaWRQb3NpdGlvbkZyb21TdHlsZShncmlkQ29udGFp
bmVyU3R5bGUsIGZpbmFsUG9zaXRpb24sIGZpbmFsU2lkZSk7CiAKICAgICBpZiAocmVzb2x2ZWRJ
bml0aWFsUG9zaXRpb24gPiByZXNvbHZlZEZpbmFsUG9zaXRpb24pCiAgICAgICAgIHN0ZDo6c3dh
cChyZXNvbHZlZEluaXRpYWxQb3NpdGlvbiwgcmVzb2x2ZWRGaW5hbFBvc2l0aW9uKTsKICAgICBl
bHNlIGlmIChyZXNvbHZlZEluaXRpYWxQb3NpdGlvbiA9PSByZXNvbHZlZEZpbmFsUG9zaXRpb24p
CiAgICAgICAgIHJlc29sdmVkRmluYWxQb3NpdGlvbiA9IHJlc29sdmVkSW5pdGlhbFBvc2l0aW9u
ICsgMTsKIAotICAgIHJldHVybiBHcmlkU3Bhbjo6ZGVmaW5pdGVHcmlkU3BhbihyZXNvbHZlZElu
aXRpYWxQb3NpdGlvbiwgc3RkOjptYXgocmVzb2x2ZWRJbml0aWFsUG9zaXRpb24sIHJlc29sdmVk
RmluYWxQb3NpdGlvbikpOworICAgIHJldHVybiBHcmlkU3Bhbjo6dW50cmFuc2xhdGVkRGVmaW5p
dGVHcmlkU3BhbihyZXNvbHZlZEluaXRpYWxQb3NpdGlvbiwgc3RkOjptYXgocmVzb2x2ZWRJbml0
aWFsUG9zaXRpb24sIHJlc29sdmVkRmluYWxQb3NpdGlvbikpOwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKaW5kZXggYjgyMDkyN2E4YzhjN2VhZjBjYzUxOTY1YzU0YjljMDNkNGU2NjQ0
Mi4uNDU0ODYyNmQ1MDc0MjM1OTYwODQ0MTU1ZmQwZDYyNTUxYTY3M2FmOSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE4IEBACisyMDE2LTAzLTA3ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2Fs
aWEuY29tPgorCisgICAgICAgIFtjc3MtZ3JpZF0gSW5pdGlhbCBzdXBwb3J0IGZvciBpbXBsaWNp
dCBncmlkIGJlZm9yZSBleHBsaWNpdCBncmlkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNTUwMTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBVcGRhdGVkIHJlc3VsdHMgaW4gY3VycmVudCB0ZXN0cyBhbmQg
YWRkZWQgc3BlY2lmaWMgdGVzdCBmb3IgdGhpcy4KKworICAgICAgICAqIGZhc3QvY3NzLWdyaWQt
bGF5b3V0L2dyaWQtYXV0by1mbG93LXJlc29sdXRpb24uaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nz
cy1ncmlkLWxheW91dC9ncmlkLWl0ZW0tbmVnYXRpdmUtcG9zaXRpb24tcmVzb2x1dGlvbi5odG1s
OgorICAgICAgICAqIGZhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRlbS1zcGFubmluZy1yZXNv
bHV0aW9uLmh0bWw6CisgICAgICAgICogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvaW1wbGljaXQtdHJh
Y2tzLWJlZm9yZS1leHBsaWNpdC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
Y3NzLWdyaWQtbGF5b3V0L2ltcGxpY2l0LXRyYWNrcy1iZWZvcmUtZXhwbGljaXQuaHRtbDogQWRk
ZWQuCisKIDIwMTYtMDMtMDcgIEFkYW0gQmVyZ2t2aXN0ICA8YWRhbS5iZXJna3Zpc3RAZXJpY3Nz
b24uY29tPgogCiAgICAgICAgIFdlYlJUQzogSW1wbGVtZW50IE1lZGlhRW5kcG9pbnRQZWVyQ29u
bmVjdGlvbjo6Y3JlYXRlT2ZmZXIoKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mt
Z3JpZC1sYXlvdXQvZ3JpZC1hdXRvLWZsb3ctcmVzb2x1dGlvbi5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1hdXRvLWZsb3ctcmVzb2x1dGlvbi5odG1sCmluZGV4
IDE5M2U5ZGQ2M2FiNWU4ZWZhNzA3ZWM1MDNlYjA3MWQ2MjM3MjczOWYuLjlmNzZjNGZiOWQzYmVm
ZDk2NDhlYmU4NzgwNWExNmU2MjFiOWY4NTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzLWdyaWQtbGF5b3V0L2dyaWQtYXV0by1mbG93LXJlc29sdXRpb24uaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWF1dG8tZmxvdy1yZXNvbHV0aW9uLmh0
bWwKQEAgLTIzLDggKzIzLDYgQEAKICAgICAtd2Via2l0LWdyaWQtY29sdW1uOiBhdXRvIC8gODsK
IH0KIAotLyogVGhlc2UgMiBjbGFzc2VzIGZvcmNlcyB0aGUgZ3JpZCB0byBiZSBzaXplZCBhZnRl
ciB0aGUgZ3JpZC17Y29sdW1ufHJvd30tZW5kLCB0aHVzIGVuZCB1cCBpbiB0aGUKLSAgIGZpcnN0
IHJvdyAvIGNvbHVtbnMuICovCiAubmVnYXRpdmVPdmVyZmxvd2luZ1Jvd0ZpcnN0Q29sdW1uIHsK
ICAgICAtd2Via2l0LWdyaWQtcm93OiBhdXRvIC8gLTEwOwogICAgIC13ZWJraXQtZ3JpZC1jb2x1
bW46IDE7CkBAIC0xNTMsMTUgKzE1MSwxNSBAQAogCiA8ZGl2IGNsYXNzPSJ1bmNvbnN0cmFpbmVk
Q29udGFpbmVyIj4KICAgICA8ZGl2IGNsYXNzPSJncmlkIGJpZ0dyaWQgZ3JpZEF1dG9GbG93Q29s
dW1uU3BhcnNlIGp1c3RpZnlDb250ZW50U3RhcnQiPgotICAgICAgICA8ZGl2IGNsYXNzPSJzaXpl
ZFRvR3JpZEFyZWEgbmVnYXRpdmVPdmVyZmxvd2luZ1Jvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNl
dC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1MCIgZGF0YS1l
eHBlY3RlZC1oZWlnaHQ9IjUwIj5YWFhYWCBYWFhYWCBYWFhYWDwvZGl2PgotICAgICAgICA8ZGl2
IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgc2Vjb25kUm93TmVnYXRpdmVPdmVyZmxvd2luZ0NvbHVt
biIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iNTAiIGRhdGEtZXhwZWN0ZWQtd2lk
dGg9IjUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAwIj5YWFhYWCBYWFhYWCBYWFhYWDwvZGl2
PgorICAgICAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgbmVnYXRpdmVPdmVyZmxvd2lu
Z1Jvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIxNzAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMzAiPlhYWFhYIFhY
WFhYIFhYWFhYPC9kaXY+CisgICAgICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBzZWNv
bmRSb3dOZWdhdGl2ZU92ZXJmbG93aW5nQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9m
ZnNldC15PSI4MCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTcwIiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iMTAwIj5YWFhYWCBYWFhYWCBYWFhYWDwvZGl2PgogICAgIDwvZGl2PgogPC9kaXY+CiAKIDxk
aXYgY2xhc3M9InVuY29uc3RyYWluZWRDb250YWluZXIiPgogICAgIDxkaXYgY2xhc3M9ImdyaWQg
YmlnR3JpZCBncmlkQXV0b0Zsb3dSb3dTcGFyc2UganVzdGlmeUNvbnRlbnRTdGFydCI+Ci0gICAg
ICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBuZWdhdGl2ZU92ZXJmbG93aW5nUm93Rmly
c3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0
ZWQtd2lkdGg9IjUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYWFhYIFhYWFhYIFhYWFhY
PC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBzZWNvbmRSb3dOZWdh
dGl2ZU92ZXJmbG93aW5nQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSI1
MCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMDAiPlhY
WFhYIFhYWFhYIFhYWFhYPC9kaXY+CisgICAgICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJl
YSBuZWdhdGl2ZU92ZXJmbG93aW5nUm93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjE3MCIg
ZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNTAiIGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSIzMCI+WFhYWFggWFhYWFggWFhYWFg8L2Rpdj4KKyAgICAgICAgPGRpdiBjbGFzcz0i
c2l6ZWRUb0dyaWRBcmVhIHNlY29uZFJvd05lZ2F0aXZlT3ZlcmZsb3dpbmdDb2x1bW4iIGRhdGEt
b2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjgwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxNzAi
IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMDAiPlhYWFhYIFhYWFhYIFhYWFhYPC9kaXY+CiAgICAg
PC9kaXY+CiA8L2Rpdj4KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1s
YXlvdXQvZ3JpZC1pdGVtLW5lZ2F0aXZlLXBvc2l0aW9uLXJlc29sdXRpb24uaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRlbS1uZWdhdGl2ZS1wb3NpdGlvbi1y
ZXNvbHV0aW9uLmh0bWwKaW5kZXggM2YyYmI3Nzk5OGMzZjQxZTM0MjVlN2M4YTQyY2ViN2Q2ZDk5
ODFmMi4uZjYxYzlhMzFiNzlmM2M0ZjdkNjdiZWNmOGM2MGE4MmUzMTkxMWJhOSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1pdGVtLW5lZ2F0aXZlLXBv
c2l0aW9uLXJlc29sdXRpb24uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxh
eW91dC9ncmlkLWl0ZW0tbmVnYXRpdmUtcG9zaXRpb24tcmVzb2x1dGlvbi5odG1sCkBAIC0xNTgs
OCArMTU4LDggQEAKIDwvZGl2PgogCiA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogcmVsYXRpdmUiPgot
PGRpdiBjbGFzcz0iZ3JpZCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTUwIiBkYXRhLWV4cGVjdGVk
LWhlaWdodD0iMTUwIj4KLSAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgbmVnYXRpdmVF
bmRQb3NpdGlvblN0YXJ0U3BhbkluUm93RGlyZWN0aW9uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRh
LW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1MCIgZGF0YS1leHBlY3RlZC1oZWln
aHQ9IjE1MCI+PC9kaXY+Cis8ZGl2IGNsYXNzPSJncmlkIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIx
NTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI3NTAiPgorICAgIDxkaXYgY2xhc3M9InNpemVkVG9H
cmlkQXJlYSBuZWdhdGl2ZUVuZFBvc2l0aW9uU3RhcnRTcGFuSW5Sb3dEaXJlY3Rpb24iIGRhdGEt
b2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjUwIiBk
YXRhLWV4cGVjdGVkLWhlaWdodD0iNzUwIj48L2Rpdj4KIDwvZGl2PgogPC9kaXY+CiAKQEAgLTE3
MCw4ICsxNzAsOCBAQAogPC9kaXY+CiAKIDxkaXYgc3R5bGU9InBvc2l0aW9uOiByZWxhdGl2ZSI+
Ci08ZGl2IGNsYXNzPSJncmlkIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxNTAiIGRhdGEtZXhwZWN0
ZWQtaGVpZ2h0PSIxNTAiPgotICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBuZWdhdGl2
ZU5hbWVkR3JpZExpbmVFbmRQb3NpdGlvblN0YXJ0U3BhbkluUm93RGlyZWN0aW9uIiBkYXRhLW9m
ZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1MCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjE1MCI+PC9kaXY+Cis8ZGl2IGNsYXNzPSJncmlkIiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSIxNTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI3NTAiPgorICAgIDxkaXYg
Y2xhc3M9InNpemVkVG9HcmlkQXJlYSBuZWdhdGl2ZU5hbWVkR3JpZExpbmVFbmRQb3NpdGlvblN0
YXJ0U3BhbkluUm93RGlyZWN0aW9uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIw
IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9Ijc1MCI+PC9k
aXY+CiA8L2Rpdj4KIDwvZGl2PgogCkBAIC0xODIsOCArMTgyLDggQEAKIDwvZGl2PgogCiA8ZGl2
IHN0eWxlPSJwb3NpdGlvbjogcmVsYXRpdmUiPgotPGRpdiBjbGFzcz0iZ3JpZCIgZGF0YS1leHBl
Y3RlZC13aWR0aD0iMTUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTUwIj4KLSAgICA8ZGl2IGNs
YXNzPSJzaXplZFRvR3JpZEFyZWEgbmVnYXRpdmVFbmRQb3NpdGlvblN0YXJ0TmVnYXRpdmVJblJv
d0RpcmVjdGlvbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBl
Y3RlZC13aWR0aD0iNTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+PC9kaXY+Cis8ZGl2IGNs
YXNzPSJncmlkIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1NTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0
PSIxNTAiPgorICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBuZWdhdGl2ZUVuZFBvc2l0
aW9uU3RhcnROZWdhdGl2ZUluUm93RGlyZWN0aW9uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9m
ZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI0NTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0
PSI1MCI+PC9kaXY+CiA8L2Rpdj4KIDwvZGl2PgogCkBAIC0xOTQsOCArMTk0LDggQEAKIDwvZGl2
PgogCiA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogcmVsYXRpdmUiPgotPGRpdiBjbGFzcz0iZ3JpZCIg
ZGF0YS1leHBlY3RlZC13aWR0aD0iMTUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTUwIj4KLSAg
ICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgbmFtZWRHcmlkTGluZUVuZFBvc2l0aW9uU3Rh
cnROZWdhdGl2ZUluUm93RGlyZWN0aW9uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15
PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj48
L2Rpdj4KKzxkaXYgY2xhc3M9ImdyaWQiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjU1MCIgZGF0YS1l
eHBlY3RlZC1oZWlnaHQ9IjE1MCI+CisgICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIG5h
bWVkR3JpZExpbmVFbmRQb3NpdGlvblN0YXJ0TmVnYXRpdmVJblJvd0RpcmVjdGlvbiIgZGF0YS1v
ZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNDUwIiBk
YXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPjwvZGl2PgogPC9kaXY+CiA8L2Rpdj4KIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1pdGVtLXNwYW5uaW5n
LXJlc29sdXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQt
aXRlbS1zcGFubmluZy1yZXNvbHV0aW9uLmh0bWwKaW5kZXggNDllNDVlYWFhY2RhOWY3YjgxZjU0
YTg0ZjkwYzYzZDkxMjk4NjAwZS4uMTZmZWFjZmRhZjhhNGIxM2FlZDQ5YjM1MjY2M2JiN2VmODJl
ZTRkYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1p
dGVtLXNwYW5uaW5nLXJlc29sdXRpb24uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1n
cmlkLWxheW91dC9ncmlkLWl0ZW0tc3Bhbm5pbmctcmVzb2x1dGlvbi5odG1sCkBAIC03LDYgKzcs
OCBAQAogICAgIC13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1yb3dzOiAzMCUgNzAlOwogICAgIHdpZHRo
OiA0MDBweDsKICAgICBoZWlnaHQ6IDMwMHB4OworICAgIC13ZWJraXQtZ3JpZC1hdXRvLWNvbHVt
bnM6IDIwMHB4OworICAgIC13ZWJraXQtZ3JpZC1hdXRvLXJvd3M6IDI1MHB4OwogfQogCiAjYmln
R3JpZCB7CkBAIC0xMjQsMjUgKzEyNiwyNSBAQAogCiA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogcmVs
YXRpdmUiPgogPGRpdiBjbGFzcz0iZ3JpZCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNDAwIiBkYXRh
LWV4cGVjdGVkLWhlaWdodD0iMzAwIj4KLSAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEg
bmVnYXRpdmVPdmVyZmxvd1Jvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9m
ZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxNjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0
PSI5MCI+PC9kaXY+CisgICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIG5lZ2F0aXZlT3Zl
cmZsb3dSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIg
ZGF0YS1leHBlY3RlZC13aWR0aD0iMTYwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAwIj48L2Rp
dj4KIDwvZGl2PgogPC9kaXY+CiAKIDxkaXYgc3R5bGU9InBvc2l0aW9uOiByZWxhdGl2ZSI+CiA8
ZGl2IGNsYXNzPSJncmlkIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI0MDAiIGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSIzMDAiPgotICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBvdmVyZmxvd1Jv
d0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSIxNjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIzMDAiPjwvZGl2PgorICAg
IDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBvdmVyZmxvd1Jvd0ZpcnN0Q29sdW1uIiBkYXRh
LW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxNjAi
IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI4MDAiPjwvZGl2PgogPC9kaXY+CiA8L2Rpdj4KIAogPGRp
diBzdHlsZT0icG9zaXRpb246IHJlbGF0aXZlIj4KIDxkaXYgY2xhc3M9ImdyaWQiIGRhdGEtZXhw
ZWN0ZWQtd2lkdGg9IjQwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjMwMCI+Ci0gICAgPGRpdiBj
bGFzcz0ic2l6ZWRUb0dyaWRBcmVhIGZpcnN0Um93TmVnYXRpdmVPdmVyZmxvd0NvbHVtbiIgZGF0
YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTYw
IiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iOTAiPjwvZGl2PgorICAgIDxkaXYgY2xhc3M9InNpemVk
VG9HcmlkQXJlYSBmaXJzdFJvd05lZ2F0aXZlT3ZlcmZsb3dDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9
IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjQwMCIgZGF0YS1leHBl
Y3RlZC1oZWlnaHQ9IjkwIj48L2Rpdj4KIDwvZGl2PgogPC9kaXY+CiAKIDxkaXYgc3R5bGU9InBv
c2l0aW9uOiByZWxhdGl2ZSI+CiA8ZGl2IGNsYXNzPSJncmlkIiBkYXRhLWV4cGVjdGVkLXdpZHRo
PSI0MDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIzMDAiPgotICAgIDxkaXYgY2xhc3M9InNpemVk
VG9HcmlkQXJlYSBmaXJzdFJvd092ZXJmbG93Q29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRh
LW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI0MDAiIGRhdGEtZXhwZWN0ZWQtaGVp
Z2h0PSI5MCI+PC9kaXY+CisgICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIGZpcnN0Um93
T3ZlcmZsb3dDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEt
ZXhwZWN0ZWQtd2lkdGg9IjgwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48L2Rpdj4KIDwv
ZGl2PgogPC9kaXY+CiAKQEAgLTE1NCw3ICsxNTYsNyBAQAogCiA8ZGl2IHN0eWxlPSJwb3NpdGlv
bjogcmVsYXRpdmUiPgogPGRpdiBjbGFzcz0iZ3JpZCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNDAw
IiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMzAwIj4KLSAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3Jp
ZEFyZWEgYXV0b1NlY29uZFJvd0F1dG9GaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0
YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTYwIiBkYXRhLWV4cGVjdGVkLWhl
aWdodD0iOTAiPjwvZGl2PgorICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBhdXRvU2Vj
b25kUm93QXV0b0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIw
IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI5MCI+PC9k
aXY+CiA8L2Rpdj4KIDwvZGl2PgogCkBAIC0xODgsNyArMTkwLDcgQEAKIAogPGRpdiBzdHlsZT0i
cG9zaXRpb246IHJlbGF0aXZlIj4KIDxkaXYgY2xhc3M9ImdyaWQiIGlkPSJiaWdHcmlkIiBkYXRh
LWV4cGVjdGVkLXdpZHRoPSIyMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMDAiPgotICAgIDxk
aXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSB1bmRlcmZsb3dTcGFubmluZyIgZGF0YS1vZmZzZXQt
eD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iNzUiPjwvZGl2PgorICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJl
YSB1bmRlcmZsb3dTcGFubmluZyIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIg
ZGF0YS1leHBlY3RlZC13aWR0aD0iMzAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTMyNSI+PC9k
aXY+CiA8L2Rpdj4KIAogPCEtLSBDaGVjayB0aGF0IHRoZSBlbmQgc3BhbiBpcyBpZ25vcmVkIHdo
ZW4gdHdvIG9wcG9zaW5nIHNwYW5zIGFyZSBzcGVjaWZpZWQtLT4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2ltcGxpY2l0LXRyYWNrcy1iZWZvcmUtZXhwbGlj
aXQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvaW1wbGlj
aXQtdHJhY2tzLWJlZm9yZS1leHBsaWNpdC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDQ5NmE5
MWRjYTI0MjA2MzNiY2I2NmYyODgyMDQ4MzMzZTM0Y2I1ZgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2ltcGxpY2l0LXRyYWNrcy1iZWZvcmUtZXhw
bGljaXQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEyIEBACitUaGlzIHRlc3QgY2hlY2tzIHRo
YXQgaXQncyBwb3NzaWJsZSB0byBjcmVhdGUgaW1wbGljaXQgdHJhY2tzIGJlZm9yZSB0aGUgZXhw
bGljaXQgb25lcyB1c2luZyBuZWdhdGl2ZSBpbmRleGVzLgorCitYWAorUEFTUworWAorWFgKK1BB
U1MKK1gKK1hYCitQQVNTCitYCitYWAorUEFTUworWAorWFgKK1BBU1MKK1gKK1hYCitQQVNTCitY
CitYWAorUEFTUworWAorWFgKK1BBU1MKK1gKK1hYCitQQVNTCitYCitYWAorWFhYCitQQVNTCitY
CitYWAorWFhYCitQQVNTCitYCitYWAorWFhYCitQQVNTCitYCitYWAorWFhYCitQQVNTCitYCitY
WAorUEFTUworWAorWFgKK1BBU1MKK1gKK1hYCitQQVNTCitYCitYWAorUEFTUworWAorWFgKK1BB
U1MKK1gKK1hYCitQQVNTCitYCitYWAorUEFTUworWAorWFgKK1BBU1MKK1gKK1hYCitYWFgKK1BB
U1MKK1gKK1hYCitYWFgKK1BBU1MKK1gKK1hYCitYWFgKK1BBU1MKK1gKK1hYCitYWFgKK1BBU1MK
K1gKK1hYCitYWFgKK1BBU1MKK1gKK1hYCitYWFgKK1BBU1MKK1gKK1hYCitYWFgKK1BBU1MKK1gK
K1hYCitYWFgKK1BBU1MKK1gKK1hYCitYWFgKK1hYWFgKK1hYWFhYCitQQVNTCitYCitYWAorWFhY
CitYWFhYCitYWFhYWAorUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3Jp
ZC1sYXlvdXQvaW1wbGljaXQtdHJhY2tzLWJlZm9yZS1leHBsaWNpdC5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvaW1wbGljaXQtdHJhY2tzLWJlZm9yZS1leHBsaWNpdC5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjc2OWM2MmNiZDk2YTc3MmE0MWEzZTExYThlYTViNTMyYmE0OTJiNDYK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9pbXBs
aWNpdC10cmFja3MtYmVmb3JlLWV4cGxpY2l0Lmh0bWwKQEAgLTAsMCArMSwyMzQgQEAKKzwhRE9D
VFlQRSBodG1sPgorCis8bGluayBocmVmPSJyZXNvdXJjZXMvZ3JpZC5jc3MiIHJlbD0ic3R5bGVz
aGVldCI+Cis8bGluayBocmVmPSJyZXNvdXJjZXMvZ3JpZC1hbGlnbm1lbnQuY3NzIiByZWw9InN0
eWxlc2hlZXQiPgorPHN0eWxlPgorLmdyaWQgeworICAgIC13ZWJraXQtZ3JpZDogNTBweCAvIDEw
MHB4OworICAgIGZvbnQ6IDEwcHgvMSBBaGVtOworICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKKyAg
ICBtYXJnaW46IDI1cHg7Cit9CisKKy5maXJzdE5lZ2F0aXZlUm93Rmlyc3RDb2x1bW4geworICAg
IGJhY2tncm91bmQtY29sb3I6IHB1cnBsZTsKKyAgICAtd2Via2l0LWdyaWQtcm93OiAtMzsKKyAg
ICAtd2Via2l0LWdyaWQtY29sdW1uOiAxOworfQorCisuZmlyc3ROZWdhdGl2ZVJvd0ZpcnN0TmVn
YXRpdmVDb2x1bW4geworICAgIGJhY2tncm91bmQtY29sb3I6IG5hdnk7CisgICAgLXdlYmtpdC1n
cmlkLXJvdzogLTM7CisgICAgLXdlYmtpdC1ncmlkLWNvbHVtbjogLTM7Cit9CisKKy5zZWNvbmRO
ZWdhdGl2ZVJvd0ZpcnN0Q29sdW1uIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaW1lOworICAg
IC13ZWJraXQtZ3JpZC1yb3c6IC00OworICAgIC13ZWJraXQtZ3JpZC1jb2x1bW46IDE7Cit9CisK
Ky5zZWNvbmROZWdhdGl2ZVJvd1NlY29uZE5lZ2F0aXZlQ29sdW1uIHsKKyAgICBiYWNrZ3JvdW5k
LWNvbG9yOiBvcmFuZ2U7CisgICAgLXdlYmtpdC1ncmlkLXJvdzogLTQ7CisgICAgLXdlYmtpdC1n
cmlkLWNvbHVtbjogLTQ7Cit9CisKKy5maXJzdFJvd0ZpcnN0TmVnYXRpdmVDb2x1bW4geworICAg
IGJhY2tncm91bmQtY29sb3I6IG1hZ2VudGE7CisgICAgLXdlYmtpdC1ncmlkLXJvdzogMTsKKyAg
ICAtd2Via2l0LWdyaWQtY29sdW1uOiAtMzsKK30KKworLmZpcnN0TmVnYXRpdmVSb3dGaXJzdE5l
Z2F0aXZlQ29sdW1uIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXJvb247CisgICAgLXdlYmtp
dC1ncmlkLXJvdzogLTM7CisgICAgLXdlYmtpdC1ncmlkLWNvbHVtbjogLTM7Cit9CisKKy5maXJz
dFJvd1NlY29uZE5lZ2F0aXZlQ29sdW1uIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBhcXVhOwor
ICAgIC13ZWJraXQtZ3JpZC1yb3c6IDE7CisgICAgLXdlYmtpdC1ncmlkLWNvbHVtbjogLTQ7Cit9
CisKKzwvc3R5bGU+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2NoZWNrLWxheW91dC5q
cyI+PC9zY3JpcHQ+CisKKzxib2R5IG9ubG9hZD0iY2hlY2tMYXlvdXQoJy5ncmlkJykiPgorCis8
cD5UaGlzIHRlc3QgY2hlY2tzIHRoYXQgaXQncyBwb3NzaWJsZSB0byBjcmVhdGUgaW1wbGljaXQg
dHJhY2tzIGJlZm9yZSB0aGUgZXhwbGljaXQgb25lcyB1c2luZyBuZWdhdGl2ZSBpbmRleGVzLjwv
cD4KKworPGRpdiBjbGFzcz0iZ3JpZCI+CisgICAgPGRpdiBjbGFzcz0iYXV0b1Jvd0F1dG9Db2x1
bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lk
dGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwvZGl2PgorPC9kaXY+CisKKzxk
aXYgY2xhc3M9ImdyaWQiPgorICAgIDxkaXYgY2xhc3M9ImZpcnN0TmVnYXRpdmVSb3dGaXJzdENv
bHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13
aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNs
YXNzPSJhdXRvUm93QXV0b0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0i
MTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5Y
WDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQiPgorICAgIDxkaXYgY2xhc3M9ImZp
cnN0TmVnYXRpdmVSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQt
eT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAi
Plg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNl
dC14PSIwIiBkYXRhLW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRh
LWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3Jp
ZCBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93
Rmlyc3ROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIg
ZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2
PgorICAgIDxkaXYgY2xhc3M9ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIg
ZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVk
LWhlaWdodD0iMTAiPlhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5
Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93Rmlyc3ROZWdh
dGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBl
Y3RlZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxk
aXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEwIiBkYXRhLW9m
ZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iNTAiPlhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCI+CisgICAgPGRpdiBj
bGFzcz0ic2Vjb25kTmVnYXRpdmVSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0
YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhl
aWdodD0iMTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJhdXRvUm93QXV0b0NvbHVtbiIgZGF0
YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEw
MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xh
c3M9ImdyaWQiPgorICAgIDxkaXYgY2xhc3M9InNlY29uZE5lZ2F0aXZlUm93Rmlyc3RDb2x1bW4i
IGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9
IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0i
Zmlyc3RSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMTAi
IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwv
ZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+Cisg
ICAgPGRpdiBjbGFzcz0ic2Vjb25kTmVnYXRpdmVSb3dTZWNvbmROZWdhdGl2ZUNvbHVtbiIgZGF0
YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAi
IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImF1dG9S
b3dBdXRvQ29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1l
eHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WFg8L2Rpdj4KKzwv
ZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYg
Y2xhc3M9InNlY29uZE5lZ2F0aXZlUm93U2Vjb25kTmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0
LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0
Q29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZzZXQteT0iMTAiIGRhdGEtZXhwZWN0
ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwvZGl2PgorPC9kaXY+
CisKKzxkaXYgY2xhc3M9ImdyaWQiPgorICAgIDxkaXYgY2xhc3M9InNlY29uZE5lZ2F0aXZlUm93
Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhw
ZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAg
PGRpdiBjbGFzcz0iZmlyc3ROZWdhdGl2ZVJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIw
IiBkYXRhLW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVj
dGVkLWhlaWdodD0iMTAiPlhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYXV0b1Jvd0F1dG9Db2x1
bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjIwIiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFhYPC9kaXY+Cis8L2Rpdj4KKwor
PGRpdiBjbGFzcz0iZ3JpZCI+CisgICAgPGRpdiBjbGFzcz0ic2Vjb25kTmVnYXRpdmVSb3dGaXJz
dENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3Rl
ZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAgICA8ZGl2
IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRh
dGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSIxMCI+WFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0Q29sdW1u
IiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIyMCIgZGF0YS1leHBlY3RlZC13aWR0
aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYWDwvZGl2PgorPC9kaXY+CisKKzxk
aXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0ic2Vj
b25kTmVnYXRpdmVSb3dTZWNvbmROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0
YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0ZWQtaGVp
Z2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0TmVnYXRpdmVSb3dGaXJzdE5l
Z2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZzZXQteT0iMTAiIGRhdGEt
ZXhwZWN0ZWQtd2lkdGg9IjMwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlhYPC9kaXY+Cisg
ICAgPGRpdiBjbGFzcz0iYXV0b1Jvd0F1dG9Db2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEwIiBkYXRh
LW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3RlZC1oZWln
aHQ9IjEwIj5YWFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250
ZW50U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9InNlY29uZE5lZ2F0aXZlUm93U2Vjb25kTmVnYXRp
dmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0
ZWQtd2lkdGg9IjEwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAgICA8ZGl2
IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93Rmlyc3ROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQt
eD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1l
eHBlY3RlZC1oZWlnaHQ9IjEwIj5YWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmly
c3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjMwIiBkYXRhLW9mZnNldC15PSIyMCIgZGF0YS1leHBl
Y3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYWDwvZGl2PgorPC9k
aXY+CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBj
bGFzcz0iZmlyc3RSb3dGaXJzdE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRh
LW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1leHBlY3RlZC1oZWln
aHQ9IjUwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYXV0b1Jvd0F1dG9Db2x1bW4iIGRhdGEt
b2Zmc2V0LXg9IjEwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAi
IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNz
PSJncmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmly
c3ROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0
YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WDwvZGl2Pgor
ICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEwIiBk
YXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSI1MCI+WFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlD
b250ZW50U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9ImZpcnN0TmVnYXRpdmVSb3dGaXJzdE5lZ2F0
aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVj
dGVkLXdpZHRoPSIxMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRp
diBjbGFzcz0iYXV0b1Jvd0F1dG9Db2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEwIiBkYXRhLW9mZnNl
dC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIx
MCI+WFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50U3Rh
cnQiPgorICAgIDxkaXYgY2xhc3M9ImZpcnN0TmVnYXRpdmVSb3dGaXJzdE5lZ2F0aXZlQ29sdW1u
IiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRo
PSIxMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0i
Zmlyc3RSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjEw
IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8
L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgor
ICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93U2Vjb25kTmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0
LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iNTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJhdXRvUm93QXV0b0Nv
bHVtbiIgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQt
d2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYPC9kaXY+Cis8L2Rpdj4KKwor
PGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJm
aXJzdFJvd1NlY29uZE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNl
dC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUw
Ij5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZz
ZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9Imdy
aWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0ic2Vjb25kTmVnYXRpdmVS
b3dTZWNvbmROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0i
MCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwv
ZGl2PgorICAgIDxkaXYgY2xhc3M9ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRhLW9mZnNldC14PSIx
MCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0
ZWQtaGVpZ2h0PSIxMCI+WFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3Rp
ZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9InNlY29uZE5lZ2F0aXZlUm93U2Vjb25k
TmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEt
ZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAg
ICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0
YS1vZmZzZXQteT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1o
ZWlnaHQ9IjUwIj5YWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlmeUNv
bnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dTZWNvbmROZWdhdGl2ZUNvbHVt
biIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0
aD0iMTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9
ImZpcnN0Um93Rmlyc3ROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zm
c2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0i
NTAiPlhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYXV0b1Jvd0F1dG9Db2x1bW4iIGRhdGEtb2Zm
c2V0LXg9IjMwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRh
dGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0i
Z3JpZCBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd1NlY29u
ZE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRh
LWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YPC9kaXY+Cisg
ICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14
PSIxMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhw
ZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0
Q29sdW1uIiBkYXRhLW9mZnNldC14PSIzMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3Rl
ZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYWDwvZGl2PgorPC9kaXY+
CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFz
cz0ic2Vjb25kTmVnYXRpdmVSb3dTZWNvbmROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0i
MCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0
ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0TmVnYXRpdmVSb3dG
aXJzdE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZzZXQteT0iMTAi
IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjMwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlhYPC9k
aXY+CisgICAgPGRpdiBjbGFzcz0iYXV0b1Jvd0F1dG9Db2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEw
IiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3Rl
ZC1oZWlnaHQ9IjEwIj5YWFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3Rp
ZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9InNlY29uZE5lZ2F0aXZlUm93U2Vjb25k
TmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEt
ZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAg
ICA8ZGl2IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93Rmlyc3ROZWdhdGl2ZUNvbHVtbiIgZGF0YS1v
ZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIg
ZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0
Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjMwIiBkYXRhLW9mZnNldC15PSIyMCIgZGF0
YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYWDwvZGl2
PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAg
PGRpdiBjbGFzcz0iZmlyc3ROZWdhdGl2ZVJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIz
MCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVj
dGVkLWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0TmVn
YXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwvZGl2PgorICAg
IDxkaXYgY2xhc3M9ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9m
ZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9
IjEwIj5YWFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50
U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9ImZpcnN0TmVnYXRpdmVSb3dGaXJzdENvbHVtbiIgZGF0
YS1vZmZzZXQteD0iMjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEw
MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmly
c3RSb3dGaXJzdE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15
PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+
WFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNl
dC14PSIyMCIgZGF0YS1vZmZzZXQteT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJn
cmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9InNlY29uZE5lZ2F0aXZl
Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjMwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRh
LWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2Pgor
ICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93U2Vjb25kTmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0
LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1l
eHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImF1dG9Sb3dBdXRv
Q29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVk
LXdpZHRoPSIzMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YWFg8L2Rpdj4KKzwvZGl2Pgor
Cis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9
InNlY29uZE5lZ2F0aXZlUm93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjIwIiBkYXRhLW9m
ZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0
PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93U2Vjb25kTmVnYXRpdmVDb2x1
bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwvZGl2PgorICAgIDxkaXYgY2xh
c3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjIwIiBkYXRhLW9mZnNldC15
PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAi
PlhYWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFy
dCI+CisgICAgPGRpdiBjbGFzcz0ic2Vjb25kTmVnYXRpdmVSb3dGaXJzdENvbHVtbiIgZGF0YS1v
ZmZzZXQteD0iOTAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIg
ZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RS
b3dTZWNvbmROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0i
MjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhY
PC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3ROZWdhdGl2ZVJvd0ZpcnN0Q29sdW1uIiBkYXRh
LW9mZnNldC14PSI5MCIgZGF0YS1vZmZzZXQteT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEw
MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YWFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJm
aXJzdFJvd0ZpcnN0TmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjUwIiBkYXRhLW9mZnNl
dC15PSIyMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1
MCI+WFhYWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRhLW9m
ZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1MCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YWFhYWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9
ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0ic2Vjb25kTmVnYXRp
dmVSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iNjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+
CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dTZWNvbmROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZz
ZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRh
LWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3ROZWdh
dGl2ZVJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSI2MCIgZGF0YS1vZmZzZXQteT0iMTAi
IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YWFg8
L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0TmVnYXRpdmVDb2x1bW4iIGRhdGEt
b2Zmc2V0LXg9IjIwIiBkYXRhLW9mZnNldC15PSIyMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNDAi
IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFhYWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZp
cnN0Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjYwIiBkYXRhLW9mZnNldC15PSIyMCIg
ZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYWFhY
PC9kaXY+Cis8L2Rpdj4KKworPC9ib2R5Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>273340</attachid>
            <date>2016-03-08 14:18:32 -0800</date>
            <delta_ts>2016-03-09 01:04:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-155014-20160308231818.patch</filename>
            <type>text/plain</type>
            <size>56277</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3NzAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTJhODIxZTg4NjA1NjA5
ZWIzMWRjN2Y1ODJiMzUwYTk5ODYzY2EyOS4uOWE3MzlmZDRlMmUyYjJkODE2NmFhYmU5NWZjOGZm
OGVkNWVmNDMwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDgyIEBACisyMDE2LTAzLTA3ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtZ3Jp
ZF0gSW5pdGlhbCBzdXBwb3J0IGZvciBpbXBsaWNpdCBncmlkIGJlZm9yZSBleHBsaWNpdCBncmlk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTUwMTQK
KworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBDaGFuZ2UgR3Jp
ZFNwYW4gdG8gc3RvcmUgaW50IGluc3RlYWQgb2YgdW5zaWduZWQuIFRoaXMgYWxsb3dzIHVzIHRv
CisgICAgICAgIHJlc29sdmUgcG9zaXRpb25zIGJlZm9yZSB0aGUgZXhwbGljaXQgZ3JpZCB3aXRo
IG5lZ2F0aXZlIHZhbHVlcy4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYSBuZXcgdHlwZSBv
ZiBHcmlkU3BhbiBjYWxsZWQgIlVudHJhbnNsYXRlZCIuCisgICAgICAgIFRoaXMgdHlwZSBpcyBv
bmx5IHVzZWQgaW4gcG9wdWxhdGVFeHBsaWNpdEdyaWRBbmRPcmRlckl0ZXJhdG9yKCkuCisgICAg
ICAgIFdoZXJlIHdlIHN0b3JlIHRoZSBzbWFsbGVzdCBuZWdhdGl2ZSBwb3NpdGlvbiBpbiBib3Ro
IGF4aXMuCisKKyAgICAgICAgVGhlbiB0aGUgR3JpZFNwYW5zIGFyZSB0cmFuc2xhdGVkIGludG8g
cG9zaXRpdmUgdmFsdWVzLCB1c2luZyB0aGUgb2Zmc2V0CisgICAgICAgIGNhbGN1bGF0ZWQgYmVm
b3JlLiBUaGlzIGlzIGRvbmUgaW4gcGxhY2VJdGVtc09uR3JpZCgpIGFuZCBmcm9tIHRoYXQKKyAg
ICAgICAgbW9tZW50IHRoZSByZXN0IG9mIHRoZSBjb2RlIHVzZXMgIkRlZmluaXRlIiBHcmlkU3Bh
bnMsIHdoaWNoIHJldHVybnMKKyAgICAgICAgb25seSBwb3NpdGl2ZSBwb3NpdGlvbnMgKHVuc2ln
bmVkIGluc3RlYWQgb2YgaW50KS4KKyAgICAgICAgVGhpcyBhbGxvd3MgdXMgdG8gZG9uJ3QgaGF2
ZSB0byBtb2RpZnkgdGhlIHJlc3Qgb2YgdGhlIGNvZGUsIGFzIGl0IGtlZXBzCisgICAgICAgIHVz
aW5nIEdyaWRTcGFucyBhcyBiZWZvcmUuCisKKyAgICAgICAgTGV0J3MgdXNlIGFuIGV4YW1wbGUg
dG8gZXhwbGFpbiBob3cgaXQgd29ya3MuIEltYWdpbmUgdGhhdCB3ZSd2ZSBhIDIKKyAgICAgICAg
Y29sdW1ucyBncmlkIGFuZCAyIGl0ZW1zIHBsYWNlZCBsaWtlOgorICAgICAgICAqIEl0ZW0gQTog
Z3JpZC1jb2x1bW46IC01OworICAgICAgICAqIEl0ZW0gQjogZ3JpZC1jb2x1bW46IDE7CisKKyAg
ICAgICAgSW5pdGlhbGx5IHdlJ2xsIHVzZSAiVW5zdHJhbnNsYXRlZCIgR3JpZFNwYW5zIHdpdGgg
dGhlIGZvbGxvd2luZyB2YWx1ZXM6CisgICAgICAgICogSXRlbSBBOiBHcmlkU3BhbigtMiwgLTEp
CisgICAgICAgICogSXRlbSBCOiBHcmlkU3BhbigwLCAxKQorCisgICAgICAgIFRoZW4gd2UnbGwg
dHJhbnNsYXRlIHRoZW0gdXNpbmcgdGhlIHNtYWxsZXN0IHBvc2l0aW9uIGFzIG9mZnNldCAoLTIp
CisgICAgICAgIHNvIHdlJ3ZlICJEZWZpbml0ZSIgR3JpZFNwYW5zOgorICAgICAgICAqIEl0ZW0g
QTogR3JpZFNwYW4oMCwgMSkKKyAgICAgICAgKiBJdGVtIEI6IEdyaWRTcGFuKDIsIDMpCisKKyAg
ICAgICAgVGVzdDogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvaW1wbGljaXQtdHJhY2tzLWJlZm9yZS1l
eHBsaWNpdC5odG1sCisKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1BhcnNlcjo6cGFyc2VHcmlkVGVtcGxhdGVBcmVhc1Jvdyk6CisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlckdyaWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyR3JpZDo6
R3JpZEl0ZXJhdG9yOjpuZXh0RW1wdHlHcmlkQXJlYSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJHcmlkOjpjb21wdXRlVXNlZEJyZWFkdGhPZkdyaWRUcmFja3MpOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyR3JpZDo6Z3JpZFRyYWNrU2l6ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJH
cmlkOjppbnNlcnRJdGVtSW50b0dyaWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyR3JpZDo6
cGxhY2VJdGVtc09uR3JpZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJHcmlkOjpwb3B1bGF0
ZUV4cGxpY2l0R3JpZEFuZE9yZGVySXRlcmF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
R3JpZDo6Y3JlYXRlRW1wdHlHcmlkQXJlYUF0U3BlY2lmaWVkUG9zaXRpb25zT3V0c2lkZUdyaWQp
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyR3JpZDo6cGxhY2VTcGVjaWZpZWRNYWpvckF4aXNJ
dGVtc09uR3JpZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJHcmlkOjpwbGFjZUF1dG9NYWpv
ckF4aXNJdGVtT25HcmlkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckdyaWQ6Om9mZnNldEFu
ZEJyZWFkdGhGb3JQb3NpdGlvbmVkQ2hpbGQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyR3Jp
ZDo6cGxhY2VBdXRvTWFqb3JBeGlzSXRlbXNPbkdyaWQpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyR3JpZDo6bGF5b3V0UG9zaXRpb25lZE9iamVjdCk6IERlbGV0ZWQuCisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlckdyaWQuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUv
R3JpZENvb3JkaW5hdGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjp1bnRyYW5zbGF0
ZWREZWZpbml0ZUdyaWRTcGFuKToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjp0cmFuc2xh
dGVkRGVmaW5pdGVHcmlkU3Bhbik6CisgICAgICAgIChXZWJDb3JlOjpHcmlkU3Bhbjo6aW50ZWdl
clNwYW4pOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OnVudHJhbnNsYXRlZFJlc29sdmVk
SW5pdGlhbFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjp1bnRyYW5zbGF0
ZWRSZXNvbHZlZEZpbmFsUG9zaXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OnJl
c29sdmVkSW5pdGlhbFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjpyZXNv
bHZlZEZpbmFsUG9zaXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OmJlZ2luKToK
KyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjplbmQpOgorICAgICAgICAoV2ViQ29yZTo6R3Jp
ZFNwYW46OmlzVHJhbnNsYXRlZERlZmluaXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFu
Ojppc0luZGVmaW5pdGUpOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OnRyYW5zbGF0ZSk6
CisgICAgICAgIChXZWJDb3JlOjpHcmlkU3Bhbjo6R3JpZFNwYW4pOgorICAgICAgICAoV2ViQ29y
ZTo6R3JpZFNwYW46Om9wZXJhdG9yPT0pOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6R3Jp
ZFNwYW46OkdyaWRTcGFuSXRlcmF0b3I6OkdyaWRTcGFuSXRlcmF0b3IpOiBEZWxldGVkLgorICAg
ICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OkdyaWRTcGFuSXRlcmF0b3I6Om9wZXJhdG9yIHVuc2ln
bmVkJik6IERlbGV0ZWQuCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL0dyaWRSZXNvbHZlZFBv
c2l0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnJlc29sdmVSb3dTdGFydENvbHVtblN0YXJ0
TmFtZWRHcmlkTGluZVBvc2l0aW9uQWdhaW5zdE9wcG9zaXRlUG9zaXRpb24pOgorICAgICAgICAo
V2ViQ29yZTo6cmVzb2x2ZVJvd0VuZENvbHVtbkVuZE5hbWVkR3JpZExpbmVQb3NpdGlvbkFnYWlu
c3RPcHBvc2l0ZVBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OnJlc29sdmVOYW1lZEdyaWRM
aW5lUG9zaXRpb25BZ2FpbnN0T3Bwb3NpdGVQb3NpdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpy
ZXNvbHZlR3JpZFBvc2l0aW9uQWdhaW5zdE9wcG9zaXRlUG9zaXRpb24pOgorICAgICAgICAoV2Vi
Q29yZTo6cmVzb2x2ZUdyaWRQb3NpdGlvbkZyb21TdHlsZSk6CisgICAgICAgIChXZWJDb3JlOjpH
cmlkUmVzb2x2ZWRQb3NpdGlvbjo6cmVzb2x2ZUdyaWRQb3NpdGlvbnNGcm9tU3R5bGUpOgorICAg
ICAgICAoV2ViQ29yZTo6R3JpZFJlc29sdmVkUG9zaXRpb246OnNwYW5TaXplRm9yQXV0b1BsYWNl
ZEl0ZW0pOiBEZWxldGVkLgorCiAyMDE2LTAzLTA3ICBBZGFtIEJlcmdrdmlzdCAgPGFkYW0uYmVy
Z2t2aXN0QGVyaWNzc29uLmNvbT4KIAogICAgICAgICBXZWJSVEM6IEltcGxlbWVudCBNZWRpYUVu
ZHBvaW50UGVlckNvbm5lY3Rpb246OmNyZWF0ZU9mZmVyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5j
cHAKaW5kZXggZGJmMWVjMzYyNWM4ZmY1OGQ1ZWU2MWM1NTM0OGRhNjU5ZGJkOTlkYS4uZDg3ODM4
Mjk2MzNhMzQ3MGZkOTM4MzM0MjFjMjdlNDk4YTQxZThlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
ci5jcHAKQEAgLTYyNDksNyArNjI0OSw3IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZUdyaWRUZW1w
bGF0ZUFyZWFzUm93KE5hbWVkR3JpZEFyZWFNYXAmIGdyaWRBcmVhTWFwLCBjb25zdCB1CiAKICAg
ICAgICAgYXV0byBncmlkQXJlYUl0ZXJhdG9yID0gZ3JpZEFyZWFNYXAuZmluZChncmlkQXJlYU5h
bWUpOwogICAgICAgICBpZiAoZ3JpZEFyZWFJdGVyYXRvciA9PSBncmlkQXJlYU1hcC5lbmQoKSkK
LSAgICAgICAgICAgIGdyaWRBcmVhTWFwLmFkZChncmlkQXJlYU5hbWUsIEdyaWRDb29yZGluYXRl
KEdyaWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFuKHJvd0NvdW50LCByb3dDb3VudCArIDEpLCBHcmlk
U3Bhbjo6ZGVmaW5pdGVHcmlkU3BhbihjdXJyZW50Q29sdW1uLCBsb29rQWhlYWRDb2x1bW4pKSk7
CisgICAgICAgICAgICBncmlkQXJlYU1hcC5hZGQoZ3JpZEFyZWFOYW1lLCBHcmlkQ29vcmRpbmF0
ZShHcmlkU3Bhbjo6dHJhbnNsYXRlZERlZmluaXRlR3JpZFNwYW4ocm93Q291bnQsIHJvd0NvdW50
ICsgMSksIEdyaWRTcGFuOjp0cmFuc2xhdGVkRGVmaW5pdGVHcmlkU3BhbihjdXJyZW50Q29sdW1u
LCBsb29rQWhlYWRDb2x1bW4pKSk7CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgR3JpZENv
b3JkaW5hdGUmIGdyaWRDb29yZGluYXRlID0gZ3JpZEFyZWFJdGVyYXRvci0+dmFsdWU7CiAKQEAg
LTYyNjYsNyArNjI2Niw3IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZUdyaWRUZW1wbGF0ZUFyZWFz
Um93KE5hbWVkR3JpZEFyZWFNYXAmIGdyaWRBcmVhTWFwLCBjb25zdCB1CiAgICAgICAgICAgICBp
ZiAobG9va0FoZWFkQ29sdW1uICE9IGdyaWRDb29yZGluYXRlLmNvbHVtbnMucmVzb2x2ZWRGaW5h
bFBvc2l0aW9uKCkpCiAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgICAgICAg
ICBncmlkQ29vcmRpbmF0ZS5yb3dzID0gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4oZ3JpZENv
b3JkaW5hdGUucm93cy5yZXNvbHZlZEluaXRpYWxQb3NpdGlvbigpLCBncmlkQ29vcmRpbmF0ZS5y
b3dzLnJlc29sdmVkRmluYWxQb3NpdGlvbigpICsgMSk7CisgICAgICAgICAgICBncmlkQ29vcmRp
bmF0ZS5yb3dzID0gR3JpZFNwYW46OnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKGdyaWRDb29y
ZGluYXRlLnJvd3MucmVzb2x2ZWRJbml0aWFsUG9zaXRpb24oKSwgZ3JpZENvb3JkaW5hdGUucm93
cy5yZXNvbHZlZEZpbmFsUG9zaXRpb24oKSArIDEpOwogICAgICAgICB9CiAgICAgICAgIGN1cnJl
bnRDb2x1bW4gPSBsb29rQWhlYWRDb2x1bW4gLSAxOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJHcmlkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJHcmlkLmNwcAppbmRleCA2NmRlMjMwMjJmMWRjNTY5Y2YzMmIzMTcwZmQwNTA2
ODI1NmVmNmMyLi45MGQ3ZmYxYTg0OTNiYjlhNTQ2ZGZjNmFlYjliMDMxMDliMTMyNjcwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyR3JpZC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckdyaWQuY3BwCkBAIC0xOTAsNyArMTkwLDcgQEAg
cHVibGljOgogICAgICAgICBjb25zdCB1bnNpZ25lZCBlbmRPZlZhcnlpbmdUcmFja0luZGV4ID0g
KG1fZGlyZWN0aW9uID09IEZvckNvbHVtbnMpID8gbV9ncmlkLnNpemUoKSA6IG1fZ3JpZFswXS5z
aXplKCk7CiAgICAgICAgIGZvciAoOyB2YXJ5aW5nVHJhY2tJbmRleCA8IGVuZE9mVmFyeWluZ1Ry
YWNrSW5kZXg7ICsrdmFyeWluZ1RyYWNrSW5kZXgpIHsKICAgICAgICAgICAgIGlmIChpc0VtcHR5
QXJlYUVub3VnaChyb3dTcGFuLCBjb2x1bW5TcGFuKSkgewotICAgICAgICAgICAgICAgIHN0ZDo6
dW5pcXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gcmVzdWx0ID0gc3RkOjptYWtlX3VuaXF1ZTxHcmlk
Q29vcmRpbmF0ZT4oR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4obV9yb3dJbmRleCwgbV9yb3dJ
bmRleCArIHJvd1NwYW4pLCBHcmlkU3Bhbjo6ZGVmaW5pdGVHcmlkU3BhbihtX2NvbHVtbkluZGV4
LCBtX2NvbHVtbkluZGV4ICsgY29sdW1uU3BhbikpOworICAgICAgICAgICAgICAgIHN0ZDo6dW5p
cXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gcmVzdWx0ID0gc3RkOjptYWtlX3VuaXF1ZTxHcmlkQ29v
cmRpbmF0ZT4oR3JpZFNwYW46OnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKG1fcm93SW5kZXgs
IG1fcm93SW5kZXggKyByb3dTcGFuKSwgR3JpZFNwYW46OnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRT
cGFuKG1fY29sdW1uSW5kZXgsIG1fY29sdW1uSW5kZXggKyBjb2x1bW5TcGFuKSk7CiAgICAgICAg
ICAgICAgICAgLy8gQWR2YW5jZSB0aGUgaXRlcmF0b3IgdG8gYXZvaWQgYW4gaW5maW5pdGUgbG9v
cCB3aGVyZSB3ZSB3b3VsZCByZXR1cm4gdGhlIHNhbWUgZ3JpZCBhcmVhIG92ZXIgYW5kIG92ZXIu
CiAgICAgICAgICAgICAgICAgKyt2YXJ5aW5nVHJhY2tJbmRleDsKICAgICAgICAgICAgICAgICBy
ZXR1cm4gcmVzdWx0OwpAQCAtNTY2LDcgKzU2Niw3IEBAIHZvaWQgUmVuZGVyR3JpZDo6Y29tcHV0
ZVVzZWRCcmVhZHRoT2ZHcmlkVHJhY2tzKEdyaWRUcmFja1NpemluZ0RpcmVjdGlvbiBkaXJlY3Rp
CiAgICAgLy8gNC4gR3JvdyBhbGwgR3JpZCB0cmFja3MgaGF2aW5nIGEgZnJhY3Rpb24gYXMgdGhl
IE1heFRyYWNrU2l6aW5nRnVuY3Rpb24uCiAgICAgZG91YmxlIGZsZXhGcmFjdGlvbiA9IDA7CiAg
ICAgaWYgKGhhc0RlZmluaXRlRnJlZVNwYWNlKQotICAgICAgICBmbGV4RnJhY3Rpb24gPSBmaW5k
RmxleEZhY3RvclVuaXRTaXplKHRyYWNrcywgR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4oMCwg
dHJhY2tzLnNpemUoKSksIGRpcmVjdGlvbiwgaW5pdGlhbEZyZWVTcGFjZS52YWx1ZSgpKTsKKyAg
ICAgICAgZmxleEZyYWN0aW9uID0gZmluZEZsZXhGYWN0b3JVbml0U2l6ZSh0cmFja3MsIEdyaWRT
cGFuOjp0cmFuc2xhdGVkRGVmaW5pdGVHcmlkU3BhbigwLCB0cmFja3Muc2l6ZSgpKSwgZGlyZWN0
aW9uLCBpbml0aWFsRnJlZVNwYWNlLnZhbHVlKCkpOwogICAgIGVsc2UgewogICAgICAgICBmb3Ig
KGNvbnN0IGF1dG8mIHRyYWNrSW5kZXggOiBmbGV4aWJsZVNpemVkVHJhY2tzSW5kZXgpCiAgICAg
ICAgICAgICBmbGV4RnJhY3Rpb24gPSBzdGQ6Om1heChmbGV4RnJhY3Rpb24sIG5vcm1hbGl6ZWRG
bGV4RnJhY3Rpb24odHJhY2tzW3RyYWNrSW5kZXhdLCBncmlkVHJhY2tTaXplKGRpcmVjdGlvbiwg
dHJhY2tJbmRleCkubWF4VHJhY2tCcmVhZHRoKCkuZmxleCgpKSk7CkBAIC02ODcsNyArNjg3LDEw
IEBAIEdyaWRUcmFja1NpemUgUmVuZGVyR3JpZDo6Z3JpZFRyYWNrU2l6ZShHcmlkVHJhY2tTaXpp
bmdEaXJlY3Rpb24gZGlyZWN0aW9uLCB1bnNpCiB7CiAgICAgYm9vbCBpc0ZvckNvbHVtbnMgPSAo
ZGlyZWN0aW9uID09IEZvckNvbHVtbnMpOwogICAgIGF1dG8mIHRyYWNrU3R5bGVzID0gIGlzRm9y
Q29sdW1ucyA/IHN0eWxlKCkuZ3JpZENvbHVtbnMoKSA6IHN0eWxlKCkuZ3JpZFJvd3MoKTsKLSAg
ICBhdXRvJiB0cmFja1NpemUgPSAoaSA+PSB0cmFja1N0eWxlcy5zaXplKCkpID8gKGlzRm9yQ29s
dW1ucyA/IHN0eWxlKCkuZ3JpZEF1dG9Db2x1bW5zKCkgOiBzdHlsZSgpLmdyaWRBdXRvUm93cygp
KSA6IHRyYWNrU3R5bGVzW2ldOworCisgICAgYXV0byYgYXV0b1RyYWNrU2l6ZSA9IGlzRm9yQ29s
dW1ucyA/IHN0eWxlKCkuZ3JpZEF1dG9Db2x1bW5zKCkgOiBzdHlsZSgpLmdyaWRBdXRvUm93cygp
OworICAgIGludCB0cmFuc2xhdGVkSW5kZXggPSBpICsgKGlzRm9yQ29sdW1ucyA/IG1fc21hbGxl
c3RDb2x1bW5TdGFydCA6IG1fc21hbGxlc3RSb3dTdGFydCk7CisgICAgYXV0byYgdHJhY2tTaXpl
ID0gKHRyYW5zbGF0ZWRJbmRleCA8IDAgfHwgdHJhbnNsYXRlZEluZGV4ID49IHN0YXRpY19jYXN0
PGludD4odHJhY2tTdHlsZXMuc2l6ZSgpKSkgPyBhdXRvVHJhY2tTaXplIDogdHJhY2tTdHlsZXNb
dHJhbnNsYXRlZEluZGV4XTsKIAogICAgIEdyaWRMZW5ndGggbWluVHJhY2tCcmVhZHRoID0gdHJh
Y2tTaXplLm1pblRyYWNrQnJlYWR0aCgpOwogICAgIEdyaWRMZW5ndGggbWF4VHJhY2tCcmVhZHRo
ID0gdHJhY2tTaXplLm1heFRyYWNrQnJlYWR0aCgpOwpAQCAtMTEzNyw3ICsxMTQwLDcgQEAgdm9p
ZCBSZW5kZXJHcmlkOjplbnN1cmVHcmlkU2l6ZSh1bnNpZ25lZCBtYXhpbXVtUm93U2l6ZSwgdW5z
aWduZWQgbWF4aW11bUNvbHVtblMKIAogdm9pZCBSZW5kZXJHcmlkOjppbnNlcnRJdGVtSW50b0dy
aWQoUmVuZGVyQm94JiBjaGlsZCwgY29uc3QgR3JpZENvb3JkaW5hdGUmIGNvb3JkaW5hdGUpCiB7
Ci0gICAgQVNTRVJUKGNvb3JkaW5hdGUucm93cy5pc0RlZmluaXRlKCkgJiYgY29vcmRpbmF0ZS5j
b2x1bW5zLmlzRGVmaW5pdGUoKSk7CisgICAgQVNTRVJUKGNvb3JkaW5hdGUucm93cy5pc1RyYW5z
bGF0ZWREZWZpbml0ZSgpICYmIGNvb3JkaW5hdGUuY29sdW1ucy5pc1RyYW5zbGF0ZWREZWZpbml0
ZSgpKTsKICAgICBlbnN1cmVHcmlkU2l6ZShjb29yZGluYXRlLnJvd3MucmVzb2x2ZWRGaW5hbFBv
c2l0aW9uKCksIGNvb3JkaW5hdGUuY29sdW1ucy5yZXNvbHZlZEZpbmFsUG9zaXRpb24oKSk7CiAK
ICAgICBmb3IgKGF1dG8gcm93IDogY29vcmRpbmF0ZS5yb3dzKSB7CkBAIC0xMTYwLDExICsxMTYz
LDE2IEBAIHZvaWQgUmVuZGVyR3JpZDo6cGxhY2VJdGVtc09uR3JpZCgpCiAgICAgICAgICAgICBj
b250aW51ZTsKIAogICAgICAgICBHcmlkQ29vcmRpbmF0ZSBjb29yZGluYXRlID0gY2FjaGVkR3Jp
ZENvb3JkaW5hdGUoKmNoaWxkKTsKKyAgICAgICAgaWYgKCFjb29yZGluYXRlLnJvd3MuaXNJbmRl
ZmluaXRlKCkpCisgICAgICAgICAgICBjb29yZGluYXRlLnJvd3MudHJhbnNsYXRlKHN0ZDo6YWJz
KG1fc21hbGxlc3RSb3dTdGFydCkpOworICAgICAgICBpZiAoIWNvb3JkaW5hdGUuY29sdW1ucy5p
c0luZGVmaW5pdGUoKSkKKyAgICAgICAgICAgIGNvb3JkaW5hdGUuY29sdW1ucy50cmFuc2xhdGUo
c3RkOjphYnMobV9zbWFsbGVzdENvbHVtblN0YXJ0KSk7CisgICAgICAgIG1fZ3JpZEl0ZW1Db29y
ZGluYXRlLnNldChjaGlsZCwgY29vcmRpbmF0ZSk7CiAKLSAgICAgICAgaWYgKCFjb29yZGluYXRl
LnJvd3MuaXNEZWZpbml0ZSgpIHx8ICFjb29yZGluYXRlLmNvbHVtbnMuaXNEZWZpbml0ZSgpKSB7
CisgICAgICAgIGlmIChjb29yZGluYXRlLnJvd3MuaXNJbmRlZmluaXRlKCkgfHwgY29vcmRpbmF0
ZS5jb2x1bW5zLmlzSW5kZWZpbml0ZSgpKSB7CiAgICAgICAgICAgICBib29sIG1ham9yQXhpc0Rp
cmVjdGlvbklzRm9yQ29sdW1ucyA9IGF1dG9QbGFjZW1lbnRNYWpvckF4aXNEaXJlY3Rpb24oKSA9
PSBGb3JDb2x1bW5zOwotICAgICAgICAgICAgaWYgKChtYWpvckF4aXNEaXJlY3Rpb25Jc0ZvckNv
bHVtbnMgJiYgIWNvb3JkaW5hdGUuY29sdW1ucy5pc0RlZmluaXRlKCkpCi0gICAgICAgICAgICAg
ICAgfHwgKCFtYWpvckF4aXNEaXJlY3Rpb25Jc0ZvckNvbHVtbnMgJiYgIWNvb3JkaW5hdGUucm93
cy5pc0RlZmluaXRlKCkpKQorICAgICAgICAgICAgaWYgKChtYWpvckF4aXNEaXJlY3Rpb25Jc0Zv
ckNvbHVtbnMgJiYgY29vcmRpbmF0ZS5jb2x1bW5zLmlzSW5kZWZpbml0ZSgpKQorICAgICAgICAg
ICAgICAgIHx8ICghbWFqb3JBeGlzRGlyZWN0aW9uSXNGb3JDb2x1bW5zICYmIGNvb3JkaW5hdGUu
cm93cy5pc0luZGVmaW5pdGUoKSkpCiAgICAgICAgICAgICAgICAgYXV0b01ham9yQXhpc0F1dG9H
cmlkSXRlbXMuYXBwZW5kKGNoaWxkKTsKICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAg
ICBzcGVjaWZpZWRNYWpvckF4aXNBdXRvR3JpZEl0ZW1zLmFwcGVuZChjaGlsZCk7CkBAIC0xMTg1
LDcgKzExOTMsNyBAQCB2b2lkIFJlbmRlckdyaWQ6OnBsYWNlSXRlbXNPbkdyaWQoKQogICAgICAg
ICAgICAgY29udGludWU7CiAKICAgICAgICAgR3JpZENvb3JkaW5hdGUgY29vcmRpbmF0ZSA9IGNh
Y2hlZEdyaWRDb29yZGluYXRlKCpjaGlsZCk7Ci0gICAgICAgIEFTU0VSVChjb29yZGluYXRlLnJv
d3MuaXNEZWZpbml0ZSgpICYmIGNvb3JkaW5hdGUuY29sdW1ucy5pc0RlZmluaXRlKCkpOworICAg
ICAgICBBU1NFUlQoY29vcmRpbmF0ZS5yb3dzLmlzVHJhbnNsYXRlZERlZmluaXRlKCkgJiYgY29v
cmRpbmF0ZS5jb2x1bW5zLmlzVHJhbnNsYXRlZERlZmluaXRlKCkpOwogICAgIH0KICNlbmRpZgog
fQpAQCAtMTE5Myw2ICsxMjAxLDcgQEAgdm9pZCBSZW5kZXJHcmlkOjpwbGFjZUl0ZW1zT25Hcmlk
KCkKIHZvaWQgUmVuZGVyR3JpZDo6cG9wdWxhdGVFeHBsaWNpdEdyaWRBbmRPcmRlckl0ZXJhdG9y
KCkKIHsKICAgICBPcmRlckl0ZXJhdG9yUG9wdWxhdG9yIHBvcHVsYXRvcihtX29yZGVySXRlcmF0
b3IpOworICAgIG1fc21hbGxlc3RSb3dTdGFydCA9IG1fc21hbGxlc3RDb2x1bW5TdGFydCA9IDA7
CiAgICAgdW5zaWduZWQgbWF4aW11bVJvd0luZGV4ID0gc3RkOjptYXg8dW5zaWduZWQ+KDEsIEdy
aWRSZXNvbHZlZFBvc2l0aW9uOjpleHBsaWNpdEdyaWRSb3dDb3VudChzdHlsZSgpKSk7CiAgICAg
dW5zaWduZWQgbWF4aW11bUNvbHVtbkluZGV4ID0gc3RkOjptYXg8dW5zaWduZWQ+KDEsIEdyaWRS
ZXNvbHZlZFBvc2l0aW9uOjpleHBsaWNpdEdyaWRDb2x1bW5Db3VudChzdHlsZSgpKSk7CiAKQEAg
LTEyMDMsOCArMTIxMiw5IEBAIHZvaWQgUmVuZGVyR3JpZDo6cG9wdWxhdGVFeHBsaWNpdEdyaWRB
bmRPcmRlckl0ZXJhdG9yKCkKICAgICAgICAgcG9wdWxhdG9yLmNvbGxlY3RDaGlsZCgqY2hpbGQp
OwogCiAgICAgICAgIEdyaWRTcGFuIHJvd1Bvc2l0aW9ucyA9IEdyaWRSZXNvbHZlZFBvc2l0aW9u
OjpyZXNvbHZlR3JpZFBvc2l0aW9uc0Zyb21TdHlsZShzdHlsZSgpLCAqY2hpbGQsIEZvclJvd3Mp
OwotICAgICAgICBpZiAocm93UG9zaXRpb25zLmlzRGVmaW5pdGUoKSkgewotICAgICAgICAgICAg
bWF4aW11bVJvd0luZGV4ID0gc3RkOjptYXgobWF4aW11bVJvd0luZGV4LCByb3dQb3NpdGlvbnMu
cmVzb2x2ZWRGaW5hbFBvc2l0aW9uKCkpOworICAgICAgICBpZiAoIXJvd1Bvc2l0aW9ucy5pc0lu
ZGVmaW5pdGUoKSkgeworICAgICAgICAgICAgbV9zbWFsbGVzdFJvd1N0YXJ0ID0gc3RkOjptaW4o
bV9zbWFsbGVzdFJvd1N0YXJ0LCByb3dQb3NpdGlvbnMudW50cmFuc2xhdGVkUmVzb2x2ZWRJbml0
aWFsUG9zaXRpb24oKSk7CisgICAgICAgICAgICBtYXhpbXVtUm93SW5kZXggPSBzdGQ6Om1heDxp
bnQ+KG1heGltdW1Sb3dJbmRleCwgcm93UG9zaXRpb25zLnVudHJhbnNsYXRlZFJlc29sdmVkRmlu
YWxQb3NpdGlvbigpKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8vIEdyb3cgdGhl
IGdyaWQgZm9yIGl0ZW1zIHdpdGggYSBkZWZpbml0ZSByb3cgc3BhbiwgZ2V0dGluZyB0aGUgbGFy
Z2VzdCBzdWNoIHNwYW4uCiAgICAgICAgICAgICB1bnNpZ25lZCBzcGFuU2l6ZSA9IEdyaWRSZXNv
bHZlZFBvc2l0aW9uOjpzcGFuU2l6ZUZvckF1dG9QbGFjZWRJdGVtKHN0eWxlKCksICpjaGlsZCwg
Rm9yUm93cyk7CkBAIC0xMjEyLDggKzEyMjIsOSBAQCB2b2lkIFJlbmRlckdyaWQ6OnBvcHVsYXRl
RXhwbGljaXRHcmlkQW5kT3JkZXJJdGVyYXRvcigpCiAgICAgICAgIH0KIAogICAgICAgICBHcmlk
U3BhbiBjb2x1bW5Qb3NpdGlvbnMgPSBHcmlkUmVzb2x2ZWRQb3NpdGlvbjo6cmVzb2x2ZUdyaWRQ
b3NpdGlvbnNGcm9tU3R5bGUoc3R5bGUoKSwgKmNoaWxkLCBGb3JDb2x1bW5zKTsKLSAgICAgICAg
aWYgKGNvbHVtblBvc2l0aW9ucy5pc0RlZmluaXRlKCkpIHsKLSAgICAgICAgICAgIG1heGltdW1D
b2x1bW5JbmRleCA9IHN0ZDo6bWF4KG1heGltdW1Db2x1bW5JbmRleCwgY29sdW1uUG9zaXRpb25z
LnJlc29sdmVkRmluYWxQb3NpdGlvbigpKTsKKyAgICAgICAgaWYgKCFjb2x1bW5Qb3NpdGlvbnMu
aXNJbmRlZmluaXRlKCkpIHsKKyAgICAgICAgICAgIG1fc21hbGxlc3RDb2x1bW5TdGFydCA9IHN0
ZDo6bWluKG1fc21hbGxlc3RDb2x1bW5TdGFydCwgY29sdW1uUG9zaXRpb25zLnVudHJhbnNsYXRl
ZFJlc29sdmVkSW5pdGlhbFBvc2l0aW9uKCkpOworICAgICAgICAgICAgbWF4aW11bUNvbHVtbklu
ZGV4ID0gc3RkOjptYXg8aW50PihtYXhpbXVtQ29sdW1uSW5kZXgsIGNvbHVtblBvc2l0aW9ucy51
bnRyYW5zbGF0ZWRSZXNvbHZlZEZpbmFsUG9zaXRpb24oKSk7CiAgICAgICAgIH0gZWxzZSB7CiAg
ICAgICAgICAgICAvLyBHcm93IHRoZSBncmlkIGZvciBpdGVtcyB3aXRoIGEgZGVmaW5pdGUgY29s
dW1uIHNwYW4sIGdldHRpbmcgdGhlIGxhcmdlc3Qgc3VjaCBzcGFuLgogICAgICAgICAgICAgdW5z
aWduZWQgc3BhblNpemUgPSBHcmlkUmVzb2x2ZWRQb3NpdGlvbjo6c3BhblNpemVGb3JBdXRvUGxh
Y2VkSXRlbShzdHlsZSgpLCAqY2hpbGQsIEZvckNvbHVtbnMpOwpAQCAtMTIyMyw5ICsxMjM0LDkg
QEAgdm9pZCBSZW5kZXJHcmlkOjpwb3B1bGF0ZUV4cGxpY2l0R3JpZEFuZE9yZGVySXRlcmF0b3Io
KQogICAgICAgICBtX2dyaWRJdGVtQ29vcmRpbmF0ZS5zZXQoY2hpbGQsIEdyaWRDb29yZGluYXRl
KHJvd1Bvc2l0aW9ucywgY29sdW1uUG9zaXRpb25zKSk7CiAgICAgfQogCi0gICAgbV9ncmlkLmdy
b3cobWF4aW11bVJvd0luZGV4KTsKKyAgICBtX2dyaWQuZ3JvdyhtYXhpbXVtUm93SW5kZXggKyBz
dGQ6OmFicyhtX3NtYWxsZXN0Um93U3RhcnQpKTsKICAgICBmb3IgKGF1dG8mIGNvbHVtbiA6IG1f
Z3JpZCkKLSAgICAgICAgY29sdW1uLmdyb3cobWF4aW11bUNvbHVtbkluZGV4KTsKKyAgICAgICAg
Y29sdW1uLmdyb3cobWF4aW11bUNvbHVtbkluZGV4ICsgc3RkOjphYnMobV9zbWFsbGVzdENvbHVt
blN0YXJ0KSk7CiB9CiAKIHN0ZDo6dW5pcXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gUmVuZGVyR3Jp
ZDo6Y3JlYXRlRW1wdHlHcmlkQXJlYUF0U3BlY2lmaWVkUG9zaXRpb25zT3V0c2lkZUdyaWQoY29u
c3QgUmVuZGVyQm94JiBncmlkSXRlbSwgR3JpZFRyYWNrU2l6aW5nRGlyZWN0aW9uIHNwZWNpZmll
ZERpcmVjdGlvbiwgY29uc3QgR3JpZFNwYW4mIHNwZWNpZmllZFBvc2l0aW9ucykgY29uc3QKQEAg
LTEyMzMsNyArMTI0NCw3IEBAIHN0ZDo6dW5pcXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gUmVuZGVy
R3JpZDo6Y3JlYXRlRW1wdHlHcmlkQXJlYUF0U3BlY2lmaWVkUG9zaXRpCiAgICAgR3JpZFRyYWNr
U2l6aW5nRGlyZWN0aW9uIGNyb3NzRGlyZWN0aW9uID0gc3BlY2lmaWVkRGlyZWN0aW9uID09IEZv
ckNvbHVtbnMgPyBGb3JSb3dzIDogRm9yQ29sdW1uczsKICAgICBjb25zdCB1bnNpZ25lZCBlbmRP
ZkNyb3NzRGlyZWN0aW9uID0gY3Jvc3NEaXJlY3Rpb24gPT0gRm9yQ29sdW1ucyA/IGdyaWRDb2x1
bW5Db3VudCgpIDogZ3JpZFJvd0NvdW50KCk7CiAgICAgdW5zaWduZWQgY3Jvc3NEaXJlY3Rpb25T
cGFuU2l6ZSA9IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpzcGFuU2l6ZUZvckF1dG9QbGFjZWRJdGVt
KHN0eWxlKCksIGdyaWRJdGVtLCBjcm9zc0RpcmVjdGlvbik7Ci0gICAgR3JpZFNwYW4gY3Jvc3NE
aXJlY3Rpb25Qb3NpdGlvbnMgPSBHcmlkU3Bhbjo6ZGVmaW5pdGVHcmlkU3BhbihlbmRPZkNyb3Nz
RGlyZWN0aW9uLCBlbmRPZkNyb3NzRGlyZWN0aW9uICsgY3Jvc3NEaXJlY3Rpb25TcGFuU2l6ZSk7
CisgICAgR3JpZFNwYW4gY3Jvc3NEaXJlY3Rpb25Qb3NpdGlvbnMgPSBHcmlkU3Bhbjo6dHJhbnNs
YXRlZERlZmluaXRlR3JpZFNwYW4oZW5kT2ZDcm9zc0RpcmVjdGlvbiwgZW5kT2ZDcm9zc0RpcmVj
dGlvbiArIGNyb3NzRGlyZWN0aW9uU3BhblNpemUpOwogICAgIHJldHVybiBzdGQ6Om1ha2VfdW5p
cXVlPEdyaWRDb29yZGluYXRlPihzcGVjaWZpZWREaXJlY3Rpb24gPT0gRm9yQ29sdW1ucyA/IGNy
b3NzRGlyZWN0aW9uUG9zaXRpb25zIDogc3BlY2lmaWVkUG9zaXRpb25zLCBzcGVjaWZpZWREaXJl
Y3Rpb24gPT0gRm9yQ29sdW1ucyA/IHNwZWNpZmllZFBvc2l0aW9ucyA6IGNyb3NzRGlyZWN0aW9u
UG9zaXRpb25zKTsKIH0KIApAQCAtMTI0OSw4ICsxMjYwLDggQEAgdm9pZCBSZW5kZXJHcmlkOjpw
bGFjZVNwZWNpZmllZE1ham9yQXhpc0l0ZW1zT25HcmlkKGNvbnN0IFZlY3RvcjxSZW5kZXJCb3gq
PiYgYXUKIAogICAgIGZvciAoYXV0byYgYXV0b0dyaWRJdGVtIDogYXV0b0dyaWRJdGVtcykgewog
ICAgICAgICBHcmlkU3BhbiBtYWpvckF4aXNQb3NpdGlvbnMgPSBjYWNoZWRHcmlkU3BhbigqYXV0
b0dyaWRJdGVtLCBhdXRvUGxhY2VtZW50TWFqb3JBeGlzRGlyZWN0aW9uKCkpOwotICAgICAgICBB
U1NFUlQobWFqb3JBeGlzUG9zaXRpb25zLmlzRGVmaW5pdGUoKSk7Ci0gICAgICAgIEFTU0VSVCgh
Y2FjaGVkR3JpZFNwYW4oKmF1dG9HcmlkSXRlbSwgYXV0b1BsYWNlbWVudE1pbm9yQXhpc0RpcmVj
dGlvbigpKS5pc0RlZmluaXRlKCkpOworICAgICAgICBBU1NFUlQobWFqb3JBeGlzUG9zaXRpb25z
LmlzVHJhbnNsYXRlZERlZmluaXRlKCkpOworICAgICAgICBBU1NFUlQoY2FjaGVkR3JpZFNwYW4o
KmF1dG9HcmlkSXRlbSwgYXV0b1BsYWNlbWVudE1pbm9yQXhpc0RpcmVjdGlvbigpKS5pc0luZGVm
aW5pdGUoKSk7CiAgICAgICAgIHVuc2lnbmVkIG1pbm9yQXhpc1NwYW5TaXplID0gR3JpZFJlc29s
dmVkUG9zaXRpb246OnNwYW5TaXplRm9yQXV0b1BsYWNlZEl0ZW0oc3R5bGUoKSwgKmF1dG9Hcmlk
SXRlbSwgYXV0b1BsYWNlbWVudE1pbm9yQXhpc0RpcmVjdGlvbigpKTsKICAgICAgICAgdW5zaWdu
ZWQgbWFqb3JBeGlzSW5pdGlhbFBvc2l0aW9uID0gbWFqb3JBeGlzUG9zaXRpb25zLnJlc29sdmVk
SW5pdGlhbFBvc2l0aW9uKCk7CiAKQEAgLTEyODQsNyArMTI5NSw3IEBAIHZvaWQgUmVuZGVyR3Jp
ZDo6cGxhY2VBdXRvTWFqb3JBeGlzSXRlbXNPbkdyaWQoY29uc3QgVmVjdG9yPFJlbmRlckJveCo+
JiBhdXRvR3JpCiAKIHZvaWQgUmVuZGVyR3JpZDo6cGxhY2VBdXRvTWFqb3JBeGlzSXRlbU9uR3Jp
ZChSZW5kZXJCb3gmIGdyaWRJdGVtLCBBdXRvUGxhY2VtZW50Q3Vyc29yJiBhdXRvUGxhY2VtZW50
Q3Vyc29yKQogewotICAgIEFTU0VSVCghY2FjaGVkR3JpZFNwYW4oZ3JpZEl0ZW0sIGF1dG9QbGFj
ZW1lbnRNYWpvckF4aXNEaXJlY3Rpb24oKSkuaXNEZWZpbml0ZSgpKTsKKyAgICBBU1NFUlQoY2Fj
aGVkR3JpZFNwYW4oZ3JpZEl0ZW0sIGF1dG9QbGFjZW1lbnRNYWpvckF4aXNEaXJlY3Rpb24oKSku
aXNJbmRlZmluaXRlKCkpOwogICAgIHVuc2lnbmVkIG1ham9yQXhpc1NwYW5TaXplID0gR3JpZFJl
c29sdmVkUG9zaXRpb246OnNwYW5TaXplRm9yQXV0b1BsYWNlZEl0ZW0oc3R5bGUoKSwgZ3JpZEl0
ZW0sIGF1dG9QbGFjZW1lbnRNYWpvckF4aXNEaXJlY3Rpb24oKSk7CiAKICAgICBjb25zdCB1bnNp
Z25lZCBlbmRPZk1ham9yQXhpcyA9IChhdXRvUGxhY2VtZW50TWFqb3JBeGlzRGlyZWN0aW9uKCkg
PT0gRm9yQ29sdW1ucykgPyBncmlkQ29sdW1uQ291bnQoKSA6IGdyaWRSb3dDb3VudCgpOwpAQCAt
MTI5Myw3ICsxMzA0LDcgQEAgdm9pZCBSZW5kZXJHcmlkOjpwbGFjZUF1dG9NYWpvckF4aXNJdGVt
T25HcmlkKFJlbmRlckJveCYgZ3JpZEl0ZW0sIEF1dG9QbGFjZW1lbnQKIAogICAgIHN0ZDo6dW5p
cXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gZW1wdHlHcmlkQXJlYTsKICAgICBHcmlkU3BhbiBtaW5v
ckF4aXNQb3NpdGlvbnMgPSBjYWNoZWRHcmlkU3BhbihncmlkSXRlbSwgYXV0b1BsYWNlbWVudE1p
bm9yQXhpc0RpcmVjdGlvbigpKTsKLSAgICBpZiAobWlub3JBeGlzUG9zaXRpb25zLmlzRGVmaW5p
dGUoKSkgeworICAgIGlmIChtaW5vckF4aXNQb3NpdGlvbnMuaXNUcmFuc2xhdGVkRGVmaW5pdGUo
KSkgewogICAgICAgICAvLyBNb3ZlIHRvIHRoZSBuZXh0IHRyYWNrIGluIG1ham9yIGF4aXMgaWYg
aW5pdGlhbCBwb3NpdGlvbiBpbiBtaW5vciBheGlzIGlzIGJlZm9yZSBhdXRvLXBsYWNlbWVudCBj
dXJzb3IuCiAgICAgICAgIGlmIChtaW5vckF4aXNQb3NpdGlvbnMucmVzb2x2ZWRJbml0aWFsUG9z
aXRpb24oKSA8IG1pbm9yQXhpc0F1dG9QbGFjZW1lbnRDdXJzb3IpCiAgICAgICAgICAgICBtYWpv
ckF4aXNBdXRvUGxhY2VtZW50Q3Vyc29yKys7CkBAIC0xMzI5LDcgKzEzNDAsNyBAQCB2b2lkIFJl
bmRlckdyaWQ6OnBsYWNlQXV0b01ham9yQXhpc0l0ZW1PbkdyaWQoUmVuZGVyQm94JiBncmlkSXRl
bSwgQXV0b1BsYWNlbWVudAogICAgICAgICB9CiAKICAgICAgICAgaWYgKCFlbXB0eUdyaWRBcmVh
KQotICAgICAgICAgICAgZW1wdHlHcmlkQXJlYSA9IGNyZWF0ZUVtcHR5R3JpZEFyZWFBdFNwZWNp
ZmllZFBvc2l0aW9uc091dHNpZGVHcmlkKGdyaWRJdGVtLCBhdXRvUGxhY2VtZW50TWlub3JBeGlz
RGlyZWN0aW9uKCksIEdyaWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFuKDAsIG1pbm9yQXhpc1NwYW5T
aXplKSk7CisgICAgICAgICAgICBlbXB0eUdyaWRBcmVhID0gY3JlYXRlRW1wdHlHcmlkQXJlYUF0
U3BlY2lmaWVkUG9zaXRpb25zT3V0c2lkZUdyaWQoZ3JpZEl0ZW0sIGF1dG9QbGFjZW1lbnRNaW5v
ckF4aXNEaXJlY3Rpb24oKSwgR3JpZFNwYW46OnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKDAs
IG1pbm9yQXhpc1NwYW5TaXplKSk7CiAgICAgfQogCiAgICAgbV9ncmlkSXRlbUNvb3JkaW5hdGUu
c2V0KCZncmlkSXRlbSwgKmVtcHR5R3JpZEFyZWEpOwpAQCAtMTQ3NCwxMSArMTQ4NSwxMiBAQCB2
b2lkIFJlbmRlckdyaWQ6Om9mZnNldEFuZEJyZWFkdGhGb3JQb3NpdGlvbmVkQ2hpbGQoY29uc3Qg
UmVuZGVyQm94JiBjaGlsZCwgR3JpZAogICAgIEFTU0VSVChjaGlsZC5pc0hvcml6b250YWxXcml0
aW5nTW9kZSgpID09IGlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkpOwogCiAgICAgR3JpZFNwYW4g
cG9zaXRpb25zID0gR3JpZFJlc29sdmVkUG9zaXRpb246OnJlc29sdmVHcmlkUG9zaXRpb25zRnJv
bVN0eWxlKHN0eWxlKCksIGNoaWxkLCBkaXJlY3Rpb24pOwotICAgIGlmICghcG9zaXRpb25zLmlz
RGVmaW5pdGUoKSkgeworICAgIGlmIChwb3NpdGlvbnMuaXNJbmRlZmluaXRlKCkpIHsKICAgICAg
ICAgb2Zmc2V0ID0gTGF5b3V0VW5pdCgpOwogICAgICAgICBicmVhZHRoID0gKGRpcmVjdGlvbiA9
PSBGb3JDb2x1bW5zKSA/IGNsaWVudExvZ2ljYWxXaWR0aCgpIDogY2xpZW50TG9naWNhbEhlaWdo
dCgpOwogICAgICAgICByZXR1cm47CiAgICAgfQorICAgIHBvc2l0aW9ucy50cmFuc2xhdGUoZGly
ZWN0aW9uID09IEZvckNvbHVtbnMgPyBtX3NtYWxsZXN0Q29sdW1uU3RhcnQgOiBtX3NtYWxsZXN0
Um93U3RhcnQpOwogCiAgICAgR3JpZFBvc2l0aW9uIHN0YXJ0UG9zaXRpb24gPSAoZGlyZWN0aW9u
ID09IEZvckNvbHVtbnMpID8gY2hpbGQuc3R5bGUoKS5ncmlkSXRlbUNvbHVtblN0YXJ0KCkgOiBj
aGlsZC5zdHlsZSgpLmdyaWRJdGVtUm93U3RhcnQoKTsKICAgICBHcmlkUG9zaXRpb24gZW5kUG9z
aXRpb24gPSAoZGlyZWN0aW9uID09IEZvckNvbHVtbnMpID8gY2hpbGQuc3R5bGUoKS5ncmlkSXRl
bUNvbHVtbkVuZCgpIDogY2hpbGQuc3R5bGUoKS5ncmlkSXRlbVJvd0VuZCgpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckdyaWQuaCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJHcmlkLmgKaW5kZXggZmMzOTU3MjgxODRiNDBlYzRlMDhkNWNkZmZj
Mzc0YTNjMmM0YTFmZi4uYTNkMThlZmVhYzU0MTgxYjFjZjM5MjYxMjRhZjc0MjQwYWFiMTFlZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckdyaWQuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyR3JpZC5oCkBAIC0xOTAsNiArMTkwLDkgQEAg
cHJpdmF0ZToKIAogICAgIE9wdGlvbmFsPExheW91dFVuaXQ+IG1fbWluQ29udGVudEhlaWdodDsK
ICAgICBPcHRpb25hbDxMYXlvdXRVbml0PiBtX21heENvbnRlbnRIZWlnaHQ7CisKKyAgICBpbnQg
bV9zbWFsbGVzdENvbHVtblN0YXJ0OworICAgIGludCBtX3NtYWxsZXN0Um93U3RhcnQ7CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvR3JpZENvb3JkaW5hdGUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9HcmlkQ29vcmRpbmF0ZS5oCmluZGV4IDUzNTRiZDZiZTBkODYwOTQ2NGJlYTk3N2VhMDBj
OTE1Njc1ZjIxOWYuLjA2NWQ3NGE2MjU4NjgwNWJiNTFkMjE2Mjc0ZjZjYTE1OTIxODJiMjIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9HcmlkQ29vcmRpbmF0ZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9HcmlkQ29vcmRpbmF0ZS5oCkBA
IC00MSw3ICs0MSw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIC8vIFJlY29tbWVuZGVkIG1h
eGltdW0gc2l6ZSBmb3IgYm90aCBleHBsaWNpdCBhbmQgaW1wbGljaXQgZ3JpZHMuCi1jb25zdCB1
bnNpZ25lZCBrR3JpZE1heFRyYWNrcyA9IDEwMDAwMDA7Citjb25zdCBpbnQga0dyaWRNYXhUcmFj
a3MgPSAxMDAwMDAwOwogCiAvLyBBIHNwYW4gaW4gYSBzaW5nbGUgZGlyZWN0aW9uIChlaXRoZXIg
cm93cyBvciBjb2x1bW5zKS4gTm90ZSB0aGF0IHxyZXNvbHZlZEluaXRpYWxQb3NpdGlvbnwKIC8v
IGFuZCB8cmVzb2x2ZWRGaW5hbFBvc2l0aW9ufCBhcmUgZ3JpZCBsaW5lcycgaW5kZXhlcy4KQEAg
LTQ5LDkgKzQ5LDE0IEBAIGNvbnN0IHVuc2lnbmVkIGtHcmlkTWF4VHJhY2tzID0gMTAwMDAwMDsK
IGNsYXNzIEdyaWRTcGFuIHsKIHB1YmxpYzoKIAotICAgIHN0YXRpYyBHcmlkU3BhbiBkZWZpbml0
ZUdyaWRTcGFuKHVuc2lnbmVkIHJlc29sdmVkSW5pdGlhbFBvc2l0aW9uLCB1bnNpZ25lZCByZXNv
bHZlZEZpbmFsUG9zaXRpb24pCisgICAgc3RhdGljIEdyaWRTcGFuIHVudHJhbnNsYXRlZERlZmlu
aXRlR3JpZFNwYW4oaW50IHJlc29sdmVkSW5pdGlhbFBvc2l0aW9uLCBpbnQgcmVzb2x2ZWRGaW5h
bFBvc2l0aW9uKQogICAgIHsKLSAgICAgICAgcmV0dXJuIEdyaWRTcGFuKHJlc29sdmVkSW5pdGlh
bFBvc2l0aW9uLCByZXNvbHZlZEZpbmFsUG9zaXRpb24sIERlZmluaXRlKTsKKyAgICAgICAgcmV0
dXJuIEdyaWRTcGFuKHJlc29sdmVkSW5pdGlhbFBvc2l0aW9uLCByZXNvbHZlZEZpbmFsUG9zaXRp
b24sIFVudHJhbnNsYXRlZERlZmluaXRlKTsKKyAgICB9CisKKyAgICBzdGF0aWMgR3JpZFNwYW4g
dHJhbnNsYXRlZERlZmluaXRlR3JpZFNwYW4odW5zaWduZWQgcmVzb2x2ZWRJbml0aWFsUG9zaXRp
b24sIHVuc2lnbmVkIHJlc29sdmVkRmluYWxQb3NpdGlvbikKKyAgICB7CisgICAgICAgIHJldHVy
biBHcmlkU3BhbihyZXNvbHZlZEluaXRpYWxQb3NpdGlvbiwgcmVzb2x2ZWRGaW5hbFBvc2l0aW9u
LCBUcmFuc2xhdGVkRGVmaW5pdGUpOwogICAgIH0KIAogICAgIHN0YXRpYyBHcmlkU3BhbiBpbmRl
ZmluaXRlR3JpZFNwYW4oKQpAQCAtNjYsMjAgKzcxLDMzIEBAIHB1YmxpYzoKIAogICAgIHVuc2ln
bmVkIGludGVnZXJTcGFuKCkgY29uc3QKICAgICB7Ci0gICAgICAgIEFTU0VSVChpc0RlZmluaXRl
KCkpOworICAgICAgICBBU1NFUlQoaXNUcmFuc2xhdGVkRGVmaW5pdGUoKSk7CiAgICAgICAgIHJl
dHVybiBtX3Jlc29sdmVkRmluYWxQb3NpdGlvbiAtIG1fcmVzb2x2ZWRJbml0aWFsUG9zaXRpb247
CiAgICAgfQogCisgICAgaW50IHVudHJhbnNsYXRlZFJlc29sdmVkSW5pdGlhbFBvc2l0aW9uKCkg
Y29uc3QKKyAgICB7CisgICAgICAgIEFTU0VSVChtX3R5cGUgPT0gVW50cmFuc2xhdGVkRGVmaW5p
dGUpOworICAgICAgICByZXR1cm4gbV9yZXNvbHZlZEluaXRpYWxQb3NpdGlvbjsKKyAgICB9CisK
KyAgICBpbnQgdW50cmFuc2xhdGVkUmVzb2x2ZWRGaW5hbFBvc2l0aW9uKCkgY29uc3QKKyAgICB7
CisgICAgICAgIEFTU0VSVChtX3R5cGUgPT0gVW50cmFuc2xhdGVkRGVmaW5pdGUpOworICAgICAg
ICByZXR1cm4gbV9yZXNvbHZlZEZpbmFsUG9zaXRpb247CisgICAgfQorCiAgICAgdW5zaWduZWQg
cmVzb2x2ZWRJbml0aWFsUG9zaXRpb24oKSBjb25zdAogICAgIHsKLSAgICAgICAgQVNTRVJUKGlz
RGVmaW5pdGUoKSk7CisgICAgICAgIEFTU0VSVChpc1RyYW5zbGF0ZWREZWZpbml0ZSgpKTsKKyAg
ICAgICAgQVNTRVJUKG1fcmVzb2x2ZWRGaW5hbFBvc2l0aW9uID49IDApOwogICAgICAgICByZXR1
cm4gbV9yZXNvbHZlZEluaXRpYWxQb3NpdGlvbjsKICAgICB9CiAKICAgICB1bnNpZ25lZCByZXNv
bHZlZEZpbmFsUG9zaXRpb24oKSBjb25zdAogICAgIHsKLSAgICAgICAgQVNTRVJUKGlzRGVmaW5p
dGUoKSk7Ci0gICAgICAgIEFTU0VSVChtX3Jlc29sdmVkRmluYWxQb3NpdGlvbik7CisgICAgICAg
IEFTU0VSVChpc1RyYW5zbGF0ZWREZWZpbml0ZSgpKTsKKyAgICAgICAgQVNTRVJUKG1fcmVzb2x2
ZWRGaW5hbFBvc2l0aW9uID4gMCk7CiAgICAgICAgIHJldHVybiBtX3Jlc29sdmVkRmluYWxQb3Np
dGlvbjsKICAgICB9CiAKQEAgLTk3LDM1ICsxMTUsNTkgQEAgcHVibGljOgogCiAgICAgR3JpZFNw
YW5JdGVyYXRvciBiZWdpbigpIGNvbnN0CiAgICAgewotICAgICAgICBBU1NFUlQoaXNEZWZpbml0
ZSgpKTsKKyAgICAgICAgQVNTRVJUKGlzVHJhbnNsYXRlZERlZmluaXRlKCkpOwogICAgICAgICBy
ZXR1cm4gbV9yZXNvbHZlZEluaXRpYWxQb3NpdGlvbjsKICAgICB9CiAKICAgICBHcmlkU3Bhbkl0
ZXJhdG9yIGVuZCgpIGNvbnN0CiAgICAgewotICAgICAgICBBU1NFUlQoaXNEZWZpbml0ZSgpKTsK
KyAgICAgICAgQVNTRVJUKGlzVHJhbnNsYXRlZERlZmluaXRlKCkpOwogICAgICAgICByZXR1cm4g
bV9yZXNvbHZlZEZpbmFsUG9zaXRpb247CiAgICAgfQogCi0gICAgYm9vbCBpc0RlZmluaXRlKCkg
Y29uc3QKKyAgICBib29sIGlzVHJhbnNsYXRlZERlZmluaXRlKCkgY29uc3QKICAgICB7Ci0gICAg
ICAgIHJldHVybiBtX3R5cGUgPT0gRGVmaW5pdGU7CisgICAgICAgIHJldHVybiBtX3R5cGUgPT0g
VHJhbnNsYXRlZERlZmluaXRlOworICAgIH0KKworICAgIGJvb2wgaXNJbmRlZmluaXRlKCkgY29u
c3QKKyAgICB7CisgICAgICAgIHJldHVybiBtX3R5cGUgPT0gSW5kZWZpbml0ZTsKKyAgICB9CisK
KyAgICB2b2lkIHRyYW5zbGF0ZSh1bnNpZ25lZCBvZmZzZXQpCisgICAgeworICAgICAgICBBU1NF
UlQobV90eXBlID09IFVudHJhbnNsYXRlZERlZmluaXRlKTsKKworICAgICAgICBtX3R5cGUgPSBU
cmFuc2xhdGVkRGVmaW5pdGU7CisgICAgICAgIG1fcmVzb2x2ZWRJbml0aWFsUG9zaXRpb24gKz0g
b2Zmc2V0OworICAgICAgICBtX3Jlc29sdmVkRmluYWxQb3NpdGlvbiArPSBvZmZzZXQ7CisKKyAg
ICAgICAgQVNTRVJUKG1fcmVzb2x2ZWRJbml0aWFsUG9zaXRpb24gPj0gMCk7CisgICAgICAgIEFT
U0VSVChtX3Jlc29sdmVkRmluYWxQb3NpdGlvbiA+IDApOwogICAgIH0KIAogcHJpdmF0ZToKIAot
ICAgIGVudW0gR3JpZFNwYW5UeXBlIHtEZWZpbml0ZSwgSW5kZWZpbml0ZX07CisgICAgZW51bSBH
cmlkU3BhblR5cGUge1VudHJhbnNsYXRlZERlZmluaXRlLCBUcmFuc2xhdGVkRGVmaW5pdGUsIElu
ZGVmaW5pdGV9OwogCi0gICAgR3JpZFNwYW4odW5zaWduZWQgcmVzb2x2ZWRJbml0aWFsUG9zaXRp
b24sIHVuc2lnbmVkIHJlc29sdmVkRmluYWxQb3NpdGlvbiwgR3JpZFNwYW5UeXBlIHR5cGUpCi0g
ICAgICAgIDogbV9yZXNvbHZlZEluaXRpYWxQb3NpdGlvbihzdGQ6Om1pbihyZXNvbHZlZEluaXRp
YWxQb3NpdGlvbiwga0dyaWRNYXhUcmFja3MgLSAxKSkKLSAgICAgICAgLCBtX3Jlc29sdmVkRmlu
YWxQb3NpdGlvbihzdGQ6Om1pbihyZXNvbHZlZEZpbmFsUG9zaXRpb24sIGtHcmlkTWF4VHJhY2tz
KSkKLSAgICAgICAgLCBtX3R5cGUodHlwZSkKKyAgICBHcmlkU3BhbihpbnQgcmVzb2x2ZWRJbml0
aWFsUG9zaXRpb24sIGludCByZXNvbHZlZEZpbmFsUG9zaXRpb24sIEdyaWRTcGFuVHlwZSB0eXBl
KQorICAgICAgICA6IG1fdHlwZSh0eXBlKQogICAgIHsKKyNpZiBFTkFCTEUoQVNTRVJUKQogICAg
ICAgICBBU1NFUlQocmVzb2x2ZWRJbml0aWFsUG9zaXRpb24gPCByZXNvbHZlZEZpbmFsUG9zaXRp
b24pOworICAgICAgICBpZiAodHlwZSA9PSBUcmFuc2xhdGVkRGVmaW5pdGUpIHsKKyAgICAgICAg
ICAgIEFTU0VSVChyZXNvbHZlZEluaXRpYWxQb3NpdGlvbiA+PSAwKTsKKyAgICAgICAgICAgIEFT
U0VSVChyZXNvbHZlZEZpbmFsUG9zaXRpb24gPiAwKTsKKyAgICAgICAgfQorI2VuZGlmCisKKyAg
ICAgICAgbV9yZXNvbHZlZEluaXRpYWxQb3NpdGlvbiA9IHN0ZDo6bWF4KC1rR3JpZE1heFRyYWNr
cywgc3RkOjptaW4ocmVzb2x2ZWRJbml0aWFsUG9zaXRpb24sIGtHcmlkTWF4VHJhY2tzIC0gMSkp
OworICAgICAgICBtX3Jlc29sdmVkRmluYWxQb3NpdGlvbiA9IHN0ZDo6bWF4KC1rR3JpZE1heFRy
YWNrcyArIDEsIHN0ZDo6bWluKHJlc29sdmVkRmluYWxQb3NpdGlvbiwga0dyaWRNYXhUcmFja3Mp
KTsKICAgICB9CiAKLSAgICB1bnNpZ25lZCBtX3Jlc29sdmVkSW5pdGlhbFBvc2l0aW9uOwotICAg
IHVuc2lnbmVkIG1fcmVzb2x2ZWRGaW5hbFBvc2l0aW9uOworICAgIGludCBtX3Jlc29sdmVkSW5p
dGlhbFBvc2l0aW9uOworICAgIGludCBtX3Jlc29sdmVkRmluYWxQb3NpdGlvbjsKICAgICBHcmlk
U3BhblR5cGUgbV90eXBlOwogCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9HcmlkUmVzb2x2ZWRQb3NpdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvR3JpZFJlc29sdmVkUG9zaXRpb24uY3BwCmluZGV4IDU5YTFkYmRhYTk4NDlmOWRk
Mjc5YzZiMzA2N2I5YjJmMjU5NWVlNTQuLjMyOTU4ZGFkMWY1Njc2MDA0MTEwNzA5M2EyMzkzNGJh
YWNhZDM0OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Hcmlk
UmVzb2x2ZWRQb3NpdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L0dyaWRSZXNvbHZlZFBvc2l0aW9uLmNwcApAQCAtMTQwLDcgKzE0MCw3IEBAIHN0YXRpYyB1bnNp
Z25lZCByZXNvbHZlTmFtZWRHcmlkTGluZVBvc2l0aW9uRnJvbVN0eWxlKGNvbnN0IFJlbmRlclN0
eWxlJiBncmlkQ29uCiBzdGF0aWMgR3JpZFNwYW4gcmVzb2x2ZVJvd1N0YXJ0Q29sdW1uU3RhcnRO
YW1lZEdyaWRMaW5lUG9zaXRpb25BZ2FpbnN0T3Bwb3NpdGVQb3NpdGlvbih1bnNpZ25lZCByZXNv
bHZlZE9wcG9zaXRlUG9zaXRpb24sIGNvbnN0IEdyaWRQb3NpdGlvbiYgcG9zaXRpb24sIGNvbnN0
IFZlY3Rvcjx1bnNpZ25lZD4mIGdyaWRMaW5lcykKIHsKICAgICBpZiAoIXJlc29sdmVkT3Bwb3Np
dGVQb3NpdGlvbikKLSAgICAgICAgcmV0dXJuIEdyaWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFuKHJl
c29sdmVkT3Bwb3NpdGVQb3NpdGlvbiwgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uICsgMSk7Cisg
ICAgICAgIHJldHVybiBHcmlkU3Bhbjo6dW50cmFuc2xhdGVkRGVmaW5pdGVHcmlkU3BhbihyZXNv
bHZlZE9wcG9zaXRlUG9zaXRpb24sIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiArIDEpOwogCiAg
ICAgdW5zaWduZWQgZmlyc3RMaW5lQmVmb3JlUG9zaXRpb25JbmRleCA9IDA7CiAgICAgYXV0byBm
aXJzdExpbmVCZWZvcmVQb3NpdGlvbiA9IHN0ZDo6bG93ZXJfYm91bmQoZ3JpZExpbmVzLmJlZ2lu
KCksIGdyaWRMaW5lcy5lbmQoKSwgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uKTsKQEAgLTE1Miw3
ICsxNTIsNyBAQCBzdGF0aWMgR3JpZFNwYW4gcmVzb2x2ZVJvd1N0YXJ0Q29sdW1uU3RhcnROYW1l
ZEdyaWRMaW5lUG9zaXRpb25BZ2FpbnN0T3Bwb3NpdGVQbwogICAgIHVuc2lnbmVkIHJlc29sdmVk
R3JpZExpbmVQb3NpdGlvbiA9IGdyaWRMaW5lc1tncmlkTGluZUluZGV4XTsKICAgICBpZiAocmVz
b2x2ZWRHcmlkTGluZVBvc2l0aW9uID49IHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbikKICAgICAg
ICAgcmVzb2x2ZWRHcmlkTGluZVBvc2l0aW9uID0gcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uIC0g
MTsKLSAgICByZXR1cm4gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4oc3RkOjptaW4ocmVzb2x2
ZWRHcmlkTGluZVBvc2l0aW9uLCByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24pLCByZXNvbHZlZE9w
cG9zaXRlUG9zaXRpb24pOworICAgIHJldHVybiBHcmlkU3Bhbjo6dW50cmFuc2xhdGVkRGVmaW5p
dGVHcmlkU3BhbihzdGQ6Om1pbihyZXNvbHZlZEdyaWRMaW5lUG9zaXRpb24sIHJlc29sdmVkT3Bw
b3NpdGVQb3NpdGlvbiksIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbik7CiB9CiAKIHN0YXRpYyBH
cmlkU3BhbiByZXNvbHZlUm93RW5kQ29sdW1uRW5kTmFtZWRHcmlkTGluZVBvc2l0aW9uQWdhaW5z
dE9wcG9zaXRlUG9zaXRpb24odW5zaWduZWQgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uLCBjb25z
dCBHcmlkUG9zaXRpb24mIHBvc2l0aW9uLCBjb25zdCBWZWN0b3I8dW5zaWduZWQ+JiBncmlkTGlu
ZXMpCkBAIC0xNjcsNyArMTY3LDcgQEAgc3RhdGljIEdyaWRTcGFuIHJlc29sdmVSb3dFbmRDb2x1
bW5FbmROYW1lZEdyaWRMaW5lUG9zaXRpb25BZ2FpbnN0T3Bwb3NpdGVQb3NpdGkKICAgICB1bnNp
Z25lZCByZXNvbHZlZEdyaWRMaW5lUG9zaXRpb24gPSBncmlkTGluZXNbZ3JpZExpbmVJbmRleF07
CiAgICAgaWYgKHJlc29sdmVkR3JpZExpbmVQb3NpdGlvbiA8PSByZXNvbHZlZE9wcG9zaXRlUG9z
aXRpb24pCiAgICAgICAgIHJlc29sdmVkR3JpZExpbmVQb3NpdGlvbiA9IHJlc29sdmVkT3Bwb3Np
dGVQb3NpdGlvbiArIDE7Ci0gICAgcmV0dXJuIEdyaWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFuKHJl
c29sdmVkT3Bwb3NpdGVQb3NpdGlvbiwgcmVzb2x2ZWRHcmlkTGluZVBvc2l0aW9uKTsKKyAgICBy
ZXR1cm4gR3JpZFNwYW46OnVudHJhbnNsYXRlZERlZmluaXRlR3JpZFNwYW4ocmVzb2x2ZWRPcHBv
c2l0ZVBvc2l0aW9uLCByZXNvbHZlZEdyaWRMaW5lUG9zaXRpb24pOwogfQogCiBzdGF0aWMgR3Jp
ZFNwYW4gcmVzb2x2ZU5hbWVkR3JpZExpbmVQb3NpdGlvbkFnYWluc3RPcHBvc2l0ZVBvc2l0aW9u
KGNvbnN0IFJlbmRlclN0eWxlJiBncmlkQ29udGFpbmVyU3R5bGUsIHVuc2lnbmVkIHJlc29sdmVk
T3Bwb3NpdGVQb3NpdGlvbiwgY29uc3QgR3JpZFBvc2l0aW9uJiBwb3NpdGlvbiwgR3JpZFBvc2l0
aW9uU2lkZSBzaWRlKQpAQCAtMTgzLDkgKzE4Myw5IEBAIHN0YXRpYyBHcmlkU3BhbiByZXNvbHZl
TmFtZWRHcmlkTGluZVBvc2l0aW9uQWdhaW5zdE9wcG9zaXRlUG9zaXRpb24oY29uc3QgUmVuZGVy
CiAgICAgLy8gSWYgdGhlcmUgaXMgbm8gbmFtZWQgZ3JpZCBsaW5lIG9mIHRoYXQgbmFtZSwgd2Ug
cmVzb2x2ZSB0aGUgcG9zaXRpb24gdG8gJ2F1dG8nICh3aGljaCBpcyBlcXVpdmFsZW50IHRvICdz
cGFuIDEnIGluIHRoaXMgY2FzZSkuCiAgICAgLy8gU2VlIGh0dHA6Ly9saXN0cy53My5vcmcvQXJj
aGl2ZXMvUHVibGljL3d3dy1zdHlsZS8yMDEzSnVuLzAzOTQuaHRtbC4KICAgICBpZiAoaXQgPT0g
Z3JpZExpbmVzTmFtZXMuZW5kKCkpIHsKLSAgICAgICAgaWYgKGlzU3RhcnRTaWRlKHNpZGUpICYm
IHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbikKLSAgICAgICAgICAgIHJldHVybiBHcmlkU3Bhbjo6
ZGVmaW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24gLSAxLCByZXNvbHZlZE9w
cG9zaXRlUG9zaXRpb24pOwotICAgICAgICByZXR1cm4gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNw
YW4ocmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uLCByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24gKyAx
KTsKKyAgICAgICAgaWYgKGlzU3RhcnRTaWRlKHNpZGUpKQorICAgICAgICAgICAgcmV0dXJuIEdy
aWRTcGFuOjp1bnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKHJlc29sdmVkT3Bwb3NpdGVQb3Np
dGlvbiAtIDEsIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbik7CisgICAgICAgIHJldHVybiBHcmlk
U3Bhbjo6dW50cmFuc2xhdGVkRGVmaW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRp
b24sIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiArIDEpOwogICAgIH0KIAogICAgIGlmIChzaWRl
ID09IFJvd1N0YXJ0U2lkZSB8fCBzaWRlID09IENvbHVtblN0YXJ0U2lkZSkKQEAgLTE5Nyw5ICsx
OTcsOSBAQCBzdGF0aWMgR3JpZFNwYW4gcmVzb2x2ZU5hbWVkR3JpZExpbmVQb3NpdGlvbkFnYWlu
c3RPcHBvc2l0ZVBvc2l0aW9uKGNvbnN0IFJlbmRlcgogc3RhdGljIEdyaWRTcGFuIHJlc29sdmVH
cmlkUG9zaXRpb25BZ2FpbnN0T3Bwb3NpdGVQb3NpdGlvbihjb25zdCBSZW5kZXJTdHlsZSYgZ3Jp
ZENvbnRhaW5lclN0eWxlLCB1bnNpZ25lZCByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24sIGNvbnN0
IEdyaWRQb3NpdGlvbiYgcG9zaXRpb24sIEdyaWRQb3NpdGlvblNpZGUgc2lkZSkKIHsKICAgICBp
ZiAocG9zaXRpb24uaXNBdXRvKCkpIHsKLSAgICAgICAgaWYgKGlzU3RhcnRTaWRlKHNpZGUpICYm
IHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbikKLSAgICAgICAgICAgIHJldHVybiBHcmlkU3Bhbjo6
ZGVmaW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24gLSAxLCByZXNvbHZlZE9w
cG9zaXRlUG9zaXRpb24pOwotICAgICAgICByZXR1cm4gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNw
YW4ocmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uLCByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24gKyAx
KTsKKyAgICAgICAgaWYgKGlzU3RhcnRTaWRlKHNpZGUpKQorICAgICAgICAgICAgcmV0dXJuIEdy
aWRTcGFuOjp1bnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKHJlc29sdmVkT3Bwb3NpdGVQb3Np
dGlvbiAtIDEsIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbik7CisgICAgICAgIHJldHVybiBHcmlk
U3Bhbjo6dW50cmFuc2xhdGVkRGVmaW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRp
b24sIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiArIDEpOwogICAgIH0KIAogICAgIEFTU0VSVChw
b3NpdGlvbi5pc1NwYW4oKSk7CkBAIC0yMTMsMTUgKzIxMywxMCBAQCBzdGF0aWMgR3JpZFNwYW4g
cmVzb2x2ZUdyaWRQb3NpdGlvbkFnYWluc3RPcHBvc2l0ZVBvc2l0aW9uKGNvbnN0IFJlbmRlclN0
eWxlJiBncgogICAgIC8vICdzcGFuIDEnIGlzIGNvbnRhaW5lZCBpbnNpZGUgYSBzaW5nbGUgZ3Jp
ZCB0cmFjayByZWdhcmRsZXNzIG9mIHRoZSBkaXJlY3Rpb24uCiAgICAgLy8gVGhhdCdzIHdoeSB0
aGUgQ1NTIHNwYW4gdmFsdWUgaXMgb25lIG1vcmUgdGhhbiB0aGUgb2Zmc2V0IHdlIGFwcGx5Lgog
ICAgIHVuc2lnbmVkIHBvc2l0aW9uT2Zmc2V0ID0gcG9zaXRpb24uc3BhblBvc2l0aW9uKCk7Ci0g
ICAgaWYgKGlzU3RhcnRTaWRlKHNpZGUpKSB7Ci0gICAgICAgIGlmICghcmVzb2x2ZWRPcHBvc2l0
ZVBvc2l0aW9uKQotICAgICAgICAgICAgcmV0dXJuIEdyaWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFu
KHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiwgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uICsgMSk7
CisgICAgaWYgKGlzU3RhcnRTaWRlKHNpZGUpKQorICAgICAgICByZXR1cm4gR3JpZFNwYW46OnVu
dHJhbnNsYXRlZERlZmluaXRlR3JpZFNwYW4ocmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uIC0gcG9z
aXRpb25PZmZzZXQsIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbik7CiAKLSAgICAgICAgdW5zaWdu
ZWQgaW5pdGlhbFJlc29sdmVkUG9zaXRpb24gPSBzdGQ6Om1heDxpbnQ+KDAsIHJlc29sdmVkT3Bw
b3NpdGVQb3NpdGlvbiAtIHBvc2l0aW9uT2Zmc2V0KTsKLSAgICAgICAgcmV0dXJuIEdyaWRTcGFu
OjpkZWZpbml0ZUdyaWRTcGFuKGluaXRpYWxSZXNvbHZlZFBvc2l0aW9uLCByZXNvbHZlZE9wcG9z
aXRlUG9zaXRpb24pOwotICAgIH0KLQotICAgIHJldHVybiBHcmlkU3Bhbjo6ZGVmaW5pdGVHcmlk
U3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24sIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiAr
IHBvc2l0aW9uT2Zmc2V0KTsKKyAgICByZXR1cm4gR3JpZFNwYW46OnVudHJhbnNsYXRlZERlZmlu
aXRlR3JpZFNwYW4ocmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uLCByZXNvbHZlZE9wcG9zaXRlUG9z
aXRpb24gKyBwb3NpdGlvbk9mZnNldCk7CiB9CiAKIHVuc2lnbmVkIEdyaWRSZXNvbHZlZFBvc2l0
aW9uOjpzcGFuU2l6ZUZvckF1dG9QbGFjZWRJdGVtKGNvbnN0IFJlbmRlclN0eWxlJiBncmlkQ29u
dGFpbmVyU3R5bGUsIGNvbnN0IFJlbmRlckJveCYgZ3JpZEl0ZW0sIEdyaWRUcmFja1NpemluZ0Rp
cmVjdGlvbiBkaXJlY3Rpb24pCkBAIC0yNDIsNyArMjM3LDcgQEAgdW5zaWduZWQgR3JpZFJlc29s
dmVkUG9zaXRpb246OnNwYW5TaXplRm9yQXV0b1BsYWNlZEl0ZW0oY29uc3QgUmVuZGVyU3R5bGUm
IGdyaWQKICAgICByZXR1cm4gcG9zaXRpb24uc3BhblBvc2l0aW9uKCk7CiB9CiAKLXN0YXRpYyB1
bnNpZ25lZCByZXNvbHZlR3JpZFBvc2l0aW9uRnJvbVN0eWxlKGNvbnN0IFJlbmRlclN0eWxlJiBn
cmlkQ29udGFpbmVyU3R5bGUsIGNvbnN0IEdyaWRQb3NpdGlvbiYgcG9zaXRpb24sIEdyaWRQb3Np
dGlvblNpZGUgc2lkZSkKK3N0YXRpYyBpbnQgcmVzb2x2ZUdyaWRQb3NpdGlvbkZyb21TdHlsZShj
b25zdCBSZW5kZXJTdHlsZSYgZ3JpZENvbnRhaW5lclN0eWxlLCBjb25zdCBHcmlkUG9zaXRpb24m
IHBvc2l0aW9uLCBHcmlkUG9zaXRpb25TaWRlIHNpZGUpCiB7CiAgICAgc3dpdGNoIChwb3NpdGlv
bi50eXBlKCkpIHsKICAgICBjYXNlIEV4cGxpY2l0UG9zaXRpb246IHsKQEAgLTI1NSwxMyArMjUw
LDkgQEAgc3RhdGljIHVuc2lnbmVkIHJlc29sdmVHcmlkUG9zaXRpb25Gcm9tU3R5bGUoY29uc3Qg
UmVuZGVyU3R5bGUmIGdyaWRDb250YWluZXJTdHkKICAgICAgICAgaWYgKHBvc2l0aW9uLmlzUG9z
aXRpdmUoKSkKICAgICAgICAgICAgIHJldHVybiBwb3NpdGlvbi5pbnRlZ2VyUG9zaXRpb24oKSAt
IDE7CiAKLSAgICAgICAgdW5zaWduZWQgcmVzb2x2ZWRQb3NpdGlvbiA9IGFicyhwb3NpdGlvbi5p
bnRlZ2VyUG9zaXRpb24oKSkgLSAxOworICAgICAgICB1bnNpZ25lZCByZXNvbHZlZFBvc2l0aW9u
ID0gc3RkOjphYnMocG9zaXRpb24uaW50ZWdlclBvc2l0aW9uKCkpIC0gMTsKICAgICAgICAgY29u
c3QgdW5zaWduZWQgZW5kT2ZUcmFjayA9IGV4cGxpY2l0R3JpZFNpemVGb3JTaWRlKGdyaWRDb250
YWluZXJTdHlsZSwgc2lkZSk7CiAKLSAgICAgICAgLy8gUGVyIGh0dHA6Ly9saXN0cy53My5vcmcv
QXJjaGl2ZXMvUHVibGljL3d3dy1zdHlsZS8yMDEzTWFyLzA1ODkuaHRtbCwgd2UgY2xhbXAgbmVn
YXRpdmUgdmFsdWUgdG8gdGhlIGZpcnN0IGxpbmUuCi0gICAgICAgIGlmIChlbmRPZlRyYWNrIDwg
cmVzb2x2ZWRQb3NpdGlvbikKLSAgICAgICAgICAgIHJldHVybiAwOwotCiAgICAgICAgIHJldHVy
biBlbmRPZlRyYWNrIC0gcmVzb2x2ZWRQb3NpdGlvbjsKICAgICB9CiAgICAgY2FzZSBOYW1lZEdy
aWRBcmVhUG9zaXRpb246CkBAIC0zMjMsMTUgKzMxNCwxNSBAQCBHcmlkU3BhbiBHcmlkUmVzb2x2
ZWRQb3NpdGlvbjo6cmVzb2x2ZUdyaWRQb3NpdGlvbnNGcm9tU3R5bGUoY29uc3QgUmVuZGVyU3R5
bGUmCiAgICAgICAgIHJldHVybiByZXNvbHZlR3JpZFBvc2l0aW9uQWdhaW5zdE9wcG9zaXRlUG9z
aXRpb24oZ3JpZENvbnRhaW5lclN0eWxlLCBpbml0aWFsUmVzb2x2ZWRQb3NpdGlvbiwgZmluYWxQ
b3NpdGlvbiwgZmluYWxTaWRlKTsKICAgICB9CiAKLSAgICB1bnNpZ25lZCByZXNvbHZlZEluaXRp
YWxQb3NpdGlvbiA9IHJlc29sdmVHcmlkUG9zaXRpb25Gcm9tU3R5bGUoZ3JpZENvbnRhaW5lclN0
eWxlLCBpbml0aWFsUG9zaXRpb24sIGluaXRpYWxTaWRlKTsKLSAgICB1bnNpZ25lZCByZXNvbHZl
ZEZpbmFsUG9zaXRpb24gPSByZXNvbHZlR3JpZFBvc2l0aW9uRnJvbVN0eWxlKGdyaWRDb250YWlu
ZXJTdHlsZSwgZmluYWxQb3NpdGlvbiwgZmluYWxTaWRlKTsKKyAgICBpbnQgcmVzb2x2ZWRJbml0
aWFsUG9zaXRpb24gPSByZXNvbHZlR3JpZFBvc2l0aW9uRnJvbVN0eWxlKGdyaWRDb250YWluZXJT
dHlsZSwgaW5pdGlhbFBvc2l0aW9uLCBpbml0aWFsU2lkZSk7CisgICAgaW50IHJlc29sdmVkRmlu
YWxQb3NpdGlvbiA9IHJlc29sdmVHcmlkUG9zaXRpb25Gcm9tU3R5bGUoZ3JpZENvbnRhaW5lclN0
eWxlLCBmaW5hbFBvc2l0aW9uLCBmaW5hbFNpZGUpOwogCiAgICAgaWYgKHJlc29sdmVkSW5pdGlh
bFBvc2l0aW9uID4gcmVzb2x2ZWRGaW5hbFBvc2l0aW9uKQogICAgICAgICBzdGQ6OnN3YXAocmVz
b2x2ZWRJbml0aWFsUG9zaXRpb24sIHJlc29sdmVkRmluYWxQb3NpdGlvbik7CiAgICAgZWxzZSBp
ZiAocmVzb2x2ZWRJbml0aWFsUG9zaXRpb24gPT0gcmVzb2x2ZWRGaW5hbFBvc2l0aW9uKQogICAg
ICAgICByZXNvbHZlZEZpbmFsUG9zaXRpb24gPSByZXNvbHZlZEluaXRpYWxQb3NpdGlvbiArIDE7
CiAKLSAgICByZXR1cm4gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4ocmVzb2x2ZWRJbml0aWFs
UG9zaXRpb24sIHN0ZDo6bWF4KHJlc29sdmVkSW5pdGlhbFBvc2l0aW9uLCByZXNvbHZlZEZpbmFs
UG9zaXRpb24pKTsKKyAgICByZXR1cm4gR3JpZFNwYW46OnVudHJhbnNsYXRlZERlZmluaXRlR3Jp
ZFNwYW4ocmVzb2x2ZWRJbml0aWFsUG9zaXRpb24sIHN0ZDo6bWF4KHJlc29sdmVkSW5pdGlhbFBv
c2l0aW9uLCByZXNvbHZlZEZpbmFsUG9zaXRpb24pKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCmluZGV4IGI4MjA5MjdhOGM4YzdlYWYwY2M1MTk2NWM1NGI5YzAzZDRlNjY0NDIuLjM4
MjI4MzA4ZDg2YjM2NmYzNTVmNGI0ZTBlMWE2NTM0MTEzMWQ4OWUgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
OCBAQAorMjAxNi0wMy0wNyAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNv
bT4KKworICAgICAgICBbY3NzLWdyaWRdIEluaXRpYWwgc3VwcG9ydCBmb3IgaW1wbGljaXQgZ3Jp
ZCBiZWZvcmUgZXhwbGljaXQgZ3JpZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTU1MDE0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CisKKyAgICAgICAgVXBkYXRlZCByZXN1bHRzIGluIGN1cnJlbnQgdGVzdHMgYW5kIGFkZGVkIHNw
ZWNpZmljIHRlc3QgZm9yIHRoaXMuCisKKyAgICAgICAgKiBmYXN0L2Nzcy1ncmlkLWxheW91dC9n
cmlkLWF1dG8tZmxvdy1yZXNvbHV0aW9uLmh0bWw6CisgICAgICAgICogZmFzdC9jc3MtZ3JpZC1s
YXlvdXQvZ3JpZC1pdGVtLW5lZ2F0aXZlLXBvc2l0aW9uLXJlc29sdXRpb24uaHRtbDoKKyAgICAg
ICAgKiBmYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWl0ZW0tc3Bhbm5pbmctcmVzb2x1dGlvbi5o
dG1sOgorICAgICAgICAqIGZhc3QvY3NzLWdyaWQtbGF5b3V0L2ltcGxpY2l0LXRyYWNrcy1iZWZv
cmUtZXhwbGljaXQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Nzcy1ncmlk
LWxheW91dC9pbXBsaWNpdC10cmFja3MtYmVmb3JlLWV4cGxpY2l0Lmh0bWw6IEFkZGVkLgorCiAy
MDE2LTAzLTA3ICBBZGFtIEJlcmdrdmlzdCAgPGFkYW0uYmVyZ2t2aXN0QGVyaWNzc29uLmNvbT4K
IAogICAgICAgICBXZWJSVEM6IEltcGxlbWVudCBNZWRpYUVuZHBvaW50UGVlckNvbm5lY3Rpb246
OmNyZWF0ZU9mZmVyKCkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5
b3V0L2dyaWQtYXV0by1mbG93LXJlc29sdXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3Nz
LWdyaWQtbGF5b3V0L2dyaWQtYXV0by1mbG93LXJlc29sdXRpb24uaHRtbAppbmRleCAxOTNlOWRk
NjNhYjVlOGVmYTcwN2VjNTAzZWIwNzFkNjIzNzI3MzlmLi45Zjc2YzRmYjlkM2JlZmQ5NjQ4ZWJl
ODc4MDVhMTZlNjIxYjlmODU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlk
LWxheW91dC9ncmlkLWF1dG8tZmxvdy1yZXNvbHV0aW9uLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1hdXRvLWZsb3ctcmVzb2x1dGlvbi5odG1sCkBAIC0y
Myw4ICsyMyw2IEBACiAgICAgLXdlYmtpdC1ncmlkLWNvbHVtbjogYXV0byAvIDg7CiB9CiAKLS8q
IFRoZXNlIDIgY2xhc3NlcyBmb3JjZXMgdGhlIGdyaWQgdG8gYmUgc2l6ZWQgYWZ0ZXIgdGhlIGdy
aWQte2NvbHVtbnxyb3d9LWVuZCwgdGh1cyBlbmQgdXAgaW4gdGhlCi0gICBmaXJzdCByb3cgLyBj
b2x1bW5zLiAqLwogLm5lZ2F0aXZlT3ZlcmZsb3dpbmdSb3dGaXJzdENvbHVtbiB7CiAgICAgLXdl
YmtpdC1ncmlkLXJvdzogYXV0byAvIC0xMDsKICAgICAtd2Via2l0LWdyaWQtY29sdW1uOiAxOwpA
QCAtMTUzLDE1ICsxNTEsMTUgQEAKIAogPGRpdiBjbGFzcz0idW5jb25zdHJhaW5lZENvbnRhaW5l
ciI+CiAgICAgPGRpdiBjbGFzcz0iZ3JpZCBiaWdHcmlkIGdyaWRBdXRvRmxvd0NvbHVtblNwYXJz
ZSBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRB
cmVhIG5lZ2F0aXZlT3ZlcmZsb3dpbmdSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIg
ZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNTAiIGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSI1MCI+WFhYWFggWFhYWFggWFhYWFg8L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0i
c2l6ZWRUb0dyaWRBcmVhIHNlY29uZFJvd05lZ2F0aXZlT3ZlcmZsb3dpbmdDb2x1bW4iIGRhdGEt
b2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjUwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1MCIg
ZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCI+WFhYWFggWFhYWFggWFhYWFg8L2Rpdj4KKyAgICAg
ICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIG5lZ2F0aXZlT3ZlcmZsb3dpbmdSb3dGaXJz
dENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMTcwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVj
dGVkLXdpZHRoPSI1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjMwIj5YWFhYWCBYWFhYWCBYWFhY
WDwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgc2Vjb25kUm93TmVn
YXRpdmVPdmVyZmxvd2luZ0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0i
ODAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjE3MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCI+
WFhYWFggWFhYWFggWFhYWFg8L2Rpdj4KICAgICA8L2Rpdj4KIDwvZGl2PgogCiA8ZGl2IGNsYXNz
PSJ1bmNvbnN0cmFpbmVkQ29udGFpbmVyIj4KICAgICA8ZGl2IGNsYXNzPSJncmlkIGJpZ0dyaWQg
Z3JpZEF1dG9GbG93Um93U3BhcnNlIGp1c3RpZnlDb250ZW50U3RhcnQiPgotICAgICAgICA8ZGl2
IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgbmVnYXRpdmVPdmVyZmxvd2luZ1Jvd0ZpcnN0Q29sdW1u
IiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRo
PSI1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWFhYWCBYWFhYWCBYWFhYWDwvZGl2Pgot
ICAgICAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgc2Vjb25kUm93TmVnYXRpdmVPdmVy
Zmxvd2luZ0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iNTAiIGRhdGEt
ZXhwZWN0ZWQtd2lkdGg9IjUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAwIj5YWFhYWCBYWFhY
WCBYWFhYWDwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgbmVnYXRp
dmVPdmVyZmxvd2luZ1Jvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIxNzAiIGRhdGEtb2Zm
c2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0i
MzAiPlhYWFhYIFhYWFhYIFhYWFhYPC9kaXY+CisgICAgICAgIDxkaXYgY2xhc3M9InNpemVkVG9H
cmlkQXJlYSBzZWNvbmRSb3dOZWdhdGl2ZU92ZXJmbG93aW5nQ29sdW1uIiBkYXRhLW9mZnNldC14
PSIwIiBkYXRhLW9mZnNldC15PSI4MCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTcwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iMTAwIj5YWFhYWCBYWFhYWCBYWFhYWDwvZGl2PgogICAgIDwvZGl2Pgog
PC9kaXY+CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dy
aWQtaXRlbS1uZWdhdGl2ZS1wb3NpdGlvbi1yZXNvbHV0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWl0ZW0tbmVnYXRpdmUtcG9zaXRpb24tcmVzb2x1dGlv
bi5odG1sCmluZGV4IDNmMmJiNzc5OThjM2Y0MWUzNDI1ZTdjOGE0MmNlYjdkNmQ5OTgxZjIuLmY2
MWM5YTMxYjc5ZjNjNGY3ZDY3YmVjZjhjNjBhODJlMzE5MTFiYTkgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRlbS1uZWdhdGl2ZS1wb3NpdGlvbi1y
ZXNvbHV0aW9uLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3Jp
ZC1pdGVtLW5lZ2F0aXZlLXBvc2l0aW9uLXJlc29sdXRpb24uaHRtbApAQCAtMTU4LDggKzE1OCw4
IEBACiA8L2Rpdj4KIAogPGRpdiBzdHlsZT0icG9zaXRpb246IHJlbGF0aXZlIj4KLTxkaXYgY2xh
c3M9ImdyaWQiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjE1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9
IjE1MCI+Ci0gICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIG5lZ2F0aXZlRW5kUG9zaXRp
b25TdGFydFNwYW5JblJvd0RpcmVjdGlvbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQt
eT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxNTAi
PjwvZGl2PgorPGRpdiBjbGFzcz0iZ3JpZCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTUwIiBkYXRh
LWV4cGVjdGVkLWhlaWdodD0iNzUwIj4KKyAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEg
bmVnYXRpdmVFbmRQb3NpdGlvblN0YXJ0U3BhbkluUm93RGlyZWN0aW9uIiBkYXRhLW9mZnNldC14
PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1MCIgZGF0YS1leHBl
Y3RlZC1oZWlnaHQ9Ijc1MCI+PC9kaXY+CiA8L2Rpdj4KIDwvZGl2PgogCkBAIC0xNzAsOCArMTcw
LDggQEAKIDwvZGl2PgogCiA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogcmVsYXRpdmUiPgotPGRpdiBj
bGFzcz0iZ3JpZCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTUwIiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iMTUwIj4KLSAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgbmVnYXRpdmVOYW1lZEdy
aWRMaW5lRW5kUG9zaXRpb25TdGFydFNwYW5JblJvd0RpcmVjdGlvbiIgZGF0YS1vZmZzZXQteD0i
MCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNTAiIGRhdGEtZXhwZWN0
ZWQtaGVpZ2h0PSIxNTAiPjwvZGl2PgorPGRpdiBjbGFzcz0iZ3JpZCIgZGF0YS1leHBlY3RlZC13
aWR0aD0iMTUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNzUwIj4KKyAgICA8ZGl2IGNsYXNzPSJz
aXplZFRvR3JpZEFyZWEgbmVnYXRpdmVOYW1lZEdyaWRMaW5lRW5kUG9zaXRpb25TdGFydFNwYW5J
blJvd0RpcmVjdGlvbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1l
eHBlY3RlZC13aWR0aD0iNTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI3NTAiPjwvZGl2PgogPC9k
aXY+CiA8L2Rpdj4KIApAQCAtMTgyLDggKzE4Miw4IEBACiA8L2Rpdj4KIAogPGRpdiBzdHlsZT0i
cG9zaXRpb246IHJlbGF0aXZlIj4KLTxkaXYgY2xhc3M9ImdyaWQiIGRhdGEtZXhwZWN0ZWQtd2lk
dGg9IjE1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjE1MCI+Ci0gICAgPGRpdiBjbGFzcz0ic2l6
ZWRUb0dyaWRBcmVhIG5lZ2F0aXZlRW5kUG9zaXRpb25TdGFydE5lZ2F0aXZlSW5Sb3dEaXJlY3Rp
b24iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lk
dGg9IjUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPjwvZGl2PgorPGRpdiBjbGFzcz0iZ3Jp
ZCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNTUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTUwIj4K
KyAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgbmVnYXRpdmVFbmRQb3NpdGlvblN0YXJ0
TmVnYXRpdmVJblJvd0RpcmVjdGlvbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0i
MCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNDUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPjwv
ZGl2PgogPC9kaXY+CiA8L2Rpdj4KIApAQCAtMTk0LDggKzE5NCw4IEBACiA8L2Rpdj4KIAogPGRp
diBzdHlsZT0icG9zaXRpb246IHJlbGF0aXZlIj4KLTxkaXYgY2xhc3M9ImdyaWQiIGRhdGEtZXhw
ZWN0ZWQtd2lkdGg9IjE1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjE1MCI+Ci0gICAgPGRpdiBj
bGFzcz0ic2l6ZWRUb0dyaWRBcmVhIG5hbWVkR3JpZExpbmVFbmRQb3NpdGlvblN0YXJ0TmVnYXRp
dmVJblJvd0RpcmVjdGlvbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0
YS1leHBlY3RlZC13aWR0aD0iNTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+PC9kaXY+Cis8
ZGl2IGNsYXNzPSJncmlkIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1NTAiIGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSIxNTAiPgorICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBuYW1lZEdyaWRM
aW5lRW5kUG9zaXRpb25TdGFydE5lZ2F0aXZlSW5Sb3dEaXJlY3Rpb24iIGRhdGEtb2Zmc2V0LXg9
IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjQ1MCIgZGF0YS1leHBl
Y3RlZC1oZWlnaHQ9IjUwIj48L2Rpdj4KIDwvZGl2PgogPC9kaXY+CiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRlbS1zcGFubmluZy1yZXNvbHV0
aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWl0ZW0tc3Bh
bm5pbmctcmVzb2x1dGlvbi5odG1sCmluZGV4IDQ5ZTQ1ZWFhYWNkYTlmN2I4MWY1NGE4NGY5MGM2
M2Q5MTI5ODYwMGUuLjE2ZmVhY2ZkYWY4YTRiMTNhZWQ0OWIzNTI2NjNiYjdlZjgyZWU0ZGEgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRlbS1zcGFu
bmluZy1yZXNvbHV0aW9uLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlv
dXQvZ3JpZC1pdGVtLXNwYW5uaW5nLXJlc29sdXRpb24uaHRtbApAQCAtNyw2ICs3LDggQEAKICAg
ICAtd2Via2l0LWdyaWQtdGVtcGxhdGUtcm93czogMzAlIDcwJTsKICAgICB3aWR0aDogNDAwcHg7
CiAgICAgaGVpZ2h0OiAzMDBweDsKKyAgICAtd2Via2l0LWdyaWQtYXV0by1jb2x1bW5zOiAyMDBw
eDsKKyAgICAtd2Via2l0LWdyaWQtYXV0by1yb3dzOiAyNTBweDsKIH0KIAogI2JpZ0dyaWQgewpA
QCAtMTI0LDI1ICsxMjYsMjUgQEAKIAogPGRpdiBzdHlsZT0icG9zaXRpb246IHJlbGF0aXZlIj4K
IDxkaXYgY2xhc3M9ImdyaWQiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjQwMCIgZGF0YS1leHBlY3Rl
ZC1oZWlnaHQ9IjMwMCI+Ci0gICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIG5lZ2F0aXZl
T3ZlcmZsb3dSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0i
MCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTYwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iOTAiPjwv
ZGl2PgorICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBuZWdhdGl2ZU92ZXJmbG93Um93
Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhw
ZWN0ZWQtd2lkdGg9IjE2MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwMCI+PC9kaXY+CiA8L2Rp
dj4KIDwvZGl2PgogCiA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogcmVsYXRpdmUiPgogPGRpdiBjbGFz
cz0iZ3JpZCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNDAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0i
MzAwIj4KLSAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgb3ZlcmZsb3dSb3dGaXJzdENv
bHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13
aWR0aD0iMTYwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMzAwIj48L2Rpdj4KKyAgICA8ZGl2IGNs
YXNzPSJzaXplZFRvR3JpZEFyZWEgb3ZlcmZsb3dSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQt
eD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTYwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iODAwIj48L2Rpdj4KIDwvZGl2PgogPC9kaXY+CiAKIDxkaXYgc3R5bGU9
InBvc2l0aW9uOiByZWxhdGl2ZSI+CiA8ZGl2IGNsYXNzPSJncmlkIiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSI0MDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIzMDAiPgotICAgIDxkaXYgY2xhc3M9InNp
emVkVG9HcmlkQXJlYSBmaXJzdFJvd05lZ2F0aXZlT3ZlcmZsb3dDb2x1bW4iIGRhdGEtb2Zmc2V0
LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjE2MCIgZGF0YS1l
eHBlY3RlZC1oZWlnaHQ9IjkwIj48L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFy
ZWEgZmlyc3RSb3dOZWdhdGl2ZU92ZXJmbG93Q29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRh
LW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI0MDAiIGRhdGEtZXhwZWN0ZWQtaGVp
Z2h0PSI5MCI+PC9kaXY+CiA8L2Rpdj4KIDwvZGl2PgogCiA8ZGl2IHN0eWxlPSJwb3NpdGlvbjog
cmVsYXRpdmUiPgogPGRpdiBjbGFzcz0iZ3JpZCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNDAwIiBk
YXRhLWV4cGVjdGVkLWhlaWdodD0iMzAwIj4KLSAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFy
ZWEgZmlyc3RSb3dPdmVyZmxvd0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQt
eT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNDAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iOTAi
PjwvZGl2PgorICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBmaXJzdFJvd092ZXJmbG93
Q29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVk
LXdpZHRoPSI4MDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI5MCI+PC9kaXY+CiA8L2Rpdj4KIDwv
ZGl2PgogCkBAIC0xNTQsNyArMTU2LDcgQEAKIAogPGRpdiBzdHlsZT0icG9zaXRpb246IHJlbGF0
aXZlIj4KIDxkaXYgY2xhc3M9ImdyaWQiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjQwMCIgZGF0YS1l
eHBlY3RlZC1oZWlnaHQ9IjMwMCI+Ci0gICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIGF1
dG9TZWNvbmRSb3dBdXRvRmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0
LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjE2MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9Ijkw
Ij48L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgYXV0b1NlY29uZFJvd0F1
dG9GaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1l
eHBlY3RlZC13aWR0aD0iMjAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iOTAiPjwvZGl2PgogPC9k
aXY+CiA8L2Rpdj4KIApAQCAtMTg4LDcgKzE5MCw3IEBACiAKIDxkaXYgc3R5bGU9InBvc2l0aW9u
OiByZWxhdGl2ZSI+CiA8ZGl2IGNsYXNzPSJncmlkIiBpZD0iYmlnR3JpZCIgZGF0YS1leHBlY3Rl
ZC13aWR0aD0iMjAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAwIj4KLSAgICA8ZGl2IGNsYXNz
PSJzaXplZFRvR3JpZEFyZWEgdW5kZXJmbG93U3Bhbm5pbmciIGRhdGEtb2Zmc2V0LXg9IjAiIGRh
dGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1o
ZWlnaHQ9Ijc1Ij48L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgdW5kZXJm
bG93U3Bhbm5pbmciIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhw
ZWN0ZWQtd2lkdGg9IjMwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEzMjUiPjwvZGl2PgogPC9k
aXY+CiAKIDwhLS0gQ2hlY2sgdGhhdCB0aGUgZW5kIHNwYW4gaXMgaWdub3JlZCB3aGVuIHR3byBv
cHBvc2luZyBzcGFucyBhcmUgc3BlY2lmaWVkLS0+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy1ncmlkLWxheW91dC9pbXBsaWNpdC10cmFja3MtYmVmb3JlLWV4cGxpY2l0LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2ltcGxpY2l0LXRyYWNr
cy1iZWZvcmUtZXhwbGljaXQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ0OTZhOTFkY2EyNDIw
NjMzYmNiNjZmMjg4MjA0ODMzM2UzNGNiNWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9pbXBsaWNpdC10cmFja3MtYmVmb3JlLWV4cGxpY2l0LWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDExMiBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IGl0J3Mg
cG9zc2libGUgdG8gY3JlYXRlIGltcGxpY2l0IHRyYWNrcyBiZWZvcmUgdGhlIGV4cGxpY2l0IG9u
ZXMgdXNpbmcgbmVnYXRpdmUgaW5kZXhlcy4KKworWFgKK1BBU1MKK1gKK1hYCitQQVNTCitYCitY
WAorUEFTUworWAorWFgKK1BBU1MKK1gKK1hYCitQQVNTCitYCitYWAorUEFTUworWAorWFgKK1BB
U1MKK1gKK1hYCitQQVNTCitYCitYWAorUEFTUworWAorWFgKK1hYWAorUEFTUworWAorWFgKK1hY
WAorUEFTUworWAorWFgKK1hYWAorUEFTUworWAorWFgKK1hYWAorUEFTUworWAorWFgKK1BBU1MK
K1gKK1hYCitQQVNTCitYCitYWAorUEFTUworWAorWFgKK1BBU1MKK1gKK1hYCitQQVNTCitYCitY
WAorUEFTUworWAorWFgKK1BBU1MKK1gKK1hYCitQQVNTCitYCitYWAorWFhYCitQQVNTCitYCitY
WAorWFhYCitQQVNTCitYCitYWAorWFhYCitQQVNTCitYCitYWAorWFhYCitQQVNTCitYCitYWAor
WFhYCitQQVNTCitYCitYWAorWFhYCitQQVNTCitYCitYWAorWFhYCitQQVNTCitYCitYWAorWFhY
CitQQVNTCitYCitYWAorWFhYCitYWFhYCitYWFhYWAorUEFTUworWAorWFgKK1hYWAorWFhYWAor
WFhYWFgKK1BBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0
L2ltcGxpY2l0LXRyYWNrcy1iZWZvcmUtZXhwbGljaXQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzLWdyaWQtbGF5b3V0L2ltcGxpY2l0LXRyYWNrcy1iZWZvcmUtZXhwbGljaXQuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi43NjljNjJjYmQ5NmE3NzJhNDFhM2UxMWE4ZWE1YjUzMmJhNDkyYjQ2Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvaW1wbGljaXQtdHJh
Y2tzLWJlZm9yZS1leHBsaWNpdC5odG1sCkBAIC0wLDAgKzEsMjM0IEBACis8IURPQ1RZUEUgaHRt
bD4KKworPGxpbmsgaHJlZj0icmVzb3VyY2VzL2dyaWQuY3NzIiByZWw9InN0eWxlc2hlZXQiPgor
PGxpbmsgaHJlZj0icmVzb3VyY2VzL2dyaWQtYWxpZ25tZW50LmNzcyIgcmVsPSJzdHlsZXNoZWV0
Ij4KKzxzdHlsZT4KKy5ncmlkIHsKKyAgICAtd2Via2l0LWdyaWQ6IDUwcHggLyAxMDBweDsKKyAg
ICBmb250OiAxMHB4LzEgQWhlbTsKKyAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgbWFyZ2lu
OiAyNXB4OworfQorCisuZmlyc3ROZWdhdGl2ZVJvd0ZpcnN0Q29sdW1uIHsKKyAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiBwdXJwbGU7CisgICAgLXdlYmtpdC1ncmlkLXJvdzogLTM7CisgICAgLXdlYmtp
dC1ncmlkLWNvbHVtbjogMTsKK30KKworLmZpcnN0TmVnYXRpdmVSb3dGaXJzdE5lZ2F0aXZlQ29s
dW1uIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBuYXZ5OworICAgIC13ZWJraXQtZ3JpZC1yb3c6
IC0zOworICAgIC13ZWJraXQtZ3JpZC1jb2x1bW46IC0zOworfQorCisuc2Vjb25kTmVnYXRpdmVS
b3dGaXJzdENvbHVtbiB7CisgICAgYmFja2dyb3VuZC1jb2xvcjogbGltZTsKKyAgICAtd2Via2l0
LWdyaWQtcm93OiAtNDsKKyAgICAtd2Via2l0LWdyaWQtY29sdW1uOiAxOworfQorCisuc2Vjb25k
TmVnYXRpdmVSb3dTZWNvbmROZWdhdGl2ZUNvbHVtbiB7CisgICAgYmFja2dyb3VuZC1jb2xvcjog
b3JhbmdlOworICAgIC13ZWJraXQtZ3JpZC1yb3c6IC00OworICAgIC13ZWJraXQtZ3JpZC1jb2x1
bW46IC00OworfQorCisuZmlyc3RSb3dGaXJzdE5lZ2F0aXZlQ29sdW1uIHsKKyAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiBtYWdlbnRhOworICAgIC13ZWJraXQtZ3JpZC1yb3c6IDE7CisgICAgLXdlYmtp
dC1ncmlkLWNvbHVtbjogLTM7Cit9CisKKy5maXJzdE5lZ2F0aXZlUm93Rmlyc3ROZWdhdGl2ZUNv
bHVtbiB7CisgICAgYmFja2dyb3VuZC1jb2xvcjogbWFyb29uOworICAgIC13ZWJraXQtZ3JpZC1y
b3c6IC0zOworICAgIC13ZWJraXQtZ3JpZC1jb2x1bW46IC0zOworfQorCisuZmlyc3RSb3dTZWNv
bmROZWdhdGl2ZUNvbHVtbiB7CisgICAgYmFja2dyb3VuZC1jb2xvcjogYXF1YTsKKyAgICAtd2Vi
a2l0LWdyaWQtcm93OiAxOworICAgIC13ZWJraXQtZ3JpZC1jb2x1bW46IC00OworfQorCis8L3N0
eWxlPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9jaGVjay1sYXlvdXQuanMiPjwvc2Ny
aXB0PgorCis8Ym9keSBvbmxvYWQ9ImNoZWNrTGF5b3V0KCcuZ3JpZCcpIj4KKworPHA+VGhpcyB0
ZXN0IGNoZWNrcyB0aGF0IGl0J3MgcG9zc2libGUgdG8gY3JlYXRlIGltcGxpY2l0IHRyYWNrcyBi
ZWZvcmUgdGhlIGV4cGxpY2l0IG9uZXMgdXNpbmcgbmVnYXRpdmUgaW5kZXhlcy48L3A+CisKKzxk
aXYgY2xhc3M9ImdyaWQiPgorICAgIDxkaXYgY2xhc3M9ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRh
LW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAi
IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNz
PSJncmlkIj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93Rmlyc3RDb2x1bW4iIGRh
dGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEw
MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYXV0
b1Jvd0F1dG9Db2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRh
LWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4K
KzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdE5lZ2F0
aXZlUm93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+
CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIg
ZGF0YS1vZmZzZXQteT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3Rl
ZC1oZWlnaHQ9IjUwIj5YWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlm
eUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3ROZWdhdGl2ZVJvd0ZpcnN0TmVn
YXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhw
ZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAgICA8
ZGl2IGNsYXNzPSJhdXRvUm93QXV0b0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zm
c2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9
IjEwIj5YWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRT
dGFydCI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3ROZWdhdGl2ZVJvd0ZpcnN0TmVnYXRpdmVDb2x1
bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lk
dGg9IjEwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNz
PSJmaXJzdFJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZzZXQteT0i
MTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5Y
WDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQiPgorICAgIDxkaXYgY2xhc3M9InNl
Y29uZE5lZ2F0aXZlUm93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0
LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEw
Ij5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYXV0b1Jvd0F1dG9Db2x1bW4iIGRhdGEtb2Zmc2V0
LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEt
ZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlk
Ij4KKyAgICA8ZGl2IGNsYXNzPSJzZWNvbmROZWdhdGl2ZVJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9m
ZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRh
dGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93
Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4KKzwv
ZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYg
Y2xhc3M9InNlY29uZE5lZ2F0aXZlUm93U2Vjb25kTmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0
LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJhdXRvUm93QXV0b0Nv
bHVtbiIgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQt
d2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlhYPC9kaXY+Cis8L2Rpdj4KKwor
PGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJz
ZWNvbmROZWdhdGl2ZVJvd1NlY29uZE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBk
YXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1leHBlY3RlZC1o
ZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIg
ZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRo
PSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2
IGNsYXNzPSJncmlkIj4KKyAgICA8ZGl2IGNsYXNzPSJzZWNvbmROZWdhdGl2ZVJvd0ZpcnN0Q29s
dW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xh
c3M9ImZpcnN0TmVnYXRpdmVSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1v
ZmZzZXQteT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWln
aHQ9IjEwIj5YWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRh
LW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIyMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAw
IiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xh
c3M9ImdyaWQiPgorICAgIDxkaXYgY2xhc3M9InNlY29uZE5lZ2F0aXZlUm93Rmlyc3RDb2x1bW4i
IGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9
IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0i
Zmlyc3ROZWdhdGl2ZVJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNl
dC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0i
MTAiPlhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIgZGF0YS1v
ZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIg
ZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNz
PSJncmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9InNlY29uZE5lZ2F0
aXZlUm93U2Vjb25kTmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0
LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAi
Plg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93Rmlyc3ROZWdhdGl2ZUNv
bHVtbiIgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVjdGVk
LXdpZHRoPSIzMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YWDwvZGl2PgorICAgIDxkaXYg
Y2xhc3M9ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZzZXQt
eT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMzAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+
WFhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVudFN0YXJ0
Ij4KKyAgICA8ZGl2IGNsYXNzPSJzZWNvbmROZWdhdGl2ZVJvd1NlY29uZE5lZ2F0aXZlQ29sdW1u
IiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRo
PSIxMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0i
Zmlyc3ROZWdhdGl2ZVJvd0ZpcnN0TmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEwIiBk
YXRhLW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSIxMCI+WFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0Q29sdW1u
IiBkYXRhLW9mZnNldC14PSIzMCIgZGF0YS1vZmZzZXQteT0iMjAiIGRhdGEtZXhwZWN0ZWQtd2lk
dGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWFg8L2Rpdj4KKzwvZGl2PgorCis8
ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9ImZp
cnN0Um93Rmlyc3ROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQt
eT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+
WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRhLW9mZnNldC14
PSIxMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iNTAiPlhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBq
dXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0TmVnYXRp
dmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0
ZWQtd2lkdGg9IjEwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlg8L2Rpdj4KKyAgICA8ZGl2
IGNsYXNzPSJmaXJzdFJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZz
ZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0i
NTAiPlhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVudFN0
YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93Rmlyc3ROZWdhdGl2ZUNvbHVt
biIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0
aD0iMTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9
ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZzZXQteT0iMCIg
ZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlhYPC9k
aXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAg
ICA8ZGl2IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93Rmlyc3ROZWdhdGl2ZUNvbHVtbiIgZGF0YS1v
ZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRh
dGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93
Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEwIiBkYXRhLW9mZnNldC15PSIxMCIgZGF0YS1l
eHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYPC9kaXY+Cis8
L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2
IGNsYXNzPSJmaXJzdFJvd1NlY29uZE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBk
YXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1leHBlY3RlZC1o
ZWlnaHQ9IjUwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYXV0b1Jvd0F1dG9Db2x1bW4iIGRh
dGEtb2Zmc2V0LXg9IjEwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIy
MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xh
c3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dT
ZWNvbmROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIg
ZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WDwvZGl2
PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEw
IiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0
ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3Rp
ZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9InNlY29uZE5lZ2F0aXZlUm93U2Vjb25k
TmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEt
ZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAg
ICA8ZGl2IGNsYXNzPSJhdXRvUm93QXV0b0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEt
b2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iMTAiPlhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVu
dFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJzZWNvbmROZWdhdGl2ZVJvd1NlY29uZE5lZ2F0aXZl
Q29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVk
LXdpZHRoPSIxMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBj
bGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0
LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1
MCI+WFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50U3Rh
cnQiPgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93U2Vjb25kTmVnYXRpdmVDb2x1bW4iIGRhdGEt
b2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBk
YXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJv
d0ZpcnN0TmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEwIiBkYXRhLW9mZnNldC15PSIw
IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwv
ZGl2PgorICAgIDxkaXYgY2xhc3M9ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRhLW9mZnNldC14PSIz
MCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVj
dGVkLWhlaWdodD0iNTAiPlhYWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQganVz
dGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dTZWNvbmROZWdhdGl2
ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3Rl
ZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WDwvZGl2PgorICAgIDxkaXYg
Y2xhc3M9ImZpcnN0Um93Rmlyc3ROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMTAiIGRh
dGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhl
aWdodD0iNTAiPlhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIg
ZGF0YS1vZmZzZXQteD0iMzAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9
IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2
IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9InNlY29u
ZE5lZ2F0aXZlUm93U2Vjb25kTmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEt
b2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iMTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93Rmlyc3ROZWdh
dGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YWDwvZGl2PgorICAg
IDxkaXYgY2xhc3M9ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1v
ZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMzAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0
PSIxMCI+WFhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVu
dFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJzZWNvbmROZWdhdGl2ZVJvd1NlY29uZE5lZ2F0aXZl
Q29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVk
LXdpZHRoPSIxMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBj
bGFzcz0iZmlyc3ROZWdhdGl2ZVJvd0ZpcnN0TmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9
IjEwIiBkYXRhLW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhw
ZWN0ZWQtaGVpZ2h0PSIxMCI+WFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0
Q29sdW1uIiBkYXRhLW9mZnNldC14PSIzMCIgZGF0YS1vZmZzZXQteT0iMjAiIGRhdGEtZXhwZWN0
ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWFg8L2Rpdj4KKzwvZGl2
PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYgY2xh
c3M9ImZpcnN0TmVnYXRpdmVSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMzAiIGRhdGEt
b2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWln
aHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdE5lZ2F0aXZlQ29s
dW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13
aWR0aD0iMzAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4KKyAgICA8ZGl2IGNs
YXNzPSJhdXRvUm93QXV0b0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0i
MCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMzAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WFhY
PC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4K
KyAgICA8ZGl2IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0
LXg9IjIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEt
ZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmly
c3ROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMTAiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYPC9kaXY+
CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMjAi
IGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0
ZWQtaGVpZ2h0PSI1MCI+WFhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0
aWZ5Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJzZWNvbmROZWdhdGl2ZVJvd0ZpcnN0
Q29sdW1uIiBkYXRhLW9mZnNldC14PSIzMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3Rl
ZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAgICA8ZGl2
IGNsYXNzPSJmaXJzdFJvd1NlY29uZE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBk
YXRhLW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMzAiIGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSI1MCI+WFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJhdXRvUm93QXV0b0NvbHVtbiIg
ZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0i
MzAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WFhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBj
bGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJzZWNvbmRO
ZWdhdGl2ZVJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIyMCIgZGF0YS1vZmZzZXQteT0i
MCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlg8
L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd1NlY29uZE5lZ2F0aXZlQ29sdW1uIiBkYXRh
LW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAi
IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJz
dFJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIyMCIgZGF0YS1vZmZzZXQteT0iMTAiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWFg8L2Rp
dj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgorICAg
IDxkaXYgY2xhc3M9InNlY29uZE5lZ2F0aXZlUm93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9
IjkwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhw
ZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93U2Vjb25k
TmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjIwIiBkYXRh
LWV4cGVjdGVkLXdpZHRoPSI1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwvZGl2Pgor
ICAgIDxkaXYgY2xhc3M9ImZpcnN0TmVnYXRpdmVSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQt
eD0iOTAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEt
ZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WFhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dG
aXJzdE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSI1MCIgZGF0YS1vZmZzZXQteT0iMjAi
IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjQwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYWFg8
L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJhdXRvUm93QXV0b0NvbHVtbiIgZGF0YS1vZmZzZXQteD0i
MCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNTAiIGRhdGEtZXhwZWN0
ZWQtaGVpZ2h0PSIxMCI+WFhYWFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1
c3RpZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9InNlY29uZE5lZ2F0aXZlUm93Rmly
c3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjYwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVj
dGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxk
aXYgY2xhc3M9ImZpcnN0Um93U2Vjb25kTmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAi
IGRhdGEtb2Zmc2V0LXk9IjIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3Rl
ZC1oZWlnaHQ9IjUwIj5YWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0TmVnYXRpdmVSb3dG
aXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iNjAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WFhYPC9kaXY+Cisg
ICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14
PSIyMCIgZGF0YS1vZmZzZXQteT0iMjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjQwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iNTAiPlhYWFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0Zp
cnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSI2MCIgZGF0YS1vZmZzZXQteT0iMjAiIGRhdGEtZXhw
ZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWFhYWDwvZGl2Pgor
PC9kaXY+CisKKzwvYm9keT4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>273410</attachid>
            <date>2016-03-09 01:04:57 -0800</date>
            <delta_ts>2016-03-09 02:15:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-155014-20160309100442.patch</filename>
            <type>text/plain</type>
            <size>56539</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3NzAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTJhODIxZTg4NjA1NjA5
ZWIzMWRjN2Y1ODJiMzUwYTk5ODYzY2EyOS4uYTg3ODk5ZmU0M2YzZTIyOTc2YmQ1ZDI4YmJjZWEx
NDQ4ZTk1OTQ5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDgyIEBACisyMDE2LTAzLTA4ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtZ3Jp
ZF0gSW5pdGlhbCBzdXBwb3J0IGZvciBpbXBsaWNpdCBncmlkIGJlZm9yZSBleHBsaWNpdCBncmlk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTUwMTQK
KworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBDaGFuZ2UgR3Jp
ZFNwYW4gdG8gc3RvcmUgaW50IGluc3RlYWQgb2YgdW5zaWduZWQuIFRoaXMgYWxsb3dzIHVzIHRv
CisgICAgICAgIHJlc29sdmUgcG9zaXRpb25zIGJlZm9yZSB0aGUgZXhwbGljaXQgZ3JpZCB3aXRo
IG5lZ2F0aXZlIHZhbHVlcy4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYSBuZXcgdHlwZSBv
ZiBHcmlkU3BhbiBjYWxsZWQgIlVudHJhbnNsYXRlZCIuCisgICAgICAgIFRoaXMgdHlwZSBpcyBv
bmx5IHVzZWQgaW4gcG9wdWxhdGVFeHBsaWNpdEdyaWRBbmRPcmRlckl0ZXJhdG9yKCkuCisgICAg
ICAgIFdoZXJlIHdlIHN0b3JlIHRoZSBzbWFsbGVzdCBuZWdhdGl2ZSBwb3NpdGlvbiBpbiBib3Ro
IGF4aXMuCisKKyAgICAgICAgVGhlbiB0aGUgR3JpZFNwYW5zIGFyZSB0cmFuc2xhdGVkIGludG8g
cG9zaXRpdmUgdmFsdWVzLCB1c2luZyB0aGUgb2Zmc2V0CisgICAgICAgIGNhbGN1bGF0ZWQgYmVm
b3JlLiBUaGlzIGlzIGRvbmUgaW4gcGxhY2VJdGVtc09uR3JpZCgpIGFuZCBmcm9tIHRoYXQKKyAg
ICAgICAgbW9tZW50IHRoZSByZXN0IG9mIHRoZSBjb2RlIHVzZXMgIkRlZmluaXRlIiBHcmlkU3Bh
bnMsIHdoaWNoIHJldHVybnMKKyAgICAgICAgb25seSBwb3NpdGl2ZSBwb3NpdGlvbnMgKHVuc2ln
bmVkIGluc3RlYWQgb2YgaW50KS4KKyAgICAgICAgVGhpcyBhbGxvd3MgdXMgdG8gZG9uJ3QgaGF2
ZSB0byBtb2RpZnkgdGhlIHJlc3Qgb2YgdGhlIGNvZGUsIGFzIGl0IGtlZXBzCisgICAgICAgIHVz
aW5nIEdyaWRTcGFucyBhcyBiZWZvcmUuCisKKyAgICAgICAgTGV0J3MgdXNlIGFuIGV4YW1wbGUg
dG8gZXhwbGFpbiBob3cgaXQgd29ya3MuIEltYWdpbmUgdGhhdCB3ZSd2ZSBhIDIKKyAgICAgICAg
Y29sdW1ucyBncmlkIGFuZCAyIGl0ZW1zIHBsYWNlZCBsaWtlOgorICAgICAgICAqIEl0ZW0gQTog
Z3JpZC1jb2x1bW46IC01OworICAgICAgICAqIEl0ZW0gQjogZ3JpZC1jb2x1bW46IDE7CisKKyAg
ICAgICAgSW5pdGlhbGx5IHdlJ2xsIHVzZSAiVW5zdHJhbnNsYXRlZCIgR3JpZFNwYW5zIHdpdGgg
dGhlIGZvbGxvd2luZyB2YWx1ZXM6CisgICAgICAgICogSXRlbSBBOiBHcmlkU3BhbigtMiwgLTEp
CisgICAgICAgICogSXRlbSBCOiBHcmlkU3BhbigwLCAxKQorCisgICAgICAgIFRoZW4gd2UnbGwg
dHJhbnNsYXRlIHRoZW0gdXNpbmcgdGhlIHNtYWxsZXN0IHBvc2l0aW9uIGFzIG9mZnNldCAoLTIp
CisgICAgICAgIHNvIHdlJ3ZlICJEZWZpbml0ZSIgR3JpZFNwYW5zOgorICAgICAgICAqIEl0ZW0g
QTogR3JpZFNwYW4oMCwgMSkKKyAgICAgICAgKiBJdGVtIEI6IEdyaWRTcGFuKDIsIDMpCisKKyAg
ICAgICAgVGVzdDogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvaW1wbGljaXQtdHJhY2tzLWJlZm9yZS1l
eHBsaWNpdC5odG1sCisKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1BhcnNlcjo6cGFyc2VHcmlkVGVtcGxhdGVBcmVhc1Jvdyk6CisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlckdyaWQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyR3JpZDo6
R3JpZEl0ZXJhdG9yOjpuZXh0RW1wdHlHcmlkQXJlYSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJHcmlkOjpjb21wdXRlVXNlZEJyZWFkdGhPZkdyaWRUcmFja3MpOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyR3JpZDo6Z3JpZFRyYWNrU2l6ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJH
cmlkOjppbnNlcnRJdGVtSW50b0dyaWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyR3JpZDo6
cGxhY2VJdGVtc09uR3JpZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJHcmlkOjpwb3B1bGF0
ZUV4cGxpY2l0R3JpZEFuZE9yZGVySXRlcmF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
R3JpZDo6Y3JlYXRlRW1wdHlHcmlkQXJlYUF0U3BlY2lmaWVkUG9zaXRpb25zT3V0c2lkZUdyaWQp
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyR3JpZDo6cGxhY2VTcGVjaWZpZWRNYWpvckF4aXNJ
dGVtc09uR3JpZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJHcmlkOjpwbGFjZUF1dG9NYWpv
ckF4aXNJdGVtT25HcmlkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckdyaWQ6Om9mZnNldEFu
ZEJyZWFkdGhGb3JQb3NpdGlvbmVkQ2hpbGQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyR3Jp
ZDo6cGxhY2VBdXRvTWFqb3JBeGlzSXRlbXNPbkdyaWQpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyR3JpZDo6bGF5b3V0UG9zaXRpb25lZE9iamVjdCk6IERlbGV0ZWQuCisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlckdyaWQuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUv
R3JpZENvb3JkaW5hdGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjp1bnRyYW5zbGF0
ZWREZWZpbml0ZUdyaWRTcGFuKToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjp0cmFuc2xh
dGVkRGVmaW5pdGVHcmlkU3Bhbik6CisgICAgICAgIChXZWJDb3JlOjpHcmlkU3Bhbjo6aW50ZWdl
clNwYW4pOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OnVudHJhbnNsYXRlZFJlc29sdmVk
SW5pdGlhbFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjp1bnRyYW5zbGF0
ZWRSZXNvbHZlZEZpbmFsUG9zaXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OnJl
c29sdmVkSW5pdGlhbFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjpyZXNv
bHZlZEZpbmFsUG9zaXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OmJlZ2luKToK
KyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFuOjplbmQpOgorICAgICAgICAoV2ViQ29yZTo6R3Jp
ZFNwYW46OmlzVHJhbnNsYXRlZERlZmluaXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkdyaWRTcGFu
Ojppc0luZGVmaW5pdGUpOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OnRyYW5zbGF0ZSk6
CisgICAgICAgIChXZWJDb3JlOjpHcmlkU3Bhbjo6R3JpZFNwYW4pOgorICAgICAgICAoV2ViQ29y
ZTo6R3JpZFNwYW46Om9wZXJhdG9yPT0pOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6R3Jp
ZFNwYW46OkdyaWRTcGFuSXRlcmF0b3I6OkdyaWRTcGFuSXRlcmF0b3IpOiBEZWxldGVkLgorICAg
ICAgICAoV2ViQ29yZTo6R3JpZFNwYW46OkdyaWRTcGFuSXRlcmF0b3I6Om9wZXJhdG9yIHVuc2ln
bmVkJik6IERlbGV0ZWQuCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL0dyaWRSZXNvbHZlZFBv
c2l0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnJlc29sdmVSb3dTdGFydENvbHVtblN0YXJ0
TmFtZWRHcmlkTGluZVBvc2l0aW9uQWdhaW5zdE9wcG9zaXRlUG9zaXRpb24pOgorICAgICAgICAo
V2ViQ29yZTo6cmVzb2x2ZVJvd0VuZENvbHVtbkVuZE5hbWVkR3JpZExpbmVQb3NpdGlvbkFnYWlu
c3RPcHBvc2l0ZVBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OnJlc29sdmVOYW1lZEdyaWRM
aW5lUG9zaXRpb25BZ2FpbnN0T3Bwb3NpdGVQb3NpdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpy
ZXNvbHZlR3JpZFBvc2l0aW9uQWdhaW5zdE9wcG9zaXRlUG9zaXRpb24pOgorICAgICAgICAoV2Vi
Q29yZTo6cmVzb2x2ZUdyaWRQb3NpdGlvbkZyb21TdHlsZSk6CisgICAgICAgIChXZWJDb3JlOjpH
cmlkUmVzb2x2ZWRQb3NpdGlvbjo6cmVzb2x2ZUdyaWRQb3NpdGlvbnNGcm9tU3R5bGUpOgorICAg
ICAgICAoV2ViQ29yZTo6R3JpZFJlc29sdmVkUG9zaXRpb246OnNwYW5TaXplRm9yQXV0b1BsYWNl
ZEl0ZW0pOiBEZWxldGVkLgorCiAyMDE2LTAzLTA3ICBBZGFtIEJlcmdrdmlzdCAgPGFkYW0uYmVy
Z2t2aXN0QGVyaWNzc29uLmNvbT4KIAogICAgICAgICBXZWJSVEM6IEltcGxlbWVudCBNZWRpYUVu
ZHBvaW50UGVlckNvbm5lY3Rpb246OmNyZWF0ZU9mZmVyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5j
cHAKaW5kZXggZGJmMWVjMzYyNWM4ZmY1OGQ1ZWU2MWM1NTM0OGRhNjU5ZGJkOTlkYS4uZDg3ODM4
Mjk2MzNhMzQ3MGZkOTM4MzM0MjFjMjdlNDk4YTQxZThlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
ci5jcHAKQEAgLTYyNDksNyArNjI0OSw3IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZUdyaWRUZW1w
bGF0ZUFyZWFzUm93KE5hbWVkR3JpZEFyZWFNYXAmIGdyaWRBcmVhTWFwLCBjb25zdCB1CiAKICAg
ICAgICAgYXV0byBncmlkQXJlYUl0ZXJhdG9yID0gZ3JpZEFyZWFNYXAuZmluZChncmlkQXJlYU5h
bWUpOwogICAgICAgICBpZiAoZ3JpZEFyZWFJdGVyYXRvciA9PSBncmlkQXJlYU1hcC5lbmQoKSkK
LSAgICAgICAgICAgIGdyaWRBcmVhTWFwLmFkZChncmlkQXJlYU5hbWUsIEdyaWRDb29yZGluYXRl
KEdyaWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFuKHJvd0NvdW50LCByb3dDb3VudCArIDEpLCBHcmlk
U3Bhbjo6ZGVmaW5pdGVHcmlkU3BhbihjdXJyZW50Q29sdW1uLCBsb29rQWhlYWRDb2x1bW4pKSk7
CisgICAgICAgICAgICBncmlkQXJlYU1hcC5hZGQoZ3JpZEFyZWFOYW1lLCBHcmlkQ29vcmRpbmF0
ZShHcmlkU3Bhbjo6dHJhbnNsYXRlZERlZmluaXRlR3JpZFNwYW4ocm93Q291bnQsIHJvd0NvdW50
ICsgMSksIEdyaWRTcGFuOjp0cmFuc2xhdGVkRGVmaW5pdGVHcmlkU3BhbihjdXJyZW50Q29sdW1u
LCBsb29rQWhlYWRDb2x1bW4pKSk7CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgR3JpZENv
b3JkaW5hdGUmIGdyaWRDb29yZGluYXRlID0gZ3JpZEFyZWFJdGVyYXRvci0+dmFsdWU7CiAKQEAg
LTYyNjYsNyArNjI2Niw3IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZUdyaWRUZW1wbGF0ZUFyZWFz
Um93KE5hbWVkR3JpZEFyZWFNYXAmIGdyaWRBcmVhTWFwLCBjb25zdCB1CiAgICAgICAgICAgICBp
ZiAobG9va0FoZWFkQ29sdW1uICE9IGdyaWRDb29yZGluYXRlLmNvbHVtbnMucmVzb2x2ZWRGaW5h
bFBvc2l0aW9uKCkpCiAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgICAgICAg
ICBncmlkQ29vcmRpbmF0ZS5yb3dzID0gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4oZ3JpZENv
b3JkaW5hdGUucm93cy5yZXNvbHZlZEluaXRpYWxQb3NpdGlvbigpLCBncmlkQ29vcmRpbmF0ZS5y
b3dzLnJlc29sdmVkRmluYWxQb3NpdGlvbigpICsgMSk7CisgICAgICAgICAgICBncmlkQ29vcmRp
bmF0ZS5yb3dzID0gR3JpZFNwYW46OnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKGdyaWRDb29y
ZGluYXRlLnJvd3MucmVzb2x2ZWRJbml0aWFsUG9zaXRpb24oKSwgZ3JpZENvb3JkaW5hdGUucm93
cy5yZXNvbHZlZEZpbmFsUG9zaXRpb24oKSArIDEpOwogICAgICAgICB9CiAgICAgICAgIGN1cnJl
bnRDb2x1bW4gPSBsb29rQWhlYWRDb2x1bW4gLSAxOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJHcmlkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJHcmlkLmNwcAppbmRleCA2NmRlMjMwMjJmMWRjNTY5Y2YzMmIzMTcwZmQwNTA2
ODI1NmVmNmMyLi42MmMyMWEzZGI2YjZkOGFkNzU0NTk4M2ZhOWM1ZjE0NDg4MGRlMjYzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyR3JpZC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckdyaWQuY3BwCkBAIC0zNCw2ICszNCw3IEBACiAj
aW5jbHVkZSAiTGF5b3V0UmVwYWludGVyLmgiCiAjaW5jbHVkZSAiUmVuZGVyTGF5ZXIuaCIKICNp
bmNsdWRlICJSZW5kZXJWaWV3LmgiCisjaW5jbHVkZSA8Y3N0ZGxpYj4KIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCkBAIC0xOTAsNyArMTkxLDcgQEAgcHVibGljOgogICAgICAgICBjb25zdCB1bnNp
Z25lZCBlbmRPZlZhcnlpbmdUcmFja0luZGV4ID0gKG1fZGlyZWN0aW9uID09IEZvckNvbHVtbnMp
ID8gbV9ncmlkLnNpemUoKSA6IG1fZ3JpZFswXS5zaXplKCk7CiAgICAgICAgIGZvciAoOyB2YXJ5
aW5nVHJhY2tJbmRleCA8IGVuZE9mVmFyeWluZ1RyYWNrSW5kZXg7ICsrdmFyeWluZ1RyYWNrSW5k
ZXgpIHsKICAgICAgICAgICAgIGlmIChpc0VtcHR5QXJlYUVub3VnaChyb3dTcGFuLCBjb2x1bW5T
cGFuKSkgewotICAgICAgICAgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4g
cmVzdWx0ID0gc3RkOjptYWtlX3VuaXF1ZTxHcmlkQ29vcmRpbmF0ZT4oR3JpZFNwYW46OmRlZmlu
aXRlR3JpZFNwYW4obV9yb3dJbmRleCwgbV9yb3dJbmRleCArIHJvd1NwYW4pLCBHcmlkU3Bhbjo6
ZGVmaW5pdGVHcmlkU3BhbihtX2NvbHVtbkluZGV4LCBtX2NvbHVtbkluZGV4ICsgY29sdW1uU3Bh
bikpOworICAgICAgICAgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gcmVz
dWx0ID0gc3RkOjptYWtlX3VuaXF1ZTxHcmlkQ29vcmRpbmF0ZT4oR3JpZFNwYW46OnRyYW5zbGF0
ZWREZWZpbml0ZUdyaWRTcGFuKG1fcm93SW5kZXgsIG1fcm93SW5kZXggKyByb3dTcGFuKSwgR3Jp
ZFNwYW46OnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKG1fY29sdW1uSW5kZXgsIG1fY29sdW1u
SW5kZXggKyBjb2x1bW5TcGFuKSk7CiAgICAgICAgICAgICAgICAgLy8gQWR2YW5jZSB0aGUgaXRl
cmF0b3IgdG8gYXZvaWQgYW4gaW5maW5pdGUgbG9vcCB3aGVyZSB3ZSB3b3VsZCByZXR1cm4gdGhl
IHNhbWUgZ3JpZCBhcmVhIG92ZXIgYW5kIG92ZXIuCiAgICAgICAgICAgICAgICAgKyt2YXJ5aW5n
VHJhY2tJbmRleDsKICAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0OwpAQCAtNTY2LDcgKzU2
Nyw3IEBAIHZvaWQgUmVuZGVyR3JpZDo6Y29tcHV0ZVVzZWRCcmVhZHRoT2ZHcmlkVHJhY2tzKEdy
aWRUcmFja1NpemluZ0RpcmVjdGlvbiBkaXJlY3RpCiAgICAgLy8gNC4gR3JvdyBhbGwgR3JpZCB0
cmFja3MgaGF2aW5nIGEgZnJhY3Rpb24gYXMgdGhlIE1heFRyYWNrU2l6aW5nRnVuY3Rpb24uCiAg
ICAgZG91YmxlIGZsZXhGcmFjdGlvbiA9IDA7CiAgICAgaWYgKGhhc0RlZmluaXRlRnJlZVNwYWNl
KQotICAgICAgICBmbGV4RnJhY3Rpb24gPSBmaW5kRmxleEZhY3RvclVuaXRTaXplKHRyYWNrcywg
R3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4oMCwgdHJhY2tzLnNpemUoKSksIGRpcmVjdGlvbiwg
aW5pdGlhbEZyZWVTcGFjZS52YWx1ZSgpKTsKKyAgICAgICAgZmxleEZyYWN0aW9uID0gZmluZEZs
ZXhGYWN0b3JVbml0U2l6ZSh0cmFja3MsIEdyaWRTcGFuOjp0cmFuc2xhdGVkRGVmaW5pdGVHcmlk
U3BhbigwLCB0cmFja3Muc2l6ZSgpKSwgZGlyZWN0aW9uLCBpbml0aWFsRnJlZVNwYWNlLnZhbHVl
KCkpOwogICAgIGVsc2UgewogICAgICAgICBmb3IgKGNvbnN0IGF1dG8mIHRyYWNrSW5kZXggOiBm
bGV4aWJsZVNpemVkVHJhY2tzSW5kZXgpCiAgICAgICAgICAgICBmbGV4RnJhY3Rpb24gPSBzdGQ6
Om1heChmbGV4RnJhY3Rpb24sIG5vcm1hbGl6ZWRGbGV4RnJhY3Rpb24odHJhY2tzW3RyYWNrSW5k
ZXhdLCBncmlkVHJhY2tTaXplKGRpcmVjdGlvbiwgdHJhY2tJbmRleCkubWF4VHJhY2tCcmVhZHRo
KCkuZmxleCgpKSk7CkBAIC02ODcsNyArNjg4LDEwIEBAIEdyaWRUcmFja1NpemUgUmVuZGVyR3Jp
ZDo6Z3JpZFRyYWNrU2l6ZShHcmlkVHJhY2tTaXppbmdEaXJlY3Rpb24gZGlyZWN0aW9uLCB1bnNp
CiB7CiAgICAgYm9vbCBpc0ZvckNvbHVtbnMgPSAoZGlyZWN0aW9uID09IEZvckNvbHVtbnMpOwog
ICAgIGF1dG8mIHRyYWNrU3R5bGVzID0gIGlzRm9yQ29sdW1ucyA/IHN0eWxlKCkuZ3JpZENvbHVt
bnMoKSA6IHN0eWxlKCkuZ3JpZFJvd3MoKTsKLSAgICBhdXRvJiB0cmFja1NpemUgPSAoaSA+PSB0
cmFja1N0eWxlcy5zaXplKCkpID8gKGlzRm9yQ29sdW1ucyA/IHN0eWxlKCkuZ3JpZEF1dG9Db2x1
bW5zKCkgOiBzdHlsZSgpLmdyaWRBdXRvUm93cygpKSA6IHRyYWNrU3R5bGVzW2ldOworCisgICAg
YXV0byYgYXV0b1RyYWNrU2l6ZSA9IGlzRm9yQ29sdW1ucyA/IHN0eWxlKCkuZ3JpZEF1dG9Db2x1
bW5zKCkgOiBzdHlsZSgpLmdyaWRBdXRvUm93cygpOworICAgIGludCB0cmFuc2xhdGVkSW5kZXgg
PSBpICsgKGlzRm9yQ29sdW1ucyA/IG1fc21hbGxlc3RDb2x1bW5TdGFydCA6IG1fc21hbGxlc3RS
b3dTdGFydCk7CisgICAgYXV0byYgdHJhY2tTaXplID0gKHRyYW5zbGF0ZWRJbmRleCA8IDAgfHwg
dHJhbnNsYXRlZEluZGV4ID49IHN0YXRpY19jYXN0PGludD4odHJhY2tTdHlsZXMuc2l6ZSgpKSkg
PyBhdXRvVHJhY2tTaXplIDogdHJhY2tTdHlsZXNbdHJhbnNsYXRlZEluZGV4XTsKIAogICAgIEdy
aWRMZW5ndGggbWluVHJhY2tCcmVhZHRoID0gdHJhY2tTaXplLm1pblRyYWNrQnJlYWR0aCgpOwog
ICAgIEdyaWRMZW5ndGggbWF4VHJhY2tCcmVhZHRoID0gdHJhY2tTaXplLm1heFRyYWNrQnJlYWR0
aCgpOwpAQCAtMTEzNyw3ICsxMTQxLDcgQEAgdm9pZCBSZW5kZXJHcmlkOjplbnN1cmVHcmlkU2l6
ZSh1bnNpZ25lZCBtYXhpbXVtUm93U2l6ZSwgdW5zaWduZWQgbWF4aW11bUNvbHVtblMKIAogdm9p
ZCBSZW5kZXJHcmlkOjppbnNlcnRJdGVtSW50b0dyaWQoUmVuZGVyQm94JiBjaGlsZCwgY29uc3Qg
R3JpZENvb3JkaW5hdGUmIGNvb3JkaW5hdGUpCiB7Ci0gICAgQVNTRVJUKGNvb3JkaW5hdGUucm93
cy5pc0RlZmluaXRlKCkgJiYgY29vcmRpbmF0ZS5jb2x1bW5zLmlzRGVmaW5pdGUoKSk7CisgICAg
QVNTRVJUKGNvb3JkaW5hdGUucm93cy5pc1RyYW5zbGF0ZWREZWZpbml0ZSgpICYmIGNvb3JkaW5h
dGUuY29sdW1ucy5pc1RyYW5zbGF0ZWREZWZpbml0ZSgpKTsKICAgICBlbnN1cmVHcmlkU2l6ZShj
b29yZGluYXRlLnJvd3MucmVzb2x2ZWRGaW5hbFBvc2l0aW9uKCksIGNvb3JkaW5hdGUuY29sdW1u
cy5yZXNvbHZlZEZpbmFsUG9zaXRpb24oKSk7CiAKICAgICBmb3IgKGF1dG8gcm93IDogY29vcmRp
bmF0ZS5yb3dzKSB7CkBAIC0xMTYwLDExICsxMTY0LDE2IEBAIHZvaWQgUmVuZGVyR3JpZDo6cGxh
Y2VJdGVtc09uR3JpZCgpCiAgICAgICAgICAgICBjb250aW51ZTsKIAogICAgICAgICBHcmlkQ29v
cmRpbmF0ZSBjb29yZGluYXRlID0gY2FjaGVkR3JpZENvb3JkaW5hdGUoKmNoaWxkKTsKKyAgICAg
ICAgaWYgKCFjb29yZGluYXRlLnJvd3MuaXNJbmRlZmluaXRlKCkpCisgICAgICAgICAgICBjb29y
ZGluYXRlLnJvd3MudHJhbnNsYXRlKHN0ZDo6YWJzKG1fc21hbGxlc3RSb3dTdGFydCkpOworICAg
ICAgICBpZiAoIWNvb3JkaW5hdGUuY29sdW1ucy5pc0luZGVmaW5pdGUoKSkKKyAgICAgICAgICAg
IGNvb3JkaW5hdGUuY29sdW1ucy50cmFuc2xhdGUoc3RkOjphYnMobV9zbWFsbGVzdENvbHVtblN0
YXJ0KSk7CisgICAgICAgIG1fZ3JpZEl0ZW1Db29yZGluYXRlLnNldChjaGlsZCwgY29vcmRpbmF0
ZSk7CiAKLSAgICAgICAgaWYgKCFjb29yZGluYXRlLnJvd3MuaXNEZWZpbml0ZSgpIHx8ICFjb29y
ZGluYXRlLmNvbHVtbnMuaXNEZWZpbml0ZSgpKSB7CisgICAgICAgIGlmIChjb29yZGluYXRlLnJv
d3MuaXNJbmRlZmluaXRlKCkgfHwgY29vcmRpbmF0ZS5jb2x1bW5zLmlzSW5kZWZpbml0ZSgpKSB7
CiAgICAgICAgICAgICBib29sIG1ham9yQXhpc0RpcmVjdGlvbklzRm9yQ29sdW1ucyA9IGF1dG9Q
bGFjZW1lbnRNYWpvckF4aXNEaXJlY3Rpb24oKSA9PSBGb3JDb2x1bW5zOwotICAgICAgICAgICAg
aWYgKChtYWpvckF4aXNEaXJlY3Rpb25Jc0ZvckNvbHVtbnMgJiYgIWNvb3JkaW5hdGUuY29sdW1u
cy5pc0RlZmluaXRlKCkpCi0gICAgICAgICAgICAgICAgfHwgKCFtYWpvckF4aXNEaXJlY3Rpb25J
c0ZvckNvbHVtbnMgJiYgIWNvb3JkaW5hdGUucm93cy5pc0RlZmluaXRlKCkpKQorICAgICAgICAg
ICAgaWYgKChtYWpvckF4aXNEaXJlY3Rpb25Jc0ZvckNvbHVtbnMgJiYgY29vcmRpbmF0ZS5jb2x1
bW5zLmlzSW5kZWZpbml0ZSgpKQorICAgICAgICAgICAgICAgIHx8ICghbWFqb3JBeGlzRGlyZWN0
aW9uSXNGb3JDb2x1bW5zICYmIGNvb3JkaW5hdGUucm93cy5pc0luZGVmaW5pdGUoKSkpCiAgICAg
ICAgICAgICAgICAgYXV0b01ham9yQXhpc0F1dG9HcmlkSXRlbXMuYXBwZW5kKGNoaWxkKTsKICAg
ICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICBzcGVjaWZpZWRNYWpvckF4aXNBdXRvR3Jp
ZEl0ZW1zLmFwcGVuZChjaGlsZCk7CkBAIC0xMTg1LDcgKzExOTQsNyBAQCB2b2lkIFJlbmRlckdy
aWQ6OnBsYWNlSXRlbXNPbkdyaWQoKQogICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAg
R3JpZENvb3JkaW5hdGUgY29vcmRpbmF0ZSA9IGNhY2hlZEdyaWRDb29yZGluYXRlKCpjaGlsZCk7
Ci0gICAgICAgIEFTU0VSVChjb29yZGluYXRlLnJvd3MuaXNEZWZpbml0ZSgpICYmIGNvb3JkaW5h
dGUuY29sdW1ucy5pc0RlZmluaXRlKCkpOworICAgICAgICBBU1NFUlQoY29vcmRpbmF0ZS5yb3dz
LmlzVHJhbnNsYXRlZERlZmluaXRlKCkgJiYgY29vcmRpbmF0ZS5jb2x1bW5zLmlzVHJhbnNsYXRl
ZERlZmluaXRlKCkpOwogICAgIH0KICNlbmRpZgogfQpAQCAtMTE5Myw2ICsxMjAyLDcgQEAgdm9p
ZCBSZW5kZXJHcmlkOjpwbGFjZUl0ZW1zT25HcmlkKCkKIHZvaWQgUmVuZGVyR3JpZDo6cG9wdWxh
dGVFeHBsaWNpdEdyaWRBbmRPcmRlckl0ZXJhdG9yKCkKIHsKICAgICBPcmRlckl0ZXJhdG9yUG9w
dWxhdG9yIHBvcHVsYXRvcihtX29yZGVySXRlcmF0b3IpOworICAgIG1fc21hbGxlc3RSb3dTdGFy
dCA9IG1fc21hbGxlc3RDb2x1bW5TdGFydCA9IDA7CiAgICAgdW5zaWduZWQgbWF4aW11bVJvd0lu
ZGV4ID0gc3RkOjptYXg8dW5zaWduZWQ+KDEsIEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpleHBsaWNp
dEdyaWRSb3dDb3VudChzdHlsZSgpKSk7CiAgICAgdW5zaWduZWQgbWF4aW11bUNvbHVtbkluZGV4
ID0gc3RkOjptYXg8dW5zaWduZWQ+KDEsIEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpleHBsaWNpdEdy
aWRDb2x1bW5Db3VudChzdHlsZSgpKSk7CiAKQEAgLTEyMDMsOCArMTIxMyw5IEBAIHZvaWQgUmVu
ZGVyR3JpZDo6cG9wdWxhdGVFeHBsaWNpdEdyaWRBbmRPcmRlckl0ZXJhdG9yKCkKICAgICAgICAg
cG9wdWxhdG9yLmNvbGxlY3RDaGlsZCgqY2hpbGQpOwogCiAgICAgICAgIEdyaWRTcGFuIHJvd1Bv
c2l0aW9ucyA9IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpyZXNvbHZlR3JpZFBvc2l0aW9uc0Zyb21T
dHlsZShzdHlsZSgpLCAqY2hpbGQsIEZvclJvd3MpOwotICAgICAgICBpZiAocm93UG9zaXRpb25z
LmlzRGVmaW5pdGUoKSkgewotICAgICAgICAgICAgbWF4aW11bVJvd0luZGV4ID0gc3RkOjptYXgo
bWF4aW11bVJvd0luZGV4LCByb3dQb3NpdGlvbnMucmVzb2x2ZWRGaW5hbFBvc2l0aW9uKCkpOwor
ICAgICAgICBpZiAoIXJvd1Bvc2l0aW9ucy5pc0luZGVmaW5pdGUoKSkgeworICAgICAgICAgICAg
bV9zbWFsbGVzdFJvd1N0YXJ0ID0gc3RkOjptaW4obV9zbWFsbGVzdFJvd1N0YXJ0LCByb3dQb3Np
dGlvbnMudW50cmFuc2xhdGVkUmVzb2x2ZWRJbml0aWFsUG9zaXRpb24oKSk7CisgICAgICAgICAg
ICBtYXhpbXVtUm93SW5kZXggPSBzdGQ6Om1heDxpbnQ+KG1heGltdW1Sb3dJbmRleCwgcm93UG9z
aXRpb25zLnVudHJhbnNsYXRlZFJlc29sdmVkRmluYWxQb3NpdGlvbigpKTsKICAgICAgICAgfSBl
bHNlIHsKICAgICAgICAgICAgIC8vIEdyb3cgdGhlIGdyaWQgZm9yIGl0ZW1zIHdpdGggYSBkZWZp
bml0ZSByb3cgc3BhbiwgZ2V0dGluZyB0aGUgbGFyZ2VzdCBzdWNoIHNwYW4uCiAgICAgICAgICAg
ICB1bnNpZ25lZCBzcGFuU2l6ZSA9IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpzcGFuU2l6ZUZvckF1
dG9QbGFjZWRJdGVtKHN0eWxlKCksICpjaGlsZCwgRm9yUm93cyk7CkBAIC0xMjEyLDggKzEyMjMs
OSBAQCB2b2lkIFJlbmRlckdyaWQ6OnBvcHVsYXRlRXhwbGljaXRHcmlkQW5kT3JkZXJJdGVyYXRv
cigpCiAgICAgICAgIH0KIAogICAgICAgICBHcmlkU3BhbiBjb2x1bW5Qb3NpdGlvbnMgPSBHcmlk
UmVzb2x2ZWRQb3NpdGlvbjo6cmVzb2x2ZUdyaWRQb3NpdGlvbnNGcm9tU3R5bGUoc3R5bGUoKSwg
KmNoaWxkLCBGb3JDb2x1bW5zKTsKLSAgICAgICAgaWYgKGNvbHVtblBvc2l0aW9ucy5pc0RlZmlu
aXRlKCkpIHsKLSAgICAgICAgICAgIG1heGltdW1Db2x1bW5JbmRleCA9IHN0ZDo6bWF4KG1heGlt
dW1Db2x1bW5JbmRleCwgY29sdW1uUG9zaXRpb25zLnJlc29sdmVkRmluYWxQb3NpdGlvbigpKTsK
KyAgICAgICAgaWYgKCFjb2x1bW5Qb3NpdGlvbnMuaXNJbmRlZmluaXRlKCkpIHsKKyAgICAgICAg
ICAgIG1fc21hbGxlc3RDb2x1bW5TdGFydCA9IHN0ZDo6bWluKG1fc21hbGxlc3RDb2x1bW5TdGFy
dCwgY29sdW1uUG9zaXRpb25zLnVudHJhbnNsYXRlZFJlc29sdmVkSW5pdGlhbFBvc2l0aW9uKCkp
OworICAgICAgICAgICAgbWF4aW11bUNvbHVtbkluZGV4ID0gc3RkOjptYXg8aW50PihtYXhpbXVt
Q29sdW1uSW5kZXgsIGNvbHVtblBvc2l0aW9ucy51bnRyYW5zbGF0ZWRSZXNvbHZlZEZpbmFsUG9z
aXRpb24oKSk7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAvLyBHcm93IHRoZSBncmlk
IGZvciBpdGVtcyB3aXRoIGEgZGVmaW5pdGUgY29sdW1uIHNwYW4sIGdldHRpbmcgdGhlIGxhcmdl
c3Qgc3VjaCBzcGFuLgogICAgICAgICAgICAgdW5zaWduZWQgc3BhblNpemUgPSBHcmlkUmVzb2x2
ZWRQb3NpdGlvbjo6c3BhblNpemVGb3JBdXRvUGxhY2VkSXRlbShzdHlsZSgpLCAqY2hpbGQsIEZv
ckNvbHVtbnMpOwpAQCAtMTIyMyw5ICsxMjM1LDkgQEAgdm9pZCBSZW5kZXJHcmlkOjpwb3B1bGF0
ZUV4cGxpY2l0R3JpZEFuZE9yZGVySXRlcmF0b3IoKQogICAgICAgICBtX2dyaWRJdGVtQ29vcmRp
bmF0ZS5zZXQoY2hpbGQsIEdyaWRDb29yZGluYXRlKHJvd1Bvc2l0aW9ucywgY29sdW1uUG9zaXRp
b25zKSk7CiAgICAgfQogCi0gICAgbV9ncmlkLmdyb3cobWF4aW11bVJvd0luZGV4KTsKKyAgICBt
X2dyaWQuZ3JvdyhtYXhpbXVtUm93SW5kZXggKyBzdGQ6OmFicyhtX3NtYWxsZXN0Um93U3RhcnQp
KTsKICAgICBmb3IgKGF1dG8mIGNvbHVtbiA6IG1fZ3JpZCkKLSAgICAgICAgY29sdW1uLmdyb3co
bWF4aW11bUNvbHVtbkluZGV4KTsKKyAgICAgICAgY29sdW1uLmdyb3cobWF4aW11bUNvbHVtbklu
ZGV4ICsgc3RkOjphYnMobV9zbWFsbGVzdENvbHVtblN0YXJ0KSk7CiB9CiAKIHN0ZDo6dW5pcXVl
X3B0cjxHcmlkQ29vcmRpbmF0ZT4gUmVuZGVyR3JpZDo6Y3JlYXRlRW1wdHlHcmlkQXJlYUF0U3Bl
Y2lmaWVkUG9zaXRpb25zT3V0c2lkZUdyaWQoY29uc3QgUmVuZGVyQm94JiBncmlkSXRlbSwgR3Jp
ZFRyYWNrU2l6aW5nRGlyZWN0aW9uIHNwZWNpZmllZERpcmVjdGlvbiwgY29uc3QgR3JpZFNwYW4m
IHNwZWNpZmllZFBvc2l0aW9ucykgY29uc3QKQEAgLTEyMzMsNyArMTI0NSw3IEBAIHN0ZDo6dW5p
cXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gUmVuZGVyR3JpZDo6Y3JlYXRlRW1wdHlHcmlkQXJlYUF0
U3BlY2lmaWVkUG9zaXRpCiAgICAgR3JpZFRyYWNrU2l6aW5nRGlyZWN0aW9uIGNyb3NzRGlyZWN0
aW9uID0gc3BlY2lmaWVkRGlyZWN0aW9uID09IEZvckNvbHVtbnMgPyBGb3JSb3dzIDogRm9yQ29s
dW1uczsKICAgICBjb25zdCB1bnNpZ25lZCBlbmRPZkNyb3NzRGlyZWN0aW9uID0gY3Jvc3NEaXJl
Y3Rpb24gPT0gRm9yQ29sdW1ucyA/IGdyaWRDb2x1bW5Db3VudCgpIDogZ3JpZFJvd0NvdW50KCk7
CiAgICAgdW5zaWduZWQgY3Jvc3NEaXJlY3Rpb25TcGFuU2l6ZSA9IEdyaWRSZXNvbHZlZFBvc2l0
aW9uOjpzcGFuU2l6ZUZvckF1dG9QbGFjZWRJdGVtKHN0eWxlKCksIGdyaWRJdGVtLCBjcm9zc0Rp
cmVjdGlvbik7Ci0gICAgR3JpZFNwYW4gY3Jvc3NEaXJlY3Rpb25Qb3NpdGlvbnMgPSBHcmlkU3Bh
bjo6ZGVmaW5pdGVHcmlkU3BhbihlbmRPZkNyb3NzRGlyZWN0aW9uLCBlbmRPZkNyb3NzRGlyZWN0
aW9uICsgY3Jvc3NEaXJlY3Rpb25TcGFuU2l6ZSk7CisgICAgR3JpZFNwYW4gY3Jvc3NEaXJlY3Rp
b25Qb3NpdGlvbnMgPSBHcmlkU3Bhbjo6dHJhbnNsYXRlZERlZmluaXRlR3JpZFNwYW4oZW5kT2ZD
cm9zc0RpcmVjdGlvbiwgZW5kT2ZDcm9zc0RpcmVjdGlvbiArIGNyb3NzRGlyZWN0aW9uU3BhblNp
emUpOwogICAgIHJldHVybiBzdGQ6Om1ha2VfdW5pcXVlPEdyaWRDb29yZGluYXRlPihzcGVjaWZp
ZWREaXJlY3Rpb24gPT0gRm9yQ29sdW1ucyA/IGNyb3NzRGlyZWN0aW9uUG9zaXRpb25zIDogc3Bl
Y2lmaWVkUG9zaXRpb25zLCBzcGVjaWZpZWREaXJlY3Rpb24gPT0gRm9yQ29sdW1ucyA/IHNwZWNp
ZmllZFBvc2l0aW9ucyA6IGNyb3NzRGlyZWN0aW9uUG9zaXRpb25zKTsKIH0KIApAQCAtMTI0OSw4
ICsxMjYxLDggQEAgdm9pZCBSZW5kZXJHcmlkOjpwbGFjZVNwZWNpZmllZE1ham9yQXhpc0l0ZW1z
T25HcmlkKGNvbnN0IFZlY3RvcjxSZW5kZXJCb3gqPiYgYXUKIAogICAgIGZvciAoYXV0byYgYXV0
b0dyaWRJdGVtIDogYXV0b0dyaWRJdGVtcykgewogICAgICAgICBHcmlkU3BhbiBtYWpvckF4aXNQ
b3NpdGlvbnMgPSBjYWNoZWRHcmlkU3BhbigqYXV0b0dyaWRJdGVtLCBhdXRvUGxhY2VtZW50TWFq
b3JBeGlzRGlyZWN0aW9uKCkpOwotICAgICAgICBBU1NFUlQobWFqb3JBeGlzUG9zaXRpb25zLmlz
RGVmaW5pdGUoKSk7Ci0gICAgICAgIEFTU0VSVCghY2FjaGVkR3JpZFNwYW4oKmF1dG9HcmlkSXRl
bSwgYXV0b1BsYWNlbWVudE1pbm9yQXhpc0RpcmVjdGlvbigpKS5pc0RlZmluaXRlKCkpOworICAg
ICAgICBBU1NFUlQobWFqb3JBeGlzUG9zaXRpb25zLmlzVHJhbnNsYXRlZERlZmluaXRlKCkpOwor
ICAgICAgICBBU1NFUlQoY2FjaGVkR3JpZFNwYW4oKmF1dG9HcmlkSXRlbSwgYXV0b1BsYWNlbWVu
dE1pbm9yQXhpc0RpcmVjdGlvbigpKS5pc0luZGVmaW5pdGUoKSk7CiAgICAgICAgIHVuc2lnbmVk
IG1pbm9yQXhpc1NwYW5TaXplID0gR3JpZFJlc29sdmVkUG9zaXRpb246OnNwYW5TaXplRm9yQXV0
b1BsYWNlZEl0ZW0oc3R5bGUoKSwgKmF1dG9HcmlkSXRlbSwgYXV0b1BsYWNlbWVudE1pbm9yQXhp
c0RpcmVjdGlvbigpKTsKICAgICAgICAgdW5zaWduZWQgbWFqb3JBeGlzSW5pdGlhbFBvc2l0aW9u
ID0gbWFqb3JBeGlzUG9zaXRpb25zLnJlc29sdmVkSW5pdGlhbFBvc2l0aW9uKCk7CiAKQEAgLTEy
ODQsNyArMTI5Niw3IEBAIHZvaWQgUmVuZGVyR3JpZDo6cGxhY2VBdXRvTWFqb3JBeGlzSXRlbXNP
bkdyaWQoY29uc3QgVmVjdG9yPFJlbmRlckJveCo+JiBhdXRvR3JpCiAKIHZvaWQgUmVuZGVyR3Jp
ZDo6cGxhY2VBdXRvTWFqb3JBeGlzSXRlbU9uR3JpZChSZW5kZXJCb3gmIGdyaWRJdGVtLCBBdXRv
UGxhY2VtZW50Q3Vyc29yJiBhdXRvUGxhY2VtZW50Q3Vyc29yKQogewotICAgIEFTU0VSVCghY2Fj
aGVkR3JpZFNwYW4oZ3JpZEl0ZW0sIGF1dG9QbGFjZW1lbnRNYWpvckF4aXNEaXJlY3Rpb24oKSku
aXNEZWZpbml0ZSgpKTsKKyAgICBBU1NFUlQoY2FjaGVkR3JpZFNwYW4oZ3JpZEl0ZW0sIGF1dG9Q
bGFjZW1lbnRNYWpvckF4aXNEaXJlY3Rpb24oKSkuaXNJbmRlZmluaXRlKCkpOwogICAgIHVuc2ln
bmVkIG1ham9yQXhpc1NwYW5TaXplID0gR3JpZFJlc29sdmVkUG9zaXRpb246OnNwYW5TaXplRm9y
QXV0b1BsYWNlZEl0ZW0oc3R5bGUoKSwgZ3JpZEl0ZW0sIGF1dG9QbGFjZW1lbnRNYWpvckF4aXNE
aXJlY3Rpb24oKSk7CiAKICAgICBjb25zdCB1bnNpZ25lZCBlbmRPZk1ham9yQXhpcyA9IChhdXRv
UGxhY2VtZW50TWFqb3JBeGlzRGlyZWN0aW9uKCkgPT0gRm9yQ29sdW1ucykgPyBncmlkQ29sdW1u
Q291bnQoKSA6IGdyaWRSb3dDb3VudCgpOwpAQCAtMTI5Myw3ICsxMzA1LDcgQEAgdm9pZCBSZW5k
ZXJHcmlkOjpwbGFjZUF1dG9NYWpvckF4aXNJdGVtT25HcmlkKFJlbmRlckJveCYgZ3JpZEl0ZW0s
IEF1dG9QbGFjZW1lbnQKIAogICAgIHN0ZDo6dW5pcXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gZW1w
dHlHcmlkQXJlYTsKICAgICBHcmlkU3BhbiBtaW5vckF4aXNQb3NpdGlvbnMgPSBjYWNoZWRHcmlk
U3BhbihncmlkSXRlbSwgYXV0b1BsYWNlbWVudE1pbm9yQXhpc0RpcmVjdGlvbigpKTsKLSAgICBp
ZiAobWlub3JBeGlzUG9zaXRpb25zLmlzRGVmaW5pdGUoKSkgeworICAgIGlmIChtaW5vckF4aXNQ
b3NpdGlvbnMuaXNUcmFuc2xhdGVkRGVmaW5pdGUoKSkgewogICAgICAgICAvLyBNb3ZlIHRvIHRo
ZSBuZXh0IHRyYWNrIGluIG1ham9yIGF4aXMgaWYgaW5pdGlhbCBwb3NpdGlvbiBpbiBtaW5vciBh
eGlzIGlzIGJlZm9yZSBhdXRvLXBsYWNlbWVudCBjdXJzb3IuCiAgICAgICAgIGlmIChtaW5vckF4
aXNQb3NpdGlvbnMucmVzb2x2ZWRJbml0aWFsUG9zaXRpb24oKSA8IG1pbm9yQXhpc0F1dG9QbGFj
ZW1lbnRDdXJzb3IpCiAgICAgICAgICAgICBtYWpvckF4aXNBdXRvUGxhY2VtZW50Q3Vyc29yKys7
CkBAIC0xMzI5LDcgKzEzNDEsNyBAQCB2b2lkIFJlbmRlckdyaWQ6OnBsYWNlQXV0b01ham9yQXhp
c0l0ZW1PbkdyaWQoUmVuZGVyQm94JiBncmlkSXRlbSwgQXV0b1BsYWNlbWVudAogICAgICAgICB9
CiAKICAgICAgICAgaWYgKCFlbXB0eUdyaWRBcmVhKQotICAgICAgICAgICAgZW1wdHlHcmlkQXJl
YSA9IGNyZWF0ZUVtcHR5R3JpZEFyZWFBdFNwZWNpZmllZFBvc2l0aW9uc091dHNpZGVHcmlkKGdy
aWRJdGVtLCBhdXRvUGxhY2VtZW50TWlub3JBeGlzRGlyZWN0aW9uKCksIEdyaWRTcGFuOjpkZWZp
bml0ZUdyaWRTcGFuKDAsIG1pbm9yQXhpc1NwYW5TaXplKSk7CisgICAgICAgICAgICBlbXB0eUdy
aWRBcmVhID0gY3JlYXRlRW1wdHlHcmlkQXJlYUF0U3BlY2lmaWVkUG9zaXRpb25zT3V0c2lkZUdy
aWQoZ3JpZEl0ZW0sIGF1dG9QbGFjZW1lbnRNaW5vckF4aXNEaXJlY3Rpb24oKSwgR3JpZFNwYW46
OnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKDAsIG1pbm9yQXhpc1NwYW5TaXplKSk7CiAgICAg
fQogCiAgICAgbV9ncmlkSXRlbUNvb3JkaW5hdGUuc2V0KCZncmlkSXRlbSwgKmVtcHR5R3JpZEFy
ZWEpOwpAQCAtMTQ3NCwxMSArMTQ4NiwxMiBAQCB2b2lkIFJlbmRlckdyaWQ6Om9mZnNldEFuZEJy
ZWFkdGhGb3JQb3NpdGlvbmVkQ2hpbGQoY29uc3QgUmVuZGVyQm94JiBjaGlsZCwgR3JpZAogICAg
IEFTU0VSVChjaGlsZC5pc0hvcml6b250YWxXcml0aW5nTW9kZSgpID09IGlzSG9yaXpvbnRhbFdy
aXRpbmdNb2RlKCkpOwogCiAgICAgR3JpZFNwYW4gcG9zaXRpb25zID0gR3JpZFJlc29sdmVkUG9z
aXRpb246OnJlc29sdmVHcmlkUG9zaXRpb25zRnJvbVN0eWxlKHN0eWxlKCksIGNoaWxkLCBkaXJl
Y3Rpb24pOwotICAgIGlmICghcG9zaXRpb25zLmlzRGVmaW5pdGUoKSkgeworICAgIGlmIChwb3Np
dGlvbnMuaXNJbmRlZmluaXRlKCkpIHsKICAgICAgICAgb2Zmc2V0ID0gTGF5b3V0VW5pdCgpOwog
ICAgICAgICBicmVhZHRoID0gKGRpcmVjdGlvbiA9PSBGb3JDb2x1bW5zKSA/IGNsaWVudExvZ2lj
YWxXaWR0aCgpIDogY2xpZW50TG9naWNhbEhlaWdodCgpOwogICAgICAgICByZXR1cm47CiAgICAg
fQorICAgIHBvc2l0aW9ucy50cmFuc2xhdGUoZGlyZWN0aW9uID09IEZvckNvbHVtbnMgPyBtX3Nt
YWxsZXN0Q29sdW1uU3RhcnQgOiBtX3NtYWxsZXN0Um93U3RhcnQpOwogCiAgICAgR3JpZFBvc2l0
aW9uIHN0YXJ0UG9zaXRpb24gPSAoZGlyZWN0aW9uID09IEZvckNvbHVtbnMpID8gY2hpbGQuc3R5
bGUoKS5ncmlkSXRlbUNvbHVtblN0YXJ0KCkgOiBjaGlsZC5zdHlsZSgpLmdyaWRJdGVtUm93U3Rh
cnQoKTsKICAgICBHcmlkUG9zaXRpb24gZW5kUG9zaXRpb24gPSAoZGlyZWN0aW9uID09IEZvckNv
bHVtbnMpID8gY2hpbGQuc3R5bGUoKS5ncmlkSXRlbUNvbHVtbkVuZCgpIDogY2hpbGQuc3R5bGUo
KS5ncmlkSXRlbVJvd0VuZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckdyaWQuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJHcmlkLmgKaW5k
ZXggZmMzOTU3MjgxODRiNDBlYzRlMDhkNWNkZmZjMzc0YTNjMmM0YTFmZi4uYTNkMThlZmVhYzU0
MTgxYjFjZjM5MjYxMjRhZjc0MjQwYWFiMTFlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckdyaWQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyR3JpZC5oCkBAIC0xOTAsNiArMTkwLDkgQEAgcHJpdmF0ZToKIAogICAgIE9wdGlvbmFsPExh
eW91dFVuaXQ+IG1fbWluQ29udGVudEhlaWdodDsKICAgICBPcHRpb25hbDxMYXlvdXRVbml0PiBt
X21heENvbnRlbnRIZWlnaHQ7CisKKyAgICBpbnQgbV9zbWFsbGVzdENvbHVtblN0YXJ0OworICAg
IGludCBtX3NtYWxsZXN0Um93U3RhcnQ7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvR3JpZENvb3JkaW5hdGUu
aCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9HcmlkQ29vcmRpbmF0ZS5oCmluZGV4
IDUzNTRiZDZiZTBkODYwOTQ2NGJlYTk3N2VhMDBjOTE1Njc1ZjIxOWYuLjA2NWQ3NGE2MjU4Njgw
NWJiNTFkMjE2Mjc0ZjZjYTE1OTIxODJiMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9HcmlkQ29vcmRpbmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9HcmlkQ29vcmRpbmF0ZS5oCkBAIC00MSw3ICs0MSw3IEBACiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKIC8vIFJlY29tbWVuZGVkIG1heGltdW0gc2l6ZSBmb3IgYm90aCBleHBsaWNp
dCBhbmQgaW1wbGljaXQgZ3JpZHMuCi1jb25zdCB1bnNpZ25lZCBrR3JpZE1heFRyYWNrcyA9IDEw
MDAwMDA7Citjb25zdCBpbnQga0dyaWRNYXhUcmFja3MgPSAxMDAwMDAwOwogCiAvLyBBIHNwYW4g
aW4gYSBzaW5nbGUgZGlyZWN0aW9uIChlaXRoZXIgcm93cyBvciBjb2x1bW5zKS4gTm90ZSB0aGF0
IHxyZXNvbHZlZEluaXRpYWxQb3NpdGlvbnwKIC8vIGFuZCB8cmVzb2x2ZWRGaW5hbFBvc2l0aW9u
fCBhcmUgZ3JpZCBsaW5lcycgaW5kZXhlcy4KQEAgLTQ5LDkgKzQ5LDE0IEBAIGNvbnN0IHVuc2ln
bmVkIGtHcmlkTWF4VHJhY2tzID0gMTAwMDAwMDsKIGNsYXNzIEdyaWRTcGFuIHsKIHB1YmxpYzoK
IAotICAgIHN0YXRpYyBHcmlkU3BhbiBkZWZpbml0ZUdyaWRTcGFuKHVuc2lnbmVkIHJlc29sdmVk
SW5pdGlhbFBvc2l0aW9uLCB1bnNpZ25lZCByZXNvbHZlZEZpbmFsUG9zaXRpb24pCisgICAgc3Rh
dGljIEdyaWRTcGFuIHVudHJhbnNsYXRlZERlZmluaXRlR3JpZFNwYW4oaW50IHJlc29sdmVkSW5p
dGlhbFBvc2l0aW9uLCBpbnQgcmVzb2x2ZWRGaW5hbFBvc2l0aW9uKQogICAgIHsKLSAgICAgICAg
cmV0dXJuIEdyaWRTcGFuKHJlc29sdmVkSW5pdGlhbFBvc2l0aW9uLCByZXNvbHZlZEZpbmFsUG9z
aXRpb24sIERlZmluaXRlKTsKKyAgICAgICAgcmV0dXJuIEdyaWRTcGFuKHJlc29sdmVkSW5pdGlh
bFBvc2l0aW9uLCByZXNvbHZlZEZpbmFsUG9zaXRpb24sIFVudHJhbnNsYXRlZERlZmluaXRlKTsK
KyAgICB9CisKKyAgICBzdGF0aWMgR3JpZFNwYW4gdHJhbnNsYXRlZERlZmluaXRlR3JpZFNwYW4o
dW5zaWduZWQgcmVzb2x2ZWRJbml0aWFsUG9zaXRpb24sIHVuc2lnbmVkIHJlc29sdmVkRmluYWxQ
b3NpdGlvbikKKyAgICB7CisgICAgICAgIHJldHVybiBHcmlkU3BhbihyZXNvbHZlZEluaXRpYWxQ
b3NpdGlvbiwgcmVzb2x2ZWRGaW5hbFBvc2l0aW9uLCBUcmFuc2xhdGVkRGVmaW5pdGUpOwogICAg
IH0KIAogICAgIHN0YXRpYyBHcmlkU3BhbiBpbmRlZmluaXRlR3JpZFNwYW4oKQpAQCAtNjYsMjAg
KzcxLDMzIEBAIHB1YmxpYzoKIAogICAgIHVuc2lnbmVkIGludGVnZXJTcGFuKCkgY29uc3QKICAg
ICB7Ci0gICAgICAgIEFTU0VSVChpc0RlZmluaXRlKCkpOworICAgICAgICBBU1NFUlQoaXNUcmFu
c2xhdGVkRGVmaW5pdGUoKSk7CiAgICAgICAgIHJldHVybiBtX3Jlc29sdmVkRmluYWxQb3NpdGlv
biAtIG1fcmVzb2x2ZWRJbml0aWFsUG9zaXRpb247CiAgICAgfQogCisgICAgaW50IHVudHJhbnNs
YXRlZFJlc29sdmVkSW5pdGlhbFBvc2l0aW9uKCkgY29uc3QKKyAgICB7CisgICAgICAgIEFTU0VS
VChtX3R5cGUgPT0gVW50cmFuc2xhdGVkRGVmaW5pdGUpOworICAgICAgICByZXR1cm4gbV9yZXNv
bHZlZEluaXRpYWxQb3NpdGlvbjsKKyAgICB9CisKKyAgICBpbnQgdW50cmFuc2xhdGVkUmVzb2x2
ZWRGaW5hbFBvc2l0aW9uKCkgY29uc3QKKyAgICB7CisgICAgICAgIEFTU0VSVChtX3R5cGUgPT0g
VW50cmFuc2xhdGVkRGVmaW5pdGUpOworICAgICAgICByZXR1cm4gbV9yZXNvbHZlZEZpbmFsUG9z
aXRpb247CisgICAgfQorCiAgICAgdW5zaWduZWQgcmVzb2x2ZWRJbml0aWFsUG9zaXRpb24oKSBj
b25zdAogICAgIHsKLSAgICAgICAgQVNTRVJUKGlzRGVmaW5pdGUoKSk7CisgICAgICAgIEFTU0VS
VChpc1RyYW5zbGF0ZWREZWZpbml0ZSgpKTsKKyAgICAgICAgQVNTRVJUKG1fcmVzb2x2ZWRGaW5h
bFBvc2l0aW9uID49IDApOwogICAgICAgICByZXR1cm4gbV9yZXNvbHZlZEluaXRpYWxQb3NpdGlv
bjsKICAgICB9CiAKICAgICB1bnNpZ25lZCByZXNvbHZlZEZpbmFsUG9zaXRpb24oKSBjb25zdAog
ICAgIHsKLSAgICAgICAgQVNTRVJUKGlzRGVmaW5pdGUoKSk7Ci0gICAgICAgIEFTU0VSVChtX3Jl
c29sdmVkRmluYWxQb3NpdGlvbik7CisgICAgICAgIEFTU0VSVChpc1RyYW5zbGF0ZWREZWZpbml0
ZSgpKTsKKyAgICAgICAgQVNTRVJUKG1fcmVzb2x2ZWRGaW5hbFBvc2l0aW9uID4gMCk7CiAgICAg
ICAgIHJldHVybiBtX3Jlc29sdmVkRmluYWxQb3NpdGlvbjsKICAgICB9CiAKQEAgLTk3LDM1ICsx
MTUsNTkgQEAgcHVibGljOgogCiAgICAgR3JpZFNwYW5JdGVyYXRvciBiZWdpbigpIGNvbnN0CiAg
ICAgewotICAgICAgICBBU1NFUlQoaXNEZWZpbml0ZSgpKTsKKyAgICAgICAgQVNTRVJUKGlzVHJh
bnNsYXRlZERlZmluaXRlKCkpOwogICAgICAgICByZXR1cm4gbV9yZXNvbHZlZEluaXRpYWxQb3Np
dGlvbjsKICAgICB9CiAKICAgICBHcmlkU3Bhbkl0ZXJhdG9yIGVuZCgpIGNvbnN0CiAgICAgewot
ICAgICAgICBBU1NFUlQoaXNEZWZpbml0ZSgpKTsKKyAgICAgICAgQVNTRVJUKGlzVHJhbnNsYXRl
ZERlZmluaXRlKCkpOwogICAgICAgICByZXR1cm4gbV9yZXNvbHZlZEZpbmFsUG9zaXRpb247CiAg
ICAgfQogCi0gICAgYm9vbCBpc0RlZmluaXRlKCkgY29uc3QKKyAgICBib29sIGlzVHJhbnNsYXRl
ZERlZmluaXRlKCkgY29uc3QKICAgICB7Ci0gICAgICAgIHJldHVybiBtX3R5cGUgPT0gRGVmaW5p
dGU7CisgICAgICAgIHJldHVybiBtX3R5cGUgPT0gVHJhbnNsYXRlZERlZmluaXRlOworICAgIH0K
KworICAgIGJvb2wgaXNJbmRlZmluaXRlKCkgY29uc3QKKyAgICB7CisgICAgICAgIHJldHVybiBt
X3R5cGUgPT0gSW5kZWZpbml0ZTsKKyAgICB9CisKKyAgICB2b2lkIHRyYW5zbGF0ZSh1bnNpZ25l
ZCBvZmZzZXQpCisgICAgeworICAgICAgICBBU1NFUlQobV90eXBlID09IFVudHJhbnNsYXRlZERl
ZmluaXRlKTsKKworICAgICAgICBtX3R5cGUgPSBUcmFuc2xhdGVkRGVmaW5pdGU7CisgICAgICAg
IG1fcmVzb2x2ZWRJbml0aWFsUG9zaXRpb24gKz0gb2Zmc2V0OworICAgICAgICBtX3Jlc29sdmVk
RmluYWxQb3NpdGlvbiArPSBvZmZzZXQ7CisKKyAgICAgICAgQVNTRVJUKG1fcmVzb2x2ZWRJbml0
aWFsUG9zaXRpb24gPj0gMCk7CisgICAgICAgIEFTU0VSVChtX3Jlc29sdmVkRmluYWxQb3NpdGlv
biA+IDApOwogICAgIH0KIAogcHJpdmF0ZToKIAotICAgIGVudW0gR3JpZFNwYW5UeXBlIHtEZWZp
bml0ZSwgSW5kZWZpbml0ZX07CisgICAgZW51bSBHcmlkU3BhblR5cGUge1VudHJhbnNsYXRlZERl
ZmluaXRlLCBUcmFuc2xhdGVkRGVmaW5pdGUsIEluZGVmaW5pdGV9OwogCi0gICAgR3JpZFNwYW4o
dW5zaWduZWQgcmVzb2x2ZWRJbml0aWFsUG9zaXRpb24sIHVuc2lnbmVkIHJlc29sdmVkRmluYWxQ
b3NpdGlvbiwgR3JpZFNwYW5UeXBlIHR5cGUpCi0gICAgICAgIDogbV9yZXNvbHZlZEluaXRpYWxQ
b3NpdGlvbihzdGQ6Om1pbihyZXNvbHZlZEluaXRpYWxQb3NpdGlvbiwga0dyaWRNYXhUcmFja3Mg
LSAxKSkKLSAgICAgICAgLCBtX3Jlc29sdmVkRmluYWxQb3NpdGlvbihzdGQ6Om1pbihyZXNvbHZl
ZEZpbmFsUG9zaXRpb24sIGtHcmlkTWF4VHJhY2tzKSkKLSAgICAgICAgLCBtX3R5cGUodHlwZSkK
KyAgICBHcmlkU3BhbihpbnQgcmVzb2x2ZWRJbml0aWFsUG9zaXRpb24sIGludCByZXNvbHZlZEZp
bmFsUG9zaXRpb24sIEdyaWRTcGFuVHlwZSB0eXBlKQorICAgICAgICA6IG1fdHlwZSh0eXBlKQog
ICAgIHsKKyNpZiBFTkFCTEUoQVNTRVJUKQogICAgICAgICBBU1NFUlQocmVzb2x2ZWRJbml0aWFs
UG9zaXRpb24gPCByZXNvbHZlZEZpbmFsUG9zaXRpb24pOworICAgICAgICBpZiAodHlwZSA9PSBU
cmFuc2xhdGVkRGVmaW5pdGUpIHsKKyAgICAgICAgICAgIEFTU0VSVChyZXNvbHZlZEluaXRpYWxQ
b3NpdGlvbiA+PSAwKTsKKyAgICAgICAgICAgIEFTU0VSVChyZXNvbHZlZEZpbmFsUG9zaXRpb24g
PiAwKTsKKyAgICAgICAgfQorI2VuZGlmCisKKyAgICAgICAgbV9yZXNvbHZlZEluaXRpYWxQb3Np
dGlvbiA9IHN0ZDo6bWF4KC1rR3JpZE1heFRyYWNrcywgc3RkOjptaW4ocmVzb2x2ZWRJbml0aWFs
UG9zaXRpb24sIGtHcmlkTWF4VHJhY2tzIC0gMSkpOworICAgICAgICBtX3Jlc29sdmVkRmluYWxQ
b3NpdGlvbiA9IHN0ZDo6bWF4KC1rR3JpZE1heFRyYWNrcyArIDEsIHN0ZDo6bWluKHJlc29sdmVk
RmluYWxQb3NpdGlvbiwga0dyaWRNYXhUcmFja3MpKTsKICAgICB9CiAKLSAgICB1bnNpZ25lZCBt
X3Jlc29sdmVkSW5pdGlhbFBvc2l0aW9uOwotICAgIHVuc2lnbmVkIG1fcmVzb2x2ZWRGaW5hbFBv
c2l0aW9uOworICAgIGludCBtX3Jlc29sdmVkSW5pdGlhbFBvc2l0aW9uOworICAgIGludCBtX3Jl
c29sdmVkRmluYWxQb3NpdGlvbjsKICAgICBHcmlkU3BhblR5cGUgbV90eXBlOwogCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9HcmlkUmVzb2x2ZWRQb3NpdGlv
bi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvR3JpZFJlc29sdmVkUG9zaXRp
b24uY3BwCmluZGV4IDU5YTFkYmRhYTk4NDlmOWRkMjc5YzZiMzA2N2I5YjJmMjU5NWVlNTQuLjY4
OWI1NjIwMzJiYjZiMGY2YTM4MDc5MTJmODhmZjE0MDI1NjJmNWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9HcmlkUmVzb2x2ZWRQb3NpdGlvbi5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0dyaWRSZXNvbHZlZFBvc2l0aW9uLmNwcApA
QCAtMzUsNiArMzUsNyBAQAogCiAjaW5jbHVkZSAiR3JpZENvb3JkaW5hdGUuaCIKICNpbmNsdWRl
ICJSZW5kZXJCb3guaCIKKyNpbmNsdWRlIDxjc3RkbGliPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKQEAgLTE0MCw3ICsxNDEsNyBAQCBzdGF0aWMgdW5zaWduZWQgcmVzb2x2ZU5hbWVkR3JpZExp
bmVQb3NpdGlvbkZyb21TdHlsZShjb25zdCBSZW5kZXJTdHlsZSYgZ3JpZENvbgogc3RhdGljIEdy
aWRTcGFuIHJlc29sdmVSb3dTdGFydENvbHVtblN0YXJ0TmFtZWRHcmlkTGluZVBvc2l0aW9uQWdh
aW5zdE9wcG9zaXRlUG9zaXRpb24odW5zaWduZWQgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uLCBj
b25zdCBHcmlkUG9zaXRpb24mIHBvc2l0aW9uLCBjb25zdCBWZWN0b3I8dW5zaWduZWQ+JiBncmlk
TGluZXMpCiB7CiAgICAgaWYgKCFyZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24pCi0gICAgICAgIHJl
dHVybiBHcmlkU3Bhbjo6ZGVmaW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24s
IHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiArIDEpOworICAgICAgICByZXR1cm4gR3JpZFNwYW46
OnVudHJhbnNsYXRlZERlZmluaXRlR3JpZFNwYW4ocmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uLCBy
ZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24gKyAxKTsKIAogICAgIHVuc2lnbmVkIGZpcnN0TGluZUJl
Zm9yZVBvc2l0aW9uSW5kZXggPSAwOwogICAgIGF1dG8gZmlyc3RMaW5lQmVmb3JlUG9zaXRpb24g
PSBzdGQ6Omxvd2VyX2JvdW5kKGdyaWRMaW5lcy5iZWdpbigpLCBncmlkTGluZXMuZW5kKCksIHJl
c29sdmVkT3Bwb3NpdGVQb3NpdGlvbik7CkBAIC0xNTIsNyArMTUzLDcgQEAgc3RhdGljIEdyaWRT
cGFuIHJlc29sdmVSb3dTdGFydENvbHVtblN0YXJ0TmFtZWRHcmlkTGluZVBvc2l0aW9uQWdhaW5z
dE9wcG9zaXRlUG8KICAgICB1bnNpZ25lZCByZXNvbHZlZEdyaWRMaW5lUG9zaXRpb24gPSBncmlk
TGluZXNbZ3JpZExpbmVJbmRleF07CiAgICAgaWYgKHJlc29sdmVkR3JpZExpbmVQb3NpdGlvbiA+
PSByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24pCiAgICAgICAgIHJlc29sdmVkR3JpZExpbmVQb3Np
dGlvbiA9IHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiAtIDE7Ci0gICAgcmV0dXJuIEdyaWRTcGFu
OjpkZWZpbml0ZUdyaWRTcGFuKHN0ZDo6bWluKHJlc29sdmVkR3JpZExpbmVQb3NpdGlvbiwgcmVz
b2x2ZWRPcHBvc2l0ZVBvc2l0aW9uKSwgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uKTsKKyAgICBy
ZXR1cm4gR3JpZFNwYW46OnVudHJhbnNsYXRlZERlZmluaXRlR3JpZFNwYW4oc3RkOjptaW4ocmVz
b2x2ZWRHcmlkTGluZVBvc2l0aW9uLCByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24pLCByZXNvbHZl
ZE9wcG9zaXRlUG9zaXRpb24pOwogfQogCiBzdGF0aWMgR3JpZFNwYW4gcmVzb2x2ZVJvd0VuZENv
bHVtbkVuZE5hbWVkR3JpZExpbmVQb3NpdGlvbkFnYWluc3RPcHBvc2l0ZVBvc2l0aW9uKHVuc2ln
bmVkIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiwgY29uc3QgR3JpZFBvc2l0aW9uJiBwb3NpdGlv
biwgY29uc3QgVmVjdG9yPHVuc2lnbmVkPiYgZ3JpZExpbmVzKQpAQCAtMTY3LDcgKzE2OCw3IEBA
IHN0YXRpYyBHcmlkU3BhbiByZXNvbHZlUm93RW5kQ29sdW1uRW5kTmFtZWRHcmlkTGluZVBvc2l0
aW9uQWdhaW5zdE9wcG9zaXRlUG9zaXRpCiAgICAgdW5zaWduZWQgcmVzb2x2ZWRHcmlkTGluZVBv
c2l0aW9uID0gZ3JpZExpbmVzW2dyaWRMaW5lSW5kZXhdOwogICAgIGlmIChyZXNvbHZlZEdyaWRM
aW5lUG9zaXRpb24gPD0gcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uKQogICAgICAgICByZXNvbHZl
ZEdyaWRMaW5lUG9zaXRpb24gPSByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24gKyAxOwotICAgIHJl
dHVybiBHcmlkU3Bhbjo6ZGVmaW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24s
IHJlc29sdmVkR3JpZExpbmVQb3NpdGlvbik7CisgICAgcmV0dXJuIEdyaWRTcGFuOjp1bnRyYW5z
bGF0ZWREZWZpbml0ZUdyaWRTcGFuKHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiwgcmVzb2x2ZWRH
cmlkTGluZVBvc2l0aW9uKTsKIH0KIAogc3RhdGljIEdyaWRTcGFuIHJlc29sdmVOYW1lZEdyaWRM
aW5lUG9zaXRpb25BZ2FpbnN0T3Bwb3NpdGVQb3NpdGlvbihjb25zdCBSZW5kZXJTdHlsZSYgZ3Jp
ZENvbnRhaW5lclN0eWxlLCB1bnNpZ25lZCByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24sIGNvbnN0
IEdyaWRQb3NpdGlvbiYgcG9zaXRpb24sIEdyaWRQb3NpdGlvblNpZGUgc2lkZSkKQEAgLTE4Myw5
ICsxODQsOSBAQCBzdGF0aWMgR3JpZFNwYW4gcmVzb2x2ZU5hbWVkR3JpZExpbmVQb3NpdGlvbkFn
YWluc3RPcHBvc2l0ZVBvc2l0aW9uKGNvbnN0IFJlbmRlcgogICAgIC8vIElmIHRoZXJlIGlzIG5v
IG5hbWVkIGdyaWQgbGluZSBvZiB0aGF0IG5hbWUsIHdlIHJlc29sdmUgdGhlIHBvc2l0aW9uIHRv
ICdhdXRvJyAod2hpY2ggaXMgZXF1aXZhbGVudCB0byAnc3BhbiAxJyBpbiB0aGlzIGNhc2UpLgog
ICAgIC8vIFNlZSBodHRwOi8vbGlzdHMudzMub3JnL0FyY2hpdmVzL1B1YmxpYy93d3ctc3R5bGUv
MjAxM0p1bi8wMzk0Lmh0bWwuCiAgICAgaWYgKGl0ID09IGdyaWRMaW5lc05hbWVzLmVuZCgpKSB7
Ci0gICAgICAgIGlmIChpc1N0YXJ0U2lkZShzaWRlKSAmJiByZXNvbHZlZE9wcG9zaXRlUG9zaXRp
b24pCi0gICAgICAgICAgICByZXR1cm4gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4ocmVzb2x2
ZWRPcHBvc2l0ZVBvc2l0aW9uIC0gMSwgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uKTsKLSAgICAg
ICAgcmV0dXJuIEdyaWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFuKHJlc29sdmVkT3Bwb3NpdGVQb3Np
dGlvbiwgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uICsgMSk7CisgICAgICAgIGlmIChpc1N0YXJ0
U2lkZShzaWRlKSkKKyAgICAgICAgICAgIHJldHVybiBHcmlkU3Bhbjo6dW50cmFuc2xhdGVkRGVm
aW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24gLSAxLCByZXNvbHZlZE9wcG9z
aXRlUG9zaXRpb24pOworICAgICAgICByZXR1cm4gR3JpZFNwYW46OnVudHJhbnNsYXRlZERlZmlu
aXRlR3JpZFNwYW4ocmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uLCByZXNvbHZlZE9wcG9zaXRlUG9z
aXRpb24gKyAxKTsKICAgICB9CiAKICAgICBpZiAoc2lkZSA9PSBSb3dTdGFydFNpZGUgfHwgc2lk
ZSA9PSBDb2x1bW5TdGFydFNpZGUpCkBAIC0xOTcsOSArMTk4LDkgQEAgc3RhdGljIEdyaWRTcGFu
IHJlc29sdmVOYW1lZEdyaWRMaW5lUG9zaXRpb25BZ2FpbnN0T3Bwb3NpdGVQb3NpdGlvbihjb25z
dCBSZW5kZXIKIHN0YXRpYyBHcmlkU3BhbiByZXNvbHZlR3JpZFBvc2l0aW9uQWdhaW5zdE9wcG9z
aXRlUG9zaXRpb24oY29uc3QgUmVuZGVyU3R5bGUmIGdyaWRDb250YWluZXJTdHlsZSwgdW5zaWdu
ZWQgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uLCBjb25zdCBHcmlkUG9zaXRpb24mIHBvc2l0aW9u
LCBHcmlkUG9zaXRpb25TaWRlIHNpZGUpCiB7CiAgICAgaWYgKHBvc2l0aW9uLmlzQXV0bygpKSB7
Ci0gICAgICAgIGlmIChpc1N0YXJ0U2lkZShzaWRlKSAmJiByZXNvbHZlZE9wcG9zaXRlUG9zaXRp
b24pCi0gICAgICAgICAgICByZXR1cm4gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4ocmVzb2x2
ZWRPcHBvc2l0ZVBvc2l0aW9uIC0gMSwgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uKTsKLSAgICAg
ICAgcmV0dXJuIEdyaWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFuKHJlc29sdmVkT3Bwb3NpdGVQb3Np
dGlvbiwgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uICsgMSk7CisgICAgICAgIGlmIChpc1N0YXJ0
U2lkZShzaWRlKSkKKyAgICAgICAgICAgIHJldHVybiBHcmlkU3Bhbjo6dW50cmFuc2xhdGVkRGVm
aW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24gLSAxLCByZXNvbHZlZE9wcG9z
aXRlUG9zaXRpb24pOworICAgICAgICByZXR1cm4gR3JpZFNwYW46OnVudHJhbnNsYXRlZERlZmlu
aXRlR3JpZFNwYW4ocmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uLCByZXNvbHZlZE9wcG9zaXRlUG9z
aXRpb24gKyAxKTsKICAgICB9CiAKICAgICBBU1NFUlQocG9zaXRpb24uaXNTcGFuKCkpOwpAQCAt
MjEzLDE1ICsyMTQsMTAgQEAgc3RhdGljIEdyaWRTcGFuIHJlc29sdmVHcmlkUG9zaXRpb25BZ2Fp
bnN0T3Bwb3NpdGVQb3NpdGlvbihjb25zdCBSZW5kZXJTdHlsZSYgZ3IKICAgICAvLyAnc3BhbiAx
JyBpcyBjb250YWluZWQgaW5zaWRlIGEgc2luZ2xlIGdyaWQgdHJhY2sgcmVnYXJkbGVzcyBvZiB0
aGUgZGlyZWN0aW9uLgogICAgIC8vIFRoYXQncyB3aHkgdGhlIENTUyBzcGFuIHZhbHVlIGlzIG9u
ZSBtb3JlIHRoYW4gdGhlIG9mZnNldCB3ZSBhcHBseS4KICAgICB1bnNpZ25lZCBwb3NpdGlvbk9m
ZnNldCA9IHBvc2l0aW9uLnNwYW5Qb3NpdGlvbigpOwotICAgIGlmIChpc1N0YXJ0U2lkZShzaWRl
KSkgewotICAgICAgICBpZiAoIXJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbikKLSAgICAgICAgICAg
IHJldHVybiBHcmlkU3Bhbjo6ZGVmaW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRp
b24sIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiArIDEpOworICAgIGlmIChpc1N0YXJ0U2lkZShz
aWRlKSkKKyAgICAgICAgcmV0dXJuIEdyaWRTcGFuOjp1bnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRT
cGFuKHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiAtIHBvc2l0aW9uT2Zmc2V0LCByZXNvbHZlZE9w
cG9zaXRlUG9zaXRpb24pOwogCi0gICAgICAgIHVuc2lnbmVkIGluaXRpYWxSZXNvbHZlZFBvc2l0
aW9uID0gc3RkOjptYXg8aW50PigwLCByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24gLSBwb3NpdGlv
bk9mZnNldCk7Ci0gICAgICAgIHJldHVybiBHcmlkU3Bhbjo6ZGVmaW5pdGVHcmlkU3Bhbihpbml0
aWFsUmVzb2x2ZWRQb3NpdGlvbiwgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uKTsKLSAgICB9Ci0K
LSAgICByZXR1cm4gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4ocmVzb2x2ZWRPcHBvc2l0ZVBv
c2l0aW9uLCByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24gKyBwb3NpdGlvbk9mZnNldCk7CisgICAg
cmV0dXJuIEdyaWRTcGFuOjp1bnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKHJlc29sdmVkT3Bw
b3NpdGVQb3NpdGlvbiwgcmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9uICsgcG9zaXRpb25PZmZzZXQp
OwogfQogCiB1bnNpZ25lZCBHcmlkUmVzb2x2ZWRQb3NpdGlvbjo6c3BhblNpemVGb3JBdXRvUGxh
Y2VkSXRlbShjb25zdCBSZW5kZXJTdHlsZSYgZ3JpZENvbnRhaW5lclN0eWxlLCBjb25zdCBSZW5k
ZXJCb3gmIGdyaWRJdGVtLCBHcmlkVHJhY2tTaXppbmdEaXJlY3Rpb24gZGlyZWN0aW9uKQpAQCAt
MjQyLDcgKzIzOCw3IEBAIHVuc2lnbmVkIEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpzcGFuU2l6ZUZv
ckF1dG9QbGFjZWRJdGVtKGNvbnN0IFJlbmRlclN0eWxlJiBncmlkCiAgICAgcmV0dXJuIHBvc2l0
aW9uLnNwYW5Qb3NpdGlvbigpOwogfQogCi1zdGF0aWMgdW5zaWduZWQgcmVzb2x2ZUdyaWRQb3Np
dGlvbkZyb21TdHlsZShjb25zdCBSZW5kZXJTdHlsZSYgZ3JpZENvbnRhaW5lclN0eWxlLCBjb25z
dCBHcmlkUG9zaXRpb24mIHBvc2l0aW9uLCBHcmlkUG9zaXRpb25TaWRlIHNpZGUpCitzdGF0aWMg
aW50IHJlc29sdmVHcmlkUG9zaXRpb25Gcm9tU3R5bGUoY29uc3QgUmVuZGVyU3R5bGUmIGdyaWRD
b250YWluZXJTdHlsZSwgY29uc3QgR3JpZFBvc2l0aW9uJiBwb3NpdGlvbiwgR3JpZFBvc2l0aW9u
U2lkZSBzaWRlKQogewogICAgIHN3aXRjaCAocG9zaXRpb24udHlwZSgpKSB7CiAgICAgY2FzZSBF
eHBsaWNpdFBvc2l0aW9uOiB7CkBAIC0yNTUsMTMgKzI1MSw5IEBAIHN0YXRpYyB1bnNpZ25lZCBy
ZXNvbHZlR3JpZFBvc2l0aW9uRnJvbVN0eWxlKGNvbnN0IFJlbmRlclN0eWxlJiBncmlkQ29udGFp
bmVyU3R5CiAgICAgICAgIGlmIChwb3NpdGlvbi5pc1Bvc2l0aXZlKCkpCiAgICAgICAgICAgICBy
ZXR1cm4gcG9zaXRpb24uaW50ZWdlclBvc2l0aW9uKCkgLSAxOwogCi0gICAgICAgIHVuc2lnbmVk
IHJlc29sdmVkUG9zaXRpb24gPSBhYnMocG9zaXRpb24uaW50ZWdlclBvc2l0aW9uKCkpIC0gMTsK
KyAgICAgICAgdW5zaWduZWQgcmVzb2x2ZWRQb3NpdGlvbiA9IHN0ZDo6YWJzKHBvc2l0aW9uLmlu
dGVnZXJQb3NpdGlvbigpKSAtIDE7CiAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGVuZE9mVHJhY2sg
PSBleHBsaWNpdEdyaWRTaXplRm9yU2lkZShncmlkQ29udGFpbmVyU3R5bGUsIHNpZGUpOwogCi0g
ICAgICAgIC8vIFBlciBodHRwOi8vbGlzdHMudzMub3JnL0FyY2hpdmVzL1B1YmxpYy93d3ctc3R5
bGUvMjAxM01hci8wNTg5Lmh0bWwsIHdlIGNsYW1wIG5lZ2F0aXZlIHZhbHVlIHRvIHRoZSBmaXJz
dCBsaW5lLgotICAgICAgICBpZiAoZW5kT2ZUcmFjayA8IHJlc29sdmVkUG9zaXRpb24pCi0gICAg
ICAgICAgICByZXR1cm4gMDsKLQogICAgICAgICByZXR1cm4gZW5kT2ZUcmFjayAtIHJlc29sdmVk
UG9zaXRpb247CiAgICAgfQogICAgIGNhc2UgTmFtZWRHcmlkQXJlYVBvc2l0aW9uOgpAQCAtMzIz
LDE1ICszMTUsMTUgQEAgR3JpZFNwYW4gR3JpZFJlc29sdmVkUG9zaXRpb246OnJlc29sdmVHcmlk
UG9zaXRpb25zRnJvbVN0eWxlKGNvbnN0IFJlbmRlclN0eWxlJgogICAgICAgICByZXR1cm4gcmVz
b2x2ZUdyaWRQb3NpdGlvbkFnYWluc3RPcHBvc2l0ZVBvc2l0aW9uKGdyaWRDb250YWluZXJTdHls
ZSwgaW5pdGlhbFJlc29sdmVkUG9zaXRpb24sIGZpbmFsUG9zaXRpb24sIGZpbmFsU2lkZSk7CiAg
ICAgfQogCi0gICAgdW5zaWduZWQgcmVzb2x2ZWRJbml0aWFsUG9zaXRpb24gPSByZXNvbHZlR3Jp
ZFBvc2l0aW9uRnJvbVN0eWxlKGdyaWRDb250YWluZXJTdHlsZSwgaW5pdGlhbFBvc2l0aW9uLCBp
bml0aWFsU2lkZSk7Ci0gICAgdW5zaWduZWQgcmVzb2x2ZWRGaW5hbFBvc2l0aW9uID0gcmVzb2x2
ZUdyaWRQb3NpdGlvbkZyb21TdHlsZShncmlkQ29udGFpbmVyU3R5bGUsIGZpbmFsUG9zaXRpb24s
IGZpbmFsU2lkZSk7CisgICAgaW50IHJlc29sdmVkSW5pdGlhbFBvc2l0aW9uID0gcmVzb2x2ZUdy
aWRQb3NpdGlvbkZyb21TdHlsZShncmlkQ29udGFpbmVyU3R5bGUsIGluaXRpYWxQb3NpdGlvbiwg
aW5pdGlhbFNpZGUpOworICAgIGludCByZXNvbHZlZEZpbmFsUG9zaXRpb24gPSByZXNvbHZlR3Jp
ZFBvc2l0aW9uRnJvbVN0eWxlKGdyaWRDb250YWluZXJTdHlsZSwgZmluYWxQb3NpdGlvbiwgZmlu
YWxTaWRlKTsKIAogICAgIGlmIChyZXNvbHZlZEluaXRpYWxQb3NpdGlvbiA+IHJlc29sdmVkRmlu
YWxQb3NpdGlvbikKICAgICAgICAgc3RkOjpzd2FwKHJlc29sdmVkSW5pdGlhbFBvc2l0aW9uLCBy
ZXNvbHZlZEZpbmFsUG9zaXRpb24pOwogICAgIGVsc2UgaWYgKHJlc29sdmVkSW5pdGlhbFBvc2l0
aW9uID09IHJlc29sdmVkRmluYWxQb3NpdGlvbikKICAgICAgICAgcmVzb2x2ZWRGaW5hbFBvc2l0
aW9uID0gcmVzb2x2ZWRJbml0aWFsUG9zaXRpb24gKyAxOwogCi0gICAgcmV0dXJuIEdyaWRTcGFu
OjpkZWZpbml0ZUdyaWRTcGFuKHJlc29sdmVkSW5pdGlhbFBvc2l0aW9uLCBzdGQ6Om1heChyZXNv
bHZlZEluaXRpYWxQb3NpdGlvbiwgcmVzb2x2ZWRGaW5hbFBvc2l0aW9uKSk7CisgICAgcmV0dXJu
IEdyaWRTcGFuOjp1bnRyYW5zbGF0ZWREZWZpbml0ZUdyaWRTcGFuKHJlc29sdmVkSW5pdGlhbFBv
c2l0aW9uLCBzdGQ6Om1heChyZXNvbHZlZEluaXRpYWxQb3NpdGlvbiwgcmVzb2x2ZWRGaW5hbFBv
c2l0aW9uKSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBiODIwOTI3YThj
OGM3ZWFmMGNjNTE5NjVjNTRiOWMwM2Q0ZTY2NDQyLi42YzIwNGYzYTdkYWJiN2ViZjAyZmYxYzE4
NWQ3YWQ3MWYzNGE5N2QxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTYtMDMtMDggIE1hbnVl
bCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzcy1ncmlk
XSBJbml0aWFsIHN1cHBvcnQgZm9yIGltcGxpY2l0IGdyaWQgYmVmb3JlIGV4cGxpY2l0IGdyaWQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NTAxNAor
CisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIFVwZGF0ZWQgcmVz
dWx0cyBpbiBjdXJyZW50IHRlc3RzIGFuZCBhZGRlZCBzcGVjaWZpYyB0ZXN0IGZvciB0aGlzLgor
CisgICAgICAgICogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1hdXRvLWZsb3ctcmVzb2x1dGlv
bi5odG1sOgorICAgICAgICAqIGZhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRlbS1uZWdhdGl2
ZS1wb3NpdGlvbi1yZXNvbHV0aW9uLmh0bWw6CisgICAgICAgICogZmFzdC9jc3MtZ3JpZC1sYXlv
dXQvZ3JpZC1pdGVtLXNwYW5uaW5nLXJlc29sdXRpb24uaHRtbDoKKyAgICAgICAgKiBmYXN0L2Nz
cy1ncmlkLWxheW91dC9pbXBsaWNpdC10cmFja3MtYmVmb3JlLWV4cGxpY2l0LWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvaW1wbGljaXQtdHJhY2tz
LWJlZm9yZS1leHBsaWNpdC5odG1sOiBBZGRlZC4KKwogMjAxNi0wMy0wNyAgQWRhbSBCZXJna3Zp
c3QgIDxhZGFtLmJlcmdrdmlzdEBlcmljc3Nvbi5jb20+CiAKICAgICAgICAgV2ViUlRDOiBJbXBs
ZW1lbnQgTWVkaWFFbmRwb2ludFBlZXJDb25uZWN0aW9uOjpjcmVhdGVPZmZlcigpCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWF1dG8tZmxvdy1yZXNv
bHV0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWF1dG8t
Zmxvdy1yZXNvbHV0aW9uLmh0bWwKaW5kZXggMTkzZTlkZDYzYWI1ZThlZmE3MDdlYzUwM2ViMDcx
ZDYyMzcyNzM5Zi4uOWY3NmM0ZmI5ZDNiZWZkOTY0OGViZTg3ODA1YTE2ZTYyMWI5Zjg1OCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1hdXRvLWZsb3ct
cmVzb2x1dGlvbi5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dy
aWQtYXV0by1mbG93LXJlc29sdXRpb24uaHRtbApAQCAtMjMsOCArMjMsNiBAQAogICAgIC13ZWJr
aXQtZ3JpZC1jb2x1bW46IGF1dG8gLyA4OwogfQogCi0vKiBUaGVzZSAyIGNsYXNzZXMgZm9yY2Vz
IHRoZSBncmlkIHRvIGJlIHNpemVkIGFmdGVyIHRoZSBncmlkLXtjb2x1bW58cm93fS1lbmQsIHRo
dXMgZW5kIHVwIGluIHRoZQotICAgZmlyc3Qgcm93IC8gY29sdW1ucy4gKi8KIC5uZWdhdGl2ZU92
ZXJmbG93aW5nUm93Rmlyc3RDb2x1bW4gewogICAgIC13ZWJraXQtZ3JpZC1yb3c6IGF1dG8gLyAt
MTA7CiAgICAgLXdlYmtpdC1ncmlkLWNvbHVtbjogMTsKQEAgLTE1MywxNSArMTUxLDE1IEBACiAK
IDxkaXYgY2xhc3M9InVuY29uc3RyYWluZWRDb250YWluZXIiPgogICAgIDxkaXYgY2xhc3M9Imdy
aWQgYmlnR3JpZCBncmlkQXV0b0Zsb3dDb2x1bW5TcGFyc2UganVzdGlmeUNvbnRlbnRTdGFydCI+
Ci0gICAgICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBuZWdhdGl2ZU92ZXJmbG93aW5n
Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEt
ZXhwZWN0ZWQtd2lkdGg9IjUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYWFhYIFhYWFhY
IFhYWFhYPC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBzZWNvbmRS
b3dOZWdhdGl2ZU92ZXJmbG93aW5nQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNl
dC15PSI1MCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIx
MDAiPlhYWFhYIFhYWFhYIFhYWFhYPC9kaXY+CisgICAgICAgIDxkaXYgY2xhc3M9InNpemVkVG9H
cmlkQXJlYSBuZWdhdGl2ZU92ZXJmbG93aW5nUm93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9
IjE3MCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNTAiIGRhdGEtZXhw
ZWN0ZWQtaGVpZ2h0PSIzMCI+WFhYWFggWFhYWFggWFhYWFg8L2Rpdj4KKyAgICAgICAgPGRpdiBj
bGFzcz0ic2l6ZWRUb0dyaWRBcmVhIHNlY29uZFJvd05lZ2F0aXZlT3ZlcmZsb3dpbmdDb2x1bW4i
IGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjgwIiBkYXRhLWV4cGVjdGVkLXdpZHRo
PSIxNzAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMDAiPlhYWFhYIFhYWFhYIFhYWFhYPC9kaXY+
CiAgICAgPC9kaXY+CiA8L2Rpdj4KIAogPGRpdiBjbGFzcz0idW5jb25zdHJhaW5lZENvbnRhaW5l
ciI+CiAgICAgPGRpdiBjbGFzcz0iZ3JpZCBiaWdHcmlkIGdyaWRBdXRvRmxvd1Jvd1NwYXJzZSBq
dXN0aWZ5Q29udGVudFN0YXJ0Ij4KLSAgICAgICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVh
IG5lZ2F0aXZlT3ZlcmZsb3dpbmdSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0
YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNTAiIGRhdGEtZXhwZWN0ZWQtaGVp
Z2h0PSI1MCI+WFhYWFggWFhYWFggWFhYWFg8L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFzcz0ic2l6
ZWRUb0dyaWRBcmVhIHNlY29uZFJvd05lZ2F0aXZlT3ZlcmZsb3dpbmdDb2x1bW4iIGRhdGEtb2Zm
c2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjUwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1MCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCI+WFhYWFggWFhYWFggWFhYWFg8L2Rpdj4KKyAgICAgICAg
PGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIG5lZ2F0aXZlT3ZlcmZsb3dpbmdSb3dGaXJzdENv
bHVtbiIgZGF0YS1vZmZzZXQteD0iMTcwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVk
LXdpZHRoPSI1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjMwIj5YWFhYWCBYWFhYWCBYWFhYWDwv
ZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgc2Vjb25kUm93TmVnYXRp
dmVPdmVyZmxvd2luZ0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iODAi
IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjE3MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCI+WFhY
WFggWFhYWFggWFhYWFg8L2Rpdj4KICAgICA8L2Rpdj4KIDwvZGl2PgogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWl0ZW0tbmVnYXRpdmUtcG9zaXRp
b24tcmVzb2x1dGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3Jp
ZC1pdGVtLW5lZ2F0aXZlLXBvc2l0aW9uLXJlc29sdXRpb24uaHRtbAppbmRleCAzZjJiYjc3OTk4
YzNmNDFlMzQyNWU3YzhhNDJjZWI3ZDZkOTk4MWYyLi5mNjFjOWEzMWI3OWYzYzRmN2Q2N2JlY2Y4
YzYwYTgyZTMxOTExYmE5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxh
eW91dC9ncmlkLWl0ZW0tbmVnYXRpdmUtcG9zaXRpb24tcmVzb2x1dGlvbi5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRlbS1uZWdhdGl2ZS1wb3NpdGlv
bi1yZXNvbHV0aW9uLmh0bWwKQEAgLTE1OCw4ICsxNTgsOCBAQAogPC9kaXY+CiAKIDxkaXYgc3R5
bGU9InBvc2l0aW9uOiByZWxhdGl2ZSI+Ci08ZGl2IGNsYXNzPSJncmlkIiBkYXRhLWV4cGVjdGVk
LXdpZHRoPSIxNTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxNTAiPgotICAgIDxkaXYgY2xhc3M9
InNpemVkVG9HcmlkQXJlYSBuZWdhdGl2ZUVuZFBvc2l0aW9uU3RhcnRTcGFuSW5Sb3dEaXJlY3Rp
b24iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lk
dGg9IjUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTUwIj48L2Rpdj4KKzxkaXYgY2xhc3M9Imdy
aWQiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjE1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9Ijc1MCI+
CisgICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIG5lZ2F0aXZlRW5kUG9zaXRpb25TdGFy
dFNwYW5JblJvd0RpcmVjdGlvbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIg
ZGF0YS1leHBlY3RlZC13aWR0aD0iNTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI3NTAiPjwvZGl2
PgogPC9kaXY+CiA8L2Rpdj4KIApAQCAtMTcwLDggKzE3MCw4IEBACiA8L2Rpdj4KIAogPGRpdiBz
dHlsZT0icG9zaXRpb246IHJlbGF0aXZlIj4KLTxkaXYgY2xhc3M9ImdyaWQiIGRhdGEtZXhwZWN0
ZWQtd2lkdGg9IjE1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjE1MCI+Ci0gICAgPGRpdiBjbGFz
cz0ic2l6ZWRUb0dyaWRBcmVhIG5lZ2F0aXZlTmFtZWRHcmlkTGluZUVuZFBvc2l0aW9uU3RhcnRT
cGFuSW5Sb3dEaXJlY3Rpb24iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTUwIj48L2Rpdj4K
KzxkaXYgY2xhc3M9ImdyaWQiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjE1MCIgZGF0YS1leHBlY3Rl
ZC1oZWlnaHQ9Ijc1MCI+CisgICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIG5lZ2F0aXZl
TmFtZWRHcmlkTGluZUVuZFBvc2l0aW9uU3RhcnRTcGFuSW5Sb3dEaXJlY3Rpb24iIGRhdGEtb2Zm
c2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjUwIiBkYXRh
LWV4cGVjdGVkLWhlaWdodD0iNzUwIj48L2Rpdj4KIDwvZGl2PgogPC9kaXY+CiAKQEAgLTE4Miw4
ICsxODIsOCBAQAogPC9kaXY+CiAKIDxkaXYgc3R5bGU9InBvc2l0aW9uOiByZWxhdGl2ZSI+Ci08
ZGl2IGNsYXNzPSJncmlkIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxNTAiIGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSIxNTAiPgotICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBuZWdhdGl2ZUVu
ZFBvc2l0aW9uU3RhcnROZWdhdGl2ZUluUm93RGlyZWN0aW9uIiBkYXRhLW9mZnNldC14PSIwIiBk
YXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1MCIgZGF0YS1leHBlY3RlZC1o
ZWlnaHQ9IjUwIj48L2Rpdj4KKzxkaXYgY2xhc3M9ImdyaWQiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9
IjU1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjE1MCI+CisgICAgPGRpdiBjbGFzcz0ic2l6ZWRU
b0dyaWRBcmVhIG5lZ2F0aXZlRW5kUG9zaXRpb25TdGFydE5lZ2F0aXZlSW5Sb3dEaXJlY3Rpb24i
IGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9
IjQ1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj48L2Rpdj4KIDwvZGl2PgogPC9kaXY+CiAK
QEAgLTE5NCw4ICsxOTQsOCBAQAogPC9kaXY+CiAKIDxkaXYgc3R5bGU9InBvc2l0aW9uOiByZWxh
dGl2ZSI+Ci08ZGl2IGNsYXNzPSJncmlkIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxNTAiIGRhdGEt
ZXhwZWN0ZWQtaGVpZ2h0PSIxNTAiPgotICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBu
YW1lZEdyaWRMaW5lRW5kUG9zaXRpb25TdGFydE5lZ2F0aXZlSW5Sb3dEaXJlY3Rpb24iIGRhdGEt
b2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjUwIiBk
YXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPjwvZGl2PgorPGRpdiBjbGFzcz0iZ3JpZCIgZGF0YS1l
eHBlY3RlZC13aWR0aD0iNTUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTUwIj4KKyAgICA8ZGl2
IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgbmFtZWRHcmlkTGluZUVuZFBvc2l0aW9uU3RhcnROZWdh
dGl2ZUluUm93RGlyZWN0aW9uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBk
YXRhLWV4cGVjdGVkLXdpZHRoPSI0NTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+PC9kaXY+
CiA8L2Rpdj4KIDwvZGl2PgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlk
LWxheW91dC9ncmlkLWl0ZW0tc3Bhbm5pbmctcmVzb2x1dGlvbi5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1pdGVtLXNwYW5uaW5nLXJlc29sdXRpb24uaHRtbApp
bmRleCA0OWU0NWVhYWFjZGE5ZjdiODFmNTRhODRmOTBjNjNkOTEyOTg2MDBlLi4xNmZlYWNmZGFm
OGE0YjEzYWVkNDliMzUyNjYzYmI3ZWY4MmVlNGRhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWl0ZW0tc3Bhbm5pbmctcmVzb2x1dGlvbi5odG1sCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRlbS1zcGFubmluZy1y
ZXNvbHV0aW9uLmh0bWwKQEAgLTcsNiArNyw4IEBACiAgICAgLXdlYmtpdC1ncmlkLXRlbXBsYXRl
LXJvd3M6IDMwJSA3MCU7CiAgICAgd2lkdGg6IDQwMHB4OwogICAgIGhlaWdodDogMzAwcHg7Cisg
ICAgLXdlYmtpdC1ncmlkLWF1dG8tY29sdW1uczogMjAwcHg7CisgICAgLXdlYmtpdC1ncmlkLWF1
dG8tcm93czogMjUwcHg7CiB9CiAKICNiaWdHcmlkIHsKQEAgLTEyNCwyNSArMTI2LDI1IEBACiAK
IDxkaXYgc3R5bGU9InBvc2l0aW9uOiByZWxhdGl2ZSI+CiA8ZGl2IGNsYXNzPSJncmlkIiBkYXRh
LWV4cGVjdGVkLXdpZHRoPSI0MDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIzMDAiPgotICAgIDxk
aXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBuZWdhdGl2ZU92ZXJmbG93Um93Rmlyc3RDb2x1bW4i
IGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9
IjE2MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJz
aXplZFRvR3JpZEFyZWEgbmVnYXRpdmVPdmVyZmxvd1Jvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNl
dC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxNjAiIGRhdGEt
ZXhwZWN0ZWQtaGVpZ2h0PSI1MDAiPjwvZGl2PgogPC9kaXY+CiA8L2Rpdj4KIAogPGRpdiBzdHls
ZT0icG9zaXRpb246IHJlbGF0aXZlIj4KIDxkaXYgY2xhc3M9ImdyaWQiIGRhdGEtZXhwZWN0ZWQt
d2lkdGg9IjQwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjMwMCI+Ci0gICAgPGRpdiBjbGFzcz0i
c2l6ZWRUb0dyaWRBcmVhIG92ZXJmbG93Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAi
IGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjE2MCIgZGF0YS1leHBlY3Rl
ZC1oZWlnaHQ9IjMwMCI+PC9kaXY+CisgICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIG92
ZXJmbG93Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAi
IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjE2MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjgwMCI+PC9k
aXY+CiA8L2Rpdj4KIDwvZGl2PgogCiA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogcmVsYXRpdmUiPgog
PGRpdiBjbGFzcz0iZ3JpZCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNDAwIiBkYXRhLWV4cGVjdGVk
LWhlaWdodD0iMzAwIj4KLSAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEgZmlyc3RSb3dO
ZWdhdGl2ZU92ZXJmbG93Q29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIw
IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxNjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI5MCI+PC9k
aXY+CisgICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIGZpcnN0Um93TmVnYXRpdmVPdmVy
Zmxvd0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBl
Y3RlZC13aWR0aD0iNDAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iOTAiPjwvZGl2PgogPC9kaXY+
CiA8L2Rpdj4KIAogPGRpdiBzdHlsZT0icG9zaXRpb246IHJlbGF0aXZlIj4KIDxkaXYgY2xhc3M9
ImdyaWQiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjQwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjMw
MCI+Ci0gICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIGZpcnN0Um93T3ZlcmZsb3dDb2x1
bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lk
dGg9IjQwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48L2Rpdj4KKyAgICA8ZGl2IGNsYXNz
PSJzaXplZFRvR3JpZEFyZWEgZmlyc3RSb3dPdmVyZmxvd0NvbHVtbiIgZGF0YS1vZmZzZXQteD0i
MCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iODAwIiBkYXRhLWV4cGVj
dGVkLWhlaWdodD0iOTAiPjwvZGl2PgogPC9kaXY+CiA8L2Rpdj4KIApAQCAtMTU0LDcgKzE1Niw3
IEBACiAKIDxkaXYgc3R5bGU9InBvc2l0aW9uOiByZWxhdGl2ZSI+CiA8ZGl2IGNsYXNzPSJncmlk
IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI0MDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIzMDAiPgot
ICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSBhdXRvU2Vjb25kUm93QXV0b0ZpcnN0Q29s
dW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSIxNjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI5MCI+PC9kaXY+CisgICAgPGRpdiBjbGFz
cz0ic2l6ZWRUb0dyaWRBcmVhIGF1dG9TZWNvbmRSb3dBdXRvRmlyc3RDb2x1bW4iIGRhdGEtb2Zm
c2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwMCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48L2Rpdj4KIDwvZGl2PgogPC9kaXY+CiAKQEAgLTE4OCw3
ICsxOTAsNyBAQAogCiA8ZGl2IHN0eWxlPSJwb3NpdGlvbjogcmVsYXRpdmUiPgogPGRpdiBjbGFz
cz0iZ3JpZCIgaWQ9ImJpZ0dyaWQiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwMCIgZGF0YS1leHBl
Y3RlZC1oZWlnaHQ9IjEwMCI+Ci0gICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIHVuZGVy
Zmxvd1NwYW5uaW5nIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI3NSI+PC9kaXY+CisgICAg
PGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIHVuZGVyZmxvd1NwYW5uaW5nIiBkYXRhLW9mZnNl
dC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMDAiIGRhdGEt
ZXhwZWN0ZWQtaGVpZ2h0PSIxMzI1Ij48L2Rpdj4KIDwvZGl2PgogCiA8IS0tIENoZWNrIHRoYXQg
dGhlIGVuZCBzcGFuIGlzIGlnbm9yZWQgd2hlbiB0d28gb3Bwb3Npbmcgc3BhbnMgYXJlIHNwZWNp
ZmllZC0tPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvaW1w
bGljaXQtdHJhY2tzLWJlZm9yZS1leHBsaWNpdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy1ncmlkLWxheW91dC9pbXBsaWNpdC10cmFja3MtYmVmb3JlLWV4cGxpY2l0LWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi40NDk2YTkxZGNhMjQyMDYzM2JjYjY2ZjI4ODIwNDgzMzNlMzRj
YjVmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQv
aW1wbGljaXQtdHJhY2tzLWJlZm9yZS1leHBsaWNpdC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwx
MTIgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhhdCBpdCdzIHBvc3NpYmxlIHRvIGNyZWF0ZSBpbXBs
aWNpdCB0cmFja3MgYmVmb3JlIHRoZSBleHBsaWNpdCBvbmVzIHVzaW5nIG5lZ2F0aXZlIGluZGV4
ZXMuCisKK1hYCitQQVNTCitYCitYWAorUEFTUworWAorWFgKK1BBU1MKK1gKK1hYCitQQVNTCitY
CitYWAorUEFTUworWAorWFgKK1BBU1MKK1gKK1hYCitQQVNTCitYCitYWAorUEFTUworWAorWFgK
K1BBU1MKK1gKK1hYCitYWFgKK1BBU1MKK1gKK1hYCitYWFgKK1BBU1MKK1gKK1hYCitYWFgKK1BB
U1MKK1gKK1hYCitYWFgKK1BBU1MKK1gKK1hYCitQQVNTCitYCitYWAorUEFTUworWAorWFgKK1BB
U1MKK1gKK1hYCitQQVNTCitYCitYWAorUEFTUworWAorWFgKK1BBU1MKK1gKK1hYCitQQVNTCitY
CitYWAorUEFTUworWAorWFgKK1hYWAorUEFTUworWAorWFgKK1hYWAorUEFTUworWAorWFgKK1hY
WAorUEFTUworWAorWFgKK1hYWAorUEFTUworWAorWFgKK1hYWAorUEFTUworWAorWFgKK1hYWAor
UEFTUworWAorWFgKK1hYWAorUEFTUworWAorWFgKK1hYWAorUEFTUworWAorWFgKK1hYWAorWFhY
WAorWFhYWFgKK1BBU1MKK1gKK1hYCitYWFgKK1hYWFgKK1hYWFhYCitQQVNTCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9pbXBsaWNpdC10cmFja3MtYmVmb3Jl
LWV4cGxpY2l0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9pbXBsaWNp
dC10cmFja3MtYmVmb3JlLWV4cGxpY2l0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzY5YzYyY2JkOTZhNzcy
YTQxYTNlMTFhOGVhNWI1MzJiYTQ5MmI0NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2ltcGxpY2l0LXRyYWNrcy1iZWZvcmUtZXhwbGljaXQuaHRt
bApAQCAtMCwwICsxLDIzNCBAQAorPCFET0NUWVBFIGh0bWw+CisKKzxsaW5rIGhyZWY9InJlc291
cmNlcy9ncmlkLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ij4KKzxsaW5rIGhyZWY9InJlc291cmNlcy9n
cmlkLWFsaWdubWVudC5jc3MiIHJlbD0ic3R5bGVzaGVldCI+Cis8c3R5bGU+CisuZ3JpZCB7Cisg
ICAgLXdlYmtpdC1ncmlkOiA1MHB4IC8gMTAwcHg7CisgICAgZm9udDogMTBweC8xIEFoZW07Cisg
ICAgcG9zaXRpb246IHJlbGF0aXZlOworICAgIG1hcmdpbjogMjVweDsKK30KKworLmZpcnN0TmVn
YXRpdmVSb3dGaXJzdENvbHVtbiB7CisgICAgYmFja2dyb3VuZC1jb2xvcjogcHVycGxlOworICAg
IC13ZWJraXQtZ3JpZC1yb3c6IC0zOworICAgIC13ZWJraXQtZ3JpZC1jb2x1bW46IDE7Cit9CisK
Ky5maXJzdE5lZ2F0aXZlUm93Rmlyc3ROZWdhdGl2ZUNvbHVtbiB7CisgICAgYmFja2dyb3VuZC1j
b2xvcjogbmF2eTsKKyAgICAtd2Via2l0LWdyaWQtcm93OiAtMzsKKyAgICAtd2Via2l0LWdyaWQt
Y29sdW1uOiAtMzsKK30KKworLnNlY29uZE5lZ2F0aXZlUm93Rmlyc3RDb2x1bW4geworICAgIGJh
Y2tncm91bmQtY29sb3I6IGxpbWU7CisgICAgLXdlYmtpdC1ncmlkLXJvdzogLTQ7CisgICAgLXdl
YmtpdC1ncmlkLWNvbHVtbjogMTsKK30KKworLnNlY29uZE5lZ2F0aXZlUm93U2Vjb25kTmVnYXRp
dmVDb2x1bW4geworICAgIGJhY2tncm91bmQtY29sb3I6IG9yYW5nZTsKKyAgICAtd2Via2l0LWdy
aWQtcm93OiAtNDsKKyAgICAtd2Via2l0LWdyaWQtY29sdW1uOiAtNDsKK30KKworLmZpcnN0Um93
Rmlyc3ROZWdhdGl2ZUNvbHVtbiB7CisgICAgYmFja2dyb3VuZC1jb2xvcjogbWFnZW50YTsKKyAg
ICAtd2Via2l0LWdyaWQtcm93OiAxOworICAgIC13ZWJraXQtZ3JpZC1jb2x1bW46IC0zOworfQor
CisuZmlyc3ROZWdhdGl2ZVJvd0ZpcnN0TmVnYXRpdmVDb2x1bW4geworICAgIGJhY2tncm91bmQt
Y29sb3I6IG1hcm9vbjsKKyAgICAtd2Via2l0LWdyaWQtcm93OiAtMzsKKyAgICAtd2Via2l0LWdy
aWQtY29sdW1uOiAtMzsKK30KKworLmZpcnN0Um93U2Vjb25kTmVnYXRpdmVDb2x1bW4geworICAg
IGJhY2tncm91bmQtY29sb3I6IGFxdWE7CisgICAgLXdlYmtpdC1ncmlkLXJvdzogMTsKKyAgICAt
d2Via2l0LWdyaWQtY29sdW1uOiAtNDsKK30KKworPC9zdHlsZT4KKzxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvY2hlY2stbGF5b3V0LmpzIj48L3NjcmlwdD4KKworPGJvZHkgb25sb2FkPSJj
aGVja0xheW91dCgnLmdyaWQnKSI+CisKKzxwPlRoaXMgdGVzdCBjaGVja3MgdGhhdCBpdCdzIHBv
c3NpYmxlIHRvIGNyZWF0ZSBpbXBsaWNpdCB0cmFja3MgYmVmb3JlIHRoZSBleHBsaWNpdCBvbmVz
IHVzaW5nIG5lZ2F0aXZlIGluZGV4ZXMuPC9wPgorCis8ZGl2IGNsYXNzPSJncmlkIj4KKyAgICA8
ZGl2IGNsYXNzPSJhdXRvUm93QXV0b0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZz
ZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0i
NTAiPlhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCI+CisgICAgPGRpdiBjbGFz
cz0iZmlyc3ROZWdhdGl2ZVJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9m
ZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0
PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRhLW9m
ZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBk
YXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0i
Z3JpZCI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3ROZWdhdGl2ZVJvd0ZpcnN0Q29sdW1uIiBkYXRh
LW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAi
IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0
Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRh
LWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4K
KzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgorICAgIDxk
aXYgY2xhc3M9ImZpcnN0TmVnYXRpdmVSb3dGaXJzdE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNl
dC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1l
eHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYXV0b1Jvd0F1dG9D
b2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVk
LXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WFg8L2Rpdj4KKzwvZGl2Pgor
Cis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9
ImZpcnN0TmVnYXRpdmVSb3dGaXJzdE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBk
YXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1leHBlY3RlZC1o
ZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIg
ZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRo
PSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2
IGNsYXNzPSJncmlkIj4KKyAgICA8ZGl2IGNsYXNzPSJzZWNvbmROZWdhdGl2ZVJvd0ZpcnN0Q29s
dW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xh
c3M9ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIx
MCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlhY
PC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCI+CisgICAgPGRpdiBjbGFzcz0ic2Vj
b25kTmVnYXRpdmVSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQt
eT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAi
Plg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNl
dC14PSIwIiBkYXRhLW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRh
LWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3Jp
ZCBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJzZWNvbmROZWdhdGl2ZVJv
d1NlY29uZE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIw
IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9k
aXY+CisgICAgPGRpdiBjbGFzcz0iYXV0b1Jvd0F1dG9Db2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEw
IiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3Rl
ZC1oZWlnaHQ9IjEwIj5YWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlm
eUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0ic2Vjb25kTmVnYXRpdmVSb3dTZWNvbmRO
ZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1l
eHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAg
IDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEwIiBkYXRh
LW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhl
aWdodD0iNTAiPlhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCI+CisgICAgPGRp
diBjbGFzcz0ic2Vjb25kTmVnYXRpdmVSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIg
ZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVk
LWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93Rmly
c3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVj
dGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WFg8L2Rpdj4KKyAgICA8
ZGl2IGNsYXNzPSJhdXRvUm93QXV0b0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZz
ZXQteT0iMjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9
IjUwIj5YWFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIj4KKyAgICA8ZGl2IGNs
YXNzPSJzZWNvbmROZWdhdGl2ZVJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRh
LW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVp
Z2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0TmVnYXRpdmVSb3dGaXJzdENv
bHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMTAiIGRhdGEtZXhwZWN0ZWQt
d2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YWDwvZGl2PgorICAgIDxkaXYg
Y2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0
LXk9IjIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1
MCI+WFhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVudFN0
YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJzZWNvbmROZWdhdGl2ZVJvd1NlY29uZE5lZ2F0aXZlQ29s
dW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSIxMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFz
cz0iZmlyc3ROZWdhdGl2ZVJvd0ZpcnN0TmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEw
IiBkYXRhLW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMzAiIGRhdGEtZXhwZWN0
ZWQtaGVpZ2h0PSIxMCI+WFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJhdXRvUm93QXV0b0NvbHVt
biIgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lk
dGg9IjMwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlhYWDwvZGl2PgorPC9kaXY+CisKKzxk
aXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0ic2Vj
b25kTmVnYXRpdmVSb3dTZWNvbmROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0
YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0ZWQtaGVp
Z2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0TmVnYXRpdmVSb3dGaXJzdE5l
Z2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZzZXQteT0iMTAiIGRhdGEt
ZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlhYPC9kaXY+Cisg
ICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0iMzAiIGRh
dGEtb2Zmc2V0LXk9IjIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSI1MCI+WFhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5
Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0TmVnYXRpdmVDb2x1
bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lk
dGg9IjEwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNz
PSJhdXRvUm93QXV0b0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjAi
IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwv
ZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+Cisg
ICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14
PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1leHBl
Y3RlZC1oZWlnaHQ9IjUwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENv
bHVtbiIgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQt
d2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwvZGl2PgorPC9kaXY+CisK
KzxkaXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0i
Zmlyc3ROZWdhdGl2ZVJvd0ZpcnN0TmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRh
dGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLWV4cGVjdGVkLWhl
aWdodD0iMTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJhdXRvUm93QXV0b0NvbHVtbiIgZGF0
YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEw
MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xh
c3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3ROZWdh
dGl2ZVJvd0ZpcnN0TmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0
LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAi
Plg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNl
dC14PSIxMCIgZGF0YS1vZmZzZXQteT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9Imdy
aWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dTZWNvbmRO
ZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1l
eHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WDwvZGl2PgorICAg
IDxkaXYgY2xhc3M9ImF1dG9Sb3dBdXRvQ29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1v
ZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0
PSI1MCI+WFg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50
U3RhcnQiPgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93U2Vjb25kTmVnYXRpdmVDb2x1bW4iIGRh
dGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEw
IiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJz
dFJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0
YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYPC9kaXY+
Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAgICA8
ZGl2IGNsYXNzPSJzZWNvbmROZWdhdGl2ZVJvd1NlY29uZE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9m
ZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYXV0b1Jvd0F1
dG9Db2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVj
dGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YWDwvZGl2PgorPC9kaXY+
CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFz
cz0ic2Vjb25kTmVnYXRpdmVSb3dTZWNvbmROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0i
MCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0
ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1
bW4iIGRhdGEtb2Zmc2V0LXg9IjEwIiBkYXRhLW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13
aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYPC9kaXY+Cis8L2Rpdj4KKwor
PGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJm
aXJzdFJvd1NlY29uZE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNl
dC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUw
Ij5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdE5lZ2F0aXZlQ29sdW1uIiBk
YXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0i
MjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJh
dXRvUm93QXV0b0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMzAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWFg8L2Rp
dj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIGp1c3RpZnlDb250ZW50U3RhcnQiPgorICAg
IDxkaXYgY2xhc3M9ImZpcnN0Um93U2Vjb25kTmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9
IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLWV4cGVj
dGVkLWhlaWdodD0iNTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0TmVn
YXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjEwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwvZGl2PgorICAg
IDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjMwIiBkYXRh
LW9mZnNldC15PSIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVp
Z2h0PSI1MCI+WFhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29u
dGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJzZWNvbmROZWdhdGl2ZVJvd1NlY29uZE5lZ2F0
aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVj
dGVkLXdpZHRoPSIxMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRp
diBjbGFzcz0iZmlyc3ROZWdhdGl2ZVJvd0ZpcnN0TmVnYXRpdmVDb2x1bW4iIGRhdGEtb2Zmc2V0
LXg9IjEwIiBkYXRhLW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMzAiIGRhdGEt
ZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJhdXRvUm93QXV0
b0NvbHVtbiIgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0
ZWQtd2lkdGg9IjMwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlhYWDwvZGl2PgorPC9kaXY+
CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFz
cz0ic2Vjb25kTmVnYXRpdmVSb3dTZWNvbmROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0i
MCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtZXhwZWN0
ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0TmVnYXRpdmVSb3dG
aXJzdE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZzZXQteT0iMTAi
IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlhYPC9k
aXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0i
MzAiIGRhdGEtb2Zmc2V0LXk9IjIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhw
ZWN0ZWQtaGVpZ2h0PSI1MCI+WFhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBq
dXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93Rmly
c3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjMwIiBkYXRhLW9mZnNldC15PSIwIiBkYXRhLWV4cGVj
dGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCI+WDwvZGl2PgorICAgIDxk
aXYgY2xhc3M9ImZpcnN0Um93Rmlyc3ROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIg
ZGF0YS1vZmZzZXQteT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjMwIiBkYXRhLWV4cGVjdGVk
LWhlaWdodD0iNTAiPlhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYXV0b1Jvd0F1dG9Db2x1bW4i
IGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9
IjMwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlhYWDwvZGl2PgorPC9kaXY+CisKKzxkaXYg
Y2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RO
ZWdhdGl2ZVJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSIyMCIgZGF0YS1vZmZzZXQteT0i
MCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlg8
L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0TmVnYXRpdmVDb2x1bW4iIGRhdGEt
b2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIg
ZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0
Um93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjIwIiBkYXRhLW9mZnNldC15PSIxMCIgZGF0
YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYWDwvZGl2
PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRlbnRTdGFydCI+CisgICAg
PGRpdiBjbGFzcz0ic2Vjb25kTmVnYXRpdmVSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQteD0i
MzAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBl
Y3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dTZWNvbmRO
ZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZzZXQteT0iMTAiIGRhdGEt
ZXhwZWN0ZWQtd2lkdGg9IjMwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNTAiPlhYPC9kaXY+Cisg
ICAgPGRpdiBjbGFzcz0iYXV0b1Jvd0F1dG9Db2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEt
b2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjMwIiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iMTAiPlhYWDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQganVzdGlmeUNvbnRl
bnRTdGFydCI+CisgICAgPGRpdiBjbGFzcz0ic2Vjb25kTmVnYXRpdmVSb3dGaXJzdENvbHVtbiIg
ZGF0YS1vZmZzZXQteD0iMjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9
IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIj5YPC9kaXY+CisgICAgPGRpdiBjbGFzcz0i
Zmlyc3RSb3dTZWNvbmROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMCIgZGF0YS1vZmZz
ZXQteT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0i
NTAiPlhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIgZGF0YS1v
ZmZzZXQteD0iMjAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAi
IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFhYPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFz
cz0iZ3JpZCBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAgICA8ZGl2IGNsYXNzPSJzZWNvbmROZWdh
dGl2ZVJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14PSI5MCIgZGF0YS1vZmZzZXQteT0iMCIg
ZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlg8L2Rp
dj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd1NlY29uZE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9m
ZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIyMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iNTAiIGRh
dGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdE5l
Z2F0aXZlUm93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjkwIiBkYXRhLW9mZnNldC15PSIx
MCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlhY
WDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3ROZWdhdGl2ZUNvbHVtbiIgZGF0
YS1vZmZzZXQteD0iNTAiIGRhdGEtb2Zmc2V0LXk9IjIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI0
MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWFhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0i
YXV0b1Jvd0F1dG9Db2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjAiIGRhdGEtb2Zmc2V0LXk9IjAiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiPlhYWFhYPC9k
aXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBqdXN0aWZ5Q29udGVudFN0YXJ0Ij4KKyAg
ICA8ZGl2IGNsYXNzPSJzZWNvbmROZWdhdGl2ZVJvd0ZpcnN0Q29sdW1uIiBkYXRhLW9mZnNldC14
PSI2MCIgZGF0YS1vZmZzZXQteT0iMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iMTAiPlg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd1NlY29u
ZE5lZ2F0aXZlQ29sdW1uIiBkYXRhLW9mZnNldC14PSIwIiBkYXRhLW9mZnNldC15PSIyMCIgZGF0
YS1leHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFg8L2Rpdj4K
KyAgICA8ZGl2IGNsYXNzPSJmaXJzdE5lZ2F0aXZlUm93Rmlyc3RDb2x1bW4iIGRhdGEtb2Zmc2V0
LXg9IjYwIiBkYXRhLW9mZnNldC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRh
LWV4cGVjdGVkLWhlaWdodD0iMTAiPlhYWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93
Rmlyc3ROZWdhdGl2ZUNvbHVtbiIgZGF0YS1vZmZzZXQteD0iMjAiIGRhdGEtb2Zmc2V0LXk9IjIw
IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI0MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjUwIj5YWFhY
PC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIgZGF0YS1vZmZzZXQt
eD0iNjAiIGRhdGEtb2Zmc2V0LXk9IjIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEt
ZXhwZWN0ZWQtaGVpZ2h0PSI1MCI+WFhYWFg8L2Rpdj4KKzwvZGl2PgorCis8L2JvZHk+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>