Bitcoin Forum
April 26, 2024, 11:05:01 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 ... 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 [177] 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 ... 792 »
  Print  
Author Topic: [ARDR] Nxt: Ardor - масштабируемая ChildChain-платформа  (Read 1749115 times)
This is a self-moderated topic. If you do not want to be moderated by the person who started this topic, create a new topic.
scor2k
Legendary
*
Offline Offline

Activity: 1005
Merit: 1002


work hard, die young (c)


View Profile WWW
February 03, 2014, 07:43:16 PM
 #3521

У меня, кстати, на американской VPS'ке 0.5.11 периодически вываливается в java.io.EOFException, лечится удалением блока и на пол дня примерно все нормально. Правда, есть подозрение что ее автоматом VPS убивает за потребление ресурсов (хотя по графикам все в норме)... и при перезапуске лезут косяки Sad Так как на рабочем хостинге с анлимом по ресурсам все нормально...

Есть смысл куда-нибудь запостить ошибки?

Code:
[2014-02-03 14:32:32.298] Error loading blocks from blocks.nxt
java.io.EOFException
        at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2596)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1316)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
        at java.util.HashMap.readObject(HashMap.java:1154)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1891)
        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1796)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1348)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
        at Nxt$Block.loadBlocks(Nxt.java:1490)
        at Nxt.init(Nxt.java:6157)
        at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:561)
        at org.eclipse.jetty.servlet.ServletHolder.initialize(ServletHolder.java:351)
        at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:840)
        at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:300)
        at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1347)
        at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:743)
        at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:69)
        at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:117)
        at org.eclipse.jetty.util.component.ContainerLifeCycle.addBean(ContainerLifeCycle.java:281)
        at org.eclipse.jetty.util.component.ContainerLifeCycle.addBean(ContainerLifeCycle.java:213)
        at org.eclipse.jetty.util.component.ContainerLifeCycle.updateBeans(ContainerLifeCycle.java:763)
        at org.eclipse.jetty.server.handler.HandlerCollection.setHandlers(HandlerCollection.java:89)
        at org.eclipse.jetty.server.handler.ContextHandlerCollection.setHandlers(ContextHandlerCollection.java:144)
        at org.eclipse.jetty.server.handler.HandlerCollection.addHandler(HandlerCollection.java:155)
        at org.eclipse.jetty.deploy.bindings.StandardDeployer.processBinding(StandardDeployer.java:41)
        at org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:186)
        at org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:498)
        at org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:146)
        at org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:180)
        at org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:64)
        at org.eclipse.jetty.util.Scanner.reportAddition(Scanner.java:605)
        at org.eclipse.jetty.util.Scanner.reportDifferences(Scanner.java:528)
        at org.eclipse.jetty.util.Scanner.scan(Scanner.java:391)
        at org.eclipse.jetty.util.Scanner.doStart(Scanner.java:313)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:69)
        at org.eclipse.jetty.deploy.providers.ScanningAppProvider.doStart(ScanningAppProvider.java:150)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:69)
        at org.eclipse.jetty.deploy.DeploymentManager.startAppProvider(DeploymentManager.java:560)
        at org.eclipse.jetty.deploy.DeploymentManager.doStart(DeploymentManager.java:235)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:69)
        at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:117)
        at org.eclipse.jetty.server.Server.start(Server.java:355)
        at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:99)
        at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:60)
        at org.eclipse.jetty.server.Server.doStart(Server.java:324)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:69)
        at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1250)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1174)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.eclipse.jetty.start.Main.invokeMain(Main.java:297)
        at org.eclipse.jetty.start.Main.start(Main.java:724)
        at org.eclipse.jetty.start.Main.main(Main.java:103)
1714129501
Hero Member
*
Offline Offline

Posts: 1714129501

View Profile Personal Message (Offline)

Ignore
1714129501
Reply with quote  #2

1714129501
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
sunrise778
Member
**
Offline Offline

Activity: 84
Merit: 10


View Profile
February 03, 2014, 08:29:44 PM
 #3522

На всякий случай имейте ввиду.
ZeroTheGreat
Hero Member
*****
Offline Offline

Activity: 644
Merit: 500


View Profile
February 03, 2014, 10:26:41 PM
 #3523

ZeroTheGreat думаешь стоит присмотреться.
А что другие комюнити скажут.
И что за команда
Что кто знает про утопичногобудущего.
Это что форк NXT. Там взнос то смешной но растёт с каждой сотней.
Это будущий форк Nxt. Ждут кода всех фич, 3 впреля вроде он будет опубликован.

Я бы уверенно рекомендовал участвовать, решай ты это на первых страницах, а вот сейчас придётся тебе самому оценить риски: на одной чаше весов потерянные BTC/NXT по десятку разных причин и возможно де-факто поддержка не самой прозрачной схемы (централизация, впрочем её и не избежать почти, пока сеть не запущена + быстрая смена правил игры на ходу), на другой чаше весов какой-то выигрыш (кратный BTC/NXT, участие в общем деле, поддержка идей проекта и т.д. и т.п., какой-то, ибо ценность — относительная штука).
ImmortAlex
Hero Member
*****
Offline Offline

Activity: 784
Merit: 501


View Profile
February 04, 2014, 12:32:24 AM
 #3524

У меня, кстати, на американской VPS'ке 0.5.11 периодически вываливается в java.io.EOFException, лечится удалением блока и на пол дня примерно все нормально. Правда, есть подозрение что ее автоматом VPS убивает за потребление ресурсов (хотя по графикам все в норме)... и при перезапуске лезут косяки Sad Так как на рабочем хостинге с анлимом по ресурсам все нормально...

Есть смысл куда-нибудь запостить ошибки?
Где-то был багтрекер, в который глядел Жан-Люк, но ссылки у меня не сохранилось.
А ты уверен, что эта ошибка происходит у тебя во время работы, а не при перезапуске? А то там в стеке явно запуск сервлета происходит, чего при работе вроде как быть не должно, только при загрузке.
cavernofkafka
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
February 04, 2014, 01:03:10 AM
 #3525

господа, не могу создать сервер на www.peerexplorer.com

вписал в web.xml код, указал на пирэксплорере айпи адрес, прошло восемь часов, остаюсь в оффлайне.
scor2k
Legendary
*
Offline Offline

Activity: 1005
Merit: 1002


work hard, die young (c)


View Profile WWW
February 04, 2014, 02:16:16 AM
 #3526

На всякий случай имейте ввиду.

Охтыжёжик. Родной город-герой выделился...

Где-то был багтрекер, в который глядел Жан-Люк, но ссылки у меня не сохранилось.
А ты уверен, что эта ошибка происходит у тебя во время работы, а не при перезапуске? А то там в стеке явно запуск сервлета происходит, чего при работе вроде как быть не должно, только при загрузке.
Это логи загрузки, конечно.  Я не могу отследить падение сервлета, т.к. его грохает хостер похоже по каким-то только ему известным соображениям.

господа, не могу создать сервер на www.peerexplorer.com
вписал в web.xml код, указал на пирэксплорере айпи адрес, прошло восемь часов, остаюсь в оффлайне.
А в вас порт 7874 извне открыт?
Siroc-co
Full Member
***
Offline Offline

Activity: 210
Merit: 100

)))


View Profile
February 04, 2014, 03:39:03 AM
 #3527

На всякий случай имейте ввиду.

Ага. И это тоже. Фейк, но вдруг... http://zhda.ekburg.ru/news/programma-po-zamene-rossiyskogo-rublya-na-bitcoin-nachnetsya-imenno-s-ekaterinburga/

NXT -> 11071907025946873740
Antana
Member
**
Offline Offline

Activity: 174
Merit: 10


View Profile
February 04, 2014, 03:49:34 AM
 #3528


из проверенных источников говорят что это правда...

scor2k
Legendary
*
Offline Offline

Activity: 1005
Merit: 1002


work hard, die young (c)


View Profile WWW
February 04, 2014, 04:24:56 AM
 #3529

из проверенных источников говорят что это правда...
Ахахахахаха Smiley) Ёбург впереди планеты всей! )))
Siroc-co
Full Member
***
Offline Offline

Activity: 210
Merit: 100

)))


View Profile
February 04, 2014, 05:10:30 AM
 #3530


из проверенных источников говорят что это правда...

Я бы хотел верить. Но как же, если ЦБ запретил, и фактически приравнял к уголовникам всех пользователей? Оно понятно, конечно, что всё это только пугающий трёп не имеющий поддержки со стороны закона, но многие испугались.

NXT -> 11071907025946873740
abctc (OP)
Legendary
*
Offline Offline

Activity: 1792
Merit: 1038



View Profile
February 04, 2014, 05:38:51 AM
 #3531

У меня, кстати, на американской VPS'ке 0.5.11 периодически вываливается в java.io.EOFException, лечится удалением блока и на пол дня примерно все нормально. Правда, есть подозрение что ее автоматом VPS убивает за потребление ресурсов (хотя по графикам все в норме)... и при перезапуске лезут косяки Sad Так как на рабочем хостинге с анлимом по ресурсам все нормально...
- сколько памяти на VPS ?
У меня на 512-ти Мб DigatalОкеанном VPS начиная с версии 0.5.11 сервер останавливается каждые несколько часов, хотя раньше, на версиях 0.5.9 и 0.5.10 (причём по строке запуска "java -jar start.jar") жил несколько суток. Версия 0.5.11, запускаемая командой "java -jar start.jar", через несколько часов умирает с диагностикой "CRITICAL ERROR. PLEASE REPORT TO THE DEVELOPERS. java.lang.OutOfMemoryError: Java heap space java.lang.OutOfMemoryError: Java heap space at org.json.simple.parser.Yylex.......". После такого умирания файлы *.nxt оказываются испорченными (попытка запуска на них даёт как раз ошибку "Error loading blocks from blocks.nxt"). Поэтому приходится копировать *.bak в *.nxt перед повторным запуском сервера NRS.
Однако, если эту же версию (0.5.11) запустить командой "java -Xms448m -Xmx480m -jar start.jar", то через несколько часов сервер останавливается с диагностикой "Killed". После такой остановки файлы *.nxt не портятся, поэтому можно немедленно перезапускать NRS, т.е. просто пользоваться скриптом
Code:
#!/bin/bash
while :
do
  ps ax | grep java | grep -vq grep || java -Xms448m -Xmx480m -jar start.jar
  sleep 30
done

Есть смысл куда-нибудь запостить ошибки?
- думаю, смысл имеет. Вот официальный баг-трекер, с которым работает Жан-Люк: https://bitbucket.org/JeanLucPicard/nxt-public/issues
Я постил в него ошибку "Java heap space", Жан написал, что 512-ти Мб на VPS мало. Ну это проще всего написать, раньше C-f-B требовал 2Гб, а лучше 4, 8, 16 ... а оказалось, что после исправления ошибок версии 0.5.9 и 0.5.10 отлично работали и на 512-ти Мб, как, в общем-то, и должно быть с PoS системой.  Так что, думаю, чем больше людей напишут в баг-трекер конкретные ошибки, тем лучше.
Уж по крайней мере NRS не должен умирать с ошибкой "Java heap space" и порчей блокчейна, а должен корректно завершаться с сохранением файло *.nxt, как это он делает при запуске командой "java -Xms448m -Xmx480m -jar start.jar".

█████████████████████████████████████████████████
███████████████████████████████████████████████████
█████████████████████████████████████████████████████
█████████████████████████████████████████████████████
██████████████████████████████████████████████████████
█████
█████████████████████████████████████████████████████████████
██████████████████████████████████████████████████████
███████████████████████████████████████████████████████
█████████████████████████████████████████████████████████████
███████████████████████████████████████████████████████████████
██████████████████████████████████████████████████████████████████
   
, the Next platform.  Magis quam Moneta (More than a Coin)
dexteral
Newbie
*
Offline Offline

Activity: 1
Merit: 0


View Profile
February 04, 2014, 05:45:17 AM
 #3532

abctc, подкиньте монет, пожалуйста
1643477473417834606
спасибо
Siroc-co
Full Member
***
Offline Offline

Activity: 210
Merit: 100

)))


View Profile
February 04, 2014, 06:29:00 AM
 #3533


из проверенных источников говорят что это правда...

Я бы хотел верить. Но как же, если ЦБ запретил, и фактически приравнял к уголовникам всех пользователей? Оно понятно, конечно, что всё это только пугающий трёп не имеющий поддержки со стороны закона, но многие испугались.

Всё. Уже нет этой утренней новости. Редерикт на другую страницу

NXT -> 11071907025946873740
highscore
Full Member
***
Offline Offline

Activity: 286
Merit: 100



View Profile
February 04, 2014, 06:32:22 AM
 #3534

На всякий случай имейте ввиду.
http://volgoproc.ru/newversion/cgi-bin/run.pl?mod=news.mod&dirmod=mod&func=view&id=2332

Add:Мне кажется, какой то хакер развлекается... Сайт екатеринбурга, волгограда... who is nxt)
Pik
Newbie
*
Offline Offline

Activity: 8
Merit: 0


View Profile
February 04, 2014, 06:33:43 AM
Last edit: February 04, 2014, 06:48:30 AM by Pik
 #3535

ZeroTheGreat думаешь стоит присмотреться.
А что другие комюнити скажут.
И что за команда
Что кто знает про утопичногобудущего.
Это что форк NXT. Там взнос то смешной но растёт с каждой сотней.

Я думаю у NEM нет переспективы. Потому что технологически по сравнению с NXT он всегда будет сзади, потому что он уже форк/клон, а это сразу принижает, придаёт временный спекулятивный характер (психология, отношение к валюте тоже играет роль). И Come-From-Beyond упоминал что в программном коде NXT умышлено помещены баги и ловушки. А это риск - вдруг в форке не исправят эти баги и ловушки.
И ещё, вот получат, несколько тысяч человек по миллиону Немов. И новые потенциальные пользователи этой валюты будут смотреть на этих миллионеров также как в NXT на первых 70 вложивших в старт NXT. Т.е. проблема первоначального распределения такая же как в NXT. И в NEM может быть ещё хуже, потому что в NXT первые везунчики имеют гораздо больше 1 млн и могут себе позволить стимулировать развитие NXT путём раздач и финансирования разработок и маркетинга. А несколько тысяч миллионеров NEM могут зажать свой млн (мотив почему они пришли в NEM пришли как раз из-за этого миллиона) и ждать когда другие будут тратить на продвижение, а свой млн беречь пока цена не поднимется.
Добавлю для объективности - в NEM есть фонд финансирования (Немами конечно) развития валюты этой.
polymax
Newbie
*
Offline Offline

Activity: 13
Merit: 0


View Profile
February 04, 2014, 06:41:25 AM
 #3536

Пишу тебе abctc потому что Сеня рядом стоит над душой и стыдит меня. И мне стыдно.
Да просто я не знал как еще можно было купить нексты - это слишком сложно, а поучаствовать охота.
Сеня тут ни при чем - это другой чел. Просто он мне с моей помощью последний взнос заслал.
Значит я признаюсь в хитрожопости, но не хочу входить в крипту жуликом.
Поэтому напиши мне в личку куда заслать должок.
Чтобы это было справедливо я насчитал в троекратном размере - 100$ или 80 E (мне все равно).
Напиши как и я отправлю тебе.
Да, мне еще стыдно потому что публика в ветке то очень даже приличная.

  

 
Siroc-co
Full Member
***
Offline Offline

Activity: 210
Merit: 100

)))


View Profile
February 04, 2014, 07:16:07 AM
 #3537

На всякий случай имейте ввиду.
http://volgoproc.ru/newversion/cgi-bin/run.pl?mod=news.mod&dirmod=mod&func=view&id=2332

Add:Мне кажется, какой то хакер развлекается... Сайт екатеринбурга, волгограда... who is nxt)
Ммм да. Думали курс упадёт резко, а хрен там...

NXT -> 11071907025946873740
scor2k
Legendary
*
Offline Offline

Activity: 1005
Merit: 1002


work hard, die young (c)


View Profile WWW
February 04, 2014, 07:30:47 AM
 #3538

У меня, кстати, на американской VPS'ке 0.5.11 периодически вываливается в java.io.EOFException, лечится удалением блока и на пол дня примерно все нормально. Правда, есть подозрение что ее автоматом VPS убивает за потребление ресурсов (хотя по графикам все в норме)... и при перезапуске лезут косяки Sad Так как на рабочем хостинге с анлимом по ресурсам все нормально...
- сколько памяти на VPS ?
У меня на 512-ти Мб DigatalОкеанном VPS начиная с версии 0.5.11 сервер останавливается каждые несколько часов, хотя раньше, на версиях 0.5.9 и 0.5.10 (причём по строке запуска "java -jar start.jar") жил несколько суток. Версия 0.5.11, запускаемая командой "java -jar start.jar", через несколько часов умирает с диагностикой "CRITICAL ERROR. PLEASE REPORT TO THE DEVELOPERS. java.lang.OutOfMemoryError: Java heap space java.lang.OutOfMemoryError: Java heap space at org.json.simple.parser.Yylex.......". После такого умирания файлы *.nxt оказываются испорченными (попытка запуска на них даёт как раз ошибку "Error loading blocks from blocks.nxt"). Поэтому приходится копировать *.bak в *.nxt перед повторным запуском сервера NRS.
Однако, если эту же версию (0.5.11) запустить командой "java -Xms448m -Xmx480m -jar start.jar", то через несколько часов сервер останавливается с диагностикой "Killed". После такой остановки файлы *.nxt не портятся, поэтому можно немедленно перезапускать NRS, т.е. просто пользоваться скриптом
Code:
#!/bin/bash
while :
do
  ps ax | grep java | grep -vq grep || java -Xms448m -Xmx480m -jar start.jar
  sleep 30
done

Есть смысл куда-нибудь запостить ошибки?
- думаю, смысл имеет. Вот официальный баг-трекер, с которым работает Жан-Люк: https://bitbucket.org/JeanLucPicard/nxt-public/issues
Я постил в него ошибку "Java heap space", Жан написал, что 512-ти Мб на VPS мало. Ну это проще всего написать, раньше C-f-B требовал 2Гб, а лучше 4, 8, 16 ... а оказалось, что после исправления ошибок версии 0.5.9 и 0.5.10 отлично работали и на 512-ти Мб, как, в общем-то, и должно быть с PoS системой.  Так что, думаю, чем больше людей напишут в баг-трекер конкретные ошибки, тем лучше.
Уж по крайней мере NRS не должен умирать с ошибкой "Java heap space" и порчей блокчейна, а должен корректно завершаться с сохранением файло *.nxt, как это он делает при запуске командой "java -Xms448m -Xmx480m -jar start.jar".

Я тоже к похожему выводу приешел )) У меня тоже там же 512 памяти ) Проще раз в 1-2 часа делать нормальный рестарт через cron, чем килять процессы )) Вернулись к тому, что было в старых версиях ))))) Поставлю рестарт - посмотрим.
scor2k
Legendary
*
Offline Offline

Activity: 1005
Merit: 1002


work hard, die young (c)


View Profile WWW
February 04, 2014, 07:31:57 AM
 #3539

На всякий случай имейте ввиду.
http://volgoproc.ru/newversion/cgi-bin/run.pl?mod=news.mod&dirmod=mod&func=view&id=2332

Add:Мне кажется, какой то хакер развлекается... Сайт екатеринбурга, волгограда... who is nxt)
Фух ))) Отлегло.

Странные хакеры, про биткоины негатив распространяет...
sunrise778
Member
**
Offline Offline

Activity: 84
Merit: 10


View Profile
February 04, 2014, 07:49:47 AM
Last edit: February 04, 2014, 08:08:21 AM by sunrise778
 #3540

Это, видимо, особые какеры. Вспомни, что недавно в Волгограде произошло...

Пишу тебе abctc потому что Сеня рядом стоит над душой и стыдит меня. И мне стыдно.

Во какая шиза, оказывается. Здесь и врач не разберёт, где там Poly-Senya, а где Mini-Max.
Pages: « 1 ... 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 [177] 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 ... 792 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!