<?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>155232</bug_id>
          
          <creation_ts>2016-03-09 09:09:26 -0800</creation_ts>
          <short_desc>Add a new image test</short_desc>
          <delta_ts>2016-03-09 17:35:41 -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>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jon Lee">jonlee</reporter>
          <assigned_to name="Jon Lee">jonlee</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>rniwa</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1172551</commentid>
    <comment_count>0</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2016-03-09 09:09:26 -0800</bug_when>
    <thetext>Add a new image test for Animometer</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172575</commentid>
    <comment_count>1</comment_count>
      <attachid>273435</attachid>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2016-03-09 09:38:53 -0800</bug_when>
    <thetext>Created attachment 273435
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172578</commentid>
    <comment_count>2</comment_count>
      <attachid>273436</attachid>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2016-03-09 09:43:35 -0800</bug_when>
    <thetext>Created attachment 273436
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172581</commentid>
    <comment_count>3</comment_count>
      <attachid>273436</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2016-03-09 09:47:09 -0800</bug_when>
    <thetext>Comment on attachment 273436
Patch

Those images are really small. I think the test would be a bit more realistic if it used larger images with some downscaling.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172741</commentid>
    <comment_count>4</comment_count>
      <attachid>273469</attachid>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2016-03-09 13:51:29 -0800</bug_when>
    <thetext>Created attachment 273469
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172792</commentid>
    <comment_count>5</comment_count>
      <attachid>273469</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2016-03-09 14:53:26 -0800</bug_when>
    <thetext>Comment on attachment 273469
Patch

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

&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:17
&gt; +    }, {
&gt; +
&gt; +    sizeMinimum: 25,
&gt; +    sizeRange: 0,

The indentation is a bit weird here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172814</commentid>
    <comment_count>6</comment_count>
      <attachid>273469</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2016-03-09 15:20:50 -0800</bug_when>
    <thetext>Comment on attachment 273469
Patch

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

&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:7
&gt; +        this.element.setAttribute(&quot;src&quot;, stage.images[Stage.randomInt(0, stage.images.length - 1)].src);

Since the images are different, should not we round among the stages.images instead of selecting a random one? Just to guarantee the fairness of the test.

&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:35
&gt; +        if (!this._life || this._position.y &gt; this.stage.size.y)

Why do we reset the particle after a certain time of animations? Why don&apos;t we keep its position and velocity as is as long as it is animating?

&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:39
&gt; +            this._position.x = (this._position.x + this.maxPosition.x) % this.maxPosition.x;

Why do we flip the position.x when the particle goes out of the stage? Should not we change the velocity x-direction instead?

&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:46
&gt; +    }

Should not this be a utility function since it is now repeated in leaves.js and don-particle.js? Also why we are using Math.round() here and not using it in DOMParticle.move()?

&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:73
&gt; +        var images = this.images;

Do we really need the &quot;images&quot; variable?

&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:87
&gt; +            images.push(img);

Since we are binding to this, I think this can be replaced by this.images.push(img);. Otherwise I do not see a reason for this binding since images and benchmark are in the scope of this function.

&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:96
&gt; +        img.addEventListener(&apos;load&apos;, function onImageLoad(e) {

What is the difference between adding and removing load event listener and just using img.onload = function () { promise.resolve(omg); }?

&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:97
&gt; +            img.removeEventListener(&apos;load&apos;, onImageLoad);

Do we need to removeEventListener() after addEventListener()?

&gt; PerformanceTests/ChangeLog:10
&gt; +        the particle goes offscreen, it resets itself somewhere on the stage.

The test is mimicking leaves falling down. So I would expect a leaf stays moving till it reaches the bottom of the stage or it is not needed. This life time makes it hard to track the movement of a specific particle.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172815</commentid>
    <comment_count>7</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2016-03-09 15:23:32 -0800</bug_when>
    <thetext>Sorry I did not intend to set the review flag again. It did happen when resolving the review conflict</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172913</commentid>
    <comment_count>8</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2016-03-09 17:35:09 -0800</bug_when>
    <thetext>Committed r197907: &lt;http://trac.webkit.org/changeset/197907&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172914</commentid>
    <comment_count>9</comment_count>
      <attachid>273469</attachid>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2016-03-09 17:35:29 -0800</bug_when>
    <thetext>Comment on attachment 273469
Patch

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

&gt;&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:7
&gt;&gt; +        this.element.setAttribute(&quot;src&quot;, stage.images[Stage.randomInt(0, stage.images.length - 1)].src);
&gt; 
&gt; Since the images are different, should not we round among the stages.images instead of selecting a random one? Just to guarantee the fairness of the test.

Doing that doesn&apos;t reduce the noise of the test.

&gt;&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:17
&gt;&gt; +    sizeRange: 0,
&gt; 
&gt; The indentation is a bit weird here.

I did this on purpose everywhere, to make it a little easier to read the class definitions. Otherwise most of the code ends up indented 8 spaces.

&gt;&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:35
&gt;&gt; +        if (!this._life || this._position.y &gt; this.stage.size.y)
&gt; 
&gt; Why do we reset the particle after a certain time of animations? Why don&apos;t we keep its position and velocity as is as long as it is animating?

It mitigates some of the visual impact of the ramp removing groups of particles.

&gt;&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:39
&gt;&gt; +            this._position.x = (this._position.x + this.maxPosition.x) % this.maxPosition.x;
&gt; 
&gt; Why do we flip the position.x when the particle goes out of the stage? Should not we change the velocity x-direction instead?

No bouncing in this animation.

&gt;&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:46
&gt;&gt; +    }
&gt; 
&gt; Should not this be a utility function since it is now repeated in leaves.js and don-particle.js? Also why we are using Math.round() here and not using it in DOMParticle.move()?

It doesn&apos;t need to. Removed.

&gt;&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:73
&gt;&gt; +        var images = this.images;
&gt; 
&gt; Do we really need the &quot;images&quot; variable?

If I remove the bind below it&apos;d be easier to do. It&apos;s also used in line 80.

&gt;&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:87
&gt;&gt; +            images.push(img);
&gt; 
&gt; Since we are binding to this, I think this can be replaced by this.images.push(img);. Otherwise I do not see a reason for this binding since images and benchmark are in the scope of this function.

Actually, I&apos;m not sure why the bind is there.

&gt;&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:96
&gt;&gt; +        img.addEventListener(&apos;load&apos;, function onImageLoad(e) {
&gt; 
&gt; What is the difference between adding and removing load event listener and just using img.onload = function () { promise.resolve(omg); }?

you&apos;re right.

&gt;&gt; PerformanceTests/Animometer/tests/master/resources/leaves.js:97
&gt;&gt; +            img.removeEventListener(&apos;load&apos;, onImageLoad);
&gt; 
&gt; Do we need to removeEventListener() after addEventListener()?

Removed with the alternate proposal.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>273435</attachid>
            <date>2016-03-09 09:38:53 -0800</date>
            <delta_ts>2016-03-09 09:43:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-155232-20160309093839.patch</filename>
            <type>text/plain</type>
            <size>42323</size>
            <attacher name="Jon Lee">jonlee</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3NzIyCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3Rz
L0FuaW1vbWV0ZXIvZGV2ZWxvcGVyLmh0bWwgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIv
ZGV2ZWxvcGVyLmh0bWwKaW5kZXggOThjMmNiZmVkMzU2ZWIzYzUxYzEyOTllMDc3YWQwZTA5YTVm
ZWU1Ni4uZDJhOGQ2ZmU3NTBkN2YyNDU1ZGQ1NDM2YmJiMDM2NWRmM2VkOGE2NCAxMDA2NDQKLS0t
IGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL2RldmVsb3Blci5odG1sCisrKyBiL1BlcmZv
cm1hbmNlVGVzdHMvQW5pbW9tZXRlci9kZXZlbG9wZXIuaHRtbApAQCAtOTMsMTUgKzkzLDExIEBA
CiAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgPHRhYmxlIGlkPSJyZXN1
bHRzLWhlYWRlciI+PC90YWJsZT4KICAgICAgICAgICAgIDwvZGl2PgotICAgICAgICAgICAgPGRp
diBpZD0icmVzdWx0cy1qc29uIj4KLSAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJzbWFs
bC1idXR0b24iIG9uY2xpY2s9ImJlbmNobWFya0NvbnRyb2xsZXIuc2hvd0pTT05SZXN1bHRzKCki
PkpTT04gcmVzdWx0czwvYnV0dG9uPgotICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhpZGRl
biI+Ci0gICAgICAgICAgICAgICAgICAgIEpTT046Ci0gICAgICAgICAgICAgICAgICAgIDx0ZXh0
YXJlYSByb3dzPTEgb25jbGljaz0idGhpcy5mb2N1cygpO3RoaXMuc2VsZWN0KCkiIHJlYWRvbmx5
PjwvdGV4dGFyZWE+Ci0gICAgICAgICAgICAgICAgPC9kaXY+Ci0gICAgICAgICAgICA8L2Rpdj4K
ICAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0iYmVuY2htYXJrQ29udHJvbGxlci5zdGFydEJl
bmNobWFyaygpIj5UZXN0IEFnYWluPC9idXR0b24+Ci0gICAgICAgICAgICA8cD4ncyc6IFNlbGVj
dCBkaWZmZXJlbnQgZGF0YSBmb3IgY29weS9wYXN0ZTwvcD4KKyAgICAgICAgICAgIDxwPgorICAg
ICAgICAgICAgICAgICdqJzogU2hvdyBKU09OIHJlc3VsdHM8YnIvPgorICAgICAgICAgICAgICAg
ICdzJzogU2VsZWN0IHZhcmlvdXMgcmVzdWx0cyBmb3IgY29weS9wYXN0ZSAodXNlIHJlcGVhdGVk
bHkgdG8gY3ljbGUpCisgICAgICAgICAgICA8L3A+CiAgICAgICAgIDwvc2VjdGlvbj4KICAgICAg
ICAgPHNlY3Rpb24gaWQ9InRlc3QtZ3JhcGgiPgogICAgICAgICAgICAgPGhlYWRlcj4KZGlmZiAt
LWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci9yZXNvdXJjZXMvZGVidWctcnVubmVy
L2FuaW1vbWV0ZXIuY3NzIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Jlc291cmNlcy9k
ZWJ1Zy1ydW5uZXIvYW5pbW9tZXRlci5jc3MKaW5kZXggZTZlN2JiNjFlOGQ1Y2QyNDAxMTQyOGRh
YjVjYjQxMWQ1NTRkOWEyNi4uOGFkYzQ4YmJlNmJkZmI1YzA2NjM4YzE2MzBjNGRkYTM2YmNiYThi
MSAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Jlc291cmNlcy9kZWJ1
Zy1ydW5uZXIvYW5pbW9tZXRlci5jc3MKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVy
L3Jlc291cmNlcy9kZWJ1Zy1ydW5uZXIvYW5pbW9tZXRlci5jc3MKQEAgLTM1MywxNCArMzUzLDYg
QEAgbGFiZWwudHJlZS1sYWJlbCB7CiAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsKIH0KIAotI3Jl
c3VsdHMtanNvbiB7Ci0gICAgbWFyZ2luLWJvdHRvbTogM2VtOwotfQotCi0jcmVzdWx0cy1qc29u
IHRleHRhcmVhIHsKLSAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViOwotfQotCiAjdGVzdC1ncmFwaCB7
CiAgICAgZmxleDogMSAwIGNhbGMoMTAwJSAtIDQwcHgpOwogfQpkaWZmIC0tZ2l0IGEvUGVyZm9y
bWFuY2VUZXN0cy9Bbmltb21ldGVyL3Jlc291cmNlcy9kZWJ1Zy1ydW5uZXIvYW5pbW9tZXRlci5q
cyBiL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci9yZXNvdXJjZXMvZGVidWctcnVubmVyL2Fu
aW1vbWV0ZXIuanMKaW5kZXggNTBmZTk2ZmRlY2ZhMGNiZmQyZmYxNGZkMGE0YmQ0MmQ3NmVhYzFj
Yy4uZmZjNzFiYWM0Zjg4YjkzNTFhMWYzZmNhYWIzYmRkNTFkMmRjNTY1NiAxMDA2NDQKLS0tIGEv
UGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Jlc291cmNlcy9kZWJ1Zy1ydW5uZXIvYW5pbW9t
ZXRlci5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvcmVzb3VyY2VzL2RlYnVn
LXJ1bm5lci9hbmltb21ldGVyLmpzCkBAIC00OTAsNyArNDkwLDcgQEAgVXRpbGl0aWVzLmV4dGVu
ZE9iamVjdCh3aW5kb3cuYmVuY2htYXJrQ29udHJvbGxlciwgewogICAgIHNob3dSZXN1bHRzOiBm
dW5jdGlvbigpCiAgICAgewogICAgICAgICBpZiAoIXRoaXMuYWRkZWRLZXlFdmVudCkgewotICAg
ICAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5cHJlc3MiLCB0aGlzLnNlbGVj
dFJlc3VsdHMsIGZhbHNlKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIo
ImtleXByZXNzIiwgdGhpcy5oYW5kbGVLZXlQcmVzcywgZmFsc2UpOwogICAgICAgICAgICAgdGhp
cy5hZGRlZEtleUV2ZW50ID0gdHJ1ZTsKICAgICAgICAgfQogCkBAIC01MTEsMTcgKzUxMSw2IEBA
IFV0aWxpdGllcy5leHRlbmRPYmplY3Qod2luZG93LmJlbmNobWFya0NvbnRyb2xsZXIsIHsKICAg
ICAgICAgc3VpdGVzTWFuYWdlci51cGRhdGVMb2NhbFN0b3JhZ2VGcm9tSlNPTihkYXNoYm9hcmQu
cmVzdWx0c1swXSk7CiAgICAgfSwKIAotICAgIHNob3dKU09OUmVzdWx0czogZnVuY3Rpb24oKQot
ICAgIHsKLSAgICAgICAgdmFyIG91dHB1dCA9IHsKLSAgICAgICAgICAgIG9wdGlvbnM6IGJlbmNo
bWFya1J1bm5lckNsaWVudC5yZXN1bHRzLm9wdGlvbnMsCi0gICAgICAgICAgICBkYXRhOiBiZW5j
aG1hcmtSdW5uZXJDbGllbnQucmVzdWx0cy5kYXRhCi0gICAgICAgIH07Ci0gICAgICAgIHZhciB0
ZXh0YXJlYSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNyZXN1bHRzLWpzb24gdGV4dGFyZWEi
KS50ZXh0Q29udGVudCA9IEpTT04uc3RyaW5naWZ5KG91dHB1dCwgbnVsbCwgMSk7Ci0gICAgICAg
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNyZXN1bHRzLWpzb24gYnV0dG9uIikucmVtb3ZlKCk7
Ci0gICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNyZXN1bHRzLWpzb24gZGl2IikuY2xh
c3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7Ci0gICAgfSwKLQogICAgIHNob3dUZXN0R3JhcGg6IGZ1
bmN0aW9uKHRlc3ROYW1lLCB0ZXN0UmVzdWx0LCB0ZXN0RGF0YSkKICAgICB7CiAgICAgICAgIHNl
Y3Rpb25zTWFuYWdlci5zZXRTZWN0aW9uSGVhZGVyKCJ0ZXN0LWdyYXBoIiwgdGVzdE5hbWUpOwpk
aWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Jlc291cmNlcy9kZWJ1Zy1y
dW5uZXIvdGVzdHMuanMgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvcmVzb3VyY2VzL2Rl
YnVnLXJ1bm5lci90ZXN0cy5qcwppbmRleCA2ZjFjODE1YjJhMmZiNzU5NjRmNWZlMTE0YTQ3OGE1
MjYwYjk5MmZhLi41ODQ4ZWFjZjJjODE0YmU2ZTQ1ZWZkZmE5ODYzODYwMzIzMjg4N2EyIDEwMDY0
NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvcmVzb3VyY2VzL2RlYnVnLXJ1bm5l
ci90ZXN0cy5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvcmVzb3VyY2VzL2Rl
YnVnLXJ1bm5lci90ZXN0cy5qcwpAQCAtMTYyLDEwICsxNjIsNiBAQCBTdWl0ZXMucHVzaChuZXcg
U3VpdGUoIkhUTUwgc3VpdGUiLAogICAgICAgICAgICAgbmFtZTogIkNTUyBib3VuY2luZyBTVkcg
aW1hZ2VzIgogICAgICAgICB9LAogICAgICAgICB7Ci0gICAgICAgICAgICB1cmw6ICJib3VuY2lu
Zy1wYXJ0aWNsZXMvYm91bmNpbmctY3NzLWltYWdlcy5odG1sP3BhcnRpY2xlV2lkdGg9ODAmcGFy
dGljbGVIZWlnaHQ9ODAmaW1hZ2VTcmM9Li4vcmVzb3VyY2VzL3lpbi15YW5nLnBuZyIsCi0gICAg
ICAgICAgICBuYW1lOiAiQ1NTIGJvdW5jaW5nIFBORyBpbWFnZXMiCi0gICAgICAgIH0sCi0gICAg
ICAgIHsKICAgICAgICAgICAgIHVybDogInRleHQvbGF5ZXJpbmctdGV4dC5odG1sIiwKICAgICAg
ICAgICAgIG5hbWU6ICJDU1MgbGF5ZXJpbmcgdGV4dCIKICAgICAgICAgfSwKZGlmZiAtLWdpdCBh
L1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci9yZXNvdXJjZXMvZXh0ZW5zaW9ucy5qcyBiL1Bl
cmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci9yZXNvdXJjZXMvZXh0ZW5zaW9ucy5qcwppbmRleCA2
ZjY1M2ZlZjI1YWI3MTRmMTVmNjZjNmJlMjNiZjZmY2U5MTk4YzkyLi5kMjZkM2I2ZjU2NDM3MThi
NzA2OTQzNjg4YzUwMjJjZDRlMzg5ZGIzIDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0Fu
aW1vbWV0ZXIvcmVzb3VyY2VzL2V4dGVuc2lvbnMuanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9B
bmltb21ldGVyL3Jlc291cmNlcy9leHRlbnNpb25zLmpzCkBAIC0zMTQsNiArMzE0LDc2IEBAIElu
c2V0cy5lbGVtZW50UGFkZGluZyA9IGZ1bmN0aW9uKGVsZW1lbnQpCiAgICAgICAgIHBhcnNlRmxv
YXQoc3R5bGVzLnBhZGRpbmdUb3ApKTsKIH0KIAorVW5pdEJlemllciA9IFV0aWxpdGllcy5jcmVh
dGVDbGFzcygKKyAgICBmdW5jdGlvbihwb2ludDEsIHBvaW50MikKKyAgICB7CisgICAgICAgIC8v
IEZpcnN0IGFuZCBsYXN0IHBvaW50cyBpbiB0aGUgQsOpemllciBjdXJ2ZSBhcmUgYXNzdW1lZCB0
byBiZSAoMCwwKSBhbmQgKCEsMSkKKyAgICAgICAgdGhpcy5fYyA9IHBvaW50MS5tdWx0aXBseSgz
KTsKKyAgICAgICAgdGhpcy5fYiA9IHBvaW50Mi5zdWJ0cmFjdChwb2ludDEpLm11bHRpcGx5KDMp
LnN1YnRyYWN0KHRoaXMuX2MpOworICAgICAgICB0aGlzLl9hID0gbmV3IFBvaW50KDEsIDEpLnN1
YnRyYWN0KHRoaXMuX2MpLnN1YnRyYWN0KHRoaXMuX2IpOworICAgIH0sIHsKKworICAgIGVwc2ls
b246IDFlLTUsCisgICAgZGVyaXZhdGl2ZUVwc2lsb246IDFlLTYsCisKKyAgICBzb2x2ZTogZnVu
Y3Rpb24oeCkKKyAgICB7CisgICAgICAgIHJldHVybiB0aGlzLnNhbXBsZVkodGhpcy5zb2x2ZUZv
clQoeCkpOworICAgIH0sCisKKyAgICBzYW1wbGVYOiBmdW5jdGlvbih0KQorICAgIHsKKyAgICAg
ICAgcmV0dXJuICgodGhpcy5fYS54ICogdCArIHRoaXMuX2IueCkgKiB0ICsgdGhpcy5fYy54KSAq
IHQ7CisgICAgfSwKKworICAgIHNhbXBsZVk6IGZ1bmN0aW9uKHQpCisgICAgeworICAgICAgICBy
ZXR1cm4gKCh0aGlzLl9hLnkgKiB0ICsgdGhpcy5fYi55KSAqIHQgKyB0aGlzLl9jLnkpICogdDtr
a2tqCisgICAgfSwKKworICAgIHNhbXBsZURlcml2YXRpdmVYOiBmdW5jdGlvbih0KQorICAgIHsK
KyAgICAgICAgcmV0dXJuKDMgKiB0aGlzLl9hLnggKiB0ICsgMiAqIHRoaXMuX2IueCkgKiB0ICsg
dGhpcy5fYy54OworICAgIH0sCisKKyAgICBzb2x2ZUZvclQ6IGZ1bmN0aW9uKHgpCisgICAgewor
ICAgICAgICB2YXIgdDAsIHQxLCB0MiwgeDIsIGQyLCBpOworCisgICAgICAgIGZvciAodDIgPSB4
LCBpID0gMDsgaSA8IDg7ICsraSkgeworICAgICAgICAgICAgeDIgPSB0aGlzLnNhbXBsZVgodDIp
IC0geDsKKyAgICAgICAgICAgIGlmIChNYXRoLmFicyh4MikgPCB0aGlzLmVwc2lsb24pCisgICAg
ICAgICAgICAgICAgcmV0dXJuIHQyOworICAgICAgICAgICAgZDIgPSB0aGlzLnNhbXBsZURlcml2
YXRpdmVYKHQyKTsKKyAgICAgICAgICAgIGlmIChNYXRoLmFicyhkMikgPCB0aGlzLmRlcml2YXRp
dmVFcHNpbG9uKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgdDIgPSB0MiAt
IHgyIC8gZDI7CisgICAgICAgIH0KKworICAgICAgICB0MCA9IDA7CisgICAgICAgIHQxID0gMTsK
KyAgICAgICAgdDIgPSB4OworCisgICAgICAgIGlmICh0MiA8IHQwKQorICAgICAgICAgICAgcmV0
dXJuIHQwOworICAgICAgICBpZiAodDIgPiB0MSkKKyAgICAgICAgICAgIHJldHVybiB0MTsKKwor
ICAgICAgICB3aGlsZSAodDAgPCB0MSkgeworICAgICAgICAgICAgeDIgPSB0aGlzLnNhbXBsZVgo
dDIpOworICAgICAgICAgICAgaWYgKE1hdGguYWJzKHgyIC0geCkgPCB0aGlzLmVwc2lsb24pCisg
ICAgICAgICAgICAgICAgcmV0dXJuIHQyOworICAgICAgICAgICAgaWYgKHggPiB4MikKKyAgICAg
ICAgICAgICAgICB0MCA9IHQyOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHQx
ID0gdDI7CisgICAgICAgICAgICB0MiA9ICh0MSAtIHQwKSAqIC41ICsgdDA7CisgICAgICAgIH0K
KworICAgICAgICByZXR1cm4gdDI7CisgICAgfQorfSk7CisKIFNpbXBsZVByb21pc2UgPSBVdGls
aXRpZXMuY3JlYXRlQ2xhc3MoCiAgICAgZnVuY3Rpb24oKQogICAgIHsKZGlmZiAtLWdpdCBhL1Bl
cmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci9yZXNvdXJjZXMvcnVubmVyL2FuaW1vbWV0ZXIuY3Nz
IGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Jlc291cmNlcy9ydW5uZXIvYW5pbW9tZXRl
ci5jc3MKaW5kZXggZWQ0NDI4MjAzYjQzYjY0NDVkZTk5ZjJkOWJkY2ExYzgyNzFmZWY4OC4uYzNh
YWRjOTJmMWRjMTY0ZTQ3MzVlZGFlMWIwZDIxYWE2ZWU2YWMwZiAxMDA2NDQKLS0tIGEvUGVyZm9y
bWFuY2VUZXN0cy9Bbmltb21ldGVyL3Jlc291cmNlcy9ydW5uZXIvYW5pbW9tZXRlci5jc3MKKysr
IGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Jlc291cmNlcy9ydW5uZXIvYW5pbW9tZXRl
ci5jc3MKQEAgLTI0MCwzICsyNDAsNTUgQEAgYnV0dG9uOmFjdGl2ZSB7CiAgICAgICAgIGZvbnQt
c2l6ZTogM2VtOwogICAgIH0KIH0KKworI292ZXJsYXkgeworICAgIHBvc2l0aW9uOiBmaXhlZDsK
KyAgICB3aWR0aDogMTAwJTsKKyAgICBoZWlnaHQ6IDEwMCU7CisgICAgdG9wOiAwOworICAgIGxl
ZnQ6IDA7CisgICAgY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsKKyAgICBiYWNrZ3JvdW5kOiBy
Z2JhKDAsIDAsIDEwLCAuOCk7Cit9CisKK0BzdXBwb3J0cyAoLXdlYmtpdC1iYWNrZHJvcC1maWx0
ZXI6IGJsdXIoMTBweCkpIHsKKyAgICAjb3ZlcmxheSB7CisgICAgICAgIGJhY2tncm91bmQ6IHJn
YmEoMCwgMCwgMTAsIC40KTsKKyAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIo
MTBweCk7CisgICAgfQorfQorCisjb3ZlcmxheSA+IGRpdiB7CisgICAgd2lkdGg6IDUwMHB4Owor
ICAgIGhlaWdodDogNTAwcHg7CisgICAgcG9zaXRpb246IGFic29sdXRlOworICAgIG1hcmdpbi10
b3A6IC0yNTBweDsKKyAgICBtYXJnaW4tbGVmdDogLTI1MHB4OworICAgIHRvcDogNTAlOworICAg
IGxlZnQ6IDUwJTsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIGp1c3RpZnktY29udGVudDogZmxl
eC1zdGFydDsKKyAgICBmbGV4LWZsb3c6IGNvbHVtbjsKK30KKworI292ZXJsYXkgPiBkaXYgZGl2
IHsKKyAgICBmbGV4OiAxIDEgYXV0bzsKKyAgICBvdmVyZmxvdzogc2Nyb2xsOworICAgIGJvcmRl
cjogMXB4IHNvbGlkIHJnYigyNDEsIDI0MSwgMjQxKTsKKyAgICBwYWRkaW5nOiAycHg7CisgICAg
Ym94LXNpemluZzogYm9yZGVyLWJveDsKK30KKworI292ZXJsYXkgYnV0dG9uIHsKKyAgICBtYXJn
aW46IDFlbSA1ZW07CisgICAgYm9yZGVyLWNvbG9yOiByZ2IoMjQxLCAyNDEsIDI0MSk7CisgICAg
Y29sb3I6IHJnYigyNDEsIDI0MSwgMjQxKTsKK30KKworI292ZXJsYXkgYnV0dG9uOmhvdmVyIHsK
KyAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKTsKK30KKworI292
ZXJsYXkgYnV0dG9uOmFjdGl2ZSB7CisgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1
NSwgMjU1LCAuMik7Cit9CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIv
cmVzb3VyY2VzL3J1bm5lci9hbmltb21ldGVyLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21l
dGVyL3Jlc291cmNlcy9ydW5uZXIvYW5pbW9tZXRlci5qcwppbmRleCA3NTlmZWJjZGM0NTYzYzJk
ZTBkZmZiN2ZhZjk5NzkyYjVlMWY1NmExLi5mODFhNTMyODU4MTk4MDFmN2JkZjAxNGM3ZWExZjQ3
YmRjYzhhNGMyIDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvcmVzb3Vy
Y2VzL3J1bm5lci9hbmltb21ldGVyLmpzCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRl
ci9yZXNvdXJjZXMvcnVubmVyL2FuaW1vbWV0ZXIuanMKQEAgLTM4MSw3ICszODEsNyBAQCB3aW5k
b3cuYmVuY2htYXJrQ29udHJvbGxlciA9IHsKICAgICBzaG93UmVzdWx0czogZnVuY3Rpb24oKQog
ICAgIHsKICAgICAgICAgaWYgKCF0aGlzLmFkZGVkS2V5RXZlbnQpIHsKLSAgICAgICAgICAgIGRv
Y3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleXByZXNzIiwgdGhpcy5zZWxlY3RSZXN1bHRzLCBm
YWxzZSk7CisgICAgICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlwcmVzcyIs
IHRoaXMuaGFuZGxlS2V5UHJlc3MsIGZhbHNlKTsKICAgICAgICAgICAgIHRoaXMuYWRkZWRLZXlF
dmVudCA9IHRydWU7CiAgICAgICAgIH0KIApAQCAtMzkzLDI4ICszOTMsODYgQEAgd2luZG93LmJl
bmNobWFya0NvbnRyb2xsZXIgPSB7CiAgICAgICAgIHNlY3Rpb25zTWFuYWdlci5zaG93U2VjdGlv
bigicmVzdWx0cyIsIHRydWUpOwogICAgIH0sCiAKLSAgICBzZWxlY3RSZXN1bHRzOiBmdW5jdGlv
bihldmVudCkKKyAgICBoYW5kbGVLZXlQcmVzczogZnVuY3Rpb24oZXZlbnQpCiAgICAgewotICAg
ICAgICBpZiAoZXZlbnQuY2hhckNvZGUgIT0gMTE1KSAvLyAncycKKyAgICAgICAgc3dpdGNoIChl
dmVudC5jaGFyQ29kZSkKKyAgICAgICAgeworICAgICAgICBjYXNlIDI3OiAgLy8gZXNjCisgICAg
ICAgICAgICBiZW5jaG1hcmtDb250cm9sbGVyLmhpZGVEZWJ1Z0luZm8oKTsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlIDEwNjogLy8gagorICAgICAgICAgICAgYmVuY2htYXJrQ29u
dHJvbGxlci5zaG93RGVidWdJbmZvKCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSAxMTU6IC8vIHMKKyAgICAgICAgICAgIGJlbmNobWFya0NvbnRyb2xsZXIuc2VsZWN0UmVzdWx0
cyhldmVudC50YXJnZXQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9LAor
CisgICAgaGlkZURlYnVnSW5mbzogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdmFyIG92ZXJs
YXkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcmxheSIpOworICAgICAgICBpZiAoIW92
ZXJsYXkpCiAgICAgICAgICAgICByZXR1cm47CisgICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3Zl
Q2hpbGQob3ZlcmxheSk7CisgICAgfSwKIAotICAgICAgICBldmVudC50YXJnZXQuc2VsZWN0UmFu
Z2UgPSAoKGV2ZW50LnRhcmdldC5zZWxlY3RSYW5nZSB8fCAwKSArIDEpICUgMzsKKyAgICBzaG93
RGVidWdJbmZvOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICBpZiAoZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoIm92ZXJsYXkiKSkKKyAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICB2YXIg
b3ZlcmxheSA9IFV0aWxpdGllcy5jcmVhdGVFbGVtZW50KCJkaXYiLCB7CisgICAgICAgICAgICBp
ZDogIm92ZXJsYXkiCisgICAgICAgIH0sIGRvY3VtZW50LmJvZHkpOworICAgICAgICB2YXIgY29u
dGFpbmVyID0gVXRpbGl0aWVzLmNyZWF0ZUVsZW1lbnQoImRpdiIsIHt9LCBvdmVybGF5KTsKKwor
ICAgICAgICB2YXIgaGVhZGVyID0gVXRpbGl0aWVzLmNyZWF0ZUVsZW1lbnQoImgzIiwge30sIGNv
bnRhaW5lcik7CisgICAgICAgIGhlYWRlci50ZXh0Q29udGVudCA9ICJEZWJ1ZyBvdXRwdXQiOwor
CisgICAgICAgIHZhciBkYXRhID0gVXRpbGl0aWVzLmNyZWF0ZUVsZW1lbnQoImRpdiIsIHt9LCBj
b250YWluZXIpOworICAgICAgICBkYXRhLnRleHRDb250ZW50ID0gIlBsZWFzZSB3YWl0Li4uIjsK
KyAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIHZhciBvdXRwdXQg
PSB7CisgICAgICAgICAgICAgICAgb3B0aW9uczogYmVuY2htYXJrUnVubmVyQ2xpZW50LnJlc3Vs
dHMub3B0aW9ucywKKyAgICAgICAgICAgICAgICBkYXRhOiBiZW5jaG1hcmtSdW5uZXJDbGllbnQu
cmVzdWx0cy5kYXRhCisgICAgICAgICAgICB9OworICAgICAgICAgICAgZGF0YS50ZXh0Q29udGVu
dCA9IEpTT04uc3RyaW5naWZ5KG91dHB1dCwgbnVsbCwgMSk7CisgICAgICAgIH0sIDApOworICAg
ICAgICBkYXRhLm9uY2xpY2sgPSBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIHZhciBzZWxlY3Rp
b24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7CisgICAgICAgICAgICBzZWxlY3Rpb24ucmVtb3Zl
QWxsUmFuZ2VzKCk7CisgICAgICAgICAgICB2YXIgcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5n
ZSgpOworICAgICAgICAgICAgcmFuZ2Uuc2VsZWN0Tm9kZShkYXRhKTsKKyAgICAgICAgICAgIHNl
bGVjdGlvbi5hZGRSYW5nZShyYW5nZSk7CisgICAgICAgIH07CisKKyAgICAgICAgdmFyIGJ1dHRv
biA9IFV0aWxpdGllcy5jcmVhdGVFbGVtZW50KCJidXR0b24iLCB7fSwgY29udGFpbmVyKTsKKyAg
ICAgICAgYnV0dG9uLnRleHRDb250ZW50ID0gIkRvbmUiOworICAgICAgICBidXR0b24ub25jbGlj
ayA9IGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgYmVuY2htYXJrQ29udHJvbGxlci5oaWRlRGVi
dWdJbmZvKCk7CisgICAgICAgIH07CisgICAgfSwKKworICAgIHNlbGVjdFJlc3VsdHM6IGZ1bmN0
aW9uKHRhcmdldCkKKyAgICB7CisgICAgICAgIHRhcmdldC5zZWxlY3RSYW5nZSA9ICgodGFyZ2V0
LnNlbGVjdFJhbmdlIHx8IDApICsgMSkgJSAzOwogCiAgICAgICAgIHZhciBzZWxlY3Rpb24gPSB3
aW5kb3cuZ2V0U2VsZWN0aW9uKCk7CiAgICAgICAgIHNlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMo
KTsKICAgICAgICAgdmFyIHJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKLSAgICAgICAg
c3dpdGNoIChldmVudC50YXJnZXQuc2VsZWN0UmFuZ2UpIHsKKyAgICAgICAgc3dpdGNoICh0YXJn
ZXQuc2VsZWN0UmFuZ2UpIHsKICAgICAgICAgICAgIGNhc2UgMDogewotICAgICAgICAgICAgICAg
IHJhbmdlLnNldFN0YXJ0KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNyZXN1bHRzIC5zY29yZSIp
LCAwKTsKLSAgICAgICAgICAgICAgICByYW5nZS5zZXRFbmRBZnRlcihkb2N1bWVudC5xdWVyeVNl
bGVjdG9yKCIjcmVzdWx0cy1zY29yZSA+IHRyOmxhc3Qtb2YtdHlwZSIpLCAwKTsKKyAgICAgICAg
ICAgICAgICByYW5nZS5zZWxlY3ROb2RlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHRz
LXNjb3JlIikpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQogICAgICAg
ICAgICAgY2FzZSAxOiB7Ci0gICAgICAgICAgICAgICAgcmFuZ2Uuc2VsZWN0Tm9kZUNvbnRlbnRz
KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNyZXN1bHRzIC5zY29yZSIpKTsKKyAgICAgICAgICAg
ICAgICByYW5nZS5zZXRTdGFydChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjcmVzdWx0cyAuc2Nv
cmUiKSwgMCk7CisgICAgICAgICAgICAgICAgcmFuZ2Uuc2V0RW5kQWZ0ZXIoZG9jdW1lbnQucXVl
cnlTZWxlY3RvcigiI3Jlc3VsdHMtc2NvcmUgPiB0cjpsYXN0LW9mLXR5cGUiKSwgMCk7CiAgICAg
ICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBjYXNlIDI6IHsK
LSAgICAgICAgICAgICAgICByYW5nZS5zZWxlY3ROb2RlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyZXN1bHRzLXNjb3JlIikpOworICAgICAgICAgICAgICAgIHJhbmdlLnNlbGVjdE5vZGVDb250
ZW50cyhkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjcmVzdWx0cyAuc2NvcmUiKSk7CiAgICAgICAg
ICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1Bl
cmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci9yZXNvdXJjZXMvcnVubmVyL3Rlc3RzLmpzIGIvUGVy
Zm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Jlc291cmNlcy9ydW5uZXIvdGVzdHMuanMKaW5kZXgg
Y2M4NWI5YTNkNGI4ZDNmNDRhOTA2YTk0OWNkZTA5NTI3MGE1ZDk3Yi4uYWYzMjRmYjFiMjJlNzNh
MjBkZGZkMGVjOTViOTMxMDRiZTQ1MjQ4MCAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9B
bmltb21ldGVyL3Jlc291cmNlcy9ydW5uZXIvdGVzdHMuanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0
cy9Bbmltb21ldGVyL3Jlc291cmNlcy9ydW5uZXIvdGVzdHMuanMKQEAgLTIxLDYgKzIxLDEwIEBA
IFN1aXRlcy5wdXNoKG5ldyBTdWl0ZSgiQW5pbW9tZXRlciIsCiAgICAgICAgICAgICBuYW1lOiAi
Q2FudmFzIGFyY3MiCiAgICAgICAgIH0sCiAgICAgICAgIHsKKyAgICAgICAgICAgIHVybDogIm1h
c3Rlci9sZWF2ZXMuaHRtbCIsCisgICAgICAgICAgICBuYW1lOiAiTGVhdmVzIgorICAgICAgICB9
LAorICAgICAgICB7CiAgICAgICAgICAgICB1cmw6ICJtYXN0ZXIvY2FudmFzLXN0YWdlLmh0bWw/
cGF0aFR5cGU9bGluZVBhdGgmbGluZUpvaW49cm91bmQmbGluZUNhcD1yb3VuZCIsCiAgICAgICAg
ICAgICBuYW1lOiAiQ2FudmFzIGxpbmUgcGF0aCwgcm91bmQgam9pbiIKICAgICAgICAgfSwKZGlm
ZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvbGVhdmVz
Lmh0bWwgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL2xlYXZlcy5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjBiYTg0NjdmYmU3NGE0ZmMwOWU4ZWE1NmVlYWUxZDk0NmUwNDQ3OTEK
LS0tIC9kZXYvbnVsbAorKysgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFz
dGVyL2xlYXZlcy5odG1sCkBAIC0wLDAgKzEsMjUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+
Cis8aGVhZD4KKyAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CisgICAgPGxpbmsgcmVsPSJzdHls
ZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0icmVzb3VyY2VzL3N0YWdlLmNzcyI+CisgICAg
PHN0eWxlPgorICAgICAgICAjc3RhZ2UgeworICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
IzIzMjgyQjsKKyAgICAgICAgfQorICAgICAgICAjc3RhZ2UgaW1nIHsKKyAgICAgICAgICAgIHBv
c2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgfQorICAgIDwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9k
eT4KKyAgICA8ZGl2IGlkPSJzdGFnZSI+PC9kaXY+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jl
c291cmNlcy9zdHJpbmdzLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVz
b3VyY2VzL2V4dGVuc2lvbnMuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvc3RhdGlzdGljcy5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uL3Jl
c291cmNlcy9tYXRoLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2Vz
L21haW4uanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvcGFydGljbGVz
LmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2xlYXZlcy5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0Fu
aW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9jb21wYXNzMjUucG5nIGIvUGVyZm9ybWFu
Y2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvY29tcGFzczI1LnBuZwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4zNzI4N2IyMzI2NDgzNTUxMjYxODg2NjU5NThkZmYzMTkxNGUzNDNiCkdJVCBi
aW5hcnkgcGF0Y2gKbGl0ZXJhbCA2MjEKemNtVi16MCtSaVNQKTxoOzNLfExrMDAwZTFOSkxUcTAw
MD5QMDAwPlgxXkBzNiNPWn0mMDAwMDFiNWNoXzBJdHApCno9PlB4JUNyTHk+UjdsNlltYioqQ1Ah
el80Uj5lKXdQM1kkMjspNCE/eFU/eig3ZExUZnJ9X15GZnsjdDVFeyVRcQp6N35FVnNJa15hUzVD
XjRuYWN+bVVMOHpUe1E5KzJgPVJNVntyYiZ3MDNxTH1WXlQ+Sks4XmRyfT5HV1pUVyN2dUYKeiU1
SDtfV283UD8kOz1Dez5ZbVRAQ2dxR3FTRnU8T3ooOENYJX5ydTRoezlrYm8hJVBjbUd8PHpEbyoz
bl5XYDl3CnorNm0lbyVUVF94dFghOzZENzNvQ15GOEcjUGQpMHBJQHNMSWcmPHIzYCV2eXxCem5x
SWtOVUxaNTwjfHR1VWEqSgp6djhZY3dLTyRsLUJ9TXlRTXJfLWpAeyY7eld5KVZfZ3opQj1RP0NA
a0t8OG54MFV4UW1XaXgxUCVJP1U7ZF8qeH0KenN9LSpFekN9eDBqQ1NBS258O25VXnkoclFGaE5Q
MmwpPEYtWlU4S1VweCQrPXo0TkJRZm52WFZJTUBKPlU+KGVXCnpjYHlRSSE2fj1eeSQtZTZxa1RG
bGFqLW02TDxmQ3g5fFVXbEIya0B5dH53MTZyRn0heUJPaEB2LVVjR3ozPyFJdQp6a09Ic3Y9UTtx
eHRkVWJRJkBTeTgrPjV3WGR+K31mdUVmd1k3ekc5VT4pSGlGOzZkKU1eZzV9Zys4VSZOd0AzbUsK
ejJ8M2I/S1k8bUlObDJ1V1h7I0hGVFRQKFkxSjE/eDRPanIoQH4lJjZIU1JLJHdWRjcwbWxYSUM5
RGB7UDAqbGc3Cnp0Q0ZTLWtJQW9mKlV2Yy0yVFB6fGRwMEppdjFNTE51aWcxJFBNanVRcFdKV0pn
fmlFKWtCI3prOz87dn0rfj9qRQp6a2lEekRwfW5oVnlLcXlebGN0QEZPKmBaRDh1MWBnVTY7QjRe
U19uPGAwc2lINkFsYzQlNCR9KzAwMDAwTmt2WFgKSHUwbWpmdWh9RSsKCmxpdGVyYWwgMApIY21W
P2QwMDAwMQoKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9t
YXN0ZXIvcmVzb3VyY2VzL2NvbnNvbGUyNS5wbmcgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0
ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9jb25zb2xlMjUucG5nCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIxOTIz
NTY4N2Q5NmM1ODdlNjczOTI2ZGNlYzRlMGFjOTZjYzQyNTkKR0lUIGJpbmFyeSBwYXRjaApsaXRl
cmFsIDI5OAp6Y21WK18wb0RHQVApPGg7M0t8TGswMDBlMU5KTFRxMDAwPlAwMDA+WDFeQHM2I09a
fSYwMDAwMWI1Y2hfMEl0cCkKej0+UHgjPFZpJDlSN2w1VFYxUitIR2oyZCEkSXlBRWdKS0xhMlZA
PSE9c2RmS3EydFZkcG5fak9fN309QSY+V0M/Cno5Y0xDSWQ7ayVzVXw5OF5uU21NcldEZHdZa2h4
JFZMNHhRUCloc31eMnhLbkVkYExJfnkre2lIM0F6clBtaSsoIQp6LXg4WlhwdHZMdTh7eG9BTHxY
IX4wRXF0cWFXNTgyOHZmJTNKZiEtaDdwayFyTzxXYS15Pk1WPWt9U2J6NSFLPl4KekRpI3JJMn1L
cj5WaEp2YmZOVlk+d25NXjk2aj1mX15iRkpAVSErdD5lKEl2VFBpUCh8Ryo0WUwmbkdtYEAkQFhh
CndYaj0rWHpkb1QkJX1BRno5dDEkRzNZeFo3PStOIzAwUGRPTGV2P2YhTEkzfiYwNypxb002Tjwk
Zj8/PXpyVF9vewoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFu
Y2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvY29udHJpYnV0ZTI1LnBu
ZyBiL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL2Nv
bnRyaWJ1dGUyNS5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjg0MGE0OTM5MjFiM2Y4YzYyNzNiOTgzMGM4Yjhm
Y2U5NjU0ZmUzMQpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgNzQ3CnpjbVY8SDB1PXA7UCk8aDsz
S3xMazAwMGUxTkpMVHEwMDA+UDAwMD5YMV5AczYjT1p9JjAwMDAxYjVjaF8wSXRwKQp6PT5QeCVy
QWI2VlI3bDZZbU9XQHdRNTQ2WVJ7RWkrTlRHR21zMzRqX2l3LVZ8T1VhRjxxWihabDxDMkpyOy1I
Z0kKekJAfkpYOy1aVD5OS29FdVE3amE8NGh7fV5pQTYrXkRvUUl0dCVGTWFEMUtjM3xLejslXmdS
cH5ZY0JpPElxI2hSCnp6MzFMQD90Nnw/WE4oUH1URlBFQlJyMVU9LSE7RFBuWVp8emt6YiM3S0J1
MkUtKGczM216M09Pd2tucEdEdGhMSQp6S2FmMEg5XjhgezlZfTVHRmFLQlVjdXFoMUd3IWJAS3Yx
bWNDQ1d3RGpGKClLdjJNRGw/dDxgfmUpTU0/PExnZkYKemN5Ujl5dFpFWERnJFh5XkhsT1YyJnA1
X1k9Wl9pQzBjcSEqZTtBQ0hnfmxSaEFnTENkMXNLJCEta2RZUzBwX0A7CnpkVyk+SkQ/b2VYNDZJ
IWI3S0xtfUw4c29qPlh8MDl3S0E8JWhzbWcqSEREVGkxS1g2biZzTjhmdmFKTn4hRlNMLQp6eUtO
PnotQVp9MCZSS0BLaXJ+RHsmVz9TYGVwaFRTbTJFVGxDSDk9SUlfZ3MyVk1EUnJMK04qZHIoaGd4
UTEpWFkKemJ9ODYwJD5iNTMwJGE1WGIqYi1FSXZJX25ndTF7aG1CfVI3NGY1Y3AqdHFnTFU8LUpy
ZF9SRG1TXis/cGBWUk12Cno5anFwfjR2d2g2OUMhfEhmdHpBYDIrcXBfNGwzVyVVXnZqSyt6aWxY
Q05zUCQpRmUlXkA/Zk12dnBnRlQraVVzWAp6NEMyYzcxbWdvTz5RWDxGaTNER2lKc3g4UVZwfDQy
JWw+bjhpVHc9dDAhRzBEdCludnVwVUduSTIzKE1wUDBJdl8KeiFCPzt2eWE0Xjt7eyZuRzJmej5B
RlNSb1hSfk1YaWlFe15OMTBUVkRhRjZGREtCcmo1VjNUQU9tJkh3aDxCe3FMCnpfWChXTmYpTz84
WkUjcnt1MTlRWk1mQEJ+VUhNKUNnLUQtLUowNEU9IUFUVyhOVUc9KVhpO2B3PzBJR0RYOEFgdAp6
VVQpNThhQ2dDSjlheWRjVGN4V3ZoS2VJYjgoMDtwJXl7SlBZUz1CQGtvUVQkLWkhQDwkSW0/QGxh
bylNY01KWnQKZEA7fD0yZWdue0I7Q19mSyloKy00MDAyb3ZQREhMa1YxaVB8VHl5e2MKCmxpdGVy
YWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRl
ci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL2RlYnVnZ2VyMjUucG5nIGIvUGVyZm9ybWFuY2VUZXN0
cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvZGVidWdnZXIyNS5wbmcKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZTI2NzkzN2RlOGE3MzMzMTdjZDY1MjU0MDU5MjA1NmQzMDY3MjdmZApHSVQgYmluYXJ5
IHBhdGNoCmxpdGVyYWwgNzMxCnpjbVY8MTB3biMzUCk8aDszS3xMazAwMGUxTkpMVHEwMDA+UDAw
MF5ZMV5AczZMVmZxbTAwMDAxYjVjaF8wSXRwKQp6PT5QeCVsfVNXRlI3bDZBbVIqUVZRNTQ1bHpF
VUhoTURpZjxLb1VpWDJTdk9KJiZxPjUzXm5DWkB1djFaWEorbSsKeld3P3xwQC1tWm5LdlU5OzY0
Rn1kJSlRZ35WQVBsZzl9bmJQMio9dU1BN2BBb19rNyVZY0NGNnNvVzFfUHo0cUVgCnp1TTNjOG9V
SmJhaG1MfSNHVFIrY1F+fjlrZlBRWiZ2XjBXWDdISTUqa3poe2p5QE9xI0BGUUVtZlJ9NiE4OFhT
dwp6S1d5SV8/bWAqb00pUXJvKEpeYHIhQDwyKTIhfnslb2plcjJ5OCU2OG5gODQhd2JsSW9vV0st
NWhMWFExPyZJJWkKejkqdzVzNWxHVnw1aXBVWTRjRmh0XlNgbSpOQ2FAYFNvKmc4MTZrTlJpNllB
c1BETVZNMDVrZTA3SypzU0h+Z2ZTCnpEWGZLSlF3YHJWejJJRV4wTE5kTzRLYiVpdyNuYnJuNzhf
SnlJTVRieEh2dig9NzRDcmtQWHJGbHg/KT53PXtfTwp6bnVDQyF6XiEmOTFHPkhTO2wzVmo0P14z
KnFrYlM2Vnd9eVNsRTExZyRZM3k9MGJlK3A/ekY4Y09UclR1a3BaejkKenFrSTdGJiltbU9jRHlO
T0RxN0sjZnstaGNtcT9US2RIK3djRmp+V31KWlpRUEx7VDV4Pz99Xz0mc2ZESENmX2E9CnozSEdx
Z2A7OzJOVExMTjtOcmdlckEkPFpAWm4yeVUlWX5WOGd1NnJ9c1pacEoxbTgrZ0NLc2M+UllZOWMt
KTFxYwp6diZIQmdOYH1+Q0dMN2thVE0kS09JRXRVcEhAKzw2ZigkMz4+ZEtaTm1DNTwzM3lnPSU7
LSsye1VUWD1XQHMkMU0KekA1cU1PeXg1LVpjbjVQcXc3MTF9TkE0JXUrbm9wU2ZrU0BBUDdsUDxy
Q3E1SW85dEglbkJiPTtLOFlaPXg/dmpOCnp0JD1+clYoRWskZjNmSWs+NnJnUjJKNz9XWjwzPFYw
X21rUyZ8Njs7ZnQwQDtua0xTbl44JU8jY2QqMGR1OzI1Zwp6TkI2P3Q8OG9VfEUyZ2AjKF99eXpG
VXExPzhaSz5RITIhOVVITk5LTzd+NTZPKzBIIWZlKnhMJkg0OGgkcEV2KmoKTjAwMm92UERITGtW
MWZuT1doKCN4CgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5j
ZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9kb20tcGFydGljbGVzLmpz
IGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvZG9t
LXBhcnRpY2xlcy5qcwppbmRleCBjMTI2ZTE0YTliZGJlNzczYmY5NzM3ZDBhMjUzMTQxMTI3YTI2
MjkzLi5iMDRlNGRkMDk2NjY1MDc4ZDA0NmFmYTkyODIwN2Q0OTFhODE0MDJmIDEwMDY0NAotLS0g
YS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9kb20t
cGFydGljbGVzLmpzCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0
ZXIvcmVzb3VyY2VzL2RvbS1wYXJ0aWNsZXMuanMKQEAgLTEyLDYgKzEyLDE0IEBAIERPTVBhcnRp
Y2xlID0gVXRpbGl0aWVzLmNyZWF0ZVN1YmNsYXNzKFBhcnRpY2xlLAogICAgIHJlc2V0OiBmdW5j
dGlvbigpCiAgICAgewogICAgICAgICBQYXJ0aWNsZS5wcm90b3R5cGUucmVzZXQuY2FsbCh0aGlz
KTsKKworICAgICAgICB2YXIgZW1pdExvY2F0aW9uID0gdGhpcy5zdGFnZS5lbWl0TG9jYXRpb25b
U3RhZ2UucmFuZG9tSW50KDAsIHRoaXMuc3RhZ2UuZW1pdExvY2F0aW9uLmxlbmd0aCAtIDEpXTsK
KyAgICAgICAgdGhpcy5wb3NpdGlvbiA9IG5ldyBQb2ludChlbWl0TG9jYXRpb24ueCwgZW1pdExv
Y2F0aW9uLnkpOworCisgICAgICAgIHZhciBhbmdsZSA9IFN0YWdlLnJhbmRvbUludCgwLCB0aGlz
LnN0YWdlLmVtaXRTdGVwcykgLyB0aGlzLnN0YWdlLmVtaXRTdGVwcyAqIE1hdGguUEkgKiAyICsg
U3RhZ2UuZGF0ZUNvdW50ZXJWYWx1ZSgxMDApICogdGhpcy5zdGFnZS5lbWlzc2lvblNwaW47Cisg
ICAgICAgIHRoaXMudmVsb2NpdHkgPSBuZXcgUG9pbnQoTWF0aC5zaW4oYW5nbGUpLCBNYXRoLmNv
cyhhbmdsZSkpCisgICAgICAgICAgICAubXVsdGlwbHkoU3RhZ2UucmFuZG9tKC41LCAyLjUpKTsK
KwogICAgICAgICB0aGlzLmVsZW1lbnQuc3R5bGUud2lkdGggPSB0aGlzLnNpemUueCArICJweCI7
CiAgICAgICAgIHRoaXMuZWxlbWVudC5zdHlsZS5oZWlnaHQgPSB0aGlzLnNpemUueSArICJweCI7
CiAgICAgICAgIHRoaXMuZWxlbWVudC5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IgPSBTdGFnZS5yb3Rh
dGluZ0NvbG9yKDIwMDAsIC43LCAuNDUpOwpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9B
bmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvaW5zcGVjdG9yMjUucG5nIGIvUGVyZm9y
bWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvaW5zcGVjdG9yMjUu
cG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjk1MTY5MDJmOGU2Y2FiNWNmMjg5NGViYmVjYzdlNWZkNGZkZDc1N2UK
R0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDM3Nwp6Y21WLTwwZnpwR1ApPGg7M0t8TGswMDBlMU5K
TFRxMDAwPlAwMDA+WDFeQHM2I09afSYwMDAwMWI1Y2hfMEl0cCkKej0+UHgkR2Y2fjJSN2w1VFU/
MmhmfE5vISRLTG1JJSY8ZkRqbEJyakQ3YG8yLUBicTVIMUtDaTBAYWE/I0ExcUVXCno9c0Jhbygw
T0pSTCs5QmEzPnt+RnZ2cj8pMEo2az8tUTU9O0szRShpNF5sQEs9c0gmZUd+Zj5xcDlIIShvVDJq
dQp6RkdfRiRgNERsU0pWK2YjSnhRU1IlbVJvaiZtfEtUQ20/a1lVbzlaUDJTNSF5PWo9I3xjI3dM
S0s3dX1pI0s5a1EKejl9dTBveiYtLSUjflZsQk5DdCo2Qn1vXyhOMl9vclE/UGV8a3g3WHE7S1Rx
bDJXIz5NckYoRikxZzBBTjhCem0/Cnp4cERnaHMyXmt3JFVIUkh2NFMhaEcje3tIISszbSNma0Vh
I0djSDgkZjh2MSM3OVNBPksjRHk7Nyp0ZSVheCNwTQp6MSNfY1chaWBIVSRRK1ApRmgyRjtXWVRS
dWo1d2loPllfX05wPDlscE9XOCVZUWtaVl8zRWdUJnk0Q1NSc1l3ST8KWGVCNjMpc1ZWSWAwMDAw
ME5rdlhYdTBtamZEeFE8ZAoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvUGVy
Zm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvbGF5b3V0MjUu
cG5nIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMv
bGF5b3V0MjUucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODAwYWE5MTQyMTZhM2EyZTIyMjQyOWZhYWJjODlj
MDQ3ZGM5YWUKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDIzOAp6Y21WPEswMV5MKlApPGg7M0t8
TGswMDBlMU5KTFRxMDAwPlAwMDA7VzFeQHM2NTRCZHQwMDAwMWI1Y2hfMEl0cCkKej0+UHgjczdY
WFlSN2w1VElGTVZrNVF1TFJpd19sK0p+KXQ5ZTF+e0ZnP2t4NSNRd2FaSk54cXJDbEpFTlk4bj5Z
CnpVYzNKUHNySWdRI0hjQHpTOUk8YFVnMkdeQnx5JFAxfHE9IXxObUEwTHgzd1c+VlgjWWphbzhs
JCozaT91fHk0Twp6JCRsVlNNaElWPnp3cjhqZzVuM0hTfFNVP01+S0JZbU1uakF1JVA1Mk50VGNi
JE9eN2VPR1lnajtnKHptO3Z5UjAKb2dKNFZjPU45YiVhKD5iYj1ONFREMDY/NXdgPXJVUyF+ZyZR
MDcqcW9NNk48JGY7Q2lNcXlQV18KCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBh
L1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL2xlYXZl
cy5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2Vz
L2xlYXZlcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MjZjMzk4ODk1NjU1NmQ0NjI1NTEzOTA2OGJlYzg3YzAx
ZTQ5OTUyCi0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rl
c3RzL21hc3Rlci9yZXNvdXJjZXMvbGVhdmVzLmpzCkBAIC0wLDAgKzEsMTM3IEBACisoZnVuY3Rp
b24oKSB7CisKK0xlYWYgPSBVdGlsaXRpZXMuY3JlYXRlU3ViY2xhc3MoUGFydGljbGUsCisgICAg
ZnVuY3Rpb24oc3RhZ2UpCisgICAgeworICAgICAgICB0aGlzLmVsZW1lbnQgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJpbWciKTsKKyAgICAgICAgdGhpcy5lbGVtZW50LnNldEF0dHJpYnV0ZSgi
c3JjIiwgc3RhZ2UuaW1hZ2VzW1N0YWdlLnJhbmRvbUludCgwLCBzdGFnZS5pbWFnZXMubGVuZ3Ro
IC0gMSldLnNyYyk7CisgICAgICAgIHN0YWdlLmVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5lbGVt
ZW50KTsKKworICAgICAgICBQYXJ0aWNsZS5jYWxsKHRoaXMsIHN0YWdlKTsKKyAgICB9LCB7CisK
KyAgICBzaXplTWluaW11bTogMjUsCisgICAgc2l6ZVJhbmdlOiAwLAorCisgICAgcmVzZXQ6IGZ1
bmN0aW9uKCkKKyAgICB7CisgICAgICAgIFBhcnRpY2xlLnByb3RvdHlwZS5yZXNldC5jYWxsKHRo
aXMpOworICAgICAgICB0aGlzLl9saWZlID0gU3RhZ2UucmFuZG9tSW50KDIwLCAxMDApOworICAg
ICAgICB0aGlzLl9wb3NpdGlvbiA9IG5ldyBQb2ludChTdGFnZS5yYW5kb20oLXRoaXMuc2l6ZS53
aWR0aCwgdGhpcy5tYXhQb3NpdGlvbi54KSwgU3RhZ2UucmFuZG9tKC10aGlzLnNpemUuaGVpZ2h0
LCB0aGlzLm1heFBvc2l0aW9uLnkpKTsKKyAgICAgICAgdGhpcy5fdmVsb2NpdHkgPSBuZXcgUG9p
bnQoU3RhZ2UucmFuZG9tKC02LCAtMiksIC4xICogdGhpcy5zaXplLnkgKyBTdGFnZS5yYW5kb20o
LTEsIDEpKTsKKyAgICB9LAorCisgICAgYW5pbWF0ZTogZnVuY3Rpb24odGltZURlbHRhKQorICAg
IHsKKyAgICAgICAgdGhpcy5yb3RhdGVyLm5leHQodGltZURlbHRhKTsKKworICAgICAgICB0aGlz
Ll9wb3NpdGlvbi54ICs9IHRoaXMuX3ZlbG9jaXR5LnggKyA4ICogdGhpcy5zdGFnZS5mb2N1c1g7
CisgICAgICAgIHRoaXMuX3Bvc2l0aW9uLnkgKz0gdGhpcy5fdmVsb2NpdHkueTsKKworICAgICAg
ICB0aGlzLl9saWZlLS07CisgICAgICAgIGlmICghdGhpcy5fbGlmZSB8fCB0aGlzLl9wb3NpdGlv
bi55ID4gdGhpcy5zdGFnZS5zaXplLnkpCisgICAgICAgICAgICB0aGlzLnJlc2V0KCk7CisKKyAg
ICAgICAgaWYgKHRoaXMuX3Bvc2l0aW9uLnggPCAtdGhpcy5zaXplLndpZHRoIHx8IHRoaXMuX3Bv
c2l0aW9uLnggPiB0aGlzLm1heFBvc2l0aW9uLngpCisgICAgICAgICAgICB0aGlzLl9wb3NpdGlv
bi54ID0gKHRoaXMuX3Bvc2l0aW9uLnggKyB0aGlzLm1heFBvc2l0aW9uLngpICUgdGhpcy5tYXhQ
b3NpdGlvbi54OworICAgICAgICB0aGlzLm1vdmUoKTsKKyAgICB9LAorCisgICAgbW92ZTogZnVu
Y3Rpb24oKQorICAgIHsKKyAgICAgICAgdGhpcy5lbGVtZW50LnN0eWxlLnRyYW5zZm9ybSA9ICJ0
cmFuc2xhdGUoIiArIE1hdGgucm91bmQodGhpcy5fcG9zaXRpb24ueCkgKyAicHgsICIgKyBNYXRo
LnJvdW5kKHRoaXMuX3Bvc2l0aW9uLnkpICsgInB4KSIgKyB0aGlzLnJvdGF0ZXIucm90YXRlWigp
OworICAgIH0KK30pOworCitVdGlsaXRpZXMuZXh0ZW5kT2JqZWN0KFBhcnRpY2xlc1N0YWdlLnBy
b3RvdHlwZSwgeworCisgICAgaW1hZ2VTcmNzOiBbCisgICAgICAgICJjb21wYXNzIiwKKyAgICAg
ICAgImNvbnNvbGUiLAorICAgICAgICAiY29udHJpYnV0ZSIsCisgICAgICAgICJkZWJ1Z2dlciIs
CisgICAgICAgICJpbnNwZWN0b3IiLAorICAgICAgICAibGF5b3V0IiwKKyAgICAgICAgInBlcmZv
cm1hbmNlIiwKKyAgICAgICAgInNjcmlwdCIsCisgICAgICAgICJzaG9ydGN1dHMiLAorICAgICAg
ICAic3RhbmRhcmRzIiwKKyAgICAgICAgInN0b3JhZ2UiLAorICAgICAgICAic3R5bGVzIiwKKyAg
ICAgICAgInRpbWVsaW5lIgorICAgIF0sCisgICAgaW1hZ2VzOiBbXSwKKworICAgIGluaXRpYWxp
emU6IGZ1bmN0aW9uKGJlbmNobWFyaykKKyAgICB7CisgICAgICAgIFN0YWdlLnByb3RvdHlwZS5p
bml0aWFsaXplLmNhbGwodGhpcywgYmVuY2htYXJrKTsKKworICAgICAgICB2YXIgbGFzdFByb21p
c2U7CisgICAgICAgIHZhciBpbWFnZXMgPSB0aGlzLmltYWdlczsKKyAgICAgICAgdGhpcy5pbWFn
ZVNyY3MuZm9yRWFjaChmdW5jdGlvbihpbWFnZVNyYykgeworICAgICAgICAgICAgdmFyIHByb21p
c2UgPSB0aGlzLl9sb2FkSW1hZ2UoInJlc291cmNlcy8iICsgaW1hZ2VTcmMgKyAiMjUucG5nIik7
CisgICAgICAgICAgICBpZiAoIWxhc3RQcm9taXNlKQorICAgICAgICAgICAgICAgIGxhc3RQcm9t
aXNlID0gcHJvbWlzZTsKKyAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIGxhc3RQ
cm9taXNlID0gbGFzdFByb21pc2UudGhlbihmdW5jdGlvbihpbWcpIHsKKyAgICAgICAgICAgICAg
ICAgICAgaW1hZ2VzLnB1c2goaW1nKTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHByb21p
c2U7CisgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0sIHRoaXMp
OworCisgICAgICAgIGxhc3RQcm9taXNlLnRoZW4oZnVuY3Rpb24oaW1nKSB7CisgICAgICAgICAg
ICBpbWFnZXMucHVzaChpbWcpOworICAgICAgICAgICAgYmVuY2htYXJrLnJlYWR5UHJvbWlzZS5y
ZXNvbHZlKCk7CisgICAgICAgIH0uYmluZCh0aGlzKSk7CisgICAgfSwKKworICAgIF9sb2FkSW1h
Z2U6IGZ1bmN0aW9uKHNyYykgeworICAgICAgICB2YXIgaW1nID0gbmV3IEltYWdlOworICAgICAg
ICB2YXIgcHJvbWlzZSA9IG5ldyBTaW1wbGVQcm9taXNlOworCisgICAgICAgIGltZy5hZGRFdmVu
dExpc3RlbmVyKCdsb2FkJywgZnVuY3Rpb24gb25JbWFnZUxvYWQoZSkgeworICAgICAgICAgICAg
aW1nLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBvbkltYWdlTG9hZCk7CisgICAgICAgICAg
ICBwcm9taXNlLnJlc29sdmUoaW1nKTsKKyAgICAgICAgfSk7CisKKyAgICAgICAgaW1nLnNyYyA9
IHNyYzsKKyAgICAgICAgcmV0dXJuIHByb21pc2U7CisgICAgfSwKKworICAgIGFuaW1hdGU6IGZ1
bmN0aW9uKHRpbWVEZWx0YSkKKyAgICB7CisgICAgICAgIHRoaXMuZm9jdXNYID0gMC41ICsgMC41
ICogTWF0aC5zaW4oU3RhZ2UuZGF0ZUZyYWN0aW9uYWxWYWx1ZSgxMDAwMCkgKiBNYXRoLlBJICog
Mik7CisgICAgICAgIHRpbWVEZWx0YSAvPSA0OworICAgICAgICB0aGlzLnBhcnRpY2xlcy5mb3JF
YWNoKGZ1bmN0aW9uKHBhcnRpY2xlKSB7CisgICAgICAgICAgICBwYXJ0aWNsZS5hbmltYXRlKHRp
bWVEZWx0YSk7CisgICAgICAgIH0pOworICAgIH0sCisKKyAgICBjcmVhdGVQYXJ0aWNsZTogZnVu
Y3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIG5ldyBMZWFmKHRoaXMpOworICAgIH0sCisK
KyAgICB3aWxsUmVtb3ZlUGFydGljbGU6IGZ1bmN0aW9uKHBhcnRpY2xlKQorICAgIHsKKyAgICAg
ICAgcGFydGljbGUuZWxlbWVudC5yZW1vdmUoKTsKKyAgICB9Cit9KTsKKworTGVhdmVzQmVuY2ht
YXJrID0gVXRpbGl0aWVzLmNyZWF0ZVN1YmNsYXNzKEJlbmNobWFyaywKKyAgICBmdW5jdGlvbihv
cHRpb25zKQorICAgIHsKKyAgICAgICAgQmVuY2htYXJrLmNhbGwodGhpcywgbmV3IFBhcnRpY2xl
c1N0YWdlKCksIG9wdGlvbnMpOworICAgIH0sIHsKKworICAgIHdhaXRVbnRpbFJlYWR5OiBmdW5j
dGlvbigpIHsKKyAgICAgICAgdGhpcy5yZWFkeVByb21pc2UgPSBuZXcgU2ltcGxlUHJvbWlzZTsK
KyAgICAgICAgcmV0dXJuIHRoaXMucmVhZHlQcm9taXNlOworICAgIH0KKworfSk7CisKK3dpbmRv
dy5iZW5jaG1hcmtDbGFzcyA9IExlYXZlc0JlbmNobWFyazsKKworfSkoKTsKZGlmZiAtLWdpdCBh
L1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3BhcnRp
Y2xlcy5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3Vy
Y2VzL3BhcnRpY2xlcy5qcwppbmRleCAyZjQ5ZDgwMGYxZDFiMDY5OWQxZjIzYjFhZDExNWQ0NzNi
NDc4YzZjLi40OTU1NmYzODJlYjBkMzkzNjA4MDlmYzc2MWE0Mjk0NjdhNWVmODM2IDEwMDY0NAot
LS0gYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9w
YXJ0aWNsZXMuanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rl
ci9yZXNvdXJjZXMvcGFydGljbGVzLmpzCkBAIC04LDU5ICs4LDU1IEBAIGZ1bmN0aW9uIFBhcnRp
Y2xlKHN0YWdlKQogCiBQYXJ0aWNsZS5wcm90b3R5cGUgPQogeworICAgIHNpemVNaW5pbXVtOiA0
MCwKKyAgICBzaXplUmFuZ2U6IDEwLAorCiAgICAgcmVzZXQ6IGZ1bmN0aW9uKCkKICAgICB7Ci0g
ICAgICAgIHZhciByYW5kU2l6ZSA9IE1hdGgucG93KFBzZXVkby5yYW5kb20oKSwgNCkgKiAxMCAr
IDQwOworICAgICAgICB2YXIgcmFuZFNpemUgPSBNYXRoLnJvdW5kKE1hdGgucG93KFBzZXVkby5y
YW5kb20oKSwgNCkgKiB0aGlzLnNpemVSYW5nZSArIHRoaXMuc2l6ZU1pbmltdW0pOwogICAgICAg
ICB0aGlzLnNpemUgPSBuZXcgUG9pbnQocmFuZFNpemUsIHJhbmRTaXplKTsKICAgICAgICAgdGhp
cy5tYXhQb3NpdGlvbiA9IHRoaXMuc3RhZ2Uuc2l6ZS5zdWJ0cmFjdCh0aGlzLnNpemUpOwotCi0g
ICAgICAgIHZhciBlbWl0TG9jYXRpb24gPSB0aGlzLnN0YWdlLmVtaXRMb2NhdGlvbltTdGFnZS5y
YW5kb21JbnQoMCwgdGhpcy5zdGFnZS5lbWl0TG9jYXRpb24ubGVuZ3RoIC0gMSldOwotICAgICAg
ICB0aGlzLnBvc2l0aW9uID0gbmV3IFBvaW50KGVtaXRMb2NhdGlvbi54LCBlbWl0TG9jYXRpb24u
eSk7Ci0KLSAgICAgICAgdmFyIGFuZ2xlID0gU3RhZ2UucmFuZG9tSW50KDAsIHRoaXMuc3RhZ2Uu
ZW1pdFN0ZXBzKSAvIHRoaXMuc3RhZ2UuZW1pdFN0ZXBzICogTWF0aC5QSSAqIDIgKyBTdGFnZS5k
YXRlQ291bnRlclZhbHVlKDEwMCkgKiB0aGlzLnN0YWdlLmVtaXNzaW9uU3BpbjsKLSAgICAgICAg
dGhpcy5fdmVsb2NpdHkgPSBuZXcgUG9pbnQoTWF0aC5zaW4oYW5nbGUpLCBNYXRoLmNvcyhhbmds
ZSkpCi0gICAgICAgICAgICAubXVsdGlwbHkoU3RhZ2UucmFuZG9tKC41LCAyLjUpKTsKICAgICB9
LAogCiAgICAgYW5pbWF0ZTogZnVuY3Rpb24odGltZURlbHRhKQogICAgIHsKICAgICAgICAgdGhp
cy5yb3RhdGVyLm5leHQodGltZURlbHRhKTsKIAotICAgICAgICB0aGlzLnBvc2l0aW9uID0gdGhp
cy5wb3NpdGlvbi5hZGQodGhpcy5fdmVsb2NpdHkubXVsdGlwbHkodGltZURlbHRhKSk7Ci0gICAg
ICAgIHRoaXMuX3ZlbG9jaXR5LnkgKz0gMC4wMzsKKyAgICAgICAgdGhpcy5wb3NpdGlvbiA9IHRo
aXMucG9zaXRpb24uYWRkKHRoaXMudmVsb2NpdHkubXVsdGlwbHkodGltZURlbHRhKSk7CisgICAg
ICAgIHRoaXMudmVsb2NpdHkueSArPSAwLjAzOwogCiAgICAgICAgIC8vIElmIHBhcnRpY2xlIGlz
IGdvaW5nIHRvIG1vdmUgb2ZmIHJpZ2h0IHNpZGUKICAgICAgICAgaWYgKHRoaXMucG9zaXRpb24u
eCA+IHRoaXMubWF4UG9zaXRpb24ueCkgewotICAgICAgICAgICAgaWYgKHRoaXMuX3ZlbG9jaXR5
LnggPiAwKQotICAgICAgICAgICAgICAgIHRoaXMuX3ZlbG9jaXR5LnggKj0gLTE7CisgICAgICAg
ICAgICBpZiAodGhpcy52ZWxvY2l0eS54ID4gMCkKKyAgICAgICAgICAgICAgICB0aGlzLnZlbG9j
aXR5LnggKj0gLTE7CiAgICAgICAgICAgICB0aGlzLnBvc2l0aW9uLnggPSB0aGlzLm1heFBvc2l0
aW9uLng7CiAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5wb3NpdGlvbi54IDwgMCkgewogICAgICAg
ICAgICAgLy8gSWYgcGFydGljbGUgaXMgZ29pbmcgdG8gbW92ZSBvZmYgbGVmdCBzaWRlCi0gICAg
ICAgICAgICBpZiAodGhpcy5fdmVsb2NpdHkueCA8IDApCi0gICAgICAgICAgICAgICAgdGhpcy5f
dmVsb2NpdHkueCAqPSAtMTsKKyAgICAgICAgICAgIGlmICh0aGlzLnZlbG9jaXR5LnggPCAwKQor
ICAgICAgICAgICAgICAgIHRoaXMudmVsb2NpdHkueCAqPSAtMTsKICAgICAgICAgICAgIHRoaXMu
cG9zaXRpb24ueCA9IDA7CiAgICAgICAgIH0KIAogICAgICAgICAvLyBJZiBwYXJ0aWNsZSBpcyBn
b2luZyB0byBtb3ZlIG9mZiBib3R0b20gc2lkZQogICAgICAgICBpZiAodGhpcy5wb3NpdGlvbi55
ID4gdGhpcy5tYXhQb3NpdGlvbi55KSB7CiAgICAgICAgICAgICAvLyBBZGp1c3QgZGlyZWN0aW9u
IGJ1dCBtYWludGFpbiBtYWduaXR1ZGUKLSAgICAgICAgICAgIHZhciBtYWduaXR1ZGUgPSB0aGlz
Ll92ZWxvY2l0eS5sZW5ndGgoKTsKLSAgICAgICAgICAgIHRoaXMuX3ZlbG9jaXR5LnggKj0gMS41
ICsgLjAwNSAqIHRoaXMuc2l6ZS54OwotICAgICAgICAgICAgdGhpcy5fdmVsb2NpdHkgPSB0aGlz
Ll92ZWxvY2l0eS5ub3JtYWxpemUoKS5tdWx0aXBseShtYWduaXR1ZGUpOwotICAgICAgICAgICAg
aWYgKE1hdGguYWJzKHRoaXMuX3ZlbG9jaXR5LnkpIDwgMC43KQorICAgICAgICAgICAgdmFyIG1h
Z25pdHVkZSA9IHRoaXMudmVsb2NpdHkubGVuZ3RoKCk7CisgICAgICAgICAgICB0aGlzLnZlbG9j
aXR5LnggKj0gMS41ICsgLjAwNSAqIHRoaXMuc2l6ZS54OworICAgICAgICAgICAgdGhpcy52ZWxv
Y2l0eSA9IHRoaXMudmVsb2NpdHkubm9ybWFsaXplKCkubXVsdGlwbHkobWFnbml0dWRlKTsKKyAg
ICAgICAgICAgIGlmIChNYXRoLmFicyh0aGlzLnZlbG9jaXR5LnkpIDwgMC43KQogICAgICAgICAg
ICAgICAgIHRoaXMucmVzZXQoKTsKICAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAg
IGlmICh0aGlzLl92ZWxvY2l0eS55ID4gMCkKLSAgICAgICAgICAgICAgICAgICAgdGhpcy5fdmVs
b2NpdHkueSAqPSAtMC45OTk7CisgICAgICAgICAgICAgICAgaWYgKHRoaXMudmVsb2NpdHkueSA+
IDApCisgICAgICAgICAgICAgICAgICAgIHRoaXMudmVsb2NpdHkueSAqPSAtMC45OTk7CiAgICAg
ICAgICAgICAgICAgdGhpcy5wb3NpdGlvbi55ID0gdGhpcy5tYXhQb3NpdGlvbi55OwogICAgICAg
ICAgICAgfQogICAgICAgICB9IGVsc2UgaWYgKHRoaXMucG9zaXRpb24ueSA8IDApIHsKICAgICAg
ICAgICAgIC8vIElmIHBhcnRpY2xlIGlzIGdvaW5nIHRvIG1vdmUgb2ZmIHRvcCBzaWRlCi0gICAg
ICAgICAgICB2YXIgbWFnbml0dWRlID0gdGhpcy5fdmVsb2NpdHkubGVuZ3RoKCk7Ci0gICAgICAg
ICAgICB0aGlzLl92ZWxvY2l0eS54ICo9IDEuNSArIC4wMDUgKiB0aGlzLnNpemUueDsKLSAgICAg
ICAgICAgIHRoaXMuX3ZlbG9jaXR5ID0gdGhpcy5fdmVsb2NpdHkubm9ybWFsaXplKCkubXVsdGlw
bHkobWFnbml0dWRlKTsKLSAgICAgICAgICAgIGlmICh0aGlzLl92ZWxvY2l0eS55IDwgMCkKLSAg
ICAgICAgICAgICAgICB0aGlzLl92ZWxvY2l0eS55ICo9IC0wLjk5ODsKKyAgICAgICAgICAgIHZh
ciBtYWduaXR1ZGUgPSB0aGlzLnZlbG9jaXR5Lmxlbmd0aCgpOworICAgICAgICAgICAgdGhpcy52
ZWxvY2l0eS54ICo9IDEuNSArIC4wMDUgKiB0aGlzLnNpemUueDsKKyAgICAgICAgICAgIHRoaXMu
dmVsb2NpdHkgPSB0aGlzLnZlbG9jaXR5Lm5vcm1hbGl6ZSgpLm11bHRpcGx5KG1hZ25pdHVkZSk7
CisgICAgICAgICAgICBpZiAodGhpcy52ZWxvY2l0eS55IDwgMCkKKyAgICAgICAgICAgICAgICB0
aGlzLnZlbG9jaXR5LnkgKj0gLTAuOTk4OwogICAgICAgICAgICAgdGhpcy5wb3NpdGlvbi55ID0g
MDsKICAgICAgICAgfQogCkBAIC03OSw5ICs3NSw5IEBAIFBhcnRpY2xlc1N0YWdlID0gVXRpbGl0
aWVzLmNyZWF0ZVN1YmNsYXNzKFN0YWdlLAogICAgICAgICB0aGlzLnBhcnRpY2xlcyA9IFtdOwog
ICAgIH0sIHsKIAotICAgIGluaXRpYWxpemU6IGZ1bmN0aW9uKGJlbmNobWFyaywgb3B0aW9ucykK
KyAgICBpbml0aWFsaXplOiBmdW5jdGlvbihiZW5jaG1hcmspCiAgICAgewotICAgICAgICBTdGFn
ZS5wcm90b3R5cGUuaW5pdGlhbGl6ZS5jYWxsKHRoaXMsIGJlbmNobWFyaywgb3B0aW9ucyk7Cisg
ICAgICAgIFN0YWdlLnByb3RvdHlwZS5pbml0aWFsaXplLmNhbGwodGhpcywgYmVuY2htYXJrKTsK
ICAgICAgICAgdGhpcy5lbWlzc2lvblNwaW4gPSBTdGFnZS5yYW5kb20oMCwgMyk7CiAgICAgICAg
IHRoaXMuZW1pdFN0ZXBzID0gU3RhZ2UucmFuZG9tSW50KDQsIDYpOwogICAgICAgICB0aGlzLmVt
aXRMb2NhdGlvbiA9IFsKQEAgLTkzLDcgKzg5LDYgQEAgUGFydGljbGVzU3RhZ2UgPSBVdGlsaXRp
ZXMuY3JlYXRlU3ViY2xhc3MoU3RhZ2UsCiAKICAgICBhbmltYXRlOiBmdW5jdGlvbih0aW1lRGVs
dGEpCiAgICAgewotICAgICAgICB2YXIgb2Zmc2V0ID0gU3RhZ2UuZGF0ZUZyYWN0aW9uYWxWYWx1
ZSgpOwogICAgICAgICB0aW1lRGVsdGEgLz0gNDsKICAgICAgICAgdGhpcy5wYXJ0aWNsZXMuZm9y
RWFjaChmdW5jdGlvbihwYXJ0aWNsZSkgewogICAgICAgICAgICAgcGFydGljbGUuYW5pbWF0ZSh0
aW1lRGVsdGEpOwpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3Rz
L21hc3Rlci9yZXNvdXJjZXMvcGVyZm9ybWFuY2UyNS5wbmcgYi9QZXJmb3JtYW5jZVRlc3RzL0Fu
aW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9wZXJmb3JtYW5jZTI1LnBuZwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5iOTJiOTVkYzU1MmFkYjA1NjdkMTRiYjQ3YmQyYWY0ZDJiZmM5NWQyCkdJVCBiaW5hcnkg
cGF0Y2gKbGl0ZXJhbCA1MzYKemNtVit6MF9YalNQKTxoOzNLfExrMDAwZTFOSkxUcTAwMD5QMDAw
PlgxXkBzNiNPWn0mMDAwMDFiNWNoXzBJdHApCno9PlB4JChuJi0/UjdsNllSPFRNMEtAZVJ+Mng0
a1dMSHZSc2MwdzgoaWAkNWhRbmI+X2YzVUY3JTlPY04oJUl3Iwp6MVI9Pk9oLXBIOEtyMEkmPF9s
OGpgcmg2ZUAxcE1RI2RyZ2M8TCtpPlpnJD9BSnN+VzF7ZGlPZStTXi14JEUqOG8Keis0RWNTMXNM
Zm9AOX5gUD1faiZVNyNgMzI5ZUVIMV5NKmpmNTlNQUVSeUhzMVdRa1lhPipzdD1LbHBRPFF2KDBL
Cnp4P0ZGYEtKWG0wejVTLUQmZXtDPW9fX1NfSTxCYFMyeVM9UTtXKXQ4VHtSITczdDZoQ0tpNj9S
PEpjLS1mKW51dgp6PDlaIXV2TGYhS0UpYCFRVz8taEdleGdUeXQ4Jk9hJkFMVCNRJVd0eXd+cH5o
aEF+YWE0bU5NZjszZVEzKmh1c2oKekBmY1VyVGs4TmNPaz5lUi1+ekE8YmIkZXxfN20kRW0rP2c7
R19UPHBkPDhmSWhBT2ZyVkFheF8ySUM4QFRuTmh7CnpLQEU2UVUpQlNidE9VQDRsfDc7UjBSPWxH
REZnMiYhM3xKTVRjYWxmO3hveUpxciEyIUU9LWNaI2gtQipLVDlQPQp6US1MeFNtRTl8Rz1uNDFV
XngpSWpuXzgrVSQzMDE1N3VqUTJxenRRMCR1ZFhmTjk/bGNnIzAlOz1vKCEocEJvOUMKentIQXkr
KmVKTyklX0stRFVZQ1UjR2RhOEJ2blo+NW5fYW4wO2F0dj4rKWw+YSZpS1VOM0p4OyF4QUhwa3pt
QDteCmFAQT80Uj5xTUdkKXdUWnMwMDAwPE1OVU1uTFNUWTxHV2tqWAoKbGl0ZXJhbCAwCkhjbVY/
ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21h
c3Rlci9yZXNvdXJjZXMvc2NyaXB0MjUucG5nIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVy
L3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvc2NyaXB0MjUucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjczMzkxM2Qy
YjVkNjJkNjI2YzI1YjVlMTc2NjBhMGMyNDRlOWZiNTcKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFs
IDg3NAp6Y21WLXcxQ3spVlApPGg7M0t8TGswMDBlMU5KTFRxMDAwPlAwMDFLaDFeQHM2VkY7bjkw
MDAwMWI1Y2hfMEl0cCkKej0+UHgmQnVQWDtSN2w2SW1xfTw4S0BeNl4xeW8jZCF5T05UcGRRcU44
K3NBRURDb2gxN2RIZiNoYHxMQkpnQylVCnpXP1R9MjNrcDR9MzBsPURPKjh+WGEmWm5wQEYyS0Uz
YFBTdmNyYjFVI1UlJEYtPHhfaCkzWVVHYnImPyNKPU9FUgp6X2c9bUNTNHwqYklIRXpaIU0yPjVz
S3F5PnVCRkJWezJZbX1vTUFLbSRVZXQyYGlkfnxJPnd4M3o1d2h7PnVkbkAKeldRe1pOKDY7eTxj
I1o8KEZNUmUlQ01TM1RHfVh6dVY1cFk+SCMzPmNoI1pfYjRjVWsrdkM5fGBXdiVuVCtxVlJgCno+
WWhVdyVxMXlwXj00fk9DKzM2VWNWd2lvMz9NPnR1Yk5yZ09oVytnUXhQfX4jUTxDbmltdXg7cGcw
V19LfS1YJQp6O3lneWNGQmJxPFcrVlhPeF9xT3wrM2hidE1HJlhDVVducDFUdERIdmJeZkZYQjdu
SUIwYmJneVZ8djdEKiQoJUEKejtRQVR+QH0qVWtzamViNEhYSTw9QmJJWkoqNTx2PDxic05UQiRL
bXBlVntLVT8ke1VRV0xnOD0yUVM8Skp0RTlHCnpPQWhvamgxO2Y7MDh9WjhQSXs+ZT9uNHBBcERM
c0w5ejVSfjNYbGkhOHwyKVI9SzlYQDEoV2ZoVCZ1TjZPR1RRYwp6TX15SkZ1QmVgdV57fSsrP3Zn
Xyh2PU1PU3cxeWAzN0trQnBqI0xaSzEwX0dGKDJ4T0ZtfGBvWD5PeGBvVmpyYTcKelMreEs/Wm5N
LVJiVzh+KktUVjUlZSttRXd6fkM9Q0N8MmpJJX49eTthO2t+bSNoSTdgUEpUZH1TWDljTzwhcXlS
Cnp7fWV3ajd5R2dJS29xcX41JXtyXkZNLX5Wb19Le283Rk4rKFVvUj57NSFNWmRZNGlldGJSUXRk
JHVqa3gpMjZOQAp6T09HezU2X2QrUllNPW1xQiQtJVBAYDk5ZDZvQV52aXdGMkAwUWlqaUsyflZP
N2lGVXltK2dLOWl2MkdAe213WiYKej48PzZGaSo5UEhQJkVLPj0hPVM9M1A1NEteTH1jcStLUURG
NmYyQVhJU30qPmZXRCFEczNtcGAxd2VeMVklMXJkCno+IWRnY2QmWVd+ek9CcWhBUHlNO1kpYyNg
O34lczRwYkJ2UjF9aEUkKiZXZGYwQ0lhbTFOMXI5d0w2fkQwTmZjKAp6QmlLVTUySGJsJDl6JEtK
R1kyUzE7MlRORHRgeHp+WGFMSEZDdmw1a1lNLWQzOGh8X1RAVE57Qzs9MzxeZF45YmEKelFHMUkx
aFlVaT5fNlBoTkFsSGxWZkN0N3FGbSh3Z216ZGMzMk90SXQ3YktPVEVkVCVqMDcqcW9NNk48JGYr
SUQyCkFyfm0pfQoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFu
Y2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvc2hvcnRjdXRzMjUucG5n
IGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvc2hv
cnRjdXRzMjUucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU4NGRkYTQwMjczYTM4MzQzZWUzMzcwMzlhNmMzMDlh
MTQ2OGJjZTQKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDc3MQp6Y21WK2UxTns3blApPGg7M0t8
TGswMDBlMU5KTFRxMDAwPlAwMDA+WDFeQHM2I09afSYwMDAwMWI1Y2hfMEl0cCkKej0+UHgleS03
cXRSN2w2PVJaRUNaVkg3X21jQCpVfW88JWs/KihoTl9MWG18bWhFUmhkbmd1Wm5HaUVfNz98MUx0
CnplPFk4VSV0RVFMa1hScl4qNTd5VWY5TX0mVlBQZWJ6YShzfl5aNCQpfEhtMmdGZ3N0Slp1ZmxX
ZUNQRSQ9SyQyNwp6WG19LTxfJUlsRTI/RG50dURvNlpWPnR0TTM1NHpkPmx4UHRmbkRBel5nTng0
bWx3ZzwtemJwUWVaUWZ4PyFPdWMKei1BVUJfLWs9d19VLTwyWkc7SiNjJCQkdm1naV5jJEZRKmB7
MU9NK2NLWFFrMzFNeEFoSHcyZH10NX1iKzV4ODV6CnpjZkVCZkxKIUQqYzhxKEIzU1hpOFZQKyUk
P1FHPU5AY3lCJFg5d31fQyNIV1hkMkB1VlFVdXpHKzsrWVhsVEEmSgp6WT9JWDMmOGw5PnU5aiV4
ZUlVaWNOR01iX0NEcH1aIzIjO29ARCVlMGt+eW0wKXB5ZjxlZm9lPUI+QyZtaDJ3VEYKeit9JmlQ
aHh5bTV2LUMqWkkmc2VKMjhKbzIkaFplO0d8fStGYVR9cGAwe2FBWXpDZ0o7UG5keF87aUd2NUNm
VUtvCnpxNm1tNkxkcEh2b1gzMjdMNkM+USQkNiszK01USExMUHVvfkFIPDgjez10N0VWP1FDRl9V
ZXN3YH4zYHY+XykqcQp6cmlUZTVrU09tSUpTNkgzZEdLYDNCUnh+dXoocFV8blB9bnYxMHlzbHFH
WVFkZE9ie0dkX0pFfjhJUUAmSDR+cEoKeldLcGphWnlETEo0Nz1LLXBve3YwTXQ7azw3Sil9Umkq
Q0d7JWlhKzJSUGB2emN0aktkY1FsVGpqN05HRDJ7JDYkCnpxMnV8JnA/elROSiQqbjxweVJwayp4
PyNuZG93PzQhaiQqSFdFTVY1Kjd9PDU4R1E8dUU2YVF7OSN2Q0pEYm1oUgp6YnleTSNvLWYlOSgl
MClRKipENGgjd3A5V1B4LTUrdEZwI0IqOXBBemNfLXRfWUBNY1VERClFUFc2UCtaRyFjcloKeiRv
ZlhUaXk4WEMhMDwpdF9Ycnh+allncjtKfX54YTtmP3hHU0JeQG0wakNIZkFPb2BLJk5PQDYlUjZ+
Z3lwTiYzCnpJMDdgRil8dkpKP1BNd3paTTJiIStQY3BkRnA4eDZKQnQqX2AyK2pBcU1wSEBifnlr
NTAwMm92UERITGtWMWZiLQpCYlZkTEcKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdp
dCBhL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3N0
YW5kYXJkczI1LnBuZyBiL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIv
cmVzb3VyY2VzL3N0YW5kYXJkczI1LnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wOWM4ODAxYjQzNWYxMGI4MzZl
YWQwOGU4ZGEyZDMxOTA0YmI3N2RhCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAxMDQ0CnpjbVYr
djFuY3tXUCk8aDszS3xMazAwMGUxTkpMVHEwMDA+UDAwMH5hMV5AczZscTN8OzAwMDAxYjVjaF8w
SXRwKQp6PT5QeCYmUGhaO1I3bDZRbVQ1Pi1RNTQ2SW1YPXUtQkBgOGo2KThsfTB4ZCora1o5akMk
fDgjUGBYV30mbWVESXEKekdBcHR5QkhLV1U3TlZrJXB5ZkY7bmteSFJTZVo3XzIyckZ8dTR2QmRm
MlFOfjlHQHxlVUhJdns9aVBoJGJJKDJaCnorKCZ0NFF1OXBvYDlHM1BzKT1zbjtYVDtmLW9TVVkt
OW0+NkQ+PHYwPV8mbigySCRuP294JT9YcCEldTMxemN3OAp6aitKT3ckeSZsNkdsVXY3amVePSEj
QSY0PUVhRVdKOTh4V2BmOyp+MGs/azVQRF4ya0ZIUEtrSVRXTENYXjM2MlYKelh0MVZmISs7ZkIw
dUZFPTxiczFCOSl1Z3NiNjlBQkgoVihjTy0+N3FsR3clUjkwITRFO0ZpfDFlVXR4OUlAQD1VCnoz
M3wweWlHPzxALSk5KlYmTURsVkoxezFRS3NSdGg5Sn5PUjx2OXppbDs+SFgzY1FnT3ZTPGFFcVJY
cnVvV2tERAp6YkE+e15EPXx8ZDFgUHpvcGF2YGpBKXJKOylCITlQa3d+eVlvfk1GWGtPdnlUNjg0
TUtKcTk3U0tBJFZ7bTUyaXYKekBEWTNmQlZ8PXsjWmpFfV4mLUxHSWZxbzxiJl4ka3ojMUhqRTh3
MTk8WW0jUj4yQUVOMjdgNWJhfUFYMGBhVGlxCnpDeUxWbigmeUVsMUdTRW5GYyVCP0w8Ji1TN1o7
dEwhSVJoTjlFT1BLPyFTb2ltSHVrb240YUtrTDI5Mlc0dytBKwp6RnM7QShGZThSRHI9TT17SUJf
dCFFZktOMzIwNENkdVE8MUwpbSloKSZpSVRFKHhXZEY/KFdBS2Z8SVlRVT8oXnQKejR1XnMrbEdn
cnYocDVzciQrOFVXMUZvaXE4YXs7RGdGUjY7cDltSyo4MCNAJGl5WEtidCMkS0FfSGU3JGo5VnFB
CnplP3twe2xiclQ9e2w+M2hCTnNLQDF8SHx3JH1lMEdIdFd0ejhifF9iIUZkc24oJCVkby1tezAm
QH1+ciNoX1I4Mgp6bmw3JDY7RTcrWGpyTEA8KmRtJjNDez9ybHtxZDxFPiNyPko9fXJKNV5UaWgz
UiVDdUZxbG8jKDVSKSF8aFhJSlIKenZOXlgkcjFCb095a0hkUyFYb2VQP2tkQ0pNVzghNDNmdXZS
WT9qKV49Vn1aJVJDO3d8cWhvOD5tc1h8T1pzfTBfCnpgZytuUWFxPzN0Wm1wRjAxVFloJSVscE0o
QT1tKCVCMnE1enN2bD5LRjBvcmZvKjNRN1phJCRIRyNxUktnJDhCYQp6czVKe0BPMG4jV3NOfSlk
am4qUDRXKVFNQi07ZzU0WjV+JHc1Q2dWfVo5TGEyeGZiNG9ZK3M0bU4+TERiM3R1T1YKelIrOGgq
RmNXI2VCVjViN0QmNlhqcnBFZ0hmMm0hQV87a0ItbGhiaEBXbnpBYkIjO0p3SHA2PmF3TmZuS0Q7
U1VxCnpZUHxRMUV3cWxTRE1aKG96c2x1Sil7MEtWT0AhMHJ7MmhAbHlFVzchUEFrQWd5Tk9vdU1I
dFlCSy1uU2Mxam15Zwp6bnR7bmhlfH0rYndMSmZYeX0pa2tzUEdCYjZiazw1dWFBNiVgdHB8emYy
Vm1yNSl8cVk9LWdsYlRNRXhKS0RjKVAKTzAwMDA8TU5VTW5MU1RYZ0A5Ykl0CgpsaXRlcmFsIDAK
SGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVz
dHMvbWFzdGVyL3Jlc291cmNlcy9zdG9yYWdlMjUucG5nIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmlt
b21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvc3RvcmFnZTI1LnBuZwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5i
Y2VjYmJjZjdmMjAyMGJlNzExOWM1ZWYzZjRiZGY0YjNhOWIxNjgzCkdJVCBiaW5hcnkgcGF0Y2gK
bGl0ZXJhbCA3NDkKemNtVjxKMHV1ZCtQKTxoOzNLfExrMDAwZTFOSkxUcTAwMD5QMDAwPlgxXkBz
NiNPWn0mMDAwMDFiNWNoXzBJdHApCno9PlB4JXIlNk9YUjdsNllSIXdVWktAYzdNXzlsOFQzU0lA
I2kjTmdPQSZRNVBPRjtZcUR3M05CcDFmR1E4VlFKXgp6LWV6VnVzfDMxZDgmbT16WUEhMSVCI0pq
aGYmX3dpMiNJMUt4MWg9VFVRY0RvQ2NBRlBqeTV6a1JzSEghUGduSXYKejVVZ254c2NafHliJXJe
NkVmbzdXNjd3PD1geVNzQHBfcmVMemY/fXEmVC07V3l6OFdZKDV3fENJUj5YOW9hViF1Cnpybj1I
JG4/d0pNe3VYXjBnaFEwNyg+XzteSH1tOG5VKXtfeGExUjVeOXc+STJkTUxAY2cxRWlHMkhLTjUm
LU18WQp6YHFeb24rJWszbFhIVylvMkgjP189Y2BpUDYxMzZpUGFnN1Z1el42QTxNLWZnZG5tfVRr
Jm5GT1hPS15mODBZTXoKekVRNjN3bTtZbD4ka3tVcHc1V3lgayhBRm09ZUJOIW4xMXZwazFvfD5F
VCR7MXRoX3lyZnIobWBpMWA2TTBxQS1wCnpObHpAdjNDUDFmIVFxR1BsK0BNVUxtY3RtdWZ8fn4k
aCpGYl5XfkZCKmFMdlN0Uy13OWNsZ250Sm5QNnlRclQ0IQp6KkhMZUt6TmFBTih7UT9nbmY5UyNa
YjA2fTNgMHVRYCM0UzxAJTg/JGdTPV5pYHB0ZlQkRiZsUVBUWT1tNT5FZWcKelErdkt+XjBUX2Ve
ajhPS2s9dHpLQSloOUgzXzs4UyYhZj50cWRUKUtWZSpsZWB+Zn5qRy1BbyFjZX1GKUtweWdHCnpt
NWxeTnU/TStmKWJLVVJDMEc0QVple35BendqcnwlMD91QVo0RnMxRndTVXhtaGhZSnBnK1czeER3
QFRaPUFRTQp6OyM8aVBJI0UqaGM4bjkzOz8wdGgmeWNUU2o9OW1lTHNfRDVkY0Y0OFpgUll9b3Bf
ZUU+MXVlVk0wcy0qTkE9fUsKek40cm04fEktNytfYGl7SXhCbTxKen1+MX0kVXtEMihzbEdSTX0/
KXlBTGZ6S1BTVnBPMmJXdj1oWVNBZiFhN2NCCnpmUXdte0YhP21VbE1NM3hmN35ia3skfFlMakBM
dnR6dkVsSVI8TkEyZTNkfUhTXlpqM28lWSQ1dWEjRXNGNyNKXwpmZHZ8Zlgpd31CdGRrR2ctPVhZ
YXswMDAwME5rdlhYdTBtamY0R3dhNgoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0
IGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvc3R5
bGVzMjUucG5nIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNv
dXJjZXMvc3R5bGVzMjUucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRmYWQ3ODQ4NDk0YmNjZjI0NzY4NjRkZDE5
ZDhjMzdlZmE0MTI1NjAKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDEwMDcKemNtVjxMMH0lWClQ
KTxoOzNLfExrMDAwZTFOSkxUcTAwMD5QMDAwXlkxXkBzNkxWZnFtMDAwMDFiNWNoXzBJdHApCno9
PlB4JnNZeWdaUjdsNklSe00oJFE1K3Z7Q0NAZ2BOUiglYWx3WHYwV0Qkdm8oM1omN0prQntZX2c7
JmRgfml3dQp6VDlMUTNDNWpAWXhpan4hX0pAQGc4P3twODVoQVEpP1Eoczs9WF9gTy1yYyEtd19U
XkUrbm56Py1gRDUhe21qKzAKejl4VUlvU0VPfXpKI0Z4I2IrJGI9LWAzPjFnRUs1T3R3JkJnZ1Ao
IU50fmFhMzw9WXgrWTZkfW83RWZuNl8zKkYwCnpBeHpKODJqYmJaIUN2OGhUSWJJXmxkcTJyOzBa
Q3lHdVdAdDMwKFJIOEZPQF41PWhMSmB6QWpMJmk4QHNsUkMkcgp6en1YclZmTyt1Vk48TURhPkNX
X21BZHRaVUgyUypPPV4wYCNUPk1CKm5nV0JiNDBKSnYtY1I4OTJhSnRMOD1ATmEKeitRWTxyZ09f
S2AjN3dDMnVIMXY5RzB+MW5PbTxpckVQSSlKeDc8PGFGbXdXMDF9Y2NDRjZlO2UlbT4+OzwmXipN
CnpPcChJWWRZMEcoaU5CYG00T05OMzU4Pyk5VTRSb35eVDZoSncyfEx3KT12eTY9el9Ae3ZiRUIw
Q1l3a01Neys9Kgp6d31AcCFHQzJ+MGg9Z2pGdnBTWChmSXxlaiFDJk5xRTNzNFUqJHolR1BAdUUy
UVhyQUtDJD96NSQlSGdvVnJeV0kKenRlS29iMHA4P2dkPHpJdTJLWkdkT3ZJaj8+LUw4OzRQYXt2
dGZ+b3RXdl4yJDZIRWlKRWF7e097USY0bWw8b05wCno9UUJjWkFAaTRrPHQmRGx7S1lvcWE9Q3Uh
UH0lR2FmaHBGZ0FrNHZiPT9XOGpWPVRvVFhGTyRwRFgmZE8haXBmKwp6UmpUeEkqZ25aclgwS0Fv
aXhoJWFER2lwYFR4NT5RWGI3KHI/MXl2KFIpeiRAcy0hUUk/fW9rUU1ESWdAM0V2KzkKejZ0bDFt
bEE9MCRUMVdfOXR9PXhZZldlaDIwQlMlM3tScjszRGoqWFk0akBJfVIhbnhfKG5ZI2w1ZTRDVkdH
VEtyCnorUVQrUUAqfCkyajNFfGs1a3BNMnFvfXJsTG4hfDxKYiVGSGFwWFNFMF54RntWe1o2WE82
Q31qTXhlOCQkXnJDYAp6Q1ZFJFFCQVI4JXhoT1Qxe2ZDaEhgQikqWSNIZE93d3puYG1yUExaXzFE
ISojP354TH5DbV4mVkxuJmRzOzM1dT0Kelk2QTxqOXhsOXRsJTtsSTNyfFpIIW1McXNSIyN2bG5e
TCVSVVg4WHJFRldZRF5hVGQ/Vz1QPiE+QSp0fT5eRHdyCnp1Q3toU3NVU2V4cGBtYWgyMXBERl84
dGN+ejZGZGUwIz59RWdPN2J2RUdkT2c3ekUhQHA7Mlpzc25xQ2h2JT9SUAp6Wj9JRj89YThOdC00
a1BuNmFgVjh4dV5BSmA4cjwhbStPYzxFeSNKeXlpM2NKe2wzPVFnPm9WXzJ6I3RsXyZGK1QKenJ5
JVhYdmI1SU1SajwxdilDQlczIXN+YC1yS1hZXnhBbSEjRjJzTzg2ekdzfV8hLWdfV2smbm8zLXQq
cVlvcXxwCmRzQjVMfWB+JCY7R0ckb3dmdDNJTjAwMm92UERITGtWMW0hVStXUDxpCgpsaXRlcmFs
IDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIv
dGVzdHMvbWFzdGVyL3Jlc291cmNlcy90aW1lbGluZTI1LnBuZyBiL1BlcmZvcm1hbmNlVGVzdHMv
QW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3RpbWVsaW5lMjUucG5nCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjAxN2NkNmIzMDFlNGIyNjY2MDk3OGI5NTEyN2E4Y2EyZmU1NGZmMzQKR0lUIGJpbmFyeSBw
YXRjaApsaXRlcmFsIDQ2MAp6Y21WOy0wVzwhSVApPGg7M0t8TGswMDBlMU5KTFRxMDAwPlAwMDA+
WDFeQHM2I09afSYwMDAwMWI1Y2hfMEl0cCkKej0+UHgkaERrKDBSN2w2WVI9ck5kRmJ1Vz8wd0hH
Qm5eX3FVRlRsYzYrKWQ+TG4zeCQte3N0emQrcSY9KXlnKldyCnpTZGlGMkxWfG1Pbn1SPEZvaFdU
blRjVEw5cU5ldWVCPm8oU0M/X3tCbzg7O3ZJdUV6eGYreSRTZDBjKnZLRiN4Zwp6KnFQLSV0fXtS
KFY1TUpCOFJrNHI+N3FXUXRIKFZWQHR4KXVWaDROcHNsQHBTWXQ3RUQ+XlAmbHhSJGxZZjdybnUK
emUoPXhBPC08TyY/dD18MHhfO2EwR0tuIzZ2dT9EMHojZXxeMlR0en1Ve0hwJCsmVmJHNllGV08w
c1BaS0MrIUBoCnp0eVYqKUlUJDFAeER2Y1pqJEFtRkd3bkdkYX1lTzlvRUFUNUQoc2tQYyVjZGMw
VW1JTC1yelpDSUsoMXI1YTA+RAp6OEQ5enRkez5HKE5GdT5wQFRHRTVTZmQxQ1Q7UipPcEBQUTww
JGt3QlU0Kk5tOCpyRVBgSWohJEw0WFZWKylmeTUKemh4TWRHNTNEO2U8LXtiYm9FWF88MyRrTER0
eG5YXnMxc3d3dEVFeCNYYDt+SFRgRm5hVUIrOGorNHdxY1ZNOU1yCnpCKWd9ZDcmPkcyaHoyfDN6
eERWPWo8fUpmcl9ibCN6ZzkrZ2NZT2dwWm5+aW09Z0dxVzAwMDA8TU5VTW5MU1RaJApDMismfncK
CmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQ2hh
bmdlTG9nIGIvUGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMmM4MzFmMDkyYWY3ZmU5
YzRiYWViYjQwY2ZjMzEzMGEyN2EwODdhNi4uY2QxN2ZiZWIzZjcxMWMyYzExYWUyYzFkNjdkZmVk
MTY4ZmI1YzZkZSAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cKKysrIGIv
UGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw2OCBAQAorMjAxNi0wMy0wOSAg
Sm9uIExlZSAgPGpvbmxlZUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGEgbmV3IGltYWdlIHRl
c3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NTIz
MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSBp
bWFnZSB0ZXN0IHJlbmRlcnMgUE5HcyBhbmQgbW92ZXMgdGhlbSB3aXRoIHRyYW5zbGF0ZSBhbmQg
cm90YXRlCisgICAgICAgIHRyYW5zZm9ybXMuIEVhY2ggcGFydGljbGUgaGFzIGEgbGlmZXRpbWUs
IGFuZCB3aGVuIHRoZSBsaWZldGltZSBlbmRzIG9yCisgICAgICAgIHRoZSBwYXJ0aWNsZSBnb2Vz
IG9mZnNjcmVlbiwgaXQgcmVzZXRzIGl0c2VsZiBzb21ld2hlcmUgb24gdGhlIHN0YWdlLgorCisg
ICAgICAgICogQW5pbW9tZXRlci9yZXNvdXJjZXMvZGVidWctcnVubmVyL3Rlc3RzLmpzOiBSZW1v
dmUgdGhlIENTUyBib3VuY2luZyBQTkcKKyAgICAgICAgaW1hZ2VzIHRlc3QsIGJlY2F1c2UgdGhp
cyBvbmUgdGVzdHMgdGhlIHNhbWUgdGVjaG5pcXVlLgorICAgICAgICAqIEFuaW1vbWV0ZXIvcmVz
b3VyY2VzL3J1bm5lci90ZXN0cy5qczogQWRkZWQgaGVyZSBhcyAiTGVhdmVzIi4KKyAgICAgICAg
KiBBbmltb21ldGVyL3Rlc3RzL21hc3Rlci9sZWF2ZXMuaHRtbDogQWRkZWQuCisgICAgICAgICog
QW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3BhcnRpY2xlcy5qczogUmVmYWN0b3Ig
b3V0IHRoZSBwYXJ0cworICAgICAgICBzcGVjaWZpYyB0byB0aGUgRE9NIHBhcnRpY2xlcyB0ZXN0
LiBDb25zZXF1ZW50bHkgbWFrZSB2ZWxvY2l0eSBhIHB1YmxpYworICAgICAgICBtZW1iZXIuCisg
ICAgICAgIChpbml0aWFsaXplKTogVGhlIG9wdGlvbnMgcGFyYW1ldGVyIGlzIG5ldmVyIHVzZWQs
IHNvIHJlbW92ZSBpdC4KKyAgICAgICAgKGFuaW1hdGUpOiBSZW1vdmUgdW51c2VkIGxvY2FsIHZh
cmlhYmxlLgorICAgICAgICAqIEFuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9sZWF2
ZXMuanM6IE1haW50YWlucyBhIGZvY2FsIHBvaW50IHRoYXQKKyAgICAgICAgbW92ZXMgYmFjayBh
bmQgZm9ydGggYWNyb3NzIHRoZSBjYW52YXMuIFRoYXQgcG9pbnQgYWZmZWN0cyB0aGUgdmVsb2Np
dHkKKyAgICAgICAgb2YgdGhlIHBhcnRpY2xlcy4gV2hlbiB0aGUgZm9jYWwgcG9pbnQgaXMgb24g
dGhlIGxlZnRtb3N0IHNpZGUsIGl0IGlzCisgICAgICAgIGJldHdlZW4gWy02LCAtMl0sIGFuZCBz
ZXQgaW4gcmVzZXQoKS4gV2hlbiB0aGUgZm9jYWwgcG9pbnQgaXMgb24gdGhlIHJpZ2h0bW9zdAor
ICAgICAgICBzaWRlLCBpdCB3aWxsIGJlIGZyb20gWzIsIDZdLgorICAgICAgICAqIEFuaW1vbWV0
ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9kb20tcGFydGljbGVzLmpzOiBNb3ZlIEpTIHNwZWNp
ZmljIHRvCisgICAgICAgIHRoaXMgdGVzdCBoZXJlIGZyb20gcGFydGljbGVzLmpzLgorCisgICAg
ICAgIE5ldyBpbWFnZXMuCisgICAgICAgICogQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3Vy
Y2VzL2NvbXBhc3MyNS5wbmc6IEFkZGVkLgorICAgICAgICAqIEFuaW1vbWV0ZXIvdGVzdHMvbWFz
dGVyL3Jlc291cmNlcy9jb25zb2xlMjUucG5nOiBBZGRlZC4KKyAgICAgICAgKiBBbmltb21ldGVy
L3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvY29udHJpYnV0ZTI1LnBuZzogQWRkZWQuCisgICAgICAg
ICogQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL2RlYnVnZ2VyMjUucG5nOiBBZGRl
ZC4KKyAgICAgICAgKiBBbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvaW5zcGVjdG9y
MjUucG5nOiBBZGRlZC4KKyAgICAgICAgKiBBbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJj
ZXMvbGF5b3V0MjUucG5nOiBBZGRlZC4KKyAgICAgICAgKiBBbmltb21ldGVyL3Rlc3RzL21hc3Rl
ci9yZXNvdXJjZXMvcGVyZm9ybWFuY2UyNS5wbmc6IEFkZGVkLgorICAgICAgICAqIEFuaW1vbWV0
ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9zY3JpcHQyNS5wbmc6IEFkZGVkLgorICAgICAgICAq
IEFuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9zaG9ydGN1dHMyNS5wbmc6IEFkZGVk
LgorICAgICAgICAqIEFuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9zdGFuZGFyZHMy
NS5wbmc6IEFkZGVkLgorICAgICAgICAqIEFuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNl
cy9zdG9yYWdlMjUucG5nOiBBZGRlZC4KKyAgICAgICAgKiBBbmltb21ldGVyL3Rlc3RzL21hc3Rl
ci9yZXNvdXJjZXMvc3R5bGVzMjUucG5nOiBBZGRlZC4KKyAgICAgICAgKiBBbmltb21ldGVyL3Rl
c3RzL21hc3Rlci9yZXNvdXJjZXMvdGltZWxpbmUyNS5wbmc6IEFkZGVkLgorCisyMDE2LTAzLTAz
ICBKb24gTGVlICA8am9ubGVlQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgYWJpbGl0eSB0byBy
ZXRyaWV2ZSByYXcgZGF0YSBmcm9tIHJlbGVhc2UgaGFybmVzcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU1MDI2CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgU2ltb24gRnJhc2VyLgorCisgICAgICAgICogQW5pbW9tZXRlci9kZXZlbG9wZXIuaHRtbDog
UmVtb3ZlIHRoZSBzcGVjaWFsIFVJIGluIHRoZSBkZWJ1ZworICAgICAgICBoYXJuZXNzLgorICAg
ICAgICAqIEFuaW1vbWV0ZXIvcmVzb3VyY2VzL3J1bm5lci9hbmltb21ldGVyLmNzczogQWRkIHN0
eWxlcyBmb3IgdGhlCisgICAgICAgIG92ZXJsYXkuCisgICAgICAgICogQW5pbW9tZXRlci9yZXNv
dXJjZXMvcnVubmVyL2FuaW1vbWV0ZXIuanM6IExldCAnaicgc2hvdyB0aGUgSlNPTgorICAgICAg
ICByZXN1bHRzLCBidXQgb25seSBpZiB0aGUgb3ZlcmxheSBkb2Vzbid0IGV4aXN0LiBBZGQgJ2Vz
Yycga2V5IHRvIGRpc21pc3MKKyAgICAgICAgdGhlIG92ZXJsYXkuCisgICAgICAgICh3aW5kb3cu
YmVuY2htYXJrQ29udHJvbGxlci5zZWxlY3RSZXN1bHRzKTogQ3ljbGUgdGhlIGNhc2VzIGFyb3Vu
ZAorICAgICAgICBzbyB0aGF0IHRoZSBmaXJzdCAncycgcHJlc3Mgc2VsZWN0cyBib3RoIHRoZSBi
ZW5jaG1hcmsgc2NvcmUgYW5kCisgICAgICAgIHRoZSBpbmRpdmlkdWFsIHRlc3Qgc2NvcmVzLgor
ICAgICAgICAqIEFuaW1vbWV0ZXIvcmVzb3VyY2VzL2RlYnVnLXJ1bm5lci9hbmltb21ldGVyLmNz
czogUmVtb3ZlCisgICAgICAgIHVubmVlZGVkIHJ1bGVzLgorICAgICAgICAqIEFuaW1vbWV0ZXIv
cmVzb3VyY2VzL2RlYnVnLXJ1bm5lci9hbmltb21ldGVyLmpzOiBNYWtlIHRoZSBzYW1lCisgICAg
ICAgIGNhbGwgdG8gaGFuZGxlS2V5UHJlc3MuCisKIDIwMTYtMDMtMDMgIEpvbiBMZWUgIDxqb25s
ZWVAYXBwbGUuY29tPgogCiAgICAgICAgIE1ha2Ugc3VyZSBtdWx0aXBseSB0ZXN0IHBhcnRpY2xl
cyBoYXZlIGF0IGxlYXN0IHNvbWUgb3BhY2l0eQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>273436</attachid>
            <date>2016-03-09 09:43:35 -0800</date>
            <delta_ts>2016-03-09 13:51:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-155232-20160309094321.patch</filename>
            <type>text/plain</type>
            <size>30337</size>
            <attacher name="Jon Lee">jonlee</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3ODU5CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3Rz
L0FuaW1vbWV0ZXIvcmVzb3VyY2VzL2RlYnVnLXJ1bm5lci90ZXN0cy5qcyBiL1BlcmZvcm1hbmNl
VGVzdHMvQW5pbW9tZXRlci9yZXNvdXJjZXMvZGVidWctcnVubmVyL3Rlc3RzLmpzCmluZGV4IDZm
MWM4MTViMmEyZmI3NTk2NGY1ZmUxMTRhNDc4YTUyNjBiOTkyZmEuLjU4NDhlYWNmMmM4MTRiZTZl
NDVlZmRmYTk4NjM4NjAzMjMyODg3YTIgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvQW5p
bW9tZXRlci9yZXNvdXJjZXMvZGVidWctcnVubmVyL3Rlc3RzLmpzCisrKyBiL1BlcmZvcm1hbmNl
VGVzdHMvQW5pbW9tZXRlci9yZXNvdXJjZXMvZGVidWctcnVubmVyL3Rlc3RzLmpzCkBAIC0xNjIs
MTAgKzE2Miw2IEBAIFN1aXRlcy5wdXNoKG5ldyBTdWl0ZSgiSFRNTCBzdWl0ZSIsCiAgICAgICAg
ICAgICBuYW1lOiAiQ1NTIGJvdW5jaW5nIFNWRyBpbWFnZXMiCiAgICAgICAgIH0sCiAgICAgICAg
IHsKLSAgICAgICAgICAgIHVybDogImJvdW5jaW5nLXBhcnRpY2xlcy9ib3VuY2luZy1jc3MtaW1h
Z2VzLmh0bWw/cGFydGljbGVXaWR0aD04MCZwYXJ0aWNsZUhlaWdodD04MCZpbWFnZVNyYz0uLi9y
ZXNvdXJjZXMveWluLXlhbmcucG5nIiwKLSAgICAgICAgICAgIG5hbWU6ICJDU1MgYm91bmNpbmcg
UE5HIGltYWdlcyIKLSAgICAgICAgfSwKLSAgICAgICAgewogICAgICAgICAgICAgdXJsOiAidGV4
dC9sYXllcmluZy10ZXh0Lmh0bWwiLAogICAgICAgICAgICAgbmFtZTogIkNTUyBsYXllcmluZyB0
ZXh0IgogICAgICAgICB9LApkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVy
L3Jlc291cmNlcy9ydW5uZXIvdGVzdHMuanMgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIv
cmVzb3VyY2VzL3J1bm5lci90ZXN0cy5qcwppbmRleCBjYzg1YjlhM2Q0YjhkM2Y0NGE5MDZhOTQ5
Y2RlMDk1MjcwYTVkOTdiLi5hZjMyNGZiMWIyMmU3M2EyMGRkZmQwZWM5NWI5MzEwNGJlNDUyNDgw
IDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvcmVzb3VyY2VzL3J1bm5l
ci90ZXN0cy5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvcmVzb3VyY2VzL3J1
bm5lci90ZXN0cy5qcwpAQCAtMjEsNiArMjEsMTAgQEAgU3VpdGVzLnB1c2gobmV3IFN1aXRlKCJB
bmltb21ldGVyIiwKICAgICAgICAgICAgIG5hbWU6ICJDYW52YXMgYXJjcyIKICAgICAgICAgfSwK
ICAgICAgICAgeworICAgICAgICAgICAgdXJsOiAibWFzdGVyL2xlYXZlcy5odG1sIiwKKyAgICAg
ICAgICAgIG5hbWU6ICJMZWF2ZXMiCisgICAgICAgIH0sCisgICAgICAgIHsKICAgICAgICAgICAg
IHVybDogIm1hc3Rlci9jYW52YXMtc3RhZ2UuaHRtbD9wYXRoVHlwZT1saW5lUGF0aCZsaW5lSm9p
bj1yb3VuZCZsaW5lQ2FwPXJvdW5kIiwKICAgICAgICAgICAgIG5hbWU6ICJDYW52YXMgbGluZSBw
YXRoLCByb3VuZCBqb2luIgogICAgICAgICB9LApkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0
cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9sZWF2ZXMuaHRtbCBiL1BlcmZvcm1hbmNlVGVzdHMv
QW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvbGVhdmVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGJhODQ2N2Zi
ZTc0YTRmYzA5ZThlYTU2ZWVhZTFkOTQ2ZTA0NDc5MQotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZv
cm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvbGVhdmVzLmh0bWwKQEAgLTAsMCAr
MSwyNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDxtZXRhIGNoYXJz
ZXQ9InV0Zi04Ij4KKyAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBo
cmVmPSJyZXNvdXJjZXMvc3RhZ2UuY3NzIj4KKyAgICA8c3R5bGU+CisgICAgICAgICNzdGFnZSB7
CisgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjMyODJCOworICAgICAgICB9CisgICAg
ICAgICNzdGFnZSBpbWcgeworICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAg
ICB9CisgICAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxkaXYgaWQ9InN0YWdlIj48
L2Rpdj4KKyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL3N0cmluZ3MuanMiPjwvc2Ny
aXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvZXh0ZW5zaW9ucy5qcyI+PC9z
Y3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9zdGF0aXN0aWNzLmpzIj48
L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL21hdGguanMiPjwvc2NyaXB0
PgorICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvbWFpbi5qcyI+PC9zY3JpcHQ+CisgICAg
PHNjcmlwdCBzcmM9InJlc291cmNlcy9wYXJ0aWNsZXMuanMiPjwvc2NyaXB0PgorICAgIDxzY3Jp
cHQgc3JjPSJyZXNvdXJjZXMvbGVhdmVzLmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVz
b3VyY2VzL2NvbXBhc3MyNS5wbmcgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMv
bWFzdGVyL3Jlc291cmNlcy9jb21wYXNzMjUucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM3Mjg3YjIzMjY0ODM1
NTEyNjE4ODY2NTk1OGRmZjMxOTE0ZTM0M2IKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDYyMQp6
Y21WLXowK1JpU1ApPGg7M0t8TGswMDBlMU5KTFRxMDAwPlAwMDA+WDFeQHM2I09afSYwMDAwMWI1
Y2hfMEl0cCkKej0+UHglQ3JMeT5SN2w2WW1iKipDUCF6XzRSPmUpd1AzWSQyOyk0IT94VT96KDdk
TFRmcn1fXkZmeyN0NUV7JVFxCno3fkVWc0lrXmFTNUNeNG5hY35tVUw4elR7UTkrMmA9Uk1We3Ji
JncwM3FMfVZeVD5KSzheZHJ9PkdXWlRXI3Z1Rgp6JTVIO19XbzdQPyQ7PUN7PlltVEBDZ3FHcVNG
dTxPeig4Q1glfnJ1NGh7OWtibyElUGNtR3w8ekRvKjNuXldgOXcKeis2bSVvJVRUX3h0WCE7NkQ3
M29DXkY4RyNQZCkwcElAc0xJZyY8cjNgJXZ5fEJ6bnFJa05VTFo1PCN8dHVVYSpKCnp2OFljd0tP
JGwtQn1NeVFNcl8takB7Jjt6V3kpVl9neilCPVE/Q0BrS3w4bngwVXhRbVdpeDFQJUk/VTtkXyp4
fQp6c30tKkV6Q314MGpDU0FLbnw7blVeeShyUUZoTlAybCk8Ri1aVThLVXB4JCs9ejROQlFmbnZY
VklNQEo+VT4oZVcKemNgeVFJITZ+PV55JC1lNnFrVEZsYWotbTZMPGZDeDl8VVdsQjJrQHl0fncx
NnJGfSF5Qk9oQHYtVWNHejM/IUl1CnprT0hzdj1RO3F4dGRVYlEmQFN5OCs+NXdYZH4rfWZ1RWZ3
WTd6RzlVPilIaUY7NmQpTV5nNX1nKzhVJk53QDNtSwp6MnwzYj9LWTxtSU5sMnVXWHsjSEZUVFAo
WTFKMT94NE9qcihAfiUmNkhTUkskd1ZGNzBtbFhJQzlEYHtQMCpsZzcKenRDRlMta0lBb2YqVXZj
LTJUUHp8ZHAwSml2MU1MTnVpZzEkUE1qdVFwV0pXSmd+aUUpa0Ijems7Pzt2fSt+P2pFCnpraUR6
RHB9bmhWeUtxeV5sY3RARk8qYFpEOHUxYGdVNjtCNF5TX248YDBzaUg2QWxjNCU0JH0rMDAwMDBO
a3ZYWApIdTBtamZ1aH1FKwoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvUGVy
Zm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvY29uc29sZTI1
LnBuZyBiL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2Vz
L2NvbnNvbGUyNS5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjE5MjM1Njg3ZDk2YzU4N2U2NzM5MjZkY2VjNGUw
YWM5NmNjNDI1OQpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMjk4CnpjbVYrXzBvREdBUCk8aDsz
S3xMazAwMGUxTkpMVHEwMDA+UDAwMD5YMV5AczYjT1p9JjAwMDAxYjVjaF8wSXRwKQp6PT5QeCM8
VmkkOVI3bDVUVjFSK0hHajJkISRJeUFFZ0pLTGEyVkA9IT1zZGZLcTJ0VmRwbl9qT183fT1BJj5X
Qz8KejljTENJZDtrJXNVfDk4Xm5TbU1yV0Rkd1lraHgkVkw0eFFQKWhzfV4yeEtuRWRgTEl+eSt7
aUgzQXpyUG1pKyghCnoteDhaWHB0dkx1OHt4b0FMfFghfjBFcXRxYVc1ODI4dmYlM0pmIS1oN3Br
IXJPPFdhLXk+TVY9a31TYno1IUs+Xgp6RGkjckkyfUtyPlZoSnZiZk5WWT53bk1eOTZqPWZfXmJG
SkBVISt0PmUoSXZUUGlQKHxHKjRZTCZuR21gQCRAWGEKd1hqPStYemRvVCQlfUFGejl0MSRHM1l4
Wjc9K04jMDBQZE9MZXY/ZiFMSTN+JjA3KnFvTTZOPCRmPz89enJUX297CgpsaXRlcmFsIDAKSGNt
Vj9kMDAwMDEKCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMv
bWFzdGVyL3Jlc291cmNlcy9jb250cmlidXRlMjUucG5nIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmlt
b21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvY29udHJpYnV0ZTI1LnBuZwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yODQwYTQ5MzkyMWIzZjhjNjI3M2I5ODMwYzhiOGZjZTk2NTRmZTMxCkdJVCBiaW5hcnkgcGF0
Y2gKbGl0ZXJhbCA3NDcKemNtVjxIMHU9cDtQKTxoOzNLfExrMDAwZTFOSkxUcTAwMD5QMDAwPlgx
XkBzNiNPWn0mMDAwMDFiNWNoXzBJdHApCno9PlB4JXJBYjZWUjdsNlltT1dAd1E1NDZZUntFaStO
VEdHbXMzNGpfaXctVnxPVWFGPHFaKFpsPEMySnI7LUhnSQp6QkB+Slg7LVpUPk5Lb0V1UTdqYTw0
aHt9XmlBNiteRG9RSXR0JUZNYUQxS2MzfEt6OyVeZ1JwflljQmk8SXEjaFIKenozMUxAP3Q2fD9Y
TihQfVRGUEVCUnIxVT0tITtEUG5ZWnx6a3piIzdLQnUyRS0oZzMzbXozT093a25wR0R0aExJCnpL
YWYwSDleOGB7OVl9NUdGYUtCVWN1cWgxR3chYkBLdjFtY0NDV3dEakYoKUt2Mk1EbD90PGB+ZSlN
TT88TGdmRgp6Y3lSOXl0WkVYRGckWHleSGxPVjImcDVfWT1aX2lDMGNxISplO0FDSGd+bFJoQWdM
Q2Qxc0skIS1rZFlTMHBfQDsKemRXKT5KRD9vZVg0NkkhYjdLTG19TDhzb2o+WHwwOXdLQTwlaHNt
ZypIRERUaTFLWDZuJnNOOGZ2YUpOfiFGU0wtCnp5S04+ei1BWn0wJlJLQEtpcn5EeyZXP1NgZXBo
VFNtMkVUbENIOT1JSV9nczJWTURSckwrTipkcihoZ3hRMSlYWQp6Yn04NjAkPmI1MzAkYTVYYipi
LUVJdklfbmd1MXtobUJ9Ujc0ZjVjcCp0cWdMVTwtSnJkX1JEbVNeKz9wYFZSTXYKejlqcXB+NHZ3
aDY5QyF8SGZ0ekFgMitxcF80bDNXJVVedmpLK3ppbFhDTnNQJClGZSVeQD9mTXZ2cGdGVCtpVXNY
Cno0QzJjNzFtZ29PPlFYPEZpM0RHaUpzeDhRVnB8NDIlbD5uOGlUdz10MCFHMER0KW52dXBVR25J
MjMoTXBQMEl2Xwp6IUI/O3Z5YTReO3t7Jm5HMmZ6PkFGU1JvWFJ+TVhpaUV7Xk4xMFRWRGFGNkZE
S0JyajVWM1RBT20mSHdoPEJ7cUwKel9YKFdOZilPPzhaRSNye3UxOVFaTWZAQn5VSE0pQ2ctRC0t
SjA0RT0hQVRXKE5VRz0pWGk7YHc/MElHRFg4QWB0CnpVVCk1OGFDZ0NKOWF5ZGNUY3hXdmhLZUli
OCgwO3AleXtKUFlTPUJAa29RVCQtaSFAPCRJbT9AbGFvKU1jTUpadApkQDt8PTJlZ257QjtDX2ZL
KWgrLTQwMDJvdlBESExrVjFpUHxUeXl7YwoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0t
Z2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMv
ZGVidWdnZXIyNS5wbmcgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVy
L3Jlc291cmNlcy9kZWJ1Z2dlcjI1LnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lMjY3OTM3ZGU4YTczMzMxN2Nk
NjUyNTQwNTkyMDU2ZDMwNjcyN2ZkCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCA3MzEKemNtVjwx
MHduIzNQKTxoOzNLfExrMDAwZTFOSkxUcTAwMD5QMDAwXlkxXkBzNkxWZnFtMDAwMDFiNWNoXzBJ
dHApCno9PlB4JWx9U1dGUjdsNkFtUipRVlE1NDVsekVVSGhNRGlmPEtvVWlYMlN2T0omJnE+NTNe
bkNaQHV2MVpYSittKwp6V3c/fHBALW1abkt2VTk7NjRGfWQlKVFnflZBUGxnOX1uYlAyKj11TUE3
YEFvX2s3JVljQ0Y2c29XMV9QejRxRWAKenVNM2M4b1VKYmFobUx9I0dUUitjUX5+OWtmUFFaJnZe
MFdYN0hJNSpremh7anlAT3EjQEZRRW1mUn02ITg4WFN3CnpLV3lJXz9tYCpvTSlRcm8oSl5gciFA
PDIpMiF+eyVvamVyMnk4JTY4bmA4NCF3YmxJb29XSy01aExYUTE/JkklaQp6OSp3NXM1bEdWfDVp
cFVZNGNGaHReU2BtKk5DYUBgU28qZzgxNmtOUmk2WUFzUERNVk0wNWtlMDdLKnNTSH5nZlMKekRY
ZktKUXdgclZ6MklFXjBMTmRPNEtiJWl3I25icm43OF9KeUlNVGJ4SHZ2KD03NENya1BYckZseD8p
Pnc9e19PCnpudUNDIXpeISY5MUc+SFM7bDNWajQ/XjMqcWtiUzZWd315U2xFMTFnJFkzeT0wYmUr
cD96RjhjT1RyVHVrcFp6OQp6cWtJN0YmKW1tT2NEeU5PRHE3SyNmey1oY21xP1RLZEgrd2NGan5X
fUpaWlFQTHtUNXg/P31fPSZzZkRIQ2ZfYT0KejNIR3FnYDs7Mk5UTExOO05yZ2VyQSQ8WkBabjJ5
VSVZflY4Z3U2cn1zWlpwSjFtOCtnQ0tzYz5SWVk5Yy0pMXFjCnp2JkhCZ05gfX5DR0w3a2FUTSRL
T0lFdFVwSEArPDZmKCQzPj5kS1pObUM1PDMzeWc9JTstKzJ7VVRYPVdAcyQxTQp6QDVxTU95eDUt
WmNuNVBxdzcxMX1OQTQldStub3BTZmtTQEFQN2xQPHJDcTVJbzl0SCVuQmI9O0s4WVo9eD92ak4K
enQkPX5yVihFayRmM2ZJaz42cmdSMko3P1daPDM8VjBfbWtTJnw2OztmdDBAO25rTFNuXjglTyNj
ZCowZHU7MjVnCnpOQjY/dDw4b1V8RTJnYCMoX315ekZVcTE/OFpLPlEhMiE5VUhOTktPN341Nk8r
MEghZmUqeEwmSDQ4aCRwRXYqagpOMDAyb3ZQREhMa1YxZm5PV2goI3gKCmxpdGVyYWwgMApIY21W
P2QwMDAwMQoKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9t
YXN0ZXIvcmVzb3VyY2VzL2RvbS1wYXJ0aWNsZXMuanMgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1v
bWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9kb20tcGFydGljbGVzLmpzCmluZGV4IGMxMjZl
MTRhOWJkYmU3NzNiZjk3MzdkMGEyNTMxNDExMjdhMjYyOTMuLmIwNGU0ZGQwOTY2NjUwNzhkMDQ2
YWZhOTI4MjA3ZDQ5MWE4MTQwMmYgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9t
ZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL2RvbS1wYXJ0aWNsZXMuanMKKysrIGIvUGVyZm9y
bWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvZG9tLXBhcnRpY2xl
cy5qcwpAQCAtMTIsNiArMTIsMTQgQEAgRE9NUGFydGljbGUgPSBVdGlsaXRpZXMuY3JlYXRlU3Vi
Y2xhc3MoUGFydGljbGUsCiAgICAgcmVzZXQ6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAgIFBh
cnRpY2xlLnByb3RvdHlwZS5yZXNldC5jYWxsKHRoaXMpOworCisgICAgICAgIHZhciBlbWl0TG9j
YXRpb24gPSB0aGlzLnN0YWdlLmVtaXRMb2NhdGlvbltTdGFnZS5yYW5kb21JbnQoMCwgdGhpcy5z
dGFnZS5lbWl0TG9jYXRpb24ubGVuZ3RoIC0gMSldOworICAgICAgICB0aGlzLnBvc2l0aW9uID0g
bmV3IFBvaW50KGVtaXRMb2NhdGlvbi54LCBlbWl0TG9jYXRpb24ueSk7CisKKyAgICAgICAgdmFy
IGFuZ2xlID0gU3RhZ2UucmFuZG9tSW50KDAsIHRoaXMuc3RhZ2UuZW1pdFN0ZXBzKSAvIHRoaXMu
c3RhZ2UuZW1pdFN0ZXBzICogTWF0aC5QSSAqIDIgKyBTdGFnZS5kYXRlQ291bnRlclZhbHVlKDEw
MCkgKiB0aGlzLnN0YWdlLmVtaXNzaW9uU3BpbjsKKyAgICAgICAgdGhpcy52ZWxvY2l0eSA9IG5l
dyBQb2ludChNYXRoLnNpbihhbmdsZSksIE1hdGguY29zKGFuZ2xlKSkKKyAgICAgICAgICAgIC5t
dWx0aXBseShTdGFnZS5yYW5kb20oLjUsIDIuNSkpOworCiAgICAgICAgIHRoaXMuZWxlbWVudC5z
dHlsZS53aWR0aCA9IHRoaXMuc2l6ZS54ICsgInB4IjsKICAgICAgICAgdGhpcy5lbGVtZW50LnN0
eWxlLmhlaWdodCA9IHRoaXMuc2l6ZS55ICsgInB4IjsKICAgICAgICAgdGhpcy5lbGVtZW50LnN0
eWxlLmJhY2tncm91bmRDb2xvciA9IFN0YWdlLnJvdGF0aW5nQ29sb3IoMjAwMCwgLjcsIC40NSk7
CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jl
c291cmNlcy9pbnNwZWN0b3IyNS5wbmcgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVz
dHMvbWFzdGVyL3Jlc291cmNlcy9pbnNwZWN0b3IyNS5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTUxNjkwMmY4
ZTZjYWI1Y2YyODk0ZWJiZWNjN2U1ZmQ0ZmRkNzU3ZQpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwg
Mzc3CnpjbVYtPDBmenBHUCk8aDszS3xMazAwMGUxTkpMVHEwMDA+UDAwMD5YMV5AczYjT1p9JjAw
MDAxYjVjaF8wSXRwKQp6PT5QeCRHZjZ+MlI3bDVUVT8yaGZ8Tm8hJEtMbUklJjxmRGpsQnJqRDdg
bzItQGJxNUgxS0NpMEBhYT8jQTFxRVcKej1zQmFvKDBPSlJMKzlCYTM+e35GdnZyPykwSjZrPy1R
NT07SzNFKGk0XmxASz1zSCZlR35mPnFwOUghKG9UMmp1CnpGR19GJGA0RGxTSlYrZiNKeFFTUiVt
Um9qJm18S1RDbT9rWVVvOVpQMlM1IXk9aj0jfGMjd0xLSzd1fWkjSzlrUQp6OX11MG96Ji0tJSN+
VmxCTkN0KjZCfW9fKE4yX29yUT9QZXxreDdYcTtLVHFsMlcjPk1yRihGKTFnMEFOOEJ6bT8Kenhw
RGdoczJea3ckVUhSSHY0UyFoRyN7e0ghKzNtI2ZrRWEjR2NIOCRmOHYxIzc5U0E+SyNEeTs3KnRl
JWF4I3BNCnoxI19jVyFpYEhVJFErUClGaDJGO1dZVFJ1ajV3aWg+WV9fTnA8OWxwT1c4JVlRa1pW
XzNFZ1QmeTRDU1JzWXdJPwpYZUI2MylzVlZJYDAwMDAwTmt2WFh1MG1qZkR4UTxkCgpsaXRlcmFs
IDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIv
dGVzdHMvbWFzdGVyL3Jlc291cmNlcy9sYXlvdXQyNS5wbmcgYi9QZXJmb3JtYW5jZVRlc3RzL0Fu
aW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9sYXlvdXQyNS5wbmcKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MjM4MDBhYTkxNDIxNmEzYTJlMjIyNDI5ZmFhYmM4OWMwNDdkYzlhZQpHSVQgYmluYXJ5IHBhdGNo
CmxpdGVyYWwgMjM4CnpjbVY8SzAxXkwqUCk8aDszS3xMazAwMGUxTkpMVHEwMDA+UDAwMDtXMV5A
czY1NEJkdDAwMDAxYjVjaF8wSXRwKQp6PT5QeCNzN1hYWVI3bDVUSUZNVms1UXVMUml3X2wrSn4p
dDllMX57Rmc/a3g1I1F3YVpKTnhxckNsSkVOWThuPlkKelVjM0pQc3JJZ1EjSGNAelM5STxgVWcy
R15CfHkkUDF8cT0hfE5tQTBMeDN3Vz5WWCNZamFvOGwkKjNpP3V8eTRPCnokJGxWU01oSVY+endy
OGpnNW4zSFN8U1U/TX5LQlltTW5qQXUlUDUyTnRUY2IkT143ZU9HWWdqO2coem07dnlSMApvZ0o0
VmM9TjliJWEoPmJiPU40VEQwNj81d2A9clVTIX5nJlEwNypxb002TjwkZjtDaU1xeVBXXwoKbGl0
ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21l
dGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvbGVhdmVzLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9B
bmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvbGVhdmVzLmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgy
NmMzOTg4OTU2NTU2ZDQ2MjU1MTM5MDY4YmVjODdjMDFlNDk5NTIKLS0tIC9kZXYvbnVsbAorKysg
Yi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9sZWF2
ZXMuanMKQEAgLTAsMCArMSwxMzcgQEAKKyhmdW5jdGlvbigpIHsKKworTGVhZiA9IFV0aWxpdGll
cy5jcmVhdGVTdWJjbGFzcyhQYXJ0aWNsZSwKKyAgICBmdW5jdGlvbihzdGFnZSkKKyAgICB7Cisg
ICAgICAgIHRoaXMuZWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIpOworICAg
ICAgICB0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKCJzcmMiLCBzdGFnZS5pbWFnZXNbU3RhZ2Uu
cmFuZG9tSW50KDAsIHN0YWdlLmltYWdlcy5sZW5ndGggLSAxKV0uc3JjKTsKKyAgICAgICAgc3Rh
Z2UuZWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLmVsZW1lbnQpOworCisgICAgICAgIFBhcnRpY2xl
LmNhbGwodGhpcywgc3RhZ2UpOworICAgIH0sIHsKKworICAgIHNpemVNaW5pbXVtOiAyNSwKKyAg
ICBzaXplUmFuZ2U6IDAsCisKKyAgICByZXNldDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAg
UGFydGljbGUucHJvdG90eXBlLnJlc2V0LmNhbGwodGhpcyk7CisgICAgICAgIHRoaXMuX2xpZmUg
PSBTdGFnZS5yYW5kb21JbnQoMjAsIDEwMCk7CisgICAgICAgIHRoaXMuX3Bvc2l0aW9uID0gbmV3
IFBvaW50KFN0YWdlLnJhbmRvbSgtdGhpcy5zaXplLndpZHRoLCB0aGlzLm1heFBvc2l0aW9uLngp
LCBTdGFnZS5yYW5kb20oLXRoaXMuc2l6ZS5oZWlnaHQsIHRoaXMubWF4UG9zaXRpb24ueSkpOwor
ICAgICAgICB0aGlzLl92ZWxvY2l0eSA9IG5ldyBQb2ludChTdGFnZS5yYW5kb20oLTYsIC0yKSwg
LjEgKiB0aGlzLnNpemUueSArIFN0YWdlLnJhbmRvbSgtMSwgMSkpOworICAgIH0sCisKKyAgICBh
bmltYXRlOiBmdW5jdGlvbih0aW1lRGVsdGEpCisgICAgeworICAgICAgICB0aGlzLnJvdGF0ZXIu
bmV4dCh0aW1lRGVsdGEpOworCisgICAgICAgIHRoaXMuX3Bvc2l0aW9uLnggKz0gdGhpcy5fdmVs
b2NpdHkueCArIDggKiB0aGlzLnN0YWdlLmZvY3VzWDsKKyAgICAgICAgdGhpcy5fcG9zaXRpb24u
eSArPSB0aGlzLl92ZWxvY2l0eS55OworCisgICAgICAgIHRoaXMuX2xpZmUtLTsKKyAgICAgICAg
aWYgKCF0aGlzLl9saWZlIHx8IHRoaXMuX3Bvc2l0aW9uLnkgPiB0aGlzLnN0YWdlLnNpemUueSkK
KyAgICAgICAgICAgIHRoaXMucmVzZXQoKTsKKworICAgICAgICBpZiAodGhpcy5fcG9zaXRpb24u
eCA8IC10aGlzLnNpemUud2lkdGggfHwgdGhpcy5fcG9zaXRpb24ueCA+IHRoaXMubWF4UG9zaXRp
b24ueCkKKyAgICAgICAgICAgIHRoaXMuX3Bvc2l0aW9uLnggPSAodGhpcy5fcG9zaXRpb24ueCAr
IHRoaXMubWF4UG9zaXRpb24ueCkgJSB0aGlzLm1heFBvc2l0aW9uLng7CisgICAgICAgIHRoaXMu
bW92ZSgpOworICAgIH0sCisKKyAgICBtb3ZlOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICB0
aGlzLmVsZW1lbnQuc3R5bGUudHJhbnNmb3JtID0gInRyYW5zbGF0ZSgiICsgTWF0aC5yb3VuZCh0
aGlzLl9wb3NpdGlvbi54KSArICJweCwgIiArIE1hdGgucm91bmQodGhpcy5fcG9zaXRpb24ueSkg
KyAicHgpIiArIHRoaXMucm90YXRlci5yb3RhdGVaKCk7CisgICAgfQorfSk7CisKK1V0aWxpdGll
cy5leHRlbmRPYmplY3QoUGFydGljbGVzU3RhZ2UucHJvdG90eXBlLCB7CisKKyAgICBpbWFnZVNy
Y3M6IFsKKyAgICAgICAgImNvbXBhc3MiLAorICAgICAgICAiY29uc29sZSIsCisgICAgICAgICJj
b250cmlidXRlIiwKKyAgICAgICAgImRlYnVnZ2VyIiwKKyAgICAgICAgImluc3BlY3RvciIsCisg
ICAgICAgICJsYXlvdXQiLAorICAgICAgICAicGVyZm9ybWFuY2UiLAorICAgICAgICAic2NyaXB0
IiwKKyAgICAgICAgInNob3J0Y3V0cyIsCisgICAgICAgICJzdGFuZGFyZHMiLAorICAgICAgICAi
c3RvcmFnZSIsCisgICAgICAgICJzdHlsZXMiLAorICAgICAgICAidGltZWxpbmUiCisgICAgXSwK
KyAgICBpbWFnZXM6IFtdLAorCisgICAgaW5pdGlhbGl6ZTogZnVuY3Rpb24oYmVuY2htYXJrKQor
ICAgIHsKKyAgICAgICAgU3RhZ2UucHJvdG90eXBlLmluaXRpYWxpemUuY2FsbCh0aGlzLCBiZW5j
aG1hcmspOworCisgICAgICAgIHZhciBsYXN0UHJvbWlzZTsKKyAgICAgICAgdmFyIGltYWdlcyA9
IHRoaXMuaW1hZ2VzOworICAgICAgICB0aGlzLmltYWdlU3Jjcy5mb3JFYWNoKGZ1bmN0aW9uKGlt
YWdlU3JjKSB7CisgICAgICAgICAgICB2YXIgcHJvbWlzZSA9IHRoaXMuX2xvYWRJbWFnZSgicmVz
b3VyY2VzLyIgKyBpbWFnZVNyYyArICIyNS5wbmciKTsKKyAgICAgICAgICAgIGlmICghbGFzdFBy
b21pc2UpCisgICAgICAgICAgICAgICAgbGFzdFByb21pc2UgPSBwcm9taXNlOworICAgICAgICAg
ICAgZWxzZSB7CisgICAgICAgICAgICAgICAgbGFzdFByb21pc2UgPSBsYXN0UHJvbWlzZS50aGVu
KGZ1bmN0aW9uKGltZykgeworICAgICAgICAgICAgICAgICAgICBpbWFnZXMucHVzaChpbWcpOwor
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gcHJvbWlzZTsKKyAgICAgICAgICAgICAgICB9KTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgfSwgdGhpcyk7CisKKyAgICAgICAgbGFzdFByb21pc2Uu
dGhlbihmdW5jdGlvbihpbWcpIHsKKyAgICAgICAgICAgIGltYWdlcy5wdXNoKGltZyk7CisgICAg
ICAgICAgICBiZW5jaG1hcmsucmVhZHlQcm9taXNlLnJlc29sdmUoKTsKKyAgICAgICAgfS5iaW5k
KHRoaXMpKTsKKyAgICB9LAorCisgICAgX2xvYWRJbWFnZTogZnVuY3Rpb24oc3JjKSB7CisgICAg
ICAgIHZhciBpbWcgPSBuZXcgSW1hZ2U7CisgICAgICAgIHZhciBwcm9taXNlID0gbmV3IFNpbXBs
ZVByb21pc2U7CisKKyAgICAgICAgaW1nLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBmdW5jdGlv
biBvbkltYWdlTG9hZChlKSB7CisgICAgICAgICAgICBpbWcucmVtb3ZlRXZlbnRMaXN0ZW5lcign
bG9hZCcsIG9uSW1hZ2VMb2FkKTsKKyAgICAgICAgICAgIHByb21pc2UucmVzb2x2ZShpbWcpOwor
ICAgICAgICB9KTsKKworICAgICAgICBpbWcuc3JjID0gc3JjOworICAgICAgICByZXR1cm4gcHJv
bWlzZTsKKyAgICB9LAorCisgICAgYW5pbWF0ZTogZnVuY3Rpb24odGltZURlbHRhKQorICAgIHsK
KyAgICAgICAgdGhpcy5mb2N1c1ggPSAwLjUgKyAwLjUgKiBNYXRoLnNpbihTdGFnZS5kYXRlRnJh
Y3Rpb25hbFZhbHVlKDEwMDAwKSAqIE1hdGguUEkgKiAyKTsKKyAgICAgICAgdGltZURlbHRhIC89
IDQ7CisgICAgICAgIHRoaXMucGFydGljbGVzLmZvckVhY2goZnVuY3Rpb24ocGFydGljbGUpIHsK
KyAgICAgICAgICAgIHBhcnRpY2xlLmFuaW1hdGUodGltZURlbHRhKTsKKyAgICAgICAgfSk7Cisg
ICAgfSwKKworICAgIGNyZWF0ZVBhcnRpY2xlOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICBy
ZXR1cm4gbmV3IExlYWYodGhpcyk7CisgICAgfSwKKworICAgIHdpbGxSZW1vdmVQYXJ0aWNsZTog
ZnVuY3Rpb24ocGFydGljbGUpCisgICAgeworICAgICAgICBwYXJ0aWNsZS5lbGVtZW50LnJlbW92
ZSgpOworICAgIH0KK30pOworCitMZWF2ZXNCZW5jaG1hcmsgPSBVdGlsaXRpZXMuY3JlYXRlU3Vi
Y2xhc3MoQmVuY2htYXJrLAorICAgIGZ1bmN0aW9uKG9wdGlvbnMpCisgICAgeworICAgICAgICBC
ZW5jaG1hcmsuY2FsbCh0aGlzLCBuZXcgUGFydGljbGVzU3RhZ2UoKSwgb3B0aW9ucyk7CisgICAg
fSwgeworCisgICAgd2FpdFVudGlsUmVhZHk6IGZ1bmN0aW9uKCkgeworICAgICAgICB0aGlzLnJl
YWR5UHJvbWlzZSA9IG5ldyBTaW1wbGVQcm9taXNlOworICAgICAgICByZXR1cm4gdGhpcy5yZWFk
eVByb21pc2U7CisgICAgfQorCit9KTsKKword2luZG93LmJlbmNobWFya0NsYXNzID0gTGVhdmVz
QmVuY2htYXJrOworCit9KSgpOwpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21l
dGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvcGFydGljbGVzLmpzIGIvUGVyZm9ybWFuY2VUZXN0
cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvcGFydGljbGVzLmpzCmluZGV4IDJm
NDlkODAwZjFkMWIwNjk5ZDFmMjNiMWFkMTE1ZDQ3M2I0NzhjNmMuLjQ5NTU2ZjM4MmViMGQzOTM2
MDgwOWZjNzYxYTQyOTQ2N2E1ZWY4MzYgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvQW5p
bW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3BhcnRpY2xlcy5qcworKysgYi9QZXJmb3Jt
YW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9wYXJ0aWNsZXMuanMK
QEAgLTgsNTkgKzgsNTUgQEAgZnVuY3Rpb24gUGFydGljbGUoc3RhZ2UpCiAKIFBhcnRpY2xlLnBy
b3RvdHlwZSA9CiB7CisgICAgc2l6ZU1pbmltdW06IDQwLAorICAgIHNpemVSYW5nZTogMTAsCisK
ICAgICByZXNldDogZnVuY3Rpb24oKQogICAgIHsKLSAgICAgICAgdmFyIHJhbmRTaXplID0gTWF0
aC5wb3coUHNldWRvLnJhbmRvbSgpLCA0KSAqIDEwICsgNDA7CisgICAgICAgIHZhciByYW5kU2l6
ZSA9IE1hdGgucm91bmQoTWF0aC5wb3coUHNldWRvLnJhbmRvbSgpLCA0KSAqIHRoaXMuc2l6ZVJh
bmdlICsgdGhpcy5zaXplTWluaW11bSk7CiAgICAgICAgIHRoaXMuc2l6ZSA9IG5ldyBQb2ludChy
YW5kU2l6ZSwgcmFuZFNpemUpOwogICAgICAgICB0aGlzLm1heFBvc2l0aW9uID0gdGhpcy5zdGFn
ZS5zaXplLnN1YnRyYWN0KHRoaXMuc2l6ZSk7Ci0KLSAgICAgICAgdmFyIGVtaXRMb2NhdGlvbiA9
IHRoaXMuc3RhZ2UuZW1pdExvY2F0aW9uW1N0YWdlLnJhbmRvbUludCgwLCB0aGlzLnN0YWdlLmVt
aXRMb2NhdGlvbi5sZW5ndGggLSAxKV07Ci0gICAgICAgIHRoaXMucG9zaXRpb24gPSBuZXcgUG9p
bnQoZW1pdExvY2F0aW9uLngsIGVtaXRMb2NhdGlvbi55KTsKLQotICAgICAgICB2YXIgYW5nbGUg
PSBTdGFnZS5yYW5kb21JbnQoMCwgdGhpcy5zdGFnZS5lbWl0U3RlcHMpIC8gdGhpcy5zdGFnZS5l
bWl0U3RlcHMgKiBNYXRoLlBJICogMiArIFN0YWdlLmRhdGVDb3VudGVyVmFsdWUoMTAwKSAqIHRo
aXMuc3RhZ2UuZW1pc3Npb25TcGluOwotICAgICAgICB0aGlzLl92ZWxvY2l0eSA9IG5ldyBQb2lu
dChNYXRoLnNpbihhbmdsZSksIE1hdGguY29zKGFuZ2xlKSkKLSAgICAgICAgICAgIC5tdWx0aXBs
eShTdGFnZS5yYW5kb20oLjUsIDIuNSkpOwogICAgIH0sCiAKICAgICBhbmltYXRlOiBmdW5jdGlv
bih0aW1lRGVsdGEpCiAgICAgewogICAgICAgICB0aGlzLnJvdGF0ZXIubmV4dCh0aW1lRGVsdGEp
OwogCi0gICAgICAgIHRoaXMucG9zaXRpb24gPSB0aGlzLnBvc2l0aW9uLmFkZCh0aGlzLl92ZWxv
Y2l0eS5tdWx0aXBseSh0aW1lRGVsdGEpKTsKLSAgICAgICAgdGhpcy5fdmVsb2NpdHkueSArPSAw
LjAzOworICAgICAgICB0aGlzLnBvc2l0aW9uID0gdGhpcy5wb3NpdGlvbi5hZGQodGhpcy52ZWxv
Y2l0eS5tdWx0aXBseSh0aW1lRGVsdGEpKTsKKyAgICAgICAgdGhpcy52ZWxvY2l0eS55ICs9IDAu
MDM7CiAKICAgICAgICAgLy8gSWYgcGFydGljbGUgaXMgZ29pbmcgdG8gbW92ZSBvZmYgcmlnaHQg
c2lkZQogICAgICAgICBpZiAodGhpcy5wb3NpdGlvbi54ID4gdGhpcy5tYXhQb3NpdGlvbi54KSB7
Ci0gICAgICAgICAgICBpZiAodGhpcy5fdmVsb2NpdHkueCA+IDApCi0gICAgICAgICAgICAgICAg
dGhpcy5fdmVsb2NpdHkueCAqPSAtMTsKKyAgICAgICAgICAgIGlmICh0aGlzLnZlbG9jaXR5Lngg
PiAwKQorICAgICAgICAgICAgICAgIHRoaXMudmVsb2NpdHkueCAqPSAtMTsKICAgICAgICAgICAg
IHRoaXMucG9zaXRpb24ueCA9IHRoaXMubWF4UG9zaXRpb24ueDsKICAgICAgICAgfSBlbHNlIGlm
ICh0aGlzLnBvc2l0aW9uLnggPCAwKSB7CiAgICAgICAgICAgICAvLyBJZiBwYXJ0aWNsZSBpcyBn
b2luZyB0byBtb3ZlIG9mZiBsZWZ0IHNpZGUKLSAgICAgICAgICAgIGlmICh0aGlzLl92ZWxvY2l0
eS54IDwgMCkKLSAgICAgICAgICAgICAgICB0aGlzLl92ZWxvY2l0eS54ICo9IC0xOworICAgICAg
ICAgICAgaWYgKHRoaXMudmVsb2NpdHkueCA8IDApCisgICAgICAgICAgICAgICAgdGhpcy52ZWxv
Y2l0eS54ICo9IC0xOwogICAgICAgICAgICAgdGhpcy5wb3NpdGlvbi54ID0gMDsKICAgICAgICAg
fQogCiAgICAgICAgIC8vIElmIHBhcnRpY2xlIGlzIGdvaW5nIHRvIG1vdmUgb2ZmIGJvdHRvbSBz
aWRlCiAgICAgICAgIGlmICh0aGlzLnBvc2l0aW9uLnkgPiB0aGlzLm1heFBvc2l0aW9uLnkpIHsK
ICAgICAgICAgICAgIC8vIEFkanVzdCBkaXJlY3Rpb24gYnV0IG1haW50YWluIG1hZ25pdHVkZQot
ICAgICAgICAgICAgdmFyIG1hZ25pdHVkZSA9IHRoaXMuX3ZlbG9jaXR5Lmxlbmd0aCgpOwotICAg
ICAgICAgICAgdGhpcy5fdmVsb2NpdHkueCAqPSAxLjUgKyAuMDA1ICogdGhpcy5zaXplLng7Ci0g
ICAgICAgICAgICB0aGlzLl92ZWxvY2l0eSA9IHRoaXMuX3ZlbG9jaXR5Lm5vcm1hbGl6ZSgpLm11
bHRpcGx5KG1hZ25pdHVkZSk7Ci0gICAgICAgICAgICBpZiAoTWF0aC5hYnModGhpcy5fdmVsb2Np
dHkueSkgPCAwLjcpCisgICAgICAgICAgICB2YXIgbWFnbml0dWRlID0gdGhpcy52ZWxvY2l0eS5s
ZW5ndGgoKTsKKyAgICAgICAgICAgIHRoaXMudmVsb2NpdHkueCAqPSAxLjUgKyAuMDA1ICogdGhp
cy5zaXplLng7CisgICAgICAgICAgICB0aGlzLnZlbG9jaXR5ID0gdGhpcy52ZWxvY2l0eS5ub3Jt
YWxpemUoKS5tdWx0aXBseShtYWduaXR1ZGUpOworICAgICAgICAgICAgaWYgKE1hdGguYWJzKHRo
aXMudmVsb2NpdHkueSkgPCAwLjcpCiAgICAgICAgICAgICAgICAgdGhpcy5yZXNldCgpOwogICAg
ICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgaWYgKHRoaXMuX3ZlbG9jaXR5LnkgPiAw
KQotICAgICAgICAgICAgICAgICAgICB0aGlzLl92ZWxvY2l0eS55ICo9IC0wLjk5OTsKKyAgICAg
ICAgICAgICAgICBpZiAodGhpcy52ZWxvY2l0eS55ID4gMCkKKyAgICAgICAgICAgICAgICAgICAg
dGhpcy52ZWxvY2l0eS55ICo9IC0wLjk5OTsKICAgICAgICAgICAgICAgICB0aGlzLnBvc2l0aW9u
LnkgPSB0aGlzLm1heFBvc2l0aW9uLnk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZSBp
ZiAodGhpcy5wb3NpdGlvbi55IDwgMCkgewogICAgICAgICAgICAgLy8gSWYgcGFydGljbGUgaXMg
Z29pbmcgdG8gbW92ZSBvZmYgdG9wIHNpZGUKLSAgICAgICAgICAgIHZhciBtYWduaXR1ZGUgPSB0
aGlzLl92ZWxvY2l0eS5sZW5ndGgoKTsKLSAgICAgICAgICAgIHRoaXMuX3ZlbG9jaXR5LnggKj0g
MS41ICsgLjAwNSAqIHRoaXMuc2l6ZS54OwotICAgICAgICAgICAgdGhpcy5fdmVsb2NpdHkgPSB0
aGlzLl92ZWxvY2l0eS5ub3JtYWxpemUoKS5tdWx0aXBseShtYWduaXR1ZGUpOwotICAgICAgICAg
ICAgaWYgKHRoaXMuX3ZlbG9jaXR5LnkgPCAwKQotICAgICAgICAgICAgICAgIHRoaXMuX3ZlbG9j
aXR5LnkgKj0gLTAuOTk4OworICAgICAgICAgICAgdmFyIG1hZ25pdHVkZSA9IHRoaXMudmVsb2Np
dHkubGVuZ3RoKCk7CisgICAgICAgICAgICB0aGlzLnZlbG9jaXR5LnggKj0gMS41ICsgLjAwNSAq
IHRoaXMuc2l6ZS54OworICAgICAgICAgICAgdGhpcy52ZWxvY2l0eSA9IHRoaXMudmVsb2NpdHku
bm9ybWFsaXplKCkubXVsdGlwbHkobWFnbml0dWRlKTsKKyAgICAgICAgICAgIGlmICh0aGlzLnZl
bG9jaXR5LnkgPCAwKQorICAgICAgICAgICAgICAgIHRoaXMudmVsb2NpdHkueSAqPSAtMC45OTg7
CiAgICAgICAgICAgICB0aGlzLnBvc2l0aW9uLnkgPSAwOwogICAgICAgICB9CiAKQEAgLTc5LDkg
Kzc1LDkgQEAgUGFydGljbGVzU3RhZ2UgPSBVdGlsaXRpZXMuY3JlYXRlU3ViY2xhc3MoU3RhZ2Us
CiAgICAgICAgIHRoaXMucGFydGljbGVzID0gW107CiAgICAgfSwgewogCi0gICAgaW5pdGlhbGl6
ZTogZnVuY3Rpb24oYmVuY2htYXJrLCBvcHRpb25zKQorICAgIGluaXRpYWxpemU6IGZ1bmN0aW9u
KGJlbmNobWFyaykKICAgICB7Ci0gICAgICAgIFN0YWdlLnByb3RvdHlwZS5pbml0aWFsaXplLmNh
bGwodGhpcywgYmVuY2htYXJrLCBvcHRpb25zKTsKKyAgICAgICAgU3RhZ2UucHJvdG90eXBlLmlu
aXRpYWxpemUuY2FsbCh0aGlzLCBiZW5jaG1hcmspOwogICAgICAgICB0aGlzLmVtaXNzaW9uU3Bp
biA9IFN0YWdlLnJhbmRvbSgwLCAzKTsKICAgICAgICAgdGhpcy5lbWl0U3RlcHMgPSBTdGFnZS5y
YW5kb21JbnQoNCwgNik7CiAgICAgICAgIHRoaXMuZW1pdExvY2F0aW9uID0gWwpAQCAtOTMsNyAr
ODksNiBAQCBQYXJ0aWNsZXNTdGFnZSA9IFV0aWxpdGllcy5jcmVhdGVTdWJjbGFzcyhTdGFnZSwK
IAogICAgIGFuaW1hdGU6IGZ1bmN0aW9uKHRpbWVEZWx0YSkKICAgICB7Ci0gICAgICAgIHZhciBv
ZmZzZXQgPSBTdGFnZS5kYXRlRnJhY3Rpb25hbFZhbHVlKCk7CiAgICAgICAgIHRpbWVEZWx0YSAv
PSA0OwogICAgICAgICB0aGlzLnBhcnRpY2xlcy5mb3JFYWNoKGZ1bmN0aW9uKHBhcnRpY2xlKSB7
CiAgICAgICAgICAgICBwYXJ0aWNsZS5hbmltYXRlKHRpbWVEZWx0YSk7CmRpZmYgLS1naXQgYS9Q
ZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9wZXJmb3Jt
YW5jZTI1LnBuZyBiL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVz
b3VyY2VzL3BlcmZvcm1hbmNlMjUucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI5MmI5NWRjNTUyYWRiMDU2N2Qx
NGJiNDdiZDJhZjRkMmJmYzk1ZDIKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDUzNgp6Y21WK3ow
X1hqU1ApPGg7M0t8TGswMDBlMU5KTFRxMDAwPlAwMDA+WDFeQHM2I09afSYwMDAwMWI1Y2hfMEl0
cCkKej0+UHgkKG4mLT9SN2w2WVI8VE0wS0BlUn4yeDRrV0xIdlJzYzB3OChpYCQ1aFFuYj5fZjNV
RjclOU9jTiglSXcjCnoxUj0+T2gtcEg4S3IwSSY8X2w4amByaDZlQDFwTVEjZHJnYzxMK2k+Wmck
P0FKc35XMXtkaU9lK1NeLXgkRSo4bwp6KzRFY1Mxc0xmb0A5fmBQPV9qJlU3I2AzMjllRUgxXk0q
amY1OU1BRVJ5SHMxV1FrWWE+KnN0PUtscFE8UXYoMEsKeng/RkZgS0pYbTB6NVMtRCZle0M9b19f
U19JPEJgUzJ5Uz1RO1cpdDhUe1IhNzN0NmhDS2k2P1I8SmMtLWYpbnV2Cno8OVohdXZMZiFLRSlg
IVFXPy1oR2V4Z1R5dDgmT2EmQUxUI1ElV3R5d35wfmhoQX5hYTRtTk1mOzNlUTMqaHVzagp6QGZj
VXJUazhOY09rPmVSLX56QTxiYiRlfF83bSRFbSs/ZztHX1Q8cGQ8OGZJaEFPZnJWQWF4XzJJQzhA
VG5OaHsKektARTZRVSlCU2J0T1VANGx8NztSMFI9bEdERmcyJiEzfEpNVGNhbGY7eG95SnFyITIh
RT0tY1ojaC1CKktUOVA9CnpRLUx4U21FOXxHPW40MVVeeClJam5fOCtVJDMwMTU3dWpRMnF6dFEw
JHVkWGZOOT9sY2cjMCU7PW8oIShwQm85Qwp6e0hBeSsqZUpPKSVfSy1EVVlDVSNHZGE4QnZuWj41
bl9hbjA7YXR2PispbD5hJmlLVU4zSng7IXhBSHBrem1AO14KYUBBPzRSPnFNR2Qpd1RaczAwMDA8
TU5VTW5MU1RZPEdXa2pYCgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9QZXJm
b3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9zY3JpcHQyNS5w
bmcgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9z
Y3JpcHQyNS5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzMzOTEzZDJiNWQ2MmQ2MjZjMjViNWUxNzY2MGEwYzI0
NGU5ZmI1NwpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgODc0CnpjbVYtdzFDeylWUCk8aDszS3xM
azAwMGUxTkpMVHEwMDA+UDAwMUtoMV5AczZWRjtuOTAwMDAxYjVjaF8wSXRwKQp6PT5QeCZCdVBY
O1I3bDZJbXF9PDhLQF42XjF5byNkIXlPTlRwZFFxTjgrc0FFRENvaDE3ZEhmI2hgfExCSmdDKVUK
elc/VH0yM2twNH0zMGw9RE8qOH5YYSZabnBARjJLRTNgUFN2Y3JiMVUjVSUkRi08eF9oKTNZVUdi
ciY/I0o9T0VSCnpfZz1tQ1M0fCpiSUhFelohTTI+NXNLcXk+dUJGQlZ7MlltfW9NQUttJFVldDJg
aWR+fEk+d3gzejV3aHs+dWRuQAp6V1F7Wk4oNjt5PGMjWjwoRk1SZSVDTVMzVEd9WHp1VjVwWT5I
IzM+Y2gjWl9iNGNVayt2Qzl8YFd2JW5UK3FWUmAKej5ZaFV3JXExeXBePTR+T0MrMzZVY1Z3aW8z
P00+dHViTnJnT2hXK2dReFB9fiNRPENuaW11eDtwZzBXX0t9LVglCno7eWd5Y0ZCYnE8VytWWE94
X3FPfCszaGJ0TUcmWENVV25wMVR0REh2Yl5mRlhCN25JQjBiYmd5Vnx2N0QqJCglQQp6O1FBVH5A
fSpVa3NqZWI0SFhJPD1CYklaSio1PHY8PGJzTlRCJEttcGVWe0tVPyR7VVFXTGc4PTJRUzxKSnRF
OUcKek9BaG9qaDE7ZjswOH1aOFBJez5lP240cEFwRExzTDl6NVJ+M1hsaSE4fDIpUj1LOVhAMShX
ZmhUJnVONk9HVFFjCnpNfXlKRnVCZWB1Xnt9Kys/dmdfKHY9TU9TdzF5YDM3S2tCcGojTFpLMTBf
R0YoMnhPRm18YG9YPk94YG9WanJhNwp6Uyt4Sz9abk0tUmJXOH4qS1RWNSVlK21Fd3p+Qz1DQ3wy
akklfj15O2E7a35tI2hJN2BQSlRkfVNYOWNPPCFxeVIKent9ZXdqN3lHZ0lLb3FxfjUle3JeRk0t
flZvX0t7bzdGTisoVW9SPns1IU1aZFk0aWV0YlJRdGQkdWpreCkyNk5ACnpPT0d7NTZfZCtSWU09
bXFCJC0lUEBgOTlkNm9BXnZpd0YyQDBRaWppSzJ+Vk83aUZVeW0rZ0s5aXYyR0B7bXdaJgp6Pjw/
NkZpKjlQSFAmRUs+PSE9Uz0zUDU0S15MfWNxK0tRREY2ZjJBWElTfSo+ZldEIURzM21wYDF3ZV4x
WSUxcmQKej4hZGdjZCZZV356T0JxaEFQeU07WSljI2A7fiVzNHBiQnZSMX1oRSQqJldkZjBDSWFt
MU4xcjl3TDZ+RDBOZmMoCnpCaUtVNTJIYmwkOXokS0pHWTJTMTsyVE5EdGB4en5YYUxIRkN2bDVr
WU0tZDM4aHxfVEBUTntDOz0zPF5kXjliYQp6UUcxSTFoWVVpPl82UGhOQWxIbFZmQ3Q3cUZtKHdn
bXpkYzMyT3RJdDdiS09URWRUJWowNypxb002TjwkZitJRDIKQXJ+bSl9CgpsaXRlcmFsIDAKSGNt
Vj9kMDAwMDEKCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMv
bWFzdGVyL3Jlc291cmNlcy9zaG9ydGN1dHMyNS5wbmcgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1v
bWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9zaG9ydGN1dHMyNS5wbmcKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ZTg0ZGRhNDAyNzNhMzgzNDNlZTMzNzAzOWE2YzMwOWExNDY4YmNlNApHSVQgYmluYXJ5IHBhdGNo
CmxpdGVyYWwgNzcxCnpjbVYrZTFOezduUCk8aDszS3xMazAwMGUxTkpMVHEwMDA+UDAwMD5YMV5A
czYjT1p9JjAwMDAxYjVjaF8wSXRwKQp6PT5QeCV5LTdxdFI3bDY9UlpFQ1pWSDdfbWNAKlV9bzwl
az8qKGhOX0xYbXxtaEVSaGRuZ3VabkdpRV83P3wxTHQKemU8WThVJXRFUUxrWFJyXio1N3lVZjlN
fSZWUFBlYnphKHN+Xlo0JCl8SG0yZ0Znc3RKWnVmbFdlQ1BFJD1LJDI3CnpYbX0tPF8lSWxFMj9E
bnR1RG82WlY+dHRNMzU0emQ+bHhQdGZuREF6XmdOeDRtbHdnPC16YnBRZVpRZng/IU91Ywp6LUFV
Ql8taz13X1UtPDJaRztKI2MkJCR2bWdpXmMkRlEqYHsxT00rY0tYUWszMU14QWhIdzJkfXQ1fWIr
NXg4NXoKemNmRUJmTEohRCpjOHEoQjNTWGk4VlArJSQ/UUc9TkBjeUIkWDl3fV9DI0hXWGQyQHVW
UVV1ekcrOytZWGxUQSZKCnpZP0lYMyY4bDk+dTlqJXhlSVVpY05HTWJfQ0RwfVojMiM7b0BEJWUw
a355bTApcHlmPGVmb2U9Qj5DJm1oMndURgp6K30maVBoeHltNXYtQypaSSZzZUoyOEpvMiRoWmU7
R3x9K0ZhVH1wYDB7YUFZekNnSjtQbmR4XztpR3Y1Q2ZVS28KenE2bW02TGRwSHZvWDMyN0w2Qz5R
JCQ2KzMrTVRITExQdW9+QUg8OCN7PXQ3RVY/UUNGX1Vlc3dgfjNgdj5fKSpxCnpyaVRlNWtTT21J
SlM2SDNkR0tgM0JSeH51eihwVXxuUH1udjEweXNscUdZUWRkT2J7R2RfSkV+OElRQCZINH5wSgp6
V0twamFaeURMSjQ3PUstcG97djBNdDtrPDdKKX1SaSpDR3slaWErMlJQYHZ6Y3RqS2RjUWxUamo3
TkdEMnskNiQKenEydXwmcD96VE5KJCpuPHB5UnBrKng/I25kb3c/NCFqJCpIV0VNVjUqN308NThH
UTx1RTZhUXs5I3ZDSkRibWhSCnpieV5NI28tZiU5KCUwKVEqKkQ0aCN3cDlXUHgtNSt0RnAjQio5
cEF6Y18tdF9ZQE1jVUREKUVQVzZQK1pHIWNyWgp6JG9mWFRpeThYQyEwPCl0X1hyeH5qWWdyO0p9
fnhhO2Y/eEdTQl5AbTBqQ0hmQU9vYEsmTk9ANiVSNn5neXBOJjMKekkwN2BGKXx2Sko/UE13elpN
MmIhK1BjcGRGcDh4NkpCdCpfYDIrakFxTXBIQGJ+eWs1MDAyb3ZQREhMa1YxZmItCkJiVmRMRwoK
bGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmlt
b21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvc3RhbmRhcmRzMjUucG5nIGIvUGVyZm9ybWFu
Y2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvc3RhbmRhcmRzMjUucG5n
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjA5Yzg4MDFiNDM1ZjEwYjgzNmVhZDA4ZThkYTJkMzE5MDRiYjc3ZGEKR0lU
IGJpbmFyeSBwYXRjaApsaXRlcmFsIDEwNDQKemNtVit2MW5je1dQKTxoOzNLfExrMDAwZTFOSkxU
cTAwMD5QMDAwfmExXkBzNmxxM3w7MDAwMDFiNWNoXzBJdHApCno9PlB4JiZQaFo7UjdsNlFtVDU+
LVE1NDZJbVg9dS1CQGA4ajYpOGx9MHhkKitrWjlqQyR8OCNQYFhXfSZtZURJcQp6R0FwdHlCSEtX
VTdOVmslcHlmRjtua15IUlNlWjdfMjJyRnx1NHZCZGYyUU5+OUdAfGVVSEl2ez1pUGgkYkkoMloK
eisoJnQ0UXU5cG9gOUczUHMpPXNuO1hUO2Ytb1NVWS05bT42RD48djA9XyZuKDJIJG4/b3glP1hw
ISV1MzF6Y3c4CnpqK0pPdyR5Jmw2R2xVdjdqZV49ISNBJjQ9RWFFV0o5OHhXYGY7Kn4waz9rNVBE
XjJrRkhQS2tJVFdMQ1heMzYyVgp6WHQxVmYhKztmQjB1RkU9PGJzMUI5KXVnc2I2OUFCSChWKGNP
LT43cWxHdyVSOTAhNEU7Rml8MWVVdHg5SUBAPVUKejMzfDB5aUc/PEAtKTkqViZNRGxWSjF7MVFL
c1J0aDlKfk9SPHY5emlsOz5IWDNjUWdPdlM8YUVxUlhydW9Xa0RECnpiQT57XkQ9fHxkMWBQem9w
YXZgakEpcko7KUIhOVBrd355WW9+TUZYa092eVQ2ODRNS0pxOTdTS0EkVnttNTJpdgp6QERZM2ZC
Vnw9eyNaakV9XiYtTEdJZnFvPGImXiRreiMxSGpFOHcxOTxZbSNSPjJBRU4yN2A1YmF9QVgwYGFU
aXEKekN5TFZuKCZ5RWwxR1NFbkZjJUI/TDwmLVM3Wjt0TCFJUmhOOUVPUEs/IVNvaW1IdWtvbjRh
S2tMMjkyVzR3K0ErCnpGcztBKEZlOFJEcj1NPXtJQl90IUVmS04zMjA0Q2R1UTwxTCltKWgpJmlJ
VEUoeFdkRj8oV0FLZnxJWVFVPyhedAp6NHVecytsR2dydihwNXNyJCs4VVcxRm9pcThheztEZ0ZS
NjtwOW1LKjgwI0AkaXlYS2J0IyRLQV9IZTckajlWcUEKemU/e3B7bGJyVD17bD4zaEJOc0tAMXxI
fHckfWUwR0h0V3R6OGJ8X2IhRmRzbigkJWRvLW17MCZAfX5yI2hfUjgyCnpubDckNjtFNytYanJM
QDwqZG0mM0N7P3Jse3FkPEU+I3I+Sj19cko1XlRpaDNSJUN1RnFsbyMoNVIpIXxoWElKUgp6dk5e
WCRyMUJvT3lrSGRTIVhvZVA/a2RDSk1XOCE0M2Z1dlJZP2opXj1WfVolUkM7d3xxaG84Pm1zWHxP
WnN9MF8KemBnK25RYXE/M3RabXBGMDFUWWglJWxwTShBPW0oJUIycTV6c3ZsPktGMG9yZm8qM1E3
WmEkJEhHI3FSS2ckOEJhCnpzNUp7QE8wbiNXc059KWRqbipQNFcpUU1CLTtnNTRaNX4kdzVDZ1Z9
WjlMYTJ4ZmI0b1krczRtTj5MRGIzdHVPVgp6Uis4aCpGY1cjZUJWNWI3RCY2WGpycEVnSGYybSFB
XztrQi1saGJoQFduekFiQiM7SndIcDY+YXdOZm5LRDtTVXEKellQfFExRXdxbFNETVoob3pzbHVK
KXswS1ZPQCEwcnsyaEBseUVXNyFQQWtBZ3lOT291TUh0WUJLLW5TYzFqbXlnCnpudHtuaGV8fSti
d0xKZlh5fSlra3NQR0JiNmJrPDV1YUE2JWB0cHx6ZjJWbXI1KXxxWT0tZ2xiVE1FeEpLRGMpUApP
MDAwMDxNTlVNbkxTVFhnQDliSXQKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBh
L1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3N0b3Jh
Z2UyNS5wbmcgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291
cmNlcy9zdG9yYWdlMjUucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJjZWNiYmNmN2YyMDIwYmU3MTE5YzVlZjNm
NGJkZjRiM2E5YjE2ODMKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDc0OQp6Y21WPEowdXVkK1Ap
PGg7M0t8TGswMDBlMU5KTFRxMDAwPlAwMDA+WDFeQHM2I09afSYwMDAwMWI1Y2hfMEl0cCkKej0+
UHglciU2T1hSN2w2WVIhd1VaS0BjN01fOWw4VDNTSUAjaSNOZ09BJlE1UE9GO1lxRHczTkJwMWZH
UThWUUpeCnotZXpWdXN8MzFkOCZtPXpZQSExJUIjSmpoZiZfd2kyI0kxS3gxaD1UVVFjRG9DY0FG
UGp5NXprUnNISCFQZ25Jdgp6NVVnbnhzY1p8eWIlcl42RWZvN1c2N3c8PWB5U3NAcF9yZUx6Zj99
cSZULTtXeXo4V1koNXd8Q0lSPlg5b2FWIXUKenJuPUgkbj93Sk17dVheMGdoUTA3KD5fO15IfW04
blUpe194YTFSNV45dz5JMmRNTEBjZzFFaUcySEtONSYtTXxZCnpgcV5vbislazNsWEhXKW8ySCM/
Xz1jYGlQNjEzNmlQYWc3VnV6XjZBPE0tZmdkbm19VGsmbkZPWE9LXmY4MFlNegp6RVE2M3dtO1ls
PiRre1VwdzVXeWBrKEFGbT1lQk4hbjExdnBrMW98PkVUJHsxdGhfeXJmcihtYGkxYDZNMHFBLXAK
ek5sekB2M0NQMWYhUXFHUGwrQE1VTG1jdG11Znx+fiRoKkZiXld+RkIqYUx2U3RTLXc5Y2xnbnRK
blA2eVFyVDQhCnoqSExlS3pOYUFOKHtRP2duZjlTI1piMDZ9M2AwdVFgIzRTPEAlOD8kZ1M9Xmlg
cHRmVCRGJmxRUFRZPW01PkVlZwp6USt2S35eMFRfZV5qOE9Laz10ektBKWg5SDNfOzhTJiFmPnRx
ZFQpS1ZlKmxlYH5mfmpHLUFvIWNlfUYpS3B5Z0cKem01bF5OdT9NK2YpYktVUkMwRzRBWmV7fkF6
d2pyfCUwP3VBWjRGczFGd1NVeG1oaFlKcGcrVzN4RHdAVFo9QVFNCno7IzxpUEkjRSpoYzhuOTM7
PzB0aCZ5Y1RTaj05bWVMc19ENWRjRjQ4WmBSWX1vcF9lRT4xdWVWTTBzLSpOQT19Swp6TjRybTh8
SS03K19gaXtJeEJtPEp6fX4xfSRVe0QyKHNsR1JNfT8peUFMZnpLUFNWcE8yYld2PWhZU0FmIWE3
Y0IKemZRd217RiE/bVVsTU0zeGY3fmJreyR8WUxqQEx2dHp2RWxJUjxOQTJlM2R9SFNeWmozbyVZ
JDV1YSNFc0Y3I0pfCmZkdnxmWCl3fUJ0ZGtHZy09WFlhezAwMDAwTmt2WFh1MG1qZjRHd2E2Cgps
aXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1v
bWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9zdHlsZXMyNS5wbmcgYi9QZXJmb3JtYW5jZVRl
c3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9zdHlsZXMyNS5wbmcKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNGZhZDc4NDg0OTRiY2NmMjQ3Njg2NGRkMTlkOGMzN2VmYTQxMjU2MApHSVQgYmluYXJ5
IHBhdGNoCmxpdGVyYWwgMTAwNwp6Y21WPEwwfSVYKVApPGg7M0t8TGswMDBlMU5KTFRxMDAwPlAw
MDBeWTFeQHM2TFZmcW0wMDAwMWI1Y2hfMEl0cCkKej0+UHgmc1l5Z1pSN2w2SVJ7TSgkUTUrdntD
Q0BnYE5SKCVhbHdYdjBXRCR2bygzWiY3SmtCe1lfZzsmZGB+aXd1CnpUOUxRM0M1akBZeGlqfiFf
SkBAZzg/e3A4NWhBUSk/UShzOz1YX2BPLXJjIS13X1ReRStubno/LWBENSF7bWorMAp6OXhVSW9T
RU99ekojRngjYiskYj0tYDM+MWdFSzVPdHcmQmdnUCghTnR+YWEzPD1ZeCtZNmR9bzdFZm42XzMq
RjAKekF4eko4MmpiYlohQ3Y4aFRJYklebGRxMnI7MFpDeUd1V0B0MzAoUkg4Rk9AXjU9aExKYHpB
akwmaThAc2xSQyRyCnp6fVhyVmZPK3VWTjxNRGE+Q1dfbUFkdFpVSDJTKk89XjBgI1Q+TUIqbmdX
QmI0MEpKdi1jUjg5MmFKdEw4PUBOYQp6K1FZPHJnT19LYCM3d0MydUgxdjlHMH4xbk9tPGlyRVBJ
KUp4Nzw8YUZtd1cwMX1jY0NGNmU7ZSVtPj47PCZeKk0Kek9wKElZZFkwRyhpTkJgbTRPTk4zNTg/
KTlVNFJvfl5UNmhKdzJ8THcpPXZ5Nj16X0B7dmJFQjBDWXdrTU17Kz0qCnp3fUBwIUdDMn4waD1n
akZ2cFNYKGZJfGVqIUMmTnFFM3M0VSokeiVHUEB1RTJRWHJBS0MkP3o1JCVIZ29Wcl5XSQp6dGVL
b2IwcDg/Z2Q8ekl1MktaR2RPdklqPz4tTDg7NFBhe3Z0Zn5vdFd2XjIkNkhFaUpFYXt7T3tRJjRt
bDxvTnAKej1RQmNaQUBpNGs8dCZEbHtLWW9xYT1DdSFQfSVHYWZocEZnQWs0dmI9P1c4alY9VG9U
WEZPJHBEWCZkTyFpcGYrCnpSalR4SSpnblpyWDBLQW9peGglYURHaXBgVHg1PlFYYjcocj8xeXYo
Uil6JEBzLSFRST99b2tRTURJZ0AzRXYrOQp6NnRsMW1sQT0wJFQxV185dH09eFlmV2VoMjBCUyUz
e1JyOzNEaipYWTRqQEl9UiFueF8oblkjbDVlNENWR0dUS3IKeitRVCtRQCp8KTJqM0V8azVrcE0y
cW99cmxMbiF8PEpiJUZIYXBYU0UwXnhGe1Z7WjZYTzZDfWpNeGU4JCReckNgCnpDVkUkUUJBUjgl
eGhPVDF7ZkNoSGBCKSpZI0hkT3d3em5gbXJQTFpfMUQhKiM/fnhMfkNtXiZWTG4mZHM7MzV1PQp6
WTZBPGo5eGw5dGwlO2xJM3J8WkghbUxxc1IjI3Zsbl5MJVJVWDhYckVGV1lEXmFUZD9XPVA+IT5B
KnR9Pl5Ed3IKenVDe2hTc1VTZXhwYG1haDIxcERGXzh0Y356NkZkZTAjPn1FZ083YnZFR2RPZzd6
RSFAcDsyWnNzbnFDaHYlP1JQCnpaP0lGPz1hOE50LTRrUG42YWBWOHh1XkFKYDhyPCFtK09jPEV5
I0p5eWkzY0p7bDM9UWc+b1ZfMnojdGxfJkYrVAp6cnklWFh2YjVJTVJqPDF2KUNCVzMhc35gLXJL
WFleeEFtISNGMnNPODZ6R3N9XyEtZ19XayZubzMtdCpxWW9xfHAKZHNCNUx9YH4kJjtHRyRvd2Z0
M0lOMDAyb3ZQREhMa1YxbSFVK1dQPGkKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdp
dCBhL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3Rp
bWVsaW5lMjUucG5nIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9y
ZXNvdXJjZXMvdGltZWxpbmUyNS5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDE3Y2Q2YjMwMWU0YjI2NjYwOTc4
Yjk1MTI3YThjYTJmZTU0ZmYzNApHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgNDYwCnpjbVY7LTBX
PCFJUCk8aDszS3xMazAwMGUxTkpMVHEwMDA+UDAwMD5YMV5AczYjT1p9JjAwMDAxYjVjaF8wSXRw
KQp6PT5QeCRoRGsoMFI3bDZZUj1yTmRGYnVXPzB3SEdCbl5fcVVGVGxjNispZD5MbjN4JC17c3R6
ZCtxJj0peWcqV3IKelNkaUYyTFZ8bU9ufVI8Rm9oV1RuVGNUTDlxTmV1ZUI+byhTQz9fe0JvODs7
dkl1RXp4Zit5JFNkMGMqdktGI3hnCnoqcVAtJXR9e1IoVjVNSkI4Ums0cj43cVdRdEgoVlZAdHgp
dVZoNE5wc2xAcFNZdDdFRD5eUCZseFIkbFlmN3JudQp6ZSg9eEE8LTxPJj90PXwweF87YTBHS24j
NnZ1P0QweiNlfF4yVHR6fVV7SHAkKyZWYkc2WUZXTzBzUFpLQyshQGgKenR5ViopSVQkMUB4RHZj
WmokQW1GR3duR2RhfWVPOW9FQVQ1RChza1BjJWNkYzBVbUlMLXJ6WkNJSygxcjVhMD5ECno4RDl6
dGR7PkcoTkZ1PnBAVEdFNVNmZDFDVDtSKk9wQFBRPDAka3dCVTQqTm04KnJFUGBJaiEkTDRYVlYr
KWZ5NQp6aHhNZEc1M0Q7ZTwte2Jib0VYXzwzJGtMRHR4blheczFzd3d0RUV4I1hgO35IVGBGbmFV
Qis4ais0d3FjVk05TXIKekIpZ31kNyY+RzJoejJ8M3p4RFY9ajx9SmZyX2JsI3pnOStnY1lPZ3Ba
bn5pbT1nR3FXMDAwMDxNTlVNbkxTVFokCkMyKyZ+dwoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpk
aWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cgYi9QZXJmb3JtYW5jZVRlc3Rz
L0NoYW5nZUxvZwppbmRleCBiNDI2ODNmNTJlMjk0N2U0MmNkNjNjMjY1NTRkMjIyNGIyMmVhMDA2
Li5jZDE3ZmJlYjNmNzExYzJjMTFhZTJjMWQ2N2RmZWQxNjhmYjVjNmRlIDEwMDY0NAotLS0gYS9Q
ZXJmb3JtYW5jZVRlc3RzL0NoYW5nZUxvZworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDQ2IEBACisyMDE2LTAzLTA5ICBKb24gTGVlICA8am9ubGVlQGFwcGxlLmNv
bT4KKworICAgICAgICBBZGQgYSBuZXcgaW1hZ2UgdGVzdAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU1MjMyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIGltYWdlIHRlc3QgcmVuZGVycyBQTkdzIGFu
ZCBtb3ZlcyB0aGVtIHdpdGggdHJhbnNsYXRlIGFuZCByb3RhdGUKKyAgICAgICAgdHJhbnNmb3Jt
cy4gRWFjaCBwYXJ0aWNsZSBoYXMgYSBsaWZldGltZSwgYW5kIHdoZW4gdGhlIGxpZmV0aW1lIGVu
ZHMgb3IKKyAgICAgICAgdGhlIHBhcnRpY2xlIGdvZXMgb2Zmc2NyZWVuLCBpdCByZXNldHMgaXRz
ZWxmIHNvbWV3aGVyZSBvbiB0aGUgc3RhZ2UuCisKKyAgICAgICAgKiBBbmltb21ldGVyL3Jlc291
cmNlcy9kZWJ1Zy1ydW5uZXIvdGVzdHMuanM6IFJlbW92ZSB0aGUgQ1NTIGJvdW5jaW5nIFBORwor
ICAgICAgICBpbWFnZXMgdGVzdCwgYmVjYXVzZSB0aGlzIG9uZSB0ZXN0cyB0aGUgc2FtZSB0ZWNo
bmlxdWUuCisgICAgICAgICogQW5pbW9tZXRlci9yZXNvdXJjZXMvcnVubmVyL3Rlc3RzLmpzOiBB
ZGRlZCBoZXJlIGFzICJMZWF2ZXMiLgorICAgICAgICAqIEFuaW1vbWV0ZXIvdGVzdHMvbWFzdGVy
L2xlYXZlcy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBBbmltb21ldGVyL3Rlc3RzL21hc3Rlci9y
ZXNvdXJjZXMvcGFydGljbGVzLmpzOiBSZWZhY3RvciBvdXQgdGhlIHBhcnRzCisgICAgICAgIHNw
ZWNpZmljIHRvIHRoZSBET00gcGFydGljbGVzIHRlc3QuIENvbnNlcXVlbnRseSBtYWtlIHZlbG9j
aXR5IGEgcHVibGljCisgICAgICAgIG1lbWJlci4KKyAgICAgICAgKGluaXRpYWxpemUpOiBUaGUg
b3B0aW9ucyBwYXJhbWV0ZXIgaXMgbmV2ZXIgdXNlZCwgc28gcmVtb3ZlIGl0LgorICAgICAgICAo
YW5pbWF0ZSk6IFJlbW92ZSB1bnVzZWQgbG9jYWwgdmFyaWFibGUuCisgICAgICAgICogQW5pbW9t
ZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL2xlYXZlcy5qczogTWFpbnRhaW5zIGEgZm9jYWwg
cG9pbnQgdGhhdAorICAgICAgICBtb3ZlcyBiYWNrIGFuZCBmb3J0aCBhY3Jvc3MgdGhlIGNhbnZh
cy4gVGhhdCBwb2ludCBhZmZlY3RzIHRoZSB2ZWxvY2l0eQorICAgICAgICBvZiB0aGUgcGFydGlj
bGVzLiBXaGVuIHRoZSBmb2NhbCBwb2ludCBpcyBvbiB0aGUgbGVmdG1vc3Qgc2lkZSwgaXQgaXMK
KyAgICAgICAgYmV0d2VlbiBbLTYsIC0yXSwgYW5kIHNldCBpbiByZXNldCgpLiBXaGVuIHRoZSBm
b2NhbCBwb2ludCBpcyBvbiB0aGUgcmlnaHRtb3N0CisgICAgICAgIHNpZGUsIGl0IHdpbGwgYmUg
ZnJvbSBbMiwgNl0uCisgICAgICAgICogQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2Vz
L2RvbS1wYXJ0aWNsZXMuanM6IE1vdmUgSlMgc3BlY2lmaWMgdG8KKyAgICAgICAgdGhpcyB0ZXN0
IGhlcmUgZnJvbSBwYXJ0aWNsZXMuanMuCisKKyAgICAgICAgTmV3IGltYWdlcy4KKyAgICAgICAg
KiBBbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvY29tcGFzczI1LnBuZzogQWRkZWQu
CisgICAgICAgICogQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL2NvbnNvbGUyNS5w
bmc6IEFkZGVkLgorICAgICAgICAqIEFuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9j
b250cmlidXRlMjUucG5nOiBBZGRlZC4KKyAgICAgICAgKiBBbmltb21ldGVyL3Rlc3RzL21hc3Rl
ci9yZXNvdXJjZXMvZGVidWdnZXIyNS5wbmc6IEFkZGVkLgorICAgICAgICAqIEFuaW1vbWV0ZXIv
dGVzdHMvbWFzdGVyL3Jlc291cmNlcy9pbnNwZWN0b3IyNS5wbmc6IEFkZGVkLgorICAgICAgICAq
IEFuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9sYXlvdXQyNS5wbmc6IEFkZGVkLgor
ICAgICAgICAqIEFuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9wZXJmb3JtYW5jZTI1
LnBuZzogQWRkZWQuCisgICAgICAgICogQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2Vz
L3NjcmlwdDI1LnBuZzogQWRkZWQuCisgICAgICAgICogQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIv
cmVzb3VyY2VzL3Nob3J0Y3V0czI1LnBuZzogQWRkZWQuCisgICAgICAgICogQW5pbW9tZXRlci90
ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3N0YW5kYXJkczI1LnBuZzogQWRkZWQuCisgICAgICAgICog
QW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3N0b3JhZ2UyNS5wbmc6IEFkZGVkLgor
ICAgICAgICAqIEFuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9zdHlsZXMyNS5wbmc6
IEFkZGVkLgorICAgICAgICAqIEFuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy90aW1l
bGluZTI1LnBuZzogQWRkZWQuCisKIDIwMTYtMDMtMDMgIEpvbiBMZWUgIDxqb25sZWVAYXBwbGUu
Y29tPgogCiAgICAgICAgIEFkZCBhYmlsaXR5IHRvIHJldHJpZXZlIHJhdyBkYXRhIGZyb20gcmVs
ZWFzZSBoYXJuZXNzCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>273469</attachid>
            <date>2016-03-09 13:51:29 -0800</date>
            <delta_ts>2016-03-09 17:35:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-155232-20160309135117.patch</filename>
            <type>text/plain</type>
            <size>63213</size>
            <attacher name="Jon Lee">jonlee</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3ODU5CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3Rz
L0FuaW1vbWV0ZXIvcmVzb3VyY2VzL2RlYnVnLXJ1bm5lci90ZXN0cy5qcyBiL1BlcmZvcm1hbmNl
VGVzdHMvQW5pbW9tZXRlci9yZXNvdXJjZXMvZGVidWctcnVubmVyL3Rlc3RzLmpzCmluZGV4IDZm
MWM4MTViMmEyZmI3NTk2NGY1ZmUxMTRhNDc4YTUyNjBiOTkyZmEuLjU4NDhlYWNmMmM4MTRiZTZl
NDVlZmRmYTk4NjM4NjAzMjMyODg3YTIgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvQW5p
bW9tZXRlci9yZXNvdXJjZXMvZGVidWctcnVubmVyL3Rlc3RzLmpzCisrKyBiL1BlcmZvcm1hbmNl
VGVzdHMvQW5pbW9tZXRlci9yZXNvdXJjZXMvZGVidWctcnVubmVyL3Rlc3RzLmpzCkBAIC0xNjIs
MTAgKzE2Miw2IEBAIFN1aXRlcy5wdXNoKG5ldyBTdWl0ZSgiSFRNTCBzdWl0ZSIsCiAgICAgICAg
ICAgICBuYW1lOiAiQ1NTIGJvdW5jaW5nIFNWRyBpbWFnZXMiCiAgICAgICAgIH0sCiAgICAgICAg
IHsKLSAgICAgICAgICAgIHVybDogImJvdW5jaW5nLXBhcnRpY2xlcy9ib3VuY2luZy1jc3MtaW1h
Z2VzLmh0bWw/cGFydGljbGVXaWR0aD04MCZwYXJ0aWNsZUhlaWdodD04MCZpbWFnZVNyYz0uLi9y
ZXNvdXJjZXMveWluLXlhbmcucG5nIiwKLSAgICAgICAgICAgIG5hbWU6ICJDU1MgYm91bmNpbmcg
UE5HIGltYWdlcyIKLSAgICAgICAgfSwKLSAgICAgICAgewogICAgICAgICAgICAgdXJsOiAidGV4
dC9sYXllcmluZy10ZXh0Lmh0bWwiLAogICAgICAgICAgICAgbmFtZTogIkNTUyBsYXllcmluZyB0
ZXh0IgogICAgICAgICB9LApkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVy
L3Jlc291cmNlcy9ydW5uZXIvdGVzdHMuanMgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIv
cmVzb3VyY2VzL3J1bm5lci90ZXN0cy5qcwppbmRleCBjYzg1YjlhM2Q0YjhkM2Y0NGE5MDZhOTQ5
Y2RlMDk1MjcwYTVkOTdiLi5hZjMyNGZiMWIyMmU3M2EyMGRkZmQwZWM5NWI5MzEwNGJlNDUyNDgw
IDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvcmVzb3VyY2VzL3J1bm5l
ci90ZXN0cy5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvcmVzb3VyY2VzL3J1
bm5lci90ZXN0cy5qcwpAQCAtMjEsNiArMjEsMTAgQEAgU3VpdGVzLnB1c2gobmV3IFN1aXRlKCJB
bmltb21ldGVyIiwKICAgICAgICAgICAgIG5hbWU6ICJDYW52YXMgYXJjcyIKICAgICAgICAgfSwK
ICAgICAgICAgeworICAgICAgICAgICAgdXJsOiAibWFzdGVyL2xlYXZlcy5odG1sIiwKKyAgICAg
ICAgICAgIG5hbWU6ICJMZWF2ZXMiCisgICAgICAgIH0sCisgICAgICAgIHsKICAgICAgICAgICAg
IHVybDogIm1hc3Rlci9jYW52YXMtc3RhZ2UuaHRtbD9wYXRoVHlwZT1saW5lUGF0aCZsaW5lSm9p
bj1yb3VuZCZsaW5lQ2FwPXJvdW5kIiwKICAgICAgICAgICAgIG5hbWU6ICJDYW52YXMgbGluZSBw
YXRoLCByb3VuZCBqb2luIgogICAgICAgICB9LApkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0
cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9sZWF2ZXMuaHRtbCBiL1BlcmZvcm1hbmNlVGVzdHMv
QW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvbGVhdmVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGJhODQ2N2Zi
ZTc0YTRmYzA5ZThlYTU2ZWVhZTFkOTQ2ZTA0NDc5MQotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZv
cm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvbGVhdmVzLmh0bWwKQEAgLTAsMCAr
MSwyNSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDxtZXRhIGNoYXJz
ZXQ9InV0Zi04Ij4KKyAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBo
cmVmPSJyZXNvdXJjZXMvc3RhZ2UuY3NzIj4KKyAgICA8c3R5bGU+CisgICAgICAgICNzdGFnZSB7
CisgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjMyODJCOworICAgICAgICB9CisgICAg
ICAgICNzdGFnZSBpbWcgeworICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAg
ICB9CisgICAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxkaXYgaWQ9InN0YWdlIj48
L2Rpdj4KKyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL3N0cmluZ3MuanMiPjwvc2Ny
aXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvZXh0ZW5zaW9ucy5qcyI+PC9z
Y3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9zdGF0aXN0aWNzLmpzIj48
L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL21hdGguanMiPjwvc2NyaXB0
PgorICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvbWFpbi5qcyI+PC9zY3JpcHQ+CisgICAg
PHNjcmlwdCBzcmM9InJlc291cmNlcy9wYXJ0aWNsZXMuanMiPjwvc2NyaXB0PgorICAgIDxzY3Jp
cHQgc3JjPSJyZXNvdXJjZXMvbGVhdmVzLmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVz
b3VyY2VzL2NvbXBhc3MxMDAucG5nIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3Rz
L21hc3Rlci9yZXNvdXJjZXMvY29tcGFzczEwMC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTUxM2NlMTFlMzM3
ZDZmMWViZDBhYWIyNTZkNWZmMjUxMjJkOWMzNgpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMzA0
OAp6Y21WPEUzbTVjPlApPGg7M0t8TGswMDBlMU5KTFRxMDAza0YwMDNrTjFeQHM2YU4/Q3owMDAw
MWI1Y2hfMEl0cCkKej0+UHg9cURlJFNSQ3dDJFU0NHVkKWZJbk9Lb0UtJmJnN0M7RmIye3pQKVhI
bCk1THlLPj5uZnotQjQ+PCs5cE8qCnp7P0wqZEhQV1VaYlYxWDdae04oQD9lZG5UdDwrZU9acEVy
YDZTQn1JbTUqJn1MZWZIYFFFQyh2a3FFWXtZcSRHKQp6ZW1oNFE/JVg/YlhYZWgjZVlAYF9DO1Jy
am5TMVp0R3h3ZnplJj9LZk9DYCVvVXRpejZhQG9EOVQmfUlGUkdmfl4KelBJckxsJnFSbWxgPElB
TGM2S19XQWJpR21fPkhkX3omKkdaYiljP050SGRqZzw2S147YmwqO2MrM3lYbSg9YldRCnp1enN8
R3dwdEBEREt0MXNEaXdEVjRifkNVNEE1WkU1d3dqeU9sYzsjdH48WHtzamE2JElnbUZLTGcpYmNn
dVlEfgp6TXBVY3loNGZaZD5FVEJielJ+MDV2VTNiP0hxa0lHS1NUNik3bD1PKGQlc093R29GdyFC
al9YZ0kqQSQ0ZGtzQmcKem9kdk0mO0djcUVDWlc4TXs8Y0BFemdXST09ZyElPlpRQCRvZ0x9RC0w
azJNTiN6MFoxcXdrWjM1ITwkSGAhR0ZKCnpuUF5PZDBifSVMNTdNJStmaitOakcjY2xiP2hvb2ot
Q2k1Y3Bua3ZIR009VFduYkZuZHVFby0hQHhhZUBjR204eAp6Uk8kPXpTMTlUVyg2LWx5JGJQPHhY
S0ZAKWVLam8peUVXZHI5aS1oWHZxOy1waENXNWw4aDFDSXVfPjVBb24wTlYKelBENiVsd1J2NGUt
X1hZfWRCXmY/d1k3fXM/ZF9kR1ImaSY8bj5FblkpcTdSKkVWO2NgZEJ9a0puZWZiYmNGUFJBCnpg
VH19bV9OKDZ9PVk/eylkc1ZaX0xpOFFhNUhlZiM3YXsqdG9uNVR6dFk8VTBvNDBTQEtDOVdhTUxZ
d1pNUD1MWQp6T1NpYVNYNEYxVFF+SjF+Z0N9U0B1Ymd9XmtGeWZicmRYMVhWQHdKWC1yYiszai02
SWE8R3FzXnhXbHYyTyE9ZVkKek1MZG5NJCRlKDFuYz89Nmg1VnQoNGd1fWl2dThTPFJtR0l0Vyh3
OXheKWxzZG9AeVd8bz57JG9XaF8lWFo3THxoCnpTJE4tRm54WH5JRSkoX2B0SVZgNz0tTWpQYn1C
USYmbEh0UG9RYShSYTd8JHRiKEM3PWVHUk5iV2pxPihMc1NDWAp6aEpoZGljUFd0LVRBZlBKOC1y
TkBxQTlTY3l8IXBtI0Vrb2k/eV5Wd2Fgd3V3RkMmMVk0N0cofVdSc21pJS1CeWYKelhxVE5MR2Fs
WEREWnc+JnR4VGhgJHBSLXZUdCtsYkcpZ3FyRXtpXj5jX3NGemMlSHRYYklDU2FnUDNxZjw3fjBZ
CnpjX2d6QEZzNnctazIwK2FkYk1wcEF1LWA7QTQ0OXFzYyMtMkRZZV9tdWAxJCNndDFebmMwdVVH
ZkQ0SjxeKWNpJAp6KE0tRSROJXR6NXc9fFo2ai14fXcrM2BFdV5uTSFySEh+MWc0cT11I3hpSDM+
diFsTEg7PF9CUShiR3FSfEE+U2sKei1NMDE5XkU/S31SNGVYX2dWO295VzI9U0NtYC0jYCFqTTtx
cnI5QDNDVmNlYkVVODhyZiVDPFAhcjFGd2VobTMrCnpMdFNwTHQtbEpuSlE1blYlQ1daTT8wQ2RS
Kz12RmZEfSo3TkdIJn1rcVMjaDlMWDNocVM4YVhSNEZgaWEqYl9HOwp6NDlkfEVoV3RJRkhzPSM8
QW8/fVkjcW97Qj9xI3c3WmBIKzFXRCRqeUY8fnl6Kk5HbClNMz4rNXdYK1NoYHc2MGMKenFJWmFQ
ckt3WEVBdF9DVEsjb0xeZCRvSGtWTUg2eld9LThWX35qKGdQbHpzeCsyJDt3WnhTOCEpendGbzNR
KXpFCnoxe3ZhUmw1eV5jRDltayRIS0dDZDQkKWhVXnlONndaNXIoQENWR2UmWDxST0c0Qk1FUEch
I0g1QzVHVCYhSGw/bwp6bW1MJTM5ZSVxJTc5eWw/QzM9JFJmNU5AXnxHUT9iY1Z8IT4/e207fEZR
K2Rje1dsY0lqN3g7MnE5R1ppWE5pN0QKencydFZETTdJIXFnfT5YKT08aE0yMlRAOyRrcDRjPWk7
OHZ0JWQ5YnYxbEtsNTxqQyFRKD5+emtzI2JmaER+SzdoCnppU3tXNT1zIWUxQzBkfFMmcFp7Yk1j
LWRmXmg9Jk9zc2RjPm1XKXV+NmB8ZiZgc2IpeyFKQW5tJVY7dj5GfnREPQp6MGx0cUVfMEhuaUdf
MH0yVlAtQVEodkFfbXUqZVJjX3p9Nj12TUJYfW42WHdkSyUwfWtBU3xSR0NWRXAtLXUjbmoKelE0
eFVTTD5AZzc+VnBFa3d5X2BeO3w8OUdKKFNScnt4YlZZIyR5UDckZ05CQmN3UjUoRjx8JUlnZGYm
UFc9TU1oCno0N3BELUt1XlYpOExTTjQ4elE4YCR9PmNCYSlqakRCQDx6dEc/b2FOdDJyfWNDZWlC
PlJyTn5FYCk/cm5tRWYkMwp6UXZsPVZuc25vMzJUTmt5I0krMkxgOGNWXmg4WGZDJHNsZGY1WXBj
d2BiJGIxPD40YVdkVz4tfTIhZG9jZWZnfkQKemdmQyNaPlhRdUEpZSRQfnpMYm9CWjI0WjEjOytK
ZTAkIUI3b3BhOGFJKWAmJDBFRiglM3tnQlU4TFlwQitgQUJICnpaYzFqbjJqRWV0X1g/SUgoQzl2
eSRFPzl2M3AzPFVOISlQPDVQVXtWSUc8PTBRN19TSjVkKmVHUU82UlpmMkN4YAp6K3B6M35kWTRN
LWcpUCM8RDhQKHRYMmBramp0Tl9ZX25ZIV9Yfj9pRDMpfHdpRl9HSCEzSkNtLWwqfkFSZFczcCEK
emxtTGxoMGwydz9nRFUyam48NEl5ej50JEEoZk4pfFR2OVJ0ayVWe2heZEMoKWFJMXduS2hKTT1u
Z1VoJFQ4VDM4Cno/KnVeUTZHWSF1VlByOTgkU3lKUEFxJDNGIWt2OTAweE1GTHk1SHdPcFRDLWR2
RzE0WGgoMDF3bUgoVGRGNyMhUAp6VSVKYlRHYkgwQllZdEVJLSlRPFl3Z35zJURTXll8bUxYWnBG
Q2dfOGIpNGE0X2lKJC1VOXAhZWlCS1FUTlR8PFgKejBvbFU+USFNdWkqS2FpNzJpWH5kYDJJWk5V
TUw9MCotdnRRTW5aaSFBaysmfGQjQUIjeHJPTDN5bkAxU1JSaGQkCnohZUFHTExIUnRaO3kzNGti
X2NnS0IoPk11eXxZLXVQPyR4SnJld3F6KEV9MGZUcUMpIXVWfSoleXMhY35AeVZOSwp6UVpORTRh
ZmM1NiNXUzxlbXwhSnpWaE9tSTFgN0VyVl9MSGArZ2M8NkF6I2xzWUYtSTA3N2YyQWdoSms5JipH
O04KektzSFpIPmJvIVI2K3NFVjd3TW8lMEVJeUZgQjc1K1UhaHJAQz9YWTM+N1hqZ2gwQjJreD1f
ZXxqelhON3VyMTd0CnpPXlVoO05yT3xtYVFWa3ZnQiYhV2thc3pUX1dHMTx3UTs8YXRRMyswN2FI
V2k0QyQ5bHBBe0soQ0pHOTlnPTRBTwp6TFI4fjZqZHRlcUB9Xj9eSmAtYGozR0kqWUZyZDV3PHN6
VnZLUVhoV2hpR0U9YjMpRUkyZz8wYD1vPl58QW8/NkgKellZITBaV3FVK2I0eHxNSikwRF9TeHRe
WSRFM3l0SFJYYHlsPkA4ZCNhXkpOP0g0Yyg5UTRwU2JMQlhFRkBLOTJqCno4RS0xc254UE8hNz9o
VmRJJUo7NHtxMDBBOChfcCtldSQ+SCpgWDBeP09rWC05WUYkeEFtKDs7VCFuIUh1WWE3LQp6TDNN
YFJ2VFk+YGlncjRKPjRZNjA2YW9pT0hfPUI4Vk9fVH1vVWZhKFc2Z0ZPeWJ8ZHA/Q2B9I1FyY0pt
Qmk4OXwKemxsfXZ0amVtcU48N21tazUtWCpSclQ9PSNFWkxEQHVvaCg8d0wkZyZFUUJGbEhabWwz
KHIxJlVNYyl8MGtrOG9HCnotJFpIQSUqQUhlSUE5dnZCd3soR3ZTb0BEPF9SX3FLJmpQZ1Myb2Vz
OGE9VyZVRUJKWllISk9pQzNSYkpNant4cAp6UW9AaW1fUldxSW82bSUtY1EkVSVHP1A9JHtEOTx6
Yl9zRj0rY1dWalhfZ0psezMmb3grMC17PDg8P1JxKEg0TEgKekdgS3F+USorSTJAI2hKbnJxfjI/
RjJuaWJWc3Y3JE14ZnpNRm50MjQ4TWNXPFh5LW0jYGpnbzx2MX18aCEkISg/Cno2JW5XKUQ7Tntt
KiZAYV5RcyFBPWAmUSRaQmdleE02KnQ/aCMoaXNJWEtPUzVfKEQ5QiZHPURUJDVsaSFCajRqSAp6
eWpqdlomXyVfSit6KWl8UylNcDFAM3EkUV59JGwhUVBgMTNYUE1HRTZiI1IzI2kzd2x3RiZqSGN+
SlhXJEwxQlgKemNEND9kd0J9JCpMOGkyaFViVyVxKXBORDQqNVNsZmJ6MH42Wmsoe3RZe3okXyZy
TnJIdytPU2U0IUYwaDA3UjNhCnojRz07PmBed3cybHt4eD9QI3V9S1I3N28hMGZxVGFkM1VZTSR0
OD1CTTJLWSg+b0QzeCtwPnM0blI2KyVLY25kNAp6Y149KHpeanFpNjhicFI4VHAhIWlXfDFfNkkj
RDs7S3dKOSNhPzZRNWVZVVI0OUwrS3NIMzByaEU8fGoyYEZMKFMKekdGUmlJWX54eGwrdHFGN0l0
SUt0d2M4Jj5wS1g/UjF7aE9jJGlhOWNGJFBBa1o2PW4lIShKQDFKQV9TS3lwM0VZCnpKfEZhY2JC
P0tPMWBRZlBBR1BEQUNQUDY4Q0V7OVQwcDNMc2BocUAxaElkWig7eUFyYWtzfWVAYHkmQDc5NntV
NAp6bHpeI1QwTmk7d2szZG9iKn0oPH5iLU1qJVY9QER2bkhBKTJCY1VGPDlDKkc1MnpsKEo+SztO
V0c0SjteJF4hVkwKcXg4Mm1sWkA2WHZfdXlYQ0BqKUtBI3BWQShpPVNSbyU2azMpMDAwMDxNTlVN
bkxTVFludUdNd2AKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1BlcmZvcm1h
bmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL2NvbnNvbGUxMDAucG5n
IGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvY29u
c29sZTEwMC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODFmOWMxNjQxZDhmNDBiZmEwMGVhYTg3NzA2NWFkYzEy
YzhkMzhiNQpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgOTQ0CnpjbVY7aDE1ZjtrUCk8aDszS3xM
azAwMGUxTkpMVHEwMDNrRjAwM2tOMV5AczZhTj9DejAwMDAxYjVjaF8wSXRwKQp6PT5QeCZZRHEq
dlJDd0Mkb2xqflRGJSpZcTZLSFJjbTBQOyNxRU9sIWJkezZqMjA0V3ROKDBfX2x7NTRWU3IrMGsK
ekIrTGNVTFpKbkJUXnVAbihzK143bDFDR2RyY2F2aCE2T15iMXBodnlfZVppKzZqJW9LPkZlYGlk
T2F5RlJ4ZmRmCno4KlBrNihkPVhTcUxgTHYjZExYOSUkQzM4QUoldylUZGhQaHFuKis0VV59bWxp
YG4lO1VjTiEjZ01ETVFHQDNyaQp6V34mcFN5R0Y+cVR7SmI/YzdzdSMzZTlgT2kjMyZyd25wUk5r
cFlaPnB0T3c/R3J0OCpRX0NPWG1BdiM4Y2V2NVUKelk3e1ZpP1RzbC0wUVk0S2Y4XzdIeFZVKm0t
WENhMkUyQ01Yb299UXBfTjJESFktOyhmSTQ/aC1AS2R1QChhdmItCnolZjZmYHY4XiphQkxmKXlL
PUY8ZyhTOD8qRFBXdWc9Y3c2fTg3PHYyKDNLOzhjcSh2V00mQntUVUN9I3dRfEBkRQp6PnZAIVR2
YWQoSUZWaFRqMUYyQjNjT2FEfkcpeHswQ0VLQk5yRFY0Iyp0Nkw+I1Q2UWEwWUN0UDBSJGl6S21k
WkoKejQ1WTU+eDhqJUxNKiNXSEsoO1ZgKXtUOVIxeDRRYldndmZARVJjVS0pRz92ZCFgYl5KZnB9
bTxnOTRDdGZpN0ZWCnpTZyVrMyhre0BeUmBmeGowN014U2ZHQzNeJiVZVlNwWEVAODNfNSpMaFg1
dGIpKEtEKV9PZUN+TVBxWXUpS0lpYAp6ZHEpZEpiTmhYaVBfKGF5ajFFYykzc2o/bWxGRXdWWHJR
RkRnZ1hpLXNqYURKNDwqRy00cH5EPGI9T0lAUCpVQ28KemxxSG5aX2huQFZDNU1mMlN3WUVWPVZB
O2ZeNFVBXy15UXVPS3E1aHImd1VAPW4hMDh2MDA5Vjc3QztFPHFgam9RCnp6QFQrUD54QVlhSyhk
RkNBYGxqKzZhaXJnUn1tMDRJantgfkFmdHomOVNCPVYqPSE5RVU/Pk58NHxlIVQ4JGZgZQp6OTAp
S0owcFp7UE1MOy1PTGxGPVRwVjA/fDxDJkJKO1EldipGQHopajZsUGYqZn5sfCQ7aDVNfCk8WGFT
NVApQysKejBTRT5WZk03IWI7bzd8NkVhPSlpRXx3ZTtOV2pJQ2J8YFc2WUlGO31kYkpfUDw7MmxQ
TjAtWnF4eFBFRGItdW92CnozLTA1Pj16UElfbGFlaHc1N2s/YGI3RCY4bUApVHszfG0/KF9LPldP
aDIrfSVAV2JyT3E7RHB0IyZfTU93d2BTMgp6djVzcjJgVG9MWGJze2dsWit7dG5rUTxHUyk/dzlU
Yz95KStGaHR7U0NCRCFMbiFmT0VFfTkwOTN8Q0JQMHtzUmQKejVCODFLdk5kTGVtYCNhSW9neEt7
dWNGN0A2fVQ8OU1MVGI1K2xNdjF1Wml0WTs9NjlOKzM4SlROIW5qT1JvcEA8ClNuOFF2MDAwMDA8
TU5VTW5MU1RhVSh5QX4zCgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9QZXJm
b3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9jb250cmlidXRl
MTAwLnBuZyBiL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3Vy
Y2VzL2NvbnRyaWJ1dGUxMDAucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc5MGUzZGNmY2FkYWNkNTYzZjFlZjFj
MGE5YTJkYTU2NWY0MWQ0ZjYKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDM1OTkKemNtVitxNClG
MWJQKTxoOzNLfExrMDAwZTFOSkxUcTAwM2tGMDAza04xXkBzNmFOP0N6MDAwMDFiNWNoXzBJdHAp
Cno9PlB4PyR3QD4oUkN3QyRUQFIyfVJUVz9VQ3xJZTlxN0RMMXNEbVIwUUtDNm9HdilWbyo7SkEt
a2M9c1VrKX47Kgp6aHwocndxUXV0ekM/aHFJZksoJThlQmJXa19HYmkjbU9xMkF2Vlp2RkEyIUVh
NkohLSNqR31jJjtDMFM+WFl1WCoKeiZVeD9OYGApK1R4NFpBb29NSExpeVhXMHwmJTVgV15FPkM+
UzV7V3k8QHMjSWh9UGBYPnN6d1VvYVN0JXg7ZzlBCnpIUllWQTtxUUkkY1k5TVZeQWBNajlFdHZK
JDd9dlFQOTRfNHkydH4wbThIZTN3QU1TTFQ1Nm94RnJhSV4wbmNYSwp6QipfPHx2aig0bSZxX3l9
RFNOWTEkSE80cTQrR1lndjtaYHk0V0VyfDd8PXI0VXBNYEg3PnBgLVcxbEk0NVR4MEkKelpLPVl4
NFY+OWZUUkZOcG1zdClTQDNJPVNUO14xQiZOKVBIYmAkN2BoTmk0amtMM0xnenVgNSEyayo1TVA4
WVRqCnordUNtaChZKEkkRzhtKilwN1BheVZ+PT0+SXAte0hzbWFXMnQqZS1IQVVvcU0tRGwjeFNP
QERPNGAwYlVNK31+Uwp6Ky1vem16MjY5O3QkeTBzT31YLUFAQ0tpVjl0N3RFNDhUVTlNYXtKcEE5
ZFgmZ09oRiNAPGlVPUd2SGFlP1pRNF8KelU7NEppbHE7Vl8lUyUqO2NRQDZQRk1QSXMrQ3t6SE10
bWtkK2lPR2dqQ2w/RilifDhZYDxZOCZFI0RNOTghfkhLCnpZTmsjc20zQ3VXdXVZTSgyS3Q3NT49
VkxoJTJqK2VZQFBQazw/QHhLeWV8OXQ0JSElXkA0UC1qVXJTZU1IX3R6Iwp6QzZ7PzlWIz1mRUpo
c21tQkc2VjM4M15lVV84SSRMUVZxdi03PDVJV0VRcmlZdT1aQj1WTz5+PmVVTUZZcj9EOU4Kemsx
aExaWnlxTiNtVkFaPitCZVNgLXEpPX4+O3Z7aUBAO1NvYTRkQDIkbFkxekJoWikqVlI8P1hfSjJp
eF5RVyorCnoqZihMZWJse2oycih3QkBQaz1SWVJJczQ3Xms/Nz5gdiFnN0QpanYqaiFoOX1oOUM/
O1FyK3h+QV5qWiFheUtzLQp6aWhZJVkocllzWCpHWH1pZjtEIWFmdXpgSFk1NkwrUFZ1Wk1NdURU
RTFNfX5qV2RwUWUtI0tORVZedUtnM3ZGJTUKenY+bkw4Mm50MHFpM3tTVl95OGVtP3AycWlyUTRD
TG1ZbTFMO1Nmb0lyKCNnWU4+S0RrITdLPShAenw4SldndThuCnpSQE43YzRUcFV0MCFWVkdFam1W
TmY8VTtSIWE5I0ltVEB0aFMqJTZYND9YYUxjPVV8cldnU24hPW9sQVY4aT45fAp6bDBGS0tzYTUy
V3YjUVhwP2hpbT1aeHMpYTxiWVFnVFFrVypmUUV+al48QGFYWCEtPWtqRSRDPjFuNGwrZj5CN2QK
eil8UTlzUDZrPjUpQ2x4PHBtamlWZmQ8OTBYazIkSigxU28qZmNecFdDIWxXdzRVZnQ5Z0ZzN3dI
VVBhMF5jMnVpCnpBZ2ZlVkYzNSNydFgwe3xuXkhvVGUodFBZcXpeaUFBSkRybFUkejV7dyZhVGZ7
ZzEjR2crQUdtWndCYSkhMW9RSAp6bj1LczF2RH16eTwkWH5TbjxDQmZtNm5+Rz1TRypVSyFYa1ct
VXhJZWZeUiN9SVRrYlNVbER3ZDBiT3BjO0xCR3MKejdWR2xSTnxmSCY2PkdoRnVYRkRZZDR0dDUk
Ql80UG50WHExJFR6RldfYjxpKjtxYEo/WHhie353S0JUbkcwV05VCnpObXN3REcyblpGMHBEaX4r
eCYobS09akFBJnJkUFJnSEBgKzFoT2orN18tY3FmKEZrdzdgVUI9JWF2fDlZUVQ0ZAp6WWdVWVBB
QzR1TDtMUiZAKyFEWks2dm5WckRoKWM5SFE7LXgwcEk1ZytrOHh1QEJlXj9UMHYxdmg5dFdjZzcj
PGgKejZiUGhQI3RfSHtmSTJsaGMmOCFuUiF6UTM0ZiswRmxXKDBoSHQ0MFQ9QmI3SXgjZy0mUnB4
UHtVQ3s4YVlJSlN+CnomPTVudUgtKHRlLVF9TV49TnQwOTBfZzFzekckZFN1cEpYR21wRVUheDg8
UmVqTmBIfjVqZmcpelpXdWkrZWA7Nwp6ejtfblZ6WGlUK0s7dGQ+LVQ/SFAhMXJ+YVBiR2tIWk9s
VktnNk8lb3IhUVkxaXhQX3d4YkNlPz1WfXgxKUd1VEIKej9nY3RDQ2Z7Pl80bHxiM2M/cDR6aX1I
O3BYTGVBMzxWQ3NtKUtwR1JLb0Fwd2M5Um4xTihheSkzJTtYKHtzejx+CnpASX5GVisqSStCQEFO
bmd6Ty1EYG5tVXwkMCloUTBxMHZ7Y2s2JSZyTWB6czRHU0tMMDI5RHVzcGZmYzIhYlRxVgp6cGVF
bDxoKVplbTlZWmdWUEkoP15vYy05cXJYZUs/aUBTcnBpQDB+MiVUa1hpalBDJVFHXz5vdE1DbFdf
ZW1sXkEKejRmIUlqYnd2Yzw+dTkhYGxzQUVfR1paPCUoYzRGbDh8b1NUdkRpYCZYUUoyYitMeERy
dGB2Q1Izdnxrb1o+T1k7CnokdkFrJmxKOVgtKmU5U3o3VXdCO2tWUDR1YSooZkpHQllpTmFSQzhe
YVNNV2I8cEk5S2ZZdjYhN3htY3UwTis3Qwp6S1hqOFJLUVJTSmFnNmlFOWMwMWc2NS1CT0x0JEor
QGR5c0NqdyorbC13P19EOHFrSTByYFlnKVRRRFk7azwrP1AKelB9KkdAdnd9bH1wRnBFUEo4JVZL
JTt2Yk1ZWihVU098fkFCS3NhSWkzVFYyPHp+UjgkMjZSTjJFcU8+USg4cUxPCno2UUZCX3dzQ3gw
JHVXJEFQdT9ZU3lPRnVKVHpBWkhqTVhGdlBqfHh+SkpjWSYjZDM4fWN7NlhQLXx5MSMpQnskfAp6
X0p9dzBUZVFeTnBiSVJMUHd+ZnlkbWtxS2NiP2BGYnFRTDl2e1ZLNCtEYnpgcTkmMi1ERHpJdj1f
ISE/RiRBJmAKeiFOMClvS2hvJmpmeCFKa0N7JWlxUVRFcDtpZGQoZDlqSjJgdm1Cd2FwUWlYdElf
MlltSXUoSD4pS25uKmxfaEltCno4RlMqIUUoP0ppMElGNlVHNUcmKUcmKi1lI2oqJmk+SkZwK0wz
UEIpdGt4LTREZksxPGY/TH5FMnB6Ky1udFZUfQp6KVZyOGA5d1VMTTtTU0ZpITg0ezVESyVJS1dR
eT9uQ2ZuRW9EZkFmdi17cVFvRTEwQHgwZXo3Skd+dV9lWCEyZGkKeilFJGh2JWBuIzkoOT5KYnlq
N09KN3UlXiU1V3tOST9CTWw9ZUNzcyUmTkprQFJGaUthKzNmeklJWHgyfTNNTFItCnp6NmB1LSh8
Q3czIzhJZXQkb2hmX0IjOSp9ZnIjTmMhLSUxLSROc0QjJUFneGlMeDFJY3V+QT1QJCFiP24kRUpo
Pwp6ViZZeERxbD0oWWU4cj9wKCZUJWFBPllyKG8rMTkoVU9rbjE1QHhSZVY7PlUrZXEpP2VBVk9N
USFCZ2hTJm91ZXcKejRFZz53eyp1KSpPNiFAdWN6UzFDJEJebVY3bGNrYzhqPn0jTnJVZlhEUWtz
SCYqUkxzZ0hicFdUdDhPOzchTVE3Cnphek9DZE41JXxQOWEyYE9yeFNycm08flFFNEJYWHBlSFV7
TG94eEVOZTE5KFJvazc9c0Rfczl7MW1DJHJ5KE0pMAp6WnNCXkI/SEd5Qk5mT3s5PDNEZ3xvKk0l
OSsjeiZ1UTMmNmBMYWg3Y1psNDFGe2pmQU1CaWheYEVVek8yR2wrfWQKekhgPFBxMnJlY0N6WHYr
RUtwMiNwNm97bXF4bzM5Pi07QlVfZnBYc2xBPTdaVXo8MEN8TyM4S1ItJFRPbEZTaSpkCno1cT9p
SEtvem5hd0tEZzhUP2cpbmZNR2dTJGVVbzdOVnA+Y2hCPks1ODdVRSklYnhpYHE1LU5UTCUwTkFZ
bmd+LQp6aUUoIVNqfEk0Y1RRY3F3K1I/JlVPVHhXLXhRck8jLXA4MUdVcmFRRm5gRHhNNVBAciM2
NSN8aV8hVHVoMj53NCkKelNtUTRnX30oR0ZfYWxgMXRgPVVQPnE0Pzx4Tj5iYE5lKXNQNVQ+ZUYy
IXpgdkBRc2xCTSsmQ3U2eS1pe280X0w+CnplMX1seHFGVFBCK18hfGVYTTAyK3BOaE5mQXU8Z3Bp
OXxXZDkjPGlhUXlRbDFsVG0xQCVrT0I0R0chbSsodjM5Rwp6PSZBXzVeUTBofmYmS19qbC1yWk48
JndDbXEoVXJWciQjKnZAfiNQN3xCI0B9aGVxKF85TUp2QkVhTExVI3pnUVAKeiR5akFMJVpDe1ZC
c2BVcmJLXn51dHgqez5veDRZKS1vP3ohPklodCkmRzd4NTJIKEw8R1FfRUZKd2dlMFlIOE4mCno+
byV0RGpYSEk7bEM0UlAjTStKXnF5VVpBdGpsR1ZqSDdFU219fUVEYEwxVF8tYV4tXm19fmNIQD9G
VCh5O30+dgp6KCVwXl9YVHVIIXtNQzUlM2tKZ0VlMVh8P1pMamlzbW9EQHpFVGgkUT9RIVBYMVdt
ciZHTzg2diglIUpjI2R2a00KenZ7QVpFcSg1UWt6cFM4KWsmYDw5Z3VyKGdxYklofXdPOFojNk84
fXpYMCYmMXUlKFJ6UXBJZkRVMjhkb3J4PG9uCnpoMUteX011IXpsQTdWMSYzPnoyTWJRTWhJQCFg
dGNhTVAjbHdySTQ5N3w0NSZWRiNCb0BXc1BTaEtsS35zNV4hMQp6I2tnXyhOZXF1S2leOHprN0VN
dyNKfik4TTlSSDwtUStiVUxEaC15KzdKU2NUUWM2fDY5aj9YWkFxRjVfRXN2fGsKeiEyekNHX0Mp
eUBsY09+UjEoJmhKIWR7SUNuPVl7QXlEQF9BQmJJIVpOcSZ3SkpHVmJ0Z0IrSnR4X34zNGZQU0Il
CnpmZXAwdzU0RyRkYFo3KEZAQjBBSWNTKlY5ZldDLWB0MG12THE9ZVRLakQ4UjBjS3c7KTk+PGF8
SS1mNjR6VlI8ZQp6bWshYmE2MTVNWDMwZCNiPEMkeSVRQXIlbjxVNU0jMGNMU2FWaDVPRU5zc3U4
VWxLanlrRVVDQzImUUY4ezFENmwKeiMrNG91WXgqSj0+WD14TWQzdW50bmRKcHohaEtzTHY0ZlFU
UyZ8KyNabV47aF9OZWpHWW9oUTR3KThPbWEzeC1sCnohfXpfMnJKdCphZFNRRl9hfV4kfWw3NyVk
NmheT3EoNTFXM0N5IW9GbSNAPH1SZHZ4bWRETENma0FqZ2tSU0Yqawp6ZHZCVkNlbH5Bd2Bxe2k5
bD1RPXJDRz1zKnBpVzZZeTs+cmxVaFFGaHI1YDgwc0g3VUxeWjlRNCFhYHNCZF5maGEKeiZ3YWpJ
Zzt+LU0rP1UhRTJNfj16aVBma1hvLTEjQWx6Q3drX1NBYGZzIW8yaVI3R3RRMH02WTI/VlpJMXh3
czVUCnpPdENEK0lfJX16ZGctMHs4SEhTTURSdy1nKmFmM3dlbUZTZHQ/UTA4THVOUnA+KkYhQ2Fa
ZzVOOVhqQk55enY9Kwp6N1A/LSR1bipSZXpTM1Fub21GQSRHQlhnSm42WktUQG88d1E/cCF0NXZX
QHAqOWp1RXl7T2t7PlF9X0E0ekpvVEcKenUpZDMzeWlZM20kI2BBKmczMHIzNCQ8TFh5WnJNKUBE
TFpMcDNWOzBoMWRMaGMlTU9veTBER2Zjfmt3TlB9KnUwCnptKjhEUSFuUmFKcmchI3gjSSZhVE80
Xl4mUnM8b207al9ncDBSejF0YU9kckwxU0I8b2NXYHwyY21pKkhNdytOJAp6UUU9fXpabTdwbzRs
d3BXWF8tNmw8UShzNERMNy13JnBpZlghVC1DUlBCX30oODNhJVY+bXJaU2BAbD1NezJ6dm0KVl8j
IXlGVnRmRHEwMDJvdlBESExrVjFqXz0yOFJGdQoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZm
IC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJj
ZXMvZGVidWdnZXIxMDAucG5nIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21h
c3Rlci9yZXNvdXJjZXMvZGVidWdnZXIxMDAucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUyNjUyMDk2ZGNkMWU3
MTI3ODNlMzE5OTIxZDU4ZDczMzkxZDMzNDAKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDI0NzMK
emNtVjthMzBDJXJQKTxoOzNLfExrMDAwZTFOSkxUcTAwM2tGMDAzelMxXkBzNiV6VEU1MDAwMDFi
NWNoXzBJdHApCno9PlB4O1ZAWDZvUkN3QyRvZD04LU1IR1A3LW1xWGRIY1R7QGgkWGdJMzkoQmdN
dmNabVkqLVBhcHdVRVFOen1PZQp6LSt5O18zV3xsSUYkemN8M1d8eVc2cyRBKi0rP0N9UVZhJUEz
YGh3QGw7OEpldWR7RmEmZG1TTU98bSgtYH5UaDkKemBEV2dHR3hPIz4lanohT0MyXl5wY2VHVi1a
P0dJQFRNbk5GS1JIfVdFU3ZwcCo/Y1NmP2hwOT8we0huMlQ7dCpRCnprSFk4c1NSPE55YlQ/akIj
YiYpKjA0IyVsbXk9IW1LbHVKa3RIQUhFPlk1TWlacSZHQzZ4Kz16dSk2QG55eU9zdwp6JVZHYihe
YFRXUG96dmFXVlAhXm5TSWNuK0w2MlVWSVNCdTIzT3cpWiU1Uyl1cmMqN2FiYX1TLWJrQnpkbmxB
fU4KeipISlVwOGFjT1RYNzdTK2dLWj1ZaFJ5JGs3dWdKQTwlLW56dDZSUG9HKVMkR15KenM8SXhz
Nj53RGVFP0tHLUpNCnpIclBoRkx1clQ2YFYjNCZJODclQ3QwO1AtWkcrRnhoTzZqVlRsezNHKTFn
QXRkRypeelNZb0lqOVFRdT57NWJnUgp6dWtwYjAqTSR5QzEqNlRGJFB2bnBGdyNONlZlUm0+NXFt
I31YRk95enhROFVGZHkkXzdfaTJGcHRkM312JjlhS0AKejtCK3daZ25+V0xXe1UkfUF8NGNuNEht
c1V5dGpTfXBZNUMzZHlIQVNDKjFGbWgrcjByNXRzQF9oa0xiLTtfVClGCnpyMz5JaSl+QU1vNEg2
RHdTdGp6RnRpeXRScTM2QzMrOXx8REdYelEpNEFFeExjS0otd1FiS1h+a088O3BqTWNEYwp6S1Bk
KFpuIU1xYi0zcUh2SXpjfWVYYHpVVDleVzMmOCNmOT9FeFFPU2tCPCh+VmF1KWhRWk1+ckIhei17
eit3TGUKelJEUHZVeWVmO3NwQTdDV3V4Zngtb09VcWNMTWdoKDF9YWZCZCt7P202byhIOClHSDJ+
MDMhOER7YjBtX1Z6WSQtCnpgZUxiNypMYjh9c31PdSg7N0FGWXokJTNpOVNTWGA+aUY/bUUpNW08
MH0wK28wfm8yR0BJfXhRcil6dnx0VnxlYgp6TUBwcSVURVp8RGlxPGdOPGdhXitJWTN+bVNvYEFl
Tm9JK3g5RzdAOStHSHxKaHd6YFIzRlRkTTlVV2cwdlVXQUIKejJWSDE2anB0XjErM1khQGs7WjVL
dE82ZXpGaUhtTHNuRSV1PFBPV0oxS2RHOHZteF9tbUNITHAkMGB4ZVRQWGduCnoqWFkxeTEhNz9p
X2FRMUJpMEV7elV4NGBQcnc8SG95XjJebzxhZyZOQklOP3tJXkp3VE9pdEhuYlFIPHVrcU9QYQp6
Un4zKk5lcj49Zz44JjF5QFREU0Zhfj1MeyZQSWZNQW0jR1Q8YVZ+aFVlWjlCeUh9SExJclojX3Nz
ck1eXkR0VD4KenM1WElae3RodVotamlUdnN7dkE5SXNoN2Y2Sll7aHN0JChkPGhFWCEpdTlUQXIj
Qn1PTSRCNihDeFhgI3Fob0VaCnolM0tRfD92M1FUWFlUUzdlSXdeSnFFZSRKYnFJQXBQJihMcmdZ
V1prMn16TjtPU294KnFPVyEhLXQqcmxsPjFaaQp6VlczLSN6WU5fZmRYRVZ9M2h0ZXhFMj9+UDEl
NmhsRTJBMW5QXldCbDhJb3UyZkBpdEV7Jj5iMUFmREo+TFdyJXQKemw3YTk+LS07Q1kjWU89Xkd1
T1d6aFJURDFDYXYhUThTcSg+SWFJWTZBPnRnMFVtZUN0KUV9aVkyeXlqYDxhdjtLCnpBazszWSE8
JUg5eVNFWF8+O3ZPfjtMISNAUGUrcz5HQTczQDNqSVpZeHloYjM0djV6dHs7Uik1YzlQbCFNVnNH
Ygp6Qm9LIzlDMSZpRyQ/NmReezJNfkQpMGozdV8kYjJDeDs/My0mPndFX2I+eGZrZHpGMnhLbz1r
PXN7UTk4T1FOQEYKek5CPUkyMGd+UTdYP3g9MSMxIypPVDApNiZBJWplVCpsZDtqI1o2cytAVClX
ZzA+PXdYMXJxMyFyZiE3SEg1TiMxCno8QyojYWFvRzM5MD5TeDRyYSllcWV+PyVYaUU/PWRCbUho
ViEoMVI+VH5aTW9xUDhuQyRhZHw5ZVFxb2ViYXpzPQp6d254Y0pebjVvSk5LTW1tPmh2bXhSUHFQ
JXFyb0VVNnJ2dkEkeWhjeWg3ZWdsbkZ+YU9lXlI3WkY9aUV8ej5KLVQKenUheygoQGsjeTxBSTBg
MkNXZFFfMT4mcypgYm13NnZVPGNpLXdHZnNHZV5rJVlVXlMxWDgqfHo1bSYxRW0qMVohCnpxe2Re
aURsa244KkI1O0BzSyl3dFAmbChNc1JDfmo2fVooKms7VDdNPmtAXnxhUStvPTRBbWo0ZUN5RlEz
U0V2Pwp6MT83dFdzY31Gc1ptX0BwKmRYdHlHeyg4MjAhRXEhMW1oMztjZ3tLVDhVbzJ2WEN2WVVB
Zyp7SU1BJSEwa0J+aG4Kem84I35MMD5fMzswKW96Z3E1QihoRClJYF5Hd097MkF8d1UtaSNZciNJ
U21ISipqNFMqc3tGdFg7cDI9Y240fSslCnojPyhRNjVqeFF3TlJ9UV40VEwoY1puTWRqbDQ1ZzQ9
I2hiRDBPNE57UWV1YzJBZWdNbnpkfDJaSnJMWjZwYVNraAp6JjhtPXQ5X2Q0I3ZCUEt3KWVNQU87
ZjNKUCU4Q2ZZIWhnQCEoWVJ1TzVEdz5YUjZ9VklgSjtTPz9hWm5MQkFnbkMKemttRUp7R3tyemY0
aH1XKHFmYE4qOylDSG5rcm9DMGtFakcmKWRtRTJNWEI2Ym5EUm80TFBoTXY1SnF7WEkjbUowCno9
SiUzQE9yaU8zSiVDX31BfkgtOTxhKCtXQWI5P1QzS1NzcTc8OUQ4c1Y3cXo0V0Q7ZFJSOVN9Vn1U
eD5UOXFLbgp6QmQtUk0yfUl9KTI7cnk3cUQ8SThaYDFOTTJhZ24pSyZXJHMlRVM1djYlb0llWnow
Xyh2KTxCXzF3XkVYQ0VnMT8KemFJYExAamg7aHtiUXdVci1PKldPS0JgKnhiaUlLVC1BZStfQStF
X1ozNzhCWnZ7enpUdG9DWU09bWZAe0h+K0liCnpLQWtyWj88fnlia2ZWSHFEO0d4QStxYClLIVBW
O0Vndj1VNGkzNmhAJF5kUEZjO1ZCaCN5cz5veE4+MiVoQSUzVgp6dUYoI04kUCtAREA0Nzw/Z01t
QTBtPW00O2B6QiFvPW1mOyFGOSZBJXEkWT5UcCt0ZEU7NVdDLWE3JSV5PVApI2QKelk5UXooVnpa
R1VYVVUlc3s8QGcmVGBNUzJWWURtQVVabnEkY1dxMFFfJDRiSzckPyRaUSRscCFxXyZCelIjNCk/
CnpYIXs7SkZGZmZhOX1YK1dkcUBRJFg1aiVOeE9KN0dZajl7U3BkXkxTd2pQOTsrQ3A7NzslVk5m
RTJuOUlVfmV6RAp6NTBZc29JP2tJJEgxe0EoVn0oJUMhZjBQdz1eTmUlWG8yeVgmfk90O2ZyIXh4
RTN7R0t4OFBuK0BPKHVQNnheT24KejMhfTY2U3tjRVZUcWdxQ2tEU3t4NkNtRXFkdmU1WlF5LUJk
QlE2dktuQGI3e3ppNmEhVllKS2NxdX4yKSM3WDI5Cno7Ym80Vl4mTkZnNmQpTGYjTmlKfCY9VmI+
Un1kfnZAbi1lfTYjZkpKKyZAMSgoaCo4aDdAZSh+Y1ZoLWgrYlRqPAp6cGFEUWVONSNMM2AhMD8t
djBJPCZvYTdFckBgbGs3Tj9JNzVefiFZLU1PZEVLWENpRCFgWmNmP0Q2KEwqXzNuJXYKeiFhUSZL
RiMrNGFkRjRjM28ldWVFN2U3bFBqOWZSa3opPX05eXlYcVgxTSNeMEpSZy0+Rnl4V0xVSmFTeUNq
bjZzCno9UV5UVlB+RHxWIU9iakA2aiYobS14OTRWSkIqN3wtXnp7JlJDRHBwaDQ9STNNUE87K1Fh
UFNTIVF7Wlctc0dAMQpuTDt3UmtHPXVZPHlmUmdIN2M8S0wjU05sI2hqaz8hMDAwMDBOa3ZYWHUw
bWpmR3I1PVkKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNl
VGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL2RvbS1wYXJ0aWNsZXMuanMg
Yi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9kb20t
cGFydGljbGVzLmpzCmluZGV4IGMxMjZlMTRhOWJkYmU3NzNiZjk3MzdkMGEyNTMxNDExMjdhMjYy
OTMuLmIwNGU0ZGQwOTY2NjUwNzhkMDQ2YWZhOTI4MjA3ZDQ5MWE4MTQwMmYgMTAwNjQ0Ci0tLSBh
L1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL2RvbS1w
YXJ0aWNsZXMuanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rl
ci9yZXNvdXJjZXMvZG9tLXBhcnRpY2xlcy5qcwpAQCAtMTIsNiArMTIsMTQgQEAgRE9NUGFydGlj
bGUgPSBVdGlsaXRpZXMuY3JlYXRlU3ViY2xhc3MoUGFydGljbGUsCiAgICAgcmVzZXQ6IGZ1bmN0
aW9uKCkKICAgICB7CiAgICAgICAgIFBhcnRpY2xlLnByb3RvdHlwZS5yZXNldC5jYWxsKHRoaXMp
OworCisgICAgICAgIHZhciBlbWl0TG9jYXRpb24gPSB0aGlzLnN0YWdlLmVtaXRMb2NhdGlvbltT
dGFnZS5yYW5kb21JbnQoMCwgdGhpcy5zdGFnZS5lbWl0TG9jYXRpb24ubGVuZ3RoIC0gMSldOwor
ICAgICAgICB0aGlzLnBvc2l0aW9uID0gbmV3IFBvaW50KGVtaXRMb2NhdGlvbi54LCBlbWl0TG9j
YXRpb24ueSk7CisKKyAgICAgICAgdmFyIGFuZ2xlID0gU3RhZ2UucmFuZG9tSW50KDAsIHRoaXMu
c3RhZ2UuZW1pdFN0ZXBzKSAvIHRoaXMuc3RhZ2UuZW1pdFN0ZXBzICogTWF0aC5QSSAqIDIgKyBT
dGFnZS5kYXRlQ291bnRlclZhbHVlKDEwMCkgKiB0aGlzLnN0YWdlLmVtaXNzaW9uU3BpbjsKKyAg
ICAgICAgdGhpcy52ZWxvY2l0eSA9IG5ldyBQb2ludChNYXRoLnNpbihhbmdsZSksIE1hdGguY29z
KGFuZ2xlKSkKKyAgICAgICAgICAgIC5tdWx0aXBseShTdGFnZS5yYW5kb20oLjUsIDIuNSkpOwor
CiAgICAgICAgIHRoaXMuZWxlbWVudC5zdHlsZS53aWR0aCA9IHRoaXMuc2l6ZS54ICsgInB4IjsK
ICAgICAgICAgdGhpcy5lbGVtZW50LnN0eWxlLmhlaWdodCA9IHRoaXMuc2l6ZS55ICsgInB4IjsK
ICAgICAgICAgdGhpcy5lbGVtZW50LnN0eWxlLmJhY2tncm91bmRDb2xvciA9IFN0YWdlLnJvdGF0
aW5nQ29sb3IoMjAwMCwgLjcsIC40NSk7CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0Fu
aW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9pbnNwZWN0b3IxMDAucG5nIGIvUGVyZm9y
bWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvaW5zcGVjdG9yMTAw
LnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yNmQxYTdkNTkyOTdiMTY4NjM3MWY1ODQ3MmJkOGI1MDJiOGI3NjQ0
CkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAxNDc3CnpjbVY7JDF2PmhQUCk8aDszS3xMazAwMGUx
TkpMVHEwMDNrRjAwM2tOMV5AczZhTj9DejAwMDAxYjVjaF8wSXRwKQp6PT5QeCllQFIzXlJDd0Mk
VUI3UD5NLSpOTkcpUWhEVE0wQkUoeFZfelBeQ3glbV51d0t2YEM9fHt7IVlPezc4QCQKemlPd3gm
Ml8hbTtBe0ExS3lSKElMUjlJOyhNRj9BaiN2KGYySClEdm9lUkg/Uj9kLWgwYCN4ITtEe2duKnls
LWRiCnp5KkY9V3ZhSDdGX3hsVGQ5ajd2YWdwZCN0TFA3YDxMUDdgPExQN2A8TFBDZipUMGZOaStC
dVVvSkorKD8/V09FPwp6PWRxTXQpQForOGMoQWRqdjJwdDA8e1M0UF9ne0dpJipCfDs3eDR2WGJX
ZXlQdVp6LUtRdlErT2VYVDZ+ek0qJUkKektWR1ErY2tqWUctTWdnQFZoQTMjazdiUntSWi1UT2VB
KWtuTlNLSV8meCkmSyZERHZ6aUc0aWlGMzh0PE9PJiUpCnpnb05ANGBLO19aODZlQmQ7PHdGajxt
PGRJJTZLO301ZktSYVNsJjZBQWxuUjAodWJ3ZEtURzN4IyF7OXs7eGYhVQp6bGRfeU95RW40dGBy
P0p3KUA2OzVwUHV9RSZIVkBlI1dVe052NTQ3bUdENmxWcFJDVmBheWtWR2M8PCt2P2t9U0oKej89
PWdsdS1TYGVAZWFKcCVeVTlCTVAlcVduV3F2Xk14KHR+S29Ld0dlPmJ5Y0A3cmo4MjtQbDRQfWdX
dV9NR2ZmCnpnTH1RTlchUUsreTVYSlkoKHBAX0pCRnkhKWppVEdkK09SIVljJCo2Tm5eR35lMVYo
ZHdFZFhlUS09KFlXd0AtYgp6VCReZiV5QmxZdjUhKncpeFZMV0RfX0tlK095fnIleFM+cEIzbHA+
TCtFeSN2PkhhWG51bFAmO2JKQT1xMyRqN1IKelZTV3FSU2ZpZT9KRVlzKzcwPnZuYFFSZENnc2o2
ekcyY2BDb1V0OVlSQHpyOzd3dmAyVmU0Pyk/d2tTKDFlMmFfCnpMSCNTXkBgZHQhJSE8UEFrbG5R
KkZ3dld8ekN4eGc4cSg7VGtLXj1MeEVfS3dnaClaI1pGJTYlJHFFY3A8QGJ5dgp6Z25hNUxmI0N9
fUZjYzA2amo+bF5SLUkoVTVOISY1ZTk2TnN0XlFaUipjMj8zPXlBJEtPU21FSDMlVz1la25+WW8K
ei1Pbmg9dl43WngrN3xMdHBwenVQbnQ+V1o3Y2FMMnJfVkdZcFBXYjRxdSl1aHA1aG1tbDFeXlB2
cmRBPmpPZUNQCnpWNXc3RT18Z2FDZzRrNTsyPVRHNk8/Qm41KCZiPmsyQT07aXpBJFFBVFM1U3xT
P3dqRnFlXzRiNEp9ck1ISENeewp6Q1EoamJQdVo7fG81aVE8RDM7WkRpJVV+UTItPmRDQzA4cWA5
UDhaNXZURmpFTitzMm9nViRvdTlWZ1R6d25Ta0EKelEtcjclbSpeXkxoOXB1andke31yMj88a0Ek
bz07NUtzTCt1bXx3d2FfMSZeMmdvSzgzPXF5c301OXhgfD1+ODR3CnpAcERwRWxybz0mNVNSQ3JQ
dzxZQ2ImcXNAJjV9UkA4c1h1UkBsXmxwT29Zblp7KX5LakMtKzxvancxUUFScD42bAp6X18oQjQ1
em9sTnBxYExfb2EtZV5GKCZqVTNMKHA2QVY8aXVxTm0zKEpvSzBPdHwlR2kjSzYjd3Rvc314eSU7
QDIKejg1YEZaJHZ8I21Vc1VKWEY+VSNnMXNnMX1MRlFuJl8tSmRmPTxeZWx4c3VKfnNQYU41Z0w+
TkVvTGNEbHRaeUdICnpCQChoP3l8RTtPZ3BkI3RMUEFLJEIhcndRUWdCPWF3aV9RVCp6SD5NYDNj
SD1pRzw5QG1LUW8xKUR2YDleIWFmLQp6Jj5rSF9PT0J5RyRjM1IzR29jZCg3bVdvTThHYmh3ZSYr
Jn11Pn5xRjtUOU9LcyQ5Ykw1I0pWKjlFUSViVDlRTDYKeldgI0B4M0p6RTl7RkpLR2ZTNCNaV2J7
YW9DPlFGTU9lTV8lK1klfW0mWTVoalAzOCVjdCteZFJgJCFYUk5BUG5BCnpIfCtmSHBDI1V+MThf
XjVoblgjSHpNRkU+cjxxTmswSmxYTytaT0c2MkBlaTFiOHJCX3Fjd35qdD5HPU0qKmJoQwp6PGNG
QyFkfWllMkhiY2lWbkw2N1M7Yms2UlcoKyp5Jm1lZFJyYXx6U1NjQmp9JTRUfkNqflh7T3ItVVlZ
OT4kOzAKemByPnNKI142KGtacjFpZjdjKnpfI3RGMFYkfEY7NzBtKlZNMT40X3I4dCttdCRUfkNO
d1J1THRpelNWTVNGZjYkCnp7NkFoIXljKiRoOyNGUXdKZ0xjaUBjTTJYZmBmQmNpZF42QTU2dDI5
LVBMaSQzK19uPkt8KTlmS3wpOWZLfCk5ZgpmS3wpQiNsbzlkKUtaM3lpWT15SV8wMDAwME5rdlhY
dTBtamZobDxscwoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFu
Y2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvbGF5b3V0MTAwLnBuZyBi
L1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL2xheW91
dDEwMC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNWIxZWMyODA2YjExNjVhZDQ5YWQ0MjhiNjk5ZTQ4MTBjMTY1
ZDVmMQpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgNDIzCnpjbWVBU0BOPyhvbEh5YHVWQnEhaWEw
dnBeREx8YVchM0hGaz9Kbn5LUWpFbng/b0pIciZkSXo0dkoqWEI5NzhIQAp6eX1pRUJpXldtcV97
VyFTMmZ1SFNAPWMzPilNZnA7QDRKWVM2bU1Ba2dIQF5KdVV7JlA5cDtTVVg+I095bE57el4KejVt
NWc5LVJJVyR8QSZ7S1glVFNCSUJsfSheczU4QVZ4eVA1Nj4jRHhePzY/IW5FSlpIdSh5JUhQe0hC
TmNnTGglCnpuZiU5aCpXTnEqclJ0TWV7ZlQmVVlzPWczS2l+RFcoVkU3Vm5ZND9gUnt3ZDt5IzR2
QiZ6RW1FZTlPU2QjS0l3PAp6O0x0IVc8SXtWRT42WHZDX3IzZjJFcEpudiFycmAoS2MrTjc0ViYr
MVImO0sqXlgpZjNPN2N9NStpc291PWlJO24KendNfExFZnJYXzVXLVN3d2l2dTMxWVlhPUdPYm1W
Qj5XQUljPVNgQzM7U2dYcGErc2hOX1N0RyNgcz1kWG5RciRNCmRUPUs3RmhARXtZUVJSYiMxMkUo
bkpZREA8KTtUM0swUlkmVmshQW5ACgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQg
YS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9sZWF2
ZXMuanMgYi9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNl
cy9sZWF2ZXMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWQzOWUzNDZiN2Q5Y2JlZmM2N2UxZjUwMTczZTM2ODU5
NmY3NjA5MQotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90
ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL2xlYXZlcy5qcwpAQCAtMCwwICsxLDE0MCBAQAorKGZ1bmN0
aW9uKCkgeworCitMZWFmID0gVXRpbGl0aWVzLmNyZWF0ZVN1YmNsYXNzKFBhcnRpY2xlLAorICAg
IGZ1bmN0aW9uKHN0YWdlKQorICAgIHsKKyAgICAgICAgdGhpcy5lbGVtZW50ID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgiaW1nIik7CisgICAgICAgIHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUo
InNyYyIsIHN0YWdlLmltYWdlc1tTdGFnZS5yYW5kb21JbnQoMCwgc3RhZ2UuaW1hZ2VzLmxlbmd0
aCAtIDEpXS5zcmMpOworICAgICAgICB2YXIgc2l6ZVN0cmluZyA9IHRoaXMuc2l6ZU1pbmltdW0g
KyAicHgiOworICAgICAgICB0aGlzLmVsZW1lbnQuc3R5bGUud2lkdGggPSBzaXplU3RyaW5nOwor
ICAgICAgICB0aGlzLmVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gc2l6ZVN0cmluZzsKKyAgICAgICAg
c3RhZ2UuZWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLmVsZW1lbnQpOworCisgICAgICAgIFBhcnRp
Y2xlLmNhbGwodGhpcywgc3RhZ2UpOworICAgIH0sIHsKKworICAgIHNpemVNaW5pbXVtOiAyNSwK
KyAgICBzaXplUmFuZ2U6IDAsCisKKyAgICByZXNldDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAg
ICAgUGFydGljbGUucHJvdG90eXBlLnJlc2V0LmNhbGwodGhpcyk7CisgICAgICAgIHRoaXMuX2xp
ZmUgPSBTdGFnZS5yYW5kb21JbnQoMjAsIDEwMCk7CisgICAgICAgIHRoaXMuX3Bvc2l0aW9uID0g
bmV3IFBvaW50KFN0YWdlLnJhbmRvbSgtdGhpcy5zaXplLndpZHRoLCB0aGlzLm1heFBvc2l0aW9u
LngpLCBTdGFnZS5yYW5kb20oLXRoaXMuc2l6ZS5oZWlnaHQsIHRoaXMubWF4UG9zaXRpb24ueSkp
OworICAgICAgICB0aGlzLl92ZWxvY2l0eSA9IG5ldyBQb2ludChTdGFnZS5yYW5kb20oLTYsIC0y
KSwgLjEgKiB0aGlzLnNpemUueSArIFN0YWdlLnJhbmRvbSgtMSwgMSkpOworICAgIH0sCisKKyAg
ICBhbmltYXRlOiBmdW5jdGlvbih0aW1lRGVsdGEpCisgICAgeworICAgICAgICB0aGlzLnJvdGF0
ZXIubmV4dCh0aW1lRGVsdGEpOworCisgICAgICAgIHRoaXMuX3Bvc2l0aW9uLnggKz0gdGhpcy5f
dmVsb2NpdHkueCArIDggKiB0aGlzLnN0YWdlLmZvY3VzWDsKKyAgICAgICAgdGhpcy5fcG9zaXRp
b24ueSArPSB0aGlzLl92ZWxvY2l0eS55OworCisgICAgICAgIHRoaXMuX2xpZmUtLTsKKyAgICAg
ICAgaWYgKCF0aGlzLl9saWZlIHx8IHRoaXMuX3Bvc2l0aW9uLnkgPiB0aGlzLnN0YWdlLnNpemUu
eSkKKyAgICAgICAgICAgIHRoaXMucmVzZXQoKTsKKworICAgICAgICBpZiAodGhpcy5fcG9zaXRp
b24ueCA8IC10aGlzLnNpemUud2lkdGggfHwgdGhpcy5fcG9zaXRpb24ueCA+IHRoaXMubWF4UG9z
aXRpb24ueCkKKyAgICAgICAgICAgIHRoaXMuX3Bvc2l0aW9uLnggPSAodGhpcy5fcG9zaXRpb24u
eCArIHRoaXMubWF4UG9zaXRpb24ueCkgJSB0aGlzLm1heFBvc2l0aW9uLng7CisgICAgICAgIHRo
aXMubW92ZSgpOworICAgIH0sCisKKyAgICBtb3ZlOiBmdW5jdGlvbigpCisgICAgeworICAgICAg
ICB0aGlzLmVsZW1lbnQuc3R5bGUudHJhbnNmb3JtID0gInRyYW5zbGF0ZSgiICsgTWF0aC5yb3Vu
ZCh0aGlzLl9wb3NpdGlvbi54KSArICJweCwgIiArIE1hdGgucm91bmQodGhpcy5fcG9zaXRpb24u
eSkgKyAicHgpIiArIHRoaXMucm90YXRlci5yb3RhdGVaKCk7CisgICAgfQorfSk7CisKK1V0aWxp
dGllcy5leHRlbmRPYmplY3QoUGFydGljbGVzU3RhZ2UucHJvdG90eXBlLCB7CisKKyAgICBpbWFn
ZVNyY3M6IFsKKyAgICAgICAgImNvbXBhc3MiLAorICAgICAgICAiY29uc29sZSIsCisgICAgICAg
ICJjb250cmlidXRlIiwKKyAgICAgICAgImRlYnVnZ2VyIiwKKyAgICAgICAgImluc3BlY3RvciIs
CisgICAgICAgICJsYXlvdXQiLAorICAgICAgICAicGVyZm9ybWFuY2UiLAorICAgICAgICAic2Ny
aXB0IiwKKyAgICAgICAgInNob3J0Y3V0cyIsCisgICAgICAgICJzdGFuZGFyZHMiLAorICAgICAg
ICAic3RvcmFnZSIsCisgICAgICAgICJzdHlsZXMiLAorICAgICAgICAidGltZWxpbmUiCisgICAg
XSwKKyAgICBpbWFnZXM6IFtdLAorCisgICAgaW5pdGlhbGl6ZTogZnVuY3Rpb24oYmVuY2htYXJr
KQorICAgIHsKKyAgICAgICAgU3RhZ2UucHJvdG90eXBlLmluaXRpYWxpemUuY2FsbCh0aGlzLCBi
ZW5jaG1hcmspOworCisgICAgICAgIHZhciBsYXN0UHJvbWlzZTsKKyAgICAgICAgdmFyIGltYWdl
cyA9IHRoaXMuaW1hZ2VzOworICAgICAgICB0aGlzLmltYWdlU3Jjcy5mb3JFYWNoKGZ1bmN0aW9u
KGltYWdlU3JjKSB7CisgICAgICAgICAgICB2YXIgcHJvbWlzZSA9IHRoaXMuX2xvYWRJbWFnZSgi
cmVzb3VyY2VzLyIgKyBpbWFnZVNyYyArICIxMDAucG5nIik7CisgICAgICAgICAgICBpZiAoIWxh
c3RQcm9taXNlKQorICAgICAgICAgICAgICAgIGxhc3RQcm9taXNlID0gcHJvbWlzZTsKKyAgICAg
ICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIGxhc3RQcm9taXNlID0gbGFzdFByb21pc2Uu
dGhlbihmdW5jdGlvbihpbWcpIHsKKyAgICAgICAgICAgICAgICAgICAgaW1hZ2VzLnB1c2goaW1n
KTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHByb21pc2U7CisgICAgICAgICAgICAgICAg
fSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0sIHRoaXMpOworCisgICAgICAgIGxhc3RQcm9t
aXNlLnRoZW4oZnVuY3Rpb24oaW1nKSB7CisgICAgICAgICAgICBpbWFnZXMucHVzaChpbWcpOwor
ICAgICAgICAgICAgYmVuY2htYXJrLnJlYWR5UHJvbWlzZS5yZXNvbHZlKCk7CisgICAgICAgIH0u
YmluZCh0aGlzKSk7CisgICAgfSwKKworICAgIF9sb2FkSW1hZ2U6IGZ1bmN0aW9uKHNyYykgewor
ICAgICAgICB2YXIgaW1nID0gbmV3IEltYWdlOworICAgICAgICB2YXIgcHJvbWlzZSA9IG5ldyBT
aW1wbGVQcm9taXNlOworCisgICAgICAgIGltZy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZnVu
Y3Rpb24gb25JbWFnZUxvYWQoZSkgeworICAgICAgICAgICAgaW1nLnJlbW92ZUV2ZW50TGlzdGVu
ZXIoJ2xvYWQnLCBvbkltYWdlTG9hZCk7CisgICAgICAgICAgICBwcm9taXNlLnJlc29sdmUoaW1n
KTsKKyAgICAgICAgfSk7CisKKyAgICAgICAgaW1nLnNyYyA9IHNyYzsKKyAgICAgICAgcmV0dXJu
IHByb21pc2U7CisgICAgfSwKKworICAgIGFuaW1hdGU6IGZ1bmN0aW9uKHRpbWVEZWx0YSkKKyAg
ICB7CisgICAgICAgIHRoaXMuZm9jdXNYID0gMC41ICsgMC41ICogTWF0aC5zaW4oU3RhZ2UuZGF0
ZUZyYWN0aW9uYWxWYWx1ZSgxMDAwMCkgKiBNYXRoLlBJICogMik7CisgICAgICAgIHRpbWVEZWx0
YSAvPSA0OworICAgICAgICB0aGlzLnBhcnRpY2xlcy5mb3JFYWNoKGZ1bmN0aW9uKHBhcnRpY2xl
KSB7CisgICAgICAgICAgICBwYXJ0aWNsZS5hbmltYXRlKHRpbWVEZWx0YSk7CisgICAgICAgIH0p
OworICAgIH0sCisKKyAgICBjcmVhdGVQYXJ0aWNsZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAg
ICAgcmV0dXJuIG5ldyBMZWFmKHRoaXMpOworICAgIH0sCisKKyAgICB3aWxsUmVtb3ZlUGFydGlj
bGU6IGZ1bmN0aW9uKHBhcnRpY2xlKQorICAgIHsKKyAgICAgICAgcGFydGljbGUuZWxlbWVudC5y
ZW1vdmUoKTsKKyAgICB9Cit9KTsKKworTGVhdmVzQmVuY2htYXJrID0gVXRpbGl0aWVzLmNyZWF0
ZVN1YmNsYXNzKEJlbmNobWFyaywKKyAgICBmdW5jdGlvbihvcHRpb25zKQorICAgIHsKKyAgICAg
ICAgQmVuY2htYXJrLmNhbGwodGhpcywgbmV3IFBhcnRpY2xlc1N0YWdlKCksIG9wdGlvbnMpOwor
ICAgIH0sIHsKKworICAgIHdhaXRVbnRpbFJlYWR5OiBmdW5jdGlvbigpIHsKKyAgICAgICAgdGhp
cy5yZWFkeVByb21pc2UgPSBuZXcgU2ltcGxlUHJvbWlzZTsKKyAgICAgICAgcmV0dXJuIHRoaXMu
cmVhZHlQcm9taXNlOworICAgIH0KKworfSk7CisKK3dpbmRvdy5iZW5jaG1hcmtDbGFzcyA9IExl
YXZlc0JlbmNobWFyazsKKworfSkoKTsKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQW5p
bW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3BhcnRpY2xlcy5qcyBiL1BlcmZvcm1hbmNl
VGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3BhcnRpY2xlcy5qcwppbmRl
eCAyZjQ5ZDgwMGYxZDFiMDY5OWQxZjIzYjFhZDExNWQ0NzNiNDc4YzZjLi40OTU1NmYzODJlYjBk
MzkzNjA4MDlmYzc2MWE0Mjk0NjdhNWVmODM2IDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3Rz
L0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9wYXJ0aWNsZXMuanMKKysrIGIvUGVy
Zm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvcGFydGljbGVz
LmpzCkBAIC04LDU5ICs4LDU1IEBAIGZ1bmN0aW9uIFBhcnRpY2xlKHN0YWdlKQogCiBQYXJ0aWNs
ZS5wcm90b3R5cGUgPQogeworICAgIHNpemVNaW5pbXVtOiA0MCwKKyAgICBzaXplUmFuZ2U6IDEw
LAorCiAgICAgcmVzZXQ6IGZ1bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIHZhciByYW5kU2l6ZSA9
IE1hdGgucG93KFBzZXVkby5yYW5kb20oKSwgNCkgKiAxMCArIDQwOworICAgICAgICB2YXIgcmFu
ZFNpemUgPSBNYXRoLnJvdW5kKE1hdGgucG93KFBzZXVkby5yYW5kb20oKSwgNCkgKiB0aGlzLnNp
emVSYW5nZSArIHRoaXMuc2l6ZU1pbmltdW0pOwogICAgICAgICB0aGlzLnNpemUgPSBuZXcgUG9p
bnQocmFuZFNpemUsIHJhbmRTaXplKTsKICAgICAgICAgdGhpcy5tYXhQb3NpdGlvbiA9IHRoaXMu
c3RhZ2Uuc2l6ZS5zdWJ0cmFjdCh0aGlzLnNpemUpOwotCi0gICAgICAgIHZhciBlbWl0TG9jYXRp
b24gPSB0aGlzLnN0YWdlLmVtaXRMb2NhdGlvbltTdGFnZS5yYW5kb21JbnQoMCwgdGhpcy5zdGFn
ZS5lbWl0TG9jYXRpb24ubGVuZ3RoIC0gMSldOwotICAgICAgICB0aGlzLnBvc2l0aW9uID0gbmV3
IFBvaW50KGVtaXRMb2NhdGlvbi54LCBlbWl0TG9jYXRpb24ueSk7Ci0KLSAgICAgICAgdmFyIGFu
Z2xlID0gU3RhZ2UucmFuZG9tSW50KDAsIHRoaXMuc3RhZ2UuZW1pdFN0ZXBzKSAvIHRoaXMuc3Rh
Z2UuZW1pdFN0ZXBzICogTWF0aC5QSSAqIDIgKyBTdGFnZS5kYXRlQ291bnRlclZhbHVlKDEwMCkg
KiB0aGlzLnN0YWdlLmVtaXNzaW9uU3BpbjsKLSAgICAgICAgdGhpcy5fdmVsb2NpdHkgPSBuZXcg
UG9pbnQoTWF0aC5zaW4oYW5nbGUpLCBNYXRoLmNvcyhhbmdsZSkpCi0gICAgICAgICAgICAubXVs
dGlwbHkoU3RhZ2UucmFuZG9tKC41LCAyLjUpKTsKICAgICB9LAogCiAgICAgYW5pbWF0ZTogZnVu
Y3Rpb24odGltZURlbHRhKQogICAgIHsKICAgICAgICAgdGhpcy5yb3RhdGVyLm5leHQodGltZURl
bHRhKTsKIAotICAgICAgICB0aGlzLnBvc2l0aW9uID0gdGhpcy5wb3NpdGlvbi5hZGQodGhpcy5f
dmVsb2NpdHkubXVsdGlwbHkodGltZURlbHRhKSk7Ci0gICAgICAgIHRoaXMuX3ZlbG9jaXR5Lnkg
Kz0gMC4wMzsKKyAgICAgICAgdGhpcy5wb3NpdGlvbiA9IHRoaXMucG9zaXRpb24uYWRkKHRoaXMu
dmVsb2NpdHkubXVsdGlwbHkodGltZURlbHRhKSk7CisgICAgICAgIHRoaXMudmVsb2NpdHkueSAr
PSAwLjAzOwogCiAgICAgICAgIC8vIElmIHBhcnRpY2xlIGlzIGdvaW5nIHRvIG1vdmUgb2ZmIHJp
Z2h0IHNpZGUKICAgICAgICAgaWYgKHRoaXMucG9zaXRpb24ueCA+IHRoaXMubWF4UG9zaXRpb24u
eCkgewotICAgICAgICAgICAgaWYgKHRoaXMuX3ZlbG9jaXR5LnggPiAwKQotICAgICAgICAgICAg
ICAgIHRoaXMuX3ZlbG9jaXR5LnggKj0gLTE7CisgICAgICAgICAgICBpZiAodGhpcy52ZWxvY2l0
eS54ID4gMCkKKyAgICAgICAgICAgICAgICB0aGlzLnZlbG9jaXR5LnggKj0gLTE7CiAgICAgICAg
ICAgICB0aGlzLnBvc2l0aW9uLnggPSB0aGlzLm1heFBvc2l0aW9uLng7CiAgICAgICAgIH0gZWxz
ZSBpZiAodGhpcy5wb3NpdGlvbi54IDwgMCkgewogICAgICAgICAgICAgLy8gSWYgcGFydGljbGUg
aXMgZ29pbmcgdG8gbW92ZSBvZmYgbGVmdCBzaWRlCi0gICAgICAgICAgICBpZiAodGhpcy5fdmVs
b2NpdHkueCA8IDApCi0gICAgICAgICAgICAgICAgdGhpcy5fdmVsb2NpdHkueCAqPSAtMTsKKyAg
ICAgICAgICAgIGlmICh0aGlzLnZlbG9jaXR5LnggPCAwKQorICAgICAgICAgICAgICAgIHRoaXMu
dmVsb2NpdHkueCAqPSAtMTsKICAgICAgICAgICAgIHRoaXMucG9zaXRpb24ueCA9IDA7CiAgICAg
ICAgIH0KIAogICAgICAgICAvLyBJZiBwYXJ0aWNsZSBpcyBnb2luZyB0byBtb3ZlIG9mZiBib3R0
b20gc2lkZQogICAgICAgICBpZiAodGhpcy5wb3NpdGlvbi55ID4gdGhpcy5tYXhQb3NpdGlvbi55
KSB7CiAgICAgICAgICAgICAvLyBBZGp1c3QgZGlyZWN0aW9uIGJ1dCBtYWludGFpbiBtYWduaXR1
ZGUKLSAgICAgICAgICAgIHZhciBtYWduaXR1ZGUgPSB0aGlzLl92ZWxvY2l0eS5sZW5ndGgoKTsK
LSAgICAgICAgICAgIHRoaXMuX3ZlbG9jaXR5LnggKj0gMS41ICsgLjAwNSAqIHRoaXMuc2l6ZS54
OwotICAgICAgICAgICAgdGhpcy5fdmVsb2NpdHkgPSB0aGlzLl92ZWxvY2l0eS5ub3JtYWxpemUo
KS5tdWx0aXBseShtYWduaXR1ZGUpOwotICAgICAgICAgICAgaWYgKE1hdGguYWJzKHRoaXMuX3Zl
bG9jaXR5LnkpIDwgMC43KQorICAgICAgICAgICAgdmFyIG1hZ25pdHVkZSA9IHRoaXMudmVsb2Np
dHkubGVuZ3RoKCk7CisgICAgICAgICAgICB0aGlzLnZlbG9jaXR5LnggKj0gMS41ICsgLjAwNSAq
IHRoaXMuc2l6ZS54OworICAgICAgICAgICAgdGhpcy52ZWxvY2l0eSA9IHRoaXMudmVsb2NpdHku
bm9ybWFsaXplKCkubXVsdGlwbHkobWFnbml0dWRlKTsKKyAgICAgICAgICAgIGlmIChNYXRoLmFi
cyh0aGlzLnZlbG9jaXR5LnkpIDwgMC43KQogICAgICAgICAgICAgICAgIHRoaXMucmVzZXQoKTsK
ICAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgIGlmICh0aGlzLl92ZWxvY2l0eS55
ID4gMCkKLSAgICAgICAgICAgICAgICAgICAgdGhpcy5fdmVsb2NpdHkueSAqPSAtMC45OTk7Cisg
ICAgICAgICAgICAgICAgaWYgKHRoaXMudmVsb2NpdHkueSA+IDApCisgICAgICAgICAgICAgICAg
ICAgIHRoaXMudmVsb2NpdHkueSAqPSAtMC45OTk7CiAgICAgICAgICAgICAgICAgdGhpcy5wb3Np
dGlvbi55ID0gdGhpcy5tYXhQb3NpdGlvbi55OwogICAgICAgICAgICAgfQogICAgICAgICB9IGVs
c2UgaWYgKHRoaXMucG9zaXRpb24ueSA8IDApIHsKICAgICAgICAgICAgIC8vIElmIHBhcnRpY2xl
IGlzIGdvaW5nIHRvIG1vdmUgb2ZmIHRvcCBzaWRlCi0gICAgICAgICAgICB2YXIgbWFnbml0dWRl
ID0gdGhpcy5fdmVsb2NpdHkubGVuZ3RoKCk7Ci0gICAgICAgICAgICB0aGlzLl92ZWxvY2l0eS54
ICo9IDEuNSArIC4wMDUgKiB0aGlzLnNpemUueDsKLSAgICAgICAgICAgIHRoaXMuX3ZlbG9jaXR5
ID0gdGhpcy5fdmVsb2NpdHkubm9ybWFsaXplKCkubXVsdGlwbHkobWFnbml0dWRlKTsKLSAgICAg
ICAgICAgIGlmICh0aGlzLl92ZWxvY2l0eS55IDwgMCkKLSAgICAgICAgICAgICAgICB0aGlzLl92
ZWxvY2l0eS55ICo9IC0wLjk5ODsKKyAgICAgICAgICAgIHZhciBtYWduaXR1ZGUgPSB0aGlzLnZl
bG9jaXR5Lmxlbmd0aCgpOworICAgICAgICAgICAgdGhpcy52ZWxvY2l0eS54ICo9IDEuNSArIC4w
MDUgKiB0aGlzLnNpemUueDsKKyAgICAgICAgICAgIHRoaXMudmVsb2NpdHkgPSB0aGlzLnZlbG9j
aXR5Lm5vcm1hbGl6ZSgpLm11bHRpcGx5KG1hZ25pdHVkZSk7CisgICAgICAgICAgICBpZiAodGhp
cy52ZWxvY2l0eS55IDwgMCkKKyAgICAgICAgICAgICAgICB0aGlzLnZlbG9jaXR5LnkgKj0gLTAu
OTk4OwogICAgICAgICAgICAgdGhpcy5wb3NpdGlvbi55ID0gMDsKICAgICAgICAgfQogCkBAIC03
OSw5ICs3NSw5IEBAIFBhcnRpY2xlc1N0YWdlID0gVXRpbGl0aWVzLmNyZWF0ZVN1YmNsYXNzKFN0
YWdlLAogICAgICAgICB0aGlzLnBhcnRpY2xlcyA9IFtdOwogICAgIH0sIHsKIAotICAgIGluaXRp
YWxpemU6IGZ1bmN0aW9uKGJlbmNobWFyaywgb3B0aW9ucykKKyAgICBpbml0aWFsaXplOiBmdW5j
dGlvbihiZW5jaG1hcmspCiAgICAgewotICAgICAgICBTdGFnZS5wcm90b3R5cGUuaW5pdGlhbGl6
ZS5jYWxsKHRoaXMsIGJlbmNobWFyaywgb3B0aW9ucyk7CisgICAgICAgIFN0YWdlLnByb3RvdHlw
ZS5pbml0aWFsaXplLmNhbGwodGhpcywgYmVuY2htYXJrKTsKICAgICAgICAgdGhpcy5lbWlzc2lv
blNwaW4gPSBTdGFnZS5yYW5kb20oMCwgMyk7CiAgICAgICAgIHRoaXMuZW1pdFN0ZXBzID0gU3Rh
Z2UucmFuZG9tSW50KDQsIDYpOwogICAgICAgICB0aGlzLmVtaXRMb2NhdGlvbiA9IFsKQEAgLTkz
LDcgKzg5LDYgQEAgUGFydGljbGVzU3RhZ2UgPSBVdGlsaXRpZXMuY3JlYXRlU3ViY2xhc3MoU3Rh
Z2UsCiAKICAgICBhbmltYXRlOiBmdW5jdGlvbih0aW1lRGVsdGEpCiAgICAgewotICAgICAgICB2
YXIgb2Zmc2V0ID0gU3RhZ2UuZGF0ZUZyYWN0aW9uYWxWYWx1ZSgpOwogICAgICAgICB0aW1lRGVs
dGEgLz0gNDsKICAgICAgICAgdGhpcy5wYXJ0aWNsZXMuZm9yRWFjaChmdW5jdGlvbihwYXJ0aWNs
ZSkgewogICAgICAgICAgICAgcGFydGljbGUuYW5pbWF0ZSh0aW1lRGVsdGEpOwpkaWZmIC0tZ2l0
IGEvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvcGVy
Zm9ybWFuY2UxMDAucG5nIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21hc3Rl
ci9yZXNvdXJjZXMvcGVyZm9ybWFuY2UxMDAucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNmOGExODc1OTZjNDJi
ZWU1NzFjYjZkYmQxYzE4YzhjYzAyOTgxOWEKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDI1NDYK
emNtVjxPMkBVcCVQKTxoOzNLfExrMDAwZTFOSkxUcTAwM2tGMDAza04xXkBzNmFOP0N6MDAwMDFi
NWNoXzBJdHApCno9PlB4O3RWdSpjUkN3QyRVMDtZNVJUdipfaV43Y2xwck5JYTU9bWl5Z2VaZito
eUd8YXYrSyUrI1h7UmR6MnQqYAp6ejxNISEkaEw9YWFiTWJkU0dQbz81VkN2O21oUmtqKWZXRiRm
Kj50blhralglcDs/aztQVCVqJGFsSmNwPUg4alAKelhYYyhXY1J1KVYtTXgzX29iTll0elZDZWhq
JHRUSDglSHtCQDd1WH1lJGg2JjNieHRaWEl0OX53KUpoSFdGNFpQCnprTUA8VUd4WU4lRm4tNEdA
SGMkTXtqQXhJQDhUTWBtWFQ5NStPKUAtUEotPHVLQFBZQUh5eD1BejtKRTQya3c8aQp6VG0oWWR5
MSE2dlR9USRpbEAzNXtmSlNqfGpHP0pQKnR+RD85a2lAMD4kQTskc2U9IypqPTJ3RyFxfVB5aTJr
QVcKenlOaDtmRkZselQ7fFB0R249N092UE92QXRXRX4mQG1XZys4RjVgRm5aenU1Q21+WUtSajFn
bmFFRCF+fFo4aXowCnotJk1ZJHBWOzQtVmxHPjJpZT5ZcVAzNlQ4WnlWe2pEZU9KKlMkcWZJI1dp
cChjRm5OaCEmdHpXWTN4fjIodiNgUQp6P1YtdEM0azNXY0IhRUhzY1U4ZXxwWFdHaEMoMGZWdThD
e0FfaDkhNUlXRFVRYkl9QCVWIyEqe21ZM1FTSzFobW4Kek1Tc2I8R3hhNXU/dW1QMjM/YXQoOHxJ
YFA1RjczR2QrNnlhKXEzajReeFI0VWN9Ti1rTXF8TzRZUH5nPjh8SjhvCnooa2AyPSl6KWRJTHV7
KzReMTYoJXVgeVFEY1FpLUxSYjhlMS01Yn1fbGU0fnRefEhPTnIoPm96aDZzKDc4M05WYwp6bWkz
c3NUNWtvYFZjWGdwSlpTNGsoUWFGJHR1Q2FvVi04ajN4Mz59Y1BlPXAxbSZeKHBFY085cCYlZ2lp
UH1oeVIKelRaQDxqPGBUNUdmZWF2diN5JllpWkk5NGVkTktmdik1VVZAYjZNTEBWTlJHXmZMPUtY
bktXcGJZSkd8WmFYdFd5CnpvbXFDPVZRJXpCMzxvUz49T0xUKS07N2B8MkRVakoqSmElV0cmSG9m
I3F9RENLfXFkUiE4I2VWT2tzXn1IWVh8Twp6OUpHOFR1MlotKmJ3dWQhdig0cDNsTT8xR1F1ZEhs
ViVDP3QmayZvbyU/dzUqQ195SDFCS3M2TCo4OyVrSGdkV08Kek5fV3VhUU5CQVFLIU44bF8mXmFW
ZFRETUpJTUdERERWVm0rVWBAcmV6SUtYeVVzND5CQkNqbnJNdE9vanQkbTdyCnpeOVdoaVhWUWBI
VSs1MFc7MGA+WTlsZyk7aVhCZzNrdj42aXNUdWJnR1dSSHVYe15ZaiRmfC19b2RyaT5TX0R+JQp6
X2lhe0JMQCsySktAY181KkBmUD94MT8+Nkk3U35LSyE7MlYwamdnI3Q1Ni1zbk1uTDFhVGpzcU9g
YSZvMXNSOWkKemI1SmdsSCswRjtWS2o+TE5kI2dGQG1zYDRpRipNfEVLOE1TQ3o1SFh5ZjJvLTxg
MkNWbislQmcjOU41fWMzZ1Y5CnotZktkSjB0MmJIPlgocDA+Q0dzTnl4IT54IVgpQz9pNFF2MD13
SVNqPD9QQEVkWU5RaEhFb3NVK1dLfEptVyVeMgp6aGo7Xz1JY0dmbU54Vj96eV52eGdrbmdmIUt1
WUYqcEFTWiV5ZVd3d3Y9Rnh3bW1EI2pDVm91emVjaWstZX1jRG8KekJTYDdecUt2fGYwV3BwRTlw
ZDlvRiNTdz9VczdXYldrP0UzQXl8RWU3WjZJWiVtQCQqaF8/fns8NVpefmghYWljCnpmbExLKlVN
STJ3TSFte2huT3ZpSUFseVJ5Q2g9aD45RFBIYWNyckRNeTg0eS1zTWx7YlU5ZlEoKUQoIWgjMipu
fgp6YUtoODRhVztKTUVpUUE9d2BeNTwmcnhxRCY+eVFiMF50VllteCpeZihkazN0MzJCWk92aEBl
Q3RqPGNyZHtNNUEKeiFgN28zMDVPeUpVRSkoUWZWZWB1dkp2QShlTTs1bkVCKXUjX194RDZuPyRq
VUJvSFBMS1RHQC1AbnQ2LUxBayV1Cnp4SCt0eT0hP1FxYnVqeFFzezxFZ3NWZk0/WkZyKUlleyQt
aEtadWBoXm42NFBNXjtDVmZfbEZoWDAxXk9oekUlVwp6aCVZK3o2UDdrNW1TUkAoPXpTM2czeGpu
ekBIKU15Tkt6cHtvKkAyRDB2TEYrV35ua1Mka157fUdgb2JrTTV0VTwKellgTjtLNk84P0VySz5i
MiRYSi07PTNVRFduMiVDPW9Edns2NmFOfCRqSVpJelJaUztDIz1heTc9eCh5OE0hWjNJCnpNWGpx
QlZ1MH1wOUVxeCQ/Y085M1V9M1BYSV4qQXY5fkl0cmQ+I1B8PHheWkNZdFBHWSRuYlhEZmVUKD9L
JkJGKAp6NEZTZS05WHQlYWEwbTd4dGpFOyZmSnNeTC1UNy1GMDltYUNBUzcjI2B7YXpfMyUqa203
WSRxe2JgM3pWWFBLPTUKekFVbks/NTRyKn1KSCRxQHEkTURfRW07K3l0UFpoc2Ihb1JgYElXa0xL
b2RZI2dhOEJ2eipMM0otVUJ8UnU5TWtZCnowbWdkfiUtXyNjb3JmU3dkJnBxakoybHVDYXYpbXhX
LWxyfHVmQGlZdStZTUYhb2lydC01XyEzN3IwO2FhR21Kawp6VCU1dWtnIVJ3e0V1NCFReFptJVU1
UmBKYjM7JUlkPGB3OUVTMjtrMVV7Y0lAeHRJUFQtYkRPPkdXc0paSyY1STMKejdoelQmWm1sO2Mx
QHJoOzF1Wk9iMiR5PnVsfWQ4cERMdDJCZmBHKF9GTnZRP0pIMDNUe0hpMjVhNmt0OTNae0t0Cnpn
VFBxSFEqYDNRJWFJWl5MdyVQP2pXaSQ/NjZKViQmaiZHcCpoUmNGJkNFanlgO1kzMGErfmRyeUJl
OEYzU3NoZQp6JmFpWldyO0UtdEdeQ29UcXlnTGJSRmJXYztMSD05IV9aLSNLJkA/dT19XmhtdHtJ
a29JUmFBdWlONm4jV3IkTE8KejF4NXhhYlU4eFcxdkBCOztsKGpRYmV0RjBPZnhiPnAkbTUwNTJz
Vm9oSF4xcEhZT3NRbXolWDE4S1ghZ1pMWUhNCno3ayMyb1E4RXx7Y3xtMCpvI1RhPGJCcWpBPGY2
fXslYzQ8WSV1OXswKG1gSHxKanV2NyNWVSh0UE9wUi0yY1k8Iwp6Z01jMFFSXmxnKENaYnI0MTMm
fUF0dXRoeyo1R3xZa2VocHFnRUdadkdPRFkhMkgmeyElV3lkSTRJbEVUJSgjNioKekdWKnJCWiQx
O2Etc1NDP1Z2Jl5nT3gpdGk4PF5FZShpKWh0amJoJjdQcn08RnZCZSp8VkJRMlhKe1lvX1V7KXlq
Cnp5aUlLTSlnX3JXdjdvJD5heHtXV2dsQ0okWU5YNzNGbk8hLUNAVl5gdDtRPkV2XzVhZkE2PHpq
KHV8KTBrez8lNQp6PnchKTh4Qyp2KDxwO1YxZnwyQHhFQFFxZl9uNXA+YFNMWGVNdDglR0pRYGFv
XkZ6VjdIS285elZBcXpmWVJCZVQKeiF9K20hamokXjZnQyo1RFNranxZQH1wTihJQ3xBJWVkVUp9
RGBqbmpJS0NTdkVhLU44SF4he3BAIWRXKk9NYnc7CnpTX0NKVyRWPT54bnBzO15ZR3YtYE88N3ct
KE5lRzFSK14oUSl3UCM9fERxdDVDX0Bxe21XXjE0bmZ7fURpIXVzRAp6IUtKJDY4NEIzIWxNJUE0
XzAoTl5Zc144VT4hVkY9NT1CRn1DYSNUcEBPeTxFbSg+JEgoeD5YV2o3KkVGPiN8UH0Kej0yPktI
cGRKckpsQmlzYlFuSFFEO3lkXip0TGVrRmFMdiY3cn1RVWBJbV9wI0FReT14PDlSWTlMa2tJeE9q
PGg3CnphUlJ4Pj1vZit9RX1ZQm1AOTtQRm5KYVBiZnc1dFhxNFREKUt1RG9QVWFLZzx5SFUmbVVS
RT1gR3hId1BwKFMlegp6ZVR0YE9DPjVyQTtAKktKMG5KWUNOZXh5ZkpnTUk1VUAzMF9VRE5mX1RB
Z3tLTXd+cWo+Z2NKVTkkZ010Pzc+eWMKekJkbSlOWWJ8QStWYWtebzMpSzZJZXV1eFlabWFrI2VU
UXxjcGxnaVBmaCRiXjE2JWJeUno2PCY1ZFopSDA3KnFvCklNNk48JGY7YzQzIX5nJlEKCmxpdGVy
YWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRl
ci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3NjcmlwdDEwMC5wbmcgYi9QZXJmb3JtYW5jZVRlc3Rz
L0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9zY3JpcHQxMDAucG5nCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmMyZWE1NWVhZDc3ZjVhMTIzMjA4N2Q5ODg4MWM0ZTdlNmJhZDUwNjYKR0lUIGJpbmFyeSBw
YXRjaApsaXRlcmFsIDMxOTIKemNtVi07NDJTY0hQKTxoOzNLfExrMDAwZTFOSkxUcTAwM2tGMDA0
eyMxXkBzNml1RFk7MDAwMDFiNWNoXzBJdHApCno9PlB4PkdEJD4xUkN3QyRVMkJqV1JUWWspeWNG
YkJEIyVsdzNNenNpcGlsJTUyIXNUUjFmP0pmMm0mSFhtODItTgp6bHNtSGxsSkskK2YhVXFTa2BW
ZyNHYG9vcXZIfmZScHdURH5BQ3dTfmhhZHVwO1NtJUo0fE9AR1hFSE97LU1SUGMKej8lVUpkKUF2
QCprN1JlZHJ8O01Jb14hcj8mVWVPKXZCTTVLYXoyKWJCX0F3eyVIY2kybmJzfHd7JSM/YyhkUkVF
Cno7Vmg8cSYrYU02JVMqIUQtX0JJYnF2czBlPDIzUXBZMF9VV1VHNUJOS2YteVlCJjZ0X2FwJmZD
XzYpQkdlKE1Rewp6d0dhPl5mbXppZis7NGxIeDFwV1FoQDtmeT9uWGZUSmBAbmNLRDReLT5sNT8w
dzZodj1iUWokTj5GcileMCp0MkIKekA8ZC0oe35tVUJnVzhMdEpkN3NxNFduU3hMNlFGYFRge25v
b24+JjgzLVR6TXc2fGdicVhFaTgtZ1Z4bGNEOGxmCnpSS1hudzgqa3lmTD0kXmNQcipIX0JxfUc3
algwa15lZXsyOHpgeVVZR3ArKGQkTy1nJDJZOT54Tzx2YzlwNzFzcgp6KWUjVTJIWH4zQVQ0MDZx
S08zKktUcDk5WW54Sj1xeEI5UFQ7cTRBPmVabzc0ejxYSjl5JDlePDR9WVR6P3FyJnsKel9XJj4r
b2c/T2JFWVAoQHxLOGRfKHlvJWBaT1oqUlpCemYlI31MbExedX0pO2J9UTd4Qyh8dHdSUmV4SDB0
VCZ+CnotJGYxUj1zdHJnaXA3RmFrVytsNHMqa1JobmMkKkkxJGx6JUs2QXozN0oycmomUDJkcWdH
LSomTX5ub1RWcWdhKQp6QElffnp5bj1CeTIqJTwkU0tzPyM2Wmg7Qi1ZNGsza0VgeGk3UzNfYHFl
Qll2VFFvOE0yTXFXa1EmQlg3TEV4Xj8Kei1tXzNTQzJ1ejRUbSVkPDtQPns0QzdaTXI0QmBBTVM2
ZGR2OFJ2bXV7TCZOe09kY3xgM3hPZnpwP1JfeT1ZIWtTCnohb2VFYEhAMEJKeUR+MW96Pm9gQ0Bs
dFZ0IVBJX2woS3txaDUlX25vWk9YYUpmKVQkcmJzPjE5YGlvTk87U1pVKAp6WFJuYWspQWdRMnpA
WVE+Z1kmYVozSFE2O1M7VHlrVUAhfWVmS2UqU0ZYaE8hYnVJIT0+am8/c0RGVERqZFE5QU4Kel9C
OEw0NyNNVmRYdSVsTyZGb0pDM19oc0prPEYwYjB9YzJjQ2MmV1ZKIVFjZHVgPUI2Z1dIczYzSmpt
TTc0bTZkCnpITk1WeVReNVh5RTJDbHhqOUpzPGp3bCNwPzd3S2loIUtuK0U1bXtAYFpuZDdOXlkq
TTQ5YUIzOUVYS05WclQ7awp6TWhkYGF5OG4mVm5gKnFGKGk5amE7cTY0Ki1te0BuTUdOeEI3TDJy
alEzdTY2RlY4Xz15MT1OVmlnd2h8WSFZQ1UKenJ3IX4oRUFucl5XV1ByRHtWOEJpLXRIMGRofV5L
WU5xfEFDPWhicGllIStpZmd1RF9WN1EyUEZVdU1CVCZvZk1WCnpRKD9mVXVWZisxen44T3BAO0Qw
eUYjM2V0MXFFWllIPVZ6U2Y3cXF9JlFFaENaKzVtUklzO0R2NEJHYWQxR2IlNAp6Uk5EP2BzfUx4
XjA9QyNjVytIN0Ema204NXcxTHNNLXV4fU9XQzYqRkc/bjJKKlVDV2lycCZSblVFWiFKN2A7WEoK
el5ZRjl5aTRNczI9ayV3TlZoTkJAWGNQPigtdChyeHNJTD8lZCF9ZGxDJFFSWVBNWk0tYjhYRVhG
M2wxSHA4fjtICnpPPEU/TzM7az9HPypPaHYxWVJfZTUte0FlcHB7VnQ8VSN1VnNYVW5tITEjT0lV
Xk1KdjwhR3BnbCRARF9aSER0cgp6czNmMzhFKV54Zz9ITU4rcksweSlnUylganc5aVVFcilZanNR
V1d+PlZabXM2Zk9wOSNVVz15a2E2cEVEO3FVdGYKeiEzZX1VNVhEanxSS35YMXdSS0t+WVduY2l2
UDQmaVNyZDxXMFJme2QrPGp4KXFEZmx8cDsoNXEwUCkhakJHe25QCno8S1VuPyNtUT1FMkJSc34+
UGBqNCgkblJCbiVVOH5iVkZEXlg/UkArN3gkK0xqQ0ItP3BUZTNYI2xtJVo1U19pQQp6Kz1SMCN1
bzkxdXc+NSp8RUE5Wm9WKHFTNjt1blhETnJDNzJMbzc7ayRsbDN6Zys2bXdne1FlUlZEXj5zd3hM
WSUKelpfdit7VzF6VWxhOFE8M0Z6UT9CYm5tMHxPbihPRTwkaEQ4NjN0d1pQSnJiSiNPRyZWYmRw
SmFyN0gtPUVhODE3CnpRUCZAKVNZKlcqI2xxND54QDglSmBLKDMxWWElKVVFMFlFejFqWF8qUXdE
NjZZR1N4YkhBRWFVNHZwfGZ5Qyp2cwp6WGArdWZzU2N1ODNoc3wwTSZwJlNzdjl0TTVARkB0KShL
IVZxSXVgNWglXiopZS1YQVQ9UEgldlYzZDhheDY5aXIKenBhPUdIVEVTPW48dXUqT1hYbUZ9c0dK
eCFEeGNmPiF0TT54P0d0YmlSMEQlR3RIeHd0a2FLZX1ASTN6c1JXTTNgCnpFTEZJdD1OTz0yPTVg
Vm9QMHs+eDxaTTZpaWw7YURGQF5uQFhuP1QwTWtpM29UaWNpbjRxciU5fEZTKmJpWldfLQp6KFBi
P0dwX241Mm12KDEjQXthZFFGcGpoNjBaeyR+aFlkPjNDYU1kazB3bSpMSDBGPCRPI3owMiNCIWpk
ND9fNEIKejFzUytCNG5YSnVVSlBAMW1EYSkzNXZHfFV1TGU4QHFCQGteUmtWcDQ0b0loZ1E3MXwl
cW1yS3VEMVNJWCZHTTMqCnpzPi1qWHBVcERgMiFHKkQ3UHgxd1BzQEgyRTI1Ukspd094eDxoYU95
UD5gOTJaVVkzJGstQkp9YkJyfD9rJmBxUgp6Y3FpO1J2SlhnM3otYUp6QD83MG5rfXs4TVhsVXBJ
Ry07M01NNyleQTRnVGV2aSVgayRqc2teeFQ8TmxNYmdTZUQKelU2elNZTDEhXmxLWV91cndXe2hh
Yzlec1FCVyo3fkxDJXFiPlo8MjthQkI9REQ9ZyM+bF4wLVVtekxUK2hgemNoCno7b3tFVXk1eGZq
VGs+bD9zYHhxYmVXdFhtSUA7QF52a31GTXklc3UpdWokeDYxQXlZTkx0dip9MFNLaURzaW4oNwp6
O2hTb3tsPlF1PCp4Yyp3dn0/RG0pfWBCSVhZZE9WZGJGKEcpWFEobk9ZTzkpakM8PytGNG5qWSM/
Z0BZSmEmIzgKentfSCZtRTlCMUIrP01sJEZwPWpKWjNZU0QxQyFmNC1jSjloTDhBRm5TcHd0fDxR
ekZ5bEhCLX5eLV5mfFNBQWo0CnphcUshTmlAWXtIOEQ7cVNUKn19dUxJb0pSeFNaUHkxZGNEVEZw
UCE2LSZxX0w2JXslQ3cwZSVMWHE/cXBESiVGUwp6RXplKy1NZGZnJT9HXkc/THduK2EmQTF+UChs
dzJMSD1sT0hteVRNZy1ib0JQTEE3JmFwZXYwV0cqdjJ7bH5FT00KeikoQ09aYWZmbDFnV20kQXRi
cHhLVU1MbitXMWZASTwxdCN+UTkpJko8ZV56RzhVaFAoZGxIOW8zPDU7K1EjJTw5Cnp1ckpBcVNX
NGhWZzVyK1hScXkmOTJaPDVuNiU1WXhaRUZzKi0jfWpQZEElMVlJP1hIPylRTEtZWnF2O0MwLShJ
cgp6M0I4P3lmUlUpSUllcDNOa21afH04cDMjT2hGcF8pX2t9OU9xT1N7S2lpSVZARWcwPkhSTyE0
T09QRys0aGl5b28Kelg0ZmBWVjV9Umc0eHZqXnQlMCZVM2x2TUghRCE7V3dndWFwRT0pN1U1flA8
Xj5PMXotI0UkYHIjaElOKGlsdzgjCnpzRG5hRUp7Wk5+JXVFez9YaylSPV58QiV8QCslMCU2NilZ
VEtgPTdpU2QxUVVmPTtjRERIYn1+SlJgflAkLVMmUAp6OSppYlgmUE1iYUlSejt4Rm1sJmVqT3M9
JTEwTUx6Yn5rKj9iKGM0KyhUY09XVUZGbGM/fClkIVZzVV44Y3JLNnsKekxURTY2RV5wKjFoTiZk
V2pfMmk1RUw3VHtwTkwxZnRBUGNoNFRGbitYc2RWI24yLW1DdEN8e2MjZG9xYGo1YVheCnpjUVY+
JS1JVFQ9K350aH0rOVZFX2teX1RPP0tIeGYhKShnV0Vme2Y4RGtNMXpNZWllbiQ0ZXF8WW9Rdjhi
QGJwaQp6NW47Zm5ILWlrM2BEZWpzNkBkQUlrfER1cGlVKSU5RGhVRWNydSFLTmtKMm0wWUs1Qz9u
cCNOYjE+fk5sODtmPDAKeiVeLWRYMGZYRHRhc0R1Q096OUt3b1lPMkFwO21ARiZUb2hVMjs4cWJY
UnFuN2MkIXU2VnlsfEBBWWc9UEVTNm9ICnpBdTdqJVVfNWdCUmQ7Vy16S2hEYDR7RXR0WmRvK3Fv
LXVjTSVkamApanpea3F2MUc/XkZ6VFJDaXo4KktEbTglJgp6MzVKb3pWaX00dkRrbmw2KDE8JEdh
YUFucnRpSHlBWjdtb3wqVmRoZ3RxYy1xQSZuSm5iblVsQllGIzQ2OzN3N1AKekUmWCV8T0FgVHQx
QWZeWDA3bTF3JlRteWMrbXIwX21TUyY4b3tXSU8zMzVSQEdEREA9N0w0XzYyR3IkXi10O2ktCnp2
N3ooJDZmX25+KE4/QUQpPkVDQi0tTjlxQD5pYilCZ2gtOUp8fTBiYDZ3a19leCs3JEI2M3gzKWdf
YiNKNSptNgp6UlRAdyQhRF8pNkY9MTB3dHNBMVJLdn1rNjFUcEh4JTltQT42ZVo3IV4kR3A+MFIk
dDw2PFdxZHQ/U3o+czxNTCEKemYjeV5UTW1XUStRKn1Od3U9aHI+MUZMSWlzc0NZJD5gM0tVb3RB
dSVjMW9QTjJzU1hiVT9eNn1RbXUjcClxPCNrCnpMKkQtVUtvRHF2WXtBZU9jUVcyIXooKG9AdlA3
JXU2aSh+K3c8Y08pZXpSbnhZUlE1VEJ4LWtOIz9fbk04dEBSSwp6clh7fkhQQjUmI1c1Ql5TTGUt
a2o1YHteYENLUy1vMW9qI1BWPnVWcipxTXp1U1M8K1pXWShIYGQ3SkdMKUtTMD0KeilYLUF+Mntv
K3JgYF9YamlmZyZ3cUZvaG44aHB5UFZ1PmJoQD1LR3doPG94QEhLbHhZPn1VTz5UNlR4MllMX0tD
CmU/Mk9zYio2fWAlNGpYNl8+an5gdTAwMDA8TU5VTW5MU1RYd3o3JnVFCgpsaXRlcmFsIDAKSGNt
Vj9kMDAwMDEKCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMv
bWFzdGVyL3Jlc291cmNlcy9zaG9ydGN1dHMxMDAucG5nIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmlt
b21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvc2hvcnRjdXRzMTAwLnBuZwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5hZWIyM2UwYTQwMjZmMjQ5NGFmNzYxMzFiMDI0MjUzYmUxYzRlNmVjCkdJVCBiaW5hcnkgcGF0
Y2gKbGl0ZXJhbCAyNzYzCnpjbVY7KzNOLWJKUCk8aDszS3xMazAwMGUxTkpMVHEwMDNrRjAwM2tO
MV5AczZhTj9DejAwMDAxYjVjaF8wSXRwKQp6PT5QeDxnLUp2flJDd0MkVD92ZC1NRypibzJPOTVO
TCVpZEtzOE9URnM2LTc0OSpBZCooUmlQVFZsWk5pUURkQXgKenYjXlNhcThKZHdnSj9gWiNTNHNy
VD5rJU80XzgtRiFHbVFMUjJEX1JtMGhkcUAzSzQ0KXpra15jTWxCUk5vTlJ8Cno/V3lrOVUwcWpL
ZDdmKCgrfWhoV19ueGZaJU5yZ1k+czhrczxjKGRoWk48JjsqQGhqd1oybkwkNkNDM2BeWXZ+VQp6
N0lDQFMxM2Y8Kz59QTRmKDA+NlVUY05pWF9WNXEqdGJALWRKd0dfaGA9b3UjamJgejJMdUpHTUs9
JkJ2am5KMTEKej1DPk53VT9LRD1AYjg7d0x0MVVQcG5ofn55dlhZa3JfdW8rS1lZTyhVVnAjXzNx
Kz5vRDRfOFQ9enBofS14flA0CnpTemIwOFhyNTMleW83ZDJEaj9TQmV6KiQ4c0BrQkF5PGZYT0Vh
KiRMc0N3byY4JjI1aWBVeEc7dXF6UHhrcnBEPwp6QztDdEw+e29VJHZlRVVoTEg7b18kNiVae2F7
ZX1ZMig1fmFnYU4tWkxUSkc7NDwwQkI1Uj0tc2ZLNT90YzdEfDcKemMtZS0lT1Q0dEJ2dGdpPzFW
NmUwN0khYEA/bzYwdUVxcEc0JiRhfFI9fmFAe1lfJDxUWndLX2ZwSyMrV2g5MSZBCnprcUgrTj5z
Nm9NJnZaWWZKe2MtdF9+R2E5THFvZ347VVQ9MzJwNjBtanUlVFE+eTF9IUA2SEhjUXZsJk5wISsk
dgp6MztNRWJDITZtTFY/N010dDU9eGNMVF9aV05BZiRQRDRQb0JkQWE8VmlOLX1qUTJhJHZROWt4
OTdRbEcwMm5+UEgKekJJankqQnBXeG42I25rcEJFWmI+Q04qckdLPHR4VDtDfUYqbXg9QnphV1Jn
N3ZBJlRJLTBKMG1sZyl7PihSb3I8Cno+SVpZWjVqRmR6OSlFUE82XiF2emsoMlZReEBnTX0pSXZ2
QiVjMkIzTiU9UjVqSGRKYCo9RTNkT3FZY0w2LUEtNAp6KztKYn0hZD9uV0FFUmdCJDxQSHhjVEVf
ajR7bVg/O1Q4SD42KUNtY0NVe1N+UD5+SnFrbz99JV51KDZScm5yV3QKejIwIT9UKiN0ayhAei1i
Uz18TkpHYyNkRHdzV3FiR2d3SVAoPFhKS3tRcGZVQ3FaY2UoZ3pQQl4mZWl4aypZTGorCnpvbmRU
I3FsNHw/SDx9cE1eKEpwOTxjTGl3T3tIMmEmfFNvQT52QGZtKW16TFEtIVgzcTJ5YlNrSWlXYjY0
ZXcjfgp6M0BiVzhiUm59PyYwNj82LWRDS2xGYytPLSQwRVM2JVdWRjkoR0ghP3UmV2B+T3g/SSEj
QkEkJEV1eVglQEZvQyEKekdmUnItWGw5THs2TnpaUTIqMW99O0FSTEd2eUB5b0sqUUxCamtDbX1Z
enQwOzc/QTBPVXFxSDVtWH14OUhHYztnCnpoSGMpZGZydENkViUlPWViX1U5KG4xO3I2aHleUjhf
YDtjUSojdiRVISZhV3FwcmxQOzdVTj1UXkNQOEg9eGI+eQp6ezM4MG0jbCs2RTNQPmlwbEErXjg0
Sl8rcEYqYEo5cTdpUzUtXjVuflNmMUI1M2Boe09pZHdyVDFUPUZvQVkoS0QKekB8a2UjO1dmd0Ux
dGVIMG5CVHZKZjw8aD81R30rSzJaK1d0cyV7ciVlbXt3aChqUzVvKG5rSWEyWil9QXpyfWVJCnop
eSpiZyleTEY2biVeKldeOWViUWdrUFRFME1SRGEmczcoXyhkeCtBVDVgMn1JelVRUjNWWDlvRiRf
TnYlRSo1Mwp6SjBvcDk/RW9xSF9aZXFnN15KYmF7N2JRezR2QDU+WmE7fVhMfUR3WCRVVDlhOVFX
XnlNO1RUa0FRK2UoMkxwO1kKeiYhUiR3RnAxNDRLMzw8MTZAeDFjNWNHenxvPURGNWM0UDVEc2BF
UjttelBTOFNVb3dqOTNUcHBJT0NkKkgrS1gxCnpOWW4tY3c8KDREdSVJbFZoempLYUh6N2RLYC1r
Xn1HOypGSypQfDBJUEg/d0U2eThfeDxKVkdQLUtHdm05MFlnXgp6Z19wfEx0UE5iXjdwMHhWM3lO
ezh0K0JfRXE3c0t2RmFhKVooI3syITtuLT0kPil0dEQ/bm4yaHFaST10VjZPQksKejNCZ3U7IWNi
Q0JJYShreShJYmZocmR7Vlp0K28pXlk7YWl8KzNwckw8QD1EfDw/JmFrbHBBe0hIUHRPfTtzOzRA
Cnp6KU9Pajxga1Y9Km9WfTh4N2Z2aV97e1RiUE9AWFEjSmRHdXBYbHBHTnlgRHkrM1NFY0ohOyh4
RFkjPH1yVnRsRAp6eCZhNyEyblpZMUBzdjFlcFV6RDVvMFF7cWJxdSVAXlleej9qeUg8dGlnVSk4
RkhfMkxkNGImb2VDaUdtMlojZzIKejBwYjkwZkgqKUxBUHhgKmh5JW17O3M5fWdJNnhkQTRpRT4z
MUg9TDEwQzlqZ0tzTFM+PWVGJWphYTxJSmltelFFCnoteGokcjZMdm9Bdk5fZHdnPTJIc0B1SE9E
ZUV7PHUzO2w2PXd2RCtgYk8jUDlIX0VDKmFZPThjJVdZZjEoSXVKUwp6V2xENWxDMUdARDVAa05j
az9VUFM0JlIhNjR2MV8/b3xleWI/bT1mJmMhRiopaFBtailsS00obXpwRzBKZzdWcnoKejRubnR9
eTYlYHZgY3pZSyMlSStlISVnJVk0cXVhRT9odVVHTFVBJV8kR35TVVI0MmBOLTgpS0M7IUpXXnI1
aTdRCnpEJX15N3BUIVNmVlA4cTUmUEtZdisrTUFLX2A1YHl1NiREKXZtU3kxUGtoaExRMl4kKWdi
TT9TPkUlRSk4cCU7dQp6RFQtbTdMJGJOWl45e3d8WWtjQEFzfWN8Z1Qkez8/U3ZpX0kpPEB5a1dN
Pn11cTdPYz9RVCtAX2wzfG5EWHItQT4KekZkSGVDK19VcXNrUUB3bmE9Xlg+Zj9WJldZZjRxM0Vl
bz8/V1AlP1ZQP3BKYDFMOWktP3ZZfEN4eklPdDwwM3Z3Cno7UHRyMmNxMVdhbSU9SW0mZX5nQSVM
RWhJak4wTyg2PCl5QiYjO3Y8dEM5aFU2SUhofEcjbi0lbkJGYG49OUcxUwp6cSZwPjhVUW9Fe2hs
JjdjV2IpZWZiJTV4KU9NKmNSQWReTDNVTXtTMHB7PUBAMUVpeWpsdFBMb3lkJVU1dkRtcUEKemIp
SnlNOWEmcG9wO2lmKGlnK1BIMlo7ODI8UyR7ZG9DMVgjbGFxPFgtQzMzYXhzS1VFQlEqZlJTZ3lm
MVk4NFBCCnooXkEzSlAhO1VYQFV7aCgwVTQlMEtnaW1oSWt4T3NTRnRpMT1aaTBCbCsjMnwkX3xT
citDOSRDRmElJCNWZUg0NQp6dT9KYmEpTyN7Q2Q/YEI4M3o9ZGd5KTZQVlBmVCRCOTFXK0JFNnoz
MTtgfWFXMFFwYl4kZHQwMFAwJl4qdmlJUXMKemBPJl9tMHxOZFZ0fmohLTh0PEk+IzFEcHgoN1RD
RT1+ckgqWGBVWWI0Tj9xdXExc1M+JHJSN0hkNDxrQ080IUpsCnotYzRWOGFncEZmJW5wN35CazFH
UWJGVyh4U2E2ZkRKfD9QdyVtalZ1dFM2e1dZPHYzWiUwZElgMEV4NTYrQF8xQQp6U1NGTWVxKDJG
dDlWcWJASzRwZzN7RTJMP1ZBTElTSGhKMEFXXiVqZ1pXIzdNITV+Y2VSVj0xY00xaClKVEF0WT8K
ekVDZW9Wbz5qRktDcE9qUEY1N2ZAO2BNcUBlQCtzZ0ZrV1NWKTF9YzhDX1pXZHF4TnVsblFNYnA4
RHlJZD5vKTJyCnpLN2MxZjQjcTA9T21xQ0AqSHZuK2wke2hpITxJPml7bmU8OzctTWJ1bDxNdXwx
MX17VDlOcmwkbkBWR1NLKVh1dQp6ZlVoUGhDej5QKjEoaSZDUzBPRGR6WiQtR250M3JCVnJgNCUq
RzBWe05uJGVHcV9LZH5RZV5EY1F9OH0wckg4UlkKeiNpSkomUXkze2BsKjMpIVVDRnxsT0s0NHtV
fk1SN3E3dHg7TDMtQkE7WXs3Y18wempmQlJ2V0k4RThXOVprc34zCno2SzhGbXMxe0JOejdNNSVF
Rm8pd2JsOTlwaDV4fWQ5aWB6YENqWXpPS0M4QWZsN0p4QUhnVnVJbmI0UH1fYEFUWAp6NCkhVUhY
aUF8UyVyRzFrejhwP2JmM0k5RXR8US1TX3lOIUI9fSg1cFkpbV56RmBhZllGdW8qS1EwfDdZd2tq
Ky0KeklTe0xlV2dCVV51JFI3TSUxe2ckR2tUV29wKEpPKnAoaGNgR3xYPWU9QH58b0QwY3pWaGFQ
LSM8K2YjI2l5d1lMCno8czdzZlVsWUpVY3Fje18lOEllQGVKUUM4Q1hgeDVAd2d3d1plaDtkSUZ6
Vm1aUVpLNHB2aiMwd0p0djk1bWg3Rwp6eiNHTElQISl2OTlUfmx3eEB4T0hGLX5OOz0rOGhDZFJk
PUY3ZCFnNGlwSDB0O2lCNk5rOC1WaT9TSlJfNUNgRk4KUmdCPF8+MDAyb3ZQREhMa1YxbU5UQ2Nw
cHkKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMv
QW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3N0YW5kYXJkczEwMC5wbmcgYi9QZXJm
b3JtYW5jZVRlc3RzL0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9zdGFuZGFyZHMx
MDAucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmZmMzg2ZmYxNjMxZmQwYWUyMzY4YTU0MDBkNTg4NGUwZWEzZjli
MDcKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDQzNjMKemNtVittNSVsaGZQKTxoOzNLfExrMDAw
ZTFOSkxUcTAwM2tGMDAzfFoxXkBzNj0ldi0hMDAwMDFiNWNoXzBJdHApCno9PlB4XyNZc2QjUkN3
QyRUP2NxbiNURmhBNUReOUpBVH0mZGlyNTgyTUlSNCloZ2VYPV9RWm1NX3s/c34zLU03NQp6Znsz
Q2JZN3tocHE1PileQXw7ZkJBU0ZhVkFRVH5CRmo1akNrcE19cT1QVk9sbVVIZ1RvamMxZSZwWTNE
S0tRPWUKekllWHspY1Y8cVRHYUByeWJPSVhkUUl5RmkxXyo0a3tObkRKQHh0O2J4JihsSDh2ckNU
UUMjQipCbkFNOTdhIzFLCnpBQFFRUUN5PHhgPGZROzAqe1J8ZlBhclY+aCtqTSMwS35GSDRNMW0p
Q3pSO1lFVDhCcXNAcUpUKmhGa0hXd0BNcQp6V1JeZyNWPDxwb0N5SWBMMHM9RSs1czYlP3M0S2k/
djtpTz1sZD9ffXQlM3BoaEklTH5OdTFgMSZ9OypfV3xGY18KejYoe2Bsa1k5e3FIa3dPNDVnTU4l
S044elJyOFFuMDdXfmo0YXZDTHduPmBVNDF8KGk9SjMhN3BAaz1PYmVhTXxaCnpVT2VLNyhCTntG
RHJ4fkJSZkcrYXg4SC17S0RtIUU9TXowS25ycW9mOyQlazdRJHdkd0N1Uj9NKWYxeisyQ0Q1dgp6
ajIpNUBgZTE3WXhwQUh0amMoe1NGbWlyKnpYeCo/I2ZnbDZXcmluNGF9RDw3P2hHTERgI3AjJTdw
aCp3Z1VkWkoKejhsNTVXalBsZi1RcGJ1MmIhQDlBTXglaGRPenQ2bWFYa2dkUWV3JWZMUkhOWnI3
PGYjZ1lqY3NMX0l1PmRVJFRDCnpYeVM+fCpiTW9Pa307fm8pV2MmS3JgSDlaRDItWF5kNmJOb3I7
MGloQVZiT048UCtDPHFCT0sqZnMySUw3UGlxVQp6blAyI3J6e3Z4aURCVSo8MWNFIygydT0xIThh
PTt3a2c/WEVfciZTR3A/alVOTDF4bDNCdGhLQm5EcytxPnIxb2gKejA1dF9WMmszbUR3bV9FeHdG
R0pnYk9LT35tQF43fTt5ZWJCa0k0Pm17TmlIVV5wdH15X2Bgd1AwNmhiZzBranlYCnoyJmw+bS0q
eUE3MURYWXQ0JThFPEp5ODg5YG1zN1BmVntAKCRXM2gleEZRY2dlVn1gUWg2QngpTE4obmdDR1kr
fgp6OWVgPmQjMk0wK3ZDQDtzNHlieU9PT3tWOGk2OTd2MGJMOTlBeUFvaEBZXjxea3JKR1VFXzBh
WCEmdkUkKzhIan0Kemk2dmB1MWJ9RF9HI0lHUmlrLUZyQz8yUiRnc2sqNVcoQiYldUczMVEhKExS
YDM8QnxgNzI2R0c+S2owZjRPezgmCnpRLUk3IzVOKyVfJjBeQWxqJmxoX0dyMktXVDhCPmk0SlpN
cXR8MzZhV3xwa2U/SytKb3thSFRJUVdKPWk8a3o7eAp6cHJERkBkSVA9OHtDJHo0Q1peaGMwX3RN
R04/JUNIYzQ0WmgkNz0kOUZgVSF7e05rUylWQjhOPj5UdktTVmdDTHQKemYtTCN9bXdCZU0rQCE8
cFBnQCttOD4tTTN4fGtzd2lUJH1XOUUhPHx3U0tQeUFkWiZIbFdOLXRsbT5KT1BgPUdgCnpxa3c3
IXtTRkk9e1FLIVpEe2M2cGRWTGVuTTQtSjYpTW1lcU1oMD4kQy0mI25fUFZsUEpqUGgteSVvVmd0
OWg7Qgp6OzEmWWkydmske2ViTUlHazMpcUo0aU5jRjZRRTV0IWZnfEB3NCRJMzZ5SlJVZXQ0PjJm
WUlIRShYZ2BZdHgyRF8KempkM3UoN3pUKE1LdUw7VThoKjhMITIqXnA1VSVmaFlHWUxhTF9UKWAm
YCMjckFBKmZUYDJQYC0/QHE7V3Z7MEhJCnozRjJHXmtPfD9ZUmE+VEdkS2x5RzFJNEIzUUdBfUBH
MFI1TklmTUNLQnx6a31rSzRUMEdzTj52PGR+YHlHX2cxWgp6RUJ6fFFOKmBoMEY8RzMhU25IRSo5
RFNjRGZIOHttQlN9bDBZbWVEezIrRHhTPWNoMnd7e21FeD4ybiFTaj43bS0KeiFkVTVYakxNczgz
ck9CemFVfG5sVHRLYG1QVmE5Tnc1RUgpRU8hZi16VnBLTGF8JWNeOH4+TzslbkM0QTBoSCUkCnpS
LVReQiVKWVBaZGlFT3VOSX1SOzklWng0UkpTYkRiaXhTckNZJTI0T2FkYk40NipUUCllR31gYWRM
XldZZm1zcwp6UnpHSVJ4PkUmXndNNklncGNrdkZGcFk7JWRqJkRiWjwrcHxEKWlMPnFAZ3F7OVc5
U1J7YWJgbHJFJDtjTSMlSlMKelctR1d0QkBteFlUOWlKfkspekpDNGczV343NVFBN1A0blZOMDMh
UGhXY24/MlV9eEYrPDBecGU0NipNZmt1eE0mCnpvVUg9TE04KmsqNXhRUXc+bkpnPipCS3R1NiNN
R31hdzFTVSlBd296UU9tRXgxanNyQiY1KEpOT21rOTJjdn1ZMAp6ZTJlUDU9RjQ2XlpFU0BxWnZD
X3cmfn1FYGpnYlVJX0k7MWoxfDV0Nm03Ml5qWUpObGNrKn5BYzJFeSRqRkhuRksKejwmTCVVR3hj
IWo9ZW1YQXZxQCN8RiN5UXJPeTM8Jnl0YDdsblF0U1BhWj0wTE55djEpWU4rdWszWHE/KHhmUkE1
CnpxMllLTyRNRVghZlFMMzl2aX1NPHtlJD0lQlExV2k/SjhkWEZyKUgqdWomTnJMTldNaFk2Xz4/
KV5SdzFkTiQkTwp6dmtvRjRlcTlaWnZGeHshZk5hZSNXbyl9SSl0ME9UYVY1b0kpcjIwUXpnNElj
UmtOYEBAKk1KVTMmYDBffDVCYWcKejJoXjt7SEU9Xz0jaStkUnMoQl9zbzF6I2o4LTA3STdTVD5L
WGY+UD5NQmpyNmh+JS08amtaUGJkO2ZyLSVrcWdfCnpJaT4raE93cno7NyVZQ0hvel99VXkhMntE
Mig2PDQkcDA3flhfe2pARG00NjFuRFo3X3twVDUxIUlZZHEmOG1OKwp6QWVAYFE9N3JCPjFoODN5
bWtCYEhHZHp+S19+MCY9IyRsa1hwWXtUYFdaazJsKWE1X3k9TDUzZmxhSCthaldgIUMKemB5ZUJM
ajNAejhvQUZPIUBUITR9YVNwM3lsdDF4RmRXSnlaSVE5NTFjeX1vIzczSE5mVTFweipXUTYhb0d5
c3UmCnp6R0M9WD50ZFczZiYza3JFWUlqZDB4fjs2dmB9Qk5BcFN1eSpeb0opbFNARTJlWjUlfTBl
UmtwbDBvbnRpY0U0eAp6VHVBfmxLUzNPOyU8VElpJkI+IXp6eTkjYV8tYzI2I3RSPEo8WWpIcTxZ
eCt5NGgpfHVFJjsmfHtmaGE2Jm1wcFMKellGMFcqS0ZvVyFCYm41LWJAYDt+XmNmViFAZVdeKitk
I2pMRzlkTXQ0YHM5RmR0ckZ1QSlwX1QkKCs2bzQkTzF3CnorbztTRCk5aXN3UXokP1I9a0s9I1ZE
ajUhcHppMkZSZH5fdlpydF5lMHp+cCEjXysxSSpkSH5YbzJBcThQb0d+Xgp6I2Nxb31OWlYrZ3Fa
aDxIRVEtPGs+SFh7aUdtRThtKEZMYX5AelZYN3pJVm18QVkmT2A3Y2tFXjBfdWJ4NlZNRksKem9u
S3kzel5Tfj5tUDU9YHEhX0xLeXIreyl6aDdsVWFFUXp7blpaMUZlaGRKQGVRNko0d2p4a2hYKyhZ
fDQrMUgqCnoob0c5RUR9QSkxN3NPbSVeN3c4PlRxS2czUTUhKT0qPT0leiNTSG1WKENVcClmQ31S
bmpiJTh0ejRXYzZOOTZGeQp6aXBsbWhkWD8yKSRhV3spQ25LKD9JTEkwM2QhLWszamE9dCpXJkJ+
VE9vRkJ3Sn52MGt7VEU0cCloZ1ZpWjZidmMKelhgMl9NUzI0TkwmcERnSXNpRyEqZ3R1bkNPZ2hX
NHlrXiZNU3hjUWFAS215TkI2IXJoSWJOZ2o8UEA+P1o0WmU3Cnp7Mk9TSk9yIVpid19QJXZpIXFp
fks/ZTNQV2A7UVQwXnIjfilpTXc9eDN7STdKP1YwMys0RnhZezNffE8jc3UocQp6PX1mR3tlQUh2
ZmdifC1gdUVebCZUUDcyfXNlP3BAXk1MTEdgdEFAMDA1ISFsPUBATWpQVDJeTjtkSklpK0RTU34K
eikoMGZJYUdxVTV0PmpXTXBPelZjeWBAQC0hSykxRUBYTTBjP3EoVkMtSyMwa08xWSQ8aGFxMW8x
dHtjP0Zkc25YCnpYYHclQklANzw2dUtOVTVuUHRYR1VTUzBYYXtZc2Y0O3B+SCRxZT1+aGtSPHRu
VE05fjBFVENHODdSV1MxMnJBKwp6OT5ubkxzMCM9UGUrdlB+N0NtTkE8QWwrbmJ6SjNLd3FwejMh
SjBHLUNCR0RnLSkmbV9uNmltRFlxU1E4UmUlQGAKeiFLWDNVM0N2KG1peT1WekYjTmh8RW15RWxG
am8zPnRwUWA1RVFhQXdqbG9XMzI3Nm8jMG4kU14zN2JxNzBab2NvCnpWYURvaE5LaT9SMGM0RUVW
NiZMUCl7UC1SP3F+UyooT099Xik/a2hZek0/bG41PUNRMT9WWUFFKmdRKTZhVHgkSQp6NGFna356
WjkpSzdfNCF8KTlWK1NZYW14UmV5UFNfc2d0Pi1GJFBFe2hUa0FmbUc/aSk5e2pOT3Bze1cqMFo1
VT8KelYyZy0+N1JER0xUbXRxUm5rdyYwT2J5R012PEhvcXQ7MWVFcUJkQnsqSHNXPmZMekEjZHN8
YT5xc2IqSk5uRH4yCnoyLUpRajUxSyUmYyF6YENXR2NCS2ZgRCt6NCNQQjhtbnIwdWxfWEFhR2Vn
RVBtNilCVGVOclZlJTM9KFY4eUoyQQp6SDl6S0RHVjEhOEk5d2tQeEljdV5yOF93c0VUdl50I1RY
ISs4R2d4e0E5RXEwVlVAVFVHY3J3Tkc9PSpkNHRDeGwKelYyNTtMXyZ3Kkc3aEtpfWgyTXolY2E8
d1pARDNgKklQQndhdXZ+JmVxWms2QEZeMW4wUEkpYUkpezQ4Mld3dDlvCnpAUmx9bVElXmZSLVFp
Iy1HbE0tamg1K2YhZDU8MFB4cGArez9tRmZ9ez4wc3ExQHs8SWo4fXwqcGhgTG4rYmgyMAp6QyhL
fmFqdit1MjhHZG1KZVVGc0J1KXFQSjs8WW9sZTV9YDkwZklNdVFqQzh7emRyYmRGYFN1Zj1lYjIp
bypDPl8KekYkQm1raFRyd2ZeRUw3UFdsKmcreElAdkJhYT14RGlufUVYPyFxT2pJPXAlejdpKFQ5
QlkkbSFnRmBtTHlEeD9TCno7WCh2MEx1U0dhQCZoYTRMWD9+NDQmIWN3P2poVlpLeX05ZjdteTQl
U3RXRzNSYzg4T2M9USRLOEdqNGB2WEozLQp6RlZJVWVeczV2YFVOPEd0VnMxe28tOH5AakJMQmNK
WmYobUA7bT5wQFZiKHxpVihtTXN5flElclIofEAzI3BHa1AKekdjaU52UHxXeEtaWSZrNlR4S1Nz
WUNLdmRXamAqSHdtWnQpU31iVlVLeWV4RDkyOSMkKjRsVEFMUio8S2BoZTc/CnoyMWBYX2Z5X1pS
Kn4lOVV6cUVpITVOWU5iNVlQLWhyST9xaiVeWVgockgmJW1EJiVwby04TyVaTXE0WURvOHolYwp6
MTBeI281TkJlQnl2ZFpPeUlMTWp4bXpaVTY8ZEc1d3B5a1VUQClnLTRUT2VPQ1FMTjIqODRJViEo
QWNrYTRxUkUKeiNTTChZYiFlM3BTOGUjd2VJWE1mVEhBY1l5OWdfTm9lQEFfQ09wcFEpSzc9bUNe
MHdjVW95UTBZY3VYUjFPWSVWCnpINkdAOTdINUhxMClqUUw3PHRWejB0aV5eY1E4djxlfXxlKEZK
e25YUU8qTXt2RHRTe2ItYmNMbHttJnFwSlptcQp6QGA9a0NONyp8TDBsQVZIXmFOQDNIaiZ5O29K
PXVJaz1GQlF4bEdgaGtpfGpnSi03bUIxPWU1Wk5IUWg9Y1Z2RHAKeitDK0ZOPlE8P31ISSh9eFdu
Y1dOc1JVaVkkWk1wakNGPzleM1Z6YGI1Ym1fPWhHXk8kR0olP0VUQm4wJmAkY0RGCnomK1RVZmto
ejF6UVFURVhQTlFFSVVvYEM0Qzw1e24hJDwzTUZjKDlAK1AlVjVnWCM3PUdmVD93cTdwI0E3dUdq
ZAp6ODJsSiFAWWg4VmtvT3JydzwhQWlqPkFHU2MhTGZaQ0goNyNpOHluQl97Mn0jNH19MTwwYytG
LXJmc1RkTkRROUsKenBCKS1TSy1Nc1A4WiFYWSFYal9EMWZjOylDUkVjKSk+UzN9blhtR3JBeWsz
YUZgJnlDP14oaWdpYEtxN0xhNFNYCno4aTJzRiVeNG1XTG99eHwme0s7Z2JTWT02M2U4T3h8MWIm
Mjdka0h5ZEk+TjVgdzxsTUQlcmgqeXdjO1dDOztMawp6ZUp7SlZ5QCUwS3l6fip7O0JMbipQZmF5
NnhyY05McXkhT31qSm1YN1hlKD5ZPG1hc0lgQlNhUnk/RFVNPko8ZSoKenZaX05selpLP00xKHw4
cWw5QVdJKHB6SlhpN3xyQWM0S2F2JkpobF4wbD1+bzI8eVZ0TmF6S29HQW5kd2NHM30wCnpMYTs1
S0h0RyRvbiZ0LXNrb0RpaUghc1RsdXlWeW0tSz95QkN0OVhIR2B6K0xMJCFFNnAlR2BJbFpOI2Z2
QkV6Wgp6SipwZU87X19DMmhHKEU7RWk9YGYwPHYoVnMwfkhLST19fXQ1T149NTYzSTBJKm53NiFV
T2o8KGpma2EmOHk2T0wKejFve2U5Vm5ZQmAtfnxEfSU3SDIlUztedXwwTl9kSnwyY0lIaGI5MShm
ckArSkl0ckIzKWo3WiFqZk9AZS1qSXgwCno7NlFsPlhVe2dnQCl+TjxQYmU/aHhjX0ZueVZQMWU+
OFVnZjg4RnZ3PXo+clAwRWBNJE5wZzl+WDNSN14wMGhmaAp6Y1JiUVhvbGUhST8xODVnRkJeNGh7
YFcmJDYrIVhOTjwpMEhEKGZebmAwNnh8YEgqYVpTfUtzMWs1XlpsUjFSRnkKek8zWT0oVzhiIzda
fmgkYCN0O0gtZXorPmJxO2UydT1ffChZR35WM148KX1eLVVnSH48Skk0VCt0ZDY/VilNZ0MpCnph
X35BMTNASkUwYm1UU0p1LUZZJnhDMjJCO3RKeH1mVXB0b1Y4bjI5Y0Ioa1dsViRgTzk+flh7MjYj
TD5SNWAjewp6SFd0bW4/MG5yRHVEI3wpSWU+RSpzMnNybF5LNzhkMGk/Y3FRdF9KNl82SW5ZPlZm
Z2NCOVE8OTAwMm92UERITGsKRlYxaT10NWJeKjMKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlm
ZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3Vy
Y2VzL3N0b3JhZ2UxMDAucG5nIGIvUGVyZm9ybWFuY2VUZXN0cy9Bbmltb21ldGVyL3Rlc3RzL21h
c3Rlci9yZXNvdXJjZXMvc3RvcmFnZTEwMC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmM1OWQ5MmZjZjdhNmRm
YmU2ZjI2Y2YxNjQ1NWIxNzIxMDg3NTI4YQpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMzE2Nwp6
Y21WLWw0NTBJZ1ApPGg7M0t8TGswMDBlMU5KTFRxMDAza0YwMDNrTjFeQHM2YU4/Q3owMDAwMWI1
Y2hfMEl0cCkKej0+UHg+OEEoSnpSQ3dDJFUyVGs5UlQmPD9zdj1RQVI4LVdjNyZVNmVzYCF5O0cl
Kz1qU1cmYlI0R0tZanNJaUl1CnpRaHZ5cCo/c19Sa1pOcHFYMTNpQDtOQ2tvLUl+fkNqY2l+YEEr
YXMzUkRzd0U3RTdnMnQ2O1lVMyQ8T0o9UkllKQp6Ymh+ciF4cChmfHkpJCFlYTxqOERfbnp+Zj1S
Rl9xZEMmViVEaSExIVB+b3xDPDt8Xj9nRD0qfntgYWNOUzJnN2kKeilSZWFZX3c3flgtRyVARWZZ
MH5pXktTZ1U0fVRCaHw4YWFpJlJjKT40d35Pfl5JNSo1LX1QP1NXJSZiQUh0SndxCnp0ZG4oQGRo
TUUrbjBWMXpIVDJHYmFecCk/NzVvJnl0T3IxdzBuUWAlYGBfeGQtbyRMKUxXOERkR2lmN0BxP0ko
Mgp6X0tzKTMrUXQ0YD4mcEtjOG55eUdeZDI8IW5iYChDXi1iRVA0WiNZd2lFUyU5MTghUzNlMiEq
LVVxdWh3K3Aqd1YKemswYFZlWkRwSTtfQ2hlQnpRbFdEd0gkbihiMlJQfi1PaHZ2PUtOMUUwMmFn
flMwOz85djZ0NCRqbXQzQ2pgbEpXCnpub249dTMxVU54aCpldnNCdVhjIUBJYTFAZG1lUUBpVXd7
b2l8cSpoQUh3SGJAbW4zQVNLXzx0PlNoMDAtdSVxKAp6Xz92ISkmLXg/IVUyaHg5a31+dDd7e1Mo
fGJWP2dremotWWhRJTIjMytjNENoTClrayhiYiF5eEBwbjtPMXopWEkKemZ7eldWQGNlZDJIIVBF
N3ZrdW45SSEpYUhYKDNIKlY5YTQrTkd3fC05PHVyc0RDfCYxbEZHQlZ3fVAtPXFjPmtZCnpRMUwl
cHQ/cWJQKFMjR3lNQX1GclgoaTE8ZHAzK1lMYClNQ3dNT31HbU5sWF4xe15fZStyJUROdCVNJjgh
fCl9WQp6RCNEWD93IXdAaHcmX1RWZCFBOFpZeyFnQl8oQGR3TUF7eXAjb29yfWlgZV9LOTdXUGJ2
XkRoJTAqcn11d0U2LSYKeik1TFNBUiN8TC1SUGx2UTl0RXc4OT00cXJoemNqKzhjTktZPSNtPHJO
dTxKMXsobz5VO1IwRTVtbDElJV5ORVJJCnpsUiN4ZD5geUNiejFzSyZhTz5YKjdVIztYWVVJXzkx
eD0+Mz4lIUwlQlVAcEIqcG1tUnEkJVpsbWRxSUwydDdgTAp6Xm0pWTBrfH5+NmZBal9LdnMpKkVB
Ml42cFpYYloxKSV2MH55dGYxP1ZPaXx2NFUzazh3TUN9TCFYRzByZmZ0O3YKenduczdxMlJSUFR0
ZUFwPng5SEJseShBfVcle2xoQnR+aWAyJj48WiRqbGxiMERNfUltJEY/e2F2dENkOUVsfiR5Cnpk
fColMWBvU1lpMlYrSzM3cUU8Nk1fPm0paEhRK0h1KHBPYmhPY3lSd3ojN1FoTjdzOVVQQ3NQPGsm
U3tNJjVHcwp6KHY3Y2t1JV4zK290KCtYOzduZVdNdChXK2ElfHVDVFdzPEZqdSRAYjs3eFdCR2Np
a3ckOUYkQEZ9Y3R6dS1yfGEKeiNKJEdwdWs3PyUjRU9fJVYhTDRhPmMxeDBTeDBidj9nI3B2RmR+
Mm51fU59ZkxoUjJkaHpJaFI9WUVeaXhRdkN0CnpeNiVuYVg5T3xPQk87O0VBMjRyZjNeQXoyVWNz
fkZsbXstbVh6Zj8rMypPWiRPa2k3JDczUUIoVmlwa2RfPSpUQAp6RDwoZTV8MDlVKHQ1XklfY2hr
dXMrcmw9blpFUnlKcmI1SXgqXlV4YzhEaU1ueTNIKCZwPz9SWD1FY3pFZH1VenEKeihBenNeOFVu
NFBuWTZQRih3NWZveFMhYWpCMW53bFJQZDlgRUtnNExrYmp8PC05YkFsNVYoKzU5JjQ5fHViO0lZ
CnpIMG1ZfHEoIyVALSQ1RVBadTIyeG5UaGRTc0tUPnJXJCRPMTZGSVl4QEckTiVaNXs2fnJGb2BV
TntaX01XY3JIIwp6YWF3PzI1eHd4eyNvPTQlTzJCIVRIJFIqMkUpKipmSmote3FpJG1pd0RHT3px
dmQ0NT9aTU04Oz1MMkBjdXIxc0YKemRPNWYlUEcjP0l0eDZ8V3h2OERSJmBvKGFoPFQ9Q3pAI3Vr
UWBILVkmRnJkX3V9SU97TFBrejY4RE5XSEhRUzd+CnpyKExMWCpkVSF0Ql5lMCk2JHJnQVNMNWI8
aktBKz0rdHxqQWJjTiQkT0E5P0xZKEsmUitLPE5FaUAjNDdlK31AUwp6SG5qR1djREJLNDZXNmh1
dFIrS2xxUGp0Pi1HeTFmXj5pVUhaVSt4JVg1aWUhdyMtT2Fue31QMjgjSXM+KG5RKnYKelI8Nm5Q
TkE8KmozTyllaTxkNGVFVWpfM2F5P2h6Zz5FOGdUU0JlSyQrNWZTPU1YYkcmendzRyk3VnEjfm1a
OGgpCnpQPjxXSCtIe3NTJE0rdTZvNU19I3hofDMjJWsjX3pgeXF8I3JuQXkkRjg1NDdVbCpxcVlf
aFApbmQ0eE4tQXZDUgp6Uj5tM1d4b0tHTHZEVDF0RXsoSVlHeHtsMTZrUDZYZHsxNChmfHdYQHRu
cFpEUCslUUJ2XlhDcClhcjdzY0MwWG0KelE/aE8pKUIqJFpXYCRqcTtKOSY1UlcmWWtFTkhmN0cl
ayVZdWJPQD1QVjclLU1rVn0rXyolITBoLTBFOz58KmJ6CnpFWUQ3fkxlQFdLPEw2RXV5bnYoclBL
I2FZVW54MnxzRlJCQjVWd0p5TVE3aFJjeyhgWGZgaitjM0J8I2lhPGwrRAp6ITchRjchRihFOXVa
PFpRZXtQRXx6eFR4OHZ4I01fXi0wdWxrXzg5eHEjVD9YTm53bCE3OX1gPTdxR3xqano7Vl4Kendt
QkhIeShHaihiRyhuMXFDN14kZnk3LUlHYkd9KTZ9JWAjJjEpUTlZYndFcTlFe21xIzQ+OGlxSjM5
TVZofjEpCnpWLUw3UkoqITNDZTt7VTJBQ1EwbkhlenFmayEqVlMoaC0mNyNhOztASyk8KUJoMzE5
Y0ojUDkrSCUmPHQpJVgrMgp6WkJ6Yzc2dnU0KnNBPEU1dipjQD5gclRAWm5uU0Z0PzdvMmc4UVRr
LXZpJmZAVmdHSShjUkNOPEdjUkpJMUVhLXsKemlZZD0yVkJiVmJpNGNBWCkkZFJyZjQhfS0xdn0m
dGNNZjJZU3A1I25xeENLZklGPmxma2hoPTF2bHJ1X25FMXJrCnoqdGk4d3BRZWJsb2llUTRfKnxN
R1g0PlRxbUs9eSFhOVZWbUYxc1hwNTxgYDEzej9IQ3RYYGZWIykoQlc2QlBNbQp6TzU0X3grUCtu
eWc/XzQmWkpKMHMraEUkVnkpe2d7eys2fjdTZkQ8RWc2Xzx+N0slZjNDKDJxYXI7YD0ke1MjezkK
eiNmNGp4S0AoeytDI2I5Q3RTSTNXLWg+JTw2M2ZnOEg0KjFWR2Q1VHxWdk49TFdnYWRFLV9ve007
b0k2N0U+TUQ2CnpxN0x6ZlZ4NCpvPXJfcCRqJH57QkllSkZLeEopLVhlY15rKz9IZUsxSj1PbTMt
VHBwXzRXaiVJX2Q0OUdiWn4hMAp6WW9wczgxKDR2b2AxPyhMJWpaU3J3fkJkb20zY1FiVyRtKiV1
NVFmK18kZ3ZVdGE2PUtYPVAhfEtnWFJ2aCZONncKemh7O3B7Zlo0aThLd1VMMUw2N19lZGQ3bzI8
ZHBMdStzd0FsSXVqek5IM2BIVlQjZz1kbGdAQXhaK1ghSCZOIzxSCnpoTSR8Kkh0UnNoTWIrenxD
KFVEK1o0KXFtU09SJCEoUlcwQUt1RFdFRURvUiZaYXRYUzZaJCpSYCFFTHluWjxaMwp6bDhaIyot
bVd3MEYjZHc/cFZZelooK0ExZGNGOXU0bGUkY25FZXJoO1Y9PSNnRz8xMTs+KnVKU0Ria0xjZHha
N04KemZCITBtSkYyVXAza0xmKHl4UyE4eD4pO35jeXNsNExsXktGSzNrLXs0eld6Rl9oWk9YbFM8
K14xOFpeTj5jdnB2CnpTP3FhO29kazswVmNCO2BJTV5pOWhfUWZ3YzRqM2FxWiRQQjlNb3xnOGRJ
US0wUCY5KkotQzJ6P0RReXM8dD9MSgp6aSpeJjZGOFYrZVRJOT03XmYmJD50ODZ2RCNKY0lNcWVH
WnRwLVVjbFZiSXo5WTh6ZitrdnUkO3ppITVuQjhvSjcKek1qV04xPFpRKyNEZVU8T0ZmazZTTS14
YmF0RVZ4O1RXRzYzclkmJGNwTEp2QFE0dVM5cEJyIUMpVFJ3REojSTB5Cno5JjQtQ3ZUTFVAbXt8
Y2tpX1pTSVkoQUBIPz5pUXwqTCErMGZwMkNeZnFTPUFuQXFVa0pWUElIZnN9TERrNX5qIQp6Q05E
fSshLSo8fmRTQ2JzMldLYEh2NVhFaT9tdCRGKVdqPDlaVTx4NTglRlEkRDI9ajlTQ09ZSyZMJi1q
T1ghbHsKeld0LTUmcjk4QG84SX4hSlR2RChjbjJ7dFlte0ZVIXcwWjROcW9oZmpIQFZHc2k2eWhV
aClxazBCYDNHfEY3O3xfCnpTN3hiS3I8bWZCNkRRdyt3PHxnRTxtSitMVFdzI35PNVooc0Y8Zl82
M0dVQE14SndlOz50TE5aQyVCKXNrK353WAp6Sz5TKTUqdmdvTEZ6ZGclcm94TWdJRXItZDQ9PlUq
R0NtPntmPn1qS1drN3lsK1R1YmJlaipqeEhNUGVZKEEkQ0EKek42JVlNTHVtO2NpenZ9dEFsc3B+
VlZSTzIzVXoyLUt6fFlJKS07Zm9eIThzN2o1dGdUR2olUCRaUTFaUzspQUhYCnoxMzU+TWV2fmY1
Q1khO0M5Mlk0NjdKUlBaP0BGQ3NCS1d6ISNWVF44YFJ4YHklWGpwPGFRKVY/KmBMcG17c1k4fQp6
KnRLbSlPSEw3e2tJPEhkQ3drckxlZGMpWi1ZN0IzLTVGTlFLKmp2aXlRYE8ocWtVT2Awazl9Yzx+
an5iJHJgSHQKejY4SDgxNlpXI0xZOyMrdXElOEZ+bm5DbnAhZyg/PkEkUERWIVpXJUohM3dzaUVB
KUFrWmtSMXV2O20wTHNuWlVMCnpQdjBZTFBkajkoIVo1VUs3VFExflgoaTEpY31TLSUrUCU0QW45
UEc1TkdCM0glMUJDX3FtQT49RSh1JHFlRmd0JQp6cUhHXkdEeDdoQ0MlST8hR3JST1ZeNnJRIVll
MzNJOWp1Rlc3QWYpYXt7ZHdqME54OzUmcEg0QTAwMm92UERITGsKRlYxbGlIQXx3QysKCmxpdGVy
YWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRl
ci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3N0eWxlczEwMC5wbmcgYi9QZXJmb3JtYW5jZVRlc3Rz
L0FuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9zdHlsZXMxMDAucG5nCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjdiYzlmZmZlOWNjNzE5NjgxNzM5ZGM3YzhjYTFiYTRhYmE3ODY2YzYKR0lUIGJpbmFyeSBw
YXRjaApsaXRlcmFsIDM4NzUKemNtVis7NThVdkhQKTxoOzNLfExrMDAwZTFOSkxUcTAwM2tGMDAz
JFQxXkBzNk82Yz8/MDAwMDFiNWNoXzBJdHApCno9PlB4QC1BUDEyUkN3QyRUP3Y+Uk1ITD9KYyVa
MHcxe0lheUVxSDVHNEJ+LV5AZEF3czNXXjhGXmh7VUpZPDJfNAp6cGQ9X0RNdiY7cjVrVkFPNiVk
YUlmLXwkKE8rd3JWMFV7N1k2allFVEw9K1RFTFZUfWhjQTQkZWRzVk54cmd3SUMKej5pZyEpZXFV
eX50TlReRzxOeDEjbUNKUVVjaTRfPDVianNZaGQtP2I+YVh6a3tuZFE5NSZwaVM3TzFgelZmZDhw
Cno4X0g7YEV0TVYqRk1SKzZ1JH1zVnB6WkA5RSQjfVkmMH45fEBeRTxCUlpiWComJkdOfGVJOT84
PUR6ajNkUX5tMgp6ekY3O3glVX5DZHp+NFdFZT1GNXVkOVBfTGthezdFMWoxPERGPjdrWSh3b3x9
OC1HKFJtZ1k+bjQkdEBPU31qRHEKenV2KFZGJURFSyZ5JTs5PHJOTHQ5ejEyIShoV0duYkR2eU53
K35wI1c9OEptfSlZJGh7NiY1X2hAX3NXdzd7OWxeCnplaH5oNnM0KU16KiRianIqJUB5QkJiZFpp
YSlMcDRYRlg2eUZZb1BydmFrQ043TlUyJTNTPDA3e1MhViM2Zm5PVgp6KWkpZjNlamgmZiZIMitG
bFpofmYzT3ozWlZYVWBiSFJAbHJMUmNRQD98KVFrYihOMzQhbzNLJSpFWm5geWRIa0QKemtNM1VK
NDlzLTZVZHdgMWYyPGJOMGN7bHFOKnlNLSZUV0Y+anJEeF9VMXt6UV9kYilseyRObWd8Nm8zUERn
NkJsCnpAdjRxQGQoVzxrZG5yRz01I3wkeXlTR0lrd1MwNl4rNmxzZ1VOanM8JnZPJDxjcXdgOUxp
Q21+KXJLfDxTRXlgNwp6LTs0M2ZzSHk+I19HP2M5IU5xdCM/QkluWG1DRUNNOHFfRGlnI1k3WGZf
TlA/eyErc2F6eHozTCYzWWwpSkdxLXQKem0mZnNsJE9mcEo7ZGxHUHl7O3BfUTsxJHkzITxLZUVm
UVYod3B1fFE8amRYc3hWSUphJjs8VmtoSTZoVUdRV2ZvCnp2ZXAqVm0zal8oS1RhTVFAcWVRKzRT
SCtud1E9N2l1Ni1xeypPVkA8eHslcktTNzNsdEZHZTROemlTUlZYNCFKMwp6X0Fza1ZmSnZ6OWdy
Iz98OSRLTEdiKyYmPWZvJExZdXlPTihfeSZWVDtXS1o2Zz52ZXVlQzNJKjI2WktBUD5iYlAKemtL
YXd2LW12PHc2O0FNaGRKdnc3ZmZ6RmZHQylJQCp6XnFPPjdsV1A3amFLMnA9ako/KyU8PkAjQ1Yh
YU9XYzdyCnomJjhuTE4/bGF2KHJ6Q1pjbShMI0pwNjk2KDZ9TntJOFElXj1tT0cpZlpuJj4/ZDk/
X1ZQNUErUm42IyFpIWwmOAp6MTNSJXE+TjNPa1BaUG1BPSFIO1FrNXZgPHpOZik9JlVWblYpb01f
QmQxNE9kKTg4Kz5QaXoraEhDcXlpdz48T0wKemhrQU47R0dicVc4V3Z1NnomYylJMWhVTzQkX35U
ViEqXkZwXigtUWBCbEc3IXNiTkZaeCNhaFkoRmZlWU5fN08+CnpZbStjYGA4eCFEMmVhMShUTFd0
QmxjPCpMdU56JXB0RmxQRkR8K35YYFliJkIyQkR0KTJpKlRLXmtfKHgxcjl8VAp6cnskYD96TmYt
SGBXO2x3YXVlYzxoOHVUUHl1aj9QZDh8Y0hzT34xYzR6TCVKaGV2ITFjSEZtRUVSNVBRV05oSGEK
enpoNTNpdWkrZFI7PEZXMl84QkpKRT1DZzJCUS16Z0hYfTA0Y0BPSTxsfTleMHlpJDlEdHIrd2E0
YlN0Jnhxend4CnpIfi1ITHdxLS1MczE3eTliZkNybjwxPVc1OCg0cjYoT2JxMU9hLStBWCFyQDN6
fjltYzFoMyhsOT08VX16PFYqTwp6S3BydEs/YDJabV4mbCM2RHZOdyFUPGw8dEI3QGZnVWVDI31X
QiV0UDVMazZ5YWw0ZDNCKDg4b2pDckF5PTVSSSgKem9kTE1VVj0xRzRKTX1+N1hqMz1JRDAocVdA
XlRrY2IrRVlMU3NuIylVMyR6ZXljSEpPdmtsKHMzSCg5fUtTTXokCnpxKXpvb0xYRHwwZ2tna3c5
UTg2JXlncy1XeGM0PjglM1hAY2c1e2k2bGRGNzsxIWFLREstSC1vYXRuRm1EQjdoUgp6YTZkaT5B
Z2ptMjM7M15hVyZYajBaQ1QpRVlpUWdvK2BTJUBYVGYpVldoczwxZERXIzNXa0Y2cjdJWHEzU3dk
VG0KeitJaEU+TzMjbjhKbWpxMVBoMkB9RXtIfGV3OGRrWll2WWk+IWc/b2xGWjVGUjs0d04tWFZo
O1hDdXE9PHt5ZCpKCnpiYGYqailrMWlUbDtkVz4pQzY+bjhVcFVLIWJzXmQ5NmxueTk4e3g9TCNg
KGM0eyMxeTJuNXd2M0lsdEsxbit8MQp6NDNXPHBoT2Z7T2MtJVdgMnFpazR4MHk3PnRkcm5jOGJ8
OGdFZmF3dCViMT82e0d8PVklX1pZdUdfUVRCQVNsaz4KekF0OUlLUXBOLXRfUG16YVR7WWJuQ1E7
R2hlRUVmMDJtfm92UFphVjRATDl4aCsjSml1QGZTIXI4MUI2Zjw/Yl9yCnp5aF51WGVuK2t0MyUx
WFQ0U31SUT0wUjZGYU5JWkgkfFRfUCg7NHBOSU5wdD1WPllCQl5veS1MaWBnTH5Jdylaawp6amtO
Wj5CcFZ3Tm1nJWdNQFI7Rko+RkthUyZ5akYxaHp4KmozTi1AeEc/UXB8anFeTXF3JGtFeVZlYm5W
OCo7VHkKeld6bDN5Zj1GdGNLJHUqcSk+Ujcre1lEM2xkcjw9VCs9R3B2aT4wXklhUnB7fWEpSU9j
OUkoYzNkVXM8NHZSMD9FCnoxe3N5TFhDXjhPKD80bEh8TShwXj9qWlZ7Z3lZODQoUyltaTZYelZi
ZFRCYTRmfVNkdVZKWSVEbDFVRWp2bXhQOAp6akdqRyM8aFgmV3U7cEdyLTVoRHtMQCtFUiU7emkj
UmUtU14yVU98PWF3VjVJbVhRclBsMiUjYWk1Nzc4dW5oP3wKenMqZDg5KVRxcCZ6UG19TWVqNHdL
JD9ePU1GWUxmN1Z2Wk5CdmV4VXx6e15PTFJWY2s3NlN1ZEtXPCN1Xj1wLXUmCno4UFl8S1I0UWI/
alBkeDg0UHBAQk4/cFBPKzlieF9lTnA0fj8hcEROSSlsMjV4eHdzZ3BwKW91NXhoV0FzZDRUdgp6
ejRCV0RMNEA+OGQwY1R3a08rPzFPI09saXc2d093R3ZsKCNZaG40Vio/M3V5PXNAZWAjV0gpTzRs
dWdNJT4tXnQKeiUmPnJGP21fbz82dDlaUS1EbmpiPkpsTkNZdX5OfDdpcUxMcWpEfX0xISlSYm8k
ZTYlcEtRdHZ2c3NXeWp8Z29MCnpXe3hsX3Y2UCQodmFWZHBreHBlQE1BdjRoZUtRZFZAYUJ2ZlNS
JWIlb0xiNXQ1VXE9P25hWjxIbCgkN01wODEqeAp6ZStIS1pDQms7bjdVQnBKNTlUcDFweEA9MWh7
SihVez5AUnR0LSV7aClZJTgyZVkoWkxSVEFyaEdCVyRVUipjQDAKempvWWdaViR7R3tEUmBDJj1M
V1lEYUl1aldDWCh4NTktUmxzRVZqKSRtR3VNcTI1cWpUZHIwVCsmKmpDc1VLZD9sCnpFLTQlI257
blI8bCgtcGV4fV9gOzszU3RUcGleMXJhckojITJuMlp1NWg1ekdQYyp1Vkw5dzF4aWpEVT1tJUo/
PAp6XmlRRCkkYT9DJHRmbFNCdEY9fXdPejsjeDQxanZCKkdCazxyR1d8aEhITz40amd7NyUhMXc9
PjxqVHBNRylRejgKelZLZCg5PUIhdmw3VnVMa29yWEpJO2kwKFoxaFZ0Ukg3QShzM3VybSNXb1pM
TF5rVEJldEY7SVlgPy1scjZUY0k3CnphdjwkOXk0ME0rJDw8NiY1NWhBIzRgKWVNZDleJTlTZWoh
ezEmNV4mJFJlamFUT0RRd2pjUi1xJDcrTEttZVRaYAp6U0lhJnVCbmZja2IqUmdjZVJGaUgxSUNV
bGxyMD1PYE9VI0FvMn1FWWlgJWcoZVolbGdefEh6KG9zYEZ7cUVscU0KekVqcStnTGRIc01yVjV3
SCNwTjVkVj5DMVVaWmludzVAfldBJEQ9M05MXkpNfHpPS0t+JGZpNj80OCRRLW4jKns9Cnowe05o
WVlrOVNWP316OTM2anZvSDFWVFRgcHxfP0U2UFRYTFIjOERUeyNFQTNOOH4xOG0+UEBlM1AlbCl7
Sn41eQp6PHsye25LUlM/MDEhfmtacyQ8YjNZZlhyVitpd0t3JWF9bzlAYytZdzNec0dyTDxsNiM/
cUs0UUJ3fnQmbWRZSEEKenBScEt5akIlO0k8ODIyK0BvRXhTI05yLU5CXnBaMmhmQy1rUEp3aENO
bDd5ck5pcjJRRDFGNFdxKEd5eDx9JW0lCnp6N0pzVXhPUFJ6c3ByPG5zbDd1T2kxakR5MDAjQHwh
O0gjME0rVV9KTy0lM0JBRXM5aTAyd28+R3YoWF9rMCE2Tgp6TSg5IypMaTt6YChnTT9abjNzNjI1
UWY+MFFHWFp1RnJhLTVfdVFON2ZZRD9DN2ZLNjkoSGpHQkB5JUdTOzdpUlEKelh+IzlvXmRKeXkq
aE5OP045UV9keEQ8e2VEOUIrQFFaPDlMSHJHfHBoZH1iU2Q5akBgVG5hfTtNS2d8PTh6emkrCnpG
elNwNDAkZlMxTHF9WFYzTGNgZ2E4eV5YQ3xiYWY4ZkMtTkpDREo5XyU9fk5OcncjdDlOOHdDN0Em
OThFMWtgQwp6JmBhO2RLOysxPWIqQkROb2laPlhMKCtHK0hHWXZgVzArcGNUPGRhUV98ZmBLQWdS
MjdsanQ9UEotfmM0TjlKazwKekRVUk83Xip5YG9RcVImRyFgfTU9YkklbWJrK0d3a3NFRV9hajxD
XlpfQEomX2N2MSthKEY4YDsrci1jdWQ5WUE9CnpDRC0pSyYlYDBhZj12V35IbTxvekl2VVNMQyhL
RWtCTSppMVUmZyRyNiZ8O0ZiYyYlWVowQDhMM0thRkVBZHwqNQp6TjUoPX1RUE0mUnprYTVud3Ft
MkhQZ0pLNFJKa2VYKjA/emAoZ0l2a0FHUz5RPnBHZ01pWGU/WT9HWnkwRmBCMDwKel89eEheYjhS
KzImMylKSiM0VzBka1lTdWAwPkxnbj47VkY0JkohX3x3NTh3UE91YilnLTU8eCRiKHs/V1NDJWAm
CnpzX0R1T3I0LTBrQlIlVWY4dT9NYHc+RkxUK3VjdmcrYWlPJFQmQ15+anB2UklrcX1+dTgwN3FS
MChVZEhOfStNKAp6ISV6eWA+Mj9KVm5xbDwqd1hOVGtIYiktS0J4KEQoaWc2MlpPQyVOZjF8KSh5
Sjh+IUl6SyhKUHhDLVVnVDYyc3wKekdVRlg9Uy1KKWgxaHBvKks3dGVOV3I0SDhvdU9ybFZVU2dm
dnM7b21TbEQ8aU1YNXZ6NnhJR25xX35WMm81PmlDCnp1RkYocUZeRCFFZz1Gb21LP2V4ajRTMmw/
Um53U2gqQzw0aGJyOCp9aXF8d1MzeCg/akghMHpWTSFnPFdrSTIqcgp6WDRTaXFSeSZvUXhyKFJV
V0ZHTkpYUnlzWGBqcEhhUm4xT1p8QzhLZ0EyQVZCaCEoZ0lLfkNvfnJRT3tDckVgN1EKemI1bXVZ
Skp+IXR3e3VSKClDfUMyakxOenpIYE5BcVFaeDNwKWV1NDBvWHFQZm5iZzhUUEp7Xz1iNW42Um1s
NjlzCnpDNmpASnhEJSN4UStaNzJEVmZ8WkNneXx2UDslMkAjSWNKIU5xUCg3Tkl1VWtYO0dfTkRF
S2AkVH1HTnlHTyteSwp6QyZXKiZwOythVm57RVM8UC10ZlBaSEpAbGhMTmxBcV9Ve216cGM2SEl2
aHtRKz1qd1Qzdld9V3I9ZX1oUDNQZnEKek82RippMSokKCtQPipaVkdAMDFYX0lZRDU1ZnEqKEEl
YUZKU0w1TX5gVz49S2EhVH5IOVdmRWFHOz0xO1p2eGpeCnpMTHA7Qj9zN2A+dj5nfjY4b019WHhS
PHpaeXV9TFZSQWQldCFLNTU5MiNEd1o4SlojTVREVmROc0BNcGBeQCFQTgp6R3FDYmomYCk8PGNe
YnZOKDhyVyg4Y311IVZQRTNiO1pWQ0ZnWlNAN1lNQG1PYWpCJSo2QUhTNjkleWlwKyVoJEYKeihZ
KXhwTDUrUV87YlBNZTR3bDFwLT9CP2szOTUpfGBzfCRrblBIUSpzVk54ODdPb1UwKCsoaFcrS3VN
SHplPnV6CnpOS1IkejRpfnw9d3MzN1dYem9Wbj9OVmNuN090eCRDfl94ZVNXWj5Adld5WUwxfXkw
ODI3KHo2I0pKKUh8SlpzOApsQjdmeGl1fH4yaGkwLWYre3w2cWxXIStKeUwyJj44MDAyb3ZQREhM
a1YxaStWVFpSQXQKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1BlcmZvcm1h
bmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3RpbWVsaW5lMTAwLnBu
ZyBiL1BlcmZvcm1hbmNlVGVzdHMvQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3Rp
bWVsaW5lMTAwLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iOTgzOWY4NDQ3MGJmMWYyM2RiYTAyYmIwMDk0OWNl
MjU0ZjA4MjkxCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAyMDM5CnpjbVY8VDJNRzl5UCk8aDsz
S3xMazAwMGUxTkpMVHEwMDNrRjAwM2tOMV5AczZhTj9DejAwMDAxYjVjaF8wSXRwKQp6PT5QeCt1
fU1UaFJDd0MkVH1eMFFSVE8/eTF6aVpEMyZDSHxnfDdWUk1xSWNTMSN1VCNiV3cySWgwPUFHQntO
QnIKek5OezZ8Ynp4VjYwaGEtWmFaemNfeXJmTiRXRmJUbGxUdVFsbj9SdkJwNn1lNWtpMntEbj5S
RD49Ylh2Pzs0emMtCnomQWEhV0A3PSVpY2F1YXI9S3B2JG5PJVFCbk11emt0PEg0UE58JXkkZFkh
JisoKVModSteNWZuPyY5d3x7Q3w4OAp6LUhZR2d3fEVBZzYpX34qPm58ajs9QH1CfSl0KyM+PHpE
bm1KZSRqKXZMWWxCWm9mZi14fHA7KCt2Tzg1O05taC0KekhyMyVvPExqO0c9dUpJRzA9WmNgMzFN
PD5hLUM0TzZWd31DcVEpOyQ7fTFwP1RLWFMtPygmPTZQU0B5amcrNzBCCno3a14qdF58YW1JeWB2
Q3c7T2E8cW9tazl0VVo7aiQ9fW8+eCROUFdYQjtMNnxwSHM9KWByRkM7LSVrfVQ2WmhnYgp6X15v
QCFsNnorMUAqaUBZUVROSHw1IStBR280UDteZHNOYGYjNjhST2Q3Z3hESV9ZKiNtMGxrXzZWRkIm
dUI+QTkKejt4PHJRT3J5Ml84NG4kVThAeGVGKD1VXis/bVM8NjlaQEZBTWpad1ptO1oyXiU7RDFk
dDVvQCkzJXFzTFghLWU7CnpudEcheXNNRFpjZ1NNZktDTlI3NFk1cThrYVhHIUxkUipyRGpfUX5A
LSUlVVVSPC0hMV44ezZMZSF3SiZvJTFWWgp6ZE9HVXI+WVVmNmQyWUtaVT50NkJac1pKNGY3MDBk
a3JeVTlWeU4haWg5RUlGOGt6cUBFTnMzT3RTdDVjP01eSEMKelpzJHB9V2J9YkhwZT49ajRQKmRX
Rz5WeXhjYz56SmZ2JFh5dGBFJTw7cT99MzZTcXd5V3NoYWozPm9QTVJFWTxICnpwMFBVN2lhV0hl
bUhyd1N6ODxoX1lWUjNnR09peytiUlZtJEQmMjFQOE1AeGZUJkY4OV8/UGJFUDlxJjZyTExhaAp6
PThVflNtdT1Qa3ZYYnlXPkg0QF5Vdkhye2hsYTFwPU09MFlxelJsU0BBUWklTXZ1a2BWTiQ1PShx
cz09UmtyJSMKemVNVnF1K1lsTFEyPGVqJlNgdF5YUGwwa3hFXnM8JjVOWmVrKnUpJnpKZUNTcGhY
ZnxAaE18Zk9fdXxTRWVROWJJCnpEQTZSezZxZEYldUJPWm87I09hKXFWQjV7Z2B9dnBySHpyMmVU
RihoU1oySVd4aEhDZyN+VHlibyp8ZX1fM1hlXgp6NjJoYDA4SHM5XlFTQitQaiFETCkyS0V7ejMx
SnpFZHo5VkxFUldLdjNoUWNSaWJCPGRJRUFGTlooQTdkTEN6c1QKenUkdCpwcHtwaUBoYzEkdFdH
eC1hSyohITg5Oy1pVUJmfHRDT3AwTFNme2NyaTBsJXJOPjV+NmVZM1p7OzJ3TlV+CnpuSEtXPGZg
Z2RmSjElUF4hd2V6KHFRZ2UtUDRKOFBLVnRYSmo3UTxuPDZSXn5nZnVUaCoxMngwQE40eHFmIX1L
LQp6IXhTTS16U280Jj1VbVFrbUh6SlFVPTthSFN0a1V0bHBNVGVfN0Q7dmNvWnMhRE1ERHpmYF9D
UzNWfDRqPzJUfS0KempEKGE2JGtkK31FPXRVOGR5fX51VSF3XmsjOTNWKmN8aytSJCQpbSFUYXFu
bkMmTUhtSlF8VH55PHpMOV84anFjCnp7YF8lMTU+Z1JkQ2A1TWdibXF0bmZ8WUNUKjFNNkFpaCVm
KFQ8ZEUpe1ZVVHU/cEcybDZBOV44YGpsXmxyUlpQPQp6VnoodFBidDVvSTJwfW1PSWdUQ3lfNVM+
RUFyZXdDSU9aYHNqfVJCVjM8PXBERzhHQV95b1hFKWBAWFpYRkEqWUYKekJPJXAtcWt8PE14OW5J
MyF+OEl6JEJ+ZkgwMnpCdTVTWTgkPjJJRDktVm4/WiFveWFeaTNEN0B0VUFYQypAfWVKCnpNI3hy
MV9NM15IYWZlaiFrJnYxUSQobFFgN3ZVVUokQ2tWK0g0NWAleDtgS0NTfk49dFdQUUFjPj9mWV85
WjZqMwp6QlZASCg0VTc7JXZkJWdfTF8qWE4oJiYoTiFVPlV3dGVzMmBTJk18ISk8ZjIkTnhpWFVG
QTQ1anheN28rdCFVPXEKek5EdFplbSVUMi1yYGU2Nlk0e3QlPippR19XKVcxSzcqe1R1TU5xa0RU
PldrcUxHYDxGMUM/MD40T0dUV3hRMlUzCnp6PVg/ZSo+IVItaUNpWktNfkxxUjFYcT1hWUIxMFok
Z3JjRk5lcHo5bzRAczxSYWE3ejgwYnBzU1RwSHRaNFFOOwp6dChpNU87UnhuWEpSSEdoej5ZWi00
JWwoTSM5VDw1REdVfFQjX1MwfXA5b1pwRDUtWjA4fXctfkVaUGk0M1gyQWUKekJAUXN1SjRRJHgw
TDxOYSotfmxeNkJzTUMyRDIkN3BOUl5gRiRmdGFgM3p0dkooR1NpJTFGPHx5fklXV0d1MD85Cnpm
ZipCR0JnTE87bCR6cXRidk59JUYhY15xV2hjUXJXTGJCYlNlLXFpc3grfkhAPGh0JjBHV3RxaTxG
Zn04Qm07Ugp6VHdte35JQE5kfDtTPD1WWkF6e1JHNkg5YmwlOStxUDxtWDJxTWxMbmFUUzJWMTZ8
YVJRVHVAfGVjJXxNUl9BVVUKenpJcTZxOEIpdVVNfH4oZDZzJDN6alZjWldKMHZDTipnUCF6Ozww
JVJBUmE4Sz13UWh7Oz9iKiRqJFo4fTkheysyCnphTjw2UzlOJiEtN09XbEw/ZG9qb2Awa15LMml6
K0pseFUpc0lBYitLVVVeTV5VI0pVUWJ3cTF2TXImSnxxT2pJMwp6Ji1ScXZ7NFU/fmtjNWs2NlhQ
KC1NQT8hQHA9NFlkK24mKWhVPiQ/V2E/bzNNKmxXbCQ5UGF1XlEoSHlRNVQxIT0KenlPNG44IXU4
QGRqQjRyQTI8SkYpQzRYR0AxYVk0fEhhSCVTZitQe1NJIXdxbT8mV0EjYG1LQSRsNnoqc0BfRHxh
CnpJIzBCdEFSbm5qNHF7bWskLSpTQEs0OH0re359Kng8T0BMKDdydX0/ZyNEQVpvYjVXV1hCaGs8
OUpvM2JeXyFYbQp6dS1odHBpM0pEbSN4NCp7YnNGZzJJcUE2NmQ2USEje007WWFVdEF7MjR1dTRx
YlU8OzNjc3BvUHYoZHEmNUoxbncKenYkPjR1czQrWWN5TiFUKW12TGcrUDBYQjBiK2VhUllUcXBz
YyhKaEdgP3BQWjU0JihxXktiRXQhI0hyZ18jWDsqClZaKiVheWNqRXY2MDAyb3ZQREhMa1YxbVBB
KUVOSygKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVz
dHMvQ2hhbmdlTG9nIGIvUGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYjQyNjgzZjUy
ZTI5NDdlNDJjZDYzYzI2NTU0ZDIyMjRiMjJlYTAwNi4uZTRmYjk3ZDZmZDI0OTAzNjNmOTFlNDk2
ZmM5MjBlOGRhN2UyNzJkMyAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cK
KysrIGIvUGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NiBAQAorMjAxNi0w
My0wOSAgSm9uIExlZSAgPGpvbmxlZUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGEgbmV3IGlt
YWdlIHRlc3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE1NTIzMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFRoZSBpbWFnZSB0ZXN0IHJlbmRlcnMgUE5HcyBhbmQgbW92ZXMgdGhlbSB3aXRoIHRyYW5zbGF0
ZSBhbmQgcm90YXRlCisgICAgICAgIHRyYW5zZm9ybXMuIEVhY2ggcGFydGljbGUgaGFzIGEgbGlm
ZXRpbWUsIGFuZCB3aGVuIHRoZSBsaWZldGltZSBlbmRzIG9yCisgICAgICAgIHRoZSBwYXJ0aWNs
ZSBnb2VzIG9mZnNjcmVlbiwgaXQgcmVzZXRzIGl0c2VsZiBzb21ld2hlcmUgb24gdGhlIHN0YWdl
LgorCisgICAgICAgICogQW5pbW9tZXRlci9yZXNvdXJjZXMvZGVidWctcnVubmVyL3Rlc3RzLmpz
OiBSZW1vdmUgdGhlIENTUyBib3VuY2luZyBQTkcKKyAgICAgICAgaW1hZ2VzIHRlc3QsIGJlY2F1
c2UgdGhpcyBvbmUgdGVzdHMgdGhlIHNhbWUgdGVjaG5pcXVlLgorICAgICAgICAqIEFuaW1vbWV0
ZXIvcmVzb3VyY2VzL3J1bm5lci90ZXN0cy5qczogQWRkZWQgaGVyZSBhcyAiTGVhdmVzIi4KKyAg
ICAgICAgKiBBbmltb21ldGVyL3Rlc3RzL21hc3Rlci9sZWF2ZXMuaHRtbDogQWRkZWQuCisgICAg
ICAgICogQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3BhcnRpY2xlcy5qczogUmVm
YWN0b3Igb3V0IHRoZSBwYXJ0cworICAgICAgICBzcGVjaWZpYyB0byB0aGUgRE9NIHBhcnRpY2xl
cyB0ZXN0LiBDb25zZXF1ZW50bHkgbWFrZSB2ZWxvY2l0eSBhIHB1YmxpYworICAgICAgICBtZW1i
ZXIuCisgICAgICAgIChpbml0aWFsaXplKTogVGhlIG9wdGlvbnMgcGFyYW1ldGVyIGlzIG5ldmVy
IHVzZWQsIHNvIHJlbW92ZSBpdC4KKyAgICAgICAgKGFuaW1hdGUpOiBSZW1vdmUgdW51c2VkIGxv
Y2FsIHZhcmlhYmxlLgorICAgICAgICAqIEFuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNl
cy9sZWF2ZXMuanM6IE1haW50YWlucyBhIGZvY2FsIHBvaW50IHRoYXQKKyAgICAgICAgbW92ZXMg
YmFjayBhbmQgZm9ydGggYWNyb3NzIHRoZSBjYW52YXMuIFRoYXQgcG9pbnQgYWZmZWN0cyB0aGUg
dmVsb2NpdHkKKyAgICAgICAgb2YgdGhlIHBhcnRpY2xlcy4gV2hlbiB0aGUgZm9jYWwgcG9pbnQg
aXMgb24gdGhlIGxlZnRtb3N0IHNpZGUsIGl0IGlzCisgICAgICAgIGJldHdlZW4gWy02LCAtMl0s
IGFuZCBzZXQgaW4gcmVzZXQoKS4gV2hlbiB0aGUgZm9jYWwgcG9pbnQgaXMgb24gdGhlIHJpZ2h0
bW9zdAorICAgICAgICBzaWRlLCBpdCB3aWxsIGJlIGZyb20gWzIsIDZdLgorICAgICAgICAqIEFu
aW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9kb20tcGFydGljbGVzLmpzOiBNb3ZlIEpT
IHNwZWNpZmljIHRvCisgICAgICAgIHRoaXMgdGVzdCBoZXJlIGZyb20gcGFydGljbGVzLmpzLgor
CisgICAgICAgIE5ldyBpbWFnZXMuCisgICAgICAgICogQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIv
cmVzb3VyY2VzL2NvbXBhc3MxMDAucG5nOiBBZGRlZC4KKyAgICAgICAgKiBBbmltb21ldGVyL3Rl
c3RzL21hc3Rlci9yZXNvdXJjZXMvY29uc29sZTEwMC5wbmc6IEFkZGVkLgorICAgICAgICAqIEFu
aW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9jb250cmlidXRlMTAwLnBuZzogQWRkZWQu
CisgICAgICAgICogQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL2RlYnVnZ2VyMTAw
LnBuZzogQWRkZWQuCisgICAgICAgICogQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2Vz
L2luc3BlY3RvcjEwMC5wbmc6IEFkZGVkLgorICAgICAgICAqIEFuaW1vbWV0ZXIvdGVzdHMvbWFz
dGVyL3Jlc291cmNlcy9sYXlvdXQxMDAucG5nOiBBZGRlZC4KKyAgICAgICAgKiBBbmltb21ldGVy
L3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvcGVyZm9ybWFuY2UxMDAucG5nOiBBZGRlZC4KKyAgICAg
ICAgKiBBbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvc2NyaXB0MTAwLnBuZzogQWRk
ZWQuCisgICAgICAgICogQW5pbW9tZXRlci90ZXN0cy9tYXN0ZXIvcmVzb3VyY2VzL3Nob3J0Y3V0
czEwMC5wbmc6IEFkZGVkLgorICAgICAgICAqIEFuaW1vbWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291
cmNlcy9zdGFuZGFyZHMxMDAucG5nOiBBZGRlZC4KKyAgICAgICAgKiBBbmltb21ldGVyL3Rlc3Rz
L21hc3Rlci9yZXNvdXJjZXMvc3RvcmFnZTEwMC5wbmc6IEFkZGVkLgorICAgICAgICAqIEFuaW1v
bWV0ZXIvdGVzdHMvbWFzdGVyL3Jlc291cmNlcy9zdHlsZXMxMDAucG5nOiBBZGRlZC4KKyAgICAg
ICAgKiBBbmltb21ldGVyL3Rlc3RzL21hc3Rlci9yZXNvdXJjZXMvdGltZWxpbmUxMDAucG5nOiBB
ZGRlZC4KKwogMjAxNi0wMy0wMyAgSm9uIExlZSAgPGpvbmxlZUBhcHBsZS5jb20+CiAKICAgICAg
ICAgQWRkIGFiaWxpdHkgdG8gcmV0cmlldmUgcmF3IGRhdGEgZnJvbSByZWxlYXNlIGhhcm5lc3MK
</data>

          </attachment>
      

    </bug>

</bugzilla>