<?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>9121</bug_id>
          
          <creation_ts>2006-05-26 00:17:40 -0700</creation_ts>
          <short_desc>REGRESSION: [Incremental Repaint] DHTML movement test failures</short_desc>
          <delta_ts>2006-06-20 09:51:29 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>https://bugzilla.mozilla.org/attachment.cgi?id=174236</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar, Regression</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dave Hyatt">hyatt</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>mitz</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>43589</commentid>
    <comment_count>0</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2006-05-26 00:17:40 -0700</bug_when>
    <thetext>Run the test at

https://bugzilla.mozilla.org/attachment.cgi?id=174236

Two of the tests fail, and the red block doesn&apos;t move at all.  In shipping Safari they do.

Note in both shipping Safari and TOT that some of the tests have a 1 pixel red stripe epaint glitch at the end of a single test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>43874</commentid>
    <comment_count>1</comment_count>
    <who name="">mitz</who>
    <bug_when>2006-05-29 10:07:29 -0700</bug_when>
    <thetext>I played with it a little and found out that it&apos;s relayout that stops happening. There seems to be some race condition leading to the red block and its ancestors up to BODY being marked as needing layout while HTML and above aren&apos;t.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>43880</commentid>
    <comment_count>2</comment_count>
      <attachid>8592</attachid>
    <who name="">mitz</who>
    <bug_when>2006-05-29 11:39:44 -0700</bug_when>
    <thetext>Created attachment 8592
Reduction for the layout issue</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44180</commentid>
    <comment_count>3</comment_count>
      <attachid>8629</attachid>
    <who name="">mitz</who>
    <bug_when>2006-05-31 15:08:13 -0700</bug_when>
    <thetext>Created attachment 8629
Sketch: remove positioned objects from their old containing block

The layout problem stems from the following situation: if object C is absolutely positioned, its parent B is static, and B&apos;s parent A is relative, and then you change B to be relative, C isn&apos;t removed from A&apos;s list of positioned objects. The patch gives a very rough sketch of a possible fix. It doesn&apos;t address the other direction (B going from relative to static), which should be easier, it has obvious deficiencies (indicated by the FIXMEs) and it doesn&apos;t mark the positioned objects for layout, which it should.

However, I am not 100% convinced that this approach will also fix the repaint issue. It might be easier, and acceptable, to simply change Node::diff to return Detach upon changes in position to/from static.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44183</commentid>
    <comment_count>4</comment_count>
      <attachid>8629</attachid>
    <who name="">mitz</who>
    <bug_when>2006-05-31 15:45:12 -0700</bug_when>
    <thetext>Comment on attachment 8629
Sketch: remove positioned objects from their old containing block

This is lame even for a sketch... I should yank only absolutely-positioned object, not fixed-positioned ones.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44192</commentid>
    <comment_count>5</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2006-05-31 18:07:34 -0700</bug_when>
    <thetext>I wonder if it would be useful to figure out what checkin broke this.... we obviously used to do the right thing, which makes me think there may be an easy way to fix this bug?
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44199</commentid>
    <comment_count>6</comment_count>
    <who name="">mitz</who>
    <bug_when>2006-05-31 22:39:43 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; I wonder if it would be useful to figure out what checkin broke this.... we
&gt; obviously used to do the right thing, which makes me think there may be an easy
&gt; way to fix this bug?

The reduction (attachment 8592) is broken in WebKit-418.7 as well (and in the Oct 1 nightly). The test in the URL works in r12668 but not in r12724. The most likely candidate in this range is r12681 (fix for bug 7095). There&apos;s also r12712 (fix for bug 5813), but I don&apos;t think it&apos;s related. I&apos;ll try to verify that it&apos;s r12681.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44260</commentid>
    <comment_count>7</comment_count>
      <attachid>8643</attachid>
    <who name="">mitz</who>
    <bug_when>2006-06-01 10:10:37 -0700</bug_when>
    <thetext>Created attachment 8643
Fix for the layout issue

This passes all layout tests and fixes the &quot;freezing&quot; regression, but not the 1px red stripe repaint issue. I have a theory about the latter, which predicts that you have to detach() for this change after all, but I still need to investigate.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44660</commentid>
    <comment_count>8</comment_count>
      <attachid>8696</attachid>
    <who name="">mitz</who>
    <bug_when>2006-06-04 11:51:55 -0700</bug_when>
    <thetext>Created attachment 8696
Patch for both problems, including change log and tests

This patch fixes both the &quot;freezing&quot; and the red 1px stripe.

The repaint test shows excessive painting being done. That&apos;s not a result of this patch, though, so I think it can be left for a separate bug. The same goes for the buttons in the original test showing a repaint glitch when their content changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44663</commentid>
    <comment_count>9</comment_count>
      <attachid>8696</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2006-06-04 11:59:59 -0700</bug_when>
    <thetext>Comment on attachment 8696
Patch for both problems, including change log and tests

This check:

if (isRenderBlock() &amp;&amp; (!isInline() || isReplaced()))

is probably overkill.  The only time a RenderBlock becomes inline (without being an inline-block) is when it&apos;s a compact or run-in.

I&apos;d just do:

if (isRenderBlock())

instead and not worry about optimizing for the compact/run-in case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44689</commentid>
    <comment_count>10</comment_count>
    <who name="">mitz</who>
    <bug_when>2006-06-04 14:00:36 -0700</bug_when>
    <thetext>I&apos;m going to see if I can make a patch that fixes bug 8057 as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44782</commentid>
    <comment_count>11</comment_count>
      <attachid>8716</attachid>
    <who name="">mitz</who>
    <bug_when>2006-06-05 10:21:23 -0700</bug_when>
    <thetext>Created attachment 8716
Revised patch

I changed the condition as Hyatt&apos;s suggested. I also fixed a bug in removePositionedObjects where it advanced the iterator after removing an object, and added a return in removePositionedObject. This version of the patch fixes bug 8057 as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44784</commentid>
    <comment_count>12</comment_count>
    <who name="">mitz</who>
    <bug_when>2006-06-05 10:22:28 -0700</bug_when>
    <thetext>*** Bug 8057 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44862</commentid>
    <comment_count>13</comment_count>
    <who name="Alice Liu">alice.barraclough</who>
    <bug_when>2006-06-06 09:47:39 -0700</bug_when>
    <thetext>&lt;rdar://problem/4575254&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>45009</commentid>
    <comment_count>14</comment_count>
      <attachid>8716</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2006-06-06 12:37:23 -0700</bug_when>
    <thetext>Comment on attachment 8716
Revised patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>45038</commentid>
    <comment_count>15</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-06-06 20:09:03 -0700</bug_when>
    <thetext>Committed revision 14757.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46435</commentid>
    <comment_count>16</comment_count>
    <who name="">mitz</who>
    <bug_when>2006-06-20 09:51:29 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt;
&gt; The repaint test shows excessive painting being done. That&apos;s not a result of
&gt; this patch, though, so I think it can be left for a separate bug.

The proposed patch for bug 9497 fixes that.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>8592</attachid>
            <date>2006-05-29 11:39:44 -0700</date>
            <delta_ts>2006-05-29 11:39:44 -0700</delta_ts>
            <desc>Reduction for the layout issue</desc>
            <filename>9121 reduction.html</filename>
            <type>text/html</type>
            <size>1139</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">PGh0bWw+DQo8aGVhZD4NCiAgICA8dGl0bGU+PC90aXRsZT4NCiAgICA8c3R5bGUgdHlwZT0idGV4
dC9jc3MiPg0KICAgICAgICAjdCB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDIwcHg7IGhl
aWdodDogMjBweDsgYmFja2dyb3VuZDogYmx1ZTsgfQ0KICAgIDwvc3R5bGU+DQo8L2hlYWQ+DQo8
Ym9keT4NCiAgICA8cD4NCiAgICAgICAgVGhlIG91dGVyIGRpdiAoZ3JlZW4pIHN0YXJ0cyBvdXQg
YXMgcmVsYXRpdmUuIE9uY2UgeW91IGNoYW5nZSBpdCB0byBzdGF0aWMgYW5kIGJhY2sNCiAgICAg
ICAgdG8gcmVsYXRpdmUsIG1vdmluZyB0aGUgYmx1ZSBib3ggbm8gbG9uZ2VyIHNjaGVkdWxlcyBh
IHJlbGF5b3V0Lg0KICAgIDwvcD4NCiAgICA8cD4NCiAgICBPdXRlciBkaXYgcG9zaXRpb246IDxi
dXR0b24gb25jbGljaz0iZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JlbCcpLnN0eWxlLnBvc2l0
aW9uPSdyZWxhdGl2ZSciPg0KICAgICAgICByZWxhdGl2ZQ0KICAgIDwvYnV0dG9uPg0KICAgIDxi
dXR0b24gb25jbGljaz0iZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JlbCcpLnN0eWxlLnBvc2l0
aW9uPSdzdGF0aWMnIj4NCiAgICAgICAgc3RhdGljDQogICAgPC9idXR0b24+DQogICAgPC9wPg0K
ICAgIDxwPg0KICAgIEJsdWUgYm94OiA8YnV0dG9uIG9uY2xpY2s9Im1vdmUoKSI+bW92ZTwvYnV0
dG9uPg0KICAgIDwvcD4NCiAgICA8aHI+DQogICAgPGRpdiBpZD0icmVsIiBzdHlsZT0icG9zaXRp
b246IHJlbGF0aXZlOyBiYWNrZ3JvdW5kOiBsaWdodGdyZWVuOyB3aWR0aDogMTAwJTsgaGVpZ2h0
OiAxMDBweDsiPg0KICAgICAgICA8c3BhbiBpZD0idCI+PC9zcGFuPg0KICAgIDwvZGl2Pg0KDQog
ICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgICAgDQogICAgICAgIHZhciBD
dXJySW5kZXg9MDsNCiAgICAgICAgdmFyIHRhcmdldD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
dCIpLnN0eWxlOw0KICAgICAgICBmdW5jdGlvbiBtb3ZlKCkNCiAgICAgICAgew0KICAgICAgICAg
ICAgQ3VyckluZGV4ICs9IDU7DQogICAgICAgICAgICB0YXJnZXQubGVmdCA9IEN1cnJJbmRleCsi
cHgiOw0KICAgICAgICB9DQogICAgDQogICAgPC9zY3JpcHQ+DQo8L2JvZHk+DQo8L2h0bWw+DQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>8629</attachid>
            <date>2006-05-31 15:08:13 -0700</date>
            <delta_ts>2006-06-01 10:10:37 -0700</delta_ts>
            <desc>Sketch: remove positioned objects from their old containing block</desc>
            <filename>9121_sketch.patch</filename>
            <type>text/plain</type>
            <size>2677</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAkocmV2aXNpb24gMTQ2NDYpCisrKyBX
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzg3
LDggKzE3ODcsMTggQEAgdm9pZCBSZW5kZXJPYmplY3Q6OnNldFN0eWxlKFJlbmRlclN0eWxlIAog
CiAgICAgICAgIC8vIFdoZW4gYSBsYXlvdXQgaGludCBoYXBwZW5zIGFuZCBhbiBvYmplY3QncyBw
b3NpdGlvbiBzdHlsZSBjaGFuZ2VzLCB3ZSBoYXZlIHRvIGRvIGEgbGF5b3V0CiAgICAgICAgIC8v
IHRvIGRpcnR5IHRoZSByZW5kZXIgdHJlZSB1c2luZyB0aGUgb2xkIHBvc2l0aW9uIHZhbHVlIG5v
dy4KLSAgICAgICAgaWYgKGQgPT0gUmVuZGVyU3R5bGU6OkxheW91dCAmJiBtX3BhcmVudCAmJiBt
X3N0eWxlLT5wb3NpdGlvbigpICE9IHN0eWxlLT5wb3NpdGlvbigpKQorICAgICAgICBpZiAoZCA9
PSBSZW5kZXJTdHlsZTo6TGF5b3V0ICYmIG1fcGFyZW50ICYmIG1fc3R5bGUtPnBvc2l0aW9uKCkg
IT0gc3R5bGUtPnBvc2l0aW9uKCkpIHsKICAgICAgICAgICAgIG1hcmtDb250YWluaW5nQmxvY2tz
Rm9yTGF5b3V0KCk7CisgICAgICAgICAgICAvLyBGSVhNRTogVGhpcyBkb2Vzbid0IGNhcHR1cmUg
ZXhhY3RseSBhbGwgdHJhbnNpdGlvbnMgaW50byBiZWluZyBhIGNvbnRhaW5pbmcgYmxvY2sKKyAg
ICAgICAgICAgIGlmIChpc1JlbmRlckJsb2NrKCkgJiYgbV9zdHlsZS0+cG9zaXRpb24oKSA9PSBT
dGF0aWNQb3NpdGlvbikgeworICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBXZSBjYW4gZ2V0IHN0
cmFpZ2h0IHRvIG91ciBpbnRlbmRlZCBjYgorICAgICAgICAgICAgICAgIFJlbmRlckJsb2NrKiBv
ID0gc3RhdGljX2Nhc3Q8UmVuZGVyQmxvY2sqPih0aGlzKTsKKyAgICAgICAgICAgICAgICBkbyB7
CisgICAgICAgICAgICAgICAgICAgIG8gPSBvLT5jb250YWluaW5nQmxvY2soKTsKKyAgICAgICAg
ICAgICAgICAgICAgby0+cmVtb3ZlUG9zaXRpb25lZE9iamVjdHNVbmRlcihzdGF0aWNfY2FzdDxS
ZW5kZXJCbG9jayo+KHRoaXMpKTsKKyAgICAgICAgICAgICAgICB9IHdoaWxlICghby0+aXNSZW5k
ZXJWaWV3KCkpOworICAgICAgICAgICAgfQorICAgICAgICB9CiAgICAgICAgIAogICAgICAgICBp
ZiAoaXNGbG9hdGluZygpICYmIChtX3N0eWxlLT5mbG9hdGluZygpICE9IHN0eWxlLT5mbG9hdGlu
ZygpKSkKICAgICAgICAgICAgIC8vIEZvciBjaGFuZ2VzIGluIGZsb2F0IHN0eWxlcywgd2UgbmVl
ZCB0byBjb25jZWl2YWJseSByZW1vdmUgb3Vyc2VsdmVzCkluZGV4OiBXZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCbG9jay5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJs
b2NrLmgJKHJldmlzaW9uIDE0NjQ2KQorKysgV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2su
aAkod29ya2luZyBjb3B5KQpAQCAtMTIwLDYgKzEyMCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGxh
eW91dFBvc2l0aW9uZWRPYmplY3RzKCBib29sIHJlbGF5b3V0Q2hpbGRyZW4gKTsKICAgICB2b2lk
IGluc2VydFBvc2l0aW9uZWRPYmplY3QoUmVuZGVyT2JqZWN0ICpvKTsKICAgICB2b2lkIHJlbW92
ZVBvc2l0aW9uZWRPYmplY3QoUmVuZGVyT2JqZWN0ICpvKTsKKyAgICB2b2lkIHJlbW92ZVBvc2l0
aW9uZWRPYmplY3RzVW5kZXIoUmVuZGVyQmxvY2sqKTsKIAogICAgIHZpcnR1YWwgdm9pZCBwb3Np
dGlvbkxpc3RNYXJrZXIoKSB7IH0KIApJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxv
Y2suY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcAko
cmV2aXNpb24gMTQ2NDYpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTE3NzQsNiArMTc3NCwxOSBAQCB2b2lkIFJlbmRlckJsb2NrOjpyZW1v
dmVQb3NpdGlvbmVkT2JqZWN0CiAgICAgfQogfQogCit2b2lkIFJlbmRlckJsb2NrOjpyZW1vdmVQ
b3NpdGlvbmVkT2JqZWN0c1VuZGVyKFJlbmRlckJsb2NrKiBvKQoreworICAgIGlmICghbV9wb3Np
dGlvbmVkT2JqZWN0cykKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIERlcHJlY2F0ZWRQdHJM
aXN0SXRlcmF0b3I8UmVuZGVyT2JqZWN0PiBpdCgqbV9wb3NpdGlvbmVkT2JqZWN0cyk7CisgICAg
d2hpbGUgKGl0LmN1cnJlbnQoKSkgeworICAgICAgICBpZiAoaXQuY3VycmVudCgpLT5oYXNBbmNl
c3RvcihvKSkKKyAgICAgICAgICAgIG1fcG9zaXRpb25lZE9iamVjdHMtPnJlbW92ZVJlZihpdC5j
dXJyZW50KCkpOworICAgICAgICArK2l0OworICAgIH0KK30KKwogdm9pZCBSZW5kZXJCbG9jazo6
aW5zZXJ0RmxvYXRpbmdPYmplY3QoUmVuZGVyT2JqZWN0ICpvKQogewogICAgIC8vIENyZWF0ZSB0
aGUgbGlzdCBvZiBzcGVjaWFsIG9iamVjdHMgaWYgd2UgZG9uJ3QgYWxlYWR5IGhhdmUgb25lCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>8643</attachid>
            <date>2006-06-01 10:10:37 -0700</date>
            <delta_ts>2006-06-04 11:51:55 -0700</delta_ts>
            <desc>Fix for the layout issue</desc>
            <filename>9121_r0.patch</filename>
            <type>text/plain</type>
            <size>4032</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAkocmV2aXNpb24gMTQ2NjMpCisrKyBX
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMDU2
LDggKzIwNTYsMjggQEAgdm9pZCBSZW5kZXJPYmplY3Q6OnNldFN0eWxlKFJlbmRlclN0eWxlIAog
CiAgICAgICAgIC8vIFdoZW4gYSBsYXlvdXQgaGludCBoYXBwZW5zIGFuZCBhbiBvYmplY3QncyBw
b3NpdGlvbiBzdHlsZSBjaGFuZ2VzLCB3ZSBoYXZlIHRvIGRvIGEgbGF5b3V0CiAgICAgICAgIC8v
IHRvIGRpcnR5IHRoZSByZW5kZXIgdHJlZSB1c2luZyB0aGUgb2xkIHBvc2l0aW9uIHZhbHVlIG5v
dy4KLSAgICAgICAgaWYgKGQgPT0gUmVuZGVyU3R5bGU6OkxheW91dCAmJiBtX3BhcmVudCAmJiBt
X3N0eWxlLT5wb3NpdGlvbigpICE9IHN0eWxlLT5wb3NpdGlvbigpKQorICAgICAgICBpZiAoZCA9
PSBSZW5kZXJTdHlsZTo6TGF5b3V0ICYmIG1fcGFyZW50ICYmIG1fc3R5bGUtPnBvc2l0aW9uKCkg
IT0gc3R5bGUtPnBvc2l0aW9uKCkpIHsKICAgICAgICAgICAgIG1hcmtDb250YWluaW5nQmxvY2tz
Rm9yTGF5b3V0KCk7CisgICAgICAgICAgICBpZiAoaXNSZW5kZXJCbG9jaygpICYmICghaXNJbmxp
bmUoKSB8fCBpc1JlcGxhY2VkKCkpKSB7CisgICAgICAgICAgICAgICAgaWYgKHN0eWxlLT5wb3Np
dGlvbigpID09IFN0YXRpY1Bvc2l0aW9uKSB7CisgICAgICAgICAgICAgICAgICAgIC8vIENsZWFy
IG91ciBwb3NpdGlvbmVkIG9iamVjdHMgbGlzdC4gT3VyIGFic29sdXRlbHkgcG9zaXRpb25lZCBk
ZXNjZW5kYW50cyB3aWxsIGJlCisgICAgICAgICAgICAgICAgICAgIC8vIGluc2VydGVkIGludG8g
b3VyIGNvbnRhaW5pbmcgYmxvY2sncyBwb3NpdGlvbmVkIG9iamVjdHMgbGlzdCBkdXJpbmcgbGF5
b3V0LgorICAgICAgICAgICAgICAgICAgICByZW1vdmVQb3NpdGlvbmVkT2JqZWN0cygwKTsKKyAg
ICAgICAgICAgICAgICB9IGVsc2UgaWYgKG1fc3R5bGUtPnBvc2l0aW9uKCkgPT0gU3RhdGljUG9z
aXRpb24pIHsKKyAgICAgICAgICAgICAgICAgICAgLy8gUmVtb3ZlIG91ciBhYnNvbHV0ZWx5IHBv
c2l0aW9uZWQgZGVzY2VuZGFudHMgZnJvbSB0aGVpciBjdXJyZW50IGNvbnRhaW5pbmcgYmxvY2su
CisgICAgICAgICAgICAgICAgICAgIC8vIFRoZXkgd2lsbCBiZSBpbnNlcnRlZCBpbnRvIG91ciBw
b3NpdGlvbmVkIG9iamVjdHMgbGlzdCBkdXJpbmcgbGF5b3V0LgorICAgICAgICAgICAgICAgICAg
ICBSZW5kZXJPYmplY3QqIGNiID0gcGFyZW50KCk7CisgICAgICAgICAgICAgICAgICAgIHdoaWxl
IChjYiAmJiAoY2ItPnN0eWxlKCktPnBvc2l0aW9uKCkgPT0gU3RhdGljUG9zaXRpb24gfHwgKGNi
LT5pc0lubGluZSgpICYmICFjYi0+aXNSZXBsYWNlZCgpKSkgJiYgIWNiLT5pc1Jvb3QoKSAmJiAh
Y2ItPmlzUmVuZGVyVmlldygpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2ItPnN0
eWxlKCktPnBvc2l0aW9uKCkgPT0gUmVsYXRpdmVQb3NpdGlvbiAmJiBjYi0+aXNJbmxpbmUoKSAm
JiAhY2ItPmlzUmVwbGFjZWQoKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNiID0g
IGNiLT5jb250YWluaW5nQmxvY2soKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgICAgIGNi
ID0gY2ItPnBhcmVudCgpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
ICAgIGNiLT5yZW1vdmVQb3NpdGlvbmVkT2JqZWN0cyhzdGF0aWNfY2FzdDxSZW5kZXJCbG9jayo+
KHRoaXMpKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KICAg
ICAgICAgCiAgICAgICAgIGlmIChpc0Zsb2F0aW5nKCkgJiYgKG1fc3R5bGUtPmZsb2F0aW5nKCkg
IT0gc3R5bGUtPmZsb2F0aW5nKCkpKQogICAgICAgICAgICAgLy8gRm9yIGNoYW5nZXMgaW4gZmxv
YXQgc3R5bGVzLCB3ZSBuZWVkIHRvIGNvbmNlaXZhYmx5IHJlbW92ZSBvdXJzZWx2ZXMKSW5kZXg6
IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyQmxvY2suaAkocmV2aXNpb24gMTQ2NjMpCisrKyBXZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCbG9jay5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMjAsNiArMTIwLDcgQEAgcHVi
bGljOgogICAgIHZvaWQgbGF5b3V0UG9zaXRpb25lZE9iamVjdHMoIGJvb2wgcmVsYXlvdXRDaGls
ZHJlbiApOwogICAgIHZvaWQgaW5zZXJ0UG9zaXRpb25lZE9iamVjdChSZW5kZXJPYmplY3QgKm8p
OwogICAgIHZvaWQgcmVtb3ZlUG9zaXRpb25lZE9iamVjdChSZW5kZXJPYmplY3QgKm8pOworICAg
IHZpcnR1YWwgdm9pZCByZW1vdmVQb3NpdGlvbmVkT2JqZWN0cyhSZW5kZXJCbG9jayopOwogCiAg
ICAgdmlydHVhbCB2b2lkIHBvc2l0aW9uTGlzdE1hcmtlcigpIHsgfQogCkluZGV4OiBXZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJPYmplY3QuaAkocmV2aXNpb24gMTQ2NjMpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJPYmplY3QuaAkod29ya2luZyBjb3B5KQpAQCAtNzQ3LDYgKzc0Nyw4IEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIGJvb2wgaGFzT3ZlcmhhbmdpbmdGbG9hdHMoKSB7IHJldHVybiBmYWxzZTsg
fQogICAgIHZpcnR1YWwgSW50UmVjdCBmbG9hdFJlY3QoKSBjb25zdCB7IHJldHVybiBib3JkZXJC
b3goKTsgfQogCisgICAgdmlydHVhbCB2b2lkIHJlbW92ZVBvc2l0aW9uZWRPYmplY3RzKFJlbmRl
ckJsb2NrKikgeyB9CisKICAgICBib29sIGF2b2lkc0Zsb2F0cygpIGNvbnN0OwogICAgIGJvb2wg
dXNlc0xpbmVXaWR0aCgpIGNvbnN0OwogCkluZGV4OiBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJC
bG9jay5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3Bw
CShyZXZpc2lvbiAxNDY2MykKKysrIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMTc3NCw2ICsxNzc0LDIyIEBAIHZvaWQgUmVuZGVyQmxvY2s6OnJl
bW92ZVBvc2l0aW9uZWRPYmplY3QKICAgICB9CiB9CiAKK3ZvaWQgUmVuZGVyQmxvY2s6OnJlbW92
ZVBvc2l0aW9uZWRPYmplY3RzKFJlbmRlckJsb2NrKiBvKQoreworICAgIGlmICghbV9wb3NpdGlv
bmVkT2JqZWN0cykKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIERlcHJlY2F0ZWRQdHJMaXN0
SXRlcmF0b3I8UmVuZGVyT2JqZWN0PiBpdCgqbV9wb3NpdGlvbmVkT2JqZWN0cyk7CisgICAgd2hp
bGUgKGl0LmN1cnJlbnQoKSkgeworICAgICAgICBpZiAoIW8gfHwgaXQuY3VycmVudCgpLT5oYXNB
bmNlc3RvcihvKSkgeworICAgICAgICAgICAgaWYgKG8pCisgICAgICAgICAgICAgICAgaXQuY3Vy
cmVudCgpLT5zZXRDaGlsZE5lZWRzTGF5b3V0KHRydWUsIGZhbHNlKTsKKyAgICAgICAgICAgIG1f
cG9zaXRpb25lZE9iamVjdHMtPnJlbW92ZVJlZihpdC5jdXJyZW50KCkpOworICAgICAgICB9Cisg
ICAgICAgICsraXQ7CisgICAgfQorfQorCiB2b2lkIFJlbmRlckJsb2NrOjppbnNlcnRGbG9hdGlu
Z09iamVjdChSZW5kZXJPYmplY3QgKm8pCiB7CiAgICAgLy8gQ3JlYXRlIHRoZSBsaXN0IG9mIHNw
ZWNpYWwgb2JqZWN0cyBpZiB3ZSBkb24ndCBhbGVhZHkgaGF2ZSBvbmUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>8696</attachid>
            <date>2006-06-04 11:51:55 -0700</date>
            <delta_ts>2006-06-05 10:21:23 -0700</delta_ts>
            <desc>Patch for both problems, including change log and tests</desc>
            <filename>9121_r1.patch</filename>
            <type>text/plain</type>
            <size>11643</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDE0NzE3KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMDYtMDYtIyMgIE1pdHogUGV0dGVsICA8b3Bl
bmRhcndpbi5vcmdAbWl0enBldHRlbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgLSByZXBhaW50IHRlc3QgZm9yIGh0dHA6Ly9idWd6aWxsYS5v
cGVuZGFyd2luLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTEyMQorICAgICAgICAgIFJFR1JFU1NJT046
IFtJbmNyZW1lbnRhbCBSZXBhaW50XSBESFRNTCBtb3ZlbWVudCB0ZXN0IGZhaWx1cmVzCisKKyAg
ICAgICAgKiBmYXN0L3JlcGFpbnQvY29udGFpbmluZy1ibG9jay1wb3NpdGlvbi1jaGFuZ2UtZXhw
ZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgorICAgICAgICAqIGZhc3QvcmVwYWludC9jb250YWluaW5n
LWJsb2NrLXBvc2l0aW9uLWNoYW5nZS1leHBlY3RlZC5wbmc6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvcmVwYWludC9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYW5nZS1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvcmVwYWludC9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9u
LWNoYW5nZS5odG1sOiBBZGRlZC4KKwogMjAwNi0wNi0wNCAgQW5kZXJzIENhcmxzc29uICA8YWNh
cmxzc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbi4KSW5kZXg6IExh
eW91dFRlc3RzL2Zhc3QvcmVwYWludC9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYW5nZS1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9yZXBhaW50L2NvbnRh
aW5pbmctYmxvY2stcG9zaXRpb24tY2hhbmdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL2Zhc3QvcmVwYWludC9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYW5n
ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjEgQEAKK2xheWVyIGF0ICgw
LDApIHNpemUgODAweDYwMAorICBSZW5kZXJWaWV3IGF0ICgwLDApIHNpemUgODAweDYwMAorbGF5
ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlckJsb2NrIHtIVE1MfSBhdCAoMCwwKSBz
aXplIDgwMHg2MDAKKyAgICBSZW5kZXJCb2R5IHtCT0RZfSBhdCAoOCw4KSBzaXplIDc4NHg1ODQK
KyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwwKSBzaXplIDc4NHgzNgorICAgICAgICBSZW5k
ZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAxNTF4MTgKKyAgICAgICAgICB0ZXh0IHJ1biBh
dCAoMCwwKSB3aWR0aCAxNTE6ICJUaGlzIGlzIGEgcmVwYWludCB0ZXN0IGZvciAiCisgICAgICAg
IFJlbmRlcklubGluZSB7SX0gYXQgKDAsMCkgc2l6ZSA3NDl4MzYKKyAgICAgICAgICBSZW5kZXJJ
bmxpbmUge0F9IGF0ICgwLDApIHNpemUgMzQ4eDE4IFtjb2xvcj0jMDAwMEVFXQorICAgICAgICAg
ICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgxNTEsMCkgc2l6ZSAzNDh4MTgKKyAgICAgICAgICAg
ICAgdGV4dCBydW4gYXQgKDE1MSwwKSB3aWR0aCAzNDg6ICJodHRwOi8vYnVnemlsbGEub3BlbmRh
cndpbi5vcmcvc2hvd19idWcuY2dpP2lkPTkxMjEiCisgICAgICAgICAgUmVuZGVyVGV4dCB7I3Rl
eHR9IGF0ICg0OTksMCkgc2l6ZSA3NDl4MzYKKyAgICAgICAgICAgIHRleHQgcnVuIGF0ICg0OTks
MCkgd2lkdGggNDogIiAiCisgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoNTAzLDApIHdpZHRoIDI0
NjogIlJFR1JFU1NJT046IFtJbmNyZW1lbnRhbCBSZXBhaW50XSIKKyAgICAgICAgICAgIHRleHQg
cnVuIGF0ICgwLDE4KSB3aWR0aCAyMDA6ICJESFRNTCBtb3ZlbWVudCB0ZXN0IGZhaWx1cmVzIgor
ICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDIwMCwxOCkgc2l6ZSA0eDE4CisgICAgICAg
ICAgdGV4dCBydW4gYXQgKDIwMCwxOCkgd2lkdGggNDogIi4iCisgICAgICBSZW5kZXJCbG9jayB7
SFJ9IGF0ICgwLDUyKSBzaXplIDc4NHgyIFtib3JkZXI6ICgxcHggaW5zZXQgIzAwMDAwMCldCits
YXllciBhdCAoMTU4LDcwKSBzaXplIDUweDUwCisgIFJlbmRlckJsb2NrIChwb3NpdGlvbmVkKSB7
RElWfSBhdCAoMTAwLDApIHNpemUgNTB4NTAgW2JnY29sb3I9IzAwMDBGRl0KSW5kZXg6IExheW91
dFRlc3RzL2Zhc3QvcmVwYWludC9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYW5nZS5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvcmVwYWludC9jb250YWluaW5nLWJsb2Nr
LXBvc2l0aW9uLWNoYW5nZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9y
ZXBhaW50L2NvbnRhaW5pbmctYmxvY2stcG9zaXRpb24tY2hhbmdlLmh0bWwJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsMjEgQEAKKzxodG1sPgorPGhlYWQ+CisJPHNjcmlwdCBzcmM9InJlcGFpbnQu
anMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CisJPHNjcmlwdCB0eXBlPSJ0ZXh0
L2phdmFzY3JpcHQiPgorCSAgIGZ1bmN0aW9uIHJlcGFpbnRUZXN0KCkKKwkgICB7CisgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0Jykuc3R5bGUucG9zaXRpb24gPSAncmVsYXRp
dmUnOworCSAgIH0KKwk8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0icnVuUmVwYWlu
dFRlc3QoKTsiPgorICAgIDxwPgorICAgICAgICBUaGlzIGlzIGEgcmVwYWludCB0ZXN0IGZvciA8
aT48YSBocmVmPSJodHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcvc2hvd19idWcuY2dpP2lk
PTkxMjEiPmh0dHA6Ly9idWd6aWxsYS5vcGVuZGFyd2luLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTEy
MTwvYT4KKyAgICAgICAgUkVHUkVTU0lPTjogW0luY3JlbWVudGFsIFJlcGFpbnRdIERIVE1MIG1v
dmVtZW50IHRlc3QgZmFpbHVyZXM8L2k+LgorICAgIDwvcD4KKyAgICA8aHI+CisgICAgPGRpdiBp
ZD0idCIgc3R5bGU9InBvc2l0aW9uOiBzdGF0aWM7IGxlZnQ6IDUwcHg7Ij4KKyAgICAgICAgPGRp
diBzdHlsZT0id2lkdGg6IDUwcHg7IGhlaWdodDogNTBweDsgYmFja2dyb3VuZDogYmx1ZTsgcG9z
aXRpb246IGFic29sdXRlOyBsZWZ0OiAxMDBweDsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9ib2R5
PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9yZXBhaW50L2NvbnRhaW5pbmctYmxv
Y2stcG9zaXRpb24tY2hhbmdlLWV4cGVjdGVkLnBuZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNhbm5vdCBkaXNwbGF5
OiBmaWxlIG1hcmtlZCBhcyBhIGJpbmFyeSB0eXBlLgpzdm46bWltZS10eXBlID0gYXBwbGljYXRp
b24vb2N0ZXQtc3RyZWFtCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBjb250YWluaW5nLWJsb2NrLXBv
c2l0aW9uLWNoYW5nZS1leHBlY3RlZC5wbmcKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpOYW1lOiBzdm46bWltZS10eXBl
CiAgICsgYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9y
ZXBhaW50L2NvbnRhaW5pbmctYmxvY2stcG9zaXRpb24tY2hhbmdlLWV4cGVjdGVkLmNoZWNrc3Vt
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvcmVwYWludC9jb250YWluaW5nLWJsb2Nr
LXBvc2l0aW9uLWNoYW5nZS1leHBlY3RlZC5jaGVja3N1bQkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL2Zhc3QvcmVwYWludC9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYW5nZS1leHBl
Y3RlZC5jaGVja3N1bQkocmV2aXNpb24gMCkKQEAgLTAsMCArMSBAQAorMGQ1Nzk5OTZlMjFmZWZj
NTEzNjY5ZmU1YjcxNzJkOWIKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBXZWJD
b3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24g
MTQ3MTcpCisrKyBXZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI2
IEBACisyMDA2LTA2LSMjICBNaXR6IFBldHRlbCAgPG9wZW5kYXJ3aW4ub3JnQG1pdHpwZXR0ZWwu
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIC0g
Zml4IGh0dHA6Ly9idWd6aWxsYS5vcGVuZGFyd2luLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTEyMQor
ICAgICAgICAgIFJFR1JFU1NJT046IFtJbmNyZW1lbnRhbCBSZXBhaW50XSBESFRNTCBtb3ZlbWVu
dCB0ZXN0IGZhaWx1cmVzCisKKyAgICAgICAgVGVzdCAocmVwYWludCk6IGZhc3QvcmVwYWludC9j
b250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYW5nZS5odG1sCisKKyAgICAgICAgKiBtYW51YWwt
dGVzdHMvY29udGFpbmluZy1ibG9jay1wb3NpdGlvbi1jaGFnZS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
QmxvY2s6OmxheW91dEJsb2NrKTogVW5yZWxhdGVkIGNoYW5nZTogZml4ZWQgdHlwbyBmcm9tCisg
ICAgICAgIHRoZSBSZW5kZXJDYW52YXMgdG8gUmVuZGVyVmlldyByZW5hbWUuCisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJCbG9jazo6cmVtb3ZlUG9zaXRpb25lZE9iamVjdHMpOiBBZGRlZC4KKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2suaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck9iamVjdDo6c2V0U3R5bGUp
OiBBZGRlZCBjb2RlIHRvIHJlbW92ZSBhYnNvbHV0ZWx5IHBvc2l0aW9uZWQKKyAgICAgICAgZGVz
Y2VuZGFudHMgZnJvbSB0aGUgcG9zaXRpb25lZCBvYmplY3RzIGxpc3Qgb2YgdGhlaXIgY3VycmVu
dCBjb250YWluaW5nIGJsb2NrCisgICAgICAgIHdoZW4gdGhleSBhcmUgZ29pbmcgdG8gaGF2ZSBh
IG5ldyBvbmUgYXMgYSByZXN1bHQgb2YgdGhpcyBibG9jaydzIHBvc2l0aW9uCisgICAgICAgIHBy
b3BlcnR5IGNoYW5naW5nLiAKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyT2JqZWN0Lmg6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJPYmplY3Q6OnJlbW92ZVBvc2l0aW9uZWRPYmplY3RzKToK
KwogMjAwNi0wNi0wNCAgQW5kZXJzIENhcmxzc29uICA8YWNhcmxzc29uQGFwcGxlLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBEYXJpbi4KSW5kZXg6IFdlYkNvcmUvbWFudWFsLXRlc3RzL2Nv
bnRhaW5pbmctYmxvY2stcG9zaXRpb24tY2hhZ2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L21hbnVhbC10ZXN0cy9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYWdlLmh0bWwJKHJldmlz
aW9uIDApCisrKyBXZWJDb3JlL21hbnVhbC10ZXN0cy9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9u
LWNoYWdlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzUgQEAKKzxodG1sPgorPGhlYWQ+
CisgICAgPHRpdGxlPjwvdGl0bGU+CisgICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KKyAgICAg
ICAgI3QgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsg
YmFja2dyb3VuZDogZ3JlZW47IGxlZnQ6IC0xMjBweDsgfQorICAgIDwvc3R5bGU+CisgICAgPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICBmdW5jdGlvbiB0ZXN0KCkKKyAg
ICAgICAgeworICAgICAgICAgICAgdmFyIGNvbnRhaW5lciA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJyZWwiKTsKKyAgICAgICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidCIpOworICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5vZmZzZXRUb3A7ICAgLy8gZm9y
Y2UgbGF5b3V0CisgICAgICAgICAgICBjb250YWluZXIuc3R5bGUucG9zaXRpb24gPSAicmVsYXRp
dmUiOworICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5vZmZzZXRUb3A7ICAgLy8gZm9yY2UgbGF5
b3V0CisgICAgICAgICAgICB0YXJnZXQuc3R5bGUubGVmdCA9ICIwIjsKKyAgICAgICAgfQorICAg
IDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJ0ZXN0KCkiPgorICAgIDxwPgorICAg
ICAgICBUaGlzIGlzIGEgdGVzdCBmb3IgPGk+PGEgaHJlZj0iaHR0cDovL2J1Z3ppbGxhLm9wZW5k
YXJ3aW4ub3JnL3Nob3dfYnVnLmNnaT9pZD05MTIxIj5odHRwOi8vYnVnemlsbGEub3BlbmRhcndp
bi5vcmcvc2hvd19idWcuY2dpP2lkPTkxMjE8L2E+CisgICAgICAgIFJFR1JFU1NJT046IFtJbmNy
ZW1lbnRhbCBSZXBhaW50XSBESFRNTCBtb3ZlbWVudCB0ZXN0IGZhaWx1cmVzPC9pPi4KKyAgICA8
L3A+CisgICAgPHA+CisgICAgICAgIERvIG5vdCByZXNpemUgdGhlIHdpbmRvdy4gSWYgeW91IGRp
ZCwgcmVsb2FkIHRoZSB0ZXN0LgorICAgIDwvcD4KKyAgICA8cD4KKyAgICAgICAgVGhlcmUgc2hv
dWxkIGJlIGEgZ3JlZW4gc3F1YXJlIGJlbG93LCBhbGlnbmVkIHdpdGggdGhlIGxlZnQgbWFyZ2lu
IG9mIHRoZSBwYWdlLgorICAgIDwvcD4KKyAgICA8aHI+CisgICAgPGRpdiBpZD0icmVsIiBzdHls
ZT0icG9zaXRpb246IHN0YXRpYzsiPgorICAgICAgICA8c3BhbiBpZD0idCI+PC9zcGFuPgorICAg
IDwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
T2JqZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3Qu
Y3BwCShyZXZpc2lvbiAxNDcxNykKKysrIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTIwNTcsOCArMjA1NywyOCBAQCB2b2lkIFJlbmRlck9iamVj
dDo6c2V0U3R5bGUoUmVuZGVyU3R5bGUgCiAKICAgICAgICAgLy8gV2hlbiBhIGxheW91dCBoaW50
IGhhcHBlbnMgYW5kIGFuIG9iamVjdCdzIHBvc2l0aW9uIHN0eWxlIGNoYW5nZXMsIHdlIGhhdmUg
dG8gZG8gYSBsYXlvdXQKICAgICAgICAgLy8gdG8gZGlydHkgdGhlIHJlbmRlciB0cmVlIHVzaW5n
IHRoZSBvbGQgcG9zaXRpb24gdmFsdWUgbm93LgotICAgICAgICBpZiAoZCA9PSBSZW5kZXJTdHls
ZTo6TGF5b3V0ICYmIG1fcGFyZW50ICYmIG1fc3R5bGUtPnBvc2l0aW9uKCkgIT0gc3R5bGUtPnBv
c2l0aW9uKCkpCisgICAgICAgIGlmIChkID09IFJlbmRlclN0eWxlOjpMYXlvdXQgJiYgbV9wYXJl
bnQgJiYgbV9zdHlsZS0+cG9zaXRpb24oKSAhPSBzdHlsZS0+cG9zaXRpb24oKSkgewogICAgICAg
ICAgICAgbWFya0NvbnRhaW5pbmdCbG9ja3NGb3JMYXlvdXQoKTsKKyAgICAgICAgICAgIGlmIChp
c1JlbmRlckJsb2NrKCkgJiYgKCFpc0lubGluZSgpIHx8IGlzUmVwbGFjZWQoKSkpIHsKKyAgICAg
ICAgICAgICAgICBpZiAoc3R5bGUtPnBvc2l0aW9uKCkgPT0gU3RhdGljUG9zaXRpb24pIHsKKyAg
ICAgICAgICAgICAgICAgICAgLy8gQ2xlYXIgb3VyIHBvc2l0aW9uZWQgb2JqZWN0cyBsaXN0LiBP
dXIgYWJzb2x1dGVseSBwb3NpdGlvbmVkIGRlc2NlbmRhbnRzIHdpbGwgYmUKKyAgICAgICAgICAg
ICAgICAgICAgLy8gaW5zZXJ0ZWQgaW50byBvdXIgY29udGFpbmluZyBibG9jaydzIHBvc2l0aW9u
ZWQgb2JqZWN0cyBsaXN0IGR1cmluZyBsYXlvdXQuCisgICAgICAgICAgICAgICAgICAgIHJlbW92
ZVBvc2l0aW9uZWRPYmplY3RzKDApOworICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAobV9zdHls
ZS0+cG9zaXRpb24oKSA9PSBTdGF0aWNQb3NpdGlvbikgeworICAgICAgICAgICAgICAgICAgICAv
LyBSZW1vdmUgb3VyIGFic29sdXRlbHkgcG9zaXRpb25lZCBkZXNjZW5kYW50cyBmcm9tIHRoZWly
IGN1cnJlbnQgY29udGFpbmluZyBibG9jay4KKyAgICAgICAgICAgICAgICAgICAgLy8gVGhleSB3
aWxsIGJlIGluc2VydGVkIGludG8gb3VyIHBvc2l0aW9uZWQgb2JqZWN0cyBsaXN0IGR1cmluZyBs
YXlvdXQuCisgICAgICAgICAgICAgICAgICAgIFJlbmRlck9iamVjdCogY2IgPSBwYXJlbnQoKTsK
KyAgICAgICAgICAgICAgICAgICAgd2hpbGUgKGNiICYmIChjYi0+c3R5bGUoKS0+cG9zaXRpb24o
KSA9PSBTdGF0aWNQb3NpdGlvbiB8fCAoY2ItPmlzSW5saW5lKCkgJiYgIWNiLT5pc1JlcGxhY2Vk
KCkpKSAmJiAhY2ItPmlzUm9vdCgpICYmICFjYi0+aXNSZW5kZXJWaWV3KCkpIHsKKyAgICAgICAg
ICAgICAgICAgICAgICAgIGlmIChjYi0+c3R5bGUoKS0+cG9zaXRpb24oKSA9PSBSZWxhdGl2ZVBv
c2l0aW9uICYmIGNiLT5pc0lubGluZSgpICYmICFjYi0+aXNSZXBsYWNlZCgpKSB7CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY2IgPSAgY2ItPmNvbnRhaW5pbmdCbG9jaygpOworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgICAgICAgICAgICAgY2IgPSBjYi0+cGFyZW50KCk7CisgICAgICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgY2ItPnJlbW92ZVBvc2l0aW9uZWRPYmplY3Rz
KHN0YXRpY19jYXN0PFJlbmRlckJsb2NrKj4odGhpcykpOworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIH0KKyAgICAgICAgfQogICAgICAgICAKICAgICAgICAgaWYgKGlzRmxvYXRpbmco
KSAmJiAobV9zdHlsZS0+ZmxvYXRpbmcoKSAhPSBzdHlsZS0+ZmxvYXRpbmcoKSkpCiAgICAgICAg
ICAgICAvLyBGb3IgY2hhbmdlcyBpbiBmbG9hdCBzdHlsZXMsIHdlIG5lZWQgdG8gY29uY2VpdmFi
bHkgcmVtb3ZlIG91cnNlbHZlcwpJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2su
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5oCShyZXZpc2lv
biAxNDcxNykKKysrIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTEyMCw2ICsxMjAsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBsYXlvdXRQb3NpdGlvbmVk
T2JqZWN0cyggYm9vbCByZWxheW91dENoaWxkcmVuICk7CiAgICAgdm9pZCBpbnNlcnRQb3NpdGlv
bmVkT2JqZWN0KFJlbmRlck9iamVjdCAqbyk7CiAgICAgdm9pZCByZW1vdmVQb3NpdGlvbmVkT2Jq
ZWN0KFJlbmRlck9iamVjdCAqbyk7CisgICAgdmlydHVhbCB2b2lkIHJlbW92ZVBvc2l0aW9uZWRP
YmplY3RzKFJlbmRlckJsb2NrKik7CiAKICAgICB2aXJ0dWFsIHZvaWQgcG9zaXRpb25MaXN0TWFy
a2VyKCkgeyB9CiAKSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCShyZXZpc2lvbiAxNDcx
NykKKysrIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCSh3b3JraW5nIGNvcHkpCkBA
IC03NDcsNiArNzQ3LDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBoYXNPdmVyaGFuZ2lu
Z0Zsb2F0cygpIHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBJbnRSZWN0IGZsb2F0UmVj
dCgpIGNvbnN0IHsgcmV0dXJuIGJvcmRlckJveCgpOyB9CiAKKyAgICB2aXJ0dWFsIHZvaWQgcmVt
b3ZlUG9zaXRpb25lZE9iamVjdHMoUmVuZGVyQmxvY2sqKSB7IH0KKwogICAgIGJvb2wgYXZvaWRz
RmxvYXRzKCkgY29uc3Q7CiAgICAgYm9vbCB1c2VzTGluZVdpZHRoKCkgY29uc3Q7CiAKSW5kZXg6
IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAJKHJldmlzaW9uIDE0NzE3KQorKysgV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NTMsNyArNTUzLDcg
QEAgdm9pZCBSZW5kZXJCbG9jazo6bGF5b3V0QmxvY2soYm9vbCByZWxheQogICAgICAgICBkaWRG
dWxsUmVwYWludCA9IHJlcGFpbnRBZnRlckxheW91dElmTmVlZGVkKG9sZEJvdW5kcywgb2xkRnVs
bEJvdW5kcyk7CiAgICAgaWYgKCFkaWRGdWxsUmVwYWludCAmJiAhcmVwYWludFJlY3QuaXNFbXB0
eSgpKSB7CiAgICAgICAgIFJlbmRlclZpZXcqIHYgPSB2aWV3KCk7Ci0gICAgICAgIGlmICh2ICYm
IHYtPnZpZXcoKSkgeworICAgICAgICBpZiAodiAmJiB2LT5mcmFtZVZpZXcoKSkgewogICAgICAg
ICAgICAgcmVwYWludFJlY3QuaW5mbGF0ZShtYXhpbWFsT3V0bGluZVNpemUoUGFpbnRQaGFzZU91
dGxpbmUpKTsKICAgICAgICAgICAgIHYtPmZyYW1lVmlldygpLT5hZGRSZXBhaW50SW5mbyh0aGlz
LCByZXBhaW50UmVjdCk7IC8vIFdlIG5lZWQgdG8gZG8gYSBwYXJ0aWFsIHJlcGFpbnQgb2Ygb3Vy
IGNvbnRlbnQuCiAgICAgICAgIH0KQEAgLTE3NzQsNiArMTc3NCwyNCBAQCB2b2lkIFJlbmRlckJs
b2NrOjpyZW1vdmVQb3NpdGlvbmVkT2JqZWN0CiAgICAgfQogfQogCit2b2lkIFJlbmRlckJsb2Nr
OjpyZW1vdmVQb3NpdGlvbmVkT2JqZWN0cyhSZW5kZXJCbG9jayogbykKK3sKKyAgICBpZiAoIW1f
cG9zaXRpb25lZE9iamVjdHMpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBEZXByZWNhdGVk
UHRyTGlzdEl0ZXJhdG9yPFJlbmRlck9iamVjdD4gaXQoKm1fcG9zaXRpb25lZE9iamVjdHMpOwor
ICAgIHdoaWxlIChpdC5jdXJyZW50KCkpIHsKKyAgICAgICAgaWYgKCFvIHx8IGl0LmN1cnJlbnQo
KS0+aGFzQW5jZXN0b3IobykpIHsKKyAgICAgICAgICAgIGlmIChvKSB7CisgICAgICAgICAgICAg
ICAgaXQuY3VycmVudCgpLT5zZXRDaGlsZE5lZWRzTGF5b3V0KHRydWUsIGZhbHNlKTsKKyAgICAg
ICAgICAgICAgICBpdC5jdXJyZW50KCktPmxheWVyKCktPmNvbXB1dGVSZXBhaW50UmVjdHMoKTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIG1fcG9zaXRpb25lZE9iamVjdHMtPnJlbW92ZVJl
ZihpdC5jdXJyZW50KCkpOworICAgICAgICB9CisgICAgICAgICsraXQ7CisgICAgfQorfQorCiB2
b2lkIFJlbmRlckJsb2NrOjppbnNlcnRGbG9hdGluZ09iamVjdChSZW5kZXJPYmplY3QgKm8pCiB7
CiAgICAgLy8gQ3JlYXRlIHRoZSBsaXN0IG9mIHNwZWNpYWwgb2JqZWN0cyBpZiB3ZSBkb24ndCBh
bGVhZHkgaGF2ZSBvbmUK
</data>
<flag name="review"
          id="2514"
          type_id="1"
          status="-"
          setter="hyatt"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>8716</attachid>
            <date>2006-06-05 10:21:23 -0700</date>
            <delta_ts>2006-06-06 12:37:23 -0700</delta_ts>
            <desc>Revised patch</desc>
            <filename>9121_r2.patch</filename>
            <type>text/plain</type>
            <size>36721</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDE0NzMzKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMDYtMDYtIyMgIE1pdHogUGV0dGVsICA8b3Bl
bmRhcndpbi5vcmdAbWl0enBldHRlbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgLSByZXBhaW50IHRlc3QgZm9yIGh0dHA6Ly9idWd6aWxsYS5v
cGVuZGFyd2luLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTEyMQorICAgICAgICAgIFJFR1JFU1NJT046
IFtJbmNyZW1lbnRhbCBSZXBhaW50XSBESFRNTCBtb3ZlbWVudCB0ZXN0IGZhaWx1cmVzCisKKyAg
ICAgICAgKiBmYXN0L3JlcGFpbnQvY29udGFpbmluZy1ibG9jay1wb3NpdGlvbi1jaGFuZ2UtZXhw
ZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgorICAgICAgICAqIGZhc3QvcmVwYWludC9jb250YWluaW5n
LWJsb2NrLXBvc2l0aW9uLWNoYW5nZS1leHBlY3RlZC5wbmc6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvcmVwYWludC9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYW5nZS1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvcmVwYWludC9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9u
LWNoYW5nZS5odG1sOiBBZGRlZC4KKwogMjAwNi0wNi0wNCAgRGFyaW4gQWRsZXIgIDxkYXJpbkBh
cHBsZS5jb20+CiAKICAgICAgICAgLSB0ZXN0IGZvciBodHRwOi8vYnVnemlsbGEub3BlbmRhcndp
bi5vcmcvc2hvd19idWcuY2dpP2lkPTkxNzYKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvcmVwYWlu
dC9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYW5nZS1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9yZXBhaW50L2NvbnRhaW5pbmctYmxvY2stcG9zaXRpb24t
Y2hhbmdlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvcmVw
YWludC9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYW5nZS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMjEgQEAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAorICBS
ZW5kZXJWaWV3IGF0ICgwLDApIHNpemUgODAweDYwMAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4
NjAwCisgIFJlbmRlckJsb2NrIHtIVE1MfSBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgICBSZW5k
ZXJCb2R5IHtCT0RZfSBhdCAoOCw4KSBzaXplIDc4NHg1ODQKKyAgICAgIFJlbmRlckJsb2NrIHtQ
fSBhdCAoMCwwKSBzaXplIDc4NHgzNgorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAs
MCkgc2l6ZSAxNTF4MTgKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAxNTE6ICJU
aGlzIGlzIGEgcmVwYWludCB0ZXN0IGZvciAiCisgICAgICAgIFJlbmRlcklubGluZSB7SX0gYXQg
KDAsMCkgc2l6ZSA3NDl4MzYKKyAgICAgICAgICBSZW5kZXJJbmxpbmUge0F9IGF0ICgwLDApIHNp
emUgMzQ4eDE4IFtjb2xvcj0jMDAwMEVFXQorICAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9
IGF0ICgxNTEsMCkgc2l6ZSAzNDh4MTgKKyAgICAgICAgICAgICAgdGV4dCBydW4gYXQgKDE1MSww
KSB3aWR0aCAzNDg6ICJodHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcvc2hvd19idWcuY2dp
P2lkPTkxMjEiCisgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICg0OTksMCkgc2l6ZSA3
NDl4MzYKKyAgICAgICAgICAgIHRleHQgcnVuIGF0ICg0OTksMCkgd2lkdGggNDogIiAiCisgICAg
ICAgICAgICB0ZXh0IHJ1biBhdCAoNTAzLDApIHdpZHRoIDI0NjogIlJFR1JFU1NJT046IFtJbmNy
ZW1lbnRhbCBSZXBhaW50XSIKKyAgICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDE4KSB3aWR0aCAy
MDA6ICJESFRNTCBtb3ZlbWVudCB0ZXN0IGZhaWx1cmVzIgorICAgICAgICBSZW5kZXJUZXh0IHsj
dGV4dH0gYXQgKDIwMCwxOCkgc2l6ZSA0eDE4CisgICAgICAgICAgdGV4dCBydW4gYXQgKDIwMCwx
OCkgd2lkdGggNDogIi4iCisgICAgICBSZW5kZXJCbG9jayB7SFJ9IGF0ICgwLDUyKSBzaXplIDc4
NHgyIFtib3JkZXI6ICgxcHggaW5zZXQgIzAwMDAwMCldCitsYXllciBhdCAoMTU4LDcwKSBzaXpl
IDUweDUwCisgIFJlbmRlckJsb2NrIChwb3NpdGlvbmVkKSB7RElWfSBhdCAoMTAwLDApIHNpemUg
NTB4NTAgW2JnY29sb3I9IzAwMDBGRl0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvcmVwYWludC9j
b250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYW5nZS5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2Zhc3QvcmVwYWludC9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYW5nZS5odG1s
CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9yZXBhaW50L2NvbnRhaW5pbmctYmxv
Y2stcG9zaXRpb24tY2hhbmdlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjEgQEAKKzxo
dG1sPgorPGhlYWQ+CisJPHNjcmlwdCBzcmM9InJlcGFpbnQuanMiIHR5cGU9InRleHQvamF2YXNj
cmlwdCI+PC9zY3JpcHQ+CisJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorCSAgIGZ1
bmN0aW9uIHJlcGFpbnRUZXN0KCkKKwkgICB7CisgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCd0Jykuc3R5bGUucG9zaXRpb24gPSAncmVsYXRpdmUnOworCSAgIH0KKwk8L3Njcmlw
dD4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0icnVuUmVwYWludFRlc3QoKTsiPgorICAgIDxwPgor
ICAgICAgICBUaGlzIGlzIGEgcmVwYWludCB0ZXN0IGZvciA8aT48YSBocmVmPSJodHRwOi8vYnVn
emlsbGEub3BlbmRhcndpbi5vcmcvc2hvd19idWcuY2dpP2lkPTkxMjEiPmh0dHA6Ly9idWd6aWxs
YS5vcGVuZGFyd2luLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTEyMTwvYT4KKyAgICAgICAgUkVHUkVT
U0lPTjogW0luY3JlbWVudGFsIFJlcGFpbnRdIERIVE1MIG1vdmVtZW50IHRlc3QgZmFpbHVyZXM8
L2k+LgorICAgIDwvcD4KKyAgICA8aHI+CisgICAgPGRpdiBpZD0idCIgc3R5bGU9InBvc2l0aW9u
OiBzdGF0aWM7IGxlZnQ6IDUwcHg7Ij4KKyAgICAgICAgPGRpdiBzdHlsZT0id2lkdGg6IDUwcHg7
IGhlaWdodDogNTBweDsgYmFja2dyb3VuZDogYmx1ZTsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0
OiAxMDBweDsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9yZXBhaW50L2NvbnRhaW5pbmctYmxvY2stcG9zaXRpb24tY2hhbmdlLWV4
cGVjdGVkLnBuZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09CkNhbm5vdCBkaXNwbGF5OiBmaWxlIG1hcmtlZCBhcyBhIGJp
bmFyeSB0eXBlLgpzdm46bWltZS10eXBlID0gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgpQcm9w
ZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9mYXN0L3JlcGFpbnQvY29udGFpbmluZy1ibG9j
ay1wb3NpdGlvbi1jaGFuZ2UtZXhwZWN0ZWQucG5nCl9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTmFtZTogc3ZuOm1pbWUt
dHlwZQogICArIGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQoKaVZCT1J3MEtHZ29BQUFBTlNVaEVV
Z0FBQXlBQUFBSllDQVlBQUFDYWRvSndBQUFnQUVsRVFWUjRuT3pkL1ZjVFovNzQvMmRta2dBRwpD
VGNhSkJTamxLWkxSYm9zSDEzV29sV3JxeDU3OU9oeGorOC81L3ZudkQzdGFiL3QxMzdhdnUzYnR0
WjJXVnpLU3NGb2l0R0lCQWkzCkE0a0pNNW5KOTRjSk53bUJnRldxdTYvSE9lNTJtSnZyTmRkY2Mz
TmRjMTBUeDlXclY3TUlJWVFRUWdnaHhEWlFmdThBaEJCQ0NDR0UKRVA4NXBBSWloQkJDQ0NHRTJE
WlNBUkZDQ0NHRUVFSnNHNm1BQ0NHRUVFSUlJYmFOVkVDRUVFSUlJWVFRMjBZcUlFSUlJWVFRUW9o
dApJeFVRSVlRUVFnZ2h4TGFSQ29nUVFnZ2hoQkJpMjBnRlJBZ2hoQkJDQ0xGdFhtd0Z4TlJKcFkw
TlppZEpKUFhuMk96enJmZXFlcDMzCkp6VS93OHpjUENuZGZHSGJ0TXdzNmFSRklwVjlZZHY4VGF3
c3VtNHhQMk9TMEgvZm1Dd3JpNTZ5bUU5bWkwNi92cktZUnBaVXdtSXUKOGJydnkvWjVaYzZWVitn
YytTME1QWXRoYlhXdEYxQjJyU3pKaE1WOHdtS2pLNmxwV0tUU2E5TXdkWXZFdkVXeVJEbFliLzN0
WkJvRwpwbWxpcnNwbjA5eHlwbStaWlZwWTFsSTZhOU1yTmIvRXh0RjFuVzNZRGZFYldKYUpua293
LzVvK2IvMjdjMjQ4MitCUnp5ZjBSamRlCkt0QjVsTnFwQi9SSDQzamJUM0cydGE3b3RwNzg0enE5
TVMrbkxwK2x6clhaRUo5M3ZWZlY2N3MvTThNOTNCZzI4R2t4NGtEM2gxZG8KOUtpL2FadFcwcVR2
QjVPSUJzRmpUam9xSEM4bTJFMUlUeHA4TnVqZzhna25ybFhURnc4N3VIUGRKQWEwbjFJb1dweGZF
bjB1dzZkZgpXeHc1NzZKUnRlajkzQ1FLK0RxZHZOK1lQMzJpWmZ2eTZrV3owaFlEZnpjSng4Ri8y
TW5SeXUzWmw5WDUyN1JOYVc1V1lYa3M5SHVlCks0WE1sTVUvZnFkejVIa1VIbmN6WVhMbnRrbktB
L0VZTkhlcS9LbEZSVjFuK2RWK2E5blY1ekxjL05wQ0N6aG9VN01NUmh5Y3Z1U2kKMXIyMFJKYkpj
SWJCU0phNEJ0NDJsYk1IMU9WNVkwTUd0d1pYdGhmb1VEa1VYSWw5NC9VTFdBbEN2WGVJcHFBTVdG
eGNSTk0wZklFZworL2EveWY3NnF0eHlTY0o5UHpPYXlFQnVPWnVHcGdINE9YTCtDRTJWUyttWXpJ
dys1Tzd0ZnVLQTErZEZpMnY0ZzIzVVprWjQ1dXZtClVLRHlwYVJ2cFdjSTNibkJZQXk4WHFBc1FG
bDhqdWJ6cHdtVW1yOGpUYmkzbDBnS3lsZ2tIdmZRZmY0SWpibjlNaEtUaEFmN0dJeHEKeTFuWTNI
R01kNE1OTEIwK016bkdUOWR2a2ZSQ21iK2I5OXNiY3kyOUZoUGhQdm9qMDRCR21iK2JZKzJOYk80
T2FqSTY4Qk8veERLZwp3ZHRudXRsZnBXOFk2Mzg2S3pWSjcrYzNjL2ZMTTV4b2NSY3NzTW15OTVM
cGM0LzQ5T3NISERsL2V0WDVzd1htSFAwM2VwZ3JLMk54CnNZS085dzlUWC9GNmRHNHFHYVdaZ2tE
bmNTNWN1c3lWQ3lmeEEzamIrZkRLRlM1OWVKcDJINlNzY2xyZWZRY2Y0RkhYdXhpclZMMFIKeEI5
OG14MWJ5dVBuWGU5VjlSejdZeVVabTBnOC8vd1hrSWFaaUhLamI0NlRIeHpseElWakJQeXRWTGgr
K3dGUlBDb0hPK3d5NDY5Wgp2emhhWmphdnBiQndldXV5VE56UEVtaFJjZzk3SzlQbEhwVS9kZGxM
K1hadTcwT2VrWHV6a2JGQXFWRHBQR1duMyt4enJKbCtuU25sCkttM3Yyc2Q3Mys3dDI1ZlYrZnRx
S1N5UGEyMzJYTmtPNnU5NGpqeVB3dU8rTUc0U0xWTjQvNmliSzZjVkluMG1NL3I2eTYvMlc4cXUK
bGJRck5wNE9sYXRkTGc0Y2N0SGRuT1hHWFhOVkc3eUQzVUVYZittMDAyaGFkYTRuUmpMY0duVFFm
Y3JKcVc0Rkx4RHROeG5QZXlPNgovdnByZDZhUzFzTWRWTWZqeE9OT090NC96WldMWjloamhPbjk3
a3RDaytuY2NoNkNoN3BvWEl3VGo4ZHBPZlErWi8vNlYwNS9jSm1MCjU3cUJHT1Z1ZFdrbkNmL3dN
VGR1OTFOOStCU1gvM2FWc3lmT2N2WHlPWFlsQmhtTWFQanFLbDVTK2diUnY5OWdNQmJrektXcm5E
MTcKbGNQN1ZPS1VVVm0yaWZtS2gyRFhYd2dRSng2SDdndnZMVC9RejQ4Tzhja1hOeGswbXZud3ls
V3VYcjNLeFZPSGlmVGY0dFArc2VYagpwM29hT0hycEpHVWF4RU5obG5ZQkZPcURoK2hzQXEzNnlC
WXFINENWSWhhS1FkTTduTDU2Z3YzVnJnMWovWGRtbWNhbTd2MUt4VzQ2ClQ3VUQwT3piV1dTQlRa
YTlsOHhJemdFYUdXdnpONlc4UEZDcjZUajdWOW9ibldpYWdjdjVlbFErb0dRRkpJdFYwY2JCbG5v
cTNDNVUKdDJyZkhEMHUzS3FLMjFQTDI1MkhxVEN6S0c0WFRpQ2pyTGRKaGJyOUhSenQyTS9XS21m
UHU5NnJhcXY3WXpEU2Q1MjdNK3U5UWl3MQovMFdrQVphK0NIaHdLVUJGQTExSDIxZTEyUDBXV2Fh
ZlpNSHJ3RnUrWHVJV3ZSOGJ6QmpyVEQrUHRFVlBETjdhb3hTWnpoSi9BdmdVCmRyNlFmZHc4VDZP
VFN4ZGRCS3JzaDRiNWVCWndVRk5aZlBwMU5qZG1BUTVxZG16ZnZoVG03eXVqc0R3V3RZbHpaZHY4
ZnVmSTh5aDYKM0JjaEM2UnlEKy9wVlYzSlNwV1Q1eXU3V1NZZTJnOFo3N1lzUFNnNjhOUUFFWXRV
d2RMSktYdFpuMWRaWGo4Mm5PWFVGUmVOZFFwMQpqVTY2ajlqcEp4ZFpZKzM2eFZtcEpITUEvamVv
clZCUnk2dHAydHNNd1Boc2NtVkJNNWw3MjlDTXI2WUNGQVhWNWFLOGFqZXRCS2h3CkF4ZzgrdkU2
L1RFSWRKNm1ZMytkZmM4QWNGWFIrdWZqZ0I5dmhmcHkwamNYZUJvSFgvdGVxblBsc2pid0puNThl
RnlibUErUTFoaVAKQTc0V2R1ZHUwdW5KRUYvZUhnU0NuSHN2eU5LTC8vSzZBRWVhZ2ZCZEpsSXJE
NUJHT2tFY2dEaVBuczZ0eXUwMFU0TWFiVy9WYjc3eQpBVmlwV1NKQWMwTk4vbnBGWXYyM1pzM1Qr
L0h0VGQvNzUrUGpRRE0xNjFUTU5sMzJYaUpQNDd0Y3VuaUpRTlVtdThNVXpRT1QrWWtZCitOOWc1
MnZVcTZaRUZ5dzN3YTRER3k2aFZPMm5xd293Wit3L0xHcU1oTzd6MDBBVThOTjlyb3ZHS2hkNmFv
N3ArQmpEb1FRSFBqaEUKcmN0a2NuaUF2dUVFbnJJTVNlcm82bTZudWlEem5uYzlzSmdiZlVELzdT
aE9QOFJpWlhTZC9ndUIyc0k3dDBWeWJwcXhKdzlaMkJIQQpaMFc1M1IrbDdkaUh0RlkvWTdEbkpx
RTQ0QXZRMWY0dWdUb244NU54UnA5RzBOeDdhVkRHNkJtSUFqNDZqaDBpMkZDNVlkcjUrOU9KCmUz
Nk1rU2NqUkJNN09iQVhmdW9aQlB4MG5mNHpnVm8zbzNjKzRhY0lRQzlmRFhnNFdQQ0t0ZGo4Qm5X
bVNOd1ZRUEc4Uy81cm96Uk0KUmdadThWUEl2cHoyM1BvV0ZxdnBPdDFCdFRWUCtGOTlSQkpBUEU1
MTYySGFXdmRUNlZvL1R3ODBlQXF5UDBzc0F0NTJCZnZJWkxFcwpCeXYxMkN6UnZneFJuOEloVjdI
cHBhTm8xNll0TXd1cW8rU3J2Zmt4RXdJS05hNGkwNGJGMHhqNE9oeTROOWltYVdaUjEzM2psNHRy
CmsvR3NjT0IwWjVkZjJjZWpRTE9EU3FYWTlLcDByQ3dvZGpxbWxVVlZTc1JsWmNsbUtSci9Wdk55
cXl3cmk2SmttUjBCbWgzczJQUysKWkRGTUJ5N1ZqazFaSis5WEh4ZlR5S0s2VmkrM09uOS8yejRV
ejcrTlkxd3ZUd3ZMNDlLeWVldVhQRmMyRTErK2pmTnFBNy9yT2ZJOAoyOG8vN3RVdEx2N1c3RUFo
eS9oanUrS3hvNngwT1NsVmRqY09Mc3RrQ1BBcitZMVBLa0NXdE1IS1F6QVc0MUhBcCtCZHJ1QTVD
SjdJCnIrMVZlQjNZMWFnMWlSVlp2N2huTTNFMHdOOVFzL3oyTFdQWTdhdk9WZGNSWTJHS0NFRHpI
ank1K0pNek02alZ0YlJlNnNRRjZKUEQKOU1ZQVdqbllVcnMyTVdjRlFYOTkzdHYvRjVuKzBtdUkr
RUNFdWJmcnFGWUFNMHQ1b0hKejg0R1VOa1VjOERmVjJ0MnFyQVNobXdNQQp0QjF2cFNydm1DdDRk
d1VnRW1YaFdZWUd1eGJHd3ZoVGZHMGRWSTcwRStsN1JGdHpoMzNOMWpVRzhIS3FhbXUxOXRUY0ZP
Q2pyakovCnZUV3gvbVlXaHFua3JsOFdpcnE1QW01WjJOY2h5OFJFWlhtMTVSa3Zna0cwNzB1aXZz
TjU5MzQ3R1RzZCs1NWhvU29La0NZZWpVTnoKeTVyNzVaTE5scjFTVnU2WkpxaHEwV3RaOFJnQkZK
eHU1eWF2Zit2a2dabGtJZ2IrenBwMTM2Qy9pa3BVUUxiR0JjUUdlNkR0Q0tlTwoxelB3WFMrMys2
SmNQdEhNczVrcG9xRUJZcHFmQTRDVmpIR3pMMHozeGFzMGxpY1p1UFl6YXl1MTFuT3VCNlFtK1By
MkFLM0hMOUplClg4N2swRmZjdlBFUTM5VURWT1Fsb1RNemVwKytVQXlJTXRmY2pCZFlTTVQ1L2xZ
dmphY3VjTFhHSXZ6amRYcStpY0w1QzVScmNRYkMKTVNBRzdVYzRkc1RMM1o4RzZMLzFCV1hucmhC
d3hkZEp1NVhGd3YzUmswVERVVFRncC9KT1RoN3JaUEJXSHoxM24rQS8wWUt2dFJ0dgo1RFpsYmUv
eWw3ZnFjTG56YS9KcjVqUEQ5NS9lTEJMM0Zab2N4Zk51NHpSVUd0dTZPYTdlNXJ0Qkp4MkgvMHl0
eTRIS0hIYysrWnBJCjh4RXVuMmlDK1JIKzk4dWYrQ0kweDduTHJXakY4clRJQndyTVp4WVJvS05C
SVQyZDRiTnY3RHZFeVlzdWRxdFpCajdKRU1xVmhUdS8KWkNpL1ovRWdOOTNiYjFDMm1FV0xBa0VI
dnNVc2cxSEE2K0RrKzA1MkwvV1JOeXp1ZkpJaEVsUzQwdUZFeFdLa0Y5cFBxY3NQK3F1bgpqWVVz
TWFEREM4TjNkUG9pSzl1c3crTEJyeFpUb1N5WkRwVVRRUlVzaTZIdk01Z3RUdHFiN0MybXBqUDg4
eHVMcEErME9MUWRWbWpZCnJWSmI2V0Q2a2NHdkUvYWJqTEl5eUN6QzNvTXE2Y2NtWXpOWm9obkZI
Z2VRemhMVm9QbUFmZEdpY0Jxd1VpYURQU1lod0xjSWNRMTgKUzNFVllhVk5RbmRNQmpQZ1g0Ull0
Y0tIaDV5VXAwMEdmakdaSzVXWGxzWG9BNVBiQS9aRFQvQ0lrM2QzWjRrOHNwZ2R6NUp1Y25Lbwox
dUs3R3hZYWNQS2ltOTNsYTlQMnhTRU9CRGV4TCs4M1FlaXV5VWdVcWp0VkFvYkpyUUg0UTV1RHNj
RXNaVzBxN3gvSUhidVpERDFqCkRvNGVVTEdTR1Q2K2J0RjIwc21CT29pR1Z2TDMwbDhjUE5sRXpK
dk52d3JkTEJwajV4a1hMZFdPRGN0RFlmbkRzaGp1eTlBWEFaOFAKRm5IUS9iNkxpbzNPbFhMSGh2
R2xueGpjNmQxa1h1MHVmU3Q4MmVkSU1XYks1UDQvVFVad1VKM0pVclpQcFdPL3V2RzJkbVR6anZ2
SworQnE3NHBhZXpOQVhzOGRSMUxqc3ZDKzJmS215dXlsWldIcFJzWHE5eFFYNy8vT2U5VkpaUmpU
d2R6bzJmTERVeHUweTRDMThFN1BKCjljRmtlalFNd0J0NzdEN3ZWbnFhWC92c2daLzdHcnpMU3k3
RXh3QUkrbmZaZFNaOWt0NGJUemw4dFpaeXR3dEk4M0RRZmxBUGRyOUoKUVZPVFRhbWk0K2pxdnZV
dk1uM0FWVW05RDJMeENEMkRmazYzTjZLNjZqalVWYmU1K1ZqTXhVYnNlSExkZHVaSFFvUUJmTzI4
V2IrMgpBWE5oem43RHNkSllvRFBSSDJQZmgwZW9LWnNnMGhjbU90M0tnZDNscEdjbndOdENYbU8z
a2J1WEJydTUwbEdzVzViRlhEd00zbzZDCnQ0MzVzVnJwR1NLUHhwZ2RIeVRkZElaRHRiTjhkNk1Y
RFQ4bkx4NWR2cWFacVdudS8vTU9JOVJSblptbWJOOWgzdDJUSlhUM0hpUFIKR05XZHh3a1lZVzRO
eE9nOGM1bVdhaGRZYVVZZi9NTHRnWWg5REk2YzQ5MWRCc09SVVNZR1ExUWVPVWV3Zkp6ck4vdkIy
OEdsc3kxbwo0VDV1OWtlZytRaFhEald0N0ZleGJlM09iQnk3T3NmQUoxL25uZ1Y2dVROVXpxRURE
VGhTMHd6MmZFTUlQNzdGSkhGTnc5ZHhtaFBCCldraHJ1ZnRselRybjZlYkxYckdZMjJ0VERQd1Na
aTRhZzJBN3ZzV29QVGJJMjh6SjkvL0U3dHhiUG11OUdGdktpSVllTWpZVElwcnAKNU5KZmFubnlI
SG1nQW1aeWxpalFXVnYwckh0bHZkREdUUVB3dGgzbnhJRW02dW9EdERRRDhXZm9sa0oxWXd2dnZC
MVlYdFkwN0V0eApmR0lHOFBDSFUvdFExelRrUE85NmdNT0pEL0I2M0lBRmlnZUk4Nnp3R1ZncHAr
bEFGNTArd05kQjk2RkRuTDF5aFRjemo0bmp3NVdlClkzUmlubHlUSTZHUlo5UzNIS0RkQ3dTUDBk
WGFSRU5USzhlUDIzME5uNHhyRzZSZHVEOEtWUTM3YWZiYWFWODYxTUx1aG1hYVYzWVgKVjRVSEQr
QXNLNlBjN1Y1emNTcWNQL2R3Y0oyNDU5Yk51MUpwS0lxTHNqSzdydXB5dTNHNVhTU2UzaWVDbCtN
SG0zQUJycW9tdW84RQpnVEQzbnVwRjgvVHcvdW8xaHlrNW5UdDQ4UXpmM1lQajNmWkZmQ29KdUJU
ZU9tbFB0eDkzMHZrSGxiZFhUZitmTmlmdnZLa1FCK0xoCkxMNkRMaTZlVmtETE1qaXkrcE1yV1JJ
QWkzWkxoVGx2TVlpRHBwcGN5Mi9COUh5dTYwTC9keVpxczVNUGM5dTgrYXVGVXFHeXR4NWkKd0Q3
ZjB1dDVrOEU0bEhzY3VXbUR6Nyt4Y0hXcW5EM2g1bHduRFBaYVBOU3lZRm44MnB2Rlc2L1FGSEF3
RWM0UzhTcnM5aWo0R3gxRQpZOURjYkk4RFNHdjJBN0cvTnJmZGdta3prZUdqejAyMEpwV3JKOXgw
ZDlwL1g0cXJrRDZYNGFQUFRPSzdWUDUyd3MzUmt5cStxTVhQClR5eFVqMHBycWJ6VVRlNThsT0gy
dUlQTFYxMTArU0g4MkNKYnJyQ25DaUp4S0YvSThGMFlPbkpkUTJhZlpaZGovWi9QVE9MMWRxenQK
YmZZbWQ5V1UzaGVsUW1WZmt3TU5pUGFaUk5NTy9GNm9ibEpwYllaNFBEY2V5TEw0MXcyTDJJSTly
VlFvZFBqZ21RNG8rZm5yM2tUTQpXOG0vOVdKMEtTWEtRNUh5Wjh4WjlFWGc1R1UzSjdvVXREaTRs
UkxuU29uNDZ2WTdONTlYbS9CU3o1RWkwdE1aUHY3Y1JOL241T3hSCkY0MFZFTzYxMEV0dFMxbDdY
aTB4WmpKOGRqTkx4M0VuWGNGYzVhL0k4cVhLYm5MVTRObzFmWU4veG5MM0toTWd3MHIvYmQwa0hB
SjgKQ3F1LzU1R2NzYy8xTjNhdGY0czJFeGx1OUVQYk1TZUZ6OFdiV2QvZXlBSmp1WS9NOU43dTVj
NFBYL0hSWjkrUWFHN2orTGxMTkMwSApsV1pxTkFaQStQYjMvUER0TmE1OWVoTm5aMkNsb3BIV2lN
WUJBZ1QyNUQ4SUdla1VxWFFhWGRkSnAxT2tsNzZpK0NMVEI4Qk44TDFUCkJBQXRkSnNiQTZNRjR3
Vkt6TGVlTVI3V2dHYnFLbDFnSlhqWVl6OTB0cjJ6bjdYdEVvdk1UOWdEMHBjUG42NFJKVUJkaFVw
MVl3dGUKWVBDK1BVWkVpNFh3diszTGI2VTJGM1AzcDh3NjMrSktNUjBHYjZBbXZ6SlpFS3RTWHMy
ZUtqTjNUYnZQZDJHRGppTnRRSXpaM0ltZApuaDdtNDgrL1FkOTNoTE5IRDlGWW9SSHVuU0JUVWNl
K3B2TGM5ZXM3b21rdmZxL1A3ajZuejNEbm84KzRQVjdENWF0WGN0ZjlXYklWCjFkUzROR0w0VUdm
djBmdFVvYXZkRDlvb1AvL3dQWS94MGVZREVxbFY1WDJkYlpXSzNWWE5XeWZ0WjZ6MjQrZnBETzZD
eEFnZmZmNE4KV3RNcHJwNDRTbmRuRXdEN2NoWEh0RGFWdTEvdUtKcXJteTU3NjhTTXA1N1dOK3R6
OTh3b3ZvTW51WGo2TUdnUkJrZnNNbUZ1RktQaQp3ZCs0TTNldDhlRitqanhZS25QSjJTbkFUKzNy
MVArS0Yvd0dCTUJUdHBRQkNqdDNCU0F5VGRvRWoySVBuRm5pOHRRU0FNSTlOd2lICkFuUjMvWW5H
ZFpwcW5tdTk4dDJjdUhxRnVkRmh2djJpUDljZk04QzZRK1R0QVN5NUNZdkVWQno4clNpV1RpWURa
WHVPMEwwSEZJOEgKY09BcUE1K25iQ1c1WFEzNEdTQ3ppYlJYNzQrOVQzYmFqbHkrZVhmNVlYaDU3
NEdOQnMydW5tOHd2MEhjTG8ramVONlpwZEpZbTJaUwptd004ckI2SFh1RzFLeGlHWVgrcEpEOVBp
NzJXekRJYnR4ODQraWNjWERucUpEbHNYeWpyYzMydmpkeG5MdXRyRlZ3dVNCVk1KelU3CjZHTVgz
T3l1QU1vZCtNRStEa3ZLVlU1Y1ViQnlYVE1tSDF0NDI5WGwxN0l6ZWRNVzA2UDIzOXRQdTloZjZ3
QXppNCtWMXN2MGpQMzIKb3E3S2JyMSsxRy9INVBQYU1ldTVHUCt3WHdXeUxDd0FPSGluVVFFclM5
dUhMaW85RHBLakJtV3RLbjlydGZQbTJZSzluajgzYUZUTAp2U1dwOWhTWk5renVmR0ZCVU9HOVhI
L3lwTFk2cmdLNnlUKyt0c0N2MEoxTEQ0ZDlBY2dZdVQ3d0crYWx4ZEJOazRqWHdmbGpLdlBECkJq
MHg2RHl0b3VKZ01kZVBQaEpXdUh6VlNlcVJ2cEludVZpMVpvVXJ1VGN6Vmk2QW1zck43VXQycVd4
NkZibzZWaTViYzh2OTU3UE0KREdic0xob3ArNnhRRlRBVzRZMDYrMEF2NXVWdmlaaWZJLy9XaTNI
KzBRYmxnY0x5QjBwdTFadDlHYTUwT1RsL3hzSlo2bHdwR1orQwpkd3Q1dGJHWGZJNFVwcFkyK2Zz
M0Z0NDJsWTdjMjVQR1B6azUvNjdkdWo5ZllsdUxCZWNWQUtaRjN3MkxZeGRjTkJSOFRTeHYrVkps
CkYvQTBPTGw0Y2FOUDNUcnNCMWRWNGEwT2lQWmIzT3d4YVBaQ2YrNU5vci9Sc2VxaE5NdE1MSmQv
Nnd6d3QxSW1ONzZ3YU8xMmNxQ2gKTU05S3I3L0UwS2FJQWdTNytYQy96dld2b3hEbzR2MURnZnpy
ZFZwak5BNTRXem4zUVJzZVVqeThmUjNYbnBWV1lpTzlnUDFCcWwzcwp6R3ZGc2tqT2puTC9iaDlS
RGZBMmMrVHdRWnBxMVJlYS9qSjNIWWN2bm9UUGJoSU4zZWFuSGFjNXVybzcyQWJ6eldmVDl0dU81
ajMyCitXam9kdVdBWmhwM3JhMSttUE54Qm5KZjRmTG1IdjdTczJOby9rWjcvUW9mclFIb2lUNWdJ
cm1ibVREcys3QXlmeVBsOVp5NGNnVnIKdmE0N3FYbENRTnV1L0lIVWEySkZZVEZwUC9oR3dyVmN2
aG9rOWVnSElJRFA2OFpLVC9EM2Ivcnd0aDJubzhsdThXLzgwd1hPdit2RQpEZWhXN3NMalBVSlhS
MU11bFNSRFg5MGc0bTNqL0xIOXpBL2Z5VjMzN1paM1Baa0VORUxQam5DMXE1Rm9UeDhBMGZyVFhB
MVcwTjhQCjNsWnZydUtVWk9qbWV0dmFPSFlBSTZFQmZ1cHJLM0V4UTg4WFAwR3dtL2RhN0xkWFNX
MEdhS1l1OTNwSm14Z0JXcW4yRkwrbWJhN3MKYlJRekxHZ3pnSmRqRjg3bTdwbmVsWHVtTWNPZEVq
RXVMdGh2ei95K3lwTEhiMDBlTEY4d1RMUjRCSHlkVkw1ZTlZOFgvME9FZVEreApwZ0U0aXovMHUy
bzVmUEUwYlg1QWkzTDc2MDgzOTlXQnphNW5KUmo2Nm1PK3ZwMm04OHBWemgwT1FQSE9XdXVrQTdD
VHBxWUFnVUNBClFGTVRqVTFOTkt3WlExS3d5b3RJTy8veGVXczJpdnQ1ODN5TkxCa3pWOE5mZGQ5
VlBUVUV0aEs5bVdYTWJsemkzSHQyMTZqUllTQ2cKNE0yTjk0Zy9MakU5WWsvN2N2M3Ewak1XTWFD
eThCT2xTLzNDTFl2N0lUaXdOMWYwQzZmVFdTSng4SGVvdE9iZU5CZ0xXZUpBdGRkKwptQm9mQUlJ
T3FoU1lEMmNZME1BYlZLakszWFFWcDcxZUtwMGxNWnJoZGhpYXUxUzdwVTV4VU9seGtKb3d1QjV4
ME4yK2ROUEpNdm5ZCkhtQmNWMkduTXhFQ2drcXVoVy8xZEphSnNQMDUzbU90enVYMTQ4TVVIUjhD
TVBmRS9tVHE0WVBxY2psZDZrWlRXZVlvbVplSkVaTkIKRGRDeTlOOHkrSFZSNGR3bEZ5MjF1VHpK
SGNmamw1MjRzQmgvWUcrclNsMFZhNXN6MTJKak1UWUF0Q3BVYm1wZlZ2cnBIeitaMzJheQpvOVpl
WXphYTRaNnBjT293a0h0UW4ralA4T3lBazRieTR2bTdmc3pQbDMvcnhiaGhlU2dzZjRCYXBYS3NG
WWhhM0hsa1VWbXRvSlE0ClYwckh0NVc4S3VGbG55TkY4ajRPdlB2bXlvRlIzTXJ5T2I3eHRncVB1
MDJmTVNrNzRseFQrY2hmbmhKbDExNCt2ZUh2b0Rod2xhK2sKVVJkMDgrRnBsUU9OQ2p2TFY1YnBh
RmxWNk15c1hUYWJIUlFiTzJzbFRmN25jNVBtazA3YWkxVFlTcTIvMnZ5VTNhMnBkVThkbnVwRwpP
bnhBTk1SWU1yODFhbW1zZ2ErcGdTcVhndW9xcDY3bEdBMlZTN215MnBwMzZGUTNOTk5RRGVEbCtN
bEROT1h1b3k4eWZUTTF3MHpTCmJtdFh5bmZUZGZFNGZpRFdGMmJPTEQwZklEbHBOeGNHL2JWMlgv
MlVSZ3pBdjR1MVg1dzNlZnFnQndCLzV3RnFjL08xV0lqQXZxVnUKUHlvTmIzVUFHcmQrK0lKQmJ4
dTdpajBRcjFQNUFGaWNtd1M4N05xWmYzSVd4Z29weGlQMlc2TGpsNE80U0RQK0lBYUJScXBVbUhz
UwpKbzZYZDkrc1g5Nkc0cTZnc3NJRjZJdy90cnNqSFQvWnREdy9NUkxPWGZjSDZiOTFpMThYNnps
MzZXKzAxTHJCMUJnSmEwQ0E4MTFOCllFenpKQXJRenVWZ0xlYmNPR0VnMEZoVGVsc2xZZ2VkK09N
b0JQYmlkVmxNaE84U3hjdXgxcVZQSE92RWgyUFE3TS9kTTVKTWhEUUkKN2k3ZUZaRE5sYjJOWTlh
SmowUWgwTHJxbmptUnUyYzZOeEdqd2VUak1IamJxYXRRdHBnSHEzYkVTakVlQVY5anpRc2FCN1I5
dGxnQgpLYjI0Yy9XQUkzWDk2cGd4TTh4d2NpY0hqbDdsL0xFT3ZNREE0OG1TbjFmYjdIcUprUkNE
R25SZmFMY1AzdEpiaHcxM3djb041OHYxCjdZMzFNaksvcXVLZ1QvTER0MkZXZWltczJwaWVJZ3BV
ZTl6UG1mYnFvWVJyWDB3NVN3emtzdWR2SFBlekVubFhLbzBWS2p0M0JvQVkKczRtVmRLeDBrdWlh
N1Zpc2QzczJGaXlpUU9zeHB6MndMemZHb1RXZ1lPbFowQzJHNHhCc1VqQlNGbGFSNmRIYzlOSnQ2
RkdmM2ZMMwpUdE5LREt0dlplbHBreGdPNnBlNmdoUk1wM0xkblBZdDM5Z3RIdlhiWDd3NUdGQWds
V1VRYU51cllzMW4rTExmWHFySnI1REovZUJYCjVSNzc4NWkzN21XWTFCMmNQdS9pVUdBbEhtTXV3
L2RoQnhlUHJ2cTlCOTNpY1F3Q2I2dTRqQ3htMHJKYnZkNXdvQ2N0VW9uOGFidmgKeFVGTjdwNDBQ
V1RRcjBIN1hpVy9WZ2hBbG9WWis3OXFsbHRFc3p3TjIvdlYycVJBaWJ6VUYrMXRucnJrNHVnSk4x
MEhuRlNwZGxjUwpLMkV4cUVGemw1TjZsMzBjSXhxMDdsY3c5U3pwWEl0MGRlNGlQUjJ5eC9WMHZx
RmdHbG1lbGRvWDNXSWtabzhIcVMrNHdqcHkyZHJUCms2WGpYU2M3SyszS1FIaEE1NTZxY21pcEhC
VG1iNG1ZbnlmLzFvdHhvL0pRV1A0U1l4bm1UUWNON1U3YXZCRHR6VEJubGpwWHJOTHgKYlNXdlN0
aU9jMlMxcGN0SlJkNmd5K3p5ZWIzaHRncU8rOUk2N3RxVnNTaDVDcFpQbFNpN0dCWi8veXpEWit2
K00zZ3luMStlUExVcQpUZlV3L2lCWFliM2d6R3MwTUJmc3NUN0JQV3ZIbUZoSmsrK3ZteHc4N3lL
NFd3R3lqSTJZZWMxYkc2MmZMMDA4RWdQOE5OU1ZBMjRhCmc2MkFSdmpKN09wVWw4Y2FOQzMzaTFl
cGEycWdISjNoSDc1bEpHSGkybEZqZjZZL05rY3F2LzRBeHB6OWNPcHJYalVvL3NXbXZ6QXkKUkhU
Vi9ZankzVFEzMjhzcVVISStHRXcvalFCZTl0VGFCMXl0c0Z1MHlSaHI3bVBKMFNGNklvQ3ZnMFBM
YjFpU1BBbEQ0NnB1UCs2NgpKdHE4Z0FiZXdKNzhNYWdVVnQ3V21wK01BVTFVNWRVLzFzWnFKYVp5
MTdSenVXdWFscnVtMVdMcWV1NDg4aFNjUjduUFArdGE3dnAxCkt1LzZwUzhtQUQrbkx2Mk5veWRP
MEhWZ1AxV3FpUW5vYy9ZYmhMYmpmNlFTU00vRWlRRkh6citOQzlEaVQ0RUE5UjdRRFd2RGJaV0sK
SFYzTDNmdHJNRkxQU003RXdSdFlkYy80TkhmUHFMWDNLVG1YdTE5V295Zm5TYS9KNU0yVnZZMWlS
dGR5OTh5bHJsQXBIdlVOQUsyOAowMVRCc3hJeG9zL2xyalVOdUF3RGMwdDVrRjR1TjB0ZlNOdFRW
K1JUdzYrNHJWVkE5SlQ5eWJKTWtZZkszTjB0TnB2TVpZekZ3bFMwCmVDcTVyaTc5QTFGMG9MS2ho
Ull2c0tOODQwL1RiV0c5akdVL1ZzZEd4NWlmR2FHdkx3WmttQm1mWUg1TmFUUkpaNEQ0MHNWSnBl
RXQKdTY5ZHo1Zi9TMmhrZ3NteFIzejc2VTI4Nyt5MWE1bE9pRWVla0xCTEl0SEJXMENRdHhvcU41
OTJMbC9NekZLcWRpemFWQXkwQlZaLwpXVEUyTmNYYzNDamhrZm1pV1dQUEgrZFoxZHZyeHUwcWtY
Y2JwK0VDWXFSeXRhL3F4Z0Jlb1A5dW1LV1AxU1dtWW9DUGQvWldGOG5UCnRSWnkvY2lYK2lrbnAr
MEhtL0lGazl0M1RaS1Q5clE2bmVGT0pFdXFZRnJYTE9MQVhsL3VSanhndDdRZXYrQmNidjBjSGRE
NTZKck8KV0NyTDhtOHRIRkZ6TFFXRjB5eDNYYWp4NUxxTzlHVG9qOXNQM2g3c3Z0VUFPOUltMzMr
WjVYQnVySUk1a2VFZnVVOXN6ajB5MFFDdgpDZTRxQmUrcVFiVlcwdVNUcnkwQzc2aDUvWW1OaE4y
Q3ZOTXd1ZFZua3NvOXRPeElXL3pZYTJFczVFOW5jMlZHTjdMTVJBMit5ZjB3Cm1UR1I0ZnNCT3c1
elBzTzFhenAzSG1YeDVPN2JTNlZ2NXBGQmJ4U09mV2cvL0tSTDVPWFNLVHc5YStmai9JVEJ0WTh6
SkMxSVROcGIKM1pmckNwS2N6UjFIemVSLzcxb1l1U0t3YUdTWml4cDhNNXNXZ0pnQUFDQUFTVVJC
VkpDTFpTckRyWkMxWFA3WDI1ZlV0QjFiaTMvOQp5MVhiY1NmVkNqaHlYM0VhbkZib2JsKzVLaFRt
Ny95R01adGJ6citOWWx5L1BLd3RqOVBERm85bjdHK3FOTFhZU3ltVU9sZXNrdkZ0CkphOUtlZG5u
Q0t6Tys1WHI1V3h1ZkVoNkpzTzFqek04czBybDc5cmpuZ1gwbVF4ZmZXendkSDV0MDBqKzhxWExy
dVZTT1hIVnpkVU4KL3UwdjZCS1ptTWh3N1ZPVGNKbURNNWZjMUJlOGhaa1pzM2ZNWDU5LzRNeGM1
U09PZzJRc3c5Q1F3WjF2RGU3T2t6ZW1ZTDMxMTBoTwoyOTJIZkEzTG4xVDM3TmxMQUlnUC9McnFz
K2Z6UEEzYlhUOXFscjdDWkpta0V0T0VmdmlVdm1Rai9rb1YzSFVjUE53TWhQbnBialR2Cm9XOHVG
aVVHK1BiVXJWejNYbkQ2cHBra2ZPL0pTdVZIbnlNV0FRSjdxRlFwT1gvcGdSQnZnSnFsejVTNWRy
STNBTVQ3R1p0YmFYcE0KVG9TNWZqc0VnVTR1dkI5YzNpZDk4Z2tSZ3RUbXZlV29JTkRhREVCTFEv
NEEvTkdCci9qbzJyZU1yYW14TFVreEZkS2d0VGEvNGxJawoxc1RrS09Calh5Nk41T3dFR2o3S3RU
RC9lM2N5dDJLTVdTMDNIbVRtRWRjK0h1Q1pCYW5wc2R6MUszK2NadTZwanVuWkZHQXhQeEhpCjJz
Zi9JbW5CclAyYWphWmQ1WURGYkd3UWFHT1gzWGVObVlrWStNdUkvdjBtbzZuc2h0c3FGWHR5Y2d3
TkwrcjBQZTVFNXJFeUFCYTYKWVRBVEhjamRNN3dZRTNmNWZpRE80dncwNEdOSGVvUWZlK05yUDhT
MXliSzNVY3hwTFU0Y0gzdDlIc0JrYk9CN0JqUS94eSswNFdIcAp1Vzc5R0kzRWJPNWFNOHF0dnFm
TWJ5a1B0T1Y3OHRJWDBuYTlEdDlETDZDMnRiWDlQNXRaTURFNnhLYzM3dGdQeGNseDdqK2RwV2JQ
CkcxUzVGYkNTaEh0LzRsZHRFV2Fma0M2dlE1bDV5TzE3MDhBQzB4a3Zub1V3ZlQ4L1laRUZwcWRT
N0t5cDRNbTluN2svbWNLWUdHUXcKSGVCa3h6NDhydFVseFdRaTNNYy90N3dldU4wcWMrRW9UOGFp
RENlOEhEeFF4OVBSS0dOUEZQYS84d2JMbnlHM0VvUnUzMkpnZkJHSQpNNU1xWjA5RExlV2VPaG84
R1NLak1TWkdIdk1vT3NyK0kyYzQ2TGMvczZzOUNURTZOY1d2OTRZWUdyclAwOWxtVGw3b29NYnQy
Q0J0CkI5NnlNUWIrdGJRL3p6RG1vdnpyeVFJa3gwaTdhMUJtSS93WW1nYW0wYXdhOWpic3BzSXh4
ZU5maDNuNE1NTWZPdDZrY3ZXK0ttV1UKcjVyZjJ2VW5XcnhtMGJpdHhWbENBMzFyODg1ZGtiZU4v
RFJNSnNKMytlZlBFUmFCSitGSjNIVSs2bXBxMmZ1R2wvbUJQdnFHWmpGUwpFZjd4aTA3M3VXN3F5
MU5GOHpUL0M1OVp4b2NzUm1zVi9oaXdXOTJmVFpzOEhJVnhSZUdEdnpqUjR5WVB4MkNxU3VIMEg1
MmtDNmJuCkhwbzhub0xFb3NYRUx5WURsb016cDl6c1d0WGxZZmFSeFZNTkdsdFV2SmJGMS8vTTBu
bklhYjlPVHhkTUEwYlNJaktXUlRjc2ZyMWwKTVZldmNPS0VhL21WcDVtMGVCQ0YwU2RaL256SlRm
VXprL0JUTzZaVGYzVGkwRTN1ZnB2RkUzU2dSTEtFSWhiM25scnMzYTlTcHB0OAo5LytaSklHSmlJ
VzdRYUV1YTNMdFU1UG10eHo4K2pCTFBPWGcrRkVYanFSRk9BcWo4M0Q4cEF1bFlMcFN0UmgrbUdV
NFpKR29Wdm1nCjA4R0Q0U3hUVlFwLzdiUzdpNWdwaTlERExCVStCOEVtaGZTRExIMVRGc2FFeVow
cEI2ZFB1ZkRsdnA0elhTSXYzUldRZkpEbC9tT0wKb1NHTFNVWGgxQWN1ZHFwWllvTVdvenNWT3By
dDQyak1XNFNmMk1meDdGK2NPQzJMeUdpV2h5R0xoVnFGUHdmZzBTaU03MUE0OHljbgpaY3JHKzdM
d3hPVFJvb09PZDlTMW54alVMZTQ5YzNEc25Wd3JadHJpM2tNNGY4NlYvNm5UUll0N3kvbnJaR2Fv
Uk14YnpMKzVkV0swCk5pd1BhOHRmUEdUeHkzMkxSTUxrbnlGbzdYS3l0NGFTNTBybERqYU1iMHQ1
VmNKTFBVZVdHbVZXNWYzYkFRVmpMTXZBUFl1aElaTUgKQ1RoenhrV1ZzMFQrS29YSDNVVzVBcWtw
azE5R29IcXZnczlUMEFXcllQbXk3TVpsZHl1REtHZEdEUDc1bGNuUGo3TjBIblBTZmRESgpxcC9E
d0V5YTlQMGp3OCs1OFg5NnlzSmRyYkRUN1FETDR1Ny9hL0lrdCt6NE9NVGpNSnVFUTExT3FseU9q
ZGN2WUNaSCtmNzZiYnZ4CktEbEcwbEZIZzI4bmlsSk9tVHJMbzRtblJFSUo2dmJ0NU5HM1gvUHJJ
c0FDa2Z0UG1YdzZUTy9QL1R6NE5jTEVBclQrK1REKzNQaUgKOHBwRzl0YTVHZm41bjl5OU44VHM3
Q3lobmg2R25rN2piKzdnM2RaR3lsWEhTMGcveTlPK2Z6RnVqdlBnNTZla2pDbHUvL2d6czk1VwpU
bmUxc01OcGJEaS9mSEdjMjU5L3h6akE0Z1FMVmcxdjFGZWhvRkxkc0oveTlBUjMvdmt2bnM0bUdB
djlTTitEY2RxT25PTFlnVGRZCnl0N2tSSWpQdngwQXBwbEx1UEg1NjVibnVUM2xQQTJsQ1hic3Az
ejVYRE9aZmZRdm5tcEpHbHZld2VzdWNoS21aL2o1d1dNQzd4eWsKSWZlQWFTWEhpc1Jhd2ZoZ0Q2
TTdEOURSWEpPN3BzVUlQM25DdUxLUHMzL1pSMlhsVG95eENBUDM3ak0wTk1TRFJCVm56dnlSS2lm
TQpQZW5uMGVMYmRMeVRQMERlWGJHRDVJTkgzSDhjWm1qb0hwUEtHNXo2NENBN1ZaM1kwTDhZMy9z
dW5RMlZRSm9udHg2dzJONU82KzRkCmdNVk1KTVRZK0RRTm5hY0o3aXJiWUZzR3NSS3g2L0V3RDhl
bW1LcHE1ZlFmbXloVERJWWZoaGdPaFVoVXQvRkJwNDhId3hHbXFscjUKYStjYm1Ja0p3dEVvby9N
MUhEL1ptbmQ5MjNUWjI5OUFuZGV6VHN3dy9mQm5Iay9Oa0ZnMG1QamxCd2FzdHpsenFqTjN6MVJ4
bG9oUgpYWnpsM3NNeDRxazZqaDk5azVtaHJlUkI0M0pQaGVtSFB4RE52RW43Mjd0Zi9LRHVsOHh4
OWVyVmpUcXd2blNXYVpBeHdlMWV2N3ZXCjg2OW5ZaGpneW8yVXRrd1RSZDNhTDRWYWhvNXVXcWp1
OHBVZlZNSmcrTnRQR0drNnc0bVduZWk2aGRQdEtualI4OXZUWGhVRmhtNmkKcmtsai9mbkY0ODdO
SzVwM3BkSllqMGs2bFNaaktWUjRLcmIwNDBwclpkRjFjTHNkbTVpMkdMaVdJZGFxY0x4VmhTeVVG
N25SWW1VeApUSEM1SEdCbFNTMUN4ZkluWlF1bWwzZko3dGV0dUIyNGkvM09ndzZLMjVIYjEveVlR
dGN5Skk0NU9kUmd2MG1ZR2NsdzQ2Y3M3YWRjCnRGYURib0V6bTJYa2ZvYWVFQVFDRUUwcFhEcmh4
S0ZuVWQxTHYyRmdwN1ArdFAyN0RTYmdkam1LNU5YS01nNVgvamF5RkM2M3lid2sKU3pxZFJYRVZ5
NWUxZWVSYXRZMVNzVzVtWDlaTHkyTDE3ejVrTVMwSHhUNWZiK1RsYittWWwrSXFuWC9yS1ZFZWFs
aFQvZ3c5aTZLQwpybWRSM1FydWRVK29ZbmxVS3I3TjVGV1dWREtMcFJSL1BXNVpVTzVSVUYvV09W
S1hYeVpXNTcyZXRuOGZabVhmTnJldHRjYzlTem9OCjd2TGlaYUZ3K2Vjdm0vbjBwSVdoT3ZDVWIz
M2QxNDVsa0hxV3dyQkFVVjJVbFZma2ZiRGtKU1NJbnNyZ3JuQmpwQklrVXpvNHk5aFoKNVZsK1VO
dDRmbWxHT3NWaXhzVGhjRkx1S2RGYm93ZzlyZU11TDJpbHRzemMvYW40MXRLVFEzeDJjNFJqRjg3
U1VOaDNxeVQ3bnU0cQp1TS9yYVIwVUYrNzFMeTRGVE5KcEE4WGx4cjNKM3dVQit4a2tvemdMMXRu
c3RncGp0OUIxTSsrWnhUUjBUSnk0WFVxUitSYUdua0YxCnUxL0FRT2RpTVNjWnVIYWRXR3MzeDF0
M1ExYWx2RWgrYmh3akdMcStRWXlsOHdCU0RGejduRmpiU2M0ZTJQMmI5M1M3L2U0VmtOZVQKVHZp
clQrbjNIK05xZThQdkhjeHI2OXExMy9McjdVSUlJVGJyNnRYWHI0dkdmN3FKZ2EvNExxUngrUFI1
R25mdXlEM0lpdDlkY29ScgoxMytpL2VRbFduZi9IdWVWaFo1YUpEMC93cGZmOWROMjhpSUgxdnZ4
cWxmWTYvYkc1aFZnTWovMmtINE4wSVlaYWR6Sm5ycksxK3JYCkoxOFZ6MzFEMUMyR2Zzd3dHQWQv
cTBMSEgxUXFuNk5GOHNYTE1oazJ1TmtQcmUwS085UXNJLzFaS2p0Vi90U2kvc2EzUXkvSks1dVgK
L3c1ZXcvTHcwcjNJUEpIOEZmL2VuTjRBYlcwV0M5RVFEMzJ0dERaV2xsNUp2Rno2SEVPOVB3RXdO
VFpHd3R0RVpiSHVjeStWeWVUagorOFFObGRhMkRocTlyMS9sQStRTnlOWlphU1pHSjhrNG5TaFk2
THBDZlZQRHFuNmQ0bVd6REl0RXl2NDZqcFVCOTA2RjhsZm9hY1BVCkxaTFA3TThSNy9BNEtIZTl1
Zy8wcjNwZS9qdDRuY3JEZG5tUmVTTDVLNFRZTHBhUklwRXlVQlFGSzJQaDNsa2w5OHpuSkJVUUlZ
UVEKUWdnaHhMYVJkbnNoaEJCQ0NDSEV0cEVLaUhqbEdLa0VjL01KOUZLL1NsbkFza3owVklMNXBB
eHVGMElJSVlSNFZXMXVFTHFWSU5SNwpoMmdLeW9ERnhVWEt5bUJ4c1l6NnBpWUN6ZnVwWGYxQjg3
emxGMW1NUTFOM053Y2FkekEyMU12ZGtSUmxaZlozekx2T3ZZZDc1Qi9jCkdveXRyTy8xNFdPUlJV
MURBL0EyYy9xRFA1RUsvY1F2c1F4b2k3eDk1Z1AyVnhjTy9VNFMrdUVIb2huUTRoNjZ6N1V6Zisv
bkluSEkKUUs1WFZXSjBnQzl1VCtNbGp1YnQ1UExabG5VSCtPdHpqL2owNndjY09YK2FSbldHM3M5
dkVnVjhuV2M0MFNKZmZCRkNDQ0dFZUJWdAo3ZzJJVWtscjExOElMTWFKeHhjNTJQMEJKMDc4bGZl
N2dpd085bkhqODQ4Wm50SFhMaytjZUJ3T25EK2RlK2hYYURod2lMYzljZUx4Ck9KMm4zeU5RcWZO
ME1FYno0ZU5jdUh5RmMwZWFRWXREb0pQVFY2OXc3bGc3YU9CVVZScmJ1MmdwaTZPaDhYUnFZVTJZ
MDBNL01CRFQKME9KbEhMdndIbzFWM25YaUVNVllwc0ZHTHgxS3pmK3RhVmpKVWI2NEhlTHcrZmM1
ZWJJZGYzM0ZoZ1hVU000QkdobkxRcW5ZVGVjcAorOWZybTMwN2YyT1VRZ2doaEJEaVpkbDhGNnkw
eHJnRytKclpYZWtDRkNxcUcrbTZlQXd2MEhmakxnbXJZUG00dlh4OTVlcTNJeW5tCllnQkI5bFM3
TWVkalJQeEg2TnhmVDRWTEpUVTdEVUJqdlJjVmxTcWZENzkvRng0Rk1CWVlpeGNQM1ppUDhzMmda
ay80bTlpMTlOT1gKeTNHMHNLZFNQbFd3TG11ZTNvOXZNMk04NS93WGtNYmNXQmhveFZlcDRON2R5
dEdPeGcwL3BlbHBmSmRMRnk4UnFMTGZrY3pIeDRGbQphdVE0Q3lHRUVFSzhzalpkQVVscFU4UUJm
K011OGpxM2xGZlQ1QVdZUmt1WmE1YjM3YW5MVzk1S3pSSUd2TUU5N0ZEQXNhT0pELy9jCm1Bc2t5
VVJJQXdMczhpNnR0WU4zRGphZ0F2cjhCREc4ZUlIWTdNS3FsdlFFZzEvMjRQVjVBUWk4c1d1NTI4
NXkzRTIxVy9xdERtdXAKTW1XWm1GYXhHY1hXc1RETnRmT0wvZTFseHJGMUJ0RytMNG42OWxGYk5K
Tkt6Vi9MTWd2ZmM1VGFoc25NU0J5Q3UvRVVic3V5V05wYgpNMisvRlp4dVo2N3NwSWxINDlDOGg4
cFZwWHJqdkxjd3pLVjRONStmYS9kTkNDR0VFRUpzMWlaL2lOQmlMallDUU1PYTdpMU9kbmdBClRT
TzVhSUpIelZ0K1Q4SHlxYmxaQVB6K2F2dkIwVjJ4L01CcEpXY0lBUVFhOEM0MVlxc1YxRlhiLzZt
TlJtaytmSUN5QnoraEpSYXgKQUJXWUhQaUNjR3NYWFVUb2lVTjkzVkthSzNHOHNZbHVPVlpxbXVI
SUtCT0RJU3FQbkNOWVBzNzFtLzNnN2VEUzJSYTBjQjgzK3lQUQpmSVFyaDVxV1crZXQ5QXloTzcw
TVpxcnhMMGFKVlhmdzRhRWdpMDlERElVR2lKVWQ1dktKL2Jnd2lQWjhRby9heGVWREFidENaS1Va
CmZmQUx0d2NpQUFTUG5PUGRYY1p6eFZGMFc3c3pSQjZOTVRzK1NMcnBESWRxWi9udVJpOGFmazVl
UE1wdWRZNkJUNzYyODUxZTdneVYKYytoQXc4bzJqWFhtRjBtcm82a0tyQ1REZlQvUUZ3R2ZyNHhG
ZkhTLzEwamswL1hUU0l5R0dCeVpZaTRPeE8vU2s1bmt6WU50MUdWbgpHZXo1aGhCK2ZJdEo0cHFH
citNMEoxcktpSVllTWpZVElwcnA1UEtKRmx4cGphZ0d6UWRxSURWTjZOY25USVhDWkRwT2N5SllD
MWFDCm9lOXZZN1ljb1cyWFFlanVQVWFpTWFvN2p4TXd3dHdhaU5GNTVqSXQxYTZpK2JqdXZyMS9J
Sy9DSTRRUVFnZ2hOcmE1UnlmckdlUGgKM0p1Sm5adG9BbDllSGdhK3VjbTNYMzNGVjE5OXhWZmZm
c1gxMnlIQVI3MjNZczFxejZiR0FXaHVxQ3ZTOVNiRldFampqWVo2YXFxQgp4VVV5Z0RrM3pNMVFN
K2YrVUljV2lnTkJkaTkxd1ZtT281bTZ5dEp4S3hYVjFMZzBZdmhRWisvUisxU2hxOTBQMmlnLy8v
QTlqL0hSCjVnTVNxZVczTC9wY2xJOCt1MEY4VnlkL085SEYwWk1uOFVYNytmbkpQTFdCSUg4SStD
QStSZElFY09HdEQwQkVRd2ZRWjdqejBXZmMKSHEvaDh0VXJkUGtoL0hpVzdIUEVzZTYyeXF2WlUy
VVNpVVA1d24yK0N4dDBIR2tEWXN3KzA4RlZ6VnNuN2JFVDdjZlAweG5jbFovMwp4ZWF2azVZSkdI
T2o5RVUwVGw0K3k0bXVGclM0Z3R1OWNScVZEVUhhQXJWb1FQdnhianJmL1FOZWZaU1BQdjhHcmVr
VVYwOGNwYnV6CkNZQjl2cDJnZVBBMzdpUWFnK1ptSHk0Z3JVMmhBZjdhSFNnVmRleXRkeE5iV2g1
SVQwWVpqR3VVZThwUkt1clkxMVNPQmtUN3ZpT2EKOXVMMytuQXA2K2ZqdXZzbWxROGhoQkJDaUMz
WjFPT1QrV3lhTUVCekl6c0xhd1pXa29uY0I2d3EzR3IrOHY0T0xsdzVUZmNISC9EQgpCNmM1L1pk
T2ZBQytSbXJXL0hLOHdmU1kzZUs4WjllT3RVR2taZ2pSU2syNWFuZkgwUlpJNlFrR3Z1NmovZlFm
cVRLbTdSYjJvSThkClNtSGNlemJkU3EwbmswQ2MwTE5HVG5RMGd4WUQ0a1RyMytWUTBJY2VCMitk
MSs1V3BrL3lqNjk3d0grWTd0YmRkbVk2Rkp4QXhzZ0EKS3RVTlRVQ0VsRzUzOFhFcUtvR3Vaandr
R2JwNWc0aTNqZlBIOWpNL2ZJZWVHSFRtM2d4c0tZNE50Nld3bUxRcmc1RndMUjkwQmFuSQp6QUFC
ZkxsdWJrWkNBL3pVMTFiaWNxMnRxT1hQMXplTVczSGE2OS9zaTJKV05ISCt6RjZjcGRKUVZDeDlZ
V1crSThIUFgvNEV3VzdlCmE2bXo5MUNiQVpxcHk0MzNXRnlZQThEdnN6OHFvRTJNQUsxVWUzSWRz
bWJpcTVaUDhhaC9NRytmczFidTVaLzNDRjBkN1J3OWU0SkEKMWZQdG14QkNDQ0dFMkx4TlBaWW5K
KzJSMzhFOU5XdmVUTXlQL0VvVXdOKzVQTmg4YWZubXZYdW9VRlZjTGhjdWw0cjFiTGI0T0JJQQpj
NEd4S0VBcnRaNjFZU1duUmlDNG0zSlV2THNDd0J6aGYzeEJPSGlNMWxvWGMyTmpBTFR1cVY3ZXFl
VzQvYlZyZHRUVTB4aUYzZjVOCmpaSGNtNTd6WFUxZ1RQTWtDdERPNVdBdDV0dzRZU0RRV0FQQTNK
UDd4SUREQjk5WUhsOWlMRXdUQXlyTDdFZFQxdzU3ek1yQ0lwQ00KOGtXUGs0T0JTaElqWVFZMVFC
dWsvOVl0ZmwyczU5eWx2OUZTNjk1eUhCdHVpeFRqRWJ1R2VQeHlFQmRweGgvRUlOQklsUXFnRTM4
YwpoY0JldkVWZkV1WFAzemd0VUtzQ0hHdjFRclNITzQvbXFLejJvSlJNdzJSMkxBcStCbmE2TENi
Q2Q0bmk1VmpyMHRnZ25maHdESnI5CnVZcWt3ZVRqTUhqYnFhdFFXQjQ3dER4K0pNWDRRQnlDZnFv
VW1BOS96b0FHM21EVDhqNlBQdzdiZVhLeWFUbUs1OXMzSVlRUVFnaXgKRlp0b3dEV1lmaG9CdlBn
SzNrem9NNC80c2ljQ0JEajE1NVpjcFdKbCthWFc2U1V6WTZOQXNYRWtZR2d6UkFGdmEvMmFRY2hn
RWgrTwowdnJPSHdHd01BQ05hS3laYzFjYUFJT3BzU2pnWlhmTjB0b3JjZXlwSzlpaU5jK2RUKzhT
dkhLVTJ0WDdNemRGRkdnNy9rY3FzVnZSClk4Q1I4Mi9qQW1iaVQ0RUE5UjdRRFlPRjJSZ1FvR2E1
VzVyQjAzQS9FS1MxcWNyK2s2cmlBZEphbEo2ZXh4eTc4RDRlWUdZeEFmZzUKZGVrOTZwYjY4WmdH
SmdybWx1S3cwRGZZbGlNeHhhQUd6VjNucUxmN0toSFJvTFdqRmxQWFVkQVlqa093dXdZamxjWlJV
WjcvVUszbgp6MS9jSUszVTJBaVdyNG1HOXFPMHhhNHoySHVmUCt6dG90b3NrWWFWSkI0RlgwY3RM
a3llemNUQjI3NzhsbXg2NkZQNk5XanZxQVhUCkJIT094ekVJSEc3QVpSaVkraHdob08yTmF2VGtQ
QlpKQm9HMnZidXg1aC94WmIrOW5TYS9sMHhheDYxb2pNVEExM0dLK2xVMTRZM3kKY2QxOWt3OXVD
U0dFRUVKc1Nla0dYTjErMkFNLzNqSUZzTkJUODR5RTcvRHBqVjRJdEhQdWNoZDE3b0xsdlFGMlY2
eitITkVjandiagpRSUJkVld1YndhZWVEZ01ycmZwNVV1UDB4cjAwMU5wUHBKVzE5UUIwbkhyWGJ0
Rk9UVEVjQTN6TjFDMTE3VnFPdTU0S3hRTEx3aklOCmtuTVREUHpQbDBSYmc5UVdQRHpPamtlQVpw
cDJsUU1XczdGQm9JMWRsUXBnTURNUkEzOFowYi9mWkRTbDRQSDZBR1A1QzAwemozcm8KalhvNTlt
SDdTcGN2QzF4QXFLZVgrblBIYU1qbGlmMi9NYVpuVTRERi9FU0lheC8vaTZTMTFUaXlHMjRyTVRr
SytOalhZRmVJa3JNVAphUGdvMThMODc5MUprcE5qYUhoUnArOXhKNkt0S1JDRjg5VjEwektaSHY2
Snh6TnB3RU5UaTM5NVAwdWxZYVUwSWtEakxydkNhbWJzCmpOTU5nNW5vQU44TUFuZ3hKdTd5L1VB
Y0kyRy9TZHRwakhLcjd5bXArV25BeDQ3MENELzJ4a25QamVlbVIvbit5eWtPZHdZQkgrYkUKSVA5
NHFKR2FIaU1PdFBpcjgrSllQeC9YM3pjQWN6N0t0V3ZYNkhrMGp4QkNDQ0dFMk5pR2IwQ3M1Qmcv
WHIrRjNaRXB4QmNmeGNEKwpiWEo4Z1RhNlQzOUlZNjJuK1BMYUFEL2VjZEYxcUFYSFpKanZidmJu
MW96UzgrTk9qaHc1WUZjZXpBUkRQMzNCMGcraFJ3ZitRYm94ClNIdXdIalczemUrdjN3Ymc1dTBo
enI5L2dBckFGenhHc001TmNpekU5VnNEOXNyeGZuN3NnYzRETzduN2Y1ZmlEdlAxcCtFMSs5WjUK
dUxDaW82UEZOV2p0eUhYVFdXUW1ETjcyUFN3UGw4OEE4VER1WXgreXYwckZjclhSM0grVEc3ZnVF
S3lZSnB6eWMvcmllOVNXcjNyRQpWaFFNb1BQMFJmWlhyZFI0cWhyL1FLQXZSdjkzMStrSHZNMmRu
TDl5aUVwRlozekxjYXkzTFlOSFQ2UGdQMHoxVWdYUk1vRTQvUk5OClhEemFTSG80QW1pRUZsdTVm
S2grVFQ0WktTMXZ2cHBTMW84N0NhR2JuL0VzNENjYWpkSGFkWVlxRmVZS3RsRW9OVDhGK05tMTB3
N1MKMXh5RW5rRysvR1FRWDl0eExwemJ5ZWRmOWhKYWJPWFNvUWFVdVNRQWd4R1Q4NmYzNDRnUEFI
RjZoK280ZjdvZGRXbjZ0cE9UbDQ2eQpZNndIaUJOYVBNeWxRN3ZSaHZyQTI4NnVndDhMMmZDWXJM
TnZBSlpsLzdDSllXVFc3SnNRUWdnaGhNam51SHIxYXZiM0R1SjFZUms2CkdjV0pXMTNkaG05aDZC
bXlxTGpkVysyUFk1Sk9HeWd1ZDhFMm55ZU96VzdMd3RCTlhHN1g4clN1bTdqZDYzMGxyTmo4NG1r
WnVvR2kKZ3E1blVOMFZyR1RIeG1sTURGempPNjJMSzBjRHkyT01URVBIeEluYnBSUmQzOUIxVkxj
Nzl4YkNQZ2FGMDRyYm5kdGVxWDFjYmF2Nwp0aFN2Z2NQbGtqRWhRZ2doaEJBbHlFZDh0a0J4dWRj
T25rZkI1Vjc3MTgxUktTL2YraUNDNG5Gc2Rsc0tycnh2eHlxNE4veVdiTEg1CnhkTmFxdFJVVkJR
KzZLL2RSbnJtRWIrTWxmT25WZytQUXRCK3FpSHZBd2VxeTcxcWV1MzYrWGxlZUF6V1RtKzhqNnR0
ZGQrVzR0M0sKejF3S0lZUVFRdnpua2dxSStGMWtGcWFJREVhSURJS3Y5UmlINjU2M0VpZUVFRUlJ
SVY0blVnRVJ2NHZLUUNjWGF0NWlrVEtxcWlxawo2NUlRUWdnaHhIOElxWUNJMzRsQ1JWWDF5c0I2
SVlRUVFnanhIMEVhbm9VUVFnZ2hoQkRiUmlvZ1FnZ2hoQkJDaUcwakZSQWhoQkJDCkNDSEV0cEVL
aUJCQ0NDR0VFR0xiU0FWRUNDR0VFRUlJc1cya0FpS0VFRUlJSVlUWU5sSUJFVUlJSVlRUVFtd2Jx
WUFJSVlRUVFnZ2gKdG8xVVFJUVFRZ2doaEJEYlJpb2dRZ2doaEJCQ2lHMGpGUkFoaEJCQ0NDSEV0
cEVLaUJCQ0NDR0VFR0xiU0FWRUNDR0VFRUlJc1cyawpBaUtFRUVJSUlZVFlObElCRVVJSUlZUVFR
bXdiWjZrRkhqNTh1QjF4Q0NHRUVFSUlJVjV6VFUxTnVOM3VEWmNwV1FGWjJwQVFRZ2doCmhCQkMv
RllsS3lCdnZ2bm1kc1FoaEJCQ0NDR0UrQThnWTBDRUVFSUlJWVFRMjBZcUlFSUlJWVFRUW9odEl4
VVFJWVFRUWdnaHhMYVIKQ29nUVFnZ2hoQkJpMjBnRlJBZ2hoQkJDQ0xGdHBBSWloQkJDQ0NHRTJE
WlNBUkZDQ0NHRUVFSnNtMDM5RUtIWVB2LzkzLy85ZTRmdwpRdnpYZi8zWGh2T3ZYZnYzMk0rclZ6
ZmVUeUdFRUVJSWtVL2VnQWdoaEJCQ0NDRzJqVlJBaEJCQ0NDR0VFTnRHS2lCQ0NDR0VFRUtJCmJT
TVZFQ0dFRUVJSUljUzJrUXFJRUVJSUlZUVFZdHRJQlVRSUlZUVFRZ2l4YmFRQ0lvUVFRZ2doaE5n
MlVnRVJRZ2doaEJCQ2JCdXAKZ0FnaGhCQkNDQ0cyalZSQWhCQkNDQ0dFRU50R0tpQkNDQ0dFRUVL
SWJTTVZFQ0dFRUVJSUljUzJrUXFJRUVJSUlZUVFZdHRJQlVRSQpJWVFRUWdpeGJhUUNJb1FRUWdn
aGhOZzJVZ0VSUWdnaGhCQkNiQnVwZ0FnaGhCQkNDQ0cyalZSQWhCQkNDQ0dFRU50R0tpQkNDQ0dF
CkVFS0liU01WRUNHRUVFSUlJY1Mya1FxSUVFSUlJWVFRWXR0SUJVUUlJWVFRUWdpeGJhUUNJb1FR
UWdnaGhOZzJVZ0VSUWdnaGhCQkMKYkJ1cGdBZ2hoQkJDQ0NHMmpWUkFoQkJDQ0NHRUVOdEdLaUJD
Q0NHRUVFS0liU01WRUNHRUVFSUlJY1Mya1FxSUVFSUlJWVFRWXR0SQpCVVFJSVlRUVFnaXhiYVFD
SW9RUVFnZ2hoTmcyVWdFUlFnZ2hoQkJDYkJ1cGdBZ2hoQkJDQ0NHMmpWUkFoQkJDQ0NHRUVOdEdL
aUJDCkNDR0VFRUtJYlNNVkVDR0VFRUlJSWNTMmtRckkvOStlSFp3d0VBTkJFT1RBT2E1Q1ZKYm5K
RXdMbzZvSTV0c01BQUNRRVNBQUFFQkcKZ0FBQUFCa0JBZ0FBWkFRSUFBQ1FFU0FBQUVCR2dBQUFB
QmtCQWdBQVpBUUlBQUNRRVNBQUFFQkdnQUFBQUJrQkFnQUFaQVFJQUFDUQplV2JtUFQwQ0FBQzRn
d2NFQUFESUNCQUFBQ0FqUUFBQWdJd0FBUUFBTWdJRUFBRElDQkFBQUNBalFBQUFnSXdBQVFBQU1n
SUVBQURJCkNCQUFBQ0FqUUFBQWdJd0FBUUFBTWdJRUFBRElDQkFBQUNBalFBQUFnSXdBQVFBQU1n
SUVBQURJQ0JBQUFDQWpRQUFBZ016bjlBRHUKdFBjK1BlRW4xbHFuSndBQS9CVVBDQUFBa0JFZ0FB
QkFSb0FBQUFBWkFRSUFBR1FFQ0FBQWtCRWdBQUJBUm9BQUFBQVpBUUlBQUdRRQpDQUFBa0JFZ0FB
QkFSb0FBQUFBWkFRSUFBR1FFQ0FBQWtCRWdBQUJBUm9BQUFBQVpBUUlBQUdRRUNBQUFrQkVnQUFC
QVJvQUFBQUFaCkFRSUFBR1FFQ0FBQWtCRWdBQUJBUm9BQUFBQVpBUUlBQUdRRUNBQUFrQkVnQUFC
QVJvQUFBQUFaQVFJQUFHUUVDQUFBa0JFZ0FBQkEKUm9BQUFBQVpBUUlBQUdRRUNBQUFrQkVnQUFC
QVJvQUFBQUFaQVFJQUFHUUVDQUFBa0JFZ0FBQkFSb0FBQUFBWkFRSUFBR1FFQ0FBQQprQkVnQUFC
QVJvQUFBQUFaQVFJQUFHUUVDQUFBa0JFZ0FBQkFSb0FBQUFBWkFRSUFBR1FFQ0FBQWtIbG01ajA5
QWdBQXVJTUhCQUFBCnlBZ1FBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNN
QUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTUFBRUEKQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNN
QUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQQpBSUNN
QUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ01B
QUVBQURJQ0JBQUF5QWdRCkFBQWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ01B
QUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUMKQkFBQXlBZ1FBQUFnSTBBQUFJQ01B
QUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTQpB
QUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTUFB
RUFBRElDQkFBQXlBZ1FBQUFnCkkwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTUFB
RUFBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUEKeUFnUUFBQWdJMEFBQUlDTUFB
RUFBRElDQkFBQWFWcld3UUFBQnNGSlJFRlV5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFn
UQpBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFn
UUFBQWdJMEFBQUlDTUFBRUFBRElDCkJBQUF5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFn
UUFBQWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ00KQUFFQUFESUNCQUFBeUFn
UUFBQWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdR
QUFBZwpJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdR
QUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBCnlBZ1FBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdR
QUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTUFBRUEKQURJQ0JBQUF5QWdR
QUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FB
QUFnSTBBQQpBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FB
QUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRCkFBQWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FB
QUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUMKQkFBQXlBZ1FB
QUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFB
QWdJMEFBQUlDTQpBQUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFB
QWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnCkkwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFB
QWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUEKeUFnUUFB
QWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFB
Z0kwQUFBSUNNQUFFQQpBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFB
Z0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBCkFJQ01BQUVBQURJQ0JBQUF5QWdRQUFB
Z0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1EKQUFB
Z0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFn
STBBQUFJQ01BQUVBQURJQwpCQUFBeUFnUUFBQWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFn
STBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNNCkFBRUFBRElDQkFBQXlBZ1FBQUFn
STBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWcK
STBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJ
MEFBQUlDTUFBRUFBRElDQkFBQQp5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJ
MEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ01BQUVBCkFESUNCQUFBeUFnUUFBQWdJ
MEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kw
QUEKQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kw
QUFBSUNNQUFFQUFESUNCQUFBeUFnUQpBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kw
QUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTUFBRUFBRElDCkJBQUF5QWdRQUFBZ0kw
QUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBB
QUFJQ00KQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBB
QUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZwpJMEFBQUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBB
QUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBCnlBZ1FBQUFnSTBB
QUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFB
QUlDTUFBRUEKQURJQ0JBQUF5QWdRQUFBZ0kwQUFBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFB
QUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQQpBSUNNQUFFQUFESUNCQUFBeUFnUUFBQWdJMEFB
QUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRCkFBQWdJMEFB
QUlDTUFBRUFBRElDQkFBQXlBZ1FBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFB
SUNNQUFFQUFESUMKQkFBQXlBZ1FBQUFnSTBBQUFJQ01BQUVBQURJQ0JBQUF5QWdRQUFBZ0kwQUFB
SUNNQUFFQUFESUNCQUFBeUh3QlhsY2NLWGx4ZHJNQQpBQUFBU1VWT1JLNUNZSUk9CgpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9yZXBhaW50L2NvbnRhaW5pbmctYmxvY2stcG9zaXRpb24tY2hhbmdl
LWV4cGVjdGVkLmNoZWNrc3VtCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvcmVwYWlu
dC9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYW5nZS1leHBlY3RlZC5jaGVja3N1bQkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvcmVwYWludC9jb250YWluaW5nLWJsb2NrLXBv
c2l0aW9uLWNoYW5nZS1leHBlY3RlZC5jaGVja3N1bQkocmV2aXNpb24gMCkKQEAgLTAsMCArMSBA
QAorMGQ1Nzk5OTZlMjFmZWZjNTEzNjY5ZmU1YjcxNzJkOWIKXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBmaWxlCkluZGV4OiBXZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0No
YW5nZUxvZwkocmV2aXNpb24gMTQ3MzMpCisrKyBXZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDI4IEBACisyMDA2LTA2LSMjICBNaXR6IFBldHRlbCAgPG9wZW5kYXJ3
aW4ub3JnQG1pdHpwZXR0ZWwuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIC0gZml4IGh0dHA6Ly9idWd6aWxsYS5vcGVuZGFyd2luLm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9OTEyMQorICAgICAgICAgIFJFR1JFU1NJT046IFtJbmNyZW1lbnRhbCBSZXBh
aW50XSBESFRNTCBtb3ZlbWVudCB0ZXN0IGZhaWx1cmVzCisKKyAgICAgICAgVGVzdCAocmVwYWlu
dCk6IGZhc3QvcmVwYWludC9jb250YWluaW5nLWJsb2NrLXBvc2l0aW9uLWNoYW5nZS5odG1sCisK
KyAgICAgICAgKiBtYW51YWwtdGVzdHMvY29udGFpbmluZy1ibG9jay1wb3NpdGlvbi1jaGFnZS5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OmxheW91dEJsb2NrKTogVW5yZWxhdGVkIGNoYW5nZTog
Zml4ZWQgdHlwbyBmcm9tCisgICAgICAgIHRoZSBSZW5kZXJDYW52YXMgdG8gUmVuZGVyVmlldyBy
ZW5hbWUuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6cmVtb3ZlUG9zaXRpb25lZE9i
amVjdCk6IEFkZGVkIGEgcmV0dXJuIGltbWVkaWF0ZWx5CisgICAgICAgIGFmdGVyIHJlbW92aW5n
IHRoZSBvYmplY3QuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6cmVtb3ZlUG9zaXRp
b25lZE9iamVjdHMpOiBBZGRlZC4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2suaDoK
KyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlck9iamVjdDo6c2V0U3R5bGUpOiBBZGRlZCBjb2RlIHRvIHJlbW92ZSBhYnNvbHV0ZWx5
IHBvc2l0aW9uZWQKKyAgICAgICAgZGVzY2VuZGFudHMgZnJvbSB0aGUgcG9zaXRpb25lZCBvYmpl
Y3RzIGxpc3Qgb2YgdGhlaXIgY3VycmVudCBjb250YWluaW5nIGJsb2NrCisgICAgICAgIHdoZW4g
dGhleSBhcmUgZ29pbmcgdG8gaGF2ZSBhIG5ldyBvbmUgYXMgYSByZXN1bHQgb2YgdGhpcyBibG9j
aydzIHBvc2l0aW9uCisgICAgICAgIHByb3BlcnR5IGNoYW5naW5nLiAKKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyT2JqZWN0Lmg6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJPYmplY3Q6OnJl
bW92ZVBvc2l0aW9uZWRPYmplY3RzKToKKwogMjAwNi0wNi0wNCAgRGFyaW4gQWRsZXIgIDxkYXJp
bkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTWFjaWVqLgpJbmRleDogV2ViQ29y
ZS9tYW51YWwtdGVzdHMvY29udGFpbmluZy1ibG9jay1wb3NpdGlvbi1jaGFnZS5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvbWFudWFsLXRlc3RzL2NvbnRhaW5pbmctYmxvY2stcG9zaXRpb24t
Y2hhZ2UuaHRtbAkocmV2aXNpb24gMCkKKysrIFdlYkNvcmUvbWFudWFsLXRlc3RzL2NvbnRhaW5p
bmctYmxvY2stcG9zaXRpb24tY2hhZ2UuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzNSBA
QAorPGh0bWw+Cis8aGVhZD4KKyAgICA8dGl0bGU+PC90aXRsZT4KKyAgICA8c3R5bGUgdHlwZT0i
dGV4dC9jc3MiPgorICAgICAgICAjdCB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMHB4
OyBoZWlnaHQ6IDEwMHB4OyBiYWNrZ3JvdW5kOiBncmVlbjsgbGVmdDogLTEyMHB4OyB9CisgICAg
PC9zdHlsZT4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgIGZ1
bmN0aW9uIHRlc3QoKQorICAgICAgICB7CisgICAgICAgICAgICB2YXIgY29udGFpbmVyID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlbCIpOworICAgICAgICAgICAgdmFyIHRhcmdldCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0Iik7CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5Lm9m
ZnNldFRvcDsgICAvLyBmb3JjZSBsYXlvdXQKKyAgICAgICAgICAgIGNvbnRhaW5lci5zdHlsZS5w
b3NpdGlvbiA9ICJyZWxhdGl2ZSI7CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5Lm9mZnNldFRv
cDsgICAvLyBmb3JjZSBsYXlvdXQKKyAgICAgICAgICAgIHRhcmdldC5zdHlsZS5sZWZ0ID0gIjAi
OworICAgICAgICB9CisgICAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InRlc3Qo
KSI+CisgICAgPHA+CisgICAgICAgIFRoaXMgaXMgYSB0ZXN0IGZvciA8aT48YSBocmVmPSJodHRw
Oi8vYnVnemlsbGEub3BlbmRhcndpbi5vcmcvc2hvd19idWcuY2dpP2lkPTkxMjEiPmh0dHA6Ly9i
dWd6aWxsYS5vcGVuZGFyd2luLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTEyMTwvYT4KKyAgICAgICAg
UkVHUkVTU0lPTjogW0luY3JlbWVudGFsIFJlcGFpbnRdIERIVE1MIG1vdmVtZW50IHRlc3QgZmFp
bHVyZXM8L2k+LgorICAgIDwvcD4KKyAgICA8cD4KKyAgICAgICAgRG8gbm90IHJlc2l6ZSB0aGUg
d2luZG93LiBJZiB5b3UgZGlkLCByZWxvYWQgdGhlIHRlc3QuCisgICAgPC9wPgorICAgIDxwPgor
ICAgICAgICBUaGVyZSBzaG91bGQgYmUgYSBncmVlbiBzcXVhcmUgYmVsb3csIGFsaWduZWQgd2l0
aCB0aGUgbGVmdCBtYXJnaW4gb2YgdGhlIHBhZ2UuCisgICAgPC9wPgorICAgIDxocj4KKyAgICA8
ZGl2IGlkPSJyZWwiIHN0eWxlPSJwb3NpdGlvbjogc3RhdGljOyI+CisgICAgICAgIDxzcGFuIGlk
PSJ0Ij48L3NwYW4+CisgICAgPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBXZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlck9iamVjdC5jcHAJKHJldmlzaW9uIDE0NzMzKQorKysgV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyT2JqZWN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjA1Nyw4ICsyMDU3LDI4IEBA
IHZvaWQgUmVuZGVyT2JqZWN0OjpzZXRTdHlsZShSZW5kZXJTdHlsZSAKIAogICAgICAgICAvLyBX
aGVuIGEgbGF5b3V0IGhpbnQgaGFwcGVucyBhbmQgYW4gb2JqZWN0J3MgcG9zaXRpb24gc3R5bGUg
Y2hhbmdlcywgd2UgaGF2ZSB0byBkbyBhIGxheW91dAogICAgICAgICAvLyB0byBkaXJ0eSB0aGUg
cmVuZGVyIHRyZWUgdXNpbmcgdGhlIG9sZCBwb3NpdGlvbiB2YWx1ZSBub3cuCi0gICAgICAgIGlm
IChkID09IFJlbmRlclN0eWxlOjpMYXlvdXQgJiYgbV9wYXJlbnQgJiYgbV9zdHlsZS0+cG9zaXRp
b24oKSAhPSBzdHlsZS0+cG9zaXRpb24oKSkKKyAgICAgICAgaWYgKGQgPT0gUmVuZGVyU3R5bGU6
OkxheW91dCAmJiBtX3BhcmVudCAmJiBtX3N0eWxlLT5wb3NpdGlvbigpICE9IHN0eWxlLT5wb3Np
dGlvbigpKSB7CiAgICAgICAgICAgICBtYXJrQ29udGFpbmluZ0Jsb2Nrc0ZvckxheW91dCgpOwor
ICAgICAgICAgICAgaWYgKGlzUmVuZGVyQmxvY2soKSkgeworICAgICAgICAgICAgICAgIGlmIChz
dHlsZS0+cG9zaXRpb24oKSA9PSBTdGF0aWNQb3NpdGlvbikgeworICAgICAgICAgICAgICAgICAg
ICAvLyBDbGVhciBvdXIgcG9zaXRpb25lZCBvYmplY3RzIGxpc3QuIE91ciBhYnNvbHV0ZWx5IHBv
c2l0aW9uZWQgZGVzY2VuZGFudHMgd2lsbCBiZQorICAgICAgICAgICAgICAgICAgICAvLyBpbnNl
cnRlZCBpbnRvIG91ciBjb250YWluaW5nIGJsb2NrJ3MgcG9zaXRpb25lZCBvYmplY3RzIGxpc3Qg
ZHVyaW5nIGxheW91dC4KKyAgICAgICAgICAgICAgICAgICAgcmVtb3ZlUG9zaXRpb25lZE9iamVj
dHMoMCk7CisgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChtX3N0eWxlLT5wb3NpdGlvbigpID09
IFN0YXRpY1Bvc2l0aW9uKSB7CisgICAgICAgICAgICAgICAgICAgIC8vIFJlbW92ZSBvdXIgYWJz
b2x1dGVseSBwb3NpdGlvbmVkIGRlc2NlbmRhbnRzIGZyb20gdGhlaXIgY3VycmVudCBjb250YWlu
aW5nIGJsb2NrLgorICAgICAgICAgICAgICAgICAgICAvLyBUaGV5IHdpbGwgYmUgaW5zZXJ0ZWQg
aW50byBvdXIgcG9zaXRpb25lZCBvYmplY3RzIGxpc3QgZHVyaW5nIGxheW91dC4KKyAgICAgICAg
ICAgICAgICAgICAgUmVuZGVyT2JqZWN0KiBjYiA9IHBhcmVudCgpOworICAgICAgICAgICAgICAg
ICAgICB3aGlsZSAoY2IgJiYgKGNiLT5zdHlsZSgpLT5wb3NpdGlvbigpID09IFN0YXRpY1Bvc2l0
aW9uIHx8IChjYi0+aXNJbmxpbmUoKSAmJiAhY2ItPmlzUmVwbGFjZWQoKSkpICYmICFjYi0+aXNS
b290KCkgJiYgIWNiLT5pc1JlbmRlclZpZXcoKSkgeworICAgICAgICAgICAgICAgICAgICAgICAg
aWYgKGNiLT5zdHlsZSgpLT5wb3NpdGlvbigpID09IFJlbGF0aXZlUG9zaXRpb24gJiYgY2ItPmlz
SW5saW5lKCkgJiYgIWNiLT5pc1JlcGxhY2VkKCkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjYiA9ICBjYi0+Y29udGFpbmluZ0Jsb2NrKCk7CisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
ICAgICAgICBjYiA9IGNiLT5wYXJlbnQoKTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgICAgICBjYi0+cmVtb3ZlUG9zaXRpb25lZE9iamVjdHMoc3RhdGljX2Nhc3Q8UmVu
ZGVyQmxvY2sqPih0aGlzKSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAg
ICAgICB9CiAgICAgICAgIAogICAgICAgICBpZiAoaXNGbG9hdGluZygpICYmIChtX3N0eWxlLT5m
bG9hdGluZygpICE9IHN0eWxlLT5mbG9hdGluZygpKSkKICAgICAgICAgICAgIC8vIEZvciBjaGFu
Z2VzIGluIGZsb2F0IHN0eWxlcywgd2UgbmVlZCB0byBjb25jZWl2YWJseSByZW1vdmUgb3Vyc2Vs
dmVzCkluZGV4OiBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmgJKHJldmlzaW9uIDE0NzMzKQorKysgV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suaAkod29ya2luZyBjb3B5KQpAQCAtMTIwLDYgKzEy
MCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGxheW91dFBvc2l0aW9uZWRPYmplY3RzKCBib29sIHJl
bGF5b3V0Q2hpbGRyZW4gKTsKICAgICB2b2lkIGluc2VydFBvc2l0aW9uZWRPYmplY3QoUmVuZGVy
T2JqZWN0ICpvKTsKICAgICB2b2lkIHJlbW92ZVBvc2l0aW9uZWRPYmplY3QoUmVuZGVyT2JqZWN0
ICpvKTsKKyAgICB2aXJ0dWFsIHZvaWQgcmVtb3ZlUG9zaXRpb25lZE9iamVjdHMoUmVuZGVyQmxv
Y2sqKTsKIAogICAgIHZpcnR1YWwgdm9pZCBwb3NpdGlvbkxpc3RNYXJrZXIoKSB7IH0KIApJbmRl
eDogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgJKHJldmlzaW9uIDE0NzMzKQorKysgV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTc0Nyw2ICs3NDcsOCBA
QCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIGhhc092ZXJoYW5naW5nRmxvYXRzKCkgeyByZXR1
cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIEludFJlY3QgZmxvYXRSZWN0KCkgY29uc3QgeyByZXR1
cm4gYm9yZGVyQm94KCk7IH0KIAorICAgIHZpcnR1YWwgdm9pZCByZW1vdmVQb3NpdGlvbmVkT2Jq
ZWN0cyhSZW5kZXJCbG9jayopIHsgfQorCiAgICAgYm9vbCBhdm9pZHNGbG9hdHMoKSBjb25zdDsK
ICAgICBib29sIHVzZXNMaW5lV2lkdGgoKSBjb25zdDsKIApJbmRleDogV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyQmxvY2suY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJsb2NrLmNwcAkocmV2aXNpb24gMTQ3MzMpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJC
bG9jay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU1Myw3ICs1NTMsNyBAQCB2b2lkIFJlbmRlckJs
b2NrOjpsYXlvdXRCbG9jayhib29sIHJlbGF5CiAgICAgICAgIGRpZEZ1bGxSZXBhaW50ID0gcmVw
YWludEFmdGVyTGF5b3V0SWZOZWVkZWQob2xkQm91bmRzLCBvbGRGdWxsQm91bmRzKTsKICAgICBp
ZiAoIWRpZEZ1bGxSZXBhaW50ICYmICFyZXBhaW50UmVjdC5pc0VtcHR5KCkpIHsKICAgICAgICAg
UmVuZGVyVmlldyogdiA9IHZpZXcoKTsKLSAgICAgICAgaWYgKHYgJiYgdi0+dmlldygpKSB7Cisg
ICAgICAgIGlmICh2ICYmIHYtPmZyYW1lVmlldygpKSB7CiAgICAgICAgICAgICByZXBhaW50UmVj
dC5pbmZsYXRlKG1heGltYWxPdXRsaW5lU2l6ZShQYWludFBoYXNlT3V0bGluZSkpOwogICAgICAg
ICAgICAgdi0+ZnJhbWVWaWV3KCktPmFkZFJlcGFpbnRJbmZvKHRoaXMsIHJlcGFpbnRSZWN0KTsg
Ly8gV2UgbmVlZCB0byBkbyBhIHBhcnRpYWwgcmVwYWludCBvZiBvdXIgY29udGVudC4KICAgICAg
ICAgfQpAQCAtMTc2NywxMyArMTc2NywzMyBAQCB2b2lkIFJlbmRlckJsb2NrOjpyZW1vdmVQb3Np
dGlvbmVkT2JqZWN0CiAgICAgaWYgKG1fcG9zaXRpb25lZE9iamVjdHMpIHsKICAgICAgICAgRGVw
cmVjYXRlZFB0ckxpc3RJdGVyYXRvcjxSZW5kZXJPYmplY3Q+IGl0KCptX3Bvc2l0aW9uZWRPYmpl
Y3RzKTsKICAgICAgICAgd2hpbGUgKGl0LmN1cnJlbnQoKSkgewotICAgICAgICAgICAgaWYgKGl0
LmN1cnJlbnQoKSA9PSBvKQorICAgICAgICAgICAgaWYgKGl0LmN1cnJlbnQoKSA9PSBvKSB7CiAg
ICAgICAgICAgICAgICAgbV9wb3NpdGlvbmVkT2JqZWN0cy0+cmVtb3ZlUmVmKGl0LmN1cnJlbnQo
KSk7CisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQogICAgICAgICAgICAg
KytpdDsKICAgICAgICAgfQogICAgIH0KIH0KIAordm9pZCBSZW5kZXJCbG9jazo6cmVtb3ZlUG9z
aXRpb25lZE9iamVjdHMoUmVuZGVyQmxvY2sqIG8pCit7CisgICAgaWYgKCFtX3Bvc2l0aW9uZWRP
YmplY3RzKQorICAgICAgICByZXR1cm47CisgICAgCisgICAgRGVwcmVjYXRlZFB0ckxpc3RJdGVy
YXRvcjxSZW5kZXJPYmplY3Q+IGl0KCptX3Bvc2l0aW9uZWRPYmplY3RzKTsKKyAgICB3aGlsZSAo
aXQuY3VycmVudCgpKSB7CisgICAgICAgIGlmICghbyB8fCBpdC5jdXJyZW50KCktPmhhc0FuY2Vz
dG9yKG8pKSB7CisgICAgICAgICAgICBpZiAobykgeworICAgICAgICAgICAgICAgIGl0LmN1cnJl
bnQoKS0+c2V0Q2hpbGROZWVkc0xheW91dCh0cnVlLCBmYWxzZSk7CisgICAgICAgICAgICAgICAg
aXQuY3VycmVudCgpLT5sYXllcigpLT5jb21wdXRlUmVwYWludFJlY3RzKCk7CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICBtX3Bvc2l0aW9uZWRPYmplY3RzLT5yZW1vdmVSZWYoaXQuY3VycmVu
dCgpKTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICArK2l0OworICAgIH0KK30KKwogdm9p
ZCBSZW5kZXJCbG9jazo6aW5zZXJ0RmxvYXRpbmdPYmplY3QoUmVuZGVyT2JqZWN0ICpvKQogewog
ICAgIC8vIENyZWF0ZSB0aGUgbGlzdCBvZiBzcGVjaWFsIG9iamVjdHMgaWYgd2UgZG9uJ3QgYWxl
YWR5IGhhdmUgb25lCg==
</data>
<flag name="review"
          id="2523"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
      

    </bug>

</bugzilla>