<?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>13084</bug_id>
          
          <creation_ts>2007-03-15 11:49:46 -0700</creation_ts>
          <short_desc>ASSERTION FAILED: !m_clients.contains(c) in WebCore::CachedResource::ref(WebCore::CachedResourceClient*)</short_desc>
          <delta_ts>2007-03-18 14:42:30 -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>WebCore Misc.</component>
          <version>523.x (Safari 3)</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>http://www.usatoday.com/news/washington/2007-03-13-archives_N.htm</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>HasReduction</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>mitz</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          <cc>hyatt</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>18328</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2007-03-15 11:49:46 -0700</bug_when>
    <thetext>I hit the above assertion every time I open the URL.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18383</commentid>
    <comment_count>1</comment_count>
      <attachid>13665</attachid>
    <who name="">mitz</who>
    <bug_when>2007-03-16 06:34:22 -0700</bug_when>
    <thetext>Created attachment 13665
Reduction (will assert)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18388</commentid>
    <comment_count>2</comment_count>
    <who name="">mitz</who>
    <bug_when>2007-03-16 08:25:02 -0700</bug_when>
    <thetext>Working on it...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18389</commentid>
    <comment_count>3</comment_count>
      <attachid>13667</attachid>
    <who name="">mitz</who>
    <bug_when>2007-03-16 08:45:57 -0700</bug_when>
    <thetext>Created attachment 13667
Add a method to get all images used by a renderer

I didn&apos;t change RenderListMarker, which ref()s its image if it has one, because list markers cannot have box decorations. I could do that for consistency if you think that&apos;s better.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18404</commentid>
    <comment_count>4</comment_count>
      <attachid>13667</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2007-03-16 14:38:32 -0700</bug_when>
    <thetext>Comment on attachment 13667
Add a method to get all images used by a renderer

I disagree with the idea of minimizing refs and derefs, since refs even on the same image need to count as accesses of the image.

However it is true that the same resource should not be getting multiple notifications for the same image load.

I think a better way to solve this problem is to convert the cached resource client set to be a counted set.  That way multiple refs and derefs can still occur and we can still have meaningful asserts.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18405</commentid>
    <comment_count>5</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2007-03-16 14:39:17 -0700</bug_when>
    <thetext>I will take care of this.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18406</commentid>
    <comment_count>6</comment_count>
      <attachid>13670</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2007-03-16 14:49:48 -0700</bug_when>
    <thetext>Created attachment 13670
Convert to using a counted set in the cache.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18408</commentid>
    <comment_count>7</comment_count>
      <attachid>13670</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2007-03-16 15:11:34 -0700</bug_when>
    <thetext>Comment on attachment 13670
Convert to using a counted set in the cache.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18411</commentid>
    <comment_count>8</comment_count>
      <attachid>13673</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2007-03-16 15:23:19 -0700</bug_when>
    <thetext>Created attachment 13673
Tweak imageChanged in RenderImage and RenderListMarker</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18412</commentid>
    <comment_count>9</comment_count>
      <attachid>13673</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2007-03-16 15:24:49 -0700</bug_when>
    <thetext>Comment on attachment 13673
Tweak imageChanged in RenderImage and RenderListMarker

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18441</commentid>
    <comment_count>10</comment_count>
      <attachid>13673</attachid>
    <who name="">mitz</who>
    <bug_when>2007-03-17 06:49:15 -0700</bug_when>
    <thetext>Comment on attachment 13673
Tweak imageChanged in RenderImage and RenderListMarker

Landed &lt;http://trac.webkit.org/projects/webkit/changeset/20242&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18496</commentid>
    <comment_count>11</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2007-03-18 14:42:30 -0700</bug_when>
    <thetext>Fixed.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>13665</attachid>
            <date>2007-03-16 06:34:22 -0700</date>
            <delta_ts>2007-03-16 06:34:22 -0700</delta_ts>
            <desc>Reduction (will assert)</desc>
            <filename>13084 reduction.html</filename>
            <type>text/html</type>
            <size>122</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">PGltZyBzcmM9Imh0dHA6Ly93ZWJraXQub3JnL2ltYWdlcy9pY29uLWdvbGQucG5nIiBzdHlsZT0i
YmFja2dyb3VuZC1pbWFnZTogdXJsKGh0dHA6Ly93ZWJraXQub3JnL2ltYWdlcy9pY29uLWdvbGQu
cG5nKTsiPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>13667</attachid>
            <date>2007-03-16 08:45:57 -0700</date>
            <delta_ts>2007-03-16 14:49:48 -0700</delta_ts>
            <desc>Add a method to get all images used by a renderer</desc>
            <filename>13084_r1.patch</filename>
            <type>text/plain</type>
            <size>35299</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDIwMjM3KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMDctMDMtMTYgIE1pdHogUGV0dGVsICA8bWl0
ekB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIC0gdGVzdCBmb3IgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTMwODQKKyAgICAgICAgICBBU1NFUlRJT04gRkFJTEVEOiAhbV9jbGllbnRzLmNvbnRhaW5zKGMp
IGluIFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpyZWYoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VD
bGllbnQqKQorCisgICAgICAgICogZmFzdC9pbWFnZXMvcmVmLWJ5LWltYWdlLWFuZC1iYWNrZ3Jv
dW5kLWV4cGVjdGVkLmNoZWNrc3VtOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2ltYWdlcy9yZWYt
YnktaW1hZ2UtYW5kLWJhY2tncm91bmQtZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBm
YXN0L2ltYWdlcy9yZWYtYnktaW1hZ2UtYW5kLWJhY2tncm91bmQtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBmYXN0L2ltYWdlcy9yZWYtYnktaW1hZ2UtYW5kLWJhY2tncm91bmQuaHRt
bDogQWRkZWQuCisKIDIwMDctMDMtMTUgIEp1c3RpbiBHYXJjaWEgIDxqdXN0aW4uZ2FyY2lhQGFw
cGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBqb2huCkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2ltYWdlcy9yZWYtYnktaW1hZ2UtYW5kLWJhY2tncm91bmQtZXhwZWN0ZWQuY2hlY2tzdW0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvcmVmLWJ5LWltYWdlLWFuZC1i
YWNrZ3JvdW5kLWV4cGVjdGVkLmNoZWNrc3VtCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9pbWFnZXMvcmVmLWJ5LWltYWdlLWFuZC1iYWNrZ3JvdW5kLWV4cGVjdGVkLmNoZWNrc3Vt
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxIEBACitmZjgyZTkyODdiNDVmODJiMWY1ZWU5ZGQwMWNi
NWQxNwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKSW5kZXg6IExheW91dFRlc3RzL2Zhc3Qv
aW1hZ2VzL3JlZi1ieS1pbWFnZS1hbmQtYmFja2dyb3VuZC1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvcmVmLWJ5LWltYWdlLWFuZC1iYWNrZ3JvdW5k
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL3Jl
Zi1ieS1pbWFnZS1hbmQtYmFja2dyb3VuZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMjEgQEAKK2xheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJWaWV3IGF0
ICgwLDApIHNpemUgODAweDYwMAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRl
ckJsb2NrIHtIVE1MfSBhdCAoMCwwKSBzaXplIDgwMHg2MDAKKyAgICBSZW5kZXJCb2R5IHtCT0RZ
fSBhdCAoOCw4KSBzaXplIDc4NHg1ODQKKyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwwKSBz
aXplIDc4NHgzNgorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA1M3gx
OAorICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDUzOiAiVGVzdCBmb3IgIgorICAg
ICAgICBSZW5kZXJJbmxpbmUge0l9IGF0ICgwLDApIHNpemUgNjY1eDM2CisgICAgICAgICAgUmVu
ZGVySW5saW5lIHtBfSBhdCAoMCwwKSBzaXplIDMwMXgxOCBbY29sb3I9IzAwMDBFRV0KKyAgICAg
ICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoNTMsMCkgc2l6ZSAzMDF4MTgKKyAgICAgICAg
ICAgICAgdGV4dCBydW4gYXQgKDUzLDApIHdpZHRoIDMwMTogImh0dHA6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEzMDg0IgorICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBh
dCAoMzU0LDApIHNpemUgNjY1eDM2CisgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMzU0LDApIHdp
ZHRoIDQ6ICIgIgorICAgICAgICAgICAgdGV4dCBydW4gYXQgKDM1OCwwKSB3aWR0aCAzMDc6ICJB
U1NFUlRJT04gRkFJTEVEOiAhbV9jbGllbnRzLmNvbnRhaW5zKGMpIGluIgorICAgICAgICAgICAg
dGV4dCBydW4gYXQgKDAsMTgpIHdpZHRoIDQzOTogIldlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpy
ZWYoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VDbGllbnQqKSIKKyAgICAgICAgUmVuZGVyVGV4dCB7
I3RleHR9IGF0ICg0MzksMTgpIHNpemUgNHgxOAorICAgICAgICAgIHRleHQgcnVuIGF0ICg0Mzks
MTgpIHdpZHRoIDQ6ICIuIgorICAgICAgUmVuZGVyQmxvY2sgKGFub255bW91cykgYXQgKDAsNTIp
IHNpemUgNzg0eDE2CisgICAgICAgIFJlbmRlckltYWdlIHtJTUd9IGF0ICgwLDApIHNpemUgMTZ4
MTYKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMHgwCkluZGV4OiBM
YXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9yZWYtYnktaW1hZ2UtYW5kLWJhY2tncm91bmQuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9yZWYtYnktaW1hZ2UtYW5kLWJh
Y2tncm91bmQuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL3Jl
Zi1ieS1pbWFnZS1hbmQtYmFja2dyb3VuZC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDUg
QEAKKzxwPgorICAgIFRlc3QgZm9yIDxpPjxhIGhyZWY9Imh0dHA6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEzMDg0Ij5odHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMzA4NDwvYT4KKyAgICBBU1NFUlRJT04gRkFJTEVEOiAhbV9jbGllbnRzLmNvbnRhaW5z
KGMpIGluIFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpyZWYoV2ViQ29yZTo6Q2FjaGVkUmVzb3Vy
Y2VDbGllbnQqKTwvaT4uCis8L3A+Cis8aW1nIHNyYz0icmVzb3VyY2VzL2FuaW1hdGVkLmdpZiIg
c3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybChyZXNvdXJjZXMvYW5pbWF0ZWQuZ2lmKTsiPgpJ
bmRleDogV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9DaGFuZ2VMb2cJ
KHJldmlzaW9uIDIwMjM3KQorKysgV2ViQ29yZS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAg
LTEsMyArMSwzMCBAQAorMjAwNy0wMy0xNiAgTWl0eiBQZXR0ZWwgIDxtaXR6QHdlYmtpdC5vcmc+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgLSBmaXgg
aHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMwODQKKyAgICAgICAgICBB
U1NFUlRJT04gRkFJTEVEOiAhbV9jbGllbnRzLmNvbnRhaW5zKGMpIGluIFdlYkNvcmU6OkNhY2hl
ZFJlc291cmNlOjpyZWYoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VDbGllbnQqKQorCisgICAgICAg
IFRlc3Q6IGZhc3QvaW1hZ2VzL3JlZi1ieS1pbWFnZS1hbmQtYmFja2dyb3VuZC5odG1sCisKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVySW1hZ2U6On5SZW5kZXJJbWFnZSk6IFJlbW92ZWQgc2luY2UgUmVuZGVyT2JqZWN0OjphcmVu
YURlbGV0ZSgpCisgICAgICAgIHdpbGwgZGVyZWYgdGhlIGltYWdlLgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVySW1hZ2U6OmdldEltYWdlc0ZvclN0eWxlKTogQWRkZWQuIENhbGxzIHRoZSBiYXNl
IGNsYXNzJ3MKKyAgICAgICAgaW1wbGVtZW50YXRpb24gYW5kIGFkZHMgdGhlIDxpbWc+J3Mgb3du
IGltYWdlIHRvIHRoZSBzZXQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJJbWFnZTo6c2V0Q2Fj
aGVkSW1hZ2UpOiBDaGVjayBpZiB0aGUgb2xkIGFuZCBuZXcgaW1hZ2VzIGFyZQorICAgICAgICB1
c2VkIGJ5IGJveCBkZWNvcmF0aW9ucyBhbmQgaWYgc28gZG8gbm90IGRlcmVmL3JlZiB0aGVtLgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJJbWFnZS5oOgorICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyT2JqZWN0OjpnZXRJbWFn
ZXNGb3JTdHlsZSk6IEFkZGVkLiBBZGRzIGFsbCBDYWNoZWRJbWFnZXMgdXNlZAorICAgICAgICBi
eSBiYWNrZ3JvdW5kcyBhbmQgYm9yZGVycyBzcGVjaWZpZWQgYnkgdGhlIGdpdmVuIHN0eWxlIHRv
IHRoZSBnaXZlbiBIYXNoU2V0LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyT2JqZWN0Ojp1cGRh
dGVCYWNrZ3JvdW5kSW1hZ2VzKTogQ2hhbmdlZCB0byBjYWxsIGdldEltYWdlc0ZvclN0eWxlCisg
ICAgICAgIGZvciB0aGUgb2xkIGFuZCBuZXcgc3R5bGVzIGFuZCByZWYvZGVyZWYgQ2FjaGVkSW1h
Z2VzIGluIHRoZSBkZWx0YS4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck9iamVjdDo6YXJlbmFE
ZWxldGUpOiBDaGFuZ2VkIHRvIGRlcmVmIGFsbCBpbWFnZXMgcmV0dXJuZWQKKyAgICAgICAgZnJv
bSBnZXRJbWFnZXNGb3JTdHlsZS4gVGhpcyBpbmNsdWRlcyB0aGUgPGltZz4ncyBvd24gaW1hZ2Ug
Zm9yIGEgUmVuZGVySW1hZ2UsCisgICAgICAgIHNvIHRoZSBSZW5kZXJJbWFnZSBkZXN0cnVjdG9y
IG5vIGxvbmdlciBuZWVkcyB0byBkZXJlZiBpdC4gCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRl
ck9iamVjdC5oOgorCiAyMDA3LTAzLTE2ICBMYXJzIEtub2xsIDxsYXJzQHRyb2xsdGVjaC5jb20+
CiAKICAgICAgICAgZG9uJ3QgdXNlICNpbXBvcnQgaW4gLmNwcCBmaWxlcy4KSW5kZXg6IFdlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJJbWFnZS5jcHAJKHJldmlzaW9uIDIwMjM0KQorKysgV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVySW1hZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NSwyMiArNTUsMzEgQEAgUmVu
ZGVySW1hZ2U6OlJlbmRlckltYWdlKE5vZGUqIG5vZGUpCiAgICAgdXBkYXRlQWx0VGV4dCgpOwog
fQogCi1SZW5kZXJJbWFnZTo6flJlbmRlckltYWdlKCkKK3ZvaWQgUmVuZGVySW1hZ2U6OmdldElt
YWdlc0ZvclN0eWxlKFJlbmRlclN0eWxlKiBzdHlsZSwgSGFzaFNldDxDYWNoZWRJbWFnZSo+JiBp
bWFnZXMpCiB7CisgICAgUmVuZGVyUmVwbGFjZWQ6OmdldEltYWdlc0ZvclN0eWxlKHN0eWxlLCBp
bWFnZXMpOwogICAgIGlmIChtX2NhY2hlZEltYWdlKQotICAgICAgICBtX2NhY2hlZEltYWdlLT5k
ZXJlZih0aGlzKTsKKyAgICAgICAgaW1hZ2VzLmFkZChtX2NhY2hlZEltYWdlKTsKKyAgICByZXR1
cm47CiB9CiAKIHZvaWQgUmVuZGVySW1hZ2U6OnNldENhY2hlZEltYWdlKENhY2hlZEltYWdlKiBu
ZXdJbWFnZSkKIHsKICAgICBpZiAobV9pc0Fub255bW91c0ltYWdlIHx8IG1fY2FjaGVkSW1hZ2Ug
PT0gbmV3SW1hZ2UpCiAgICAgICAgIHJldHVybjsKLSAgICBpZiAobV9jYWNoZWRJbWFnZSkKKwor
ICAgIC8vIElmIHRoZSBvbGQgKG5ldykgaW1hZ2UgaXMgaW4gdXNlIGJ5IGJveCBkZWNvcmF0aW9u
cywgd2UgbXVzdCBub3QgZGVyZWYgKHJlZikgaXQuCisgICAgSGFzaFNldDxDYWNoZWRJbWFnZSo+
IGltYWdlczsKKyAgICBSZW5kZXJSZXBsYWNlZDo6Z2V0SW1hZ2VzRm9yU3R5bGUoc3R5bGUoKSwg
aW1hZ2VzKTsKKyAgICBpZiAobV9jYWNoZWRJbWFnZSAmJiAhaW1hZ2VzLmNvbnRhaW5zKG1fY2Fj
aGVkSW1hZ2UpKQogICAgICAgICBtX2NhY2hlZEltYWdlLT5kZXJlZih0aGlzKTsKICAgICBtX2Nh
Y2hlZEltYWdlID0gbmV3SW1hZ2U7CiAgICAgaWYgKG1fY2FjaGVkSW1hZ2UpIHsKLSAgICAgICAg
bV9jYWNoZWRJbWFnZS0+cmVmKHRoaXMpOwotICAgICAgICBpZiAobV9jYWNoZWRJbWFnZS0+ZXJy
b3JPY2N1cnJlZCgpKQorICAgICAgICBpZiAoIWltYWdlcy5jb250YWlucyhtX2NhY2hlZEltYWdl
KSkgeworICAgICAgICAgICAgbV9jYWNoZWRJbWFnZS0+cmVmKHRoaXMpOworICAgICAgICAgICAg
aWYgKG1fY2FjaGVkSW1hZ2UtPmVycm9yT2NjdXJyZWQoKSkKKyAgICAgICAgICAgICAgICBpbWFn
ZUNoYW5nZWQobV9jYWNoZWRJbWFnZSk7CisgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgaW1h
Z2VDaGFuZ2VkKG1fY2FjaGVkSW1hZ2UpOwogICAgIH0KIH0KSW5kZXg6IFdlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckltYWdlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
SW1hZ2UuaAkocmV2aXNpb24gMjAyMzQpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFn
ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNSw3ICszNSw2IEBAIGNsYXNzIEhUTUxNYXBFbGVtZW50
OwogY2xhc3MgUmVuZGVySW1hZ2UgOiBwdWJsaWMgUmVuZGVyUmVwbGFjZWQgewogcHVibGljOgog
ICAgIFJlbmRlckltYWdlKE5vZGUqKTsKLSAgICB2aXJ0dWFsIH5SZW5kZXJJbWFnZSgpOwogCiAg
ICAgdmlydHVhbCBjb25zdCBjaGFyKiByZW5kZXJOYW1lKCkgY29uc3QgeyByZXR1cm4gIlJlbmRl
ckltYWdlIjsgfQogCkBAIC01Niw2ICs1NSw3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc2V0Q2Fj
aGVkSW1hZ2UoQ2FjaGVkSW1hZ2UqKTsKICAgICBDYWNoZWRJbWFnZSogY2FjaGVkSW1hZ2UoKSBj
b25zdCB7IHJldHVybiBtX2NhY2hlZEltYWdlOyB9CisgICAgdmlydHVhbCB2b2lkIGdldEltYWdl
c0ZvclN0eWxlKFJlbmRlclN0eWxlKiwgSGFzaFNldDxDYWNoZWRJbWFnZSo+Jik7CiAKICAgICB2
aXJ0dWFsIGJvb2wgbm9kZUF0UG9pbnQoY29uc3QgSGl0VGVzdFJlcXVlc3QmLCBIaXRUZXN0UmVz
dWx0JiwgaW50IHgsIGludCB5LCBpbnQgdHgsIGludCB0eSwgSGl0VGVzdEFjdGlvbik7CiAKSW5k
ZXg6IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcAkocmV2aXNpb24gMjAyMzQpCisrKyBXZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMjg3LDI4
ICsyMjg3LDQwIEBAIHZvaWQgUmVuZGVyT2JqZWN0OjpzZXRTdHlsZUludGVybmFsKFJlbmQKICAg
ICAgICAgbV9zdHlsZS0+cmVmKCk7CiB9CiAKK3ZvaWQgUmVuZGVyT2JqZWN0OjpnZXRJbWFnZXNG
b3JTdHlsZShSZW5kZXJTdHlsZSogc3R5bGUsIEhhc2hTZXQ8Q2FjaGVkSW1hZ2UqPiYgaW1hZ2Vz
KQoreworICAgIGlmICghc3R5bGUpCisgICAgICAgIHJldHVybjsKKworICAgIGZvciAoY29uc3Qg
QmFja2dyb3VuZExheWVyKiBiZ0xheWVyID0gc3R5bGUtPmJhY2tncm91bmRMYXllcnMoKTsgYmdM
YXllcjsgYmdMYXllciA9IGJnTGF5ZXItPm5leHQoKSkKKyAgICAgICAgaWYgKENhY2hlZEltYWdl
KiBiZ0ltYWdlID0gYmdMYXllci0+YmFja2dyb3VuZEltYWdlKCkpCisgICAgICAgICAgICBpbWFn
ZXMuYWRkKGJnSW1hZ2UpOworICAgIGlmIChDYWNoZWRJbWFnZSogYm9yZGVySW1hZ2UgPSBzdHls
ZS0+Ym9yZGVySW1hZ2UoKS5pbWFnZSgpKQorICAgICAgICBpbWFnZXMuYWRkKGJvcmRlckltYWdl
KTsKKyAgICByZXR1cm47Cit9CisKIHZvaWQgUmVuZGVyT2JqZWN0Ojp1cGRhdGVCYWNrZ3JvdW5k
SW1hZ2VzKFJlbmRlclN0eWxlKiBvbGRTdHlsZSkKIHsKLSAgICAvLyBGSVhNRTogVGhpcyB3aWxs
IGJlIHNsb3cgd2hlbiBhIGxhcmdlIG51bWJlciBvZiBpbWFnZXMgaXMgdXNlZC4gIEZpeCBieSB1
c2luZyBhIGRpY3QuCi0gICAgY29uc3QgQmFja2dyb3VuZExheWVyKiBvbGRMYXllcnMgPSBvbGRT
dHlsZSA/IG9sZFN0eWxlLT5iYWNrZ3JvdW5kTGF5ZXJzKCkgOiAwOwotICAgIGNvbnN0IEJhY2tn
cm91bmRMYXllciogbmV3TGF5ZXJzID0gbV9zdHlsZSA/IG1fc3R5bGUtPmJhY2tncm91bmRMYXll
cnMoKSA6IDA7Ci0gICAgZm9yIChjb25zdCBCYWNrZ3JvdW5kTGF5ZXIqIGN1cnJPbGQgPSBvbGRM
YXllcnM7IGN1cnJPbGQ7IGN1cnJPbGQgPSBjdXJyT2xkLT5uZXh0KCkpIHsKLSAgICAgICAgaWYg
KGN1cnJPbGQtPmJhY2tncm91bmRJbWFnZSgpICYmICghbmV3TGF5ZXJzIHx8ICFuZXdMYXllcnMt
PmNvbnRhaW5zSW1hZ2UoY3Vyck9sZC0+YmFja2dyb3VuZEltYWdlKCkpKSkKLSAgICAgICAgICAg
IGN1cnJPbGQtPmJhY2tncm91bmRJbWFnZSgpLT5kZXJlZih0aGlzKTsKLSAgICB9Ci0gICAgZm9y
IChjb25zdCBCYWNrZ3JvdW5kTGF5ZXIqIGN1cnJOZXcgPSBuZXdMYXllcnM7IGN1cnJOZXc7IGN1
cnJOZXcgPSBjdXJyTmV3LT5uZXh0KCkpIHsKLSAgICAgICAgaWYgKGN1cnJOZXctPmJhY2tncm91
bmRJbWFnZSgpICYmICghb2xkTGF5ZXJzIHx8ICFvbGRMYXllcnMtPmNvbnRhaW5zSW1hZ2UoY3Vy
ck5ldy0+YmFja2dyb3VuZEltYWdlKCkpKSkKLSAgICAgICAgICAgIGN1cnJOZXctPmJhY2tncm91
bmRJbWFnZSgpLT5yZWYodGhpcyk7Ci0gICAgfQotCi0gICAgQ2FjaGVkSW1hZ2UqIG9sZEJvcmRl
ckltYWdlID0gb2xkU3R5bGUgPyBvbGRTdHlsZS0+Ym9yZGVySW1hZ2UoKS5pbWFnZSgpIDogMDsK
LSAgICBDYWNoZWRJbWFnZSogbmV3Qm9yZGVySW1hZ2UgPSBtX3N0eWxlID8gbV9zdHlsZS0+Ym9y
ZGVySW1hZ2UoKS5pbWFnZSgpIDogMDsKLSAgICBpZiAob2xkQm9yZGVySW1hZ2UgIT0gbmV3Qm9y
ZGVySW1hZ2UpIHsKLSAgICAgICAgaWYgKG9sZEJvcmRlckltYWdlKQotICAgICAgICAgICAgb2xk
Qm9yZGVySW1hZ2UtPmRlcmVmKHRoaXMpOwotICAgICAgICBpZiAobmV3Qm9yZGVySW1hZ2UpCi0g
ICAgICAgICAgICBuZXdCb3JkZXJJbWFnZS0+cmVmKHRoaXMpOworICAgIEhhc2hTZXQ8Q2FjaGVk
SW1hZ2UqPiBvbGRJbWFnZXM7CisgICAgSGFzaFNldDxDYWNoZWRJbWFnZSo+IG5ld0ltYWdlczsK
KworICAgIGdldEltYWdlc0ZvclN0eWxlKG9sZFN0eWxlLCBvbGRJbWFnZXMpOworICAgIGdldElt
YWdlc0ZvclN0eWxlKG1fc3R5bGUsIG5ld0ltYWdlcyk7CisKKyAgICB0eXBlZGVmIEhhc2hTZXQ8
Q2FjaGVkSW1hZ2UqPjo6aXRlcmF0b3IgaW1hZ2VJdGVyYXRvcjsKKworICAgIGltYWdlSXRlcmF0
b3Igb2xkRW5kID0gb2xkSW1hZ2VzLmVuZCgpOworICAgIGZvciAoaW1hZ2VJdGVyYXRvciBpdCA9
IG9sZEltYWdlcy5iZWdpbigpOyBpdCAhPSBvbGRFbmQ7ICsraXQpIHsKKyAgICAgICAgaWYgKG5l
d0ltYWdlcy5jb250YWlucygqaXQpKQorICAgICAgICAgICAgbmV3SW1hZ2VzLnJlbW92ZSgqaXQp
OworICAgICAgICBlbHNlCisgICAgICAgICAgICAoKml0KS0+ZGVyZWYodGhpcyk7CiAgICAgfQor
CisgICAgaW1hZ2VJdGVyYXRvciBuZXdFbmQgPSBuZXdJbWFnZXMuZW5kKCk7CisgICAgZm9yIChp
bWFnZUl0ZXJhdG9yIGl0ID0gbmV3SW1hZ2VzLmJlZ2luKCk7IGl0ICE9IG5ld0VuZDsgKytpdCkK
KyAgICAgICAgKCppdCktPnJlZih0aGlzKTsKIH0KIAogSW50UmVjdCBSZW5kZXJPYmplY3Q6OnZp
ZXdSZWN0KCkgY29uc3QKQEAgLTI1MDksMTcgKzI1MjEsMTYgQEAgdm9pZCBSZW5kZXJPYmplY3Q6
OmRlc3Ryb3koKQogCiB2b2lkIFJlbmRlck9iamVjdDo6YXJlbmFEZWxldGUoUmVuZGVyQXJlbmEq
IGFyZW5hLCB2b2lkKiBiYXNlKQogewotICAgIGlmIChtX3N0eWxlKSB7Ci0gICAgICAgIGZvciAo
Y29uc3QgQmFja2dyb3VuZExheWVyKiBiZ0xheWVyID0gbV9zdHlsZS0+YmFja2dyb3VuZExheWVy
cygpOyBiZ0xheWVyOyBiZ0xheWVyID0gYmdMYXllci0+bmV4dCgpKSB7Ci0gICAgICAgICAgICBp
ZiAoQ2FjaGVkSW1hZ2UqIGJhY2tncm91bmRJbWFnZSA9IGJnTGF5ZXItPmJhY2tncm91bmRJbWFn
ZSgpKQotICAgICAgICAgICAgICAgIGJhY2tncm91bmRJbWFnZS0+ZGVyZWYodGhpcyk7Ci0gICAg
ICAgIH0KKyAgICBIYXNoU2V0PENhY2hlZEltYWdlKj4gaW1hZ2VzOworICAgIGdldEltYWdlc0Zv
clN0eWxlKG1fc3R5bGUsIGltYWdlcyk7CiAKLSAgICAgICAgaWYgKENhY2hlZEltYWdlKiBib3Jk
ZXJJbWFnZSA9IG1fc3R5bGUtPmJvcmRlckltYWdlKCkuaW1hZ2UoKSkKLSAgICAgICAgICAgIGJv
cmRlckltYWdlLT5kZXJlZih0aGlzKTsKKyAgICB0eXBlZGVmIEhhc2hTZXQ8Q2FjaGVkSW1hZ2Uq
Pjo6aXRlcmF0b3IgaW1hZ2VJdGVyYXRvcjsKKyAgICBpbWFnZUl0ZXJhdG9yIGVuZCA9IGltYWdl
cy5lbmQoKTsKKyAgICBmb3IgKGltYWdlSXRlcmF0b3IgaXQgPSBpbWFnZXMuYmVnaW4oKTsgaXQg
IT0gZW5kOyArK2l0KQorICAgICAgICAoKml0KS0+ZGVyZWYodGhpcyk7CiAKKyAgICBpZiAobV9z
dHlsZSkKICAgICAgICAgbV9zdHlsZS0+ZGVyZWYoYXJlbmEpOwotICAgIH0KIAogI2lmbmRlZiBO
REVCVUcKICAgICB2b2lkKiBzYXZlZEJhc2UgPSBiYXNlT2ZSZW5kZXJPYmplY3RCZWluZ0RlbGV0
ZWQ7CkluZGV4OiBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAkocmV2aXNpb24gMjAyMzQpCisrKyBX
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAkod29ya2luZyBjb3B5KQpAQCAtMzk5LDYg
KzM5OSw3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc2NoZWR1bGVSZWxheW91dCgpOwogCisgICAg
dmlydHVhbCB2b2lkIGdldEltYWdlc0ZvclN0eWxlKFJlbmRlclN0eWxlKiwgSGFzaFNldDxDYWNo
ZWRJbWFnZSo+Jik7CiAgICAgdm9pZCB1cGRhdGVCYWNrZ3JvdW5kSW1hZ2VzKFJlbmRlclN0eWxl
KiBvbGRTdHlsZSk7CiAKICAgICB2aXJ0dWFsIElubGluZUJveCogY3JlYXRlSW5saW5lQm94KGJv
b2wgbWFrZVBsYWNlSG9sZGVyQm94LCBib29sIGlzUm9vdExpbmVCb3gsIGJvb2wgaXNPbmx5UnVu
ID0gZmFsc2UpOwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvcmVmLWJ5LWltYWdlLWFu
ZC1iYWNrZ3JvdW5kLWV4cGVjdGVkLnBuZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNhbm5vdCBkaXNwbGF5OiBmaWxl
IG1hcmtlZCBhcyBhIGJpbmFyeSB0eXBlLgpzdm46bWltZS10eXBlID0gYXBwbGljYXRpb24vb2N0
ZXQtc3RyZWFtCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9y
ZWYtYnktaW1hZ2UtYW5kLWJhY2tncm91bmQtZXhwZWN0ZWQucG5nCl9fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTmFtZTog
c3ZuOm1pbWUtdHlwZQogICArIGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQoKCmlWQk9SdzBLR2dv
QUFBQU5TVWhFVWdBQUF5QUFBQUpZQ0FZQUFBQ2Fkb0p3QUFBZ0FFbEVRVlI0bk96ZGU1eE41ZUxI
OFdmUGpOc1EKR3BXVWZvY1NTZEZOVWgxRmN1bWtWQ29oNlNKeVFsTk9FaUU1QjdrVXVaUXVISmVP
a0V3aEtwZUtDSWxpS2hURy9UYjN5NTdacy9mMwo5OGMrczh6ZXMvZk1IdkZVcDgvNzlmSjZXWmU5
MXJPZVo2M1o2N3ZXczlaMlNaSUJBQUFBQUF1aWZ1c0NBQUFBQVBqeklJQUFBQUFBCnNJWUFBZ0FB
QU1BYUFnZ0FBQUFBYXdnZ0FBQUFBS3doZ0FBQUFBQ3doZ0FDQUFBQXdCb0NDQUFBQUFCckNDQUFB
QUFBclBuREJKQWoKUjQ2WUZTdFdtT1RrNU4rNktBQUFBQUJPVW9rQjVQYmJiemRubm5tbWFkT21q
Ym52dnZ0TWRIUzBxVjI3dHVuUW9ZTzU4Y1liVFhSMAp0Smt4WThacExlVFVxVlBObkRsenpPZWZm
MjRhTkdoZ2NuTnpmL1V5dlY1anRtLzNtUVVMUENZcHlYY0tTaGs1eVpqMDlLTEQyZG5HCnJGaVJi
eVpNeURWNzl0Z3QwK2xRMHZiazV4dnowMDgrTTMrK3h4dzRvSkRMOFAxT3FpRzR6WUw5bHZ0VHNE
L2lmaFNxbmZmdWxmRjYKSTUrL1lQeVdMVjR6ZTNhZStmNzdNQitPUUg2K01aczNlODJXTGFHWHNX
MmJ6NnhkNnpVS3ZkdWFYYnQ4NXYzM1BlYllzZEF6Yk5yawpOYXRXNVlmZHZnTEhqc21zWHAwZmNi
bjM3dDFiN1BRREJ3NllJMGVPR0dPTVNVMU5OUjZQcDFUVGYyL3k4dkxNRHovOFlOeHU5MjlkCkZF
ZEpiZkJINC9WNnphRkRoNnl2VjVMWnRXdVhXYlJva2RteVpZc3ozdmQ3K1ZMNG5UaVY5WkdTa2hM
UmZHbHBhUkVkYzdRVmlsTmkKQVBGNFBHYlRwazFtNmRLbFp1N2N1YVpzMmJMbTVwdHZOdlBuenpl
clY2ODJvMGVQL2xWLy9ITnpjODNLbFN2RFRzL0t5akpQUC8yMAplZkxKSjgyTEw3NW8zbi8vZlZP
dVhMbVRYbCtCbkJ4alB2bkVZenAweURJVktyaCs5ZkpLNDZPUFBHYlNKSGVSNGFnb1kzYnY5cGwr
Ci9YSk1YTndmNXVaVVdDVnRUMGFHekx4NWVhWkxseXhUcFVyUk50aTB5V3ZpNGxMTndZTmh6dklz
Q202ellML2wvaFRzajdZZkJiZnoKc1dNeWp6K2ViUTRjOEpubm44OHhiNytkVit6OGhmbDh4dXpi
NXpOZHVtU1o2T2lUYTRmdnYvZWFBUU55ekpWWHBwc2ZmZ2o4QXZYNQpqQmt6SnRkODlwbkhEQnFV
WStyWFR6ZDVoWXFYbjI5TTE2N1padWJNUEhQcHBkR21VNmVzZ0JENDAwOCswNkpGcGtsTmxhbFN4
V1hhCnQ4OHlTNWVHRGhoSGpzZzBiNTVoRWhNait4TGZ0bTJidWUrKyswSk9PM0RnZ0duYXRLbDU0
WVVYek96WnM4M3R0OTl1cnIzMldoTVYKRlJYUjlNOCsrOHhjZnZubHh1VnltUTRkT3BnQkF3YVkr
UGg0MDZwVkt4TVRFMk95c3JLTU1jWjgrT0dISmk0dXpzVEV4Smo0K0hqVApyVnMzYzlOTk41blpz
MmM3WlhuMDBVZE5yVnExeklNUFBtZ2VmdmhoNDNLNVROT21UVTNQbmoxTjNicDFUWTBhTll3a3My
elpNbE96ClprM2pjcm5Nb0VHRFRIWjJ0ck9NRFJzMm1EdnZ2TlAwN05uVEpDUWttTWFORzV2NCtQ
aUFpMVBaMmRsbXdvUUpwa3laTXFaTGx5NEIKOWJGMTYxYlRyRmt6YytHRkY1cmx5NWVIckxOVnEx
YVpxNjY2eXJoY0x0TytmWHN6WU1BQTgvVFRUNXZiYnJ2TnVGeXVrSGZqaTJ1RApVTnV6Y09GQ1o5
eGpqejFtZnZubGx5S2ZpN1R1Q3krclo4K2VadENnUWVheHh4NHpYYnAwTVR0MjdBaFpwa2pFeDhl
Yjl1M2JuL1RuClQ1Ykg0ekhmZlBPTmFkZXVuY243NzBHMmFkTW1FeGNYWnc0ZVBHaTlQTDlIcDdJ
Kzl1L2ZiOTUrKysySTU1OHpaMDZ4MDJrcmxFZ2wKV0xwMGFjQncrZkxsMWExYk4yYzRNek5UcTFl
dkxta3hEcC9QNS93L0x5OVA5OTU3cjE1ODhjV3c4NjlkdTFabHlwU0plUG1sTVhObQpycTYrT3Iz
WWVmYnQ4eFU3ZkRMdXVpdFRCdzc0UWc1UG5Pald6VGRuL09wMS9GNlV0RDNqeDd2VnNtWG82Y2VP
K2RTL2Y3WnljMCtNCk94WDFmektDMnl5VVNQWW5XLzVJKzFGd083L3lpbHVQUEpJbFNkcXdJVi9W
cTZjcVB6LzgvTUVXTE1qVC8vMWY2cThxMHhkZmVCUWQKbmFManh3UGIvT0JCbjNKeS9QOVBTNU9p
b2xLMGNHR2VNNzFyMXl3TkhacmpERStjNkZiMzdsbk9jUHYybWVyYk45c1puajgvVDQwYgpGOTFu
RGh6d3FWMjdUQm1USE5FKzcvUDVkT09OTjZwQ2hRcktMMXhaLzlXblR4ODkrT0NEenZDUkkwZlVv
a1dMaUtkTDBqMzMzS096Cnpqb3JZUGsrbjA4UFAveHd3SHgxNnRRSitHeDhmTHlNTWRxNGNhTWs2
Zjc3NzFkV2xyOU9QdmpnQXhsanRIanhZa2xTYW1xcWV2YnMKNlh5MlNaTW11dXl5eXdLV1AyblNK
UDNsTDMvUjd0MjdBOHB4NFlVWDZva25uZ2lZTno4L1gyZWRkWmJLbENtai9mdjNCMHdiT0hDZwpQ
dnp3d3lKMVZWaVhMbDFVcFVvVjVlWGxCWXdQM3VhQ01oVFhCdUcycDBtVEpycjAwa3ZEZmthS3ZP
NExsbFhZcTYrK3FySmx5MnJsCnlwVmhsMStjQ3k2NFFJODg4c2hKZmZiWCt2enp6eFVYRnlldjF5
dEpPbmJzbVByMzc2L2NjQWQvS2UzYnQrK1VMT2RVS2syWlRsVjkKN04yN1Z4MDZkQ2pWY25yMjdC
bHdQbmU2eW9iL1hTVUdrR0RCQWFTd1E0Y09LVDQrWHMyYU5kTlZWMTJsdFd2WE90UG16Sm1qeVpN
bgphK1RJa1dyYXRLa2s2ZVdYWDFhNWN1VjA1WlZYcW12WHJzck16QXhZM3B0dnZxbldyVnZMNVhL
cFY2OWVldWFaWnlSSkdSa1ordnZmCi82Nm5uMzVhZDk1NXAzcjM3cTNzYlArWCtqZmZmS1BISDM5
Y0F3Y08xUERodzNYV1dXZnA2NisvRGxuZUxsMnk5UHp6T1NHblNkSzgKZVhucTJERXo3UERKMkwv
ZnA3dnZ6Z3c3L0xlL1pXamtTUGV2V3NmdlNVbmJjOXR0R1JvekpyTHRQUlgxZnpLQzJ5aWNrdllu
bS83SQorMUYydGo5a1NOSUxMK1NVT3RROStHQ1dldlRJS25uR1lqejNYTGF1djc3NDlTNVlrS2VM
TDA3VGY4K2w5Y0VIZVRyNzdGU2xGL3JZCnpKbTVhdEFnelJudTFpMUxsMTJXSnZkL20rYlpaN01E
QW9vazdkM3JVL2Z1V1JvLzNxMHJyNHhzMjk5NTV4MDkrdWlqTXNib3h4OS8KTERLOVFZTUcrdHZm
L2hZdzdxT1BQb3A0dXNmalVkV3FWUU5PZU5QUy9OdDE2TkFoWjl3dnYvd2lZNHhlZSswMVo5ejA2
ZE5sak5HaQpSWXZrZHJ0MStQQmhaMXIzN3QxVm9VSUY1Kzkzd1RJazZmang0NHFPanRhZ1FZT2Nh
Vk9uVGxXRkNoV2NNRk5ZMzc1OUZSVVZwZlJDCkRiQjY5V3I5NHgvL1VHeHNyQVlNR0JBd2Y5dTJi
ZVh4ZUlvc3A0RFA1OU81NTU2ckJ4NTR3Qm1YODkvMFdYaWJDNVRVQnFHMko5UzQKWUpIV2ZjR3lu
bjMyMllEUHU5MXVWYTVjV1pkZmZubllkWVNUbEpTa3FLZ29KU1ltbHZxenA4Snp6ejJuKys2Nzc3
UXNlOTY4ZWVyWQpzZU5wV2ZiSitpM0s1UFY2ZGNNTk4ralRUejh0MWVjZWUrd3hmZlhWVjZlcFZQ
Z3pPR1VCSkQ4L1gyM2J0bFY2ZXJxOFhxOTY5T2loCnM4OCtXeWtwS2ZKNFBMcm1tbXVjZWVQajQ1
MHJHclZxMWRLLy92V3ZzT3ViTzNldW9xS2lBc1kxYTlaTU0yYk1rT1MvaTNMdHRkZnEKOXR0dmwr
Uy9ZM0xtbVdmcWlpdXUwUHo1ODlXalJ3OXQzNzY5eUhKOVBxbDY5VlI5OFlWSFgzK2RyNVl0TTlT
b1VibzhIc25qa2VMagpzeFVUazZLMmJUTTBZMFp1d1BDMGFia2FPOWF0aXk1SzA2eFp1Um85MnEy
cnJrclgvZmRuT2xkSC9YVWlYWE5OdWw1KytjU0o0RC8vCm1hTVBQOHdMT2V4MlM3R3hLVnF6Smwv
anh2bVgrY0FEbVVwTDg1ZHA3RmkzNnRaTjArTEZIbWNiYnJrbFE1OStldUpMZE5PbWZJMGMKNmRh
Y09YbDY0SUZNL2ZPZk9WcTc5c1JWczRFRGN6UmhnbHNQUFpTbEJ4OHNlcEsyZW5XK0dqZE8xNmhS
SjhyODAwOWVqUi92SDg3Tgo5ZGZicGsyRnI4UkpreWE1OWZiYnVlcllNZE1wVDNIYlUzajYxcTFl
SlNaNmRmLzltZXJkTzF0NzluZzFjMmF1cnJ3eVhZTUg1eFJwCmo5bXpRMTlSU1UrWEJnM0swZlRw
dVJveUpFY2pSdmdiSXp0Ym1qelpyUXN1U05XU0pSNE5INTZqNnRWVHRYMjdONkk2QzI2elVIVlkK
M1A1VVV2bE9wczZMWTJNL0NwYWM3TlB3NFRtYU5TdFhMNzBVV0YvRkxhdHdPd2RidHN5ait2WFRs
SlIwNGlwYnFQa3pNLzFCWmNJRQp0eVpNY092TU0xTUQ3a3Fjak1zdVM5TkxMeFV0VTA2T3Y3MGVm
VFJMWThhNFZYRGU3UE5KalJxbDY3bm5zZ1BtSHpYS3JiLzg1VVFBCjJiUEhxMnJWVXRXeVpZWkdq
TWpScEVudWdMczd1M2Q3OWNRVFdjck85b2Z6UVlOS0RyVEhqaDNURTA4OG9SMDdkc2dZbzdsejV4
YVoKNTVWWFhwRXhwc2hKZUtUVFAvLzhjeGxqbkRzR3FhbXArdWMvLzFsa3Z0ZGVlMDNHR08zZHUx
ZVNsSmlZcUFZTkdxaFZxMVp5dTRzRwo0cG8xYXpwL3U0UE5uajFieGhqblFsWmlZcUppWTJNRDdw
QVUxcU5IRHhsanRHdlhMbWZjZ0FFRHRHblRKajN4eEJPcVZxMmFFM1NPCkhEa1NjTWNubEEwYk5n
VFVaMXBhV3RqdnFramFJSGg3d28wTEZtbmRGeXpyODg4L0x6THQzbnZ2bFRGR0J3OGVkTWJsNStm
cm1tdXUKMGNzdnZ4eDIzZSsvLzc1elFuenMyREVOSGp4WURSczIxUHIxNi9YRkYxL291dXV1VS9m
dTNTVkpNMmJNMEtXWFhocXliTVZKVGs3Vwo4T0hETld2V0xMMzAwa3NCZDZXdXVPSUt2ZlhXVzVL
a21UTm42c29ycjlUZ3dZT2Q2VDZmVDVNbVRkTGJiNyt0amgwNzZ0TlBQMVYyCmRyWW1USmlnSmsy
YTZMMzMzdFBtelp2VnNtVkxOVzdjV0Y2dlZ4NlBSL0h4OFlxSmlWSGJ0bTAxZS9ac1NmNDdZaE1t
VE5CRER6MVUKN0w1UlhIblQwOU0xYU5BZ1RaOCtYVU9HRE5HSUVTTWs2YVRMbEphV3BvRURCMnJT
cEVrYU8zYXNXclJvb1lTRWhDTDFVZEx5QzRUYQp4dEdqUit1V1cyNHAxWFpLMGdzdnZPQzBUYkNU
S1J2K2ZFNVpBSG4zM1hmVnBrMGJMVjY4V0lzWEw5YlFvVU5sakZGQ1FvS09IajJxCm1KZ1k1elo3
WW1LaWN5dTVWcTFhemtFYVNuQUErZmpqanhVVkZSVndTL3oxMTErWE1jWko0MDJiTmcyNGFoWEt0
OS9tcTNMbEZLMWIKbDY4NWMvS1VtT2lWTWNsT041dERoM3h5dVZLMFo0ODM1UEQyN2Y3NWh3L1BV
VzZ1ZFBpd3IwaDNERWw2OU5Fc3paM3JIK2Z6U1gvOQphNFp6d2hFOHZHeVpSOVdycDJyTUdMY09I
ZklwSmNXbmloVlQ5TVliL2hQdURSdnlGUjJkNHB6QXIxcmxrY3VWb2lOSC9HWGVzY09yCmloVlQ5
TmxuL2hQSmdwQlV1TXdWS3FRb04xZnllcVYrL1FKUGxnbzg5MXkyYzhYZjU1T2FOODhJNkRiU3Ix
KzJ0bTN6TDlQdGx0cTEKeTlTMGFmNHlQdlpZbGhPNFN0cWU1Y3M5dXVBQ2YxZVpGU3M4R2puU3JZ
STd1dW5wVW5SMGlsYXU5SVNzLzJCNzlualZvRUdhVnF3NApjUkpkclZxcU5tendWMjVTa2s4eE1T
bGFzQ0JQNjlmbmE5aXdIR1ZrbEZ4bndXMFVyZzVMMnA5S0tsOXA2cndrcDNzL0NyWmpoMWVOCkc2
ZHJ4dzcvOUJkZnpGR25UcGtSTFN1NG5RdnMzKy9UUGZka0Z1a0NGVHova1NNK1hYZGR1cjc4MGo4
OFowNmV5cFpOVWNaL2U1OTkKOXBsSFo1NlpHdlpmKy9aRjcyenQzdTF2dTIrK0tScTRsaS8zcUZ1
M0xGV3BrcUw2OWRPYy9XTHo1bndaazZ6bHl3TzM0OUZIczNUTApMU2U2d20zZDZsV1BIbG1xWE5r
ZnBnc0gxSjA3dmVyVHg5KzFMQzFOS2x2V3Z6K1ZKRDQrWHZ2Mzc1ZlA1MU9sU3BWQ1hrMzMrWHpx
CjBxV0xqREVhT1hKa3FhYy8rK3l6S2xPbWpKNTQ0Z20xYTlkT1ZhcFUwWUlGQzRyTTE3cDFhNTEx
MWxucTFxMmJhdGFzNlh3bmhMclQKc0dYTEZobGpOR1hLbEpEYjFhbFRKNTE5OXRuT1NVcW5UcDFr
ak5GMzMzMFhjdjVtelpxcGF0V3FBZDFDV3JWcUpaL1BweDkrK0VFdQpsMHV2di82NkpQL0o4bi8r
ODUrUXl5a3dkT2hRUlVkSHEyZlBudXJRb1lPcVZLbWloUXNYaHB3M2tqWUkzcDV3NDRKRld2ZWRP
blhTCm1XZWVHYklyVjVNbVRXU01LZEs5NTlGSEh3MFpsZ284OTl4eit1S0xMNXpoQlFzV0tDNHVU
dXZXcmRQU3BVdjF4aHR2NkpwcnJsRkMKUW9KV3JGaWhYcjE2Nlo1NzdnbTd2R0E3ZHV4UTQ4YU50
V1BIRGtuU2l5KytxRTZkT2ttU0RoNDhLSmZMcGFTa0pFbitrL3ZvNkdpbgpLNW5iN1ZhN2R1MDBi
ZG8wU2Y0cjhnVmhhdE9tVFlxSmlkSHExYXMxZCs1Y2JkcTBTY1lZSFR0MlRKTC96cEhMNWRLZVBY
c2tTZHUzCmIxZUZDaFdVbTVzcnI5ZXJmdjM2bGJxOGUvYnNVWU1HRGJSaXhRcG4vbXJWcW1uRGhn
MG5WYVlEQnc2b2NlUEdUZytPTld2V0tDb3EKU2lrcEtTSHJvNlRsaDl2R3l5Njd6RGt1SXRuT0Fr
ODk5VlNSdTIwRlNsczIvRG1kc2dEU3UzZHZkZTdjV1o5KyttbkF2NEkvZVBmZApkNStpb3FMVXEx
ZXZnTnZ0dFdyVkN2bUZWeUE0Z0x6NDRvdXFYcjE2d0R3Rk8vT2tTWk1rU1MxYXRGQ2ZQbjJLM1k2
Ukk5MXExaXhECk0yZjZUOHFtVHMzVnhSZWZ1Rkk1YTFhdTZ0VUxQengxYXE3aTRsS2RrN2E4UENr
bUprVlRwb1R2NzdoaWhVY0RCdVNFSFg3cXFXeFYKcTVZYWNLSlh1M2FheG8zem45Q1BHK2ZXZGRl
ZDZGNXc1NTJadXVLS0U4T1RKN3RWcmRxSi92TDMzSk9wMXExUG5QeWtwUGdVRzV2aQpYRDFPVFEz
ZGYzUG16RncxYk9oZjduLytrNmZldmJOMS8vMG5UdFFLcnR4TFV0KysyV3JUSmtOZXI3K09icmdo
M1RscExHbDdDcnFmCnpKaVJxMFdMQW9QYndvVjVxbHc1UlFVNU03aitDL042cFdiTk10UzdkMkNn
cWx6NVJIdk1tWk9udW5YVDlPNjdnZXNwcWM2QzJ5aGMKSFJhM1AwVlN2dExVZVVsTzkzNVVtTWNq
WFh0dHVuTzNKbGhKeXdwdTV3SXZ2cGlqRUJmTWk4emZybDJtWG5qaFJOMk1HdVZXOCthLwo3dG1Y
aVJQZE92ZmNWQlhUdlZrTEZ1UUZCSTY1Yy9NVUU1TVNjQWRVa3M0L1A5VnA5NEVEY3pSMGFJN3k4
NldORy9OMXhoa3BldnBwCi83U2ZmdktxWDc5c0o1RE1tcFdyYzg1SlZVa1hDQXU2R08zY3VWTTdk
KzVVdzRZTmRlZWRkNGFjTnk4dlQyM2F0SEc2UTVWbWVvTUcKRGRTbVRSdG51RStmUGtXNnpHWm1a
cXBjdVhJYVBIaXdVbE5UVmFGQ0JUMzk5Tk5oeXo1aXhBZ1pZNXdUek1MeTgvTVZGeGVucmwyNwpP
dU11dXVnaTFheFpNK1N5a3BLU0ZCMGRyWll0V3dhTWUraWhoNXpodG0zYnFuNzkrdkw1Zkhyd3dR
ZWRFN2x3R2pkdXJKdHZ2dGtaCjd0R2poOU1GcTdCSTJpRFU5b1FhRjBva2RWK3dyRkFYM2pJek14
VVRFNlB6emp1djJQV0U4dmUvL3oxZ3VIZnYzbXJSb29YbXo1OHYKU2VyY3ViUHV1T01PclZtelJw
SjArZVdYNjVWWFhvbG8yUjZQUjlkZWU2M0dqeDhmY3ZyMDZkTjF5U1dYT01NTEZ5NVU1Y3FWbll1
UApmZnYyVlpzMmJlVDFlalZyMWl6ZGNNTU5Pbjc4dUNUL0hiMG1UWnBvNXN5Wmt2emR1UXMvZXpO
cjFpelZxMWZQR1U1SlNWRnNiS3h6CmR5VTF0ZWd6Wk1XVjErdjFxbG16WnVyZHUzZkErTXFWS3pz
QnU3UmxhdDI2dFlZUEgrNE16NXc1TTZBblNYQjlsTFQ4VU51WWs1T2oKbUpnWWJkdTJMYUx0TEt4
ejU4NU90L2hncFMwYi9weE9XUUI1NElFSGlyMXRtWitmcjZlZWVrb3VsMHZYWFhlZDA0ZTF0QUdr
Zi8vKwppbzZPVmtiR2laTU1qOGVqbUpnWTUrcEhKQUdrZWZNTXRXeVo0WnhrM0hkZnB2cjBPWEdD
MkxWcmxwNThNdnp3L2ZjSHp2L3R0LzRyCm9KczNoNzlpMmJsemxuYnU5SVlkcmxjdlRjT0duZmlD
MjcvZkoyT1NuYXZrN2RwbE9sMHl2dm5HLzNEdXM4OEdscUYyN1RUbDVrcTcKZG5sMTNubXBXck1t
c0R4ang3b1ZFNU9palJ2RGwzUGxTby9PT2l0VisvYjVOR05HcnFaTnk5Vk5OL25yZStsU2o3WnM4
WC8yeHgvOQpWNG9mZVNSTGd3Zm5hTkdpdklBVHlaSzJwMUdqZE4xOGM0WmlZNHMrN051clYzYkFj
eGZCOVYvWWtpVWVHWk9zWDM0NVVaY0ZkNmpXCnIvZXY2K0dIczNUeHhXbEZUblJMcXJQZ05ncFho
OFh0VDVHVUw5STZqNFNOL2FqQTBxWCtiVXNMblExTFhGWndPMHYrdTExZmZCRzYKYjM3aCtSY3N5
Rk5zYklyenZJZ2tOVzBhMkpYdFpMUnRtNkZ1M1lwL2hzVHRscXBXVGRYVXFmNEFPV2FNdThpRDd4
czM1c3ZsU3RHMgpiVjU5L3JuL3JsVGhHd0Z2dnBtcnFsWDk0NW8wU1ZlREJtbHEyREJkRFJ1bTYr
eXpVMVd4WW9vYU5rd1BlK2ZKNC9Ib3Z2dnUwOFNKCkU1MS9OOTEwazJyWHJ1M01rNUdSRWZBUWFH
Wm1waTY0NEFMblJMMms2WkswZS9kdUdXUDA2cXV2T3VOKytPR0hJdVZKU0VpUU1jWTUKR2UzY3Vi
UE9PZWVjSWc5d0YvanJYLytxaGcwYmhweTJldlhxZ0s1TU9UazVNc2FvZWZQbUllZC80WVVYRkJV
VjVheGJrcVpNbVJKdwpsMlBwMHFVeXh1aWpqejdTM1hmZkhYSTVCUXF1UmhlK083OTU4K1lpODBY
U0JxRzJKOXk0WUpIV2ZjR3lDcnJ1RkxadzRVSVpZd0s2CkxrWEM1L01WNldKVHQyNWQ1d1VEUHA5
UDFhdFhWM3g4dkNUcDhPSERjcmxjQVNlenhTbG9qN1F3Znp3NmR1eW92bjM3T3NPOWV2VnkKMnUz
SEgzK1VNVWFQUFBLSUJnOGVyRVdMRmdYc1o2MWJ0OVpWVjEzbGpPdllzV1BBeVhMWHJsMzE1Sk5Q
QnF4djdOaXhpb21KQ2ZsOApVVW5sWGJKa2lZd3h6dk5Ma3YrT2d6Rkc2OWV2TDNXWjNuLy9mVldx
VkNrZ0pMZHQyMWI5Ky9jUFdSK1JMRC9VTnE1ZnYxNlZLbFVLCnVHdFlVcnNVYU5Tb2tYUDNLZGpK
bEExL1BxY3NnRHovL1BNNjk5eHpBNjRRK1h3K3JWeTVVZ2NQSHRTQkF3Y2tTY3VXTFZQRmloWDEK
eGh0dlNQSUhrRkdqUm9WZFgzQUFtVFp0bW93eEFiYzU5Ky9mNzN5eFNDVUhrTXhNZi9lR2dxdVhQ
cCsvTzh6U3BTZk9EbXJVU0ZWQwpRbDdJWVo5UE92dnN3UGtmZnp4TDk5NGIva0hsNUdTZjJyYk5D
RHY4eXk5ZVJVZW42TkNoRTM4SWV2Yk1VcGN1L2hPaC9IeXBTaFYvCjE1T0NaeG9xVmt3SjZMY3ZT
ZjM3WjJ2RWlCd3RXK1pSNFl0aysvZjdsK3YxU3RkZm42NWJidzEvbGZpNzcvd25Ub01INThqcmxU
NysKMktONjlkTDA4ODllelpwMTRtUmw2dFJjVmFtU29sRFBjWmEwUFFjUCtoUWRuYUtqUi8xZGFQ
NzFyOEFyaXhkZGxLWTMzenl4cnVEMgpLR3pJa0J6VnFCRjQ4dGUvZjNaQS9aNTNYcXBHanc1OVlo
cXV6b0xiS0Z3ZGxyUS9SVksrU091OEpLZDdQd28yWW9UL2VacmlGTGVzCjRIYVd3dCtaQzU2L2Uv
Y3NKNlJKL2hCWCtDS0F6eWRkY2ttYWF0Wk1EZm52Z2d0U2xaSVN1SzZzTEtsOCtSUzk5MTd4ejVC
a1prcVYKS3FVb01kRWZEajcvM0tPcnJncDhZUHllZXpMVm9ZTi9nOGVNY1JmNSsvRGpqMTY1WENs
S1RmVXBNZEdyYmR2OC83WnU5VDhuTW5xMApXeHMyNUllOUUvUHl5eThIUENqdVg4OFl1Vnd1NTBI
c0R6LzhVS3RXclFxWUp6NCszam54TDJtNjVIL3JWTGdIcXovNjZDT24rOURqCmp6K3VxbFdyT2wy
QVZxeFlJV09NUHZqZ2d5S2ZTMDVPVm5SMHRKNS8vdm1RMnpaZ3dBQ1ZLVk1tNEVyMDJXZWZIWEJI
b3NEMzMzK3YKQ2hVcTZCLy8rRWZBK0hidDJqbFh4Q1gvOTFIOSt2VlZzMlpOalJrekp1UjZDeFI4
ejN6NzdiZkZ6aGRKRzRUYm5sRGpDaFJjZlk2MAo3Z2NNR0tEbzZPaUE3Wlg4SityVnFsWFREVGZj
VU94YnRrTHhlcjBCdlJWMjdkb2xZNHlXTFZzbXlSL0lvcUtpbk9kOTVzeVpFL1lPClZTZ2pSb3dv
MHB1aDhMcmo0dUtjYnR1Uy93N1ltMisrS2NuL01vSXFWYXFFN05xWG5aMnQ4dVhMNjkxMzM1WGti
L2R6empsSG4zenkKaVROUGpSbzFuR2NwQ3Q2TzV2VjZkZjMxMSt2V1cyOHRkWG1IREJtaUdqVnFC
SXpyMzcrLzJyWnRlMUpsNnQ2OWU4Q2I1TmF0VzZlbwpxS2lBdDVJV3JvK1NsaDl1RzVjc1dhSTZk
ZXBFdkowRmtwT1RGUlVWNVhRdkMxYWFzdUhQcTFRQnhPdjFLaW9xU25mY2NVZVJhZHUyCmJaUEw1
VkxYcmwyVm5KeXN3NGNQYStqUW9kcTNiNSsyYnQwYWNGdTJVNmRPenBXYUs2NjR3cmx0bVp5Y1hH
UzViNzMxbG93eHptc2IKTXpNelZiTm16WUNISlJNU0VuVEpKWmM0ZjR5YU5Xdm1QQmdYeXFKRmVU
cnJyQlBkRzc3NUpsL2x5L3RQaHIvODBxUHZ2c3RYVEV5SwprcEo4MnJneHY4andsaTM1S2xNbXhY
bjd6YXBWSGpWcWxCNXdGWC9UcG54Tm1IRGloSGZDQkhmQXc5UEJ3NU1tdVZXLy9va3JEdlBuCjU2
bHAwM1NuTC92R2pmNHk1dVQ0dTVsODhvbEg1Y3VuYU44K24vTkE3MmVmZVZTNWNvcG16Y290Y3FY
LytlZHpkUFNvejFsWDRSTTMKdDl2L29QWGV2ZjdwU1VuKzUxa0tycGh2M3V6dkxsTDRZWHBKV3J6
WW96SmxVcHpuSEhKejVYU2xLbWw3WnN6SWRVN1k1czNMMDdubgpwaW83Vy9ycXEzenQydVcvTzdC
N3QxY3JWaFJ0aitBeUwxamc3MTVWWU90V3J5Ni9QTTBwMTNmZjVTc3FLa1VIRHhZOWt5dXV6b0xi
CktGd2RsclEvbFZTKzB0UjVTVTczZmlRRjF2MktGZjduUndycUpUOWZ6dk1lSlMwcnVKMGxmd0NZ
T1RNM1pQZXI0UGs3ZHN4MFF0eWgKUXo1MTY1YWw2dFZUbFpycWMrNHNaV2FHLzVjVjRpWkhRa0tl
b3FOVGlnU1ROV3Z5dFdyVmllMmFOaTAzNEkxbkhvOTA4Y1VubmdsWgp1elpmbDEyVzVuVFJYTE1t
WDJlZW1ScXdYZi82VjA3SVoxQzJiZk1HUEpNVHl1N2R1M1hERFRlRUtMLy9Ma1JCMyt2Um8wZXJS
NDhlCkFmTmNlZVdWVHYvdmtxWkxVc3VXTFhYKytlY1hXZGVDQlF1Y3U5NTVlWGs2Nzd6ejFLNWRP
MmU2eitkVDdkcTFBN29QRlhqbm5YZUsKWEVncS9MbjY5ZXM3YjBzc0VCOGZyekpseWdSY21jM0l5
RkM5ZXZYMHhCTlBCTnpKU1VsSktmSjU2Y1R6Z3FGTzZBdTc0NDQ3ZE00NQo1eFQ3bXRGSTJ5RFU5
b1RiUnNuZlBXWG8wS0dTSXF2N2dtVTFidHc0WUo0dFc3YW9WcTFhNnQ2OWU1SHYxazJiTm1uQ2hB
bGh0eTBqCkkwTlRwMDROdUtENCt1dXZxMWF0V3M3dzZOR2pBN2EvZS9mdWV2amhoL1hsbDErRy9D
NFB0bUxGQ3JsY0xoMDllbFNTdjVmRVo1OTkKSmtuYXVIR2p5cFl0cTdTME5IMzAwVWRPK05tOWU3
ZFdyRmloeFlzWHEweVpNczZGemR6Y1hLZmI0SklsUzFTNWNtWG5wUWRidG14UgorZkxsZGVUSUVh
MVlzVUxmZmZlZFltSmlsSlNVcEkwYk4rcjU1NTkzeWpCcDBpVGRkTk5OVGhuZGJyZisrYzkvYXUv
ZXZjV1dkOEdDCkJhcGJ0Njd6dWExYnQrcnl5eTkzeWxmYU1uWHAwa1d0VzdlVzVMOGJOM2p3WUNm
c2JkcTBxVWg5bExUOGNOdVltSmhZWkw4cGJqc0wKekowN1YzWHExQWw1ZDdPMFpjT2ZWOFFCWk92
V3JjNWJScXBVcWFLeFk4Y1d1VVUzWmNvVWxTdFhUaTZYUzJlZmZiWno1V3ZyMXEyNgo2S0tMOU1Z
YmJ5Z2hJVUc5ZXZWeXdzTHp6ejh2bDh1bFJ4NTVKT0QxakpJLzlmLzFyMytWTVViOSt2WFR6ei8v
TE1uL3gvUFNTeS9WCjZOR2p0V1RKRW5YczJORzVMVDE3OW14VnJGaFJOV3JVMEh2dnZSZHlXM3Iz
emxibnppZk9Qajc0SUU5VnF2ajc0L3Q4L2hQaWN1VlMKbk80VndjTmp4N3AxeGhrcFdyWEtvemZl
eUZYdjN0a0JyOTZVL0E4TlY2eVk0cHh3M0h4elJrRC84T0RoT1hQeTFLaFJ1cFl2OStpVgpWOXdh
T0RBbjRJU3RvRHZIZ3c5bTZlQkJueElTL04xUENvZWNCUXZ5ZE04OW1ZcUxTOVZmL3BLbUpVdE9u
REIxN3B5bFRwMHk5ZFZYCitlcmFOVXVyVjUrNEdwYVk2RC9obVQ3ZHYzM0p5YjZBN2s2SEQvdDAv
ZlhwUmZxMzUrZjd1eDdWcVpPbUhqMnlOR3FVMjduQ1hkTDIKZE82Y3BXZWU4YStqNEVIdjY2NUwx
OWF0WHUzYzZiK0tQMnlZL3ptQTRQb1BMbk51cnI5YjBjU0piczJibDZjQkEzS1VuSHppeEdIMAph
TGR1dUNIMDYweUxxN1BnTmdwWGh5WHRUeVdWcnpSMVhwTFR2UjlKZ1hYdjlmcTdJelp0Nm44T1pO
SWtkMEIzck9LV0Zkek9rait3CkZPNmFWbGp3L011VytjUE4zWGRuYXZ4NHQrYlB6MU8xYW1nWVJR
WUFBQ0FBU1VSQlZLbDY1NTNTdjNjK05kV245OTdMVS8zNmFZcU4KVGRINzcrY0ZiTWZZc1c0Wms2
dzc3OHhVZkh5MmM2d1VObU5HcnA1NktsdWpSN3YxNktOWk9udzRzSTNuek1uVGlCRTVtamt6VjRN
SAo1Nmh2Myt3aVFVZnkvdzVLbzBiaFg3KzdiZHMyWFhiWlpXcllzR0hBQTltSmlZbnEwS0dEakRG
cTFhcVZkdTdjcWQ2OWU2dHUzYnJxCjBxV0w1czJicC9idDI2dDU4K2JPMWZuaXBudTlYbzBlUFZy
R0dKVXJWMDY5ZS9mV29FR0QxS3RYTDExMTFWVXl4bWpwMHFWS1NVbFIKcjE2OVpJeFIvZnIxQTdw
QkRSczJUTVlZRFIwNlZCNlBSMTZ2Vi8vKzk3OTExbGxueVJpanA1NTZTbHUzYm5YbXo4cktVdi8r
L1dXTQowUVVYWEJCd2dwS2RuYTJISG5wSVYxOTl0VjUvL1hYOTR4Ly9VSXNXTFlwMFlVcEtTbEty
VnExVXRXcFZMVm15SkdCYVZsWldRRC82ClVDWk1tQ0NYeTZVS0ZTcG8xcXhaSVI4UWo3UU52di8r
K3lMYlUzZ2JLMVdxcEc3ZHVxbEhqeDVxMGFLRnpqbm5IQmxqdEhuejVvanEKdnZDeUtsZXVyS2Vl
ZWtxUFBmYVk3cnJyTG5YdjNqM3NiM1QxNjlkUEZTdFdEUGxtTXVuRTNhdkNWN2p2dXV1dWdHNHpy
VnExMHJCaAp3d0ttdDJyVkt1eHI3NE41dlY3ZGYvLzlhdHEwcWNhUEg2OUpreVk1NXhScjE2NVZi
R3lzWG4zMVZibmRidTNjdVZQUjBkRWFObXlZCjNHNjM4dlB6MWJ4NWM5V3BVMGM5ZXZUUXFGR2pu
T2RpK3ZUcEUvQXEyNVVyVjZwU3BVcWFQSG15ZkQ2ZjVzMmJwM0xseW1ucTFLbVMKL0YwRk8zWHFw
SysrK2twZHUzWU5xTFBFeEVTNVhDNU5uejY5MlBMbTV1YXFYYnQybWpoeG91Yk5tNmNCQXdZRWhM
RFNsbW5WcWxXSwppNHZUYmJmZHBqRmp4bWp6NXMwcVc3YXNKaytlTEVsRjZxT2s1WWZieHB5Y0hO
V3ZYei9pZGlsdzQ0MDNPbmRyZ3BXMmJQanpLblVYCnJKTGs1dVpxNTg2ZEFiZEdDLzZBcDZTa0ZI
bDRUcEtUdEV2RDUvTnArL2J0MnJsejU4a1h0cERnRThMQy9jcURoMis3TFVPREIrZG8KeHc1dnlD
dTFrcitiVHNFZEVZL0gzeGUrUVBCdzRjL3MydVVOMitVaStBZkpDcC9nVEp1V3E3ZmU4cDhVNWVU
NEh6U3VXREhGQ1ViSApqL3VVbXVyVFR6K0Y3azllK0dxcno2Y2lKNzdGblFnbkpmbENYazB1YVhz
S3k4MVZRSWdMN29ZVDNCN0JaWmI4YlJpdVBVSXByczVDCnRWRkpkUmhjbGxEandwV3Z0SFZlbk5P
NUh4VUlydnRqeDN4RmZoZ3drbVdGNm01VjNBL3ZCYytmbm42aW52THpRKzhucDhyeDQ3NGkKenlv
Rnk4OVh5THRHaFdWa1NLWHNEWFBTQ3JwZTdONjlXeDk5OUpFMmJ0d1ljRUpkMHZUZm84T0hEK3Vy
cjc0cTB0MG9Vc0UvU1Bobgo1UFY2UzZ5L0kwZU9sR3FaYVdscFlaLzNLYzZ4WThkQy9saGQ4SGxC
cUs1cVNVbEpUdStJNGdSdmErRzNMeDAvZmx5cHFhbjY2YWVmClFuNDJ1QjdDbFZmeTkrSUlGK3BL
VXliSi95YXB3dk1FMzFVS1ZSL2hsbC9jTnJadjN6N2s1OE50NTlxMWE4Tys2T0preW9ZL0w1Y2sK
bGZMSDAvL3dYSzZVMzdvSUFCQXg2Y3pmdWdoQXFWeDc3YlhGVGwrL2ZyMmxrcUE0NzczM25tbllz
S0dwWDc5K2lmUG01dWFhSVVPRwptQ0ZEaHBnS0ZTcFlLQjMrbC8wcEE4aXY4Wi8vZUV5blRwbm14
eCtybUhyMW9uN3I0amcrK01CanZ2NDYzL1RzV2M3azVCZ3paMDZlCnFWVXJ5ano4Y05uZnVtaS9X
OVJaVWFleVRxaGZBUGg5ODNnOFp0bXlaZWIyMjI4dmNkNkVoQVJ6eXkyM21FcVZLbGtvR2Y3WEVV
QksKSVRWVlpzMmFmR09NTVZGUkxuUHJyVEVtSnVZM0xsUWhlWG5HckYrZmI2S2pYYVpCZzJoVHVm
SnZYYUxmUCtxc3FGTlpKOVF2QUFBSQpSZ0FCQUFBQVlNM3ZwdzhSQUFBQWdQOTVCQkFBQUFBQTFr
UVBIVHAwcU8yVlptZG5teSsvL05KODlORkg1dHh6enpWVnExWXQ4VE5aCldWbG0rL2J0cG16WnNx
WjgrZkltT1RuNWQva1dodE5SVHEvWGEzYnUzR2srLy94elU3RmlSVk9sU3BXVFhwYlA1elBmZmZl
ZFdiNTgKdVhHNVhLWjY5ZXEvcW13b2F0dTJiZWFMTDc0d05XclVNQlVxVkRBcEtTbW5aVi9sT0Nv
ZGpxUFRKMXg3U1RLN2QrODJhOWFzTVRrNQpPZWJjYzg4MXh2anJ6K1Z5blpheStIdytjL2p3NFpB
UHlxYWxwUmxqakluNVBUMjhCd0IvUWhIZEFaazllN1k1NDR3elRKVXFWY3k4CmVmTk1UazZPZWZY
VlY0M0w1VEsxYTljMmE5ZXVOY1lZODhzdnY1ZzJiZHFZQ3krODBIejMzWGZoVnhvVlpYYnYzbTM2
OWV0bjR1TGkKd3M0bnlZd2JOODdjZnZ2dDVwbG5uakVyVjY0MGZmcjBNZWVkZDU3cDE2OWZLVGYx
OURuZDVjekp5VEdmZlBLSjZkQ2h3NjgrQ2ZQNQpmR2Jmdm4ybVM1Y3VKam82MmhoanpJY2ZmbWpp
NHVKTVRFeU1pWStQTjkyNmRUTTMzWFNUbVQxNzlxOHUrNS9OdEduVHpLSkZpOHpSCm8wZk5rMDgr
YWZidjMyL2VmdnR0WXd6SFVVazRqdjVZSW1rdmo4ZGp2dm5tRzlPdVhUdVRsNWRuakRGbTA2Wk5K
aTR1emh3OGVQQzAKbEd2dDJyWG0vdnZ2RHp0OXpwdzVwMlc5QUlCU2lQUUhRMXEzYnExcnI3MDJZ
TndGRjF5Z2J0MjZCWXpyMmJPblZxNWNXZUx5Sms2YwpxSnR2dmpuczlPUEhqK3R2Zi91YldyUm9v
WXlNaklCcC9mcjEwOWl4WXlNdCttbGxxNXd6Wjg3VTFWZGZmVXFXdFdEQkF2M2YvLzFmCndMZzZk
ZXFvUllzV3puQjhmTHlNTWRxNGNlTXBXZWVmd1pFalIxU3JWaTNsNStjclBUMWQ2OWV2VjRjT0hR
Sit6SW5qS0RTT296K1cKMHJUWDU1OS9ycmk0T09jSERvOGRPNmIrL2Z1SC9URzMwdHEzYjU4a2Fl
clVxWHIxMVZkMTlPaFJQZm5ray9yaGh4OTB4eDEzS0NmbwpGejE3OXV6Skx6QUR3RzhzNHZ2UTll
clZNd3NXTEhDR016TXpUWFoydGpsdzRJQXpMaWtweVNRbko1dWJiNzY1eE9WOS9QSEhwazJiCk5p
R24rWHcrMDc1OWU1T1ZsV1crK3VvclU2NWN1WURwVHp6eGhFbE5UWTIwNktlTnpYSXVXN2JNdEc3
ZCtwUXM2NE1QUGpCdDI3WjEKaG5mdDJtVjI3dHhwK3ZidDY0eHIxS2lSTWNhWVE0Y09uWkoxL2hs
TW5EalJ0R3paMGtSSFI1dUtGU3VhK1BoNE0zVG9VRk8yN0luZgp2ZUE0S29yajZJK2x0TzMxOGNj
Zm01WXRXNXFvS1A4TjkyclZxcG1SSTBlZWtyTE1uei9mdlAvKysrWS8vL21QZWVTUlI4ejgrZlBO
CmxDbFR6TkdqUjAxQ1FvSjUrZVdYVGZueTVRTStrNStmYjlhdFcyZWFObTE2U3NvQUFEZ0prU2FW
c1dQSEtqbzZXdm41K1pLa2NlUEcKcVhYcjFtclFvSUV6enlPUFBLTEV4RVJuMk9memFkS2tTWHI3
N2JmVnNXTkhmZnJwcDVJa3Q5dXQyTmhZclZtelJ1UEdqZE5WVjEybApCeDU0UUdscGFaS2trU05I
eWhpakpVdVdSRlMyOVBSMERSbzBTTk9uVDllUUlVTTBZc1FJU1ZKMmRyWW1UNTZzQ3k2NFFFdVdM
Tkh3CjRjTlZ2WHAxYmQrK3ZkanlTVkorZnI2dXVlWWF2Znp5eTJISGxiYWNhV2xwR2pod29DWk5t
cVN4WThlcVJZc1dTa2hJY0tZbkp5ZHIKK1BEaG1qVnJsbDU2NlNWOStPR0hUam1yVjYrdUw3NzRR
bDkvL2JWYXRteXBSbzBheWVQeGxGalhrcFNabWFrWFhuaEJFeVpNMElRSgpFM1RtbVdkcTRjS0Z6
dlRYWG50TnhoanQzYnRYa3BTWW1LZ0dEUnFvVmF0V2NydmRFYTFqNE1DQm1qQmhnaDU2NkNFOStP
Q0RKYmFOCngrUFIyTEZqVmJkdVhTMWV2TmhaL2kyMzNLSlBQLzIweExZTFYxZS90bDFQWnAvWnVI
R2pubi8rZVoxeHhobTY1NTU3TkdqUUlJMFkKTVVLMzNISkxrWDJBNDRqajZJOStISlcydmE2NDRn
cTk5ZFpia3Z4M29LNjg4a29OSGp5NDJQVmtaMmRyd29RSmF0S2tpZDU3N3oxdAozcnhaTFZ1MlZP
UEdqZVgxZXVYeGVCUWZINitZbUJpMWJkdFdzMmZQMXE1ZHU5UzJiVnVOR3pkT0F3WU0wRjEzM2FY
aHc0Y1hLYzhMCkw3emdsQWNBOE51SU9JRE1uejlmeGhnbEpTWHArUEhqR2pac21BWU9IS2lxVmF0
S2tyNzc3anYxN05uVG1kL3RkcXRkdTNhYU5tMmEKSk9teHh4NXpUamlXTFZ1bTZ0V3JhOHlZTVRw
MDZKQlNVbEpVc1dKRnZmSEdHNUtrQ3krOFVPZWRkMTVFNWRxelo0OGFOR2lnRlN0VwpPT09xVmF1
bURSczJTSktTa3BJVUV4T2pCUXNXYVAzNjlSbzJiSmd5TWpLS0xWK0JSeDk5VkhQbnpnMDdyalRs
UEhEZ2dCbzNicXl2CnYvNWFrclJtelJwRlJVVXBKU1ZGa3JSanh3NDFidHhZTzNic2tDUzkrT0tM
NnRTcGt5VHAyMisvVmVYS2xiVnUzVHJObVROSGlZbUoKTXNib3dJRURrb3F2NnlOSGp1aTY2NjdU
bDE5K0tVbWFNMmVPeXBZdEc5QnRvblhyMWpycnJMUFVyVnMzMWF4WlUyM2F0TkhpeFlzRApUc3lL
VzhmMjdkdFZvVUlGNWVibXl1djFxbCsvZmhHMXpZWU5HeFFkSGUyY01LOWF0VW91bDB0SGpoeVJG
TDd0aXF1clU5R3VKN1BQCi9QampqekxHNk9EQmc1S2t5eTY3VEsrLy9ucVIvWURqcU9nNGpxTS8x
bkZVbXZZNmVQQ2dYQzZYa3BLU0pQbURWSFIwdE5POXNMajEKYk5xMFNURXhNVnE5ZXJYbXpwMnJU
WnMyeVJpalk4ZU9TWklPSFRva2w4dWxQWHYyU0pJV0xseW9sU3RYS2lrcFNRODk5SkJ5Y25JMApi
Tmd3WldkbkI1VHBxYWVlMHJQUFBodFIrUUVBcDBmRUFXVGp4bzB5eG1qTm1qVWFPblNvRGg0OHFD
bFRwc2dZbzZ5c0xOMTc3NzNPCkY3a2s5ZTNiVjIzYXRKSFg2OVdzV2JOMHd3MDM2UGp4NDVMOFh3
RFZxbFZ6dmpna3FYYnQyaG8zYnB5U2s1TmxqQW5vUngyTzErdFYKczJiTjFMdDM3NER4bFN0WDFw
UXBVeVQ1VHhUcTFxMnJkOTk5TjJDZTRzb1hpZEtVVS9LZm5CUytHamR6NWt4ZGM4MDFrdnhYTWEr
OQo5bHFOSHo4KzVHZEhqaHlwWnMyYWFlYk1tWkw4ZlowdnZ2amlpTGFsWGJ0MmV1R0ZGNXg1UjQw
YXBlYk5tenZEbVptWktsZXVuQVlQCkhxelUxRlJWcUZCQlR6LzlkSkV5RkxlT2xKUVV4Y2JHT2xj
MVUxTlRJMnFiY2VQRzZicnJybk9tM1hubm5icmlpaXVjNFZCdFYxSmQKL2RwMkRiZmVrcFk5WThZ
TVhYamhoWktrbkp3Y3hjVEVhTnUyYlVXV3pYRVVpT1BvajNVY2xiYTlwaytmcmtzdXVjUVpYcmh3
b1NwWApycXk4dkx3UzYrT1ZWMTVSa3laTm5QWjY4ODAzZGRsbGx6bkxtalZybHVyVnExZGtuVjk5
OVpYdXZ2dnVzR1hxM0xtem5ubm1tWWpLCkR3QTRQU0lPSUVlUEhwVXhScSsrK3FxZWUrNDVTZEtp
Ull0a2pOSFVxVk1EdnB3THJnWS84c2dqR2p4NHNCWXRXdVI4NFVoU3ZYcjEKTkd6WU1HZDQvLzc5
TXNab3c0WU4yck5uajR3eGF0dTJiWWxsV3JKa2lZd3grdVdYWDV4eDI3ZHZsekZHNjlldmx5UTkv
UEREdXZqaQppd1BXWDFMNUlsR2FjcjcvL3Z1cVZLbVNjNVZXa3RxMmJhdisvZnRMa3BZdVhTcGpq
SE1GTTFqejVzM1ZzbVZMNThISisrNjdUMzM2CjlDbHhXeFlzV0tEWTJGam5pcUVrTlczYVZLTkdq
WEtHRXhJU25CTml5Zi9sZk00NTU1UzZ2c2FPSGF1WW1Cam5ZZHRJMnFaZHUzWWEKTkdpUUpPbWJi
NzVSOWVyVkE2NU1obXE3NHVycVZMUnJ1UFdXdE95Ly8vM3ZUcGVaOWV2WHExS2xTaUVmZE9VNENz
Ung5TWM2amtyVApYcExVc1dOSDllM2IxeG51MWF1WEV3NUtxby9XclZ2cnFxdXVjc1oxN05neElE
aDA3ZHBWVHo3NVpFVGxLS3hSbzBiT0hSY0F3RzhqCjRnQWlTYkd4c2FwZXZicnoxcEhObXpmTEdL
T0xMNzVZNmVucHpueFRwMDVWbFNwVkFyb2VGUGpsbDE4VUhSMnRRNGNPT2VONjl1eXAKTGwyNk9N
UFZxbFZUaFFvVml0dzZsL3kzN0F1dWtBMFpNa1ExYXRRSW1ONi9mLytBTDhmenpqdFBvMGVQRHBp
bnVQS1ZScVRsN042OQplOEFWdzNYcjFpa3FLa3BMbHk2VkpJMFlNVUxWcTFjUHVZN016RXlWTFZ0
V3k1Y3ZsK1R2TDEydFdqWG5zOFZ0Uy9mdTNYWFRUVGM1Cnd5dFhycFF4UnBzM2IzYkdQZjc0NDZw
YXRhcnpUTUtLRlN0a2pORUhIM3pnekZQY092YnYzeS9KZnhYOSt1dXYxNjIzM2lxcDVMYkoKejg5
WGxTcFZ0SExsU3FlZmVzV0tGUVA2dzRkcXUrTHE2bFMxNjhuc000MGJOM2E2WEMxWnNrUjE2dFFK
dTN5T28wQWNSMytzNHlqUwo5dko2dllxTGkzT2VUWkdraXk2NlNHKysrV2FKNjhuT3psYjU4dVdk
dXpZK24wL25uSE9PUHZua0UyZWVHalZxQkR6N0U0bms1R1JGClJVVTUzZGNBQUwrTlV2MFMrbC8r
OGhkejk5MTNtL1BQUDk4WVkwek5taldOTWNZODlkUlQ1b3d6em5EbU8vLzg4MDEyZHJZNWV2U28K
TWNhWXZMdzhzM2p4WW1PTS80MG9kZXZXZFg2NDYvMzMzemRidG13eFU2Wk1jVDQvZVBCZ2s1T1RZ
eElTRWdMV2YvRGdRVE54NGtRVApHeHRyalBHL1lhYndlcmR0MjJhV0xGbmkvTzdDOTk5L2J3NGRP
bVM2ZE9rU3NKeml5bWVNTWQ5Kys2MTU3YlhYQWo0VGFseWs1Y3pKCnlURmx5cFF4eGhoeitQQmhz
MlRKRW1PTU1RMGFORERmZnZ1dGFkS2tpVGx5NUlnNWR1eVlNY2IvZzJuTGx5ODN4aGl6YXRVcVU3
bHkKWmVlTlNOOSsrNjNKeXNveVYxOTl0Vm05ZW5XeDI1S1JrZUdVNGZEaHcrYmYvLzYzcVY2OXVx
bFZxNWJac0dHRDhYZzhadEdpUmVhdgpmLzJyODFzR045OThzNmxkdTdaNTQ0MDNJcXF2U1pNbW1X
UEhqcG1vcUNqVHVYTm41MTMvSmJYTjVzMmJUVzV1cnJudXV1dk1hNis5Clp1clVxV084WHErcFg3
KytXYmR1WGRpMks2NnVUa1c3bnN3K2s1dWJhN1pzMldKdXZQRkdZNHd4dFdyVk1tZWVlYVlKaCtP
STR5aDQKSFgrazR5alM5dnIyMjI5TlptYW11ZkhHRzgyaVJZdk03dDI3emM4Ly8yeHV2ZlZXczNM
bHltTFhzMnJWS2xPMmJGbHo5OTEzRzJQOAorMkI2ZXJxNTRvb3J6TXFWSzgzMzMzOXZqaDQ5YXE2
ODhrcnp6VGZmbUVoOTl0bG41c0lMTDNUZVRwYWJtMnYrOWE5L21YMzc5a1c4CkRBREFLVkNhdEhM
SEhYY0U5RGVYVk9RdE1wTC9xbHp6NXMxVnAwNGQ5ZWpSUTZOR2pWSm1acVlrZjMva1JvMGFhZm55
NVhybGxWYzAKY09EQUl0MFF2RjZ2aGc4ZnJ0allXSFh2M2wxRGhneFJseTVkOU5KTEx6bnZrcGVr
M054Y3RXdlhUaE1uVHRTOGVmTTBZTUFBSlNjbgpPOU5Iang2dEcyNjRvY2gyRkZjK3lmOGUrNG9W
S3dhOHVTYlV1RWpMdVdyVktzWEZ4ZW0yMjI3VG1ERmp0SG56WnBVdFcxYVRKMDkyCmxuUC8vZmVy
YWRPbUdqOSt2Q1pObXVSMGplamR1N2M2ZCs3c0xPdUREejVRbFNwVk5HWEtGUGw4dm1LM1pkbXla
YXBjdWJMdXZ2dHUKalI4L1h2UG56MWUxYXRYMHpqdnZLQ1VsUmIxNjlaSXhSdlhyMTNlNmpralNz
R0hEWkl6UjBLRkQ1ZkY0aWwxSDU4NmQxYWxUSjMzMQoxVmZxMnJXclZxOWVIVkhiYk55NFVTNlhT
dzgrK0tBT0hqeW9oSVFFeGNiR2FzS0VDY1cyWFhGMWRTcmE5V1QybWJWcjE2cCsvZnJPCnZEazVP
UUhEd1RpT09JNyt5TWRScE8yMWR1MWF4Y2JHNnRWWFg1WGI3ZGJPblRzVkhSMnRZY09HeWUxMkY3
dWVQbjM2cUdQSGpzNnkKVnE1Y3FVcVZLbW55NU1ueStYeWFOMitleXBVcnA2bFRweGJadHVMY2VP
T05BWGRORWhNVDVYSzU5TzkvLzd0VXl3RUEvRHFsQ2lDNwpkKytPYUZ5QnBLUWtaV1ZsRlJudjlY
cTFhOWV1RW44TUtqTXpVK3ZXcmRPUFAvNVk3SHpKeWNrQkp6U1JLcTU4d1EvU2hocFhtbkttCnA2
Y0hmTDd3U1VTQlk4ZU9SZlRqWEtFK0cyNWIwdFBUblIvaXlzL1BEK2pIWGxxaDFuSDgrSEdscHFi
cXA1OStDbHZXY0cxVDBBV3AKd09IRGh5TXVTM0YxZGFyYU5kSmxqeDA3TnVCNUFFbHEzNzU5MkdW
d0hIRWMvWkdQb3dLUnROZlJvMGNEaGxOVFUwdTluZ0xCKzAxcAoyMkR0MnJXNjg4NDdpNHd2ZUZz
WUFNQWVseVQ5dHZkZ2dEOGV0OXR0OXU3ZGF5NisrR0xUcGswYjg4NDc3NWp6emp2UG1mN2VlKyta
CmhnMGJtdnIxNi8rR3BRUmdqTCtyMVpBaFE4eVFJVU5NaFFvVmZ1dmlBTUNmWHFtZUFRSGd0Mjdk
T3RPcFV5ZXpjT0ZDMDd4NTg0RHcKWVl3eGQ5OTl0L241NTU5L285SUJLR3pwMHFWbTBLQkJoQThB
K0ozZ0RnaHdralp1M0dncVZhcGtMcm5ra3QrNktBQUFBSDhZQkJBQQpBQUFBMXRBRkN3QUFBSUEx
QkJBQUFBQUExaEJBQUFBQUFGaERBQUVBQUFCZ0RRRUVBQUFBZ0RVRUVBQUFBQURXRUVBQUFBQUFX
RU1BCkFRQUFBR0FOQVFRQUFBQ0FOUVFRQUFBQUFOWVFRQUFBQUFCWVF3QUJBQUFBWUEwQkJBQUFB
SUExQkJBQUFBQUExaEJBQUFBQUFGZ1QKVTlJTTM3aW0vcW9WWEszSGY5WG5BUUFBQVB6djRBNElB
QUFBQUdzSUlBQUFBQUNzSVlBQUFBQUFzSVlBQWdBQUFNQWFBZ2dBQUFBQQphd2dnQUFBQUFLd2hn
QUFBQUFDd2hnQUNBQUFBd0JvQ0NBQUFBQUJyQ0NBQUFBQUFyQ0dBQUFBQUFMQ0dBQUlBQUFEQUdn
SUlBQUFBCkFHc0lJQUFBQUFDc0lZQUFBQUFBc01ZbFNiOTFJUUFBQUFEOE9YQUhCQUFBQUlBMUJC
QUFBQUFBMWhCQUFBQUFBRmhEQUFFQUFBQmcKRFFFRUFBQUFnRFVFRUFBQUFBRFdFRUFBQUFBQVdF
TUFBUUFBQUdBTkFRUUFBQUNBTlFRUUFBQUFBTllRUUFBQUFBQllRd0FCQUFBQQpZQTBCQkFBQUFJ
QTFCQkFBQUFBQTFoQkFBQUFBQUZoREFBRUFBQUJnRFFFRUFBQUFnRFVFRUFBQUFBRFdFRUFBQUFB
QVdFTUFBUUFBCkFHQU5BUVFBQUFDQU5RUVFBQUFBQU5ZUVFBQUFBQUJZUXdBQkFBQUFZQTBCQkFB
QUFJQTFCQkFBQUFBQTFoQkFBQUFBQUZoREFBRUEKQUFCZ0RRRUVBQUFBZ0RVRUVBQUFBQURXRUVB
QUFBQUFXRU1BQVFBQUFHQU5BUVFBQUFDQU5RUVFBQUFBQU5ZUVFBQUFBQUJZUXdBQgpBQUFBWUEw
QkJBQUFBSUExQkJBQUFBQUExaEJBQUFBQUFGaERBQUVBQUFCZ0RRRUVBQUFBZ0RVRUVBQUFBQURX
RUVBQUFBQUFXRU1BCkFRQUFBR0FOQVFRQUFBQ0FOUVFRQUFBQUFOWVFRQUFBQUFCWVF3QUJBQUFB
WUEwQkJBQUFBSUExQkJBQUFBQUExaEJBQUFBQUFGaEQKQUFFQUFBQmdEUUVFQUFBQWdEVUVFQUFB
QUFEV0VFQUFBQUFBV0VNQUFRQUFBR0FOQVFRQUFBQ0FOUVFRQUFBQUFOWVFRQUFBQUFCWQpRd0FC
QUFBQVlBMEJCQUFBQUlBMUJCQUFBQUFBMWhCQUFBQUFBRmhEQUFFQUFBQmdEUUVFQUFBQWdEVUVF
QUFBQUFEV0VFQUFBQUFBCldFTUFBUUFBQUdBTkFRUUFBQUNBTlFRUUFBQUFBTllRUUFBQUFBQllR
d0FCQUFBQVlBMEJCQUFBQUlBMUJCQUFBQUFBMWhCQUFBQUEKQUZoREFBRUFBQUJnRFFFRUFBQUFn
RFVFRUFBQUFBRFdFRUFBQUFBQVdFTUFBUUFBQUdBTkFRUUFBQUNBTlFRUUFBQUFBTllRUUFBQQpB
QUJZUXdBQkFBQUFZQTBCQkFBQUFJQTFCQkFBQUFBQTFoQkFBQUFBQUZoREFBRUFBQUJnRFFFRUFB
QUFnRFVFRUFBQUFBRFdFRUFBCkFBQUFXRU1BQVFBQUFHQU5BUVFBQUFDQU5RUVFBQUFBQU5ZUVFB
QUFBQUJZUXdBQkFBQUFZQTBCQkFBQUFJQTFCQkFBQUFBQTFoQkEKQUFBQUFGaERBQUVBQUFCZ0RR
RUVBQUFBZ0RVRUVBQUFBQURXRUVBQUFBQUFXRU1BQVFBQUFHQU5BUVFBQUFDQU5RUVFBQUFBQU5Z
UQpRQUFBQUFCWVF3QUJBQUFBWUEwQkJBQUFBSUExQkJBQUFBQUExaEJBQUFBQUFGaERBQUVBQUFC
Z0RRRUVBQUFBZ0RVRUVBQUFBQURXCkVFQUFBQUFBV0VNQUFRQUFBR0FOQVFRQUFBQ0FOUVFRQUFB
QUFOWVFRQUFBQUFCWVF3QUJBQUFBWUEwQkJBQUFBSUExQkJBQUFBQUEKMWhCQUFBQUFBRmhEQUFF
QUFBQmdEUUVFQUFBQWdEVUVFQUFBQUFEV0VFQUFBQUFBV0VNQUFRQUFBR0FOQVFRQUFBQ0FOUVFR
QUFBQQpBTllRUUFBQUFBQllRd0FCQUFBQVlBMEJCQUFBQUlBMUJCQUFBQUFBMWhCQUFBQUFBRmhE
QUFFQUFBQmdEUUVFQUFBQWdEVUVFQUFBCkFBRFdFRUFBQUFBQVdFTUFBUUFBQUdBTkFRUUFBQUNB
TlFRUUFBQUFBTllRUUFBQUFBQllRd0FCQUFBQVlBMEJCQUFBQUlBMUJCQUEKQUFBQTFoQkFBQUFB
QUZoREFBRUFBQUJnRFFFRUFBQUFnRFVFRUFBQUFBRFdFRUFBQUFBQVdFTUFBUUFBQUdBTkFRUUFB
QUNBTlFRUQpBQUFBQU5ZUVFBQUFBQUJZUXdBQkFBQUFZQTBCQkFBQUFJQTFCQkFBQUFBQTFoQkFB
QUFBQUZoREFBRUFBQUJnRFFFRUFBQUFnRFVFCkVBQUFBQURXRUVBQUFBQUFXRU1BQVFBQUFHQU5B
UVFBQUFDQU5RUVFBQUFBQU5ZUVFBQUFBQUJZUXdBQkFBQUFZQTBCQkFBQUFJQTEKQkJBQUFBQUEx
aEJBQUFBQUFGaERBQUVBQUFCZ0RRRUVBQUFBZ0RVRUVBQUFBQURXRUVBQUFBQUFXRU1BQVFBQUFH
QU5BUVFBQUFDQQpOUVFRQUFBQUFOWVFRQUFBQUFCWVF3QUJBQUFBWUEwQkJBQUFBSUExQkJBQUFB
QUExaEJBQUFBQUFGaERBQUVBQUFCZ0RRRUVBQUFBCmdEVUVFQUFBQUFEV0VFQUFBQUFBV0VNQUFR
QUFBR0FOQVFRQUFBQ0FOUVFRQUFBQUFOWVFRQUFBQUFCWVF3QUJBQUFBWUEwQkJBQUEKQUlBMUJC
QUFBQUFBMWhCQUFBQUFBRmhEQUFFQUFBQmdEUUVFQUFBQWdEVUVFQUFBQUFEV0VFQUFBQUFBV0VN
QUFRQUFBR0FOQVFRQQpBQUNBTlFRUUFBQUFBTllRUUFBQUFBQllRd0FCQUFBQVlBMEJCQUFBQUlB
MUJCQUFBQUFBMWhCQUFBQUFBRmhEQUFFQUFBQmdEUUVFCkFBQUFnRFVFRUFBQUFBRFdFRUFBQUFB
QVdFTUFBUUFBQUdBTkFRUUFBQUNBTlFRUUFBQUFBTllRUUFBQUFBQllRd0FCQUFBQVlBMEIKQkFB
QUFJQTFCQkFBQUFBQTFoQkFBQUFBQUZoREFBRUFBQUJnRFFFRUFBQUFnRFVFRUFBQUFBRFdFRUFB
QUFBQVdFTUFBUUFBQUdBTgpBUVFBQUFDQU5RUVFBQUFBQU5ZUVFBQUFBQUJZUXdBQkFBQUFZQTBC
QkFBQUFJQTFCQkFBQUFBQTFoQkFBQUFBQUZoREFBRUFBQUJnCkRRRUVBQUFBZ0RVRUVBQUFBQURX
RUVBQUFBQUFXRU1BQVFBQUFHQU5BUVFBQUFDQU5RUVFBQUFBQU5ZUVFBQUFBQUJZUXdBQkFBQUEK
WUEwQkJBQUFBSUExQkJBQUFBQUExaEJBQUFBQUFGaERBQUVBQUFCZ0RRRUVBQUFBZ0RVRUVBQUFB
QURXRUVBQUFBQUFXRU1BQVFBQQpBR0FOQVFRQUFBQ0FOUVFRQUFBQUFOWVFRQUFBQUFCWVF3QUJB
QUFBWUEwQkJBQUFBSUExQkJBQUFBQUExaEJBQUFBQUFGaERBQUVBCkFBQmdEUUVFQUFBQWdEVUVF
QUFBQUFEV0VFQUFBQUFBV0VNQUFRQUFBR0FOQVFRQUFBQ0FOUVFRQUFBQUFOWVFRQUFBQUFCWVF3
QUIKQUFBQVlBMEJCQUFBQUlBMUJCQUFBQUFBMWhCQUFBQUFBRmhEQUFFQUFBQmdEUUVFQUFBQWdE
VUVFQUFBQUFEV0VFQUFBQUFBV0VNQQpBUUFBQUdBTkFRUUFBQUNBTlFRUUFBQUFBTllRUUFBQUFB
QllRd0FCQUFBQVlBMEJCQUFBQUlBMUJCQUFBQUFBMWhCQUFBQUFBRmhECkFBRUFBQUJnRFFFRUFB
QUFnRFVFRUFBQUFBRFdFRUFBQUFBQVdFTUFBUUFBQUdBTkFRUUFBQUNBTlFRUUFBQUFBTllRUUFB
QUFBQlkKUXdBQkFBQUFZQTBCQkFBQUFJQTFCQkFBQUFBQTFoQkFBQUFBQUZoREFBRUFBQUJnRFFF
RUFBQUFnRFVFRUFBQUFBRFdFRUFBQUFBQQpXRU1BQVFBQUFHQU5BUVFBQUFDQU5RUVFBQUFBQU5Z
UVFBQUFBQUJZUXdBQkFBQUFZQTBCQkFBQUFJQTFCQkFBQUFBQTFoQkFBQUFBCkFGaERBQUVBQUFC
Z0RRRUVBQUFBZ0RVRUVBQUFBQURXRUVBQUFBQUFXRU1BQVFBQUFHQU5BUVFBQUFDQU5RUVFBQUFB
QU5ZUVFBQUEKQUFCWVF3QUJBQUFBWUEwQkJNRC90MS9IQWdBQUFBQ0QvSzFuc2Fzc0FnRFlDQWdB
QUxBUkVBQUFZQ01nQUFEQVJrQUFBSUNOZ0FBQQpBQnNCQVFBQU5nSUNBQUJzQkFRQUFOZ0lDQUFB
c0JFUUFBQmdJeUFBQU1CR1FBQUFnSTJBQUFBQUd3RUJBQUEyQWdJQUFHd0VCQUFBCjJBZ0lBQUN3
RVJBQUFHQWpJQUFBd0VaQUFBQ0FZaTNvcndBQUE5TkpSRUZVallBQUFBQWJBUUVBQURZQ0FnQUFi
QVFFQUFEWUNBZ0EKQUxBUkVBQUFZQ01nQUFEQVJrQUFBSUNOZ0FBQUFCc0JBUUFBTmdJQ0FBQnNC
QVFBQU5nSUNBQUFzQkVRQUFCZ0l5QUFBTUJHUUFBQQpnSTJBQUFBQUd3RUJBQUEyQWdJQUFHd0VC
QUFBMkFnSUFBQ3dFUkFBQUdBaklBQUF3RVpBQUFDQWpZQUFBQUFiQVFFQUFEWUNBZ0FBCmJBUUVB
QURZQ0FnQUFMQVJFQUFBWUNNZ0FBREFSa0FBQUlDTmdBQUFBQnNCQVFBQU5nSUNBQUJzQkFRQUFO
Z0lDQUFBc0JFUUFBQmcKSXlBQUFNQkdRQUFBZ0kyQUFBQUFHd0VCQUFBMkFnSUFBR3dFQkFBQTJB
Z0lBQUN3RVJBQUFHQWpJQUFBd0VaQUFBQ0FqWUFBQUFBYgpBUUVBQURZQ0FnQUFiQVFFQUFEWUNB
Z0FBTEFSRUFBQVlDTWdBQURBUmtBQUFJQ05nQUFBQUJzQkFRQUFOZ0lDQUFCc0JBUUFBTmdJCkNB
QUFzQkVRQUFCZ0l5QUFBTUJHUUFBQWdJMkFBQUFBR3dFQkFBQTJBZ0lBQUd3RUJBQUEyQWdJQUFD
d0VSQUFBR0FqSUFBQXdFWkEKQUFDQWpZQUFBQUFiQVFFQUFEWUNBZ0FBYkFRRUFBRFlDQWdBQUxB
UkVBQUFZQ01nQUFEQVJrQUFBSUNOZ0FBQUFCc0JBUUFBTmdJQwpBQUJzQkFRQUFOZ0lDQUFBc0JF
UUFBQmdJeUFBQU1CR1FBQUFnSTJBQUFBQUd3RUJBQUEyQWdJQUFHd0VCQUFBMkFnSUFBQ3dFUkFB
CkFHQWpJQUFBd0VaQUFBQ0FqWUFBQUFBYkFRRUFBRFlDQWdBQWJBUUVBQURZQ0FnQUFMQVJFQUFB
WUNNZ0FBREFSa0FBQUlDTmdBQUEKQUJzQkFRQUFOZ0lDQUFCc0JBUUFBTmdJQ0FBQXNCRVFBQUJn
SXlBQUFNQkdRQUFBZ0kyQUFBQUFHd0VCQUFBMkFnSUFBR3dFQkFBQQoyQWdJQUFDd0VSQUFBR0Fq
SUFBQXdFWkFBQUNBallBQUFBQWJBUUVBQURZQ0FnQUFiQVFFQUFEWUNBZ0FBTEFSRUFBQVlDTWdB
QURBClJrQUFBSUNOZ0FBQUFCc0JBUUFBTmdJQ0FBQnNCQVFBQU5nSUNBQUFzQkVRQUFCZ0l5QUFB
TUJHUUFBQWdJMkFBQUFBR3dFQkFBQTIKQWdJQUFHd0VCQUFBMkFnSUFBQ3dFUkFBQUdBaklBQUF3
RVpBQUFDQWpZQUFBQUFiQVFFQUFEWUNBZ0FBYkFRRUFBRFlDQWdBQUxBUgpFQUFBWUNNZ0FBREFS
a0FBQUlDTmdBQUFBQnNCQVFBQU5nSUNBQUJzQkFRQUFOZ0lDQUFBc0JFUUFBQmdJeUFBQU1CR1FB
QUFnSTJBCkFBQUFHd0VCQUFBMkFnSUFBR3dFQkFBQTJBZ0lBQUN3RVJBQUFHQWpJQUFBd0VaQUFB
Q0FqWUFBQUFBYkFRRUFBRFlDQWdBQWJBUUUKQUFEWUNBZ0FBTEFSRUFBQVlDTWdBQURBUmtBQUFJ
Q05nQUFBQUJzQkFRQUFOZ0lDQUFCc0JBUUFBTmdJQ0FBQXNCRVFBQUJnSXlBQQpBTUJHUUFBQWdJ
MkFBQUFBR3dFQkFBQTJBZ0lBQUd3RUJBQUEyQWdJQUFDd0VSQUFBR0FUdDcwZnlSbVNOQTBBQUFB
QVNVVk9SSzVDCllJST0KCg==
</data>
<flag name="review"
          id="5430"
          type_id="1"
          status="-"
          setter="hyatt"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>13670</attachid>
            <date>2007-03-16 14:49:48 -0700</date>
            <delta_ts>2007-03-16 15:23:19 -0700</delta_ts>
            <desc>Convert to using a counted set in the cache.</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>3087</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IGxvYWRlci9DYWNoZWRSZXNvdXJjZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gbG9hZGVyL0Nh
Y2hlZFJlc291cmNlLmNwcAkocmV2aXNpb24gMjAxOTkpCisrKyBsb2FkZXIvQ2FjaGVkUmVzb3Vy
Y2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05NCw3ICs5NCw2IEBAIHZvaWQgQ2FjaGVkUmVzb3Vy
Y2U6OnNldFJlcXVlc3QoUmVxdWVzdCoKIAogdm9pZCBDYWNoZWRSZXNvdXJjZTo6cmVmKENhY2hl
ZFJlc291cmNlQ2xpZW50ICpjKQogewotICAgIEFTU0VSVCghbV9jbGllbnRzLmNvbnRhaW5zKGMp
KTsKICAgICBpZiAoIXJlZmVyZW5jZWQoKSAmJiBpbkNhY2hlKCkpCiAgICAgICAgIGNhY2hlKCkt
PmFkZFRvTGl2ZU9iamVjdFNpemUoc2l6ZSgpKTsKICAgICBtX2NsaWVudHMuYWRkKGMpOwpJbmRl
eDogbG9hZGVyL0NhY2hlZFJlc291cmNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gbG9hZGVyL0NhY2hlZFJl
c291cmNlLmgJKHJldmlzaW9uIDIwMTk4KQorKysgbG9hZGVyL0NhY2hlZFJlc291cmNlLmgJKHdv
cmtpbmcgY29weSkKQEAgLTMyLDcgKzMyLDcgQEAKICNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5o
IgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXIu
aCIKLSNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgorI2luY2x1ZGUgPHd0Zi9IYXNoQ291bnRlZFNl
dC5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KICNpbmNsdWRlIDx0aW1lLmg+CiAKQEAgLTEz
Niw3ICsxMzYsNyBAQCBwdWJsaWM6CiBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBzZXRFbmNvZGVkU2l6
ZSh1bnNpZ25lZCk7CiAKLSAgICBIYXNoU2V0PENhY2hlZFJlc291cmNlQ2xpZW50Kj4gbV9jbGll
bnRzOworICAgIEhhc2hDb3VudGVkU2V0PENhY2hlZFJlc291cmNlQ2xpZW50Kj4gbV9jbGllbnRz
OwogCiAgICAgU3RyaW5nIG1fdXJsOwogICAgIFN0cmluZyBtX2FjY2VwdDsKSW5kZXg6IGxvYWRl
ci9DYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gbG9hZGVyL0Nh
Y2hlZFJlc291cmNlQ2xpZW50V2Fsa2VyLmNwcAkocmV2aXNpb24gMjAxOTgpCisrKyBsb2FkZXIv
Q2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMCwxNCAr
MzAsMTQgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1DYWNoZWRSZXNvdXJjZUNsaWVudFdh
bGtlcjo6Q2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXIoY29uc3QgSGFzaFNldDxDYWNoZWRSZXNv
dXJjZUNsaWVudCo+JiBzZXQpCitDYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlcjo6Q2FjaGVkUmVz
b3VyY2VDbGllbnRXYWxrZXIoY29uc3QgSGFzaENvdW50ZWRTZXQ8Q2FjaGVkUmVzb3VyY2VDbGll
bnQqPiYgc2V0KQogICAgIDogbV9jbGllbnRTZXQoc2V0KSwgbV9jbGllbnRWZWN0b3Ioc2V0LnNp
emUoKSksIG1faW5kZXgoMCkKIHsKLSAgICB0eXBlZGVmIEhhc2hTZXQ8Q2FjaGVkUmVzb3VyY2VD
bGllbnQqPjo6Y29uc3RfaXRlcmF0b3IgSXRlcmF0b3I7CisgICAgdHlwZWRlZiBIYXNoQ291bnRl
ZFNldDxDYWNoZWRSZXNvdXJjZUNsaWVudCo+Ojpjb25zdF9pdGVyYXRvciBJdGVyYXRvcjsKICAg
ICBJdGVyYXRvciBlbmQgPSBzZXQuZW5kKCk7CiAgICAgc2l6ZV90IGNsaWVudEluZGV4ID0gMDsK
ICAgICBmb3IgKEl0ZXJhdG9yIGN1cnJlbnQgPSBzZXQuYmVnaW4oKTsgY3VycmVudCAhPSBlbmQ7
ICsrY3VycmVudCkKLSAgICAgICAgbV9jbGllbnRWZWN0b3JbY2xpZW50SW5kZXgrK10gPSAqY3Vy
cmVudDsKKyAgICAgICAgbV9jbGllbnRWZWN0b3JbY2xpZW50SW5kZXgrK10gPSBjdXJyZW50LT5m
aXJzdDsKIH0KIAogQ2FjaGVkUmVzb3VyY2VDbGllbnQqIENhY2hlZFJlc291cmNlQ2xpZW50V2Fs
a2VyOjpuZXh0KCkKSW5kZXg6IGxvYWRlci9DYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlci5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIGxvYWRlci9DYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlci5oCShyZXZpc2lv
biAyMDE5OCkKKysrIGxvYWRlci9DYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlci5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yNyw3ICsyNyw3IEBACiAjaWZuZGVmIENhY2hlZFJlc291cmNlQ2xpZW50V2Fs
a2VyX2gKICNkZWZpbmUgQ2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXJfaAogCi0jaW5jbHVkZSA8
d3RmL0hhc2hTZXQuaD4KKyNpbmNsdWRlIDx3dGYvSGFzaENvdW50ZWRTZXQuaD4KICNpbmNsdWRl
IDx3dGYvVmVjdG9yLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTM4LDEwICszOCwxMCBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgLy8gSnVzdCBrZWVwIGNhbGxpbmcgbmV4dCgpIG9u
IHRoaXMuIEl0J3Mgc2FmZSBmcm9tIGRlbGV0aW9ucyBvZiBpdGVtcy4KICAgICBjbGFzcyBDYWNo
ZWRSZXNvdXJjZUNsaWVudFdhbGtlciB7CiAgICAgcHVibGljOgotICAgICAgICBDYWNoZWRSZXNv
dXJjZUNsaWVudFdhbGtlcihjb25zdCBIYXNoU2V0PENhY2hlZFJlc291cmNlQ2xpZW50Kj4mKTsK
KyAgICAgICAgQ2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXIoY29uc3QgSGFzaENvdW50ZWRTZXQ8
Q2FjaGVkUmVzb3VyY2VDbGllbnQqPiYpOwogICAgICAgICBDYWNoZWRSZXNvdXJjZUNsaWVudCog
bmV4dCgpOwogICAgIHByaXZhdGU6Ci0gICAgICAgIGNvbnN0IEhhc2hTZXQ8Q2FjaGVkUmVzb3Vy
Y2VDbGllbnQqPiYgbV9jbGllbnRTZXQ7CisgICAgICAgIGNvbnN0IEhhc2hDb3VudGVkU2V0PENh
Y2hlZFJlc291cmNlQ2xpZW50Kj4mIG1fY2xpZW50U2V0OwogICAgICAgICBWZWN0b3I8Q2FjaGVk
UmVzb3VyY2VDbGllbnQqPiBtX2NsaWVudFZlY3RvcjsKICAgICAgICAgc2l6ZV90IG1faW5kZXg7
CiAgICAgfTsK
</data>
<flag name="review"
          id="5433"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>13673</attachid>
            <date>2007-03-16 15:23:19 -0700</date>
            <delta_ts>2007-03-16 15:24:49 -0700</delta_ts>
            <desc>Tweak imageChanged in RenderImage and RenderListMarker</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>4300</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IGxvYWRlci9DYWNoZWRSZXNvdXJjZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gbG9hZGVyL0Nh
Y2hlZFJlc291cmNlLmNwcAkocmV2aXNpb24gMjAxOTkpCisrKyBsb2FkZXIvQ2FjaGVkUmVzb3Vy
Y2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05NCw3ICs5NCw2IEBAIHZvaWQgQ2FjaGVkUmVzb3Vy
Y2U6OnNldFJlcXVlc3QoUmVxdWVzdCoKIAogdm9pZCBDYWNoZWRSZXNvdXJjZTo6cmVmKENhY2hl
ZFJlc291cmNlQ2xpZW50ICpjKQogewotICAgIEFTU0VSVCghbV9jbGllbnRzLmNvbnRhaW5zKGMp
KTsKICAgICBpZiAoIXJlZmVyZW5jZWQoKSAmJiBpbkNhY2hlKCkpCiAgICAgICAgIGNhY2hlKCkt
PmFkZFRvTGl2ZU9iamVjdFNpemUoc2l6ZSgpKTsKICAgICBtX2NsaWVudHMuYWRkKGMpOwpJbmRl
eDogbG9hZGVyL0NhY2hlZFJlc291cmNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gbG9hZGVyL0NhY2hlZFJl
c291cmNlLmgJKHJldmlzaW9uIDIwMTk4KQorKysgbG9hZGVyL0NhY2hlZFJlc291cmNlLmgJKHdv
cmtpbmcgY29weSkKQEAgLTMyLDcgKzMyLDcgQEAKICNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5o
IgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXIu
aCIKLSNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgorI2luY2x1ZGUgPHd0Zi9IYXNoQ291bnRlZFNl
dC5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KICNpbmNsdWRlIDx0aW1lLmg+CiAKQEAgLTEz
Niw3ICsxMzYsNyBAQCBwdWJsaWM6CiBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBzZXRFbmNvZGVkU2l6
ZSh1bnNpZ25lZCk7CiAKLSAgICBIYXNoU2V0PENhY2hlZFJlc291cmNlQ2xpZW50Kj4gbV9jbGll
bnRzOworICAgIEhhc2hDb3VudGVkU2V0PENhY2hlZFJlc291cmNlQ2xpZW50Kj4gbV9jbGllbnRz
OwogCiAgICAgU3RyaW5nIG1fdXJsOwogICAgIFN0cmluZyBtX2FjY2VwdDsKSW5kZXg6IGxvYWRl
ci9DYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gbG9hZGVyL0Nh
Y2hlZFJlc291cmNlQ2xpZW50V2Fsa2VyLmNwcAkocmV2aXNpb24gMjAxOTgpCisrKyBsb2FkZXIv
Q2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMCwxNCAr
MzAsMTQgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1DYWNoZWRSZXNvdXJjZUNsaWVudFdh
bGtlcjo6Q2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXIoY29uc3QgSGFzaFNldDxDYWNoZWRSZXNv
dXJjZUNsaWVudCo+JiBzZXQpCitDYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlcjo6Q2FjaGVkUmVz
b3VyY2VDbGllbnRXYWxrZXIoY29uc3QgSGFzaENvdW50ZWRTZXQ8Q2FjaGVkUmVzb3VyY2VDbGll
bnQqPiYgc2V0KQogICAgIDogbV9jbGllbnRTZXQoc2V0KSwgbV9jbGllbnRWZWN0b3Ioc2V0LnNp
emUoKSksIG1faW5kZXgoMCkKIHsKLSAgICB0eXBlZGVmIEhhc2hTZXQ8Q2FjaGVkUmVzb3VyY2VD
bGllbnQqPjo6Y29uc3RfaXRlcmF0b3IgSXRlcmF0b3I7CisgICAgdHlwZWRlZiBIYXNoQ291bnRl
ZFNldDxDYWNoZWRSZXNvdXJjZUNsaWVudCo+Ojpjb25zdF9pdGVyYXRvciBJdGVyYXRvcjsKICAg
ICBJdGVyYXRvciBlbmQgPSBzZXQuZW5kKCk7CiAgICAgc2l6ZV90IGNsaWVudEluZGV4ID0gMDsK
ICAgICBmb3IgKEl0ZXJhdG9yIGN1cnJlbnQgPSBzZXQuYmVnaW4oKTsgY3VycmVudCAhPSBlbmQ7
ICsrY3VycmVudCkKLSAgICAgICAgbV9jbGllbnRWZWN0b3JbY2xpZW50SW5kZXgrK10gPSAqY3Vy
cmVudDsKKyAgICAgICAgbV9jbGllbnRWZWN0b3JbY2xpZW50SW5kZXgrK10gPSBjdXJyZW50LT5m
aXJzdDsKIH0KIAogQ2FjaGVkUmVzb3VyY2VDbGllbnQqIENhY2hlZFJlc291cmNlQ2xpZW50V2Fs
a2VyOjpuZXh0KCkKSW5kZXg6IGxvYWRlci9DYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlci5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIGxvYWRlci9DYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlci5oCShyZXZpc2lv
biAyMDE5OCkKKysrIGxvYWRlci9DYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlci5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yNyw3ICsyNyw3IEBACiAjaWZuZGVmIENhY2hlZFJlc291cmNlQ2xpZW50V2Fs
a2VyX2gKICNkZWZpbmUgQ2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXJfaAogCi0jaW5jbHVkZSA8
d3RmL0hhc2hTZXQuaD4KKyNpbmNsdWRlIDx3dGYvSGFzaENvdW50ZWRTZXQuaD4KICNpbmNsdWRl
IDx3dGYvVmVjdG9yLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTM4LDEwICszOCwxMCBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgLy8gSnVzdCBrZWVwIGNhbGxpbmcgbmV4dCgpIG9u
IHRoaXMuIEl0J3Mgc2FmZSBmcm9tIGRlbGV0aW9ucyBvZiBpdGVtcy4KICAgICBjbGFzcyBDYWNo
ZWRSZXNvdXJjZUNsaWVudFdhbGtlciB7CiAgICAgcHVibGljOgotICAgICAgICBDYWNoZWRSZXNv
dXJjZUNsaWVudFdhbGtlcihjb25zdCBIYXNoU2V0PENhY2hlZFJlc291cmNlQ2xpZW50Kj4mKTsK
KyAgICAgICAgQ2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXIoY29uc3QgSGFzaENvdW50ZWRTZXQ8
Q2FjaGVkUmVzb3VyY2VDbGllbnQqPiYpOwogICAgICAgICBDYWNoZWRSZXNvdXJjZUNsaWVudCog
bmV4dCgpOwogICAgIHByaXZhdGU6Ci0gICAgICAgIGNvbnN0IEhhc2hTZXQ8Q2FjaGVkUmVzb3Vy
Y2VDbGllbnQqPiYgbV9jbGllbnRTZXQ7CisgICAgICAgIGNvbnN0IEhhc2hDb3VudGVkU2V0PENh
Y2hlZFJlc291cmNlQ2xpZW50Kj4mIG1fY2xpZW50U2V0OwogICAgICAgICBWZWN0b3I8Q2FjaGVk
UmVzb3VyY2VDbGllbnQqPiBtX2NsaWVudFZlY3RvcjsKICAgICAgICAgc2l6ZV90IG1faW5kZXg7
CiAgICAgfTsKSW5kZXg6IHJlbmRlcmluZy9SZW5kZXJJbWFnZS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
cmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcAkocmV2aXNpb24gMjAxOTgpCisrKyByZW5kZXJpbmcv
UmVuZGVySW1hZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjgsMTAgKzEyOCw5IEBAIHZvaWQg
UmVuZGVySW1hZ2U6OmltYWdlQ2hhbmdlZChDYWNoZWRJbWEKICAgICBpZiAoZG9jdW1lbnRCZWlu
Z0Rlc3Ryb3llZCgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAobmV3SW1hZ2UgIT0gbV9j
YWNoZWRJbWFnZSkgewotICAgICAgICBSZW5kZXJSZXBsYWNlZDo6aW1hZ2VDaGFuZ2VkKG5ld0lt
YWdlKTsKKyAgICBSZW5kZXJSZXBsYWNlZDo6aW1hZ2VDaGFuZ2VkKG5ld0ltYWdlKTsKKyAgICBp
ZiAobmV3SW1hZ2UgIT0gbV9jYWNoZWRJbWFnZSkKICAgICAgICAgcmV0dXJuOwotICAgIH0KIAog
ICAgIGJvb2wgaW1hZ2VTaXplQ2hhbmdlZCA9IGZhbHNlOwogCkluZGV4OiByZW5kZXJpbmcvUmVu
ZGVyTGlzdE1hcmtlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gcmVuZGVyaW5nL1JlbmRlckxpc3RNYXJr
ZXIuY3BwCShyZXZpc2lvbiAyMDE5OCkKKysrIHJlbmRlcmluZy9SZW5kZXJMaXN0TWFya2VyLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNjMxLDEwICs2MzEsOSBAQCB2b2lkIFJlbmRlckxpc3RNYXJr
ZXI6OmxheW91dCgpCiAKIHZvaWQgUmVuZGVyTGlzdE1hcmtlcjo6aW1hZ2VDaGFuZ2VkKENhY2hl
ZEltYWdlKiBvKQogewotICAgIGlmIChvICE9IG1faW1hZ2UpIHsKLSAgICAgICAgUmVuZGVyQm94
OjppbWFnZUNoYW5nZWQobyk7CisgICAgLy8gQSBsaXN0IG1hcmtlciBjYW4ndCBoYXZlIGEgYmFj
a2dyb3VuZCBvciBib3JkZXIgaW1hZ2UsIHNvIG5vIG5lZWQgdG8gY2FsbCB0aGUgYmFzZSBjbGFz
cyBtZXRob2QuCisgICAgaWYgKG8gIT0gbV9pbWFnZSkKICAgICAgICAgcmV0dXJuOwotICAgIH0K
IAogICAgIGlmIChtX3dpZHRoICE9IG1faW1hZ2UtPmltYWdlU2l6ZSgpLndpZHRoKCkgfHwgbV9o
ZWlnaHQgIT0gbV9pbWFnZS0+aW1hZ2VTaXplKCkuaGVpZ2h0KCkpCiAgICAgICAgIHNldE5lZWRz
TGF5b3V0QW5kTWluTWF4UmVjYWxjKCk7Cg==
</data>
<flag name="review"
          id="5436"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>