XX    X      X X    XX     XXX           XXX       X   X      XXX    XX     X             XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XX X   XXXX   XXXX   XXXX
XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX
XX    X      X X    XX     XXX           XXX       X   X      XXX    XX     X             XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XX X   XXXX   XXXX   XXXXXXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX   XXXX