Jump to content
  • Advertisement
Sign in to follow this  
raptorstrike

problem with this function

This topic is 5459 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

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
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);

}; 



(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]

Share this post


Link to post
Share on other sites
Advertisement
Guest Anonymous Poster
your for loop runs from 0-63, but your szFiles has only 30 character strings in it... hence the runtime error !

Share this post


Link to post
Share on other sites
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:

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);

Share this post


Link to post
Share on other sites
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


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

Share this post


Link to post
Share on other sites
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...

Share this post


Link to post
Share on other sites
WorldMap uses [probably] 40000 bytes of stack space. Use dynamic memory.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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

Share this post


Link to post
Share on other sites
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:
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

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!