Clean HTML 5 Coding Clean web development

Tic Tac Toe

o
x
x
x
x
x
x
x
x
o
x
x
x
x
x
x
x
x
o
x
x
o
x
x
x
x
x
o
x
x
o
x
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
o
o
x
x
o
o
x
o
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
o
o
x
x
o
o
x
o
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
o
x
o
x
o
x
x
o
o
x
o
o
x
x
o
o
x
x
x
x
o
x
x
o
o
o
x
o
x
x
o
o
o
x
o
x
x
o
o
x
o
o
x
x
o
o
x
x
x
x
o
x
x
o
o
o
x
o
x
x
o
o
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
o
o
x
x
o
x
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
o
o
o
x
o
x
x
o
x
o
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
o
o
x
x
o
x
o
x
o
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
o
o
x
x
o
o
x
x
o
x
o
x
x
x
o
x
x
o
o
o
x
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
x
o
x
x
o
o
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
o
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
o
o
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
o
o
o
o
x
x
o
x
x
o
o
o
x
x
o
x
x
x
o
x
o
x
x
o
x
o
o
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
x
o
x
x
o
o
o
x
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
o
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
o
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
o
x
o
o
x
x
o
x
x
x
x
x
o
x
o
x
o
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
o
x
x
o
o
o
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
x
o
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
o
o
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
x
o
x
o
x
o
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
x
x
o
o
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
o
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
o
o
x
o
o
x
x
x
x
x
o
x
o
o
x
o
x
o
x
o
o
x
o
x
x
x
o
x
o
o
x
o
x
x
x
o
x
o
o
x
o
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
o
x
x
x
o
x
o
o
x
o
x
x
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
o
o
x
o
o
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
o
x
o
o
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
o
o
x
o
x
o
x
x
o
o
x
o
x
o
x
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
o
x
x
o
o
o
x
x
o
x
x
x
x
o
o
x
o
x
x
o
o
x
x
o
x
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
o
o
x
x
o
o
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
x
o
o
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
o
o
x
o
x
x
o
x
o
o
x
o
x
o
x
o
o
x
x
o
o
x
x
o
o
x
x
x
x
o
x
o
o
x
o
x
o
x
o
o
o
x
x
x
x
o
x
x
o
o
x
x
o
x
o
x
o
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
x
o
o
x
o
x
o
x
o
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
o
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
o
x
o
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
o
o
o
x
x
o
x
o
o
x
x
o
o
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
x
o
x
x
o
o
x
x
x
x
o
x
o
o
o
x
x
o
x
x
o
o
x
x
o
x
o
x
o
o
o
x
x
x
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
x
x
o
x
o
x
o
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
o
x
x
x
o
x
o
o
o
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
o
x
x
x
o
x
o
o
x
x
x
x
o
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
x
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
o
o
o
x
x
o
x
o
o
o
x
x
o
x
o
o
o
x
x
x
x
o
x
o
o
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
o
x
x
o
x
o
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
o
o
o
x
x
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
x
o
x
x
x
o
x
o
o
x
o
x
o
o
x
x
x
x
x
o
x
x
o
x
x
x
o
x
o
x
x
x
o
x
x
x
x
o
x
x
x
o
x
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
o
o
x
x
x
o
o
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
o
o
x
o
o
x
x
x
o
o
o
x
x
o
x
x
x
o
o
o
o
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
o
o
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
o
x
x
o
o
x
o
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
o
o
o
o
x
x
o
x
x
o
o
x
o
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
o
o
o
x
x
x
o
x
o
o
x
o
x
x
x
o
x
o
o
x
o
x
x
x
o
x
o
o
o
o
x
x
x
o
x
o
o
x
o
x
x
x
o
x
o
x
x
o
x
x
o
x
o
o
o
x
x
x
o
x
o
o
x
o
x
x
o
x
o
o
x
o
x
x
x
o
x
o
x
x
o
x
x
o
o
x
o
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
o
x
o
x
x
o
o
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
o
o
o
x
x
x
o
x
x
o
x
o
x
x
o
x
o
o
o
x
x
x
o
x
x
o
x
o
x
x
o
x
o
o
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
o
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
o
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
o
o
x
o
x
o
x
o
x
o
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
o
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
x
o
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
o
x
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
o
x
x
o
x
o
x
o
o
x
o
x
o
x
o
x
o
o
x
o
x
o
x
x
x
x
o
x
o
x
o
o
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
x
x
o
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
o
x
o
x
x
x
o
x
o
o
x
o
x
x
o
x
o
o
o
x
x
x
o
x
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
o
o
x
o
o
x
x
x
o
x
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
x
o
o
x
o
x
x
o
o
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
o
o
x
o
o
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
x
x
o
x
x
o
o
x
o
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
o
x
o
o
o
x
x
x
o
x
x
o
x
o
x
x
o
x
o
o
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
o
x
x
o
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
x
x
o
x
o
o
x
o
x
o
x
o
o
x
x
o
o
x
o
x
o
x
x
x
x
o
x
o
o
x
o
x
o
x
o
x
o
x
x
o
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
o
x
o
x
o
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
o
x
o
x
o
x
o
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
o
x
x
o
o
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
o
o
x
x
o
o
x
o
x
o
o
x
x
x
o
x
o
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
o
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
o
x
x
o
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
o
o
x
x
o
x
o
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
o
x
o
o
x
x
x
o
x
x
x
x
o
x
x
x
o
x
o
x
x
o
x
o
x
o
x
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
x
x
o
x
o
x
x
x
x
x
o
x
x
o
x
x
x
x
x
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
o
o
o
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
x
o
o
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
o
o
o
o
x
x
x
x
x
o
o
x
o
x
x
x
o
o
o
o
x
x
x
x
x
o
o
x
o
x
x
x
o
o
o
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
x
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
o
o
o
o
x
o
x
x
x
o
x
o
o
x
o
x
x
x
o
o
o
x
o
x
x
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
o
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
o
o
o
o
x
o
x
x
x
o
x
o
o
x
o
x
x
x
o
x
o
o
x
o
x
o
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
o
x
x
x
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
o
x
o
x
o
x
x
o
o
o
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
o
o
x
x
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
x
x
x
x
o
x
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
o
o
o
o
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
x
x
x
o
o
o
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
o
o
x
o
x
x
o
x
o
o
x
o
x
x
x
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
o
o
x
x
o
x
o
x
o
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
o
o
x
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
o
x
o
o
x
x
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
o
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
x
o
o
x
o
x
o
x
x
x
x
x
x
o
x
o
x
x
x
x
x
x
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
o
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
o
x
o
o
o
x
o
x
x
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
x
o
x
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
x
o
x
o
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
x
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
x
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
o
x
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
o
x
x
o
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
o
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
x
x
x
o
o
x
o
x
x
o
o
x
o
x
x
x
x
x
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
x
x
x
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
x
x
x
o
o
x
x
x
x
o
x
x
x
o
x
x
x
x
o
x
x
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
o
o
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
x
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
x
x
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
x
x
o
x
x
x
x
o
x
x
o
o
x
x
o
x
o
o
x
x
x
x
o
x
x
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
x
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
x
o
o
x
x
x
x
x
x
o
x
o
x
x
x
x
x
x
o
x
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
x
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
x
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
x
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
x
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
x
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
x
o
x
x
o
x
x
x
x
x
o
x
x
o
x
x
x
x
x
o
x
o
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
o
o
o
x
o
x
x
x
o
x
o
o
x
o
x
x
x
o
o
o
x
o
x
x
o
x
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
o
x
o
o
o
x
o
x
x
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
x
o
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
o
o
x
x
o
o
x
o
x
o
x
x
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
x
o
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
o
x
x
o
o
x
o
x
x
x
o
x
o
o
x
o
x
x
o
x
o
o
x
o
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
o
x
o
o
x
o
x
x
o
x
o
x
x
o
o
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
x
o
x
o
x
o
o
x
o
x
x
o
x
o
x
o
x
o
x
o
x
o
x
o
x
o
x
o
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
o
x
x
o
o
o
x
x
o
x
x
x
o
o
o
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
x
o
x
o
x
o
o
x
o
x
o
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
o
x
x
o
o
o
x
x
o
x
x
x
x
o
o
x
o
x
o
x
o
o
x
o
x
x
o
o
x
x
o
x
x
x
x
x
o
x
o
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
o
o
x
x
o
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
o
x
o
o
x
x
x
o
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
x
o
o
x
x
o
o
x
o
x
o
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
o
x
o
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
o
o
x
o
x
x
x
o
x
o
o
x
o
x
x
o
x
o
o
x
o
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
o
x
o
x
o
o
x
x
o
x
o
x
x
o
o
x
x
x
x
o
x
o
o
x
o
x
o
x
o
o
x
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
o
x
o
x
o
x
x
o
x
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
o
o
o
x
x
o
x
o
o
x
x
o
o
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
o
x
x
o
o
x
x
x
x
o
x
o
o
o
x
x
o
o
x
o
o
x
x
x
x
o
x
x
o
o
x
x
o
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
o
x
x
x
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
x
x
o
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
o
o
o
x
x
o
x
o
o
o
x
x
o
o
x
o
o
x
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
o
o
o
x
x
o
o
x
o
x
o
x
x
x
o
x
o
o
x
o
x
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
o
x
x
o
x
x
o
x
x
x
x
x
o
x
x
o
x
o
x
x
x
o
x
o
o
x
o
o
x
o
x
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
x
x
x
o
x
o
x
x
x
x
x
o
x
x
o
x
x
x
x
x
o
x
x
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
o
o
o
o
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
o
o
o
x
x
x
o
o
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
o
o
x
x
x
x
x
o
x
o
o
x
x
o
x
o
o
o
x
x
x
o
o
o
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
o
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
o
o
x
o
o
o
x
x
x
x
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
o
x
x
x
o
x
o
o
x
o
x
x
o
x
o
o
x
o
x
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
o
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
o
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
o
o
x
x
o
o
x
x
o
x
o
x
x
o
x
x
x
o
x
o
o
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
o
x
x
x
o
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
x
x
x
x
o
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
o
x
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
x
x
x
x
x
o
x
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
o
o
o
o
o
x
x
x
x
o
o
x
o
o
x
x
x
o
o
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
o
o
o
x
o
o
x
x
x
x
o
o
x
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
o
x
x
x
x
o
o
x
o
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
x
o
x
x
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
o
o
x
o
x
o
x
o
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
o
x
o
x
o
x
x
x
x
x
o
o
x
o
x
x
o
o
x
o
x
x
x
x
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
o
o
o
x
x
o
o
x
x
o
x
o
x
x
o
x
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
x
o
x
x
o
x
x
x
x
o
o
x
x
o
o
x
x
x
x
o
x
x
o
x
x
x
o
x
o
x
x
o
x
x
x
x
x
o
o
x
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
o
x
x
x
x
x
o
o
o
o
x
x
x
x
o
o
o
o
x
x
x
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
x
o
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
o
x
o
o
o
o
x
x
x
x
x
o
o
o
o
x
x
x
x
x
o
o
o
o
x
x
o
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
o
x
o
o
o
o
x
x
x
x
x
o
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
o
o
x
o
o
o
x
x
x
o
x
x
o
o
o
x
x
x
o
x
x
o
o
o
x
x
o
o
x
x
o
o
o
x
x
x
o
x
o
o
x
x
x
x
o
x
x
o
o
x
x
o
o
x
o
o
o
x
x
x
o
x
x
o
o
o
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
o
x
x
x
o
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
o
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
o
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
o
x
o
o
o
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
o
x
x
o
o
o
x
x
o
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
o
o
o
o
x
x
x
x
o
o
o
o
x
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
o
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
o
o
o
x
x
x
x
x
x
x
o
o
x
o
x
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
o
x
x
o
o
o
o
x
x
x
x
x
o
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
o
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
o
x
x
o
o
x
x
x
x
x
x
x
o
o
x
o
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
o
x
x
o
o
o
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
o
o
x
x
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
x
o
o
x
o
x
o
o
o
x
x
x
x
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
o
x
x
x
x
o
x
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
o
o
o
x
x
o
x
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
o
x
o
x
o
o
x
x
o
x
o
o
o
x
x
o
x
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
o
x
o
o
x
x
o
o
x
x
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
o
x
x
o
o
o
x
x
o
x
x
x
x
o
o
x
o
x
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
o
x
o
x
o
x
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
o
o
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
o
x
o
x
o
o
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
o
x
o
x
x
x
o
x
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
x
x
x
o
x
x
x
x
o
x
x
x
o
o
x
x
x
o
o
x
x
o
x
x
x
x
o
x
x
x
o
x
x
o
x
o
x
x
x
x
o
x
x
x
o
x
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
o
o
x
x
o
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
o
x
o
o
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
o
x
o
o
x
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
x
x
x
x
o
x
x
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
x
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
x
x
x
x
o
x
o
x
o
x
x
x
x
x
x
o
x
o
x
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
x
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
o
o
o
x
x
x
x
x
o
x
o
x
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
o
x
o
x
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
x
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
x
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
x
x
x
x
x
x
x
o
o
o
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
o
x
x
o
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
o
x
o
x
o
o
o
x
x
o
x
o
x
o
o
x
x
x
o
x
x
o
o
o
x
x
x
o
x
x
o
o
o
o
x
x
o
x
x
o
o
o
x
x
x
o
x
x
x
o
o
o
x
x
o
x
o
o
x
x
x
o
o
x
x
o
o
x
x
x
o
o
x
x
o
o
o
x
x
o
o
x
x
o
o
x
x
x
o
x
x
o
o
o
x
x
x
o
x
x
x
o
o
o
x
x
o
x
o
o
x
x
x
o
o
x
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
o
x
x
o
x
o
o
x
x
x
x
o
x
o
o
o
x
x
x
o
x
o
o
o
x
x
x
x
o
x
x
o
o
o
x
x
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
o
o
x
o
o
x
x
x
o
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
o
x
x
x
o
o
o
x
x
x
x
x
o
o
o
o
x
x
x
x
o
o
o
o
x
x
x
x
x
o
x
o
o
o
x
x
o
x
o
o
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
o
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
o
x
x
x
o
o
o
x
x
x
o
o
o
x
x
x
x
x
x
x
o
o
o
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
o
x
o
x
x
o
o
x
o
x
x
o
o
o
x
o
x
x
o
o
o
x
x
o
x
x
x
x
o
o
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
x
x
o
x
o
x
x
o
o
o
x
o
x
o
x
x
o
o
x
o
x
x
o
o
o
x
x
o
x
x
x
x
o
o
o
x
o
x
x
o
o
x
o
x
o
x
o
o
x
x
o
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
x
x
x
x
o
x
x
o
o
o
x
x
o
x
o
o
x
x
x
x
o
x
o
o
o
x
x
x
x
o
x
x
o
o
o
x
x
o
x
o
o
x
x
x
x
o
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x
x
x
o
x
o
o
o
x
x
x
o
o
o
x
x
x
x
x
o
o
o
o
x
x
x
x
x
o
x
o
o
o
x
x
o
x
o
o
x
x
x
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
o
x
x
x
o
o
o
x
x
x
x
x
x
o
o
o
o
x
x
x
o
o
o
x
x
x
x
x
x
x
o
o
o
x
x
o
o
x
x
o
x
x
x
x
o
o
x
x
o
x
x
x
x
o
o
o
x
o
x
x
o
o
x
o
x
x
o
o
o
x
x
o
o
x
x
x
o
o
x
o
o
x
x
x
o
o
x
x
o
x
x
x
x
o
o
o
x
o
x
x
o
o
x
o
x
o
x
o
o
x
x
o
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
x
x
x
o
x
x
x
o
o
o
x
o
x
x
o
o
x
x
x
o
x
x
o
o
o
x
x
x
o
x
x
x
o
o
o
x
o
x
x
o
o
x
x
x
o
x
o
x
o
o
x
x
x
x
x
o
x
o
o
x
x
x