PK 95;ABoard$L_Images.class., " # $%)*this$0LBoard; Synthetic CodeCoachcountI (LBoard;)VCodeLineNumberTableLocalVariableTablethisLBoard$L_Images;addImage()V imageUpdate(Ljava/awt/Image;IIIII)ZimgLjava/awt/Image;flagsxywidthheight SourceFile Board.javaOJC   Board$L_Images InnerClasses+L_Imagesjava/lang/Objectjava/awt/image/ImageObserverBoard  n  p W**+*r tu r rC *Y` y z    w *YdH      |||||| | ! n& '(PK 95 ** Board.class.' BG A A A A A A A A A A A A A  A    6 6 6 6 A A A InnerClassesL_Imagesmatrix[[C CodeCoachSIZEI ConstantValue2checkMoveResult[I panel_Board LPanelBoard;initXinitYpassantx1x2y1y2 castleRight[Z()VCodeLineNumberTableLocalVariableTablethisLBoard;draw(Ljava/awt/Graphics;Z)VgraphLjava/awt/Graphics;sideZijyxpieceC drawPiece(Ljava/awt/Graphics;CII)V setInitialmove(Ljava/lang/String;Z)ZcodeLjava/lang/String;colorpromoteerroradjustementIfPawnlengthjointtestverticalAdjustement checkMove(IIII)V finalPiece finalColorHorizontalMovePasXPasYgetColor(C)I isWayFree(IIII)ZpasXpasYn isCheckAfter(IIIIZ)ZtempisCheck(Z)ZkingXkingY kingLetter numberColor canCastle(ZZ)ZkingSidegetCheckMoveResult()[IsetInitialSquare(II)V setLastMovesetPanel_Board(LPanelBoard;)V SourceFile Board.javaOJC Z[ FG IJ MN XY QJ RJ TJ UJ VJ WJ  } mn } OP          SJ   x O-O   O-O-O  e.p.  #    java/lang/StringBuffer  Z  ! " |} # $% & Boardjava/lang/ObjectBoard$L_Imagesjava/awt/Color DARK_GRAYLjava/awt/Color;java/awt/GraphicssetColor(Ljava/awt/Color;)VfillRectWHITEBLUEdrawRectREDGRAY PanelBoardimage_WhitePawnLjavax/swing/ImageIcon;javax/swing/ImageIcongetImage()Ljava/awt/Image; drawImage3(Ljava/awt/Image;IILjava/awt/image/ImageObserver;)Zimage_BlackPawnimage_WhiteRookimage_BlackRookimage_WhiteKnightimage_BlackKnightimage_WhiteBishopimage_BlackBishopimage_WhiteQueenimage_BlackQueenimage_WhiteKingimage_BlackKingjava/lang/StringcharAt(I)C()IequalsIgnoreCase(Ljava/lang/String;)Zjava/lang/Character isLowerCase(C)Z replaceAll8(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;replace(CC)Ljava/lang/String;trim()Ljava/lang/String; substring(II)Ljava/lang/String; toUpperCase(C)C toLowerCasevalueOf&(Ljava/lang/Object;)Ljava/lang/String;(Ljava/lang/String;)Vappend(C)Ljava/lang/StringBuffer;,(Ljava/lang/String;)Ljava/lang/StringBuffer;toStringjava/lang/Mathabs(I)I isUpperCase!AB FGH IJKLH MNH OPHQJHRJHSJHTJHUJHVJHWJHXYHZ[\S***2* *YTYTYTYT*** * * * ]2    49> C!H"M#R%^ S_`HHab\+ +>e6U+ 2h`6 p`2h`6*d2p`46*2p`d46+22*+3* p`* dO* p`* d7V* p`d * * p`d.* &++11+``//*p`*d>*p`d.*&++11+``//>w6g+ 2h`6 `pd2h`6*d2`pd46*2`pdd46+22*+7* `pd* dU* `pd* d;Z* `pdd * * `pdd.* &++11+``//*`pd*d!@*`pdd.*&++11+``//]-)*-/'1.374E7I8^:p<|>?ACDEHPJWKcLs/y-SUWXY\]_acdfmhtijmopqUSw^_`cdefhgJ YhJ7<iJE.jJ[klpklzgJkhJNiJ>jJklklH ''-/3455SUXYZZH'mn\O+z tBKQNPuQ%Rbkgnpq;r+*W+*W+*W+*W+*W+*W+*Wn+* WX+*!WB+*"W,+*#W+*$W]n|~|}*-@CVYlo^4_`cdkljJiJH zzzzHzo[\*2RU*2NU*2BU*2QU*2KU*2BU*2NU*2RU*2rU*2nU*2bU*2qU*2kU*2bU*2nU*2rU<B*2PU*2U*2U*2U*2U*2pU*%]j (2<GR]hs~^_`EgJHHpq\+&>P66666 +'+()V*3I**:*2*24U*2U*2*24U*2U[*3Q**@*2*24U*2U*2*24U*2U++)R*3E**7*2*24U*2U*2*24U*2UW*3M**=*2*24U*2U*2*24U*2U, P>6+-./L++ 0L+1./L+2L+'6+d&=0+d&6+3L 46 56d+d&ad6 +d&1d6       4>5>V+d&6  -E x>+d3: 6Y+d378-9+d3:;L+'6dn+d&ad6 +d&1d6      * 2 4'*    <*. 6 6 641d4Pl 6 6 +&ad6  `6 * 24   *   <*. 6a+d&ad6    6  ;* 2 4'*    <*. 6 6 6^ ħU6  K6  ;* 2 4'*    <*. 6 6 6 Ą **.%* 2UP* 2 U* 2 U* * * * ]J  )-7C T ] nxy %')+- .0&1/3079A;N=`>j@|ACKMNRSUVXZ\]^`acgh  kl$o>p?@sDuLyQ}Wao{(15;>HO]^_yz{)37;>AGMRST^ip^_`rstfkl ul vfwJTJVJ xJUJ $WJ aIyl {/zs [hJ NgJ 8{J >Y{J QhJ ?gJ OgJ ?hJ H.H|}\ *246*246*=6 t6&*=6* YOYOYO45BR&55555555555Q}rd6  md'*24* YOYOYO=dh2 '*`** YOYOYO   d'* YOYOYO\*%T=72d d$*d2U* YOYOYO* YOYOYO 8d d&*** YOYOYO* YOYOYO @d>6 d>6   `#  * YOYOYO* YOYOYO 9d>d>&*** YOYOYO* YOYOYOd>6 d>6  <     &*** YOYOYO* YOYOYO /d>"d>* YOYOYO* YOYOYO* YOYOYO]&I # + 3:MN!%')..042:4A6TX;`=?ACLRTVX^f(h0i9kNmaerxyxz|~  ':;H]pt^_`TJVJUJWJ kl~ltJ(J3iJJ 05J 9,J cJ ZJ H ddH\p,?]" ^_`klHH\@ hd6d6 >6>6>l6 >l66#*h`2h`4]> ",2<F^_`fg^f h_`hTJhVJhUJhWJcJ ]JJ"FJ?'gJH H\j*246*2*24U*2U*@!*2*24U*2U*2*24U*2U]2  %.?JKL]hi^Hj_`jTJjVJjUJjWJjtf _lHH\66 K=>k=>626"*2466݄616!*<*.ބ]f   !+9=ADJP"Z$d&p'z({-|$",-^z _`tfJJ lJulsJ6gJ$&hJS5gJ]%hJH "$H\y?*3***3**:*3***3**]V13567P#;-<;=<P@BDDNEYFZP^JhKuLvPwOxP^ y_`yfytfH//H/\=*] TU^ _`HHR\_ **]YZ [^  _` jJ iJHWWHW}\* * * * ]_` abc^4_`TJVJUJWJH ]]]]H]\J*+] gh^_`OPHeHeHC DAEPK 5-B5ddChessPosition.class.#    !turnI CodeCoachcolorZ(IZ)VCodeLineNumberTableLocalVariableTablethisLChessPosition;setTurn(I)VgetTurn()IsetColor(Z)VisColor()Z SourceFileChessPosition.javaOJC "   ChessPositionjava/lang/Object()V!   g***     J*  =*   J*   =* "#  PK qK4GT 7ChessSet/Original/BB.gifGIF89a22 $0)";73K6&_C5NHDVUTffevvv!,22'H*\ȰÇ#> b%Fh@ Pb x@AHt A2A*P`L ȱ@1^T!3gӄT_ @0`8V@ Et-Vu nv)s Rd@x7KƊ0E A6^7PD0Z+f>Փ|sC d_az@1q۪Y^K@J-]0Pw<Be@`@)6__)ǩչU~@v An]yPu b` |W}XajDNH9YfbmzHby`f#YF p@;YI␢5XU@ȀHIff*arP*~H$`aTJBTg(S1 PdZ5FOOUUFTicUw+ %|S'_;Rk@;ZZh7Y^dSѷ߾Fk GIޚ~VEPky;W,pC;PK K4GChessSet/Original/BW.gifGIF89a22 $0)";73K6&_C5zW6NHDVUTxmQffevvvmCcɮyŠї!,22=H*\ȰÇ#> bHHqpaō4!B2h $Jha@4\0`& @(:$bU @S`L.H!CM<) Y"< 3m۔ L*{Vag\cf!Ab;pr]#5fΔi07oh"P9F3מy2)dp5բ(o\|AM0֬eL>(19wq V`~lD "_p(0Ap@MN܄ip^`@]Amݗm<Т^1F7fw]5p5@y"UJ@m eRbctH$T^wRjetI8 B& A RE `H@ aRvW(yNdyfs|QRZu&0EjXf`gMѿA `Y(^ p+R@("e\`nM `m9!2ѷRuE0bm6솫PZ o WaLk}YQI_9- 2='" YZEI~PຘXE<4U*ysЙNѼ;PK K4 ChessSet/Original/KB.gifGIF89a22 $0)";73K6&_C5NHDVUTffevvv!,22'H*\ȰÇ#JHq!/V@ Q"F(0cɇB`ɲ@$_6`#  N=h @Gf,PC ^2 @VW `^/-!E0t `"АM2 B"@ Q2u ^\riV0t℆Πi{ ny'w1\=;J A)T^ (udi R!f goQH7r!pnD߄ĕ9"-[LI]zif aѨsZ1N@\44`;/8!G j. @.n\j 9HjeNP|ɝu@dyAwGw ֠T 8 j 6@Շag#Pd XZvxH+BHi^ ƨbm <0R )A  0ƔJBǤ7݈AHX2 sy\#E܉_f@sy)wq9h0'ijF\YD^@.ȕ YtuAb"VDZZ]w H`iщxXIZ t]u{0F p@e$ZAwB*u ;j)`^w]untQ_~|5gȝ&^mA)v@ /lQt to`EE ~knƥ8/ djlh ,/j) `ȁOwQL+Xƀd `|ѸVCdV l+K_YR&eφF4ݧiU/es7PjrO `yɏ+i.S;PK K4nʪChessSet/Original/NB.gifGIF89a22 $0)";73K6&_C5zW6NHDVUTffevvv!,22)H*\ȰÄJHE FhbƏ+v1#X0ƒ,hr\z0X` Η<Z0@ @P ѐI hԨ8p4+ :W Rɖ2V' `1d t ?@8fq;8X: YCLjᵦ09ݟ ' yD~ nu04\X*r+?Xa﹏ƀTQՁdvIL_e]nXFO$VT L%|=0&C&J^}6@;PK 5"ChessSet/Original/PW.gifGIF89a22 $0)";73K6&_C5zW6NHDVUTxmQffemCcɮyŠї!,22=H*\ȰÇ#Jbʼn Zx1D ,@ G TȐLdr ,H@ *t3WSq27j,y9vذ]k%2'R'Wk߀'_\M~zqU\lQx}DHzXaN@&^`"eK߁g-"R'vT#YEHADvDj>Rq9UnPo57T>]^~@v} & ne>Tii'U:nX>P0Id衇N}:>~f饘f:S@;PK L4xBChessSet/Original/QB.gifGIF89a22 $0)";73K6&_C5NHDVUTffevvv!,22'H*\ȰÇ#JH P1 lT@0@hr@ʂ,H@0í(P@cLK 8=*0O5JJEv 3ر4,ڪD`ɹū.\J&EX RM X\  였`6$Pl5 4 $橩8x}kNɻ׳4nL :#9 ` Am|Ğv/^( PwrեIe}~ ,Ӄ zPQw_ 6a Shʗr ]@_v(Bg7iLua7ָK" D:AҕG^)TLi4a@]R6PoWDeU{E @{#"E_-0$#8!z9E H0%<5!"bDADvXs+ݒBDyF![IE f&NzfvtQQH>).i[zfWUg^ty4PWz+FZmnC.`.d%.UドiTytE/Vxډ O+߮N{wst<2"&sнUnoxs<;PK L4a%`%%ChessSet/Original/QW.gifGIF89a22 $0)";73K6&_C5zW6NHDVUTxmQffevvvmCcɮyŠї!,22?H*\ȰÇ#JH bB.p$(`AHGj  H%;h IaL21 FJ\pjAr bQYGn yӁ)p(2čƃ# Ә(h,Bul@I ?9YE "<< vKjB#@(p/B]0_ Lƒ0<81_x +` G?<1\ $uF``{u Cx^0pBE I@5dh d0ێ@{1- L#(y ,Fu`P3;AёePORp '%^&yiЋqMxx@rUٛD90 H嗨9Qp`U41Ii[k!1@]gD#Ũ` X 4TQbl@] N%m kI#E%Q^r{~] I)&Qy.brl+9b j4@^ Hp ,CP@[`1f 3M厴4c E8?Ds56F%N>=W3R_@~cP $ 8^ŁM0fۭ|K;PK L4>ChessSet/Original/RB.gifGIF89a22 $;73K6&_C5zW6NHDVUTffevvv!,22'H*\ȰÇ#JHE2j00ƏQc$'x%ʔ,_J؀W.XgpN0gД3:9M@AaK>5ztԣ3@ڠNN@='зB \'f$ҼNwm-%{8Ōj8A1ZӨ/TjVmװa 3 e얪շs Ō[۟. Py7yt{s=v+O^8v[_>Ǜ{gހu|է^p9W{ Yi^xffid7Wzrh,v iAny_W# mFe4@a5F]%A6kife'ZnƉ{tix;PK L4kzChessSet/Original/RW.gifGIF89a22 $K6&_C5zW6xmQmCcɮyŠї!,22-H*\ȰÇ#JHE2j00Ə~1F$KZ R@C 3FJ$D@Q"@`pČ(DQ&1&T !FX(H_q:5]W#d5`~&(ƨWZtY@*ĊB Ĭx!l Xh"4r)"3NZmؼG'mnMKA}gud+Z֙\}^?2{'`{܁% v !{RE ra~V^סtn8щѝxw/csEz&G ڒLnV{]MaXfYBS^h啭}\ ߈uWrTffmhVZmM$`9砫=I9Ѐ裐j\r5BډD駠*o;PK 5_NkkCommentedList$Comment.class."   this$0LCommentedList; Synthetic CodeCoachnextLCommentedList$Comment;letterC)(LCommentedList;LCommentedList$Comment;)VCodeLineNumberTableLocalVariableTablethiscomment SourceFileCommentedList.javaOJC   CommentedList$Comment InnerClasses!Commentjava/lang/Object()V CommentedList  "  $  %c**+*,' )*    '' ' " PK 5׽T)CommentedList.class.*  ! " # $%& InnerClassesCommentcommentLCommentedList$Comment; CodeCoach()VCodeLineNumberTableLocalVariableTablethisLCommentedList;getNextComment()C addComment(C)V newCommentC removeComment SourceFileCommentedList.javaOJC CommentedList$Comment ' ( ) CommentedListjava/lang/Object)(LCommentedList;LCommentedList$Comment;)Vnextletter!  N**Y*   \**     a**Y**  D **         PK F5D]22META-INF/application-client.xml Pgn Reader-app-client PK z4ϟPanelBoard$L_Mouse.class. +W *X YZ[ \] *^ _` *a _b *c Yd ef egh Yi jklm n o pq *r *s et euv wx wy z {| e}~ j j this$0 LPanelBoard; Synthetic CodeCoach destinationZx1Ix2y1y2(LPanelBoard;)VCodeLineNumberTableLocalVariableTablethisLPanelBoard$L_Mouse; initialise()V mouseClicked(Ljava/awt/event/MouseEvent;)VeventLjava/awt/event/MouseEvent; codeLevelcolorpieceCijcodeLjava/lang/String; isCapturee'Ljavax/swing/text/BadLocationException; mousePressed mouseExited mouseReleased mouseEntered SourceFilePanelBoard.javaOJC 8@ -.  12 34 64  You must select a piece  java/lang/StringBufferStart : 8 #It is not this color's turn to move 54 74 You cannot move into check  4 e.p.  %javax/swing/text/BadLocationExceptionA bug occured, please report itMove  applied Illegal MovePanelBoard$L_Mouse InnerClassesL_Mousejava/lang/Objectjava/awt/event/MouseListener PanelBoardlabel_ErrorMessageLjavax/swing/JLabel;javax/swing/JLabelsetText(Ljava/lang/String;)Vjava/awt/event/MouseEventgetX()IgetYboardLBoard;Boardmatrix[[CgetColor(C)Ipgn LTextBox;TextBoxisColor()Zappend(C)Ljava/lang/StringBuffer;toString()Ljava/lang/String; checkMove(IIII)Z isCheckAfter(IIIIZ)Zjava/lang/StringvalueOf&(Ljava/lang/Object;)Ljava/lang/String;(C)Ljava/lang/String;,(Ljava/lang/String;)Ljava/lang/StringBuffer;java/lang/Character toUpperCase(C)CnouveauPassantgetCode#()Ljavax/swing/text/StyledDocument;getTurnjavax/swing/text/StyledDocument insertString5(ILjava/lang/String;Ljavax/swing/text/AttributeSet;)V *+,-./0+120.340/54006401740289:J **+;+< => -.0+0+?@:N**;6 78< =>004AB:)=***+ d2l*+  d2ld * * * 2*4 >*U*2*Y*a`* 1`**+ d2l*+  d2ld* ** *** ** ****** * 2*4>6e6U* 24;* **"** ==:* *2*46m6Y1* `:Ya*`:Y-:>PY:Yx:Ya*`:Y1*`:* ** ***Y+:;* *** *Y!:*"*#$:*&*Y'(*)**8TW%;8<>@D#E4GSIXJgK~LNSTVXZ+[01_FbPdZfnhjlnotudb|} (-CHNch~"8WYe<f =>CDE4SfF4F?GHIiI4SYJ4KLM2Y NO0 :<B_bd|}0:PB:A;<=>CD00QB:A;<=>CD00RB:A;<=>CD00SB:A;<=>CD00TUV0+ *YPK 5-hhPanelBoard.class.1 [ Z Z Z Z Z Z Z Z Z Z      Z Z Z Z Z Z Z Z Z Z Z Z       boardLBoard; CodeCoachappletLVisualInterface;sideZpromoteXIpromoteYheightaboutimage_BlackPawnLjavax/swing/ImageIcon;image_BlackRookimage_BlackKnightimage_BlackBishopimage_BlackQueenimage_BlackKingimage_WhitePawnimage_WhiteRookimage_WhiteKnightimage_WhiteBishopimage_WhiteQueenimage_WhiteKing(LBoard;LVisualInterface;)VCodeLineNumberTableLocalVariableTablethis LPanelBoard;paint(Ljava/awt/Graphics;)VgraphLjava/awt/Graphics; loadImages;(Ljavax/swing/JLabel;Ljava/lang/String;Ljava/lang/String;)Zlabel_ErrorMessageLjavax/swing/JLabel;baseUrlLjava/lang/String;chessSete Ljava/net/MalformedURLException;(Ljavax/swing/JLabel;)Zbytes[BLjava/io/IOException; drawAboutBoxdrawPromoteBox(Ljava/awt/Graphics;II)Vxy getPromotion(II)Clettres[CsetSide(Z)VisSide()Z setPromote(II)V isPromote unpromote()VsetAboutisAbout SourceFilePanelBoard.javaOJC u ab cd ed fd gb _` \]    }javax/swing/ImageIcon java/net/URLjava/lang/StringBuffer   u /PB.gif  u hi/PW.gif oi/RB.gif ji/RW.gif pi/NB.gif ki/NW.gif qi/BB.gif li/BW.gif ri/QB.gif mi/QW.gif si/KB.gif ni/KW.gif tijava/net/MalformedURLException URL malformed  ChessSet/Original/PB.gif   uChessSet/Original/PW.gifChessSet/Original/RB.gifChessSet/Original/RW.gifChessSet/Original/NB.gifChessSet/Original/NW.gifChessSet/Original/BB.gifChessSet/Original/BW.gifChessSet/Original/QB.gifChessSet/Original/QW.gifChessSet/Original/KB.gifChessSet/Original/KW.gifjava/io/IOException*A bug occured on loading, please report it !"# $% &' (" )' *"Pgn Reader - Version 2.0 Beta +,/Made for the internationnal chess team Synergie'The source code will NOT be distributed2but any use of the actual Java applet is permitted5If you want to use it, contact me and I will send you0a copy of the .jar file and answer any questions7concerning implementation of the applet on your website*Development : http://www.synergie-home.com*Author : Kevin Lachance Coulombe (Stonkie)Contact : pgn.stonkie@gmail.com July 28, 2006 -" ." Promote to... /0 PanelBoardjavax/swing/JPanelBoardsetPanel_Board(LPanelBoard;)Vdraw(Ljava/awt/Graphics;Z)Vjava/lang/StringvalueOf&(Ljava/lang/Object;)Ljava/lang/String;(Ljava/lang/String;)Vappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;toString()Ljava/lang/String;(Ljava/net/URL;)Vjavax/swing/JLabelsetTextjava/lang/ObjectgetClass()Ljava/lang/Class;java/lang/ClassgetResourceAsStream)(Ljava/lang/String;)Ljava/io/InputStream;java/io/InputStreamread([B)I([B)Vjava/awt/ColorBLACKLjava/awt/Color;java/awt/GraphicssetColor(Ljava/awt/Color;)V fillRoundRect (IIIIII)VWHITE drawRoundRectGREEN drawString(Ljava/lang/String;II)V LIGHT_GRAY DARK_GRAY drawPiece(Ljava/awt/Graphics;CII)V!Z[\]^_`^ab^cd^ed^fd^gb^hi^ji^ki^li^mi^ni^oi^pi^ qi^!ri^"si^#ti^$uvw-*******,*++* x* & (")'*,+y -z{-\]-_`^&&^&|}w0*+* * *+** **+ x/ 12#3*4/5y0z{0~^-^-w*YYY,-*YYY,-*YYY,-*YYY,-*YYY,- *YYY,-!"*YYY,-#$*YYY,-%&*YYY,-'(*YYY,-)**YYY,-+,*YYY,--.:+016/xJ<)=R>{?@ABCHDqEFGIKLPOPy4z{ ^ 888I^8wLtM*234,5W*Y,6*274,5W*Y,6*284,5W*Y,6*294,5W*Y,6*2:4,5W*Y,6 *2;4,5W*Y,6"*2<4,5W*Y,6$*2=4,5W*Y,6&*2>4,5W*Y,6(*2?4,5W*Y,6**2@4,5W*Y,6,*2A4,5W*Y,6.N+C16beBx~UYZ#\4]@_Q`]bnczefhiklnoqr tu(w9xEzV{e}flqrsy*tz{tnf ^ SU}^S}wH+DE+2h;  F+GE+2h;  H+3f9  H+IE+J-UK+LAsK+MAK+NAK+OAK+PAöK+QA׶K+R-K+S- K+T-K+U,;KxJ 2DKU_juyz{~^^w4*d> * *Z+VE+K*d  F+WE+K*d  H+L*`b  H+X_*`K* *ZU*+Rd*(`Y*+N*(`Y*+B*(`Y*+Q*(`YR*+rd*(`Y*+n*(`Y*+b*(`Y*+q*(`YxV !(;BUjy 3y*4z{4~4d4d^ ^wF*F`d=822d,,%YRUYNUYBUYQUN-dd2l4x ":CDEy*Fz{FdFd: ^ ^wJ*x yz{ab^^w=*x y z{^^w_ **x y  z{ d d^^wF*x  y z{^^w>*x y z{^^wJ*x yz{gb^^w=*x y z{^^^ PK 4$ $ Pgn_Reader_Version_History.txtPgn Reader versions history ver 2.0 fix - bug where too many spaces would be added when creating secondary lines fix - bug when using interactive mode to write en passant moves mod - minor appearance changes and adjustements (message box size and border, etc) mod - uses a chained list to count the quotation marks (slight memory optimisation and no more limit) mod - permit default chess set (and base URL) override with html parameter "IMAGESETS" (and "IMAGEURL") mod - "Original" chess set included within the applet for speed improvements add - player names and Elo display add - previous move highlight (Blue) and current move's initial position highlight (Red) add - promotion box for interactive mode add - about button and version information add - chess set choice combo box -- ver 1.5 fix - bug with secondary line generation when not on last-1 move fix - bug with comments in or before secondary lines fix - bug when no space before closing brackets mod - rewrite of the text processing methods to use an optimized recursive algorithm -- ver 1.4 fix - bug with auto quoting when inserting a move not at the end of the code mod - ajustments on caret position to determine the last move to interpret (more intuitive) mod - place the caret at the end of the code after moving (when it quotes the following code) mod - also interprets comments directly after the last move to interpret add - enter code between brackets or parenthesis and follow the secondary line on the visual board add - permits writing moves inside a secondary line using the mouse on the visual board. add - supports move number identifier for Black (ex : 1.e4 1...e5) add - puts the turn number inside the quotes when auto-quoting while inserting a move for Black -- ver 1.3 fix - bug with move with two possible initial positions written without a '-' fix - bug where pieces could change into pawns using an erroneous pgn mod - ajust error messages length to fit the notice box add - auto-load taking file path as parameter from HTML code --- ver 1.2 fix - bug with detecting illegal King moves (finally solved) fix - erroneous code generation when a pawn captured another piece add - permits castling by moving the pieces with the mouse add - flip the board option --- ver 1.1 fix - bug with detecting illegal King moves fix - bug with pgn not beginning on first character mod - now allows subcomments inside comments add - modification of the code by moving the pieces with the mouse add - notification label below the pgnPK 5$rrPgn_Reader_Webmaster_Guide.txtThis file will guide you in implementing and customising the Pgn Reader to fit the needs of your website. BASIS OF USING THE PGN READER ON A HTML PAGE - "applet" tag and "code" attribute : The following is the most basic way to implement the Pgn Reader on a HTML page of your website. The desing of the applet tag is mostly the same as any other HTML tag. The three attributes "code", "height" and "width" are necessary. The "code" attribute determines the class that contains the applet initialisation methods and should always have the value "VisualInterface.class". The "height" and "width" attributes represent the size of the applet. - Size of the applet : The size of the applet is more or less your decision. Changing the height of the applet will affect the bottom gap (possibly hiding parts of the lower elements). The suggested height is "480". As for width, it will affect the center gap between the visual board and the textbox (possibly overlappping them). The suggested width is "700" WON'T WORK WITHOUT - Hosting a chess set : The Pgn Reader finds additionnal chess sets using a base URL and then uses the chess set's name to determine the subfolder of this base URL that contains the image files (only supports .gif format). The images contained by a chess set must be named in the following manner : Black Pawn : PB.gif White Pawn : PW.gif Black Knight : NB.gif White Knight : NW.gif Black Bishop : BB.gif White Bishop : BW.gif Black Rook : RB.gif White Rook : RW.gif Black Queen : QB.gif White Queen : QW.gif Black King : KB.gif White King : KW.gif SINCE VERSION 2.0 - Chess sets base path : To define the chess sets base URL, you will need to add an "IMAGEURL" parameter to the applet tag of your HTML page with the value being the path to your main folder which in turn contain the chess sets you want available. For example, you placed all of your chess sets in separated subfolder located under "http://www.myChessSets.com/". You will use the following parameter tag to tell the applet where the chess sets are located. Note that the path must end with a '/' character. If this parameter is ommited, only the default chessset will be available. This option must be used with the following or it will be useless. - Chess sets list : To determine the names of the various chess set names you need to use the "IMAGESETS" parameter. The names of the chess sets must be separated by a ',' character. Suppose you have two chess sets, one located under "http://www.myChessSets.com/Original" and the other "http://www.myChessSets.com/Test/Test_2". The base URL would be "http://www.mychesssets.com/" while the chess sets would be "Original" and "Test/Test_2" so you would add the following parameters to the "applet" tag. The chess set that is initially loaded is the one included with the applet, the ones you make available are added to the list and the user may load them as wanted (loading an external chess set can be pretty long compared to loading the internal one). Also note that spaces aren't liked by URL translators, so it is suggested that you write underscores instead when hosting files on the internet. SINCE VERSION 1.3 - Auto-load : When the Pgn Reader loads, it has the possibility to automatically load a pgn hosted on the web wheither it be to display a certain game in a certain page of your website or to simply have the textbox of the Pgn Reader display a welcome message after loading. To use this functionnality, you must add a "PGN" parameter to the applet tag of your HTML page as in the following. The file may have any extension you want, but the actual content must be plain text. If no initial pgn is given, the Pgn Reader begins with an empty textbox. CONTACT For any further questions or comments (do not ask for the sources, I won't give them to you), contact me at pgn.stonkie@gmail.com . LAST NOTICE The Pgn Reader is free of use to anyone, but is being developped only for the internationnal correspondence chess team Synergie ( http://www.synergie-home.com ) and no guarantee of any kind is given to anyone else who would use it. The Pgn Reader does not have a web site of its own except for the developpement area pages hosted on http://www.synergie-home.com . Also, please don't overload our servers by linking directly to our chess sets. PK '5oc%c% TextBox.class.k ~  } } } }  }  } } } } } } } } } }  }         } }     }  1     }  E                          }           n n ! q" q#$ q% u& q' u( )  *+,boardLBoard; CodeCoachcurrentPositionI endOfLine codeBeginlabel_ErrorMessageLjavax/swing/JLabel;turn lastSpacecolorZactivecode!Ljavax/swing/text/StyledDocument;redLjavax/swing/text/Style;graygreenblack(Ljavax/swing/JLabel;)VCodeLineNumberTableLocalVariableTablethis LTextBox;readCode(I)Vinitial commentedLCommentedList;textTurnLjava/lang/String;iletterCbracket Exceptions addPromotion(C)Vintoe'Ljavax/swing/text/BadLocationException; updateBoard()LChessPosition; goInBrackets(I)I lineBegingetBoard ()LBoard;setColor(Z)VisColor()ZsetCode$(Ljavax/swing/text/StyledDocument;)VgetCode#()Ljavax/swing/text/StyledDocument;setTurngetTurn()IsetCurrentPositioninsertNextMove(Ljava/lang/String;)Zmove caretPositiongetTag&(Ljava/lang/String;)Ljava/lang/String;tagNameinTagbeginloadUrlpathuLjava/net/URL;hucLjava/net/HttpURLConnection;inputLjava/io/InputStreamReader;buffer[CnbCharLjava/lang/Exception; SourceFile TextBox.javaOJC -Board  ./javax/swing/text/StyledDocument 0-RED 12 3 45 67 89GRAY 4GREEN 4  CommentedListjava/lang/StringBuffer: ;< ;= > ?@ AB CD EF GH IJ K- L e.p. MN%javax/swing/text/BadLocationException O P Q= RS T-Promoting to BishopU V>Promoting to KnightPromoting to RookPromoting to Queen4An error occurred during promotion, please report it WX Y ChessPosition Z ?[ ;\...[] ] ^ java/net/URL _`java/net/HttpURLConnectionGET a> b-java/io/InputStreamReader cd e f gh ijjava/lang/ExceptionTextBoxjavax/swing/JTextPane()V getDocument()Ljavax/swing/text/Document; setInitialaddStyleD(Ljava/lang/String;Ljavax/swing/text/Style;)Ljavax/swing/text/Style;java/awt/ColorLjava/awt/Color;javax/swing/text/StyleConstants setForeground9(Ljavax/swing/text/MutableAttributeSet;Ljava/awt/Color;)VsetBold*(Ljavax/swing/text/MutableAttributeSet;Z)Vjava/lang/StringvalueOf(I)Ljava/lang/String;&(Ljava/lang/Object;)Ljava/lang/String;(Ljava/lang/String;)Vappend(C)Ljava/lang/StringBuffer;toString()Ljava/lang/String;getNextComment()CgetText(II)Ljava/lang/String;charAt(I)CsetCharacterAttributes%(IILjavax/swing/text/AttributeSet;Z)V removeComment addCommentequals(Ljava/lang/Object;)Zlength(Ljava/lang/String;Z)ZgetCaretPosition insertString5(ILjava/lang/String;Ljavax/swing/text/AttributeSet;)VprintStackTracejavax/swing/JLabelsetText setLastMove(IIII)V getLength(IZ)V,(Ljava/lang/String;)Ljava/lang/StringBuffer;(C)Ljava/lang/String;setCaretPositionequalsIgnoreCaseopenConnection()Ljava/net/URLConnection;setRequestMethodconnectgetInputStream()Ljava/io/InputStream;(Ljava/io/InputStream;)VgetResponseCoderead([C)I copyValueOf([CII)Ljava/lang/String;!}~#**Y***+* **    * * ** *** ******J!#%&'9(C)K+^,h.{/123456!!YM Y*!"#.$%:6*& ,'"h*()>,'`,'+***d`**,+*-[ ,],( ,)," ,", 9 3 -.' ![("] ),' ,+**-./*0)>::"4(+[",],,), ,",*d%*26)***d****3**`45/ *****`*`d6*7!**`*dd* ***`*dd***-*Y` Y*!"#.$%:***!**`*dd* **$'15:<#>8@ICQEYGtIxJLNPRTVY[]^cef'i)nLqRrUu[v^yd}ow}/6@[`s>H#{&wITw8:<>;18**8 Y9#$%*:M,;ZB*N6QNRB*<=0*>=$*?=*@= *A=!$1:$%)T]`ilux % *B****C&**D<=**YN Y*!"#.$%:* *&EY**F*&*G *Y&`&**&dH)]t**&dI))[**&dJ) B**&dK) )**&dL) *Y&`&y**&dM) **&dN)"*Y&`&**&dO)[**&dP)( *Y&d&*Q)6. EYF*3**R) **S)"*Y`ȻEY**F *,.38@[bjy zP]    > ,.@[a1[YN*T)6 '  . -'N*U)6-'-+*V)6" -",*& 6+("[-],-), 6`=-'b*W)69"3(*[!-],-), -",-'-+ :6*&*d`;>1*DGXaeh| !$%Z),-014Z79;>?BC"F(J1K57;L>N@PEZFSNUUVXZYYZZH[[S"j@F N =* ^_ \J* debb=* jk hJ*+ pqnn=* vw tJ* {|yy=*  J*& ****X)=    .**#*Y`**Y)=[ (**F @ : 4 .**#*Y`**Z)=*[**! Y*!"#.$+\%L Y+"# $%L**  Y ]#+\%L*>**R*! Y*!"#^\+\%L Y_#+\%L Y+"#`\%L*>**da)  Y ]#+\%L:**+b+4`>*dc1"  CMcoz+0;B`q* 0 1CK=6 Y+"# $%L*d)>   *e)>*+4f+g+4`6*h)>   *i)>"I6*j)>"*k)>*dl]*m)>=([=    # *.@CWmv"$%&(*+/N2N79:= B&C+DCEDNEH>KKIF*!?1BnnY+oM,pqN-rs-tuY-vw:-xȠ5:6y6*z{ۧM>dg|JV WXYZ(\2^9`<dEfKgNidkgohqkvltmvRnn [S(<9+<(hQVWZ^`oQ PK 5TVisualInterface$L_About.class.3    ! " #$'(this$0LVisualInterface; Synthetic CodeCoach(LVisualInterface;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$L_About;actionPerformed(Ljava/awt/event/ActionEvent;)VeventLjava/awt/event/ActionEvent; SourceFileVisualInterface.javaOJC ) * +,- ./ 01 2)VisualInterface$L_About InnerClassesL_Aboutjava/lang/Objectjava/awt/event/ActionListener()VVisualInterface panel_Board LPanelBoard; PanelBoardisAbout()ZsetAbout(Z)Vupdate    FJ **+F   F F5*****J LM"Q-R4T55 H H F% &PK 40j"VisualInterface$L_CaretMoved.class.:    ! "# $ %&'*+this$0LVisualInterface; Synthetic CodeCoach(LVisualInterface;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$L_CaretMoved; caretUpdate!(Ljavax/swing/event/CaretEvent;)VeventLjavax/swing/event/CaretEvent; SourceFileVisualInterface.javaOJC , - ./ 012 34 567 89VisualInterface$L_CaretMoved InnerClasses L_CaretMovedjava/lang/Objectjavax/swing/event/CaretListener()VVisualInterface shouldUpdateZpgn LTextBox;TextBox updateBoard()I panel_Board LPanelBoard; PanelBoardrepaint(IIII)V     FN **+ H K  HH2****W*O QRS1U22MMF( )PK 5Hff VisualInterface$L_ChessSet.class.M % & ' () *+ (, (- ./ (0 (1 .2 (3478this$0LVisualInterface; Synthetic CodeCoach lastIndexI(LVisualInterface;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$L_ChessSet;actionPerformed(Ljava/awt/event/ActionEvent;)VeventLjava/awt/event/ActionEvent;newIndex SourceFileVisualInterface.javaOJC 9  : ;<= >? @A BCD EF GH IJ EK L9VisualInterface$L_ChessSet InnerClasses L_ChessSetjava/lang/Objectjava/awt/event/ActionListener()VVisualInterfacecombo_ChessSetLjavax/swing/JComboBox;javax/swing/JComboBoxgetSelectedIndex()I panel_Board LPanelBoard;label_ErrorMessageLjavax/swing/JLabel; PanelBoard loadImages(Ljavax/swing/JLabel;)ZimageURLLjava/lang/String; imageSets[Ljava/lang/String;;(Ljavax/swing/JLabel;Ljava/lang/String;Ljava/lang/String;)Zupdate !W**+* !\*=*K**W%*** * 2 W* *"% ')*-,O.V/[1 \\  Q!#%#"#$5  (6PK 59]aVisualInterface$L_Clicked.class.Z ( ) *+ ,- *./ 01 *2 34 35 *6 78 ,9 *:;>?this$0LVisualInterface; Synthetic CodeCoach(LVisualInterface;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$L_Clicked; mouseReleased(Ljava/awt/event/MouseEvent;)VeventLjava/awt/event/MouseEvent; mousePressed mouseExited mouseEntered mouseClicked SourceFileVisualInterface.javaOJC @ A BCD EF GHI JK LMN P@ QR STU VW X@ Y@VisualInterface$L_Clicked InnerClasses L_Clickedjava/lang/Objectjava/awt/event/MouseListener()VVisualInterface panel_Board LPanelBoard; PanelBoardsetAbout(Z)Vlabel_ErrorMessageLjavax/swing/JLabel;javax/swing/JLabelsetText(Ljava/lang/String;)Vl_MouseLVisualInterface$L_Mouse;VisualInterface$L_MouseL_Mouse initialise promotionZboardLBoard;BoardsetInitialSquare(II)V unpromoteupdate lJ **+l  llAp nn!At rr"Ax vv#A| zz$J*** * *  * *" !,8BIJJ ~~%&'l<*=3*OPK 54_``VisualInterface$L_Flip.class.C ! " #$ %& #' () (* %+ #, () %-.12this$0LVisualInterface; Synthetic CodeCoach(LVisualInterface;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$L_Flip;actionPerformed(Ljava/awt/event/ActionEvent;)VeventLjava/awt/event/ActionEvent; SourceFileVisualInterface.javaOJC 3 4 567 89 :;< =9 >? @? A3 B?VisualInterface$L_Flip InnerClassesL_Flipjava/lang/Objectjava/awt/event/ActionListener()VVisualInterface panel_Board LPanelBoard; PanelBoardisAbout()Z check_FlipLjavax/swing/JCheckBox;javax/swing/JCheckBox isSelected setSelected(Z)VsetAboutupdatesetSide 4J **+4  44b*4**** &**  * 8 :);4<>@ZAaCbb66 4/  #0PK 5f,__VisualInterface$L_Mouse.class. 8h 7i 7j klm no 7p kq rs rt ku vw xy xz r{ k| }~ r k 7 7 r v v } 7 7 v v v v & & & & r } 3this$0LVisualInterface; Synthetic CodeCoach promotionZ destinationx1Ix2y1y2(LVisualInterface;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$L_Mouse; initialise()V mouseClicked(Ljava/awt/event/MouseEvent;)VeventLjava/awt/event/MouseEvent;changeToCcolor codeLevelpiececodeLjava/lang/String; isCapture moveStats[Iije'Ljavax/swing/text/BadLocationException; mousePressed mouseExited mouseReleased mouseEntered SourceFileVisualInterface.javaOJC FN :; >?  @?     N N AB DB You must select a piece #It is not this color's turn to move CB EB O-OO-O-O You cannot move into checkjava/lang/StringBuffer F  e.p. Move  appliedThe board is outdated%javax/swing/text/BadLocationExceptionA bug occured, please report it N Illegal MoveVisualInterface$L_Mouse InnerClassesL_Mousejava/lang/Objectjava/awt/event/MouseListenerVisualInterfacelabel_ErrorMessageLjavax/swing/JLabel;javax/swing/JLabelsetText(Ljava/lang/String;)V panel_Board LPanelBoard; PanelBoardisAbout()ZsetAbout(Z)VboardLBoard;BoardsetInitialSquare(II)Vjava/awt/event/MouseEventgetX()IgetY getPromotion(II)Cpgn LTextBox;TextBox addPromotion(C)V unpromoteupdateisSidematrix[[CgetColor(C)IisColorjava/lang/Character toUpperCase(C)C canCastle(ZZ)Z checkMove(IIII)VgetCheckMoveResult()[I isCheckAfter(IIIIZ)Zjava/lang/StringvalueOf&(Ljava/lang/Object;)Ljava/lang/String;append(C)Ljava/lang/StringBuffer;toString()Ljava/lang/String;(C)Ljava/lang/String;,(Ljava/lang/String;)Ljava/lang/StringBuffer; setPromoteinsertNextMove(Ljava/lang/String;)ZprintStackTrace 789:;<=W>?=Z@?=[AB=\CB=]DB=^EB=_FGHW**+*IW ZWJKL:;=W=WMNHN**Ic deJ KL==aOPHm * * *  *?*+ +=$****r**+ *+* *(* **%** d2l**(d2ld"** d2ld**(d2l** * *2*4=*@** ** **g*+ *+* *(* **%** d2l**(d2ld"** d2ld**(d2l*=* *2*4>:* *2*46K**L*D**   := **  !:=S*J*A**   := **  !:=* ****"* #:.6.* *****$*%*P =|6r6b* 24H* **"* #."**==tm6&Y'(1*`)*:&Ya*`+(,*:&Y'(-)*:>P&Y+(,*:&Y'(x)*:&Y'(a*`)*:&Y'(1*`)*:* *****$&Y'(+)*:.&Y'(-,*:1P+* ****.**/-**&Y0(,1,**2:*45*6**j3Iti jm'o.qAsFvQwVx`yj}qyX!&5L^fu}X!@IQajy}  #0WchXiw|   ,!H"M#c&h(n)+,./124#6<8S:e;jAyCDGJLMRTWXJz KLQRA&ST!QUBVBWT!XY@Z?[\v]Bf^B_`= gqJ=gaPHAI\JKLQR=Z=ZbPHAI`JKLQR=^=^cPHAIdJKLQR=b=bdPHAIhJKLQR=f=fefg=W 7kPK ԑ4auwwVisualInterface$L_Size.class.0    !"&'this$0LVisualInterface; Synthetic CodeCoach(LVisualInterface;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$L_Size;propertyChange#(Ljava/beans/PropertyChangeEvent;)Vevent Ljava/beans/PropertyChangeEvent; SourceFileVisualInterface.javaOJC ( ) *+change, -.VisualInterface$L_Size InnerClasses/L_Sizejava/lang/Object!java/beans/PropertyChangeListener()Vjava/lang/SystemoutLjava/io/PrintStream;java/io/PrintStreamprint(Ljava/lang/String;)VVisualInterface   a J **+a   a aM  ef   c c a# $%PK 5b$VisualInterface$L_SpacePressed.class.\ ) * +, -. +/ 01 23 +4 +5 678 67 9 67 9 +: ;<?@this$0LVisualInterface; Synthetic CodeCoach(LVisualInterface;)VCodeLineNumberTableLocalVariableTablethis LVisualInterface$L_SpacePressed;keyTyped(Ljava/awt/event/KeyEvent;)VeventLjava/awt/event/KeyEvent; keyReleased keyPressed SourceFileVisualInterface.javaOJC A B CDE GH IJK LAM NO PA QRS TUjavax/swing/text/StyledDocument VW XY Z[VisualInterface$L_SpacePressed InnerClassesL_SpacePressedjava/lang/Objectjava/awt/event/KeyListener()VVisualInterfacel_MouseLVisualInterface$L_Mouse;VisualInterface$L_MouseL_Mouse promotionZ panel_Board LPanelBoard; PanelBoard unpromotejava/awt/event/KeyEvent getKeyChar()Cupdatepgn LTextBox;TextBox getDocument()Ljavax/swing/text/Document; getLength()IblackLjavax/swing/text/Style;setCharacterAttributes%(IILjavax/swing/text/AttributeSet;Z)V J **+   !A"#$!A**+ + + + * 9@AA"#%!j***** * *  `* ")ijj"#&'(=+>-+FPK 5X|6VisualInterface.class.                !  " # $ % & ' ( )* " + ,- &./ (0 12 (3 +4 56 7 89: ;< 7=> 7 7? 7@ A +BC >D E (F 3 G H IJ K L MN OP QR KS T (UVW OX Y IZ [\ K] "^ (_ "` abc Z (de ] (G +^ ^f bg Qh eS N T T b b ^i mg N bj q k ^ N b T l m T m _ N b _ N bn  k ^ N b >To  >k ^ Np b b L Mb L L L L L L L Lq 7 (r st uvw 2x (U (y 2z O{ +| m m m m (}~ 2 (  +  7  InnerClassesL_SpacePressed L_ClickedL_MouseL_AboutL_Flip L_ChessSetpgn LTextBox; CodeCoachboardLBoard;turnLChessPosition;l_MouseLVisualInterface$L_Mouse; imageSets[Ljava/lang/String;imageURLLjava/lang/String;blackLjavax/swing/text/Style; check_FlipLjavax/swing/JCheckBox; button_AboutLjavax/swing/JButton;combo_ChessSetLjavax/swing/JComboBox;label_ErrorMessageLjavax/swing/JLabel; label_Turn label_ToMove label_White label_Black panel_WhiteLjavax/swing/JPanel; panel_Black panel_Notice panel_Turn panel_Textpanel_BoardOptions panel_Aboutpanel_ChessSet panel_Board LPanelBoard; scroll_TextLjavax/swing/JScrollPane;()VCodeLineNumberTableLocalVariableTablethisLVisualInterface;initeLjava/lang/Exception;jbInitparamChessSetssizeLjava/awt/Dimension;argumentSource ExceptionssplitImageSets'(Ljava/lang/String;)[Ljava/lang/String; parameterupdateWhiteWhiteEloBlackBlackElo'Ljavax/swing/text/BadLocationException; SourceFileVisualInterface.javaOJC VisualInterface$L_Mouse  javax/swing/JCheckBoxFlip the board  javax/swing/JButtonAbout... javax/swing/JLabel  Turn 1  white to move  ??? -- 0 javax/swing/JPanel javax/swing/JScrollPane java/lang/Exception TextBox   PanelBoard  IMAGEURL  java/lang/StringDefault  IMAGESETSjava/lang/StringBufferDefault,    javax/swing/JComboBox          java/awt/Dimension   javax/swing/text/StyledDocumentBLACK  W      VisualInterface$L_SpacePressed VisualInterface$L_Clickedjavax/swing/border/BevelBorder java/awt/GridLayoutjava/awt/FlowLayoutVisualInterface$L_Flip   VisualInterface$L_AboutVisualInterface$L_ChessSet Chess Set : PGN  The default pgn was loaded The default pgn is unavailable,      %javax/swing/text/BadLocationException???0  --  Code unreadable  Turn     black to moveVisualInterfacejavax/swing/JApplet(LVisualInterface;)V(Ljava/lang/String;)VprintStackTrace(Ljavax/swing/JLabel;)V(LBoard;LVisualInterface;)V getParameter&(Ljava/lang/String;)Ljava/lang/String;append,(Ljava/lang/String;)Ljava/lang/StringBuffer;toString()Ljava/lang/String; loadImages(Ljavax/swing/JLabel;)Z([Ljava/lang/Object;)VgetBoard ()LBoard;addMouseListener!(Ljava/awt/event/MouseListener;)VgetSize()Ljava/awt/Dimension;java/awt/Color LIGHT_GRAYLjava/awt/Color; setBackground(Ljava/awt/Color;)VgetContentPane()Ljava/awt/Container;java/awt/Container setLayout(Ljava/awt/LayoutManager;)Vjavax/swing/BorderFactorycreateLoweredBevelBorder()Ljavax/swing/border/Border; setBorder(Ljavax/swing/border/Border;)V(II)VsetPreferredSize(Ljava/awt/Dimension;)V getDocument()Ljavax/swing/text/Document;addStyleD(Ljava/lang/String;Ljavax/swing/text/Style;)Ljavax/swing/text/Style;javax/swing/text/StyleConstants setForeground9(Ljavax/swing/text/MutableAttributeSet;Ljava/awt/Color;)VgetWidth()D setBounds(IIII)VsetSize getViewport()Ljavax/swing/JViewport;javax/swing/JViewportadd*(Ljava/awt/Component;)Ljava/awt/Component;addKeyListener(Ljava/awt/event/KeyListener;)V(I)VaddActionListener"(Ljava/awt/event/ActionListener;)VsetVerticalAlignment setLocationloadUrl(Ljava/lang/String;)ZsetTextsplitgetTextlength()IsetCharacterAttributes%(IILjavax/swing/text/AttributeSet;Z)VisSide()ZgetTagvalueOf&(Ljava/lang/Object;)Ljava/lang/String; updateBoard()LChessPosition;repaint ChessPositiongetTurn(I)Ljava/lang/StringBuffer;isColor! "#%'()+,-./12345678:;I**Y**Y* Y * Y* Y* Y* Y* Y*Y*Y*Y*Y*Y*Y*Y *Y!*"Y#$N '(*+5,B-O.\/i1t2345678; a *%L+'&NPR T P=*(Y*)**+Y**,*-.**/01*1*2Y3S47*56L+*2Y3S4**7Y89+:;<4*.*=W*>Y*4?@***AB**C*DL*EF*GH*IJ*KYLM***NOPQR*RST*$+Ud9cV**hW*$X**YW**ZY*[\**]Y*^_*.`*+Ud+a*bYcd*eYfg*KYLh*KYLi**jW**kW*+Udl*mYno**pW*qY*rs*6nt*mYnu**vW*KYLw*x*y*KYLz*x*{*|*mYn}**~W**mYn**W* Y** +Uidd * mYn* * W*@KYKL*@Y**!+U,d*!mYn*! YW*!*@W**W**W**W**$W**W**W**.W** W**!W*M,'**,** *:NYZ"\,^4_DbKdPe`gxikmoqstvwyz|}~+:IYp /;NVbu} '6N]nz *K-l* bq&W^++ [WLMN:**O**`*R*.******L**M**N**::+L-N,M:*7Y+9:,:;*7Y-9::;***:**.*7Y9*;** *c" *4@MWcmw   7AMV>WUSQ N      2Z]qPK 95;ABoard$L_Images.classPK 95 ** Board.classPK 5-B5dd.ChessPosition.classPK qK4GT 72ChessSet/Original/BB.gifPK K4GM8ChessSet/Original/BW.gifPK K4 e>ChessSet/Original/KB.gifPK K4}OWWDChessSet/Original/KW.gifPK K4nʪKChessSet/Original/NB.gifPK K4)PChessSet/Original/NW.gifPK K4GWChessSet/Original/PB.gifPK 5"K\ChessSet/Original/PW.gifPK L4xBaChessSet/Original/QB.gifPK L4a%`%%gChessSet/Original/QW.gifPK L4>mChessSet/Original/RB.gifPK L4kzsChessSet/Original/RW.gifPK 5_NkkNxCommentedList$Comment.classPK 5׽T)zCommentedList.classPK F5D]22~META-INF/application-client.xmlPK z4ϟLPanelBoard$L_Mouse.classPK 5-hh;PanelBoard.classPK 4$ $ ѬPgn_Reader_Version_History.txtPK 5$rr1Pgn_Reader_Webmaster_Guide.txtPK '5oc%c% TextBox.classPK 5TmVisualInterface$L_About.classPK 40j"FVisualInterface$L_CaretMoved.classPK 5Hff kVisualInterface$L_ChessSet.classPK 59]aVisualInterface$L_Clicked.classPK 54_``VisualInterface$L_Flip.classPK 5f,__ VisualInterface$L_Mouse.classPK ԑ4auww+VisualInterface$L_Size.classPK 5b$!VisualInterface$L_SpacePressed.classPK 5X|6(VisualInterface.classPK H