PK yVoa, mimetypeapplication/epub+zipPK yV META-INF/PK yV? META-INF/container.xml
PK yV OPS/PK yV OPS/css/PK yVq1B} } OPS/css/style.css/* CSS for Go Books – https://gobooks.com */
/* Copyright © 2019 Smart Go, Inc. All rights reserved. */
html { text-rendering: optimizeLegibility !important; }
h1, h2, h3 { -webkit-hyphens: none !important; }
h1, h2, h3, h4, h5 { page-break-after: avoid !important; }
h2, h3, h4, h5 :first-child { margin-top: 0 !important; }
.break { page-break-before: always; }
h1 { font-size: 1.65em; font-weight: bold; margin: 0 0 1.2em 0; text-align: center; text-transform: uppercase; }
h2 { font-size: 1.3em; font-weight: bold; margin: 1.2em 0 0.8em 0; text-align: center; }
h3 { font-size: 1.05em; font-weight: bold; margin: 1.6em 0 0.4em 0; }
h4 { font-size: 1em; font-weight: bold; margin: 1.6em 0 0.4em 0; }
h5 { font-size: 1em; font-weight: normal; margin: 1.2em 0 0.4em 0; }
.s1 { font-size: 1.3em; font-weight: bold; text-align: center; margin: 1.4em 0 1.6em 0; }
.s2 { font-size: 1.22em; font-weight: bold; text-align: center; margin: 1.2em 0 1.2em 0; }
p { line-height: 1.3em !important; margin: 0.8em 0 0.8em 0; }
div, figure, svg, figcaption { padding: 0; margin: 0; }
ul, ol { margin-top: 1em; margin-bottom: 1.5em; }
video { text-align: center; }
section.chapter { page-break-after: always; }
a:link, a:visited, a:hover, a:active { color: #00268F !important; text-decoration: none; }
div.cover { text-align: center; }
img.cover { max-width: 100%; }
img { width: auto; height: auto; margin-top: 0.5em; }
figure.svg { width: 100%; height: auto; }
figure { page-break-inside: avoid; max-width: 100%; max-height: 75%; margin: 0; padding: 0; }
figcaption { text-align: center; font-style: italic; font-size: 0.89em; color: #666666; line-height: 1em; text-indent: 0; }
.disabledLink { color: #666666; }
.underline { text-decoration: underline; }
.center { text-align: center; }
.left { text-align: left; }
.right { text-align: right; }
.firstindent { text-indent: 1em; }
.tail { margin-right: 10em; }
.block { margin-left: 2em; margin-right: 2em; }
.indent { margin-left: 2em; }
.bullet { padding-left: 4em; text-indent: -4em; }
.bulletempty { padding-left: 4em; }
.text { margin-top: 0.2em; margin-bottom: 0.2em; text-indent: 1em; }
.first { margin-bottom: 0.2em; }
.error { color: red; }
.dia95 { width: 95%; max-height: 100%; }
.dia90 { width: 90%; max-height: 100%; }
.dia85 { width: 85%; max-height: 100%; }
.dia80 { width: 80%; max-height: 100%; }
.dia75 { width: 75%; max-height: 100%; }
.dia66 { width: 65%; max-height: 100%; }
.dia50 { width: 46%; max-height: 100%; }
.dia40 { width: 38%; max-height: 100%; }
.dia33 { width: 30.6%; max-height: 100%; }
.c19 { width: 100%; max-height: 90%; }
.c18 { width: 94.7%; max-height: 90%; }
.c17 { width: 89.5%; max-height: 90%; }
.c16 { width: 84.2%; max-height: 90%; }
.c15 { width: 78.9%; max-height: 90%; }
.c14 { width: 73.7%; max-height: 90%; }
.c13 { width: 68.4%; max-height: 90%; }
.c12 { width: 63.1%; max-height: 90%; }
.c11 { width: 57.9%; max-height: 90%; }
.c10 { width: 52.6%; max-height: 90%; }
.c9 { width: 47.4%; max-height: 90%; }
.c8 { width: 42.1%; max-height: 90%; }
.c7 { width: 36.8%; max-height: 90%; }
.c6 { width: 31.6%; max-height: 90%; }
.c5 { width: 26.3%; max-height: 90%; }
.c4 { width: 21.0%; max-height: 90%; }
.img75 { max-width: 75%; height: auto; }
.img50 { max-width: 50%; height: auto; }
.img33 { max-width: 33%; height: auto; }
.img30 { max-width: 30%; height: auto; }
.border { border: thin solid #333; }
.shadow { box-shadow: 3px 3px 3px 0px #bbb; }
figure.center { display: block; margin-left: auto; margin-right: auto; padding-bottom: 0.5em; }
figure.middle { display: inline-block; margin-left: auto; margin-right: auto; padding-bottom: 0.5em; }
figure.left { float: left; display: inline-block; margin-left: 0; margin-right: 4%; padding-bottom: 0.5em; }
figure.right { float: right; display: inline-block; margin-right: 0; margin-left: 4%; padding-bottom: 0.5em; }
div.center { margin-left: auto; margin-right: auto; padding: 0 0 0.5em 0; }
div.left { float: left; margin-left: 0; margin-right: 4%; padding: 0 0 0.5em 0; }
div.right { float: right; margin-right: 0; margin-left: 4%; padding: 0 0 0.5em 0; }
.col1 { float: left; margin-left: 0; margin-right: 4%; padding: 0 0 0.5em 0; }
.col2 { float: left; margin-left: auto; margin-right: auto; padding: 0 0 0.5em 0; }
.col3 { float: right; margin-right: 0; margin-left: 4%; padding: 0 0 0.5em 0; }
.fig { page-break-inside: avoid; }
.replay { position: relative; float: left; width: 100%; height: 0px; top: -1em; visibility: hidden; overflow: visible; }
.slider { margin-left: 8%; width: 36%; display: inline-block; visibility: hidden; overflow: visible; }
.auto { float: right; margin-right: 3%; display: inline-block; visibility: hidden; overflow: visible; -webkit-user-select: none; user-select: none; font-size: 1em; }
.prev { float: right; margin-right: 3%; display: inline-block; visibility: hidden; overflow: visible; -webkit-user-select: none; user-select: none; font-size: 1em; }
.next { float: right; margin-right: 8%; display: inline-block; visibility: hidden; overflow: visible; -webkit-user-select: none; user-select: none; font-size: 1em; }
.group { page-break-inside: avoid; display: block; }
.group::after { content: ""; clear: both; display: table; }
button { margin: 0; }
.box { background-color: #E8E6E2; border: 1.5px solid #4F4C4A; padding: 0 1em 0 1em; page-break-inside: avoid; margin-top: 1em; margin-bottom: 1em; }
.hint svg { float: left; margin-left: 0; margin-right: 0.5em; padding: 0 0 0.5em 0; width: 32px; }
.hint p { visibility: hidden; }
.videoWrapper {
position: relative;
padding-bottom: 56.25%; /* 16:9 */
padding-top: 25px;
height: 0;
}
.videoWrapper iframe {
position: relative;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
PK yVs OPS/game1.xhtml
Game 1
Game 1
This game was played on March 23, 2018, in the second round of the 12th international Chulan Cup. Xie Ke 5p of China is White, and Tang Weixing 9p of China is Black.
After a brief development in the top two corners, Black invades on the lower right 3–3 point with 9. Note that the old principle about which side to block on after a 3–3 invasion is followed here: block on the side on which you have the most potential. So White correctly blocks at 10 and Black makes a normal extension with 11. Now White has options. White has to think about the whole board situation.
White makes the slide we were just discussing with 12, offering complications as we noted, but Black keeps things simple with 13. This is a very common choice nowadays for both players.
White takes sente to play at 16 after Black 15 to be sure Black does not get to play there. Since Black has three corner positions already, White must not let Black destroy White’s potential here by playing at White 16. Black then also plays elsewhere with 17. If White had played the pattern that allowed Black to divide up the bottom, it would have become a difficult game for White. See the next diagram.
If White had played 16 at White 1, and then allowed Black to play this 4, White would be in trouble. Black would have three corners and a lot of territory. Getting the large framework at the bottom was essential for White and more important than preventing more gains for Black on the right side.
White manages to make enough territory in the large framework at the bottom to win this game by resignation. This is a good example of a pro deciding that in terms of the whole board a move elsewhere is more important than completing a joseki sequence, even though that will probably mean a local loss. Leaving this joseki unfinished has become very popular in pro play.
7
207
7
107
6
106
31
49
68
98
198
4
104
10
110
97
197
87
187
92
91
1
101
100
30
62
4
204
85
82
3
103
17
117
81
12
212
93
99
5
11
19
85
91
88
96
2
8
14
22
89
29
28
3
203
84
63
9
109
17
217
16
216
18
218
90
15
115
27
26
47
86
19
219
83
10
210
16
116
98
18
118
69
44
73
72
70
11
211
86
186
14
214
22
222
64
45
46
43
74
15
215
92
192
13
213
20
220
24
224
48
42
21
221
9
209
23
223
60
39
55
79
71
77
75
71
171
87
50
40
38
37
78
44
144
76
42
142
46
146
61
58
41
40
140
35
36
54
95
80
55
155
1
201
59
25
41
141
33
34
56
156
43
143
57
157
97
25
125
45
145
100
200
21
121
13
113
56
57
19
32
39
80
139
58
158
38
138
24
124
30
130
31
131
20
120
65
12
112
18
20
78
178
35
135
83
183
37
137
50
150
49
149
47
147
32
132
54
154
66
23
75
175
76
176
79
179
89
189
72
172
52
152
51
151
48
148
53
153
53
21
77
177
81
181
33
133
84
184
23
123
67
167
69
169
51
22
24
82
182
36
136
90
190
34
134
6
206
65
165
66
166
59
159
68
168
52
73
173
64
164
63
163
95
195
61
161
60
160
62
162
94
67
29
129
74
174
8
208
94
194
70
170
93
193
28
128
26
126
27
127
Moves 18–224 ko: 96, 99, 102, 105, 108, 111, 114, 119, 122; 180: connects; ko: 185, 188, 191, 196, 199, 202, 205
>
<
▶︎
Here’s the rest of the game.
PK yV Z
OPS/ch2.xhtml
Example Pro Games
Example Pro Games
PK yV OPS/js/PK yV55i i OPS/js/gobooks.js// Replay diagrams in Go books – https://gobooks.com
// Copyright © 2019 Smart Go, Inc. All rights reserved.
var runEPubScripts = function() {
var ePubCheck = document.getElementById('epub-check');
if (!ePubCheck) { return; }
var ePubInfo = "This EPUB reader supports JavaScript, but not the full EPUB reading system. Interactive diagrams may work.";
ePubCheck.innerHTML = ePubInfo;
var rso = navigator.epubReadingSystem;
if (!rso) { return; }
ePubInfo = "";
var name = rso.name;
if (name) { ePubInfo += name; }
var version = rso.version;
if (version) { ePubInfo += " " + version; }
var hasDomManipulation = rso.hasFeature("dom-manipulation");
var hasMouseEvents = rso.hasFeature("mouse-events");
var hasTouchEvents = rso.hasFeature("touch-events")
if (!hasDomManipulation || !(hasMouseEvents || hasTouchEvents)) {
if (!hasDomManipulation) {
ePubInfo += " Does not support ‘dom-manipulation’ feature.";
}
if (!hasMouseEvents) {
ePubInfo += " Does not support ‘mouse-events’ feature.";
}
if (!hasTouchEvents) {
ePubInfo += " Does not support ‘touch-events’ feature.";
}
} else {
ePubInfo += " This EPUB reader supports interactive diagrams. Tap on a diagram to show the replay controls.";
}
ePubCheck.innerHTML = ePubInfo;
}
var figureDiv = function(element) {
var div = element.parentElement;
while (!div.classList.contains("fig")) { div = div.parentElement; }
return div
}
var moveSlider = function(slider) {
var value = slider.value;
var div = figureDiv(slider);
var svg = div.getElementsByTagName("svg")[0];
var group = svg.getElementsByTagName("g");
for (var i = 0; i < group.length; i++) {
var g = group[i];
var a = g.getAttribute("gb:v");
if (a) {
var v = a.split(" ");
var visible = false;
for (var j = 0; j < v.length; j++) {
var m = parseInt(v[j], 10);
if (m <= value) {
visible = !visible;
} else {
break;
}
}
}
g.setAttributeNS(null, "visibility", (visible ? "visible" : "hidden"));
}
}
var toStart = function(slider) {
slider.value = 0;
moveSlider(slider);
}
var toEnd = function(slider) {
var range = slider.getAttribute("max");
var end = parseInt(range, 10);
slider.value = end;
moveSlider(slider);
}
var nextMove = function(button) {
stopAutoPlay();
var div = figureDiv(button);
var slider = div.getElementsByTagName("input")[0];
var value = slider.value;
var range = slider.getAttribute("max");
var rangeInt = parseInt(range, 10);
value++;
if (value > rangeInt) { value = 0; }
slider.value = value;
moveSlider(slider);
}
var prevMove = function(button) {
stopAutoPlay();
var div = figureDiv(button);
var slider = div.getElementsByTagName("input")[0];
var value = slider.value;
var range = slider.getAttribute("max");
var rangeInt = parseInt(range, 10);
value--;
if (value < 0) { value = rangeInt; }
slider.value = value;
moveSlider(slider);
}
var setVisibility = function(element, visible) {
if (element) {
element.style.visibility = (visible ? "visible" : "hidden");
}
}
var toggle = function(button) {
stopAutoPlay();
var div = figureDiv(button);
var slider = div.getElementsByTagName("input")[0];
var visible = (slider.style.visibility == "visible");
if (visible) { toEnd(slider); } else { toStart(slider); }
setVisibility(slider, !visible);
var button = div.getElementsByTagName("button")[0];
setVisibility(button, !visible);
button = div.getElementsByTagName("button")[1];
setVisibility(button, !visible);
button = div.getElementsByTagName("button")[2];
setVisibility(button, !visible);
var caption = div.getElementsByTagName("figcaption")[0];
setVisibility(caption, visible);
}
var nextAutoPlay = function(button) {
if (!isInAutoPlay) { return; }
var div = figureDiv(button);
var slider = div.getElementsByTagName("input")[0];
var value = slider.value;
var range = slider.getAttribute("max");
var rangeInt = parseInt(range, 10);
value++;
if (value <= rangeInt) {
slider.value = value;
moveSlider(slider);
} else {
stopAutoPlay();
}
}
var isInAutoPlay = false;
var startAutoPlay = function(button) {
isInAutoPlay = true;
autoPlayVar = setInterval(function() {
nextAutoPlay(button);
}, 1000);
}
var stopAutoPlay = function() {
if (isInAutoPlay) {
clearInterval(autoPlayVar);
isInAutoPlay = false;
}
}
var autoPlay = function(button) {
if (isInAutoPlay) {
stopAutoPlay();
return;
}
var div = figureDiv(button);
var slider = div.getElementsByTagName("input")[0];
var value = slider.value;
var range = slider.getAttribute("max");
var end = parseInt(range, 10);
if (value == end) { toStart(slider); }
startAutoPlay(button);
}PK yV OPS/img/PK yVwzmfL fL OPS/img/sg0131_ss_pagi_cover.jpg JFIF tExif MM * > F( i N 8Photoshop 3.0 8BIM 8BIM% ُ B~
$ICC_PROFILE
appl mntrRGB XYZ acspAPPL APPL -appl desc P bdscm cprt #wtpt rXYZ gXYZ bXYZ rTRC aarg $ vcgt D 0ndin t >mmod (vcgp 8bTRC gTRC aabg $ aagg $ desc Display mluc &