<?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>67989</bug_id>
          
          <creation_ts>2011-09-13 01:15:21 -0700</creation_ts>
          <short_desc>Move RenderObject::markContainingBlocksForLayout() to RenderObject.cpp</short_desc>
          <delta_ts>2011-09-20 22:38:00 -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>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>Minor</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kent Tamura">tkent</reporter>
          <assigned_to name="Kent Tamura">tkent</assigned_to>
          <cc>darin</cc>
    
    <cc>hyatt</cc>
    
    <cc>jamesr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>466181</commentid>
    <comment_count>0</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-13 01:15:21 -0700</bug_when>
    <thetext>I&apos;d like to move RenderObject::markContainingBlocksForLayout() from RenderObject.h to RenderObject.cpp.
It&apos;s too large in a header file, and I hesitate to modify it because updating RenderObject.h causes recompilation of many files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466183</commentid>
    <comment_count>1</comment_count>
      <attachid>107150</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-13 01:18:24 -0700</bug_when>
    <thetext>Created attachment 107150
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466184</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-13 01:21:11 -0700</bug_when>
    <thetext>Attachment 107150 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1

Source/WebCore/rendering/RenderObject.cpp:597:  Line contains only semicolon. If this should be an empty statement, use { } instead.  [whitespace/semicolon] [5]
Total errors found: 1 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466189</commentid>
    <comment_count>3</comment_count>
      <attachid>107150</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2011-09-13 01:31:06 -0700</bug_when>
    <thetext>Comment on attachment 107150
Patch

Attachment 107150 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/9654054</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466190</commentid>
    <comment_count>4</comment_count>
      <attachid>107150</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2011-09-13 01:33:14 -0700</bug_when>
    <thetext>Comment on attachment 107150
Patch

Attachment 107150 did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/9660046</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466191</commentid>
    <comment_count>5</comment_count>
      <attachid>107150</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-13 01:35:57 -0700</bug_when>
    <thetext>Comment on attachment 107150
Patch

Attachment 107150 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/9651102</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466200</commentid>
    <comment_count>6</comment_count>
      <attachid>107150</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-13 02:07:10 -0700</bug_when>
    <thetext>Comment on attachment 107150
Patch

Attachment 107150 did not pass cr-mac-ews (chromium):
Output: http://queues.webkit.org/results/9655050</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466202</commentid>
    <comment_count>7</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-13 02:10:03 -0700</bug_when>
    <thetext>Oops, I didn&apos;t check Release build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466206</commentid>
    <comment_count>8</comment_count>
      <attachid>107154</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-13 02:25:19 -0700</bug_when>
    <thetext>Created attachment 107154
Patch 2

Fixed Release build</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466317</commentid>
    <comment_count>9</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-09-13 08:48:43 -0700</bug_when>
    <thetext>We&apos;ll need some performance measurements before accepting this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466337</commentid>
    <comment_count>10</comment_count>
      <attachid>107154</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-09-13 09:42:12 -0700</bug_when>
    <thetext>Comment on attachment 107154
Patch 2

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

&gt; Source/WebCore/ChangeLog:3
&gt; +        Move RenderObject::markContainingBlocksForLayout() to RenderObject.cpp.

You said you wanted to move this so you could modify it without recompiling. That’s OK, but what about the reason it was originally marked inline?

Does changing this make certain operations slower or faster? WebKit code bigger or smaller?

&gt; Source/WebCore/rendering/RenderObject.cpp:587
&gt; +inline bool objectIsRelayoutBoundary(const RenderObject *obj)

A function that’s internal to a cpp file like this should be marked “static” so that it gets internal linkage. That’s needed whether it’s inline or not.

If moving this, I think we need to fix the basic style mistakes in it. The * needs to be moved next to RenderObject. The argument name should be object, not &quot;obj&quot;.

&gt; Source/WebCore/rendering/RenderObject.cpp:603
&gt; +    RenderObject* o = container();

This should be object, not &quot;o&quot; or perhaps an even better name is available.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466912</commentid>
    <comment_count>11</comment_count>
      <attachid>107304</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-14 01:14:07 -0700</bug_when>
    <thetext>Created attachment 107304
Performance measurement result

Load 153 sites in Chromium&apos;s PLT 10 times without the patch and 10 times with the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466920</commentid>
    <comment_count>12</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-14 01:36:08 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; Created an attachment (id=107304) [details]
&gt; Performance measurement result
&gt; 
&gt; Load 153 sites in Chromium&apos;s PLT 10 times without the patch and 10 times with the patch.

The following list shows total loading times by r95072 and by r95072 + the patch.
The total loading time doesn&apos;t contain the first loading.

Result:
* The patch didn&apos;t show significant difference. However, loading times were slightly better for 100 sites.
* The patch will reduce the size of Chromium by 74KB on i386 Mac.


bugzilla.mozilla.org; r95072=251msec; Patched=250msec; Time percentage=99.6%
espn.go.com; r95072=400msec; Patched=399msec; Time percentage=99.75%
home.netscape.com; r95072=324msec; Patched=318msec; Time percentage=98.14%
hotwired.lycos.com; r95072=257msec; Patched=271msec; Time percentage=105.44%
lxr.mozilla.org; r95072=459msec; Patched=465msec; Time percentage=101.3%
my.netscape.com; r95072=293msec; Patched=288msec; Time percentage=98.29%
news.cnet.com; r95072=284msec; Patched=277msec; Time percentage=97.53%
slashdot.org; r95072=295msec; Patched=289msec; Time percentage=97.96%
vanilla-page; r95072=89msec; Patched=89msec; Time percentage=100%
web.icq.com; r95072=434msec; Patched=406msec; Time percentage=93.54%
www.altavista.com; r95072=202msec; Patched=198msec; Time percentage=98.01%
www.amazon.com; r95072=255msec; Patched=255msec; Time percentage=100%
www.aol.com; r95072=400msec; Patched=386msec; Time percentage=96.5%
www.apple.com; r95072=135msec; Patched=136msec; Time percentage=100.74%
www.cnn.com; r95072=559msec; Patched=531msec; Time percentage=94.99%
www.compuserve.com; r95072=267msec; Patched=264msec; Time percentage=98.87%
www.digitalcity.com; r95072=254msec; Patched=248msec; Time percentage=97.63%
www.ebay.com; r95072=238msec; Patched=227msec; Time percentage=95.37%
www.excite.com; r95072=349msec; Patched=334msec; Time percentage=95.7%
www.expedia.com; r95072=330msec; Patched=337msec; Time percentage=102.12%
www.google.com; r95072=81msec; Patched=79msec; Time percentage=97.53%
www.iplanet.com; r95072=157msec; Patched=161msec; Time percentage=102.54%
www.mapquest.com; r95072=145msec; Patched=149msec; Time percentage=102.75%
www.microsoft.com; r95072=177msec; Patched=183msec; Time percentage=103.38%
www.moviefone.com; r95072=250msec; Patched=239msec; Time percentage=95.6%
www.msn.com; r95072=392msec; Patched=394msec; Time percentage=100.51%
www.msnbc.com; r95072=181msec; Patched=179msec; Time percentage=98.89%
www.nytimes.com; r95072=342msec; Patched=354msec; Time percentage=103.5%
www.nytimes.com_Table; r95072=583msec; Patched=584msec; Time percentage=100.17%
www.quicken.com; r95072=216msec; Patched=213msec; Time percentage=98.61%
www.spinner.com; r95072=378msec; Patched=379msec; Time percentage=100.26%
www.sun.com; r95072=137msec; Patched=139msec; Time percentage=101.45%
www.time.com; r95072=403msec; Patched=418msec; Time percentage=103.72%
www.tomshardware.com; r95072=527msec; Patched=530msec; Time percentage=100.56%
www.travelocity.com; r95072=393msec; Patched=294msec; Time percentage=74.8%
www.voodooextreme.com; r95072=1085msec; Patched=1124msec; Time percentage=103.59%
www.w3.org_DOML2Core; r95072=1098msec; Patched=1089msec; Time percentage=99.18%
www.wired.com; r95072=399msec; Patched=396msec; Time percentage=99.24%
www.yahoo.com; r95072=170msec; Patched=169msec; Time percentage=99.41%
www.zdnet.com; r95072=523msec; Patched=519msec; Time percentage=99.23%
www.zdnet.com_Gamespot.com; r95072=455msec; Patched=450msec; Time percentage=98.9%
126.com; r95072=530msec; Patched=509msec; Time percentage=96.03%
2ch.net; r95072=185msec; Patched=192msec; Time percentage=103.78%
6park.com; r95072=4055msec; Patched=3935msec; Time percentage=97.04%
affili.net; r95072=371msec; Patched=359msec; Time percentage=96.76%
allegro.pl; r95072=1030msec; Patched=990msec; Time percentage=96.11%
apeha.ru; r95072=670msec; Patched=651msec; Time percentage=97.16%
baidu.com; r95072=107msec; Patched=104msec; Time percentage=97.19%
bbs.wefong.com; r95072=2078msec; Patched=2069msec; Time percentage=99.56%
blog.skyrock.com; r95072=1070msec; Patched=1003msec; Time percentage=93.73%
cmfu.com; r95072=3056msec; Patched=3040msec; Time percentage=99.47%
cn.yahoo.com; r95072=1701msec; Patched=1697msec; Time percentage=99.76%
contra.gr; r95072=641msec; Patched=644msec; Time percentage=100.46%
dtiblog.com; r95072=2629msec; Patched=2638msec; Time percentage=100.34%
el.wikipedia.org; r95072=939msec; Patched=977msec; Time percentage=104.04%
elmundo.es; r95072=1211msec; Patched=1361msec; Time percentage=112.38%
ettoday.com; r95072=4684msec; Patched=4878msec; Time percentage=104.14%
exblog.jp; r95072=2104msec; Patched=2001msec; Time percentage=95.1%
excite.co.jp; r95072=624msec; Patched=650msec; Time percentage=104.16%
fc2.com; r95072=2436msec; Patched=2486msec; Time percentage=102.05%
fora.pl; r95072=987msec; Patched=865msec; Time percentage=87.63%
free.fr; r95072=803msec; Patched=799msec; Time percentage=99.5%
golem.de; r95072=510msec; Patched=507msec; Time percentage=99.41%
goo.ne.jp; r95072=3301msec; Patched=3280msec; Time percentage=99.36%
haberturk.com; r95072=1676msec; Patched=1665msec; Time percentage=99.34%
hatena.ne.jp; r95072=878msec; Patched=1086msec; Time percentage=123.69%
home.altervista.org; r95072=665msec; Patched=462msec; Time percentage=69.47%
hurriyet.com.tr; r95072=1303msec; Patched=1321msec; Time percentage=101.38%
jugem.jp; r95072=2570msec; Patched=2389msec; Time percentage=92.95%
kakaku.com; r95072=1619msec; Patched=1577msec; Time percentage=97.4%
mixi.jp; r95072=456msec; Patched=439msec; Time percentage=96.27%
naftemporiki.gr; r95072=2240msec; Patched=2351msec; Time percentage=104.95%
narod.yandex.ru; r95072=320msec; Patched=344msec; Time percentage=107.5%
news.163.com; r95072=6477msec; Patched=6522msec; Time percentage=100.69%
partyflock.nl; r95072=913msec; Patched=1059msec; Time percentage=115.99%
pchome.com.tw; r95072=1024msec; Patched=1401msec; Time percentage=136.81%
phoenixtv.com; r95072=3407msec; Patched=3638msec; Time percentage=106.78%
photofile.ru; r95072=1556msec; Patched=1479msec; Time percentage=95.05%
pl.wikipedia.org; r95072=1376msec; Patched=1221msec; Time percentage=88.73%
ricardo.ch; r95072=445msec; Patched=568msec; Time percentage=127.64%
ru.wikipedia.org; r95072=1062msec; Patched=1022msec; Time percentage=96.23%
ruten.com.tw; r95072=1435msec; Patched=1311msec; Time percentage=91.35%
sport24.gr; r95072=1401msec; Patched=1395msec; Time percentage=99.57%
terra.es; r95072=1293msec; Patched=1284msec; Time percentage=99.3%
udn.com; r95072=3533msec; Patched=3554msec; Time percentage=100.59%
uwants.com; r95072=2370msec; Patched=2433msec; Time percentage=102.65%
voila.fr; r95072=989msec; Patched=986msec; Time percentage=99.69%
www.alice.it; r95072=2769msec; Patched=2930msec; Time percentage=105.81%
www.amazon.co.jp; r95072=1000msec; Patched=1005msec; Time percentage=100.49%
www.auction.co.kr; r95072=4343msec; Patched=5969msec; Time percentage=137.43%
www.chinaren.com; r95072=4068msec; Patched=4458msec; Time percentage=109.58%
www.chosun.com; r95072=4767msec; Patched=4825msec; Time percentage=101.21%
www.danawa.com; r95072=4589msec; Patched=4578msec; Time percentage=99.76%
www.daum.net; r95072=2344msec; Patched=2281msec; Time percentage=97.31%
www.dcinside.com; r95072=2619msec; Patched=2596msec; Time percentage=99.12%
www.eastmoney.com; r95072=1848msec; Patched=1781msec; Time percentage=96.37%
zol.com.cn; r95072=4898msec; Patched=4633msec; Time percentage=94.58%
arabicnews.google.com; r95072=3480msec; Patched=3467msec; Time percentage=99.62%
bn.wikipedia.org; r95072=1213msec; Patched=1220msec; Time percentage=100.57%
exteen.com; r95072=1151msec; Patched=1150msec; Time percentage=99.91%
farsnews.com; r95072=2283msec; Patched=2278msec; Time percentage=99.78%
hindi.webdunia.com; r95072=2566msec; Patched=2521msec; Time percentage=98.24%
in.telugu.yahoo.com; r95072=640msec; Patched=684msec; Time percentage=106.87%
isna.ir; r95072=2678msec; Patched=2655msec; Time percentage=99.14%
kapook.com; r95072=2778msec; Patched=2873msec; Time percentage=103.41%
kooora.com; r95072=2854msec; Patched=2840msec; Time percentage=99.5%
manager.co.th; r95072=5970msec; Patched=5963msec; Time percentage=99.88%
masrawy.com; r95072=1766msec; Patched=1765msec; Time percentage=99.94%
ml.wikipedia.org; r95072=1454msec; Patched=1448msec; Time percentage=99.58%
msn.co.il; r95072=1631msec; Patched=1570msec; Time percentage=96.25%
news.bbc.co.uk; r95072=1128msec; Patched=1118msec; Time percentage=99.11%
news.google.com; r95072=2897msec; Patched=2883msec; Time percentage=99.51%
sh3bwah.com; r95072=3321msec; Patched=3310msec; Time percentage=99.66%
sgkalesh.blogspot.com; r95072=1814msec; Patched=1701msec; Time percentage=93.77%
tapuz.co.il; r95072=798msec; Patched=794msec; Time percentage=99.49%
thaimisc.com; r95072=1524msec; Patched=1502msec; Time percentage=98.55%
vietnamnet.vn; r95072=1306msec; Patched=1295msec; Time percentage=99.15%
vnexpress.net; r95072=780msec; Patched=836msec; Time percentage=107.17%
walla.co.il; r95072=589msec; Patched=591msec; Time percentage=100.33%
www.aljayyash.net; r95072=2280msec; Patched=2238msec; Time percentage=98.15%
www.bbc.co.uk; r95072=900msec; Patched=969msec; Time percentage=107.66%
www.google.com.sa; r95072=131msec; Patched=129msec; Time percentage=98.47%
www.islamweb.net; r95072=2260msec; Patched=2346msec; Time percentage=103.8%
www.mthai.com; r95072=3963msec; Patched=3944msec; Time percentage=99.52%
www.startimes2.com; r95072=4708msec; Patched=4680msec; Time percentage=99.4%
www.jagran.com; r95072=2726msec; Patched=2724msec; Time percentage=99.92%
ynet.co.il; r95072=1721msec; Patched=1716msec; Time percentage=99.7%
colorfade; r95072=5148msec; Patched=5135msec; Time percentage=99.74%
diagball; r95072=6168msec; Patched=6140msec; Time percentage=99.54%
fadespacing; r95072=8290msec; Patched=8271msec; Time percentage=99.77%
imageslide; r95072=1403msec; Patched=1396msec; Time percentage=99.5%
layers1; r95072=1282msec; Patched=1312msec; Time percentage=102.34%
layers2; r95072=220msec; Patched=223msec; Time percentage=101.36%
layers4; r95072=218msec; Patched=221msec; Time percentage=101.37%
layers5; r95072=886msec; Patched=866msec; Time percentage=97.74%
layers6; r95072=314msec; Patched=237msec; Time percentage=75.47%
meter; r95072=4071msec; Patched=4053msec; Time percentage=99.55%
movingtext; r95072=2864msec; Patched=2864msec; Time percentage=100%
mozilla; r95072=10360msec; Patched=10320msec; Time percentage=99.61%
replaceimages; r95072=1220msec; Patched=1211msec; Time percentage=99.26%
scrolling; r95072=1691msec; Patched=1704msec; Time percentage=100.76%
slidein; r95072=9641msec; Patched=9621msec; Time percentage=99.79%
slidingballs; r95072=1030msec; Patched=976msec; Time percentage=94.75%
zoom; r95072=2035msec; Patched=2024msec; Time percentage=99.45%
blog.chromium.org; r95072=2439msec; Patched=3027msec; Time percentage=124.1%
dev.chromium.org; r95072=2271msec; Patched=2256msec; Time percentage=99.33%
googleblog.blogspot.com1; r95072=767msec; Patched=761msec; Time percentage=99.21%
googleblog.blogspot.com2; r95072=1482msec; Patched=1468msec; Time percentage=99.05%
test.blogspot.com; r95072=2528msec; Patched=2522msec; Time percentage=99.76%
www.igoogle.com; r95072=1904msec; Patched=1840msec; Time percentage=96.63%
www.techcrunch.com; r95072=1915msec; Patched=1941msec; Time percentage=101.35%
www.webkit.org; r95072=1769msec; Patched=1763msec; Time percentage=99.66%
www.yahoo.com; r95072=1290msec; Patched=1310msec; Time percentage=101.55%</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466928</commentid>
    <comment_count>13</comment_count>
      <attachid>107308</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-14 01:55:59 -0700</bug_when>
    <thetext>Created attachment 107308
Patch 3

Follows Darin&apos;s comments</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466932</commentid>
    <comment_count>14</comment_count>
      <attachid>107154</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-14 02:00:00 -0700</bug_when>
    <thetext>Comment on attachment 107154
Patch 2

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

Thank you for the comments.

&gt;&gt; Source/WebCore/rendering/RenderObject.cpp:587
&gt;&gt; +inline bool objectIsRelayoutBoundary(const RenderObject *obj)
&gt; 
&gt; A function that’s internal to a cpp file like this should be marked “static” so that it gets internal linkage. That’s needed whether it’s inline or not.
&gt; 
&gt; If moving this, I think we need to fix the basic style mistakes in it. The * needs to be moved next to RenderObject. The argument name should be object, not &quot;obj&quot;.

Added &apos;static&apos;.
Fixed to &apos;RenderObject* object&apos;

&gt;&gt; Source/WebCore/rendering/RenderObject.cpp:603
&gt;&gt; +    RenderObject* o = container();
&gt; 
&gt; This should be object, not &quot;o&quot; or perhaps an even better name is available.

Renamed it to &apos;object.&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467610</commentid>
    <comment_count>15</comment_count>
      <attachid>107308</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-09-14 21:41:22 -0700</bug_when>
    <thetext>Comment on attachment 107308
Patch 3

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

&gt; Source/WebCore/rendering/RenderObject.cpp:596
&gt; +        || (object-&gt;hasOverflowClip() &amp;&amp; !object-&gt;style()-&gt;width().isIntrinsicOrAuto() &amp;&amp; !object-&gt;style()-&gt;height().isIntrinsicOrAuto() &amp;&amp; !object-&gt;style()-&gt;height().isPercent() &amp;&amp; !object-&gt;isTableCell());

Can we split this into two lines? This line seems too long.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467769</commentid>
    <comment_count>16</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-15 06:45:35 -0700</bug_when>
    <thetext>Simon, Darin, do you have further comments?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467795</commentid>
    <comment_count>17</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-09-15 07:33:10 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; Simon, Darin, do you have further comments?

I am slightly concerned that total time spent on a page load test is not a thorough enough way to test the performance impact.

Otherwise, I am happy with the change and I don’t want to stand in the way of it getting checked in.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467797</commentid>
    <comment_count>18</comment_count>
      <attachid>107308</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-09-15 07:35:12 -0700</bug_when>
    <thetext>Comment on attachment 107308
Patch 3

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

&gt;&gt; Source/WebCore/rendering/RenderObject.cpp:596
&gt;&gt; +        || (object-&gt;hasOverflowClip() &amp;&amp; !object-&gt;style()-&gt;width().isIntrinsicOrAuto() &amp;&amp; !object-&gt;style()-&gt;height().isIntrinsicOrAuto() &amp;&amp; !object-&gt;style()-&gt;height().isPercent() &amp;&amp; !object-&gt;isTableCell());
&gt; 
&gt; Can we split this into two lines? This line seems too long.

Since this is now a separate function it could be written as a set of if statements instead of a single expression, and doing that might make it easier to read and eliminate the need for this long line, and even provide room for more “why” comments. Not needed n this patch, though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468178</commentid>
    <comment_count>19</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-15 17:33:34 -0700</bug_when>
    <thetext>(In reply to comment #17)
&gt; I am slightly concerned that total time spent on a page load test is not a thorough enough way to test the performance impact.

The tests &apos;colorfade&apos; through &apos;zoom&apos; are animation tests by updating DOM by JavaScript.  I think their results showed this change had no performance impact.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>470589</commentid>
    <comment_count>20</comment_count>
      <attachid>107308</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-09-20 21:30:41 -0700</bug_when>
    <thetext>Comment on attachment 107308
Patch 3

I&apos;ll land this patch as is.  Feel free to post another patch for objectIsRelayoutBoundary() :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>470605</commentid>
    <comment_count>21</comment_count>
      <attachid>107308</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-20 22:37:55 -0700</bug_when>
    <thetext>Comment on attachment 107308
Patch 3

Clearing flags on attachment: 107308

Committed r95598: &lt;http://trac.webkit.org/changeset/95598&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>470606</commentid>
    <comment_count>22</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-20 22:38:00 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107150</attachid>
            <date>2011-09-13 01:18:24 -0700</date>
            <delta_ts>2011-09-13 02:25:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-67989-20110913171822.patch</filename>
            <type>text/plain</type>
            <size>7136</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTUwMDkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlMWI5ODVjNDU1ZGVkZDNh
MGI1Yjg2NWZkNWY4ZmY5ZGU4NzI5MWFmLi44ODc5ZmI2ZTBhZjRmN2NlYTBhYWNhODljYzg3NGMw
ODhiOGU5ZWFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDktMTMgIEtlbnQg
VGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgorCisgICAgICAgIE1vdmUgUmVuZGVyT2JqZWN0
OjptYXJrQ29udGFpbmluZ0Jsb2Nrc0ZvckxheW91dCgpIHRvIFJlbmRlck9iamVjdC5jcHAuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02Nzk4OQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0
cyBiZWNhdXNlIG9mIG5vIGJlaGF2aW9yIGNoYW5nZS4KKworICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6b2JqZWN0SXNSZWxheW91dEJvdW5k
YXJ5KTogTW92ZWQgZnJvbSBSZW5kZXJPYmplY3QuaC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ck9iamVjdDo6bWFya0NvbnRhaW5pbmdCbG9ja3NGb3JMYXlvdXQpOiBNb3ZlZCBmcm9tIFJlbmRl
ck9iamVjdC5oCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oOgorCiAyMDExLTA5
LTEyICBKYWNreSBKaWFuZyAgPHpoYWppYW5nQHJpbS5jb20+CiAKICAgICAgICAgU2V0dGluZyBk
b2N1bWVudC50aXRsZSBkb2Vzbid0IGFmZmVjdCBjb250ZW50cyBvZiB0aXRsZSB0YWcgb2YgWEhU
TUwgZG9jdW1lbnRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
T2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCmlu
ZGV4IDEyNjkyM2Q1YTBiMTllODM4NGMyYWQ5MzllMmUwZTY2YTMxMDY1OWEuLjlmNzY3Mzc4OWM2
OGQ4MWFiMzQ3NmMxYzJmZjFhMGJkNjkxZGU0MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJPYmplY3QuY3BwCkBAIC01ODQsNiArNTg0LDcwIEBAIFJlbmRlckJsb2NrKiBSZW5k
ZXJPYmplY3Q6OmZpcnN0TGluZUJsb2NrKCkgY29uc3QKICAgICByZXR1cm4gMDsKIH0KIAoraW5s
aW5lIGJvb2wgb2JqZWN0SXNSZWxheW91dEJvdW5kYXJ5KGNvbnN0IFJlbmRlck9iamVjdCAqb2Jq
KQoreworICAgIC8vIEZJWE1FOiBJbiBmdXR1cmUgaXQgbWF5IGJlIHBvc3NpYmxlIHRvIGJyb2Fk
ZW4gdGhpcyBjb25kaXRpb24gaW4gb3JkZXIgdG8gaW1wcm92ZSBwZXJmb3JtYW5jZS4KKyAgICAv
LyBUYWJsZSBjZWxscyBhcmUgZXhjbHVkZWQgYmVjYXVzZSBldmVuIHdoZW4gdGhlaXIgQ1NTIGhl
aWdodCBpcyBmaXhlZCwgdGhlaXIgaGVpZ2h0KCkKKyAgICAvLyBtYXkgZGVwZW5kIG9uIHRoZWly
IGNvbnRlbnRzLgorICAgIHJldHVybiBvYmotPmlzVGV4dENvbnRyb2woKQorICAgICAgICB8fCAo
b2JqLT5oYXNPdmVyZmxvd0NsaXAoKSAmJiAhb2JqLT5zdHlsZSgpLT53aWR0aCgpLmlzSW50cmlu
c2ljT3JBdXRvKCkgJiYgIW9iai0+c3R5bGUoKS0+aGVpZ2h0KCkuaXNJbnRyaW5zaWNPckF1dG8o
KSAmJiAhb2JqLT5zdHlsZSgpLT5oZWlnaHQoKS5pc1BlcmNlbnQoKSAmJiAhb2JqLT5pc1RhYmxl
Q2VsbCgpKQorI2lmIEVOQUJMRShTVkcpCisgICAgICAgIHx8IG9iai0+aXNTVkdSb290KCkKKyNl
bmRpZgorICAgICAgICA7Cit9CisKK2lubGluZSB2b2lkIFJlbmRlck9iamVjdDo6bWFya0NvbnRh
aW5pbmdCbG9ja3NGb3JMYXlvdXQoYm9vbCBzY2hlZHVsZVJlbGF5b3V0LCBSZW5kZXJPYmplY3Qq
IG5ld1Jvb3QpCit7CisgICAgQVNTRVJUKCFzY2hlZHVsZVJlbGF5b3V0IHx8ICFuZXdSb290KTsK
KworICAgIFJlbmRlck9iamVjdCogbyA9IGNvbnRhaW5lcigpOworICAgIFJlbmRlck9iamVjdCog
bGFzdCA9IHRoaXM7CisKKyAgICBib29sIHNpbXBsaWZpZWROb3JtYWxGbG93TGF5b3V0ID0gbmVl
ZHNTaW1wbGlmaWVkTm9ybWFsRmxvd0xheW91dCgpICYmICFzZWxmTmVlZHNMYXlvdXQoKSAmJiAh
bm9ybWFsQ2hpbGROZWVkc0xheW91dCgpOworCisgICAgd2hpbGUgKG8pIHsKKyAgICAgICAgLy8g
RG9uJ3QgbWFyayB0aGUgb3V0ZXJtb3N0IG9iamVjdCBvZiBhbiB1bnJvb3RlZCBzdWJ0cmVlLiBU
aGF0IG9iamVjdCB3aWxsIGJlCisgICAgICAgIC8vIG1hcmtlZCB3aGVuIHRoZSBzdWJ0cmVlIGlz
IGFkZGVkIHRvIHRoZSBkb2N1bWVudC4KKyAgICAgICAgUmVuZGVyT2JqZWN0KiBjb250YWluZXIg
PSBvLT5jb250YWluZXIoKTsKKyAgICAgICAgaWYgKCFjb250YWluZXIgJiYgIW8tPmlzUmVuZGVy
VmlldygpKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBpZiAoIWxhc3QtPmlzVGV4dCgp
ICYmIChsYXN0LT5zdHlsZSgpLT5wb3NpdGlvbigpID09IEZpeGVkUG9zaXRpb24gfHwgbGFzdC0+
c3R5bGUoKS0+cG9zaXRpb24oKSA9PSBBYnNvbHV0ZVBvc2l0aW9uKSkgeworICAgICAgICAgICAg
Ym9vbCB3aWxsU2tpcFJlbGF0aXZlbHlQb3NpdGlvbmVkSW5saW5lcyA9ICFvLT5pc1JlbmRlckJs
b2NrKCk7CisgICAgICAgICAgICB3aGlsZSAobyAmJiAhby0+aXNSZW5kZXJCbG9jaygpKSAvLyBT
a2lwIHJlbGF0aXZlbHkgcG9zaXRpb25lZCBpbmxpbmVzIGFuZCBnZXQgdG8gdGhlIGVuY2xvc2lu
ZyBSZW5kZXJCbG9jay4KKyAgICAgICAgICAgICAgICBvID0gby0+Y29udGFpbmVyKCk7CisgICAg
ICAgICAgICBpZiAoIW8gfHwgby0+bV9wb3NDaGlsZE5lZWRzTGF5b3V0KQorICAgICAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgICAgIGlmICh3aWxsU2tpcFJlbGF0aXZlbHlQb3NpdGlvbmVk
SW5saW5lcykKKyAgICAgICAgICAgICAgICBjb250YWluZXIgPSBvLT5jb250YWluZXIoKTsKKyAg
ICAgICAgICAgIG8tPm1fcG9zQ2hpbGROZWVkc0xheW91dCA9IHRydWU7CisgICAgICAgICAgICBz
aW1wbGlmaWVkTm9ybWFsRmxvd0xheW91dCA9IHRydWU7CisgICAgICAgICAgICBBU1NFUlQoIW8t
PmlzU2V0TmVlZHNMYXlvdXRGb3JiaWRkZW4oKSk7CisgICAgICAgIH0gZWxzZSBpZiAoc2ltcGxp
ZmllZE5vcm1hbEZsb3dMYXlvdXQpIHsKKyAgICAgICAgICAgIGlmIChvLT5tX25lZWRzU2ltcGxp
ZmllZE5vcm1hbEZsb3dMYXlvdXQpCisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAg
ICAgby0+bV9uZWVkc1NpbXBsaWZpZWROb3JtYWxGbG93TGF5b3V0ID0gdHJ1ZTsKKyAgICAgICAg
ICAgIEFTU0VSVCghby0+aXNTZXROZWVkc0xheW91dEZvcmJpZGRlbigpKTsKKyAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgIGlmIChvLT5tX25vcm1hbENoaWxkTmVlZHNMYXlvdXQpCisgICAg
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgby0+bV9ub3JtYWxDaGlsZE5lZWRzTGF5
b3V0ID0gdHJ1ZTsKKyAgICAgICAgICAgIEFTU0VSVCghby0+aXNTZXROZWVkc0xheW91dEZvcmJp
ZGRlbigpKTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChvID09IG5ld1Jvb3QpCisgICAgICAg
ICAgICByZXR1cm47CisKKyAgICAgICAgbGFzdCA9IG87CisgICAgICAgIGlmIChzY2hlZHVsZVJl
bGF5b3V0ICYmIG9iamVjdElzUmVsYXlvdXRCb3VuZGFyeShsYXN0KSkKKyAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICBvID0gY29udGFpbmVyOworICAgIH0KKworICAgIGlmIChzY2hlZHVsZVJl
bGF5b3V0KQorICAgICAgICBsYXN0LT5zY2hlZHVsZVJlbGF5b3V0KCk7Cit9CisKIHZvaWQgUmVu
ZGVyT2JqZWN0OjpzZXRQcmVmZXJyZWRMb2dpY2FsV2lkdGhzRGlydHkoYm9vbCBiLCBib29sIG1h
cmtQYXJlbnRzKQogewogICAgIGJvb2wgYWxyZWFkeURpcnR5ID0gbV9wcmVmZXJyZWRMb2dpY2Fs
V2lkdGhzRGlydHk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
T2JqZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKaW5kZXgg
YmZhYTY5NWZjMmM2MzcwNzI1MGVmZjA2MTg3ZjQwOGEwMGQ0YmJjMC4uZmE3MjliZjQzOTA2ZWFi
ZDkwZWM0MmRiOWFiOTM2NDRjNGZkODkzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlck9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJPYmplY3QuaApAQCAtOTgxLDcwICs5ODEsNiBAQCBpbmxpbmUgdm9pZCBSZW5kZXJPYmplY3Q6
OnNldE5lZWRzU2ltcGxpZmllZE5vcm1hbEZsb3dMYXlvdXQoKQogICAgIH0KIH0KIAotaW5saW5l
IGJvb2wgb2JqZWN0SXNSZWxheW91dEJvdW5kYXJ5KGNvbnN0IFJlbmRlck9iamVjdCAqb2JqKSAK
LXsKLSAgICAvLyBGSVhNRTogSW4gZnV0dXJlIGl0IG1heSBiZSBwb3NzaWJsZSB0byBicm9hZGVu
IHRoaXMgY29uZGl0aW9uIGluIG9yZGVyIHRvIGltcHJvdmUgcGVyZm9ybWFuY2UuCi0gICAgLy8g
VGFibGUgY2VsbHMgYXJlIGV4Y2x1ZGVkIGJlY2F1c2UgZXZlbiB3aGVuIHRoZWlyIENTUyBoZWln
aHQgaXMgZml4ZWQsIHRoZWlyIGhlaWdodCgpCi0gICAgLy8gbWF5IGRlcGVuZCBvbiB0aGVpciBj
b250ZW50cy4KLSAgICByZXR1cm4gb2JqLT5pc1RleHRDb250cm9sKCkKLSAgICAgICAgfHwgKG9i
ai0+aGFzT3ZlcmZsb3dDbGlwKCkgJiYgIW9iai0+c3R5bGUoKS0+d2lkdGgoKS5pc0ludHJpbnNp
Y09yQXV0bygpICYmICFvYmotPnN0eWxlKCktPmhlaWdodCgpLmlzSW50cmluc2ljT3JBdXRvKCkg
JiYgIW9iai0+c3R5bGUoKS0+aGVpZ2h0KCkuaXNQZXJjZW50KCkgJiYgIW9iai0+aXNUYWJsZUNl
bGwoKSkKLSNpZiBFTkFCTEUoU1ZHKQotICAgICAgICAgICB8fCBvYmotPmlzU1ZHUm9vdCgpCi0j
ZW5kaWYKLSAgICAgICAgICAgOwotfQotCi1pbmxpbmUgdm9pZCBSZW5kZXJPYmplY3Q6Om1hcmtD
b250YWluaW5nQmxvY2tzRm9yTGF5b3V0KGJvb2wgc2NoZWR1bGVSZWxheW91dCwgUmVuZGVyT2Jq
ZWN0KiBuZXdSb290KQotewotICAgIEFTU0VSVCghc2NoZWR1bGVSZWxheW91dCB8fCAhbmV3Um9v
dCk7Ci0KLSAgICBSZW5kZXJPYmplY3QqIG8gPSBjb250YWluZXIoKTsKLSAgICBSZW5kZXJPYmpl
Y3QqIGxhc3QgPSB0aGlzOwotCi0gICAgYm9vbCBzaW1wbGlmaWVkTm9ybWFsRmxvd0xheW91dCA9
IG5lZWRzU2ltcGxpZmllZE5vcm1hbEZsb3dMYXlvdXQoKSAmJiAhc2VsZk5lZWRzTGF5b3V0KCkg
JiYgIW5vcm1hbENoaWxkTmVlZHNMYXlvdXQoKTsKLQotICAgIHdoaWxlIChvKSB7Ci0gICAgICAg
IC8vIERvbid0IG1hcmsgdGhlIG91dGVybW9zdCBvYmplY3Qgb2YgYW4gdW5yb290ZWQgc3VidHJl
ZS4gVGhhdCBvYmplY3Qgd2lsbCBiZSAKLSAgICAgICAgLy8gbWFya2VkIHdoZW4gdGhlIHN1YnRy
ZWUgaXMgYWRkZWQgdG8gdGhlIGRvY3VtZW50LgotICAgICAgICBSZW5kZXJPYmplY3QqIGNvbnRh
aW5lciA9IG8tPmNvbnRhaW5lcigpOwotICAgICAgICBpZiAoIWNvbnRhaW5lciAmJiAhby0+aXNS
ZW5kZXJWaWV3KCkpCi0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIGlmICghbGFzdC0+aXNU
ZXh0KCkgJiYgKGxhc3QtPnN0eWxlKCktPnBvc2l0aW9uKCkgPT0gRml4ZWRQb3NpdGlvbiB8fCBs
YXN0LT5zdHlsZSgpLT5wb3NpdGlvbigpID09IEFic29sdXRlUG9zaXRpb24pKSB7Ci0gICAgICAg
ICAgICBib29sIHdpbGxTa2lwUmVsYXRpdmVseVBvc2l0aW9uZWRJbmxpbmVzID0gIW8tPmlzUmVu
ZGVyQmxvY2soKTsKLSAgICAgICAgICAgIHdoaWxlIChvICYmICFvLT5pc1JlbmRlckJsb2NrKCkp
IC8vIFNraXAgcmVsYXRpdmVseSBwb3NpdGlvbmVkIGlubGluZXMgYW5kIGdldCB0byB0aGUgZW5j
bG9zaW5nIFJlbmRlckJsb2NrLgotICAgICAgICAgICAgICAgIG8gPSBvLT5jb250YWluZXIoKTsK
LSAgICAgICAgICAgIGlmICghbyB8fCBvLT5tX3Bvc0NoaWxkTmVlZHNMYXlvdXQpCi0gICAgICAg
ICAgICAgICAgcmV0dXJuOwotICAgICAgICAgICAgaWYgKHdpbGxTa2lwUmVsYXRpdmVseVBvc2l0
aW9uZWRJbmxpbmVzKQotICAgICAgICAgICAgICAgIGNvbnRhaW5lciA9IG8tPmNvbnRhaW5lcigp
OwotICAgICAgICAgICAgby0+bV9wb3NDaGlsZE5lZWRzTGF5b3V0ID0gdHJ1ZTsKLSAgICAgICAg
ICAgIHNpbXBsaWZpZWROb3JtYWxGbG93TGF5b3V0ID0gdHJ1ZTsKLSAgICAgICAgICAgIEFTU0VS
VCghby0+aXNTZXROZWVkc0xheW91dEZvcmJpZGRlbigpKTsKLSAgICAgICAgfSBlbHNlIGlmIChz
aW1wbGlmaWVkTm9ybWFsRmxvd0xheW91dCkgewotICAgICAgICAgICAgaWYgKG8tPm1fbmVlZHNT
aW1wbGlmaWVkTm9ybWFsRmxvd0xheW91dCkKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAg
ICAgICAgICBvLT5tX25lZWRzU2ltcGxpZmllZE5vcm1hbEZsb3dMYXlvdXQgPSB0cnVlOwotICAg
ICAgICAgICAgQVNTRVJUKCFvLT5pc1NldE5lZWRzTGF5b3V0Rm9yYmlkZGVuKCkpOwotICAgICAg
ICB9IGVsc2UgewotICAgICAgICAgICAgaWYgKG8tPm1fbm9ybWFsQ2hpbGROZWVkc0xheW91dCkK
LSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICBvLT5tX25vcm1hbENoaWxkTmVl
ZHNMYXlvdXQgPSB0cnVlOwotICAgICAgICAgICAgQVNTRVJUKCFvLT5pc1NldE5lZWRzTGF5b3V0
Rm9yYmlkZGVuKCkpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKG8gPT0gbmV3Um9vdCkKLSAg
ICAgICAgICAgIHJldHVybjsKLQotICAgICAgICBsYXN0ID0gbzsKLSAgICAgICAgaWYgKHNjaGVk
dWxlUmVsYXlvdXQgJiYgb2JqZWN0SXNSZWxheW91dEJvdW5kYXJ5KGxhc3QpKQotICAgICAgICAg
ICAgYnJlYWs7Ci0gICAgICAgIG8gPSBjb250YWluZXI7Ci0gICAgfQotCi0gICAgaWYgKHNjaGVk
dWxlUmVsYXlvdXQpCi0gICAgICAgIGxhc3QtPnNjaGVkdWxlUmVsYXlvdXQoKTsKLX0KLQogaW5s
aW5lIGJvb2wgUmVuZGVyT2JqZWN0OjpwcmVzZXJ2ZXNOZXdsaW5lKCkgY29uc3QKIHsKICNpZiBF
TkFCTEUoU1ZHKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107154</attachid>
            <date>2011-09-13 02:25:19 -0700</date>
            <delta_ts>2011-09-14 02:00:00 -0700</delta_ts>
            <desc>Patch 2</desc>
            <filename>bug-67989-20110913182517.patch</filename>
            <type>text/plain</type>
            <size>7119</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTUwMDkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlMWI5ODVjNDU1ZGVkZDNh
MGI1Yjg2NWZkNWY4ZmY5ZGU4NzI5MWFmLi44ODc5ZmI2ZTBhZjRmN2NlYTBhYWNhODljYzg3NGMw
ODhiOGU5ZWFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDktMTMgIEtlbnQg
VGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgorCisgICAgICAgIE1vdmUgUmVuZGVyT2JqZWN0
OjptYXJrQ29udGFpbmluZ0Jsb2Nrc0ZvckxheW91dCgpIHRvIFJlbmRlck9iamVjdC5jcHAuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02Nzk4OQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0
cyBiZWNhdXNlIG9mIG5vIGJlaGF2aW9yIGNoYW5nZS4KKworICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6b2JqZWN0SXNSZWxheW91dEJvdW5k
YXJ5KTogTW92ZWQgZnJvbSBSZW5kZXJPYmplY3QuaC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ck9iamVjdDo6bWFya0NvbnRhaW5pbmdCbG9ja3NGb3JMYXlvdXQpOiBNb3ZlZCBmcm9tIFJlbmRl
ck9iamVjdC5oCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oOgorCiAyMDExLTA5
LTEyICBKYWNreSBKaWFuZyAgPHpoYWppYW5nQHJpbS5jb20+CiAKICAgICAgICAgU2V0dGluZyBk
b2N1bWVudC50aXRsZSBkb2Vzbid0IGFmZmVjdCBjb250ZW50cyBvZiB0aXRsZSB0YWcgb2YgWEhU
TUwgZG9jdW1lbnRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
T2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCmlu
ZGV4IDEyNjkyM2Q1YTBiMTllODM4NGMyYWQ5MzllMmUwZTY2YTMxMDY1OWEuLmFhODcyY2I0NmQ4
ZjQzYTI3YjAzMzg0NDE2ZmI2OGM5Mjc0M2ZmNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJPYmplY3QuY3BwCkBAIC01ODQsNiArNTg0LDY5IEBAIFJlbmRlckJsb2NrKiBSZW5k
ZXJPYmplY3Q6OmZpcnN0TGluZUJsb2NrKCkgY29uc3QKICAgICByZXR1cm4gMDsKIH0KIAoraW5s
aW5lIGJvb2wgb2JqZWN0SXNSZWxheW91dEJvdW5kYXJ5KGNvbnN0IFJlbmRlck9iamVjdCAqb2Jq
KQoreworICAgIC8vIEZJWE1FOiBJbiBmdXR1cmUgaXQgbWF5IGJlIHBvc3NpYmxlIHRvIGJyb2Fk
ZW4gdGhpcyBjb25kaXRpb24gaW4gb3JkZXIgdG8gaW1wcm92ZSBwZXJmb3JtYW5jZS4KKyAgICAv
LyBUYWJsZSBjZWxscyBhcmUgZXhjbHVkZWQgYmVjYXVzZSBldmVuIHdoZW4gdGhlaXIgQ1NTIGhl
aWdodCBpcyBmaXhlZCwgdGhlaXIgaGVpZ2h0KCkKKyAgICAvLyBtYXkgZGVwZW5kIG9uIHRoZWly
IGNvbnRlbnRzLgorICAgIHJldHVybiBvYmotPmlzVGV4dENvbnRyb2woKQorI2lmIEVOQUJMRShT
VkcpCisgICAgICAgIHx8IG9iai0+aXNTVkdSb290KCkKKyNlbmRpZgorICAgICAgICB8fCAob2Jq
LT5oYXNPdmVyZmxvd0NsaXAoKSAmJiAhb2JqLT5zdHlsZSgpLT53aWR0aCgpLmlzSW50cmluc2lj
T3JBdXRvKCkgJiYgIW9iai0+c3R5bGUoKS0+aGVpZ2h0KCkuaXNJbnRyaW5zaWNPckF1dG8oKSAm
JiAhb2JqLT5zdHlsZSgpLT5oZWlnaHQoKS5pc1BlcmNlbnQoKSAmJiAhb2JqLT5pc1RhYmxlQ2Vs
bCgpKTsKK30KKwordm9pZCBSZW5kZXJPYmplY3Q6Om1hcmtDb250YWluaW5nQmxvY2tzRm9yTGF5
b3V0KGJvb2wgc2NoZWR1bGVSZWxheW91dCwgUmVuZGVyT2JqZWN0KiBuZXdSb290KQoreworICAg
IEFTU0VSVCghc2NoZWR1bGVSZWxheW91dCB8fCAhbmV3Um9vdCk7CisKKyAgICBSZW5kZXJPYmpl
Y3QqIG8gPSBjb250YWluZXIoKTsKKyAgICBSZW5kZXJPYmplY3QqIGxhc3QgPSB0aGlzOworCisg
ICAgYm9vbCBzaW1wbGlmaWVkTm9ybWFsRmxvd0xheW91dCA9IG5lZWRzU2ltcGxpZmllZE5vcm1h
bEZsb3dMYXlvdXQoKSAmJiAhc2VsZk5lZWRzTGF5b3V0KCkgJiYgIW5vcm1hbENoaWxkTmVlZHNM
YXlvdXQoKTsKKworICAgIHdoaWxlIChvKSB7CisgICAgICAgIC8vIERvbid0IG1hcmsgdGhlIG91
dGVybW9zdCBvYmplY3Qgb2YgYW4gdW5yb290ZWQgc3VidHJlZS4gVGhhdCBvYmplY3Qgd2lsbCBi
ZQorICAgICAgICAvLyBtYXJrZWQgd2hlbiB0aGUgc3VidHJlZSBpcyBhZGRlZCB0byB0aGUgZG9j
dW1lbnQuCisgICAgICAgIFJlbmRlck9iamVjdCogY29udGFpbmVyID0gby0+Y29udGFpbmVyKCk7
CisgICAgICAgIGlmICghY29udGFpbmVyICYmICFvLT5pc1JlbmRlclZpZXcoKSkKKyAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgaWYgKCFsYXN0LT5pc1RleHQoKSAmJiAobGFzdC0+c3R5bGUo
KS0+cG9zaXRpb24oKSA9PSBGaXhlZFBvc2l0aW9uIHx8IGxhc3QtPnN0eWxlKCktPnBvc2l0aW9u
KCkgPT0gQWJzb2x1dGVQb3NpdGlvbikpIHsKKyAgICAgICAgICAgIGJvb2wgd2lsbFNraXBSZWxh
dGl2ZWx5UG9zaXRpb25lZElubGluZXMgPSAhby0+aXNSZW5kZXJCbG9jaygpOworICAgICAgICAg
ICAgd2hpbGUgKG8gJiYgIW8tPmlzUmVuZGVyQmxvY2soKSkgLy8gU2tpcCByZWxhdGl2ZWx5IHBv
c2l0aW9uZWQgaW5saW5lcyBhbmQgZ2V0IHRvIHRoZSBlbmNsb3NpbmcgUmVuZGVyQmxvY2suCisg
ICAgICAgICAgICAgICAgbyA9IG8tPmNvbnRhaW5lcigpOworICAgICAgICAgICAgaWYgKCFvIHx8
IG8tPm1fcG9zQ2hpbGROZWVkc0xheW91dCkKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAg
ICAgICAgICBpZiAod2lsbFNraXBSZWxhdGl2ZWx5UG9zaXRpb25lZElubGluZXMpCisgICAgICAg
ICAgICAgICAgY29udGFpbmVyID0gby0+Y29udGFpbmVyKCk7CisgICAgICAgICAgICBvLT5tX3Bv
c0NoaWxkTmVlZHNMYXlvdXQgPSB0cnVlOworICAgICAgICAgICAgc2ltcGxpZmllZE5vcm1hbEZs
b3dMYXlvdXQgPSB0cnVlOworICAgICAgICAgICAgQVNTRVJUKCFvLT5pc1NldE5lZWRzTGF5b3V0
Rm9yYmlkZGVuKCkpOworICAgICAgICB9IGVsc2UgaWYgKHNpbXBsaWZpZWROb3JtYWxGbG93TGF5
b3V0KSB7CisgICAgICAgICAgICBpZiAoby0+bV9uZWVkc1NpbXBsaWZpZWROb3JtYWxGbG93TGF5
b3V0KQorICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIG8tPm1fbmVlZHNTaW1w
bGlmaWVkTm9ybWFsRmxvd0xheW91dCA9IHRydWU7CisgICAgICAgICAgICBBU1NFUlQoIW8tPmlz
U2V0TmVlZHNMYXlvdXRGb3JiaWRkZW4oKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAg
ICBpZiAoby0+bV9ub3JtYWxDaGlsZE5lZWRzTGF5b3V0KQorICAgICAgICAgICAgICAgIHJldHVy
bjsKKyAgICAgICAgICAgIG8tPm1fbm9ybWFsQ2hpbGROZWVkc0xheW91dCA9IHRydWU7CisgICAg
ICAgICAgICBBU1NFUlQoIW8tPmlzU2V0TmVlZHNMYXlvdXRGb3JiaWRkZW4oKSk7CisgICAgICAg
IH0KKworICAgICAgICBpZiAobyA9PSBuZXdSb290KQorICAgICAgICAgICAgcmV0dXJuOworCisg
ICAgICAgIGxhc3QgPSBvOworICAgICAgICBpZiAoc2NoZWR1bGVSZWxheW91dCAmJiBvYmplY3RJ
c1JlbGF5b3V0Qm91bmRhcnkobGFzdCkpCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgbyA9
IGNvbnRhaW5lcjsKKyAgICB9CisKKyAgICBpZiAoc2NoZWR1bGVSZWxheW91dCkKKyAgICAgICAg
bGFzdC0+c2NoZWR1bGVSZWxheW91dCgpOworfQorCiB2b2lkIFJlbmRlck9iamVjdDo6c2V0UHJl
ZmVycmVkTG9naWNhbFdpZHRoc0RpcnR5KGJvb2wgYiwgYm9vbCBtYXJrUGFyZW50cykKIHsKICAg
ICBib29sIGFscmVhZHlEaXJ0eSA9IG1fcHJlZmVycmVkTG9naWNhbFdpZHRoc0RpcnR5OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCmluZGV4IGJmYWE2OTVmYzJjNjM3MDcy
NTBlZmYwNjE4N2Y0MDhhMDBkNGJiYzAuLmZhNzI5YmY0MzkwNmVhYmQ5MGVjNDJkYjlhYjkzNjQ0
YzRmZDg5M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmpl
Y3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKQEAgLTk4
MSw3MCArOTgxLDYgQEAgaW5saW5lIHZvaWQgUmVuZGVyT2JqZWN0OjpzZXROZWVkc1NpbXBsaWZp
ZWROb3JtYWxGbG93TGF5b3V0KCkKICAgICB9CiB9CiAKLWlubGluZSBib29sIG9iamVjdElzUmVs
YXlvdXRCb3VuZGFyeShjb25zdCBSZW5kZXJPYmplY3QgKm9iaikgCi17Ci0gICAgLy8gRklYTUU6
IEluIGZ1dHVyZSBpdCBtYXkgYmUgcG9zc2libGUgdG8gYnJvYWRlbiB0aGlzIGNvbmRpdGlvbiBp
biBvcmRlciB0byBpbXByb3ZlIHBlcmZvcm1hbmNlLgotICAgIC8vIFRhYmxlIGNlbGxzIGFyZSBl
eGNsdWRlZCBiZWNhdXNlIGV2ZW4gd2hlbiB0aGVpciBDU1MgaGVpZ2h0IGlzIGZpeGVkLCB0aGVp
ciBoZWlnaHQoKQotICAgIC8vIG1heSBkZXBlbmQgb24gdGhlaXIgY29udGVudHMuCi0gICAgcmV0
dXJuIG9iai0+aXNUZXh0Q29udHJvbCgpCi0gICAgICAgIHx8IChvYmotPmhhc092ZXJmbG93Q2xp
cCgpICYmICFvYmotPnN0eWxlKCktPndpZHRoKCkuaXNJbnRyaW5zaWNPckF1dG8oKSAmJiAhb2Jq
LT5zdHlsZSgpLT5oZWlnaHQoKS5pc0ludHJpbnNpY09yQXV0bygpICYmICFvYmotPnN0eWxlKCkt
PmhlaWdodCgpLmlzUGVyY2VudCgpICYmICFvYmotPmlzVGFibGVDZWxsKCkpCi0jaWYgRU5BQkxF
KFNWRykKLSAgICAgICAgICAgfHwgb2JqLT5pc1NWR1Jvb3QoKQotI2VuZGlmCi0gICAgICAgICAg
IDsKLX0KLQotaW5saW5lIHZvaWQgUmVuZGVyT2JqZWN0OjptYXJrQ29udGFpbmluZ0Jsb2Nrc0Zv
ckxheW91dChib29sIHNjaGVkdWxlUmVsYXlvdXQsIFJlbmRlck9iamVjdCogbmV3Um9vdCkKLXsK
LSAgICBBU1NFUlQoIXNjaGVkdWxlUmVsYXlvdXQgfHwgIW5ld1Jvb3QpOwotCi0gICAgUmVuZGVy
T2JqZWN0KiBvID0gY29udGFpbmVyKCk7Ci0gICAgUmVuZGVyT2JqZWN0KiBsYXN0ID0gdGhpczsK
LQotICAgIGJvb2wgc2ltcGxpZmllZE5vcm1hbEZsb3dMYXlvdXQgPSBuZWVkc1NpbXBsaWZpZWRO
b3JtYWxGbG93TGF5b3V0KCkgJiYgIXNlbGZOZWVkc0xheW91dCgpICYmICFub3JtYWxDaGlsZE5l
ZWRzTGF5b3V0KCk7Ci0KLSAgICB3aGlsZSAobykgewotICAgICAgICAvLyBEb24ndCBtYXJrIHRo
ZSBvdXRlcm1vc3Qgb2JqZWN0IG9mIGFuIHVucm9vdGVkIHN1YnRyZWUuIFRoYXQgb2JqZWN0IHdp
bGwgYmUgCi0gICAgICAgIC8vIG1hcmtlZCB3aGVuIHRoZSBzdWJ0cmVlIGlzIGFkZGVkIHRvIHRo
ZSBkb2N1bWVudC4KLSAgICAgICAgUmVuZGVyT2JqZWN0KiBjb250YWluZXIgPSBvLT5jb250YWlu
ZXIoKTsKLSAgICAgICAgaWYgKCFjb250YWluZXIgJiYgIW8tPmlzUmVuZGVyVmlldygpKQotICAg
ICAgICAgICAgcmV0dXJuOwotICAgICAgICBpZiAoIWxhc3QtPmlzVGV4dCgpICYmIChsYXN0LT5z
dHlsZSgpLT5wb3NpdGlvbigpID09IEZpeGVkUG9zaXRpb24gfHwgbGFzdC0+c3R5bGUoKS0+cG9z
aXRpb24oKSA9PSBBYnNvbHV0ZVBvc2l0aW9uKSkgewotICAgICAgICAgICAgYm9vbCB3aWxsU2tp
cFJlbGF0aXZlbHlQb3NpdGlvbmVkSW5saW5lcyA9ICFvLT5pc1JlbmRlckJsb2NrKCk7Ci0gICAg
ICAgICAgICB3aGlsZSAobyAmJiAhby0+aXNSZW5kZXJCbG9jaygpKSAvLyBTa2lwIHJlbGF0aXZl
bHkgcG9zaXRpb25lZCBpbmxpbmVzIGFuZCBnZXQgdG8gdGhlIGVuY2xvc2luZyBSZW5kZXJCbG9j
ay4KLSAgICAgICAgICAgICAgICBvID0gby0+Y29udGFpbmVyKCk7Ci0gICAgICAgICAgICBpZiAo
IW8gfHwgby0+bV9wb3NDaGlsZE5lZWRzTGF5b3V0KQotICAgICAgICAgICAgICAgIHJldHVybjsK
LSAgICAgICAgICAgIGlmICh3aWxsU2tpcFJlbGF0aXZlbHlQb3NpdGlvbmVkSW5saW5lcykKLSAg
ICAgICAgICAgICAgICBjb250YWluZXIgPSBvLT5jb250YWluZXIoKTsKLSAgICAgICAgICAgIG8t
Pm1fcG9zQ2hpbGROZWVkc0xheW91dCA9IHRydWU7Ci0gICAgICAgICAgICBzaW1wbGlmaWVkTm9y
bWFsRmxvd0xheW91dCA9IHRydWU7Ci0gICAgICAgICAgICBBU1NFUlQoIW8tPmlzU2V0TmVlZHNM
YXlvdXRGb3JiaWRkZW4oKSk7Ci0gICAgICAgIH0gZWxzZSBpZiAoc2ltcGxpZmllZE5vcm1hbEZs
b3dMYXlvdXQpIHsKLSAgICAgICAgICAgIGlmIChvLT5tX25lZWRzU2ltcGxpZmllZE5vcm1hbEZs
b3dMYXlvdXQpCi0gICAgICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAgICAgby0+bV9uZWVk
c1NpbXBsaWZpZWROb3JtYWxGbG93TGF5b3V0ID0gdHJ1ZTsKLSAgICAgICAgICAgIEFTU0VSVCgh
by0+aXNTZXROZWVkc0xheW91dEZvcmJpZGRlbigpKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAg
ICAgICAgIGlmIChvLT5tX25vcm1hbENoaWxkTmVlZHNMYXlvdXQpCi0gICAgICAgICAgICAgICAg
cmV0dXJuOwotICAgICAgICAgICAgby0+bV9ub3JtYWxDaGlsZE5lZWRzTGF5b3V0ID0gdHJ1ZTsK
LSAgICAgICAgICAgIEFTU0VSVCghby0+aXNTZXROZWVkc0xheW91dEZvcmJpZGRlbigpKTsKLSAg
ICAgICAgfQotCi0gICAgICAgIGlmIChvID09IG5ld1Jvb3QpCi0gICAgICAgICAgICByZXR1cm47
Ci0KLSAgICAgICAgbGFzdCA9IG87Ci0gICAgICAgIGlmIChzY2hlZHVsZVJlbGF5b3V0ICYmIG9i
amVjdElzUmVsYXlvdXRCb3VuZGFyeShsYXN0KSkKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAg
ICBvID0gY29udGFpbmVyOwotICAgIH0KLQotICAgIGlmIChzY2hlZHVsZVJlbGF5b3V0KQotICAg
ICAgICBsYXN0LT5zY2hlZHVsZVJlbGF5b3V0KCk7Ci19Ci0KIGlubGluZSBib29sIFJlbmRlck9i
amVjdDo6cHJlc2VydmVzTmV3bGluZSgpIGNvbnN0CiB7CiAjaWYgRU5BQkxFKFNWRykK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>107304</attachid>
            <date>2011-09-14 01:14:07 -0700</date>
            <delta_ts>2011-09-14 01:14:07 -0700</delta_ts>
            <desc>Performance measurement result</desc>
            <filename>page-cycler.csv</filename>
            <type>text/plain</type>
            <size>13927</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">VGVzdHMsYnVnemlsbGEubW96aWxsYS5vcmcsZXNwbi5nby5jb20saG9tZS5uZXRzY2FwZS5jb20s
aG90d2lyZWQubHljb3MuY29tLGx4ci5tb3ppbGxhLm9yZyxteS5uZXRzY2FwZS5jb20sbmV3cy5j
bmV0LmNvbSxzbGFzaGRvdC5vcmcsdmFuaWxsYS1wYWdlLHdlYi5pY3EuY29tLHd3dy5hbHRhdmlz
dGEuY29tLHd3dy5hbWF6b24uY29tLHd3dy5hb2wuY29tLHd3dy5hcHBsZS5jb20sd3d3LmNubi5j
b20sd3d3LmNvbXB1c2VydmUuY29tLHd3dy5kaWdpdGFsY2l0eS5jb20sd3d3LmViYXkuY29tLHd3
dy5leGNpdGUuY29tLHd3dy5leHBlZGlhLmNvbSx3d3cuZ29vZ2xlLmNvbSx3d3cuaXBsYW5ldC5j
b20sd3d3Lm1hcHF1ZXN0LmNvbSx3d3cubWljcm9zb2Z0LmNvbSx3d3cubW92aWVmb25lLmNvbSx3
d3cubXNuLmNvbSx3d3cubXNuYmMuY29tLHd3dy5ueXRpbWVzLmNvbSx3d3cubnl0aW1lcy5jb21f
VGFibGUsd3d3LnF1aWNrZW4uY29tLHd3dy5zcGlubmVyLmNvbSx3d3cuc3VuLmNvbSx3d3cudGlt
ZS5jb20sd3d3LnRvbXNoYXJkd2FyZS5jb20sd3d3LnRyYXZlbG9jaXR5LmNvbSx3d3cudm9vZG9v
ZXh0cmVtZS5jb20sd3d3LnczLm9yZ19ET01MMkNvcmUsd3d3LndpcmVkLmNvbSx3d3cueWFob28u
Y29tLHd3dy56ZG5ldC5jb20sd3d3LnpkbmV0LmNvbV9HYW1lc3BvdC5jb20KV2l0aG91dDAsNTQs
OTcsNjYsMzksNzAsNTksNjgsMzksMTAsOTQsMzMsNjMsNjYsMzgsMTA1LDM3LDUwLDQyLDQ0LDY2
LDgsMjMsMjcsMzEsNDIsNTMsNDMsODEsMTAyLDUzLDcxLDIxLDkxLDk3LDU0LDE0NCwxNjcsNjUs
MTksODUsMTA3CldpdGhvdXQxLDI4LDM2LDM0LDI3LDUxLDMyLDMxLDQwLDEwLDQ0LDIyLDMyLDQx
LDE1LDYzLDI5LDI4LDI1LDM3LDM2LDksMjAsMTYsMjAsMjYsNDIsMjAsMzgsNjcsMjMsMzksMTcs
NTMsNTYsMzQsMTEzLDEyNyw0NiwxOSw2MCw1MgpXaXRob3V0MiwyOCw0NywzNiwyOCw1MSwzMywz
MywzMSwxMCw0NiwyMywyNyw0MywxNSw2NSwzMSwyOSwyNywzNywzNiwxMCwxNywxNiwxOSwzMiw0
NSwyMSwzOCw2NiwyNCw0MCwxNSw0NCw2OCwzNCwxMzYsMTIyLDQ1LDE5LDU4LDUxCldpdGhvdXQz
LDI4LDQ2LDM4LDI3LDUxLDMzLDMyLDMyLDEwLDQ2LDIyLDI4LDQ5LDE2LDU5LDMwLDMwLDI2LDM4
LDM3LDgsMTcsMTYsMjAsMjYsNDQsMjAsMzgsNjUsMjYsMzksMTUsNDMsNTUsMzQsMTE4LDEyMiw0
NSwxOSw1OSw1MQpXaXRob3V0NCwyOCw0NiwzNCwyOCw1MSwzMywzMSwzMCwxMCw1MywyMiwyNyw0
MywxNSw2NSwzMCwyOSwyNiwzOSwzNyw5LDE4LDE3LDE5LDI3LDQyLDIxLDM4LDY1LDI0LDQwLDE1
LDQ0LDU1LDMzLDEyMCwxMjMsNDYsMTksNjAsNTAKV2l0aG91dDUsMjgsNDUsMzUsMjcsNTIsMzIs
MzMsMzEsMTAsNTEsMjIsMjcsNTEsMTUsNjQsMzAsMjgsMjUsMzYsMzcsOSwxNywxNiwyMSwyNiw0
MywyMCwzOSw2MywyMyw0NywxNSw0MSw2NiwzMywxMDAsMTIxLDQ0LDE5LDU3LDUwCldpdGhvdXQ2
LDI4LDQ1LDM1LDI4LDUwLDMzLDMxLDQxLDEwLDQ1LDIzLDI3LDQyLDE1LDY0LDI5LDI4LDI2LDQ0
LDM3LDksMTcsMTYsMjAsMzIsNDgsMjAsMzgsNjQsMjQsMzgsMTUsNTAsNTQsMTI3LDk0LDEyMiw0
NCwxOSw1OCw1MQpXaXRob3V0NywyOCw0NSwzNSwyOCw1MSwzMiwzMSwzMCwxMCw1MiwyMywzMyw0
OSwxNCw2MiwyOSwyOCwzMyw0MywzNiw5LDE3LDE2LDE5LDMxLDQyLDIwLDM5LDY1LDI0LDQ4LDE1
LDQxLDU0LDMzLDEyNywxMjEsNDMsMTksNTcsNTAKV2l0aG91dDgsMjgsNDUsNDIsMzcsNTEsMzIs
MzEsMzAsOSw0NSwyMiwyNyw0MSwxNSw1OSwzMCwyNywyNSwzOCwzNyw5LDE3LDE2LDIwLDI1LDQz
LDE5LDM3LDY0LDI0LDM5LDE1LDQxLDU0LDMyLDExMiwxMjAsNDMsMTksNTcsNTAKV2l0aG91dDks
MjcsNDUsMzUsMjcsNTEsMzMsMzEsMzAsMTAsNTIsMjMsMjcsNDEsMTUsNTgsMjksMjcsMjUsMzcs
MzcsOSwxNywxNiwxOSwyNSw0MywyMCwzNyw2NCwyNCw0OCwxNSw0Niw2NSwzMywxNjUsMTIwLDQz
LDE4LDU3LDUwCldpdGgwLDE0MSwxMTIsNjUsNDgsODAsNTksNzgsNDEsMTEsODMsMzgsNDIsNzEs
MjksMTAzLDkwLDUxLDUyLDU3LDY0LDksMzEsMjcsMTk1LDQ0LDU5LDM1LDk3LDEwMSw5Niw4MCwy
NCwxMTAsOTUsNTMsMTg4LDE2OSw2OCwyMSw5NSwxMDAKV2l0aDEsMjcsNDQsMzYsNDAsNTAsMzIs
MzAsMzAsMTAsNDQsMjIsMzcsNDIsMTQsNTgsMjksMjgsMjUsMzcsMzcsOSwxNywxNywyMCwzMSw0
OCwyMSwzOSw2NCwyNCwzOSwxNiw0MSw1NCwzMywxMDgsMTI0LDQ0LDE5LDU4LDUxCldpdGgyLDI4
LDQ0LDM1LDI4LDUwLDMzLDMxLDI5LDEwLDQ1LDIyLDI3LDQ5LDE1LDU4LDMwLDI3LDI1LDM3LDM2
LDgsMTgsMTcsMjAsMjYsNDQsMTksNDQsNjUsMjMsMzksMTUsNTAsNTQsMzIsMTIzLDEyMiw0Mywx
OSw1Nyw1MApXaXRoMywyOCw0NCwzNSwzOCw1MCwzMiwzMSwzMCwxMCw0NSwyMiwyNyw0MiwxNSw2
NSwyOSwyOCwyNiwzNywzNiw4LDIwLDE2LDIwLDI2LDQzLDIwLDM4LDY1LDI0LDQwLDE1LDUwLDY2
LDMyLDEzNiwxMjAsNDQsMTgsNTgsNTEKV2l0aDQsMjgsNDQsMzQsMjgsNTAsMzIsMzEsMzAsMTAs
NDQsMjIsMjYsNDEsMTQsNTgsMzAsMjgsMjUsMzcsMzYsOSwyMCwxNiwyNSwyNSw0MywyMCw0NCw2
NCwyNCw0OCwxNSw0OCw1MywzMywxMDMsMTIwLDQ0LDE5LDU4LDUwCldpdGg1LDI4LDQ1LDM1LDI4
LDQ5LDMyLDMxLDQwLDEwLDQ0LDIyLDMyLDQxLDE2LDU4LDI5LDI4LDI1LDM3LDM3LDksMTcsMTYs
MjAsMjcsNDMsMTksMzcsNjUsMjMsMzgsMTUsNTAsNjUsMzMsMTE4LDEyMSw0NCwxOSw1Nyw1MApX
aXRoNiwyOCw0NCwzNCwyNyw0OSwzMSwzMCw0MSwxMCw0NCwyMiwyNiw0MSwxNSw1OCwzMCwyNywy
NSwzNywzNiw5LDE3LDE2LDE5LDI2LDQzLDIwLDM5LDY4LDI0LDQ5LDE3LDQ3LDY0LDMzLDEzNSwx
MjMsNDYsMTksNTksNTAKV2l0aDcsMjgsNDUsMzgsMjgsNTksMzMsMzEsMjksMTAsNDUsMjIsMjgs
NDgsMTcsNTksMzAsMjgsMjUsMzgsMzcsOSwxOCwxNywyMCwyNyw0NCwyMCwzOCw2NSwyNSw0OSwx
NSw0MSw1NSwzNCwxMzUsMTIxLDQ0LDE5LDU4LDUwCldpdGg4LDI3LDQ1LDM0LDI3LDUwLDMxLDMx
LDI5LDksNTIsMjIsMjYsNDEsMTUsNTksMjksMjcsMjYsMzcsMzYsOSwxNywxNiwyMCwyNSw0Mywy
MCwzNyw2NCwyMywzOCwxNiw0MSw1MywzMiwxMTksMTE5LDQzLDE5LDU3LDQ5CldpdGg5LDI4LDQ0
LDM3LDI3LDU4LDMyLDMxLDMxLDEwLDQzLDIyLDI2LDQxLDE1LDU4LDI4LDI3LDI1LDM3LDQ2LDks
MTcsMTgsMTksMjYsNDMsMjAsMzgsNjQsMjMsMzksMTUsNTAsNjYsMzIsMTQ3LDExOSw0NCwxOCw1
Nyw0OQoKVGVzdHMsMTI2LmNvbSwyY2gubmV0LDZwYXJrLmNvbSxhZmZpbGkubmV0LGFsbGVncm8u
cGwsYXBlaGEucnUsYmFpZHUuY29tLGJicy53ZWZvbmcuY29tLGJsb2cuc2t5cm9jay5jb20sY21m
dS5jb20sY24ueWFob28uY29tLGNvbnRyYS5ncixkdGlibG9nLmNvbSxlbC53aWtpcGVkaWEub3Jn
LGVsbXVuZG8uZXMsZXR0b2RheS5jb20sZXhibG9nLmpwLGV4Y2l0ZS5jby5qcCxmYzIuY29tLGZv
cmEucGwsZnJlZS5mcixnb2xlbS5kZSxnb28ubmUuanAsaGFiZXJ0dXJrLmNvbSxoYXRlbmEubmUu
anAsaG9tZS5hbHRlcnZpc3RhLm9yZyxodXJyaXlldC5jb20udHIsanVnZW0uanAsa2FrYWt1LmNv
bSxtaXhpLmpwLG5hZnRlbXBvcmlraS5ncixuYXJvZC55YW5kZXgucnUsbmV3cy4xNjMuY29tLHBh
cnR5ZmxvY2submwscGNob21lLmNvbS50dyxwaG9lbml4dHYuY29tLHBob3RvZmlsZS5ydSxwbC53
aWtpcGVkaWEub3JnLHJpY2FyZG8uY2gscnUud2lraXBlZGlhLm9yZyxydXRlbi5jb20udHcsc3Bv
cnQyNC5ncix0ZXJyYS5lcyx1ZG4uY29tLHV3YW50cy5jb20sdm9pbGEuZnIsd3d3LmFsaWNlLml0
LHd3dy5hbWF6b24uY28uanAsd3d3LmF1Y3Rpb24uY28ua3Isd3d3LmNoaW5hcmVuLmNvbSx3d3cu
Y2hvc3VuLmNvbSx3d3cuZGFuYXdhLmNvbSx3d3cuZGF1bS5uZXQsd3d3LmRjaW5zaWRlLmNvbSx3
d3cuZWFzdG1vbmV5LmNvbSx6b2wuY29tLmNuCldpdGhvdXQwLDc5Niw0MSw5NjMsNTYsMTI5LDE2
Niw0Miw0NDcsMTI3LDEwNTAsNDAzLDEyOSw1MDMsMjEzLDEzMiw3NjcsMzA5LDI1Nyw0NjAsMTcx
LDEwMywxMDIsNTA1LDI1MiwxOTEsNzAsMjM0LDM2OSwyNTEsNTksMjk4LDUzLDEwNDcsNjMsNTEw
LDYwOCwxODYsMjQ2LDUxLDE4NCwzMzYsMTI1LDEzMSw1MzAsMzUxLDEyNCwxMjQ3LDE0NSw3MTEs
NTM0LDY2MCw3NDksNDQxLDQyNywyMTcsNjgyCldpdGhvdXQxLDUwLDEwLDM3MSwzOCwxMTQsNzAs
MTEsMjA2LDExOSwzMTYsMTc2LDcwLDI2NywxMDUsNjQsNDQ4LDIwMyw1MCwyNTQsMTA1LDg3LDcx
LDM4MywxNzQsNTQsMTI3LDE0NCwyMzcsMTc0LDQyLDI2NywyOSw2NDQsNTUsOTksMzQ4LDE2Nywx
MzksNjAsOTksMjc3LDE1NiwxMzksNDAwLDI4NiwxMTQsMzY4LDExMCw0OTMsNDUyLDUwNSw1MDEs
MjQzLDI4OCwxOTAsNjc0CldpdGhvdXQyLDc0LDMyLDU2NiwzOCwxMTUsODgsMTIsMjA5LDEzMCwz
NTAsMTkwLDcxLDMwMCwxMDcsODcsNTgxLDIyOSw4MiwyNzUsMTQ3LDg2LDQ4LDM1NiwxNzIsNzMs
MTg0LDE0NSwyNzYsMTY3LDM4LDI2NCw0Myw3NDUsNTQsMTA0LDM2MywxNTMsMjI3LDQyLDEzNiwx
MzYsMTM4LDEyNyw0MDIsMjM2LDEwNywyOTEsMTE0LDUwMSw0MDAsNTAyLDUwMiwyNDMsMjkwLDE1
NSw1NTgKV2l0aG91dDMsNTQsMjcsNDAzLDM5LDExNSw3MiwxMiwyMzUsMTIwLDMyNCwxOTMsNzEs
Mjc0LDEwNyw2NSw0MzMsMjIwLDYzLDI0Niw4Miw4NCw2MywzNTUsMjcwLDEzOSw1MCwxNDUsMjkz
LDE2OSwzOCwyMzUsNDIsODA1LDUzLDExNiwzNjksMTk4LDEzNiw0MywxMzUsMTY0LDE2MywxMjEs
Mzg5LDI4MCwxMDgsNDE5LDEwOSw0NzksNDI3LDQ4OSw1ODYsMjQ0LDI5NSwyODksNTYzCldpdGhv
dXQ0LDU5LDE3LDQ2Niw1MSwxMTksNjAsMTMsMjA5LDEyNSwzNDYsMTg2LDcxLDMwOSwxMDYsODks
NTgyLDIxNiw3MCwyNjYsMTU2LDg4LDUzLDM4MSwxNzQsNjQsNTAsMTQyLDMyMSwxNzksNTcsMjcz
LDMwLDY3NSw1MywxMTAsMzYwLDE2NSwyMjcsNTgsOTYsMTM1LDE0OSwxNDEsMzc3LDI0MiwxMDgs
NDEwLDExMiw0ODksNDA1LDUxMCw1MDEsMzQ1LDMwNSwyMTEsNDk2CldpdGhvdXQ1LDU3LDIyLDQ4
OSwzOCwxMTEsNzksMTIsMjM0LDExOCwzMzAsMTkzLDcyLDI4OCwxMDgsMTc3LDQ4NiwyNTMsNjYs
Mjg0LDEwMyw5Niw0NywzODQsMTc0LDEyMyw1MSwxNDYsMjg2LDE3MSwzNywyNzcsMzEsNzA5LDEz
NiwxNTAsMzY2LDE3NSwxMzUsNDMsMTM2LDE0OSwxNjgsMTgyLDM4NywyNzUsMTE1LDE5OCwxMTAs
NDMyLDQ2MCw2MzIsNDk3LDI1OSwyOTAsMTg5LDUxMwpXaXRob3V0Niw1OCwxMSw0MDIsNDAsMTA5
LDc1LDEyLDI0MCwxMTQsMzI4LDE4NCw3MiwyOTcsMTA5LDE4Myw2MTEsMjU4LDg4LDI2OCw3OSw4
OSw1OCwzNTcsMTc2LDY0LDUxLDE0NCwzMTIsMjQ0LDMwLDIzOSw0MSw2NjcsMTQzLDEwNSw0MTUs
MTcxLDEzNyw0MSwxMzQsMTMyLDEzNiwxNjcsMzgyLDI0NSwxMDUsMzU0LDExMyw0NDcsNTQ5LDQ3
Nyw1MDAsMjU2LDI4NSwxODQsNTA3CldpdGhvdXQ3LDYyLDIyLDQ4NCw0MCwxMTIsNzYsMTEsMjUz
LDExNywzNjMsMTk4LDcxLDI5NywxMDgsMTg1LDQ5MiwyNDUsNTYsMjkzLDEwNiw4Nyw2MiwzNTYs
MTc2LDY4LDUxLDE0NywyMzUsMTcwLDM3LDI0NSwzMSw3OTIsMTQ0LDEwOSw0MDMsMTg0LDEzMyw1
OCw5OCwxNDgsMTUwLDEyMywzOTAsMjc3LDExMiwxOTksMTExLDQ0OSw1MDksNTUxLDUwMywyNTUs
MjkyLDE3Miw1NjEKV2l0aG91dDgsNTYsMjgsNDQ5LDQ4LDEyNyw3NCwxMiwyMzgsMTMwLDMzMCwx
OTQsNzEsMzAzLDEwNywxODUsNTkxLDI1NCw4MCwyNTksMTA0LDk3LDQ4LDM3NCwxODIsMTU3LDUw
LDE0NSwzMjUsMTY5LDEzOCwxNzksNDMsNzYxLDEzOSwxMjgsNDA5LDE2OCwxNDAsNTgsOTYsMTgw
LDE3NiwxMjgsNDEwLDI4NiwxMTAsMTYwLDExMiw0NDQsNDE4LDU5Miw0OTYsMjM3LDI4MywyNzIs
NTQ5CldpdGhvdXQ5LDYwLDE2LDQyNSwzOSwxMDgsNzYsMTIsMjU0LDk3LDM2OSwxODcsNzIsMjk0
LDgyLDE3Niw0NjAsMjI2LDY5LDI5MSwxMDUsODksNjAsMzU1LDE3OCwxMzYsNTEsMTQ1LDI4NSwx
NzYsMzksMjYxLDMwLDY3OSwxMzYsMTAzLDM3NCwxNzUsMTAyLDQyLDEzMiwxMTQsMTY1LDE2NSwz
OTYsMjQzLDExMCwzNzAsMTA5LDYwOSw0NDgsNTA5LDUwMywyNjIsMjkxLDE4Niw0NzcKV2l0aDAs
WzMzNCw0Miw5MTAsNjMsMTU2LDEyOCw5Miw0NjksMTE4LDkxMywyODgsMTI2LDQ2OSwyMzIsMTAx
LDcxMCwyOTQsMjQ2LDQ5MCwxMjQsMTIwLDExNCw2NDcsMjYyLDI0Nyw2OCwyMjQsMzMzLDI0NCwz
MywyNzEsNTMsNzg0LDYzLDU2MSw1NjEsMTk1LDIzMCw1MiwxODYsMzQwLDEyOCwxNTQsNDg0LDM0
OSwxMzUsMTM1NiwxNDUsNjc1LDUzMiw2MDcsNjU1LDM1OCw0MzAsNDU4LDYxMQpXaXRoMSw1Mywx
MSwzODIsMzgsMTEyLDc0LDExLDIwNiwxMTksMzE2LDE3OSw3MiwyNzIsMTA5LDY1LDQ2MCw1OSw1
NiwyMjcsODQsODksNTUsMzU5LDI0MiwxMTksNTMsMTQxLDIzNSwxNzUsNDMsMjYwLDMwLDYzOCwz
Nyw0NjIsMzQ2LDE0NywxMzAsMTYzLDEwMiwxNzEsMTM5LDE2Miw0MDAsMjg0LDExMSw0MTMsMTEx
LDU1OSw0NzEsNTA3LDUwMywzMzYsMzAzLDMwMCw1NDEKV2l0aDIsNjIsMzEsNTI1LDM5LDEwOSw2
MywxMywyMDksMTIyLDM0MCwxOTEsNzMsMjk5LDEwOSwxNzQsNTc2LDI3MSw4MiwyOTYsMTA0LDg3
LDQ5LDM3MCwxNzUsNzQsNTEsMTQ4LDMwMCwxNzEsNDEsMjYwLDQ0LDcyMSwxMzEsMTAzLDQ1NCwx
NjgsMTM3LDQyLDEzMywxMzAsMTQ4LDEwOSwzNzksMjM4LDEwNywyMjcsMTEzLDQ0NCwzOTksNDc3
LDU4OSwyMzQsMjg3LDE0MSw0OTEKV2l0aDMsNTQsMjcsNDA2LDM4LDExMSw3MywxMSwyODAsMTEx
LDM1OSwxOTYsNzIsMjkzLDEwOSw5MSw0MzcsMjE3LDY0LDI2NiwxNjUsODcsNTYsMzYwLDE3Nywx
NTIsNTIsMTUxLDE0MSwxNzksNTUsMjQyLDMwLDgxMSwzOCwxMTgsNDcxLDE4MCwxMzMsNjAsOTcs
MTY0LDE1NSwxNDAsMzg4LDI4NCwxMDksMjA1LDExMSw1MTIsNTg2LDUzOCw0OTMsMjUzLDI4OSwy
MTIsNTMxCldpdGg0LDU3LDE1LDQwOCwzNiwxMTAsNzgsMTEsMjA2LDExNCwzMzMsMTg1LDcwLDMw
MiwxMDUsMTc3LDYxOSwyMzUsOTEsMjgwLDg3LDk2LDc3LDM2MywxNzcsMTQ0LDUxLDE0OCwyNDgs
MTc0LDUwLDI3Nyw0MSw2NzksMTM5LDEwOCwzNTgsMTg4LDEzMSw0MiwxMzEsMTI5LDE0MCwxNjgs
NDEzLDI0MCwxMDMsMTc4LDExMSw0NDMsMzk0LDU3MSw0OTEsMjMwLDI3NiwxOTcsNDY3CldpdGg1
LDU0LDE2LDQ5NSw1MiwxMTYsNjEsMTEsMjMzLDg4LDMyMiwxODgsNzAsMjcwLDEwNiwxODEsNDc4
LDI3Niw1NSwzMDEsODAsODcsNTksMzU5LDE3OCwxNDksNTEsMTQ4LDMxOCwxNzksMzcsMjYyLDQx
LDcxNCwxNDIsMTU0LDQ0NSwxNzksMTQwLDYwLDk4LDE0MCwxODIsMTQxLDM5NCwyNzMsMTExLDM4
MiwxMDksNDY3LDYwNyw1MzksNTAyLDI1MSwyOTIsMTkxLDUzNgpXaXRoNiw1OCwyNyw0MDIsMzgs
MTEwLDc4LDEyLDI0OCwxMTMsMzY4LDE4NCw3MSwzMjAsMTEwLDE4Miw2MTEsMjI0LDg2LDI1Nyw4
MSw4OCw1OSwzNjAsMTgxLDc5LDUwLDE0MCwyOTMsMTY5LDk0LDI2Miw0NCw3MTcsMTQ0LDEwNSwz
ODIsMTY3LDE0NSw0NCwxMzYsMTMzLDE1NiwxMzcsNDA4LDI5NSwxMTQsMzQ4LDExNSw0NDcsNTQ2
LDUwNCw0OTMsMjU2LDI3OSwxNzcsNTEwCldpdGg3LDYwLDE5LDQ5NCw0MSwxMTIsNzYsMTIsMjM5
LDExNCwzMzIsMTk3LDc0LDI5MCwxMDksMjMzLDQ5OSwyMzcsNzQsMjk1LDk5LDg3LDQ2LDM1OSwx
NzcsMTQ0LDUxLDE0NywyNDAsMTc3LDM5LDI0OSwzMSw3ODcsMTQ0LDExMCwzODcsMTQzLDEzNCw2
MCw5OCwxNTAsMTU3LDEzNywzOTMsMjg1LDExMSw2NTksMTEwLDE5MDksNDIxLDYzOCw1MTEsMjM5
LDMwMCwxOTMsNTQ0CldpdGg4LDU1LDE3LDM5NSwzOSw5Nyw3MiwxMiwyMTAsMTEyLDMzOCwxOTcs
NzIsMzEzLDExMSwxOTMsNjE2LDIyNyw4MCwyNjYsODIsOTAsNTAsMzkxLDE4MiwxNTgsNTIsMTUw
LDI5MywxODIsNDIsMjg4LDQxLDc2OCwxNDYsMTMxLDM4MCwxNjUsMTQwLDU2LDk0LDE4MCwxODMs
MTQxLDQwMywyODMsMTA5LDMxNCwxMTQsNDUwLDU5Nyw1NDUsNDkxLDI0MSwyODQsMTk5LDUxOQpX
aXRoOSw1NiwyOSw0MjgsMzgsMTEzLDc2LDExLDIzOCwxMTAsMzMyLDE4MCw3MCwyNzksMTA5LDY1
LDU4MiwyNTUsNjIsMjk4LDgzLDg4LDU2LDM1OSwxNzYsNjcsNTEsMTQ4LDMyMSwxNzEsMzgsMjUx
LDQyLDY4NywxMzgsMTEwLDQxNSwxNDIsMTMxLDQxLDEzMywxMTQsMTM1LDE0OSwzNzYsMjUxLDEx
MSwyMDQsMTExLDczOCw0MzcsNTA2LDUwNSwyNDEsMjg2LDE3MSw0OTQKClRlc3RzLGFyYWJpY25l
d3MuZ29vZ2xlLmNvbSxibi53aWtpcGVkaWEub3JnLGV4dGVlbi5jb20sZmFyc25ld3MuY29tLGhp
bmRpLndlYmR1bmlhLmNvbSxpbi50ZWx1Z3UueWFob28uY29tLGlzbmEuaXIsa2Fwb29rLmNvbSxr
b29vcmEuY29tLG1hbmFnZXIuY28udGgsbWFzcmF3eS5jb20sbWwud2lraXBlZGlhLm9yZyxtc24u
Y28uaWwsbmV3cy5iYmMuY28udWssbmV3cy5nb29nbGUuY29tLHNoM2J3YWguY29tLHNna2FsZXNo
LmJsb2dzcG90LmNvbSx0YXB1ei5jby5pbCx0aGFpbWlzYy5jb20sdmlldG5hbW5ldC52bix2bmV4
cHJlc3MubmV0LHdhbGxhLmNvLmlsLHd3dy5hbGpheXlhc2gubmV0LHd3dy5iYmMuY28udWssd3d3
Lmdvb2dsZS5jb20uc2Esd3d3LmlzbGFtd2ViLm5ldCx3d3cubXRoYWkuY29tLHd3dy5zdGFydGlt
ZXMyLmNvbSx3d3cuamFncmFuLmNvbSx5bmV0LmNvLmlsCldpdGhvdXQwLDcwMywyOTIsMzE4LDM4
NiwzODEsMjAyLDYyNyw1NzksNTEwLDgyNiw0MDEsMjQxLDI1OSwxOTksNDA1LDQxMiwzMTUsMTU1
LDMxMiwxOTIsMTMwLDkwLDMwOSwxOTYsMTYsNDQ5LDYzMyw5MDcsMzYzLDI2NwpXaXRob3V0MSwz
ODUsMTIxLDEzNCwyNDksMjc2LDY0LDI5NywzMDQsMzE1LDY2MSwxOTMsMTYyLDE3NSwxMjcsMzIx
LDM2NywyNTUsOTAsMTY2LDE1MCw4Nyw2NiwyNTYsNzIsMTUsMjE2LDQzNSw1MjUsMzA1LDE5MgpX
aXRob3V0MiwzODksMTE5LDEzNCwyNTIsMjgzLDc1LDI5NywzMDIsMzE3LDY2MiwxOTgsMTYyLDE3
NSwxMjcsMzI0LDM5MSwyNTQsODgsMTYxLDE0Niw4OSw2NSwyNTIsMTQwLDE0LDI1MSw0NDEsNTIw
LDMwMywxOTMKV2l0aG91dDMsMzg2LDExOSwxMzIsMjU0LDI4Miw3NywyOTgsMzExLDMxOSw2NTks
MTk2LDE2MCwyMjksMTI1LDMyMiwzNjcsMjU3LDg5LDE4NywxNDcsODMsNjYsMjQ4LDEzMSwxNSwy
MTgsNDQ2LDUyOCwzMDUsMTk1CldpdGhvdXQ0LDM4NywxNDQsMTA0LDI1NSwyNzksNjQsMjk4LDMx
MywzMTgsNjY0LDE5OCwxNjQsMTc4LDEyNiwzMjQsMzcwLDI1Nyw4OSwxNzIsMTQ5LDg5LDY4LDI1
OCw3MSwxNSwyMTcsNDQxLDUyNCwzMDAsMTg5CldpdGhvdXQ1LDM4NiwxNDIsMTMxLDI1MiwyODEs
NjQsMjk2LDMxNiwzMTcsNjcwLDE5NiwxNjIsMTc3LDEyNCwzMjEsMzYyLDE1MCw4OCwxNzcsMTQy
LDg3LDY1LDI0Nyw1MSwxNCwzMTEsNDQyLDUyMiwyOTksMTg4CldpdGhvdXQ2LDM4NiwxNDEsMTMy
LDI1NSwyNzksNzksMjk4LDMwOSwzMTYsNjYwLDE5NSwxNjIsMTc0LDEyNywzMjIsMzc0LDE2OCw4
NywxNjMsMTM0LDg5LDY2LDI1Myw1MiwxNSwyMjIsNDQwLDUyMywzMDYsMTkwCldpdGhvdXQ3LDM4
NywxNDMsMTQyLDI1NCwzMzAsNjQsMjk3LDMwNiwzMTcsNjY0LDE5NSwxNjEsMTczLDEyMywzMjIs
MzU0LDE1MSw4OSwxNjQsMTQ0LDgyLDY1LDI3MSwxMzgsMTUsMjk3LDQzOSw1MjMsMzAyLDE5MgpX
aXRob3V0OCwzODcsMTQxLDE0MSwyNTYsMjc3LDc2LDI5OSwzMTIsMzE2LDY1OCwxOTcsMTYwLDE3
MywxMjMsMzIwLDM2NCwxNTUsODksMTc1LDE0Niw4Niw2NCwyNDcsMTA3LDE0LDIyMSw0MzgsNTIx
LDMwNiwxOTIKV2l0aG91dDksMzg3LDE0MywxMDEsMjU2LDI3OSw3NywyOTgsMzA1LDMxOSw2NzIs
MTk4LDE2MSwxNzcsMTI2LDMyMSwzNzIsMTY3LDg5LDE1OSwxNDgsODgsNjQsMjQ4LDEzOCwxNCwz
MDcsNDQxLDUyMiwzMDAsMTkwCldpdGgwLDcxNCwyNzIsMzkxLDM3NSwzODEsOTQsNjI0LDU5MSw1
MjIsMTAxMiw0MTUsMjQyLDI1NywyMDEsNDA1LDM5OSwzMTMsMTUyLDI4NiwxNzEsMTMxLDg3LDI5
OSwxMDIsMTUsMjQ4LDY1Niw5MDIsMzYzLDI2NQpXaXRoMSwzODYsMTIyLDEzMiwyNDgsMjc2LDc1
LDI5NSwzMDUsMzEzLDY2NywxOTEsMTYwLDE3MiwxMjYsMzE5LDM2MSwxNDgsOTAsMTc0LDE1MCw4
Nyw2NSwyNTUsNzUsMTUsMjI0LDQzOCw1MjEsMzA2LDE4OQpXaXRoMiwzODUsMTE5LDEyNywyNTEs
MjgwLDc2LDI5Myw0MDQsMzE3LDY1OSwxOTYsMTYxLDE3OSwxMjQsMzE5LDM2MiwxNjksODgsMTY0
LDE0Nyw4OCw2NSwyNTIsMTM3LDE0LDMyOSw0NDEsNTIyLDMwMCwxOTAKV2l0aDMsMzg1LDExOSw5
OCwyNTQsMjgwLDc2LDI5NiwzMTIsMzE2LDY2NCwxOTYsMTYxLDE3NiwxMjQsMzIwLDM2OSwyNTQs
ODgsMTU4LDE0MCw4Miw2NSwyNDYsMTM3LDE0LDMzOCw0MzcsNTE4LDMwMiwxOTQKV2l0aDQsMzg1
LDE0MiwxNDEsMjYwLDI3OCw3NiwyOTUsMzExLDMxNiw2NTgsMTk3LDE1OSwxNzQsMTI0LDMyMiwz
NzAsMjU0LDg5LDE3NywxNDcsODksNjgsMjUwLDExMywxNSwyMjYsNDM5LDUyMCwzMDIsMTg5Cldp
dGg1LDM4NSwxNDQsMTM5LDI1NCwyODQsNzgsMjk1LDMwNSwzMTcsNjY2LDE5OCwxNjMsMTc0LDEy
NCwzMjAsMzYzLDE2OCw4OCwxNTgsMTQzLDg2LDY0LDI0MywxMTksMTUsMjIyLDQzOCw1MTgsMzAz
LDE5MgpXaXRoNiwzODcsMTQ0LDEzNCwyNTIsMjgxLDc2LDI5NiwzMTQsMzE2LDY2NCwxOTYsMTYy
LDE3MywxMjQsMzIxLDM2NiwxNTIsODcsMTc4LDEzNCw4Nyw2NSwyNTEsNzQsMTQsMjI4LDQzNyw1
MTgsMzAxLDE5MwpXaXRoNywzODMsMTQxLDEwNCwyNTIsMjgzLDc1LDI5NCwzMTEsMzE2LDY2Miwx
OTUsMTYwLDE3NiwxMjQsMzE5LDM2MywxNTEsODcsMTYxLDE0MSw4MSw2NiwyNDgsMTI0LDEzLDIz
OSw0MzcsNTIyLDMwMywxOTAKV2l0aDgsMzg1LDE0MywxNDEsMjUyLDI3NSw3NSwyOTYsMzA3LDMx
NCw2NTYsMjAwLDE2MSwxNzUsMTI0LDMyMCwzNjMsMTUzLDg5LDE3MywxNDUsODcsNjYsMjQ4LDE0
MCwxNSwyMjAsNDM2LDUxOCwzMDQsMTg4CldpdGg5LDM4NiwxNDYsMTM0LDI1NSwyODQsNzcsMjk1
LDMwNCwzMTUsNjY3LDE5NiwxNjEsMTcxLDEyNCwzMjMsMzkzLDI1Miw4OCwxNTksMTQ4LDE0OSw2
NywyNDUsNTAsMTQsMzIwLDQ0MSw1MjMsMzAzLDE5MQoKClRlc3RzLGNvbG9yZmFkZSxkaWFnYmFs
bCxmYWRlc3BhY2luZyxpbWFnZXNsaWRlLGxheWVyczEsbGF5ZXJzMixsYXllcnM0LGxheWVyczUs
bGF5ZXJzNixtZXRlcixtb3Zpbmd0ZXh0LG1vemlsbGEscmVwbGFjZWltYWdlcyxzY3JvbGxpbmcs
c2xpZGVpbixzbGlkaW5nYmFsbHMsem9vbQpXaXRob3V0MCw1OTEsNjg0LDkxOCwxNTYsMTUzLDI0
LDI0LDk2LDI2LDQ1MSwzMTcsMTE3MywxNjAsMjAxLDEwNzUsMTExLDIyNwpXaXRob3V0MSw1NzEs
Njg3LDkyMSwxNTUsMTM0LDI0LDI1LDk4LDI1LDQ0OSwzMTYsMTE1MiwxMzcsMTg2LDEwNzIsMTA5
LDIyNQpXaXRob3V0Miw1NzAsNjg3LDkyMiwxNTUsMTUyLDI0LDI0LDk3LDM0LDQ1NCwzMTgsMTE1
MSwxMzQsMTkzLDEwNzIsMTEwLDIyNwpXaXRob3V0Myw1NzUsNjg2LDkyMiwxNTYsMTUzLDI0LDI0
LDEwMywyNiw0NTEsMzE3LDExNDksMTM1LDE4NSwxMDcxLDExMCwyMjcKV2l0aG91dDQsNTcxLDY4
Nyw5MTksMTU2LDE1NCwyNSwyNCw5NywyNiw0NTIsMzIwLDExNTIsMTM2LDE4NywxMDcwLDEwOSwy
MjcKV2l0aG91dDUsNTcwLDY4Myw5MTksMTU2LDEzNiwyNSwyNCw4OSw5NCw0NTMsMzE4LDExNTAs
MTM0LDE5MiwxMDcwLDExMCwyMjQKV2l0aG91dDYsNTc1LDY4Nyw5MjUsMTU3LDE0NSwyNSwyNSwx
MDAsMjUsNDUyLDMxOCwxMTUyLDEzNSwxODUsMTA3MCwxMTAsMjI4CldpdGhvdXQ3LDU3MSw2ODcs
OTIwLDE1NiwxMjcsMjUsMjQsOTcsMjUsNDUzLDMyMCwxMTUxLDEzNSwxODksMTA3MywxMDksMjI1
CldpdGhvdXQ4LDU3NSw2ODIsOTIxLDE1NiwxNDQsMjQsMjQsOTgsMzQsNDU0LDMxOCwxMTUyLDEz
OSwxODQsMTA3MSwxMTAsMjI1CldpdGhvdXQ5LDU3MCw2ODIsOTIxLDE1NiwxMzcsMjQsMjQsMTA3
LDI1LDQ1MywzMTksMTE1MSwxMzUsMTkwLDEwNzIsMTUzLDIyNwpXaXRoMCw1OTIsNjgzLDkxNCwx
NTcsMTU5LDI1LDI1LDk4LDI2LDQ1MywzMTgsMTE3NywxMzIsMjA1LDEwODgsMTEyLDIwOApXaXRo
MSw1NzAsNjgyLDkyMCwxNTUsMTUyLDI1LDI1LDk1LDI1LDQ0OSwzMTcsMTE0NCwxMzYsMTkyLDEw
NjYsMTA5LDIyNApXaXRoMiw1NzAsNjgyLDkxOSwxNTUsMTQ5LDI1LDI1LDk2LDI1LDQ1MCwzMTks
MTE1MCwxMzgsMTkyLDEwNjksMTA5LDIyNApXaXRoMyw1NzAsNjgxLDkyMSwxNTUsMTM3LDI1LDI1
LDk5LDI2LDQ1MiwzMTgsMTE1MywxMzIsMTg3LDEwNzIsMTA5LDIyNgpXaXRoNCw1NzYsNjg1LDky
MiwxNTYsMTQ2LDI0LDI1LDk1LDI1LDQ1MCwzMTksMTE0MiwxMzIsMTkxLDEwNzAsMTA4LDIyNApX
aXRoNSw1NzAsNjgxLDkxNywxNTUsMTM2LDI1LDI0LDk0LDI1LDQ0OSwzMTgsMTE0OCwxMzQsMTg4
LDEwNjgsMTA4LDIyNwpXaXRoNiw1NzAsNjgwLDkxNiwxNTUsMTQ4LDI1LDI1LDk1LDI2LDQ0OSwz
MTcsMTE0OSwxMzQsMTkwLDEwNzEsMTA5LDIyMwpXaXRoNyw1NzAsNjgxLDkyMCwxNTUsMTU1LDI1
LDI0LDk4LDI1LDQ1MSwzMTcsMTE0MywxMzMsMTg4LDEwNjcsMTA4LDIyNQpXaXRoOCw1NjksNjgy
LDkxOCwxNTUsMTUzLDI1LDI0LDk4LDI2LDQ1MCwzMjAsMTE0NywxMzYsMTkxLDEwNjksMTA4LDIy
NgpXaXRoOSw1NzAsNjg2LDkxOCwxNTUsMTM2LDI0LDI0LDk2LDM0LDQ1MywzMTksMTE0NCwxMzYs
MTg1LDEwNjksMTA4LDIyNQoKVGVzdHMsYmxvZy5jaHJvbWl1bS5vcmcsZGV2LmNocm9taXVtLm9y
Zyxnb29nbGVibG9nLmJsb2dzcG90LmNvbTEsZ29vZ2xlYmxvZy5ibG9nc3BvdC5jb20yLHRlc3Qu
YmxvZ3Nwb3QuY29tLHd3dy5pZ29vZ2xlLmNvbSx3d3cudGVjaGNydW5jaC5jb20sd3d3LndlYmtp
dC5vcmcsd3d3LnlhaG9vLmNvbQpXaXRob3V0MCwxOTE2LDI4MywxMTYsMjEyLDMzNSwzMTIsMzA0
LDIxOSwyMzMKV2l0aG91dDEsMjk2LDI1MSw4NiwxNjcsMjgwLDIwNiwyMTcsMTk3LDE0MwpXaXRo
b3V0MiwyOTQsMjUxLDg0LDE2MywyNzksMjE4LDIxMiwxOTcsMTM5CldpdGhvdXQzLDI2NCwyNTMs
ODUsMTYzLDI4MiwyMTQsMjExLDE5NywxNDMKV2l0aG91dDQsMjY1LDI1OSw4NiwxNjksMjc5LDIx
NSwyMTUsMTk2LDE0NgpXaXRob3V0NSwyNjcsMjUwLDg1LDE1OCwyODMsMjE3LDIxNCwxOTcsMTQz
CldpdGhvdXQ2LDI2NCwyNTIsODYsMTcwLDI4MiwyMTgsMjE0LDE5NiwxNDUKV2l0aG91dDcsMjY0
LDI1Miw4NywxNjMsMjgzLDIwNywyMTAsMTk3LDE0MgpXaXRob3V0OCwyNjMsMjUxLDgzLDE2OCwy
ODAsMjA2LDIxMiwxOTYsMTQ0CldpdGhvdXQ5LDI2MiwyNTIsODUsMTYxLDI4MCwyMDMsMjEwLDE5
NiwxNDUKV2l0aDAsMTQzMCwyODUsMTE4LDIyOCwzMzcsMzY4LDMwNCwyMjAsMjMxCldpdGgxLDI5
NiwyNTMsODYsMTY1LDI4MywyMDgsMjE4LDE5NywxNDQKV2l0aDIsMjYyLDI1MCw4NCwxNTQsMjc4
LDIxMywyNDEsMTk2LDEzOQpXaXRoMywyNjIsMjUxLDg0LDE2NiwyODcsMjA0LDIxNCwxOTYsMTQz
CldpdGg0LDI5NiwyNTEsODUsMTYzLDI3OSwyMDMsMjExLDE5NSwxNDMKV2l0aDUsMjY0LDI1MCw4
NCwxNjcsMjc4LDIwMywyMTIsMTk1LDE0NApXaXRoNiwyOTYsMjUwLDg0LDE2MSwyNzgsMjAxLDIx
MywxOTYsMTQ0CldpdGg3LDI2MywyNTAsODQsMTY0LDI4MCwyMDIsMjEzLDE5NiwxNDUKV2l0aDgs
ODI0LDI1MSw4NCwxNzAsMjgwLDIwMywyMTEsMTk2LDE0NQpXaXRoOSwyNjQsMjUwLDg2LDE1OCwy
NzksMjAzLDIwOCwxOTYsMTYzCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107308</attachid>
            <date>2011-09-14 01:55:59 -0700</date>
            <delta_ts>2011-09-20 22:37:55 -0700</delta_ts>
            <desc>Patch 3</desc>
            <filename>bug-67989-20110914175557.patch</filename>
            <type>text/plain</type>
            <size>7273</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTUwNzIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAwNzcwMmM3OTU4YmM0MjY2
NGE5NWFhMGIyNzE2MWEzODhhZmZlYmJmLi45NGIzNzYxNGViOGE4NzczNmUyNmNhYWNhYWYzZGI4
ODA4NDEwYTY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDktMTMgIEtlbnQg
VGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgorCisgICAgICAgIE1vdmUgUmVuZGVyT2JqZWN0
OjptYXJrQ29udGFpbmluZ0Jsb2Nrc0ZvckxheW91dCgpIHRvIFJlbmRlck9iamVjdC5jcHAuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02Nzk4OQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0
cyBiZWNhdXNlIG9mIG5vIGJlaGF2aW9yIGNoYW5nZS4KKworICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6b2JqZWN0SXNSZWxheW91dEJvdW5k
YXJ5KTogTW92ZWQgZnJvbSBSZW5kZXJPYmplY3QuaC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ck9iamVjdDo6bWFya0NvbnRhaW5pbmdCbG9ja3NGb3JMYXlvdXQpOiBNb3ZlZCBmcm9tIFJlbmRl
ck9iamVjdC5oCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oOgorCiAyMDExLTA5
LTEzICBBZGFtIEtsZWluICA8YWRhbWtAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEZpeCBjc3NU
ZXh0IHByb3BlcnR5IG9mIGNvdW50ZXItdmFsdWVkIENTU1ByaW1pdGl2ZVZhbHVlIGFuZCBhdm9p
ZCB1bmluaXRpYWxpemVkIHJlYWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVj
dC5jcHAKaW5kZXggMTI2OTIzZDVhMGIxOWU4Mzg0YzJhZDkzOWUyZTBlNjZhMzEwNjU5YS4uMzU0
MDdjNWQxOGRlNDllNjIzMzhiNzhiMGFjZDcyZmFjY2FhYjdlNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlck9iamVjdC5jcHAKQEAgLTU4NCw2ICs1ODQsNjkgQEAgUmVuZGVyQmxv
Y2sqIFJlbmRlck9iamVjdDo6Zmlyc3RMaW5lQmxvY2soKSBjb25zdAogICAgIHJldHVybiAwOwog
fQogCitzdGF0aWMgaW5saW5lIGJvb2wgb2JqZWN0SXNSZWxheW91dEJvdW5kYXJ5KGNvbnN0IFJl
bmRlck9iamVjdCogb2JqZWN0KQoreworICAgIC8vIEZJWE1FOiBJbiBmdXR1cmUgaXQgbWF5IGJl
IHBvc3NpYmxlIHRvIGJyb2FkZW4gdGhpcyBjb25kaXRpb24gaW4gb3JkZXIgdG8gaW1wcm92ZSBw
ZXJmb3JtYW5jZS4KKyAgICAvLyBUYWJsZSBjZWxscyBhcmUgZXhjbHVkZWQgYmVjYXVzZSBldmVu
IHdoZW4gdGhlaXIgQ1NTIGhlaWdodCBpcyBmaXhlZCwgdGhlaXIgaGVpZ2h0KCkKKyAgICAvLyBt
YXkgZGVwZW5kIG9uIHRoZWlyIGNvbnRlbnRzLgorICAgIHJldHVybiBvYmplY3QtPmlzVGV4dENv
bnRyb2woKQorI2lmIEVOQUJMRShTVkcpCisgICAgICAgIHx8IG9iamVjdC0+aXNTVkdSb290KCkK
KyNlbmRpZgorICAgICAgICB8fCAob2JqZWN0LT5oYXNPdmVyZmxvd0NsaXAoKSAmJiAhb2JqZWN0
LT5zdHlsZSgpLT53aWR0aCgpLmlzSW50cmluc2ljT3JBdXRvKCkgJiYgIW9iamVjdC0+c3R5bGUo
KS0+aGVpZ2h0KCkuaXNJbnRyaW5zaWNPckF1dG8oKSAmJiAhb2JqZWN0LT5zdHlsZSgpLT5oZWln
aHQoKS5pc1BlcmNlbnQoKSAmJiAhb2JqZWN0LT5pc1RhYmxlQ2VsbCgpKTsKK30KKwordm9pZCBS
ZW5kZXJPYmplY3Q6Om1hcmtDb250YWluaW5nQmxvY2tzRm9yTGF5b3V0KGJvb2wgc2NoZWR1bGVS
ZWxheW91dCwgUmVuZGVyT2JqZWN0KiBuZXdSb290KQoreworICAgIEFTU0VSVCghc2NoZWR1bGVS
ZWxheW91dCB8fCAhbmV3Um9vdCk7CisKKyAgICBSZW5kZXJPYmplY3QqIG9iamVjdCA9IGNvbnRh
aW5lcigpOworICAgIFJlbmRlck9iamVjdCogbGFzdCA9IHRoaXM7CisKKyAgICBib29sIHNpbXBs
aWZpZWROb3JtYWxGbG93TGF5b3V0ID0gbmVlZHNTaW1wbGlmaWVkTm9ybWFsRmxvd0xheW91dCgp
ICYmICFzZWxmTmVlZHNMYXlvdXQoKSAmJiAhbm9ybWFsQ2hpbGROZWVkc0xheW91dCgpOworCisg
ICAgd2hpbGUgKG9iamVjdCkgeworICAgICAgICAvLyBEb24ndCBtYXJrIHRoZSBvdXRlcm1vc3Qg
b2JqZWN0IG9mIGFuIHVucm9vdGVkIHN1YnRyZWUuIFRoYXQgb2JqZWN0IHdpbGwgYmUKKyAgICAg
ICAgLy8gbWFya2VkIHdoZW4gdGhlIHN1YnRyZWUgaXMgYWRkZWQgdG8gdGhlIGRvY3VtZW50Lgor
ICAgICAgICBSZW5kZXJPYmplY3QqIGNvbnRhaW5lciA9IG9iamVjdC0+Y29udGFpbmVyKCk7Cisg
ICAgICAgIGlmICghY29udGFpbmVyICYmICFvYmplY3QtPmlzUmVuZGVyVmlldygpKQorICAgICAg
ICAgICAgcmV0dXJuOworICAgICAgICBpZiAoIWxhc3QtPmlzVGV4dCgpICYmIChsYXN0LT5zdHls
ZSgpLT5wb3NpdGlvbigpID09IEZpeGVkUG9zaXRpb24gfHwgbGFzdC0+c3R5bGUoKS0+cG9zaXRp
b24oKSA9PSBBYnNvbHV0ZVBvc2l0aW9uKSkgeworICAgICAgICAgICAgYm9vbCB3aWxsU2tpcFJl
bGF0aXZlbHlQb3NpdGlvbmVkSW5saW5lcyA9ICFvYmplY3QtPmlzUmVuZGVyQmxvY2soKTsKKyAg
ICAgICAgICAgIHdoaWxlIChvYmplY3QgJiYgIW9iamVjdC0+aXNSZW5kZXJCbG9jaygpKSAvLyBT
a2lwIHJlbGF0aXZlbHkgcG9zaXRpb25lZCBpbmxpbmVzIGFuZCBnZXQgdG8gdGhlIGVuY2xvc2lu
ZyBSZW5kZXJCbG9jay4KKyAgICAgICAgICAgICAgICBvYmplY3QgPSBvYmplY3QtPmNvbnRhaW5l
cigpOworICAgICAgICAgICAgaWYgKCFvYmplY3QgfHwgb2JqZWN0LT5tX3Bvc0NoaWxkTmVlZHNM
YXlvdXQpCisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgaWYgKHdpbGxTa2lw
UmVsYXRpdmVseVBvc2l0aW9uZWRJbmxpbmVzKQorICAgICAgICAgICAgICAgIGNvbnRhaW5lciA9
IG9iamVjdC0+Y29udGFpbmVyKCk7CisgICAgICAgICAgICBvYmplY3QtPm1fcG9zQ2hpbGROZWVk
c0xheW91dCA9IHRydWU7CisgICAgICAgICAgICBzaW1wbGlmaWVkTm9ybWFsRmxvd0xheW91dCA9
IHRydWU7CisgICAgICAgICAgICBBU1NFUlQoIW9iamVjdC0+aXNTZXROZWVkc0xheW91dEZvcmJp
ZGRlbigpKTsKKyAgICAgICAgfSBlbHNlIGlmIChzaW1wbGlmaWVkTm9ybWFsRmxvd0xheW91dCkg
eworICAgICAgICAgICAgaWYgKG9iamVjdC0+bV9uZWVkc1NpbXBsaWZpZWROb3JtYWxGbG93TGF5
b3V0KQorICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIG9iamVjdC0+bV9uZWVk
c1NpbXBsaWZpZWROb3JtYWxGbG93TGF5b3V0ID0gdHJ1ZTsKKyAgICAgICAgICAgIEFTU0VSVCgh
b2JqZWN0LT5pc1NldE5lZWRzTGF5b3V0Rm9yYmlkZGVuKCkpOworICAgICAgICB9IGVsc2Ugewor
ICAgICAgICAgICAgaWYgKG9iamVjdC0+bV9ub3JtYWxDaGlsZE5lZWRzTGF5b3V0KQorICAgICAg
ICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIG9iamVjdC0+bV9ub3JtYWxDaGlsZE5lZWRz
TGF5b3V0ID0gdHJ1ZTsKKyAgICAgICAgICAgIEFTU0VSVCghb2JqZWN0LT5pc1NldE5lZWRzTGF5
b3V0Rm9yYmlkZGVuKCkpOworICAgICAgICB9CisKKyAgICAgICAgaWYgKG9iamVjdCA9PSBuZXdS
b290KQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIGxhc3QgPSBvYmplY3Q7CisgICAg
ICAgIGlmIChzY2hlZHVsZVJlbGF5b3V0ICYmIG9iamVjdElzUmVsYXlvdXRCb3VuZGFyeShsYXN0
KSkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBvYmplY3QgPSBjb250YWluZXI7CisgICAg
fQorCisgICAgaWYgKHNjaGVkdWxlUmVsYXlvdXQpCisgICAgICAgIGxhc3QtPnNjaGVkdWxlUmVs
YXlvdXQoKTsKK30KKwogdm9pZCBSZW5kZXJPYmplY3Q6OnNldFByZWZlcnJlZExvZ2ljYWxXaWR0
aHNEaXJ0eShib29sIGIsIGJvb2wgbWFya1BhcmVudHMpCiB7CiAgICAgYm9vbCBhbHJlYWR5RGly
dHkgPSBtX3ByZWZlcnJlZExvZ2ljYWxXaWR0aHNEaXJ0eTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJPYmplY3QuaAppbmRleCBiZmFhNjk1ZmMyYzYzNzA3MjUwZWZmMDYxODdmNDA4YTAw
ZDRiYmMwLi5mYTcyOWJmNDM5MDZlYWJkOTBlYzQyZGI5YWI5MzY0NGM0ZmQ4OTNlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCkBAIC05ODEsNzAgKzk4MSw2IEBAIGlu
bGluZSB2b2lkIFJlbmRlck9iamVjdDo6c2V0TmVlZHNTaW1wbGlmaWVkTm9ybWFsRmxvd0xheW91
dCgpCiAgICAgfQogfQogCi1pbmxpbmUgYm9vbCBvYmplY3RJc1JlbGF5b3V0Qm91bmRhcnkoY29u
c3QgUmVuZGVyT2JqZWN0ICpvYmopIAotewotICAgIC8vIEZJWE1FOiBJbiBmdXR1cmUgaXQgbWF5
IGJlIHBvc3NpYmxlIHRvIGJyb2FkZW4gdGhpcyBjb25kaXRpb24gaW4gb3JkZXIgdG8gaW1wcm92
ZSBwZXJmb3JtYW5jZS4KLSAgICAvLyBUYWJsZSBjZWxscyBhcmUgZXhjbHVkZWQgYmVjYXVzZSBl
dmVuIHdoZW4gdGhlaXIgQ1NTIGhlaWdodCBpcyBmaXhlZCwgdGhlaXIgaGVpZ2h0KCkKLSAgICAv
LyBtYXkgZGVwZW5kIG9uIHRoZWlyIGNvbnRlbnRzLgotICAgIHJldHVybiBvYmotPmlzVGV4dENv
bnRyb2woKQotICAgICAgICB8fCAob2JqLT5oYXNPdmVyZmxvd0NsaXAoKSAmJiAhb2JqLT5zdHls
ZSgpLT53aWR0aCgpLmlzSW50cmluc2ljT3JBdXRvKCkgJiYgIW9iai0+c3R5bGUoKS0+aGVpZ2h0
KCkuaXNJbnRyaW5zaWNPckF1dG8oKSAmJiAhb2JqLT5zdHlsZSgpLT5oZWlnaHQoKS5pc1BlcmNl
bnQoKSAmJiAhb2JqLT5pc1RhYmxlQ2VsbCgpKQotI2lmIEVOQUJMRShTVkcpCi0gICAgICAgICAg
IHx8IG9iai0+aXNTVkdSb290KCkKLSNlbmRpZgotICAgICAgICAgICA7Ci19Ci0KLWlubGluZSB2
b2lkIFJlbmRlck9iamVjdDo6bWFya0NvbnRhaW5pbmdCbG9ja3NGb3JMYXlvdXQoYm9vbCBzY2hl
ZHVsZVJlbGF5b3V0LCBSZW5kZXJPYmplY3QqIG5ld1Jvb3QpCi17Ci0gICAgQVNTRVJUKCFzY2hl
ZHVsZVJlbGF5b3V0IHx8ICFuZXdSb290KTsKLQotICAgIFJlbmRlck9iamVjdCogbyA9IGNvbnRh
aW5lcigpOwotICAgIFJlbmRlck9iamVjdCogbGFzdCA9IHRoaXM7Ci0KLSAgICBib29sIHNpbXBs
aWZpZWROb3JtYWxGbG93TGF5b3V0ID0gbmVlZHNTaW1wbGlmaWVkTm9ybWFsRmxvd0xheW91dCgp
ICYmICFzZWxmTmVlZHNMYXlvdXQoKSAmJiAhbm9ybWFsQ2hpbGROZWVkc0xheW91dCgpOwotCi0g
ICAgd2hpbGUgKG8pIHsKLSAgICAgICAgLy8gRG9uJ3QgbWFyayB0aGUgb3V0ZXJtb3N0IG9iamVj
dCBvZiBhbiB1bnJvb3RlZCBzdWJ0cmVlLiBUaGF0IG9iamVjdCB3aWxsIGJlIAotICAgICAgICAv
LyBtYXJrZWQgd2hlbiB0aGUgc3VidHJlZSBpcyBhZGRlZCB0byB0aGUgZG9jdW1lbnQuCi0gICAg
ICAgIFJlbmRlck9iamVjdCogY29udGFpbmVyID0gby0+Y29udGFpbmVyKCk7Ci0gICAgICAgIGlm
ICghY29udGFpbmVyICYmICFvLT5pc1JlbmRlclZpZXcoKSkKLSAgICAgICAgICAgIHJldHVybjsK
LSAgICAgICAgaWYgKCFsYXN0LT5pc1RleHQoKSAmJiAobGFzdC0+c3R5bGUoKS0+cG9zaXRpb24o
KSA9PSBGaXhlZFBvc2l0aW9uIHx8IGxhc3QtPnN0eWxlKCktPnBvc2l0aW9uKCkgPT0gQWJzb2x1
dGVQb3NpdGlvbikpIHsKLSAgICAgICAgICAgIGJvb2wgd2lsbFNraXBSZWxhdGl2ZWx5UG9zaXRp
b25lZElubGluZXMgPSAhby0+aXNSZW5kZXJCbG9jaygpOwotICAgICAgICAgICAgd2hpbGUgKG8g
JiYgIW8tPmlzUmVuZGVyQmxvY2soKSkgLy8gU2tpcCByZWxhdGl2ZWx5IHBvc2l0aW9uZWQgaW5s
aW5lcyBhbmQgZ2V0IHRvIHRoZSBlbmNsb3NpbmcgUmVuZGVyQmxvY2suCi0gICAgICAgICAgICAg
ICAgbyA9IG8tPmNvbnRhaW5lcigpOwotICAgICAgICAgICAgaWYgKCFvIHx8IG8tPm1fcG9zQ2hp
bGROZWVkc0xheW91dCkKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICBpZiAo
d2lsbFNraXBSZWxhdGl2ZWx5UG9zaXRpb25lZElubGluZXMpCi0gICAgICAgICAgICAgICAgY29u
dGFpbmVyID0gby0+Y29udGFpbmVyKCk7Ci0gICAgICAgICAgICBvLT5tX3Bvc0NoaWxkTmVlZHNM
YXlvdXQgPSB0cnVlOwotICAgICAgICAgICAgc2ltcGxpZmllZE5vcm1hbEZsb3dMYXlvdXQgPSB0
cnVlOwotICAgICAgICAgICAgQVNTRVJUKCFvLT5pc1NldE5lZWRzTGF5b3V0Rm9yYmlkZGVuKCkp
OwotICAgICAgICB9IGVsc2UgaWYgKHNpbXBsaWZpZWROb3JtYWxGbG93TGF5b3V0KSB7Ci0gICAg
ICAgICAgICBpZiAoby0+bV9uZWVkc1NpbXBsaWZpZWROb3JtYWxGbG93TGF5b3V0KQotICAgICAg
ICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgIG8tPm1fbmVlZHNTaW1wbGlmaWVkTm9ybWFs
Rmxvd0xheW91dCA9IHRydWU7Ci0gICAgICAgICAgICBBU1NFUlQoIW8tPmlzU2V0TmVlZHNMYXlv
dXRGb3JiaWRkZW4oKSk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBpZiAoby0+bV9u
b3JtYWxDaGlsZE5lZWRzTGF5b3V0KQotICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAg
ICAgIG8tPm1fbm9ybWFsQ2hpbGROZWVkc0xheW91dCA9IHRydWU7Ci0gICAgICAgICAgICBBU1NF
UlQoIW8tPmlzU2V0TmVlZHNMYXlvdXRGb3JiaWRkZW4oKSk7Ci0gICAgICAgIH0KLQotICAgICAg
ICBpZiAobyA9PSBuZXdSb290KQotICAgICAgICAgICAgcmV0dXJuOwotCi0gICAgICAgIGxhc3Qg
PSBvOwotICAgICAgICBpZiAoc2NoZWR1bGVSZWxheW91dCAmJiBvYmplY3RJc1JlbGF5b3V0Qm91
bmRhcnkobGFzdCkpCi0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgbyA9IGNvbnRhaW5lcjsK
LSAgICB9Ci0KLSAgICBpZiAoc2NoZWR1bGVSZWxheW91dCkKLSAgICAgICAgbGFzdC0+c2NoZWR1
bGVSZWxheW91dCgpOwotfQotCiBpbmxpbmUgYm9vbCBSZW5kZXJPYmplY3Q6OnByZXNlcnZlc05l
d2xpbmUoKSBjb25zdAogewogI2lmIEVOQUJMRShTVkcpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>