XX X      X      X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   X  X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX     XX X   XX X   XX
X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X
XX X      X      X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   X  X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX     XX X   XX X   XXX   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X   XX X