<?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>32787</bug_id>
          
          <creation_ts>2009-12-20 03:50:55 -0800</creation_ts>
          <short_desc>SVG Mask result wrong, if two different objects call the same mask id</short_desc>
          <delta_ts>2009-12-27 09:10:07 -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>SVG</component>
          <version>525.x (Safari 3.1)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dirk Schulze">krit</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>173705</commentid>
    <comment_count>0</comment_count>
      <attachid>45268</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-12-20 03:50:55 -0800</bug_when>
    <thetext>Created attachment 45268
Mask called twice by different objects

If two different objects, with different properties call the same mask (the same mask id). The result of the second object is wrong. This is caused by the calculation of the mask image. This is done once for every mask (mask by id). So the mask image depends on the first object calling it.
I saw this bug during my work on SVG Filter. We had a similar problem with the filter size and it&apos;s effect. We build the filter on every drawing atm. That is a performance loss, but the only way to handle this problem atm.
We should identify masks, clipper, filters not only by their id, but also by the object they belong to.

I attached a simple exmaple. You should see two circles with different positions and dimensions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173801</commentid>
    <comment_count>1</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2009-12-20 13:14:09 -0800</bug_when>
    <thetext>We have to extend our SVGResource design, it has not been designed with the idea that a resource can NOT be shared between multiple clients.

We can only share SVGResources for gradients &amp; clipper, at the time of writing. For filters, patterns, masks (anything that stores an ImageBuffer in a resource) we can&apos;t just hash the id of a resource against the SVGResource object itself, it needs to be dependant on the target element as well.

What we have now:
HashMap&lt;String, SVGResource*&gt;, identifying a SVGResource object by it&apos;s own id. (&lt;clipPath id=&quot;foo&quot; for example)

We could have a new HashMap&lt;SVGElement*, SVGResource*&gt; as our new main hash map, that maps _target_ elements to SVGResources. That would resolve the issue for filters, pattern, mask etc. Though for clipper/gradient there is no need to NOT share the resources. So we readd the existing hash map:
HashMap&lt;String, SVGResource*&gt; and use it to map resource-id to resource-objects, as it has been in trunk before.

Whenever we fail to lookup a resource in the HashMap&lt;SVGElement*, SVGResource*&gt; map, and if we&apos;re requesting gradients/clipper, then we can ask the id-map, if there&apos;s already a resource available for that id, if yes, we can just map the already-existing SVGResource* object to the SVGElement* that&apos;s just requesting it. This we we can still share resources for gradients/clipper, and resolve the bug for anything else.

....
This is rather simplified, as it would only allow us to hash _one_ resource per element. In real life we will need something like: HashMap&lt;SVGElement*, HashSet&lt;SVGResource*&gt; &gt;, as there may be multiple non-shared resources for a certain target SVGElement, but this is rather an implementation detail, and doesn&apos;t help to understand the problem, so I left it out in above analysis :-)

Hopefully anyone can start working on that soon..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175022</commentid>
    <comment_count>2</comment_count>
      <attachid>45519</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-12-27 02:53:45 -0800</bug_when>
    <thetext>Created attachment 45519
Create more than one SVG Mask resource

This patch creates more than one SVG Mask resource, if more than one RenderObject call the same mask Id.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175023</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-27 02:54:54 -0800</bug_when>
    <thetext>Attachment 45519 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
WebCore/svg/graphics/SVGResourceClipper.h:32:  Alphabetical sorting problem.  [build/include_order] [4]
WebCore/rendering/RenderSVGRoot.cpp:116:  Tab found; better to use spaces  [whitespace/tab] [1]
Total errors found: 2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175027</commentid>
    <comment_count>4</comment_count>
      <attachid>45521</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-12-27 03:03:33 -0800</bug_when>
    <thetext>Created attachment 45521
Create more than one SVG Mask resource

fixed style issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175036</commentid>
    <comment_count>5</comment_count>
      <attachid>45522</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-12-27 06:18:00 -0800</bug_when>
    <thetext>Created attachment 45522
Create more than one SVG Mask resource

Some changes in RenderSVGRoot and SVGMaskElement after talking to Niko in IRC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175037</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-27 06:19:13 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45522 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175038</commentid>
    <comment_count>7</comment_count>
      <attachid>45522</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2009-12-27 06:32:56 -0800</bug_when>
    <thetext>Comment on attachment 45522
Create more than one SVG Mask resource

LGTM, r=me.

Please remove trailing spaces, before landing below:

&gt; Index: WebCore/svg/graphics/SVGResourceFilter.cpp
&gt; ===================================================================
&gt; --- WebCore/svg/graphics/SVGResourceFilter.cpp	(revision 52220)
&gt; +++ WebCore/svg/graphics/SVGResourceFilter.cpp	(working copy)
&gt; @@ -52,7 +52,7 @@ SVGResourceFilter::SVGResourceFilter(con
&gt;      , m_savedContext(0)
&gt;      , m_sourceGraphicBuffer(0)
&gt;  {
&gt; -    m_filterBuilder.set(new SVGFilterBuilder());
&gt; +    m_filterBuilder.set(new SVGFilterBuilder());    
&gt;  }</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175044</commentid>
    <comment_count>8</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-12-27 09:10:07 -0800</bug_when>
    <thetext>Landed in r52580.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>45268</attachid>
            <date>2009-12-20 03:50:55 -0800</date>
            <delta_ts>2009-12-20 03:50:55 -0800</delta_ts>
            <desc>Mask called twice by different objects</desc>
            <filename>mask-same-id.svg</filename>
            <type>image/svg+xml</type>
            <size>425</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRw
Oi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGRlZnM+CjxtYXNrIGlkPSJtYXNrIiB4PSIwJSIg
eT0iMCUiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIG1hc2tDb250ZW50VW5pdHM9Im9iamVj
dEJvdW5kaW5nQm94Ij4KICAgIDxjaXJjbGUgY3g9Ii41IiBjeT0iLjUiIHI9Ii41IiBmaWxsPSJ3
aGl0ZSIvPgo8L21hc2s+CjwvZGVmcz4KPHJlY3QgeD0iMjAiIHk9IjIwIiB3aWR0aD0iMTAwIiBo
ZWlnaHQ9IjEwMCIgc3R5bGU9ImZpbGw6Z3JlZW47bWFzazp1cmwoI21hc2spOyIvPgo8cmVjdCB4
PSIxNDAiIHk9IjUwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjQwIiBzdHlsZT0iZmlsbDpncmVlbjtt
YXNrOnVybCgjbWFzayk7Ii8+Cjwvc3ZnPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45519</attachid>
            <date>2009-12-27 02:53:45 -0800</date>
            <delta_ts>2009-12-27 03:03:33 -0800</delta_ts>
            <desc>Create more than one SVG Mask resource</desc>
            <filename>mask-on-multiple-objects.patch</filename>
            <type>text/plain</type>
            <size>54880</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1MjU3NikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNzcgQEAKKzIwMDktMTItMjcgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTVkcg
TWFzayByZXN1bHQgd3JvbmcsIGlmIHR3byBkaWZmZXJlbnQgb2JqZWN0cyBjYWxsIHRoZSBzYW1l
IG1hc2sgaWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTMyNzg3CisKKyAgICAgICAgQXQgdGhlIG1vbWVudCB3ZSBjcmVhdGUgb25lIHJlc291cmNlIHBl
ciBtYXNrSWQuIFNvbWUgcmVzb3VyY2VzIChsaWtlIG1hc2spCisgICAgICAgIGNyZWF0ZSBJbWFn
ZUJ1ZmZlcnMgYW5kIGRlcGVuZHMgb24gdGhlIHByb3BlcnRpZXMgb2YgdGhlIFJlbmRlck9iamVj
dCwKKyAgICAgICAgdGh1cyB3ZSBjYW4ndCB1c2UgaXQgZm9yIGEgc2Vjb25kIG9iamVjdC4KKyAg
ICAgICAgVGhpcyBwYXRjaCBzdG9yZXMgbXVsdGlwbGUgbWFzayByZXNvdXJjZXMgZm9yIG9uZSBt
YXNrSWQgYW5kIGRpZmZlcmVudAorICAgICAgICBSZW5kZXJPYmplY3QgY2FuIHVzZSB0aGUgc2Ft
ZSBtYXNrSWQuCisgICAgICAgIENsaXBwZXIsIEZpbHRlciBhbmQgUGF0dGVybnMgYWxzbyBuZWVk
IHRvIHN0b3JlIG11bHRpcGxlIHJlc291cmNlcyBsYXRlci4KKworICAgICAgICBUZXN0OiBzdmcv
Y3VzdG9tL21hc2stb24tbXVsdGlwbGUtb2JqZWN0cy5zdmcKKworICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJQYXRoLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclBhdGg6OmRyYXdNYXJr
ZXJzSWZOZWVkZWQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJTVkdDb250YWluZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZHQ29udGFpbmVyOjpzZWxmV2lsbFBhaW50KToK
KyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyU1ZHR3JhZGllbnRTdG9wLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclNWR0dyYWRpZW50U3RvcDo6c3R5bGVEaWRDaGFuZ2UpOgorICAgICAg
ICAqIHJlbmRlcmluZy9SZW5kZXJTVkdSb290LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
clNWR1Jvb3Q6OnNlbGZXaWxsUGFpbnQpOgorICAgICAgICAqIHJlbmRlcmluZy9TVkdSZW5kZXJT
dXBwb3J0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1JlbmRlckJhc2U6OnByZXBhcmVUb1Jl
bmRlclNWR0NvbnRlbnQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHUmVuZGVyQmFzZTo6ZmlsdGVy
Qm91bmRpbmdCb3hGb3JSZW5kZXJlcik6CisgICAgICAgICogcmVuZGVyaW5nL1NWR1JlbmRlclRy
ZWVBc1RleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6d3JpdGVSZW5kZXJSZXNvdXJjZXMpOgor
ICAgICAgICAqIHN2Zy9TVkdDbGlwUGF0aEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U1ZHQ2xpcFBhdGhFbGVtZW50OjpjYW52YXNSZXNvdXJjZSk6CisgICAgICAgICogc3ZnL1NWR0Ns
aXBQYXRoRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdGaWx0ZXJFbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNWR0ZpbHRlckVsZW1lbnQ6OmNhbnZhc1Jlc291cmNlKToKKyAgICAg
ICAgKiBzdmcvU1ZHRmlsdGVyRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdHcmFkaWVudEVs
ZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHR3JhZGllbnRFbGVtZW50OjpjYW52YXNS
ZXNvdXJjZSk6CisgICAgICAgICogc3ZnL1NWR0dyYWRpZW50RWxlbWVudC5oOgorICAgICAgICAq
IHN2Zy9TVkdNYXJrZXJFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR01hcmtlckVs
ZW1lbnQ6OmNhbnZhc1Jlc291cmNlKToKKyAgICAgICAgKiBzdmcvU1ZHTWFya2VyRWxlbWVudC5o
OgorICAgICAgICAqIHN2Zy9TVkdNYXNrRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
VkdNYXNrRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpT
VkdNYXNrRWxlbWVudDo6Y2hpbGRyZW5DaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR01h
c2tFbGVtZW50OjpjYW52YXNSZXNvdXJjZSk6CisgICAgICAgICogc3ZnL1NWR01hc2tFbGVtZW50
Lmg6CisgICAgICAgICogc3ZnL1NWR1BhdHRlcm5FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlNWR1BhdHRlcm5FbGVtZW50OjpjYW52YXNSZXNvdXJjZSk6CisgICAgICAgICogc3ZnL1NW
R1BhdHRlcm5FbGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR1N0eWxlZEVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U1ZHU3R5bGVkRWxlbWVudDo6aW52YWxpZGF0ZVJlc291cmNlc0lu
QW5jZXN0b3JDaGFpbik6CisgICAgICAgICogc3ZnL1NWR1N0eWxlZEVsZW1lbnQuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQ6OmNhbnZhc1Jlc291cmNlKToKKyAgICAgICAg
KiBzdmcvZ3JhcGhpY3MvU1ZHUGFpbnRTZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Z2V0
UGFpbnRTZXJ2ZXJCeUlkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR1BhaW50U2VydmVyOjpmaWxs
UGFpbnRTZXJ2ZXIpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHUGFpbnRTZXJ2ZXI6OnN0cm9rZVBh
aW50U2VydmVyKToKKyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUGFpbnRTZXJ2ZXIuaDoKKyAg
ICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Z2V0UmVzb3VyY2VCeUlkKToKKyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2UuaDoK
KyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VDbGlwcGVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OmdldENsaXBwZXJCeUlkKToKKyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVz
b3VyY2VDbGlwcGVyLmg6CisgICAgICAgICogc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlRmlsdGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmdldEZpbHRlckJ5SWQpOgorICAgICAgICAqIHN2Zy9n
cmFwaGljcy9TVkdSZXNvdXJjZUZpbHRlci5oOgorICAgICAgICAqIHN2Zy9ncmFwaGljcy9TVkdS
ZXNvdXJjZU1hcmtlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnZXRNYXJrZXJCeUlkKToKKyAg
ICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VNYXJrZXIuaDoKKyAgICAgICAgKiBzdmcv
Z3JhcGhpY3MvU1ZHUmVzb3VyY2VNYXNrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Z2V0TWFz
a2VyQnlJZCk6CisgICAgICAgICogc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlTWFza2VyLmg6CisK
IDIwMDktMTItMjcgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFyb2dhQHBhcm9nYS5jb20+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCkluZGV4OiBXZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJQYXRoLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJQYXRo
LmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJQYXRoLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzcxLDkgKzM3MSw5IEBAIEZsb2F0UmVjdCBSZW5kZXJQYXRo
OjpkcmF3TWFya2Vyc0lmTmVlZGUKICAgICBBdG9taWNTdHJpbmcgbWlkTWFya2VySWQoc3ZnU3R5
bGUtPm1pZE1hcmtlcigpKTsKICAgICBBdG9taWNTdHJpbmcgZW5kTWFya2VySWQoc3ZnU3R5bGUt
PmVuZE1hcmtlcigpKTsKIAotICAgIFNWR1Jlc291cmNlTWFya2VyKiBzdGFydE1hcmtlciA9IGdl
dE1hcmtlckJ5SWQoZG9jLCBzdGFydE1hcmtlcklkKTsKLSAgICBTVkdSZXNvdXJjZU1hcmtlciog
bWlkTWFya2VyID0gZ2V0TWFya2VyQnlJZChkb2MsIG1pZE1hcmtlcklkKTsKLSAgICBTVkdSZXNv
dXJjZU1hcmtlciogZW5kTWFya2VyID0gZ2V0TWFya2VyQnlJZChkb2MsIGVuZE1hcmtlcklkKTsK
KyAgICBTVkdSZXNvdXJjZU1hcmtlciogc3RhcnRNYXJrZXIgPSBnZXRNYXJrZXJCeUlkKGRvYywg
c3RhcnRNYXJrZXJJZCwgdGhpcyk7CisgICAgU1ZHUmVzb3VyY2VNYXJrZXIqIG1pZE1hcmtlciA9
IGdldE1hcmtlckJ5SWQoZG9jLCBtaWRNYXJrZXJJZCwgdGhpcyk7CisgICAgU1ZHUmVzb3VyY2VN
YXJrZXIqIGVuZE1hcmtlciA9IGdldE1hcmtlckJ5SWQoZG9jLCBlbmRNYXJrZXJJZCwgdGhpcyk7
CiAKICAgICBpZiAoIXN0YXJ0TWFya2VyICYmICFzdGFydE1hcmtlcklkLmlzRW1wdHkoKSkKICAg
ICAgICAgc3ZnRWxlbWVudC0+ZG9jdW1lbnQoKS0+YWNjZXNzU1ZHRXh0ZW5zaW9ucygpLT5hZGRQ
ZW5kaW5nUmVzb3VyY2Uoc3RhcnRNYXJrZXJJZCwgc3R5bGVkRWxlbWVudCk7CkluZGV4OiBXZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJTVkdDb250YWluZXIuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclNWR0NvbnRhaW5lci5jcHAJKHJldmlzaW9uIDUyMjIwKQorKysg
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHQ29udGFpbmVyLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtODIsNyArODIsNyBAQCBib29sIFJlbmRlclNWR0NvbnRhaW5lcjo6c2VsZldpbGxQYWludCgp
CiB7CiAjaWYgRU5BQkxFKEZJTFRFUlMpCiAgICAgY29uc3QgU1ZHUmVuZGVyU3R5bGUqIHN2Z1N0
eWxlID0gc3R5bGUoKS0+c3ZnU3R5bGUoKTsKLSAgICBTVkdSZXNvdXJjZUZpbHRlciogZmlsdGVy
ID0gZ2V0RmlsdGVyQnlJZChkb2N1bWVudCgpLCBzdmdTdHlsZS0+ZmlsdGVyKCkpOworICAgIFNW
R1Jlc291cmNlRmlsdGVyKiBmaWx0ZXIgPSBnZXRGaWx0ZXJCeUlkKGRvY3VtZW50KCksIHN2Z1N0
eWxlLT5maWx0ZXIoKSwgdGhpcyk7CiAgICAgaWYgKGZpbHRlcikKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAjZW5kaWYKSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNWR0dyYWRpZW50U3Rv
cC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHR3JhZGllbnRT
dG9wLmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTVkdH
cmFkaWVudFN0b3AuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OSw3ICs0OSw3IEBAIHZvaWQgUmVu
ZGVyU1ZHR3JhZGllbnRTdG9wOjpzdHlsZURpZENoYW4KICAgICAvLyA8c3RvcD4gZWxlbWVudHMg
c2hvdWxkIG9ubHkgYmUgYWxsb3dlZCB0byBtYWtlIHJlbmRlcmVycyB1bmRlciBncmFkaWVudCBl
bGVtZW50cwogICAgIC8vIGJ1dCBJIGNhbiBpbWFnaW5lIGEgZmV3IGNhc2VzIHdlIG1pZ2h0IG5v
dCBiZSBjYXRjaGluZywgc28gbGV0J3Mgbm90IGNyYXNoIGlmIG91ciBwYXJlbnQgaXNuJ3QgYSBn
cmFkaWVudC4KICAgICBpZiAoU1ZHR3JhZGllbnRFbGVtZW50KiBncmFkaWVudCA9IGdyYWRpZW50
RWxlbWVudCgpKSB7Ci0gICAgICAgIGlmIChTVkdSZXNvdXJjZSogcmVzb3VyY2UgPSBncmFkaWVu
dC0+Y2FudmFzUmVzb3VyY2UoKSkKKyAgICAgICAgaWYgKFNWR1Jlc291cmNlKiByZXNvdXJjZSA9
IGdyYWRpZW50LT5jYW52YXNSZXNvdXJjZSh0aGlzKSkKICAgICAgICAgICAgIHJlc291cmNlLT5p
bnZhbGlkYXRlKCk7CiAgICAgfQogfQpJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZH
Um9vdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5j
cHAJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTExMyw3ICsxMTMsOCBAQCBib29sIFJlbmRlclNWR1Jvb3Q6
OnNlbGZXaWxsUGFpbnQoKSBjb25zCiB7CiAjaWYgRU5BQkxFKEZJTFRFUlMpCiAgICAgY29uc3Qg
U1ZHUmVuZGVyU3R5bGUqIHN2Z1N0eWxlID0gc3R5bGUoKS0+c3ZnU3R5bGUoKTsKLSAgICBTVkdS
ZXNvdXJjZUZpbHRlciogZmlsdGVyID0gZ2V0RmlsdGVyQnlJZChkb2N1bWVudCgpLCBzdmdTdHls
ZS0+ZmlsdGVyKCkpOworCS8vIEZJWE1FOiBSZW5kZXJTVkdSb290IGlzIG5vdCBhIFJlbmRlck9i
amVjdC4KKyAgICBTVkdSZXNvdXJjZUZpbHRlciogZmlsdGVyID0gZ2V0RmlsdGVyQnlJZChkb2N1
bWVudCgpLCBzdmdTdHlsZS0+ZmlsdGVyKCksIDApOwogICAgIGlmIChmaWx0ZXIpCiAgICAgICAg
IHJldHVybiB0cnVlOwogI2VuZGlmCkluZGV4OiBXZWJDb3JlL3JlbmRlcmluZy9TVkdSZW5kZXJT
dXBwb3J0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9TVkdSZW5kZXJTdXBw
b3J0LmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3JlbmRlcmluZy9TVkdSZW5kZXJT
dXBwb3J0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTE2LDcgKzExNiw3IEBAIHZvaWQgU1ZHUmVu
ZGVyQmFzZTo6cHJlcGFyZVRvUmVuZGVyU1ZHQ28KICAgICBEb2N1bWVudCogZG9jdW1lbnQgPSBv
YmplY3QtPmRvY3VtZW50KCk7CiAKICNpZiBFTkFCTEUoRklMVEVSUykKLSAgICBTVkdSZXNvdXJj
ZUZpbHRlciogbmV3RmlsdGVyID0gZ2V0RmlsdGVyQnlJZChkb2N1bWVudCwgZmlsdGVySWQpOwor
ICAgIFNWR1Jlc291cmNlRmlsdGVyKiBuZXdGaWx0ZXIgPSBnZXRGaWx0ZXJCeUlkKGRvY3VtZW50
LCBmaWx0ZXJJZCwgb2JqZWN0KTsKICAgICBpZiAobmV3RmlsdGVyID09IHJvb3RGaWx0ZXIpIHsK
ICAgICAgICAgLy8gQ2F0Y2ggPHRleHQgZmlsdGVyPSJ1cmwoI2ZvbykiPlRlc3Q8dHNwYW4gZmls
dGVyPSJ1cmwoI2ZvbykiPjEyMzwvdHNwYW4+PC90ZXh0Pi4KICAgICAgICAgLy8gVGhlIGZpbHRl
ciBpcyBOT1QgbWVhbnQgdG8gYmUgYXBwbGllZCB0d2ljZSBpbiB0aGF0IGNhc2UhCkBAIC0xMjYs
OCArMTI2LDggQEAgdm9pZCBTVkdSZW5kZXJCYXNlOjpwcmVwYXJlVG9SZW5kZXJTVkdDbwogICAg
ICAgICBmaWx0ZXIgPSBuZXdGaWx0ZXI7CiAjZW5kaWYKIAotICAgIFNWR1Jlc291cmNlQ2xpcHBl
ciogY2xpcHBlciA9IGdldENsaXBwZXJCeUlkKGRvY3VtZW50LCBjbGlwcGVySWQpOwotICAgIFNW
R1Jlc291cmNlTWFza2VyKiBtYXNrZXIgPSBnZXRNYXNrZXJCeUlkKGRvY3VtZW50LCBtYXNrZXJJ
ZCk7CisgICAgU1ZHUmVzb3VyY2VDbGlwcGVyKiBjbGlwcGVyID0gZ2V0Q2xpcHBlckJ5SWQoZG9j
dW1lbnQsIGNsaXBwZXJJZCwgb2JqZWN0KTsKKyAgICBTVkdSZXNvdXJjZU1hc2tlciogbWFza2Vy
ID0gZ2V0TWFza2VyQnlJZChkb2N1bWVudCwgbWFza2VySWQsIG9iamVjdCk7CiAKICNpZiBFTkFC
TEUoRklMVEVSUykKICAgICBpZiAoZmlsdGVyKSB7CkBAIC0yMzUsNyArMjM1LDcgQEAgRmxvYXRS
ZWN0IFNWR1JlbmRlckJhc2U6OmNvbXB1dGVDb250YWluZQogRmxvYXRSZWN0IFNWR1JlbmRlckJh
c2U6OmZpbHRlckJvdW5kaW5nQm94Rm9yUmVuZGVyZXIoY29uc3QgUmVuZGVyT2JqZWN0KiBvYmpl
Y3QpCiB7CiAjaWYgRU5BQkxFKEZJTFRFUlMpCi0gICAgU1ZHUmVzb3VyY2VGaWx0ZXIqIGZpbHRl
ciA9IGdldEZpbHRlckJ5SWQob2JqZWN0LT5kb2N1bWVudCgpLCBvYmplY3QtPnN0eWxlKCktPnN2
Z1N0eWxlKCktPmZpbHRlcigpKTsKKyAgICBTVkdSZXNvdXJjZUZpbHRlciogZmlsdGVyID0gZ2V0
RmlsdGVyQnlJZChvYmplY3QtPmRvY3VtZW50KCksIG9iamVjdC0+c3R5bGUoKS0+c3ZnU3R5bGUo
KS0+ZmlsdGVyKCksIG9iamVjdCk7CiAgICAgaWYgKGZpbHRlcikKICAgICAgICAgcmV0dXJuIGZp
bHRlci0+ZmlsdGVyQm91bmRpbmdCb3goKTsKICNlbHNlCkluZGV4OiBXZWJDb3JlL3JlbmRlcmlu
Zy9TVkdSZW5kZXJUcmVlQXNUZXh0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmlu
Zy9TVkdSZW5kZXJUcmVlQXNUZXh0LmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3Jl
bmRlcmluZy9TVkdSZW5kZXJUcmVlQXNUZXh0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTIxLDcg
KzUyMSw3IEBAIHZvaWQgd3JpdGVSZW5kZXJSZXNvdXJjZXMoVGV4dFN0cmVhbSYgdHMKICAgICAg
ICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgIFNWR1N0eWxlZEVsZW1lbnQqIHN0eWxlZCA9IHN0
YXRpY19jYXN0PFNWR1N0eWxlZEVsZW1lbnQqPihzdmdFbGVtZW50KTsKLSAgICAgICAgUmVmUHRy
PFNWR1Jlc291cmNlPiByZXNvdXJjZShzdHlsZWQtPmNhbnZhc1Jlc291cmNlKCkpOworICAgICAg
ICBSZWZQdHI8U1ZHUmVzb3VyY2U+IHJlc291cmNlKHN0eWxlZC0+Y2FudmFzUmVzb3VyY2Uobm9k
ZS0+cmVuZGVyZXIoKSkpOwogICAgICAgICBpZiAoIXJlc291cmNlKQogICAgICAgICAgICAgY29u
dGludWU7CiAKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0NsaXBQYXRoRWxlbWVudC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHQ2xpcFBhdGhFbGVtZW50LmNwcAkocmV2aXNpb24gNTIy
MjApCisrKyBXZWJDb3JlL3N2Zy9TVkdDbGlwUGF0aEVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC04OSw3ICs4OSw3IEBAIHZvaWQgU1ZHQ2xpcFBhdGhFbGVtZW50OjpjaGlsZHJlbkNoYW5n
ZWQKICAgICBtX2NsaXBwZXItPmludmFsaWRhdGUoKTsKIH0KIAotU1ZHUmVzb3VyY2UqIFNWR0Ns
aXBQYXRoRWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoKQorU1ZHUmVzb3VyY2UqIFNWR0NsaXBQYXRo
RWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoY29uc3QgUmVuZGVyT2JqZWN0KikKIHsKICAgICBpZiAo
IW1fY2xpcHBlcikKICAgICAgICAgbV9jbGlwcGVyID0gU1ZHUmVzb3VyY2VDbGlwcGVyOjpjcmVh
dGUoKTsKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0NsaXBQYXRoRWxlbWVudC5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvc3ZnL1NWR0NsaXBQYXRoRWxlbWVudC5oCShyZXZpc2lvbiA1MjIyMCkKKysr
IFdlYkNvcmUvc3ZnL1NWR0NsaXBQYXRoRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMiw2
ICsyMiw3IEBACiAjZGVmaW5lIFNWR0NsaXBQYXRoRWxlbWVudF9oCiAKICNpZiBFTkFCTEUoU1ZH
KQorI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgogI2luY2x1ZGUgIlNWR0V4dGVybmFsUmVzb3Vy
Y2VzUmVxdWlyZWQuaCIKICNpbmNsdWRlICJTVkdMYW5nU3BhY2UuaCIKICNpbmNsdWRlICJTVkdS
ZXNvdXJjZUNsaXBwZXIuaCIKQEAgLTQ1LDcgKzQ2LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
ICAgICAgICB2aXJ0dWFsIHZvaWQgc3ZnQXR0cmlidXRlQ2hhbmdlZChjb25zdCBRdWFsaWZpZWRO
YW1lJik7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBjaGlsZHJlbkNoYW5nZWQoYm9vbCBjaGFuZ2Vk
QnlQYXJzZXIgPSBmYWxzZSwgTm9kZSogYmVmb3JlQ2hhbmdlID0gMCwgTm9kZSogYWZ0ZXJDaGFu
Z2UgPSAwLCBpbnQgY2hpbGRDb3VudERlbHRhID0gMCk7CiAKLSAgICAgICAgdmlydHVhbCBTVkdS
ZXNvdXJjZSogY2FudmFzUmVzb3VyY2UoKTsKKyAgICAgICAgdmlydHVhbCBTVkdSZXNvdXJjZSog
Y2FudmFzUmVzb3VyY2UoY29uc3QgUmVuZGVyT2JqZWN0Kik7CiAKICAgICBwcml2YXRlOgogICAg
ICAgICBBTklNQVRFRF9QUk9QRVJUWV9ERUNMQVJBVElPTlMoU1ZHQ2xpcFBhdGhFbGVtZW50LCBT
VkdOYW1lczo6Y2xpcFBhdGhUYWdTdHJpbmcsIFNWR05hbWVzOjpjbGlwUGF0aFVuaXRzQXR0clN0
cmluZywgaW50LCBDbGlwUGF0aFVuaXRzLCBjbGlwUGF0aFVuaXRzKQpJbmRleDogV2ViQ29yZS9z
dmcvU1ZHRmlsdGVyRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHRmls
dGVyRWxlbWVudC5jcHAJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9zdmcvU1ZHRmlsdGVy
RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE2MCw3ICsxNjAsNyBAQCB2b2lkIFNWR0Zp
bHRlckVsZW1lbnQ6OmJ1aWxkRmlsdGVyKGNvbnN0CiAgICAgfQogfQogCi1TVkdSZXNvdXJjZSog
U1ZHRmlsdGVyRWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoKQorU1ZHUmVzb3VyY2UqIFNWR0ZpbHRl
ckVsZW1lbnQ6OmNhbnZhc1Jlc291cmNlKGNvbnN0IFJlbmRlck9iamVjdCopCiB7CiAgICAgaWYg
KCFhdHRhY2hlZCgpKQogICAgICAgICByZXR1cm4gMDsKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0Zp
bHRlckVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdGaWx0ZXJFbGVtZW50
LmgJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9zdmcvU1ZHRmlsdGVyRWxlbWVudC5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAjZGVmaW5lIFNWR0ZpbHRlckVsZW1lbnRf
aAogCiAjaWYgRU5BQkxFKFNWRykgJiYgRU5BQkxFKEZJTFRFUlMpCisjaW5jbHVkZSAiUmVuZGVy
T2JqZWN0LmgiCiAjaW5jbHVkZSAiU1ZHUmVzb3VyY2VGaWx0ZXIuaCIKICNpbmNsdWRlICJTVkdF
eHRlcm5hbFJlc291cmNlc1JlcXVpcmVkLmgiCiAjaW5jbHVkZSAiU1ZHTGFuZ1NwYWNlLmgiCkBA
IC00Miw3ICs0Myw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgU1ZHRmlsdGVyRWxl
bWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqKTsKICAgICAgICAgdmlydHVhbCB+
U1ZHRmlsdGVyRWxlbWVudCgpOwogCi0gICAgICAgIHZpcnR1YWwgU1ZHUmVzb3VyY2UqIGNhbnZh
c1Jlc291cmNlKCk7CisgICAgICAgIHZpcnR1YWwgU1ZHUmVzb3VyY2UqIGNhbnZhc1Jlc291cmNl
KGNvbnN0IFJlbmRlck9iamVjdCopOwogCiAgICAgICAgIHZvaWQgc2V0RmlsdGVyUmVzKHVuc2ln
bmVkIGxvbmcgZmlsdGVyUmVzWCwgdW5zaWduZWQgbG9uZyBmaWx0ZXJSZXNZKSBjb25zdDsKIApJ
bmRleDogV2ViQ29yZS9zdmcvU1ZHR3JhZGllbnRFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3N2Zy9TVkdHcmFkaWVudEVsZW1lbnQuY3BwCShyZXZpc2lvbiA1MjIyMCkKKysrIFdl
YkNvcmUvc3ZnL1NWR0dyYWRpZW50RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExNCw3
ICsxMTQsNyBAQCBSZW5kZXJPYmplY3QqIFNWR0dyYWRpZW50RWxlbWVudDo6Y3JlYXRlCiAgICAg
cmV0dXJuIG5ldyAoYXJlbmEpIFJlbmRlclNWR0hpZGRlbkNvbnRhaW5lcih0aGlzKTsKIH0KIAot
U1ZHUmVzb3VyY2UqIFNWR0dyYWRpZW50RWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoKQorU1ZHUmVz
b3VyY2UqIFNWR0dyYWRpZW50RWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoY29uc3QgUmVuZGVyT2Jq
ZWN0KikKIHsKICAgICBpZiAoIW1fcmVzb3VyY2UpIHsKICAgICAgICAgaWYgKGdyYWRpZW50VHlw
ZSgpID09IExpbmVhckdyYWRpZW50UGFpbnRTZXJ2ZXIpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdH
cmFkaWVudEVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdHcmFkaWVudEVs
ZW1lbnQuaAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2Zy9TVkdHcmFkaWVudEVsZW1l
bnQuaAkod29ya2luZyBjb3B5KQpAQCAtMjIsNiArMjIsNyBAQAogI2RlZmluZSBTVkdHcmFkaWVu
dEVsZW1lbnRfaAogCiAjaWYgRU5BQkxFKFNWRykKKyNpbmNsdWRlICJSZW5kZXJPYmplY3QuaCIK
ICNpbmNsdWRlICJTVkdQYWludFNlcnZlckdyYWRpZW50LmgiCiAjaW5jbHVkZSAiU1ZHRXh0ZXJu
YWxSZXNvdXJjZXNSZXF1aXJlZC5oIgogI2luY2x1ZGUgIlNWR1N0eWxlZEVsZW1lbnQuaCIKQEAg
LTQ1LDcgKzQ2LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2aXJ0dWFsIHZvaWQg
Y2hpbGRyZW5DaGFuZ2VkKGJvb2wgY2hhbmdlZEJ5UGFyc2VyID0gZmFsc2UsIE5vZGUqIGJlZm9y
ZUNoYW5nZSA9IDAsIE5vZGUqIGFmdGVyQ2hhbmdlID0gMCwgaW50IGNoaWxkQ291bnREZWx0YSA9
IDApOwogICAgICAgICB2aXJ0dWFsIFJlbmRlck9iamVjdCogY3JlYXRlUmVuZGVyZXIoUmVuZGVy
QXJlbmEqLCBSZW5kZXJTdHlsZSopOwogCi0gICAgICAgIHZpcnR1YWwgU1ZHUmVzb3VyY2UqIGNh
bnZhc1Jlc291cmNlKCk7CisgICAgICAgIHZpcnR1YWwgU1ZHUmVzb3VyY2UqIGNhbnZhc1Jlc291
cmNlKGNvbnN0IFJlbmRlck9iamVjdCopOwogCiAgICAgcHJvdGVjdGVkOgogICAgICAgICBmcmll
bmQgY2xhc3MgU1ZHUGFpbnRTZXJ2ZXJHcmFkaWVudDsKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR01h
cmtlckVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR01hcmtlckVsZW1l
bnQuY3BwCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL1NWR01hcmtlckVsZW1lbnQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzMsNyArMTczLDcgQEAgdm9pZCBTVkdNYXJrZXJFbGVt
ZW50OjpzZXRPcmllbnRUb0FuZ2xlKAogICAgIG1fbWFya2VyLT5pbnZhbGlkYXRlKCk7CiB9CiAK
LVNWR1Jlc291cmNlKiBTVkdNYXJrZXJFbGVtZW50OjpjYW52YXNSZXNvdXJjZSgpCitTVkdSZXNv
dXJjZSogU1ZHTWFya2VyRWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoY29uc3QgUmVuZGVyT2JqZWN0
KikKIHsKICAgICBpZiAoIW1fbWFya2VyKQogICAgICAgICBtX21hcmtlciA9IFNWR1Jlc291cmNl
TWFya2VyOjpjcmVhdGUoKTsKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR01hcmtlckVsZW1lbnQuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdNYXJrZXJFbGVtZW50LmgJKHJldmlzaW9uIDUy
MjIwKQorKysgV2ViQ29yZS9zdmcvU1ZHTWFya2VyRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yMiw3ICsyMiw3IEBACiAjZGVmaW5lIFNWR01hcmtlckVsZW1lbnRfaAogCiAjaWYgRU5BQkxF
KFNWRykKLQorI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgogI2luY2x1ZGUgIlNWR0FuZ2xlLmgi
CiAjaW5jbHVkZSAiU1ZHRXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZC5oIgogI2luY2x1ZGUgIlNW
R0ZpdFRvVmlld0JveC5oIgpAQCAtNjgsNyArNjgsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgICAgIHZpcnR1YWwgdm9pZCBjaGlsZHJlbkNoYW5nZWQoYm9vbCBjaGFuZ2VkQnlQYXJzZXIg
PSBmYWxzZSwgTm9kZSogYmVmb3JlQ2hhbmdlID0gMCwgTm9kZSogYWZ0ZXJDaGFuZ2UgPSAwLCBp
bnQgY2hpbGRDb3VudERlbHRhID0gMCk7CiAKICAgICAgICAgdmlydHVhbCBSZW5kZXJPYmplY3Qq
IGNyZWF0ZVJlbmRlcmVyKFJlbmRlckFyZW5hKiwgUmVuZGVyU3R5bGUqKTsKLSAgICAgICAgdmly
dHVhbCBTVkdSZXNvdXJjZSogY2FudmFzUmVzb3VyY2UoKTsKKyAgICAgICAgdmlydHVhbCBTVkdS
ZXNvdXJjZSogY2FudmFzUmVzb3VyY2UoY29uc3QgUmVuZGVyT2JqZWN0Kik7CiAKICAgICBwcml2
YXRlOgogICAgICAgICBBTklNQVRFRF9QUk9QRVJUWV9ERUNMQVJBVElPTlMoU1ZHTWFya2VyRWxl
bWVudCwgU1ZHTmFtZXM6Om1hcmtlclRhZ1N0cmluZywgU1ZHTmFtZXM6OnJlZlhBdHRyU3RyaW5n
LCBTVkdMZW5ndGgsIFJlZlgsIHJlZlgpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdNYXNrRWxlbWVu
dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHTWFza0VsZW1lbnQuY3BwCShyZXZp
c2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL1NWR01hc2tFbGVtZW50LmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjksNiArMjksNyBAQAogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dC5oIgogI2lu
Y2x1ZGUgIkltYWdlQnVmZmVyLmgiCiAjaW5jbHVkZSAiTWFwcGVkQXR0cmlidXRlLmgiCisjaW5j
bHVkZSAiUmVuZGVyT2JqZWN0LmgiCiAjaW5jbHVkZSAiUmVuZGVyU1ZHQ29udGFpbmVyLmgiCiAj
aW5jbHVkZSAiU1ZHTGVuZ3RoLmgiCiAjaW5jbHVkZSAiU1ZHTmFtZXMuaCIKQEAgLTEwMiw3ICsx
MDMsNyBAQCB2b2lkIFNWR01hc2tFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkCiB7CiAgICAg
U1ZHU3R5bGVkRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZChhdHRyTmFtZSk7CiAKLSAgICBp
ZiAoIW1fbWFza2VyKQorICAgIGlmIChtX21hc2tlci5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVy
bjsKIAogICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6bWFza1VuaXRzQXR0ciB8fCBhdHRy
TmFtZSA9PSBTVkdOYW1lczo6bWFza0NvbnRlbnRVbml0c0F0dHIgfHwKQEAgLTExMywxNyArMTE0
LDE5IEBAIHZvaWQgU1ZHTWFza0VsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQKICAgICAgICAg
U1ZHTGFuZ1NwYWNlOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAogICAgICAgICBTVkdF
eHRlcm5hbFJlc291cmNlc1JlcXVpcmVkOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAog
ICAgICAgICBTVkdTdHlsZWRFbGVtZW50Ojppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSkKLSAg
ICAgICAgbV9tYXNrZXItPmludmFsaWRhdGUoKTsKKyAgICAgICAgZm9yIChIYXNoTWFwPGNvbnN0
IFJlbmRlck9iamVjdCosIFJlZlB0cjxTVkdSZXNvdXJjZU1hc2tlcj4gPjo6aXRlcmF0b3IgaXQg
PSBtX21hc2tlci5iZWdpbigpOyBpdCAhPSBtX21hc2tlci5lbmQoKTsgKytpdCkKKyAgICAgICAg
ICAgIGl0LT5zZWNvbmQtPmludmFsaWRhdGUoKTsKIH0KIAogdm9pZCBTVkdNYXNrRWxlbWVudDo6
Y2hpbGRyZW5DaGFuZ2VkKGJvb2wgY2hhbmdlZEJ5UGFyc2VyLCBOb2RlKiBiZWZvcmVDaGFuZ2Us
IE5vZGUqIGFmdGVyQ2hhbmdlLCBpbnQgY2hpbGRDb3VudERlbHRhKQogewogICAgIFNWR1N0eWxl
ZEVsZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChjaGFuZ2VkQnlQYXJzZXIsIGJlZm9yZUNoYW5nZSwg
YWZ0ZXJDaGFuZ2UsIGNoaWxkQ291bnREZWx0YSk7CiAKLSAgICBpZiAoIW1fbWFza2VyKQorICAg
IGlmIChtX21hc2tlci5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fbWFza2Vy
LT5pbnZhbGlkYXRlKCk7CisgICAgZm9yIChIYXNoTWFwPGNvbnN0IFJlbmRlck9iamVjdCosIFJl
ZlB0cjxTVkdSZXNvdXJjZU1hc2tlcj4gPjo6aXRlcmF0b3IgaXQgPSBtX21hc2tlci5iZWdpbigp
OyBpdCAhPSBtX21hc2tlci5lbmQoKTsgKytpdCkKKyAgICAgICAgaXQtPnNlY29uZC0+aW52YWxp
ZGF0ZSgpOwogfQogCiBQYXNzT3duUHRyPEltYWdlQnVmZmVyPiBTVkdNYXNrRWxlbWVudDo6ZHJh
d01hc2tlckNvbnRlbnQoY29uc3QgRmxvYXRSZWN0JiB0YXJnZXRSZWN0LCBGbG9hdFJlY3QmIG1h
c2tEZXN0UmVjdCkgY29uc3QKQEAgLTIwNywxMSArMjEwLDE2IEBAIFJlbmRlck9iamVjdCogU1ZH
TWFza0VsZW1lbnQ6OmNyZWF0ZVJlbmQKICAgICByZXR1cm4gbWFza0NvbnRhaW5lcjsKIH0KIAot
U1ZHUmVzb3VyY2UqIFNWR01hc2tFbGVtZW50OjpjYW52YXNSZXNvdXJjZSgpCitTVkdSZXNvdXJj
ZSogU1ZHTWFza0VsZW1lbnQ6OmNhbnZhc1Jlc291cmNlKGNvbnN0IFJlbmRlck9iamVjdCogb2Jq
ZWN0KQogewotICAgIGlmICghbV9tYXNrZXIpCi0gICAgICAgIG1fbWFza2VyID0gU1ZHUmVzb3Vy
Y2VNYXNrZXI6OmNyZWF0ZSh0aGlzKTsKLSAgICByZXR1cm4gbV9tYXNrZXIuZ2V0KCk7CisgICAg
QVNTRVJUKG9iamVjdCk7CisKKyAgICBpZiAobV9tYXNrZXIuY29udGFpbnMob2JqZWN0KSkKKyAg
ICAgICAgcmV0dXJuIG1fbWFza2VyLmdldChvYmplY3QpLmdldCgpOworCisgICAgbV9tYXNrZXIu
c2V0KG9iamVjdCwgU1ZHUmVzb3VyY2VNYXNrZXI6OmNyZWF0ZSh0aGlzKSk7CisKKyAgICByZXR1
cm4gbV9tYXNrZXIuZ2V0KG9iamVjdCkuZ2V0KCk7CiB9CiAKIH0KSW5kZXg6IFdlYkNvcmUvc3Zn
L1NWR01hc2tFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHTWFza0VsZW1l
bnQuaAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2Zy9TVkdNYXNrRWxlbWVudC5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yNyw2ICsyNyw3IEBACiAjaW5jbHVkZSAiU1ZHU3R5bGVkTG9jYXRh
YmxlRWxlbWVudC5oIgogI2luY2x1ZGUgIlNWR1Rlc3RzLmgiCiAjaW5jbHVkZSAiU1ZHVVJJUmVm
ZXJlbmNlLmgiCisjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvUGFzc093
blB0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC00OCw3ICs0OSw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2b2lkIGNoaWxkcmVuQ2hhbmdlZChib29sIGNo
YW5nZWRCeVBhcnNlciA9IGZhbHNlLCBOb2RlKiBiZWZvcmVDaGFuZ2UgPSAwLCBOb2RlKiBhZnRl
ckNoYW5nZSA9IDAsIGludCBjaGlsZENvdW50RGVsdGEgPSAwKTsKIAogICAgICAgICB2aXJ0dWFs
IFJlbmRlck9iamVjdCogY3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJlbmEqLCBSZW5kZXJTdHlsZSop
OwotICAgICAgICB2aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52YXNSZXNvdXJjZSgpOworICAgICAg
ICB2aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52YXNSZXNvdXJjZShjb25zdCBSZW5kZXJPYmplY3Qq
KTsKIAogICAgICAgICBQYXNzT3duUHRyPEltYWdlQnVmZmVyPiBkcmF3TWFza2VyQ29udGVudChj
b25zdCBGbG9hdFJlY3QmIHRhcmdldFJlY3QsIEZsb2F0UmVjdCYgbWFza1JlY3QpIGNvbnN0Owog
CkBAIC02OCw3ICs2OSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFNWR05hbWVzOjpleHRlcm5hbFJlc291cmNlc1JlcXVpcmVk
QXR0clN0cmluZywgYm9vbCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEV4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQsIGV4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQpCiAK
LSAgICAgICAgUmVmUHRyPFNWR1Jlc291cmNlTWFza2VyPiBtX21hc2tlcjsKKyAgICAgICAgSGFz
aE1hcDxjb25zdCBSZW5kZXJPYmplY3QqLCBSZWZQdHI8U1ZHUmVzb3VyY2VNYXNrZXI+ID4gbV9t
YXNrZXI7CiAgICAgfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogV2ViQ29yZS9z
dmcvU1ZHUGF0dGVybkVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1Bh
dHRlcm5FbGVtZW50LmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2Zy9TVkdQYXR0
ZXJuRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2Myw3ICsyNjMsNyBAQCBSZW5kZXJP
YmplY3QqIFNWR1BhdHRlcm5FbGVtZW50OjpjcmVhdGVSCiAgICAgcmV0dXJuIHBhdHRlcm5Db250
YWluZXI7CiB9CiAKLVNWR1Jlc291cmNlKiBTVkdQYXR0ZXJuRWxlbWVudDo6Y2FudmFzUmVzb3Vy
Y2UoKQorU1ZHUmVzb3VyY2UqIFNWR1BhdHRlcm5FbGVtZW50OjpjYW52YXNSZXNvdXJjZShjb25z
dCBSZW5kZXJPYmplY3QqKQogewogICAgIGlmICghbV9yZXNvdXJjZSkKICAgICAgICAgbV9yZXNv
dXJjZSA9IFNWR1BhaW50U2VydmVyUGF0dGVybjo6Y3JlYXRlKHRoaXMpOwpJbmRleDogV2ViQ29y
ZS9zdmcvU1ZHUGF0dGVybkVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdQ
YXR0ZXJuRWxlbWVudC5oCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL1NWR1BhdHRl
cm5FbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTIyLDYgKzIyLDcgQEAKICNkZWZpbmUgU1ZH
UGF0dGVybkVsZW1lbnRfaAogCiAjaWYgRU5BQkxFKFNWRykKKyNpbmNsdWRlICJSZW5kZXJPYmpl
Y3QuaCIKICNpbmNsdWRlICJTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkLmgiCiAjaW5jbHVk
ZSAiU1ZHRml0VG9WaWV3Qm94LmgiCiAjaW5jbHVkZSAiU1ZHTGFuZ1NwYWNlLmgiCkBAIC01NCw3
ICs1NSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2b2lkIGNoaWxk
cmVuQ2hhbmdlZChib29sIGNoYW5nZWRCeVBhcnNlciA9IGZhbHNlLCBOb2RlKiBiZWZvcmVDaGFu
Z2UgPSAwLCBOb2RlKiBhZnRlckNoYW5nZSA9IDAsIGludCBjaGlsZENvdW50RGVsdGEgPSAwKTsK
IAogICAgICAgICB2aXJ0dWFsIFJlbmRlck9iamVjdCogY3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJl
bmEqLCBSZW5kZXJTdHlsZSopOwotICAgICAgICB2aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52YXNS
ZXNvdXJjZSgpOworICAgICAgICB2aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52YXNSZXNvdXJjZShj
b25zdCBSZW5kZXJPYmplY3QqKTsKIAogICAgIHByaXZhdGU6CiAgICAgICAgIEFOSU1BVEVEX1BS
T1BFUlRZX0RFQ0xBUkFUSU9OUyhTVkdQYXR0ZXJuRWxlbWVudCwgU1ZHTmFtZXM6OnBhdHRlcm5U
YWdTdHJpbmcsIFNWR05hbWVzOjp4QXR0clN0cmluZywgU1ZHTGVuZ3RoLCBYLCB4KQpJbmRleDog
V2ViQ29yZS9zdmcvU1ZHU3R5bGVkRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9z
dmcvU1ZHU3R5bGVkRWxlbWVudC5jcHAJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9zdmcv
U1ZHU3R5bGVkRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIxNSw3ICsyMTUsNyBAQCB2
b2lkIFNWR1N0eWxlZEVsZW1lbnQ6OmludmFsaWRhdGVSZXNvdXJjCiAKICAgICAgICAgU1ZHRWxl
bWVudCogZWxlbWVudCA9IHN0YXRpY19jYXN0PFNWR0VsZW1lbnQqPihub2RlKTsKICAgICAgICAg
aWYgKFNWR1N0eWxlZEVsZW1lbnQqIHN0eWxlZEVsZW1lbnQgPSBzdGF0aWNfY2FzdDxTVkdTdHls
ZWRFbGVtZW50Kj4oZWxlbWVudC0+aXNTdHlsZWQoKSA/IGVsZW1lbnQgOiAwKSkgewotICAgICAg
ICAgICAgaWYgKFNWR1Jlc291cmNlKiByZXNvdXJjZSA9IHN0eWxlZEVsZW1lbnQtPmNhbnZhc1Jl
c291cmNlKCkpCisgICAgICAgICAgICBpZiAoU1ZHUmVzb3VyY2UqIHJlc291cmNlID0gc3R5bGVk
RWxlbWVudC0+Y2FudmFzUmVzb3VyY2Uobm9kZS0+cmVuZGVyZXIoKSkpCiAgICAgICAgICAgICAg
ICAgcmVzb3VyY2UtPmludmFsaWRhdGUoKTsKICAgICAgICAgfQogCkluZGV4OiBXZWJDb3JlL3N2
Zy9TVkdTdHlsZWRFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHU3R5bGVk
RWxlbWVudC5oCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL1NWR1N0eWxlZEVsZW1l
bnQuaAkod29ya2luZyBjb3B5KQpAQCAtNDYsNyArNDYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAgICAgICAgIGJvb2wgaXNLbm93bkF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJik7CiAK
ICAgICAgICAgdmlydHVhbCBib29sIHJlbmRlcmVySXNOZWVkZWQoUmVuZGVyU3R5bGUqKTsKLSAg
ICAgICAgdmlydHVhbCBTVkdSZXNvdXJjZSogY2FudmFzUmVzb3VyY2UoKSB7IHJldHVybiAwOyB9
CisgICAgICAgIHZpcnR1YWwgU1ZHUmVzb3VyY2UqIGNhbnZhc1Jlc291cmNlKGNvbnN0IFJlbmRl
ck9iamVjdCopIHsgcmV0dXJuIDA7IH0KICAgICAgICAgCiAgICAgICAgIHZpcnR1YWwgYm9vbCBt
YXBUb0VudHJ5KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBNYXBwZWRBdHRyaWJ1dGVFbnRyeSYpIGNv
bnN0OwogICAgICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VNYXBwZWRBdHRyaWJ1dGUoTWFwcGVkQXR0
cmlidXRlKik7CkluZGV4OiBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdQYWludFNlcnZlci5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUGFpbnRTZXJ2ZXIuY3BwCShy
ZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1BhaW50U2VydmVyLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNTcsOSArNTcsOSBAQCBUZXh0U3RyZWFtJiBvcGVyYXRvcjw8
KFRleHRTdHJlYW0mIHRzLCBjCiAgICAgcmV0dXJuIHBhaW50U2VydmVyLmV4dGVybmFsUmVwcmVz
ZW50YXRpb24odHMpOwogfQogCi1TVkdQYWludFNlcnZlciogZ2V0UGFpbnRTZXJ2ZXJCeUlkKERv
Y3VtZW50KiBkb2N1bWVudCwgY29uc3QgQXRvbWljU3RyaW5nJiBpZCkKK1NWR1BhaW50U2VydmVy
KiBnZXRQYWludFNlcnZlckJ5SWQoRG9jdW1lbnQqIGRvY3VtZW50LCBjb25zdCBBdG9taWNTdHJp
bmcmIGlkLCBjb25zdCBSZW5kZXJPYmplY3QqIG9iamVjdCkKIHsKLSAgICBTVkdSZXNvdXJjZSog
cmVzb3VyY2UgPSBnZXRSZXNvdXJjZUJ5SWQoZG9jdW1lbnQsIGlkKTsKKyAgICBTVkdSZXNvdXJj
ZSogcmVzb3VyY2UgPSBnZXRSZXNvdXJjZUJ5SWQoZG9jdW1lbnQsIGlkLCBvYmplY3QpOwogICAg
IGlmIChyZXNvdXJjZSAmJiByZXNvdXJjZS0+aXNQYWludFNlcnZlcigpKQogICAgICAgICByZXR1
cm4gc3RhdGljX2Nhc3Q8U1ZHUGFpbnRTZXJ2ZXIqPihyZXNvdXJjZSk7CiAKQEAgLTg1LDcgKzg1
LDcgQEAgU1ZHUGFpbnRTZXJ2ZXIqIFNWR1BhaW50U2VydmVyOjpmaWxsUGFpbgogICAgIGlmIChw
YWludFR5cGUgPT0gU1ZHUGFpbnQ6OlNWR19QQUlOVFRZUEVfVVJJIHx8CiAgICAgICAgIHBhaW50
VHlwZSA9PSBTVkdQYWludDo6U1ZHX1BBSU5UVFlQRV9VUklfUkdCQ09MT1IpIHsKICAgICAgICAg
QXRvbWljU3RyaW5nIGlkKFNWR1VSSVJlZmVyZW5jZTo6Z2V0VGFyZ2V0KGZpbGwtPnVyaSgpKSk7
Ci0gICAgICAgIGZpbGxQYWludFNlcnZlciA9IGdldFBhaW50U2VydmVyQnlJZChpdGVtLT5kb2N1
bWVudCgpLCBpZCk7CisgICAgICAgIGZpbGxQYWludFNlcnZlciA9IGdldFBhaW50U2VydmVyQnlJ
ZChpdGVtLT5kb2N1bWVudCgpLCBpZCwgaXRlbSk7CiAKICAgICAgICAgU1ZHRWxlbWVudCogc3Zn
RWxlbWVudCA9IHN0YXRpY19jYXN0PFNWR0VsZW1lbnQqPihpdGVtLT5ub2RlKCkpOwogICAgICAg
ICBBU1NFUlQoc3ZnRWxlbWVudCAmJiBzdmdFbGVtZW50LT5kb2N1bWVudCgpICYmIHN2Z0VsZW1l
bnQtPmlzU3R5bGVkKCkpOwpAQCAtMTI2LDcgKzEyNiw3IEBAIFNWR1BhaW50U2VydmVyKiBTVkdQ
YWludFNlcnZlcjo6c3Ryb2tlUGEKICAgICBpZiAocGFpbnRUeXBlID09IFNWR1BhaW50OjpTVkdf
UEFJTlRUWVBFX1VSSSB8fAogICAgICAgICBwYWludFR5cGUgPT0gU1ZHUGFpbnQ6OlNWR19QQUlO
VFRZUEVfVVJJX1JHQkNPTE9SKSB7CiAgICAgICAgIEF0b21pY1N0cmluZyBpZChTVkdVUklSZWZl
cmVuY2U6OmdldFRhcmdldChzdHJva2UtPnVyaSgpKSk7Ci0gICAgICAgIHN0cm9rZVBhaW50U2Vy
dmVyID0gZ2V0UGFpbnRTZXJ2ZXJCeUlkKGl0ZW0tPmRvY3VtZW50KCksIGlkKTsKKyAgICAgICAg
c3Ryb2tlUGFpbnRTZXJ2ZXIgPSBnZXRQYWludFNlcnZlckJ5SWQoaXRlbS0+ZG9jdW1lbnQoKSwg
aWQsIGl0ZW0pOwogCiAgICAgICAgIFNWR0VsZW1lbnQqIHN2Z0VsZW1lbnQgPSBzdGF0aWNfY2Fz
dDxTVkdFbGVtZW50Kj4oaXRlbS0+bm9kZSgpKTsKICAgICAgICAgQVNTRVJUKHN2Z0VsZW1lbnQg
JiYgc3ZnRWxlbWVudC0+ZG9jdW1lbnQoKSAmJiBzdmdFbGVtZW50LT5pc1N0eWxlZCgpKTsKSW5k
ZXg6IFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1BhaW50U2VydmVyLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUGFpbnRTZXJ2ZXIuaAkocmV2aXNpb24gNTIyMjApCisr
KyBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdQYWludFNlcnZlci5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yOSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKFNWRykKIAogI2luY2x1ZGUgIkRhc2hBcnJheS5o
IgorI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgogI2luY2x1ZGUgIlNWR1Jlc291cmNlLmgiCiAK
ICNpZiBQTEFURk9STShDRykKQEAgLTgyLDcgKzgzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
CiAgICAgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiwgY29uc3QgU1ZHUGFpbnRT
ZXJ2ZXImKTsKIAotICAgIFNWR1BhaW50U2VydmVyKiBnZXRQYWludFNlcnZlckJ5SWQoRG9jdW1l
bnQqLCBjb25zdCBBdG9taWNTdHJpbmcmKTsKKyAgICBTVkdQYWludFNlcnZlciogZ2V0UGFpbnRT
ZXJ2ZXJCeUlkKERvY3VtZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiwgY29uc3QgUmVuZGVyT2Jq
ZWN0Kik7CiAKICAgICB2b2lkIGFwcGx5U3Ryb2tlU3R5bGVUb0NvbnRleHQoR3JhcGhpY3NDb250
ZXh0KiwgUmVuZGVyU3R5bGUqLCBjb25zdCBSZW5kZXJPYmplY3QqKTsKICAgICBEYXNoQXJyYXkg
ZGFzaEFycmF5RnJvbVJlbmRlcmluZ1N0eWxlKGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSwgUmVu
ZGVyU3R5bGUqIHJvb3RTdHlsZSk7CkluZGV4OiBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNv
dXJjZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2Uu
Y3BwCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNl
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTYwLDcgKzE2MCw3IEBAIFRleHRTdHJlYW0mIFNWR1Jl
c291cmNlOjpleHRlcm5hbFJlcHJlc2UKICAgICByZXR1cm4gdHM7CiB9CiAKLVNWR1Jlc291cmNl
KiBnZXRSZXNvdXJjZUJ5SWQoRG9jdW1lbnQqIGRvY3VtZW50LCBjb25zdCBBdG9taWNTdHJpbmcm
IGlkKQorU1ZHUmVzb3VyY2UqIGdldFJlc291cmNlQnlJZChEb2N1bWVudCogZG9jdW1lbnQsIGNv
bnN0IEF0b21pY1N0cmluZyYgaWQsIGNvbnN0IFJlbmRlck9iamVjdCogb2JqZWN0KQogewogICAg
IGlmIChpZC5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTcxLDcgKzE3MSw3IEBA
IFNWR1Jlc291cmNlKiBnZXRSZXNvdXJjZUJ5SWQoRG9jdW1lbnQqIGQKICAgICAgICAgc3ZnRWxl
bWVudCA9IHN0YXRpY19jYXN0PFNWR0VsZW1lbnQqPihlbGVtZW50KTsKIAogICAgIGlmIChzdmdF
bGVtZW50ICYmIHN2Z0VsZW1lbnQtPmlzU3R5bGVkKCkpCi0gICAgICAgIHJldHVybiBzdGF0aWNf
Y2FzdDxTVkdTdHlsZWRFbGVtZW50Kj4oc3ZnRWxlbWVudCktPmNhbnZhc1Jlc291cmNlKCk7Cisg
ICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxTVkdTdHlsZWRFbGVtZW50Kj4oc3ZnRWxlbWVudCkt
PmNhbnZhc1Jlc291cmNlKG9iamVjdCk7CiAKICAgICByZXR1cm4gMDsKIH0KSW5kZXg6IFdlYkNv
cmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcv
Z3JhcGhpY3MvU1ZHUmVzb3VyY2UuaAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2Zy9n
cmFwaGljcy9TVkdSZXNvdXJjZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw2ICsyOCw3IEBACiAK
ICNpZiBFTkFCTEUoU1ZHKQogI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisjaW5jbHVkZSAi
UmVuZGVyT2JqZWN0LmgiCiAjaW5jbHVkZSAiU3RyaW5nSGFzaC5oIgogCiAjaW5jbHVkZSA8d3Rm
L0hhc2hNYXAuaD4KQEAgLTkxLDcgKzkyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAg
ICBIYXNoU2V0PFNWR1N0eWxlZEVsZW1lbnQqPiBtX2NsaWVudHM7CiAgICAgfTsKIAotICAgIFNW
R1Jlc291cmNlKiBnZXRSZXNvdXJjZUJ5SWQoRG9jdW1lbnQqLCBjb25zdCBBdG9taWNTdHJpbmcm
KTsKKyAgICBTVkdSZXNvdXJjZSogZ2V0UmVzb3VyY2VCeUlkKERvY3VtZW50KiwgY29uc3QgQXRv
bWljU3RyaW5nJiwgY29uc3QgUmVuZGVyT2JqZWN0Kik7CiAgICAgCiAgICAgVGV4dFN0cmVhbSYg
b3BlcmF0b3I8PChUZXh0U3RyZWFtJiwgY29uc3QgU1ZHUmVzb3VyY2UmKTsKIApJbmRleDogV2Vi
Q29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VDbGlwcGVyLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZUNsaXBwZXIuY3BwCShyZXZpc2lvbiA1MjIy
MCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlQ2xpcHBlci5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTEyNSw5ICsxMjUsOSBAQCBUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFRleHRT
dHJlYW0mIHRzLCBjCiAgICAgcmV0dXJuIHRzOwogfQogCi1TVkdSZXNvdXJjZUNsaXBwZXIqIGdl
dENsaXBwZXJCeUlkKERvY3VtZW50KiBkb2N1bWVudCwgY29uc3QgQXRvbWljU3RyaW5nJiBpZCkK
K1NWR1Jlc291cmNlQ2xpcHBlciogZ2V0Q2xpcHBlckJ5SWQoRG9jdW1lbnQqIGRvY3VtZW50LCBj
b25zdCBBdG9taWNTdHJpbmcmIGlkLCBjb25zdCBSZW5kZXJPYmplY3QqIG9iamVjdCkKIHsKLSAg
ICBTVkdSZXNvdXJjZSogcmVzb3VyY2UgPSBnZXRSZXNvdXJjZUJ5SWQoZG9jdW1lbnQsIGlkKTsK
KyAgICBTVkdSZXNvdXJjZSogcmVzb3VyY2UgPSBnZXRSZXNvdXJjZUJ5SWQoZG9jdW1lbnQsIGlk
LCBvYmplY3QpOwogICAgIGlmIChyZXNvdXJjZSAmJiByZXNvdXJjZS0+aXNDbGlwcGVyKCkpCiAg
ICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxTVkdSZXNvdXJjZUNsaXBwZXIqPihyZXNvdXJjZSk7
CiAKSW5kZXg6IFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlQ2xpcHBlci5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlQ2xpcHBlci5oCShyZXZp
c2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlQ2xpcHBlci5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yOSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKFNWRykKIAogI2lu
Y2x1ZGUgIlNWR1Jlc291cmNlLmgiCisjaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCiAjaW5jbHVk
ZSAiUGF0aC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC04NCw3ICs4NSw3IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKICAgICBUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFRleHRTdHJlYW0mLCBX
aW5kUnVsZSk7CiAgICAgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiwgY29uc3Qg
Q2xpcERhdGEmKTsKIAotICAgIFNWR1Jlc291cmNlQ2xpcHBlciogZ2V0Q2xpcHBlckJ5SWQoRG9j
dW1lbnQqLCBjb25zdCBBdG9taWNTdHJpbmcmKTsKKyAgICBTVkdSZXNvdXJjZUNsaXBwZXIqIGdl
dENsaXBwZXJCeUlkKERvY3VtZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiwgY29uc3QgUmVuZGVy
T2JqZWN0Kik7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIApJbmRleDogV2ViQ29yZS9zdmcv
Z3JhcGhpY3MvU1ZHUmVzb3VyY2VGaWx0ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3Zn
L2dyYXBoaWNzL1NWR1Jlc291cmNlRmlsdGVyLmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJD
b3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZUZpbHRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTIwNCw5ICsyMDQsOSBAQCBUZXh0U3RyZWFtJiBTVkdSZXNvdXJjZUZpbHRlcjo6ZXh0ZXJuYWxS
CiAgICAgcmV0dXJuIHRzOwogfQogCi1TVkdSZXNvdXJjZUZpbHRlciogZ2V0RmlsdGVyQnlJZChE
b2N1bWVudCogZG9jdW1lbnQsIGNvbnN0IEF0b21pY1N0cmluZyYgaWQpCitTVkdSZXNvdXJjZUZp
bHRlciogZ2V0RmlsdGVyQnlJZChEb2N1bWVudCogZG9jdW1lbnQsIGNvbnN0IEF0b21pY1N0cmlu
ZyYgaWQsIGNvbnN0IFJlbmRlck9iamVjdCogb2JqZWN0KQogewotICAgIFNWR1Jlc291cmNlKiBy
ZXNvdXJjZSA9IGdldFJlc291cmNlQnlJZChkb2N1bWVudCwgaWQpOworICAgIFNWR1Jlc291cmNl
KiByZXNvdXJjZSA9IGdldFJlc291cmNlQnlJZChkb2N1bWVudCwgaWQsIG9iamVjdCk7CiAgICAg
aWYgKHJlc291cmNlICYmIHJlc291cmNlLT5pc0ZpbHRlcigpKQogICAgICAgICByZXR1cm4gc3Rh
dGljX2Nhc3Q8U1ZHUmVzb3VyY2VGaWx0ZXIqPihyZXNvdXJjZSk7CiAKSW5kZXg6IFdlYkNvcmUv
c3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlRmlsdGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9z
dmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VGaWx0ZXIuaAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJD
b3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZUZpbHRlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0x
MDMsNyArMTAzLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8RmlsdGVyPiBtX2ZpbHRlcjsKIH07
CiAKLVNWR1Jlc291cmNlRmlsdGVyKiBnZXRGaWx0ZXJCeUlkKERvY3VtZW50KiwgY29uc3QgQXRv
bWljU3RyaW5nJik7CitTVkdSZXNvdXJjZUZpbHRlciogZ2V0RmlsdGVyQnlJZChEb2N1bWVudCos
IGNvbnN0IEF0b21pY1N0cmluZyYsIGNvbnN0IFJlbmRlck9iamVjdCopOwogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCiAKSW5kZXg6IFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlTWFy
a2VyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZU1h
cmtlci5jcHAJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVz
b3VyY2VNYXJrZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjYsOSArMTI2LDkgQEAgVGV4dFN0
cmVhbSYgU1ZHUmVzb3VyY2VNYXJrZXI6OmV4dGVybmFsUgogICAgIHJldHVybiB0czsKIH0KIAot
U1ZHUmVzb3VyY2VNYXJrZXIqIGdldE1hcmtlckJ5SWQoRG9jdW1lbnQqIGRvY3VtZW50LCBjb25z
dCBBdG9taWNTdHJpbmcmIGlkKQorU1ZHUmVzb3VyY2VNYXJrZXIqIGdldE1hcmtlckJ5SWQoRG9j
dW1lbnQqIGRvY3VtZW50LCBjb25zdCBBdG9taWNTdHJpbmcmIGlkLCBjb25zdCBSZW5kZXJPYmpl
Y3QqIG9iamVjdCkKIHsKLSAgICBTVkdSZXNvdXJjZSogcmVzb3VyY2UgPSBnZXRSZXNvdXJjZUJ5
SWQoZG9jdW1lbnQsIGlkKTsKKyAgICBTVkdSZXNvdXJjZSogcmVzb3VyY2UgPSBnZXRSZXNvdXJj
ZUJ5SWQoZG9jdW1lbnQsIGlkLCBvYmplY3QpOwogICAgIGlmIChyZXNvdXJjZSAmJiByZXNvdXJj
ZS0+aXNNYXJrZXIoKSkKICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFNWR1Jlc291cmNlTWFy
a2VyKj4ocmVzb3VyY2UpOwogCkluZGV4OiBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJj
ZU1hcmtlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNl
TWFya2VyLmgJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVz
b3VyY2VNYXJrZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjksNiArMjksNyBAQAogI2lmIEVOQUJM
RShTVkcpCiAKICNpbmNsdWRlICJGbG9hdFJlY3QuaCIKKyNpbmNsdWRlICJSZW5kZXJPYmplY3Qu
aCIKICNpbmNsdWRlICJTVkdSZXNvdXJjZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC02
OSw3ICs3MCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgYm9vbCBtX3VzZVN0cm9r
ZVdpZHRoOwogICAgIH07CiAKLSAgICBTVkdSZXNvdXJjZU1hcmtlciogZ2V0TWFya2VyQnlJZChE
b2N1bWVudCosIGNvbnN0IEF0b21pY1N0cmluZyYpOworICAgIFNWR1Jlc291cmNlTWFya2VyKiBn
ZXRNYXJrZXJCeUlkKERvY3VtZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiwgY29uc3QgUmVuZGVy
T2JqZWN0Kik7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIApJbmRleDogV2ViQ29yZS9zdmcv
Z3JhcGhpY3MvU1ZHUmVzb3VyY2VNYXNrZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3Zn
L2dyYXBoaWNzL1NWR1Jlc291cmNlTWFza2VyLmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJD
b3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZU1hc2tlci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTEwNCw5ICsxMDQsOSBAQCBUZXh0U3RyZWFtJiBTVkdSZXNvdXJjZU1hc2tlcjo6ZXh0ZXJuYWxS
CiAgICAgcmV0dXJuIHRzOwogfQogCi1TVkdSZXNvdXJjZU1hc2tlciogZ2V0TWFza2VyQnlJZChE
b2N1bWVudCogZG9jdW1lbnQsIGNvbnN0IEF0b21pY1N0cmluZyYgaWQpCitTVkdSZXNvdXJjZU1h
c2tlciogZ2V0TWFza2VyQnlJZChEb2N1bWVudCogZG9jdW1lbnQsIGNvbnN0IEF0b21pY1N0cmlu
ZyYgaWQsIGNvbnN0IFJlbmRlck9iamVjdCogb2JqZWN0KQogewotICAgIFNWR1Jlc291cmNlKiBy
ZXNvdXJjZSA9IGdldFJlc291cmNlQnlJZChkb2N1bWVudCwgaWQpOworICAgIFNWR1Jlc291cmNl
KiByZXNvdXJjZSA9IGdldFJlc291cmNlQnlJZChkb2N1bWVudCwgaWQsIG9iamVjdCk7CiAgICAg
aWYgKHJlc291cmNlICYmIHJlc291cmNlLT5pc01hc2tlcigpKQogICAgICAgICByZXR1cm4gc3Rh
dGljX2Nhc3Q8U1ZHUmVzb3VyY2VNYXNrZXIqPihyZXNvdXJjZSk7CiAKSW5kZXg6IFdlYkNvcmUv
c3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlTWFza2VyLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9z
dmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VNYXNrZXIuaAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJD
b3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZU1hc2tlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0y
OSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKFNWRykKIAogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4
dC5oIgorI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgogI2luY2x1ZGUgIlNWR1Jlc291cmNlLmgi
CiAKICNpbmNsdWRlIDxtZW1vcnk+CkBAIC02NCw3ICs2NSw3IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKICAgICAgICAgRmxvYXRSZWN0IG1fbWFza1JlY3Q7CiAgICAgfTsKIAotICAgIFNWR1Jlc291
cmNlTWFza2VyKiBnZXRNYXNrZXJCeUlkKERvY3VtZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJik7
CisgICAgU1ZHUmVzb3VyY2VNYXNrZXIqIGdldE1hc2tlckJ5SWQoRG9jdW1lbnQqLCBjb25zdCBB
dG9taWNTdHJpbmcmLCBjb25zdCBSZW5kZXJPYmplY3QqIG9iamVjdCk7CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKIApJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNTI1NzYpCisrKyBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOSBAQAorMjAwOS0xMi0yNyAgRGly
ayBTY2h1bHplICA8a3JpdEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFNWRyBNYXNrIHJlc3VsdCB3cm9uZywgaWYgdHdvIGRpZmZl
cmVudCBvYmplY3RzIGNhbGwgdGhlIHNhbWUgbWFzayBpZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzI3ODcKKworICAgICAgICBUd28gcmVjdHMgd2l0
aCBkaWZmZXJlbnQgc2l6ZXMgYW5kIHBvc2l0aW9ucyBjYWxsIHRoZSBzYW1lIG1hc2sgaWQuIEJv
dGgKKyAgICAgICAgcmVjdHMgc2hvdWxkIGJlIG1hc2tlZCB0byB0d28gY2lyY2xlcywgZGVwZW5k
ZW50IG9uIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZQorICAgICAgICByZWN0cy4KKworICAgICAgICAq
IHBsYXRmb3JtL21hYy9zdmcvY3VzdG9tL21hc2stb24tbXVsdGlwbGUtb2JqZWN0cy1leHBlY3Rl
ZC5jaGVja3N1bTogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vbWFz
ay1vbi1tdWx0aXBsZS1vYmplY3RzLWV4cGVjdGVkLnBuZzogQWRkZWQuCisgICAgICAgICogcGxh
dGZvcm0vbWFjL3N2Zy9jdXN0b20vbWFzay1vbi1tdWx0aXBsZS1vYmplY3RzLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogc3ZnL2N1c3RvbS9tYXNrLW9uLW11bHRpcGxlLW9iamVjdHMu
c3ZnOiBBZGRlZC4KKwogMjAwOS0xMi0yNyAgUm9iZXJ0IEhvZ2FuICA8cm9iZXJ0QHJvYmVydGhv
Z2FuLm5ldD4KIAogICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBTaW1vbiBIYXVzbWFubi4KSW5k
ZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL21hc2stb24tbXVsdGlwbGUt
b2JqZWN0cy1leHBlY3RlZC5jaGVja3N1bQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMvc3ZnL2N1c3RvbS9tYXNrLW9uLW11bHRpcGxlLW9iamVjdHMtZXhwZWN0ZWQuY2hl
Y2tzdW0JKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3Rv
bS9tYXNrLW9uLW11bHRpcGxlLW9iamVjdHMtZXhwZWN0ZWQuY2hlY2tzdW0JKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEgQEAKKzBlNTRmNmY1Njc2YmM3MmNlNGIyYmFiNDRhNDc3MDQ2ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy9j
dXN0b20vbWFzay1vbi1tdWx0aXBsZS1vYmplY3RzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9tYXNrLW9uLW11bHRpcGxlLW9i
amVjdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL3N2Zy9jdXN0b20vbWFzay1vbi1tdWx0aXBsZS1vYmplY3RzLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSwxMCBAQAorS0NhbnZhc1Jlc291cmNlIHtpZD0ibWFzayIgW3R5
cGU9TUFTS0VSXX0KK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJWaWV3IGF0
ICgwLDApIHNpemUgODAweDYwMAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRl
clNWR1Jvb3Qge3N2Z30gYXQgKDIwLDIwKSBzaXplIDIyMHgxMDAKKyAgICBSZW5kZXJTVkdIaWRk
ZW5Db250YWluZXIge2RlZnN9IGF0ICgwLDApIHNpemUgMHgwCisgICAgICBSZW5kZXJTVkdDb250
YWluZXIge21hc2t9IGF0ICgwLDApIHNpemUgMXgxCisgICAgICAgIFJlbmRlclBhdGgge2NpcmNs
ZX0gYXQgKDAsMCkgc2l6ZSAxeDEgW2ZpbGw9e1t0eXBlPVNPTElEXSBbY29sb3I9I0ZGRkZGRl19
XSBbZGF0YT0iTTEuMDAsMC41MCBMMS4wMCwwLjUzIEwxLjAwLDAuNTYgTDAuOTksMC41OSBMMC45
OCwwLjYyIEwwLjk4LDAuNjUgTDAuOTYsMC42OCBMMC45NSwwLjcxIEwwLjk0LDAuNzQgTDAuOTIs
MC43NyBMMC45MCwwLjc5IEwwLjg5LDAuODIgTDAuODYsMC44NCBMMC44NCwwLjg2IEwwLjgyLDAu
ODkgTDAuNzksMC45MCBMMC43NywwLjkyIEwwLjc0LDAuOTQgTDAuNzEsMC45NSBMMC42OCwwLjk2
IEwwLjY1LDAuOTggTDAuNjIsMC45OCBMMC41OSwwLjk5IEwwLjU2LDEuMDAgTDAuNTMsMS4wMCBM
MC41MCwxLjAwIEwwLjQ3LDEuMDAgTDAuNDQsMS4wMCBMMC40MSwwLjk5IEwwLjM4LDAuOTggTDAu
MzUsMC45OCBMMC4zMiwwLjk2IEwwLjI5LDAuOTUgTDAuMjYsMC45NCBMMC4yMywwLjkyIEwwLjIx
LDAuOTAgTDAuMTgsMC44OSBMMC4xNiwwLjg2IEwwLjE0LDAuODQgTDAuMTEsMC44MiBMMC4xMCww
Ljc5IEwwLjA4LDAuNzcgTDAuMDYsMC43NCBMMC4wNSwwLjcxIEwwLjA0LDAuNjggTDAuMDIsMC42
NSBMMC4wMiwwLjYyIEwwLjAxLDAuNTkgTDAuMDAsMC41NiBMMC4wMCwwLjUzIEwwLjAwLDAuNTAg
TDAuMDAsMC40NyBMMC4wMCwwLjQ0IEwwLjAxLDAuNDEgTDAuMDIsMC4zOCBMMC4wMiwwLjM1IEww
LjA0LDAuMzIgTDAuMDUsMC4yOSBMMC4wNiwwLjI2IEwwLjA4LDAuMjMgTDAuMTAsMC4yMSBMMC4x
MSwwLjE4IEwwLjE0LDAuMTYgTDAuMTYsMC4xNCBMMC4xOCwwLjExIEwwLjIxLDAuMTAgTDAuMjMs
MC4wOCBMMC4yNiwwLjA2IEwwLjI5LDAuMDUgTDAuMzIsMC4wNCBMMC4zNSwwLjAyIEwwLjM4LDAu
MDIgTDAuNDEsMC4wMSBMMC40NCwwLjAwIEwwLjQ3LDAuMDAgTDAuNTAsMC4wMCBMMC41MywwLjAw
IEwwLjU2LDAuMDAgTDAuNTksMC4wMSBMMC42MiwwLjAyIEwwLjY1LDAuMDIgTDAuNjgsMC4wNCBM
MC43MSwwLjA1IEwwLjc0LDAuMDYgTDAuNzcsMC4wOCBMMC43OSwwLjEwIEwwLjgyLDAuMTEgTDAu
ODQsMC4xNCBMMC44NiwwLjE2IEwwLjg5LDAuMTggTDAuOTAsMC4yMSBMMC45MiwwLjIzIEwwLjk0
LDAuMjYgTDAuOTUsMC4yOSBMMC45NiwwLjMyIEwwLjk4LDAuMzUgTDAuOTgsMC4zOCBMMC45OSww
LjQxIEwxLjAwLDAuNDQgTDEuMDAsMC40NyBaIl0KKyAgICBSZW5kZXJQYXRoIHtyZWN0fSBhdCAo
MjAsMjApIHNpemUgMTAweDEwMCBbZmlsbD17W3R5cGU9U09MSURdIFtjb2xvcj0jMDA4MDAwXX1d
IFtkYXRhPSJNMjAuMDAsMjAuMDAgTDEyMC4wMCwyMC4wMCBMMTIwLjAwLDEyMC4wMCBMMjAuMDAs
MTIwLjAwIFoiXQorICAgIFJlbmRlclBhdGgge3JlY3R9IGF0ICgxNDAsNTApIHNpemUgMTAweDQw
IFtmaWxsPXtbdHlwZT1TT0xJRF0gW2NvbG9yPSMwMDgwMDBdfV0gW2RhdGE9Ik0xNDAuMDAsNTAu
MDAgTDI0MC4wMCw1MC4wMCBMMjQwLjAwLDkwLjAwIEwxNDAuMDAsOTAuMDAgWiJdCkluZGV4OiBM
YXlvdXRUZXN0cy9zdmcvY3VzdG9tL21hc2stb24tbXVsdGlwbGUtb2JqZWN0cy5zdmcKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9tYXNrLW9uLW11bHRpcGxlLW9iamVjdHMu
c3ZnCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9tYXNrLW9uLW11bHRp
cGxlLW9iamVjdHMuc3ZnCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEwIEBACis8c3ZnIHhtbG5z
PSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMu
b3JnLzE5OTkveGxpbmsiPgorPGRlZnM+Cis8IS0tIFlvdSBzaG91bGQgc2VlIHR3byBjaXJjbGVz
IHdpdGggZGlmZmVyZW50IHNpemVzIC0tPgorPG1hc2sgaWQ9Im1hc2siIHg9IjAlIiB5PSIwJSIg
d2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgbWFza0NvbnRlbnRVbml0cz0ib2JqZWN0Qm91bmRp
bmdCb3giPgorICAgIDxjaXJjbGUgY3g9Ii41IiBjeT0iLjUiIHI9Ii41IiBmaWxsPSJ3aGl0ZSIv
PgorPC9tYXNrPgorPC9kZWZzPgorPHJlY3QgeD0iMjAiIHk9IjIwIiB3aWR0aD0iMTAwIiBoZWln
aHQ9IjEwMCIgc3R5bGU9ImZpbGw6Z3JlZW47bWFzazp1cmwoI21hc2spOyIvPgorPHJlY3QgeD0i
MTQwIiB5PSI1MCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI0MCIgc3R5bGU9ImZpbGw6Z3JlZW47bWFz
azp1cmwoI21hc2spOyIvPgorPC9zdmc+CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
c3ZnL2N1c3RvbS9tYXNrLW9uLW11bHRpcGxlLW9iamVjdHMtZXhwZWN0ZWQucG5nCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KQ2Fubm90IGRpc3BsYXk6IGZpbGUgbWFya2VkIGFzIGEgYmluYXJ5IHR5cGUuCnN2bjptaW1l
LXR5cGUgPSBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0KClByb3BlcnR5IGNoYW5nZXMgb246IExh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL21hc2stb24tbXVsdGlwbGUtb2JqZWN0
cy1leHBlY3RlZC5wbmcKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOm1pbWUtdHlwZQogICArIGFwcGxp
Y2F0aW9uL29jdGV0LXN0cmVhbQoKCmlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUF5QUFBQUpZQ0FZ
QUFBQ2Fkb0p3QUFBRE8ybERRMUJKUTBNZ1VISnZabWxzWlFBQWVBR0YKbEV0bzFGQVVoditNS1lL
MGdxaTFGcFRnUW91MEpUN1FpbERiYWJYV2tYRVkrOUFpeURSelp4cE5NekdaR1IrSVNFSGMrVnFL
R3grSQppeXJpUXJwUWNLVUxrVUxyYTFFRWNhVWlpRUkzVXNiL0p1MU1LbFl2SlBseXpuL1A2NFlB
VlE5VGptTkZOR0RZenJ2SnJxaDI2UENBCnRuZ0NWYWhCTmJoU2h1ZTBKeEw3ZmFaV1B1ZXY2YmRR
cEdXeVNjYUs5UjJZK0xSdDlmMUxqMkx2NjU3MitwNzUrbmx2TlM0VEFvcEcKNjRwc3dGc2xEd2E4
Vi9MSnZKT241b2hrWXlpVkpqdmtScmNuMlVHK1FWNmFEZkZnaU5QQ000Q3FObXB5aHVNeVRtUUZ1
YVZvWkdYTQpVYkp1cDAyYlBDWHRhYzhZcG9iOVJuN0lXZERHbFk4QnJXdUFSUzhydGdFUEdMMExy
RnBmc1RYVUFTdjdnYkV0RmR2UHBEOGZwWGJjCnkyelo3SWRUcXFPczZVT3A5SE05c1BnYU1ITzFW
UHAxcTFTYXVjMGNyT09aWlJUY29xOWxZY29ySUtnMzJNMzR5VGxhaUlPZWZGVUwKY0pOejdGOEN4
QzRBMXo4Q0d4NEF5eDhEaVJxZ1p3Y2k1OWx1Y09YRktjNEY2TWc1cDEwek81VFhOdXY2ZHEyZFJ5
dTBidHRvYnRSUwpscVg1TGs5emhTZmNva2czWTlncWNNNytXc1o3dGJCN0QvTEovaUxuaExkN2xw
V1JkS3FUczBRejIvcVNGcDI3eVkza2V4bHpUemU1CmdkZFV4dDNURzdDeTBjeDM5d1FjNmJPdE9N
OUZhaUoxOW1EOEFKbnhGZFhKUitVOEpJOTR4WU15cG04L2x0cVhJTmZUbmp5ZWkwbE4KTGZlMm5S
bnE0UmxKVnF3elF4M3hXWDd0RnBJeTd6cHE3amlXLzgyenRzaHpISVlGQVJNMjd6WTBKTkdGS0py
Z3dFVU9HWHBNS2t4YQpwVi9RYXNMRDhiOHFMU1RLdXl3cXV2Q1plejc3ZTA2Z3dOMHlmaCtpY1l3
MGxpTm8ranY5bS81R3Y2bmYwYjllcVM4MFZEd2o3bEhUCkdMLzhuWEZsWmxtTmpCdlVLT1BMbW9M
NEJxdHRwOWRDbHRaaFhrRlBYbG5mRks0dVkxK3BMM3MwbVVOY2pFK0h1aFNoVEUwWVpEeloKdGV5
K1NMYjRKdng4YzlrV21oNjFMODQrcWF2a2VxT09IWm1zZm5FMlhBMXIvN09yWU5LeXEvRGtqWkF1
UEd1aHJsVTNxZDFxaTdvRAptcnBMYlZOYjFVNis3VlQzbDNmMGNsWW1Uckp1bDlXbjJJT04wL1JX
VHJveVd3VC9GbjR4L0M5MUNWdTRwcUhKZjJqQ3pXVk1TL2lPCjRQWWZkMGo1TC93TkFZVVZEWHhM
T3pzQUFDQUFTVVJCVkhnQjdkMS9yTlgxZmZqeDE0VUxvbEF1cUJkSTVZZUtJQllRbGlnVHd5SkwK
YlVVWFI3cWx6V3dsUnI3NWZqUG1tdEQyKzBlM3BmNVJzOWcvMW82a3N5elo5NHN6YUYxc3RvWTJG
V3hacXB0UlEwMEtBb3FnVm43WQpBVmVGZXd0NmhRdjM2L3NzOU1zNnNRam52TTc1blBzNDVnYTlQ
ODdyODNsOFhrMTQ5dHh6VHNmZys3ZHdJMENBQUFFQ0JBZ1FJRUNBClFJTEFzSVFaUmhBZ1FJQUFB
UUlFQ0JBZ1FLQW1JRUFzQWdFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJ
Z2QKSUVDQUFBRUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFB
RUNCQWlrQ1FpUU5HcURDQkFnUUlBQQpBUUlFQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFHU1Jt
MFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTCnFBMGlRSUFBQVFJRUNC
QWdRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFF
Q0JBZ1EKSUVDQVFKcUFBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRU0JN
UUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEcwpBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFQ0JB
Z1FJQUFBUUlFT29jYVFjL1JudGplc3oxMnZMa2pYdXA1S2ZiMTdZdjlSL2JYClB2cmU2NHYrZ2Y3
YVIzRVoxVG1xOWpIMmdyRXhhY3lrMnNlVXJpa3g2OUpadFkvWjNiT2plM1QzVUNOMHZnUUlFQ0JB
Z0FBQkFnVE8KV2FCajhQM2JPZjkwQlg1d1QrK2VXTDlyZlR5OTUrbDRkdCt6OGVxaFYrdDYxTlBI
VDQrRmt4ZkdvcW1MNHRZWnQ4YlVycWwxdlg5MwpSb0FBQVFJRUNCQWdRS0NkQk5veVFMWWQzQmFQ
dlBCSS9IRG5EMnVQZG1SZXNQS295TzB6YjQ4dlhQdUZtRE5oVHVab3N3Z1FJRUNBCkFBRUNCQWkw
dkVEYkJFaHZmMitzK2ZtYWVHakxRN0hsd0phV2dKODNjVjdjTmUrdVdQNDd5Nk5yVkZkTEhKT0RJ
RUNBQUFFQ0JBZ1EKSU5CTWdjb0h5SzYzZHNXcTUxYlZ3dVBvOGFQTnREemo3TkVqUnRkQ1pPVU5L
MlBHSlRQTytIMitRSUFBQVFJRUNCQWdRS0RkQlNvYgpJSzhkZWkzdWUrcStXUHZDMmpneGVLSVMx
Mmw0eC9CWWR1MnkrTnBOWDRzcngxOVppV04ya0FRSUVDQkFnQUFCQWdUcUtWQzVBRG5jCmZ6anUv
ZW05c2ZwbnEyTmdjS0NlRm1uMzFkblJHU3V1WHhGZi8vMnZ4N2hSNDlMbUdrU0FBQUVDQkFnUUlF
Q2cyUUtWQ1pEeVlsMFAKYm40d3ZycnhxOUh6VGsrejNlb3l2L3VpN3ZqR3pkK0l1K2ZmSFIwZEhY
VzVUM2RDZ0FBQkFnUUlFQ0JBb0pVRktoRWdlM3YzeHZKMQp5MlBqTHphMnN1VTVIOXZOVjl3Y2E1
YXVpZkllSTI0RUNCQWdRSUFBQVFJRTJsbWc1UU9rdkp6dVBZL2ZFNzN2OWJiemRZaXVDN3JpCmdk
c2VxTDE4YjF1ZnFKTWpRSUFBQVFJRUNCQVkwZ0l0R3lESFRoeUxsUnRXeHVyblZ3K3BDN1RpdWhX
eGFzbXFHRGw4NUpBNmJ5ZEwKZ0FBQkFnUUlFQ0F3TkFSYU1rRDJIOWtmU3g5ZEdwdCt1V2xvWElY
Zk9Nc0ZIMThRNis1WUY1UEdUUHFOci9oUEFnUUlFQ0JBZ0FBQgpBdFVXYUxrQTJmSG1qcmoxNFZ2
ajlkN1hxeTE3bmtkL2VkZmxzZjdPOVRIcjBsbm5lVTkrbkFBQkFnUUlFQ0JBZ0VEckNMUlVnRHk3
Cjk5bjRnKy8rUVJ6cVA5UTZRazA4a3ZHanhzZVBQditqV0RobFlST1B3bWdDQkFnUUlFQ0FBQUVD
OVJOb21RQjVadTh6c2VUaEpmR3IKWTcrcTM5bTF3VDE5Yk9USFlzT2RHK0xHS1RlMndkazRCUUlF
Q0JBZ1FJQUFnYUV1MEJJQlVoNzV1T1hoVzhUSEdiYXhSTWdUZHo3aAprWkF6K1BnMEFRSUVDQkFn
UUlCQWRRU2FIaURsT1I4My90OGIvZHJWYjltWjh1dFl6L3lQWnp3bjVMYzQrVElCQWdRSUVDQkFn
RUJyCkN3eHI1dUdWVjdzcXYzYmxPUisvL1NvVW8vTGsvR0xtUm9BQUFRSUVDQkFnUUtDcUFrMExr
UEkrSCtXbGRuZjM3cTZxWGZweGwxY0cKSzJiRnpvMEFBUUlFQ0JBZ1FJQkFGUVdhRmlEbFRRYUg2
dnQ4bk0raUZMTmk1MGFBQUFFQ0JBZ1FJRUNnaWdKTkNaQkhYbmhreUwzRAplVDJYbzd3N2ZERjBJ
MENBQUFFQ0JBZ1FJRkExZ2ZRbm9lL3QzUnR6VjgrTjN2ZDZxMmJWVXNmYmRVRlhiRjJ4TmFaMFRX
bXA0M0l3CkJBZ1FJRUNBQUFFQ0JENU1JUFVSa01IQndWaSticm40K0xBcmNwWmZLd0ZYTEl1cEd3
RUNCQWdRSUVDQUFJR3FDS1FHeUpxZnI0bU4KdjloWUZadVdQODVpV1V6ZENCQWdRSUFBQVFJRUNG
UkZJTzFYc0E3M0g0NlozNTRaUGUvMFZNV21Fc2ZaZlZGMzdQeml6aGczYWx3bApqdGRCRWlCQWdB
QUJBZ1FJREcyQnRFZEE3djNwdmVLakFidFdncTdZdWhFZ1FJQUFBUUlFQ0JDb2drREtJeUN2SFhv
dHJ2NzIxVEV3Ck9GQUZrOG9kWTJkSFo3ejh4WmZqeXZGWFZ1N1lIVEFCQWdRSUVDQkFnTURRRWto
NUJPUytwKzRUSHczY3F4SjJ4ZGlOQUFFQ0JBZ1EKSUVDQVFLc0xOUHdSa0YxdjdZcHJIcmdtVGd5
ZWFIV0xTaC9mOEk3aDhkSTlMOFdNUzJaVStqd2NQQUVDQkFnUUlFQ0FRSHNMTlB3UgprRlhQclJJ
ZkNUdFVBcTlZdXhFZ1FJQUFBUUlFQ0JCb1pZR0dQZ0xTMjk4YmwzM3Jzamg2L0dnckc3VE5zWTBl
TVRyZStQSWIwVFdxCnEyM082VXduY3Z6RThkalh0eS8yOU82SnZYMTdZLytSL1hIZ3lJRTRlUFJn
dlAzdTIxRmVkYTE4SERsMkpONGRlRGZlT2Y1T2xKOFoKT0RudzZ5QXVqeHAxRHV1TUVjTkh4RVVq
TG9vTE95K01NU1BIMUY1UnJMeXEyTVVYWGh3VFJrK0lpV01teHFReGsyTEsyQ2t4dFd0cQpUQjQ3
dWZZelp6bzJueWRBZ0FBQkFnUUlFRGl6UU9lWnYzVCtYeW52VVNFK3p0L3hiTytoV0Jmekx5Mzgw
dG4rU010L1g5OTdmYkgxCndOYllkbkJiN1dQbld6dGoxOXU3WXZmaDNYSHkvWC9PNTFhZU96TndZ
aUQ2VC9USHI0Nzk2cXp2YWxnTWkybmpwc1dNaTJmRXpFdG0KeHB3SmMyb2ZjeWZPamJFWGpEM3Ir
L0dOQkFnUUlFQ0FBSUdoS05EUVIwRG0vLzM4MkhKZ3kxQjBiZG81ejVzNEx6Yi82ZWFtelQrZgp3
U2NIVDhhVy9Wdmk2VDFQeDNQN25vdm5mL2w4TFRZR294cnY5dDRSSGJVb3VlN2oxOFVOazIrSVJW
TVh4YnhKODJKWVI4Ti8wL0Y4CjJQMHNBUUlFQ0JBZ1FDQlZvR0VCVXY0ZjY3bXI1NmFlakdIL0ti
QjF4ZGJhL3lOZkJZOVgzbjRsTnJ5eUlYN3k2ay9peWRlZmpMNWoKZlZVNDdMTSt4ckVqeDhiaXl4
ZkhwNlovS3BaY3RTU3V1dmlxcy81WjMwaUFBQUVDQkFnUWFFZUJodjBLMWlNdlBOS09YcFU0cDJK
LwovODMzdCt5eGJ0Ni9PUjdiL2xpczI3RXVYbnp6eFpZOXpub2NXQW1xSCt6OFFlMmozTjhuTHYx
RUxKMjFORDQzKzNNeGY5TDhlb3h3Ckh3UUlFQ0JBZ0FDQlNnazA3QkdRT2QrWkU5dDd0bGNLbzEw
T2RuYjM3TmoyWjl0YTZuVEtFOFFmM1B4Z3JOMnl0dTJqNDJ6aFM0d3MKbTdjczdwNS9kKzJKN21m
N2M3NlBBQUVDQkFnUUlGQmxnWVlFU0hsbG9tbXJwbFhacGZMSHZudmw3dG9yTmpYN1JEYTlzU20r
K2N3Mwo0L3M3dmgvSFR4NXY5dUcwNVB3UncwYkVaMlo5SnI1eTQxZGl3V1VMV3ZJWUhSUUJBZ1FJ
RUNCQW9GNENEWGwyN1BwZDYrdDFmTzduCkhBV2FmUTJlZXYycFdQeVBpK04zLzgvdnhtTXZQaVkr
UHVRNmxqQXJSc1dxbVAzYjduLzdrTy8ySlFJRUNCQWdRSUJBdFFVYUVpRGwKVll6Y21pdlFyR3V3
NDgwZHNlVGhKYkg0b2NYeDFPNm5tb3RRd2VuRjdLWi92S2xtV0N6ZENCQWdRSUFBQVFMdEp0Q1FB
SGwyMzdQdAo1bFM1ODhtK0JzZE9ISXUvK3RlL2ltdFhYeHRQdlBwRTVieGE3WUNMWWJFc3BzWFdq
UUFCQWdRSUVDRFFMZ0oxZnc1SXo5R2VtUEEzCkU5ckZwOUxuY2ZCL0g0enUwZDBOUDRlWDMzdzVQ
dnU5ejhiV2cxc2JQbXNvRHBnN1lXNTg3N1BmaTZzdnZYb29ucjV6SmtDQUFBRUMKQk5wTW9PNlBn
SGpscTliWmtJeHI4Zml1eDJQQlB5d1FIdzI4N0NYc2luR3hkaU5BZ0FBQkFnUUlWRjJnN2dIeVVz
OUxWVGRwbStOdgo5TFg0cDIzL0ZFc2ZYZHAyYng3WWlndFEzaytrV0Jkek53SUVDQkFnUUlCQWxR
WHFIaUNlT05zNjY5RElhMUhldlh6WnZ5eUxnY0dCCjFqbmhOaitTWWwzTW4zakZjMnphL0ZJN1BR
SUVDQkFnME5ZQ2RRK1FmWDM3Mmhxc1NpZlhxR3V4dDNkdmZQNmZQeTgrbXJBTUpVTHUKK09jN29s
d0ROd0lFQ0JBZ1FJQkFGUVhxSGlEN2oreXZva05iSG5PanJzV2ZQLzduY2FqL1VGdWFWZUdraW4y
NUJtNEVDQkFnUUlBQQpnU29LMUQxQS91UElmMVRSb1MyUHVSRUI4ck0zZmhZLzJQbUR0dlNxMGtt
VmExQ3VoUnNCQWdRSUVDQkFvR29DZFErUXZ2ZjZxbWJRCnRzZmIrMTV2M2MvdHdjMFAxdjArM2VH
NUNiZ1c1K2JtcHdnUUlFQ0FBSUhtQ3RROVFQb0grcHQ3UnFiL1dxQVIxK0xKMTUvODlmMzcKbCtZ
S3VCYk45VGVkQUFFQ0JBZ1FPRGNCQVhKdWJwWDRxVVlFeU83RHV5dHg3a1BoSUYyTG9YQ1ZuU01C
QWdRSUVHZy9nYm9IU0VkMAp0SjlTUmMvSXRham9oWFBZQkFnUUlFQ0FBSUUyRnFoN2dJenFITlhH
WE5VNnRVWmNpMm5qcGxVTG9ZMlAxclZvNDR2cjFBZ1FJRUNBClFCc0xDSkEydnJpTkNKREZseTl1
WTdGcW5acHJVYTNyNVdnSkVDQkFnQUNCL3hTb2U0Q012V0FzMnhZUmFNUzF1SHYrM1MxeWRnN0QK
dGJBREJBZ1FJRUNBUUJVRjZoNGdrOFpNcXFKRFd4NXpJNjdGOVpkZEgzODQ4dy9iMHF0S0oxV3VR
YmtXYmdRSUVDQkFnQUNCcWdrSQprS3Bkc1k5d3ZJMElrREwrNzI3N3V4Zy9hdnhIT0JMZldrK0JZ
bCt1Z1JzQkFnUUlFQ0JBb0lvQ2RRK1F5V01uVjlHaExZOTVTdGVVCmhweFh1ZC92L3ZGM283T2pz
eUgzNzA3UExGRE1ILzNqUjZOUjEvYk1rMzJGQUFFQ0JBZ1FJRkFmZ2JvSHlLeExaOVhueU56TGVR
czAKOGxvc3VXcEpyUDJqdFNMa3ZLL1MyZDlCaVk5aWZzdFZ0NXo5RC9sT0FnUUlFQ0JBZ0VDTENk
UTlRSzdwdnFiRlRuSG9IazRqQTZTbwovc21jUDRsMWQ2eUxzU085OEVDanQ2d1lGK3RpN2thQUFB
RUNCQWdRcUxKQTNRTmtkdmZzS251MDFiRm5YSXZiWnR3V20vN25wcGc3CllXNWIyYlhTeVJUYlls
eXMzUWdRSUVDQUFBRUNWUmVvZTRCMGorNk82ZU9uVjkybDhzZGZya0c1RmhtM3F5KzlPcDcvWDgv
SFh5NzYKeXhneGJFVEd5Q0V4bzFnVzAySmJqTjBJRUNCQWdBQUJBdTBnVVBjQUtTZ0xKeTlzQjV0
S24wUDJOUmc1ZkdUODlTZi9PbDVZOFVMYwpNdDF6Rk01M2VZcGhzU3lteGRhTkFBRUNCQWdRSU5B
dUFnMEprRVZURjdXTFQyWFBvMW5Yb0R6dlpNT2RHK0xKdTU2TW02YmRWRm0vClpoMTRNU3QyeGJE
UnorRnAxam1hUzRBQUFRSUVDQXh0Z1k3QjkyLzFKdGpUdXllbXJacFc3N3QxZng5QllQZkszVEcx
YStwSCtJbkcKZk91bU56YkZONS81Wm54L3gvZmorTW5qalJsUzhYc3R2MnIxbVZtZmlhL2MrSlZZ
Y05tQ2lwK053eWRBZ0FBQkFnUUlmTGhBUXdLawpqSnp6blRteHZXZjdoMC8zMVlZSWxDZWZiL3V6
YlEyNTczTzkwd05IRHNTRG14K010VnZXeG90dnZuaXVkOU5XUC9lSlN6OFJ5K1l0Cmk3dm4zeDBU
eDB4c3EzTnpNZ1FJRUNCQWdBQ0JNd2swN0oza2JwOTV1d0E1azNxRFAxL3NXKzFXL29MOTFVVmZy
WDFzM3I4NUh0disKV0t6YnNXN0l4VWlKanFXemxzYm5abjh1NWsrYTMycVh5ZkVRSUVDQUFBRUNC
Qm91MExCSFFMWWQzQlp6VjN0cDFvWmZ3UThZc0hYRgoxcGd6WWM0SGZLWDFQdlhLMjYvRWhsYzJ4
RTllL1VrOCtmcVQwWGVzci9VTzhqeU9xTHgveCtMTEY4ZW5wbjhxeXBzM1huWHhWZWR4CmIzNlVB
QUVDQkFnUUlGQjlnWVlGU0tHWi8vZnpZOHVCTGRWWHF0QVp6SnM0THpiLzZlWUtIZkgvUDlTVGd5
ZGp5LzR0OGZTZXArTzUKZmMvRjg3OThQbmE5dlNzRzMvK25DcmVPNklnWkY4K0k2ejUrWGR3dytZ
WW9Md1F3YjlLOEdOYlJrTmQ2cUFLSll5UkFnQUFCQWdRSQovRGVCaGdiSTN6Nzd0L0hsSDMvNXZ3
MzFpY1lKZk92VDM0b3ZMZnhTNHdZazMzUGZlMzJ4OWNEVzJIcHdhMncvdUQxMnZyV3pGaVc3CkQr
K09rKy8vMDR6YnNCZ1cwOFpOcThYR3pFdG14dXdKczJ0dnhEaDM0dHdZZTRGM2hXL0dOVEdUQUFF
Q0JBZ1FxSTVBUXdPa3Q3ODMKTHZ2V1pYSDArTkhxaUZUNFNFZVBHQjF2ZlBtTjZCclZWZUd6T0x0
RFAzYmlXTHpSOTBhVVYxemIyN2MzOWgvWkgrV0o3Z2VQSG95MwozMzA3RHZjZnJuMGNPWFlrM2gx
NE45NDUvazZVbnpseDhrU2NHRHhSR3pLOFkzZ01IemE4OWo0YkY0MjRLQzdzdkRER2pCd1Q0MGFO
CnEzMWNmT0hGTVdIMGhOb1R4Q2VObVJSVHhrNnB2YkxZNUxHVFk4UndiN2g0ZGxmS2R4RWdRSUFB
QVFJRS9xdEF3NTZFWHNhVXZ3amYKTmUrdStNN3ozL212VS8xWFF3U0s5VkNJajRKWDNwenZpdkZY
MUQ0YWd1bE9DUkFnUUlBQUFRSUVHaUxROEY5T1gzbkR5aWovVDdOYgpZd1dLY2JGMkkwQ0FBQUVD
QkFnUUlOREtBZzBQa0JtWHpJaGwxeTVyWllPMk9MWmlYS3pkQ0JBZ1FJQUFBUUlFQ0xTeVFFT2ZB
M0xxCnhGODc5RnBjL2UyclkyQnc0TlNuL0ZsSGdjNk96bmo1aXkvSGxlT3ZyT085dWlzQ0JBZ1FJ
RUNBQUFFQzlSZG8rQ01nNVpETFg0eFgKWEwraS9rZnZIbXNDeFZaOFdBWUNCQWdRSUVDQUFJRXFD
S1E4QWxJZ3lxc1N6Znoyek9oNXA2Y0tMcFU1eHU2THVtUG5GM2ZXWHJXcApNZ2Z0UUFrUUlFQ0FB
QUVDQklhc1FNb2pJRVczdkxUcC9aKzhmOGhDTityRXYzSHpOOFJIbzNEZEx3RUNCQWdRSUVDQVFO
MEYwaDRCCktVYytPRGdZbjE3NzZkajRpNDExUDVHaGVJYzNYM0Z6L0hqWmo2T2pvMk1vbnI1ekpr
Q0FBQUVDQkFnUXFLQkFhb0FVbjcyOWUyUHUKNnJuUisxNXZCYmxhNTVDN0x1aUtyU3UyeHBTdUth
MXpVSTZFQUFFQ0JBZ1FJRUNBd0c4UlNQc1ZyRlBIVWY3Qy9NQnRENXo2VDMrZQpvMEF4RkIvbmlP
ZkhDQkFnUUlBQUFRSUVtaWFRSGlEbFRMOXc3UmRpeFhWZUZldGNyM3F4SzRadUJBZ1FJRUNBQUFF
Q0JLb21rUDRyCldLZUFqcDA0RnIrMzV2ZGkweTgzbmZxVVA4OUNZTUhIRjhTL0wvLzNHRGw4NUZs
OHQyOGhRSUFBQVFJRUNCQWcwRm9DVFhrRXBCQ1UKdjBDdnUyTmRYTjUxZVd1SnRQRFJGS3RpSmo1
YStDSTVOQUlFQ0JBZ1FJQUFnUThWYUZxQWxLT2FOR1pTckw5emZZd2ZOZjVERDlJWApvMlpVcklx
Wkd3RUNCQWdRSUVDQUFJR3FDalExUUFyYXJFdG54WTgrLzZQNDJNaVBWZFd3NGNkZGJJcFJzWElq
UUlBQUFRSUVDQkFnClVHV0JwZ2RJd1ZzNFpXRnN1SE9EQ1BtQVRTcnhVV3lLa1JzQkFnUUlFQ0JB
Z0FDQnFndTBSSUFVeEJ1bjNCaFAzUG1FWDhjNmJhUEsKcjZZVmsyTGpSb0FBQVFJRUNCQWdRS0Fk
QkpyMktsaG53dHZ4NW81WTh2Q1MyTjI3KzB6Zk1pUStQNjFyV3UyUkQ3OTJOU1F1dDVNawpRSUFB
QVFJRUNBd1pnWllMa0NLLy84aitXUHJvMGlIN0VyM2xwWGJMcTExNXd2bVErZCtoRXlWQWdBQUJB
Z1FJREJtQmx2a1ZyTlBGCnkxKzh5M3RkRE1VM0t5em5YTTVkZkp5K0VmNmRBQUVDQkFnUUlFQ2dY
UVJhOGhHUTAzRWZlZUdSdU9meGU2TDN2ZDdUUDkxMi85NTEKUVZjOGNOc0QzdUc4N2E2c0V5SkFn
QUFCQWdRSUVEaGRvT1VEcEJ6czN0NjlzWHpkOHRqNGk0Mm5IM3ZiL1B2TlY5d2NhNWF1aVNsZApV
OXJtbkp3SUFRSUVDQkFnUUlBQWdROFNxRVNBbEFNZkhCeU1OVDlmRTMveHIzOFJQZS8wZk5DNVZP
NXozUmQxeC8yZnZEK1cvODd5CjZPam9xTnp4TzJBQ0JBZ1FJRUNBQUFFQ0gxV2dNZ0Z5NnNRTzl4
K09lMzk2YjZ6KzJlb1lHQnc0OWVsSy9kblowUmtycmw4UlgvLzkKcjhlNFVlTXFkZXdPbGdBQkFn
UUlFQ0JBZ01ENUNGUXVRRTZkN0d1SFhvdjducm92MXI2d05rNE1uamoxNlpiK2Mzakg4RmgyN2JM
NAoyazFmaXl2SFg5blN4K3JnQ0JBZ1FJQUFBUUlFQ0RSQ29MSUJjZ3BqMTF1N1l0VnpxK0toTFEv
RjBlTkhUMzI2cGY0Y1BXSjAzRFh2CnJsaDV3OHFZY2NtTWxqbzJCME9BQUFFQ0JBZ1FJRUFnVTZE
eUFYSUtxN2UvdC9ZY2tSSWlXdzVzT2ZYcHB2NDViK0s4V25pVTUzaDAKamVwcTZyRVlUb0FBQVFJ
RUNCQWdRS0FWQk5vbVFFN0gzSFp3VzVTWDcvM2h6aC9HOXA3dHAzK3A0ZjgrdTN0MjNEN3o5dHJM
NmM2WgpNS2ZoOHd3Z1FJQUFBUUlFQ0JBZ1VDV0J0Z3lRMHkvQW50NDlzWDdYK25oNno5UHg3TDVu
NDlWRHI1Nys1ZlArOStuanA4ZkN5UXRqCjBkUkZjZXVNVzJOcTE5VHp2azkzUUlBQUFRSUVDQkFn
UUtCZEJkbytRSDd6d3ZVYzdhazlLdkpTejB1eDQ4MGRzYTl2WCt3L3NyLzIKVWQ3c3NIK2d2L1pS
Zm01VTU2amFSM21Ud1BMTzVPVmo4dGpKTWV2U1dYRk45elZSSHUzb0h0MzlteVA4TndFQ0JBZ1FJ
RUNBQUFFQwpaeEFZY2dGeUJnZWZKa0NBQUFFQ0JBZ1FJRUFnUVdCWXdnd2pDQkFnUUlBQUFRSUVD
QkFnVUJNUUlCYUJBQUVDQkFnUUlFQ0FBSUUwCkFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJ
RUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBQVFJRUNCQWdRRUNBMkFFQ0JBZ1EKSUVDQUFBRUNC
TklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUNCQWdRSUVDQVFKcUFBRW1qTm9nQUFR
SUVDQkFnUUlBQQpBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZ0lF
RHNBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFCkNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JB
Z1FJRUFnVFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWsKQ1FpUU5H
cURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUUFRSUVDQkFnUUlB
QUFRSUN4QTRRSUVDQQpBQUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFn
UUlFQ0FBQUVDQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFCkNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpx
QUFFbWpOb2dBQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RSUduVUJoRWcKUUlB
QUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFRSUVCSWdk
SUVDQUFBRUNCQWdRSUVBZwpUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVD
QkFpa0NRaVFOR3FEQ0JBZ1FJQUFBUUlFQ0JBUUlIYUFBQUVDCkJBZ1FJRUNBQUlFMEFRR1NSbTBR
QVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBQVFJRUNCQWcK
UUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUNC
QWdRSUVDQVFKcUFBRW1qTm9nQQpBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJ
R25VQmhFZ1FJQUFBUUlFQ0JBZ0lFRHNBQUVDQkFnUUlFQ0FBQUVDCmFRSUNKSTNhSUFJRUNCQWdR
SUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNBQUxFREJB
Z1EKSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJ
RTBBUUdTUm0wUUFRSUVDQkFnUUlBQQpBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJ
QUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVDQk5JRUJFZ2F0VUVFCkNCQWdRSUFBQVFJRUNB
Z1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJRUNBQUFF
Q0JBZ1EKU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkz
YUlBSUVDQkFnUUlBQUFRSUVCSWdkSUVDQQpBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JB
Z1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FEQ0JBZ1FJQUFBUUlFCkNCQVFJSGFBQUFF
Q0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBQUFFQ0JBZ1FJSkFt
SUVEU3FBMGkKUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFn
UUlBQUFRSUVDQWdRTzBDQUFBRUNCQWdRSUVDQQpRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZp
QndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZ0lFRHNBQUVDCkJBZ1FJRUNB
QUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBGRWJS
SUFBQVFJRUNCQWcKUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVD
QkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUQpBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FB
QUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVDCkJOSUVC
RWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNC
QWdRSUFBQVFGaUJ3Z1EKSUVDQUFBRUNCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FB
RUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQQpBUUlFQklnZElFQ0FBQUVDQkFnUUlF
QWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FECkNC
QWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJ
Q3hBNFFJRUNBQUFFQ0JBZ1EKSUpBbUlFRFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVD
QUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQQpBQUVDQkFnUUlFQ0FRSnFBQUVt
ak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlF
CkNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNB
QUFFQ0JBZ1FJRUFnVFVDQXBGRWIKUklBQUFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlr
Q1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQQpBSUUwQVFHU1JtMFFBUUlF
Q0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0Ey
QUVDCkJBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJ
RUNBUUpxQUFFbWpOb2dBQVFJRUNCQWcKUUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblVC
aEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYQpJQUlFQ0JBZ1FJQUFB
UUlFQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlF
Q0FBQUVDCkJBaWtDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFR
R1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFEKSUVDQUFBRUNCQWdRSUpBbUlFRFNxQTBpUUlBQUFR
SUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQQpBUUlFQ0FnUU8w
Q0FBQUVDQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFn
UVNCTVFJR25VCkJoRWdRSUFBQVFJRVd0SGhOd0FBRmJSSlJFRlVDQkFnSUVEc0FBRUNCQWdRSUVD
QUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFRSUUKQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZF
YlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FEQ0JBZwpRSUFBQVFJ
RUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNB
QUFFQ0JBZ1FJSkFtCklFRFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklF
QkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUMKQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlF
Q0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZwpJRURz
QUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJ
RUFnVFVDQXBGRWJSSUFBCkFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlrQ1FpUU5HcURD
QkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJRTAKQVFHU1JtMFFBUUlFQ0JBZ1FJQUFB
UUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUQpJ
RUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFF
bWpOb2dBQVFJRUNCQWdRSUFBCkFRRmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblVCaEVnUUlBQUFR
SUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUUKQ0JBZ1FJQUFBUUlFQklnZElF
Q0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFp
awpDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJ
RUNCQWdRSUFBQVFJQ3hBNFFJRUNBCkFBRUNCQWdRSUpBbUlFRFNxQTBpUUlBQUFRSUVDQkFnUUVD
QTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUUKQ0FnUU8wQ0FBQUVDQkFn
UUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJR25V
QmhFZwpRSUFBQVFJRUNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFB
QVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnClRVQ0FwRkViUklBQUFRSUVDQkFnUUlDQUFMRURCQWdR
SUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUMKQkFnUUlFQ0FBSUUw
QVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJQUFB
UUlFQ0JBZwpRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FP
MENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBCkFRSUVDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUNC
QWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUMKYVFJQ0pJM2FJ
QUlFQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJ
Q0FBTEVEQkFnUQpJRUNBQUFFQ0JBaWtDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JB
Z1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBCkFRSUN4QTRRSUVDQUFBRUNCQWdRSUpBbUlF
RFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUUKQ0JBZ1FJ
QUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndn
UUlFQ0FBQUVDQkFnUQpTQk1RSUduVUJoRWdRSUFBQVFJRUNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFF
Q2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNBCkFBRUNCQWdRSUVBZ1RVQ0FwRkViUklB
QUFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUUKQ0JB
UUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVD
QkFnUUlKQW1JRURTcUEwaQpRSUFBQVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdh
dFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBClFKcUFBRW1qTm9nQUFRSUVDQkFn
UUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FBRUMK
QkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUUlFQWdU
VUNBcEZFYlJJQUFBUUlFQ0JBZwpRSUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWtDUWlRTkdxRENCQWdR
SUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRCkFRSUVDQkFnUUlBQUFRSUN4
QTRRSUVDQUFBRUNCQWdRSUpBbUlFRFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFB
RUMKQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVtak5v
Z0FBUUlFQ0JBZ1FJQUFBUUZpQndnUQpJRUNBQUFFQ0JBZ1FTQk1RSUduVUJoRWdRSUFBQVFJRUNC
QWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBCkFRSUVCSWdkSUVDQUFB
RUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlrQ1Fp
UU5HcUQKQ0JBZ1FJQUFBUUlFQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFHU1JtMFFBUUlFQ0JB
Z1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUQpJSkFtSUVEU3FBMGlRSUFBQVFJRUNCQWdRRUNBMkFF
Q0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBCkFBRUNCQWdRSUVD
QVFKcUFBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblVCaEVn
UUlBQUFRSUUKQ0JBZ0lFRHNBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFQ0JBZ1FJQUFBUUlF
QklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYgpSSUFBQVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNB
QUFFQ0JBaWtDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBCkFJRTBBUUdT
Um0wUUFRSUVDQkFnUUlBQUFRSUN4QTRRSUVDQUFBRUNCQWdRSUpBbUlFRFNxQTBpUUlBQUFRSUVD
QkFnUUVDQTJBRUMKQkFnUUlFQ0FBQUVDQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFQ0FnUU8wQ0FB
QUVDQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZwpRSUFBQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FT
Qk1RSUduVUJoRWdRSUFBQVFJRUNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhCklBSUVD
QkFnUUlBQUFRSUVCSWdkSUVDQUFBRUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUVDQkFnUUlDQUFM
RURCQWdRSUVDQUFBRUMKQkFpa0NRaVFOR3FEQ0JBZ1FJQUFBUUlFQ0JBUUlIYUFBQUVDQkFnUUlF
Q0FBSUUwQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UQpJRUNBQUFFQ0JBZ1FJSkFtSUVEU3FB
MGlRSUFBQVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBCkFR
SUVDQWdRTzBDQUFBRUNCQWdRSUVDQVFKcUFBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmlCd2dRSUVD
QUFBRUNCQWdRU0JNUUlHblUKQmhFZ1FJQUFBUUlFQ0JBZ0lFRHNBQUVDQkFnUUlFQ0FBQUVDYVFJ
Q0pJM2FJQUlFQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUQpJRUFnVFVDQXBGRWJSSUFBQVFJ
RUNCQWdRSUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWtDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJSGFB
CkFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUUFRSUVDQkFnUUlBQUFRSUN4QTRRSUVDQUFBRUNCQWdR
SUpBbUlFRFNxQTBpUUlBQUFRSUUKQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVDQk5JRUJFZ2F0VUVF
Q0JBZ1FJQUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVtagpOb2dBQVFJRUNCQWdRSUFB
QVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RSUduVUJoRWdRSUFBQVFJRUNCQWdJRURzQUFFQ0JBZ1FJ
RUNBCkFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFRSUVCSWdkSUVDQUFBRUNCQWdRSUVBZ1RVQ0Fw
RkViUklBQUFRSUVDQkFnUUlDQUFMRUQKQkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FEQ0JBZ1FJQUFB
UUlFQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFHU1JtMFFBUUlFQ0JBZwpRSUFBQVFJQ3hBNFFJ
RUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBQVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JO
SUVCRWdhCnRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUNCQWdRSUVDQVFKcUFBRW1qTm9nQUFR
SUVDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUMKQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZ0lF
RHNBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFQ0JBZ1FJQUFBUUlFQklnZApJRUNBQUFFQ0JB
Z1FJRUFnVFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWtDUWlRTkdx
RENCQWdRSUFBCkFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUUFRSUVDQkFnUUlB
QUFRSUN4QTRRSUVDQUFBRUNCQWdRSUpBbUlFRFMKcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFn
UUlFQ0FBQUVDQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUQpJRUNBUUpx
QUFFbWpOb2dBQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RSUduVUJoRWdRSUFB
QVFJRUNCQWdJRURzCkFBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFRSUVCSWdk
SUVDQUFBRUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUUKQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVD
QkFpa0NRaVFOR3FEQ0JBZ1FJQUFBUUlFQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFHUwpSbTBR
QVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBQVFJRUNCQWdR
RUNBMkFFQ0JBZ1FJRUNBCkFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUNC
QWdRSUVDQVFKcUFBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmkKQndnUUlFQ0FBQUVDQkFnUVNCTVFJ
R25VQmhFZ1FJQUFBUUlFQ0JBZ0lFRHNBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFQ0JBZwpR
SUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNBQUxFREJB
Z1FJRUNBQUFFQ0JBaWtDUWlRCk5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJ
RTBBUUdTUm0wUUFRSUVDQkFnUUlBQUFRSUN4QTRRSUVDQUFBRUMKQkFnUUlKQW1JRURTcUEwaVFJ
QUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVDQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFQ0Fn
UQpPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJRUNBQUFF
Q0JBZ1FTQk1RSUduVUJoRWdRSUFBCkFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkz
YUlBSUVDQkFnUUlBQUFRSUVCSWdkSUVDQUFBRUNCQWdRSUVBZ1RVQ0EKcEZFYlJJQUFBUUlFQ0JB
Z1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FEQ0JBZ1FJQUFBUUlFQ0JBUUlIYUFBQUVD
QkFnUQpJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBQUFFQ0JBZ1FJSkFt
SUVEU3FBMGlRSUFBQVFJRUNCQWdRRUNBCjJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFn
UUlBQUFRSUVDQWdRTzBDQUFBRUNCQWdRSUVDQVFKcUFBRW1qTm9nQUFRSUUKQ0JBZ1FJQUFBUUZp
QndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZ0lFRHNBQUVDQkFnUUlFQ0FB
QUVDYVFJQwpKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBGRWJS
SUFBQVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNBCkFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVD
QkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUUFRSUVDQkFnUUlBQUFRSUMKeEE0UUlFQ0FB
QUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVDQk5JRUJF
Z2F0VUVFQ0JBZwpRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNC
QWdRSUFBQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RCklHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FB
RUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFRSUVCSWdkSUVDQUFBRUMKQkFnUUlF
QWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FEQ0JB
Z1FJQUFBUUlFQ0JBUQpJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJ
Q3hBNFFJRUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBCkFRSUVDQkFnUUVDQTJBRUNCQWdRSUVD
QUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUNCQWdRSUVDQVFKcUEKQUVt
ak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlF
Q0JBZ0lFRHNBQUVDQkFnUQpJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNB
QUFFQ0JBZ1FJRUFnVFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNBCkFMRURCQWdRSUVDQUFBRUNCQWlr
Q1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUUFRSUUK
Q0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0Ey
QUVDQkFnUUlFQ0FBQUVDQk5JRQpCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJ
RUNBUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJRUNBCkFBRUNCQWdRU0JNUUlHblVC
aEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFR
SUUKQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlF
Q0FBQUVDQkFpa0NRaVFOR3FEQ0JBZwpRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFR
R1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBQUFFQ0JBZ1FJSkFtCklFRFNxQTBpUUlBQUFR
SUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBD
QUFBRUMKQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFn
UVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZwpJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJ
RUNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBGRWJSSUFBCkFRSUVDQkFnUUlD
QUFMRURCQWdRSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdR
SUVDQUFJRTAKQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURT
cUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUQpJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFB
QVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBCkFRRmlCd2dR
SUVDQUFBRUNCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNh
UUlDSkkzYUlBSUUKQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFB
UUlFQ0JBZ1FJREEvd04xK0xUNFF4V2oxd0FBQUFCSgpSVTVFcmtKZ2dnPT0KCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45521</attachid>
            <date>2009-12-27 03:03:33 -0800</date>
            <delta_ts>2009-12-27 06:18:00 -0800</delta_ts>
            <desc>Create more than one SVG Mask resource</desc>
            <filename>mask-on-multiple-objects.patch</filename>
            <type>text/plain</type>
            <size>54943</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1MjU3NikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNzcgQEAKKzIwMDktMTItMjcgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTVkcg
TWFzayByZXN1bHQgd3JvbmcsIGlmIHR3byBkaWZmZXJlbnQgb2JqZWN0cyBjYWxsIHRoZSBzYW1l
IG1hc2sgaWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTMyNzg3CisKKyAgICAgICAgQXQgdGhlIG1vbWVudCB3ZSBjcmVhdGUgb25lIHJlc291cmNlIHBl
ciBtYXNrSWQuIFNvbWUgcmVzb3VyY2VzIChsaWtlIG1hc2spCisgICAgICAgIGNyZWF0ZSBJbWFn
ZUJ1ZmZlcnMgYW5kIGRlcGVuZHMgb24gdGhlIHByb3BlcnRpZXMgb2YgdGhlIFJlbmRlck9iamVj
dCwKKyAgICAgICAgdGh1cyB3ZSBjYW4ndCB1c2UgaXQgZm9yIGEgc2Vjb25kIG9iamVjdC4KKyAg
ICAgICAgVGhpcyBwYXRjaCBzdG9yZXMgbXVsdGlwbGUgbWFzayByZXNvdXJjZXMgZm9yIG9uZSBt
YXNrSWQgYW5kIGRpZmZlcmVudAorICAgICAgICBSZW5kZXJPYmplY3QgY2FuIHVzZSB0aGUgc2Ft
ZSBtYXNrSWQuCisgICAgICAgIENsaXBwZXIsIEZpbHRlciBhbmQgUGF0dGVybnMgYWxzbyBuZWVk
IHRvIHN0b3JlIG11bHRpcGxlIHJlc291cmNlcyBsYXRlci4KKworICAgICAgICBUZXN0OiBzdmcv
Y3VzdG9tL21hc2stb24tbXVsdGlwbGUtb2JqZWN0cy5zdmcKKworICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJQYXRoLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclBhdGg6OmRyYXdNYXJr
ZXJzSWZOZWVkZWQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJTVkdDb250YWluZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZHQ29udGFpbmVyOjpzZWxmV2lsbFBhaW50KToK
KyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyU1ZHR3JhZGllbnRTdG9wLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclNWR0dyYWRpZW50U3RvcDo6c3R5bGVEaWRDaGFuZ2UpOgorICAgICAg
ICAqIHJlbmRlcmluZy9SZW5kZXJTVkdSb290LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
clNWR1Jvb3Q6OnNlbGZXaWxsUGFpbnQpOgorICAgICAgICAqIHJlbmRlcmluZy9TVkdSZW5kZXJT
dXBwb3J0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1JlbmRlckJhc2U6OnByZXBhcmVUb1Jl
bmRlclNWR0NvbnRlbnQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHUmVuZGVyQmFzZTo6ZmlsdGVy
Qm91bmRpbmdCb3hGb3JSZW5kZXJlcik6CisgICAgICAgICogcmVuZGVyaW5nL1NWR1JlbmRlclRy
ZWVBc1RleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6d3JpdGVSZW5kZXJSZXNvdXJjZXMpOgor
ICAgICAgICAqIHN2Zy9TVkdDbGlwUGF0aEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U1ZHQ2xpcFBhdGhFbGVtZW50OjpjYW52YXNSZXNvdXJjZSk6CisgICAgICAgICogc3ZnL1NWR0Ns
aXBQYXRoRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdGaWx0ZXJFbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNWR0ZpbHRlckVsZW1lbnQ6OmNhbnZhc1Jlc291cmNlKToKKyAgICAg
ICAgKiBzdmcvU1ZHRmlsdGVyRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdHcmFkaWVudEVs
ZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHR3JhZGllbnRFbGVtZW50OjpjYW52YXNS
ZXNvdXJjZSk6CisgICAgICAgICogc3ZnL1NWR0dyYWRpZW50RWxlbWVudC5oOgorICAgICAgICAq
IHN2Zy9TVkdNYXJrZXJFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR01hcmtlckVs
ZW1lbnQ6OmNhbnZhc1Jlc291cmNlKToKKyAgICAgICAgKiBzdmcvU1ZHTWFya2VyRWxlbWVudC5o
OgorICAgICAgICAqIHN2Zy9TVkdNYXNrRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
VkdNYXNrRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpT
VkdNYXNrRWxlbWVudDo6Y2hpbGRyZW5DaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR01h
c2tFbGVtZW50OjpjYW52YXNSZXNvdXJjZSk6CisgICAgICAgICogc3ZnL1NWR01hc2tFbGVtZW50
Lmg6CisgICAgICAgICogc3ZnL1NWR1BhdHRlcm5FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlNWR1BhdHRlcm5FbGVtZW50OjpjYW52YXNSZXNvdXJjZSk6CisgICAgICAgICogc3ZnL1NW
R1BhdHRlcm5FbGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR1N0eWxlZEVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U1ZHU3R5bGVkRWxlbWVudDo6aW52YWxpZGF0ZVJlc291cmNlc0lu
QW5jZXN0b3JDaGFpbik6CisgICAgICAgICogc3ZnL1NWR1N0eWxlZEVsZW1lbnQuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQ6OmNhbnZhc1Jlc291cmNlKToKKyAgICAgICAg
KiBzdmcvZ3JhcGhpY3MvU1ZHUGFpbnRTZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Z2V0
UGFpbnRTZXJ2ZXJCeUlkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR1BhaW50U2VydmVyOjpmaWxs
UGFpbnRTZXJ2ZXIpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHUGFpbnRTZXJ2ZXI6OnN0cm9rZVBh
aW50U2VydmVyKToKKyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUGFpbnRTZXJ2ZXIuaDoKKyAg
ICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Z2V0UmVzb3VyY2VCeUlkKToKKyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2UuaDoK
KyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VDbGlwcGVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OmdldENsaXBwZXJCeUlkKToKKyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVz
b3VyY2VDbGlwcGVyLmg6CisgICAgICAgICogc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlRmlsdGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmdldEZpbHRlckJ5SWQpOgorICAgICAgICAqIHN2Zy9n
cmFwaGljcy9TVkdSZXNvdXJjZUZpbHRlci5oOgorICAgICAgICAqIHN2Zy9ncmFwaGljcy9TVkdS
ZXNvdXJjZU1hcmtlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnZXRNYXJrZXJCeUlkKToKKyAg
ICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VNYXJrZXIuaDoKKyAgICAgICAgKiBzdmcv
Z3JhcGhpY3MvU1ZHUmVzb3VyY2VNYXNrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Z2V0TWFz
a2VyQnlJZCk6CisgICAgICAgICogc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlTWFza2VyLmg6CisK
IDIwMDktMTItMjcgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFyb2dhQHBhcm9nYS5jb20+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCkluZGV4OiBXZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJQYXRoLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJQYXRo
LmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJQYXRoLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzcxLDkgKzM3MSw5IEBAIEZsb2F0UmVjdCBSZW5kZXJQYXRo
OjpkcmF3TWFya2Vyc0lmTmVlZGUKICAgICBBdG9taWNTdHJpbmcgbWlkTWFya2VySWQoc3ZnU3R5
bGUtPm1pZE1hcmtlcigpKTsKICAgICBBdG9taWNTdHJpbmcgZW5kTWFya2VySWQoc3ZnU3R5bGUt
PmVuZE1hcmtlcigpKTsKIAotICAgIFNWR1Jlc291cmNlTWFya2VyKiBzdGFydE1hcmtlciA9IGdl
dE1hcmtlckJ5SWQoZG9jLCBzdGFydE1hcmtlcklkKTsKLSAgICBTVkdSZXNvdXJjZU1hcmtlciog
bWlkTWFya2VyID0gZ2V0TWFya2VyQnlJZChkb2MsIG1pZE1hcmtlcklkKTsKLSAgICBTVkdSZXNv
dXJjZU1hcmtlciogZW5kTWFya2VyID0gZ2V0TWFya2VyQnlJZChkb2MsIGVuZE1hcmtlcklkKTsK
KyAgICBTVkdSZXNvdXJjZU1hcmtlciogc3RhcnRNYXJrZXIgPSBnZXRNYXJrZXJCeUlkKGRvYywg
c3RhcnRNYXJrZXJJZCwgdGhpcyk7CisgICAgU1ZHUmVzb3VyY2VNYXJrZXIqIG1pZE1hcmtlciA9
IGdldE1hcmtlckJ5SWQoZG9jLCBtaWRNYXJrZXJJZCwgdGhpcyk7CisgICAgU1ZHUmVzb3VyY2VN
YXJrZXIqIGVuZE1hcmtlciA9IGdldE1hcmtlckJ5SWQoZG9jLCBlbmRNYXJrZXJJZCwgdGhpcyk7
CiAKICAgICBpZiAoIXN0YXJ0TWFya2VyICYmICFzdGFydE1hcmtlcklkLmlzRW1wdHkoKSkKICAg
ICAgICAgc3ZnRWxlbWVudC0+ZG9jdW1lbnQoKS0+YWNjZXNzU1ZHRXh0ZW5zaW9ucygpLT5hZGRQ
ZW5kaW5nUmVzb3VyY2Uoc3RhcnRNYXJrZXJJZCwgc3R5bGVkRWxlbWVudCk7CkluZGV4OiBXZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJTVkdDb250YWluZXIuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclNWR0NvbnRhaW5lci5jcHAJKHJldmlzaW9uIDUyMjIwKQorKysg
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHQ29udGFpbmVyLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtODIsNyArODIsNyBAQCBib29sIFJlbmRlclNWR0NvbnRhaW5lcjo6c2VsZldpbGxQYWludCgp
CiB7CiAjaWYgRU5BQkxFKEZJTFRFUlMpCiAgICAgY29uc3QgU1ZHUmVuZGVyU3R5bGUqIHN2Z1N0
eWxlID0gc3R5bGUoKS0+c3ZnU3R5bGUoKTsKLSAgICBTVkdSZXNvdXJjZUZpbHRlciogZmlsdGVy
ID0gZ2V0RmlsdGVyQnlJZChkb2N1bWVudCgpLCBzdmdTdHlsZS0+ZmlsdGVyKCkpOworICAgIFNW
R1Jlc291cmNlRmlsdGVyKiBmaWx0ZXIgPSBnZXRGaWx0ZXJCeUlkKGRvY3VtZW50KCksIHN2Z1N0
eWxlLT5maWx0ZXIoKSwgdGhpcyk7CiAgICAgaWYgKGZpbHRlcikKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAjZW5kaWYKSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNWR0dyYWRpZW50U3Rv
cC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHR3JhZGllbnRT
dG9wLmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTVkdH
cmFkaWVudFN0b3AuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OSw3ICs0OSw3IEBAIHZvaWQgUmVu
ZGVyU1ZHR3JhZGllbnRTdG9wOjpzdHlsZURpZENoYW4KICAgICAvLyA8c3RvcD4gZWxlbWVudHMg
c2hvdWxkIG9ubHkgYmUgYWxsb3dlZCB0byBtYWtlIHJlbmRlcmVycyB1bmRlciBncmFkaWVudCBl
bGVtZW50cwogICAgIC8vIGJ1dCBJIGNhbiBpbWFnaW5lIGEgZmV3IGNhc2VzIHdlIG1pZ2h0IG5v
dCBiZSBjYXRjaGluZywgc28gbGV0J3Mgbm90IGNyYXNoIGlmIG91ciBwYXJlbnQgaXNuJ3QgYSBn
cmFkaWVudC4KICAgICBpZiAoU1ZHR3JhZGllbnRFbGVtZW50KiBncmFkaWVudCA9IGdyYWRpZW50
RWxlbWVudCgpKSB7Ci0gICAgICAgIGlmIChTVkdSZXNvdXJjZSogcmVzb3VyY2UgPSBncmFkaWVu
dC0+Y2FudmFzUmVzb3VyY2UoKSkKKyAgICAgICAgaWYgKFNWR1Jlc291cmNlKiByZXNvdXJjZSA9
IGdyYWRpZW50LT5jYW52YXNSZXNvdXJjZSh0aGlzKSkKICAgICAgICAgICAgIHJlc291cmNlLT5p
bnZhbGlkYXRlKCk7CiAgICAgfQogfQpJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZH
Um9vdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5j
cHAJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTExMyw3ICsxMTMsOCBAQCBib29sIFJlbmRlclNWR1Jvb3Q6
OnNlbGZXaWxsUGFpbnQoKSBjb25zCiB7CiAjaWYgRU5BQkxFKEZJTFRFUlMpCiAgICAgY29uc3Qg
U1ZHUmVuZGVyU3R5bGUqIHN2Z1N0eWxlID0gc3R5bGUoKS0+c3ZnU3R5bGUoKTsKLSAgICBTVkdS
ZXNvdXJjZUZpbHRlciogZmlsdGVyID0gZ2V0RmlsdGVyQnlJZChkb2N1bWVudCgpLCBzdmdTdHls
ZS0+ZmlsdGVyKCkpOworICAgIC8vIEZJWE1FOiBSZW5kZXJTVkdSb290IGlzIG5vdCBhIFJlbmRl
ck9iamVjdC4KKyAgICBTVkdSZXNvdXJjZUZpbHRlciogZmlsdGVyID0gZ2V0RmlsdGVyQnlJZChk
b2N1bWVudCgpLCBzdmdTdHlsZS0+ZmlsdGVyKCksIDApOwogICAgIGlmIChmaWx0ZXIpCiAgICAg
ICAgIHJldHVybiB0cnVlOwogI2VuZGlmCkluZGV4OiBXZWJDb3JlL3JlbmRlcmluZy9TVkdSZW5k
ZXJTdXBwb3J0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9TVkdSZW5kZXJT
dXBwb3J0LmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3JlbmRlcmluZy9TVkdSZW5k
ZXJTdXBwb3J0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTE2LDcgKzExNiw3IEBAIHZvaWQgU1ZH
UmVuZGVyQmFzZTo6cHJlcGFyZVRvUmVuZGVyU1ZHQ28KICAgICBEb2N1bWVudCogZG9jdW1lbnQg
PSBvYmplY3QtPmRvY3VtZW50KCk7CiAKICNpZiBFTkFCTEUoRklMVEVSUykKLSAgICBTVkdSZXNv
dXJjZUZpbHRlciogbmV3RmlsdGVyID0gZ2V0RmlsdGVyQnlJZChkb2N1bWVudCwgZmlsdGVySWQp
OworICAgIFNWR1Jlc291cmNlRmlsdGVyKiBuZXdGaWx0ZXIgPSBnZXRGaWx0ZXJCeUlkKGRvY3Vt
ZW50LCBmaWx0ZXJJZCwgb2JqZWN0KTsKICAgICBpZiAobmV3RmlsdGVyID09IHJvb3RGaWx0ZXIp
IHsKICAgICAgICAgLy8gQ2F0Y2ggPHRleHQgZmlsdGVyPSJ1cmwoI2ZvbykiPlRlc3Q8dHNwYW4g
ZmlsdGVyPSJ1cmwoI2ZvbykiPjEyMzwvdHNwYW4+PC90ZXh0Pi4KICAgICAgICAgLy8gVGhlIGZp
bHRlciBpcyBOT1QgbWVhbnQgdG8gYmUgYXBwbGllZCB0d2ljZSBpbiB0aGF0IGNhc2UhCkBAIC0x
MjYsOCArMTI2LDggQEAgdm9pZCBTVkdSZW5kZXJCYXNlOjpwcmVwYXJlVG9SZW5kZXJTVkdDbwog
ICAgICAgICBmaWx0ZXIgPSBuZXdGaWx0ZXI7CiAjZW5kaWYKIAotICAgIFNWR1Jlc291cmNlQ2xp
cHBlciogY2xpcHBlciA9IGdldENsaXBwZXJCeUlkKGRvY3VtZW50LCBjbGlwcGVySWQpOwotICAg
IFNWR1Jlc291cmNlTWFza2VyKiBtYXNrZXIgPSBnZXRNYXNrZXJCeUlkKGRvY3VtZW50LCBtYXNr
ZXJJZCk7CisgICAgU1ZHUmVzb3VyY2VDbGlwcGVyKiBjbGlwcGVyID0gZ2V0Q2xpcHBlckJ5SWQo
ZG9jdW1lbnQsIGNsaXBwZXJJZCwgb2JqZWN0KTsKKyAgICBTVkdSZXNvdXJjZU1hc2tlciogbWFz
a2VyID0gZ2V0TWFza2VyQnlJZChkb2N1bWVudCwgbWFza2VySWQsIG9iamVjdCk7CiAKICNpZiBF
TkFCTEUoRklMVEVSUykKICAgICBpZiAoZmlsdGVyKSB7CkBAIC0yMzUsNyArMjM1LDcgQEAgRmxv
YXRSZWN0IFNWR1JlbmRlckJhc2U6OmNvbXB1dGVDb250YWluZQogRmxvYXRSZWN0IFNWR1JlbmRl
ckJhc2U6OmZpbHRlckJvdW5kaW5nQm94Rm9yUmVuZGVyZXIoY29uc3QgUmVuZGVyT2JqZWN0KiBv
YmplY3QpCiB7CiAjaWYgRU5BQkxFKEZJTFRFUlMpCi0gICAgU1ZHUmVzb3VyY2VGaWx0ZXIqIGZp
bHRlciA9IGdldEZpbHRlckJ5SWQob2JqZWN0LT5kb2N1bWVudCgpLCBvYmplY3QtPnN0eWxlKCkt
PnN2Z1N0eWxlKCktPmZpbHRlcigpKTsKKyAgICBTVkdSZXNvdXJjZUZpbHRlciogZmlsdGVyID0g
Z2V0RmlsdGVyQnlJZChvYmplY3QtPmRvY3VtZW50KCksIG9iamVjdC0+c3R5bGUoKS0+c3ZnU3R5
bGUoKS0+ZmlsdGVyKCksIG9iamVjdCk7CiAgICAgaWYgKGZpbHRlcikKICAgICAgICAgcmV0dXJu
IGZpbHRlci0+ZmlsdGVyQm91bmRpbmdCb3goKTsKICNlbHNlCkluZGV4OiBXZWJDb3JlL3JlbmRl
cmluZy9TVkdSZW5kZXJUcmVlQXNUZXh0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRl
cmluZy9TVkdSZW5kZXJUcmVlQXNUZXh0LmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3Jl
L3JlbmRlcmluZy9TVkdSZW5kZXJUcmVlQXNUZXh0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTIx
LDcgKzUyMSw3IEBAIHZvaWQgd3JpdGVSZW5kZXJSZXNvdXJjZXMoVGV4dFN0cmVhbSYgdHMKICAg
ICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgIFNWR1N0eWxlZEVsZW1lbnQqIHN0eWxlZCA9
IHN0YXRpY19jYXN0PFNWR1N0eWxlZEVsZW1lbnQqPihzdmdFbGVtZW50KTsKLSAgICAgICAgUmVm
UHRyPFNWR1Jlc291cmNlPiByZXNvdXJjZShzdHlsZWQtPmNhbnZhc1Jlc291cmNlKCkpOworICAg
ICAgICBSZWZQdHI8U1ZHUmVzb3VyY2U+IHJlc291cmNlKHN0eWxlZC0+Y2FudmFzUmVzb3VyY2Uo
bm9kZS0+cmVuZGVyZXIoKSkpOwogICAgICAgICBpZiAoIXJlc291cmNlKQogICAgICAgICAgICAg
Y29udGludWU7CiAKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0NsaXBQYXRoRWxlbWVudC5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHQ2xpcFBhdGhFbGVtZW50LmNwcAkocmV2aXNpb24g
NTIyMjApCisrKyBXZWJDb3JlL3N2Zy9TVkdDbGlwUGF0aEVsZW1lbnQuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC04OSw3ICs4OSw3IEBAIHZvaWQgU1ZHQ2xpcFBhdGhFbGVtZW50OjpjaGlsZHJlbkNo
YW5nZWQKICAgICBtX2NsaXBwZXItPmludmFsaWRhdGUoKTsKIH0KIAotU1ZHUmVzb3VyY2UqIFNW
R0NsaXBQYXRoRWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoKQorU1ZHUmVzb3VyY2UqIFNWR0NsaXBQ
YXRoRWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoY29uc3QgUmVuZGVyT2JqZWN0KikKIHsKICAgICBp
ZiAoIW1fY2xpcHBlcikKICAgICAgICAgbV9jbGlwcGVyID0gU1ZHUmVzb3VyY2VDbGlwcGVyOjpj
cmVhdGUoKTsKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR0NsaXBQYXRoRWxlbWVudC5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR0NsaXBQYXRoRWxlbWVudC5oCShyZXZpc2lvbiA1MjIyMCkK
KysrIFdlYkNvcmUvc3ZnL1NWR0NsaXBQYXRoRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0y
Miw2ICsyMiw3IEBACiAjZGVmaW5lIFNWR0NsaXBQYXRoRWxlbWVudF9oCiAKICNpZiBFTkFCTEUo
U1ZHKQorI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgogI2luY2x1ZGUgIlNWR0V4dGVybmFsUmVz
b3VyY2VzUmVxdWlyZWQuaCIKICNpbmNsdWRlICJTVkdMYW5nU3BhY2UuaCIKICNpbmNsdWRlICJT
VkdSZXNvdXJjZUNsaXBwZXIuaCIKQEAgLTQ1LDcgKzQ2LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogICAgICAgICB2aXJ0dWFsIHZvaWQgc3ZnQXR0cmlidXRlQ2hhbmdlZChjb25zdCBRdWFsaWZp
ZWROYW1lJik7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBjaGlsZHJlbkNoYW5nZWQoYm9vbCBjaGFu
Z2VkQnlQYXJzZXIgPSBmYWxzZSwgTm9kZSogYmVmb3JlQ2hhbmdlID0gMCwgTm9kZSogYWZ0ZXJD
aGFuZ2UgPSAwLCBpbnQgY2hpbGRDb3VudERlbHRhID0gMCk7CiAKLSAgICAgICAgdmlydHVhbCBT
VkdSZXNvdXJjZSogY2FudmFzUmVzb3VyY2UoKTsKKyAgICAgICAgdmlydHVhbCBTVkdSZXNvdXJj
ZSogY2FudmFzUmVzb3VyY2UoY29uc3QgUmVuZGVyT2JqZWN0Kik7CiAKICAgICBwcml2YXRlOgog
ICAgICAgICBBTklNQVRFRF9QUk9QRVJUWV9ERUNMQVJBVElPTlMoU1ZHQ2xpcFBhdGhFbGVtZW50
LCBTVkdOYW1lczo6Y2xpcFBhdGhUYWdTdHJpbmcsIFNWR05hbWVzOjpjbGlwUGF0aFVuaXRzQXR0
clN0cmluZywgaW50LCBDbGlwUGF0aFVuaXRzLCBjbGlwUGF0aFVuaXRzKQpJbmRleDogV2ViQ29y
ZS9zdmcvU1ZHRmlsdGVyRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZH
RmlsdGVyRWxlbWVudC5jcHAJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9zdmcvU1ZHRmls
dGVyRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE2MCw3ICsxNjAsNyBAQCB2b2lkIFNW
R0ZpbHRlckVsZW1lbnQ6OmJ1aWxkRmlsdGVyKGNvbnN0CiAgICAgfQogfQogCi1TVkdSZXNvdXJj
ZSogU1ZHRmlsdGVyRWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoKQorU1ZHUmVzb3VyY2UqIFNWR0Zp
bHRlckVsZW1lbnQ6OmNhbnZhc1Jlc291cmNlKGNvbnN0IFJlbmRlck9iamVjdCopCiB7CiAgICAg
aWYgKCFhdHRhY2hlZCgpKQogICAgICAgICByZXR1cm4gMDsKSW5kZXg6IFdlYkNvcmUvc3ZnL1NW
R0ZpbHRlckVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdGaWx0ZXJFbGVt
ZW50LmgJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9zdmcvU1ZHRmlsdGVyRWxlbWVudC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw2ICsyMyw3IEBACiAjZGVmaW5lIFNWR0ZpbHRlckVsZW1l
bnRfaAogCiAjaWYgRU5BQkxFKFNWRykgJiYgRU5BQkxFKEZJTFRFUlMpCisjaW5jbHVkZSAiUmVu
ZGVyT2JqZWN0LmgiCiAjaW5jbHVkZSAiU1ZHUmVzb3VyY2VGaWx0ZXIuaCIKICNpbmNsdWRlICJT
VkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkLmgiCiAjaW5jbHVkZSAiU1ZHTGFuZ1NwYWNlLmgi
CkBAIC00Miw3ICs0Myw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgU1ZHRmlsdGVy
RWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqKTsKICAgICAgICAgdmlydHVh
bCB+U1ZHRmlsdGVyRWxlbWVudCgpOwogCi0gICAgICAgIHZpcnR1YWwgU1ZHUmVzb3VyY2UqIGNh
bnZhc1Jlc291cmNlKCk7CisgICAgICAgIHZpcnR1YWwgU1ZHUmVzb3VyY2UqIGNhbnZhc1Jlc291
cmNlKGNvbnN0IFJlbmRlck9iamVjdCopOwogCiAgICAgICAgIHZvaWQgc2V0RmlsdGVyUmVzKHVu
c2lnbmVkIGxvbmcgZmlsdGVyUmVzWCwgdW5zaWduZWQgbG9uZyBmaWx0ZXJSZXNZKSBjb25zdDsK
IApJbmRleDogV2ViQ29yZS9zdmcvU1ZHR3JhZGllbnRFbGVtZW50LmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL3N2Zy9TVkdHcmFkaWVudEVsZW1lbnQuY3BwCShyZXZpc2lvbiA1MjIyMCkKKysr
IFdlYkNvcmUvc3ZnL1NWR0dyYWRpZW50RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEx
NCw3ICsxMTQsNyBAQCBSZW5kZXJPYmplY3QqIFNWR0dyYWRpZW50RWxlbWVudDo6Y3JlYXRlCiAg
ICAgcmV0dXJuIG5ldyAoYXJlbmEpIFJlbmRlclNWR0hpZGRlbkNvbnRhaW5lcih0aGlzKTsKIH0K
IAotU1ZHUmVzb3VyY2UqIFNWR0dyYWRpZW50RWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoKQorU1ZH
UmVzb3VyY2UqIFNWR0dyYWRpZW50RWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoY29uc3QgUmVuZGVy
T2JqZWN0KikKIHsKICAgICBpZiAoIW1fcmVzb3VyY2UpIHsKICAgICAgICAgaWYgKGdyYWRpZW50
VHlwZSgpID09IExpbmVhckdyYWRpZW50UGFpbnRTZXJ2ZXIpCkluZGV4OiBXZWJDb3JlL3N2Zy9T
VkdHcmFkaWVudEVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdHcmFkaWVu
dEVsZW1lbnQuaAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2Zy9TVkdHcmFkaWVudEVs
ZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMjIsNiArMjIsNyBAQAogI2RlZmluZSBTVkdHcmFk
aWVudEVsZW1lbnRfaAogCiAjaWYgRU5BQkxFKFNWRykKKyNpbmNsdWRlICJSZW5kZXJPYmplY3Qu
aCIKICNpbmNsdWRlICJTVkdQYWludFNlcnZlckdyYWRpZW50LmgiCiAjaW5jbHVkZSAiU1ZHRXh0
ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZC5oIgogI2luY2x1ZGUgIlNWR1N0eWxlZEVsZW1lbnQuaCIK
QEAgLTQ1LDcgKzQ2LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2aXJ0dWFsIHZv
aWQgY2hpbGRyZW5DaGFuZ2VkKGJvb2wgY2hhbmdlZEJ5UGFyc2VyID0gZmFsc2UsIE5vZGUqIGJl
Zm9yZUNoYW5nZSA9IDAsIE5vZGUqIGFmdGVyQ2hhbmdlID0gMCwgaW50IGNoaWxkQ291bnREZWx0
YSA9IDApOwogICAgICAgICB2aXJ0dWFsIFJlbmRlck9iamVjdCogY3JlYXRlUmVuZGVyZXIoUmVu
ZGVyQXJlbmEqLCBSZW5kZXJTdHlsZSopOwogCi0gICAgICAgIHZpcnR1YWwgU1ZHUmVzb3VyY2Uq
IGNhbnZhc1Jlc291cmNlKCk7CisgICAgICAgIHZpcnR1YWwgU1ZHUmVzb3VyY2UqIGNhbnZhc1Jl
c291cmNlKGNvbnN0IFJlbmRlck9iamVjdCopOwogCiAgICAgcHJvdGVjdGVkOgogICAgICAgICBm
cmllbmQgY2xhc3MgU1ZHUGFpbnRTZXJ2ZXJHcmFkaWVudDsKSW5kZXg6IFdlYkNvcmUvc3ZnL1NW
R01hcmtlckVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR01hcmtlckVs
ZW1lbnQuY3BwCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL1NWR01hcmtlckVsZW1l
bnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzMsNyArMTczLDcgQEAgdm9pZCBTVkdNYXJrZXJF
bGVtZW50OjpzZXRPcmllbnRUb0FuZ2xlKAogICAgIG1fbWFya2VyLT5pbnZhbGlkYXRlKCk7CiB9
CiAKLVNWR1Jlc291cmNlKiBTVkdNYXJrZXJFbGVtZW50OjpjYW52YXNSZXNvdXJjZSgpCitTVkdS
ZXNvdXJjZSogU1ZHTWFya2VyRWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoY29uc3QgUmVuZGVyT2Jq
ZWN0KikKIHsKICAgICBpZiAoIW1fbWFya2VyKQogICAgICAgICBtX21hcmtlciA9IFNWR1Jlc291
cmNlTWFya2VyOjpjcmVhdGUoKTsKSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR01hcmtlckVsZW1lbnQu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdNYXJrZXJFbGVtZW50LmgJKHJldmlzaW9u
IDUyMjIwKQorKysgV2ViQ29yZS9zdmcvU1ZHTWFya2VyRWxlbWVudC5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yMiw3ICsyMiw3IEBACiAjZGVmaW5lIFNWR01hcmtlckVsZW1lbnRfaAogCiAjaWYgRU5B
QkxFKFNWRykKLQorI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgogI2luY2x1ZGUgIlNWR0FuZ2xl
LmgiCiAjaW5jbHVkZSAiU1ZHRXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZC5oIgogI2luY2x1ZGUg
IlNWR0ZpdFRvVmlld0JveC5oIgpAQCAtNjgsNyArNjgsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAgICAgICAgIHZpcnR1YWwgdm9pZCBjaGlsZHJlbkNoYW5nZWQoYm9vbCBjaGFuZ2VkQnlQYXJz
ZXIgPSBmYWxzZSwgTm9kZSogYmVmb3JlQ2hhbmdlID0gMCwgTm9kZSogYWZ0ZXJDaGFuZ2UgPSAw
LCBpbnQgY2hpbGRDb3VudERlbHRhID0gMCk7CiAKICAgICAgICAgdmlydHVhbCBSZW5kZXJPYmpl
Y3QqIGNyZWF0ZVJlbmRlcmVyKFJlbmRlckFyZW5hKiwgUmVuZGVyU3R5bGUqKTsKLSAgICAgICAg
dmlydHVhbCBTVkdSZXNvdXJjZSogY2FudmFzUmVzb3VyY2UoKTsKKyAgICAgICAgdmlydHVhbCBT
VkdSZXNvdXJjZSogY2FudmFzUmVzb3VyY2UoY29uc3QgUmVuZGVyT2JqZWN0Kik7CiAKICAgICBw
cml2YXRlOgogICAgICAgICBBTklNQVRFRF9QUk9QRVJUWV9ERUNMQVJBVElPTlMoU1ZHTWFya2Vy
RWxlbWVudCwgU1ZHTmFtZXM6Om1hcmtlclRhZ1N0cmluZywgU1ZHTmFtZXM6OnJlZlhBdHRyU3Ry
aW5nLCBTVkdMZW5ndGgsIFJlZlgsIHJlZlgpCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdNYXNrRWxl
bWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHTWFza0VsZW1lbnQuY3BwCShy
ZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL1NWR01hc2tFbGVtZW50LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjksNiArMjksNyBAQAogI2luY2x1ZGUgIkdyYXBoaWNzQ29udGV4dC5oIgog
I2luY2x1ZGUgIkltYWdlQnVmZmVyLmgiCiAjaW5jbHVkZSAiTWFwcGVkQXR0cmlidXRlLmgiCisj
aW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCiAjaW5jbHVkZSAiUmVuZGVyU1ZHQ29udGFpbmVyLmgi
CiAjaW5jbHVkZSAiU1ZHTGVuZ3RoLmgiCiAjaW5jbHVkZSAiU1ZHTmFtZXMuaCIKQEAgLTEwMiw3
ICsxMDMsNyBAQCB2b2lkIFNWR01hc2tFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkCiB7CiAg
ICAgU1ZHU3R5bGVkRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZChhdHRyTmFtZSk7CiAKLSAg
ICBpZiAoIW1fbWFza2VyKQorICAgIGlmIChtX21hc2tlci5pc0VtcHR5KCkpCiAgICAgICAgIHJl
dHVybjsKIAogICAgIGlmIChhdHRyTmFtZSA9PSBTVkdOYW1lczo6bWFza1VuaXRzQXR0ciB8fCBh
dHRyTmFtZSA9PSBTVkdOYW1lczo6bWFza0NvbnRlbnRVbml0c0F0dHIgfHwKQEAgLTExMywxNyAr
MTE0LDE5IEBAIHZvaWQgU1ZHTWFza0VsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQKICAgICAg
ICAgU1ZHTGFuZ1NwYWNlOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8fAogICAgICAgICBT
VkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSB8
fAogICAgICAgICBTVkdTdHlsZWRFbGVtZW50Ojppc0tub3duQXR0cmlidXRlKGF0dHJOYW1lKSkK
LSAgICAgICAgbV9tYXNrZXItPmludmFsaWRhdGUoKTsKKyAgICAgICAgZm9yIChIYXNoTWFwPGNv
bnN0IFJlbmRlck9iamVjdCosIFJlZlB0cjxTVkdSZXNvdXJjZU1hc2tlcj4gPjo6aXRlcmF0b3Ig
aXQgPSBtX21hc2tlci5iZWdpbigpOyBpdCAhPSBtX21hc2tlci5lbmQoKTsgKytpdCkKKyAgICAg
ICAgICAgIGl0LT5zZWNvbmQtPmludmFsaWRhdGUoKTsKIH0KIAogdm9pZCBTVkdNYXNrRWxlbWVu
dDo6Y2hpbGRyZW5DaGFuZ2VkKGJvb2wgY2hhbmdlZEJ5UGFyc2VyLCBOb2RlKiBiZWZvcmVDaGFu
Z2UsIE5vZGUqIGFmdGVyQ2hhbmdlLCBpbnQgY2hpbGRDb3VudERlbHRhKQogewogICAgIFNWR1N0
eWxlZEVsZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChjaGFuZ2VkQnlQYXJzZXIsIGJlZm9yZUNoYW5n
ZSwgYWZ0ZXJDaGFuZ2UsIGNoaWxkQ291bnREZWx0YSk7CiAKLSAgICBpZiAoIW1fbWFza2VyKQor
ICAgIGlmIChtX21hc2tlci5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fbWFz
a2VyLT5pbnZhbGlkYXRlKCk7CisgICAgZm9yIChIYXNoTWFwPGNvbnN0IFJlbmRlck9iamVjdCos
IFJlZlB0cjxTVkdSZXNvdXJjZU1hc2tlcj4gPjo6aXRlcmF0b3IgaXQgPSBtX21hc2tlci5iZWdp
bigpOyBpdCAhPSBtX21hc2tlci5lbmQoKTsgKytpdCkKKyAgICAgICAgaXQtPnNlY29uZC0+aW52
YWxpZGF0ZSgpOwogfQogCiBQYXNzT3duUHRyPEltYWdlQnVmZmVyPiBTVkdNYXNrRWxlbWVudDo6
ZHJhd01hc2tlckNvbnRlbnQoY29uc3QgRmxvYXRSZWN0JiB0YXJnZXRSZWN0LCBGbG9hdFJlY3Qm
IG1hc2tEZXN0UmVjdCkgY29uc3QKQEAgLTIwNywxMSArMjEwLDE2IEBAIFJlbmRlck9iamVjdCog
U1ZHTWFza0VsZW1lbnQ6OmNyZWF0ZVJlbmQKICAgICByZXR1cm4gbWFza0NvbnRhaW5lcjsKIH0K
IAotU1ZHUmVzb3VyY2UqIFNWR01hc2tFbGVtZW50OjpjYW52YXNSZXNvdXJjZSgpCitTVkdSZXNv
dXJjZSogU1ZHTWFza0VsZW1lbnQ6OmNhbnZhc1Jlc291cmNlKGNvbnN0IFJlbmRlck9iamVjdCog
b2JqZWN0KQogewotICAgIGlmICghbV9tYXNrZXIpCi0gICAgICAgIG1fbWFza2VyID0gU1ZHUmVz
b3VyY2VNYXNrZXI6OmNyZWF0ZSh0aGlzKTsKLSAgICByZXR1cm4gbV9tYXNrZXIuZ2V0KCk7Cisg
ICAgQVNTRVJUKG9iamVjdCk7CisKKyAgICBpZiAobV9tYXNrZXIuY29udGFpbnMob2JqZWN0KSkK
KyAgICAgICAgcmV0dXJuIG1fbWFza2VyLmdldChvYmplY3QpLmdldCgpOworCisgICAgbV9tYXNr
ZXIuc2V0KG9iamVjdCwgU1ZHUmVzb3VyY2VNYXNrZXI6OmNyZWF0ZSh0aGlzKSk7CisKKyAgICBy
ZXR1cm4gbV9tYXNrZXIuZ2V0KG9iamVjdCkuZ2V0KCk7CiB9CiAKIH0KSW5kZXg6IFdlYkNvcmUv
c3ZnL1NWR01hc2tFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHTWFza0Vs
ZW1lbnQuaAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2Zy9TVkdNYXNrRWxlbWVudC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yNyw2ICsyNyw3IEBACiAjaW5jbHVkZSAiU1ZHU3R5bGVkTG9j
YXRhYmxlRWxlbWVudC5oIgogI2luY2x1ZGUgIlNWR1Rlc3RzLmgiCiAjaW5jbHVkZSAiU1ZHVVJJ
UmVmZXJlbmNlLmgiCisjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvUGFz
c093blB0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC00OCw3ICs0OSw3IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2b2lkIGNoaWxkcmVuQ2hhbmdlZChib29s
IGNoYW5nZWRCeVBhcnNlciA9IGZhbHNlLCBOb2RlKiBiZWZvcmVDaGFuZ2UgPSAwLCBOb2RlKiBh
ZnRlckNoYW5nZSA9IDAsIGludCBjaGlsZENvdW50RGVsdGEgPSAwKTsKIAogICAgICAgICB2aXJ0
dWFsIFJlbmRlck9iamVjdCogY3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJlbmEqLCBSZW5kZXJTdHls
ZSopOwotICAgICAgICB2aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52YXNSZXNvdXJjZSgpOworICAg
ICAgICB2aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52YXNSZXNvdXJjZShjb25zdCBSZW5kZXJPYmpl
Y3QqKTsKIAogICAgICAgICBQYXNzT3duUHRyPEltYWdlQnVmZmVyPiBkcmF3TWFza2VyQ29udGVu
dChjb25zdCBGbG9hdFJlY3QmIHRhcmdldFJlY3QsIEZsb2F0UmVjdCYgbWFza1JlY3QpIGNvbnN0
OwogCkBAIC02OCw3ICs2OSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFNWR05hbWVzOjpleHRlcm5hbFJlc291cmNlc1JlcXVp
cmVkQXR0clN0cmluZywgYm9vbCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEV4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQsIGV4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQp
CiAKLSAgICAgICAgUmVmUHRyPFNWR1Jlc291cmNlTWFza2VyPiBtX21hc2tlcjsKKyAgICAgICAg
SGFzaE1hcDxjb25zdCBSZW5kZXJPYmplY3QqLCBSZWZQdHI8U1ZHUmVzb3VyY2VNYXNrZXI+ID4g
bV9tYXNrZXI7CiAgICAgfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogV2ViQ29y
ZS9zdmcvU1ZHUGF0dGVybkVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NW
R1BhdHRlcm5FbGVtZW50LmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2Zy9TVkdQ
YXR0ZXJuRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2Myw3ICsyNjMsNyBAQCBSZW5k
ZXJPYmplY3QqIFNWR1BhdHRlcm5FbGVtZW50OjpjcmVhdGVSCiAgICAgcmV0dXJuIHBhdHRlcm5D
b250YWluZXI7CiB9CiAKLVNWR1Jlc291cmNlKiBTVkdQYXR0ZXJuRWxlbWVudDo6Y2FudmFzUmVz
b3VyY2UoKQorU1ZHUmVzb3VyY2UqIFNWR1BhdHRlcm5FbGVtZW50OjpjYW52YXNSZXNvdXJjZShj
b25zdCBSZW5kZXJPYmplY3QqKQogewogICAgIGlmICghbV9yZXNvdXJjZSkKICAgICAgICAgbV9y
ZXNvdXJjZSA9IFNWR1BhaW50U2VydmVyUGF0dGVybjo6Y3JlYXRlKHRoaXMpOwpJbmRleDogV2Vi
Q29yZS9zdmcvU1ZHUGF0dGVybkVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9T
VkdQYXR0ZXJuRWxlbWVudC5oCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL1NWR1Bh
dHRlcm5FbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTIyLDYgKzIyLDcgQEAKICNkZWZpbmUg
U1ZHUGF0dGVybkVsZW1lbnRfaAogCiAjaWYgRU5BQkxFKFNWRykKKyNpbmNsdWRlICJSZW5kZXJP
YmplY3QuaCIKICNpbmNsdWRlICJTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkLmgiCiAjaW5j
bHVkZSAiU1ZHRml0VG9WaWV3Qm94LmgiCiAjaW5jbHVkZSAiU1ZHTGFuZ1NwYWNlLmgiCkBAIC01
NCw3ICs1NSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2b2lkIGNo
aWxkcmVuQ2hhbmdlZChib29sIGNoYW5nZWRCeVBhcnNlciA9IGZhbHNlLCBOb2RlKiBiZWZvcmVD
aGFuZ2UgPSAwLCBOb2RlKiBhZnRlckNoYW5nZSA9IDAsIGludCBjaGlsZENvdW50RGVsdGEgPSAw
KTsKIAogICAgICAgICB2aXJ0dWFsIFJlbmRlck9iamVjdCogY3JlYXRlUmVuZGVyZXIoUmVuZGVy
QXJlbmEqLCBSZW5kZXJTdHlsZSopOwotICAgICAgICB2aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52
YXNSZXNvdXJjZSgpOworICAgICAgICB2aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52YXNSZXNvdXJj
ZShjb25zdCBSZW5kZXJPYmplY3QqKTsKIAogICAgIHByaXZhdGU6CiAgICAgICAgIEFOSU1BVEVE
X1BST1BFUlRZX0RFQ0xBUkFUSU9OUyhTVkdQYXR0ZXJuRWxlbWVudCwgU1ZHTmFtZXM6OnBhdHRl
cm5UYWdTdHJpbmcsIFNWR05hbWVzOjp4QXR0clN0cmluZywgU1ZHTGVuZ3RoLCBYLCB4KQpJbmRl
eDogV2ViQ29yZS9zdmcvU1ZHU3R5bGVkRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9zdmcvU1ZHU3R5bGVkRWxlbWVudC5jcHAJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9z
dmcvU1ZHU3R5bGVkRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIxNSw3ICsyMTUsNyBA
QCB2b2lkIFNWR1N0eWxlZEVsZW1lbnQ6OmludmFsaWRhdGVSZXNvdXJjCiAKICAgICAgICAgU1ZH
RWxlbWVudCogZWxlbWVudCA9IHN0YXRpY19jYXN0PFNWR0VsZW1lbnQqPihub2RlKTsKICAgICAg
ICAgaWYgKFNWR1N0eWxlZEVsZW1lbnQqIHN0eWxlZEVsZW1lbnQgPSBzdGF0aWNfY2FzdDxTVkdT
dHlsZWRFbGVtZW50Kj4oZWxlbWVudC0+aXNTdHlsZWQoKSA/IGVsZW1lbnQgOiAwKSkgewotICAg
ICAgICAgICAgaWYgKFNWR1Jlc291cmNlKiByZXNvdXJjZSA9IHN0eWxlZEVsZW1lbnQtPmNhbnZh
c1Jlc291cmNlKCkpCisgICAgICAgICAgICBpZiAoU1ZHUmVzb3VyY2UqIHJlc291cmNlID0gc3R5
bGVkRWxlbWVudC0+Y2FudmFzUmVzb3VyY2Uobm9kZS0+cmVuZGVyZXIoKSkpCiAgICAgICAgICAg
ICAgICAgcmVzb3VyY2UtPmludmFsaWRhdGUoKTsKICAgICAgICAgfQogCkluZGV4OiBXZWJDb3Jl
L3N2Zy9TVkdTdHlsZWRFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHU3R5
bGVkRWxlbWVudC5oCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL1NWR1N0eWxlZEVs
ZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtNDYsNyArNDYsNyBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAgICAgICAgIGJvb2wgaXNLbm93bkF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJik7
CiAKICAgICAgICAgdmlydHVhbCBib29sIHJlbmRlcmVySXNOZWVkZWQoUmVuZGVyU3R5bGUqKTsK
LSAgICAgICAgdmlydHVhbCBTVkdSZXNvdXJjZSogY2FudmFzUmVzb3VyY2UoKSB7IHJldHVybiAw
OyB9CisgICAgICAgIHZpcnR1YWwgU1ZHUmVzb3VyY2UqIGNhbnZhc1Jlc291cmNlKGNvbnN0IFJl
bmRlck9iamVjdCopIHsgcmV0dXJuIDA7IH0KICAgICAgICAgCiAgICAgICAgIHZpcnR1YWwgYm9v
bCBtYXBUb0VudHJ5KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBNYXBwZWRBdHRyaWJ1dGVFbnRyeSYp
IGNvbnN0OwogICAgICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VNYXBwZWRBdHRyaWJ1dGUoTWFwcGVk
QXR0cmlidXRlKik7CkluZGV4OiBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdQYWludFNlcnZlci5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUGFpbnRTZXJ2ZXIuY3Bw
CShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1BhaW50U2VydmVy
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTcsOSArNTcsOSBAQCBUZXh0U3RyZWFtJiBvcGVyYXRv
cjw8KFRleHRTdHJlYW0mIHRzLCBjCiAgICAgcmV0dXJuIHBhaW50U2VydmVyLmV4dGVybmFsUmVw
cmVzZW50YXRpb24odHMpOwogfQogCi1TVkdQYWludFNlcnZlciogZ2V0UGFpbnRTZXJ2ZXJCeUlk
KERvY3VtZW50KiBkb2N1bWVudCwgY29uc3QgQXRvbWljU3RyaW5nJiBpZCkKK1NWR1BhaW50U2Vy
dmVyKiBnZXRQYWludFNlcnZlckJ5SWQoRG9jdW1lbnQqIGRvY3VtZW50LCBjb25zdCBBdG9taWNT
dHJpbmcmIGlkLCBjb25zdCBSZW5kZXJPYmplY3QqIG9iamVjdCkKIHsKLSAgICBTVkdSZXNvdXJj
ZSogcmVzb3VyY2UgPSBnZXRSZXNvdXJjZUJ5SWQoZG9jdW1lbnQsIGlkKTsKKyAgICBTVkdSZXNv
dXJjZSogcmVzb3VyY2UgPSBnZXRSZXNvdXJjZUJ5SWQoZG9jdW1lbnQsIGlkLCBvYmplY3QpOwog
ICAgIGlmIChyZXNvdXJjZSAmJiByZXNvdXJjZS0+aXNQYWludFNlcnZlcigpKQogICAgICAgICBy
ZXR1cm4gc3RhdGljX2Nhc3Q8U1ZHUGFpbnRTZXJ2ZXIqPihyZXNvdXJjZSk7CiAKQEAgLTg1LDcg
Kzg1LDcgQEAgU1ZHUGFpbnRTZXJ2ZXIqIFNWR1BhaW50U2VydmVyOjpmaWxsUGFpbgogICAgIGlm
IChwYWludFR5cGUgPT0gU1ZHUGFpbnQ6OlNWR19QQUlOVFRZUEVfVVJJIHx8CiAgICAgICAgIHBh
aW50VHlwZSA9PSBTVkdQYWludDo6U1ZHX1BBSU5UVFlQRV9VUklfUkdCQ09MT1IpIHsKICAgICAg
ICAgQXRvbWljU3RyaW5nIGlkKFNWR1VSSVJlZmVyZW5jZTo6Z2V0VGFyZ2V0KGZpbGwtPnVyaSgp
KSk7Ci0gICAgICAgIGZpbGxQYWludFNlcnZlciA9IGdldFBhaW50U2VydmVyQnlJZChpdGVtLT5k
b2N1bWVudCgpLCBpZCk7CisgICAgICAgIGZpbGxQYWludFNlcnZlciA9IGdldFBhaW50U2VydmVy
QnlJZChpdGVtLT5kb2N1bWVudCgpLCBpZCwgaXRlbSk7CiAKICAgICAgICAgU1ZHRWxlbWVudCog
c3ZnRWxlbWVudCA9IHN0YXRpY19jYXN0PFNWR0VsZW1lbnQqPihpdGVtLT5ub2RlKCkpOwogICAg
ICAgICBBU1NFUlQoc3ZnRWxlbWVudCAmJiBzdmdFbGVtZW50LT5kb2N1bWVudCgpICYmIHN2Z0Vs
ZW1lbnQtPmlzU3R5bGVkKCkpOwpAQCAtMTI2LDcgKzEyNiw3IEBAIFNWR1BhaW50U2VydmVyKiBT
VkdQYWludFNlcnZlcjo6c3Ryb2tlUGEKICAgICBpZiAocGFpbnRUeXBlID09IFNWR1BhaW50OjpT
VkdfUEFJTlRUWVBFX1VSSSB8fAogICAgICAgICBwYWludFR5cGUgPT0gU1ZHUGFpbnQ6OlNWR19Q
QUlOVFRZUEVfVVJJX1JHQkNPTE9SKSB7CiAgICAgICAgIEF0b21pY1N0cmluZyBpZChTVkdVUklS
ZWZlcmVuY2U6OmdldFRhcmdldChzdHJva2UtPnVyaSgpKSk7Ci0gICAgICAgIHN0cm9rZVBhaW50
U2VydmVyID0gZ2V0UGFpbnRTZXJ2ZXJCeUlkKGl0ZW0tPmRvY3VtZW50KCksIGlkKTsKKyAgICAg
ICAgc3Ryb2tlUGFpbnRTZXJ2ZXIgPSBnZXRQYWludFNlcnZlckJ5SWQoaXRlbS0+ZG9jdW1lbnQo
KSwgaWQsIGl0ZW0pOwogCiAgICAgICAgIFNWR0VsZW1lbnQqIHN2Z0VsZW1lbnQgPSBzdGF0aWNf
Y2FzdDxTVkdFbGVtZW50Kj4oaXRlbS0+bm9kZSgpKTsKICAgICAgICAgQVNTRVJUKHN2Z0VsZW1l
bnQgJiYgc3ZnRWxlbWVudC0+ZG9jdW1lbnQoKSAmJiBzdmdFbGVtZW50LT5pc1N0eWxlZCgpKTsK
SW5kZXg6IFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1BhaW50U2VydmVyLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUGFpbnRTZXJ2ZXIuaAkocmV2aXNpb24gNTIyMjAp
CisrKyBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdQYWludFNlcnZlci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yOSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKFNWRykKIAogI2luY2x1ZGUgIkRhc2hBcnJh
eS5oIgorI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgogI2luY2x1ZGUgIlNWR1Jlc291cmNlLmgi
CiAKICNpZiBQTEFURk9STShDRykKQEAgLTgyLDcgKzgzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiAgICAgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiwgY29uc3QgU1ZHUGFp
bnRTZXJ2ZXImKTsKIAotICAgIFNWR1BhaW50U2VydmVyKiBnZXRQYWludFNlcnZlckJ5SWQoRG9j
dW1lbnQqLCBjb25zdCBBdG9taWNTdHJpbmcmKTsKKyAgICBTVkdQYWludFNlcnZlciogZ2V0UGFp
bnRTZXJ2ZXJCeUlkKERvY3VtZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiwgY29uc3QgUmVuZGVy
T2JqZWN0Kik7CiAKICAgICB2b2lkIGFwcGx5U3Ryb2tlU3R5bGVUb0NvbnRleHQoR3JhcGhpY3ND
b250ZXh0KiwgUmVuZGVyU3R5bGUqLCBjb25zdCBSZW5kZXJPYmplY3QqKTsKICAgICBEYXNoQXJy
YXkgZGFzaEFycmF5RnJvbVJlbmRlcmluZ1N0eWxlKGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSwg
UmVuZGVyU3R5bGUqIHJvb3RTdHlsZSk7CkluZGV4OiBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdS
ZXNvdXJjZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3Vy
Y2UuY3BwCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291
cmNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTYwLDcgKzE2MCw3IEBAIFRleHRTdHJlYW0mIFNW
R1Jlc291cmNlOjpleHRlcm5hbFJlcHJlc2UKICAgICByZXR1cm4gdHM7CiB9CiAKLVNWR1Jlc291
cmNlKiBnZXRSZXNvdXJjZUJ5SWQoRG9jdW1lbnQqIGRvY3VtZW50LCBjb25zdCBBdG9taWNTdHJp
bmcmIGlkKQorU1ZHUmVzb3VyY2UqIGdldFJlc291cmNlQnlJZChEb2N1bWVudCogZG9jdW1lbnQs
IGNvbnN0IEF0b21pY1N0cmluZyYgaWQsIGNvbnN0IFJlbmRlck9iamVjdCogb2JqZWN0KQogewog
ICAgIGlmIChpZC5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTcxLDcgKzE3MSw3
IEBAIFNWR1Jlc291cmNlKiBnZXRSZXNvdXJjZUJ5SWQoRG9jdW1lbnQqIGQKICAgICAgICAgc3Zn
RWxlbWVudCA9IHN0YXRpY19jYXN0PFNWR0VsZW1lbnQqPihlbGVtZW50KTsKIAogICAgIGlmIChz
dmdFbGVtZW50ICYmIHN2Z0VsZW1lbnQtPmlzU3R5bGVkKCkpCi0gICAgICAgIHJldHVybiBzdGF0
aWNfY2FzdDxTVkdTdHlsZWRFbGVtZW50Kj4oc3ZnRWxlbWVudCktPmNhbnZhc1Jlc291cmNlKCk7
CisgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxTVkdTdHlsZWRFbGVtZW50Kj4oc3ZnRWxlbWVu
dCktPmNhbnZhc1Jlc291cmNlKG9iamVjdCk7CiAKICAgICByZXR1cm4gMDsKIH0KSW5kZXg6IFdl
YkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9z
dmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2UuaAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2
Zy9ncmFwaGljcy9TVkdSZXNvdXJjZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw2ICsyOCw3IEBA
CiAKICNpZiBFTkFCTEUoU1ZHKQogI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisjaW5jbHVk
ZSAiUmVuZGVyT2JqZWN0LmgiCiAjaW5jbHVkZSAiU3RyaW5nSGFzaC5oIgogCiAjaW5jbHVkZSA8
d3RmL0hhc2hNYXAuaD4KQEAgLTkxLDcgKzkyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAg
ICAgICBIYXNoU2V0PFNWR1N0eWxlZEVsZW1lbnQqPiBtX2NsaWVudHM7CiAgICAgfTsKIAotICAg
IFNWR1Jlc291cmNlKiBnZXRSZXNvdXJjZUJ5SWQoRG9jdW1lbnQqLCBjb25zdCBBdG9taWNTdHJp
bmcmKTsKKyAgICBTVkdSZXNvdXJjZSogZ2V0UmVzb3VyY2VCeUlkKERvY3VtZW50KiwgY29uc3Qg
QXRvbWljU3RyaW5nJiwgY29uc3QgUmVuZGVyT2JqZWN0Kik7CiAgICAgCiAgICAgVGV4dFN0cmVh
bSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiwgY29uc3QgU1ZHUmVzb3VyY2UmKTsKIApJbmRleDog
V2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VDbGlwcGVyLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZUNsaXBwZXIuY3BwCShyZXZpc2lvbiA1
MjIyMCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlQ2xpcHBlci5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTEyNSw5ICsxMjUsOSBAQCBUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFRl
eHRTdHJlYW0mIHRzLCBjCiAgICAgcmV0dXJuIHRzOwogfQogCi1TVkdSZXNvdXJjZUNsaXBwZXIq
IGdldENsaXBwZXJCeUlkKERvY3VtZW50KiBkb2N1bWVudCwgY29uc3QgQXRvbWljU3RyaW5nJiBp
ZCkKK1NWR1Jlc291cmNlQ2xpcHBlciogZ2V0Q2xpcHBlckJ5SWQoRG9jdW1lbnQqIGRvY3VtZW50
LCBjb25zdCBBdG9taWNTdHJpbmcmIGlkLCBjb25zdCBSZW5kZXJPYmplY3QqIG9iamVjdCkKIHsK
LSAgICBTVkdSZXNvdXJjZSogcmVzb3VyY2UgPSBnZXRSZXNvdXJjZUJ5SWQoZG9jdW1lbnQsIGlk
KTsKKyAgICBTVkdSZXNvdXJjZSogcmVzb3VyY2UgPSBnZXRSZXNvdXJjZUJ5SWQoZG9jdW1lbnQs
IGlkLCBvYmplY3QpOwogICAgIGlmIChyZXNvdXJjZSAmJiByZXNvdXJjZS0+aXNDbGlwcGVyKCkp
CiAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxTVkdSZXNvdXJjZUNsaXBwZXIqPihyZXNvdXJj
ZSk7CiAKSW5kZXg6IFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlQ2xpcHBlci5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlQ2xpcHBlci5oCShy
ZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlQ2xpcHBl
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw5ICsyNyw5IEBACiAjZGVmaW5lIFNWR1Jlc291cmNl
Q2xpcHBlcl9oCiAKICNpZiBFTkFCTEUoU1ZHKQotCi0jaW5jbHVkZSAiU1ZHUmVzb3VyY2UuaCIK
ICNpbmNsdWRlICJQYXRoLmgiCisjaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCisjaW5jbHVkZSAi
U1ZHUmVzb3VyY2UuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC04NCw3ICs4NCw3IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFRleHRTdHJl
YW0mLCBXaW5kUnVsZSk7CiAgICAgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiwg
Y29uc3QgQ2xpcERhdGEmKTsKIAotICAgIFNWR1Jlc291cmNlQ2xpcHBlciogZ2V0Q2xpcHBlckJ5
SWQoRG9jdW1lbnQqLCBjb25zdCBBdG9taWNTdHJpbmcmKTsKKyAgICBTVkdSZXNvdXJjZUNsaXBw
ZXIqIGdldENsaXBwZXJCeUlkKERvY3VtZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiwgY29uc3Qg
UmVuZGVyT2JqZWN0Kik7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIApJbmRleDogV2ViQ29y
ZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VGaWx0ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlRmlsdGVyLmNwcAkocmV2aXNpb24gNTIyMjApCisr
KyBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZUZpbHRlci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTIwNCw5ICsyMDQsOSBAQCBUZXh0U3RyZWFtJiBTVkdSZXNvdXJjZUZpbHRlcjo6ZXh0
ZXJuYWxSCiAgICAgcmV0dXJuIHRzOwogfQogCi1TVkdSZXNvdXJjZUZpbHRlciogZ2V0RmlsdGVy
QnlJZChEb2N1bWVudCogZG9jdW1lbnQsIGNvbnN0IEF0b21pY1N0cmluZyYgaWQpCitTVkdSZXNv
dXJjZUZpbHRlciogZ2V0RmlsdGVyQnlJZChEb2N1bWVudCogZG9jdW1lbnQsIGNvbnN0IEF0b21p
Y1N0cmluZyYgaWQsIGNvbnN0IFJlbmRlck9iamVjdCogb2JqZWN0KQogewotICAgIFNWR1Jlc291
cmNlKiByZXNvdXJjZSA9IGdldFJlc291cmNlQnlJZChkb2N1bWVudCwgaWQpOworICAgIFNWR1Jl
c291cmNlKiByZXNvdXJjZSA9IGdldFJlc291cmNlQnlJZChkb2N1bWVudCwgaWQsIG9iamVjdCk7
CiAgICAgaWYgKHJlc291cmNlICYmIHJlc291cmNlLT5pc0ZpbHRlcigpKQogICAgICAgICByZXR1
cm4gc3RhdGljX2Nhc3Q8U1ZHUmVzb3VyY2VGaWx0ZXIqPihyZXNvdXJjZSk7CiAKSW5kZXg6IFdl
YkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlRmlsdGVyLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VGaWx0ZXIuaAkocmV2aXNpb24gNTIyMjApCisr
KyBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZUZpbHRlci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0xMDMsNyArMTAzLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8RmlsdGVyPiBtX2ZpbHRl
cjsKIH07CiAKLVNWR1Jlc291cmNlRmlsdGVyKiBnZXRGaWx0ZXJCeUlkKERvY3VtZW50KiwgY29u
c3QgQXRvbWljU3RyaW5nJik7CitTVkdSZXNvdXJjZUZpbHRlciogZ2V0RmlsdGVyQnlJZChEb2N1
bWVudCosIGNvbnN0IEF0b21pY1N0cmluZyYsIGNvbnN0IFJlbmRlck9iamVjdCopOwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCiAKSW5kZXg6IFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291
cmNlTWFya2VyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNv
dXJjZU1hcmtlci5jcHAJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9zdmcvZ3JhcGhpY3Mv
U1ZHUmVzb3VyY2VNYXJrZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjYsOSArMTI2LDkgQEAg
VGV4dFN0cmVhbSYgU1ZHUmVzb3VyY2VNYXJrZXI6OmV4dGVybmFsUgogICAgIHJldHVybiB0czsK
IH0KIAotU1ZHUmVzb3VyY2VNYXJrZXIqIGdldE1hcmtlckJ5SWQoRG9jdW1lbnQqIGRvY3VtZW50
LCBjb25zdCBBdG9taWNTdHJpbmcmIGlkKQorU1ZHUmVzb3VyY2VNYXJrZXIqIGdldE1hcmtlckJ5
SWQoRG9jdW1lbnQqIGRvY3VtZW50LCBjb25zdCBBdG9taWNTdHJpbmcmIGlkLCBjb25zdCBSZW5k
ZXJPYmplY3QqIG9iamVjdCkKIHsKLSAgICBTVkdSZXNvdXJjZSogcmVzb3VyY2UgPSBnZXRSZXNv
dXJjZUJ5SWQoZG9jdW1lbnQsIGlkKTsKKyAgICBTVkdSZXNvdXJjZSogcmVzb3VyY2UgPSBnZXRS
ZXNvdXJjZUJ5SWQoZG9jdW1lbnQsIGlkLCBvYmplY3QpOwogICAgIGlmIChyZXNvdXJjZSAmJiBy
ZXNvdXJjZS0+aXNNYXJrZXIoKSkKICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFNWR1Jlc291
cmNlTWFya2VyKj4ocmVzb3VyY2UpOwogCkluZGV4OiBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdS
ZXNvdXJjZU1hcmtlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jl
c291cmNlTWFya2VyLmgJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9zdmcvZ3JhcGhpY3Mv
U1ZHUmVzb3VyY2VNYXJrZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjksNiArMjksNyBAQAogI2lm
IEVOQUJMRShTVkcpCiAKICNpbmNsdWRlICJGbG9hdFJlY3QuaCIKKyNpbmNsdWRlICJSZW5kZXJP
YmplY3QuaCIKICNpbmNsdWRlICJTVkdSZXNvdXJjZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CkBAIC02OSw3ICs3MCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgYm9vbCBtX3Vz
ZVN0cm9rZVdpZHRoOwogICAgIH07CiAKLSAgICBTVkdSZXNvdXJjZU1hcmtlciogZ2V0TWFya2Vy
QnlJZChEb2N1bWVudCosIGNvbnN0IEF0b21pY1N0cmluZyYpOworICAgIFNWR1Jlc291cmNlTWFy
a2VyKiBnZXRNYXJrZXJCeUlkKERvY3VtZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiwgY29uc3Qg
UmVuZGVyT2JqZWN0Kik7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIApJbmRleDogV2ViQ29y
ZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VNYXNrZXIuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlTWFza2VyLmNwcAkocmV2aXNpb24gNTIyMjApCisr
KyBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZU1hc2tlci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTEwNCw5ICsxMDQsOSBAQCBUZXh0U3RyZWFtJiBTVkdSZXNvdXJjZU1hc2tlcjo6ZXh0
ZXJuYWxSCiAgICAgcmV0dXJuIHRzOwogfQogCi1TVkdSZXNvdXJjZU1hc2tlciogZ2V0TWFza2Vy
QnlJZChEb2N1bWVudCogZG9jdW1lbnQsIGNvbnN0IEF0b21pY1N0cmluZyYgaWQpCitTVkdSZXNv
dXJjZU1hc2tlciogZ2V0TWFza2VyQnlJZChEb2N1bWVudCogZG9jdW1lbnQsIGNvbnN0IEF0b21p
Y1N0cmluZyYgaWQsIGNvbnN0IFJlbmRlck9iamVjdCogb2JqZWN0KQogewotICAgIFNWR1Jlc291
cmNlKiByZXNvdXJjZSA9IGdldFJlc291cmNlQnlJZChkb2N1bWVudCwgaWQpOworICAgIFNWR1Jl
c291cmNlKiByZXNvdXJjZSA9IGdldFJlc291cmNlQnlJZChkb2N1bWVudCwgaWQsIG9iamVjdCk7
CiAgICAgaWYgKHJlc291cmNlICYmIHJlc291cmNlLT5pc01hc2tlcigpKQogICAgICAgICByZXR1
cm4gc3RhdGljX2Nhc3Q8U1ZHUmVzb3VyY2VNYXNrZXIqPihyZXNvdXJjZSk7CiAKSW5kZXg6IFdl
YkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlTWFza2VyLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VNYXNrZXIuaAkocmV2aXNpb24gNTIyMjApCisr
KyBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZU1hc2tlci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yOSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKFNWRykKIAogI2luY2x1ZGUgIkdyYXBoaWNz
Q29udGV4dC5oIgorI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgogI2luY2x1ZGUgIlNWR1Jlc291
cmNlLmgiCiAKICNpbmNsdWRlIDxtZW1vcnk+CkBAIC02NCw3ICs2NSw3IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICAgICAgRmxvYXRSZWN0IG1fbWFza1JlY3Q7CiAgICAgfTsKIAotICAgIFNW
R1Jlc291cmNlTWFza2VyKiBnZXRNYXNrZXJCeUlkKERvY3VtZW50KiwgY29uc3QgQXRvbWljU3Ry
aW5nJik7CisgICAgU1ZHUmVzb3VyY2VNYXNrZXIqIGdldE1hc2tlckJ5SWQoRG9jdW1lbnQqLCBj
b25zdCBBdG9taWNTdHJpbmcmLCBjb25zdCBSZW5kZXJPYmplY3QqIG9iamVjdCk7CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKIApJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNTI1NzYpCisrKyBMYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOSBAQAorMjAwOS0xMi0y
NyAgRGlyayBTY2h1bHplICA8a3JpdEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNWRyBNYXNrIHJlc3VsdCB3cm9uZywgaWYgdHdv
IGRpZmZlcmVudCBvYmplY3RzIGNhbGwgdGhlIHNhbWUgbWFzayBpZAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzI3ODcKKworICAgICAgICBUd28gcmVj
dHMgd2l0aCBkaWZmZXJlbnQgc2l6ZXMgYW5kIHBvc2l0aW9ucyBjYWxsIHRoZSBzYW1lIG1hc2sg
aWQuIEJvdGgKKyAgICAgICAgcmVjdHMgc2hvdWxkIGJlIG1hc2tlZCB0byB0d28gY2lyY2xlcywg
ZGVwZW5kZW50IG9uIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZQorICAgICAgICByZWN0cy4KKworICAg
ICAgICAqIHBsYXRmb3JtL21hYy9zdmcvY3VzdG9tL21hc2stb24tbXVsdGlwbGUtb2JqZWN0cy1l
eHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0
b20vbWFzay1vbi1tdWx0aXBsZS1vYmplY3RzLWV4cGVjdGVkLnBuZzogQWRkZWQuCisgICAgICAg
ICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20vbWFzay1vbi1tdWx0aXBsZS1vYmplY3RzLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogc3ZnL2N1c3RvbS9tYXNrLW9uLW11bHRpcGxlLW9i
amVjdHMuc3ZnOiBBZGRlZC4KKwogMjAwOS0xMi0yNyAgUm9iZXJ0IEhvZ2FuICA8cm9iZXJ0QHJv
YmVydGhvZ2FuLm5ldD4KIAogICAgICAgICBSdWJiZXItc3RhbXBlZCBieSBTaW1vbiBIYXVzbWFu
bi4KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL21hc2stb24tbXVs
dGlwbGUtb2JqZWN0cy1leHBlY3RlZC5jaGVja3N1bQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9tYXNrLW9uLW11bHRpcGxlLW9iamVjdHMtZXhwZWN0
ZWQuY2hlY2tzdW0JKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3Zn
L2N1c3RvbS9tYXNrLW9uLW11bHRpcGxlLW9iamVjdHMtZXhwZWN0ZWQuY2hlY2tzdW0JKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEgQEAKKzBlNTRmNmY1Njc2YmM3MmNlNGIyYmFiNDRhNDc3MDQ2Clwg
Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L3N2Zy9jdXN0b20vbWFzay1vbi1tdWx0aXBsZS1vYmplY3RzLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9tYXNrLW9uLW11bHRp
cGxlLW9iamVjdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL3N2Zy9jdXN0b20vbWFzay1vbi1tdWx0aXBsZS1vYmplY3RzLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMCBAQAorS0NhbnZhc1Jlc291cmNlIHtpZD0ibWFz
ayIgW3R5cGU9TUFTS0VSXX0KK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJW
aWV3IGF0ICgwLDApIHNpemUgODAweDYwMAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisg
IFJlbmRlclNWR1Jvb3Qge3N2Z30gYXQgKDIwLDIwKSBzaXplIDIyMHgxMDAKKyAgICBSZW5kZXJT
VkdIaWRkZW5Db250YWluZXIge2RlZnN9IGF0ICgwLDApIHNpemUgMHgwCisgICAgICBSZW5kZXJT
VkdDb250YWluZXIge21hc2t9IGF0ICgwLDApIHNpemUgMXgxCisgICAgICAgIFJlbmRlclBhdGgg
e2NpcmNsZX0gYXQgKDAsMCkgc2l6ZSAxeDEgW2ZpbGw9e1t0eXBlPVNPTElEXSBbY29sb3I9I0ZG
RkZGRl19XSBbZGF0YT0iTTEuMDAsMC41MCBMMS4wMCwwLjUzIEwxLjAwLDAuNTYgTDAuOTksMC41
OSBMMC45OCwwLjYyIEwwLjk4LDAuNjUgTDAuOTYsMC42OCBMMC45NSwwLjcxIEwwLjk0LDAuNzQg
TDAuOTIsMC43NyBMMC45MCwwLjc5IEwwLjg5LDAuODIgTDAuODYsMC44NCBMMC44NCwwLjg2IEww
LjgyLDAuODkgTDAuNzksMC45MCBMMC43NywwLjkyIEwwLjc0LDAuOTQgTDAuNzEsMC45NSBMMC42
OCwwLjk2IEwwLjY1LDAuOTggTDAuNjIsMC45OCBMMC41OSwwLjk5IEwwLjU2LDEuMDAgTDAuNTMs
MS4wMCBMMC41MCwxLjAwIEwwLjQ3LDEuMDAgTDAuNDQsMS4wMCBMMC40MSwwLjk5IEwwLjM4LDAu
OTggTDAuMzUsMC45OCBMMC4zMiwwLjk2IEwwLjI5LDAuOTUgTDAuMjYsMC45NCBMMC4yMywwLjky
IEwwLjIxLDAuOTAgTDAuMTgsMC44OSBMMC4xNiwwLjg2IEwwLjE0LDAuODQgTDAuMTEsMC44MiBM
MC4xMCwwLjc5IEwwLjA4LDAuNzcgTDAuMDYsMC43NCBMMC4wNSwwLjcxIEwwLjA0LDAuNjggTDAu
MDIsMC42NSBMMC4wMiwwLjYyIEwwLjAxLDAuNTkgTDAuMDAsMC41NiBMMC4wMCwwLjUzIEwwLjAw
LDAuNTAgTDAuMDAsMC40NyBMMC4wMCwwLjQ0IEwwLjAxLDAuNDEgTDAuMDIsMC4zOCBMMC4wMiww
LjM1IEwwLjA0LDAuMzIgTDAuMDUsMC4yOSBMMC4wNiwwLjI2IEwwLjA4LDAuMjMgTDAuMTAsMC4y
MSBMMC4xMSwwLjE4IEwwLjE0LDAuMTYgTDAuMTYsMC4xNCBMMC4xOCwwLjExIEwwLjIxLDAuMTAg
TDAuMjMsMC4wOCBMMC4yNiwwLjA2IEwwLjI5LDAuMDUgTDAuMzIsMC4wNCBMMC4zNSwwLjAyIEww
LjM4LDAuMDIgTDAuNDEsMC4wMSBMMC40NCwwLjAwIEwwLjQ3LDAuMDAgTDAuNTAsMC4wMCBMMC41
MywwLjAwIEwwLjU2LDAuMDAgTDAuNTksMC4wMSBMMC42MiwwLjAyIEwwLjY1LDAuMDIgTDAuNjgs
MC4wNCBMMC43MSwwLjA1IEwwLjc0LDAuMDYgTDAuNzcsMC4wOCBMMC43OSwwLjEwIEwwLjgyLDAu
MTEgTDAuODQsMC4xNCBMMC44NiwwLjE2IEwwLjg5LDAuMTggTDAuOTAsMC4yMSBMMC45MiwwLjIz
IEwwLjk0LDAuMjYgTDAuOTUsMC4yOSBMMC45NiwwLjMyIEwwLjk4LDAuMzUgTDAuOTgsMC4zOCBM
MC45OSwwLjQxIEwxLjAwLDAuNDQgTDEuMDAsMC40NyBaIl0KKyAgICBSZW5kZXJQYXRoIHtyZWN0
fSBhdCAoMjAsMjApIHNpemUgMTAweDEwMCBbZmlsbD17W3R5cGU9U09MSURdIFtjb2xvcj0jMDA4
MDAwXX1dIFtkYXRhPSJNMjAuMDAsMjAuMDAgTDEyMC4wMCwyMC4wMCBMMTIwLjAwLDEyMC4wMCBM
MjAuMDAsMTIwLjAwIFoiXQorICAgIFJlbmRlclBhdGgge3JlY3R9IGF0ICgxNDAsNTApIHNpemUg
MTAweDQwIFtmaWxsPXtbdHlwZT1TT0xJRF0gW2NvbG9yPSMwMDgwMDBdfV0gW2RhdGE9Ik0xNDAu
MDAsNTAuMDAgTDI0MC4wMCw1MC4wMCBMMjQwLjAwLDkwLjAwIEwxNDAuMDAsOTAuMDAgWiJdCklu
ZGV4OiBMYXlvdXRUZXN0cy9zdmcvY3VzdG9tL21hc2stb24tbXVsdGlwbGUtb2JqZWN0cy5zdmcK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9tYXNrLW9uLW11bHRpcGxlLW9i
amVjdHMuc3ZnCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS9tYXNrLW9u
LW11bHRpcGxlLW9iamVjdHMuc3ZnCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEwIEBACis8c3Zn
IHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93
d3cudzMub3JnLzE5OTkveGxpbmsiPgorPGRlZnM+Cis8IS0tIFlvdSBzaG91bGQgc2VlIHR3byBj
aXJjbGVzIHdpdGggZGlmZmVyZW50IHNpemVzIC0tPgorPG1hc2sgaWQ9Im1hc2siIHg9IjAlIiB5
PSIwJSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgbWFza0NvbnRlbnRVbml0cz0ib2JqZWN0
Qm91bmRpbmdCb3giPgorICAgIDxjaXJjbGUgY3g9Ii41IiBjeT0iLjUiIHI9Ii41IiBmaWxsPSJ3
aGl0ZSIvPgorPC9tYXNrPgorPC9kZWZzPgorPHJlY3QgeD0iMjAiIHk9IjIwIiB3aWR0aD0iMTAw
IiBoZWlnaHQ9IjEwMCIgc3R5bGU9ImZpbGw6Z3JlZW47bWFzazp1cmwoI21hc2spOyIvPgorPHJl
Y3QgeD0iMTQwIiB5PSI1MCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI0MCIgc3R5bGU9ImZpbGw6Z3Jl
ZW47bWFzazp1cmwoI21hc2spOyIvPgorPC9zdmc+CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvc3ZnL2N1c3RvbS9tYXNrLW9uLW11bHRpcGxlLW9iamVjdHMtZXhwZWN0ZWQucG5nCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KQ2Fubm90IGRpc3BsYXk6IGZpbGUgbWFya2VkIGFzIGEgYmluYXJ5IHR5cGUuCnN2
bjptaW1lLXR5cGUgPSBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0KClByb3BlcnR5IGNoYW5nZXMg
b246IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL21hc2stb24tbXVsdGlwbGUt
b2JqZWN0cy1leHBlY3RlZC5wbmcKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOm1pbWUtdHlwZQogICAr
IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQoKCmlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUF5QUFB
QUpZQ0FZQUFBQ2Fkb0p3QUFBRE8ybERRMUJKUTBNZ1VISnZabWxzWlFBQWVBR0YKbEV0bzFGQVVo
ditNS1lLMGdxaTFGcFRnUW91MEpUN1FpbERiYWJYV2tYRVkrOUFpeURSelp4cE5NekdaR1IrSVNF
SGMrVnFLR3grSQppeXJpUXJwUWNLVUxrVUxyYTFFRWNhVWlpRUkzVXNiL0p1MU1LbFl2SlBseXpu
L1A2NFlBVlE5VGptTkZOR0RZenJ2SnJxaDI2UENBCnRuZ0NWYWhCTmJoU2h1ZTBKeEw3ZmFaV1B1
ZXY2YmRRcEdXeVNjYUs5UjJZK0xSdDlmMUxqMkx2NjU3MitwNzUrbmx2TlM0VEFvcEcKNjRwc3dG
c2xEd2E4Vi9MSnZKT241b2hrWXlpVkpqdmtScmNuMlVHK1FWNmFEZkZnaU5QQ000Q3FObXB5aHVN
eVRtUUZ1YVZvWkdYTQpVYkp1cDAyYlBDWHRhYzhZcG9iOVJuN0lXZERHbFk4QnJXdUFSUzhydGdF
UEdMMExyRnBmc1RYVUFTdjdnYkV0RmR2UHBEOGZwWGJjCnkyelo3SWRUcXFPczZVT3A5SE05c1Bn
YU1ITzFWUHAxcTFTYXVjMGNyT09aWlJUY29xOWxZY29ySUtnMzJNMzR5VGxhaUlPZWZGVUwKY0pO
ejdGOEN4QzRBMXo4Q0d4NEF5eDhEaVJxZ1p3Y2k1OWx1Y09YRktjNEY2TWc1cDEwek81VFhOdXY2
ZHEyZFJ5dTBidHRvYnRSUwpscVg1TGs5emhTZmNva2czWTlncWNNNytXc1o3dGJCN0QvTEovaUxu
aExkN2xwV1JkS3FUczBRejIvcVNGcDI3eVkza2V4bHpUemU1CmdkZFV4dDNURzdDeTBjeDM5d1Fj
NmJPdE9NOUZhaUoxOW1EOEFKbnhGZFhKUitVOEpJOTR4WU15cG04L2x0cVhJTmZUbmp5ZWkwbE4K
TGZlMm5SbnE0UmxKVnF3elF4M3hXWDd0RnBJeTd6cHE3amlXLzgyenRzaHpISVlGQVJNMjd6WTBK
TkdGS0pyZ3dFVU9HWHBNS2t4YQpwVi9RYXNMRDhiOHFMU1RLdXl3cXV2Q1plejc3ZTA2Z3dOMHlm
aCtpY1l3MGxpTm8ranY5bS81R3Y2bmYwYjllcVM4MFZEd2o3bEhUCkdMLzhuWEZsWmxtTmpCdlVL
T1BMbW9MNEJxdHRwOWRDbHRaaFhrRlBYbG5mRks0dVkxK3BMM3MwbVVOY2pFK0h1aFNoVEUwWVpE
eloKdGV5K1NMYjRKdng4YzlrV21oNjFMODQrcWF2a2VxT09IWm1zZm5FMlhBMXIvN09yWU5LeXEv
RGtqWkF1UEd1aHJsVTNxZDFxaTdvRAptcnBMYlZOYjFVNis3VlQzbDNmMGNsWW1Uckp1bDlXbjJJ
T04wL1JXVHJveVd3VC9GbjR4L0M5MUNWdTRwcUhKZjJqQ3pXVk1TL2lPCjRQWWZkMGo1TC93TkFZ
VVZEWHhMT3pzQUFDQUFTVVJCVkhnQjdkMS9yTlgxZmZqeDE0VUxvbEF1cUJkSTVZZUtJQllRbGln
VHd5SkwKYlVVWFI3cWx6V3dsUnI3NWZqUG1tdEQyKzBlM3BmNVJzOWcvMW82a3N5elo5NHN6YUYx
c3RvWTJGV3hacXB0UlEwMEtBb3FnVm43WQpBVmVGZXd0NmhRdjM2L3NzOU1zNnNRam52TTc1blBz
NDVnYTlQODdyODNsOFhrMTQ5dHh6VHNmZys3ZHdJMENBQUFFQ0JBZ1FJRUNBClFJTEFzSVFaUmhB
Z1FJQUFBUUlFQ0JBZ1FLQW1JRUFzQWdFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFB
QVFJRUJJZ2QKSUVDQUFBRUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUVDQkFnUUlDQUFMRURCQWdR
SUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQQpBUUlFQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUw
QVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTCnFBMGlRSUFB
QVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FP
MENBQUFFQ0JBZ1EKSUVDQVFKcUFBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUNC
QWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEcwpBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJ
QUlFQ0JBZ1FJQUFBUUlFT29jYVFjL1JudGplc3oxMnZMa2pYdXA1S2ZiMTdZdjlSL2JYClB2cmU2
NHYrZ2Y3YVIzRVoxVG1xOWpIMmdyRXhhY3lrMnNlVXJpa3g2OUpadFkvWjNiT2plM1QzVUNOMHZn
UUlFQ0JBZ0FBQkFnVE8KV2FCajhQM2JPZjkwQlg1d1QrK2VXTDlyZlR5OTUrbDRkdCt6OGVxaFYr
dDYxTlBIVDQrRmt4ZkdvcW1MNHRZWnQ4YlVycWwxdlg5MwpSb0FBQVFJRUNCQWdRS0NkQk5veVFM
WWQzQmFQdlBCSS9IRG5EMnVQZG1SZXNQS295TzB6YjQ4dlhQdUZtRE5oVHVab3N3Z1FJRUNBCkFB
RUNCQWkwdkVEYkJFaHZmMitzK2ZtYWVHakxRN0hsd0phV2dKODNjVjdjTmUrdVdQNDd5Nk5yVkZk
TEhKT0RJRUNBQUFFQ0JBZ1EKSU5CTWdjb0h5SzYzZHNXcTUxYlZ3dVBvOGFQTnREemo3TkVqUnRk
Q1pPVU5LMlBHSlRQTytIMitRSUFBQVFJRUNCQWdRS0RkQlNvYgpJSzhkZWkzdWUrcStXUHZDMmpn
eGVLSVMxMmw0eC9CWWR1MnkrTnBOWDRzcngxOVppV04ya0FRSUVDQkFnQUFCQWdUcUtWQzVBRG5j
CmZ6anUvZW05c2ZwbnEyTmdjS0NlRm1uMzFkblJHU3V1WHhGZi8vMnZ4N2hSNDlMbUdrU0FBQUVD
QkFnUUlFQ2cyUUtWQ1pEeVlsMFAKYm40d3ZycnhxOUh6VGsrejNlb3l2L3VpN3ZqR3pkK0l1K2Zm
SFIwZEhYVzVUM2RDZ0FBQkFnUUlFQ0JBb0pVRktoRWdlM3YzeHZKMQp5MlBqTHphMnN1VTVIOXZO
Vjl3Y2E1YXVpZkllSTI0RUNCQWdRSUFBQVFJRTJsbWc1UU9rdkp6dVBZL2ZFNzN2OWJiemRZaXVD
N3JpCmdkc2VxTDE4YjF1ZnFKTWpRSUFBQVFJRUNCQVkwZ0l0R3lESFRoeUxsUnRXeHVyblZ3K3BD
N1RpdWhXeGFzbXFHRGw4NUpBNmJ5ZEwKZ0FBQkFnUUlFQ0F3TkFSYU1rRDJIOWtmU3g5ZEdwdCt1
V2xvWElYZk9Nc0ZIMThRNis1WUY1UEdUUHFOci9oUEFnUUlFQ0JBZ0FBQgpBdFVXYUxrQTJmSG1q
cmoxNFZ2ajlkN1hxeTE3bmtkL2VkZmxzZjdPOVRIcjBsbm5lVTkrbkFBQkFnUUlFQ0JBZ0VEckNM
UlVnRHk3Cjk5bjRnKy8rUVJ6cVA5UTZRazA4a3ZHanhzZVBQditqV0RobFlST1B3bWdDQkFnUUlF
Q0FBQUVDOVJOb21RQjVadTh6c2VUaEpmR3IKWTcrcTM5bTF3VDE5Yk9USFlzT2RHK0xHS1RlMndk
azRCUUlFQ0JBZ1FJQUFnYUV1MEJJQlVoNzV1T1hoVzhUSEdiYXhSTWdUZHo3aAprWkF6K1BnMEFR
SUVDQkFnUUlCQWRRU2FIaURsT1I4My90OGIvZHJWYjltWjh1dFl6L3lQWnp3bjVMYzQrVElCQWdR
SUVDQkFnRUJyCkN3eHI1dUdWVjdzcXYzYmxPUisvL1NvVW8vTGsvR0xtUm9BQUFRSUVDQkFnUUtD
cUFrMExrUEkrSCtXbGRuZjM3cTZxWGZweGwxY0cKSzJiRnpvMEFBUUlFQ0JBZ1FJQkFGUVdhRmlE
bFRRYUg2dnQ4bk0raUZMTmk1MGFBQUFFQ0JBZ1FJRUNnaWdKTkNaQkhYbmhreUwzRAplVDJYbzd3
N2ZERjBJMENBQUFFQ0JBZ1FJRkExZ2ZRbm9lL3QzUnR6VjgrTjN2ZDZxMmJWVXNmYmRVRlhiRjJ4
TmFaMFRXbXA0M0l3CkJBZ1FJRUNBQUFFQ0JENU1JUFVSa01IQndWaSticm40K0xBcmNwWmZLd0ZY
TEl1cEd3RUNCQWdRSUVDQUFJR3FDS1FHeUpxZnI0bU4KdjloWUZadVdQODVpV1V6ZENCQWdRSUFB
QVFJRUNGUkZJTzFYc0E3M0g0NlozNTRaUGUvMFZNV21Fc2ZaZlZGMzdQeml6aGczYWx3bApqdGRC
RWlCQWdBQUJBZ1FJREcyQnRFZEE3djNwdmVLakFidFdncTdZdWhFZ1FJQUFBUUlFQ0JDb2drREtJ
eUN2SFhvdHJ2NzIxVEV3Ck9GQUZrOG9kWTJkSFo3ejh4WmZqeXZGWFZ1N1lIVEFCQWdRSUVDQkFn
TURRRWtoNUJPUytwKzRUSHczY3F4SjJ4ZGlOQUFFQ0JBZ1EKSUVDQVFLc0xOUHdSa0YxdjdZcHJI
cmdtVGd5ZWFIV0xTaC9mOEk3aDhkSTlMOFdNUzJaVStqd2NQQUVDQkFnUUlFQ0FRSHNMTlB3Ugpr
RlhQclJJZkNUdFVBcTlZdXhFZ1FJQUFBUUlFQ0JCb1pZR0dQZ0xTMjk4YmwzM3Jzamg2L0dnckc3
VE5zWTBlTVRyZStQSWIwVFdxCnEyM082VXduY3Z6RThkalh0eS8yOU82SnZYMTdZLytSL1hIZ3lJ
RTRlUFJndlAzdTIxRmVkYTE4SERsMkpONGRlRGZlT2Y1T2xKOFoKT0RudzZ5QXVqeHAxRHV1TUVj
Tkh4RVVqTG9vTE95K01NU1BIMUY1UnJMeXEyTVVYWGh3VFJrK0lpV01teHFReGsyTEsyQ2t4dFd0
cQpUQjQ3dWZZelp6bzJueWRBZ0FBQkFnUUlFRGl6UU9lWnYzVCtYeW52VVNFK3p0L3hiTytoV0Jm
ekx5MzgwdG4rU010L1g5OTdmYkgxCndOYllkbkJiN1dQbld6dGoxOXU3WXZmaDNYSHkvWC9PNTFh
ZU96TndZaUQ2VC9USHI0Nzk2cXp2YWxnTWkybmpwc1dNaTJmRXpFdG0KeHB3SmMyb2ZjeWZPamJF
WGpEM3IrL0dOQkFnUUlFQ0FBSUdoS05EUVIwRG0vLzM4MkhKZ3kxQjBiZG81ejVzNEx6Yi82ZWFt
elQrZgp3U2NIVDhhVy9Wdmk2VDFQeDNQN25vdm5mL2w4TFRZR294cnY5dDRSSGJVb3VlN2oxOFVO
azIrSVJWTVh4YnhKODJKWVI4Ti8wL0Y4CjJQMHNBUUlFQ0JBZ1FDQlZvR0VCVXY0ZjY3bXI1NmFl
akdIL0tiQjF4ZGJhL3lOZkJZOVgzbjRsTnJ5eUlYN3k2ay9peWRlZmpMNWoKZlZVNDdMTSt4ckVq
eDhiaXl4ZkhwNlovS3BaY3RTU3V1dmlxcy81WjMwaUFBQUVDQkFnUWFFZUJodjBLMWlNdlBOS09Y
cFU0cDJKLwovODMzdCt5eGJ0Ni9PUjdiL2xpczI3RXVYbnp6eFpZOXpub2NXQW1xSCt6OFFlMmoz
TjhuTHYxRUxKMjFORDQzKzNNeGY5TDhlb3h3Ckh3UUlFQ0JBZ0FDQlNnazA3QkdRT2QrWkU5dDd0
bGNLbzEwT2RuYjM3TmoyWjl0YTZuVEtFOFFmM1B4Z3JOMnl0dTJqNDJ6aFM0d3MKbTdjczdwNS9k
KzJKN21mN2M3NlBBQUVDQkFnUUlGQmxnWVlFU0hsbG9tbXJwbFhacGZMSHZudmw3dG9yTmpYN1JE
YTlzU20rK2N3Mwo0L3M3dmgvSFR4NXY5dUcwNVB3UncwYkVaMlo5SnI1eTQxZGl3V1VMV3ZJWUhS
UUJBZ1FJRUNCQW9GNENEWGwyN1BwZDYrdDFmTzduCkhBV2FmUTJlZXYycFdQeVBpK04zLzgvdnht
TXZQaVkrUHVRNmxqQXJSc1dxbVAzYjduLzdrTy8ySlFJRUNCQWdRSUJBdFFVYUVpRGwKVll6Y21p
dlFyR3V3NDgwZHNlVGhKYkg0b2NYeDFPNm5tb3RRd2VuRjdLWi92S2xtV0N6ZENCQWdRSUFBQVFM
dEp0Q1FBSGwyMzdQdAo1bFM1ODhtK0JzZE9ISXUvK3RlL2ltdFhYeHRQdlBwRTVieGE3WUNMWWJF
c3BzWFdqUUFCQWdRSUVDRFFMZ0oxZnc1SXo5R2VtUEEzCkU5ckZwOUxuY2ZCL0g0enUwZDBOUDRl
WDMzdzVQdnU5ejhiV2cxc2JQbXNvRHBnN1lXNTg3N1BmaTZzdnZYb29ucjV6SmtDQUFBRUMKQk5w
TW9PNlBnSGpscTliWmtJeHI4Zml1eDJQQlB5d1FIdzI4N0NYc2luR3hkaU5BZ0FBQkFnUUlWRjJn
N2dIeVVzOUxWVGRwbStOdgo5TFg0cDIzL0ZFc2ZYZHAyYng3WWlndFEzaytrV0Jkek53SUVDQkFn
UUlCQWxRWHFIaUNlT05zNjY5RElhMUhldlh6WnZ5eUxnY0dCCjFqbmhOaitTWWwzTW4zakZjMnph
L0ZJN1BRSUVDQkFnME5ZQ2RRK1FmWDM3Mmhxc1NpZlhxR3V4dDNkdmZQNmZQeTgrbXJBTUpVTHUK
K09jN29sd0ROd0lFQ0JBZ1FJQkFGUVhxSGlEN2oreXZva05iSG5PanJzV2ZQLzduY2FqL1VGdWFW
ZUdraW4yNUJtNEVDQkFnUUlBQQpnU29LMUQxQS91UElmMVRSb1MyUHVSRUI4ck0zZmhZLzJQbUR0
dlNxMGttVmExQ3VoUnNCQWdRSUVDQkFvR29DZFErUXZ2ZjZxbWJRCnRzZmIrMTV2M2MvdHdjMFAx
djArM2VHNUNiZ1c1K2JtcHdnUUlFQ0FBSUhtQ3RROVFQb0grcHQ3UnFiL1dxQVIxK0xKMTUvODlm
MzcKbCtZS3VCYk45VGVkQUFFQ0JBZ1FPRGNCQVhKdWJwWDRxVVlFeU83RHV5dHg3a1BoSUYyTG9Y
Q1ZuU01CQWdRSUVHZy9nYm9IU0VkMAp0SjlTUmMvSXRham9oWFBZQkFnUUlFQ0FBSUUyRnFoN2dJ
enFITlhHWE5VNnRVWmNpMm5qcGxVTG9ZMlAxclZvNDR2cjFBZ1FJRUNBClFCc0xDSkEydnJpTkNK
REZseTl1WTdGcW5acHJVYTNyNVdnSkVDQkFnQUNCL3hTb2U0Q012V0FzMnhZUmFNUzF1SHYrM1Mx
eWRnN0QKdGJBREJBZ1FJRUNBUUJVRjZoNGdrOFpNcXFKRFd4NXpJNjdGOVpkZEgzODQ4dy9iMHF0
S0oxV3VRYmtXYmdRSUVDQkFnQUNCcWdrSQprS3Bkc1k5d3ZJMElrREwrNzI3N3V4Zy9hdnhIT0JM
ZldrK0JZbCt1Z1JzQkFnUUlFQ0JBb0lvQ2RRK1F5V01uVjlHaExZOTVTdGVVCmhweFh1ZC92L3ZG
M283T2pzeUgzNzA3UExGRE1ILzNqUjZOUjEvYk1rMzJGQUFFQ0JBZ1FJRkFmZ2JvSHlLeExaOVhu
eU56TGVRczAKOGxvc3VXcEpyUDJqdFNMa3ZLL1MyZDlCaVk5aWZzdFZ0NXo5RC9sT0FnUUlFQ0JB
Z0VDTENkUTlRSzdwdnFiRlRuSG9IazRqQTZTbwovc21jUDRsMWQ2eUxzU085OEVDanQ2d1lGK3Rp
N2thQUFBRUNCQWdRcUxKQTNRTmtkdmZzS251MDFiRm5YSXZiWnR3V20vN25wcGc3CllXNWIyYlhT
eVJUYllseXMzUWdRSUVDQUFBRUNWUmVvZTRCMGorNk82ZU9uVjkybDhzZGZya0c1RmhtM3F5KzlP
cDcvWDgvSFh5NzYKeXhneGJFVEd5Q0V4bzFnVzAySmJqTjBJRUNCQWdBQUJBdTBnVVBjQUtTZ0xK
eTlzQjV0S24wUDJOUmc1ZkdUODlTZi9PbDVZOFVMYwpNdDF6Rk01M2VZcGhzU3lteGRhTkFBRUNC
QWdRSU5BdUFnMEprRVZURjdXTFQyWFBvMW5Yb0R6dlpNT2RHK0xKdTU2TW02YmRWRm0vClpoMTRN
U3QyeGJEUnorRnAxam1hUzRBQUFRSUVDQXh0Z1k3QjkyLzFKdGpUdXllbXJacFc3N3QxZng5QllQ
ZkszVEcxYStwSCtJbkcKZk91bU56YkZONS81Wm54L3gvZmorTW5qalJsUzhYc3R2MnIxbVZtZmlh
L2MrSlZZY05tQ2lwK053eWRBZ0FBQkFnUUlmTGhBUXdLawpqSnp6blRteHZXZjdoMC8zMVlZSWxD
ZWZiL3V6YlEyNTczTzkwd05IRHNTRG14K010VnZXeG90dnZuaXVkOU5XUC9lSlN6OFJ5K1l0Cmk3
dm4zeDBUeDB4c3EzTnpNZ1FJRUNCQWdBQ0JNd2swN0oza2JwOTV1d0E1azNxRFAxL3NXKzFXL29M
OTFVVmZyWDFzM3I4NUh0disKV0t6YnNXN0l4VWlKanFXemxzYm5abjh1NWsrYTMycVh5ZkVRSUVD
QUFBRUNCQm91MExCSFFMWWQzQlp6VjN0cDFvWmZ3UThZc0hYRgoxcGd6WWM0SGZLWDFQdlhLMjYv
RWhsYzJ4RTllL1VrOCtmcVQwWGVzci9VTzhqeU9xTHgveCtMTEY4ZW5wbjhxeXBzM1huWHhWZWR4
CmIzNlVBQUVDQkFnUUlGQjlnWVlGU0tHWi8vZnpZOHVCTGRWWHF0QVp6SnM0THpiLzZlWUtIZkgv
UDlTVGd5ZGp5LzR0OGZTZXArTzUKZmMvRjg3OThQbmE5dlNzRzMvK25DcmVPNklnWkY4K0k2ejUr
WGR3dytZWW9Md1F3YjlLOEdOYlJrTmQ2cUFLSll5UkFnQUFCQWdRSQovRGVCaGdiSTN6Nzd0L0hs
SDMvNXZ3MzFpY1lKZk92VDM0b3ZMZnhTNHdZazMzUGZlMzJ4OWNEVzJIcHdhMncvdUQxMnZyV3pG
aVc3CkQrK09rKy8vMDR6YnNCZ1cwOFpOcThYR3pFdG14dXdKczJ0dnhEaDM0dHdZZTRGM2hXL0dO
VEdUQUFFQ0JBZ1FxSTVBUXdPa3Q3ODMKTHZ2V1pYSDArTkhxaUZUNFNFZVBHQjF2ZlBtTjZCclZW
ZUd6T0x0RFAzYmlXTHpSOTBhVVYxemIyN2MzOWgvWkgrV0o3Z2VQSG95MwozMzA3RHZjZnJuMGNP
WFlrM2gxNE45NDUvazZVbnpseDhrU2NHRHhSR3pLOFkzZ01IemE4OWo0YkY0MjRLQzdzdkRER2pC
d1Q0MGFOCnEzMWNmT0hGTVdIMGhOb1R4Q2VObVJSVHhrNnB2YkxZNUxHVFk4UndiN2g0ZGxmS2R4
RWdRSUFBQVFJRS9xdEF3NTZFWHNhVXZ3amYKTmUrdStNN3ozL212VS8xWFF3U0s5VkNJajRKWDNw
enZpdkZYMUQ0YWd1bE9DUkFnUUlBQUFRSUVHaUxROEY5T1gzbkR5aWovVDdOYgpZd1dLY2JGMkkw
Q0FBQUVDQkFnUUlOREtBZzBQa0JtWHpJaGwxeTVyWllPMk9MWmlYS3pkQ0JBZ1FJQUFBUUlFQ0xT
eVFFT2ZBM0xxCnhGODc5RnBjL2UyclkyQnc0TlNuL0ZsSGdjNk96bmo1aXkvSGxlT3ZyT085dWlz
Q0JBZ1FJRUNBQUFFQzlSZG8rQ01nNVpETFg0eFgKWEwraS9rZnZIbXNDeFZaOFdBWUNCQWdRSUVD
QUFJRXFDS1E4QWxJZ3lxc1N6Znoyek9oNXA2Y0tMcFU1eHU2THVtUG5GM2ZXWHJXcApNZ2Z0UUFr
UUlFQ0FBQUVDQklhc1FNb2pJRVczdkxUcC9aKzhmOGhDTityRXYzSHpOOFJIbzNEZEx3RUNCQWdR
SUVDQVFOMEYwaDRCCktVYytPRGdZbjE3NzZkajRpNDExUDVHaGVJYzNYM0Z6L0hqWmo2T2pvMk1v
bnI1ekprQ0FBQUVDQkFnUXFLQkFhb0FVbjcyOWUyUHUKNnJuUisxNXZCYmxhNTVDN0x1aUtyU3Uy
eHBTdUthMXpVSTZFQUFFQ0JBZ1FJRUNBd0c4UlNQc1ZyRlBIVWY3Qy9NQnRENXo2VDMrZQpvMEF4
RkIvbmlPZkhDQkFnUUlBQUFRSUVtaWFRSGlEbFRMOXc3UmRpeFhWZUZldGNyM3F4SzRadUJBZ1FJ
RUNBQUFFQ0JLb21rUDRyCldLZUFqcDA0RnIrMzV2ZGkweTgzbmZxVVA4OUNZTUhIRjhTL0wvLzNH
RGw4NUZsOHQyOGhRSUFBQVFJRUNCQWcwRm9DVFhrRXBCQ1UKdjBDdnUyTmRYTjUxZVd1SnRQRFJG
S3RpSmo1YStDSTVOQUlFQ0JBZ1FJQUFnUThWYUZxQWxLT2FOR1pTckw5emZZd2ZOZjVERDlJWApv
MlpVcklxWkd3RUNCQWdRSUVDQUFJR3FDalExUUFyYXJFdG54WTgrLzZQNDJNaVBWZFd3NGNkZGJJ
cFJzWElqUUlBQUFRSUVDQkFnClVHV0JwZ2RJd1ZzNFpXRnN1SE9EQ1BtQVRTcnhVV3lLa1JzQkFn
UUlFQ0JBZ0FDQnFndTBSSUFVeEJ1bjNCaFAzUG1FWDhjNmJhUEsKcjZZVmsyTGpSb0FBQVFJRUNC
QWdRS0FkQkpyMktsaG53dHZ4NW81WTh2Q1MyTjI3KzB6Zk1pUStQNjFyV3UyUkQ3OTJOU1F1dDVN
awpRSUFBQVFJRUNBd1pnWllMa0NLLy84aitXUHJvMGlIN0VyM2xwWGJMcTExNXd2bVErZCtoRXlW
QWdBQUJBZ1FJREJtQmx2a1ZyTlBGCnkxKzh5M3RkRE1VM0t5em5YTTVkZkp5K0VmNmRBQUVDQkFn
UUlFQ2dYUVJhOGhHUTAzRWZlZUdSdU9meGU2TDN2ZDdUUDkxMi85NTEKUVZjOGNOc0QzdUc4N2E2
c0V5SkFnQUFCQWdRSUVEaGRvT1VEcEJ6czN0NjlzWHpkOHRqNGk0Mm5IM3ZiL1B2TlY5d2NhNWF1
aVNsZApVOXJtbkp3SUFRSUVDQkFnUUlBQWdROFNxRVNBbEFNZkhCeU1OVDlmRTMveHIzOFJQZS8w
Zk5DNVZPNXozUmQxeC8yZnZEK1cvODd5CjZPam9xTnp4TzJBQ0JBZ1FJRUNBQUFFQ0gxV2dNZ0Z5
NnNRTzl4K09lMzk2YjZ6KzJlb1lHQnc0OWVsSy9kblowUmtycmw4UlgvLzkKcjhlNFVlTXFkZXdP
bGdBQkFnUUlFQ0JBZ01ENUNGUXVRRTZkN0d1SFhvdjducm92MXI2d05rNE1uamoxNlpiK2Mzakg4
RmgyN2JMNAoyazFmaXl2SFg5blN4K3JnQ0JBZ1FJQUFBUUlFQ0RSQ29MSUJjZ3BqMTF1N1l0Vnpx
K0toTFEvRjBlTkhUMzI2cGY0Y1BXSjAzRFh2CnJsaDV3OHFZY2NtTWxqbzJCME9BQUFFQ0JBZ1FJ
RUFnVTZEeUFYSUtxN2UvdC9ZY2tSSWlXdzVzT2ZYcHB2NDViK0s4V25pVTUzaDAKamVwcTZyRVlU
b0FBQVFJRUNCQWdRS0FWQk5vbVFFN0gzSFp3VzVTWDcvM2h6aC9HOXA3dHAzK3A0ZjgrdTN0MjNE
N3o5dHJMNmM2WgpNS2ZoOHd3Z1FJQUFBUUlFQ0JBZ1VDV0J0Z3lRMHkvQW50NDlzWDdYK25oNno5
UHg3TDVuNDlWRHI1Nys1ZlArOStuanA4ZkN5UXRqCjBkUkZjZXVNVzJOcTE5VHp2azkzUUlBQUFR
SUVDQkFnUUtCZEJkbytRSDd6d3ZVYzdhazlLdkpTejB1eDQ4MGRzYTl2WCt3L3NyLzIKVWQ3c3NI
K2d2L1pSZm01VTU2amFSM21Ud1BMTzVPVmo4dGpKTWV2U1dYRk45elZSSHUzb0h0MzlteVA4TndF
Q0JBZ1FJRUNBQUFFQwpaeEFZY2dGeUJnZWZKa0NBQUFFQ0JBZ1FJRUFnUVdCWXdnd2pDQkFnUUlB
QUFRSUVDQkFnVUJNUUlCYUJBQUVDQkFnUUlFQ0FBSUUwCkFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJ
Q3hBNFFJRUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBQVFJRUNCQWdRRUNBMkFFQ0JBZ1EKSUVD
QUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUNCQWdRSUVDQVFKcUFBRW1q
Tm9nQUFRSUVDQkFnUUlBQQpBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlF
Q0JBZ0lFRHNBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFCkNCQWdRSUFBQVFJRUJJZ2RJRUNB
QUFFQ0JBZ1FJRUFnVFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWsK
Q1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUUFRSUVD
QkFnUUlBQUFRSUN4QTRRSUVDQQpBQUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0Ey
QUVDQkFnUUlFQ0FBQUVDQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFCkNBZ1FPMENBQUFFQ0JBZ1FJ
RUNBUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RSUduVUJo
RWcKUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFR
SUVCSWdkSUVDQUFBRUNCQWdRSUVBZwpUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlF
Q0FBQUVDQkFpa0NRaVFOR3FEQ0JBZ1FJQUFBUUlFQ0JBUUlIYUFBQUVDCkJBZ1FJRUNBQUlFMEFR
R1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBQVFJ
RUNCQWcKUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBD
QUFBRUNCQWdRSUVDQVFKcUFBRW1qTm9nQQpBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFn
UVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZ0lFRHNBQUVDQkFnUUlFQ0FBQUVDCmFRSUNKSTNhSUFJ
RUNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNB
QUxFREJBZ1EKSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdR
SUVDQUFJRTBBUUdTUm0wUUFRSUVDQkFnUUlBQQpBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURT
cUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVDQk5JRUJFZ2F0VUVFCkNCQWdRSUFB
QVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJ
RUNBQUFFQ0JBZ1EKU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNh
UUlDSkkzYUlBSUVDQkFnUUlBQUFRSUVCSWdkSUVDQQpBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFB
UUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FEQ0JBZ1FJQUFBUUlFCkNCQVFJ
SGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBQUFFQ0JB
Z1FJSkFtSUVEU3FBMGkKUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRV
RUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUNCQWdRSUVDQQpRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJ
QUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZ0lFRHNBQUVDCkJB
Z1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnVFVD
QXBGRWJSSUFBQVFJRUNCQWcKUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlB
QUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUQpBUUlFQ0JBZ1FJQUFBUUlDeEE0
UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVD
CkJOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dB
QVFJRUNCQWdRSUFBQVFGaUJ3Z1EKSUVDQUFBRUNCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFn
SUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQQpBUUlFQklnZElFQ0FBQUVD
QkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVFO
R3FECkNCQWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdR
SUFBQVFJQ3hBNFFJRUNBQUFFQ0JBZ1EKSUpBbUlFRFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNC
QWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQQpBQUVDQkFnUUlFQ0FR
SnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJ
QUFBUUlFCkNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJ
Z2RJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBGRWIKUklBQUFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFB
RUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQQpBSUUwQVFHU1Jt
MFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JB
Z1FFQ0EyQUVDCkJBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFF
Q0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNCQWcKUUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRU0JN
UUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYQpJQUlFQ0JB
Z1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVE
QkFnUUlFQ0FBQUVDCkJBaWtDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNB
QUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFEKSUVDQUFBRUNCQWdRSUpBbUlFRFNxQTBp
UUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQQpBUUlF
Q0FnUU8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FB
QUVDQkFnUVNCTVFJR25VCkJoRWdRSUFBQVFJRVd0SGhOd0FBRmJSSlJFRlVDQkFnSUVEc0FBRUNC
QWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFRSUUKQklnZElFQ0FBQUVDQkFnUUlFQWdU
VUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FEQ0JBZwpR
SUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hB
NFFJRUNBQUFFQ0JBZ1FJSkFtCklFRFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFB
RUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUMKQkFnUUlFQ0FRSnFBQUVtak5v
Z0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JB
ZwpJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFF
Q0JBZ1FJRUFnVFVDQXBGRWJSSUFBCkFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlrQ1Fp
UU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJRTAKQVFHU1JtMFFBUUlFQ0JB
Z1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVD
QkFnUQpJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNB
UUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBCkFRRmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblVCaEVn
UUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUUKQ0JBZ1FJQUFBUUlF
QklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FB
QUVDQkFpawpDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NS
bTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBCkFBRUNCQWdRSUpBbUlFRFNxQTBpUUlBQUFRSUVD
QkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUUKQ0FnUU8wQ0FB
QUVDQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNC
TVFJR25VQmhFZwpRSUFBQVFJRUNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNC
QWdRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnClRVQ0FwRkViUklBQUFRSUVDQkFnUUlDQUFM
RURCQWdRSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUMKQkFnUUlF
Q0FBSUUwQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEw
aVFJQUFBUUlFQ0JBZwpRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJ
RUNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBCkFRSUVDQkFnUUlBQUFRRmlCd2dRSUVD
QUFBRUNCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUMKYVFJ
Q0pJM2FJQUlFQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlF
Q0JBZ1FJQ0FBTEVEQkFnUQpJRUNBQUFFQ0JBaWtDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJSGFB
QUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBCkFRSUN4QTRRSUVDQUFBRUNCQWdR
SUpBbUlFRFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUUK
Q0JBZ1FJQUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFB
UUZpQndnUUlFQ0FBQUVDQkFnUQpTQk1RSUduVUJoRWdRSUFBQVFJRUNCQWdJRURzQUFFQ0JBZ1FJ
RUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNBCkFBRUNCQWdRSUVBZ1RVQ0Fw
RkViUklBQUFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFR
SUUKQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlF
Q0FBQUVDQkFnUUlKQW1JRURTcUEwaQpRSUFBQVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JO
SUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBClFKcUFBRW1qTm9nQUFR
SUVDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVE
c0FBRUMKQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFn
UUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JBZwpRSUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWtDUWlRTkdx
RENCQWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRCkFRSUVDQkFnUUlB
QUFRSUN4QTRRSUVDQUFBRUNCQWdRSUpBbUlFRFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdR
SUVDQUFBRUMKQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUUlFQ0FRSnFB
QUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUQpJRUNBQUFFQ0JBZ1FTQk1RSUduVUJoRWdRSUFB
QVFJRUNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBCkFRSUVCSWdk
SUVDQUFBRUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUNC
QWlrQ1FpUU5HcUQKQ0JBZ1FJQUFBUUlFQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFHU1JtMFFB
UUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUQpJSkFtSUVEU3FBMGlRSUFBQVFJRUNCQWdR
RUNBMkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBCkFBRUNC
QWdRSUVDQVFKcUFBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlH
blVCaEVnUUlBQUFRSUUKQ0JBZ0lFRHNBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFQ0JBZ1FJ
QUFBUUlFQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYgpSSUFBQVFJRUNCQWdRSUNBQUxFREJB
Z1FJRUNBQUFFQ0JBaWtDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBCkFJ
RTBBUUdTUm0wUUFRSUVDQkFnUUlBQUFRSUN4QTRRSUVDQUFBRUNCQWdRSUpBbUlFRFNxQTBpUUlB
QUFRSUVDQkFnUUVDQTJBRUMKQkFnUUlFQ0FBQUVDQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFQ0Fn
UU8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZwpRSUFBQVFGaUJ3Z1FJRUNBQUFF
Q0JBZ1FTQk1RSUduVUJoRWdRSUFBQVFJRUNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNh
CklBSUVDQkFnUUlBQUFRSUVCSWdkSUVDQUFBRUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUVDQkFn
UUlDQUFMRURCQWdRSUVDQUFBRUMKQkFpa0NRaVFOR3FEQ0JBZ1FJQUFBUUlFQ0JBUUlIYUFBQUVD
QkFnUUlFQ0FBSUUwQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UQpJRUNBQUFFQ0JBZ1FJSkFt
SUVEU3FBMGlRSUFBQVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdR
SUFBCkFRSUVDQWdRTzBDQUFBRUNCQWdRSUVDQVFKcUFBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmlC
d2dRSUVDQUFBRUNCQWdRU0JNUUlHblUKQmhFZ1FJQUFBUUlFQ0JBZ0lFRHNBQUVDQkFnUUlFQ0FB
QUVDYVFJQ0pJM2FJQUlFQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUQpJRUFnVFVDQXBGRWJS
SUFBQVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWtDUWlRTkdxRENCQWdRSUFBQVFJRUNC
QVFJSGFBCkFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUUFRSUVDQkFnUUlBQUFRSUN4QTRRSUVDQUFB
RUNCQWdRSUpBbUlFRFNxQTBpUUlBQUFRSUUKQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVDQk5JRUJF
Z2F0VUVFQ0JBZ1FJQUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVtagpOb2dBQVFJRUNC
QWdRSUFBQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RSUduVUJoRWdRSUFBQVFJRUNCQWdJRURzQUFF
Q0JBZ1FJRUNBCkFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFRSUVCSWdkSUVDQUFBRUNCQWdRSUVB
Z1RVQ0FwRkViUklBQUFRSUVDQkFnUUlDQUFMRUQKQkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FEQ0JB
Z1FJQUFBUUlFQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFHU1JtMFFBUUlFQ0JBZwpRSUFBQVFJ
Q3hBNFFJRUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBQVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNB
QUFFQ0JOSUVCRWdhCnRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUNCQWdRSUVDQVFKcUFBRW1q
Tm9nQUFRSUVDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUMKQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlF
Q0JBZ0lFRHNBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFQ0JBZ1FJQUFBUUlFQklnZApJRUNB
QUFFQ0JBZ1FJRUFnVFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWtD
UWlRTkdxRENCQWdRSUFBCkFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUUFRSUVD
QkFnUUlBQUFRSUN4QTRRSUVDQUFBRUNCQWdRSUpBbUlFRFMKcUEwaVFJQUFBUUlFQ0JBZ1FFQ0Ey
QUVDQkFnUUlFQ0FBQUVDQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUQpJ
RUNBUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RSUduVUJo
RWdRSUFBQVFJRUNCQWdJRURzCkFBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFR
SUVCSWdkSUVDQUFBRUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUUKQ0JBZ1FJQ0FBTEVEQkFnUUlF
Q0FBQUVDQkFpa0NRaVFOR3FEQ0JBZ1FJQUFBUUlFQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFH
UwpSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBQVFJ
RUNCQWdRRUNBMkFFQ0JBZ1FJRUNBCkFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBD
QUFBRUNCQWdRSUVDQVFKcUFBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmkKQndnUUlFQ0FBQUVDQkFn
UVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZ0lFRHNBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlF
Q0JBZwpRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNB
QUxFREJBZ1FJRUNBQUFFQ0JBaWtDUWlRCk5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdR
SUVDQUFJRTBBUUdTUm0wUUFRSUVDQkFnUUlBQUFRSUN4QTRRSUVDQUFBRUMKQkFnUUlKQW1JRURT
cUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVDQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFB
UUlFQ0FnUQpPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJ
RUNBQUFFQ0JBZ1FTQk1RSUduVUJoRWdRSUFBCkFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNh
UUlDSkkzYUlBSUVDQkFnUUlBQUFRSUVCSWdkSUVDQUFBRUNCQWdRSUVBZ1RVQ0EKcEZFYlJJQUFB
UUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FEQ0JBZ1FJQUFBUUlFQ0JBUUlI
YUFBQUVDQkFnUQpJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBQUFFQ0JB
Z1FJSkFtSUVEU3FBMGlRSUFBQVFJRUNCQWdRRUNBCjJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRV
RUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUNCQWdRSUVDQVFKcUFBRW1qTm9nQUFRSUUKQ0JBZ1FJ
QUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZ0lFRHNBQUVDQkFn
UUlFQ0FBQUVDYVFJQwpKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnVFVD
QXBGRWJSSUFBQVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNBCkFBRUNCQWlrQ1FpUU5HcURDQkFnUUlB
QUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUUFRSUVDQkFnUUlBQUFRSUMKeEE0
UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVD
Qk5JRUJFZ2F0VUVFQ0JBZwpRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dB
QVFJRUNCQWdRSUFBQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RCklHblVCaEVnUUlBQUFRSUVDQkFn
SUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFRSUVCSWdkSUVDQUFBRUMK
QkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVFO
R3FEQ0JBZ1FJQUFBUUlFQ0JBUQpJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdR
SUFBQVFJQ3hBNFFJRUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBCkFRSUVDQkFnUUVDQTJBRUNC
QWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUNCQWdRSUVDQVFK
cUEKQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJ
QUFBUUlFQ0JBZ0lFRHNBQUVDQkFnUQpJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJ
Z2RJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNBCkFMRURCQWdRSUVDQUFB
RUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdTUm0w
UUFRSUUKQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JB
Z1FFQ0EyQUVDQkFnUUlFQ0FBQUVDQk5JRQpCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFF
Q0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJRUNBCkFBRUNCQWdRU0JN
UUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFn
UUlBQUFRSUUKQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVE
QkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FEQ0JBZwpRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNB
QUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBQUFFQ0JBZ1FJSkFtCklFRFNxQTBp
UUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVD
QWdRTzBDQUFBRUMKQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FB
QUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZwpJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNK
STNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBGRWJSSUFBCkFRSUVD
QkFnUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFB
RUNCQWdRSUVDQUFJRTAKQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlK
QW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUQpJRUNBQUFFQ0JOSUVCRWdhdFVFRUNC
QWdRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBCkFR
RmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVD
QUFBRUNhUUlDSkkzYUlBSUUKQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZF
YlJJQUFBUUlFQ0JBZ1FJREEvd04xK0xUNFF4V2oxd0FBQUFCSgpSVTVFcmtKZ2dnPT0KCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45522</attachid>
            <date>2009-12-27 06:18:00 -0800</date>
            <delta_ts>2009-12-27 06:32:55 -0800</delta_ts>
            <desc>Create more than one SVG Mask resource</desc>
            <filename>mask-on-multiple-objects.patch</filename>
            <type>text/plain</type>
            <size>55254</size>
            <attacher name="Dirk Schulze">krit</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1MjU3NikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNzcgQEAKKzIwMDktMTItMjcgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTVkcg
TWFzayByZXN1bHQgd3JvbmcsIGlmIHR3byBkaWZmZXJlbnQgb2JqZWN0cyBjYWxsIHRoZSBzYW1l
IG1hc2sgaWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTMyNzg3CisKKyAgICAgICAgQXQgdGhlIG1vbWVudCB3ZSBjcmVhdGUgb25lIHJlc291cmNlIHBl
ciBtYXNrSWQuIFNvbWUgcmVzb3VyY2VzIChsaWtlIG1hc2spCisgICAgICAgIGNyZWF0ZSBJbWFn
ZUJ1ZmZlcnMgYW5kIGRlcGVuZHMgb24gdGhlIHByb3BlcnRpZXMgb2YgdGhlIFJlbmRlck9iamVj
dCwKKyAgICAgICAgdGh1cyB3ZSBjYW4ndCB1c2UgaXQgZm9yIGEgc2Vjb25kIG9iamVjdC4KKyAg
ICAgICAgVGhpcyBwYXRjaCBzdG9yZXMgbXVsdGlwbGUgbWFzayByZXNvdXJjZXMgZm9yIG9uZSBt
YXNrSWQgYW5kIGRpZmZlcmVudAorICAgICAgICBSZW5kZXJPYmplY3QgY2FuIHVzZSB0aGUgc2Ft
ZSBtYXNrSWQuCisgICAgICAgIENsaXBwZXIsIEZpbHRlciBhbmQgUGF0dGVybnMgYWxzbyBuZWVk
IHRvIHN0b3JlIG11bHRpcGxlIHJlc291cmNlcyBsYXRlci4KKworICAgICAgICBUZXN0OiBzdmcv
Y3VzdG9tL21hc2stb24tbXVsdGlwbGUtb2JqZWN0cy5zdmcKKworICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJQYXRoLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclBhdGg6OmRyYXdNYXJr
ZXJzSWZOZWVkZWQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJTVkdDb250YWluZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZHQ29udGFpbmVyOjpzZWxmV2lsbFBhaW50KToK
KyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyU1ZHR3JhZGllbnRTdG9wLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclNWR0dyYWRpZW50U3RvcDo6c3R5bGVEaWRDaGFuZ2UpOgorICAgICAg
ICAqIHJlbmRlcmluZy9SZW5kZXJTVkdSb290LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
clNWR1Jvb3Q6OnNlbGZXaWxsUGFpbnQpOgorICAgICAgICAqIHJlbmRlcmluZy9TVkdSZW5kZXJT
dXBwb3J0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1JlbmRlckJhc2U6OnByZXBhcmVUb1Jl
bmRlclNWR0NvbnRlbnQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHUmVuZGVyQmFzZTo6ZmlsdGVy
Qm91bmRpbmdCb3hGb3JSZW5kZXJlcik6CisgICAgICAgICogcmVuZGVyaW5nL1NWR1JlbmRlclRy
ZWVBc1RleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6d3JpdGVSZW5kZXJSZXNvdXJjZXMpOgor
ICAgICAgICAqIHN2Zy9TVkdDbGlwUGF0aEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U1ZHQ2xpcFBhdGhFbGVtZW50OjpjYW52YXNSZXNvdXJjZSk6CisgICAgICAgICogc3ZnL1NWR0Ns
aXBQYXRoRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdGaWx0ZXJFbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNWR0ZpbHRlckVsZW1lbnQ6OmNhbnZhc1Jlc291cmNlKToKKyAgICAg
ICAgKiBzdmcvU1ZHRmlsdGVyRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdHcmFkaWVudEVs
ZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHR3JhZGllbnRFbGVtZW50OjpjYW52YXNS
ZXNvdXJjZSk6CisgICAgICAgICogc3ZnL1NWR0dyYWRpZW50RWxlbWVudC5oOgorICAgICAgICAq
IHN2Zy9TVkdNYXJrZXJFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR01hcmtlckVs
ZW1lbnQ6OmNhbnZhc1Jlc291cmNlKToKKyAgICAgICAgKiBzdmcvU1ZHTWFya2VyRWxlbWVudC5o
OgorICAgICAgICAqIHN2Zy9TVkdNYXNrRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
VkdNYXNrRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpT
VkdNYXNrRWxlbWVudDo6Y2hpbGRyZW5DaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR01h
c2tFbGVtZW50OjpjYW52YXNSZXNvdXJjZSk6CisgICAgICAgICogc3ZnL1NWR01hc2tFbGVtZW50
Lmg6CisgICAgICAgICogc3ZnL1NWR1BhdHRlcm5FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlNWR1BhdHRlcm5FbGVtZW50OjpjYW52YXNSZXNvdXJjZSk6CisgICAgICAgICogc3ZnL1NW
R1BhdHRlcm5FbGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR1N0eWxlZEVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U1ZHU3R5bGVkRWxlbWVudDo6aW52YWxpZGF0ZVJlc291cmNlc0lu
QW5jZXN0b3JDaGFpbik6CisgICAgICAgICogc3ZnL1NWR1N0eWxlZEVsZW1lbnQuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQ6OmNhbnZhc1Jlc291cmNlKToKKyAgICAgICAg
KiBzdmcvZ3JhcGhpY3MvU1ZHUGFpbnRTZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Z2V0
UGFpbnRTZXJ2ZXJCeUlkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR1BhaW50U2VydmVyOjpmaWxs
UGFpbnRTZXJ2ZXIpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHUGFpbnRTZXJ2ZXI6OnN0cm9rZVBh
aW50U2VydmVyKToKKyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUGFpbnRTZXJ2ZXIuaDoKKyAg
ICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Z2V0UmVzb3VyY2VCeUlkKToKKyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2UuaDoK
KyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VDbGlwcGVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OmdldENsaXBwZXJCeUlkKToKKyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVz
b3VyY2VDbGlwcGVyLmg6CisgICAgICAgICogc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlRmlsdGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmdldEZpbHRlckJ5SWQpOgorICAgICAgICAqIHN2Zy9n
cmFwaGljcy9TVkdSZXNvdXJjZUZpbHRlci5oOgorICAgICAgICAqIHN2Zy9ncmFwaGljcy9TVkdS
ZXNvdXJjZU1hcmtlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnZXRNYXJrZXJCeUlkKToKKyAg
ICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VNYXJrZXIuaDoKKyAgICAgICAgKiBzdmcv
Z3JhcGhpY3MvU1ZHUmVzb3VyY2VNYXNrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Z2V0TWFz
a2VyQnlJZCk6CisgICAgICAgICogc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlTWFza2VyLmg6CisK
IDIwMDktMTItMjcgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFyb2dhQHBhcm9nYS5jb20+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCkluZGV4OiBXZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJQYXRoLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJQYXRo
LmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJQYXRoLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzcxLDkgKzM3MSw5IEBAIEZsb2F0UmVjdCBSZW5kZXJQYXRo
OjpkcmF3TWFya2Vyc0lmTmVlZGUKICAgICBBdG9taWNTdHJpbmcgbWlkTWFya2VySWQoc3ZnU3R5
bGUtPm1pZE1hcmtlcigpKTsKICAgICBBdG9taWNTdHJpbmcgZW5kTWFya2VySWQoc3ZnU3R5bGUt
PmVuZE1hcmtlcigpKTsKIAotICAgIFNWR1Jlc291cmNlTWFya2VyKiBzdGFydE1hcmtlciA9IGdl
dE1hcmtlckJ5SWQoZG9jLCBzdGFydE1hcmtlcklkKTsKLSAgICBTVkdSZXNvdXJjZU1hcmtlciog
bWlkTWFya2VyID0gZ2V0TWFya2VyQnlJZChkb2MsIG1pZE1hcmtlcklkKTsKLSAgICBTVkdSZXNv
dXJjZU1hcmtlciogZW5kTWFya2VyID0gZ2V0TWFya2VyQnlJZChkb2MsIGVuZE1hcmtlcklkKTsK
KyAgICBTVkdSZXNvdXJjZU1hcmtlciogc3RhcnRNYXJrZXIgPSBnZXRNYXJrZXJCeUlkKGRvYywg
c3RhcnRNYXJrZXJJZCwgdGhpcyk7CisgICAgU1ZHUmVzb3VyY2VNYXJrZXIqIG1pZE1hcmtlciA9
IGdldE1hcmtlckJ5SWQoZG9jLCBtaWRNYXJrZXJJZCwgdGhpcyk7CisgICAgU1ZHUmVzb3VyY2VN
YXJrZXIqIGVuZE1hcmtlciA9IGdldE1hcmtlckJ5SWQoZG9jLCBlbmRNYXJrZXJJZCwgdGhpcyk7
CiAKICAgICBpZiAoIXN0YXJ0TWFya2VyICYmICFzdGFydE1hcmtlcklkLmlzRW1wdHkoKSkKICAg
ICAgICAgc3ZnRWxlbWVudC0+ZG9jdW1lbnQoKS0+YWNjZXNzU1ZHRXh0ZW5zaW9ucygpLT5hZGRQ
ZW5kaW5nUmVzb3VyY2Uoc3RhcnRNYXJrZXJJZCwgc3R5bGVkRWxlbWVudCk7CkluZGV4OiBXZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJTVkdDb250YWluZXIuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclNWR0NvbnRhaW5lci5jcHAJKHJldmlzaW9uIDUyMjIwKQorKysg
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHQ29udGFpbmVyLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtODIsNyArODIsNyBAQCBib29sIFJlbmRlclNWR0NvbnRhaW5lcjo6c2VsZldpbGxQYWludCgp
CiB7CiAjaWYgRU5BQkxFKEZJTFRFUlMpCiAgICAgY29uc3QgU1ZHUmVuZGVyU3R5bGUqIHN2Z1N0
eWxlID0gc3R5bGUoKS0+c3ZnU3R5bGUoKTsKLSAgICBTVkdSZXNvdXJjZUZpbHRlciogZmlsdGVy
ID0gZ2V0RmlsdGVyQnlJZChkb2N1bWVudCgpLCBzdmdTdHlsZS0+ZmlsdGVyKCkpOworICAgIFNW
R1Jlc291cmNlRmlsdGVyKiBmaWx0ZXIgPSBnZXRGaWx0ZXJCeUlkKGRvY3VtZW50KCksIHN2Z1N0
eWxlLT5maWx0ZXIoKSwgdGhpcyk7CiAgICAgaWYgKGZpbHRlcikKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAjZW5kaWYKSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNWR0dyYWRpZW50U3Rv
cC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHR3JhZGllbnRT
dG9wLmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTVkdH
cmFkaWVudFN0b3AuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OSw3ICs0OSw3IEBAIHZvaWQgUmVu
ZGVyU1ZHR3JhZGllbnRTdG9wOjpzdHlsZURpZENoYW4KICAgICAvLyA8c3RvcD4gZWxlbWVudHMg
c2hvdWxkIG9ubHkgYmUgYWxsb3dlZCB0byBtYWtlIHJlbmRlcmVycyB1bmRlciBncmFkaWVudCBl
bGVtZW50cwogICAgIC8vIGJ1dCBJIGNhbiBpbWFnaW5lIGEgZmV3IGNhc2VzIHdlIG1pZ2h0IG5v
dCBiZSBjYXRjaGluZywgc28gbGV0J3Mgbm90IGNyYXNoIGlmIG91ciBwYXJlbnQgaXNuJ3QgYSBn
cmFkaWVudC4KICAgICBpZiAoU1ZHR3JhZGllbnRFbGVtZW50KiBncmFkaWVudCA9IGdyYWRpZW50
RWxlbWVudCgpKSB7Ci0gICAgICAgIGlmIChTVkdSZXNvdXJjZSogcmVzb3VyY2UgPSBncmFkaWVu
dC0+Y2FudmFzUmVzb3VyY2UoKSkKKyAgICAgICAgaWYgKFNWR1Jlc291cmNlKiByZXNvdXJjZSA9
IGdyYWRpZW50LT5jYW52YXNSZXNvdXJjZSh0aGlzKSkKICAgICAgICAgICAgIHJlc291cmNlLT5p
bnZhbGlkYXRlKCk7CiAgICAgfQogfQpJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZH
Um9vdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5j
cHAJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUm9vdC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTExMyw3ICsxMTMsNyBAQCBib29sIFJlbmRlclNWR1Jvb3Q6
OnNlbGZXaWxsUGFpbnQoKSBjb25zCiB7CiAjaWYgRU5BQkxFKEZJTFRFUlMpCiAgICAgY29uc3Qg
U1ZHUmVuZGVyU3R5bGUqIHN2Z1N0eWxlID0gc3R5bGUoKS0+c3ZnU3R5bGUoKTsKLSAgICBTVkdS
ZXNvdXJjZUZpbHRlciogZmlsdGVyID0gZ2V0RmlsdGVyQnlJZChkb2N1bWVudCgpLCBzdmdTdHls
ZS0+ZmlsdGVyKCkpOworICAgIFNWR1Jlc291cmNlRmlsdGVyKiBmaWx0ZXIgPSBnZXRGaWx0ZXJC
eUlkKGRvY3VtZW50KCksIHN2Z1N0eWxlLT5maWx0ZXIoKSwgdGhpcyk7CiAgICAgaWYgKGZpbHRl
cikKICAgICAgICAgcmV0dXJuIHRydWU7CiAjZW5kaWYKSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5n
L1NWR1JlbmRlclN1cHBvcnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL1NW
R1JlbmRlclN1cHBvcnQuY3BwCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvcmVuZGVyaW5n
L1NWR1JlbmRlclN1cHBvcnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMTYsNyArMTE2LDcgQEAg
dm9pZCBTVkdSZW5kZXJCYXNlOjpwcmVwYXJlVG9SZW5kZXJTVkdDbwogICAgIERvY3VtZW50KiBk
b2N1bWVudCA9IG9iamVjdC0+ZG9jdW1lbnQoKTsKIAogI2lmIEVOQUJMRShGSUxURVJTKQotICAg
IFNWR1Jlc291cmNlRmlsdGVyKiBuZXdGaWx0ZXIgPSBnZXRGaWx0ZXJCeUlkKGRvY3VtZW50LCBm
aWx0ZXJJZCk7CisgICAgU1ZHUmVzb3VyY2VGaWx0ZXIqIG5ld0ZpbHRlciA9IGdldEZpbHRlckJ5
SWQoZG9jdW1lbnQsIGZpbHRlcklkLCBvYmplY3QpOwogICAgIGlmIChuZXdGaWx0ZXIgPT0gcm9v
dEZpbHRlcikgewogICAgICAgICAvLyBDYXRjaCA8dGV4dCBmaWx0ZXI9InVybCgjZm9vKSI+VGVz
dDx0c3BhbiBmaWx0ZXI9InVybCgjZm9vKSI+MTIzPC90c3Bhbj48L3RleHQ+LgogICAgICAgICAv
LyBUaGUgZmlsdGVyIGlzIE5PVCBtZWFudCB0byBiZSBhcHBsaWVkIHR3aWNlIGluIHRoYXQgY2Fz
ZSEKQEAgLTEyNiw4ICsxMjYsOCBAQCB2b2lkIFNWR1JlbmRlckJhc2U6OnByZXBhcmVUb1JlbmRl
clNWR0NvCiAgICAgICAgIGZpbHRlciA9IG5ld0ZpbHRlcjsKICNlbmRpZgogCi0gICAgU1ZHUmVz
b3VyY2VDbGlwcGVyKiBjbGlwcGVyID0gZ2V0Q2xpcHBlckJ5SWQoZG9jdW1lbnQsIGNsaXBwZXJJ
ZCk7Ci0gICAgU1ZHUmVzb3VyY2VNYXNrZXIqIG1hc2tlciA9IGdldE1hc2tlckJ5SWQoZG9jdW1l
bnQsIG1hc2tlcklkKTsKKyAgICBTVkdSZXNvdXJjZUNsaXBwZXIqIGNsaXBwZXIgPSBnZXRDbGlw
cGVyQnlJZChkb2N1bWVudCwgY2xpcHBlcklkLCBvYmplY3QpOworICAgIFNWR1Jlc291cmNlTWFz
a2VyKiBtYXNrZXIgPSBnZXRNYXNrZXJCeUlkKGRvY3VtZW50LCBtYXNrZXJJZCwgb2JqZWN0KTsK
IAogI2lmIEVOQUJMRShGSUxURVJTKQogICAgIGlmIChmaWx0ZXIpIHsKQEAgLTIzNSw3ICsyMzUs
NyBAQCBGbG9hdFJlY3QgU1ZHUmVuZGVyQmFzZTo6Y29tcHV0ZUNvbnRhaW5lCiBGbG9hdFJlY3Qg
U1ZHUmVuZGVyQmFzZTo6ZmlsdGVyQm91bmRpbmdCb3hGb3JSZW5kZXJlcihjb25zdCBSZW5kZXJP
YmplY3QqIG9iamVjdCkKIHsKICNpZiBFTkFCTEUoRklMVEVSUykKLSAgICBTVkdSZXNvdXJjZUZp
bHRlciogZmlsdGVyID0gZ2V0RmlsdGVyQnlJZChvYmplY3QtPmRvY3VtZW50KCksIG9iamVjdC0+
c3R5bGUoKS0+c3ZnU3R5bGUoKS0+ZmlsdGVyKCkpOworICAgIFNWR1Jlc291cmNlRmlsdGVyKiBm
aWx0ZXIgPSBnZXRGaWx0ZXJCeUlkKG9iamVjdC0+ZG9jdW1lbnQoKSwgb2JqZWN0LT5zdHlsZSgp
LT5zdmdTdHlsZSgpLT5maWx0ZXIoKSwgb2JqZWN0KTsKICAgICBpZiAoZmlsdGVyKQogICAgICAg
ICByZXR1cm4gZmlsdGVyLT5maWx0ZXJCb3VuZGluZ0JveCgpOwogI2Vsc2UKSW5kZXg6IFdlYkNv
cmUvcmVuZGVyaW5nL1NWR1JlbmRlclRyZWVBc1RleHQuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcmVuZGVyaW5nL1NWR1JlbmRlclRyZWVBc1RleHQuY3BwCShyZXZpc2lvbiA1MjIyMCkKKysr
IFdlYkNvcmUvcmVuZGVyaW5nL1NWR1JlbmRlclRyZWVBc1RleHQuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC01MjEsNyArNTIxLDcgQEAgdm9pZCB3cml0ZVJlbmRlclJlc291cmNlcyhUZXh0U3RyZWFt
JiB0cwogICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgU1ZHU3R5bGVkRWxlbWVudCog
c3R5bGVkID0gc3RhdGljX2Nhc3Q8U1ZHU3R5bGVkRWxlbWVudCo+KHN2Z0VsZW1lbnQpOwotICAg
ICAgICBSZWZQdHI8U1ZHUmVzb3VyY2U+IHJlc291cmNlKHN0eWxlZC0+Y2FudmFzUmVzb3VyY2Uo
KSk7CisgICAgICAgIFJlZlB0cjxTVkdSZXNvdXJjZT4gcmVzb3VyY2Uoc3R5bGVkLT5jYW52YXNS
ZXNvdXJjZShub2RlLT5yZW5kZXJlcigpKSk7CiAgICAgICAgIGlmICghcmVzb3VyY2UpCiAgICAg
ICAgICAgICBjb250aW51ZTsKIApJbmRleDogV2ViQ29yZS9zdmcvU1ZHQ2xpcFBhdGhFbGVtZW50
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdDbGlwUGF0aEVsZW1lbnQuY3BwCShy
ZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL1NWR0NsaXBQYXRoRWxlbWVudC5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTg5LDcgKzg5LDcgQEAgdm9pZCBTVkdDbGlwUGF0aEVsZW1lbnQ6OmNo
aWxkcmVuQ2hhbmdlZAogICAgIG1fY2xpcHBlci0+aW52YWxpZGF0ZSgpOwogfQogCi1TVkdSZXNv
dXJjZSogU1ZHQ2xpcFBhdGhFbGVtZW50OjpjYW52YXNSZXNvdXJjZSgpCitTVkdSZXNvdXJjZSog
U1ZHQ2xpcFBhdGhFbGVtZW50OjpjYW52YXNSZXNvdXJjZShjb25zdCBSZW5kZXJPYmplY3QqKQog
ewogICAgIGlmICghbV9jbGlwcGVyKQogICAgICAgICBtX2NsaXBwZXIgPSBTVkdSZXNvdXJjZUNs
aXBwZXI6OmNyZWF0ZSgpOwpJbmRleDogV2ViQ29yZS9zdmcvU1ZHQ2xpcFBhdGhFbGVtZW50LmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHQ2xpcFBhdGhFbGVtZW50LmgJKHJldmlzaW9u
IDUyMjIwKQorKysgV2ViQ29yZS9zdmcvU1ZHQ2xpcFBhdGhFbGVtZW50LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIyLDYgKzIyLDcgQEAKICNkZWZpbmUgU1ZHQ2xpcFBhdGhFbGVtZW50X2gKIAogI2lm
IEVOQUJMRShTVkcpCisjaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCiAjaW5jbHVkZSAiU1ZHRXh0
ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZC5oIgogI2luY2x1ZGUgIlNWR0xhbmdTcGFjZS5oIgogI2lu
Y2x1ZGUgIlNWR1Jlc291cmNlQ2xpcHBlci5oIgpAQCAtNDUsNyArNDYsNyBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNvbnN0
IFF1YWxpZmllZE5hbWUmKTsKICAgICAgICAgdmlydHVhbCB2b2lkIGNoaWxkcmVuQ2hhbmdlZChi
b29sIGNoYW5nZWRCeVBhcnNlciA9IGZhbHNlLCBOb2RlKiBiZWZvcmVDaGFuZ2UgPSAwLCBOb2Rl
KiBhZnRlckNoYW5nZSA9IDAsIGludCBjaGlsZENvdW50RGVsdGEgPSAwKTsKIAotICAgICAgICB2
aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52YXNSZXNvdXJjZSgpOworICAgICAgICB2aXJ0dWFsIFNW
R1Jlc291cmNlKiBjYW52YXNSZXNvdXJjZShjb25zdCBSZW5kZXJPYmplY3QqKTsKIAogICAgIHBy
aXZhdGU6CiAgICAgICAgIEFOSU1BVEVEX1BST1BFUlRZX0RFQ0xBUkFUSU9OUyhTVkdDbGlwUGF0
aEVsZW1lbnQsIFNWR05hbWVzOjpjbGlwUGF0aFRhZ1N0cmluZywgU1ZHTmFtZXM6OmNsaXBQYXRo
VW5pdHNBdHRyU3RyaW5nLCBpbnQsIENsaXBQYXRoVW5pdHMsIGNsaXBQYXRoVW5pdHMpCkluZGV4
OiBXZWJDb3JlL3N2Zy9TVkdGaWx0ZXJFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3N2Zy9TVkdGaWx0ZXJFbGVtZW50LmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2
Zy9TVkdGaWx0ZXJFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTYwLDcgKzE2MCw3IEBA
IHZvaWQgU1ZHRmlsdGVyRWxlbWVudDo6YnVpbGRGaWx0ZXIoY29uc3QKICAgICB9CiB9CiAKLVNW
R1Jlc291cmNlKiBTVkdGaWx0ZXJFbGVtZW50OjpjYW52YXNSZXNvdXJjZSgpCitTVkdSZXNvdXJj
ZSogU1ZHRmlsdGVyRWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoY29uc3QgUmVuZGVyT2JqZWN0KikK
IHsKICAgICBpZiAoIWF0dGFjaGVkKCkpCiAgICAgICAgIHJldHVybiAwOwpJbmRleDogV2ViQ29y
ZS9zdmcvU1ZHRmlsdGVyRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR0Zp
bHRlckVsZW1lbnQuaAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2Zy9TVkdGaWx0ZXJF
bGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAKICNkZWZpbmUgU1ZHRmls
dGVyRWxlbWVudF9oCiAKICNpZiBFTkFCTEUoU1ZHKSAmJiBFTkFCTEUoRklMVEVSUykKKyNpbmNs
dWRlICJSZW5kZXJPYmplY3QuaCIKICNpbmNsdWRlICJTVkdSZXNvdXJjZUZpbHRlci5oIgogI2lu
Y2x1ZGUgIlNWR0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQuaCIKICNpbmNsdWRlICJTVkdMYW5n
U3BhY2UuaCIKQEAgLTQyLDcgKzQzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBT
VkdGaWx0ZXJFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCopOwogICAgICAg
ICB2aXJ0dWFsIH5TVkdGaWx0ZXJFbGVtZW50KCk7CiAKLSAgICAgICAgdmlydHVhbCBTVkdSZXNv
dXJjZSogY2FudmFzUmVzb3VyY2UoKTsKKyAgICAgICAgdmlydHVhbCBTVkdSZXNvdXJjZSogY2Fu
dmFzUmVzb3VyY2UoY29uc3QgUmVuZGVyT2JqZWN0Kik7CiAKICAgICAgICAgdm9pZCBzZXRGaWx0
ZXJSZXModW5zaWduZWQgbG9uZyBmaWx0ZXJSZXNYLCB1bnNpZ25lZCBsb25nIGZpbHRlclJlc1kp
IGNvbnN0OwogCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdHcmFkaWVudEVsZW1lbnQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR0dyYWRpZW50RWxlbWVudC5jcHAJKHJldmlzaW9uIDUy
MjIwKQorKysgV2ViQ29yZS9zdmcvU1ZHR3JhZGllbnRFbGVtZW50LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMTE0LDcgKzExNCw3IEBAIFJlbmRlck9iamVjdCogU1ZHR3JhZGllbnRFbGVtZW50Ojpj
cmVhdGUKICAgICByZXR1cm4gbmV3IChhcmVuYSkgUmVuZGVyU1ZHSGlkZGVuQ29udGFpbmVyKHRo
aXMpOwogfQogCi1TVkdSZXNvdXJjZSogU1ZHR3JhZGllbnRFbGVtZW50OjpjYW52YXNSZXNvdXJj
ZSgpCitTVkdSZXNvdXJjZSogU1ZHR3JhZGllbnRFbGVtZW50OjpjYW52YXNSZXNvdXJjZShjb25z
dCBSZW5kZXJPYmplY3QqKQogewogICAgIGlmICghbV9yZXNvdXJjZSkgewogICAgICAgICBpZiAo
Z3JhZGllbnRUeXBlKCkgPT0gTGluZWFyR3JhZGllbnRQYWludFNlcnZlcikKSW5kZXg6IFdlYkNv
cmUvc3ZnL1NWR0dyYWRpZW50RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NW
R0dyYWRpZW50RWxlbWVudC5oCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL1NWR0dy
YWRpZW50RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMiw2ICsyMiw3IEBACiAjZGVmaW5l
IFNWR0dyYWRpZW50RWxlbWVudF9oCiAKICNpZiBFTkFCTEUoU1ZHKQorI2luY2x1ZGUgIlJlbmRl
ck9iamVjdC5oIgogI2luY2x1ZGUgIlNWR1BhaW50U2VydmVyR3JhZGllbnQuaCIKICNpbmNsdWRl
ICJTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkLmgiCiAjaW5jbHVkZSAiU1ZHU3R5bGVkRWxl
bWVudC5oIgpAQCAtNDUsNyArNDYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZp
cnR1YWwgdm9pZCBjaGlsZHJlbkNoYW5nZWQoYm9vbCBjaGFuZ2VkQnlQYXJzZXIgPSBmYWxzZSwg
Tm9kZSogYmVmb3JlQ2hhbmdlID0gMCwgTm9kZSogYWZ0ZXJDaGFuZ2UgPSAwLCBpbnQgY2hpbGRD
b3VudERlbHRhID0gMCk7CiAgICAgICAgIHZpcnR1YWwgUmVuZGVyT2JqZWN0KiBjcmVhdGVSZW5k
ZXJlcihSZW5kZXJBcmVuYSosIFJlbmRlclN0eWxlKik7CiAKLSAgICAgICAgdmlydHVhbCBTVkdS
ZXNvdXJjZSogY2FudmFzUmVzb3VyY2UoKTsKKyAgICAgICAgdmlydHVhbCBTVkdSZXNvdXJjZSog
Y2FudmFzUmVzb3VyY2UoY29uc3QgUmVuZGVyT2JqZWN0Kik7CiAKICAgICBwcm90ZWN0ZWQ6CiAg
ICAgICAgIGZyaWVuZCBjbGFzcyBTVkdQYWludFNlcnZlckdyYWRpZW50OwpJbmRleDogV2ViQ29y
ZS9zdmcvU1ZHTWFya2VyRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZH
TWFya2VyRWxlbWVudC5jcHAJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9zdmcvU1ZHTWFy
a2VyRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE3Myw3ICsxNzMsNyBAQCB2b2lkIFNW
R01hcmtlckVsZW1lbnQ6OnNldE9yaWVudFRvQW5nbGUoCiAgICAgbV9tYXJrZXItPmludmFsaWRh
dGUoKTsKIH0KIAotU1ZHUmVzb3VyY2UqIFNWR01hcmtlckVsZW1lbnQ6OmNhbnZhc1Jlc291cmNl
KCkKK1NWR1Jlc291cmNlKiBTVkdNYXJrZXJFbGVtZW50OjpjYW52YXNSZXNvdXJjZShjb25zdCBS
ZW5kZXJPYmplY3QqKQogewogICAgIGlmICghbV9tYXJrZXIpCiAgICAgICAgIG1fbWFya2VyID0g
U1ZHUmVzb3VyY2VNYXJrZXI6OmNyZWF0ZSgpOwpJbmRleDogV2ViQ29yZS9zdmcvU1ZHTWFya2Vy
RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR01hcmtlckVsZW1lbnQuaAko
cmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2Zy9TVkdNYXJrZXJFbGVtZW50LmgJKHdvcmtp
bmcgY29weSkKQEAgLTIyLDcgKzIyLDcgQEAKICNkZWZpbmUgU1ZHTWFya2VyRWxlbWVudF9oCiAK
ICNpZiBFTkFCTEUoU1ZHKQotCisjaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCiAjaW5jbHVkZSAi
U1ZHQW5nbGUuaCIKICNpbmNsdWRlICJTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkLmgiCiAj
aW5jbHVkZSAiU1ZHRml0VG9WaWV3Qm94LmgiCkBAIC02OCw3ICs2OCw3IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2b2lkIGNoaWxkcmVuQ2hhbmdlZChib29sIGNoYW5n
ZWRCeVBhcnNlciA9IGZhbHNlLCBOb2RlKiBiZWZvcmVDaGFuZ2UgPSAwLCBOb2RlKiBhZnRlckNo
YW5nZSA9IDAsIGludCBjaGlsZENvdW50RGVsdGEgPSAwKTsKIAogICAgICAgICB2aXJ0dWFsIFJl
bmRlck9iamVjdCogY3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJlbmEqLCBSZW5kZXJTdHlsZSopOwot
ICAgICAgICB2aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52YXNSZXNvdXJjZSgpOworICAgICAgICB2
aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52YXNSZXNvdXJjZShjb25zdCBSZW5kZXJPYmplY3QqKTsK
IAogICAgIHByaXZhdGU6CiAgICAgICAgIEFOSU1BVEVEX1BST1BFUlRZX0RFQ0xBUkFUSU9OUyhT
VkdNYXJrZXJFbGVtZW50LCBTVkdOYW1lczo6bWFya2VyVGFnU3RyaW5nLCBTVkdOYW1lczo6cmVm
WEF0dHJTdHJpbmcsIFNWR0xlbmd0aCwgUmVmWCwgcmVmWCkKSW5kZXg6IFdlYkNvcmUvc3ZnL1NW
R01hc2tFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdNYXNrRWxlbWVu
dC5jcHAJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9zdmcvU1ZHTWFza0VsZW1lbnQuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yOSw2ICsyOSw3IEBACiAjaW5jbHVkZSAiR3JhcGhpY3NDb250
ZXh0LmgiCiAjaW5jbHVkZSAiSW1hZ2VCdWZmZXIuaCIKICNpbmNsdWRlICJNYXBwZWRBdHRyaWJ1
dGUuaCIKKyNpbmNsdWRlICJSZW5kZXJPYmplY3QuaCIKICNpbmNsdWRlICJSZW5kZXJTVkdDb250
YWluZXIuaCIKICNpbmNsdWRlICJTVkdMZW5ndGguaCIKICNpbmNsdWRlICJTVkdOYW1lcy5oIgpA
QCAtMTAyLDcgKzEwMyw3IEBAIHZvaWQgU1ZHTWFza0VsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5n
ZWQKIHsKICAgICBTVkdTdHlsZWRFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkKGF0dHJOYW1l
KTsKIAotICAgIGlmICghbV9tYXNrZXIpCisgICAgaWYgKG1fbWFza2VyLmlzRW1wdHkoKSkKICAg
ICAgICAgcmV0dXJuOwogCiAgICAgaWYgKGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrVW5pdHNB
dHRyIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjptYXNrQ29udGVudFVuaXRzQXR0ciB8fApAQCAt
MTEzLDE3ICsxMTQsMTkgQEAgdm9pZCBTVkdNYXNrRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdl
ZAogICAgICAgICBTVkdMYW5nU3BhY2U6OmlzS25vd25BdHRyaWJ1dGUoYXR0ck5hbWUpIHx8CiAg
ICAgICAgIFNWR0V4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0
ck5hbWUpIHx8CiAgICAgICAgIFNWR1N0eWxlZEVsZW1lbnQ6OmlzS25vd25BdHRyaWJ1dGUoYXR0
ck5hbWUpKQotICAgICAgICBtX21hc2tlci0+aW52YWxpZGF0ZSgpOworICAgICAgICBmb3IgKEhh
c2hNYXA8Y29uc3QgUmVuZGVyT2JqZWN0KiwgUmVmUHRyPFNWR1Jlc291cmNlTWFza2VyPiA+Ojpp
dGVyYXRvciBpdCA9IG1fbWFza2VyLmJlZ2luKCk7IGl0ICE9IG1fbWFza2VyLmVuZCgpOyArK2l0
KQorICAgICAgICAgICAgaXQtPnNlY29uZC0+aW52YWxpZGF0ZSgpOwogfQogCiB2b2lkIFNWR01h
c2tFbGVtZW50OjpjaGlsZHJlbkNoYW5nZWQoYm9vbCBjaGFuZ2VkQnlQYXJzZXIsIE5vZGUqIGJl
Zm9yZUNoYW5nZSwgTm9kZSogYWZ0ZXJDaGFuZ2UsIGludCBjaGlsZENvdW50RGVsdGEpCiB7CiAg
ICAgU1ZHU3R5bGVkRWxlbWVudDo6Y2hpbGRyZW5DaGFuZ2VkKGNoYW5nZWRCeVBhcnNlciwgYmVm
b3JlQ2hhbmdlLCBhZnRlckNoYW5nZSwgY2hpbGRDb3VudERlbHRhKTsKIAotICAgIGlmICghbV9t
YXNrZXIpCisgICAgaWYgKG1fbWFza2VyLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwogCi0g
ICAgbV9tYXNrZXItPmludmFsaWRhdGUoKTsKKyAgICBmb3IgKEhhc2hNYXA8Y29uc3QgUmVuZGVy
T2JqZWN0KiwgUmVmUHRyPFNWR1Jlc291cmNlTWFza2VyPiA+OjppdGVyYXRvciBpdCA9IG1fbWFz
a2VyLmJlZ2luKCk7IGl0ICE9IG1fbWFza2VyLmVuZCgpOyArK2l0KQorICAgICAgICBpdC0+c2Vj
b25kLT5pbnZhbGlkYXRlKCk7CiB9CiAKIFBhc3NPd25QdHI8SW1hZ2VCdWZmZXI+IFNWR01hc2tF
bGVtZW50OjpkcmF3TWFza2VyQ29udGVudChjb25zdCBGbG9hdFJlY3QmIHRhcmdldFJlY3QsIEZs
b2F0UmVjdCYgbWFza0Rlc3RSZWN0KSBjb25zdApAQCAtMjA3LDExICsyMTAsMTggQEAgUmVuZGVy
T2JqZWN0KiBTVkdNYXNrRWxlbWVudDo6Y3JlYXRlUmVuZAogICAgIHJldHVybiBtYXNrQ29udGFp
bmVyOwogfQogCi1TVkdSZXNvdXJjZSogU1ZHTWFza0VsZW1lbnQ6OmNhbnZhc1Jlc291cmNlKCkK
K1NWR1Jlc291cmNlKiBTVkdNYXNrRWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoY29uc3QgUmVuZGVy
T2JqZWN0KiBvYmplY3QpCiB7Ci0gICAgaWYgKCFtX21hc2tlcikKLSAgICAgICAgbV9tYXNrZXIg
PSBTVkdSZXNvdXJjZU1hc2tlcjo6Y3JlYXRlKHRoaXMpOwotICAgIHJldHVybiBtX21hc2tlci5n
ZXQoKTsKKyAgICBBU1NFUlQob2JqZWN0KTsKKworICAgIGlmIChtX21hc2tlci5jb250YWlucyhv
YmplY3QpKQorICAgICAgICByZXR1cm4gbV9tYXNrZXIuZ2V0KG9iamVjdCkuZ2V0KCk7CisKKyAg
ICBSZWZQdHI8U1ZHUmVzb3VyY2VNYXNrZXI+IG1hc2tlciA9IFNWR1Jlc291cmNlTWFza2VyOjpj
cmVhdGUodGhpcyk7CisgICAgU1ZHUmVzb3VyY2VNYXNrZXIqIG1hc2tlclB0ciA9IG1hc2tlci5n
ZXQoKTsKKyAgICBtX21hc2tlci5zZXQob2JqZWN0LCBtYXNrZXIucmVsZWFzZSgpKTsKKworICAg
IHJldHVybiBtYXNrZXJQdHI7CiB9CiAKIH0KSW5kZXg6IFdlYkNvcmUvc3ZnL1NWR01hc2tFbGVt
ZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHTWFza0VsZW1lbnQuaAkocmV2aXNp
b24gNTIyMjApCisrKyBXZWJDb3JlL3N2Zy9TVkdNYXNrRWxlbWVudC5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNyw2ICsyNyw3IEBACiAjaW5jbHVkZSAiU1ZHU3R5bGVkTG9jYXRhYmxlRWxlbWVudC5o
IgogI2luY2x1ZGUgIlNWR1Rlc3RzLmgiCiAjaW5jbHVkZSAiU1ZHVVJJUmVmZXJlbmNlLmgiCisj
aW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvUGFzc093blB0ci5oPgogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CkBAIC00OCw3ICs0OSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
ICAgICAgICAgdmlydHVhbCB2b2lkIGNoaWxkcmVuQ2hhbmdlZChib29sIGNoYW5nZWRCeVBhcnNl
ciA9IGZhbHNlLCBOb2RlKiBiZWZvcmVDaGFuZ2UgPSAwLCBOb2RlKiBhZnRlckNoYW5nZSA9IDAs
IGludCBjaGlsZENvdW50RGVsdGEgPSAwKTsKIAogICAgICAgICB2aXJ0dWFsIFJlbmRlck9iamVj
dCogY3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJlbmEqLCBSZW5kZXJTdHlsZSopOwotICAgICAgICB2
aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52YXNSZXNvdXJjZSgpOworICAgICAgICB2aXJ0dWFsIFNW
R1Jlc291cmNlKiBjYW52YXNSZXNvdXJjZShjb25zdCBSZW5kZXJPYmplY3QqKTsKIAogICAgICAg
ICBQYXNzT3duUHRyPEltYWdlQnVmZmVyPiBkcmF3TWFza2VyQ29udGVudChjb25zdCBGbG9hdFJl
Y3QmIHRhcmdldFJlY3QsIEZsb2F0UmVjdCYgbWFza1JlY3QpIGNvbnN0OwogCkBAIC02OCw3ICs2
OSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFNWR05hbWVzOjpleHRlcm5hbFJlc291cmNlc1JlcXVpcmVkQXR0clN0cmluZywg
Ym9vbCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4dGVybmFsUmVz
b3VyY2VzUmVxdWlyZWQsIGV4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQpCiAKLSAgICAgICAgUmVm
UHRyPFNWR1Jlc291cmNlTWFza2VyPiBtX21hc2tlcjsKKyAgICAgICAgSGFzaE1hcDxjb25zdCBS
ZW5kZXJPYmplY3QqLCBSZWZQdHI8U1ZHUmVzb3VyY2VNYXNrZXI+ID4gbV9tYXNrZXI7CiAgICAg
fTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogV2ViQ29yZS9zdmcvU1ZHUGF0dGVy
bkVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR1BhdHRlcm5FbGVtZW50
LmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2Zy9TVkdQYXR0ZXJuRWxlbWVudC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI2Myw3ICsyNjMsNyBAQCBSZW5kZXJPYmplY3QqIFNWR1Bh
dHRlcm5FbGVtZW50OjpjcmVhdGVSCiAgICAgcmV0dXJuIHBhdHRlcm5Db250YWluZXI7CiB9CiAK
LVNWR1Jlc291cmNlKiBTVkdQYXR0ZXJuRWxlbWVudDo6Y2FudmFzUmVzb3VyY2UoKQorU1ZHUmVz
b3VyY2UqIFNWR1BhdHRlcm5FbGVtZW50OjpjYW52YXNSZXNvdXJjZShjb25zdCBSZW5kZXJPYmpl
Y3QqKQogewogICAgIGlmICghbV9yZXNvdXJjZSkKICAgICAgICAgbV9yZXNvdXJjZSA9IFNWR1Bh
aW50U2VydmVyUGF0dGVybjo6Y3JlYXRlKHRoaXMpOwpJbmRleDogV2ViQ29yZS9zdmcvU1ZHUGF0
dGVybkVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9TVkdQYXR0ZXJuRWxlbWVu
dC5oCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL1NWR1BhdHRlcm5FbGVtZW50LmgJ
KHdvcmtpbmcgY29weSkKQEAgLTIyLDYgKzIyLDcgQEAKICNkZWZpbmUgU1ZHUGF0dGVybkVsZW1l
bnRfaAogCiAjaWYgRU5BQkxFKFNWRykKKyNpbmNsdWRlICJSZW5kZXJPYmplY3QuaCIKICNpbmNs
dWRlICJTVkdFeHRlcm5hbFJlc291cmNlc1JlcXVpcmVkLmgiCiAjaW5jbHVkZSAiU1ZHRml0VG9W
aWV3Qm94LmgiCiAjaW5jbHVkZSAiU1ZHTGFuZ1NwYWNlLmgiCkBAIC01NCw3ICs1NSw3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2b2lkIGNoaWxkcmVuQ2hhbmdlZChi
b29sIGNoYW5nZWRCeVBhcnNlciA9IGZhbHNlLCBOb2RlKiBiZWZvcmVDaGFuZ2UgPSAwLCBOb2Rl
KiBhZnRlckNoYW5nZSA9IDAsIGludCBjaGlsZENvdW50RGVsdGEgPSAwKTsKIAogICAgICAgICB2
aXJ0dWFsIFJlbmRlck9iamVjdCogY3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJlbmEqLCBSZW5kZXJT
dHlsZSopOwotICAgICAgICB2aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52YXNSZXNvdXJjZSgpOwor
ICAgICAgICB2aXJ0dWFsIFNWR1Jlc291cmNlKiBjYW52YXNSZXNvdXJjZShjb25zdCBSZW5kZXJP
YmplY3QqKTsKIAogICAgIHByaXZhdGU6CiAgICAgICAgIEFOSU1BVEVEX1BST1BFUlRZX0RFQ0xB
UkFUSU9OUyhTVkdQYXR0ZXJuRWxlbWVudCwgU1ZHTmFtZXM6OnBhdHRlcm5UYWdTdHJpbmcsIFNW
R05hbWVzOjp4QXR0clN0cmluZywgU1ZHTGVuZ3RoLCBYLCB4KQpJbmRleDogV2ViQ29yZS9zdmcv
U1ZHU3R5bGVkRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHU3R5bGVk
RWxlbWVudC5jcHAJKHJldmlzaW9uIDUyMjIwKQorKysgV2ViQ29yZS9zdmcvU1ZHU3R5bGVkRWxl
bWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIxNSw3ICsyMTUsNyBAQCB2b2lkIFNWR1N0eWxl
ZEVsZW1lbnQ6OmludmFsaWRhdGVSZXNvdXJjCiAKICAgICAgICAgU1ZHRWxlbWVudCogZWxlbWVu
dCA9IHN0YXRpY19jYXN0PFNWR0VsZW1lbnQqPihub2RlKTsKICAgICAgICAgaWYgKFNWR1N0eWxl
ZEVsZW1lbnQqIHN0eWxlZEVsZW1lbnQgPSBzdGF0aWNfY2FzdDxTVkdTdHlsZWRFbGVtZW50Kj4o
ZWxlbWVudC0+aXNTdHlsZWQoKSA/IGVsZW1lbnQgOiAwKSkgewotICAgICAgICAgICAgaWYgKFNW
R1Jlc291cmNlKiByZXNvdXJjZSA9IHN0eWxlZEVsZW1lbnQtPmNhbnZhc1Jlc291cmNlKCkpCisg
ICAgICAgICAgICBpZiAoU1ZHUmVzb3VyY2UqIHJlc291cmNlID0gc3R5bGVkRWxlbWVudC0+Y2Fu
dmFzUmVzb3VyY2Uobm9kZS0+cmVuZGVyZXIoKSkpCiAgICAgICAgICAgICAgICAgcmVzb3VyY2Ut
PmludmFsaWRhdGUoKTsKICAgICAgICAgfQogCkluZGV4OiBXZWJDb3JlL3N2Zy9TVkdTdHlsZWRF
bGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHU3R5bGVkRWxlbWVudC5oCShy
ZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL1NWR1N0eWxlZEVsZW1lbnQuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNDYsNyArNDYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIGJv
b2wgaXNLbm93bkF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJik7CiAKICAgICAgICAgdmly
dHVhbCBib29sIHJlbmRlcmVySXNOZWVkZWQoUmVuZGVyU3R5bGUqKTsKLSAgICAgICAgdmlydHVh
bCBTVkdSZXNvdXJjZSogY2FudmFzUmVzb3VyY2UoKSB7IHJldHVybiAwOyB9CisgICAgICAgIHZp
cnR1YWwgU1ZHUmVzb3VyY2UqIGNhbnZhc1Jlc291cmNlKGNvbnN0IFJlbmRlck9iamVjdCopIHsg
cmV0dXJuIDA7IH0KICAgICAgICAgCiAgICAgICAgIHZpcnR1YWwgYm9vbCBtYXBUb0VudHJ5KGNv
bnN0IFF1YWxpZmllZE5hbWUmLCBNYXBwZWRBdHRyaWJ1dGVFbnRyeSYpIGNvbnN0OwogICAgICAg
ICB2aXJ0dWFsIHZvaWQgcGFyc2VNYXBwZWRBdHRyaWJ1dGUoTWFwcGVkQXR0cmlidXRlKik7Cklu
ZGV4OiBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdQYWludFNlcnZlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUGFpbnRTZXJ2ZXIuY3BwCShyZXZpc2lvbiA1MjIy
MCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1BhaW50U2VydmVyLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNTcsOSArNTcsOSBAQCBUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFRleHRTdHJlYW0m
IHRzLCBjCiAgICAgcmV0dXJuIHBhaW50U2VydmVyLmV4dGVybmFsUmVwcmVzZW50YXRpb24odHMp
OwogfQogCi1TVkdQYWludFNlcnZlciogZ2V0UGFpbnRTZXJ2ZXJCeUlkKERvY3VtZW50KiBkb2N1
bWVudCwgY29uc3QgQXRvbWljU3RyaW5nJiBpZCkKK1NWR1BhaW50U2VydmVyKiBnZXRQYWludFNl
cnZlckJ5SWQoRG9jdW1lbnQqIGRvY3VtZW50LCBjb25zdCBBdG9taWNTdHJpbmcmIGlkLCBjb25z
dCBSZW5kZXJPYmplY3QqIG9iamVjdCkKIHsKLSAgICBTVkdSZXNvdXJjZSogcmVzb3VyY2UgPSBn
ZXRSZXNvdXJjZUJ5SWQoZG9jdW1lbnQsIGlkKTsKKyAgICBTVkdSZXNvdXJjZSogcmVzb3VyY2Ug
PSBnZXRSZXNvdXJjZUJ5SWQoZG9jdW1lbnQsIGlkLCBvYmplY3QpOwogICAgIGlmIChyZXNvdXJj
ZSAmJiByZXNvdXJjZS0+aXNQYWludFNlcnZlcigpKQogICAgICAgICByZXR1cm4gc3RhdGljX2Nh
c3Q8U1ZHUGFpbnRTZXJ2ZXIqPihyZXNvdXJjZSk7CiAKQEAgLTg1LDcgKzg1LDcgQEAgU1ZHUGFp
bnRTZXJ2ZXIqIFNWR1BhaW50U2VydmVyOjpmaWxsUGFpbgogICAgIGlmIChwYWludFR5cGUgPT0g
U1ZHUGFpbnQ6OlNWR19QQUlOVFRZUEVfVVJJIHx8CiAgICAgICAgIHBhaW50VHlwZSA9PSBTVkdQ
YWludDo6U1ZHX1BBSU5UVFlQRV9VUklfUkdCQ09MT1IpIHsKICAgICAgICAgQXRvbWljU3RyaW5n
IGlkKFNWR1VSSVJlZmVyZW5jZTo6Z2V0VGFyZ2V0KGZpbGwtPnVyaSgpKSk7Ci0gICAgICAgIGZp
bGxQYWludFNlcnZlciA9IGdldFBhaW50U2VydmVyQnlJZChpdGVtLT5kb2N1bWVudCgpLCBpZCk7
CisgICAgICAgIGZpbGxQYWludFNlcnZlciA9IGdldFBhaW50U2VydmVyQnlJZChpdGVtLT5kb2N1
bWVudCgpLCBpZCwgaXRlbSk7CiAKICAgICAgICAgU1ZHRWxlbWVudCogc3ZnRWxlbWVudCA9IHN0
YXRpY19jYXN0PFNWR0VsZW1lbnQqPihpdGVtLT5ub2RlKCkpOwogICAgICAgICBBU1NFUlQoc3Zn
RWxlbWVudCAmJiBzdmdFbGVtZW50LT5kb2N1bWVudCgpICYmIHN2Z0VsZW1lbnQtPmlzU3R5bGVk
KCkpOwpAQCAtMTI2LDcgKzEyNiw3IEBAIFNWR1BhaW50U2VydmVyKiBTVkdQYWludFNlcnZlcjo6
c3Ryb2tlUGEKICAgICBpZiAocGFpbnRUeXBlID09IFNWR1BhaW50OjpTVkdfUEFJTlRUWVBFX1VS
SSB8fAogICAgICAgICBwYWludFR5cGUgPT0gU1ZHUGFpbnQ6OlNWR19QQUlOVFRZUEVfVVJJX1JH
QkNPTE9SKSB7CiAgICAgICAgIEF0b21pY1N0cmluZyBpZChTVkdVUklSZWZlcmVuY2U6OmdldFRh
cmdldChzdHJva2UtPnVyaSgpKSk7Ci0gICAgICAgIHN0cm9rZVBhaW50U2VydmVyID0gZ2V0UGFp
bnRTZXJ2ZXJCeUlkKGl0ZW0tPmRvY3VtZW50KCksIGlkKTsKKyAgICAgICAgc3Ryb2tlUGFpbnRT
ZXJ2ZXIgPSBnZXRQYWludFNlcnZlckJ5SWQoaXRlbS0+ZG9jdW1lbnQoKSwgaWQsIGl0ZW0pOwog
CiAgICAgICAgIFNWR0VsZW1lbnQqIHN2Z0VsZW1lbnQgPSBzdGF0aWNfY2FzdDxTVkdFbGVtZW50
Kj4oaXRlbS0+bm9kZSgpKTsKICAgICAgICAgQVNTRVJUKHN2Z0VsZW1lbnQgJiYgc3ZnRWxlbWVu
dC0+ZG9jdW1lbnQoKSAmJiBzdmdFbGVtZW50LT5pc1N0eWxlZCgpKTsKSW5kZXg6IFdlYkNvcmUv
c3ZnL2dyYXBoaWNzL1NWR1BhaW50U2VydmVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcv
Z3JhcGhpY3MvU1ZHUGFpbnRTZXJ2ZXIuaAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2
Zy9ncmFwaGljcy9TVkdQYWludFNlcnZlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOSw2ICsyOSw3
IEBACiAjaWYgRU5BQkxFKFNWRykKIAogI2luY2x1ZGUgIkRhc2hBcnJheS5oIgorI2luY2x1ZGUg
IlJlbmRlck9iamVjdC5oIgogI2luY2x1ZGUgIlNWR1Jlc291cmNlLmgiCiAKICNpZiBQTEFURk9S
TShDRykKQEAgLTgyLDcgKzgzLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgVGV4dFN0
cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiwgY29uc3QgU1ZHUGFpbnRTZXJ2ZXImKTsKIAot
ICAgIFNWR1BhaW50U2VydmVyKiBnZXRQYWludFNlcnZlckJ5SWQoRG9jdW1lbnQqLCBjb25zdCBB
dG9taWNTdHJpbmcmKTsKKyAgICBTVkdQYWludFNlcnZlciogZ2V0UGFpbnRTZXJ2ZXJCeUlkKERv
Y3VtZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiwgY29uc3QgUmVuZGVyT2JqZWN0Kik7CiAKICAg
ICB2b2lkIGFwcGx5U3Ryb2tlU3R5bGVUb0NvbnRleHQoR3JhcGhpY3NDb250ZXh0KiwgUmVuZGVy
U3R5bGUqLCBjb25zdCBSZW5kZXJPYmplY3QqKTsKICAgICBEYXNoQXJyYXkgZGFzaEFycmF5RnJv
bVJlbmRlcmluZ1N0eWxlKGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSwgUmVuZGVyU3R5bGUqIHJv
b3RTdHlsZSk7CkluZGV4OiBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2UuY3BwCShyZXZpc2lv
biA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMTYwLDcgKzE2MCw3IEBAIFRleHRTdHJlYW0mIFNWR1Jlc291cmNlOjpleHRl
cm5hbFJlcHJlc2UKICAgICByZXR1cm4gdHM7CiB9CiAKLVNWR1Jlc291cmNlKiBnZXRSZXNvdXJj
ZUJ5SWQoRG9jdW1lbnQqIGRvY3VtZW50LCBjb25zdCBBdG9taWNTdHJpbmcmIGlkKQorU1ZHUmVz
b3VyY2UqIGdldFJlc291cmNlQnlJZChEb2N1bWVudCogZG9jdW1lbnQsIGNvbnN0IEF0b21pY1N0
cmluZyYgaWQsIGNvbnN0IFJlbmRlck9iamVjdCogb2JqZWN0KQogewogICAgIGlmIChpZC5pc0Vt
cHR5KCkpCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTcxLDcgKzE3MSw3IEBAIFNWR1Jlc291cmNl
KiBnZXRSZXNvdXJjZUJ5SWQoRG9jdW1lbnQqIGQKICAgICAgICAgc3ZnRWxlbWVudCA9IHN0YXRp
Y19jYXN0PFNWR0VsZW1lbnQqPihlbGVtZW50KTsKIAogICAgIGlmIChzdmdFbGVtZW50ICYmIHN2
Z0VsZW1lbnQtPmlzU3R5bGVkKCkpCi0gICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxTVkdTdHls
ZWRFbGVtZW50Kj4oc3ZnRWxlbWVudCktPmNhbnZhc1Jlc291cmNlKCk7CisgICAgICAgIHJldHVy
biBzdGF0aWNfY2FzdDxTVkdTdHlsZWRFbGVtZW50Kj4oc3ZnRWxlbWVudCktPmNhbnZhc1Jlc291
cmNlKG9iamVjdCk7CiAKICAgICByZXR1cm4gMDsKIH0KSW5kZXg6IFdlYkNvcmUvc3ZnL2dyYXBo
aWNzL1NWR1Jlc291cmNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZH
UmVzb3VyY2UuaAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdS
ZXNvdXJjZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw2ICsyOCw3IEBACiAKICNpZiBFTkFCTEUo
U1ZHKQogI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisjaW5jbHVkZSAiUmVuZGVyT2JqZWN0
LmgiCiAjaW5jbHVkZSAiU3RyaW5nSGFzaC5oIgogCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4K
QEAgLTkxLDcgKzkyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBIYXNoU2V0PFNW
R1N0eWxlZEVsZW1lbnQqPiBtX2NsaWVudHM7CiAgICAgfTsKIAotICAgIFNWR1Jlc291cmNlKiBn
ZXRSZXNvdXJjZUJ5SWQoRG9jdW1lbnQqLCBjb25zdCBBdG9taWNTdHJpbmcmKTsKKyAgICBTVkdS
ZXNvdXJjZSogZ2V0UmVzb3VyY2VCeUlkKERvY3VtZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiwg
Y29uc3QgUmVuZGVyT2JqZWN0Kik7CiAgICAgCiAgICAgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChU
ZXh0U3RyZWFtJiwgY29uc3QgU1ZHUmVzb3VyY2UmKTsKIApJbmRleDogV2ViQ29yZS9zdmcvZ3Jh
cGhpY3MvU1ZHUmVzb3VyY2VDbGlwcGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9n
cmFwaGljcy9TVkdSZXNvdXJjZUNsaXBwZXIuY3BwCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNv
cmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlQ2xpcHBlci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTEyNSw5ICsxMjUsOSBAQCBUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFRleHRTdHJlYW0mIHRzLCBj
CiAgICAgcmV0dXJuIHRzOwogfQogCi1TVkdSZXNvdXJjZUNsaXBwZXIqIGdldENsaXBwZXJCeUlk
KERvY3VtZW50KiBkb2N1bWVudCwgY29uc3QgQXRvbWljU3RyaW5nJiBpZCkKK1NWR1Jlc291cmNl
Q2xpcHBlciogZ2V0Q2xpcHBlckJ5SWQoRG9jdW1lbnQqIGRvY3VtZW50LCBjb25zdCBBdG9taWNT
dHJpbmcmIGlkLCBjb25zdCBSZW5kZXJPYmplY3QqIG9iamVjdCkKIHsKLSAgICBTVkdSZXNvdXJj
ZSogcmVzb3VyY2UgPSBnZXRSZXNvdXJjZUJ5SWQoZG9jdW1lbnQsIGlkKTsKKyAgICBTVkdSZXNv
dXJjZSogcmVzb3VyY2UgPSBnZXRSZXNvdXJjZUJ5SWQoZG9jdW1lbnQsIGlkLCBvYmplY3QpOwog
ICAgIGlmIChyZXNvdXJjZSAmJiByZXNvdXJjZS0+aXNDbGlwcGVyKCkpCiAgICAgICAgIHJldHVy
biBzdGF0aWNfY2FzdDxTVkdSZXNvdXJjZUNsaXBwZXIqPihyZXNvdXJjZSk7CiAKSW5kZXg6IFdl
YkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlQ2xpcHBlci5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlQ2xpcHBlci5oCShyZXZpc2lvbiA1MjIyMCkK
KysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlQ2xpcHBlci5oCSh3b3JraW5nIGNv
cHkpCkBAIC0yNyw5ICsyNyw5IEBACiAjZGVmaW5lIFNWR1Jlc291cmNlQ2xpcHBlcl9oCiAKICNp
ZiBFTkFCTEUoU1ZHKQotCi0jaW5jbHVkZSAiU1ZHUmVzb3VyY2UuaCIKICNpbmNsdWRlICJQYXRo
LmgiCisjaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCisjaW5jbHVkZSAiU1ZHUmVzb3VyY2UuaCIK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC04NCw3ICs4NCw3IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKICAgICBUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFRleHRTdHJlYW0mLCBXaW5kUnVsZSk7
CiAgICAgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiwgY29uc3QgQ2xpcERhdGEm
KTsKIAotICAgIFNWR1Jlc291cmNlQ2xpcHBlciogZ2V0Q2xpcHBlckJ5SWQoRG9jdW1lbnQqLCBj
b25zdCBBdG9taWNTdHJpbmcmKTsKKyAgICBTVkdSZXNvdXJjZUNsaXBwZXIqIGdldENsaXBwZXJC
eUlkKERvY3VtZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiwgY29uc3QgUmVuZGVyT2JqZWN0Kik7
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIApJbmRleDogV2ViQ29yZS9zdmcvZ3JhcGhpY3Mv
U1ZHUmVzb3VyY2VGaWx0ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL2dyYXBoaWNz
L1NWR1Jlc291cmNlRmlsdGVyLmNwcAkocmV2aXNpb24gNTIyMjApCisrKyBXZWJDb3JlL3N2Zy9n
cmFwaGljcy9TVkdSZXNvdXJjZUZpbHRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUyLDcgKzUy
LDcgQEAgU1ZHUmVzb3VyY2VGaWx0ZXI6OlNWR1Jlc291cmNlRmlsdGVyKGNvbgogICAgICwgbV9z
YXZlZENvbnRleHQoMCkKICAgICAsIG1fc291cmNlR3JhcGhpY0J1ZmZlcigwKQogewotICAgIG1f
ZmlsdGVyQnVpbGRlci5zZXQobmV3IFNWR0ZpbHRlckJ1aWxkZXIoKSk7CisgICAgbV9maWx0ZXJC
dWlsZGVyLnNldChuZXcgU1ZHRmlsdGVyQnVpbGRlcigpKTsgICAgCiB9CiAKIFNWR1Jlc291cmNl
RmlsdGVyOjp+U1ZHUmVzb3VyY2VGaWx0ZXIoKQpAQCAtMjA0LDkgKzIwNCw5IEBAIFRleHRTdHJl
YW0mIFNWR1Jlc291cmNlRmlsdGVyOjpleHRlcm5hbFIKICAgICByZXR1cm4gdHM7CiB9CiAKLVNW
R1Jlc291cmNlRmlsdGVyKiBnZXRGaWx0ZXJCeUlkKERvY3VtZW50KiBkb2N1bWVudCwgY29uc3Qg
QXRvbWljU3RyaW5nJiBpZCkKK1NWR1Jlc291cmNlRmlsdGVyKiBnZXRGaWx0ZXJCeUlkKERvY3Vt
ZW50KiBkb2N1bWVudCwgY29uc3QgQXRvbWljU3RyaW5nJiBpZCwgY29uc3QgUmVuZGVyT2JqZWN0
KiBvYmplY3QpCiB7Ci0gICAgU1ZHUmVzb3VyY2UqIHJlc291cmNlID0gZ2V0UmVzb3VyY2VCeUlk
KGRvY3VtZW50LCBpZCk7CisgICAgU1ZHUmVzb3VyY2UqIHJlc291cmNlID0gZ2V0UmVzb3VyY2VC
eUlkKGRvY3VtZW50LCBpZCwgb2JqZWN0KTsKICAgICBpZiAocmVzb3VyY2UgJiYgcmVzb3VyY2Ut
PmlzRmlsdGVyKCkpCiAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxTVkdSZXNvdXJjZUZpbHRl
cio+KHJlc291cmNlKTsKIApJbmRleDogV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VG
aWx0ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZUZp
bHRlci5oCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291
cmNlRmlsdGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTEwMyw3ICsxMDMsNyBAQCBwcml2YXRlOgog
ICAgIFJlZlB0cjxGaWx0ZXI+IG1fZmlsdGVyOwogfTsKIAotU1ZHUmVzb3VyY2VGaWx0ZXIqIGdl
dEZpbHRlckJ5SWQoRG9jdW1lbnQqLCBjb25zdCBBdG9taWNTdHJpbmcmKTsKK1NWR1Jlc291cmNl
RmlsdGVyKiBnZXRGaWx0ZXJCeUlkKERvY3VtZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiwgY29u
c3QgUmVuZGVyT2JqZWN0Kik7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIApJbmRleDogV2Vi
Q29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VNYXJrZXIuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlTWFya2VyLmNwcAkocmV2aXNpb24gNTIyMjAp
CisrKyBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZU1hcmtlci5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTEyNiw5ICsxMjYsOSBAQCBUZXh0U3RyZWFtJiBTVkdSZXNvdXJjZU1hcmtlcjo6
ZXh0ZXJuYWxSCiAgICAgcmV0dXJuIHRzOwogfQogCi1TVkdSZXNvdXJjZU1hcmtlciogZ2V0TWFy
a2VyQnlJZChEb2N1bWVudCogZG9jdW1lbnQsIGNvbnN0IEF0b21pY1N0cmluZyYgaWQpCitTVkdS
ZXNvdXJjZU1hcmtlciogZ2V0TWFya2VyQnlJZChEb2N1bWVudCogZG9jdW1lbnQsIGNvbnN0IEF0
b21pY1N0cmluZyYgaWQsIGNvbnN0IFJlbmRlck9iamVjdCogb2JqZWN0KQogewotICAgIFNWR1Jl
c291cmNlKiByZXNvdXJjZSA9IGdldFJlc291cmNlQnlJZChkb2N1bWVudCwgaWQpOworICAgIFNW
R1Jlc291cmNlKiByZXNvdXJjZSA9IGdldFJlc291cmNlQnlJZChkb2N1bWVudCwgaWQsIG9iamVj
dCk7CiAgICAgaWYgKHJlc291cmNlICYmIHJlc291cmNlLT5pc01hcmtlcigpKQogICAgICAgICBy
ZXR1cm4gc3RhdGljX2Nhc3Q8U1ZHUmVzb3VyY2VNYXJrZXIqPihyZXNvdXJjZSk7CiAKSW5kZXg6
IFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291cmNlTWFya2VyLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VNYXJrZXIuaAkocmV2aXNpb24gNTIyMjAp
CisrKyBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZU1hcmtlci5oCSh3b3JraW5nIGNv
cHkpCkBAIC0yOSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKFNWRykKIAogI2luY2x1ZGUgIkZsb2F0
UmVjdC5oIgorI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgogI2luY2x1ZGUgIlNWR1Jlc291cmNl
LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTY5LDcgKzcwLDcgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogICAgICAgICBib29sIG1fdXNlU3Ryb2tlV2lkdGg7CiAgICAgfTsKIAotICAgIFNW
R1Jlc291cmNlTWFya2VyKiBnZXRNYXJrZXJCeUlkKERvY3VtZW50KiwgY29uc3QgQXRvbWljU3Ry
aW5nJik7CisgICAgU1ZHUmVzb3VyY2VNYXJrZXIqIGdldE1hcmtlckJ5SWQoRG9jdW1lbnQqLCBj
b25zdCBBdG9taWNTdHJpbmcmLCBjb25zdCBSZW5kZXJPYmplY3QqKTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQogCkluZGV4OiBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZU1hc2tl
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VNYXNr
ZXIuY3BwCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291
cmNlTWFza2VyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTA0LDkgKzEwNCw5IEBAIFRleHRTdHJl
YW0mIFNWR1Jlc291cmNlTWFza2VyOjpleHRlcm5hbFIKICAgICByZXR1cm4gdHM7CiB9CiAKLVNW
R1Jlc291cmNlTWFza2VyKiBnZXRNYXNrZXJCeUlkKERvY3VtZW50KiBkb2N1bWVudCwgY29uc3Qg
QXRvbWljU3RyaW5nJiBpZCkKK1NWR1Jlc291cmNlTWFza2VyKiBnZXRNYXNrZXJCeUlkKERvY3Vt
ZW50KiBkb2N1bWVudCwgY29uc3QgQXRvbWljU3RyaW5nJiBpZCwgY29uc3QgUmVuZGVyT2JqZWN0
KiBvYmplY3QpCiB7Ci0gICAgU1ZHUmVzb3VyY2UqIHJlc291cmNlID0gZ2V0UmVzb3VyY2VCeUlk
KGRvY3VtZW50LCBpZCk7CisgICAgU1ZHUmVzb3VyY2UqIHJlc291cmNlID0gZ2V0UmVzb3VyY2VC
eUlkKGRvY3VtZW50LCBpZCwgb2JqZWN0KTsKICAgICBpZiAocmVzb3VyY2UgJiYgcmVzb3VyY2Ut
PmlzTWFza2VyKCkpCiAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxTVkdSZXNvdXJjZU1hc2tl
cio+KHJlc291cmNlKTsKIApJbmRleDogV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHUmVzb3VyY2VN
YXNrZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdSZXNvdXJjZU1h
c2tlci5oCShyZXZpc2lvbiA1MjIyMCkKKysrIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR1Jlc291
cmNlTWFza2VyLmgJKHdvcmtpbmcgY29weSkKQEAgLTI5LDYgKzI5LDcgQEAKICNpZiBFTkFCTEUo
U1ZHKQogCiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0LmgiCisjaW5jbHVkZSAiUmVuZGVyT2Jq
ZWN0LmgiCiAjaW5jbHVkZSAiU1ZHUmVzb3VyY2UuaCIKIAogI2luY2x1ZGUgPG1lbW9yeT4KQEAg
LTY0LDcgKzY1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBGbG9hdFJlY3QgbV9t
YXNrUmVjdDsKICAgICB9OwogCi0gICAgU1ZHUmVzb3VyY2VNYXNrZXIqIGdldE1hc2tlckJ5SWQo
RG9jdW1lbnQqLCBjb25zdCBBdG9taWNTdHJpbmcmKTsKKyAgICBTVkdSZXNvdXJjZU1hc2tlciog
Z2V0TWFza2VyQnlJZChEb2N1bWVudCosIGNvbnN0IEF0b21pY1N0cmluZyYsIGNvbnN0IFJlbmRl
ck9iamVjdCogb2JqZWN0KTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCkluZGV4OiBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShy
ZXZpc2lvbiA1MjU3NikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE5IEBACisyMDA5LTEyLTI3ICBEaXJrIFNjaHVsemUgIDxrcml0QHdlYmtpdC5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU1ZH
IE1hc2sgcmVzdWx0IHdyb25nLCBpZiB0d28gZGlmZmVyZW50IG9iamVjdHMgY2FsbCB0aGUgc2Ft
ZSBtYXNrIGlkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0zMjc4NworCisgICAgICAgIFR3byByZWN0cyB3aXRoIGRpZmZlcmVudCBzaXplcyBhbmQgcG9z
aXRpb25zIGNhbGwgdGhlIHNhbWUgbWFzayBpZC4gQm90aAorICAgICAgICByZWN0cyBzaG91bGQg
YmUgbWFza2VkIHRvIHR3byBjaXJjbGVzLCBkZXBlbmRlbnQgb24gdGhlIHByb3BlcnRpZXMgb2Yg
dGhlCisgICAgICAgIHJlY3RzLgorCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy9jdXN0b20v
bWFzay1vbi1tdWx0aXBsZS1vYmplY3RzLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KKyAgICAg
ICAgKiBwbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9tYXNrLW9uLW11bHRpcGxlLW9iamVjdHMtZXhw
ZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9tYXNr
LW9uLW11bHRpcGxlLW9iamVjdHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBzdmcv
Y3VzdG9tL21hc2stb24tbXVsdGlwbGUtb2JqZWN0cy5zdmc6IEFkZGVkLgorCiAyMDA5LTEyLTI3
ICBSb2JlcnQgSG9nYW4gIDxyb2JlcnRAcm9iZXJ0aG9nYW4ubmV0PgogCiAgICAgICAgIFJ1YmJl
ci1zdGFtcGVkIGJ5IFNpbW9uIEhhdXNtYW5uLgpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL3N2Zy9jdXN0b20vbWFzay1vbi1tdWx0aXBsZS1vYmplY3RzLWV4cGVjdGVkLmNoZWNrc3Vt
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL21hc2st
b24tbXVsdGlwbGUtb2JqZWN0cy1leHBlY3RlZC5jaGVja3N1bQkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL21hc2stb24tbXVsdGlwbGUtb2JqZWN0
cy1leHBlY3RlZC5jaGVja3N1bQkocmV2aXNpb24gMCkKQEAgLTAsMCArMSBAQAorMGU1NGY2ZjU2
NzZiYzcyY2U0YjJiYWI0NGE0NzcwNDYKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4
OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9tYXNrLW9uLW11bHRpcGxlLW9i
amVjdHMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9zdmcvY3VzdG9tL21hc2stb24tbXVsdGlwbGUtb2JqZWN0cy1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvc3ZnL2N1c3RvbS9tYXNrLW9uLW11
bHRpcGxlLW9iamVjdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEwIEBA
CitLQ2FudmFzUmVzb3VyY2Uge2lkPSJtYXNrIiBbdHlwZT1NQVNLRVJdfQorbGF5ZXIgYXQgKDAs
MCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXll
ciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgUmVuZGVyU1ZHUm9vdCB7c3ZnfSBhdCAoMjAsMjAp
IHNpemUgMjIweDEwMAorICAgIFJlbmRlclNWR0hpZGRlbkNvbnRhaW5lciB7ZGVmc30gYXQgKDAs
MCkgc2l6ZSAweDAKKyAgICAgIFJlbmRlclNWR0NvbnRhaW5lciB7bWFza30gYXQgKDAsMCkgc2l6
ZSAxeDEKKyAgICAgICAgUmVuZGVyUGF0aCB7Y2lyY2xlfSBhdCAoMCwwKSBzaXplIDF4MSBbZmls
bD17W3R5cGU9U09MSURdIFtjb2xvcj0jRkZGRkZGXX1dIFtkYXRhPSJNMS4wMCwwLjUwIEwxLjAw
LDAuNTMgTDEuMDAsMC41NiBMMC45OSwwLjU5IEwwLjk4LDAuNjIgTDAuOTgsMC42NSBMMC45Niww
LjY4IEwwLjk1LDAuNzEgTDAuOTQsMC43NCBMMC45MiwwLjc3IEwwLjkwLDAuNzkgTDAuODksMC44
MiBMMC44NiwwLjg0IEwwLjg0LDAuODYgTDAuODIsMC44OSBMMC43OSwwLjkwIEwwLjc3LDAuOTIg
TDAuNzQsMC45NCBMMC43MSwwLjk1IEwwLjY4LDAuOTYgTDAuNjUsMC45OCBMMC42MiwwLjk4IEww
LjU5LDAuOTkgTDAuNTYsMS4wMCBMMC41MywxLjAwIEwwLjUwLDEuMDAgTDAuNDcsMS4wMCBMMC40
NCwxLjAwIEwwLjQxLDAuOTkgTDAuMzgsMC45OCBMMC4zNSwwLjk4IEwwLjMyLDAuOTYgTDAuMjks
MC45NSBMMC4yNiwwLjk0IEwwLjIzLDAuOTIgTDAuMjEsMC45MCBMMC4xOCwwLjg5IEwwLjE2LDAu
ODYgTDAuMTQsMC44NCBMMC4xMSwwLjgyIEwwLjEwLDAuNzkgTDAuMDgsMC43NyBMMC4wNiwwLjc0
IEwwLjA1LDAuNzEgTDAuMDQsMC42OCBMMC4wMiwwLjY1IEwwLjAyLDAuNjIgTDAuMDEsMC41OSBM
MC4wMCwwLjU2IEwwLjAwLDAuNTMgTDAuMDAsMC41MCBMMC4wMCwwLjQ3IEwwLjAwLDAuNDQgTDAu
MDEsMC40MSBMMC4wMiwwLjM4IEwwLjAyLDAuMzUgTDAuMDQsMC4zMiBMMC4wNSwwLjI5IEwwLjA2
LDAuMjYgTDAuMDgsMC4yMyBMMC4xMCwwLjIxIEwwLjExLDAuMTggTDAuMTQsMC4xNiBMMC4xNiww
LjE0IEwwLjE4LDAuMTEgTDAuMjEsMC4xMCBMMC4yMywwLjA4IEwwLjI2LDAuMDYgTDAuMjksMC4w
NSBMMC4zMiwwLjA0IEwwLjM1LDAuMDIgTDAuMzgsMC4wMiBMMC40MSwwLjAxIEwwLjQ0LDAuMDAg
TDAuNDcsMC4wMCBMMC41MCwwLjAwIEwwLjUzLDAuMDAgTDAuNTYsMC4wMCBMMC41OSwwLjAxIEww
LjYyLDAuMDIgTDAuNjUsMC4wMiBMMC42OCwwLjA0IEwwLjcxLDAuMDUgTDAuNzQsMC4wNiBMMC43
NywwLjA4IEwwLjc5LDAuMTAgTDAuODIsMC4xMSBMMC44NCwwLjE0IEwwLjg2LDAuMTYgTDAuODks
MC4xOCBMMC45MCwwLjIxIEwwLjkyLDAuMjMgTDAuOTQsMC4yNiBMMC45NSwwLjI5IEwwLjk2LDAu
MzIgTDAuOTgsMC4zNSBMMC45OCwwLjM4IEwwLjk5LDAuNDEgTDEuMDAsMC40NCBMMS4wMCwwLjQ3
IFoiXQorICAgIFJlbmRlclBhdGgge3JlY3R9IGF0ICgyMCwyMCkgc2l6ZSAxMDB4MTAwIFtmaWxs
PXtbdHlwZT1TT0xJRF0gW2NvbG9yPSMwMDgwMDBdfV0gW2RhdGE9Ik0yMC4wMCwyMC4wMCBMMTIw
LjAwLDIwLjAwIEwxMjAuMDAsMTIwLjAwIEwyMC4wMCwxMjAuMDAgWiJdCisgICAgUmVuZGVyUGF0
aCB7cmVjdH0gYXQgKDE0MCw1MCkgc2l6ZSAxMDB4NDAgW2ZpbGw9e1t0eXBlPVNPTElEXSBbY29s
b3I9IzAwODAwMF19XSBbZGF0YT0iTTE0MC4wMCw1MC4wMCBMMjQwLjAwLDUwLjAwIEwyNDAuMDAs
OTAuMDAgTDE0MC4wMCw5MC4wMCBaIl0KSW5kZXg6IExheW91dFRlc3RzL3N2Zy9jdXN0b20vbWFz
ay1vbi1tdWx0aXBsZS1vYmplY3RzLnN2Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9zdmcv
Y3VzdG9tL21hc2stb24tbXVsdGlwbGUtb2JqZWN0cy5zdmcJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9zdmcvY3VzdG9tL21hc2stb24tbXVsdGlwbGUtb2JqZWN0cy5zdmcJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsMTAgQEAKKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAv
c3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+Cis8ZGVmcz4K
KzwhLS0gWW91IHNob3VsZCBzZWUgdHdvIGNpcmNsZXMgd2l0aCBkaWZmZXJlbnQgc2l6ZXMgLS0+
Cis8bWFzayBpZD0ibWFzayIgeD0iMCUiIHk9IjAlIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAl
IiBtYXNrQ29udGVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCI+CisgICAgPGNpcmNsZSBjeD0i
LjUiIGN5PSIuNSIgcj0iLjUiIGZpbGw9IndoaXRlIi8+Cis8L21hc2s+Cis8L2RlZnM+Cis8cmVj
dCB4PSIyMCIgeT0iMjAiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiBzdHlsZT0iZmlsbDpncmVl
bjttYXNrOnVybCgjbWFzayk7Ii8+Cis8cmVjdCB4PSIxNDAiIHk9IjUwIiB3aWR0aD0iMTAwIiBo
ZWlnaHQ9IjQwIiBzdHlsZT0iZmlsbDpncmVlbjttYXNrOnVybCgjbWFzayk7Ii8+Cis8L3N2Zz4K
SW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvY3VzdG9tL21hc2stb24tbXVsdGlw
bGUtb2JqZWN0cy1leHBlY3RlZC5wbmcKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpDYW5ub3QgZGlzcGxheTogZmlsZSBt
YXJrZWQgYXMgYSBiaW5hcnkgdHlwZS4Kc3ZuOm1pbWUtdHlwZSA9IGFwcGxpY2F0aW9uL29jdGV0
LXN0cmVhbQoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2
Zy9jdXN0b20vbWFzay1vbi1tdWx0aXBsZS1vYmplY3RzLWV4cGVjdGVkLnBuZwpfX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
CkFkZGVkOiBzdm46bWltZS10eXBlCiAgICsgYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgoKaVZC
T1J3MEtHZ29BQUFBTlNVaEVVZ0FBQXlBQUFBSllDQVlBQUFDYWRvSndBQUFETzJsRFExQkpRME1n
VUhKdlptbHNaUUFBZUFHRgpsRXRvMUZBVWh2K01LWUswZ3FpMUZwVGdRb3UwSlQ3UWlsRGJhYlhX
a1hFWSs5QWl5RFJ6WnhwTk16R1pHUitJU0VIYytWcUtHeCtJCml5cmlRcnBRY0tVTGtVTHJhMUVF
Y2FVaWlFSTNVc2IvSnUxTUtsWXZKUGx5em4vUDY0WUFWUTlUam1ORk5HRFl6cnZKcnFoMjZQQ0EK
dG5nQ1ZhaEJOYmhTaHVlMEp4TDdmYVpXUHVldjZiZFFwR1d5U2NhSzlSMlkrTFJ0OWYxTGoyTHY2
NTcyK3A3NStubHZOUzRUQW9wRwo2NHBzd0ZzbER3YThWL0xKdkpPbjVvaGtZeWlWSmp2a1JyY24y
VUcrUVY2YURmRmdpTlBDTTRDcU5tcHlodU15VG1RRnVhVm9aR1hNClViSnVwMDJiUENYdGFjOFlw
b2I5Um43SVdkREdsWThCcld1QVJTOHJ0Z0VQR0wwTHJGcGZzVFhVQVN2N2diRXRGZHZQcEQ4ZnBY
YmMKeTJ6WjdJZFRxcU9zNlVPcDlITTlzUGdhTUhPMVZQcDFxMVNhdWMwY3JPT1paUlRjb3E5bFlj
b3JJS2czMk0zNHlUbGFpSU9lZkZVTApjSk56N0Y4Q3hDNEExejhDR3g0QXl4OERpUnFnWndjaTU5
bHVjT1hGS2M0RjZNZzVwMTB6TzVUWE51djZkcTJkUnl1MGJ0dG9idFJTCmxxWDVMazl6aFNmY29r
ZzNZOWdxY003K1dzWjd0YkI3RC9MSi9pTG5oTGQ3bHBXUmRLcVRzMFF6Mi9xU0ZwMjd5WTNrZXhs
elR6ZTUKZ2RkVXh0M1RHN0N5MGN4Mzl3UWM2Yk90T005RmFpSjE5bUQ4QUpueEZkWEpSK1U4Skk5
NHhZTXlwbTgvbHRxWElOZlRuanllaTBsTgpMZmUyblJucTRSbEpWcXd6UXgzeFdYN3RGcEl5N3pw
cTdqaVcvODJ6dHNoekhJWUZBUk0yN3pZMEpOR0ZLSnJnd0VVT0dYcE1La3hhCnBWL1Fhc0xEOGI4
cUxTVEt1eXdxdXZDWmV6NzdlMDZnd04weWZoK2ljWXcwbGlObytqdjltLzVHdjZuZjBiOWVxUzgw
VkR3ajdsSFQKR0wvOG5YRmxabG1OakJ2VUtPUExtb0w0QnF0dHA5ZENsdFpoWGtGUFhsbmZGSzR1
WTErcEwzczBtVU5jakUrSHVoU2hURTBZWkR6Wgp0ZXkrU0xiNEp2eDhjOWtXbWg2MUw4NCtxYXZr
ZXFPT0habXNmbkUyWEExci83T3JZTkt5cS9Ea2paQXVQR3VocmxVM3FkMXFpN29ECm1ycExiVk5i
MVU2KzdWVDNsM2YwY2xZbVRySnVsOVduMklPTjAvUldUcm95V3dUL0ZuNHgvQzkxQ1Z1NHBxSEpm
MmpDeldWTVMvaU8KNFBZZmQwajVML3dOQVlVVkRYeExPenNBQUNBQVNVUkJWSGdCN2QxL3JOWDFm
Zmp4MTRVTG9sQXVxQmRJNVllS0lCWVFsaWdUd3lKTApiVVVYUjdxbHpXd2xScjc1ZmpQbW10RDIr
MGUzcGY1UnM5Zy8xbzZrc3l6Wjk0c3phRjFzdG9ZMkZXeFpxcHRSUTAwS0FvcWdWbjdZCkFWZUZl
d3Q2aFF2MzYvc3M5TXM2c1FqbnZNNzVuUHM0NWdhOVA4N3I4M2w4WGsxNDl0eHpUc2ZnKzdkd0kw
Q0FBQUVDQkFnUUlFQ0EKUUlMQXNJUVpSaEFnUUlBQUFRSUVDQkFnUUtBbUlFQXNBZ0VDQkFnUUlF
Q0FBQUVDYVFJQ0pJM2FJQUlFQ0JBZ1FJQUFBUUlFQklnZApJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBG
RWJSSUFBQVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWtDUWlRTkdxRENCQWdRSUFBCkFR
SUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUUFRSUVDQkFnUUlBQUFRSUN4QTRRSUVD
QUFBRUNCQWdRSUpBbUlFRFMKcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVDQk5J
RUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUQpJRUNBUUpxQUFFbWpOb2dBQVFJ
RUNCQWdRSUFBQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RSUduVUJoRWdRSUFBQVFJRUNCQWdJRURz
CkFBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFRSUVPb2NhUWMvUm50amVzejEy
dkxralh1cDVLZmIxN1l2OVIvYlgKUHZyZTY0ditnZjdhUjNFWjFUbXE5akgyZ3JFeGFjeWsyc2VV
cmlreDY5Slp0WS9aM2JPamUzVDNVQ04wdmdRSUVDQkFnQUFCQWdUTwpXYUJqOFAzYk9mOTBCWDV3
VCsrZVdMOXJmVHk5NStsNGR0K3o4ZXFoVit0NjFOUEhUNCtGa3hmR29xbUw0dFladDhiVXJxbDF2
WDkzClJvQUFBUUlFQ0JBZ1FLQ2RCTm95UUxZZDNCYVB2UEJJL0hEbkQydVBkbVJlc1BLb3lPMHpi
NDh2WFB1Rm1ETmhUdVpvc3dnUUlFQ0EKQUFFQ0JBaTB2RURiQkVodmYyK3MrZm1hZUdqTFE3SGx3
SmFXZ0o4M2NWN2NOZSt1V1A0N3k2TnJWRmRMSEpPRElFQ0FBQUVDQkFnUQpJTkJNZ2NvSHlLNjNk
c1dxNTFiVnd1UG84YVBOdER6ajdORWpSdGRDWk9VTksyUEdKVFBPK0gyK1FJQUFBUUlFQ0JBZ1FL
RGRCU29iCklLOGRlaTN1ZStxK1dQdkMyamd4ZUtJUzEybDR4L0JZZHUyeStOcE5YNHNyeDE5WmlX
TjJrQVFJRUNCQWdBQUJBZ1RxS1ZDNUFEbmMKZnpqdS9lbTlzZnBucTJOZ2NLQ2VGbW4zMWRuUkdT
dXVYeEZmLy8ydng3aFI0OUxtR2tTQUFBRUNCQWdRSUVDZzJRS1ZDWkR5WWwwUApibjR3dnJyeHE5
SHpUayt6M2VveXYvdWk3dmpHemQrSXUrZmZIUjBkSFhXNVQzZENnQUFCQWdRSUVDQkFvSlVGS2hF
Z2UzdjN4dkoxCnkyUGpMemEyc3VVNUg5dk5WOXdjYTVhdWlmSWVJMjRFQ0JBZ1FJQUFBUUlFMmxt
ZzVRT2t2Snp1UFkvZkU3M3Y5YmJ6ZFlpdUM3cmkKZ2RzZXFMMThiMXVmcUpNalFJQUFBUUlFQ0JB
WTBnSXRHeURIVGh5TGxSdFd4dXJuVncrcEM3VGl1aFd4YXNtcUdEbDg1SkE2YnlkTApnQUFCQWdR
SUVDQXdOQVJhTWtEMkg5a2ZTeDlkR3B0K3VXbG9YSVhmT01zRkgxOFE2KzVZRjVQR1RQcU5yL2hQ
QWdRSUVDQkFnQUFCCkF0VVdhTGtBMmZIbWpyajE0VnZqOWQ3WHF5MTdua2QvZWRmbHNmN085VEhy
MGxubmVVOStuQUFCQWdRSUVDQkFnRURyQ0xSVWdEeTcKOTluNGcrLytRUnpxUDlRNlFrMDhrdkdq
eHNlUFB2K2pXRGhsWVJPUHdtZ0NCQWdRSUVDQUFBRUM5Uk5vbVFCNVp1OHpzZVRoSmZHcgpZNytx
MzltMXdUMTliT1RIWXNPZEcrTEdLVGUyd2RrNEJRSUVDQkFnUUlBQWdhRXUwQklCVWg3NXVPWGhX
OFRIR2JheFJNZ1RkejdoCmtaQXorUGcwQVFJRUNCQWdRSUJBZFFTYUhpRGxPUjgzL3Q4Yi9kclZi
OW1aOHV0WXoveVBaenduNUxjNCtUSUJBZ1FJRUNCQWdFQnIKQ3d4cjV1R1ZWN3NxdjNibE9SKy8v
U29Vby9May9HTG1Sb0FBQVFJRUNCQWdRS0NxQWswTGtQSStIK1dsZG5mMzdxNnFYZnB4bDFjRwpL
MmJGem8wQUFRSUVDQkFnUUlCQUZRV2FGaURsVFFhSDZ2dDhuTStpRkxOaTUwYUFBQUVDQkFnUUlF
Q2dpZ0pOQ1pCSFhuaGt5TDNECmVUMlhvN3c3ZkRGMEkwQ0FBQUVDQkFnUUlGQTFnZlFub2UvdDNS
dHpWOCtOM3ZkNnEyYlZVc2ZiZFVGWGJGMnhOYVowVFdtcDQzSXcKQkFnUUlFQ0FBQUVDQkQ1TUlQ
VVJrTUhCd1ZpK2JybjQrTEFyY3BaZkt3RlhMSXVwR3dFQ0JBZ1FJRUNBQUlHcUNLUUd5SnFmcjRt
Tgp2OWhZRlp1V1A4NWlXVXpkQ0JBZ1FJQUFBUUlFQ0ZSRklPMVhzQTczSDQ2WjM1NFpQZS8wVk1X
bUVzZlpmVkYzN1B6aXpoZzNhbHdsCmp0ZEJFaUJBZ0FBQkFnUUlERzJCdEVkQTd2M3B2ZUtqQWJ0
V2dxN1l1aEVnUUlBQUFRSUVDQkNvZ2tES0l5Q3ZIWG90cnY3MjFURXcKT0ZBRms4b2RZMmRIWjd6
OHhaZmp5dkZYVnU3WUhUQUJBZ1FJRUNCQWdNRFFFa2g1Qk9TK3ArNFRIdzNjcXhKMnhkaU5BQUVD
QkFnUQpJRUNBUUtzTE5Qd1JrRjF2N1lwckhyZ21UZ3llYUhXTFNoL2Y4STdoOGRJOUw4V01TMlpV
K2p3Y1BBRUNCQWdRSUVDQVFIc0xOUHdSCmtGWFByUklmQ1R0VUFxOVl1eEVnUUlBQUFRSUVDQkJv
WllHR1BnTFMyOThibDMzcnNqaDYvR2dyRzdUTnNZMGVNVHJlK1BJYjBUV3EKcTIzTzZVd25jdnpF
OGRqWHR5LzI5TzZKdlgxN1kvK1IvWEhneUlFNGVQUmd2UDN1MjFGZWRhMThIRGwySk40ZGVEZmVP
ZjVPbEo4WgpPRG53NnlBdWp4cDFEdXVNRWNOSHhFVWpMb29MT3krTU1TUEgxRjVSckx5cTJNVVhY
aHdUUmsrSWlXTW14cVF4azJMSzJDa3h0V3RxClRCNDd1Zll6WnpvMm55ZEFnQUFCQWdRSUVEaXpR
T2VadjNUK1h5bnZVU0UrenQveGJPK2hXQmZ6THkzODB0bitTTXQvWDk5N2ZiSDEKd05iWWRuQmI3
V1BuV3p0ajE5dTdZdmZoM1hIeS9YL081MWFlT3pOd1lpRDZUL1RIcjQ3OTZxenZhbGdNaTJuanBz
V01pMmZFekV0bQp4cHdKYzJvZmN5Zk9qYkVYakQzcisvR05CQWdRSUVDQUFJR2hLTkRRUjBEbS8v
MzgySEpneTFCMGJkbzV6NXM0THpiLzZlYW16VCtmCndTY0hUOGFXL1Z2aTZUMVB4M1A3bm92bmYv
bDhMVFlHb3hydjl0NFJIYlVvdWU3ajE4VU5rMitJUlZNWHhieEo4MkpZUjhOLzAvRjgKMlAwc0FR
SUVDQkFnUUNCVm9HRUJVdjRmNjdtcjU2YWVqR0gvS2JCMXhkYmEveU5mQlk5WDNuNGxOcnl5SVg3
eTZrL2l5ZGVmakw1agpmVlU0N0xNK3hyRWp4OGJpeXhmSHA2Wi9LcFpjdFNTdXV2aXFzLzVaMzBp
QUFBRUNCQWdRYUVlQmh2MEsxaU12UE5LT1hwVTRwMkovCi84MzN0K3l4YnQ2L09SN2IvbGlzMjdF
dVhuenp4Wlk5em5vY1dBbXFIK3o4UWUyajNOOG5MdjFFTEoyMU5ENDMrM014ZjlMOGVveHcKSHdR
SUVDQkFnQUNCU2drMDdCR1FPZCtaRTl0N3RsY0tvMTBPZG5iMzdOajJaOXRhNm5US0U4UWYzUHhn
ck4yeXR1Mmo0MnpoUzR3cwptN2NzN3A1L2QrMko3bWY3Yzc2UEFBRUNCQWdRSUZCbGdZWUVTSGxs
b21tcnBsWFpwZkxIdm52bDd0b3JOalg3UkRhOXNTbSsrY3czCjQvczd2aC9IVHg1djl1RzA1UHdS
dzBiRVoyWjlKcjV5NDFkaXdXVUxXdklZSFJRQkFnUUlFQ0JBb0Y0Q0RYbDI3UHBkNit0MWZPN24K
SEFXYWZRMmVldjJwV1B5UGkrTjMvOC92eG1NdlBpWStQdVE2bGpBclJzV3FtUDNiN24vN2tPLzJK
UUlFQ0JBZ1FJQkF0UVVhRWlEbApWWXpjbWl2UXJHdXc0ODBkc2VUaEpiSDRvY1h4MU82bm1vdFF3
ZW5GN0taL3ZLbG1XQ3pkQ0JBZ1FJQUFBUUx0SnRDUUFIbDIzN1B0CjVsUzU4OG0rQnNkT0hJdS8r
dGUvaW10WFh4dFB2UHBFNWJ4YTdZQ0xZYkVzcHNYV2pRQUJBZ1FJRUNEUUxnSjFmdzVJejlHZW1Q
QTMKRTlyRnA5TG5jZkIvSDR6dTBkME5QNGVYMzN3NVB2dTl6OGJXZzFzYlBtc29EcGc3WVc1ODc3
UGZpNnN2dlhvb25yNXpKa0NBQUFFQwpCTnBNb082UGdIamxxOWJaa0l4cjhmaXV4MlBCUHl3UUh3
Mjg3Q1hzaW5HeGRpTkFnQUFCQWdRSVZGMmc3Z0h5VXM5TFZUZHBtK052CjlMWDRwMjMvRkVzZlhk
cDJieDdZaWd0UTNrK2tXQmR6TndJRUNCQWdRSUJBbFFYcUhpQ2VPTnM2NjlESWExSGV2WHpadnl5
TGdjR0IKMWpuaE5qK1NZbDNNbjNqRmMyemEvRkk3UFFJRUNCQWcwTllDZFErUWZYMzcyaHFzU2lm
WHFHdXh0M2R2ZlA2ZlB5OCttckFNSlVMdQorT2M3b2x3RE53SUVDQkFnUUlCQUZRWHFIaUQ3ait5
dm9rTmJIbk9qcnNXZlAvN25jYWovVUZ1YVZlR2tpbjI1Qm00RUNCQWdRSUFBCmdTb0sxRDFBL3VQ
SWYxVFJvUzJQdVJFQjhyTTNmaFkvMlBtRHR2U3Ewa21WYTFDdWhSc0JBZ1FJRUNCQW9Hb0NkUStR
dnZmNnFtYlEKdHNmYisxNXYzYy90d2MwUDF2MCszZUc1Q2JnVzUrYm1wd2dRSUVDQUFJSG1DdFE5
UVBvSCtwdDdScWIvV3FBUjErTEoxNS84OWYzNwpsK1lLdUJiTjlUZWRBQUVDQkFnUU9EY0JBWEp1
YnBYNHFVWUV5TzdEdXl0eDdrUGhJRjJMb1hDVm5TTUJBZ1FJRUdnL2dib0hTRWQwCnRKOVNSYy9J
dGFqb2hYUFlCQWdRSUVDQUFJRTJGcWg3Z0l6cUhOWEdYTlU2dFVaY2kybmpwbFVMb1kyUDFyVm80
NHZyMUFnUUlFQ0EKUUJzTENKQTJ2cmlOQ0pERmx5OXVZN0ZxblpwclVhM3I1V2dKRUNCQWdBQ0Iv
eFNvZTRDTXZXQXMyeFlSYU1TMXVIdiszUzF5ZGc3RAp0YkFEQkFnUUlFQ0FRQlVGNmg0Z2s4Wk1x
cUpEV3g1ekk2N0Y5WmRkSDM4NDh3L2IwcXRLSjFXdVFia1diZ1FJRUNCQWdBQ0JxZ2tJCmtLcGRz
WTl3dkkwSWtETCs3Mjc3dXhnL2F2eEhPQkxmV2srQllsK3VnUnNCQWdRSUVDQkFvSW9DZFErUXlX
TW5WOUdoTFk5NVN0ZVUKaHB4WHVkL3YvdkYzbzdPanN5SDM3MDdQTEZETUgvM2pSNk5SMS9iTWsz
MkZBQUVDQkFnUUlGQWZnYm9IeUt4TFo5WG55TnpMZVFzMAo4bG9zdVdwSnJQMmp0U0xrdksvUzJk
OUJpWTlpZnN0VnQ1ejlEL2xPQWdRSUVDQkFnRUNMQ2RROVFLN3B2cWJGVG5Ib0hrNGpBNlNvCi9z
bWNQNGwxZDZ5THNTTzk4RUNqdDZ3WUYrdGk3a2FBQUFFQ0JBZ1FxTEpBM1FOa2R2ZnNLbnUwMWJG
blhJdmJadHdXbS83bnBwZzcKWVc1YjJiWFN5UlRiWWx5czNRZ1FJRUNBQUFFQ1ZSZW9lNEIwais2
TzZlT25WOTJsOHNkZnJrRzVGaG0zcXkrOU9wNy9YOC9IWHk3Ngp5eGd4YkVUR3lDRXhvMWdXMDJK
YmpOMElFQ0JBZ0FBQkF1MGdVUGNBS1NnTEp5OXNCNXRLbjBQMk5SZzVmR1Q4OVNmL09sNVk4VUxj
Ck10MXpGTTUzZVlwaHNTeW14ZGFOQUFFQ0JBZ1FJTkF1QWcwSmtFVlRGN1dMVDJYUG8xblhvRHp2
Wk1PZEcrTEp1NTZNbTZiZFZGbS8KWmgxNE1TdDJ4YkRSeitGcDFqbWFTNEFBQVFJRUNBeHRnWTdC
OTIvMUp0alR1eWVtclpwVzc3dDFmeDlCWVBmSzNURzFhK3BIK0luRwpmT3VtTnpiRk41LzVabngv
eC9maitNbmpqUmxTOFhzdHYycjFtVm1maWEvYytKVlljTm1DaXArTnd5ZEFnQUFCQWdRSWZMaEFR
d0trCmpKenpuVG14dldmN2gwLzMxWVlJbENlZmIvdXpiUTI1NzNPOTB3TkhEc1NEbXgrTXRWdld4
b3R2dm5pdWQ5TldQL2VKU3o4UnkrWXQKaTd2bjN4MFR4MHhzcTNOek1nUUlFQ0JBZ0FDQk13azA3
SjNrYnA5NXV3QTVrM3FEUDEvc1crMVcvb0w5MVVWZnJYMXMzcjg1SHR2KwpXS3pic1c3SXhVaUpq
cVd6bHNiblpuOHU1aythMzJxWHlmRVFJRUNBQUFFQ0JCb3UwTEJIUUxZZDNCWnpWM3RwMW9aZndR
OFlzSFhGCjFwZ3pZYzRIZktYMVB2WEsyNi9FaGxjMnhFOWUvVWs4K2ZxVDBYZXNyL1VPOGp5T3FM
eC94K0xMRjhlbnBuOHF5cHMzWG5YeFZlZHgKYjM2VUFBRUNCQWdRSUZCOWdZWUZTS0daLy9melk4
dUJMZFZYcXRBWnpKczRMemIvNmVZS0hmSC9QOVNUZ3lkankvNHQ4ZlNlcCtPNQpmYy9GODc5OFBu
YTl2U3NHMy8rbkNyZU82SWdaRjgrSTZ6NStYZHd3K1lZb0x3UXdiOUs4R05iUmtOZDZxQUtKWXlS
QWdBQUJBZ1FJCi9EZUJoZ2JJM3o3N3QvSGxIMy81dnczMWljWUpmT3ZUMzRvdkxmeFM0d1lrMzNQ
ZmUzMng5Y0RXMkhwd2Eydy91RDEydnJXekZpVzcKRCsrT2srLy8wNHpic0JnVzA4Wk5xOFhHekV0
bXh1d0pzMnR2eERoMzR0d1llNEYzaFcvR05UR1RBQUVDQkFnUXFJNUFRd09rdDc4MwpMdnZXWlhI
MCtOSHFpRlQ0U0VlUEdCMXZmUG1ONkJyVlZlR3pPTHREUDNiaVdMelI5MGFVVjF6YjI3YzM5aC9a
SCtXSjdnZVBIb3kzCjMzMDdEdmNmcm4wY09YWWszaDE0Tjk0NS9rNlVuemx4OGtTY0dEeFJHeks4
WTNnTUh6YTg5ajRiRjQyNEtDN3N2RERHakJ3VDQwYU4KcTMxY2ZPSEZNV0gwaE5vVHhDZU5tUlJU
eGs2cHZiTFk1TEdUWThSd2I3aDRkbGZLZHhFZ1FJQUFBUUlFL3F0QXc1NkVYc2FVdndqZgpOZSt1
K003ejMvbXZVLzFYUXdTSzlWQ0lqNEpYM3B6dml2RlgxRDRhZ3VsT0NSQWdRSUFBQVFJRUdpTFE4
RjlPWDNuRHlpai9UN05iCll3V0tjYkYySTBDQUFBRUNCQWdRSU5ES0FnMFBrQm1YeklobDF5NXJa
WU8yT0xaaVhLemRDQkFnUUlBQUFRSUVDTFN5UUVPZkEzTHEKeEY4NzlGcGMvZTJyWTJCdzROU24v
RmxIZ2M2T3puajVpeS9IbGVPdnJPTzl1aXNDQkFnUUlFQ0FBQUVDOVJkbytDTWc1WkRMWDR4WApY
TCtpL2tmdkhtc0N4Vlo4V0FZQ0JBZ1FJRUNBQUlFcUNLUThBbElneXFzU3pmejJ6T2g1cDZjS0xw
VTV4dTZMdW1QbkYzZldYcldwCk1nZnRRQWtRSUVDQUFBRUNCSWFzUU1vaklFVzN2TFRwL1orOGY4
aENOK3JFdjNIek44UkhvM0RkTHdFQ0JBZ1FJRUNBUU4wRjBoNEIKS1VjK09EZ1luMTc3NmRqNGk0
MTFQNUdoZUljM1gzRnovSGpaajZPam8yTW9ucjV6SmtDQUFBRUNCQWdRcUtCQWFvQVVuNzI5ZTJQ
dQo2cm5SKzE1dkJibGE1NUM3THVpS3JTdTJ4cFN1S2ExelVJNkVBQUVDQkFnUUlFQ0F3RzhSU1Bz
VnJGUEhVZjdDL01CdEQ1ejZUMytlCm8wQXhGQi9uaU9mSENCQWdRSUFBQVFJRW1pYVFIaURsVEw5
dzdSZGl4WFZlRmV0Y3IzcXhLNFp1QkFnUUlFQ0FBQUVDQktvbWtQNHIKV0tlQWpwMDRGciszNXZk
aTB5ODNuZnFVUDg5Q1lNSEhGOFMvTC8vM0dEbDg1Rmw4dDI4aFFJQUFBUUlFQ0JBZzBGb0NUWGtF
cEJDVQp2MEN2dTJOZFhONTFlV3VKdFBEUkZLdGlKajVhK0NJNU5BSUVDQkFnUUlBQWdROFZhRnFB
bEtPYU5HWlNyTDl6Zll3Zk5mNUREOUlYCm8yWlVySXFaR3dFQ0JBZ1FJRUNBQUlHcUNqUTFRQXJh
ckV0bnhZOCsvNlA0Mk1pUFZkV3c0Y2RkYklwUnNYSWpRSUFBQVFJRUNCQWcKVUdXQnBnZEl3VnM0
WldGc3VIT0RDUG1BVFNyeFVXeUtrUnNCQWdRSUVDQkFnQUNCcWd1MFJJQVV4QnVuM0JoUDNQbUVY
OGM2YmFQSwpyNllWazJMalJvQUFBUUlFQ0JBZ1FLQWRCSnIyS2xobnd0dng1bzVZOHZDUzJOMjcr
MHpmTWlRK1A2MXJXdTJSRDc5Mk5TUXV0NU1rClFJQUFBUUlFQ0F3WmdaWUxrQ0svLzhqK1dQcm8w
aUg3RXIzbHBYYkxxMTE1d3ZtUStkK2hFeVZBZ0FBQkFnUUlEQm1CbHZrVnJOUEYKeTErOHkzdGRE
TVUzS3l6blhNNWRmSnkrRWY2ZEFBRUNCQWdRSUVDZ1hRUmE4aEdRMDNFZmVlR1J1T2Z4ZTZMM3Zk
N1RQOTEyLzk1MQpRVmM4Y05zRDN1Rzg3YTZzRXlKQWdBQUJBZ1FJRURoZG9PVURwQnpzM3Q2OXNY
emQ4dGo0aTQybkgzdmIvUHZOVjl3Y2E1YXVpU2xkClU5cm1uSndJQVFJRUNCQWdRSUFBZ1E4U3FF
U0FsQU1mSEJ5TU5UOWZFMy94cjM4UlBlLzBmTkM1Vk81ejNSZDF4LzJmdkQrVy84N3kKNk9qb3FO
enhPMkFDQkFnUUlFQ0FBQUVDSDFXZ01nRnk2c1FPOXgrT2UzOTZiNnorMmVvWUdCdzQ5ZWxLL2Ru
WjBSa3JybDhSWC8vOQpyOGU0VWVNcWRld09sZ0FCQWdRSUVDQkFnTUQ1Q0ZRdVFFNmQ3R3VIWG92
N25yb3YxcjZ3Tms0TW5qajE2WmIrYzNqSDhGaDI3Ykw0CjJrMWZpeXZIWDluU3grcmdDQkFnUUlB
QUFRSUVDRFJDb0xJQmNncGoxMXU3WXRWenErS2hMUS9GMGVOSFQzMjZwZjRjUFdKMDNEWHYKcmxo
NXc4cVljY21NbGpvMkIwT0FBQUVDQkFnUUlFQWdVNkR5QVhJS3E3ZS90L1lja1JJaVd3NXNPZlhw
cHY0NWIrSzhXbmlVNTNoMApqZXBxNnJFWVRvQUFBUUlFQ0JBZ1FLQVZCTm9tUUU3SDNIWndXNVNY
Ny8zaHpoL0c5cDd0cDMrcDRmOCt1M3QyM0Q3ejl0ckw2YzZaCk1LZmg4d3dnUUlBQUFRSUVDQkFn
VUNXQnRneVEweS9BbnQ0OXNYN1grbmg2ejlQeDdMNW40OVZEcjU3KzVmUCs5K25qcDhmQ3lRdGoK
MGRSRmNldU1XMk5xMTlUenZrOTNRSUFBQVFJRUNCQWdRS0JkQmRvK1FIN3p3dlVjN2FrOUt2SlN6
MHV4NDgwZHNhOXZYK3cvc3IvMgpVZDdzc0grZ3YvWlJmbTVVNTZqYVIzbVR3UExPNU9Wajh0akpN
ZXZTV1hGTjl6VlJIdTNvSHQzOW15UDhOd0VDQkFnUUlFQ0FBQUVDClp4QVljZ0Z5QmdlZkprQ0FB
QUVDQkFnUUlFQWdRV0JZd2d3akNCQWdRSUFBQVFJRUNCQWdVQk1RSUJhQkFBRUNCQWdRSUVDQUFJ
RTAKQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJ
QUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUQpJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNB
Z1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBCkFRRmlCd2dRSUVDQUFB
RUNCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkz
YUlBSUUKQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JB
Z1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpawpDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJSGFBQUFF
Q0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBCkFBRUNCQWdRSUpB
bUlFRFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFn
UUlBQUFRSUUKQ0FnUU8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZp
QndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZwpRSUFBQVFJRUNCQWdJRURzQUFFQ0JBZ1FJRUNB
QUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnClRVQ0FwRkVi
UklBQUFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVD
QkFRSUhhQUFBRUMKQkFnUUlFQ0FBSUUwQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FB
QUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZwpRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JOSUVC
RWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBCkFRSUVD
QkFnUUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FB
RUNCQWdRSUVDQUFBRUMKYVFJQ0pJM2FJQUlFQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUUlF
QWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUQpJRUNBQUFFQ0JBaWtDUWlRTkdxRENC
QWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBCkFR
SUN4QTRRSUVDQUFBRUNCQWdRSUpBbUlFRFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVD
QUFBRUNCTklFQkVnYXRVRUUKQ0JBZ1FJQUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVt
ak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFnUQpTQk1RSUduVUJoRWdRSUFBQVFJ
RUNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNB
CkFBRUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlr
Q1FpUU5HcURDQkFnUUlBQUFRSUUKQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFHU1JtMFFBUUlF
Q0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaQpRSUFBQVFJRUNCQWdRRUNB
MkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJ
RUNBClFKcUFBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblVC
aEVnUUlBQUFRSUVDQkFnSUVEc0FBRUMKQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFQ0JBZ1FJQUFB
UUlFQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JBZwpRSUNBQUxFREJBZ1FJ
RUNBQUFFQ0JBaWtDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFR
R1NSbTBRCkFRSUVDQkFnUUlBQUFRSUN4QTRRSUVDQUFBRUNCQWdRSUpBbUlFRFNxQTBpUUlBQUFR
SUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUMKQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFQ0FnUU8w
Q0FBQUVDQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUQpJRUNBQUFFQ0JB
Z1FTQk1RSUduVUJoRWdRSUFBQVFJRUNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJ
RUNCQWdRSUFBCkFRSUVCSWdkSUVDQUFBRUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUVDQkFnUUlD
QUFMRURCQWdRSUVDQUFBRUNCQWlrQ1FpUU5HcUQKQ0JBZ1FJQUFBUUlFQ0JBUUlIYUFBQUVDQkFn
UUlFQ0FBSUUwQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUQpJSkFtSUVE
U3FBMGlRSUFBQVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFB
QVFJRUNBZ1FPMENBCkFBRUNCQWdRSUVDQVFKcUFBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmlCd2dR
SUVDQUFBRUNCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUUKQ0JBZ0lFRHNBQUVDQkFnUUlFQ0FBQUVD
YVFJQ0pJM2FJQUlFQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYgpSSUFB
QVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWtDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJ
SGFBQUFFQ0JBZ1FJRUNBCkFJRTBBUUdTUm0wUUFRSUVDQkFnUUlBQUFRSUN4QTRRSUVDQUFBRUNC
QWdRSUpBbUlFRFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUMKQkFnUUlFQ0FBQUVDQk5JRUJFZ2F0
VUVFQ0JBZ1FJQUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZwpR
SUFBQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RSUduVUJoRWdRSUFBQVFJRUNCQWdJRURzQUFFQ0JB
Z1FJRUNBQUFFQ2FRSUNKSTNhCklBSUVDQkFnUUlBQUFRSUVCSWdkSUVDQUFBRUNCQWdRSUVBZ1RV
Q0FwRkViUklBQUFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUMKQkFpa0NRaVFOR3FEQ0JBZ1FJ
QUFBUUlFQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0
UQpJRUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBQVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNBQUFF
Q0JOSUVCRWdhdFVFRUNCQWdRSUFBCkFRSUVDQWdRTzBDQUFBRUNCQWdRSUVDQVFKcUFBRW1qTm9n
QUFRSUVDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblUKQmhFZ1FJQUFBUUlFV3RI
aE53QUFGYlJKUkVGVUNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFB
QVFJRQpCSWdkSUVDQUFBRUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUVDQkFnUUlDQUFMRURCQWdR
SUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnClFJQUFBUUlFQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUw
QVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW0KSUVEU3FBMGlRSUFB
QVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FP
MENBQUFFQwpCQWdRSUVDQVFKcUFBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUNC
QWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnCklFRHNBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJ
QUlFQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUEKQVFJRUNCQWdR
SUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWtDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JB
Z1FJRUNBQUlFMApBUUdTUm0wUUFRSUVDQkFnUUlBQUFRSUN4QTRRSUVDQUFBRUNCQWdRSUpBbUlF
RFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRCklFQ0FBQUVDQk5JRUJFZ2F0VUVFQ0JBZ1FJ
QUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUEKQVFGaUJ3
Z1FJRUNBQUFFQ0JBZ1FTQk1RSUduVUJoRWdRSUFBQVFJRUNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFF
Q2FRSUNKSTNhSUFJRQpDQkFnUUlBQUFRSUVCSWdkSUVDQUFBRUNCQWdRSUVBZ1RVQ0FwRkViUklB
QUFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlrCkNRaVFOR3FEQ0JBZ1FJQUFBUUlFQ0JB
UUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0EKQUFF
Q0JBZ1FJSkFtSUVEU3FBMGlRSUFBQVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdh
dFVFRUNCQWdRSUFBQVFJRQpDQWdRTzBDQUFBRUNCQWdRSUVDQVFKcUFBRW1qTm9nQUFRSUVDQkFn
UUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblVCaEVnClFJQUFBUUlFQ0JBZ0lFRHNBQUVD
QkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUUlFQWcK
VFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWtDUWlRTkdxRENCQWdR
SUFBQVFJRUNCQVFJSGFBQUFFQwpCQWdRSUVDQUFJRTBBUUdTUm0wUUFRSUVDQkFnUUlBQUFRSUN4
QTRRSUVDQUFBRUNCQWdRSUpBbUlFRFNxQTBpUUlBQUFRSUVDQkFnClFFQ0EyQUVDQkFnUUlFQ0FB
QUVDQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVtak5v
Z0EKQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RSUduVUJoRWdRSUFBQVFJRUNC
QWdJRURzQUFFQ0JBZ1FJRUNBQUFFQwphUUlDSkkzYUlBSUVDQkFnUUlBQUFRSUVCSWdkSUVDQUFB
RUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUVDQkFnUUlDQUFMRURCQWdRCklFQ0FBQUVDQkFpa0NR
aVFOR3FEQ0JBZ1FJQUFBUUlFQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFHU1JtMFFBUUlFQ0JB
Z1FJQUEKQVFJQ3hBNFFJRUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBQVFJRUNCQWdRRUNBMkFF
Q0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRQpDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUNCQWdRSUVD
QVFKcUFBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRClNCTVFJR25VQmhF
Z1FJQUFBUUlFQ0JBZ0lFRHNBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFQ0JBZ1FJQUFBUUlF
QklnZElFQ0EKQUFFQ0JBZ1FJRUFnVFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNB
QUFFQ0JBaWtDUWlRTkdxRENCQWdRSUFBQVFJRQpDQkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdT
Um0wUUFRSUVDQkFnUUlBQUFRSUN4QTRRSUVDQUFBRUNCQWdRSUpBbUlFRFNxQTBpClFJQUFBUUlF
Q0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVDQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFQ0FnUU8wQ0FB
QUVDQkFnUUlFQ0EKUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FT
Qk1RSUduVUJoRWdRSUFBQVFJRUNCQWdJRURzQUFFQwpCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVD
QkFnUUlBQUFRSUVCSWdkSUVDQUFBRUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUVDQkFnClFJQ0FB
TEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FEQ0JBZ1FJQUFBUUlFQ0JBUUlIYUFBQUVDQkFnUUlF
Q0FBSUUwQVFHU1JtMFEKQVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBQUFFQ0JBZ1FJSkFtSUVEU3FB
MGlRSUFBQVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNBQUFFQwpCTklFQkVnYXRVRUVDQkFnUUlBQUFR
SUVDQWdRTzBDQUFBRUNCQWdRSUVDQVFKcUFBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmlCd2dRCklF
Q0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZ0lFRHNBQUVDQkFnUUlFQ0FBQUVDYVFJ
Q0pJM2FJQUlFQ0JBZ1FJQUEKQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBGRWJSSUFBQVFJ
RUNCQWdRSUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWtDUWlRTkdxRApDQkFnUUlBQUFRSUVDQkFRSUhh
QUFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUUFRSUVDQkFnUUlBQUFRSUN4QTRRSUVDQUFBRUNCQWdR
CklKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVDQk5JRUJFZ2F0VUVF
Q0JBZ1FJQUFBUUlFQ0FnUU8wQ0EKQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFB
QVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RSUduVUJoRWdRSUFBQVFJRQpDQkFnSUVEc0FBRUNCQWdR
SUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFRSUVCSWdkSUVDQUFBRUNCQWdRSUVBZ1RVQ0Fw
RkViClJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FEQ0JBZ1FJQUFB
UUlFQ0JBUUlIYUFBQUVDQkFnUUlFQ0EKQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJ
RUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBQVFJRUNCQWdRRUNBMkFFQwpCQWdRSUVDQUFBRUNC
TklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUNCQWdRSUVDQVFKcUFBRW1qTm9nQUFR
SUVDQkFnClFJQUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZ0lF
RHNBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2EKSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JB
Z1FJRUFnVFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNBQUFFQwpCQWlrQ1FpUU5H
cURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdTUm0wUUFRSUVDQkFnUUlB
QUFRSUN4QTRRCklFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFn
UUlFQ0FBQUVDQk5JRUJFZ2F0VUVFQ0JBZ1FJQUEKQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpx
QUFFbWpOb2dBQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RSUduVQpCaEVnUUlB
QUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnUUlBQUFRSUVCSWdk
SUVDQUFBRUNCQWdRCklFQWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVD
QkFpa0NRaVFOR3FEQ0JBZ1FJQUFBUUlFQ0JBUUlIYUEKQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBR
QVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBQUFFQ0JBZ1FJSkFtSUVEU3FBMGlRSUFBQVFJRQpDQkFn
UUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRTzBDQUFBRUNC
QWdRSUVDQVFKcUFBRW1qCk5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJ
R25VQmhFZ1FJQUFBUUlFQ0JBZ0lFRHNBQUVDQkFnUUlFQ0EKQUFFQ2FRSUNKSTNhSUFJRUNCQWdR
SUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBGRWJSSUFBQVFJRUNCQWdRSUNBQUxFRApC
QWdRSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdRSUVDQUFJ
RTBBUUdTUm0wUUFRSUVDQkFnClFJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJ
QUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0FBQUVDQk5JRUJFZ2EKdFVFRUNCQWdRSUFBQVFJRUNB
Z1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNCQWdRSUFBQVFGaUJ3Z1FJRUNBQUFF
QwpCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDSkkz
YUlBSUVDQkFnUUlBQUFRSUVCSWdkCklFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JB
Z1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVFOR3FEQ0JBZ1FJQUEKQVFJRUNCQVFJSGFBQUFF
Q0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJQ3hBNFFJRUNBQUFFQ0JBZ1FJSkFt
SUVEUwpxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFn
UUlBQUFRSUVDQWdRTzBDQUFBRUNCQWdRCklFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZp
QndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUFBUUlFQ0JBZ0lFRHMKQUFFQ0JBZ1FJRUNB
QUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFFQ0JBZ1FJRUFnVFVDQXBGRWJS
SUFBQVFJRQpDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVD
QkFRSUhhQUFBRUNCQWdRSUVDQUFJRTBBUUdTClJtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FB
QUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EyQUVDQkFnUUlFQ0EKQUFFQ0JOSUVC
RWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpxQUFFbWpOb2dBQVFJRUNC
QWdRSUFBQVFGaQpCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FB
RUNCQWdRSUVDQUFBRUNhUUlDSkkzYUlBSUVDQkFnClFJQUFBUUlFQklnZElFQ0FBQUVDQkFnUUlF
QWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlFQ0FBQUVDQkFpa0NRaVEKTkdxRENC
QWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRUNCQWdRSUFBQVFJ
Q3hBNFFJRUNBQUFFQwpCQWdRSUpBbUlFRFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVD
QUFBRUNCTklFQkVnYXRVRUVDQkFnUUlBQUFRSUVDQWdRCk8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVt
ak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFnUVNCTVFJR25VQmhFZ1FJQUEKQVFJ
RUNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRUJJZ2RJRUNB
QUFFQ0JBZ1FJRUFnVFVDQQpwRkViUklBQUFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlr
Q1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRSUhhQUFBRUNCQWdRCklFQ0FBSUUwQVFHU1JtMFFBUUlF
Q0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURTcUEwaVFJQUFBUUlFQ0JBZ1FFQ0EK
MkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFFQ0JBZ1FJ
RUNBUUpxQUFFbWpOb2dBQVFJRQpDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblVC
aEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRSUVDQUFBRUNhUUlDCkpJM2FJQUlFQ0JBZ1FJQUFB
UUlFQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFBUUlFQ0JBZ1FJQ0FBTEVEQkFnUUlF
Q0EKQUFFQ0JBaWtDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMEFR
R1NSbTBRQVFJRUNCQWdRSUFBQVFJQwp4QTRRSUVDQUFBRUNCQWdRSUpBbUlFRFNxQTBpUUlBQUFR
SUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFQkVnYXRVRUVDQkFnClFJQUFBUUlFQ0FnUU8w
Q0FBQUVDQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUFBUUZpQndnUUlFQ0FBQUVDQkFn
UVNCTVEKSUduVUJoRWdRSUFBQVFJRUNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJ
RUNCQWdRSUFBQVFJRUJJZ2RJRUNBQUFFQwpCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUVDQkFnUUlD
QUFMRURCQWdRSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnUUlBQUFRSUVDQkFRCklIYUFBQUVDQkFn
UUlFQ0FBSUUwQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0UUlFQ0FBQUVDQkFnUUlKQW1JRURT
cUEwaVFJQUEKQVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNBQUFFQ0JOSUVCRWdhdFVFRUNCQWdRSUFB
QVFJRUNBZ1FPMENBQUFFQ0JBZ1FJRUNBUUpxQQpBRW1qTm9nQUFRSUVDQkFnUUlBQUFRRmlCd2dR
SUVDQUFBRUNCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFnSUVEc0FBRUNCQWdRCklFQ0FBQUVD
YVFJQ0pJM2FJQUlFQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVDQkFnUUlFQWdUVUNBcEZFYlJJQUFB
UUlFQ0JBZ1FJQ0EKQUxFREJBZ1FJRUNBQUFFQ0JBaWtDUWlRTkdxRENCQWdRSUFBQVFJRUNCQVFJ
SGFBQUFFQ0JBZ1FJRUNBQUlFMEFRR1NSbTBRQVFJRQpDQkFnUUlBQUFRSUN4QTRRSUVDQUFBRUNC
QWdRSUpBbUlFRFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNCQWdRSUVDQUFBRUNCTklFCkJFZ2F0
VUVFQ0JBZ1FJQUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUUlFQ0FRSnFBQUVtak5vZ0FBUUlFQ0JBZ1FJ
QUFBUUZpQndnUUlFQ0EKQUFFQ0JBZ1FTQk1RSUduVUJoRWdRSUFBQVFJRUNCQWdJRURzQUFFQ0JB
Z1FJRUNBQUFFQ2FRSUNKSTNhSUFJRUNCQWdRSUFBQVFJRQpCSWdkSUVDQUFBRUNCQWdRSUVBZ1RV
Q0FwRkViUklBQUFRSUVDQkFnUUlDQUFMRURCQWdRSUVDQUFBRUNCQWlrQ1FpUU5HcURDQkFnClFJ
QUFBUUlFQ0JBUUlIYUFBQUVDQkFnUUlFQ0FBSUUwQVFHU1JtMFFBUUlFQ0JBZ1FJQUFBUUlDeEE0
UUlFQ0FBQUVDQkFnUUlKQW0KSUVEU3FBMGlRSUFBQVFJRUNCQWdRRUNBMkFFQ0JBZ1FJRUNBQUFF
Q0JOSUVCRWdhdFVFRUNCQWdRSUFBQVFJRUNBZ1FPMENBQUFFQwpCQWdRSUVDQVFKcUFBRW1qTm9n
QUFRSUVDQkFnUUlBQUFRRmlCd2dRSUVDQUFBRUNCQWdRU0JNUUlHblVCaEVnUUlBQUFRSUVDQkFn
CklFRHNBQUVDQkFnUUlFQ0FBQUVDYVFJQ0pJM2FJQUlFQ0JBZ1FJQUFBUUlFQklnZElFQ0FBQUVD
QkFnUUlFQWdUVUNBcEZFYlJJQUEKQVFJRUNCQWdRSUNBQUxFREJBZ1FJRUNBQUFFQ0JBaWtDUWlR
TkdxRENCQWdRSUFBQVFJRUNCQVFJSGFBQUFFQ0JBZ1FJRUNBQUlFMApBUUdTUm0wUUFRSUVDQkFn
UUlBQUFRSUN4QTRRSUVDQUFBRUNCQWdRSUpBbUlFRFNxQTBpUUlBQUFRSUVDQkFnUUVDQTJBRUNC
QWdRCklFQ0FBQUVDQk5JRUJFZ2F0VUVFQ0JBZ1FJQUFBUUlFQ0FnUU8wQ0FBQUVDQkFnUUlFQ0FR
SnFBQUVtak5vZ0FBUUlFQ0JBZ1FJQUEKQVFGaUJ3Z1FJRUNBQUFFQ0JBZ1FTQk1RSUduVUJoRWdR
SUFBQVFJRUNCQWdJRURzQUFFQ0JBZ1FJRUNBQUFFQ2FRSUNKSTNhSUFJRQpDQkFnUUlBQUFRSUVC
SWdkSUVDQUFBRUNCQWdRSUVBZ1RVQ0FwRkViUklBQUFRSUVDQkFnUUlEQS93TjErTFQ0UXhXajF3
QUFBQUJKClJVNUVya0pnZ2c9PQoK
</data>
<flag name="review"
          id="27574"
          type_id="1"
          status="+"
          setter="zimmermann"
    />
          </attachment>
      

    </bug>

</bugzilla>