PK5META-INF/MANIFEST.MF1 0 н;- nAP(U*x{7K:խMg|cM/uoExˠi|^ 9gV&9B`5PK_\`PK 15ytBoard$L_Images.class1,Board$L_ImagescountI  thisLBoard$L_Images;imgLjava/awt/Image;flagsxywidthheightthis$0LBoard;  java/lang/Object()V   CodeCoachjava/awt/image/ImageObserver imageUpdate(Ljava/awt/Image;IIIII)ZaddImage (LBoard;)VCodeLineNumberTable SourceFile Board.javaLocalVariableTableBoard&L_Images InnerClassesOJCLineColumnInfo! !K*+**" % !C *Y`"  %  ! *Yd"%H    #$) '(* PK 05F\+\+ Board.class1#Board panel_Board LPanelBoard;  thisLBoard;x1I  x2 y1  y2  initX  initY  xycheckMoveResult[I    castleRight[Z "# $ isWayFree(IIII)Z &' (kingSideZcolormatrix[[C -. / checkMove(IIII)V 12 3 kingLetterC numberColorkingXkingYijisCheck(Z)Z <= >tempjava/lang/MathAabs(I)I CD BEnpasXpasYjava/lang/CharacterJ isLowerCase(C)Z LM KN isUpperCase PM KQpiecegetColor(C)I TU V toUpperCase(C)C XY KZpassant \ ] finalColor finalPieceHorizontalMovePasXPasYjava/lang/StringdcharAt(I)C fg ehlength()I jk elO-OnequalsIgnoreCase(Ljava/lang/String;)Z pq erO-O-Ot e.p.vx replaceAll8(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; z{ e|replace(CC)Ljava/lang/String; ~ e#trim()Ljava/lang/String; e substring(II)Ljava/lang/String; e toLowerCase Y Kjava/lang/StringBuilder()V append-(Ljava/lang/String;)Ljava/lang/StringBuilder; (C)Ljava/lang/StringBuilder; toString codeLjava/lang/String;promoteerroradjustementIfPawnjointtestverticalAdjustementjava/awt/ColorREDLjava/awt/Color; java/awt/GraphicssetColor(Ljava/awt/Color;)V  PanelBoardimage_WhitePawnLjavax/swing/ImageIcon; javax/swing/ImageIcongetImage()Ljava/awt/Image;  drawImage3(Ljava/awt/Image;IILjava/awt/image/ImageObserver;)Z image_BlackPawn image_WhiteRook image_BlackRook image_WhiteKnight image_BlackKnight image_WhiteBishop image_BlackBishop image_WhiteQueen image_BlackQueen image_WhiteKing image_BlackKing graphLjava/awt/Graphics; DARK_GRAY fillRect 2 WHITE SIZE  drawPiece(Ljava/awt/Graphics;CII)V BLUE drawRect 2 GRAY sidejava/lang/Object $init$  . CodeCoachsetPanel_Board(LPanelBoard;)V setLastMovesetInitialSquare(II)VgetCheckMoveResult()[I canCastle(ZZ)Z isCheckAfter(IIIIZ)Zmove(Ljava/lang/String;Z)Z setInitialdraw(Ljava/awt/Graphics;Z)VCodeLineNumberTable SourceFile Board.javaLocalVariableTableBoard$L_ImagesL_Images InnerClassesOJCLineColumnInfo! -.     \     "#K+*0* !*YTYTYTYT% w'***** ***"  !!"&$ '  ++>6+ *h`6 p`*h`6*0d2p`46*02p`d46+***+3* p`*dO*p`*d7r* p`d **p`dJ*B++*d*d+``*d*d*p`*dZ*p`dJ*B++*d*d+``*d*d`6_P66 + *h`6   `pd*h`6 *0d2 `pd46 *02 `pdd46 +  ** *+   ;*  `pd*d[* `pd*d?z*  `pdd ** `pddK*B++  *d*d+ ` `*d*d* `pd*d#^* `pddK*B++  *d*d+ ` `*d*d `6  ;+-(),. 0'253H6L7a9s;=>@BC"D@GxIJK.,RTVWX[ \"^8`NbSc^eghilUn\ovpTRv +: ; 5 Ho ^YS6: ;   uS6  &&&,.239RTWX^&V+} tBKQNPuQ%Rbkgnpq;r+*W+*ŶW+*ȶW+*˶W+*ζW+*ѶW+*ԶWq+*׶W[+*ڶWE+*ݶW/+*W+*Wr{}|}*-@CVYlo4S6   yyyyyy*02RU*02NU*02BU*02QU*02KU*02BU*02NU*02RU*02rU*02nU*02bU*02qU*02kU*02bU*02nU*02rU<?*02PU*02U*02U*02U*02U*02pU*^j (2<GR]hs~E: +i>P66666 +m+osh*%3[*)O*02*024U*02U*02*024U*02U*** *o*%3e*)W*02*024U*02U*02*024U*02U*** *+usc*%3V*)K*02*024U*02U*02*024U*02U*** *j*%3`*)S*02*024U*02U*02*024U*02U*** *O P>6+wy}L++ L+y}L+L+m6+di=0+di6d6+L [6 6d+diad6 +di1d6       [>>V+di6  -E x>+d: Y+d-+dL+m6dn+diad6+di1d6 *024'*  4*!.66 641d[Pl 66+iad6 `6 *0 24   *   4*!. 6a+diad6 68*024'*  4*!.66 6bǧU6H68*024'*  4*!.66 6DŽ**!.^*0 2UP*0 2 U*0 2 U* * * *   )-7C T ] n x}!"$%&'). 024#637<9L:U<Z=_>d?iAjnGxIKLNOQRSTV^`aefhikmop%q-s1t;vBzL{MN~[h,-.<HRVZ]cluy$(,/2?EKYeoswz}    ,+S6 6j  +   [ h I6 / [; N: |_ Q; ?: BO: H?; ,va~12O_*0246*0246*W6 t6&*W6* YOYOYO![BKNP:QNRWd6  ld&*024* YOYOYO!=dh2 '*`)* YOYOYO!   d&* YOYOYO!\*^T=72d d$*0d2U* YOYOYO!* YOYOYO! 0d d#*)* YOYOYO!* YOYOYO! =dF6 dF6   `#  * YOYOYO!* YOYOYO! 3dFdF#*)* YOYOYO!* YOYOYO!dF6 dF6  4    #*)* YOYOYO!* YOYOYO! ,dF"dF* YOYOYO!* YOYOYO!* YOYOYO!&I "*2!9#LM(,.0248:<ACEG%I8<NDPfRtTV_egikqy{ |~(;<OP\lx#67JK^__ _ _ _ B, '8_  US6J`6a  Fb =c Zb Qc ,{|TUpOR" S6&'1 ed6d6 F6F6Fl6 Fl66*0h`2h`4> !+0:@WXYcd\ ee e e e NG `H  ZI =&:  j*0246*02*024U*02U*?!*02*024U*02U*02*024U*02U2  %.?JKL]h iHjj j j j j,+ _@6<= 66 K=>k=>6/6*024666.6 * 4*!.  f  "#')#+1-5.90<)F'P5V7\9h:r;s@t7~5?@f ,+ }56{7 8 9 6:  &; S5: Y%;  "#-.')57y?*%3*)*%3*):*%3*)*%3*)VDFHIJc#N-O;P<c@UDWNXYYZc^]h^u_vcwbxc yy*+y,+BBBB =*! gh ee  _ **lm n      jjjj 2* ***rs tuv4     pppppp J*+ z{xxx ! PK +r5-B5ddChessPosition.class.#    !turnI CodeCoachcolorZ(IZ)VCodeLineNumberTableLocalVariableTablethisLChessPosition;setTurn(I)VgetTurn()IsetColor(Z)VisColor()Z SourceFileChessPosition.javaOJC "   ChessPositionjava/lang/Object()V!   g***     J*  =*   J*   =* "#  PK rK4GT 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 +r5_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 +r5׽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 45)vQIcons/nextmove.gifGIF89a9F;r!,PID k]H|&byrzJVom3߼Y tE\hH,(Pi&OwƨZ7}sHV%;;PK %5JJ@@Icons/nextpage.gifGIF89a $$$666DDDVVVgggwww!, 4h*\Jh0AC)j?@ ABCDEFG HIJKLMN OPQRST UVWXYZ[\]^_`abcdefghijklmnopqrstuvwxy z{ z|}~GAMEI ConstantValue CodeCoachABOUTRULESHELP rulesPage MAXRULESPAGE helpPage MAXHELPPAGE()VCodeLineNumberTableLocalVariableTablethis LInfoBox;draw#(Ljava/awt/Graphics;ILPanelBoard;)VgraphLjava/awt/Graphics;boxType panelBoard LPanelBoard; drawHelpBox"(Ljava/awt/Graphics;LPanelBoard;)V drawRulesBox drawAboutBox(Ljava/awt/Graphics;)V mouseClicked(Ljava/awt/event/MouseEvent;I)IeventLjava/awt/event/MouseEvent; infoBoxTypexy SourceFile InfoBox.javaOJC       java/lang/StringBufferp.  /    INTRO / BASIS-This is the user-side help of the Pgn Reader.4First of all, it is primarily a text processor which5interprets the code from the textbox on the right and6applies the changes onto the visual board on the left.8To feed the text processor, you may type (or copy/paste)6PGN code in the textbox or move the pieces directly on1the board with your mouse. The board will update 7automaticallywhen you type a space character, you paste5something in the textbox or you click in the textbox.CONTROLLING THE FLOW4When you want to explore a position deeper, the text2processor need to know on what move to stop. It is7determined by the position of the caret in the textbox.:To go to a certain move in a game simply click on the move/and it will be displayed. You may also use the 9next/previous buttons to move the caret by a single move.2Note that the next/previous buttons will pass over5alternative lines (explained further). To enter them,9you must click on a move between brackets and the flow of0the game will have entered the alternative line.TAGS AND COMMENTS,In addition to plain moves, you can feed the!text processor with special code.-PGN tags : The PGN tags are used to determine5information about the game such as the players' names7and ELO, the opening used, tournament information, etc.6They must necessarily remain before the first move and0respect the PGN standards. Using these tags, the9PGN Reader will add various information around the board.6Comments : To add a comment to a game, simply place it-between double quotes before or after a move.ALTERNATIVE LINES0Alternative lines are basically simple comments.8However, instead of using double quotes, we use brackets6to tell the text processor that this comments contains&actual moves and can be processed too!.This isn't very clear, so here is an example :51.e4 e5 [1...c5 2. Bc4] 2.Nf3 ... Using this PGN code8in the PGN Reader's textbox, you could click on the code5between brackets and the flow of the game would enter5the alternative line as if it were the original game.5Alternative lines may be nested into one another, but-a single one can be put after a certain move.      CHESS RULES*This is a short explanation of chess rules7For help on chess tactics and strategies, try this link7http://en.wikipedia.org/wiki/Chess_strategy_and_tactics-or just google out your own chess ressources,!there's plenty of them out there!!Author : Kevin Coulombe (Stonkie)Contact : pgn.stonkie@gmail.com Last edited on : August 21, 2006 INTRODUCTION$First of all, some terms definition.8The capture of an enemy piece is made by moving your own8piece on it following the rules in this guide. The enemypiece is then discarded.6A check is when one's King could be captured if it was4his opponent's turn. It must necessarily be defendedin the current turn.2A checkmate is a check situation where there is no8possible way of defending the King. The game is won when9you checkmate your opponent (the King is never captured). THE PAWN : 8The pawn can only move by one square in the direction of8the ennemy, except the first time it moves, where it has4the optionnal possibility to advance by two squares.4It cannot capture nor jump over other pieces on it's:column. It can only capture enemy pieces that are directly8in front of it in an adjacent column (ex : White pawn one4 takes black knight on d5) THE ROOK : 9The rook can move horizontaly or verticaly for any number7of squares and in any single direction. It may not jump8over other pieces, yet, if an enemy piece is in its path4it may capture it taking the captured piece's place. THE BISHOP : 7The bishop can move diagonaly for any number of squares7and in any single direction. It may not jump over other6pieces, but it may capture an enemy piece in its path.8By doing so, it takes the captured piece's place and maynot go any further. THE KNIGHT : :The knight's only moves are any of the height combinations5of a one square vertical or horizontal move and a one8square diagonal move. The knight may jump over any other:piece. It may also capture an enemy piece by moving to its position. THE QUEEN : 1The queen may either move diagonaly, verticaly or5horizontaly by any number of squares. It may not jump4over other pieces, but it may capture an enemy piece3in its path taking the place of the captured piece. THE KING : 0The king may either move diagonaly, verticaly or1horizontaly by a single square. It may capture an3enemy piece by moving to its position. However, the2king cannot be moved or left into a position where6it is in check, nor can another piece open the way for"an enemy piece to target the king.SPECIAL MOVES PART 1*There are three special moves : castling, )the promotion and the capture en passant.3Castling is a move where the King moves two squares3horizontaly and the Rook on the side where the King4castled goes on the square the King passed over. The6conditions for this move are that neither the King nor5the Rook have moved from their original positions and2no enemy piece may attack any of the three squares:inclusively between the king's initial an final positions.SPECIAL MOVES PART 28The promotion is when a pawn arrives on the last line of8the board and could no move any further. On it's arrival:on that square, the player must choose to turn it into any7of the following piece : queen, knight, rook or bishop.4Capture en passant must necessarily be made the move9after the enemy pawn to capture has moved by two squares.7Then, any friendly pawn in a situation to capture it if9it had moved by only one square can do it. The enemy pawn5is discarded and the friendly pawn moves to the enemypawn's intermediary step.Pgn Reader - Version 2.1 Beta/Made for the internationnal chess team Synergie'The source code will NOT be distributed2but any use of the actual Java applet is permitted6If you want to use it, download the .jar file and read4the documentation provided in our developpement area7concerning implementation of the applet on your website*Development : http://www.synergie-home.comAugust 20, 2006  InfoBoxjava/lang/Objectjava/awt/ColorBLACKLjava/awt/Color;java/awt/GraphicssetColor(Ljava/awt/Color;)V fillRoundRect (IIIIII)VWHITE drawRoundRectGREEN(Ljava/lang/String;)Vappend(I)Ljava/lang/StringBuffer;,(Ljava/lang/String;)Ljava/lang/StringBuffer;toString()Ljava/lang/String; drawString(Ljava/lang/String;II)V PanelBoardimage_PreviousLjavax/swing/ImageIcon;javax/swing/ImageIcongetImage()Ljava/awt/Image; drawImage3(Ljava/awt/Image;IILjava/awt/image/ImageObserver;)Z image_Nextimage_WhitePawnimage_WhiteRookimage_WhiteBishopimage_WhiteKnightimage_WhiteQueenimage_WhiteKingjava/awt/event/MouseEventgetX()IgetY!    9*  1/"***,*, #(+ 0$ 111 **2h;  **2h;  *3f9  * * Y JU*-U*-s*-*-*-*-Ͷ*-*-*- *-y*-U*-s* -*!-*"-*#-ö*$-׶*%-*&-*'-*(-,*)-U**-s*+-*,-*--*.-ȶ*/-ܶ*0-*1-*2-*3-,*4-U*5-s*6-*7-*8-*9-ȶ*:-ܶ*;-*<-*=-*>-,*?-@*+@AEBW*+CAEEBW<)*+ ,2-D/K1o3689:;=>?@ACF HIJ)K4L?MJOUP`QkRvSyVXY[\]^_`bcdgijkl(n3o>pIqTr_sjtux|y{|~&&& **2h;  **2h;  *3f9  * * Y D JUD 5~q*E-U*F-s*G-*H-*I-*J-ȶ*K-*L-*Mi*N-U*O-s*P-*Q-*R-*S-ȶ*T-ܶ*U-*V-*W-*X-,*Y-U*+ZAx7BW*[-x*\-*]-*^-*_-ȶ*`-ܶ*a-*b-U*+cAx7BW*d-x*e-*f-*g-<*h-U*+iA7BW*j-x*k-*l-*m-*n-ȶ*o-U*+pA7BW*q-x*r-*s-*t-*u-ȶ*v-U*+wA7BW*x-x*y-*z-*{-H*|-U*+}Ax7BW*~-x*-*-*-*-ȶ*-ܶ*-U*-x*-*-*-*-ȶ*-ܶ*-*-*-z*-U*-x*-*-*-*-ȶ*-ܶ*-*-*-*-,D*+@AEBWD *+CAEEBWj 2DKp  !,7BMXcny !,7:DV`kv  +.8IS^it&1<GR ] h sz <**2h;  **2h;  *3f9  * *-U*As*A*A*A*Aö*A׶*-*K- *L-*;J 2D!K#U%_&j'u()*,-./1  ^*=*>jEHeADDdD!EeD D`DNEGe@d Ee `J56 8$;%U&>4@IATBjCrFuIKLMNTU*  33563) D WPK G5D]22META-INF/application-client.xml Pgn Reader-app-client PK N 5Vm//MenuBar$1.class12 MenuBar$1this$0 LMenuBar;  java/lang/Object()V  MenuBar  panel_Board LPanelBoard;   PanelBoardgetInfoBoxType()I  setInfoBoxType(I)V  this LMenuBar$1;eLjava/awt/event/ActionEvent; CodeCoachjava/awt/event/ActionListener" (LMenuBar;)VactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTable SourceFile MenuBar.javaLocalVariableTableEnclosingMethod(LVisualInterface;)V - InnerClassesOJCLineColumnInfo1#%&'t(***('+(( !! $' *+* !)*/ ,.0 PK N 59 ƒ//MenuBar$2.class12 MenuBar$2this$0 LMenuBar;  java/lang/Object()V  MenuBar  panel_Board LPanelBoard;   PanelBoardgetInfoBoxType()I  setInfoBoxType(I)V  this LMenuBar$2;eLjava/awt/event/ActionEvent; CodeCoachjava/awt/event/ActionListener" (LMenuBar;)VactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTable SourceFile MenuBar.javaLocalVariableTableEnclosingMethod(LVisualInterface;)V - InnerClassesOJCLineColumnInfo1#%&'t(***('+(( !! $' *+* !)*/ ,.0 PK N 5I;os//MenuBar$3.class12 MenuBar$3this$0 LMenuBar;  java/lang/Object()V  MenuBar  panel_Board LPanelBoard;   PanelBoardgetInfoBoxType()I  setInfoBoxType(I)V  this LMenuBar$3;eLjava/awt/event/ActionEvent; CodeCoachjava/awt/event/ActionListener" (LMenuBar;)VactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTable SourceFile MenuBar.javaLocalVariableTableEnclosingMethod(LVisualInterface;)V - InnerClassesOJCLineColumnInfo1#%&'t(***('+(( !! $' *+* !)*/ ,.0 PK N 5 VcKKMenuBar$4.class1a MenuBar$4this$0 LMenuBar;  java/lang/Object()V  $init$  lastIndexI  MenuBar panel_Board LPanelBoard;   PanelBoardgetInfoBoxType()I  setInfoBoxType(I)V ! "checkMenuItem_ChessSet [Ljavax/swing/JCheckBoxMenuItem; $% &java/awt/event/ActionEvent( getSource()Ljava/lang/Object; *+ ),label_ErrorMessageLjavax/swing/JLabel; ./ 0 loadImages(Ljavax/swing/JLabel;)Z 23 4imageURLLjava/lang/String; 67 8 imageSets[Ljava/lang/String; :; <;(Ljavax/swing/JLabel;Ljava/lang/String;Ljava/lang/String;)Z 2> ?appletLVisualInterface; AB CVisualInterfaceEupdate G FHthis LMenuBar$4;eventLjava/awt/event/ActionEvent;newIndexi CodeCoachjava/awt/event/ActionListenerQ (LMenuBar;)VactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTable SourceFile MenuBar.javaLocalVariableTableEnclosingMethod(LVisualInterface;)V \ InnerClassesOJCLineColumnInfo1RPt V*WtTUV)*=**#>*'2+-=*'*M**15W%**1*9*=2@W*DI*W>xz{}"247}FNRgZ*JKLMN'OP vv}Pv SV*+* *PsXY^ []_ PK N 5)+j//MenuBar$5.class16 MenuBar$5this$0 LMenuBar;  java/lang/Object()V  MenuBar pgn LTextBox;  TextBox previousMove  appletLVisualInterface;  VisualInterfaceupdate  this LMenuBar$5;eLjava/awt/event/ActionEvent; CodeCoachjava/awt/event/ActionListener& (LMenuBar;)VactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTable SourceFile MenuBar.javaLocalVariableTableEnclosingMethod(LVisualInterface;)V 1 InnerClassesOJCLineColumnInfo1')*+]** ,d ef/!"#$%bb%b (+ *+* %a-.3 024 PK N 5tc++MenuBar$6.class16 MenuBar$6this$0 LMenuBar;  java/lang/Object()V  MenuBar pgn LTextBox;  TextBoxnextMove  appletLVisualInterface;  VisualInterfaceupdate  this LMenuBar$6;eLjava/awt/event/ActionEvent; CodeCoachjava/awt/event/ActionListener& (LMenuBar;)VactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTable SourceFile MenuBar.javaLocalVariableTableEnclosingMethod(LVisualInterface;)V 1 InnerClassesOJCLineColumnInfo1')*+]** ,Z [\/!"#$%XX%X (+ *+* %W-.3 024 PK N 5LMenuBar$7.class1- MenuBar$7this$0 LMenuBar;  java/lang/Object()V  MenuBar pgn LTextBox;  TextBoxpaste  this LMenuBar$7;eLjava/awt/event/ActionEvent; CodeCoachjava/awt/event/ActionListener (LMenuBar;)VactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTable SourceFile MenuBar.javaLocalVariableTableEnclosingMethod(LVisualInterface;)V ( InnerClassesOJCLineColumnInfo1 !"O *# P Q&  MMM " *+* L$%* ')+ PK N 57jMenuBar$8.class1- MenuBar$8this$0 LMenuBar;  java/lang/Object()V  MenuBar pgn LTextBox;  TextBoxcopy  this LMenuBar$8;eLjava/awt/event/ActionEvent; CodeCoachjava/awt/event/ActionListener (LMenuBar;)VactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTable SourceFile MenuBar.javaLocalVariableTableEnclosingMethod(LVisualInterface;)V ( InnerClassesOJCLineColumnInfo1 !"O *# G H&  EEE " *+* D$%* ')+ PK N 5MenuBar$9.class1- MenuBar$9this$0 LMenuBar;  java/lang/Object()V  MenuBar pgn LTextBox;  TextBoxcut  this LMenuBar$9;eLjava/awt/event/ActionEvent; CodeCoachjava/awt/event/ActionListener (LMenuBar;)VactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTable SourceFile MenuBar.javaLocalVariableTableEnclosingMethod(LVisualInterface;)V ( InnerClassesOJCLineColumnInfo1 !"O *# ? @&  === " *+* <$%* ')+ PK N 5nq MenuBar.class1java/lang/Character toLowerCase(C)C  this LMenuBar;letterCjava/lang/String charAt(I)C  length()I  MenuBar getAeiouy(C)Z   mnemonics[CmenuNameLjava/lang/String; currentIndexInaeiouyZijavax/swing/JMenu% getItemCount ' &(getItem(I)Ljavax/swing/JMenuItem; *+ &,javax/swing/JMenuItem.getText()Ljava/lang/String; 01 /2getFreeMnemonic([CLjava/lang/String;)C 45 6 setMnemonic(C)V 89 /:getClass()Ljava/lang/Class; <= /> &>updateRecursiveMnemonics(Ljavax/swing/JMenu;)V AB CmenuLjavax/swing/JMenu; getMenuCount G HgetMenu(I)Ljavax/swing/JMenu; JK L &2 &:javax/swing/JMenuBarP()V RS QT$init$ VS WappletLVisualInterface; YZ [VisualInterface]pgn LTextBox; _` ^a a panel_Board LPanelBoard; de ^f f imageSets[Ljava/lang/String; ij ^k kimageURL n ^o olabel_ErrorMessageLjavax/swing/JLabel; rs ^t t menu_Edit wF x menuItem_CutLjavax/swing/JMenuItem; z{ |add0(Ljavax/swing/JMenuItem;)Ljavax/swing/JMenuItem; ~ & MenuBar$9 (LMenuBar;)V R addActionListener"(Ljava/awt/event/ActionListener;)V / menuItem_Copy {  MenuBar$8 menuItem_Paste {  MenuBar$7  addSeparator S & menuItem_Next {  MenuBar$6 javax/swing/KeyStroke getKeyStroke(II)Ljavax/swing/KeyStroke; setAccelerator(Ljavax/swing/KeyStroke;)V /menuItem_Previous {  MenuBar$5 ((Ljavax/swing/JMenu;)Ljavax/swing/JMenu; ~ javax/swing/JCheckBoxMenuItemcheckMenuItem_ChessSet [Ljavax/swing/JCheckBoxMenuItem; (Ljava/lang/String;)V R  menu_ChessSet F  MenuBar$4 buttonGroup_ChessSetLjavax/swing/ButtonGroup; javax/swing/ButtonGroup(Ljavax/swing/AbstractButton;)V ~  setSelected(Z)V  menu_Options F  menu_Help F  menuItem_Help {  MenuBar$3 menuItem_ChessRules {  MenuBar$2 menuItem_About {  MenuBar$1 updateMnemonics S Edit &Cut /CopyPaste Next move Precious moveOptions Chess Set THelp Chess RulesAbout CodeCoachjava/lang/Exception(LVisualInterface;)VCodeLineNumberTable SourceFile MenuBar.javaLocalVariableTable Exceptions InnerClassesOJCLineColumnInfo!QwFz{{{{{FF F${%{&{'YZ)_`*de+ij,n-rs.VS*&Yy*/Y}*/Y*/Y*/Y*/Y*&Y*&Y*Y*&Y*/Y*/Y*/Y 6  '4AN[hs$%&'R*U*X*+\*+bc*+gh*+lm*+pq*+uv*y*}W*}Y**y*W*Y**y*W*Y**y*y*W*Y**'*y*W*Y**%**yW*m=*>E*Y*m2S**2W*2Y***2˄*2**W**ҶW**ضW*ػY*۶**޶W*޻Y***W*Y***նW* )23 456%7-85:A;PB\CkJwKSUV^_`hiklnp qr+8n@JV_kz *YZ! J$  11kn 1S;*I<M>*,*,*MN7U*M,4O**MDױ " )2: *;6!  2 /$  AB^+)=N6K+-?-*-+-37U+--4;+-?+@*+-&D *  *7GT] 4^^EFY!  U Q$  45G k>,6,6+666E+466>*,6,6 N +.49:; > QT^hj \ kkki  _ Y U! R"#L$    D>a<e<i<o<u<y< @#A(B&C( DD   J  PK 5c AAPanelBoard$L_Mouse.class1PanelBoard$L_Mousethis$0 LPanelBoard;  java/lang/Object()V  thisLPanelBoard$L_Mouse;eventLjava/awt/event/MouseEvent; PanelBoard infoBoxTypeI  InfoBox mouseClicked(Ljava/awt/event/MouseEvent;I)I  boardLBoard;  Board!setInitialSquare(II)V #$ "% promotionZ '( )java/awt/event/MouseEvent+getX()I -. ,/getY 1. ,2 getPromotion(II)C 45 6appletLVisualInterface; 89 :VisualInterface<pgn LTextBox; >? =@TextBoxB addPromotion(C)V DE CF unpromote H Iupdate K =L destination N( Ox1 Q Ry1 T UisSide()Z WX Ylabel_ErrorMessageLjavax/swing/JLabel; [\ ]_javax/swing/JLabelasetText(Ljava/lang/String;)V cd bematrix[[C gh "igetColor(C)I kl "mYou must select a pieceoisColor qX Cr#It is not this color's turn to movetx2 v wy2 y zjava/lang/Character| toUpperCase(C)C ~ } canCastle(ZZ)Z "O-OO-O-O checkMove(IIII)V "getCheckMoveResult()[I " isCheckAfter(IIIIZ)Z "You cannot move into checkjava/lang/StringBuilder append-(Ljava/lang/String;)Ljava/lang/StringBuilder; (C)Ljava/lang/StringBuilder; toString()Ljava/lang/String;  e.p. setPromote $ insertNextMove(Ljava/lang/String;)Z CMove  appliedThe board is outdatedA bug occured, please report it%javax/swing/text/BadLocationExceptionprintStackTrace  Illegal MovechangeToCcolor codeLevelpiececodeLjava/lang/String; isCapture moveStats[Iije'Ljavax/swing/text/BadLocationException; CodeCoachjava/awt/event/MouseListener(LPanelBoard;)V mouseEntered(Ljava/awt/event/MouseEvent;)V mouseReleased mouseExited mousePressedCodeLineNumberTable SourceFilePanelBoard.javaLocalVariableTableL_Mouse InnerClassesOJCLineColumnInfo!N(QvTy **+** &**9*+0+37="*;AG*J*;M*P*+0S*+3V*S *V *S *V*Z%**S d2lS**V d2ldV"**S d2ldS**V d2lV*^`f* * j*V2*S4n>*^pfC*;As* *S*V&*P*^uf}*+0x*+3{*x *{ *x *{*Z%**x d2lx**{ d2ld{"**x d2ldx**{ d2l{*^`f6* j*V2*S46`:* j*{2*x46K*S*VM*{F*x*  :6!*x*  :6U*VL*{C*x*  :6!*x*  :6* *S*V*x*{* :.6. * *S*V*x*{*;As*^f*PP 66 r6 b* j 2 4J*   *x*{* .$ *S *V 6 6    vn7Y1*V`:Ya*S`:Y-:6PY:Yx:Ya*x`:Y1*{`:* *S*V*x*{*;AsY+:.Y:1P**{ *{**x*{***;A3*;M*^Yf*^f: *^f *^f*P*;Mws +5E I#W$^%k)r,z-/2459:>@B#C2DLF^GfJuN}OQTVW[\_abc d>fHhPj^lgnvpzqtvxy~ !$2\hmn}8TYov}(0I`owz  E#S >(y i   @A A     A A  " *+*     PK 5 EEPanelBoard.class1Z PanelBoardlabel_ErrorMessageLjavax/swing/JLabel;  javax/swing/JLabel setText(Ljava/lang/String;)V l_MouseLPanelBoard$L_Mouse;  PanelBoard$L_Mouse destinationZ  boardLBoard;  BoardsetInitialSquare(II)V  ! unpromote()V #$ %setInfoBoxType(I)V '( )this LPanelBoard; infoBoxTypeI -. /appletLVisualInterface; 12 3VisualInterface5update 7$ 68promoteY :. ;promoteX =. > promotion @ Axyside E Fheight H. Ilettres[Cjava/awt/ColorM LIGHT_GRAYLjava/awt/Color; OP NQjava/awt/GraphicsSsetColor(Ljava/awt/Color;)V UV TW fillRoundRect (IIIIII)V YZ T[ DARK_GRAY ]P N^ drawRoundRect `Z Ta Promote to...c drawString(Ljava/lang/String;II)V ef Tg drawPiece(Ljava/awt/Graphics;CII)V ij kgraphLjava/awt/Graphics;getClass()Ljava/lang/Class; op 6qChessSet/Original/PB.gifsjava/lang/ClassugetResourceAsStream)(Ljava/lang/String;)Ljava/io/InputStream; wx vyjava/io/InputStream{read([B)I }~ |javax/swing/ImageIcon([B)V image_BlackPawnLjavax/swing/ImageIcon; ChessSet/Original/PW.gifimage_WhitePawn ChessSet/Original/RB.gifimage_BlackRook ChessSet/Original/RW.gifimage_WhiteRook ChessSet/Original/NB.gifimage_BlackKnight ChessSet/Original/NW.gifimage_WhiteKnight ChessSet/Original/BB.gifimage_BlackBishop ChessSet/Original/BW.gifimage_WhiteBishop ChessSet/Original/QB.gifimage_BlackQueen ChessSet/Original/QW.gifimage_WhiteQueen ChessSet/Original/KB.gifimage_BlackKing ChessSet/Original/KW.gifimage_WhiteKing Icons/nextpage.gif image_Next Icons/previouspage.gifimage_Previous *A bug occured on loading, please report itjava/io/IOExceptionjava/lang/SystemoutLjava/io/PrintStream; The .jar file is corrupted, please revert all changes in the file's internal organisation or download a new copy from http://www.synergie-home.com/java/io/PrintStreamprintln java/lang/NullPointerExceptionbytes[BeLjava/io/IOException; Ljava/lang/NullPointerException; java/net/URLjava/lang/StringBuilder $ append-(Ljava/lang/String;)Ljava/lang/StringBuilder; /PB.giftoString()Ljava/lang/String; (Ljava/net/URL;)V /PW.gif/RB.gif/RW.gif/NB.gif/NW.gif/BB.gif/BW.gif/QB.gif/QW.gif /KB.gif /KW.gif  URL malformedjava/net/MalformedURLExceptionbaseUrlLjava/lang/String;chessSet Ljava/net/MalformedURLException;draw(Ljava/awt/Graphics;Z)V   isPromote()Z  drawPromoteBox(Ljava/awt/Graphics;II)V  !InfoBox##(Ljava/awt/Graphics;ILPanelBoard;)V % $&javax/swing/JPanel( )$init$ +$ ,setPanel_Board(LPanelBoard;)V ./ 0addMouseListener!(Ljava/awt/event/MouseListener;)V 23 4SIZE 6. 7BEGINX 9. :BEGINY <. = / ? CodeCoach initialisegetInfoBoxType()I setPromoteisSidesetSide(Z)V getPromotion(II)C loadImages(Ljavax/swing/JLabel;)Z;(Ljavax/swing/JLabel;Ljava/lang/String;Ljava/lang/String;)Zpaint(Ljava/awt/Graphics;)V/(LBoard;LVisualInterface;Ljavax/swing/JLabel;)VCodeLineNumberTable SourceFilePanelBoard.javaLocalVariableTableL_Mouse InnerClassesOJCLineColumnInfo!)6.A9.A<.AA12AAAEA=.A:.AH.A-.A@A!A#A$A%A&A'A(A*A+A,A-A.A/A1A2+$Qy=*28* ;* >*Y*@*G*?*<*J*0*BR*  #(-27!PQ%***-*-*,4*++*1**5R56 789;$<U*%+,%%12%A 4444A4NOQ4*+*G**+*?*<"*0 +*0*'R@ BC#D*E3GU4+,4mnA>>A>KMQ*YYY,-*YYY,-*YYY,-*YYY,-*YYY,-*YYY,-*YYY,-*YYY,-*YYY,-*YYY,- *YYY,- *YYY,-:+6RJM)NRO{PQRS"TLUvVWXZ\]a`aU4+, A IIIIZAIKLQM*4rtz,W*Y,*4rz,W*Y,*4rz,W*Y,*4rz,W*Y,*4rz,W*Y,*4rz,W*Y,*4rz,W*Y,*4rz,W*Y,*4rz,W*Y,*4rz,W*Y,*4rz,W*Y,*4rz,W*Y,*4röz,W*Y,*4rȶz,W*Y,˧N+Ͷ6:׶R%fjk#m4n@pQq]sntzvwyz|} (9EVbsU4+, A ddfAd Q2*Gd> *J *ZJ+RX+K*Jd  \+_X+K*Jd  b+L*J`b  b+d_*J`h*G *GYU*+Rd*J(`l*+N*J(`l*+B*J(`l*+Q*J(`lR*+rd*J(`l*+n*J(`l*+b*J(`l*+q*J(`lRV  ':ATix 1U*2+,2mn2C.2D.A AIJQF*J(`d=822d,,%YRUYNUYBUYQUN-dd2l4R ":CDEU*F+,FC.FD.: KLA AGHQJ*GR U+,EAAFQ=*GR U +,AAE Q_ *?*<R U  +, C. D.AAQF*?R  U +,AA#$QP*<*?*BR U +,AACDQ=*0R U +,AA'(QU *0*49R U +, -.AAB$Ql$***"*&**R #U $+,AAASTW VX 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 154r11 TextBox.class1Y java/net/URL(Ljava/lang/String;)V  openConnection()Ljava/net/URLConnection;   java/net/HttpURLConnection GET setRequestMethod  connect()V  java/io/InputStreamReadergetInputStream()Ljava/io/InputStream;  (Ljava/io/InputStream;)V  getResponseCode()I  !read([C)I #$ %TextBox'code!Ljavax/swing/text/StyledDocument; )* (+java/lang/String- copyValueOf([CII)Ljava/lang/String; /0 .1javax/swing/text/StyledDocument3 insertString5(ILjava/lang/String;Ljavax/swing/text/AttributeSet;)V 56 47java/lang/Exception9this LTextBox;pathLjava/lang/String;uLjava/net/URL;hucLjava/net/HttpURLConnection;inputLjava/io/InputStreamReader;buffer[CnbCharIeLjava/lang/Exception;java/lang/StringBuilderK  LMappend-(Ljava/lang/String;)Ljava/lang/StringBuilder; OP LQ(C)Ljava/lang/StringBuilder; OS LTtoString()Ljava/lang/String; VW LXgetText(II)Ljava/lang/String; Z[ 4\charAt(I)C ^_ .`length b .cequalsIgnoreCase(Ljava/lang/String;)Z ef .gtagNameinTagZletterCibegin CommentedListp qM addComment(C)V st qugetNextComment()C wx qy removeComment { q|commentsLCommentedList; lastSpace H (color k (turn H ((I)Ljava/lang/StringBuilder; O L....getEndOfComment(I)I ( endOfLine H (equals(Ljava/lang/Object;)Z .%javax/swing/text/BadLocationExceptione.p.[ ] blackLjavax/swing/text/Style; (setCaretPosition(I)V (movequotetextTurn'Ljavax/swing/text/BadLocationException;temp..getBeginingOfComment (currentPosition H (boardLBoard; ( lineBegin commentedBoard setLastMove(IIII)V getCaretPosition ( getLength 4active k (valueOf(I)Ljava/lang/String; . setInitial   ChessPosition(IZ)V  readCode (bracket=green (printStackTrace  label_ErrorMessageLjavax/swing/JLabel; (Promoting to Bishopjavax/swing/JLabelsetText  Promoting to KnightPromoting to RookPromoting to Queen4An error occurred during promotion, please report itintogray (setCharacterAttributes%(IILjavax/swing/text/AttributeSet;Z)V 4red  ( goInBrackets  ((Ljava/lang/String;Z)Z   initial enPassantj passantLetter errorLengthjavax/swing/JTextPane M$init$  ( getDocument()Ljavax/swing/text/Document;  (REDaddStyleD(Ljava/lang/String;Ljavax/swing/text/Style;)Ljavax/swing/text/Style;  4java/awt/Color Ljava/awt/Color; " !#javax/swing/text/StyleConstants% setForeground9(Ljavax/swing/text/MutableAttributeSet;Ljava/awt/Color;)V '( &)setBold*(Ljavax/swing/text/MutableAttributeSet;Z)V +, &-GRAY/ /" !1GREEN3 3" !5 M CodeCoach codeBeginloadUrlgetTag&(Ljava/lang/String;)Ljava/lang/String;insertNextMove previousMovenextMovesetCurrentPositiongetTurnsetTurngetCode#()Ljavax/swing/text/StyledDocument;setCode$(Ljavax/swing/text/StyledDocument;)VisColor()ZsetColor(Z)VgetBoard ()LBoard; updateBoard()LChessPosition; addPromotion(Ljavax/swing/JLabel;)VCodeLineNumberTable SourceFile TextBox.javaLocalVariableTable ExceptionsOJCLineColumnInfo!(8H8H89H88H8H8k8k8)*8888 8!Q3*Y7**4,R  PQ ***+***4*$**.**40*2***44*6******αRB$% ')(*2+:-N.X0l1v3{45679U;<8##8#QB nqYrM6LYN*ҶR.UY:62*,]a>,z`,z+*,**d`*,}*-[ ,]v( ,)v" ,"v 9 3 -.' ![("] )~66*,`]``6*,]a>  y s m6 *, `]a> *, `]a>    *,*`*dd `*67*,`]a6 + $  : ,z ,}*<"3(*[!,]v,)v ,"v*d#*6  )*,* *d** * ݱ*,dd`d] *Χ*Ι**,*`*`d]* !*,*`*dd**,*`*dd**-*Y`LYN*ҶR.UY:***!*,*`*dd***,z"±RF=? @&B,D=GDILKgMkNtPzRTVXZ]bdfhik/m2oFqIsLt`qxw{}d $'2:@Y_ef"'4QRXBmUz n;<n Hf=1lm c k&H>)DnH Hm2gH I :H 8 ;;=t{BdsV8;OtQ!*,*ȻLYNRUY*8M,[B+N7QORC*3*'***$'R>'(,Xadmpy|U ;<m(I88MNQ *****ȵ**,<=**λqYrNLYN*ҶR.UY:**Y**ڰ**, *Y` *Y`*,*d]a]g*,*d]a)N*,*d]a 5*,*d]a *,*d]a | *Y`*,*d]a *,*d]a"*,*d]a[*,*d]a( *Yd*,]a6. Yڰ*ݧ *Y`*,*]a *,*]a"˻Y**ڰR# *,.38@[bix+y     *\ !+#%'%* +U> ;<,H.nH@[>alm8V8Qz ZqYrN*,]a6H*,]a6-z-}*,]a6" -"v   . -z* 6+("[-]v-)v 6`=c*,]a6="4(+["-]v-)v -"v-z-}-z :6**d`:=R+046890:9<==@>T@[Aa6DEzILMPQTzWY[^_bcf g#j,k0W=n?pDzEsMuTvWzXyYzU>Z;<ZHnHR!lm?I8-=W0Yn8-KLQ=*R ~U ;<8|8|IJQJ*R U;<k88GHQ=*R U ;<88EFQJ*+,R U;<)*88CDQ=*,R U ;<88BQJ*R U;<H88A Q=*R U ;<88@QJ*R U;<H88?Q5Q*<<*,]a=H"( [ *<*,]`<*,]a="([    LYN*RYN-d6*,]-`<*,]a=I"( [ *<*,]-`<*,]a="([    *:KNRr  1:=PTd FNPU>Q;<FnH/lm>bHPI88>Q *< =LYN*RYN*LYN-RRYN-d6*,dd]-d<*,]a=:o") ] *<*,dd]- d<*,d]d<:*,]a=")]  y s m*LYN*dRYNLYN*RYN-d61") ] *<*,]a=    o") ] *<*,dd]- d<*,d]d<:*,]a=")]  y s m*,]a=.-"'(![    *:*FsvR6 O%,@F^cvx{    4KQT f!o#r%(*+-12346: (3=6?9AI=yD|FIKLOU\ ;<nHylm%\>F;bHxIII I8 DA6I8=fQ *=>=*,]a6*LYN*RY:LYN*RY:5"( [ *=*,]a6"-(&[    **,d]yd`=5"( [ *=*,]a6"-(&[    *:*,]a6>    *6D"( [*6*U*,]a6"-(&[    **,]`=:*LYNR+RYLLYNR+RRYLLYNR+RYL*,]a6 , %  LYN+RRYL: *,+*8*+d`TW03R8STV WY\&]A_Ya\cqdzf}galnprsu vpWzY\_pr+35@TXquUf ;<>nHklm>>YIXH5II 8 Q_zV8QQHqYrM*,]a>] ,[v) ,(v" ,"vO*,]a>,z ,}-] ,[v) ,(v" ,"v,zdRZ'-6<BEHX`gmv|U*;<nH~lm8 V8QHqYrM*,]a>[ ,]v( ,)v" ,"vO*,]a>,z ,}-[ ,]v( ,)v" ,"v,z`RZ'-6<BEHX`gmv|U*;<nH~lm8 V8;<QWK=6LYN+R UYL*,]a>*,]a>   *,+d]+h+d`6*,]a>*,]a>   "I6*,]a>*,]a>"*,d]*,]a>]=([=    R(*.14EWmv &+CDEHU>K;<Ki>Ijk*!lmFnHoH8V8:fQE qY+M, N--Y-:-"Ƞ5:6&6*,28ۧ :6dg:RJ (29<EKNagi no pURq;<q=> [?@SAB(<CD9+EF<(GHiIJ888STW PK O 5쇃VisualInterface$1.class1:VisualInterface$1this$0LVisualInterface;  java/lang/Object()V  VisualInterface  panel_Board LPanelBoard;   PanelBoardsetInfoBoxType(I)V  pgn LTextBox;  TextBoxnextMove   update " #thisLVisualInterface$1;eLjava/awt/event/ActionEvent; CodeCoachjava/awt/event/ActionListener*(LVisualInterface;)VactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTable SourceFileVisualInterface.javaLocalVariableTableEnclosingMethodinstallControlPanel 5  InnerClassesOJCLineColumnInfo1+-./i**!*$0 3%&'()) ,/ *+* )127 468 PK x5K^qqVisualInterface$10.class./     !"$%this$0LVisualInterface; Synthetic CodeCoachactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$10;eLjava/awt/event/ActionEvent;(LVisualInterface;)V SourceFileVisualInterface.javaOJC & '() *+ ,- .VisualInterface$10 InnerClassesjava/lang/Objectjava/awt/event/ActionListenerVisualInterface panel_Board LPanelBoard; PanelBoardgetInfoBoxType()IsetInfoBoxType(I)V()V   t t(***xz~'(( u uJ **+     t# PK x5ΠiAqqVisualInterface$11.class./     !"$%this$0LVisualInterface; Synthetic CodeCoachactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$11;eLjava/awt/event/ActionEvent;(LVisualInterface;)V SourceFileVisualInterface.javaOJC & '() *+ ,- .VisualInterface$11 InnerClassesjava/lang/Objectjava/awt/event/ActionListenerVisualInterface panel_Board LPanelBoard; PanelBoardgetInfoBoxType()IsetInfoBoxType(I)V()V    t(***'((  J **+     # PK O 5tAVisualInterface$2.class1:VisualInterface$2this$0LVisualInterface;  java/lang/Object()V  VisualInterface  panel_Board LPanelBoard;   PanelBoardsetInfoBoxType(I)V  pgn LTextBox;  TextBox previousMove   update " #thisLVisualInterface$2;eLjava/awt/event/ActionEvent; CodeCoachjava/awt/event/ActionListener*(LVisualInterface;)VactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTable SourceFileVisualInterface.javaLocalVariableTableEnclosingMethodinstallControlPanel 5  InnerClassesOJCLineColumnInfo1+-./i**!*$0 3%&'()) ,/ *+* )127 468 PK O 5/iVisualInterface$3.class1:VisualInterface$3this$0LVisualInterface;  java/awt/event/KeyAdapter()V  java/awt/event/KeyEvent  getModifiers()I   getKeyCode  VisualInterfacepgn LTextBox;  TextBoxnextMove   previousMove ! "update $ %thisLVisualInterface$3;eventLjava/awt/event/KeyEvent; CodeCoach(LVisualInterface;)V keyReleased(Ljava/awt/event/KeyEvent;)VCodeLineNumberTable SourceFileVisualInterface.javaLocalVariableTableEnclosingMethodjbInit 5  InnerClassesOJCLineColumnInfo1-./9+3+'* +% *#*&0eghi'j1l8o39'(9)*+cc+c ,/ *+* +b127 468 PK x5'1  VisualInterface$4.class.*     "#this$0LVisualInterface; Synthetic CodeCoachactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$4;eLjava/awt/event/ActionEvent;(LVisualInterface;)V SourceFileVisualInterface.javaOJC  $ %&' () )VisualInterface$4 InnerClassesjava/lang/Objectjava/awt/event/ActionListenerVisualInterfacepgn LTextBox;TextBoxcut()V   $ O * ' (   % %J **+)    ) ) $! PK x5et  VisualInterface$5.class.*     "#this$0LVisualInterface; Synthetic CodeCoachactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$5;eLjava/awt/event/ActionEvent;(LVisualInterface;)V SourceFileVisualInterface.javaOJC  $ %&' () )VisualInterface$5 InnerClassesjava/lang/Objectjava/awt/event/ActionListenerVisualInterfacepgn LTextBox;TextBoxcopy()V   , O * / 0   - -J **+1    1 1 ,! PK x5|cՕ  VisualInterface$6.class.*     "#this$0LVisualInterface; Synthetic CodeCoachactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$6;eLjava/awt/event/ActionEvent;(LVisualInterface;)V SourceFileVisualInterface.javaOJC  $ %&' () )VisualInterface$6 InnerClassesjava/lang/Objectjava/awt/event/ActionListenerVisualInterfacepgn LTextBox;TextBoxpaste()V   4 O * 8 9   5 5J **+:    : : 4! PK x5po,,VisualInterface$7.class.-     !"$%this$0LVisualInterface; Synthetic CodeCoachactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$7;eLjava/awt/event/ActionEvent;(LVisualInterface;)V SourceFileVisualInterface.javaOJC & '() *+ ,+ +VisualInterface$7 InnerClassesjava/lang/Objectjava/awt/event/ActionListenerVisualInterfacepgn LTextBox;TextBoxnextMove()Vupdate   ? Z**B CD @ @J **+E   E E ?# PK x5{00VisualInterface$8.class.-     !"$%this$0LVisualInterface; Synthetic CodeCoachactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$8;eLjava/awt/event/ActionEvent;(LVisualInterface;)V SourceFileVisualInterface.javaOJC & '() *+ ,+ +VisualInterface$8 InnerClassesjava/lang/Objectjava/awt/event/ActionListenerVisualInterfacepgn LTextBox;TextBox previousMove()Vupdate   I Z**L MN J JJ **+O   O O I# PK x5Hw"ooVisualInterface$9.class./     !"$%this$0LVisualInterface; Synthetic CodeCoachactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$9;eLjava/awt/event/ActionEvent;(LVisualInterface;)V SourceFileVisualInterface.javaOJC & '() *+ ,- .VisualInterface$9 InnerClassesjava/lang/Objectjava/awt/event/ActionListenerVisualInterface panel_Board LPanelBoard; PanelBoardgetInfoBoxType()IsetInfoBoxType(I)V()V   e t(***hjn'p(( f fJ **+q   q q e# PK 5GavvVisualInterface$L_About.class13VisualInterface$L_Aboutthis$0LVisualInterface;  java/lang/Object()V  VisualInterface  panel_Board LPanelBoard;   PanelBoardgetInfoBoxType()I  setInfoBoxType(I)V  update  thisLVisualInterface$L_About;eventLjava/awt/event/ActionEvent; CodeCoachjava/awt/event/ActionListener%(LVisualInterface;)VactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTable SourceFileVisualInterface.javaLocalVariableTableL_About InnerClassesOJCLineColumnInfo!&()*6*****+mop#t.u5w.6 !6"#$kk$k '*" *+* +i$i,-0 /1 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 x5|11 VisualInterface$L_ChessSet.class.V ( ) * +, -. -/ +0 12 +3 -4 +5 +6 -7 +89<=this$0LVisualInterface; Synthetic CodeCoach lastIndexI(LVisualInterface;)VCodeLineNumberTableLocalVariableTablethisLVisualInterface$L_ChessSet;actionPerformed(Ljava/awt/event/ActionEvent;)VeventLjava/awt/event/ActionEvent;newIndexi SourceFileVisualInterface.javaOJC >  ? @AB CD EF GHI JK LM NO PQ RS NT U>VisualInterface$L_ChessSet InnerClasses L_ChessSetjava/lang/Objectjava/awt/event/ActionListener()VVisualInterface panel_Board LPanelBoard; PanelBoardgetInfoBoxType()IsetInfoBoxType(I)VcheckMenuItem_ChessSet [Ljavax/swing/JCheckBoxMenuItem;java/awt/event/ActionEvent getSource()Ljava/lang/Object;label_ErrorMessageLjavax/swing/JLabel; loadImages(Ljavax/swing/JLabel;)ZimageURLLjava/lang/String; imageSets[Ljava/lang/String;;(Ljavax/swing/JLabel;Ljava/lang/String;Ljava/lang/String;)Zupdate W**+*  (*=**>**2+= *K** W%** * * 2 W**>,<>AGOTi*!"# '$ %&': +;PK O 5}GVisualInterface$L_Clicked.class1/VisualInterface$L_Clickedthis$0LVisualInterface;  java/lang/Object()V  VisualInterface  panel_Board LPanelBoard;   PanelBoard initialise  thisLVisualInterface$L_Clicked;eventLjava/awt/event/MouseEvent; CodeCoachjava/awt/event/MouseListener(LVisualInterface;)V mouseClicked(Ljava/awt/event/MouseEvent;)V mouseEntered mouseExited mousePressed mouseReleasedCodeLineNumberTable SourceFileVisualInterface.javaLocalVariableTable L_Clicked InnerClassesOJCLineColumnInfo!%!&A'm*kkk$!&A'q*ooo#!&A'u*sss"!&A'y*www !&O *' } ~*  {{{ &" *+* 'ii(), +- PK O 55E((VisualInterface$L_Flip.class1DVisualInterface$L_Flipthis$0LVisualInterface;  java/lang/Object()V  VisualInterface  panel_Board LPanelBoard;   PanelBoardgetInfoBoxType()I   check_FlipLjavax/swing/JCheckBox;  javax/swing/JCheckBox isSelected()Z  ! setSelected(Z)V #$ %setInfoBoxType(I)V '( )setSide +$ ,update . /thisLVisualInterface$L_Flip;eventLjava/awt/event/ActionEvent; CodeCoachjava/awt/event/ActionListener6(LVisualInterface;)VactionPerformed(Ljava/awt/event/ActionEvent;)VCodeLineNumberTable SourceFileVisualInterface.javaLocalVariableTableL_Flip InnerClassesOJCLineColumnInfo!79:;O*'**"&** **"-*0<\ ^#_1cGdNf?O12O345ZZ5Z 8;" *+* <X5X=>A @B PK `5<__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:;<=>?=@?=AB=CB=DB=EB=FGHW**+*I JKL:;==MNHN**I J KL==OPHm * * *  *?*+ +=$****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**j3It '.AFQV`jqy!&5L^fu}!@IQajy}   "#* ,. /#103W5c6hi;w=|ACEGHJLNOTUCA]`,cHdMechhjnkmnpqstv#x<zS|e}jyJz KLQRA&ST!QUBVBWT!XY@Z?[\v]Bf^B_`= ,AC=aPHAIJKLQR==bPHAIJKLQR==cPHAIJKLQR==dPHAIJKLQR==efg= 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 O 5  $VisualInterface$L_SpacePressed.class1RVisualInterface$L_SpacePressedthis$0LVisualInterface;  java/lang/Object()V  VisualInterface  panel_Board LPanelBoard;   PanelBoard promotionZ   unpromote  update  pgn LTextBox;  !TextBox# getDocument()Ljavax/swing/text/Document; %& $'javax/swing/text/StyledDocument) getLength()I +, *-blackLjavax/swing/text/Style; /0 1setCharacterAttributes%(IILjavax/swing/text/AttributeSet;Z)V 34 *5this LVisualInterface$L_SpacePressed;eventLjava/awt/event/KeyEvent;java/awt/event/KeyEvent; getKeyChar()C => <? CodeCoachjava/awt/event/KeyListenerB(LVisualInterface;)V keyPressed(Ljava/awt/event/KeyEvent;)V keyReleasedkeyTypedCodeLineNumberTable SourceFileVisualInterface.javaLocalVariableTableL_SpacePressed InnerClassesOJCLineColumnInfo!CHFIAJM789:AAGFIA**+@ +@ +@ +@ *J 9@MA78A9:AAEFIj*****"(**"(*.*"(*.`*26J ")iMj78j9:AA DI" *+* JAKLO NP PK N 5!!VisualInterface.class1javax/swing/JApplet()V  VisualInterface$init$   pgn LTextBox; TextBox getDocument()Ljavax/swing/text/Document;  javax/swing/text/StyledDocumentgetText()Ljava/lang/String;  java/lang/Stringlength()I   blackLjavax/swing/text/Style; "# $setCharacterAttributes%(IILjavax/swing/text/AttributeSet;Z)V &' ( panel_Board LPanelBoard; *+ , PanelBoard.isSide()Z 01 /2 panel_WhiteLjavax/swing/JPanel; 45 6javax/swing/JPanel8 setLocation(II)V :; 9< panel_Black >5 ?WhiteAgetTag&(Ljava/lang/String;)Ljava/lang/String; CD EWhiteEloGBlackIBlackEloK%javax/swing/text/BadLocationExceptionM???O0Q label_WhiteLjavax/swing/JLabel; ST Ujava/lang/StringBuilderW Xappend-(Ljava/lang/String;)Ljava/lang/StringBuilder; Z[ X\ -- ^toString ` Xajavax/swing/JLabelcsetText(Ljava/lang/String;)V ef dg label_Black iT j updateBoard()LChessPosition; lm nturnLChessPosition; pq rlabel_ErrorMessage tT uCode unreadablewrepaint(IIII)V yz /{ label_Turn }T ~ Turn  ChessPositiongetTurn  (I)Ljava/lang/StringBuilder; Z XisColor 1  label_ToMove T  white to move black to movethisLVisualInterface;Ljava/lang/String;e'Ljavax/swing/text/BadLocationException;,split'(Ljava/lang/String;)[Ljava/lang/String;  parametergetClass()Ljava/lang/Class; Icons/previousmove.gifjava/lang/ClassgetResourceAsStream)(Ljava/lang/String;)Ljava/io/InputStream; java/io/InputStreamread([B)I javax/swing/JButtonjavax/swing/ImageIcon([B)V  (Ljavax/swing/Icon;)V  javax/swing/BorderFactorycreateRaisedBevelBorder()Ljavax/swing/border/Border;  setBorder(Ljavax/swing/border/Border;)V VisualInterface$2(LVisualInterface;)V  addActionListener"(Ljava/awt/event/ActionListener;)V panel_Controls 5 add*(Ljava/awt/Component;)Ljava/awt/Component; 9Icons/nextmove.gifVisualInterface$1 java/lang/SystemoutLjava/io/PrintStream; The .jar file is corrupted, please revert all changes in the file's internal organisation or download a new copy from http://www.synergie-home.com/java/io/PrintStreamprintln f java/lang/NullPointerExceptionbuffer[BbuttonLjavax/swing/JButton; Ljava/lang/NullPointerException;(Ljavax/swing/JLabel;)V  VisualInterface$3 addKeyListener(Ljava/awt/event/KeyListener;)V boardLBoard; /(LBoard;LVisualInterface;Ljavax/swing/JLabel;)V  /IMAGEURL getParameter D imageURL  Default imageSets[Ljava/lang/String;     IMAGESETSDefault,splitImageSets   loadImages(Ljavax/swing/JLabel;)Z  /getBoard ()LBoard;   getSize()Ljava/awt/Dimension;   java/awt/Color" LIGHT_GRAYLjava/awt/Color; $% #& setBackground(Ljava/awt/Color;)V () *getContentPane()Ljava/awt/Container; ,- .java/awt/Container0 setLayout(Ljava/awt/LayoutManager;)V 23 14createLoweredBevelBorder 6 7 djava/awt/Dimension: ; ;<setPreferredSize(Ljava/awt/Dimension;)V >? d@BLACKBaddStyleD(Ljava/lang/String;Ljavax/swing/text/Style;)Ljavax/swing/text/Style; DE F B% #Hjavax/swing/text/StyleConstantsJ setForeground9(Ljavax/swing/text/MutableAttributeSet;Ljava/awt/Color;)V LM KN scroll_TextLjavax/swing/JScrollPane; PQ RgetWidth()D TU ;Vjavax/swing/JScrollPaneX setBounds Zz Y[setSize ]; ^ getViewport()Ljavax/swing/JViewport; `a Ybjavax/swing/JViewportd eVisualInterface$L_SpacePressedg hVisualInterface$L_Clickedj kaddMouseListener!(Ljava/awt/event/MouseListener;)V mn o /[ panel_Turn r5 s 9[javax/swing/border/BevelBorderv(I)V x wy 9java/awt/GridLayout| }< 94 panel_Notice 5 java/awt/FlowLayout y check_FlipLjavax/swing/JCheckBox;  VisualInterface$L_Flip javax/swing/JCheckBox panel_BoardOptions 5 setVerticalAlignment x d 9^installControlPanel   1PGNloadUrl(Ljava/lang/String;)Z  update  The default pgn was loadedThe default pgn is unavailableMenuBar  setJMenuBar(Ljavax/swing/JMenuBar;)V  paramChessSetssizeLjava/awt/Dimension;argumentSourcemenuBar LMenuBar;jbInit  java/lang/ExceptionprintStackTrace  Ljava/lang/Exception;Flip the board f  d Turn 1 d ??? -- 0 9 panel_Text 5  Y CodeCoachinitCodeLineNumberTable SourceFileVisualInterface.javaLocalVariableTable ExceptionsL_SpacePressed L_ClickedL_Flip InnerClassesOJCLineColumnInfo! %'pq(  +,"#.0tT2}T3T4ST5iT6458>595:r5;5<5=5>*+@PQA *Y*dYµv*dYķŵ*dYŵ*dYǷŵV*dYǷŵk*9Yȵ7*9Yȵ@*9Yȵ*9Yȵt*9Yȵ*9Yȵ*9Yȵ*YY̵S:023'445B6P8[9f:q;|<=>Aa *L+TVX Z CVC"*Y*v*Y**/Y***v-****Y S <*L+*Y S **XYY]+]b *-*vW***!M*'+*/5*v89*v;Y=A**CG%*%IO*S,Wd9c\*h_*Sc*fW*hY*i*kY*lp*-q*t,Wd+u*twYz{*t}Y~*;Y=A*;Y=A*t*W*t*W*,Wdu*Y**vW*Y**6nu*Y**W*V;Y=A*V*7=*k;Y=A*k*@=*7*7Y*7*VW*@*@Y*@*kW*,Wd#u*ѻY**/*ѶW*/*W*/*W*/*tW*/*SW*/*@W*/*7W*/*-W*N-)*-**vh *vhY*:*G_ar5t@vGwXz`|d}u.=L\s#2>QYex'3?KWckoz~4`1k; ]z]L*+WYY+M,,Y*ʶ*,W*׶+WYY+M,,Y*ڶ*,W Nz}:$+7@N^eq}~*t$V~ ] ++    fVLMN:**!`*%)*-3*7=*@=*7=*@=*BFL*HFM*JFN*LF::+PL-PN,RMR:*VXYY+]_],]bh*kXYY-]_]]bh**os:*vxh*-|*XYY]*sbh*s*h *hcNN" *4@M W!c&m'w()+/0235689;<@BDGI6K@LLNUPHVTARGPI MK 0639+B! ** ##2kh PK5_\`META-INF/MANIFEST.MFPK 15ytBoard$L_Images.classPK 05F\+\+ `Board.classPK +r5-B5dd/ChessPosition.classPK rK4GT 7z3ChessSet/Original/BB.gifPK K4G<9ChessSet/Original/BW.gifPK K4 T?ChessSet/Original/KB.gifPK K4}OWWEChessSet/Original/KW.gifPK K4nʪ LChessSet/Original/NB.gifPK K4)QChessSet/Original/NW.gifPK K4G XChessSet/Original/PB.gifPK 5":]ChessSet/Original/PW.gifPK L4xBwbChessSet/Original/QB.gifPK L4a%`%%hChessSet/Original/QW.gifPK L4>nChessSet/Original/RB.gifPK !L4kzsChessSet/Original/RW.gifPK +r5_Nkk=yCommentedList$Comment.classPK +r5׽T){CommentedList.classPK 45)vQIcons/nextmove.gifPK %5JJ@@Icons/nextpage.gifPK 5sʐIcons/previousmove.gifPK 5K 66Icons/previouspage.gifPK +r5aB+0+0 NInfoBox.classPK G5D]22META-INF/application-client.xmlPK N 5Vm//MenuBar$1.classPK N 59 ƒ//oMenuBar$2.classPK N 5I;os//MenuBar$3.classPK N 5 VcKK'MenuBar$4.classPK N 5)+j//MenuBar$5.classPK N 5tc++MenuBar$6.classPK N 5LSMenuBar$7.classPK N 57jKMenuBar$8.classPK N 5BMenuBar$9.classPK N 5nq 8MenuBar.classPK 5c AA1PanelBoard$L_Mouse.classPK 5 EEPanelBoard.classPK 4$ $ "Pgn_Reader_Version_History.txtPK 5$rr{,Pgn_Reader_Webmaster_Guide.txtPK 154r11 )@TextBox.classPK O 5쇃CrVisualInterface$1.classPK x5K^qquVisualInterface$10.classPK x5ΠiAqqyVisualInterface$11.classPK O 5tAI}VisualInterface$2.classPK O 5/iVisualInterface$3.classPK x5'1  ɄVisualInterface$4.classPK x5et  VisualInterface$5.classPK x5|cՕ  FVisualInterface$6.classPK x5po,,VisualInterface$7.classPK x5{00VisualInterface$8.classPK x5Hw"ooLVisualInterface$9.classPK 5GavvVisualInterface$L_About.classPK 40j"VisualInterface$L_CaretMoved.classPK x5|11 ƠVisualInterface$L_ChessSet.classPK O 5}G5VisualInterface$L_Clicked.classP