c++MC源码 合集(免费)

目录

1.

2.

3.

1.

#define PRINTERROR 0
#define CHOOSERROR 0
#include<bits/stdc++.h>
#include<windows.h>
#include<conio.h>
#define DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
#define FN 0 
#define None 0
#define Black 0
#define Blue 1
#define Green 2
#define Grean 3
#define Red 4
#define Pink 5
#define Yellow 6
#define Grey 8
#define grey 7
#define blue 9
#define green 10
#define graan 11
#define red 12
#define pink 13
#define yellow 14
#define white 15
#define bk0 240
#define bk1 112
#define bk2 128
#define bk3 0
#define DayLong 2000
using namespace std;
int Attack=0,Rape=0,YLY=0,seed=0;
string BODY[16]={"","()","xx","/\\"};
				/*                      0                               1                                                 2                                                    3                                       4                                                                   5       */
                /*0空气 1基岩2泥土3草方块4木头5石头6沙子7玻璃8铁矿9金矿0钻石1煤炭2木板3木棍4火把5 树叶6工作7箱子8木稿9石镐0铁锭1金锭2铁镐3金镐4钻镐5熔炉6木剑7石剑8铁剑9金剑0钻剑1苹果2面包3床4地狱岩5地狱砖6刷怪笼7-2水     3-6岩浆 7黑曜石                                        8桶9水桶0岩浆桶1烈焰棒 2传送门*/ 
string BLOCK[128]={"  ","▓ ","▓ ","MM","■","■","※","□","〓","〓","◆","〓","〓","| ","i ","▓ ","##","[]","/\\","/\\","◆","◆","/\\","/\\","/\\","##","||","||","||","||","||","●","--","#]","■","▓ ","##","█ ","▇ ","▆ ","▅ ","▃ ","█ ","█ ","▆ ","▃ ","█ ","■","U/","U#","U#","--","◆"};
int BLOCK_COL[128]={Black,Black,Yellow,Green,Yellow,Grey,Yellow,blue,grey,yellow,blue,Grey,Yellow,Yellow,Red,Green,Yellow,Yellow,Yellow,Grey,grey,yellow,grey,yellow,blue,Grey,Yellow,Grey,grey,yellow,blue,Red,Yellow,Red,Pink,Pink,Black,Blue,Blue,Blue,Blue,Blue,Blue,Red,Red,Red,Red,Black,Black,Blue,Red,Red,Red};
int Hard[128]={None,60000,100,0,200,500,100,0,500,500,700,400,200,0,10,30,200,200,0,0,0,0,0,0,0,500,0,0,0};
int Hardmu[128]={None,60000,100,0,200,200,100,0,500,500,700,220,200,0,10,30,200,200,0,0,0,0,0,0,0,200,0,0,0};
int Hardsh[128]={None,60000,100,0,200,100,100,0,150,140,700,120,200,0,10,30,200,200,0,0,0,0,0,0,0,100,0,0,0};
int Hardti[128]={None,60000,100,0,200,70,100,0,70,70,70,60,200,0,10,30,200,200,0,0,0,0,0,0,0,70,0,0,0};
int Hardji[128]={None,60000,100,0,200,30,100,0,30,30,40,20,200,0,10,30,200,200,0,0,0,0,0,0,0,30,0,0,0};
int Hardzu[128]={None,60000,100,0,200,60,100,0,60,60,60,60,200,0,10,30,200,200,0,0,0,0,0,0,0,60,0,0,0};
int CANPUT[128]={0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,0,0,0,0,0,0,0,1,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1};
string NODE[16][2]={{"xx","/\\"},{"[]","/\\"},{"[]","^^"},{"BO","SS"}};
int NODE_COL[16]={Green,Green,Red},tot,tot1;
struct CD{int x,y;}cdlist[500010],boxlist[50010];
struct GUI
{
	int heal,node,x,y,Delete;
}wor[70];
/* 背包:4*9 */
struct BAG
{
	int thing,num,nj;
}bag[7][16];
int Health,Eat,Time;
int UPDOWN_SPEED=0,now=1;
void setcolor(int bkcol,int col){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),bkcol+col);}
int x,y,move,DIE;
double Rx,Ry;
int block[259][1028];
BAG box[259][1028][16];
int bk=bk0,op,Dpx[1028]={200};
int Hc[64][10]={{0,12,12,12,12,16},{0,4,0,0,0,12},{0,0,4,0,0,12},{0,0,0,4,0,12},{0,0,0,0,4,12},{0,12,0,0,0,13},{0,0,12,0,0,13},{0,0,0,12,0,13},{0,0,0,0,12,13},{0,11,0,13,0,14},{0,0,11,0,13,14}}; 
int Hc2[64][32]={{0,20,0,20,0,20,0,0,0,0,48},{0,12,12,0,12,12,0,0,0,0,16},{0,4,0,0,0,0,0,0,0,0,12},{0,12,0,0,0,0,0,0,0,0,13},{0,11,0,0,0,13,0,0,0,0,14},{0,5,5,5,5,0,5,5,5,5,25},{0,12,12,12,0,13,0,0,13,0,18},{0,5,5,5,0,13,0,0,13,0,19},{0,20,20,20,0,13,0,0,13,0,22},{0,21,21,21,0,13,0,0,13,0,23},{0,10,10,10,0,13,0,0,13,0,24},{0,0,12,0,0,12,0,0,13,0,26},{0,0,5,0,0,5,0,0,13,0,27},{0,0,21,0,0,21,0,0,13,0,28},{0,0,22,0,0,22,0,0,13,0,29},{0,0,10,0,0,10,0,0,13,0,30}};
int CanHc()
{
	for(int i=0;i<64;i++)
	if(bag[5][1].thing==Hc[i][1]&&bag[5][2].thing==Hc[i][2]&&bag[5][3].thing==Hc[i][3]&&bag[5][4].thing==Hc[i][4])return Hc[i][5];
}
int CanHc2()
{
	for(int i=0;i<64;i++)
	{
		int bo=1;
		for(int j=1;j<=9;j++)if(bag[6][j].thing!=Hc2[i][j])bo=0;
		if(bo)return Hc2[i][10];
	}
}
void GOTO(int x,int y){
    CONSOLE_SCREEN_BUFFER_INFO csbiInfo;
    HANDLE hConsoleOut;
    hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE);
    GetConsoleScreenBufferInfo(hConsoleOut,&csbiInfo);
    csbiInfo.dwCursorPosition.Y = x;
    csbiInfo.dwCursorPosition.X = y;
    SetConsoleCursorPosition(hConsoleOut,csbiInfo.dwCursorPosition);
} 
void HideCursor()
{
	HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
	CONSOLE_CURSOR_INFO CursorInfo;
	GetConsoleCursorInfo(handle, &CursorInfo);
	CursorInfo.bVisible = false;
	SetConsoleCursorInfo(handle, &CursorInfo);
}
int toint(string str)
{
	int x=0;
	for(int i=0;i<str.size();i++)
	if(str[i]>='0'&&str[i]<='9')
		x=x*10+str[i]-'0';
	return x;
}int ATTACK[128];
void ShowCursor()
{
	HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
	CONSOLE_CURSOR_INFO CursorInfo;
	GetConsoleCursorInfo(handle, &CursorInfo);
	CursorInfo.bVisible = 1;
	SetConsoleCursorInfo(handle, &CursorInfo);
}
void CreateWorld(int WorldType)
{
	HideCursor();
	Health=10;Eat=10;for(int i=1;i<=64;i++)wor[i].Delete=1;
	if(WorldType==1)
	{
		x=4;
		y=512;op=2;
		for(int i=1;i<=1024;i++)block[0][i]=1,block[1][i]=2,block[2][i]=2,block[3][i]=3;
	}
	else if(WorldType==2)
	{
		//1:丘陵 2:山地Upper 3:山地Downner 4:平原 5:树林 
		int Type=1,lenth=0,village=0; 
		for(int j=1;j<=900;j++)
		{
			if(Type==1)Dpx[j]=Dpx[j-1]+rand()%3-1;
			else if(Type==2) Dpx[j]=Dpx[j-1]+rand()%2+1;
			else if(Type==3) Dpx[j]=Dpx[j-1]-rand()%2-1;
			else if(Type==4||Type==5) Dpx[j]=Dpx[j-1]+((rand()%3!=0)?(rand()%3-1):0);
			if(Dpx[j]>=100)Dpx[j]=64;
			else if(Dpx[j]<=30)Dpx[j]=64;
			lenth++;
			if(lenth>=5&&rand()%20==0)
			{
				if(Type==2)Type++;
				else
				{
					Type=rand()%5+1;
					while(Type==3)Type=rand()%5+1;
				}
			}
			for(int i=Dpx[j];i>=1;i--)
			if(i==Dpx[j]) block[i][j]=3;
			else if(rand()%1000<2-i/10)
			{
				block[i][j]=10;
				for(int ii=-1;ii<=1;ii++)
				  for(int jj=-1;jj<=1;jj++)
					if(rand()%10<=3&&(ii!=0||jj!=0))block[i+ii][j+jj]=10;
			}
			else if(rand()%1000<10-abs(i/10-4))
			{
				block[i][j]=8;
				for(int ii=-1;ii<=1;ii++)
				  for(int jj=-1;jj<=1;jj++)
					if(rand()%5<=4&&(ii!=0||jj!=0))block[i+ii][j+jj]=8;
			}
			else if(rand()%1000<4-i/25)
			{
				block[i][j]=9;
				for(int ii=-1;ii<=1;ii++)
				  for(int jj=-1;jj<=1;jj++)
					if(rand()%10<=3&&(ii!=0||jj!=0))block[i+ii][j+jj]=9;
			}
			else if(rand()%1000<20-abs(x/5-15))
			{
				block[i][j]=11;
				for(int ii=-1;ii<=1;ii++)
				  for(int jj=-1;jj<=1;jj++)
					if(rand()%10<=3&&(ii!=0||jj!=0))block[i+ii][j+jj]=11;
			}
			else if(rand()%100<100-abs(i-Dpx[j])*abs(i-Dpx[j])*abs(i-Dpx[j]))block[i][j]=2;
			else if(rand()%2&&i<=3)block[i][j]=47;
			else block[i][j]=5;
			if(Type==1||Type==4){if(rand()%10==0)block[Dpx[j]][j]=4,block[Dpx[j]+1][j]=4,block[Dpx[j]+2][j]=4,block[Dpx[j]+3][j]=15,block[Dpx[j]+2][j-1]=15,block[Dpx[j]+2][j+1]=15;}
			if(Type==2||Type==3){if(rand()%20==0)block[Dpx[j]][j]=4,block[Dpx[j]+1][j]=4,block[Dpx[j]+2][j]=4,block[Dpx[j]+3][j]=15,block[Dpx[j]+2][j-1]=15,block[Dpx[j]+2][j+1]=15;}
			if(Type==5){if(rand()%10==0)block[Dpx[j]][j]=4,block[Dpx[j]+1][j]=4,block[Dpx[j]+2][j]=4,block[Dpx[j]+3][j]=4,block[Dpx[j]+4][j]=4,block[Dpx[j]+5][j]=15,block[Dpx[j]+4][j-1]=15,block[Dpx[j]+4][j+1]=15,block[Dpx[j]+3][j+1]=15,block[Dpx[j]+3][j+2]=15,block[Dpx[j]+3][j-1]=15,block[Dpx[j]+3][j-2]=15;if(rand()%5==0)block[Dpx[j]][j]=4,block[Dpx[j]+1][j]=4,block[Dpx[j]+2][j]=4,block[Dpx[j]+3][j]=15,block[Dpx[j]+2][j-1]=15,block[Dpx[j]+2][j+1]=15;}
			if(Type==4&&village-j<-100&&rand()%10==0)
			{
				village=j;//system("pause");
				int bc=j;
				while(rand()%4<3)
				{
					int Node=rand()%3;
					if(Node==0)
					{
						block[Dpx[j]][j+1]=4;  block[Dpx[j]][j]=4;  block[Dpx[j]][j-1]=4;  block[Dpx[j]][j-2]=4;
						block[Dpx[j]+1][j+1]=4;block[Dpx[j]+1][j]=17;block[Dpx[j]+1][j-1]=0;block[Dpx[j]+1][j-2]=4;
						block[Dpx[j]+2][j+1]=4;block[Dpx[j]+2][j]=0;block[Dpx[j]+2][j-1]=0;block[Dpx[j]+2][j-2]=4;
						block[Dpx[j]+3][j+1]=4;block[Dpx[j]+3][j]=0;block[Dpx[j]+3][j-1]=0;block[Dpx[j]+3][j-2]=4;
						block[Dpx[j]+4][j]=4;block[Dpx[j]+4][j-1]=4;
						for(int i=1;i<=8;i++)
						{
							int list[20]={31,32,32,32,31,26,18,19,4,4,4,0};
							box[Dpx[j]+1][j][i].thing=list[rand()%20],box[Dpx[j]+1][j][i].num=rand()%10+1;
						}
					}
					if(Node==1)
					{
						block[Dpx[j]][j+1]=5;  block[Dpx[j]][j]=5;  block[Dpx[j]][j-1]=5;  block[Dpx[j]][j-2]=5;
						block[Dpx[j]+1][j+1]=5;block[Dpx[j]+1][j]=17;block[Dpx[j]+1][j-1]=0;block[Dpx[j]+1][j-2]=5;
						block[Dpx[j]+2][j+1]=5;block[Dpx[j]+2][j]=0;block[Dpx[j]+2][j-1]=0;block[Dpx[j]+2][j-2]=5;
						block[Dpx[j]+3][j+1]=5;block[Dpx[j]+3][j]=5;block[Dpx[j]+3][j-1]=5;block[Dpx[j]+3][j-2]=5;
						for(int i=1;i<=8;i++)
						{
							int list[20]={31,32,32,20,20,20,20,11,21,21,10,5,5,5,8,8};
							box[Dpx[j]+1][j][i].thing=list[rand()%20],box[Dpx[j]+1][j][i].num=rand()%10+1;
						}
					}
					if(Node==3)
					{
						block[Dpx[j]][j+1]=4;  block[Dpx[j]][j]=4;  block[Dpx[j]][j-1]=4;  block[Dpx[j]][j-2]=4;
						block[Dpx[j]+1][j+1]=4;block[Dpx[j]+1][j]=33;block[Dpx[j]+1][j-1]=0;block[Dpx[j]+1][j-2]=4;
						block[Dpx[j]+2][j+1]=4;block[Dpx[j]+2][j]=0;block[Dpx[j]+2][j-1]=0;block[Dpx[j]+2][j-2]=4;
						block[Dpx[j]+3][j+1]=4;block[Dpx[j]+3][j]=0;block[Dpx[j]+3][j-1]=0;block[Dpx[j]+3][j-2]=4;
						block[Dpx[j]+4][j]=4;block[Dpx[j]+4][j-1]=4;
					}
					j-=5;
				}
				j=bc;
			}
		}
		Type=2;
		for(int j=901;j<=1024;j++)
		{
			if(Type==2)Dpx[j]=Dpx[j-1];
			else if(Type==1) Dpx[j]=Dpx[j-1]+rand()%5-2;
			if(Dpx[j]>=100)Dpx[j]=64;
			else if(Dpx[j]<=30)Dpx[j]=64;
			lenth++;
			if(lenth>=5&&rand()%20==0)
			{
				Type=rand()%5+1;
				if(Type==1)Type=2;else Type=1;
			}
			for(int i=Dpx[j];i>=1;i--)
			if(i==Dpx[j]) block[i][j]=Type==1?34:35;
			else if(i==1)block[i][j]=1;else block[i][j]=34;
			if(Type==2&&rand()%10==0)block[Dpx[j]+3][j]=36;
			
		}
		y=y==0?512:y;
		x=Dpx[y]+2;
		op=2;
	} 
}
void Output()
{
	GOTO(0,0);Attack--;
	setcolor(bk,0);
	for(int i=x+5;i>=x-5;i--,puts(""))
	  for(int j=y+5;j>=y-5;j--)
	  {
		int BO1=0,BO2=0;
	  	for(int o=1;o<=64;o++)
	  	if(wor[o].x==i&&wor[o].y==j&&!wor[o].Delete)BO1=o;
	  	for(int o=1;o<=64;o++)
	  	if(wor[o].x+1==i&&wor[o].y==j&&!wor[o].Delete)BO2=o;
	  	if(BO1)
	  	{setcolor(bk,ATTACK[BO2]!=0?Green:NODE_COL[wor[BO1].node]);cout<<NODE[wor[BO1].node][1];
		  }
		else if(BO2) {setcolor(bk,ATTACK[BO2]!=0?Green:NODE_COL[wor[BO1].node]);if(ATTACK[BO2]!=0)cout<<wor[BO2].heal;else cout<<NODE[wor[BO2].node][0];ATTACK[BO2]=0;
		}
	  	else if(i<0||j<0||i>1023||j>1023)
	  	{
	  		setcolor(bk,0);
	  		cout<<"  ";
		}
		else if(block[i][j]<0)
		{
			setcolor(bk,bk!=0?0:1);
			cout<<BODY[-block[i][j]];
			block[i][j]=0;
		}
		else
		{
			setcolor(bk,BLOCK_COL[block[i][j]]);
	  		cout<<BLOCK[block[i][j]];
		}
	  }
	for(int i=1;i<=4;i++)cout<<"  "<<i<<"   ";puts("");
	for(int i=1;i<=4;i++)if(i!=now)
	{
		cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);
		cout<<BLOCK[bag[1][i].thing];setcolor(bk,Black);printf("%2d]",bag[1][i].num);
	}else
	{
		setcolor(bk,Red);cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);cout<<BLOCK[bag[1][i].thing];setcolor(bk,Red);printf("%2d]",bag[1][i].num);setcolor(bk,Black);
	}setcolor(bk,Black);
	cout<<"\n坐标:"<<x<<" "<<y<<endl;
	setcolor(bk,Red);cout<<"生命:";
	for(int i=1;i<=10;i++)if(i<=Health)cout<<"●";else cout<<"○";
	setcolor(bk,Yellow);cout<<"\n饥饿:";
	for(int i=1;i<=10;i++)if(i<=Eat)cout<<"●";else cout<<"○";
	setcolor(bk,0);
	if(Attack>0)GOTO(0,0),cout<<"->";
}
void Clac();
void BodyClac();void Start();
void readcd()
{
	ifstream fout("INFMC.infcd");
	if(!fout)return;cout<<"是否读档?1/0\n";if(getch()=='0')
	{
	seed=time(0);system("cls");return;	
	}system("cls");cout<<"\n读档LOADING...";
	fout>>seed>>tot;srand(seed);CreateWorld(2);fout>>x>>y;cout<<"已读:基本信息("<<x<<","<<y<<")\n"; 
	for(int i=1;i<=tot;i++)
	{
		int q,w,e;
		fout>>q>>w>>e;
		block[q][w]=e;
	}Sleep(100);cout<<"\n已读:方块\n";Sleep(100);
	for(int i=1;i<=6;i++)
	for(int j=1;j<=12;j++)fout>>bag[i][j].thing>>bag[i][j].num;
	cout<<"已读:背包\n";Sleep(100);;fout>>tot1;
	for(int i=1;i<=tot1;i++)
	{int q,w,e,r;
	fout>>q>>w;
	for(int j=1;j<=14;j++)
	{
		fout>>e>>r;
		box[q][w][j].thing=e;box[q][w][j].num=r;
	}
	} cout<<"已读:箱子\n";Sleep(500);int e;
	fout>>e;if(e!=114514)cout<<"ERROR FILE!",exit(0);cout<<"end\n\n";Sleep(1000);system("cls");Start();
}
void putcd()
{
	system("cls");
	ofstream fout("INFMC.infcd");
	cout<<"存档(版本:1.1):\n约"<<tot*10+tot1*30+6*12*3<<"字符";
	fout<<seed<<"\n";fout<<tot<<" "<<x<<" "<<y<<" ";
	for(int i=1;i<=tot;i++)fout<<cdlist[i].x<<" "<<cdlist[i].y<<" "<<block[cdlist[i].x][cdlist[i].y]<<" ";
	for(int i=1;i<=6;i++)
	for(int j=1;j<=12;j++)fout<<bag[i][j].thing<<" "<<bag[i][j].num<<" ";
	fout<<tot1<<" ";
	for(int i=1;i<=tot1;i++)
	{
	fout<<boxlist[i].x<<" "<<boxlist[i].y<<" ";
	for(int j=1;j<=14;j++)fout<<box[boxlist[i].x][boxlist[i].y][j].thing<<" "<<box[boxlist[i].x][boxlist[i].y][j].num<<" ";
	} 
	fout<<"\n114514";fout.close();cout<<"完毕";
}
void DEAD()
{
	system("cls");
	cout<<"您去世了,欢迎来到天堂。\n";
	cout<<"A:下凡       B:返回";int Rap=0;
	while(1)
	{
		if(getch()=='a')
		{
			Rap++;
			if(Rap!=5)
			cout<<"\n注意审题!";else cout<<"\n注意审题!大写的A!";
		}
		if(getch()=='A')
		{
			Health=10;
			Eat=10;
			DIE=0;
			return;
		}
		if(getch()=='B')exit(0);
	} 
}
void dig(int a,int X,int Y)
{
	cdlist[++tot].x=X;cdlist[tot].y=Y;
	BodyClac();
	if((a==37||a==43)&&bag[1][now].thing==48)
	{
		bag[1][now].thing=a==37?49:50;block[X][Y]=0;return;
	}
	for(int O=1;O<=5;O++)
	{	GOTO(0,0);
	setcolor(bk,0);
	if(!DOWN('W')&&!DOWN('A')&&!DOWN('S')&&!DOWN('D'))return;
		for(int O=1;O<=5;O++)
	{	
		GOTO(x+5-X,(y+5-Y)*2);
		string Og[10]={"","▏ ","▎ ","▍ ","▋ ","▊ "};
		setcolor(bk,BLOCK_COL[block[X][Y]]);
		cout<<Og[O];
		  int wait=1000;
		  if(bag[1][now].thing==18)wait=Hardmu[a];
		  else if(bag[1][now].thing==19)wait=Hardsh[a];
		  else if(bag[1][now].thing==22)wait=Hardti[a];
		  else if(bag[1][now].thing==23)wait=Hardji[a];
		  else if(bag[1][now].thing==24)wait=Hardzu[a];
		  else wait=Hard[a];
		Sleep(wait);
	}
		  }
	if(bag[1][now].num>0)
	{
		int Rap=1;
		if(bag[1][now].thing==18)Rap=2;if(bag[1][now].thing==19)Rap=4;if(bag[1][now].thing==22)Rap=7;if(bag[1][now].thing==23)Rap=2;if(bag[1][now].thing==24)Rap=15;
		if(rand()%Rap==0)bag[1][now].nj--;GOTO(0,0);cout<<"耐久:"<<bag[1][now].nj;if(bag[1][now].nj==0)bag[1][now].num=0;
	}
	for(int i=1;i<=4;i++)
	  for(int j=1;j<=4;j++)if((bag[i][j].thing==0||bag[i][j].thing==a)&&bag[i][j].num<64)
	  {
	  	bag[i][j].thing=a,bag[i][j].num++;block[X][Y]=0;return;
	  }
	GOTO(0,0);cout<<"警报:背包已满,无法拾起";Sleep(1000);
}
void digE(int a,int X,int Y)
{
	//BodyClac();
	cdlist[++tot].x=X;cdlist[tot].y=Y;
	if((a==37||a==43)&&bag[1][now].thing==48)
	{
		bag[1][now].thing=a==37?49:50;block[X][Y]=0;return;
	}
	for(int O=1;O<=5;O++)
	{	
		GOTO(x+5-X,(y+5-Y)*2);
		string Og[10]={"","▏ ","▎ ","▍ ","▋ ","▊ "};
		setcolor(bk,BLOCK_COL[block[X][Y]]);
		cout<<Og[O];
		  int wait=1000;
		  if(bag[1][now].thing==18)wait=Hardmu[a];
		  else if(bag[1][now].thing==19)wait=Hardsh[a];
		  else if(bag[1][now].thing==22)wait=Hardti[a];
		  else if(bag[1][now].thing==23)wait=Hardji[a];
		  else if(bag[1][now].thing==24)wait=Hardzu[a];
		  else wait=Hard[a];
		Sleep(wait);
	}
	if(bag[1][now].num>0)
	{
		int Rap=1;
		if(bag[1][now].thing==18)Rap=2;if(bag[1][now].thing==19)Rap=4;if(bag[1][now].thing==22)Rap=7;if(bag[1][now].thing==23)Rap=2;if(bag[1][now].thing==24)Rap=15;
		if(rand()%Rap==0)bag[1][now].nj--;GOTO(0,0);cout<<"耐久:"<<bag[1][now].nj;if(bag[1][now].nj==0)bag[1][now].num=0;
	}
	for(int i=1;i<=4;i++)
	  for(int j=1;j<=4;j++)if((bag[i][j].thing==0||bag[i][j].thing==a)&&bag[i][j].num<64)
	  {
	  	bag[i][j].thing=a,bag[i][j].num++;block[X][Y]=0;return;
	  }
	GOTO(0,0);cout<<"警报:背包已满,无法拾起";Sleep(1000);
}
void BagE()
{
	int nowi=0,nowj=0,SPACE=0,Rp=0,Rpx=0,Rpy=0,willjian=0;int aa=0;
	while(1)
	{
	GOTO(0,0);
	setcolor(bk,Black);
	cout<<"Game Paused[请点击CapsLock大写锁定](点击r返回)\n";
	char Letter[10][10]={{},{' ','1','2','3','4'},{' ','q','w','e','r'},{' ','a','s','d','f'},{' ','z','x','c','v'},{' ','5','6','7','8','9'}};
	for(int i=2;i<=4;i++)
	{
		for(int j=1;j<=4;j++)if(i!=4||j>2)cout<<"  "<<Letter[i][j]<<"   ";else if(i==4&&j==1)cout<<"燃料"<<Letter[i][j];else cout<<"  烧制"<<Letter[i][j];puts("                            ");
		for(int j=1;j<=4;j++)if(nowj==j&&nowi==i)
	{
		setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Green);printf("%2d]",bag[i][j].num);setcolor(bk,Black);
	}
	else {cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Black);printf("%2d]",bag[i][j].num);}
		puts("                                \n                               ");
	}
	for(int i=1;i<=4;i++)cout<<"  "<<i<<"   ";puts("");
	for(int i=1;i<=4;i++)
	if(nowj==i&&nowi==1)
	{
		setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);cout<<BLOCK[bag[1][i].thing];setcolor(bk,Green);printf("%2d]",bag[1][i].num);setcolor(bk,Black);
	}
	else if(i!=now)
	{
		cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);
		cout<<BLOCK[bag[1][i].thing];setcolor(bk,Black);printf("%2d]",bag[1][i].num);
	}else
	{
		setcolor(bk,Red);cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);cout<<BLOCK[bag[1][i].thing];setcolor(bk,Red);printf("%2d]",bag[1][i].num);setcolor(bk,Black);
	}puts("                                \n                         ");
		GOTO(1,25);cout<<"|-合-成-|_  ";
		GOTO(2,25);cout<<"|";if(bag[5][1].num==0)cout<<" 5 |";
		else
		{
			setcolor(bk,BLOCK_COL[bag[5][1].thing]);cout<<BLOCK[bag[5][1].thing];if(nowi!=5||nowj!=1)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[5][1].num);
		}setcolor(bk,Black);
		if(bag[5][2].num==0)cout<<" 6 | \\[";
		else
		{
			setcolor(bk,BLOCK_COL[bag[5][2].thing]);cout<<BLOCK[bag[5][2].thing];if(nowi!=5||nowj!=2)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d \\[",bag[5][2].num);
		}setcolor(bk,Black);
		if(bag[5][5].num==0)cout<<" 9 ]";
		else
		{
			setcolor(bk,BLOCK_COL[bag[5][5].thing]);cout<<BLOCK[bag[5][5].thing];if(nowi!=5||nowj!=5)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[5][5].num);
		}setcolor(bk,Black);
		GOTO(3,25);
		if(bag[5][3].num==0)cout<<"| 7 |";
		else
		{
			setcolor(bk,BLOCK_COL[bag[5][3].thing]);cout<<"|";cout<<BLOCK[bag[5][3].thing];if(nowi!=5||nowj!=3)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[5][3].num);
		}setcolor(bk,Black);
		if(bag[5][4].num==0)cout<<" 8 |_/ 结果";
		else
		{
			setcolor(bk,BLOCK_COL[bag[5][4].thing]);cout<<BLOCK[bag[5][4].thing];if(nowi!=5||nowj!=4)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d_/ 结果",bag[5][4].num);
		}setcolor(bk,Black);
		GOTO(8,25);cout<<"[    ] ()";
		GOTO(9,25);cout<<"[    ] ||";
		GOTO(10,25);cout<<"[    ] --";
		GOTO(11,25);cout<<"[    ] /\\";
		aa=getch();
		for(int i=1;i<=5;i++)
		   for(int j=1;j<=(i<=4?4:5);j++)
		   if(aa==Letter[i][j])
		   {
		   	if(SPACE)
		   	{
		   		if(bag[i][j].thing==Rp||bag[i][j].thing==0)
		   		{
		   			bag[i][j].thing=Rp;
		   			bag[i][j].num+=SPACE;SPACE=0;nowi=0;nowj=0;
				}
				else nowi=0,nowj=0;
			   }
		   		else if(nowi!=0&&nowj!=0)
				   {
				   	if(!(i!=5||j!=5))nowi=0;
				   	else
					   {
					   	
					   	if((nowi!=i||nowj!=j)&&bag[i][j].thing==bag[nowi][nowj].thing&&bag[i][j].num+bag[nowi][nowj].num<=64)bag[i][j].num+=bag[nowi][nowj].num,bag[nowi][nowj].num=0;
				   			else swap(bag[i][j],bag[nowi][nowj]);
				   		if(nowi==5&&nowj==5)bag[5][1].num-=willjian,bag[5][2].num-=willjian,bag[5][3].num-=willjian,bag[5][4].num-=willjian;
					   }
					   Clac();
				   	nowi=0;nowj=0;
				   }
				else 
		   		nowi=i,nowj=j;
		   }setcolor(bk,Black);
		if(aa==' '&&nowi&&bag[nowi][nowj].num>1&&!SPACE&&(nowi!=5||nowj!=5))
		{
			SPACE=bag[nowi][nowj].num-bag[nowi][nowj].num/2;Rp=bag[nowi][nowj].thing;bag[nowi][nowj].num=bag[nowi][nowj].num/2;
		nowi=0;nowj=0;}
		for(int i=1;i<=4;i++)
		   for(int j=1;j<=4;j++)
		if(aa=='r')
		{
			system("cls");
			return;
		}
		willjian=0;bag[5][5].num=0;
		if(CanHc())
		{
			int Numlist[100];
			for(int i=1;i<=64;i++)Numlist[i]=1;
			Numlist[12]=2;Numlist[13]=2;Numlist[14]=4;
			int MIN=100;
			for(int i=1;i<=4;i++)if(bag[5][i].num!=0)MIN=min(MIN,bag[5][i].num);
			bag[5][5].num=Numlist[CanHc()]*min(64/Numlist[CanHc()],MIN);
			bag[5][5].thing=CanHc();willjian=min(64/Numlist[CanHc()],MIN);
		}
	}
}
void Bag()
{
	int nowi=0,nowj=0,SPACE=0,Rp=0,Rpx=0,Rpy=0,willjian=0;
	while(1)
	{
	
	GOTO(0,0);
	setcolor(bk,Black);
	cout<<"Game Paused(点击Esc返回)\n";
	char Letter[10][10]={{},{' ','1','2','3','4'},{' ','Q','W','E','R'},{' ','A','S','D','F'},{' ','Z','X','C','V'},{' ','5','6','7','8','9'}};
	for(int i=2;i<=4;i++)
	{
		for(int j=1;j<=4;j++)if(i!=4||j>2)cout<<"  "<<Letter[i][j]<<"   ";else if(i==4&&j==1)cout<<"燃料"<<Letter[i][j];else cout<<"  烧制"<<Letter[i][j];puts("                            ");
		for(int j=1;j<=4;j++)if(nowj==j&&nowi==i)
	{
		setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Green);printf("%2d]",bag[i][j].num);setcolor(bk,Black);
	}
	else {cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Black);printf("%2d]",bag[i][j].num);}
		puts("                                \n                               ");
	}
	for(int i=1;i<=4;i++)cout<<"  "<<i<<"   ";puts("");
	for(int i=1;i<=4;i++)
	if(nowj==i&&nowi==1)
	{
		setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);cout<<BLOCK[bag[1][i].thing];setcolor(bk,Green);printf("%2d]",bag[1][i].num);setcolor(bk,Black);
	}
	else if(i!=now)
	{
		cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);
		cout<<BLOCK[bag[1][i].thing];setcolor(bk,Black);printf("%2d]",bag[1][i].num);
	}else
	{
		setcolor(bk,Red);cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);cout<<BLOCK[bag[1][i].thing];setcolor(bk,Red);printf("%2d]",bag[1][i].num);setcolor(bk,Black);
	}puts("                                \n                         ");
		GOTO(1,25);cout<<"|-合-成-|_  ";
		GOTO(2,25);cout<<"|";if(bag[5][1].num==0)cout<<" 5 |";
		else
		{
			setcolor(bk,BLOCK_COL[bag[5][1].thing]);cout<<BLOCK[bag[5][1].thing];if(nowi!=5||nowj!=1)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[5][1].num);
		}setcolor(bk,Black);
		if(bag[5][2].num==0)cout<<" 6 | \\[";
		else
		{
			setcolor(bk,BLOCK_COL[bag[5][2].thing]);cout<<BLOCK[bag[5][2].thing];if(nowi!=5||nowj!=2)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d \\[",bag[5][2].num);
		}setcolor(bk,Black);
		if(bag[5][5].num==0)cout<<" 9 ]";
		else
		{
			setcolor(bk,BLOCK_COL[bag[5][5].thing]);cout<<BLOCK[bag[5][5].thing];if(nowi!=5||nowj!=5)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[5][5].num);
		}setcolor(bk,Black);
		GOTO(3,25);
		if(bag[5][3].num==0)cout<<"| 7 |";
		else
		{
			setcolor(bk,BLOCK_COL[bag[5][3].thing]);cout<<"|";cout<<BLOCK[bag[5][3].thing];if(nowi!=5||nowj!=3)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[5][3].num);
		}setcolor(bk,Black);
		if(bag[5][4].num==0)cout<<" 8 |_/ 结果";
		else
		{
			setcolor(bk,BLOCK_COL[bag[5][4].thing]);cout<<BLOCK[bag[5][4].thing];if(nowi!=5||nowj!=4)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d_/ 结果",bag[5][4].num);
		}setcolor(bk,Black);
		GOTO(8,25);cout<<"[    ] ()";
		GOTO(9,25);cout<<"[    ] ||";
		GOTO(10,25);cout<<"[    ] --";
		GOTO(11,25);cout<<"[    ] /\\";
		
		for(int i=1;i<=5;i++)
		   for(int j=1;j<=(i<=4?4:5);j++)
		   if(DOWN(Letter[i][j]))
		   {
		   	if(SPACE)
		   	{
		   		if(bag[i][j].thing==Rp||bag[i][j].thing==0)
		   		{
		   			bag[i][j].thing=Rp;
		   			bag[i][j].num+=SPACE;SPACE=0;nowi=0;nowj=0;
				}
				else nowi=0,nowj=0;
			   }
		   		else if(nowi!=0&&nowj!=0)
				   {
				   	if(!(i!=5||j!=5))nowi=0;
				   	else
					   {
					   	
					   	if((nowi!=i||nowj!=j)&&bag[i][j].thing==bag[nowi][nowj].thing&&bag[i][j].num+bag[nowi][nowj].num<=64)bag[i][j].num+=bag[nowi][nowj].num,bag[nowi][nowj].num=0;
				   			else swap(bag[i][j],bag[nowi][nowj]);
				   		if(nowi==5&&nowj==5)bag[5][1].num-=willjian,bag[5][2].num-=willjian,bag[5][3].num-=willjian,bag[5][4].num-=willjian;
					   }
					   Clac();
				   	nowi=0;nowj=0;
				   }
				else 
		   		nowi=i,nowj=j;
		   }setcolor(bk,Black);
		if(DOWN(VK_SPACE)&&nowi&&bag[nowi][nowj].num>1&&!SPACE&&(nowi!=5||nowj!=5))
		{
			SPACE=bag[nowi][nowj].num-bag[nowi][nowj].num/2;Rp=bag[nowi][nowj].thing;bag[nowi][nowj].num=bag[nowi][nowj].num/2;
		nowi=0;nowj=0;}
		for(int i=1;i<=4;i++)
		   for(int j=1;j<=4;j++)
		if(DOWN(VK_ESCAPE))
		{
			system("cls");
			return;
		}
		willjian=0;bag[5][5].num=0;
		if(CanHc())
		{
			int Numlist[100];
			for(int i=1;i<=64;i++)Numlist[i]=1;
			Numlist[12]=2;Numlist[13]=2;Numlist[14]=4;
			int MIN=100;
			for(int i=1;i<=4;i++)if(bag[5][i].num!=0)MIN=min(MIN,bag[5][i].num);
			bag[5][5].num=Numlist[CanHc()]*min(64/Numlist[CanHc()],MIN);
			bag[5][5].thing=CanHc();willjian=min(64/Numlist[CanHc()],MIN);
		}
		int BOOO=0;
		while(!BOOO)
		{BOOO=1;
			for(int i=1;i<=5;i++)
		   for(int j=1;j<=(i<=4?4:5);j++)
		   if(DOWN(Letter[i][j])||DOWN(VK_ESCAPE)||DOWN(VK_SPACE))BOOO=0;
		}
		Sleep(20);
	}
}
void workE(int R,int xx,int yy)
{
	boxlist[++tot1].x=xx;boxlist[tot1].y=yy;
	system("cls"); 
	if(R==33&&bk==bk0)
	{
		cout<<"按住E睡觉";
		for(int i=1;i<=10;i++)
		{
			Sleep(1000);
		}
		Time=0;
	}
	if(R==17)
	{
		int aa=0,nowi=0,nowj=0,SPACE=0,Rp=0,Rpx=0,Rpy=0,willjian=0;for(int i=1;i<=8;i++)swap(box[xx][yy][i],bag[5+i/5][i-i/5*4]);
		while(1)
		{
		GOTO(0,0);
		setcolor(bk,Black);
		cout<<"箱子(点击r返回)\n";
		int Letter[12][12]={{},{' ','1','2','3','4'},{' ','Q','W','E','R'},{' ','A','S','D','F'},{' ','Z','X','C','V'},{' ','T','Y','U','I'},{' ','G','H','J','K'}};
		
		for(int i=5;i<=6;i++)
		{
			for(int j=1;j<=4;j++)cout<<"  "<<(char)Letter[i][j]<<"   ";puts("         ");
			for(int j=1;j<=4;j++)
		if(nowj==j&&nowi==i)
		{
			setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Green);printf("%2d]",bag[i][j].num);setcolor(bk,Black);
		}
		else {cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Black);printf("%2d]",bag[i][j].num);}
		puts("         ");}cout<<"\n\n";
		for(int i=2;i<=4;i++)
		{
			for(int j=1;j<=4;j++)cout<<"  "<<(char)Letter[i][j]<<"   ";puts("                            ");
			for(int j=1;j<=4;j++)if(nowj==j&&nowi==i)
		{
			setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Green);printf("%2d]",bag[i][j].num);setcolor(bk,Black);
		}
		else {cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Black);printf("%2d]",bag[i][j].num);}
			puts("                                \n                               ");
		}
		for(int i=1;i<=4;i++)cout<<"  "<<i<<"   ";puts("");
		for(int i=1;i<=4;i++)
		if(nowj==i&&nowi==1)
		{
			setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);cout<<BLOCK[bag[1][i].thing];setcolor(bk,Green);printf("%2d]",bag[1][i].num);setcolor(bk,Black);
		}
		else if(i!=now)
		{
			cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);
			cout<<BLOCK[bag[1][i].thing];setcolor(bk,Black);printf("%2d]",bag[1][i].num);
		}else
		{
			setcolor(bk,Red);cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);cout<<BLOCK[bag[1][i].thing];setcolor(bk,Red);printf("%2d]",bag[1][i].num);setcolor(bk,Black);
		}puts("                                \n                         ");
			Sleep(100);aa=getch();
			for(int i=1;i<=6;i++)
			   for(int j=1;j<=4;j++)
			   if(aa==Letter[i][j])
			   {
			   	if(SPACE)
			   	{
			   		if(bag[i][j].thing==Rp||bag[i][j].thing==0)
			   		{
			   			bag[i][j].thing=Rp;
			   			bag[i][j].num+=SPACE;SPACE=0;nowi=0;nowj=0;
					}
					else nowi=0,nowj=0;
				   }
			   		else if(nowi!=0&&nowj!=0)
					   {
					   	if(!(i!=6||j!=10))nowi=0;
					   	else
						   {
						   	
						   	if((i!=nowi||j!=nowj)&&bag[i][j].thing==bag[nowi][nowj].thing&&bag[i][j].num+bag[nowi][nowj].num<=64)bag[i][j].num+=bag[nowi][nowj].num,bag[nowi][nowj].num=0;
					   			else swap(bag[i][j],bag[nowi][nowj]);
					   		//if(nowi==6&&nowj==10)bag[6][1].num-=willjian,bag[6][2].num-=willjian,bag[6][3].num-=willjian,bag[6][4].num-=willjian,bag[6][5].num-=willjian,bag[6][6].num-=willjian,bag[6][7].num-=willjian,bag[6][8].num-=willjian,bag[6][9].num-=willjian;
						   }
						   Clac();
					   	nowi=0;nowj=0;
					   }
					else 
			   		nowi=i,nowj=j;
			   }setcolor(bk,Black);
			if(aa==' '&&nowi&&bag[nowi][nowj].num>1&&!SPACE&&(nowi!=6||nowj!=10))
			{
				SPACE=bag[nowi][nowj].num-bag[nowi][nowj].num/2;Rp=bag[nowi][nowj].thing;bag[nowi][nowj].num=bag[nowi][nowj].num/2;
			nowi=0;nowj=0;}
			for(int i=1;i<=4;i++)
			   for(int j=1;j<=4;j++)
			if(aa=='r')
			{
				system("cls");for(int i=1;i<=8;i++)swap(box[xx][yy][i],bag[5+i/5][i-i/5*4]);
				return;
			}
		}
	}
	if(R==25)
	{
		int hot[64]={0};
		hot[4]=2;hot[12]=1;hot[11]=4;
		
		if(box[x][y][1].num==0&&(bag[4][1].thing==4||bag[4][1].thing==12||bag[4][1].thing==11))swap(box[x][y][1],bag[4][1]);
		if(box[x][y][2].num==0&&(bag[4][2].thing==6||bag[4][2].thing==8||bag[4][2].thing==9))swap(box[x][y][2],bag[4][2]);
		while(1)
		{
			GOTO(0,0);Clac();
			setcolor(bk,Black);
			cout<<"Game Paused(点击r返回,1燃料,2物品,3结果)\n";
			for(int i=1;i<=3;i++)if(box[x][y][i].num==0)box[x][y][i].thing=0;int aa=0;
			if(kbhit())aa=getch();
			if(aa=='1')
			{
				if(box[x][y][1].num==0)swap(box[x][y][1],bag[4][1]);
				else 
				while(--box[x][y][1].num) 
				{
					for(int i=1;i<=4;i++)
					  for(int j=1;j<=4;j++)if((bag[i][j].thing==0||bag[i][j].thing==box[x][y][1].thing)&&bag[i][j].num<64)
					  {
					  	bag[i][j].thing=box[x][y][1].thing,bag[i][j].num++;goto RIP2;
					  }
				}RIP2:;
			}
			if(aa=='2')
			{
				if(box[x][y][2].num==0)swap(box[x][y][2],bag[4][2]);
				else
				while(--box[x][y][2].num) 
				{
					for(int i=1;i<=4;i++)
					  for(int j=1;j<=4;j++)if((bag[i][j].thing==0||bag[i][j].thing==box[x][y][2].thing)&&bag[i][j].num<64)
					  {
					  	bag[i][j].thing=box[x][y][2].thing,bag[i][j].num++;goto RIP1;
					  }
				}RIP1:;
			}
			if(box[x][y][3].num<0)box[x][y][3].num=0;
			if(aa=='3')
			{
				if(box[x][y][3].num!=0)
				while(--box[x][y][3].num)
					for(int i=1;i<=4;i++)
					  for(int j=1;j<=4;j++)if((bag[i][j].thing==0||bag[i][j].thing==box[x][y][3].thing)&&bag[i][j].num<64)
					  {
					  	bag[i][j].thing=box[x][y][3].thing,bag[i][j].num++;
						goto RIP;
					  }
				RIP:;
			}
			if(aa=='r')return;
			cout<<"----烧炼----\n燃料:";
			setcolor(bk,BLOCK_COL[box[x][y][1].thing]);cout<<BLOCK[box[x][y][1].thing]<<box[x][y][1].num<<"\n";setcolor(bk,Black);
			cout<<"物品:";setcolor(bk,BLOCK_COL[box[x][y][2].thing]);cout<<BLOCK[box[x][y][2].thing]<<box[x][y][2].num<<"\n";setcolor(bk,Black);
			cout<<"烧制中:"<<box[x][y][4].num<<"%\n";setcolor(bk,Black);
			cout<<"结果:";setcolor(bk,BLOCK_COL[box[x][y][3].thing]);cout<<BLOCK[box[x][y][3].thing]<<box[x][y][3].num<<"\n";
			if(box[x][y][4].num==100)
			{
				box[x][y][4].num=0;
				box[x][y][2].num--;
				box[x][y][3].thing=((box[x][y][2].thing==6)?7:(box[x][y][2].thing==8)?20:(box[x][y][2].thing==9)?21:0);
				if(box[x][y][2].thing!=0)box[x][y][3].num++;
			}
			if(box[x][y][4].thing==0&&box[x][y][1].num!=0&&box[x][y][2].num!=0)
			{
				box[x][y][4].thing=hot[box[x][y][1].thing];
				box[x][y][1].num--;
			}
			Sleep(100);
			if(box[x][y][4].thing!=0&&box[x][y][2].num!=0)box[x][y][4].num++;
		}
	}
	if(R==16)
	{
		int nowi=0,nowj=0,SPACE=0,Rp=0,Rpx=0,Rpy=0,willjian=0,aa=0;
		while(1)
		{
		GOTO(0,0);
		setcolor(bk,Black);
		cout<<"Game Paused[请点击CapsLock大写锁定](点击r返回)\n";
		int Letter[12][12]={{},{' ','1','2','3','4'},{' ','q','w','e','r'},{' ','a','s','d','f'},{' ','z','x','c','v'},{},{' ','t','y','u','i','h','j','b','n','m','k'}};
		for(int i=2;i<=4;i++)
		{
			for(int j=1;j<=4;j++)cout<<"  "<<(char)Letter[i][j]<<"   ";puts("                            ");
			for(int j=1;j<=4;j++)if(nowj==j&&nowi==i)
		{
			setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Green);printf("%2d]",bag[i][j].num);setcolor(bk,Black);
		}
		else {cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Black);printf("%2d]",bag[i][j].num);}
			puts("                                \n                               ");
		}
		for(int i=1;i<=4;i++)cout<<"  "<<i<<"   ";puts("");
		for(int i=1;i<=4;i++)
		if(nowj==i&&nowi==1)
		{
			setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);cout<<BLOCK[bag[1][i].thing];setcolor(bk,Green);printf("%2d]",bag[1][i].num);setcolor(bk,Black);
		}
		else if(i!=now)
		{
			cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);
			cout<<BLOCK[bag[1][i].thing];setcolor(bk,Black);printf("%2d]",bag[1][i].num);
		}else
		{
			setcolor(bk,Red);cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);cout<<BLOCK[bag[1][i].thing];setcolor(bk,Red);printf("%2d]",bag[1][i].num);setcolor(bk,Black);
		}puts("                                \n                         ");
			GOTO(1,25);setcolor(bk,Black);cout<<"|---合-成---|";
			GOTO(2,25);cout<<"|";if(bag[6][1].num==0)cout<<" t |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][1].thing]);cout<<BLOCK[bag[6][1].thing];if(nowi!=6||nowj!=1)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][1].num);
			}setcolor(bk,Black);
			if(bag[6][2].num==0)cout<<" y |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][2].thing]);cout<<BLOCK[bag[6][2].thing];if(nowi!=6||nowj!=2)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][2].num);
			}setcolor(bk,Black);
			if(bag[6][3].num==0)cout<<" u |_  ";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][3].thing]);cout<<BLOCK[bag[6][3].thing];if(nowi!=6||nowj!=3)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][3].num);
			}setcolor(bk,Black);
			GOTO(3,25);cout<<"|";if(bag[6][4].num==0)cout<<" g |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][4].thing]);cout<<BLOCK[bag[6][4].thing];if(nowi!=6||nowj!=4)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][4].num);
			}setcolor(bk,Black);
			if(bag[6][5].num==0)cout<<" h |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][5].thing]);cout<<BLOCK[bag[6][5].thing];if(nowi!=6||nowj!=5)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][5].num);
			}setcolor(bk,Black);
			if(bag[6][6].num==0)cout<<" j | \\[";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][6].thing]);cout<<BLOCK[bag[6][6].thing];if(nowi!=6||nowj!=6)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][6].num);
			}setcolor(bk,Black);
			if(bag[6][10].num==0)cout<<" k ]";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][10].thing]);cout<<BLOCK[bag[6][10].thing];if(nowi!=6||nowj!=10)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][10].num);
			}setcolor(bk,Black);
			GOTO(4,25);cout<<"|";if(bag[6][7].num==0)cout<<" b |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][7].thing]);cout<<BLOCK[bag[6][7].thing];if(nowi!=6||nowj!=7)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][7].num);
			}setcolor(bk,Black);
			if(bag[6][8].num==0)cout<<" n |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][8].thing]);cout<<BLOCK[bag[6][8].thing];if(nowi!=6||nowj!=8)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][8].num);
			}setcolor(bk,Black);
			if(bag[6][9].num==0)cout<<" m |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][9].thing]);cout<<BLOCK[bag[6][9].thing];if(nowi!=6||nowj!=9)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][9].num);
			}
			Sleep(100);aa=getch();
			for(int i=1;i<=6;i++)
			   for(int j=1;j<=(i<=5?4:10);j++)
			   if(aa==Letter[i][j])
			   {
			   	if(SPACE)
			   	{
			   		if(bag[i][j].thing==Rp||bag[i][j].thing==0)
			   		{
			   			bag[i][j].thing=Rp;
			   			bag[i][j].num+=SPACE;SPACE=0;nowi=0;nowj=0;
					}
					else nowi=0,nowj=0;
				   }
			   		else if(nowi!=0&&nowj!=0)
					   {
					   	if(!(i!=6||j!=10))nowi=0;
					   	else
						   {
						   	
						   	if((i!=nowi||j!=nowj)&&bag[i][j].thing==bag[nowi][nowj].thing&&bag[i][j].num+bag[nowi][nowj].num<=64)bag[i][j].num+=bag[nowi][nowj].num,bag[nowi][nowj].num=0;
					   			else swap(bag[i][j],bag[nowi][nowj]);
					   		if(nowi==6&&nowj==10)bag[6][1].num-=willjian,bag[6][2].num-=willjian,bag[6][3].num-=willjian,bag[6][4].num-=willjian,bag[6][5].num-=willjian,bag[6][6].num-=willjian,bag[6][7].num-=willjian,bag[6][8].num-=willjian,bag[6][9].num-=willjian;
						   }
						   Clac();
					   	nowi=0;nowj=0;
					   }
					else 
			   		nowi=i,nowj=j;
			   }setcolor(bk,Black);
			if(aa==' '&&nowi&&bag[nowi][nowj].num>1&&!SPACE&&(nowi!=6||nowj!=10))
			{
				SPACE=bag[nowi][nowj].num-bag[nowi][nowj].num/2;Rp=bag[nowi][nowj].thing;bag[nowi][nowj].num=bag[nowi][nowj].num/2;
			nowi=0;nowj=0;}
			for(int i=1;i<=4;i++)
			   for(int j=1;j<=4;j++)
			if(aa=='r')
			{
				system("cls");
				return;
			}
			willjian=0;bag[6][10].num=0;
			if(CanHc2())
			{
				int Numlist[100];
				for(int i=1;i<=64;i++)Numlist[i]=1;
				Numlist[12]=2;Numlist[13]=2;Numlist[14]=4;
				int MIN=100;
				for(int i=1;i<=9;i++)if(bag[6][i].num!=0)MIN=min(MIN,bag[6][i].num);
				bag[6][10].num=Numlist[CanHc2()]*min(64/Numlist[CanHc2()],MIN);
				bag[6][10].thing=CanHc2();willjian=Numlist[CanHc2()]*min(64/Numlist[CanHc2()],MIN);
			}
		}
	}
}
void work(int R,int xx,int yy)
{
	system("cls"); boxlist[++tot1].x=xx;boxlist[tot1].y=yy;
	if(R==33&&bk==bk0)
	{
		cout<<"按住E睡觉";
		for(int i=1;i<=10;i++)
		{
			if(!DOWN('E'))return;
			Sleep(1000);
		}
		Time=0;
	}
	if(R==17)
	{
		int nowi=0,nowj=0,SPACE=0,Rp=0,Rpx=0,Rpy=0,willjian=0;for(int i=1;i<=8;i++)swap(box[xx][yy][i],bag[5+i/5][i-i/5*4]);
		while(1)
		{
		GOTO(0,0);
		setcolor(bk,Black);
		cout<<"箱子(点击Esc返回)\n";
		int Letter[12][12]={{},{' ','1','2','3','4'},{' ','Q','W','E','R'},{' ','A','S','D','F'},{' ','Z','X','C','V'},{' ','T','Y','U','I'},{' ','G','H','J','K'}};
		
		for(int i=5;i<=6;i++)
		{
			for(int j=1;j<=4;j++)cout<<"  "<<(char)Letter[i][j]<<"   ";puts("         ");
			for(int j=1;j<=4;j++)
		if(nowj==j&&nowi==i)
		{
			setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Green);printf("%2d]",bag[i][j].num);setcolor(bk,Black);
		}
		else {cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Black);printf("%2d]",bag[i][j].num);}
		puts("         ");}cout<<"\n\n";
		for(int i=2;i<=4;i++)
		{
			for(int j=1;j<=4;j++)cout<<"  "<<(char)Letter[i][j]<<"   ";puts("                            ");
			for(int j=1;j<=4;j++)if(nowj==j&&nowi==i)
		{
			setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Green);printf("%2d]",bag[i][j].num);setcolor(bk,Black);
		}
		else {cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Black);printf("%2d]",bag[i][j].num);}
			puts("                                \n                               ");
		}
		for(int i=1;i<=4;i++)cout<<"  "<<i<<"   ";puts("");
		for(int i=1;i<=4;i++)
		if(nowj==i&&nowi==1)
		{
			setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);cout<<BLOCK[bag[1][i].thing];setcolor(bk,Green);printf("%2d]",bag[1][i].num);setcolor(bk,Black);
		}
		else if(i!=now)
		{
			cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);
			cout<<BLOCK[bag[1][i].thing];setcolor(bk,Black);printf("%2d]",bag[1][i].num);
		}else
		{
			setcolor(bk,Red);cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);cout<<BLOCK[bag[1][i].thing];setcolor(bk,Red);printf("%2d]",bag[1][i].num);setcolor(bk,Black);
		}puts("                                \n                         ");
			Sleep(100);
			for(int i=1;i<=6;i++)
			   for(int j=1;j<=4;j++)
			   if(DOWN(Letter[i][j]))
			   {
			   	if(SPACE)
			   	{
			   		if(bag[i][j].thing==Rp||bag[i][j].thing==0)
			   		{
			   			bag[i][j].thing=Rp;
			   			bag[i][j].num+=SPACE;SPACE=0;nowi=0;nowj=0;
					}
					else nowi=0,nowj=0;
				   }
			   		else if(nowi!=0&&nowj!=0)
					   {
					   	if(!(i!=6||j!=10))nowi=0;
					   	else
						   {
						   	
						   	if((i!=nowi||j!=nowj)&&bag[i][j].thing==bag[nowi][nowj].thing&&bag[i][j].num+bag[nowi][nowj].num<=64)bag[i][j].num+=bag[nowi][nowj].num,bag[nowi][nowj].num=0;
					   			else swap(bag[i][j],bag[nowi][nowj]);
					   		//if(nowi==6&&nowj==10)bag[6][1].num-=willjian,bag[6][2].num-=willjian,bag[6][3].num-=willjian,bag[6][4].num-=willjian,bag[6][5].num-=willjian,bag[6][6].num-=willjian,bag[6][7].num-=willjian,bag[6][8].num-=willjian,bag[6][9].num-=willjian;
						   }
						   Clac();
					   	nowi=0;nowj=0;
					   }
					else 
			   		nowi=i,nowj=j;
			   }setcolor(bk,Black);
			if(DOWN(VK_SPACE)&&nowi&&bag[nowi][nowj].num>1&&!SPACE&&(nowi!=6||nowj!=10))
			{
				SPACE=bag[nowi][nowj].num-bag[nowi][nowj].num/2;Rp=bag[nowi][nowj].thing;bag[nowi][nowj].num=bag[nowi][nowj].num/2;
			nowi=0;nowj=0;}
			for(int i=1;i<=4;i++)
			   for(int j=1;j<=4;j++)
			if(DOWN(VK_ESCAPE))
			{
				system("cls");for(int i=1;i<=8;i++)swap(box[xx][yy][i],bag[5+i/5][i-i/5*4]);
				return;
			}
		}
	}
	if(R==25)
	{
		int hot[64]={0};
		hot[4]=2;hot[12]=1;hot[11]=4;
		if(box[x][y][1].num==0&&(bag[4][1].thing==4||bag[4][1].thing==12||bag[4][1].thing==11))swap(box[x][y][1],bag[4][1]);
		if(box[x][y][2].num==0&&(bag[4][2].thing==6||bag[4][2].thing==8||bag[4][2].thing==9))swap(box[x][y][2],bag[4][2]);
		while(1)
		{
			GOTO(0,0);Clac();
			setcolor(bk,Black);
			cout<<"Game Paused(点击Esc返回,1燃料,2物品,3结果)\n";
			for(int i=1;i<=3;i++)if(box[x][y][i].num==0)box[x][y][i].thing=0;
			if(DOWN('1'))
			{
				if(box[x][y][1].num==0)swap(box[x][y][1],bag[4][1]);
				else 
				while(--box[x][y][1].num) 
				{
					for(int i=1;i<=4;i++)
					  for(int j=1;j<=4;j++)if((bag[i][j].thing==0||bag[i][j].thing==box[x][y][1].thing)&&bag[i][j].num<64)
					  {
					  	bag[i][j].thing=box[x][y][1].thing,bag[i][j].num++;goto RIP2;
					  }
				}RIP2:;
			}
			if(DOWN('2'))
			{
				if(box[x][y][2].num==0)swap(box[x][y][2],bag[4][2]);
				else
				while(--box[x][y][2].num) 
				{
					for(int i=1;i<=4;i++)
					  for(int j=1;j<=4;j++)if((bag[i][j].thing==0||bag[i][j].thing==box[x][y][2].thing)&&bag[i][j].num<64)
					  {
					  	bag[i][j].thing=box[x][y][2].thing,bag[i][j].num++;goto RIP1;
					  }
				}RIP1:;
			}
			if(DOWN('3'))
			{
				if(box[x][y][3].num<=0)box[x][y][3].num=0;
				while(--box[x][y][3].num)
					for(int i=1;i<=4;i++)
					  for(int j=1;j<=4;j++)if((bag[i][j].thing==0||bag[i][j].thing==box[x][y][3].thing)&&bag[i][j].num<64)
					  {
					  	bag[i][j].thing=box[x][y][3].thing,bag[i][j].num++;
						goto RIP;
					  }
				RIP:;
			}
			if(DOWN(VK_ESCAPE))return;
			cout<<"----烧炼----\n燃料:";
			setcolor(bk,BLOCK_COL[box[x][y][1].thing]);cout<<BLOCK[box[x][y][1].thing]<<box[x][y][1].num<<"\n";setcolor(bk,Black);
			cout<<"物品:";setcolor(bk,BLOCK_COL[box[x][y][2].thing]);cout<<BLOCK[box[x][y][2].thing]<<box[x][y][2].num<<"\n";setcolor(bk,Black);
			cout<<"烧制中:"<<box[x][y][4].num<<"%\n";setcolor(bk,Black);
			cout<<"结果:";setcolor(bk,BLOCK_COL[box[x][y][3].thing]);cout<<BLOCK[box[x][y][3].thing]<<box[x][y][3].num<<"\n";
			if(box[x][y][4].num==100)
			{
				box[x][y][4].num=0;
				box[x][y][2].num--;
				box[x][y][3].thing=((box[x][y][2].thing==6)?7:(box[x][y][2].thing==8)?20:(box[x][y][2].thing==9)?21:0);
				if(box[x][y][2].thing!=0)box[x][y][3].num++;
			}
			if(box[x][y][4].thing==0&&box[x][y][1].num!=0&&box[x][y][2].num!=0)
			{
				box[x][y][4].thing=hot[box[x][y][1].thing];
				box[x][y][1].num--;
			}
			Sleep(100);
			if(box[x][y][4].thing!=0&&box[x][y][2].num!=0)box[x][y][4].num++;
		}
	}
	if(R==16)
	{
		int nowi=0,nowj=0,SPACE=0,Rp=0,Rpx=0,Rpy=0,willjian=0;
		while(1)
		{
		GOTO(0,0);
		setcolor(bk,Black);
		cout<<"Game Paused(点击Esc返回)\n";
		int Letter[12][12]={{},{' ','1','2','3','4'},{' ','Q','W','E','R'},{' ','A','S','D','F'},{' ','Z','X','C','V'},{},{' ',VK_NUMPAD7,VK_NUMPAD8,VK_NUMPAD9,VK_NUMPAD4,VK_NUMPAD5,VK_NUMPAD6,VK_NUMPAD1,VK_NUMPAD2,VK_NUMPAD3,VK_ADD}};
		for(int i=2;i<=4;i++)
		{
			for(int j=1;j<=4;j++)cout<<"  "<<(char)Letter[i][j]<<"   ";puts("                            ");
			for(int j=1;j<=4;j++)if(nowj==j&&nowi==i)
		{
			setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Green);printf("%2d]",bag[i][j].num);setcolor(bk,Black);
		}
		else {cout<<"[";setcolor(bk,BLOCK_COL[bag[i][j].thing]);cout<<BLOCK[bag[i][j].thing];setcolor(bk,Black);printf("%2d]",bag[i][j].num);}
			puts("                                \n                               ");
		}
		for(int i=1;i<=4;i++)cout<<"  "<<i<<"   ";puts("");
		for(int i=1;i<=4;i++)
		if(nowj==i&&nowi==1)
		{
			setcolor(bk,Green);cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);cout<<BLOCK[bag[1][i].thing];setcolor(bk,Green);printf("%2d]",bag[1][i].num);setcolor(bk,Black);
		}
		else if(i!=now)
		{
			cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);
			cout<<BLOCK[bag[1][i].thing];setcolor(bk,Black);printf("%2d]",bag[1][i].num);
		}else
		{
			setcolor(bk,Red);cout<<"[";setcolor(bk,BLOCK_COL[bag[1][i].thing]);cout<<BLOCK[bag[1][i].thing];setcolor(bk,Red);printf("%2d]",bag[1][i].num);setcolor(bk,Black);
		}puts("                                \n                         ");
			GOTO(1,25);setcolor(bk,Black);cout<<"|---合-成---|";
			GOTO(2,25);cout<<"|";if(bag[6][1].num==0)cout<<"N7 |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][1].thing]);cout<<BLOCK[bag[6][1].thing];if(nowi!=6||nowj!=1)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][1].num);
			}setcolor(bk,Black);
			if(bag[6][2].num==0)cout<<"N8 |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][2].thing]);cout<<BLOCK[bag[6][2].thing];if(nowi!=6||nowj!=2)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][2].num);
			}setcolor(bk,Black);
			if(bag[6][3].num==0)cout<<"N9 |_  ";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][3].thing]);cout<<BLOCK[bag[6][3].thing];if(nowi!=6||nowj!=3)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][3].num);
			}setcolor(bk,Black);
			GOTO(3,25);cout<<"|";if(bag[6][4].num==0)cout<<"N4 |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][4].thing]);cout<<BLOCK[bag[6][4].thing];if(nowi!=6||nowj!=4)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][4].num);
			}setcolor(bk,Black);
			if(bag[6][5].num==0)cout<<"N5 |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][5].thing]);cout<<BLOCK[bag[6][5].thing];if(nowi!=6||nowj!=5)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][5].num);
			}setcolor(bk,Black);
			if(bag[6][6].num==0)cout<<"N6 | \\[";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][6].thing]);cout<<BLOCK[bag[6][6].thing];if(nowi!=6||nowj!=6)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][6].num);
			}setcolor(bk,Black);
			if(bag[6][10].num==0)cout<<" + ]";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][10].thing]);cout<<BLOCK[bag[6][10].thing];if(nowi!=6||nowj!=10)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][10].num);
			}setcolor(bk,Black);
			GOTO(4,25);cout<<"|";if(bag[6][7].num==0)cout<<"N1 |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][7].thing]);cout<<BLOCK[bag[6][7].thing];if(nowi!=6||nowj!=7)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][7].num);
			}setcolor(bk,Black);
			if(bag[6][8].num==0)cout<<"N2 |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][8].thing]);cout<<BLOCK[bag[6][8].thing];if(nowi!=6||nowj!=8)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][8].num);
			}setcolor(bk,Black);
			if(bag[6][9].num==0)cout<<"N3 |";
			else
			{
				setcolor(bk,BLOCK_COL[bag[6][9].thing]);cout<<BLOCK[bag[6][9].thing];if(nowi!=6||nowj!=9)setcolor(bk,Black);else setcolor(bk,Green);printf("%2d",bag[6][9].num);
			}
			Sleep(100);
			for(int i=1;i<=6;i++)
			   for(int j=1;j<=(i<=5?4:10);j++)
			   if(DOWN(Letter[i][j]))
			   {
			   	if(SPACE)
			   	{
			   		if(bag[i][j].thing==Rp||bag[i][j].thing==0)
			   		{
			   			bag[i][j].thing=Rp;
			   			bag[i][j].num+=SPACE;SPACE=0;nowi=0;nowj=0;
					}
					else nowi=0,nowj=0;
				   }
			   		else if(nowi!=0&&nowj!=0)
					   {
					   	if(!(i!=6||j!=10))nowi=0;
					   	else
						   {
						   	
						   	if((i!=nowi||j!=nowj)&&bag[i][j].thing==bag[nowi][nowj].thing&&bag[i][j].num+bag[nowi][nowj].num<=64)bag[i][j].num+=bag[nowi][nowj].num,bag[nowi][nowj].num=0;
					   			else swap(bag[i][j],bag[nowi][nowj]);
					   		if(nowi==6&&nowj==10)bag[6][1].num-=willjian,bag[6][2].num-=willjian,bag[6][3].num-=willjian,bag[6][4].num-=willjian,bag[6][5].num-=willjian,bag[6][6].num-=willjian,bag[6][7].num-=willjian,bag[6][8].num-=willjian,bag[6][9].num-=willjian;
						   }
						   Clac();
					   	nowi=0;nowj=0;
					   }
					else 
			   		nowi=i,nowj=j;
			   }setcolor(bk,Black);
			if(DOWN(VK_SPACE)&&nowi&&bag[nowi][nowj].num>1&&!SPACE&&(nowi!=6||nowj!=10))
			{
				SPACE=bag[nowi][nowj].num-bag[nowi][nowj].num/2;Rp=bag[nowi][nowj].thing;bag[nowi][nowj].num=bag[nowi][nowj].num/2;
			nowi=0;nowj=0;}
			for(int i=1;i<=4;i++)
			   for(int j=1;j<=4;j++)
			if(DOWN(VK_ESCAPE))
			{
				system("cls");
				return;
			}
			willjian=0;bag[6][10].num=0;
			if(CanHc2())
			{
				int Numlist[100];
				for(int i=1;i<=64;i++)Numlist[i]=1;
				Numlist[12]=2;Numlist[13]=2;Numlist[14]=4;
				int MIN=100;
				for(int i=1;i<=9;i++)if(bag[6][i].num!=0)MIN=min(MIN,bag[6][i].num);
				bag[6][10].num=Numlist[CanHc2()]*min(64/Numlist[CanHc2()],MIN);
				bag[6][10].thing=CanHc2();willjian=Numlist[CanHc2()]*min(64/Numlist[CanHc2()],MIN);
			}
		}
	}
}
int Can(int X,int Y)
{
	for(int i=1;i<=64;i++)if(X==wor[i].x&&Y==wor[i].y&&!wor[i].Delete)return 0;
	if(block[X][Y]==0&&block[X+1][Y]==0)return 1;return 0;
}
int JS(int x,int y)
{
	for(int i=1;i<=64;i++)if((x==wor[i].x||x==wor[i].x+1)&&y==wor[i].y&&!wor[i].Delete)return i;
	return 0;
}
void attack(int Node)
{
	GOTO(0,0);
	int la= wor[Node].heal;
	if(Attack>0)
	{
		return;
	}
	if(bag[1][now].thing==26)
	{
		wor[Node].heal--;
		if(rand()%2==0)wor[Node].heal--;
	}
	else if(bag[1][now].thing==27)
	{
		wor[Node].heal-=2;
		if(rand()%2==0)wor[Node].heal--;
	}
	else if(bag[1][now].thing==28)
	{
		wor[Node].heal-=3;
		if(rand()%3==0)wor[Node].heal-=3;
	}
	else if(bag[1][now].thing==29)
	{
		wor[Node].heal-=3;
		if(rand()%4==0)wor[Node].heal-=2;
	}
	else if(bag[1][now].thing==30)
	{
		wor[Node].heal-=5;
		if(rand()%4==0)wor[Node].heal-=5;
	}
	else wor[Node].heal-=rand()%2==0;Attack=15;
	if(bag[1][now].num>0)
	{
		int Rap=1;
		if(bag[1][now].thing==26)Rap=4;if(bag[1][now].thing==27)Rap=10;if(bag[1][now].thing==28)Rap=16;if(bag[1][now].thing==29)Rap=5;if(bag[1][now].thing==30)Rap=40;
		if(rand()%Rap==0)bag[1][now].nj--;GOTO(0,0);cout<<"耐久:"<<bag[1][now].nj;if(bag[1][now].nj==0)bag[1][now].num=0;
	}
	GOTO(0,0);setcolor(bk,1);ATTACK[Node]=la-wor[Node].heal;
}
void Input()
{
	if(DOWN('L'))putcd();
	for(int i='1';i<='4';i++)
	if(DOWN(i))now=i-'0';
	if(!DOWN(VK_SHIFT))
	{
		if(DOWN('E')&&(bag[1][now].thing==31||bag[1][now].thing==32)&&Eat<10)
		{
			for(int i=1;i<=30;i++)
			{
				Clac();
				Sleep(100);
				if(!DOWN('R'))break;
			}
			Eat++;bag[1][now].num--;
		}else if(DOWN('E'))Bag();
		else if(DOWN('D')&&Can(x,y-1))y--;
		else if(DOWN('A')&&Can(x,y+1))y++;
		else if(DOWN('D')&&block[x+1][y-1]!=0)dig(block[x+1][y-1],x+1,y-1);
		else if(DOWN('D')&&block[x][y-1]!=0)dig(block[x][y-1],x,y-1);
		else if(DOWN('A')&&block[x+1][y+1]!=0)dig(block[x+1][y+1],x+1,y+1);
		else if(DOWN('A')&&block[x][y+1]!=0)dig(block[x][y+1],x,y+1);
		else if(DOWN('W')&&block[x+2][y]!=0)dig(block[x+2][y],x+2,y);
		else if(DOWN('S')&&block[x-1][y]!=0)dig(block[x-1][y],x-1,y);
		else if(DOWN('D')&&JS(x,y-1))attack(JS(x,y-1));
		else if(DOWN('A')&&JS(x,y-1))attack(JS(x,y+1));
		else if(DOWN('D')&&JS(x+1,y-1))attack(JS(x+1,y-1));
		else if(DOWN('A')&&JS(x+1,y+1))attack(JS(x+1,y+1));
	}
	else
	{
		if(CANPUT[bag[1][now].thing])
		{
			if(DOWN('D')&&block[x+1][y-1]==0&&bag[1][now].num!=0)block[x+1][y-1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x+1,cdlist[tot].y=y-1;
			else if(DOWN('D')&&block[x][y-1]==0&&bag[1][now].num!=0)block[x][y-1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x,cdlist[tot].y=y-1;
			else if(DOWN('A')&&block[x+1][y+1]==0&&bag[1][now].num!=0)block[x+1][y+1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x+1,cdlist[tot].y=y+1;
			else if(DOWN('A')&&block[x][y+1]==0&&bag[1][now].num!=0)block[x][y+1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x+2,cdlist[tot].y=y+1;
			else if(DOWN('W')&&block[x+2][y]==0&&bag[1][now].num!=0)block[x+2][y]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x-1,cdlist[tot].y=y;
			else if(DOWN('S')&&block[x-1][y]==0&&bag[1][now].num!=0)block[x-1][y]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x-1,cdlist[tot].y=y;
			else if(DOWN('E')&&block[x+2][y-1]==0&&bag[1][now].num!=0)block[x+2][y-1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x+2,cdlist[tot].y=y-1;
			else if(DOWN('Q')&&block[x+2][y+1]==0&&bag[1][now].num!=0)block[x+2][y+1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x+2,cdlist[tot].y=y+1;
			else if(DOWN('Z')&&block[x-1][y-1]==0&&bag[1][now].num!=0)block[x-1][y-1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x-1,cdlist[tot].y=y-1;
			else if(DOWN('C')&&block[x-1][y+1]==0&&bag[1][now].num!=0)block[x-1][y+1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x-1,cdlist[tot].y=y+1;
		}
		else if(DOWN('D')&&(block[x+1][y-1]==33||block[x+1][y-1]==17||block[x+1][y-1]==16||block[x+1][y-1]==25))work(block[x+1][y-1],x+1,y-1);
		else if(DOWN('D')&&(block[x][y-1]==33||block[x][y-1]==17||block[x][y-1]==16||block[x][y-1]==25))work(block[x][y-1],x,y-1);
		else if(DOWN('A')&&(block[x+1][y+1]==33||block[x+1][y+1]==17||block[x+1][y+1]==16||block[x+1][y+1]==25))work(block[x+1][y+1],x+1,y+1);
		else if(DOWN('A')&&(block[x][y+1]==33||block[x][y+1]==17||block[x][y+1]==16||block[x][y+1]==25))work(block[x][y+1],x,y+1);
		else if(DOWN('W')&&(block[x+2][y]==33||block[x+2][y]==17||block[x+2][y]==16||block[x+2][y]==25))work(block[x+2][y],x+2,y);
		else if(DOWN('S')&&(block[x-1][y]==33||block[x-1][y]==17||block[x-1][y]==16||block[x-1][y]==25))work(block[x-1][y],x-1,y);
		
	}
	if(DOWN(VK_SPACE)&&block[x+2][y]==0&&block[x-1][y]!=0)UPDOWN_SPEED=1;
	if(DOWN(VK_OEM_2))
	{
		GOTO(9,0);
		cout<<"Game Paused";
		GOTO(10,0);
		cout<<"Input:                 ";
		GOTO(10,6);ShowCursor();
		string str;cin>>str;
		if(op>1)
		{
			if(str=="/time")
			{string num;
				cin>>num;
				Time=toint(num);
			}
			if(str=="/tp")
			{string num;
				cin>>num;
				x=toint(num);cin>>num;y=toint(num);if(x==0)x=Dpx[y]+1;
			}
			if(str=="/health")
			{string num;
				cin>>num;
				Health=toint(num);
			}
			if(str=="/summon")
			{
				string num;int X,Y,Z;
				cin>>num;
				if(num[0]=='~')
				{
					if(num[1]=='+')
					X=x+toint(num);
					else if(num[1]=='-')X=x-toint(num);
				}
				else X=toint(num);
				cin>>num;
				if(num[0]=='~')
				{
					if(num[1]=='+')
					Y=y+toint(num);
					else if(num[1]=='-')Y=y-toint(num);
				}
				else Y=toint(num);
				cin>>num;
				Z=toint(num);//cout<<X<<","<<Y<<":"<<Z; 
				for(int i=1;i<=64;i++)
				if(wor[i].Delete)
				{
					wor[i].Delete=0;
					wor[i].x=X;
					wor[i].y=Y;
					wor[i].heal=10;
					wor[i].node=Z;return;
				}
			}
			if(str=="/set")
			{
				string num;int X,Y,Z;
				cin>>num;
				if(num[0]=='~')
				{
					if(num[1]=='+')
					X=x+toint(num);
					else if(num[1]=='-')X=x-toint(num);
				}
				else X=toint(num);
				cin>>num;
				if(num[0]=='~')
				{
					if(num[1]=='+')
					Y=y+toint(num);
					else if(num[1]=='-')Y=y-toint(num);
				}
				else Y=toint(num);
				cin>>num;
				Z=toint(num);
				block[X][Y]=Z;
			}
			if(str=="/give")
			{
				string num;
				cin>>num;
				for(int i=1;i<=4;i++)
				  for(int j=1;j<=4;j++)if((bag[i][j].thing==0||bag[i][j].thing==toint(num))&&bag[i][j].num<1)
				  {
				  	bag[i][j].thing=toint(num),bag[i][j].num+=64;return;
				  }
			}
		}system("cls");
	}
	HideCursor();
}
int SHIFT=0;
void InputE()
{
	if(kbhit())
	{
		int aa=getch();
	if(aa=='l')
	putcd();
		for(int i='1';i<='4';i++)
	if(aa==i)now=i-'0';
		if(aa=='e'&&(bag[1][now].thing==31||bag[1][now].thing==32)&&Eat<10)
		{
			for(int i=1;i<=30;i++)
			{
				Clac();
				Sleep(100);
			}
			Eat++;bag[1][now].num--;
		}else if(aa=='e')BagE();
		else if(aa=='d'&&Can(x,y-1))y--;
		else if(aa=='a'&&Can(x,y+1))y++;
		else if(aa=='d'&&block[x+1][y-1]!=0)digE(block[x+1][y-1],x+1,y-1);
		else if(aa=='d'&&block[x][y-1]!=0)digE(block[x][y-1],x,y-1);
		else if(aa=='a'&&block[x+1][y+1]!=0)digE(block[x+1][y+1],x+1,y+1);
		else if(aa=='a'&&block[x][y+1]!=0)digE(block[x][y+1],x,y+1);
		else if(aa=='w'&&block[x+2][y]!=0)digE(block[x+2][y],x+2,y);
		else if(aa=='s'&&block[x-1][y]!=0)digE(block[x-1][y],x-1,y);
		else if(aa=='d'&&JS(x,y-1))attack(JS(x,y-1));
		else if(aa=='a'&&JS(x,y-1))attack(JS(x,y+1));
		else if(aa=='d'&&JS(x+1,y-1))attack(JS(x+1,y-1));
		else if(aa=='a'&&JS(x+1,y+1))attack(JS(x+1,y+1));
		if(CANPUT[bag[1][now].thing])
		{
			if(aa=='D'&&block[x+1][y-1]==0&&bag[1][now].num!=0)block[x+1][y-1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x+1,cdlist[tot].y=y-1;
			else if(aa=='D'&&block[x][y-1]==0&&bag[1][now].num!=0)block[x][y-1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x,cdlist[tot].y=y-1;
			else if(aa=='A'&&block[x+1][y+1]==0&&bag[1][now].num!=0)block[x+1][y+1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x+1,cdlist[tot].y=y+1;
			else if(aa=='A'&&block[x][y+1]==0&&bag[1][now].num!=0)block[x][y+1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x+2,cdlist[tot].y=y+1;
			else if(aa=='W'&&block[x+2][y]==0&&bag[1][now].num!=0)block[x+2][y]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x-1,cdlist[tot].y=y;
			else if(aa=='S'&&block[x-1][y]==0&&bag[1][now].num!=0)block[x-1][y]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x-1,cdlist[tot].y=y;
			else if(aa=='E'&&block[x+2][y-1]==0&&bag[1][now].num!=0)block[x+2][y-1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x+2,cdlist[tot].y=y-1;
			else if(aa=='Q'&&block[x+2][y+1]==0&&bag[1][now].num!=0)block[x+2][y+1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x+2,cdlist[tot].y=y+1;
			else if(aa=='Z'&&block[x-1][y-1]==0&&bag[1][now].num!=0)block[x-1][y-1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x-1,cdlist[tot].y=y-1;
			else if(aa=='C'&&block[x-1][y+1]==0&&bag[1][now].num!=0)block[x-1][y+1]=bag[1][now].thing,bag[1][now].num--,cdlist[++tot].x=x-1,cdlist[tot].y=y+1;
		}
		else if(aa=='D'&&(block[x+1][y-1]==33||block[x+1][y-1]==17||block[x+1][y-1]==16||block[x+1][y-1]==25))workE(block[x+1][y-1],x+1,y-1);
		else if(aa=='D'&&(block[x][y-1]==33||block[x][y-1]==17||block[x][y-1]==16||block[x][y-1]==25))workE(block[x][y-1],x,y-1);
		else if(aa=='A'&&(block[x+1][y+1]==33||block[x+1][y+1]==17||block[x+1][y+1]==16||block[x+1][y+1]==25))workE(block[x+1][y+1],x+1,y+1);
		else if(aa=='A'&&(block[x][y+1]==33||block[x][y+1]==17||block[x][y+1]==16||block[x][y+1]==25))workE(block[x][y+1],x,y+1);
		else if(aa=='W'&&(block[x+2][y]==33||block[x+2][y]==17||block[x+2][y]==16||block[x+2][y]==25))workE(block[x+2][y],x+2,y);
		else if(aa=='S'&&(block[x-1][y]==33||block[x-1][y]==17||block[x-1][y]==16||block[x-1][y]==25))workE(block[x-1][y],x-1,y);
		if(aa==' '&&block[x+2][y]==0&&block[x-1][y]!=0)UPDOWN_SPEED=1;
	}
 } 
int Min,Minx,Miny,vis[258][1029],Rap;
void AI(int X,int Y,int k,int mx,int my)
{
	//cout<<X<<","<<Y<<endl;
	Rap++;
	if(k>=Min||vis[X][Y]||abs(X-x)+abs(Y-y)>=12)return;
	if(X<1||Y<1||X>200||Y>1000)return;
	vis[X][Y]=1;
	if(X==x&&Y==y)
	{
		Min=k;
		Minx=mx,Miny=my;
		return;
	}
	if(block[X-1][Y]==0&&!vis[X-1][Y])AI(X-1,Y,k+1,mx,my);
	else
	{
		if(Can(X,Y+1)&&!vis[X][Y+1])AI(X,Y+1,k+1,k==0?0:mx,k==0?1:my);
		if(Can(X,Y-1)&&!vis[X][Y-1])AI(X,Y-1,k+1,k==0?0:mx,k==0?-1:my);
		if(Can(X+1,Y+1)&&!vis[X+1][Y+1])AI(X+1,Y+1,k+1,k==0?1:mx,k==0?1:my);
		if(Can(X+1,Y-1)&&!vis[X+1][Y-1])AI(X+1,Y-1,k+1,k==0?1:mx,k==0?-1:my);
	}
	vis[X][Y]=0;	
}
void Clac()
{
	Time++;int cc=0;
	for(int i=x-10;i<=x+10;i++)
	  for(int j=y-10;j<=y+10;j++)
	  if(block[i][j]==47&&block[i+3][j]==47&&x==i+1&&y==j)cc=1;
	if(cc)Rape++;
	else Rape=0;
	if(Rape)
	{
		if(Rape<10)
	{
		system("cls");Sleep(100);
	}
	else
	{
		Rape=0;
		if(y<900)
		{
			YLY=y;
			y=y/10+900;
			x=Dpx[y]+1;
			block[x-1][y-1]=47;block[x+2][y-1]=47;
		}
		else
		{
			y=YLY;
			x=Dpx[y]+1;
		}
	}
	}
	if(Eat>8&&Health<10)
	{
		int Rp=rand()%20==0;
		if(Rp)
		Health++,Eat-=rand()%2==0;
	}
	if(Time%DayLong>=DayLong*7/10)bk=bk3;
	else if(Time%DayLong>=DayLong*6/10)bk=bk2;
	else if(Time%DayLong>=DayLong*5/10)bk=bk1;
	else if(Time%DayLong<DayLong/2)bk=bk0;
	for(int i=x-5;i<=x+5;i++)
		  for(int j=y-15;j<=y+15;j++)if(Can(i,j)&&(block[i-1][j]==36||block[i][j-1]==36||block[i][j+1]==36)&&rand()%200==0)
		  {
		  	for(int o=1;o<=64;o++)
				if(wor[o].Delete)
				{
					wor[o].Delete=0;
					wor[o].x=i;
					wor[o].y=j;
					wor[o].heal=5;
					wor[o].node=2;break;
				}
		  }
	if(bk==bk3||bk==bk2)
	{
		for(int i=x-30;i<=x+30;i++)
		  for(int j=y-30;j<=y+30;j++)
		  if(Can(i,j)&&block[i-1][j]!=0&&abs(i-x)+abs(j-y)>12&&rand()%200==0)
		  {
		  	for(int o=1;o<=64;o++)
				if(wor[o].Delete)
				{
					wor[o].Delete=0;
					wor[o].x=i;
					wor[o].y=j;
					wor[o].heal=10;
					wor[o].node=0;break;
				}
		  }
		  else if(Can(i,j)&&block[i-1][j]!=0&&abs(i-x)+abs(j-y)>12&&rand()%300==0) 
		  {
		  	for(int o=1;o<=64;o++)
				if(wor[o].Delete)
				{
					wor[o].Delete=0;
					wor[o].x=i;
					wor[o].y=j;
					wor[o].heal=10;
					wor[o].node=1;break;
				}
		  }
	}
	for(int i=x-10;i<=x+10;i++)
		for(int j=y-10;j<=y+10;j++)if(block[i][j]==42||block[i][j]==38||block[i][j]==39||block[i][j]==40||block[i][j]==44||block[i][j]==46||block[i][j]==45)block[i][j]=0;
	for(int i=x-10;i<=x+10;i++)
		for(int j=y-10;j<=y+10;j++)
		if(i>0&&j>0)
		{
			if(j>900&&(block[i][j]==37))block[i][j]=0;
			if(block[i][j]==37||block[i][j]==38||block[i][j]==39||block[i][j]==40||block[i][j]==42)
			{
				if(!block[i-1][j]||block[i-1][j]==42)block[i-1][j]=42;
				else
				{
				if(!block[i][j+1]&&block[i][j]!=42)block[i][j+1]=block[i][j]+1;	
				if(!block[i][j-1]&&block[i][j]!=42)block[i][j-1]=block[i][j]+1;
				}
			}
			if(block[i][j]==43||block[i][j]==44||block[i][j]==46)
			{
				if(!block[i-1][j]||block[i-1][j]==46)block[i-1][j]=42;
				else
				{
				if(!block[i][j+1]&&block[i][j]!=46)block[i][j+1]=block[i][j]+1;	
				if(!block[i][j-1]&&block[i][j]!=46)block[i][j-1]=block[i][j]+1;
				}
			}
			if(block[i][j]==43&&(block[i+1][j]>=37&&block[i+1][j]<=42||block[i][j-1]>=37&&block[i][j-1]<=42||block[i][j+1]>=37&&block[i][j+1]<=42))block[i][j]=47;
			if(block[i+1][j]>=43&&block[i+1][j]<=46&&(block[i+1][j]>=37&&block[i+1][j]<=42||block[i][j-1]>=37&&block[i][j-1]<=42||block[i][j+1]>=37&&block[i][j+1]<=42))block[i][j]=5;
		}
	for(int i=1;i<=64;i++)
	if(wor[i].heal<=0&&wor[i].Delete==0)
	{
		int GIVET=0,RP=1;
		if(wor[i].node==0)GIVET=rand()%2==0?31:rand()%20==0?20:0;
		if(wor[i].node==1)GIVET=rand()%2==0?47:0;
		if(wor[i].node==2)GIVET=rand()%2==0?51:0;
			for(int T=1;T<=4&&RP;T++)
			  for(int j=1;j<=4;j++)if((bag[T][j].thing==0||bag[T][j].thing==GIVET)&&bag[T][j].num<64)
			  {
			  	bag[T][j].thing=GIVET,bag[T][j].num++;RP=0;break;
			  }
		wor[i].Delete=1;
	}
	else if(Time%5==0&&!wor[i].Delete)
	{
		if(block[wor[i].x-1][wor[i].y]==0)wor[i].x--;
		else if(wor[i].node==1&&abs(wor[i].x-x)+abs(wor[i].y-y)<=4)
		{
			for(int ii=wor[i].x-3;ii<=wor[i].x+3;ii++)
			  for(int jj=wor[i].y-3;jj<=wor[i].y+3;jj++)
			  if(abs(ii-wor[i].x)+abs(jj-wor[i].y)<=3)block[ii][jj]=0;wor[i].Delete=1;
			Health-=pow(2,5-abs(wor[i].x-x)-abs(wor[i].y-y));
		}
		else if(wor[i].node==2&&abs(wor[i].x-x)+abs(wor[i].y-y)<=5)
		{
			Health-=rand()%3==0;
		}
		else if(abs(wor[i].x-x)+abs(wor[i].y-y)>64)wor[i].Delete=1;
		else if(abs(wor[i].y-y)==1&&abs(wor[i].x-x)<=1)Health-=(Time%3==0);
		else if(abs(wor[i].x-x)+abs(wor[i].y-y)<20)
		{
			Min=12;Minx=0,Miny=0;memset(vis,0,sizeof(vis)); Rap=0;
			AI(wor[i].x,wor[i].y,0,0,0);
			if(Minx!=0||Miny!=0)
			wor[i].x+=Minx,wor[i].y+=Miny;
			else wor[i].y+=(rand()%4==0)*(rand()%3-1);//cout<<Minx<<","<<Miny<<":"<<Rap<<"          "<<endl;
		}
	}
	
	for(int i=1;i<=6;i++)
	  for(int j=1;j<=10;j++)if(bag[i][j].num<=0)bag[i][j].thing=0,bag[i][j].num=0;else if(bag[i][j].nj==0)bag[i][j].nj=10;
	  for(int i=1;i<=abs(UPDOWN_SPEED);i++)
	if(block[x-1][y]==0||UPDOWN_SPEED==1)
	{
		if(UPDOWN_SPEED>0)x++;else x--;
	}
	if(FN==0)
	{
		if(block[x-1][y]!=0)
		{
			Health-=(-UPDOWN_SPEED-2>0)?pow(2,-UPDOWN_SPEED-2):0;
			UPDOWN_SPEED=0;
		}
		else UPDOWN_SPEED--;
	}
	else {
	if(DOWN('S'))x--;else if(DOWN('W'))x++;}
	//DIE=0;
}
void BodyClac()
{
	if(Health<=0)DIE=1;
	if(DIE==0)
	{
		if(block[x+1][y]!=0)Health-=(rand()%10==0);
		if(block[x][y]==0)block[x][y]=-3;
		if(block[x+1][y]==0)block[x+1][y]=-1;
	}
	else
	{
		if(block[x][y]==0)block[x][y]=-3;
		if(block[x+1][y]==0)block[x+1][y]=-2;
		DEAD();
	}
}
void Start()
{
	cout<<"  "<<endl;
	while(1)
	{
		BodyClac();
		Output();
		if(!CHOOSERROR)Input();else InputE();
		Clac();
		Sleep(100);
	}
}
int main()
{
	readcd();
	srand(seed);
	cout<<"Welcome To INF MC(v1.1)\n";
	cout<<"1.超平坦\n";
	cout<<"2.普通\n";
	cout<<"3.兼容性问题(无法控制/乱码)处理\n";
	cout<<"4.帮助-https://www.luogu.com.cn/paste/umzg0c5a\n";
	if(PRINTERROR!=0)BLOCK[1]="▓",BLOCK[2]="▓",BLOCK[15]="▓",cout<<"已修复PrintERR的错误\n";
	if(CHOOSERROR!=0)cout<<"已修复ChooseERR的错误\n";
	int a=getch();
	if(a=='1')
	CreateWorld(1);
	else CreateWorld(2);
	if(a=='3')
	{
		system("cls");
		cout<<"ERROR解决:\n1.乱码->将开头的#define PRINTERROR中的0改为1\n2.操作失灵->将开头的#define CHOOSERROR中的0改为1(此操作将使你shift键操作改为r)\n";
		system("pause");
	}
	cout<<"您是否要选择作弊模式0/1(tp,summon,set等指令)?";if(getch()!='1')op=0;
	system("cls");
	Start();
}


2.

#include <iostream>
#include <conio.h>
#include <string>
#include <map>
#include <cmath>
#include <windows.h>
#include <time.h> 
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
using namespace std;
int fallspeed;
int jumpspeed = -3;
int gravity = 1;
int y = 400, x = 500;
int restartposy, restartposx, face, health = 1000, lasthealth = 1000, breath = 100, hungry = 1000, dienum;
bool attack, defense, hurt, mode;
struct TNT
{
	int y;
	int x;
	int time;
	bool issave;
};
struct BLOCK
{
	int color;
	string ch;
	string type;
};
struct MOB
{
	int fallspeed;
	int health;
	bool hurt;
	int y;
	int x;
	int attack;
	string shap;
	bool isenemy;
	int color;
	string name;
};
struct ARROW
{
	string shap;
	double y;
	double x;
	double fallspeed;
	double plusx;
};
TNT tnt[20];
string die;
ARROW arrow[100];
MOB mobs[50] = {
	{0,1000,0,0,0,100,"危",true,7,"危"},
	{0,10,0,0,0,10,"  ",true,7,"  "},
	{0,1000,0,0,0,100,"MM",false,7,"MM"},
	{0,100000,0,90,70,-100,"AC",true,7,"Accept"},
	{0,10000,0,90,70,500,"BO",true,7,"BOSS"},
	{0,100000,0,90,70,-1000,"AK",true,7,"AK"},
};
MOB mob[100] = {
	{0,1000,0,92,4,100,"WA",true,7,"Wrong Anwser"},
	{0,1000,0,92,4,100,"TL",true,7,"Time Limit Error"},
	{0,2000,0,92,4,300,"CE",true,7,"Compile Error"},
	{0,1000,0,45,9,100,"WA",true,7,"Wrong Anwser"},
	{0,100000,0,90,70,-100,"AC",true,7,"Accept"},
	{0,100000,0,90,70,-1000,"AK",true,7,"AK"},
	{0,10000,0,90,70,500,"UK",true,7,"Unknown Error"},
	{0,1000,0,92,3,0,"MM",false,7,"MM"},
	{0,1000,0,92,3,0,"MM",false,7,"MM"},
	{0,1000,0,90,15,0,"MM",false,7,"MM"},
	{0,1000,0,90,80,0,"MM",false,7,"MM"},
};
BLOCK block[32] = {
	{0,"  ","air"},//空气
	{6,"██","block"},//土块
	{8,"██","block"},//石头
	{2,"██","block"},//草方块
	{15,"██","block"},//雪块 
	{4,"██","block"},//岩浆块
	{14,"▓▓","fallblock"},//沙块 
	{8,"II","fallblock"},//铁砧
	{9,"██","water"},//水
	{9,"▇▇","water"},//水
	{9,"▆▆","water"},//水
	{9,"▅▅","water"},//水
	{9,"▄▄","water"},//水
	{9,"▃▃","water"},//水
	{9,"▂▂","water"},//水
	{9,"▁▁","water"},//水
	{12,"██","lava"},//岩浆
	{12,"▇▇","lava"},//岩浆
	{12,"▆▆","lava"},//岩浆
	{12,"▅▅","lava"},//岩浆
	{12,"▄▄","lava"},//岩浆
	{12,"▃▃","lava"},//岩浆
	{12,"▂▂","lava"},//岩浆
	{12,"▁▁","lava"},//岩浆  
	{12,"危","background"},//危
	{6,"██","background"},//木头
	{10,"▓▓","background"},//树叶 
	{15,"▓▓","background"},//带雪树叶
	{15,"▅▅","bomb"},//TNT爆炸 
	{12,"Ⅲ","TNT"},//TNT
	{7,"Ⅲ","TNT"},//TNT2
	{6,"∷","ladder"},//梯子
};
int board[1005][1005];
int setboard[1005][1005];
int bag[100];
int clear_buffer()
{
	while(kbhit())
	{
		if(getch() != EOF); 
		for(int i = 1; i <= 256; i++)
		{
			if(GetAsyncKeyState(i));
		}
	}
	return 0;
}
void color(int a)
{
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),a);
/*	1	深蓝色
	2	深绿色
	3	深青色 
	4	深红色
	5	深粉色
	i	黄色
	7	深白色
	8	灰色
	9	浅蓝色
	10	浅绿色 
	11	浅青色 
	12	浅红色 
	13	浅粉色 
	14	浅黄色 
	15	浅白色 
	背景
	1~15		黑色 
	16~31		深蓝色 
	32~47		深绿色
	48~63		深青色
	64~79		深红色
	'S'~95		深粉色
	96~111		深黄色
	112~127 	深白色
	128~143 	灰色
	144~159 	浅蓝色
	160~1'A' 	浅绿色
	176~191 	浅青色
	192~207 	浅红色
	208~223 	浅粉色
	224~239 	浅黄色
	240~255 	浅白色
*/
}
int init()//听说有人要我增加地图生成的注释,所以我就写了。 
{
	for(int j = 0; j < 100; j++)
	{
		bag[j] = 0;//这个...初始化背包 
	}
	for(int i = 0; i < 1000; i++)
	{
		for(int j = 0; j < 1000; j++)
		{
			board[i][j] = 0;//初始化地图 (我们的y是倒着来的) 
		}
	} 
	double lasty = rand() % 101 + 400;//lasty代表上一个我们选择的点的高度。 
	for(int i = 5; i < 1000; i += 5)//i每次加5,每隔5个点连一条线 
	{
		double y = rand() % 21 - 10 + lasty;//y代表这个点我们选择的高度,为了不出现太陡峭的山,我们只允许这个高度在刚才的点的高低10格内。 
		y = min(450.0, y);//这是最小高度,防止整个地图都在水里。 
		double high = lasty;//这个high是用来统计当前高度的,用double可以更加精确。
		int dirt = rand() % 5 + 2;//dirt代表这一列上泥土高度。 
		for(int j = i - 5; j < i; j++)
		{
			high += (y - lasty) / 5;//high每次增加差距的1/5。 
			for(int k = 999; k >= (int)high; k--)
			{
				if(k == (int)high)//如果是最高点 
				{
					setboard[k][j] = 3;//就用草地 
					if(high <= 350)//如果high比较高 
					{
						setboard[k][j] = 4;//就用雪地 
					}
				}
				else if(k - dirt <= (int)high)//泥土 
				{
					setboard[k][j] = 1;
				}
				else 
				{
					setboard[k][j] = 2;//石头 
				}
			}
		}
		lasty = y;//赋值 
	}
	//再来一边,填满最后几格 
	int dirt = rand() % 5 + 2;
	double high = lasty;
	for(int j = 995; j < 999; j++)
	{
		for(int k = 999; k >= (int)high; k--)
		{
			if(k == (int)high)
			{
				setboard[k][j] = 3;
				if(high <= 350)
				{
					setboard[k][j] = 4;
				}
			}
			else if(k - dirt <= (int)high)
			{
				setboard[k][j] = 1;
			}
			else 
			{
				setboard[k][j] = 2;
			}
		}
	}
	//填满水,这里默认把海平面高度设为410。 
	for(int i = 0; i < 1000; i++)
	{
		for(int j = 600; j >= 410; j--)
		{
			if(setboard[j][i] == 0)
			{
				setboard[j][i] = 8;
			}
		}
	}
	//沙子 
	for(int i = 0; i < 1000; i++)
	{
		bool a = 0;
		for(int j = 999; j >= 0; j--)
		{
			if(a && setboard[j][i] != 0  && setboard[j][i] != 8)
			{
				setboard[j][i] = 6;
				continue;
			}
			if(setboard[j][i] == 8)
			{
				continue;
			}
			if(setboard[j][i + 3] == 8)
			{
				a = true;
				setboard[j][i] = 6;
			}
			if(setboard[j][i + 2] == 8)
			{
				a = true;
				setboard[j][i] = 6;
			}
			if(setboard[j][i + 1] == 8)
			{
				a = true;
				setboard[j][i] = 6;
			}
			if(setboard[j][i - 1] == 8)
			{
				a = true;
				setboard[j][i] = 6;
			}
			if(setboard[j][i - 2] == 8)
			{
				a = true;
				setboard[j][i] = 6;
			}
			if(setboard[j][i - 3] == 8)
			{
				a = true;
				setboard[j][i] = 6;
			}
			if(setboard[j - 2][i] == 8)
			{
				a = true;
				setboard[j][i] = 6;
			}
			if(setboard[j - 1][i] == 8)
			{
				a = true;
				setboard[j][i] = 6;
			}
			if(setboard[j - 3][i] == 8)
			{
				a = true;
				setboard[j][i] = 6;
			}
			if(setboard[j - 4][i] == 8)
			{
				a = true;
				setboard[j][i] = 6;
			}
		}
	}
	//树 
	for(int i = 0; i < 1000; i++)
	{
		for(int j = 0; j < 1000; j++)
		{
			if(setboard[j][i] == 0 && block[setboard[j + 1][i]].type == "block")
			{
				if(rand() % 10 == 1)
				{
					setboard[j][i] = 25;
					setboard[j - 1][i] = 25;
					setboard[j - 2][i] = 25;
					setboard[j - 3][i] = 25;
					setboard[j - 3][i + 1] = 26;
					setboard[j - 3][i - 1] = 26;
					setboard[j - 4][i + 2] = 26; 
					setboard[j - 4][i + 1] = 26;
					setboard[j - 4][i] = 26;
					setboard[j - 4][i - 1] = 26;
					setboard[j - 4][i - 2] = 26;
					setboard[j - 5][i + 2] = 26;
					setboard[j - 5][i + 1] = 26;
					setboard[j - 5][i] = 26;
					setboard[j - 5][i - 1] = 26;
					setboard[j - 5][i - 2] = 26;
					setboard[j - 6][i + 1] = 26;
					setboard[j - 6][i] = 26;
					setboard[j - 6][i - 1] = 26;
					if(j <= 350)
					{
						setboard[j - 3][i + 1] = 27;
						setboard[j - 3][i - 1] = 27;
						setboard[j - 4][i + 2] = 27; 
						setboard[j - 4][i + 1] = 27;
						setboard[j - 4][i] = 27;
						setboard[j - 4][i - 1] = 27;
						setboard[j - 4][i - 2] = 27;
						setboard[j - 5][i + 2] = 27;
						setboard[j - 5][i + 1] = 27;
						setboard[j - 5][i] = 27;
						setboard[j - 5][i - 1] = 27;
						setboard[j - 5][i - 2] = 27;
						setboard[j - 6][i + 1] = 27;
						setboard[j - 6][i] = 27;
						setboard[j - 6][i - 1] = 27;
					}
				}
			}
		}
	} 
	//地洞 
	for(int j = 999; j >= 700; j--)
	{
		if(rand() % 20 == 1)
		{
			setboard[j - 3][2] = 0;
			setboard[j - 2][2] = 0; setboard[j - 2][3] = 0;
			setboard[j - 1][2] = 0; setboard[j - 1][3] = 0; setboard[j - 1][4] = 0;
			setboard[j][2] = 0; setboard[j][3] = 0; setboard[j][4] = 0; setboard[j][5] = 0;
			setboard[j + 1][2] = 0; setboard[j + 1][3] = 0; setboard[j + 1][4] = 0;
			setboard[j + 2][2] = 0; setboard[j + 2][3] = 0;
			setboard[j + 3][2] = 0;
		}
	}
	for(int i = 3; i < 997; i++)
	{
		for(int j = 996; j >= 500; j--)
		{
			if(block[setboard[j + 3][i]].type == "block" && block[setboard[j - 3][i]].type == "block" && setboard[j][i] == 0 && setboard[j + 1][i] == 0 && setboard[j + 2][i] == 0 && setboard[j - 1][i] == 0  && setboard[j - 2][i] == 0)
			{
				j += rand() % 5 - 2;
				j = max(3, j);
				j = min(996, j);
				if(rand() % 500 <= 499)
				{
					setboard[j - 3][i] = 0;
					setboard[j - 2][i - 1] = 0; setboard[j - 2][i] = 0; setboard[j - 2][i + 1] = 0;
					setboard[j - 1][i - 2] = 0; setboard[j - 1][i - 1] = 0; setboard[j - 1][i] = 0; setboard[j - 1][i + 1] = 0; setboard[j - 1][i + 2] = 0;
					setboard[j][i - 3] = 0; setboard[j][i - 2] = 0; setboard[j][i - 1] = 0; setboard[j][i] = 0; setboard[j][i + 1] = 0; setboard[j][i + 2] = 0; setboard[j][i + 3] = 0;
					setboard[j + 1][i - 2] = 0; setboard[j + 1][i - 1] = 0; setboard[j + 1][i] = 0; setboard[j + 1][i + 1] = 0; setboard[j + 1][i + 2] = 0;
					setboard[j + 2][i - 1] = 0; setboard[j + 2][i] = 0; setboard[j + 2][i + 1] = 0;
					setboard[j + 3][i] = 0;
					if(rand() % 20 == 1)
					{
						for(int k = 0; k < 100; k++)
						{
							if(mob[k].shap == "")
							{
								mob[k] = {0,1000,0,0,0,100,"SS",true,7,"僵尸"};
								mob[k].x = i;
								mob[k].y = j;
								break;
							}
						}
					}
				}
			}
			else if(block[setboard[j + 3][i]].type == "block" && block[setboard[j + 2][i]].type == "block" && block[setboard[j + 1][i]].type == "block" && block[setboard[j][i]].type == "block" && block[setboard[j - 1][i]].type == "block" && block[setboard[j - 2][i]].type == "block" && block[setboard[j - 3][i]].type == "block")
			{
				if(rand() % 500 == 1)
				{
					setboard[j - 3][i] = 0;
					setboard[j - 2][i - 1] = 0; setboard[j - 2][i] = 0; setboard[j - 2][i + 1] = 0;
					setboard[j - 1][i - 2] = 0; setboard[j - 1][i - 1] = 0; setboard[j - 1][i] = 0; setboard[j - 1][i + 1] = 0; setboard[j - 1][i + 2] = 0;
					setboard[j][i - 3] = 0; setboard[j][i - 2] = 0; setboard[j][i - 1] = 0; setboard[j][i] = 0; setboard[j][i + 1] = 0; setboard[j][i + 2] = 0; setboard[j][i + 3] = 0;
					setboard[j + 1][i - 2] = 0; setboard[j + 1][i - 1] = 0; setboard[j + 1][i] = 0; setboard[j + 1][i + 1] = 0; setboard[j + 1][i + 2] = 0;
					setboard[j + 2][i - 1] = 0; setboard[j + 2][i] = 0; setboard[j + 2][i + 1] = 0;
					setboard[j + 3][i] = 0;
				}
			}
		}
	}
	//出生点 
	bool a = false;
	for(int i = 400; i < 1000; i++)
	{
		for(int j = 0; j < 1000; j++)
		{
			if(setboard[j][i] == 0 && block[setboard[j + 1][i]].type == "block" && (setboard[j + 1][i] == 3 || setboard[j + 1][i] == 4))
			{
				restartposy = j;
				restartposx = i;
				y = j;
				x = i;
				a = true;
				break;
			}
		}
		if(a)
		{
			break;
		}
	}
	return 0;
}
int Arrowmove()
{
	for(int i = 0; i < 100; i++)
	{
		if(arrow[i].shap == "")
		{
			continue;
		}
		arrow[i].x += (int)arrow[i].plusx;
		arrow[i].plusx -= 0.1;
		for(int j = (int)arrow[j].y + 1; j <= (int)arrow[j].y + (int)arrow[j].fallspeed; j++)
		{
			if(block[board[j][(int)arrow[j].x]].type == "block" || block[board[j][(int)arrow[j].x]].type == "fallblock")
			{
				arrow[i].fallspeed = 0;
				return 0;
			}
		}
		arrow[i].y += arrow[i].fallspeed;
		arrow[i].fallspeed += 0.1;
		if(arrow[i].y > 999)
		{
			arrow[i].shap = "";
		}
		if(block[board[(int)arrow[i].y + 1][(int)arrow[i].x]].type == "block" || block[board[(int)arrow[i].y + 1][(int)arrow[i].x]].type == "fallblock")
		{
			arrow[i].shap = "";
		}
	}
	return 0;
}
int mobmove()
{
	for(int j = 0; j < 100; j++)
	{
		if(mob[j].shap == "")
		{
			continue;
		}
		mob[j].hurt = false;
		mob[j].color = 7;
		if(mob[j].health <= 0 || mob[j].y > 999)
		{
			mob[j].shap = "";
			mob[j].color = 7;
			continue;
		}
		if(block[board[mob[j].y][mob[j].x]].type == "lava")
		{
			mob[j].health -= 200;
			mob[j].hurt = true;
		}
		else if((board[mob[j].y + 1][mob[j].x] == 5) || ((mob[j].y == y || mob[j].y == y - 1) && (mob[j].x == x + 1 || mob[j].x == x || mob[j].x == x - 1) && KEY_DOWN(' ')))
		{
			mob[j].health -= 100;
			mob[j].hurt = true;
		}
		if(mob[j].y == y && mob[j].x == x && mob[j].isenemy)
		{
			health -= mob[j].attack;
			hurt = true;
			die = "被 " + mob[j].name + " 杀死了";
		}
		for(int i = mob[j].y - 1; i >= mob[j].y + mob[j].fallspeed; i--)
		{
			if(block[board[i - 1][mob[j].x]].type == "block")
			{
				mob[j].fallspeed = 0 - mob[j].y + i + 1;
				return 0;
			}
		}
		for(int i = mob[j].y + 1; i <= mob[j].y + mob[j].fallspeed; i++)
		{
			if(block[board[i][mob[j].x]].type == "block" || block[board[i][mob[j].x]].type == "fallblock")
			{
				if(mob[j].fallspeed >= 5 && block[board[i - 1][mob[j].x]].type == "water")
				{
					mob[j].health -= 50 * (mob[j].fallspeed - 4);
					mob[j].hurt = true;
				}
				mob[j].fallspeed = 0;
				return 0;
			}
		}
		mob[j].y += mob[j].fallspeed;
		mob[j].fallspeed += gravity;
		if(mob[j].isenemy)
		{
			if(mob[j].y > y && (block[board[mob[j].y + 1][mob[j].x]].type == "block" || block[board[mob[j].y + 1][mob[j].x]].type == "fallblock"))
			{
				if(mob[j].y > y + 50)
				{
					mob[j].fallspeed = -7;
				}
				mob[j].fallspeed = -3;
			}
			if(mob[j].x < x)
			{
				if(block[board[mob[j].y][mob[j].x + 1]].type != "block" || block[board[mob[j].y][mob[j].x + 1]].type != "fallblock")
				{
					mob[j].x++;
				}
				else if(block[board[mob[j].y + 1][mob[j].x]].type == "block" || block[board[mob[j].y + 1][mob[j].x]].type != "fallblock")
				{
					mob[j].fallspeed = -3;
				}
			}
			else if(mob[j].x > x)
			{
				if(block[board[mob[j].y][mob[j].x - 1]].type != "block" || block[board[mob[j].y][mob[j].x - 1]].type != "fallblock")
				{
					mob[j].x--;
				}
				else if(block[board[mob[j].y + 1][mob[j].x]].type == "block" || block[board[mob[j].y + 1][mob[j].x]].type != "fallblock")
				{
					mob[j].fallspeed = -3;
				}
			}
		}
		else
		{
			if(rand() % 3 == 0)
			{
				if(block[board[mob[j].y][mob[j].x + 1]].type != "block" || block[board[mob[j].y][mob[j].x + 1]].type != "fallblock")
				{
					mob[j].x++;
				}
				else if(block[board[mob[j].y + 1][mob[j].x]].type == "block" || block[board[mob[j].y + 1][mob[j].x]].type != "fallblock")
				{
					mob[j].fallspeed = -3;
				}
			}
			else if(rand() % 3 == 1)
			{
				if(block[board[mob[j].y][mob[j].x - 1]].type != "block" || block[board[mob[j].y][mob[j].x - 1]].type != "fallblock")
				{
					mob[j].x--;
				}
				else if(block[board[mob[j].y + 1][mob[j].x]].type == "block" || block[board[mob[j].y + 1][mob[j].x]].type != "fallblock")
				{
					mob[j].fallspeed = -3;
				}
			}
		}
		if(mob[j].hurt)
		{
			mob[j].color = 12;
		}
	}
	return 0;
}
int print()
{
	if(!mode)
	{
		color(8);
		cout << "生命值:";
		color(12);
		cout << health << endl; 
		for(int i = 0; i < health; i += 100)
		{
			cout << "◆";
		}
		color(7);
		for(int i = health; i < lasthealth; i += 100)
		{
			cout << "◇";
		}
		cout << endl;
		color(8);
		cout << "氧气:";
		color(11);
		cout << breath << endl;
		for(int i = 0; i < breath; i += 10)
		{
			cout << "●";
		}
		for(int i = breath; i < 91; i += 10)
		{
			cout << "○";
		}
		cout << endl;
		color(8);
		cout << "饱食度:";
		color(14);
		cout << hungry << endl;
		for(int i = 0; i < hungry; i += 100)
		{
			cout << "§";
		}
		cout <<endl <<"按c以加满饱食度" <<endl;
	} 
	color(8);
	cout << "死亡次数:";
	color(4);
	cout << dienum << endl;
	for(int i = y - 6; i <= y + 6; i++)
	{
		for(int j = x - 6; j <= x + 6; j++)
		{
			bool ismob = false;
			for(int s = 0; s < 100; s++)
			{
				if(mob[s].shap == "")
				{
					continue;
				}
				else if(mob[s].x == j && mob[s].y == i)
				{
					color(mob[s].color);
					cout << mob[s].shap;
					ismob = true;
					break;
				}
			}
			if(ismob)
			{
				continue;
			}
			for(int s = 0; s < 100; s++)
			{
				if(arrow[s].shap == "")
				{
					continue;
				}
				else if((int)arrow[s].x == j && (int)arrow[s].y == i)
				{
					color(7);
					cout << arrow[s].shap;
					ismob = true;
					break;
				}
			}
			if(ismob)
			{
				continue;
			}
			else if(i == y && j == x)
			{
				if (KEY_DOWN('S'))
				{
					color(14);
					if(hurt)
					{
						color(12);
					}
					cout << "()";
				}
				else
				{
					color(9);
					if(hurt)
					{
						color(12);
					}
					cout << "∏";
				}
			}
			else if(i == y - 1 && j == x)
			{
				if (!KEY_DOWN('S'))
				{
					color(14);
					if(hurt)
					{
						color(12);
					}
					cout << "()";
				}
				else
				{
					color(block[board[i][j]].color);
					cout << block[board[i][j]].ch;
				}
			}
			else
			{
				if(i < 0 || i >= 1000 || j < 0 || j >= 1000)
				{
					cout << "  ";
					continue;
				}
				color(block[board[i][j]].color);
				cout << block[board[i][j]].ch;
			}
		}
		cout << endl;
	}
	color(7);
	cout << "Y坐标:";
	color(6);
	cout << 1000 - y << endl;
	color(7);
	cout << "X坐标:";
	color(6);
	cout << x << endl;
	return 0;
}
int move()
{
	if(board[y][x] == 31)
	{
		y += fallspeed;
		return 0;
	}
	if(block[board[y][x]].type == "water")
	{
		if(fallspeed > 1)
		{
			fallspeed = 1;
		}
	}
	else
	{
		for(int i = y - 1; i >= y + fallspeed; i--)
		{
			if(block[board[i - 1][x]].type == "block" || block[board[i - 1][x]].type == "fallblock")
			{
				fallspeed = 0 - y + i + 1;
				return 0;
			}
		}
	}
	for(int i = y + 1; i <= y + fallspeed; i++)
	{
		if(block[board[i][x]].type == "block" || block[board[i][x]].type == "fallblock")
		{
			if(fallspeed >= 5 && block[board[i - 1][x]].type != "water")
			{
				health -= 50 * (fallspeed - 4);
				if(fallspeed >= 7)
				{
					die = "落地过猛";
				}
				else
				{
					die = "从高处摔了下来";
				}
				hurt = true;
			}
			fallspeed = 0;
			return 0;
		}
	}
	y += fallspeed;
	fallspeed += gravity;
	return 0;
}
int bomb()
{
	for(int i = 0; i < 20; i++)
	{
		if(tnt[i].time == 0)
		{
			int atk = 0;
			if(abs(x - tnt[i].x) + abs(y - tnt[i].y) == 4)
			{
				atk = 50;
				fallspeed -= 1;
				x += x - tnt[i].x;
			}
			if(abs(x - tnt[i].x) + abs(y - tnt[i].y) == 3)
			{
				atk = 100;
				fallspeed -= 2;
				x += x - tnt[i].x;
			}
			if(abs(x - tnt[i].x) + abs(y - tnt[i].y) == 2)
			{
				atk = 300;
				fallspeed -= 4;
				x += 2 * (x - tnt[i].x);
			}
			if(abs(x - tnt[i].x) + abs(y - tnt[i].y) == 1)
			{
				atk = 500;
				fallspeed -= 7;
				x += 5 * (x - tnt[i].x);
			}
			if(abs(x - tnt[i].x) + abs(y - tnt[i].y) == 0)
			{
				atk = 800;
				fallspeed -= 10;
			}
			tnt[i].time--;
			if(!tnt[i].issave)
			{
				health -= atk;
			}
			die = "被TNT炸死了";
			if(atk > 0 && !tnt[i].issave)
			{
				hurt = true;
			}
			if(!tnt[i].issave)
			{
				for(int yy = tnt[i].y - 3; yy <= tnt[i].y + 3; yy++)
				{
					for(int xx = tnt[i].x - 3; xx <= tnt[i].x + 3; xx++)
					{
						if((int)(sqrt(abs(yy - tnt[i].y) * abs(yy - tnt[i].y) + abs(xx - tnt[i].x) * abs(xx - tnt[i].x)) + 0.9999) == 3)
						{
							setboard[yy][xx] = 28;
						}
						if((int)(sqrt(abs(yy - tnt[i].y) * abs(yy - tnt[i].y) + abs(xx - tnt[i].x) * abs(xx - tnt[i].x)) + 0.9999) < 3)
						{
							setboard[yy][xx] = 0;
						}
					}
				}
			}
		}
		else if(tnt[i].time == -1)
		{
			setboard[tnt[i].y][tnt[i].x] = 0;
			if(!tnt[i].issave)
			{
				for(int yy = tnt[i].y - 3; yy <= tnt[i].y + 3; yy++)
				{
					for(int xx = tnt[i].x - 3; xx <= tnt[i].x + 3; xx++)
					{
						if((int)(sqrt(abs(yy - tnt[i].y) * abs(yy - tnt[i].y) + abs(xx - tnt[i].x) * abs(xx - tnt[i].x)) + 0.9999) <= 3)
						{
							setboard[yy][xx] = 0;
						}
					}
				}
			}
			tnt[i].time--;
		}
		else if(tnt[i].time > 0)
		{
			tnt[i].time--;
			if(tnt[i].time % 2 == 0)
			{
				setboard[tnt[i].y][tnt[i].x] = 29;
			}
			else
			{
				setboard[tnt[i].y][tnt[i].x] = 30;
			}
		}
	}
	return 0;
}
int check()
{
	for(int i = 0; i < 1000; i++)
	{
		for(int j = 0; j < 1000; j++)
		{
			if(block[board[i][j]].type == "water" && board[i][j] != 15)
			{
				if(board[i + 1][j] == 0)
				{
					setboard[i + 1][j] = board[i][j];
					setboard[i + 1][j] = 8;
				}
				else if(block[board[i + 1][j]].type == "lava")
				{
					setboard[i + 1][j] = 2;
				}
				else if(block[board[i + 1][j]].type == "block" || block[board[i + 1][j]].type == "fallblock")
				{
					if(board[i][j + 1] == 0)
					{
						setboard[i][j + 1] = board[i][j] + 1;
					}
					else if(block[board[i][j + 1]].type == "lava")
					{
						setboard[i][j + 1] = 2;
					}
					if(board[i][j - 1] == 0)
					{
						setboard[i][j - 1] = board[i][j] + 1;
					}
					else if(block[board[i][j - 1]].type == "lava")
					{
						setboard[i][j - 1] = 2;
					}
				}
			}
			if(block[board[i][j]].type == "lava" && board[i][j] != 23)
			{
				if(board[i + 1][j] == 0)
				{
					setboard[i + 1][j] = board[i][j];
					setboard[i + 1][j] = 16;
				}
				else if(block[board[i + 1][j]].type == "water")
				{
					setboard[i + 1][j] = 2;
				}
				else if(block[board[i + 1][j]].type == "block" || block[board[i + 1][j]].type == "fallblock")
				{
					if(board[i][j + 1] == 0)
					{
						setboard[i][j + 1] = board[i][j] + 1;
					}
					else if(block[board[i][j + 1]].type == "water")
					{
						setboard[i][j + 1] = 2;
					}
					if(board[i][j - 1] == 0)
					{
						setboard[i][j - 1] = board[i][j] + 1;
					}
					else if(block[board[i][j - 1]].type == "water")
					{
						setboard[i][j - 1] = 2;
					}
				}
			}
			if(block[board[i][j]].type == "fallblock")
			{
				if(board[i + 2][j] == 0 && board[i + 1][j] == 0 && i + 2 < 100)
				{
					setboard[i][j] = 0;
					setboard[i + 2][j] = board[i][j];
					if(board[i][j] == 7 && j == x && i + 2 == y)
					{
						health -= 600;
						hurt = true;
						die = "被压扁了";
					}
				}
				else if(board[i + 1][j] == 0 && i + 1 < 100)
				{
					setboard[i][j] = 0;
					setboard[i + 1][j] = board[i][j];
					if(board[i][j] == 7 && j == x && i + 1 == y)
					{
						health -= 600;
						hurt = true;
						die = "被压扁了";
					}
					else if(board[i][j] == 7 && j == x && i + 2 == y)
					{
						health -= 600;
						hurt = true;
						die = "被压扁了";
					}
				}
			}
		}
	}
	for(int i = 0; i < 1000; i++)
	{
		for(int j = 0; j < 1000; j++)
		{
			board[i][j] = setboard[i][j];
		}
	}
}
int main()
{
	srand((int)time(0));
	for(int i = 0; i < 20; i++)
	{
		tnt[i].time = -2;
	}
	init();
	while(1)
	{
		system ("cls");
		if(!mode)
		{
			move();
		} 
		if(KEY_DOWN('F'))
		{
			setboard[y + 1][x] = 2;
		}
		check();
		bomb();
		Arrowmove();
		mobmove();
		if(mode)
		{
			hurt = false;
		} 
		print();
		Sleep(30);
		hungry--;
		hungry = max(hungry, 0);
		if(hungry == 0)
		{
			die = "饿死了";
			hurt = true;
			health -= 10;
		}
		if(mode)
		{
			health = 1000;
		}
		if(health <= 0)
		{
			Sleep(500); 
			system("cls");
			color(12);
			cout << "           You Died !           " << endl;
			color(7);
			cout << "          Alex " << die << endl;
			dienum++;
			Sleep(2000);
			x = restartposx;
			y = restartposy;
			health = 1000;
			hungry = 1000;
			breath = 100;
			fallspeed = 0;
		}
		health += (hungry + 201) / 300; 
		if(health > 1000)
		{
			health = 1000; 
		} 
		if(attack)
		{
			attack = 0;
		}
		if(defense)
		{
			defense = 0;
		}
		if(hurt)
		{
			hurt = false;
			lasthealth = health;
		}
		if(block[board[y][x]].type == "water")
		{
			fallspeed = 1;
			if(KEY_DOWN('W'))
			{
				fallspeed = -1;
			}
		}
		if(block[board[y - 1][x]].type == "water")
		{
			die = "被水淹死了"; 
			breath--; 
		}
		else
		{
			breath++; 
			if(breath > 100)
			{
				breath = 100; 
			} 
		} 
		if(board[y][x] == 31)
		{
			fallspeed = 0;
			if(KEY_DOWN('W'))
			{
				fallspeed = -1;
			}
			if(KEY_DOWN('S'))
			{
				fallspeed = 1;
			}
		}
		if(block[board[y][x]].type == "lava")
		{
			fallspeed = 1;
			if(KEY_DOWN('W'))
			{
				fallspeed = -1;
			}
			die = "试图在岩浆里游泳"; 
			hurt = true;
			health -= 100; 
		}
		if (KEY_DOWN('W') && !KEY_DOWN('S'))
		{
			if(mode)
			{
				y--;
			}
			else
			{
				if(block[board[y][x]].type != "water" && board[y][x] != 31)
				{
					if(block[board[y + 1][x]].type == "block" || block[board[y + 1][x]].type == "fallblock")
					{
						fallspeed = jumpspeed;
					}
				}
			}
		}
		if (KEY_DOWN('A'))
		{
			if((block[board[y][x - 1]].type != "block" && block[board[y][x - 1]].type != "fallblock") || mode)
			{
				if(KEY_DOWN('S') || (block[board[y - 1][x - 1]].type != "block" && block[board[y - 1][x - 1]].type != "fallblock") || mode)
				{
					x -= 1;
				}
			}
			face = -1;
		}
		if (KEY_DOWN('D'))
		{
			if((block[board[y][x + 1]].type != "block" && block[board[y][x + 1]].type != "fallblock") || mode)
			{
				if(KEY_DOWN('S') || (block[board[y - 1][x + 1]].type != "block"  && block[board[y - 1][x + 1]].type != "fallblock") || mode)
				{
					x += 1;
				}
			}
			face = 1;
		}
		if(KEY_DOWN('S'))
		{
			if(mode)
			{
				y++;
			}
			else
			{
				fallspeed += 1;
			}
		}
		if(KEY_DOWN(' '))
		{
			attack = true;
		}
		if(KEY_DOWN('E'))
		{
			system("cls");
			color(7);
			cout << "┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐" << endl;
			for(int i = 0; i < 9; i++)
			{
				color(7);
				cout << "│";
				for(int j = 0; j < 10; j++)
				{
					color(block[bag[i * 10 + j]].color);
					cout << block[bag[i * 10 + j]].ch;
					color(7);
					cout << "│";
				}
				cout << endl;
				color(7);
				cout << "├──┼──┼──┼──┼──┼──┼──┼──┼──┼──┤" << endl;
			}
			color(7);
			cout << "│";
			for(int j = 0; j < 10; j++)
			{
				color(block[bag[90 + j]].color);
				cout << block[bag[90 + j]].ch;
				color(7);
				cout << "│";
			}
			color(7);
			cout << endl;
			cout << "└──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘" << endl;
			Sleep(3000);
		}
		if(KEY_DOWN('C'))
		{
			hungry += 100;
			hungry = min(hungry, 1000);
		}
		if(KEY_DOWN('Q'))
		{
			for(int i = 0; i < 20; i++)
			{
				if(tnt[i].time == -2)
				{
					tnt[i] = {y, x, 10, 0};
					break;
				}
			}
		}
		if(KEY_DOWN('i'))
		{
			for(int i = 0; i < 20; i++)
			{
				if(tnt[i].time == -2)
				{
					tnt[i] = {y, x, 10, 1};
					break;
				}
			}
		}
		if(KEY_DOWN('8'))
		{
			for(int i = 0; i < 20; i++)
			{
				if(tnt[i].time == -2)
				{
					tnt[i] = {y, x, 10, 2};
					break;
				}
			}
		}
		if(KEY_DOWN('9'))
		{
			for(int i = 0; i < 20; i++)
			{
				if(tnt[i].time == -2)
				{
					tnt[i] = {y, x, 10, 3};
					break;
				}
			}
		}
		if(KEY_DOWN('0'))
		{
			for(int i = 0; i < 20; i++)
			{
				if(tnt[i].time == -2)
				{
					tnt[i] = {y, x, 10, 4};
					break;
				}
			}
		}
		if(KEY_DOWN('I'))
		{
			for(int i = 0; i < 20; i++)
			{
				if(tnt[i].time == -2)
				{
					tnt[i] = {y, x, 10, 5};
					break;
				}
			}
		}
		if(KEY_DOWN('Z'))
		{
			setboard[y + 1][x] = 0;
		}
		if(KEY_DOWN('X'))
		{
			setboard[y][x] = 24;
		}
		if(KEY_DOWN('3'))
		{
			setboard[y + 1][x] = 6;
		}
		if(KEY_DOWN('4'))
		{
			setboard[y + 1][x] = 7;
		}
		if(KEY_DOWN('1'))
		{
			setboard[y + 1][x] = 8;
		}
		if(KEY_DOWN('2'))
		{
			setboard[y + 1][x] = 16;
		}
		if(KEY_DOWN('5'))
		{
			if(face == 1)
			{
				for(int i = 0; i < 100; i++)
				{
					if(arrow[i].shap == "")
					{
						arrow[i] = {"→",y,x,-0.7,2};
						break; 
					}
				}
			}
			else
			{
				for(int i = 0; i < 100; i++)
				{
					if(arrow[i].shap == "")
					{
						arrow[i] = {"←",y,x,-0.7,-2};
						break;
					}
				}
			}
		}
		if(KEY_DOWN('T'))
		{
			clear_buffer();
			system("cls");
			cout << "请输入指令(只能输一次):" << endl;
			string a;
			cout << "kill " <<"杀死自己"<<endl;
			cout << "health_full " <<"生命值加满"<<endl;
			cout << "hungry_full " <<"饱食度加满"<<endl;
			cout << "air_full " <<"氧气值加满"<<endl; 
			cout << "creative "<<"创造模式"<<endl;
			cout << "move " <<"瞬移(可能死亡!)"<<endl;
			cout << "summon "<<"有几率生成BOSS"<<endl;
			cin >> a;
			if(a == "kill")
			{
				die = "失败了。";
				hurt = true;
				health = 0; 
			}
			if(a == "health_full")
			{
				health = 1000; 
			}
			if(a == "hungry_full")
			{
				hungry = 1000;
			}
			if(a == "air_full")
			{
				breath = 100;
			}
			if(a == "creative")
			{
				mode = !mode;
			}
			if(a == "move")
			{
				cin >> y >> x;
				y = 1000 - y;
			}
			if(a == "summon")
			{
				int a;
				cin >> a;
				for(int i = 0; i < 100; i++)
				{
					if(mob[i].shap == "")
					{
						mob[i] = mobs[a];
						mob[i].x = x;
						mob[i].y = y;
						break;
					}
				}
			}
		}
		if(KEY_DOWN('O'))
		{
			for(int i = 0; i < 1000; i++)
			{
				for(int j = 0; j < 1000; j++)
				{
					setboard[i][j] = 0;
				}
			}
		}
		if(KEY_DOWN('P'))
		{
			for(int i = 0; i < 1000; i++)
			{
				for(int j = 0; j < 1000; j++)
				{
					setboard[i][j] = 2;
				}
			}
		}
		if(y > 1000)
		{
			die = "掉出了这个世界";
			hurt = true;
			health -= 200; 
		}
		if(breath <= 0)
		{
			breath = 0;
			hurt = true;
			health -= 10; 
		}
		if(!KEY_DOWN('S') && block[board[y - 1][x]].type == "block")
		{
			die = "在墙里窒息死亡";
			hurt = true;
			health -= 50;
		}
		if(board[y + 1][x] == 5)
		{
			hurt = true;
			die = "发现了地板是熔岩做的";
			health -= 30; 
		}
		clear_buffer();
	}
	return 0;
}

3.

#include <iostream>
#include <conio.h>
#include <string>
#include <map>
#include <cmath>
#include <windows.h>
#include <time.h> 
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
using namespace std;
int fallspeed;
int jumpspeed = -3;
int gravity = 1;
int  y = 90, x = 15, face, health = 1000, lasthealth = 1000, breath = 100, hungry = 1000;
bool attack, defense, hurt, mode;
struct TNT
{
    int y;
    int x;
    int time;
};
TNT tnt[20];
string die;
struct BLOCK
{
    int color;
    int ch;
};
struct MOB
{
    int fallspeed;
    int health;
    bool hurt;
    int y;
    int x;
    int attack;
    string shap;
    bool isenemy;
    int color;
    string name;
};
MOB mobs[50] = {
    {0,1000,0,0,0,100,"危",true,7,"危"},
    {0,10,0,0,0,10,"  ",true,7,"  "},
    {0,1000,0,0,0,100,"MM",false,7,"MM"},
    {0,1000,0,90,70,-100,"AC",true,7,"Accept"},
    {0,10000,0,90,70,500,"BO",true,7,"BOSS"},
};
MOB mob[100] = {
    {0,1000,0,92,4,100,"WA",true,7,"Wrong Anwser"},
    {0,1000,0,92,4,100,"TL",true,7,"Time Limit Error"},
    {0,2000,0,92,4,300,"CE",true,7,"Compile Error"},
    {0,1000,0,45,9,100,"WA",true,7,"Wrong Anwser"},
    {0,10000,0,90,70,500,"UK",true,7,"Unknown Error"},
    {0,1000,0,92,3,0,"MM",false,7,"MM"},
    {0,1000,0,92,3,0,"MM",false,7,"MM"},
    {0,1000,0,90,15,0,"MM",false,7,"MM"},
    {0,1000,0,90,80,0,"MM",false,7,"MM"},
    {0,100000,0,90,70,-100,"AC",true,7,"Accept"},
    {0,100000,0,90,70,-1000,"AK",true,7,"AK"},
};
string block[30] = {"  ","■","≈","危","≈","≡","〓","Ⅲ","■","▓"};
// 0 空气 1  ■
BLOCK board[100][100];
BLOCK setboard[100][100] = {
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,1},{0,0},{0,0},{7,1},{0,0},{0,0},{7,1},{0,0},{0,0},{7,1},{6,5},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{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,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{6,5},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{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,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{6,5},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{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,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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},{6,5},{6,5},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{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,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,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,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,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,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,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,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,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,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,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,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,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,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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},{12,3},{12,3},{0,0},{0,0},{0,0},{0,0},{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,1},{0,0},{0,0},{0,0},{0,0},{0,0}  ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{7,1},{4,1},{4,1},{4,1},{4,1},{4,1},{4,1},{4,1},{4,1},{7,1},{12,4},{12,4},{12,4},{12,4},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,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},{7,1},{12,4},{12,4},{12,4},{12,4},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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},{7,1},{7,1},{7,1},{7,1},{7,1},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{7,1},{12,4},{0,0},{7,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},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}   ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,1},{0,0},{7,1},{7,1},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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},{12,3},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}   ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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},{7,1},{7,1},{7,1},{12,3},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}   ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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},{12,3},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}   ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{14,9},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,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},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{7,1},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{7,1},{9,2},{9,2},{9,2},{9,2},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{7,1},{9,2},{9,2},{0,0},{9,2},{7,1},{6,5},{7,1},{0,0},{0,0},{7,1},{8,9},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{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,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,1},{0,0},{0,0},{0,0},{7,1},{7,1},{0,0},{7,1},{7,1},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{7,1},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{14,9},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,1},{8,9},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{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,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{14,9},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{7,1},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{7,1},{7,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},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{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,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{7,1},{0,0},{0,0}    ,{0,0},{7,1},{7,1},{7,1},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{14,9},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{7,1},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{7,1},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{7,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{7,1},{7,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1}},
    {{7,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,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},{7,1},{7,1},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{14,9},{0,0},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{6,5},{7,1},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{14,9},{14,9},{14,9},{7,1}},
    {{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{7,1},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{14,9},{14,9},{14,9},{7,1}},
    {{7,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{2,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,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{14,9},{14,9},{14,9},{7,1}},
    {{7,1},{0,0},{7,1},{7,1},{7,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},{7,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{12,3},{0,0},{0,0},{0,0},{0,0},{0,0}   ,{0,0},{0,0},{0,0},{0,0},{7,1},{0,0},{2,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},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{7,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},{14,9},{14,9},{14,9},{7,1}},
    {{7,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},{7,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{12,3},{0,0},{0,0},{0,0},{0,0},{0,0}   ,{0,0},{0,0},{0,0},{0,0},{7,1},{10,6},{2,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},{7,1},{9,2},{0,0},{0,0},{0,0},{12,4},{7,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},{14,9},{14,9},{14,9},{7,1}},
    {{7,1},{2,1},{2,1},{2,1},{2,1},{2,1},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{2,1},{2,1},{2,1},{0,0},{9,2},{9,2},{9,2},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{2,1},{7,1}},
    {{7,1},{6,1},{6,1},{6,1},{6,1},{6,1},{0,0},{0,0},{0,0},{0,0},{14,9},{14,9},{14,9},{6,1},{6,1},{0,0},{9,2},{9,2},{9,2},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0} ,{0,0},{0,0},{0,0},{0,0},{7,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{7,1}},
    {{7,1},{6,1},{6,1},{6,1},{6,1},{6,1},{8,1},{8,1},{8,1},{8,1},{14,9},{14,9},{6,1},{6,1},{6,1},{6,1},{9,2},{9,2},{9,2},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}  ,{0,0},{0,0},{0,0},{0,0},{7,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{6,1},{7,1}},
    {{7,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{14,9},{8,1},{8,1},{8,1},{8,1},{8,1},{9,2},{9,2},{9,2},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}   ,{0,0},{0,0},{0,0},{0,0},{7,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{7,1}},
    {{7,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{7,1},{0,0},{0,0},{0,0},{0,0},{0,0}    ,{0,0},{0,0},{0,0},{0,0},{7,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{8,1},{7,1}}
};
void color(int a)
{
    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),a);
/*  1   深蓝色
    2   深绿色
    3   深青色 
    4   深红色
    5   深粉色
    6   黄色
    7   深白色
    8   灰色
    9   浅蓝色
    10  浅绿色 
    11  浅青色 
    12  浅红色 
    13  浅粉色 
    14  浅黄色 
    15  浅白色 
    背景
    1~15        黑色 
    16~31       深蓝色 
    32~47       深绿色
    48~63       深青色
    64~79       深红色
    'S'~95      深粉色
    96~111      深黄色
    112~127     深白色
    128~143     灰色
    144~159     浅蓝色
    160~1'A'    浅绿色
    176~191     浅青色
    192~207     浅红色
    208~223     浅粉色
    224~239     浅黄色
    240~255     浅白色
*/
}
int mobmove()
{
    for(int j = 0; j < 100; j++)
    {
        if(mob[j].shap == "")
        {
            continue;
        }
        if(mob[j].hurt)
        {
            mob[j].hurt = false;
            mob[j].color = 7;
        }
        if(mob[j].health <= 0)
        {
            mob[j].shap = "";
            mob[j].color = 7;
        }
        if(mob[j].y > 99)
        {
            mob[j].shap = "";
            mob[j].color = 7;
        }
        if(board[mob[j].y][mob[j].x].ch == 4)
        {
            mob[j].health -= 200;
            mob[j].hurt = true;
        }
        if(board[mob[j].y + 1][mob[j].x].ch == 1 && board[mob[j].y + 1][mob[j].x].color == 4)
        {
            mob[j].health -= 100;
            mob[j].hurt = true;
        }
        if(board[mob[j].y][mob[j].x + 1].ch == 8)
        {
            mob[j].health -= 100;
            mob[j].hurt = true;
        }
        if(board[mob[j].y][mob[j].x - 1].ch == 8)
        {
            mob[j].health -= 100;
            mob[j].hurt = true;
        }
        if((mob[j].y == y || mob[j].y == y - 1) && (mob[j].x == x + 1 || mob[j].x == x || mob[j].x == x - 1) && KEY_DOWN(' '))
        {
            mob[j].health -= 100;
            mob[j].hurt = true;
            mob[j].fallspeed = -1;
            mob[j].x -= 3;
        }
        if(mob[j].y == y && mob[j].x == x && mob[j].isenemy)
        {
            health -= mob[j].attack;
            hurt = true;
            die = "被 " + mob[j].name + " 杀死了";
        }
        for(int i = mob[j].y - 1; i >= mob[j].y + mob[j].fallspeed; i--)
        {
            if(board[i - 1][mob[j].x].ch == 1 || board[i - 1][mob[j].x].ch == 9)
            {
                mob[j].fallspeed = 0 - mob[j].y + i + 1;
                return 0;
            }
        }
        for(int i = mob[j].y + 1; i <= mob[j].y + mob[j].fallspeed; i++)
        {
            if(board[i][mob[j].x].ch == 1 || board[i][mob[j].x].ch == 9)
            {
                if(mob[j].fallspeed >= 5 && board[i - 1][mob[j].x].ch != 2)
                {
                    mob[j].health -= 50 * (mob[j].fallspeed - 4);
                    mob[j].hurt = true;
                }
                mob[j].fallspeed = 0;
                return 0;
            }
        }
        mob[j].y += mob[j].fallspeed;
        mob[j].fallspeed += gravity;
        if(mob[j].isenemy)
        {
            if(mob[j].y > y && (board[mob[j].y + 1][mob[j].x].ch == 1 || board[mob[j].y + 1][mob[j].x].ch == 9))
            {
                if(mob[j].y > y + 50)
                {
                    mob[j].fallspeed = -7;
                }
                mob[j].fallspeed = -3;
            }
            if(mob[j].x < x)
            {
                if(board[mob[j].y][mob[j].x + 1].ch != 1 && board[mob[j].y][mob[j].x + 1].ch != 9)
                {
                    mob[j].x++;
                }
                else if(board[mob[j].y + 1][mob[j].x].ch == 1 || board[mob[j].y + 1][mob[j].x].ch == 9)
                {
                    mob[j].fallspeed = -3;
                }
            }
            else if(mob[j].x > x)
            {
                if(board[mob[j].y][mob[j].x - 1].ch != 1 && board[mob[j].y][mob[j].x - 1].ch != 9)
                {
                    mob[j].x--;
                }
                else if(board[mob[j].y + 1][mob[j].x].ch == 1 || board[mob[j].y + 1][mob[j].x].ch == 9)
                {
                    mob[j].fallspeed = -3;
                }
            }
        }
        else
        {
            if(rand() % 3 == 0)
            {
                if(board[mob[j].y][mob[j].x + 1].ch != 1 && board[mob[j].y][mob[j].x + 1].ch != 9)
                {
                    mob[j].x++;
                }
                else if(board[mob[j].y + 1][mob[j].x].ch == 1 || board[mob[j].y + 1][mob[j].x].ch == 9)
                {
                    mob[j].fallspeed = -3;
                }
            }
            else if(rand() % 3 == 1)
            {
                if(board[mob[j].y][mob[j].x - 1].ch != 1 && board[mob[j].y][mob[j].x - 1].ch != 9)
                {
                    mob[j].x--;
                } 
                else if(board[mob[j].y + 1][mob[j].x].ch == 1 || board[mob[j].y + 1][mob[j].x].ch == 9)
                {
                    mob[j].fallspeed = -3;
                }
            }
        }
        if(mob[j].hurt)
        {
            mob[j].color = 12;
        }
    }
    return 0;
}
int print()
{
    if(!mode)
    {
        color(8);
        cout << "HP:";
        color(12);
        cout << health << endl; 
        for(int i = 0; i < health; i += 100)
        {
            cout << "◆";
        }
        color(7);
        for(int i = health; i < lasthealth; i += 100)
        {
            cout << "◇";
        }
        cout << endl;
        color(8);
        cout << "AIR:";
        color(11);
        cout << breath << endl;
        for(int i = 0; i < breath; i += 10)
        {
            cout << "●";
        }
        for(int i = breath; i < 91; i += 10)
        {
            cout << "○";
        }
        cout << endl;
        color(8);
        cout << "HUNGRY:";
        color(14);
        cout << hungry << endl;
        for(int i = 0; i < hungry; i += 100)
        {
            cout << "§";
        }
        cout << endl;
    } 
    for(int i = y - 7; i <= y + 7; i++)
    {
        for(int j = x - 7; j <= x + 7; j++)
        {
            bool ismob = false;
            for(int k = 0; k < 100; k++)
            {
                if(mob[k].shap == "")
                {
                    continue;
                }
                else if(mob[k].x == j && mob[k].y == i)
                {
                    color(mob[k].color);
                    cout << mob[k].shap;
                    ismob = true;
                    break;
                }
            }
            if(ismob)
            {
                continue;
            }
            if(i == y - 1 && j == x + face && attack)
            {
                color(4);
                cout << "__";
            }
            else if(i == y - 1 && j == x + face && defense)
            {
                color(6);
                cout << "┋";
            }
            else if(i == y && j == x + face && defense)
            {
                color(6);
                cout << "┋";
            }
            else if(i == y && j == x)
            {
                if (KEY_DOWN('S'))
                {
                    color(14);
                    if(hurt)
                    {
                        color(12);
                    }
                    cout << "()";
                }
                else
                {
                    color(9);
                    if(hurt)
                    {
                        color(12);
                    }
                    cout << "∏";
                }
            }
            else if(i == y - 1 && j == x)
            {
                if (!KEY_DOWN('S'))
                {
                    color(14);
                    if(hurt)
                    {
                        color(12);
                    }
                    cout << "()";
                }
                else
                {
                    color(board[i][j].color);
                    cout << block[board[i][j].ch];
                }
            }
            else
            {
                if(i < 0 || i >= 100 || j < 0 || j >= 100)
                {
                    cout << "  ";
                    continue;
                }
                color(board[i][j].color);
                cout << block[board[i][j].ch];
            }
        }
        cout << endl;
    }
    color(7);
    cout << "Y:";
    color(6);
    cout << 100 - y << endl;
    color(7);
    cout << "X:";
    color(6);
    cout << x << endl;
    return 0;
}
int move()
{
    if(board[y][x].ch == 5)
    {
        y += fallspeed;
        return 0;
    }
    if(board[y][x].ch == 2)
    {
        if(fallspeed > 1)
        {
            fallspeed = 1;
        }
    }
    else
    {
        for(int i = y - 1; i >= y + fallspeed; i--)
        {
            if(board[i - 1][x].ch == 1 || board[i - 1][x].ch == 9)
            {
                fallspeed = 0 - y + i + 1;
                return 0;
            }
        }
    }
    for(int i = y + 1; i <= y + fallspeed; i++)
    {
        if(board[i][x].ch == 1 || board[i][x].ch == 9)
        {
            if(fallspeed >= 5 && board[i - 1][x].ch != 2)
            {
                health -= 50 * (fallspeed - 4);
                if(fallspeed >= 7)
                {
                    die = "落地过猛!";
                }
                else
                {
                    die = "从高处摔了下来!";
                }
                hurt = true;
            }
            fallspeed = 0;
            return 0;
        }
    }
    y += fallspeed;
    fallspeed += gravity;
    return 0;
}
int bomb()
{
    for(int i = 0; i < 20; i++)
    {
        if(tnt[i].time == 0)
        {
            int atk = 0;
            if(abs(x - tnt[i].x) + abs(y - tnt[i].y) == 4)
            {
                atk = 50;
                fallspeed = -1;
                x += x - tnt[i].x;
            }
            if(abs(x - tnt[i].x) + abs(y - tnt[i].y) == 3)
            {
                atk = 100;
                fallspeed = -2;
                x += x - tnt[i].x;
            }
            if(abs(x - tnt[i].x) + abs(y - tnt[i].y) == 2)
            {
                atk = 300;
                fallspeed = -4;
                x += 2 * (x - tnt[i].x);
            }
            if(abs(x - tnt[i].x) + abs(y - tnt[i].y) == 1)
            {
                atk = 500;
                fallspeed = -7;
                x += 5 * (x - tnt[i].x);
            }
            if(abs(x - tnt[i].x) + abs(y - tnt[i].y) == 0)
            {
                atk = 800;
                fallspeed = -10;
            }
            tnt[i].time--;
            health -= atk;
            die = "被TNT炸死了";
            if(atk > 0)
            {
                hurt = true;
            }
            setboard[tnt[i].y - 2][tnt[i].x].color = 7;
            setboard[tnt[i].y - 1][tnt[i].x - 1].color = 7; setboard[tnt[i].y - 1][tnt[i].x].color = 0; setboard[tnt[i].y - 1][tnt[i].x + 1].color = 7;
            setboard[tnt[i].y][tnt[i].x - 2].color = 7; setboard[tnt[i].y][tnt[i].x - 1].color = 0; setboard[tnt[i].y][tnt[i].x].color = 0; setboard[tnt[i].y][tnt[i].x + 1].color = 0; setboard[tnt[i].y][tnt[i].x + 2].color = 7;
            setboard[tnt[i].y + 1][tnt[i].x - 1].color = 7; setboard[tnt[i].y + 1][tnt[i].x].color = 0; setboard[tnt[i].y + 1][tnt[i].x + 1].color = 7;
            setboard[tnt[i].y + 2][tnt[i].x].color = 7;
            setboard[tnt[i].y - 2][tnt[i].x].ch = 8;
            setboard[tnt[i].y - 1][tnt[i].x - 1].ch = 8; setboard[tnt[i].y - 1][tnt[i].x].ch = 0; setboard[tnt[i].y - 1][tnt[i].x + 1].ch = 8;
            setboard[tnt[i].y][tnt[i].x - 2].ch = 8; setboard[tnt[i].y][tnt[i].x - 1].ch = 0; setboard[tnt[i].y][tnt[i].x].ch = 0; setboard[tnt[i].y][tnt[i].x + 1].ch = 0; setboard[tnt[i].y][tnt[i].x + 2].ch = 8;
            setboard[tnt[i].y + 1][tnt[i].x - 1].ch = 8; setboard[tnt[i].y + 1][tnt[i].x].ch = 0; setboard[tnt[i].y + 1][tnt[i].x + 1].ch = 8;
            setboard[tnt[i].y + 2][tnt[i].x].ch = 8;
        }
        else if(tnt[i].time == -1)
        {
            setboard[tnt[i].y - 2][tnt[i].x].color = 0;
            setboard[tnt[i].y - 1][tnt[i].x - 1].color = 0; setboard[tnt[i].y - 1][tnt[i].x].color = 0; setboard[tnt[i].y - 1][tnt[i].x + 1].color = 0;
            setboard[tnt[i].y][tnt[i].x - 2].color = 0; setboard[tnt[i].y][tnt[i].x - 1].color = 0; setboard[tnt[i].y][tnt[i].x].color = 0; setboard[tnt[i].y][tnt[i].x + 1].color = 0; setboard[tnt[i].y][tnt[i].x + 2].color = 0;
            setboard[tnt[i].y + 1][tnt[i].x - 1].color = 0; setboard[tnt[i].y + 1][tnt[i].x].color = 0; setboard[tnt[i].y + 1][tnt[i].x + 1].color = 0;
            setboard[tnt[i].y + 2][tnt[i].x].color = 0;
            setboard[tnt[i].y - 2][tnt[i].x].ch = 0;
            setboard[tnt[i].y - 1][tnt[i].x - 1].ch = 0; setboard[tnt[i].y - 1][tnt[i].x].ch = 0; setboard[tnt[i].y - 1][tnt[i].x + 1].ch = 0;
            setboard[tnt[i].y][tnt[i].x - 2].ch = 0; setboard[tnt[i].y][tnt[i].x - 1].ch = 0; setboard[tnt[i].y][tnt[i].x].ch = 0; setboard[tnt[i].y][tnt[i].x + 1].ch = 0; setboard[tnt[i].y][tnt[i].x + 2].ch = 0;
            setboard[tnt[i].y + 1][tnt[i].x - 1].ch = 0; setboard[tnt[i].y + 1][tnt[i].x].ch = 0; setboard[tnt[i].y + 1][tnt[i].x + 1].ch = 0;
            setboard[tnt[i].y + 2][tnt[i].x].ch = 0;
            tnt[i].time--;
        }
        else if(tnt[i].time > 0)
        {
            tnt[i].time--;
            if(tnt[i].time % 2 == 0)
            {
                setboard[tnt[i].y][tnt[i].x].color = 12;
            }
            else
            {
                setboard[tnt[i].y][tnt[i].x].color = 7;
            }
        }
    }
    return 0;
}
int check()
{
    for(int i = 0; i < 100; i++)
    {
        for(int j = 0; j < 100; j++)
        {
            if(board[i][j].ch == 2)
            {
                if(board[i + 1][j].ch == 0 )
                {
                    setboard[i + 1][j].ch = 2;
                    setboard[i + 1][j].color = board[i][j].color;
                }
                else if(board[i + 1][j].ch == 4)
                {
                    setboard[i + 1][j].ch = 1;
                    setboard[i + 1][j].color = 8;
                }
                else if(board[i + 1][j].ch == 1|| board[i + 1][j].ch == 8)
                {
                    if(board[i][j + 1].ch == 0)
                    {
                        setboard[i][j + 1].ch = 2;
                        setboard[i][j + 1].color = board[i][j].color;
                    }
                    else if(board[i][j + 1].ch == 4)
                    {
                        setboard[i][j + 1].ch = 1;
                        setboard[i][j + 1].color = 8;
                    }
                    if(board[i][j - 1].ch == 0)
                    {
                        setboard[i][j - 1].ch = 2;
                        setboard[i][j - 1].color = board[i][j].color;
                    }
                    else if(board[i][j - 1].ch == 4)
                    {
                        setboard[i][j - 1].ch = 1;
                        setboard[i][j - 1].color = 8;
                    }
                }
            }
            if(board[i][j].ch == 4)
            {
                if(board[i + 1][j].ch == 0)
                {
                    setboard[i + 1][j].ch = 4;
                    setboard[i + 1][j].color = board[i][j].color;
                }
                else if(board[i + 1][j].ch == 2)
                {
                    setboard[i + 1][j].ch = 1;
                    setboard[i + 1][j].color = 8;
                }
                else if(board[i + 1][j].ch == 1 || board[i + 1][j].ch == 8)
                {
                    if(board[i][j + 1].ch == 0)
                    {
                        setboard[i][j + 1].ch = 4;
                        setboard[i][j + 1].color = board[i][j].color;
                    }
                    else if(board[i][j + 1].ch == 2)
                    {
                        setboard[i][j + 1].ch = 1;
                        setboard[i][j + 1].color = 8;
                    }
                    if(board[i][j - 1].ch == 0)
                    {
                        setboard[i][j - 1].ch = 4;
                        setboard[i][j - 1].color = board[i][j].color;
                    }
                    else if(board[i][j - 1].ch == 2)
                    {
                        setboard[i][j - 1].ch = 1;
                        setboard[i][j - 1].color = 8;
                    }
                }
            }
            if(board[i][j].ch == 9)
            {
                if(board[i + 2][j].ch == 0 && board[i + 1][j].ch == 0 && i + 2 < 100)
                {
                    setboard[i][j].ch = 0;
                    setboard[i][j].color = 0;
                    setboard[i + 2][j].ch = 9;
                    setboard[i + 2][j].color = board[i][j].color;
                    if(board[i][j].color == 8 && j == x && i + 2 == y)
                    {
                        health -= 600;
                        hurt = true;
                        die = "被压扁了";
                    }
                }
                else if(board[i + 1][j].ch == 0 && i + 1 < 100)
                {
                    setboard[i][j].ch = 0;
                    setboard[i][j].color = 0;
                    setboard[i + 1][j].ch = 9;
                    setboard[i + 1][j].color = board[i][j].color;
                    if(board[i][j].color == 8 && j == x && i + 1 == y)
                    {
                        health -= 600;
                        hurt = true;
                        die = "被压扁了";
                    }
                    else if(board[i][j].color == 8 && j == x && i + 2 == y)
                    {
                        health -= 600;
                        hurt = true;
                        die = "被压扁了";
                    }
                }
            }
        }
    }
    for(int i = 0; i < 100; i++)
    {
        for(int j = 0; j < 100; j++)
        {
            board[i][j] = setboard[i][j];
        }
    }
}
int main()
{
    srand((int)time(0));
    for(int i = 0; i < 20; i++)
    {
        tnt[i].time = -2;
    }
    while(1)
    {
        system("cls");
        if(mode)
        {
            hurt = false;
        } 
        if(!mode)
        {
            move();
        } 
        check();
        bomb();
        mobmove();
        print();
        Sleep(70);
        hungry--;
        hungry = max(hungry, 0);
        if(hungry == 0)
        {
            die = "被饿死了";
            hurt = true;
            health -= 10;
        }
        if(mode)
        {
            health = 1000;
        }
        if(health <= 0)
        {
            Sleep(500); 
            system("cls");
            color(12);
            cout << "           GAME OVER           " << endl;
            color(7);
            cout << "   STEVE " << die << endl;
            Sleep(2000);
            x = 15;
            y = 90;
            health = 1000;
            fallspeed = 0;
        }
        health += hungry / 300; 
        if(health > 1000)
        {
            health = 1000; 
        } 
        if(attack)
        {
            attack = 0;
        }
        if(defense)
        {
            defense = 0;
        }
        if(hurt)
        {
            hurt = false;
            lasthealth = health;
        }
        if(board[y][x].ch == 2)
        {
            fallspeed = 1;
            if(KEY_DOWN('W'))
            {
                fallspeed = -1;
            }
        }
        if(board[y - 1][x].ch == 2)
        {
            die = "被水淹死了!"; 
            breath--; 
        }
        else
        {
            breath++; 
            if(breath > 100)
            {
                breath = 100; 
            } 
        } 
        if(board[y][x].ch == 5)
        {
            fallspeed = 0;
            if(KEY_DOWN('W'))
            {
                fallspeed = -1;
            }
            if(KEY_DOWN('S'))
            {
                fallspeed = 1;
            }
        }
        if(board[y][x].ch == 4)
        {
            fallspeed = 1;
            if(KEY_DOWN('W'))
            {
                fallspeed = -1;
            }
            die = "试图在岩浆里游泳!"; 
            hurt = true;
            health -= 100; 
        }
        if (KEY_DOWN('W') && !KEY_DOWN('S'))
        {
            if(mode)
            {
                y--;
            }
            else
            {
                if(board[y][x].ch != 2 && board[y][x].ch != 5)
                {
                    if(board[y + 1][x].ch == 1 || board[y + 1][x].ch == 9)
                    {
                        fallspeed = jumpspeed;
                    }
                }
            }
        }
        if (KEY_DOWN('A'))
        {
            if((board[y][x - 1].ch != 1 && board[y][x - 1].ch != 9) || mode)
            {
                if(KEY_DOWN('S') || board[y - 1][x - 1].ch != 1 || mode)
                {
                    x -= 1;
                }
            }
            face = -1;
        }
        if (KEY_DOWN('D'))
        {
            if((board[y][x + 1].ch != 1 && board[y][x + 1].ch != 9) || mode)
            {
                if(KEY_DOWN('S') || board[y - 1][x + 1].ch != 1 || mode)
                {
                    x += 1;
                }
            }
            face = 1;
        }
        if(KEY_DOWN('S'))
        {
            if(mode)
            {
                y++;
            }
            else
            {
                fallspeed += 1;
            }
        }
        if(KEY_DOWN(' '))
        {
            attack = true;
        }
        if(KEY_DOWN('E'))
        {
            defense = true;
        }
        if(KEY_DOWN('C'))
        {
            hungry += 100;
            hungry = min(hungry, 1000);
        }
        if(KEY_DOWN('Q'))
        {
            setboard[y][x].ch = 7;
            for(int i = 0; i < 20; i++)
            {
                if(tnt[i].time == -2)
                {
                    tnt[i] = {y, x, 10};
                    break;
                }
            }
        }
        if(KEY_DOWN('R'))
        {
            setboard[y][x].ch = 1;
            setboard[y][x].color = 7;
        }
        if(KEY_DOWN('F'))
        {
            setboard[y + 1][x].ch = 1;
            setboard[y + 1][x].color = 7;
        }
        if(KEY_DOWN('Z'))
        {
            setboard[y + 1][x].ch = 0;
            setboard[y + 1][x].color = 0;
        }
        if(KEY_DOWN('X'))
        {
            setboard[y][x].ch = 3;
            setboard[y][x].color = 12;
        }
        if(KEY_DOWN('3'))
        {
            setboard[y][x].ch = 9;
            setboard[y][x].color = 14;
        }
        if(KEY_DOWN('4'))
        {
            setboard[y][x].ch = 9;
            setboard[y][x].color = 8;
        }
        if(KEY_DOWN('1'))
        {
            setboard[y][x].ch = 2;
            setboard[y][x].color = 9;
        }
        if(KEY_DOWN('2'))
        {
            setboard[y][x].ch = 4;
            setboard[y][x].color = 12;
        }
        if(KEY_DOWN('V'))
        {
            setboard[y][x].ch = 6;
            setboard[y][x].color = 10;
        }
        if(KEY_DOWN('T'))
        {
            system("cls");
            cout << "请输入指令:" << endl;
            string a;
            cin >> a;
            if(a == "kill")
            {
                die = "失败了。";
                hurt = true;
                health = 0; 
            }
            if(a == "full_health")
            {
                health = 1000; 
            }
            if(a == "creativemode")
            {
                mode = !mode;
            }
            if(a == "move")
            {
                cin >> y >> x;
                y = 100 - y;
            }
            if(a == "summom")
            {
                int a;
                cin >> a;
                for(int i = 0; i < 100; i++)
                {
                    if(mob[i].shap == "")
                    {
                        mob[i] = mobs[a];
                        mob[i].x = x;
                        mob[i].y = y;
                        break;
                    }
                }
            }
        }
        if(KEY_DOWN('O'))
        {
            for(int i = 0; i < 100; i++)
            {
                for(int j = 0; j < 100; j++)
                {
                    setboard[i][j] = {0,0};
                }
            }
        }
        if(y > 100)
        {
            die = "掉出了这个世界!";
            hurt = true;
            health -= 200; 
        }
        if(breath <= 0)
        {
            breath = 0;
            hurt = true;
            health -= 10; 
        }
        if(!KEY_DOWN('S') && (board[y - 1][x].ch == 1 || board[y - 1][x].ch == 9))
        {
            die = "在墙里窒息死亡!";
            hurt = true;
            health -= 50;
        }
        if(board[y + 1][x].ch == 1 && board[y + 1][x].color == 4)
        {
            hurt = true;
            die = "发现了地板是熔岩做的。";
            health -= 30; 
        }
        if(board[y][x].ch == 6)
        {
            fallspeed = -6;
        }
    }
    return 0;
}

  • 14
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值