OpenLLM-France/wikimedia huggingface dataset:
# Character Encodings/Code Tables/EBCDIC/EBCDIC 298

IBM code page 298 (CCSID 298) is an EBCDIC code page used in IBM mainframes in Japan. It supports Katakana. Contrast EBCDIC 290.

## Codepage layout

EBCDIC 298 :
| | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
| 0x | NUL | SOH | STX | ETX | SEL | HT | RNL | DEL | GE | SPS | RPT | VT | FF | CR | SO | SI |
| 1x | DLE | DC1 | DC2 | DC3 | RES/ ENP | NL | BS | POC | CAN | EM | UBS | CU1 | IFS | IGS | IRS | ITB |
| 2x | DS | SOS | FS | WUS | BYP/ INP | LF | ETB | ESC | SA | SFE | SM/ SW | CSP | MFA | ENQ | ACK | BEL |
| 3x | | | SYN | IR | PP | TRN | NBS | EOT | SBS | IT | RFF | CU3 | DC4 | NAK | | SUB |
| 4x | SP | | 。 3002 | 「 300C | 」 300D | 、 3001 | ・ 30FB | ヲ 30F2 | ァ 30A1 | ィ 30A3 | ¢ 00A2 | . 002E | < 003C | ( 0028 | + 002B | | 007C |
| 5x | & 0026 | ゥ 30A5 | ェ 30A7 | ォ 30A9 | ャ 30E3 | ュ 30E5 | ョ 30E7 | ッ 30C3 | ー 30FC | ア 30A2 | ! 0021 | $ 0024 | * 002A | ) 0029 | ; 003B | ¬ 00AC |
| 6x | - 002D | / 002F | イ 30A4 | ウ 30A6 | エ 30A8 | オ 30AA | カ 30AB | キ 30AD | ク 30AF | ケ 30B1 | ¦ 00A6 | , 002C | % 0025 | _ 005F | > 003E | ? 003F |
| 7x | コ 30B3 | サ 30B5 | シ 30B7 | ス 30B9 | セ 30BB | ソ 30BD | タ 30BF | チ 30C1 | ツ 30C4 | ` 0060 | : 003A | # 0023 | @ 0040 | ' 0027 | = 003D | " 0022 |
| 8x | テ 30C6 | a 0061 | b 0062 | c 0063 | d 0064 | e 0065 | f 0066 | g 0067 | h 0068 | i 0069 | ト 30C8 | ナ 30CA | ニ 30CB | ヌ 30CC | ネ 30CD | ノ 30CE |
| 9x | ハ 30CF | j 006A | k 006B | l 006C | m 006D | n 006E | o 006F | p 0070 | q 0071 | r 0072 | ヒ 30D2 | フ 30D5 | ヘ 30D8 | ホ 30DB | マ 30DE | ミ 30DF |
| Ax | ム 30E0 | ~ 007E | s 0073 | t 0074 | u 0075 | v 0076 | w 0077 | x 0078 | y 0079 | z 007A | メ 30E1 | モ 30E2 | ヤ 30E4 | ユ 30E6 | ヨ 30E8 | ラ 30E9 |
| Bx | リ 30EA | ル 30EB | レ 30EC | ロ 30ED | ワ 30EF | ン 30F3 | ゙ 3099 | ゚ 309A | | | | | | | | |
| Cx | { 007B | A 0041 | B 0042 | C 0043 | D 0044 | E 0045 | F 0046 | G 0047 | H 0048 | I 0049 | | | | | | |
| Dx | } 007D | J 004A | K 004B | L 004C | M 004D | N 004E | O 004F | P 0050 | Q 0051 | R 0052 | | | | | | |
| Ex | ¥ 00A5 | | S 0053 | T 0054 | U 0055 | V 0056 | W 0057 | X 0058 | Y 0059 | Z 005A | | | | | | |
| Fx | 0 0030 | 1 0031 | 2 0032 | 3 0033 | 4 0034 | 5 0035 | 6 0036 | 7 0037 | 8 0038 | 9 0039 | | | | | | EO |

## References

* ↑ "Code Page 298" (PDF). Archived from the original (PDF) on 2013-01-21.
# Character Encodings/Code Tables/EBCDIC/EBCDIC 288

IBM code page 288 (CCSID 288) is an EBCDIC code page used in IBM mainframes in Sweden and Finland to support the Swedish language.

## Codepage layout

Characters are shown with their equivalent Unicode codes.
EBCDIC 288 :
| | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
| 0x | NUL | SOH | STX | ETX | SEL | HT | RNL | DEL | GE | SPS | RPT | VT | FF | CR | SO | SI |
| 1x | DLE | DC1 | DC2 | DC3 | RES/ ENP | NL | BS | POC | CAN | EM | UBS | CU1 | IFS | IGS | IRS | ITB |
| 2x | DS | SOS | FS | WUS | BYP/ INP | LF | ETB | ESC | SA | SFE | SM/ SW | CSP | MFA | ENQ | ACK | BEL |
| 3x | | | SYN | IR | PP | TRN | NBS | EOT | SBS | IT | RFF | CU3 | DC4 | NAK | | SUB |
| 4x | SP | | | | | | | | | | ö 00F6 | . 002E | < 003C | ( 0028 | + 002B | | 007C |
| 5x | & 0026 | | | | | | | | | | å 00E5 | Å 00C5 | * 002A | ) 0029 | ; 003B | ¬ 00AC |
| 6x | - 002D | / 002F | | | | | | | | | ¦ 00A6 | , 002C | % 0025 | _ 005F | > 003E | ? 003F |
| 7x | | | | | | | | | | | : 003A | Ä 00C4 | Ö 00D6 | ' 0027 | = 003D | ä 00E4 |
| 8x | | a 0061 | b 0062 | c 0063 | d 0064 | e 0065 | f 0066 | g 0067 | h 0068 | i 0069 | | | | | | |
| 9x | | j 006A | k 006B | l 006C | m 006D | n 006E | o 006F | p 0070 | q 0071 | r 0072 | | | | | | |
| Ax | | | s 0073 | t 0074 | u 0075 | v 0076 | w 0077 | x 0078 | y 0079 | z 007A | | | | | | |
| Bx | | | | | | | | | | | | | | | | |
| Cx | | A 0041 | B 0042 | C 0043 | D 0044 | E 0045 | F 0046 | G 0047 | H 0048 | I 0049 | | | | | | |
| Dx | | J 004A | K 004B | L 004C | M 004D | N 004E | O 004F | P 0050 | Q 0051 | R 0052 | | | | | | |
| Ex | | | S 0053 | T 0054 | U 0055 | V 0056 | W 0057 | X 0058 | Y 0059 | Z 005A | | | | | | |
| Fx | 0 0030 | 1 0031 | 2 0032 | 3 0033 | 4 0034 | 5 0035 | 6 0036 | 7 0037 | 8 0038 | 9 0039 | | | | | | EO |
| Differences from EBCDIC 037 |||||||||||||||||

## References

* ↑ "Code Page 288" (PDF). Archived from the original (PDF) on 2013-01-21.
# Character Encodings/Code Tables/EBCDIC/EBCDIC 321

IBM code page 321 (CCSID 321) is an EBCDIC code page with full ASCII used in IBM mainframes in the five countries of what was known as Yugoslavia to support the Croatian language, Serbian language, Bosnian language, and Slovenian language.

## Codepage layout

Characters are shown with their equivalent Unicode codes.
EBCDIC 321 :
| | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
| 0x | NUL | SOH | STX | ETX | SEL | HT | RNL | DEL | GE | SPS | RPT | VT | FF | CR | SO | SI |
| 1x | DLE | DC1 | DC2 | DC3 | RES/ ENP | NL | BS | POC | CAN | EM | UBS | CU1 | IFS | IGS | IRS | ITB |
| 2x | DS | SOS | FS | WUS | BYP/ INP | LF | ETB | ESC | SA | SFE | SM/ SW | CSP | MFA | ENQ | ACK | BEL |
| 3x | | | SYN | IR | PP | TRN | NBS | EOT | SBS | IT | RFF | CU3 | DC4 | NAK | | SUB |
| 4x | SP | | | | | | | | | | Š 0160 | . 002E | < 003C | ( 0028 | + 002B | ! 0021 |
| 5x | & 0026 | | | | | | | | | | Ć 0106 | $ 0024 | * 002A | ) 0029 | ; 003B | Č 010C |
| 6x | - 002D | / 002F | | | | | | | | | đ 0111 | , 002C | % 0025 | _ 005F | > 003E | ? 003F |
| 7x | | | | | | | | | | ž 017E | : 003A | # 0023 | Ž 017D | ' 0027 | = 003D | " 0022 |
| 8x | | a 0061 | b 0062 | c 0063 | d 0064 | e 0065 | f 0066 | g 0067 | h 0068 | i 0069 | | | | | | |
| 9x | | j 006A | k 006B | l 006C | m 006D | n 006E | o 006F | p 0070 | q 0071 | r 0072 | | | | | | |
| Ax | | č 010D | s 0073 | t 0074 | u 0075 | v 0076 | w 0077 | x 0078 | y 0079 | z 007A | | | | | | |
| Bx | | | | | | | | | | | | | | | | |
| Cx | š 0161 | A 0041 | B 0042 | C 0043 | D 0044 | E 0045 | F 0046 | G 0047 | H 0048 | I 0049 | | | | | | |
| Dx | ć 0107 | J 004A | K 004B | L 004C | M 004D | N 004E | O 004F | P 0050 | Q 0051 | R 0052 | | | | | | |
| Ex | Ð 00D0 | | S 0053 | T 0054 | U 0055 | V 0056 | W 0057 | X 0058 | Y 0059 | Z 005A | | | | | | |
| Fx | 0 0030 | 1 0031 | 2 0032 | 3 0033 | 4 0034 | 5 0035 | 6 0036 | 7 0037 | 8 0038 | 9 0039 | | | | | | EO |
| Differences from EBCDIC 500 |||||||||||||||||

## References

* ↑ "Code Page 321" (PDF). Archived from the original (PDF) on 2013-01-21.
# Character Encodings/Code Tables/EBCDIC/EBCDIC 289

IBM code page 289 (CCSID 289) is an EBCDIC code page used in IBM mainframes in the Spain to support the Spanish language.

## Codepage layout

Characters are shown with their equivalent Unicode codes.
EBCDIC 289 :
| | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
| 0x | NUL | SOH | STX | ETX | SEL | HT | RNL | DEL | GE | SPS | RPT | VT | FF | CR | SO | SI |
| 1x | DLE | DC1 | DC2 | DC3 | RES/ ENP | NL | BS | POC | CAN | EM | UBS | CU1 | IFS | IGS | IRS | ITB |
| 2x | DS | SOS | FS | WUS | BYP/ INP | LF | ETB | ESC | SA | SFE | SM/ SW | CSP | MFA | ENQ | ACK | BEL |
| 3x | | | SYN | IR | PP | TRN | NBS | EOT | SBS | IT | RFF | CU3 | DC4 | NAK | | SUB |
| 4x | SP | | | | | | | | | | ¢ 00A2 | . 002E | < 003C | ( 0028 | + 002B | | 007C |
| 5x | & 0026 | | | | | | | | | | ! 0021 | ₧ 20A7 | * 002A | ) 0029 | ; 003B | ¬ 00AC |
| 6x | - 002D | / 002F | | | | | | | | | ¦ 00A6 | , 002C | % 0025 | _ 005F | > 003E | ? 003F |
| 7x | | | | | | | | | | | : 003A | Ñ 00D1 | @ 0040 | ' 0027 | = 003D | ñ 00F1 |
| 8x | | a 0061 | b 0062 | c 0063 | d 0064 | e 0065 | f 0066 | g 0067 | h 0068 | i 0069 | | | | | | |
| 9x | | j 006A | k 006B | l 006C | m 006D | n 006E | o 006F | p 0070 | q 0071 | r 0072 | | | | | | |
| Ax | | | s 0073 | t 0074 | u 0075 | v 0076 | w 0077 | x 0078 | y 0079 | z 007A | | | | | | |
| Bx | | | | | | | | | | | | | | | | |
| Cx | | A 0041 | B 0042 | C 0043 | D 0044 | E 0045 | F 0046 | G 0047 | H 0048 | I 0049 | | | | | | |
| Dx | | J 004A | K 004B | L 004C | M 004D | N 004E | O 004F | P 0050 | Q 0051 | R 0052 | | | | | | |
| Ex | | | S 0053 | T 0054 | U 0055 | V 0056 | W 0057 | X 0058 | Y 0059 | Z 005A | | | | | | |
| Fx | 0 0030 | 1 0031 | 2 0032 | 3 0033 | 4 0034 | 5 0035 | 6 0036 | 7 0037 | 8 0038 | 9 0039 | | | | | | EO |
| Differences from EBCDIC 037 |||||||||||||||||

## References

* ↑ "Code Page 289" (PDF). Archived from the original (PDF) on 2013-01-21.
# Character Encodings/Code Tables/EBCDIC/EBCDIC 320

IBM code page 320 (CCSID 320) is an EBCDIC code page used in IBM mainframes in Hungary to support the Hungarian language.

## Codepage layout

Characters are shown with their equivalent Unicode codes.
EBCDIC 320 :
| | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
| 0x | NUL | SOH | STX | ETX | SEL | HT | RNL | DEL | GE | SPS | RPT | VT | FF | CR | SO | SI |
| 1x | DLE | DC1 | DC2 | DC3 | RES/ ENP | NL | BS | POC | CAN | EM | UBS | CU1 | IFS | IGS | IRS | ITB |
| 2x | DS | SOS | FS | WUS | BYP/ INP | LF | ETB | ESC | SA | SFE | SM/ SW | CSP | MFA | ENQ | ACK | BEL |
| 3x | | | SYN | IR | PP | TRN | NBS | EOT | SBS | IT | RFF | CU3 | DC4 | NAK | | SUB |
| 4x | SP | | | | | | | | | | É 00C9 | . 002E | < 003C | ( 0028 | + 002B | ! 0021 |
| 5x | & 0026 | | | | | | | | | | Ü 00DC | ¤ 00A4 | * 002A | ) 0029 | ; 003B | ^ 005E |
| 6x | - 002D | / 002F | | | | | | | | | ö 00F6 | , 002C | % 0025 | _ 005F | > 003E | ? 003F |
| 7x | | | | | | | | | | á 00E1 | : 003A | # 0023 | Á 00C1 | ' 0027 | = 003D | " 0022 |
| 8x | | a 0061 | b 0062 | c 0063 | d 0064 | e 0065 | f 0066 | g 0067 | h 0068 | i 0069 | | | | | | |
| 9x | | j 006A | k 006B | l 006C | m 006D | n 006E | o 006F | p 0070 | q 0071 | r 0072 | | | | | | |
| Ax | | ˝ 02DD | s 0073 | t 0074 | u 0075 | v 0076 | w 0077 | x 0078 | y 0079 | z 007A | | | | | | |
| Bx | | | | | | | | | | | | | | | | |
| Cx | é 00E9 | A 0041 | B 0042 | C 0043 | D 0044 | E 0045 | F 0046 | G 0047 | H 0048 | I 0049 | | | | | | |
| Dx | ü 00FC | J 004A | K 004B | L 004C | M 004D | N 004E | O 004F | P 0050 | Q 0051 | R 0052 | | | | | | |
| Ex | Ö 00D6 | | S 0053 | T 0054 | U 0055 | V 0056 | W 0057 | X 0058 | Y 0059 | Z 005A | | | | | | |
| Fx | 0 0030 | 1 0031 | 2 0032 | 3 0033 | 4 0034 | 5 0035 | 6 0036 | 7 0037 | 8 0038 | 9 0039 | | | | | | EO |
| Differences from EBCDIC 500 |||||||||||||||||

## References

* ↑ "Code Page 320" (PDF). Archived from the original (PDF) on 2013-01-21.
# Center Attack
## 6. cxd4

White plays the natural recapture. Now the bishop will have to move to b4 or b6; in most cases, Black plays 6...Bb4+.

## Theory table

For explanation of theory tables, see theory table and for notation, see algebraic notation.
1. e4 e5 2. Nf3 Nc6 3. Bc4 Bc5 4. c3 Nf6 5. d4 exd4 6. cxd4
| 6 | 7 | 8 | 9 |
| ... Bb4+ | Bd2 Bxd2 | Nxd2 d5 | exd5 Nxd5 | = |
| ... Bb4+ | Bd2 Nxe4 | Bxb4 Nxb4 | Bxf7+ Kxf7 | = |
| ... Bb4+ | Nc3 Nxe4 | O-O Bxc3 | d5 Bf6 | =/+ |
# Center Attack
## 6...Bb4+

The bishop must move, and move it did! White has three options to block the check.
7. Bd2 is a natural blocking move. Black can either trade and break the center with 8...d5, or immediately take with 7...Nxe4 which leads to complicated variations and the sacrifice Bxf7+!
7. Nc3 is another natural blocking move, but hangs the e4 pawn. This is the Greco Gambit, where White then castles and allows the loss of a pawn for development.
7. Kf1 is not usually played, as White can no longer castle and hangs the e4 pawn. For the pawn, White gains initiative and attacks Black. Black has to find only moves to keep advantage.

## Theory table

For explanation of theory tables, see theory table and for notation, see algebraic notation.
1. e4 e5 2. Nf3 Nc6 3. Bc4 Bc5 4. c3 Nf6 5. d4 exd4 6. cxd4 Bb4+
| | 7 | 8 | 9 | 10 |
| | Bd2 Bxd2 | Nxd2 d5 | exd5 Nxd5 | Qb3 Nce7 | = |
| | Bd2 Nxe4 | Bxb4 Nxb4 | Bxf7+ Kxf7 | Qb3+ d5 | = |
| Greco Gambit | Nc3 Nxe4 | O-O Bxc3 | d5 Bf6 | Re1 Nce7 | =/+ |
| Cracow Variation | Kf1 Nxe4 | d5 Nce7 | Qd4 Nf6 | Bg5 c5 | = |
# Giuoco Pianissimo

With 4.d3, White plays the Giuoco Pianissimo (Italian: "very quiet game"). White aims for a slow buildup deferring d4 until it can be prepared. By avoiding an immediate confrontation in the center White prevents the early release of tension through exchanges and enters a positional maneuvering game. If White plays c2-c3, the position can take some characteristics of the Ruy Lopez if his bishop retreats to c2 via Bc4-b3-c2. (The alternative move order 4.c3 Nf6 5.d3 is common in master play.) Despite its drawish reputation, this variation became more popular after being taken up by Anatoly Karpov in the 1978 World Championship.

## Theory table

For explanation of theory tables, see theory table and for notation, see algebraic notation.
1.e4 e5 2.Nf3 Nc6 3.Bc4 Bc5 4.d3
| | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 1 | ... d6 | O-O Nf6 | Nc3 h6 | h3 O-O | a3 a6 | b4 Ba7 | | | -/+ |
| 2 | ... ... | c3 Nf6 | Bb3 O-O | h3 Be6 | Nbd2 a6 | Qe2 Ba7 | g4 Nd7 | Bc2 d5 | -/+ |
| 2 | ... ... | ... ... | O-O O-O | Bb3 a6 | Nbd2 | | | | = |
| 3 | ... Nf6 | Bg5 h6 | Bh4 d6 | Nbd2 a6 | a4 g5 | Bg3 Nh5 | c3 Qf6 | Qe2 Nf4 | = |
| 4 | ... ... | Bb3 d6 | c3 a6 | O-O Ba7 | Nbd2 O-O | h3 Be6 | Bc2 h6 | Re1 Ne7 | -/+ |

## Notes

When contributing to this Wikibook, please follow the Conventions for organization.

## References

* Kasparov, Garry, & Keene, Raymond 1989 Batsford chess openings 2. ISBN 0-8050-3409-9.
# 4. d3 Giuoco Pianissimo

White plays the Giuoco Pianissimo (Italian: "very quiet game"). This solid but passive opening more often occurs through the Bishops opening (2. Bc4) move order.

## Theory table

For explanation of theory tables, see theory table and for notation, see algebraic notation. .
    1.e4 e5 2.Nf3 Nc6 3.Bc4 Bc5 4.d3 Nf6
| 5 | 6 |
| Nc3 d6 | Bg5 h6 |
| Bg5 h6 | Bh4 d6 |
When contributing to this Wikibook, please follow the Conventions for organization.

## References

* Kasparov, Garry, & Keene, Raymond 1989 Batsford chess openings 2. ISBN 0-8050-3409-9.
# Italian Gambit
### 4.d4

White sacrifices their d-pawn in order to open lines for their pieces and develop faster. Black has 3 recaptures
4…exd4 transposes into the Haxo Gambit (1. e4 e5 2. Nf3 Nc6 3. d4 exd4 4. Bc4 Bc5)
4…Nxd4 is not good because white has 5. Nxe5 with pressure on f7 or the venomous 5. b4
4…Bxd4 is the strongest option. Play will continue 5. Nxd4 Nxd4 6. Be3 Nc6

## Theory table

For explanation of theory tables, see theory table and for notation, see algebraic notation. .
1.e4 e5 2.Nf3 Nc6 3.Bc4 Bc5 4.d4
| | 4 | 5 | 6 |
| | d4 Bxd4 | Nxd4 Nxd4 | O-O d6 | = |
| Scotch Gambit | ... exd4 | | | = |
When contributing to this Wikibook, please follow the Conventions for organization.

## References

* Kasparov, Garry, & Keene, Raymond 1989 Batsford chess openings 2. ISBN 0-8050-3409-9.
# Hungarian Defence

1. e4 e5 2. Nf3 Nc6 3. Bc4 Be7 4. d4
# Hungarian Defence

This defence is seldom seen, but has a reputation of being solid. It slowly develops the king's bishop so that it looks out on two diagonals. Its aim is to defend against an eventual queen exchange and against a pawn storm on the king side.
White's best choice is to attack the center with 4. d4. 4. O-O is also an option, despite being a bit passive.
When contributing to this Wikibook, please follow the Conventions for organization.
# Hungarian Defence

1. e4 e5 2. Nf3 Nc6 3. Bc4 Be7 4. O-O
# Ruy Lopez Open Defence

Black must skirt a couple of pitfalls here. 7...Na5 (intending 8. Bd5 Bb7 and the pulverisation of White's light-squared bishop) walks into 8. Bxf7+! Kxf7 9. Nxe5+ Kg8 10. Qf3, while the greedy 7...Nxd4 is refuted by the greedier 8. Nxd4 exd4 9. Bd5.
But in truth Black should be in no danger of falling into either trap, because her arm should shoot out and play 7...d5! of its own accord. When Black has already played ...e5, ...d5 is almost always a fine move, and here it fortifies the e4-knight, limits the scope of the b3-bishop and actually allows some flexibility in the development of the back rank, a luxury hardly ever afforded to Black.
By contrast 7...Be7 is as insipid now as it was on move 6. Play the most useful moves first!
7...exd4?! allows 8. Re1 d5 9. Nc3! and Black can choose between 9...dxc3 10. Bxd5 and 9...Be6 10. Nxe4 dxe4 11. Rxe4 Be7 12. Bxe6 fxe6 13. Nxd4 followed by 14. Qg4, White having a large initiative in either case.

## Theory table

For explanation of theory tables, see theory table and for notation, see algebraic notation. .
1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Nxe4 6. d4 b5 7. Bb3
| 7 |
| ... 7 ...d5 | = |
| ... 7 ... Be7 | += |
When contributing to this Wikibook, please follow the Conventions for organization.
# Ruy Lopez, Riga Variation

The best move here is Nc5. This leads to 7.Bxc6 dxc6 8.d4 Ne6 9.Nxe5 Be7 10.Be3 0-0 11.c4 Bf6 or 11.- Bd6 with an equal position.

## Theory table

For explanation of theory tables, see theory table and for notation, see algebraic notation. .
1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Nxe4 6.Re1
| 6 |
| Re1 Nc5 | = |
When contributing to this Wikibook, please follow the Conventions for organization.
# Ruy Lopez: Open Defence

7. Bb3 is necessary to save the bishop. From time to time some bright spark will wheel out 7. d5?! Easily dealt with, this can be.

#### Other Options

   * 7. Re1!?
   * 7. Nxe5!?, the Friess Attack.
   * 7. Qe2!?
These variations are not well-known and very dubious, but they might lead to fun positions.
When contributing to this Wikibook, please follow the Conventions for organization.
# Ruy Lopez Open Defence

Black's position is now reasonable. White must reclaim the lost pawn now or have nothing to show for its loss. As 8. Nxe5 would allow Black to exchange off the knight that is currently obstructing his c-pawn, 8. dxe5 is preferable. 8. Re1 would grant Black equality.
When contributing to this Wikibook, please follow the Conventions for organization.
# Ruy Lopez Open Defence

Black must drop everything and defend the d-pawn from the threat uncovered by dxe5. 8...Be6 does this while also developing and stabilising the centre.
For the sake of completeness, 8...Ne7 slows down Black's development to such an extent that White can give up the bishop pair and still have a commanding position, while the horrible 8...d4 pulls the rug out from under the e4-knight while not particularly improving the pawns condition. Absolutely no Brownie points for either of these moves.
When contributing to this Wikibook, please follow the Conventions for organization.
# Ruy Lopez Open Defence

Now that White's light-squared bishop can no longer move to d5, it is immobilised and liable to be exchanged off by a sneaky ...Na5 or ...Nc5. In the Ruy Lopez White will typically go to some length to avoid this exchange, hence the classical move 9. c3. But 9. Nbd2 has taken over in recent years, for the following reasons:
* White can live without the b3-bishop in this particular line, as she has a kingside pawn majority to work with
* Upon ...Nc5/...Na5 followed by ...Nxb3, the recapture Nxb3 frees White's position enormously - a knight on b3 has better prospects than either a bishop on b3 or a knight on d2
* Certain variations commencing 9. c3 Bc5 were known to get complicated; 9. Nbd2 discourages the awkward 9...Bc5 by threatening 10. Nxe4 when Black's double attack on f2 vanishes, and after some exchanges White's other knight can capture on e4 or e6 hitting the loose bishop
* 9. Nbd2 does not reduce White's options compared to 9. c3 as Black cannot prevent 10. c3 anyway.
9. Be3 also discourages ...Bc5, but no more effectively than Nbd2, and unlike Nbd2 it does not develop a piece to what is clearly its best square.
9. Qe2 is the Howell Attack. The queen move prepares to evict the e4-knight and/or to play c4 dismantling the queenside pawns, while d1 is vacated for the rook. This rearrangement is on the slow side given that Black is only a couple of moves away from completing her development, and too often White's play on the d-file consists of trying to stop Black's passed d-pawn from charging down it.
9. a4 is apparently played. In the Worrall Attack with the queen on e2, the point of the a4 advance is to provoke ...b4, upon which Qc4 is ruinous as Reuben Fine puts it. Since trying to play 10. Qc4 here would be a bad idea on at least two counts, 9. a4 is erring a little on the pointless side. Save it for later, maybe.
When contributing to this Wikibook, please follow the Conventions for organization.
# Ruy Lopez Open Defence

Black has no need to tie herself in knots by moving the knight. After 7...bxa4 8. dxc6 d6, forget about Black's potentially slightly rubbish rook pawns, one of which is an extra pawn anyway - Black has a stable centre with the base of her pawn-chain shielded by White's own pawn, a half-open b-file, a kingside pawn majority that could quite easily wallop White after ...f5 and ...Nf6 and the bishop pair - it's one of those rare positions that are just really good fun.
When contributing to this Wikibook, please follow the Conventions for organization.
# Ruy Lopez Open Defence

The old line goes: 9...Nc5 10. c3 d4 11. cxd4 Nxd4. The new variation goes: 11.Ng5!? Qxg5. Black is thought to equalize in both lines.
# Ruy Lopez Open Defence

At this point there are two main lines, which are Bc5 and Be7.
# Algorithm Implementation/Sorting/Shell sort
## Pascal

Generating Pratt gap sequence
# Algorithm Implementation/Statistics/Cohen's kappa

Implemented and tested as described at Wikipedia . This is just a first working draft without any optimization but it works just fine. Comments are for debug purposes only.
# Algorithm Implementation/String searching

* Knuth-Morris-Pratt pattern matcher
* Match Rating Approach
# Algorithm Implementation/Sorting/Smoothsort
## C++

This implementation of Smoothsort is substantially different (in presentation) from Dijkstra's original one, having undergone some serious refactoring.
In order to keep the code as tidy as possible given the inherent complexity of the algorithm, the helper functions are isolated in an anonymous namespace.
In practice, the three sections below would be concatenated in the given order in a separate source file (say, smoothsort.cpp).
Last but not least, the code uses the long long unsigned type, which is a gcc extension (no, it isn't). On installations where gcc is unavailable, replace with unsigned long (it only affects the maximum size of the arrays which can be sorted).
# Algorithm Implementation/Sorting/Some proofs

This section rigorously and in standard mathematical language describes the logical system which rationalizes sorting in computer programs. Many of these results are obvious, and some of the notation might be found in assorted computer-science textbooks. Anyone who finds any flaw with the following is invited to improve it.
The mathematics the first author applies here is sophisticated, but hardly complicated.
NOTE: The conventional approach to these proofs rests on slightly shakier assumptions. It employs a device called a "loop invariant," which is defined in terms of underlying program structure. Proofs constructed this way can be found in most good algorithmics textbooks.

# Basic notions

It is impossible to order an unordered set; but sorting usually concerns itself not with sets, but with sequences. Let us define, then, precisely what sequences we may sort, and what the results may entail. Let S be any set with a total ordering ($\mathbb {Z}$, $Q$, $\mathbb {R}$...) Let A be a finite subset of that set. Let J be a finite subset of $\mathbb {N}$, the natural numbers. Now draw up a function $\phi :J\rightarrow S$. The set J induces a so-called permutation group, Sym(J), the set of all bijections from J back onto J. Now let $\Phi \equiv \{\mu \in Sym)J):\phi \circ \mu$. A little consideration will convince the reader that the set hereupon described is exactly the set of possible arrangements of the elements of a sequence. Of course, $\phi _{\mu }=\phi _{\lambda }$ is possible if it happens that a permutation exchanges indices so that the value of the function doesn't change at the indices; but this will not be a great concern to us. As we will see, exactly one of the functions in $\Phi$ is increasing. (A function is increasing whenever x ≥ y implies f(x) ≥ f(y)).