1
0
Fork 0
mirror of https://github.com/TerryCavanagh/VVVVVV.git synced 2024-11-15 23:49:42 +01:00
VVVVVV/desktop_version/src/Tower.cpp
Misa 8af37bc693 Remove zeroed arrays from tower functions in M&P
This removes the arrays of zeroes that still take up space in the
binary. It doesn't seem like the compiler optimizes or compresses these
zeroes anyway, so just remove them instead, and make
load()/loadminitower()/loadminitower2() no-op functions. The
minitower/contents arrays are already initialized zeroed-out, anyway, so
there's no need to keep these other arrays around.

This saves exactly 72 kilobytes of memory and binary size.
2020-08-03 00:29:15 -04:00

1153 lines
110 KiB
C++

#include "Tower.h"
#include "MakeAndPlay.h"
#include "UtilityClass.h"
towerclass::towerclass()
{
minitowermode = false;
//We init the lookup table:
for (size_t i = 0; i < SDL_arraysize(vmult); i++)
{
vmult[i] = i * 40;
}
//We create a blank map
SDL_memset(contents, 0, sizeof(contents));
SDL_memset(back, 0, sizeof(back));
SDL_memset(minitower, 0, sizeof(minitower));
loadbackground();
loadmap();
}
int towerclass::backat(int xp, int yp, int yoff)
{
yp = yp * 8;
yp += yoff;
yoff = yp % 8;
yp = (yp - yoff) / 8;
if (xp >= 0 && xp < 40)
{
while (yp < 0) yp += 120;
while (yp >= 120) yp -= 120;
return back[xp + vmult[yp]];
}
return 0;
}
int towerclass::at(int xp, int yp, int yoff)
{
if (minitowermode)
{
return miniat(xp, yp, yoff);
}
else
{
yp = yp * 8;
yp += yoff;
yoff = yp % 8;
yp = (yp - yoff) / 8;
while (yp < 0) yp += 700;
while (yp >= 700) yp -= 700;
if (xp >= 0 && xp < 40)
{
return contents[xp + vmult[yp]];
}
else if (xp == -1)
{
return contents[vmult[yp]];
}
else if (xp == 40)
{
return contents[39 + vmult[yp]];
}
return 0;
}
}
int towerclass::miniat(int xp, int yp, int yoff)
{
yp = yp * 8;
yp += yoff;
yoff = yp % 8;
yp = (yp - yoff) / 8;
while (yp < 0) yp += 100;
while (yp >= 100) yp -= 100;
if (xp >= 0 && xp < 40)
{
return minitower[xp + vmult[yp]];
}
else if (xp == -1)
{
return minitower[vmult[yp]];
}
else if (xp == 40)
{
return minitower[39 + vmult[yp]];
}
return 0;
}
void towerclass::loadminitower1()
{
//Loads the first minitower into the array.
#if !defined(MAKEANDPLAY)
static const short tmap[] = {
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,14,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,24,28,28,28,22,14,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,24,28,28,28,28,28,28,22,14,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,24,28,28,28,28,28,28,28,28,28,22,14,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,24,28,28,28,28,28,28,28,28,28,28,28,28,22,14,12,12,12,12,12,
23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
6,6,6,6,6,6,6,6,28,28,28,28,28,28,28,28,28,28,28,28,6,6,6,6,6,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
18,18,18,18,18,18,18,19,28,28,28,28,28,28,28,28,28,28,28,28,17,18,18,18,19,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,15,19,28,28,28,28,28,28,28,28,28,17,18,16,12,12,12,15,19,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,15,19,28,28,28,28,28,28,17,18,16,12,12,12,12,12,12,15,19,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,15,19,28,28,28,17,18,16,12,12,12,12,12,12,12,12,12,15,19,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,15,18,18,18,16,12,12,12,12,12,12,12,12,12,12,12,12,15,19,28,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,19,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,22,14,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,24,28,28,28,28,28,22,14,12,12,12,
12,12,13,23,23,23,23,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,24,7,7,28,28,28,28,28,28,20,12,12,12,
12,12,21,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,13,23,24,7,7,28,28,28,28,28,28,28,28,20,12,12,12,
12,12,21,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,13,23,24,7,7,28,28,28,28,28,28,28,28,28,28,20,12,12,12,
12,12,21,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,13,23,24,7,7,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,
12,12,21,28,28,28,28,28,28,28,28,20,12,12,12,12,12,13,23,24,7,7,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,
12,12,21,28,28,28,28,28,28,28,28,20,12,12,12,13,23,24,7,7,28,28,28,28,28,28,28,28,28,28,28,28,28,28,17,18,16,12,12,12,
12,12,21,28,28,28,17,19,28,28,28,22,23,23,23,24,7,7,28,28,28,28,28,28,28,28,28,28,28,28,28,28,17,18,16,12,12,12,12,12,
12,12,21,28,28,28,20,21,28,28,28,7,7,7,7,7,28,28,28,28,28,28,28,28,28,28,28,28,28,28,17,18,16,12,12,12,12,12,12,12,
12,12,21,28,28,28,20,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,17,18,16,12,12,12,12,12,12,12,12,12,
12,12,21,28,28,28,20,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,17,18,16,12,12,12,12,12,12,12,12,12,12,12,
12,12,21,28,28,28,20,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,17,18,16,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,21,28,28,28,20,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,17,18,16,12,12,12,12,13,23,23,23,23,14,12,12,12,12,12,
12,12,21,28,28,28,20,21,28,28,28,28,28,28,28,28,28,28,28,28,17,18,16,12,12,12,12,13,23,24,7,7,7,7,20,12,12,12,12,12,
12,12,21,28,28,28,20,15,18,18,18,18,18,18,18,18,18,18,18,18,16,12,12,12,12,13,23,24,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,21,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,24,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,21,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,24,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,21,28,28,28,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,17,19,28,28,28,28,20,12,12,12,12,12,
12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,17,18,16,21,28,28,28,28,20,12,12,12,12,12,
12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,17,18,16,12,12,21,28,28,28,28,20,12,12,12,12,12,
12,12,15,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,12,12,13,23,24,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,24,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,24,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,24,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,24,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,13,23,23,23,23,23,23,23,23,23,23,24,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,17,18,18,18,18,16,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,22,23,14,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,17,19,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,22,24,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,22,23,23,23,23,23,23,23,23,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,6,6,6,6,6,6,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,17,18,18,18,18,18,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,17,19,28,28,28,28,28,0,0,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,22,24,28,28,28,28,28,0,0,28,28,28,28,28,28,28,28,28,0,0,0,20,13,23,23,23,23,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,20,21,28,28,28,28,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,28,28,28,28,28,0,0,0,20,21,28,28,28,28,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,28,28,28,28,28,0,0,0,20,21,28,28,28,28,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,20,21,28,28,28,28,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,20,21,28,28,28,28,
12,12,12,12,12,12,12,12,21,0,0,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,20,21,28,28,17,18,
12,12,12,12,12,12,12,12,21,0,0,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,20,21,28,28,20,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,17,19,0,0,0,20,21,28,28,22,23,
12,12,12,12,12,12,12,12,21,0,0,0,0,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,22,24,0,0,0,20,21,28,28,28,28,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,21,28,28,28,28,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,21,28,28,28,28,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,21,28,28,28,28,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,21,28,28,28,28,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,15,18,18,18,18,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
};
SDL_memcpy(minitower, tmap, sizeof(minitower));
#endif
}
void towerclass::loadminitower2()
{
#if !defined(MAKEANDPLAY)
static const short tmap[] = {
12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,11,20,21,10,0,20,21,28,28,20,21,28,28,20,12,12,12,12,12,12,12,12,12,12,
12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,11,20,21,10,0,20,21,28,28,20,21,28,28,20,12,12,12,12,12,12,12,12,12,12,
12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,11,20,21,10,0,20,21,28,28,20,21,28,28,20,12,12,12,12,12,12,12,12,12,12,
12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,11,20,21,10,0,20,21,28,28,20,21,28,28,20,13,23,23,23,23,23,23,23,23,23,
12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,11,20,21,10,0,20,21,28,28,20,21,28,28,22,24,28,28,0,0,0,0,0,0,0,
12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,11,20,21,10,0,20,21,28,28,20,21,28,28,28,28,28,28,0,0,0,0,0,0,0,
12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,11,20,21,10,0,20,21,28,28,22,24,28,28,28,28,28,28,0,0,0,0,0,0,0,
12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,11,20,21,10,0,20,21,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,
12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,11,20,21,10,0,22,24,28,28,28,28,28,28,28,28,28,28,0,17,18,18,18,18,18,
12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,11,20,21,10,0,28,28,28,28,28,28,28,28,28,28,0,0,0,20,12,12,12,12,12,
12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,11,20,21,10,0,28,28,28,28,28,28,28,28,28,28,0,0,0,20,12,12,12,12,12,
12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,11,20,21,10,0,28,28,28,28,28,28,28,28,0,0,0,0,0,20,12,12,12,12,12,
23,23,24,0,0,0,0,0,0,0,0,0,0,0,0,0,11,22,24,10,0,28,28,28,28,28,28,28,28,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,28,28,28,28,28,28,28,28,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
18,18,18,18,18,18,18,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
23,23,23,23,23,23,23,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,18,19,0,0,0,0,0,0,20,12,12,12,12,12,
18,18,18,18,18,19,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,21,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,21,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,21,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,15,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,12,21,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,13,23,23,23,23,23,23,14,13,23,23,23,23,23,23,23,14,12,12,12,12,21,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,9,9,9,9,9,9,22,24,9,9,9,9,9,9,9,22,23,23,23,23,24,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,28,28,28,28,28,6,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,25,27,0,0,0,0,0,0,0,28,28,28,28,28,26,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,28,28,28,28,28,7,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,21,8,8,8,8,8,8,17,18,18,18,19,8,8,8,6,17,18,18,18,18,19,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,15,18,18,18,18,18,18,16,12,12,12,15,18,18,18,18,16,12,12,12,12,21,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,6,6,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,19,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,13,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,14,13,23,23,23,24,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,20,21,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,20,21,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,22,24,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,25,27,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,28,28,28,28,28,28,28,0,0,0,17,19,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,28,28,28,28,28,28,28,0,0,0,20,21,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,21,10,0,0,0,0,0,0,0,28,28,28,28,28,28,28,0,0,0,20,21,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,15,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,21,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,23,23,24,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,28,0,0,28,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,13,24,28,28,28,28,28,28,28,17,19,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,13,24,0,28,28,28,28,28,28,28,20,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,13,24,0,0,28,28,28,28,28,28,17,16,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,13,24,0,0,0,28,28,28,28,28,28,20,12,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,13,24,0,0,0,0,28,28,28,28,28,17,16,12,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,13,24,0,0,0,0,0,28,28,28,28,28,20,12,12,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,13,24,0,0,0,0,0,0,28,28,28,28,17,16,12,12,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,13,24,0,0,0,0,0,28,28,28,28,28,28,20,12,12,12,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,13,24,0,0,0,0,0,0,28,28,28,28,28,17,16,12,12,12,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,13,24,0,0,0,0,0,0,0,28,28,28,28,28,20,12,12,12,12,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,13,24,0,0,0,0,0,0,0,0,28,28,28,28,17,16,12,12,12,12,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
23,23,24,0,0,0,0,0,0,0,0,0,28,28,28,28,20,12,12,12,12,12,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,17,16,12,12,12,12,12,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,20,12,12,12,12,12,12,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,28,28,17,16,12,12,12,12,12,12,21,28,28,28,28,0,0,0,0,0,0,0,20,12,12,12,12,12,
0,0,0,0,0,0,0,0,0,0,0,0,28,28,20,12,12,12,12,12,12,12,21,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,12,12,12,12,12,12,12,21,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
};
SDL_memcpy(minitower, tmap, sizeof(minitower));
#endif
}
void towerclass::loadbackground()
{
//Loads the background into the array.
static const short tmap[] = {
1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,2,0,0,0,0,0,0,0,0,0,0,0,0,5,4,0,0,
2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,2,0,0,0,0,0,0,0,0,0,0,0,0,5,1,1,4,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,2,0,0,0,0,0,0,0,0,0,0,0,0,5,1,1,1,1,4,
0,5,4,0,0,0,0,0,0,5,4,0,0,0,0,0,0,0,0,3,1,4,0,0,0,0,0,0,0,0,0,0,0,5,1,1,1,1,1,2,
5,1,1,4,0,0,0,0,5,1,1,4,0,0,0,0,0,0,0,0,3,1,4,0,0,0,0,0,0,0,0,0,5,1,1,1,1,1,2,0,
1,1,1,1,4,0,0,5,1,1,1,1,4,0,0,0,0,0,0,0,0,3,1,4,0,0,0,0,0,0,0,5,1,1,1,1,1,2,0,0,
1,1,1,1,1,4,5,1,1,1,1,1,1,4,0,0,0,0,0,0,0,0,3,1,4,0,0,0,0,0,0,3,1,1,1,1,1,4,0,0,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,0,0,0,0,0,0,0,0,3,1,4,0,0,0,0,0,0,3,1,1,1,1,1,4,0,
1,1,1,1,1,1,1,1,2,3,1,1,2,3,1,4,0,0,0,0,0,0,0,0,3,1,4,0,0,0,0,0,0,3,1,1,1,1,1,4,
1,1,1,1,1,1,1,2,0,0,3,2,0,0,3,2,0,0,0,0,0,0,5,4,5,1,1,4,0,0,0,0,0,0,3,1,1,1,1,1,
1,1,1,1,1,1,2,0,5,4,0,0,0,0,0,0,0,0,0,0,0,5,1,1,1,1,1,1,4,0,0,0,0,0,0,3,1,1,1,1,
1,1,1,1,1,1,4,5,1,2,0,0,0,0,0,0,0,0,0,0,0,3,1,1,1,2,3,1,1,4,0,0,0,0,0,0,3,1,1,1,
1,1,1,1,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,3,1,1,4,0,3,1,1,4,0,0,0,0,0,0,3,1,1,
3,1,1,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,1,2,0,5,1,1,1,4,0,0,0,0,0,0,3,1,
0,3,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,5,4,5,1,1,2,0,0,3,1,1,1,2,0,0,0,0,0,0,0,3,
0,0,3,1,1,1,4,0,0,0,0,0,5,4,0,0,0,0,5,1,1,1,1,2,0,0,0,0,3,1,2,0,5,4,0,0,0,0,0,0,
0,0,0,3,1,1,1,4,0,0,0,5,1,2,0,0,0,0,3,1,1,1,1,4,5,4,0,0,5,1,4,5,1,1,4,0,0,0,0,0,
0,0,0,0,3,1,1,1,4,0,0,3,1,4,0,0,0,0,5,1,1,1,1,1,1,1,4,5,1,1,1,1,1,1,2,0,0,0,0,0,
0,0,0,0,5,1,1,1,1,4,0,0,3,1,4,5,4,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,0,0,0,0,0,0,
0,0,0,5,1,1,1,1,1,1,4,0,0,3,1,1,1,1,1,1,1,1,2,3,1,1,1,1,1,1,1,1,2,0,0,0,0,0,0,5,
0,0,5,1,1,1,2,3,1,1,1,4,0,0,3,1,1,1,1,1,1,2,0,0,3,1,1,1,1,1,1,1,4,0,0,0,0,0,5,1,
0,0,3,1,1,2,0,0,3,1,1,1,4,0,0,3,1,1,1,1,1,4,0,0,0,3,2,3,1,1,1,1,1,4,0,0,0,0,3,1,
0,0,0,3,2,0,0,0,0,3,2,3,1,4,0,0,3,1,1,1,1,1,4,0,0,0,0,0,3,1,1,2,3,1,4,0,0,0,0,3,
0,0,0,0,0,0,5,4,0,0,0,0,3,1,4,0,0,3,2,3,1,1,1,4,0,0,0,0,0,3,2,0,0,3,1,4,0,0,0,0,
0,0,0,0,0,0,3,1,4,0,0,0,0,3,1,4,0,0,0,5,1,1,1,2,0,0,0,0,0,0,0,0,0,0,3,2,0,0,0,0,
0,0,0,0,0,0,5,1,1,4,5,4,0,0,3,2,0,0,0,3,1,1,2,0,0,5,4,0,0,0,0,5,4,0,0,0,0,0,0,0,
0,0,0,0,0,5,1,1,1,1,1,2,0,0,0,0,0,0,0,0,3,1,4,0,0,3,1,4,0,0,5,1,1,4,0,0,5,4,0,0,
0,0,0,0,5,1,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,3,1,4,0,0,3,1,4,5,1,2,3,1,4,5,1,1,4,0,
0,0,0,5,1,1,1,1,1,1,4,0,0,0,0,0,0,0,0,0,0,0,3,1,4,0,0,3,1,1,2,0,0,3,1,1,1,1,1,4,
0,0,0,3,1,1,2,3,1,1,1,4,0,0,0,0,0,0,0,0,0,0,0,3,1,4,0,0,3,2,0,0,0,0,3,1,1,1,1,1,
4,0,0,0,3,2,0,0,3,1,1,1,4,0,0,0,0,0,0,0,0,0,0,0,3,1,4,0,0,0,0,0,0,0,5,1,1,1,1,1,
1,4,0,0,0,0,0,0,5,1,1,1,1,4,0,0,0,0,5,4,0,0,0,0,0,3,1,4,0,5,4,0,0,5,1,1,1,1,1,1,
3,1,4,0,0,0,0,5,1,1,1,1,1,1,4,0,0,0,3,1,4,5,4,0,0,5,1,2,0,3,1,4,5,1,1,1,2,3,1,1,
0,3,1,4,0,0,5,1,1,1,2,3,1,1,2,0,0,0,0,3,1,1,1,4,5,1,2,0,0,0,3,1,1,1,1,2,0,5,1,1,
0,5,1,1,4,5,1,1,1,2,0,0,3,2,0,0,0,0,0,5,1,1,1,1,1,2,0,0,0,0,0,3,1,1,2,0,5,1,1,1,
5,1,1,1,1,1,1,1,1,4,5,4,0,0,0,0,0,0,0,3,1,1,1,1,1,4,0,0,0,0,0,5,1,2,0,0,3,1,1,1,
1,1,1,2,3,1,1,1,1,1,1,1,4,5,4,0,0,5,4,0,3,1,1,1,1,1,4,0,0,0,5,1,2,0,0,0,0,3,1,1,
1,1,2,0,0,3,1,1,1,1,1,1,1,1,1,4,5,1,2,0,5,1,1,1,2,3,2,0,0,0,3,1,4,0,0,0,0,0,3,1,
1,2,0,0,0,0,3,1,1,2,3,1,1,1,1,1,1,2,0,5,1,1,1,1,4,0,0,5,4,0,0,3,1,4,0,0,0,0,0,3,
2,0,0,0,0,0,5,1,2,0,0,3,1,1,1,1,2,0,5,1,1,1,1,1,1,4,5,1,1,4,0,0,3,1,4,0,0,0,0,0,
0,0,0,0,0,5,1,2,0,0,0,0,3,1,1,1,4,5,1,1,1,1,1,1,1,1,1,1,1,2,0,0,0,3,2,0,0,0,0,0,
0,0,0,0,0,3,2,0,0,0,0,0,0,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,
0,5,4,0,0,0,0,5,4,0,0,0,0,0,3,1,1,1,1,2,3,1,1,1,1,1,1,2,0,0,5,4,0,0,5,4,0,0,0,5,
5,1,1,4,0,0,5,1,2,0,0,0,0,0,0,3,1,1,2,0,0,3,1,1,1,1,2,0,0,5,1,1,4,5,1,2,0,0,5,1,
1,1,1,1,4,5,1,2,0,0,0,0,0,0,0,0,3,2,0,0,0,0,3,1,1,2,0,0,5,1,1,1,1,1,2,0,0,5,1,1,
1,1,1,1,1,1,1,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,1,4,0,0,3,1,1,1,1,2,0,0,5,1,1,1,
1,1,1,1,1,1,1,2,0,5,4,0,0,0,0,0,0,0,0,0,0,5,1,1,1,1,4,0,0,3,1,1,2,0,0,5,1,1,1,1,
1,1,1,1,1,1,1,4,5,1,2,0,0,0,0,0,0,0,0,0,5,1,1,1,1,1,1,4,0,0,3,1,4,0,0,3,1,1,1,1,
1,1,1,1,1,1,1,1,1,2,0,0,0,0,0,0,0,0,0,5,1,1,1,1,1,1,1,2,0,0,5,1,1,4,0,0,3,1,1,1,
1,1,1,1,1,1,1,1,2,0,0,0,0,0,0,0,0,0,5,1,1,1,1,1,1,1,2,0,0,5,1,1,1,2,0,0,5,1,1,1,
3,1,1,1,1,1,1,2,0,0,0,0,0,5,4,0,0,5,1,1,1,1,1,1,1,2,0,0,5,1,1,1,2,0,0,5,1,1,1,1,
0,3,1,1,1,1,1,4,0,0,5,4,5,1,1,4,5,1,1,1,1,1,1,1,2,0,0,5,1,1,1,2,0,0,5,1,1,1,1,1,
0,0,3,1,1,1,1,1,4,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,0,0,3,1,1,2,0,0,5,1,1,1,1,1,1,
0,0,0,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,0,0,3,2,0,0,5,1,1,1,1,1,1,1,
0,0,0,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,0,0,0,0,0,3,1,1,1,1,1,1,1,
0,0,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,3,1,4,0,0,0,0,0,3,1,1,1,1,1,1,
0,5,1,1,1,1,1,1,1,1,1,1,1,1,1,2,3,1,1,1,1,1,1,2,0,0,3,1,4,0,0,0,0,5,1,2,3,1,1,1,
5,1,1,1,1,1,1,1,1,1,1,1,2,3,2,0,0,3,1,1,1,1,2,0,0,0,0,3,1,4,0,0,5,1,2,0,0,3,1,1,
1,1,1,1,1,1,1,1,1,1,1,1,4,0,0,5,4,0,3,1,1,2,0,0,0,0,0,0,3,1,4,5,1,2,0,0,0,0,3,1,
1,1,1,1,1,1,1,1,1,1,1,1,1,4,5,1,1,4,0,3,1,4,0,0,0,0,0,0,5,1,1,1,2,0,0,0,0,0,0,3,
3,1,1,1,1,2,3,1,1,2,3,1,1,1,1,1,1,1,4,0,3,1,4,0,0,0,0,5,1,1,1,2,0,0,0,0,0,0,0,0,
0,3,1,1,2,0,0,3,2,0,0,3,1,1,1,1,1,1,2,0,0,3,2,0,0,0,5,1,1,1,2,0,0,0,0,0,0,0,0,0,
0,0,3,2,0,0,0,0,0,0,0,0,3,1,1,1,1,2,0,0,0,0,0,0,0,5,1,1,1,1,4,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,5,1,1,1,2,0,0,0,0,0,0,0,5,1,2,3,1,1,1,4,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,5,1,1,1,1,4,0,0,0,0,0,0,5,1,2,0,0,3,1,1,1,4,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,5,1,1,1,2,3,1,4,0,0,0,0,0,3,2,0,0,0,0,3,1,1,1,4,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,5,1,1,1,2,0,0,3,1,4,0,0,0,0,0,0,0,0,0,0,0,3,1,1,1,4,0,0,0,0,0,
0,0,0,0,0,0,0,0,5,1,1,1,2,0,0,0,0,3,1,4,0,0,0,0,0,0,0,0,0,0,5,1,1,1,2,0,0,0,0,0,
0,0,0,0,0,0,0,5,1,1,1,2,0,0,0,0,0,0,3,1,4,0,0,0,0,0,0,0,0,5,1,1,1,2,0,0,0,0,0,0,
0,0,0,0,0,0,5,1,1,1,2,0,0,0,0,0,0,0,0,3,1,4,0,0,0,0,0,0,5,1,1,1,2,0,0,0,0,0,0,0,
0,0,0,0,0,5,1,1,1,2,0,0,0,0,0,0,0,0,0,5,1,1,4,0,0,0,0,5,1,1,1,2,0,0,0,0,0,0,0,0,
0,0,0,0,5,1,1,1,2,0,0,0,0,0,0,0,0,0,5,1,1,1,1,4,0,0,5,1,1,1,2,0,0,0,0,0,0,0,0,0,
0,0,0,5,1,1,1,2,0,0,0,0,0,0,0,0,0,5,1,1,1,1,1,1,4,5,1,1,1,2,0,0,0,0,0,0,0,0,0,0,
0,0,5,1,1,1,1,4,0,0,0,0,0,0,0,0,5,1,1,1,1,1,1,1,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,
0,5,1,1,1,2,3,1,4,0,0,0,0,0,0,5,1,1,1,1,1,1,1,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,
5,1,1,1,2,0,0,3,1,4,0,0,0,0,5,1,1,1,2,3,2,3,2,3,1,1,1,4,0,0,0,0,0,0,0,0,0,0,0,0,
1,1,1,2,0,0,0,5,1,2,0,0,0,5,1,1,1,2,0,0,0,0,0,0,3,1,1,1,4,0,0,0,0,0,0,0,0,0,0,0,
1,1,2,0,0,0,5,1,2,0,0,0,5,1,1,1,1,4,0,0,0,0,0,0,0,3,1,1,1,4,0,0,0,0,0,0,0,0,0,0,
1,2,0,0,0,0,3,1,4,0,0,5,1,1,1,1,1,2,0,0,0,0,0,0,0,5,1,1,1,1,4,0,0,0,0,0,0,0,0,0,
2,0,0,0,0,0,0,3,1,4,5,1,1,1,1,1,1,4,0,0,0,0,0,0,5,1,2,3,1,1,1,4,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,3,1,1,1,1,1,1,1,1,1,4,5,4,0,0,0,3,2,0,0,3,1,1,1,4,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,5,1,1,1,1,1,1,1,1,1,1,1,2,0,0,0,0,0,0,0,5,1,1,1,1,4,0,0,0,0,0,0,
0,0,0,0,0,0,0,5,1,2,3,1,1,1,1,1,1,1,1,2,0,0,0,0,0,0,0,5,1,1,1,1,1,1,4,0,0,0,0,0,
0,0,0,0,0,0,5,1,1,4,0,3,1,1,1,1,1,1,2,0,0,0,0,0,0,0,5,1,1,1,1,1,1,1,2,0,0,0,0,0,
0,0,0,0,0,0,3,1,1,1,4,0,3,1,1,1,1,2,0,0,0,5,4,0,0,5,1,1,1,1,1,1,1,2,0,5,4,0,0,0,
0,0,0,0,0,0,0,3,1,1,2,0,5,1,1,1,1,4,0,0,5,1,2,0,5,1,1,1,1,1,1,1,2,0,5,1,1,4,0,0,
0,0,0,0,0,0,0,5,1,2,0,5,1,1,1,1,1,1,4,0,3,1,4,5,1,1,1,1,1,1,1,2,0,5,1,1,1,1,4,0,
0,0,0,0,0,0,5,1,2,0,5,1,1,1,1,1,1,1,1,4,0,3,1,1,1,1,1,1,1,1,2,0,5,1,1,1,1,1,1,4,
0,0,0,0,0,0,3,2,0,0,3,1,1,1,1,2,3,1,1,1,4,0,3,1,1,1,1,1,1,1,4,0,3,1,1,1,1,1,1,1,
0,0,5,4,0,0,0,0,0,0,0,3,1,1,2,0,5,1,1,1,2,0,0,3,1,1,1,1,1,1,1,4,0,3,1,1,1,1,1,1,
0,5,1,1,4,0,0,0,0,0,0,0,3,2,0,5,1,1,1,1,4,0,0,0,3,1,1,1,1,1,1,1,4,0,3,1,1,1,1,2,
0,3,1,1,1,4,0,0,0,0,0,0,0,0,5,1,1,1,1,1,1,4,0,0,0,3,1,1,1,1,1,1,1,4,5,1,1,1,2,0,
0,0,3,1,1,1,4,0,0,0,0,0,0,0,3,1,1,1,1,1,1,2,0,5,4,0,3,1,1,1,1,1,1,1,1,1,1,2,0,0,
0,0,0,3,1,1,1,4,0,0,0,0,0,0,0,3,1,1,1,1,2,0,5,1,2,0,5,1,1,1,1,1,1,1,1,1,2,0,0,0,
0,0,0,5,1,1,1,2,0,0,0,0,0,0,0,5,1,1,1,1,4,5,1,2,0,5,1,2,3,1,1,1,1,1,1,1,4,0,0,0,
0,0,5,1,1,1,2,0,5,4,0,0,0,0,5,1,1,1,1,1,1,1,2,0,0,3,2,0,5,1,1,1,1,1,1,1,1,4,0,0,
0,5,1,1,1,2,0,0,3,1,4,0,0,5,1,1,1,1,1,1,1,2,0,5,4,0,0,0,3,1,1,1,1,1,1,1,1,1,4,0,
5,1,1,1,2,0,5,4,0,3,1,4,0,3,1,1,1,1,1,1,2,0,5,1,1,4,5,4,0,3,1,1,1,1,2,3,1,1,1,4,
1,1,1,2,0,5,1,1,4,0,3,1,4,0,3,1,1,1,1,2,0,5,1,1,1,1,1,1,4,5,1,1,1,2,0,0,3,1,1,1,
1,1,1,4,5,1,1,1,1,4,5,1,1,4,0,3,1,1,1,4,0,3,1,1,1,1,1,1,1,1,1,1,1,4,0,0,0,3,1,1,
1,1,1,1,1,1,2,3,1,1,1,1,1,1,4,0,3,1,1,1,4,0,3,1,1,1,1,1,1,1,1,1,1,1,4,0,0,5,1,1,
3,1,1,1,1,1,4,0,3,1,1,1,1,1,1,4,0,3,1,1,1,4,0,3,1,1,1,1,1,2,3,1,1,1,2,0,5,1,1,1,
0,3,1,1,1,1,1,4,0,3,1,1,1,1,1,1,4,0,3,1,1,2,0,5,1,1,1,1,1,4,0,3,1,1,4,5,1,1,1,1,
0,0,3,1,1,1,1,1,4,0,3,1,1,1,1,1,1,4,0,3,2,0,5,1,1,1,1,1,1,1,4,0,3,1,1,1,1,1,1,2,
0,0,0,3,1,1,1,1,1,4,0,3,1,1,1,1,1,1,4,0,0,5,1,1,1,1,1,1,1,1,2,0,5,1,1,1,1,1,2,0,
0,0,0,0,3,1,1,1,1,2,0,0,3,1,1,1,1,1,1,4,5,1,1,1,1,1,1,1,1,2,0,5,1,1,1,1,1,2,0,0,
4,0,0,0,0,3,1,1,2,0,5,4,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,0,5,1,1,1,1,1,2,0,0,0,
1,4,0,0,0,0,3,2,0,5,1,1,1,2,3,1,1,1,1,1,1,1,1,2,3,1,1,2,0,5,1,1,1,1,1,2,0,0,0,0,
1,1,4,0,0,0,0,0,5,1,1,1,2,0,5,1,1,1,1,1,1,1,1,4,0,3,2,0,5,1,1,1,1,1,2,0,0,0,0,0,
1,1,1,4,0,0,0,5,1,1,1,2,0,5,1,2,3,2,3,1,1,1,1,1,4,0,0,0,3,1,1,1,1,2,0,0,0,0,0,0,
1,1,1,2,0,0,5,1,1,1,2,0,5,1,2,0,0,0,0,3,1,1,1,1,1,4,0,0,0,3,1,1,2,0,0,0,0,0,0,5,
1,1,2,0,0,5,1,1,1,1,4,0,3,2,0,0,0,0,0,5,1,1,1,1,1,1,4,0,0,0,3,2,0,0,0,0,0,0,5,1,
1,2,0,0,5,1,1,1,1,1,1,4,0,0,0,0,0,0,5,1,2,3,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,5,1,1,
1,4,0,0,3,1,1,1,1,1,1,1,4,0,0,0,0,5,1,2,0,0,3,1,1,2,0,0,5,4,0,0,0,0,0,0,5,1,1,1,
1,1,4,0,0,3,1,1,1,1,1,1,1,4,0,0,5,1,2,0,0,0,0,3,2,0,0,5,1,1,4,0,0,0,0,5,1,1,1,1,
1,1,1,4,0,0,3,1,1,1,1,2,3,1,4,5,1,2,0,0,0,0,0,0,0,0,5,1,1,1,1,4,0,0,5,1,1,1,1,1,
1,1,1,1,4,0,0,3,1,1,2,0,0,3,1,1,2,0,0,0,0,0,0,0,0,5,1,1,1,1,1,1,4,5,1,1,1,2,3,1,
1,1,1,1,2,0,0,0,3,2,0,0,0,0,3,2,0,0,0,0,0,0,0,0,5,1,2,3,1,1,1,1,1,1,1,1,2,0,0,3,
1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,2,0,0,3,1,1,2,3,1,1,2,0,0,0,0,
1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,1,2,0,0,0,0,3,2,0,0,3,2,0,0,0,0,0,
};
SDL_memcpy(back, tmap, sizeof(back));
}
void towerclass::loadmap()
{
//Loads the map into the array.
#if !defined(MAKEANDPLAY)
static const short tmap[] = {
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,18,18,19,28,28,28,28,17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,23,24,28,28,28,28,22,23,23,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,0,0,28,28,28,28,0,0,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,0,0,28,28,28,28,0,0,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,0,0,0,28,28,0,0,0,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,13,23,23,24,28,0,0,17,18,18,19,0,0,28,22,23,23,14,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,22,23,23,24,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,18,19,0,0,28,28,0,0,17,18,18,18,18,16,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,23,24,0,0,28,28,0,0,22,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,17,18,18,19,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,22,14,13,24,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,22,24,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,18,19,10,0,28,28,0,11,17,18,18,18,18,16,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,23,24,0,0,28,28,0,0,22,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,18,18,18,18,18,18,18,19,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,23,23,23,23,23,23,23,24,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,17,18,18,18,18,18,18,18,18,18,18,16,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,22,23,23,23,23,23,23,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,18,18,18,18,18,18,18,18,19,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,23,23,23,23,23,23,23,23,24,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,17,18,18,18,18,18,18,18,18,18,18,16,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,22,23,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,18,18,19,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,10,28,28,0,11,22,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,10,0,28,28,0,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,28,28,0,11,17,16,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,24,0,0,0,28,28,0,0,22,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,11,17,18,18,18,18,19,10,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,22,23,23,23,23,24,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,18,19,10,0,28,28,0,11,17,18,18,18,18,16,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,23,24,0,0,28,28,0,0,22,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,11,17,18,18,19,10,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,22,23,23,24,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,10,0,28,28,0,0,0,28,28,0,0,0,28,28,0,11,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,15,18,18,19,28,0,0,0,28,28,0,0,0,28,17,18,18,16,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,0,0,0,28,28,0,0,0,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,0,0,0,28,28,0,0,0,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,0,0,0,28,28,0,0,0,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,0,0,0,28,28,0,0,0,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,0,0,28,28,28,28,0,0,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,18,19,28,28,28,28,17,18,18,16,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,13,23,23,23,23,23,23,23,23,23,23,23,24,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,17,18,18,18,18,18,18,18,18,18,18,18,18,16,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,20,12,12,12,12,12,12,12,13,23,23,23,23,23,23,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,20,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,20,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,20,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,20,12,12,12,12,13,23,23,24,0,0,0,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,20,12,12,12,12,21,0,0,0,0,0,0,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,20,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,28,28,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,20,12,12,12,12,21,0,0,0,0,0,0,0,8,8,0,0,28,28,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,21,28,28,28,20,12,13,23,23,24,0,0,0,0,0,0,8,17,19,0,0,28,28,20,12,12,12,12,12,12,12,12,12,12,12,
23,23,23,23,23,24,28,28,28,20,12,21,28,28,28,0,0,0,0,0,8,17,16,21,0,0,28,28,22,23,23,23,23,23,23,23,23,23,23,23,
28,28,28,28,28,28,28,28,28,20,12,21,28,28,28,0,0,0,0,8,17,16,12,21,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
28,28,28,28,28,28,28,28,28,20,12,21,28,28,28,0,0,0,8,17,16,12,12,21,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
28,28,28,28,28,28,28,28,28,20,12,21,28,28,28,0,0,8,17,16,12,12,12,21,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
18,18,18,18,18,18,18,18,18,16,12,21,28,28,28,0,0,17,16,12,12,12,12,15,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,0,0,22,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,0,0,7,22,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,0,0,28,7,22,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,0,0,28,28,9,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,0,0,28,28,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,0,0,28,28,0,22,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,0,0,28,28,0,28,28,0,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,0,0,28,28,0,28,28,0,28,28,22,14,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,0,0,28,28,0,28,28,0,28,28,7,22,14,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,0,0,28,28,0,28,28,0,28,28,28,7,22,14,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,0,0,28,28,0,28,28,0,28,28,28,28,7,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,6,28,28,0,0,28,28,0,28,28,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,15,19,6,28,0,0,17,18,19,28,28,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,15,19,6,0,0,20,12,21,28,28,0,28,28,28,28,28,22,23,23,23,23,14,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,15,19,8,0,20,12,21,28,28,0,28,28,28,28,28,28,28,0,0,0,20,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,19,8,20,12,21,28,28,0,28,28,28,28,28,28,28,0,0,0,20,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,16,12,21,28,28,0,28,28,28,0,0,0,0,0,0,0,22,14,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,0,28,28,28,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,6,28,0,28,28,28,0,0,0,0,0,0,0,0,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,19,6,0,17,18,18,19,0,0,0,0,0,0,0,22,14,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,19,8,20,12,12,21,0,0,0,0,0,0,0,28,20,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,16,12,12,21,10,0,0,0,0,0,0,28,22,14,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,28,28,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,19,10,0,0,0,0,0,28,28,22,14,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,0,28,28,28,20,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,19,10,0,0,0,0,28,28,28,20,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,20,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,20,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,10,0,0,0,28,28,28,28,20,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,28,20,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,10,0,0,0,28,28,28,28,17,16,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,28,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,10,0,0,0,28,28,28,28,17,16,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,28,20,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,23,23,23,23,24,0,0,0,0,28,28,28,28,17,16,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,0,0,0,28,28,28,0,0,0,0,0,0,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,7,0,0,0,28,28,28,0,0,0,0,28,28,28,28,28,17,16,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,7,28,0,0,0,28,28,28,0,0,0,0,28,28,28,28,28,20,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,13,24,7,28,28,0,0,0,28,28,28,0,0,0,0,28,28,28,28,17,16,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,13,24,9,28,28,28,0,0,0,28,28,28,0,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,9,0,28,28,28,0,0,0,28,28,28,0,0,0,0,28,28,28,17,16,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,28,28,28,0,0,0,28,28,28,0,0,0,0,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,13,23,23,23,24,0,0,28,28,28,0,0,0,28,28,28,0,0,0,17,18,18,18,16,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,0,28,28,28,0,0,0,28,28,28,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,0,28,28,28,0,0,0,28,28,28,0,0,8,20,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,0,28,28,28,0,0,0,28,28,28,0,8,17,16,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,0,28,28,28,0,0,0,28,28,28,8,17,16,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,0,28,28,28,0,0,0,28,28,6,17,16,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,0,28,28,28,0,0,0,28,6,17,16,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,0,28,28,28,0,0,0,28,17,16,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,17,18,18,18,18,18,18,18,16,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,0,8,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,8,17,16,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,17,16,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
23,23,23,23,23,14,12,12,21,28,28,28,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,
28,28,28,28,28,20,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
28,28,28,28,28,20,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
28,28,28,28,28,20,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
28,28,28,28,28,20,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
18,19,28,28,28,20,12,12,15,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
12,21,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
23,24,28,28,28,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,
7,7,28,28,28,28,28,28,28,28,28,28,28,28,28,28,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,
28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,
28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,
28,28,0,0,0,0,0,8,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,
28,28,0,0,0,0,0,17,18,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,
0,0,0,0,0,0,0,22,23,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,8,8,8,0,0,0,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,17,18,19,0,0,0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,22,23,24,0,0,0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,28,28,28,0,0,0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,28,28,28,0,0,0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,28,28,28,0,0,0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,28,28,28,0,0,0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,8,0,0,
0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,18,19,0,0,
0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,23,24,0,0,
0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,0,0,
0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,0,0,
0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,0,0,
0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,8,0,0,0,28,28,28,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,18,19,0,0,0,0,28,28,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,23,24,0,0,0,0,28,28,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,0,0,0,0,28,28,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,0,0,0,0,28,28,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,0,0,0,0,28,28,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,0,0,0,0,28,28,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,17,18,18,18,18,18,18,19,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,22,23,23,23,23,23,23,24,10,0,0,0,0,0,0,0,0,0,0,28,28,0,0,28,28,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,7,7,7,7,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,28,28,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,28,28,28,28,28,0,0,28,28,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,0,0,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,28,28,28,28,28,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,17,18,18,18,18,18,18,18,19,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,22,23,23,23,23,23,23,23,24,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,7,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,18,19,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,23,24,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,7,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,0,0,0,0,0,0,0,0,0,8,8,8,8,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,0,0,0,0,0,17,18,18,19,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,0,0,0,0,0,22,23,23,24,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,0,0,0,0,0,0,0,0,
8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,8,8,8,8,8,8,8,8,
18,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,17,18,18,18,18,18,18,18,
12,21,8,8,8,8,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,22,23,23,23,23,23,14,12,
12,15,18,18,18,18,18,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,28,28,28,28,28,28,20,12,
12,12,12,12,12,12,12,21,8,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,28,28,28,28,28,28,20,12,
12,12,12,12,12,12,12,15,18,18,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,28,28,28,28,28,28,20,12,
23,23,14,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0,28,28,28,28,28,28,22,23,
28,28,20,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,28,28,28,28,28,28,
28,28,22,23,23,23,23,14,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,28,28,28,28,28,28,
28,28,28,28,28,28,28,20,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,0,0,28,28,28,28,
28,28,28,28,28,28,28,20,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,0,0,28,28,28,28,
28,28,28,28,28,28,28,20,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,0,0,0,0,28,28,
28,28,28,28,28,28,28,22,23,23,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,0,0,0,0,0,0,0,0,28,28,
0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
8,8,8,0,0,0,0,0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,8,
18,18,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,18,18,
12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,8,8,8,8,8,0,0,0,0,0,0,0,0,0,0,0,20,12,12,
12,12,21,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,18,18,18,18,18,19,0,0,0,0,0,0,0,0,0,0,0,20,12,12,
12,12,21,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,23,23,23,23,23,24,0,0,0,0,0,0,0,0,0,0,0,20,12,12,
12,12,21,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,20,12,12,
12,12,21,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,20,12,12,
12,12,21,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,20,12,12,
12,12,21,6,6,6,6,6,6,28,28,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,20,12,12,
12,12,15,18,18,18,18,18,19,28,28,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,0,0,0,0,0,8,8,8,8,8,8,20,12,12,
12,12,12,12,12,12,12,12,21,28,28,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,0,0,0,0,0,17,18,18,18,18,18,16,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,0,0,0,0,0,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,17,18,16,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,22,23,14,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,0,0,0,0,0,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,0,0,0,0,0,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,0,0,0,0,0,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,28,28,28,0,0,28,28,0,0,0,0,0,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,28,28,28,0,0,0,0,28,0,0,0,0,0,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,28,28,28,0,0,0,0,0,0,0,0,0,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,28,28,28,0,0,0,0,0,0,0,0,0,0,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,28,28,28,0,0,0,0,0,0,0,0,0,0,0,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,28,28,0,0,0,0,0,0,0,0,0,0,0,0,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,15,18,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,13,23,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,8,8,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,15,18,19,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,13,23,24,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,8,8,8,8,8,6,6,6,6,6,6,6,6,6,6,6,6,20,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,8,8,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,15,18,19,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,13,23,24,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,8,8,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,17,18,16,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,13,23,23,23,23,23,14,21,0,0,0,20,12,12,12,13,23,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,21,9,9,9,9,9,20,21,0,0,0,20,12,12,12,21,9,22,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,21,0,0,0,0,0,20,21,0,0,0,20,12,12,12,21,0,9,22,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,21,0,0,0,0,0,20,21,0,0,0,22,23,23,23,24,0,0,9,22,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,21,0,0,0,0,0,20,21,0,0,0,0,0,0,0,0,0,0,0,9,20,12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,23,14,12,
23,24,0,0,0,0,0,20,21,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,22,23,
0,0,0,0,0,0,0,20,21,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,
0,0,0,0,0,0,0,22,24,0,0,0,0,0,0,0,0,0,0,0,0,22,23,23,23,23,14,12,12,12,12,12,12,21,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,21,0,0,0,0,0,0,
18,18,18,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,15,19,0,0,17,18,18,
12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,13,24,0,0,20,12,12,
12,12,12,15,18,18,18,18,18,18,18,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,21,0,0,0,20,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,21,0,0,0,20,12,12,
12,12,12,12,12,12,12,12,12,12,12,21,8,0,0,0,0,0,0,0,0,0,0,0,0,0,22,23,23,23,23,14,12,21,0,0,0,20,12,12,
12,12,12,12,12,12,12,12,12,12,12,15,19,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,20,12,21,0,0,17,16,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,15,19,8,0,0,17,18,18,18,19,0,0,0,0,0,0,0,0,11,20,12,21,0,0,22,23,23,14,
12,12,12,12,12,12,12,12,12,12,12,12,12,15,19,8,0,20,12,12,12,21,0,0,0,0,0,0,0,0,11,20,12,21,0,0,0,0,0,20,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,19,8,20,12,12,12,21,8,8,8,8,0,0,0,0,11,20,12,21,0,0,0,0,0,20,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,16,12,12,12,15,18,18,18,19,10,0,0,0,11,20,12,21,0,0,0,0,0,20,
23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,11,20,12,21,0,0,0,0,0,22,
9,9,9,9,22,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,11,20,12,21,0,0,0,0,0,9,
0,0,0,0,11,22,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,11,20,12,21,0,0,0,0,0,0,
0,0,0,0,0,11,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,11,20,12,15,18,18,19,0,0,0,
0,0,0,0,0,11,22,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,11,20,12,12,12,13,24,0,0,0,
0,0,0,0,0,0,11,20,12,13,23,23,23,23,23,23,23,23,14,12,12,12,12,12,12,21,10,0,0,0,11,20,12,12,13,24,0,0,0,0,
0,0,0,0,0,0,11,20,13,24,9,9,9,9,9,9,9,9,20,12,12,12,12,12,12,21,10,0,0,0,11,20,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,21,10,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,21,10,0,0,0,11,20,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,21,10,0,0,0,0,0,0,0,0,22,23,23,23,23,23,23,24,10,0,0,0,11,20,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,21,10,0,0,0,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,11,20,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,21,10,0,0,0,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,17,16,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,21,10,0,28,28,28,28,28,28,28,28,28,0,0,17,18,18,18,18,18,18,18,16,12,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,17,16,21,10,0,28,28,28,28,28,28,28,28,28,0,0,20,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,
0,0,0,0,0,17,16,12,21,10,0,28,28,28,28,28,28,28,28,28,0,0,20,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,
0,0,0,0,0,22,14,12,15,19,8,6,6,6,6,6,6,6,28,28,0,0,20,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,22,14,12,15,18,18,18,18,18,18,18,19,28,28,0,0,20,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,12,12,21,28,28,0,0,20,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,12,12,21,28,28,0,0,20,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,12,12,21,28,28,0,0,20,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,12,12,21,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,12,12,21,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,12,12,12,12,12,13,23,23,23,24,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,
0,0,0,0,0,0,11,20,12,13,23,23,23,24,28,28,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,15,19,0,0,0,0,
0,0,0,0,0,0,11,20,12,21,28,28,28,28,28,28,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,15,18,19,0,0,
18,18,19,0,0,0,11,20,12,21,28,28,28,28,28,28,0,0,0,0,0,0,20,12,12,12,12,12,12,13,23,23,23,23,14,12,12,15,18,18,
12,12,21,0,0,0,11,20,12,21,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,12,12,12,21,28,28,28,28,22,23,23,23,14,12,
23,23,24,0,0,0,11,20,12,21,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,12,12,12,21,28,28,28,28,0,0,0,0,22,23,
0,0,0,0,0,0,11,20,12,21,28,28,28,28,17,18,18,19,0,0,0,0,20,12,12,12,12,12,12,21,28,28,28,28,0,0,0,0,0,0,
0,0,0,0,0,0,11,20,12,21,28,28,28,28,20,12,12,15,18,18,18,18,16,12,12,12,12,12,12,21,28,28,28,28,0,0,0,0,0,0,
0,0,0,0,0,0,11,20,12,21,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,0,0,0,0,0,0,
0,0,0,0,0,0,11,20,12,21,28,28,28,28,22,23,23,23,14,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,0,0,0,0,0,0,
0,0,0,0,0,0,11,20,12,21,28,28,28,28,28,28,28,28,22,23,23,23,14,12,12,12,12,12,12,21,28,28,28,28,0,0,0,0,0,0,
0,0,0,0,0,0,11,20,12,21,28,28,28,28,28,28,28,28,28,28,0,0,22,23,23,23,14,12,12,21,28,28,28,28,17,18,18,19,0,0,
18,19,0,0,0,0,11,20,12,21,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,20,12,12,21,28,28,28,28,20,12,12,15,18,18,
12,15,18,18,18,18,18,16,12,21,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,20,12,12,21,28,28,28,28,20,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,20,12,12,21,28,28,28,28,22,23,23,23,14,12,
23,23,14,12,12,12,12,12,12,15,18,18,18,19,28,28,28,28,28,28,0,0,0,0,0,0,20,12,12,21,28,28,28,28,0,0,0,0,22,23,
0,0,22,23,23,23,14,12,12,12,12,12,12,21,28,28,28,28,6,6,8,8,0,0,0,0,20,12,12,21,28,28,28,28,0,0,0,0,0,0,
0,0,0,0,0,0,22,23,23,23,14,12,12,21,28,28,28,28,17,18,18,19,0,0,0,0,20,12,12,21,28,28,28,28,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,28,28,22,23,23,24,28,28,28,28,20,12,12,21,0,0,0,0,20,12,12,21,28,28,28,28,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,20,12,12,21,0,0,0,0,20,12,12,21,6,6,6,6,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,20,12,12,21,28,28,0,0,20,12,12,15,18,18,18,19,8,8,8,8,0,0,
8,8,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,20,12,12,21,28,28,0,0,20,12,12,12,12,12,12,15,18,18,18,19,8,8,
18,19,8,8,8,8,0,0,28,28,28,28,28,28,28,28,28,28,20,12,12,21,28,28,0,0,22,23,23,23,14,12,12,12,12,12,12,15,18,18,
12,15,18,18,18,19,0,0,28,28,28,28,28,28,28,28,28,28,20,12,12,21,28,28,0,0,0,0,0,0,22,23,23,23,14,12,12,12,12,12,
12,12,12,12,12,15,18,18,18,19,28,28,28,28,28,28,28,28,20,12,12,21,28,28,0,0,0,0,0,0,28,28,28,28,22,23,23,23,14,12,
12,12,12,12,12,12,12,12,12,15,18,18,18,19,28,28,28,28,20,12,12,21,28,28,0,0,0,0,0,0,28,28,28,28,28,28,28,28,20,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,18,16,12,12,21,28,28,0,0,0,0,0,0,0,0,28,28,28,28,28,28,20,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,6,6,8,8,0,0,0,0,0,0,28,28,28,28,28,28,20,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,19,8,8,8,8,0,0,28,28,28,28,28,28,20,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,19,0,0,28,28,28,28,28,28,20,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,19,28,28,28,28,20,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,20,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,20,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,20,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,20,12,
23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,14,21,28,28,28,28,22,23,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,11,20,21,28,28,28,28,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,11,20,21,28,28,28,28,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,11,20,21,28,28,28,28,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,11,20,21,28,28,28,28,0,0,
18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,19,28,28,0,0,11,20,15,18,18,18,18,18,18,
12,12,12,13,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,28,28,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,21,10,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,21,10,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,21,10,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,21,10,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,21,10,0,0,0,0,17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,12,12,12,12,12,12,12,
12,12,12,21,10,0,0,0,0,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,14,12,12,12,12,12,12,12,
12,12,12,21,10,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,21,10,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,21,10,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,21,10,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,15,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,19,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,13,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,22,23,23,23,23,23,23,23,23,23,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,15,18,18,18,18,18,18,18,18,18,18,18,18,18,18,19,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,23,23,23,23,23,23,24,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,17,18,18,18,18,18,18,18,18,18,16,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,22,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,22,23,23,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,23,23,14,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,13,23,23,23,23,23,23,23,23,23,23,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,21,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,21,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,21,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,21,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,21,28,28,28,28,6,6,6,6,6,6,6,6,8,8,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,21,28,28,28,28,17,18,18,18,18,18,18,18,18,18,19,0,0,0,0,0,0,17,18,18,19,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,21,28,28,28,28,20,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,22,23,23,24,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,21,28,28,28,28,20,12,13,23,23,23,23,23,23,23,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,21,28,28,28,28,20,12,21,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,21,28,28,28,28,20,12,21,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,21,28,28,28,28,20,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,
12,21,28,28,28,28,20,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,17,18,16,12,12,12,12,12,12,12,
12,21,28,28,28,28,20,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,22,23,23,23,23,23,14,12,12,12,
12,21,28,28,28,28,20,12,21,28,28,28,28,28,28,28,28,28,6,6,6,6,28,28,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,
12,21,28,28,28,28,20,12,21,28,28,28,28,28,28,28,28,28,17,18,18,19,28,28,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,
12,21,28,28,28,28,20,12,21,28,28,28,28,28,28,28,28,28,22,23,23,24,28,28,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,
12,21,28,28,28,28,20,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,
12,21,28,28,28,28,20,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,
12,21,28,28,28,28,20,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,
12,21,28,28,28,28,20,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,
12,21,28,28,28,28,22,23,24,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,17,18,19,0,0,0,20,12,12,12,
12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,22,23,24,0,0,0,20,12,12,12,
12,21,28,28,28,28,28,28,28,28,28,28,28,17,19,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,20,12,12,12,
12,21,28,28,28,28,28,28,28,28,28,28,28,20,21,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,20,12,12,12,
12,15,18,18,18,18,18,18,18,18,18,18,18,16,21,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,6,6,6,6,6,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,18,19,28,28,28,28,28,17,19,28,28,28,28,28,28,28,0,0,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,6,6,6,6,6,20,21,28,28,28,28,28,28,28,0,0,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,18,18,16,21,28,28,28,28,28,28,28,0,0,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,17,18,18,18,18,18,16,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,22,23,14,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,20,12,12,12,12,12,12,12,
23,23,23,23,23,14,13,23,23,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,22,14,13,23,23,23,23,23,
28,28,28,28,28,22,24,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,22,24,28,28,28,28,28,
28,28,28,28,28,7,7,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,7,7,28,28,28,28,28,
28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,
28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,
28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,
28,28,28,28,28,28,28,28,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,
18,18,18,18,18,18,18,18,19,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,18,18,18,18,18,18,18,18,18,18,
12,12,12,12,12,12,12,12,21,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,22,23,23,23,23,23,14,13,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,14,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,22,24,28,28,28,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,7,7,28,28,28,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,6,6,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,21,28,28,28,28,28,17,19,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,15,18,18,18,18,18,16,15,18,18,18,18,18,18,19,10,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,19,10,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,19,10,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,0,0,11,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,17,18,18,18,16,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,19,10,0,0,0,0,0,22,23,23,23,14,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,28,28,20,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,0,28,28,20,12,12,12,
12,12,12,12,12,12,12,12,12,13,23,23,23,14,12,13,23,23,23,23,23,23,23,23,23,24,10,0,0,0,0,0,0,0,28,28,20,12,12,12,
12,12,12,12,12,12,12,12,13,24,9,9,9,20,12,21,7,7,7,7,7,7,7,7,9,9,0,0,0,0,0,0,0,0,28,28,20,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,22,23,24,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,28,28,20,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,28,28,20,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,28,28,20,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,28,28,28,28,20,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,28,28,28,28,20,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,28,28,28,28,20,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,28,28,28,28,20,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,28,28,28,28,17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,28,28,28,28,22,23,23,23,23,23,23,23,23,23,23,23,23,23,14,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,22,14,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,0,0,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,10,0,0,0,17,18,19,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,15,19,8,8,8,20,12,21,6,6,6,6,6,6,6,6,8,8,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,15,18,18,18,16,12,15,18,18,18,18,18,18,18,18,18,19,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,23,23,23,23,24,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,13,23,23,23,23,23,23,23,23,24,7,7,7,7,7,9,9,9,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,13,24,0,0,0,0,28,28,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,11,20,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,17,16,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,28,28,17,18,18,18,18,18,18,18,18,18,18,18,18,16,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,28,6,6,6,6,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,28,17,18,18,18,16,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,28,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,14,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,21,10,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,15,19,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,15,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,19,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,13,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,22,23,23,23,23,14,13,23,23,23,23,23,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,28,28,20,21,28,28,28,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,28,28,22,24,28,28,28,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,28,28,28,28,28,28,0,0,0,0,0,0,20,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,14,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,15,18,18,18,18,19,0,0,0,0,0,0,0,0,0,0,17,19,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,21,0,0,0,0,0,0,0,0,0,0,20,21,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,18,18,18,18,18,18,18,16,21,0,0,0,0,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,0,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,0,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,0,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,19,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,13,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,0,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,20,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,22,23,23,23,23,23,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,22,23,23,23,14,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,28,22,23,23,23,14,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,15,18,18,18,19,28,28,28,28,28,28,28,28,28,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,19,28,28,28,28,28,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,15,18,18,18,18,18,18,18,19,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,13,23,23,23,14,12,12,12,12,12,12,12,12,21,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,22,23,23,14,12,12,12,12,12,21,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,21,28,28,28,28,28,28,22,23,23,14,12,12,21,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,13,24,28,28,28,28,28,28,28,28,28,22,23,23,24,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
23,23,23,23,23,14,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
28,28,28,28,28,20,12,12,12,12,12,21,28,28,28,28,28,28,28,28,28,28,28,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
28,28,28,28,28,22,23,23,23,23,23,24,28,28,28,28,28,28,28,28,28,28,28,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,0,0,28,28,28,28,28,20,12,12,12,12,12,12,12,12,12,
18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,16,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
};
SDL_memcpy(contents, tmap, sizeof(contents));
#endif
}