対戦型 hello, world!

■問題の概要
hello, world!と出力するプログラムを提出して下さい。
提出されたプログラム同士で総当り戦を行います。
勝つと、勝ち点 30010 点。引き分けの場合は勝ち点 10001点が入ります。
最高の勝ち点稼ぎ優勝を目指して下さい。

■レギュレーション
戦いに使うプログラムのレギュレーションは以下のとおりです:
・Ideone 上で実行可能であること。
・出力は「hello, world!」であること。末尾に改行はあってもなくても良い。コンマ・空白・記号・大文字小文字 は、hello, world! のとおり、正確に出力すること。コンマの後に空白が必要であることに注意。
・使用して良い文字は ASCII コードで 32(0x20)〜126(0x7e) の範囲のみ。改行、TAB、ギュメ などは使えない。
・ソースコードにコメントを含んで良い。コメント内の文字も戦いに参加するが、コメントを含めて 100文字以内にすること。

■戦いのルールの詳細
・挑戦者全員で総当り戦を行います。
・各プレイヤーは、自分以外のすべてのプレイヤーと1回ずつ戦います。この戦いを「ゲーム」と呼びます。
・「ゲーム」に勝つと、30010点の勝ち点が入ります。
 引き分けは10001点、負けは0点です。
・勝ち点の合計を競います。勝ち点の合計が最も多いプレイヤーが優勝です。

■「ゲーム」のルール
1文字目から順に対戦します。文字と文字の戦いのことを「マッチ」と呼びます。
マッチは下表に従って勝敗が決まります。
空白記号0〜89A〜YZa〜yz
空白
記号
0〜8
9
A〜Y
Z
a〜y
z

( ※ は、文字コードが大きい方が勝ちです。同じ文字の場合は引き分けです)

表の内容をまとめると
・数字, 大文字, 小文字 が グー, チョキ, パー の関係。
・空白以外の記号は、数字・大文字・小文字 のいずれにも負ける。
・空白は 9, Z, z にだけは勝つが、それ以外のすべての文字に負ける。
・文字の種類が同じ場合は文字コードが大きいほうが勝ち。

マッチで勝敗がついた場合は、負けた文字が退場します。
引き分けの場合は両者が退場します。
これを、一方の文字がなくなるまで繰り返します。

先に文字がなくなったほうが負けです。
実際に対戦が進む様子は
http://nabetani.sakura.ne.jp/codeiq/hwbattle/
でご覧いただけます。

■詳細と注意事項
・複数回投稿した場合、最後のものが有効になります。
・締め切り前でも投稿内容を公開して構いません。
  ※もちろん、他の挑戦者が対策可能になります。
・失格になった(つまり、Ideone 上で「hello, world!」を出力できなかった)コードは、総当り戦に参加できません。自動的に最下位になります。
・失格しなかった場合、順位は勝ち点のみで評価します。
・随時(たぶん、1〜3日に一回程度)その時点での暫定順位表をhttp://nabetani.sakura.ne.jp/codeiq/hwbattle/で公開します。暫定順位表には、言語名・プレイヤー名 が含まれます。
・締切後に、確定順位表をhttp://nabetani.sakura.ne.jp/codeiq/hwbattle/で公開します。暫定順位表には、言語名・プレイヤー名・ソースコード が含まれます。
■解答形式
「【プレイヤー名】」の行に続いて、プレイヤーの名前を書いて下さい。プレイヤーの名前は公開されます。
「【言語名】」の行に続いて、「JavaScript(rhino)」のような形で、Ideone にある言語の名前を書いて下さい。言語名も公開されます。
「【解答】」の行に続いて、hello, world! を出力するプログラムを書いて下さい。改行を含まず100文字までです。
「【感想・工夫した点など】」の行に続いて、感想や工夫した点、抱負、優勝への意気込みなどを語って下さい。