SDL_Surface *screen = NULL;
const char *szFiles[64] = {"1.bmp","2.bmp","3.bmp","4.bmp","5.bmp","6.bmp","7.bmp","8.bmp","9.bmp","10.bmp","11.bmp","12.bmp","13.bmp","14.bmp","15.bmp","16.bmp","17.bmp","18.bmp","19.bmp","20.bmp","21.bmp","22.bmp","23.bmp","24.bmp","25.bmp","26.bmp","27.bmp","28.bmp","29.bmp","30.bmp"};
static void draw ()
{
Map *M;
Tile *tilelist[64] = {new Tile};
M = new Map();
M->InitImages(szFiles,tilelist);
Player *a;
a = new Player("Player.bmp");
GameEngine *pGame;
pGame = new GameEngine();
a->SetImage("Player.bmp");
SDL_Surface *HI = SDL_LoadBMP("Player.bmp");
int b = 250;
int c = 24;
int d = 32;
int e = 1;
//pGame->DrawIMG(a->GetImage(),screen, 250,250,24,32,1,1);
SDL_Rect dest;
dest.x = 1;
dest.y = 1;
dest.w = 24;
dest.h = 32;
SDL_Rect dest2;
dest2.x = 1;
dest2.y = 1;
dest2.w = 24;
dest2.h = 32;
SDL_BlitSurface(a->GetImage(), &dest2, screen, &dest);
SDL_Flip(screen);
};
problem with this function
ok im trying to intialize and declare a whole bunch of tiles in one function but theres somthing wrong heres the code
void Map::InitImages(const char *szFiles[64], Tile *tilelist[64])
{
for(int i =0; i <64; i++)
{
tilelist = new Tile;
SDL_Surface *x = SDL_LoadBMP(szFiles);
tilelist->SetImage(x);
};
return;
};
im trying to use it here
(this isnt all me code)
the code works great until i uncomment this function so there must be a problem with it (it is a runtime not compile time error) what happens is the program comes on then shuts right back off
thanks for your help [smile]
[Edited by - raptorstrike on October 5, 2004 6:35:59 PM]
your for loop runs from 0-63, but your szFiles has only 30 character strings in it... hence the runtime error !
First, you have a memory leak: Tile *tilelist[64] = {new Tile}; This allocates an array of 64 Tile pointers, and sets the first element to a new Tile structure. Then you call InitImages(), and it overwrites the first entry in the array.
Second, you're not filling the array of filenames, you only set 30 of them. When you get to the 31st, you'll call SDL_LoadBMP(szFiles[30]);, but szFiles[30] isn't initialized (Because you declared the array of filenames as a global, all unused space is set to 0, but this isn't the case if the array of filename was a local variable). So you're effectively calling SDL_LoadBMP(NULL);, which I'm fairly sure SDL won't like (it'll be expecting a valid string to be passed).
What I'd do is change the InitImages function to take the number of used images as a parameter:
And then call it like this: InitImages(szFiles,tilelist,30);
Second, you're not filling the array of filenames, you only set 30 of them. When you get to the 31st, you'll call SDL_LoadBMP(szFiles[30]);, but szFiles[30] isn't initialized (Because you declared the array of filenames as a global, all unused space is set to 0, but this isn't the case if the array of filename was a local variable). So you're effectively calling SDL_LoadBMP(NULL);, which I'm fairly sure SDL won't like (it'll be expecting a valid string to be passed).
What I'd do is change the InitImages function to take the number of used images as a parameter:
void Map::InitImages(const char **szFiles, Tile **tilelist, int nCount){ for(int i=0; i <nCount; i++) { tilelist = new Tile; SDL_Surface *x = SDL_LoadBMP(szFiles); tilelist->SetImage(x); } return;}
And then call it like this: InitImages(szFiles,tilelist,30);
are the double ** a typo?
woops silly me dont aswer that [looksaround] any way it works fine thanks alot
[grin]
woops silly me dont aswer that [looksaround] any way it works fine thanks alot
[grin]
the orinal problem is fixed but i think im having a simmalar problem here (thus i thought it was appropritate to continue in this thread
am i writing past the end of this array? im pretty sure both arrays are full heres the implementation
and here is the massive WorldMap[100][100]
void Map::DrawMap(Tile **tilelist,int MapOver[100][100], SDL_Surface *screen) { int x , y; y=1; x=1; for (int i = 0; i < 100; i++) { for(int j = 0; j < 100; j ++) { SDL_Rect dest; dest.x = j; dest.y = i; SDL_BlitSurface(tilelist[MapOver[j]]->GetImage(),NULL, screen, &dest); if (j == 100 && i != 100) j = 1; /*if(j == 0) j = 1; if (i == 0) i = 1;*/ SDL_Flip(screen); }; }; };
am i writing past the end of this array? im pretty sure both arrays are full heres the implementation
static void draw (){ Map *M; Tile *tilelist[64] = {new Tile};M = new Map(); M->InitImages(szFiles,tilelist,31); Player *a; a = new Player("Player.bmp");GameEngine *pGame; pGame = new GameEngine(); a->SetImage("Player.bmp");M->DrawMap(tilelist,WorldMap,screen);SDL_Surface *HI = SDL_LoadBMP("Player.bmp"); int b = 250; int c = 24; int d = 32; int e = 1; //pGame->DrawIMG(a->GetImage(),screen, 250,250,24,32,1,1); SDL_Rect dest; dest.x = 1; dest.y = 1; dest.w = 24; dest.h = 32; SDL_Rect dest2; dest2.x = 1; dest2.y = 1; dest2.w = 24; dest2.h = 32; SDL_BlitSurface(a->GetImage(), &dest2, screen, &dest); SDL_Flip(screen);};
and here is the massive WorldMap[100][100]
#include <stdio.h>#include <stdlib.h>#include <windows.h>#include <string.h>#include <libiberty.h>#include "Player.h"#include "GameEngine.h"#include "SDL.h"#include "Map.h"int WorldMap[100][100] = {{ 0, 0, 0, 0, 0, 33, 0, 0, 0, 4, 0, 0, 0, 33, 0, 33, 33, 0, 0, 0, 38, 0, 33, 0, 33, 52, 0, 0, 0, 0, 1, 0, 33, 0, 0, 0, 0, 0, 0, 38, 0, 0, 33, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 52, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 38, 1, 0, 1, 0, 0, 0, 52, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 4, 38, 0, 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 33, 4, 0, 38, 0, 38, 1, 0, 38, 0, 0, 0, 0, 0, 0, 38, 0, 0, 4, 0, 52, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 52, 33, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 33, 33, 0, 38, 0, 33, 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 38, 1, 0, 1, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 64, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 38, 0, 1, 33, 0, 0, 0, 0, 0, 38, 33, 0, 1, 33, 0, 33, 0, 4, 0, 4, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 38, 0, 0, 33, 33, 0, 38, 0, 0, 38, 0, 0, 1, 33, 0, 0, 0, 33, 4, 0, 38, 4, 0, 33, 0, 38, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 4, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 4, 0, 33, 33, 0, 33, 0, 0, 0, 0, 0, 33, 0, 1, 1, 0, 0, 38, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 38, 0, 0, 0, 38, 4, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 4, 0, 0, 0, 38, 38, 0, 0, 0, 0, 0, 0, 38, 33, 0, 33, 0, 0, 0, 4, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 4, 0, 1, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 33, 0, 33, 33, 0, 0, 0, 0, 33, 38, 0, 52, 0, 0, 0, 0, 1, 0, 0, 0, 0, 33, 38, 0, 0, 0, 38, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0 },{ 0, 38, 38, 0, 0, 33, 33, 0, 0, 52, 52, 52, 33, 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, 1, 33, 4, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 52, 52, 52, 0, 38, 0, 0, 0, 0, 38, 4, 38, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 38, 0, 0, 33, 0, 0, 0, 52, 0, 0, 0, 0, 52, 52, 52, 0, 0, 1, 38, 0, 0, 0, 0, 33, 0, 0, 4, 0, 0, 0, 1, 0, 0, 0, 1, 38, 0, 0, 1, 0, 0, 1, 4, 38, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 52, 52, 52, 0, 0, 4, 0, 0, 38, 0, 0, 0, 0, 38, 0, 33, 0, 0, 1, 0, 0, 0, 1, 0, 1, 33, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 38, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33, 0, 33, 52, 52, 0, 52, 0, 0, 4, 0, 0, 38, 4, 0, 0, 38, 0, 52, 0, 0, 52, 1, 0, 4, 1, 0, 4, 52, 0, 0, 1, 0, 33, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 38, 38, 0, 0, 0, 38, 0, 0, 0, 38, 33, 33, 1, 0, 0, 0, 0, 52, 52, 52, 52, 0, 0, 4, 0, 0, 38, 38, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 1, 0, 52, 38, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 33, 0, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 0, 38, 1, 0, 0, 38, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 0, 52, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 4, 0, 33, 33, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 52, 52, 0, 0, 0, 0, 0, 52, 0, 38, 0, 0, 52, 38, 33, 0, 0, 38, 0, 0, 52, 0, 38, 0, 0, 0, 0, 52, 0, 0, 0, 52, 52, 0, 4, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 33, 38, 0, 0, 33, 0, 0, 0, 0, 0, 4, 38, 0, 0, 33, 52, 0, 0, 0, 52, 0, 52, 38, 0, 0, 0, 38, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, 52, 52, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0 },{ 0, 0, 52, 0, 0, 0, 38, 0, 0, 38, 0, 0, 1, 0, 52, 52, 0, 0, 0, 33, 0, 52, 0, 0, 38, 38, 0, 0, 38, 0, 0, 0, 0, 1, 38, 0, 0, 0, 4, 1, 0, 0, 52, 52, 52, 0, 52, 52, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 52, 52, 52, 33, 38, 0, 0, 0, 0, 0, 33, 33, 52, 52, 1, 33, 0, 0, 38, 0, 52, 0, 4, 38, 0, 0, 33, 38, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 52, 38, 52, 1, 52, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 52, 52, 52, 52, 0, 33, 0, 0, 52, 52, 52, 52, 33, 33, 0, 33, 0, 0, 33, 0, 52, 0, 4, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 38, 1, 4, 0, 4, 0, 0, 0, 52, 52, 0, 52, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 52, 52, 52, 4, 38, 0, 33, 52, 52, 52, 0, 0, 33, 38, 0, 0, 0, 0, 38, 0, 1, 0, 4, 0, 0, 0, 33, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 1, 52, 52, 0, 52, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 0, 0, 0, 1, 0, 0, 0, 52, 38, 0, 0, 0, 33, 0, 33, 1, 0, 0, 33, 0, 52, 0, 0, 38, 0, 4, 0, 38, 0, 4, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 1, 52, 0, 0, 52, 52, 52, 52, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 4, 52, 52, 33, 4, 0, 0, 0, 0, 52, 33, 0, 38, 1, 33, 33, 0, 0, 0, 0, 4, 52, 0, 0, 38, 0, 0, 1, 0, 0, 38, 0, 38, 52, 0, 1, 0, 0, 0, 0, 4, 33, 0, 52, 0, 0, 52, 52, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 52, 0, 33, 0, 0, 0, 0, 0, 52, 0, 38, 33, 0, 33, 0, 0, 0, 38, 0, 0, 0, 33, 38, 0, 0, 38, 0, 0, 0, 0, 33, 0, 52, 52, 52, 0, 0, 0, 0, 0, 0, 0, 52, 52, 38, 52, 52, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 52, 0, 0, 0, 1, 4, 33, 0, 52, 0, 0, 0, 1, 0, 0, 33, 38, 0, 0, 0, 52, 0, 0, 4, 0, 0, 0, 1, 38, 0, 0, 1, 52, 0, 52, 52, 52, 52, 52, 52, 0, 33, 0, 52, 52, 52, 0, 52, 52, 0, 0, 0, 0, 0, 0, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 52, 52, 52, 52, 52, 52, 52, 52, 52, 0, 0, 0, 0, 0, 0, 33, 0, 0, 1, 0, 52, 0, 0, 38, 0, 0, 0, 38, 0, 33, 0, 0, 52, 0, 0, 52, 0, 0, 0, 52, 0, 0, 0, 0, 0, 52, 0, 0, 52, 64, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 38, 0, 0, 33, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, 52, 1, 0, 33, 52, 52, 52, 52, 52, 52, 0, 0, 52, 52, 52, 0, 0, 0, 0, 52, 0, 0, 0, 0, 1, 52, 52, 0, 1, 52, 0, 0, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 52, 1, 33, 0, 0, 52, 33, 0, 0, 0, 0, 0, 33, 0, 38, 0, 0, 38, 52, 0, 0, 38, 52, 1, 1, 0, 0, 4, 52, 52, 52, 52, 52, 52, 52, 0, 0, 52, 0, 1, 0, 0, 0, 52, 0, 0, 52, 52, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0 },{ 0, 52, 52, 52, 33, 0, 0, 38, 33, 0, 33, 1, 52, 0, 0, 0, 33, 4, 38, 38, 52, 0, 0, 52, 52, 0, 0, 0, 0, 0, 0, 52, 52, 52, 52, 52, 52, 4, 52, 0, 52, 0, 1, 0, 0, 52, 1, 0, 52, 0, 0, 0, 38, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 52, 52, 0, 0, 0, 38, 0, 0, 0, 0, 38, 52, 52, 0, 33, 0, 1, 52, 38, 0, 0, 52, 52, 33, 1, 0, 1, 0, 0, 52, 52, 0, 0, 52, 52, 52, 52, 52, 52, 52, 38, 0, 0, 52, 0, 52, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 0, 0, 52, 38, 1, 33, 0, 1, 0, 33, 0, 0, 52, 33, 0, 33, 33, 0, 52, 0, 0, 0, 52, 52, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 52, 52, 52, 0, 52, 52, 52, 52, 52, 52, 52, 52, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 52, 52, 52, 0, 52, 52, 52, 52, 52, 52, 52, 52, 0, 0, 0, 0, 52, 52, 0, 52, 52, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 0, 52, 52, 52, 38, 52, 0, 0, 52, 52, 0, 0, 0, 38, 64, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0 },{ 33, 52, 52, 52, 33, 0, 0, 0, 1, 0, 0, 0, 52, 52, 0, 0, 0, 0, 52, 52, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 52, 52, 0, 0, 52, 0, 1, 52, 0, 0, 52, 52, 52, 52, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 33, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 52, 52, 0, 0, 0, 0, 52, 52, 0, 1, 0, 38, 0, 1, 0, 1, 0, 0, 0, 52, 52, 0, 4, 0, 52, 0, 0, 52, 52, 52, 0, 0, 33, 52, 52, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 0, 52, 52, 0, 0, 0, 0, 0, 0, 0, 52, 52, 0, 0, 0, 52, 52, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 52, 0, 0, 0, 0, 52, 52, 0, 52, 52, 0, 0, 33, 0, 0, 52, 0, 0, 1, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 52, 0, 0, 0, 33, 0, 0, 0, 33, 52, 0, 0, 0, 0, 52, 52, 33, 52, 52, 0, 0, 0, 0, 33, 4, 0, 0, 52, 52, 0, 0, 0, 52, 52, 52, 0, 0, 52, 52, 0, 0, 0, 52, 52, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 64, 0, 0, 0, 64, 64, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 52, 0, 0, 33, 33, 0, 0, 0, 0, 52, 0, 0, 0, 33, 33, 52, 52, 52, 0, 0, 38, 0, 0, 33, 52, 52, 52, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 52, 52, 0, 0, 0, 52, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33, 52, 0, 0, 0, 0, 0, 0, 0, 33, 0, 0, 0, 52, 52, 52, 0, 38, 0, 0, 0, 0, 0, 38, 52, 0, 0, 0, 0, 52, 52, 52, 52, 52, 52, 38, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 25, 33, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 52, 52, 52, 52, 52, 52, 0, 0, 0, 38, 0, 0, 1, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 25, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 16, 16, 0, 0, 0, 0, 0, 0, 0, 0, 25, 25, 0, 38, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 64, 38, 64, 0, 0, 0, 64, 0, 0, 0, 0, 64, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 16, 16, 0, 0, 0, 25, 25, 25, 25, 25, 25, 25, 0, 0, 0, 0, 0, 38, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 0, 16, 16, 0, 16, 0, 16, 0, 0, 0, 0, 25, 25, 0, 0, 25, 25, 25, 25, 25, 25, 25, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 64, 0, 0, 38, 64, 38, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0 },{ 52, 52, 0, 0, 0, 0, 16, 16, 16, 0, 0, 0, 0, 25, 0, 0, 0, 25, 38, 25, 25, 25, 25, 0, 64, 0, 0, 0, 0, 0, 38, 64, 0, 0, 0, 0, 38, 0, 0, 0, 38, 64, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 38, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 0, 0, 0, 0, 16, 16, 16, 0, 0, 0, 0, 0, 0, 25, 0, 25, 0, 38, 25, 0, 25, 25, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 38, 38, 64, 38, 0, 64, 0, 64, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 38, 64, 0, 0, 64, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 0, 0, 0, 16, 16, 16, 0, 0, 0, 0, 0, 0, 25, 0, 25, 0, 38, 25, 0, 25, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 64, 0, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0 },{ 52, 0, 52, 0, 0, 0, 0, 16, 0, 0, 16, 0, 0, 0, 25, 0, 25, 0, 0, 25, 0, 25, 0, 0, 64, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 38, 64, 0, 0, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 64, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0 },{ 52, 0, 52, 52, 52, 16, 16, 16, 16, 16, 16, 0, 0, 0, 25, 0, 25, 25, 25, 25, 38, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 64, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, 64, 0, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 0, 0, 0, 0, 0, 0 },{ 52, 0, 52, 0, 52, 52, 16, 16, 16, 16, 16, 0, 0, 0, 25, 0, 0, 0, 25, 25, 0, 25, 25, 25, 25, 25, 38, 38, 38, 25, 38, 0, 0, 25, 25, 25, 25, 25, 25, 0, 25, 25, 0, 0, 25, 25, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 64, 0, 0, 0, 64, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 0, 0, 0, 0, 0, 0, 0 },{ 52, 0, 0, 0, 0, 0, 52, 0, 0, 16, 16, 0, 0, 0, 25, 0, 0, 0, 25, 25, 0, 25, 25, 25, 25, 0, 25, 25, 0, 0, 39, 38, 0, 25, 25, 25, 25, 25, 25, 25, 25, 0, 0, 0, 25, 25, 25, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0 },{ 52, 0, 52, 0, 0, 0, 52, 0, 16, 0, 16, 0, 16, 0, 25, 0, 0, 25, 25, 0, 25, 25, 0, 0, 0, 25, 0, 0, 25, 0, 39, 0, 39, 0, 38, 38, 25, 25, 25, 0, 0, 25, 0, 0, 0, 25, 25, 25, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 64, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0 },{ 52, 52, 0, 0, 0, 0, 52, 0, 16, 0, 16, 0, 0, 0, 25, 0, 0, 0, 0, 0, 25, 25, 0, 0, 0, 0, 0, 25, 0, 25, 39, 39, 0, 0, 0, 38, 25, 38, 25, 0, 25, 25, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0 },{ 52, 52, 0, 0, 0, 0, 52, 0, 16, 0, 16, 0, 0, 16, 25, 16, 0, 0, 0, 0, 0, 25, 25, 25, 25, 25, 25, 25, 25, 0, 0, 0, 39, 0, 39, 0, 25, 25, 0, 25, 25, 25, 25, 0, 0, 0, 0, 25, 0, 0, 0, 64, 0, 64, 0, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 0, 0, 0, 52, 52, 0, 16, 0, 16, 0, 0, 25, 25, 16, 0, 0, 0, 0, 0, 25, 0, 0, 25, 25, 25, 25, 25, 25, 0, 0, 0, 39, 39, 0, 25, 25, 25, 25, 25, 25, 0, 0, 25, 25, 25, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 0, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 25, 25, 0, 0, 0, 25, 25, 25, 0, 0, 0, 39, 25, 0, 0, 25, 25, 25, 0, 0, 0, 25, 25, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, 64, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0 },{ 52, 52, 0, 0, 52, 0, 0, 16, 16, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 25, 25, 0, 0, 25, 25, 25, 0, 0, 25, 0, 0, 0, 0, 0, 0, 39, 39, 39, 0, 25, 25, 0, 0, 0, 0, 25, 25, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 64, 64, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0 },{ 52, 52, 0, 0, 52, 52, 0, 16, 16, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 25, 25, 0, 0, 25, 25, 25, 0, 0, 0, 25, 0, 0, 0, 0, 0, 25, 39, 25, 25, 25, 25, 25, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0 },{ 52, 52, 0, 0, 0, 52, 0, 16, 16, 0, 0, 25, 25, 25, 25, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 25, 0, 0, 0, 0, 25, 25, 0, 0, 0, 25, 39, 0, 0, 39, 0, 0, 0, 25, 0, 0, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 52, 0, 52, 0, 0, 16, 16, 0, 25, 25, 0, 0, 25, 0, 0, 0, 0, 25, 25, 25, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 25, 25, 25, 39, 39, 39, 0, 0, 0, 39, 0, 0, 38, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 52, 52, 0, 0, 0, 0, 16, 0, 0, 25, 25, 0, 25, 25, 25, 0, 0, 25, 25, 25, 0, 0, 0, 0, 25, 0, 0, 39, 39, 0, 39, 39, 39, 0, 39, 39, 39, 39, 39, 39, 0, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 64, 0, 0, 0, 0, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 52, 0, 0, 0, 0, 0, 16, 16, 0, 0, 25, 25, 0, 0, 25, 25, 0, 0, 0, 25, 25, 0, 0, 0, 25, 25, 0, 39, 0, 0, 39, 39, 39, 0, 0, 0, 39, 0, 0, 0, 39, 39, 39, 39, 0, 38, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 64, 0, 0, 0, 0, 0 },{ 52, 52, 52, 0, 0, 0, 0, 0, 0, 16, 0, 0, 16, 25, 25, 0, 0, 25, 25, 0, 25, 0, 25, 25, 25, 0, 0, 25, 25, 0, 39, 0, 39, 0, 0, 0, 39, 0, 39, 0, 0, 0, 0, 39, 39, 39, 39, 39, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0 },{ 52, 0, 52, 0, 0, 0, 0, 0, 0, 16, 0, 0, 16, 0, 25, 25, 25, 25, 0, 0, 0, 25, 0, 0, 25, 25, 25, 0, 25, 0, 0, 0, 0, 39, 0, 0, 39, 39, 39, 39, 0, 39, 0, 0, 0, 0, 39, 39, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 52, 52, 52, 0, 0, 0, 0, 0, 0, 16, 0, 0, 25, 25, 25, 25, 25, 25, 25, 25, 0, 25, 0, 0, 0, 0, 25, 0, 0, 25, 0, 0, 0, 0, 39, 0, 39, 39, 0, 39, 0, 39, 0, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0 },{ 0, 52, 52, 52, 0, 0, 0, 0, 0, 16, 0, 0, 16, 16, 0, 0, 0, 0, 25, 25, 25, 0, 0, 0, 0, 0, 25, 0, 0, 25, 0, 0, 0, 39, 39, 39, 0, 39, 0, 39, 0, 39, 39, 39, 39, 39, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0 },{ 0, 0, 0, 52, 0, 0, 0, 0, 0, 16, 0, 16, 16, 16, 0, 0, 0, 0, 0, 25, 25, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 39, 39, 0, 0, 39, 0, 0, 39, 39, 0, 0, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 16, 16, 0, 16, 0, 0, 0, 25, 25, 25, 25, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 39, 39, 0, 39, 39, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 38, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 16, 16, 0, 25, 25, 25, 0, 25, 25, 25, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 39, 39, 0, 39, 39, 0, 0, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 16, 16, 0, 0, 16, 0, 0, 0, 25, 25, 25, 25, 25, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 39, 39, 0, 39, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 64, 0 },{ 0, 0, 0, 0, 0, 0, 0, 16, 0, 16, 0, 0, 16, 16, 0, 0, 25, 25, 25, 25, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 39, 39, 39, 0, 39, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 16, 16, 16, 0, 0, 0, 16, 0, 25, 25, 25, 25, 25, 25, 0, 0, 0, 0, 0, 25, 25, 25, 25, 25, 0, 0, 39, 39, 0, 0, 0, 39, 39, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 25, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 25, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 0, 25, 0, 25, 25, 25, 0, 0, 0, 0, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 25, 0, 0, 0, 0, 0, 39, 39, 0, 39, 39, 39, 25, 25, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 39, 0, 0, 0, 0, 39, 39, 39, 0, 0, 25, 39, 39, 0, 0, 0, 25, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 39, 0, 0, 0, 0, 0, 0, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 64, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 39, 39, 39, 39, 0, 39, 0, 39, 39, 39, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 64, 64, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }};thnks again
M->InitImages(szFiles,tilelist,31);
The last parameter should be 30, unless you changed szFiles to include another tile.
And you'r memory leak is still there :P
This line: Tile *tilelist[64] = {new Tile};
Should be: Tile *tilelist[64];
Apart from that, I can't see any immediate problems...
The last parameter should be 30, unless you changed szFiles to include another tile.
And you'r memory leak is still there :P
This line: Tile *tilelist[64] = {new Tile};
Should be: Tile *tilelist[64];
Apart from that, I can't see any immediate problems...
Quote:Original post by CJH
WorldMap uses [probably] 40000 bytes of stack space. Use dynamic memory.
~40k isn't that much. Under Windows, and application has 1Mb of stack space by default.
And I suspect that the array is global, in which case it just makes the exe 40k larger.
Allocating the arroy on the heap will only help if the map is loaded from a file or something, otherwise the map data has to reside in the exe anyway, in order to be copied into the dynamic memory.
sorry if i wasnt very clear here but my new problem is with my DrawMap() function its doing much the same thing as it was when i had the problem with the InitImages
Your problem is on this line:
SDL_BlitSurface(tilelist[MapOver[j]]->GetImage(),NULL, screen, &dest);
This will work fine if the values of MapOver[][] are all in the range 0-31, but as soon as you hit that 52 lower down in the array, you're trying to draw with a tile that hasn't been initialized. You really need to add bounds checking, something along the lines of:
Also, please get rid of the 'new Tile' in this line:
Tile *tilelist[64] = {new Tile};
It's hurting me. :P
SDL_BlitSurface(tilelist[MapOver[j]]->GetImage(),NULL, screen, &dest);
This will work fine if the values of MapOver[][] are all in the range 0-31, but as soon as you hit that 52 lower down in the array, you're trying to draw with a tile that hasn't been initialized. You really need to add bounds checking, something along the lines of:
int mapval = MapOver[j];if (mapval >= g_numImagesLoaded) mapval = g_numImagesLoaded;if (mapval < 0) mapval = 0;SDL_BlitSurface(tilelist[mapval]->GetImage(), NULL, screen, &dest);
Also, please get rid of the 'new Tile' in this line:
Tile *tilelist[64] = {new Tile};
It's hurting me. :P
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement