[comp.sources.games] v03i031: pyramid - a simple board game for Suns, Part04/04

games-request@tekred.TEK.COM (12/19/87)

Submitted by: Jiang-Hsing Chu <jchu@mimsy.umd.edu>
Comp.sources.games: Volume 3, Issue 31
Archive-name: pyramid/Part04



#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of archive 4 (of 4)."
# Contents:  pyramid.c pyramid.tab.1
# Wrapped by billr@tekred on Mon Nov 30 17:18:57 1987
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f pyramid.c -a "${1}" != "-c" ; then 
  echo shar: Will not over-write existing file \"pyramid.c\"
else
echo shar: Extracting \"pyramid.c\" \(10475 characters\)
sed "s/^X//" >pyramid.c <<'END_OF_pyramid.c'
X#include "pyramid.h"
X
X/* Compilation parameters: */
X
X#define  CELL_WIDTH     48
X#define  BORDER 	40
X 
X 
X#define TOTAL_WIDTH     BOARDSIZE*CELL_WIDTH+BORDER*2
X
X/* Constants, typedefs, externals, globals, statics, macros. */
X
Xstatic short icon_image[] = {		       /* Main icon. */
X/* Format_version=1, Width=64, Height=64, Depth=1, Valid_bits_per_item=16
X */
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0001,0xC000,0x0000,0x0000,0x0007,0xF000,0x0000,
X	0x03E0,0x0007,0xF000,0x0000,0x07F0,0x000F,0xF800,0x0000,
X	0x0E38,0x000F,0xF800,0x0000,0x1C1C,0x000F,0xF800,0x0000,
X	0x180C,0x0007,0xF000,0x0000,0x180C,0x0007,0xF000,0x0000,
X	0x000C,0x0001,0xC000,0x0000,0x001C,0x0000,0x0000,0x0000,
X	0x0038,0x0000,0x0000,0x0000,0x00F0,0x0000,0x0000,0x0000,
X	0x01E0,0x01C0,0x01C0,0x0000,0x01C0,0x07F0,0x07F0,0x0000,
X	0x01C0,0x07F0,0x07F0,0x0000,0x01C0,0x0FF8,0x0FF8,0x0000,
X	0x01C0,0x0FF8,0x0FF8,0x0000,0x01C0,0x0FF8,0x0FF8,0x0000,
X	0x0000,0x07F0,0x07F0,0x0000,0x0000,0x07F0,0x07F0,0x0000,
X	0x01C0,0x01C0,0x01C0,0x0000,0x03E0,0x0000,0x0000,0x0000,
X	0x03E0,0x0000,0x0000,0x0000,0x03E0,0x0000,0x0000,0x0000,
X	0x01C1,0xC000,0x0001,0xC000,0x0007,0xF000,0x0007,0xF000,
X	0x0007,0xF000,0x0007,0xF000,0x000F,0xF800,0x000F,0xF800,
X	0x000F,0xF800,0x000F,0xF800,0x000F,0xF800,0x000F,0xF800,
X	0x0007,0xF000,0x0007,0xF000,0x0007,0xF000,0x0007,0xF000,
X	0x0001,0xC000,0x0001,0xC000,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
X	0x01C0,0x0000,0x01C0,0x01C0,0x07F0,0x0000,0x07F0,0x07F0,
X	0x07F0,0x0000,0x07F0,0x07F0,0x0FF8,0x0000,0x0FF8,0x0FF8,
X	0x0FF8,0x0000,0x0FF8,0x0FF8,0x0FF8,0x0000,0x0FF8,0x0FF8,
X	0x07F0,0x0000,0x07F0,0x07F0,0x07F0,0x0000,0x07F0,0x07F0,
X	0x01C0,0x0000,0x01C0,0x01C0,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
X	0x0001,0xC001,0xC001,0xC000,0x0007,0xF007,0xF007,0xF000,
X	0x0007,0xF007,0xF007,0xF000,0x000F,0xF80F,0xF80F,0xF800,
X	0x000F,0xF80F,0xF80F,0xF800,0x000F,0xF80F,0xF80F,0xF800,
X	0x0007,0xF007,0xF007,0xF000,0x0007,0xF007,0xF007,0xF000,
X	0x0001,0xC001,0xC001,0xC000,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000
X} ;
XDEFINE_ICON_FROM_IMAGE(pyramid_icon,icon_image) ;
X
Xstatic short piece_image[]  = {
X/* Format_version=1, Width=64, Height=64, Depth=1, Valid_bits_per_item=16
X */
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0FF8,0x0000,0x0000,
X	0x0000,0x7FFF,0x0000,0x0000,0x0001,0xDDDD,0xC000,0x0000,
X	0x0003,0xBBBB,0xB000,0x0000,0x000F,0xFFFF,0xF800,0x0000,
X	0x003F,0xFFFF,0xFE00,0x0000,0x005F,0xFDDF,0xFD00,0x0000,
X	0x00BF,0xFFBF,0xFF80,0x0000,0x00FF,0xFFFF,0xFF80,0x0000,
X	0x01F7,0x7777,0x7FC0,0x0000,0x01FF,0xFFFF,0xFFC0,0x0000,
X	0x03FF,0xFFFF,0xFFA0,0x0000,0x07FE,0xEFEE,0xEFF0,0x0000,
X	0x07F7,0x7FFF,0x7FF0,0x0000,0x0DFF,0xDDDD,0xFFD8,0x0000,
X	0x0BFF,0xBBBB,0xFFB8,0x0000,0x0FFE,0xFFFF,0xEFF8,0x0000,
X	0x1FF7,0xFFFF,0xFFFC,0x0000,0x1DFF,0xDDDD,0xFFDC,0x0000,
X	0x1BBF,0xBBBB,0xBFB8,0x0000,0x1FFF,0xFFFF,0xEFFC,0x0000,
X	0x1FF7,0xFFFF,0xFFFC,0x0000,0x1DDF,0xDDDD,0xFDDC,0x0000,
X	0x1BBF,0xBBBB,0xBFB8,0x0000,0x1FFE,0xFFFF,0xEFFC,0x0000,
X	0x1FF7,0xFFFF,0xFFFC,0x0000,0x0DFF,0xDDDD,0xFFD8,0x0000,
X	0x0BFF,0xBBBB,0xFFB8,0x0000,0x0FFE,0xFFFE,0xEFF8,0x0000,
X	0x07F7,0x7FFF,0x7FF0,0x0000,0x05FF,0xFDDF,0xFFD0,0x0000,
X	0x03FF,0xFFFF,0xFFA0,0x0000,0x03FE,0xEEEE,0xEFE0,0x0000,
X	0x01FF,0xFFFF,0xFFC0,0x0000,0x00FF,0xFFFF,0xFF80,0x0000,
X	0x00BF,0xFFBF,0xFF80,0x0000,0x007F,0xFFFF,0xFF00,0x0000,
X	0x003F,0xFFFF,0xFE00,0x0000,0x000D,0xDDDD,0xD800,0x0000,
X	0x0003,0xBBBB,0xB000,0x0000,0x0001,0xFFFF,0xC000,0x0000,
X	0x0000,0x7FFF,0x0000,0x0000,0x0000,0x0DD8,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
X	0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000
X} ;
Xmpr_static(piece_pr,64,64,1,piece_image) ;
X
Xstatic Frame base_frame ;       /* Assorted globals. */
Xstatic Panel panel ;
Xstatic Canvas canvas ;
X
Xstatic Panel_item new_game_but, quit_but, undo_but ;
XPanel_item panel_mes ;
Xstatic Panel_item first_choice, difficulty_choice ;
X
Xstatic Cursor canvas_cursor ;
X
Xstatic Pixwin *canvas_pw ;
X
Xchar board[8][5][5];
Xextern short table[32768];
X
Xstatic char line[40] ;
X
Xstatic void canvas_proc() ;       /* Proc definitions. */
X
Xstatic void new_game_proc(), quit_proc(), undo_proc() ;
Xstatic void first_proc(), difficulty_proc() ;
X
Xstatic void init_panel() ;
Xstatic void canvas_init() ;
X
X#define INIT_DEPTH 7
Xint depth,tdepth=11,first,tfirst=0,nl,eofg;
Xint x1,x2,y1,y2;
Xlong seed;
X
Xmain(argc,argv)
Xint argc ;
Xchar *argv[] ;
X
X{
X  (void) sprintf(line," Pyramid.  V1.0") ;
X  base_frame = window_create(NULL,	  FRAME,
X			     FRAME_ICON,    &pyramid_icon,
X			     FRAME_LABEL,   line,
X			     FRAME_SUBWINDOWS_ADJUSTABLE, FALSE,
X			     WIN_ERROR_MSG, "Can't create window.",
X			     FRAME_ARGS,    argc,argv,
X			     0) ;
X
X  panel = window_create(base_frame,   PANEL,
X			WIN_WIDTH,    TOTAL_WIDTH+1,
X			PANEL_LAYOUT, PANEL_HORIZONTAL,
X			0) ;
X
X  init_panel() ;
X  window_fit_height(panel) ;
X
X  canvas = window_create(base_frame,	     CANVAS,
X			 WIN_X,		  0,
X			 WIN_BELOW,	      panel,
X			 WIN_CONSUME_KBD_EVENT,  WIN_NO_EVENTS,
X			 WIN_EVENT_PROC,	 canvas_proc,
X			 WIN_HEIGHT,	     TOTAL_WIDTH+1,
X			 WIN_WIDTH,	      TOTAL_WIDTH+1,
X			 WIN_IGNORE_PICK_EVENTS, KBD_REQUEST, WIN_ASCII_EVENTS, 0,
X#ifdef 0
X			 CANVAS_FAST_MONO, TRUE,
X#endif
X			 0) ;
X
X  window_fit(base_frame) ;
X  canvas_pw = (Pixwin *) window_get(canvas,CANVAS_PIXWIN) ;
X
X  canvas_cursor = window_get(canvas,WIN_CURSOR) ;
X
X  time(&seed);
X  srandom(seed);
X  initboard() ;
X
X  canvas_init() ;
X  window_main_loop(base_frame) ;
X  exit(0) ;
X}
X
X
Xinitboard()    /* Initialise the pyramid board. */
X
X{
X  int i,j ;
X
X  eofg=0;
X  x1=x2=y1=y2= -1;
X  FOR_BOARD(i,j) board[0][i][j] = BLACK ;
X  depth=tdepth,first=tfirst;nl=0;
X  if(first) move();
X}
X
X
Xstatic void init_panel()
X
X{
X  new_game_but = panel_create_item(panel,PANEL_BUTTON,
X		   PANEL_NOTIFY_PROC,new_game_proc,
X		   PANEL_LABEL_IMAGE,
X		     panel_button_image(panel,"new game",8,(struct pixfont *) 0),
X		   0) ;
X
X  quit_but = panel_create_item(panel,PANEL_BUTTON,
X	       PANEL_NOTIFY_PROC,quit_proc,
X	       PANEL_LABEL_IMAGE,
X		 panel_button_image(panel,"quit",6,(struct pixfont *) 0),
X	       0) ;
X
X  undo_but = panel_create_item(panel,PANEL_BUTTON,
X		  PANEL_NOTIFY_PROC,undo_proc,
X		  PANEL_LABEL_IMAGE,
X		    panel_button_image(panel,"undo",6,(struct pixfont *) 0),
X		  0) ;
X
X first_choice  = panel_create_item(panel,PANEL_CYCLE,
X			PANEL_NOTIFY_PROC,first_proc,
X			PANEL_LABEL_BOLD,TRUE,
X			PANEL_LABEL_STRING,"Start: ",
X			PANEL_VALUE,0,
X			PANEL_SHOW_MENU,TRUE,
X			PANEL_CHOICE_STRINGS,"You","Computer",0,
X			PANEL_DISPLAY_LEVEL,PANEL_CURRENT,
X			0) ;
X
X  difficulty_choice = panel_create_item(panel,PANEL_CYCLE,
X			PANEL_NOTIFY_PROC,difficulty_proc,
X			PANEL_LABEL_BOLD,TRUE,
X			PANEL_LABEL_STRING,"Difficulty: ",
X			PANEL_VALUE,2,
X			PANEL_SHOW_MENU,TRUE,
X			PANEL_CHOICE_STRINGS,"1","2","3","4","5",0,
X			PANEL_DISPLAY_LEVEL,PANEL_CURRENT,
X			0) ;
X
X  panel_mes = panel_create_item(panel,PANEL_MESSAGE,
X		PANEL_LABEL_STRING,"To move, use your left mouse button",
X		0) ;
X}
X
X
X/*ARGSUSED*/
Xstatic void
Xquit_proc(item,event)
XPanel_item item ;
XEvent *event ;
X
X{
X  window_done(base_frame) ;
X}
X
X
Xstatic void
Xundo_proc()
X
X{
X  if(eofg)return;
X  if(nl==0) return;
X  nl--;canvas_init();
X}
X
X/*ARGSUSED*/
Xstatic void
Xdifficulty_proc(item,value,event)
XPanel_item item ;
Xint value ;
XEvent *event ;
X
X{
X  tdepth = value*2 + INIT_DEPTH ;
X}
X
X/*ARGSUSED*/
Xstatic void
Xfirst_proc(item,value,event)
XPanel_item item ;
Xint value ;
XEvent *event ;
X
X{
X  tfirst = value ;
X}
X
Xstatic void
Xcanvas_init()
X
X{
X  int i,j;
X
X  pw_writebackground(canvas_pw,0,0,TOTAL_WIDTH+1,TOTAL_WIDTH+1,RSRC) ;
X  FOR_BOARD(i,j) if(board[nl][i][j]>0)pw_write(canvas_pw,(int) ((j+2-i/2.0)*CELL_WIDTH+BORDER), i*CELL_WIDTH+BORDER,CELL_WIDTH,CELL_WIDTH,RSRC,&piece_pr,0,0);
X  FOR_BOARD(i,j) board[nl+1][i][j]=board[nl][i][j];
X
X}
X
X/*ARGSUSED*/
Xstatic void
Xcanvas_proc(win,event,arg)
XCanvas  win ;
XEvent *event ;
Xcaddr_t arg ;
X
X{
X  int x,y,i ;
X
X  if(eofg)return;
X  y=(event_y(event)-BORDER)/CELL_WIDTH;
X  x=((event_x(event)-BORDER)/((float) CELL_WIDTH)-2+y/2.0);
X  switch (event_id(event))
X    {
X      case LOC_MOVE       :
X      case LOC_DRAG       :
X      case LOC_TRAJECTORY :
X        if(x1== -1&&y1== -1) break;
X        if(x2>=0&&y2>=0) pw_vector(canvas_pw,PX(x1,y1),PY(y1),PX(x2,y2),PY(y2),RXOR,1);
X        if(legal(x,y)>0)
X          {x2=x;y2=y;pw_vector(canvas_pw,PX(x1,y1),PY(y1),PX(x2,y2),PY(y2),RXOR,1);}
X        else x2=y2= -1;
X	break ;
X
X      case LOC_WINENTER   :
X      case LOC_WINEXIT    :
X      case LOC_RGNENTER   :
X      case LOC_RGNEXIT    :
X      case WIN_STOP       : 
X	break ;
X
X      case MS_LEFT	:
X	cursor_set(canvas_cursor,CURSOR_SHOW_CURSOR,TRUE,0) ;
X	window_set(canvas,WIN_CURSOR,canvas_cursor,0) ;
X	if (event_is_down(event)) { if (legal(x,y)) x1=x;y1=y; }
X	else
X	  { 
X            if(x2>=0&&y2>=0) pw_vector(canvas_pw,PX(x1,y1),PY(y1),PX(x2,y2),PY(y2),RXOR,1);
X            if(!legal(x,y)){x1=x2=y1=y2= -1;break;}
X            nl++;
X            if(x1==x)
X            for(i=MIN(y,y1);i<=MAX(y,y1);i++)board[nl][i][x]=0;
X            else if(y1==y)
X            for(i=MIN(x,x1);i<=MAX(x,x1);i++)board[nl][y][i]=0;
X            else 
X            for(i=MIN(x,x1);i<=MAX(x,x1);i++)board[nl][MIN(y,y1)+i-MIN(x,x1)][i]=0;
X            canvas_init();
X            x1=x2=y1=y2= -1;
X            sleep(2);
X            move();
X            canvas_init();
X            if(!eofg)panel_msg("It's your turn.") ;
X	  }    
X	break ;
X    }
X}
X
Xstatic void
Xnew_game_proc()
X
X{
X  initboard() ;
X  canvas_init() ;
X  panel_msg("It's your turn.") ;
X}
X
Xlegal(x,y)
Xint x,y;
X{  int i,test;
X   if(x1== -1 && y1== -1) return(board[nl][y][x]>0);
X   test=1;
X   if(x1==x)
X   for(i=MIN(y,y1);i<=MAX(y,y1);i++)test&=(board[nl][i][x]>0);
X   else if(y1==y)
X   for(i=MIN(x,x1);i<=MAX(x,x1);i++)test&=(board[nl][y][i]>0);
X   else if ((x1-x) != (y1-y)) test=0; else
X   for(i=MIN(x,x1);i<=MAX(x,x1);i++)test&=(board[nl][MIN(y,y1)+i-MIN(x,x1)][i]>0);
X   return(test);
X}
END_OF_pyramid.c
if test 10475 -ne `wc -c <pyramid.c`; then
    echo shar: \"pyramid.c\" unpacked with wrong size!
fi
# end of overwriting check
fi
if test -f pyramid.tab.1 -a "${1}" != "-c" ; then 
  echo shar: Will not over-write existing file \"pyramid.tab.1\"
else
echo shar: Extracting \"pyramid.tab.1\" \(41515 characters\)
sed "s/^X//" >pyramid.tab.1 <<'END_OF_pyramid.tab.1'
X1,0,0,1,0,1,2,1,0,1,
X2,8,4,1,2,1,0,1,2,16,
X4,-17,16,21,8,1,2,-19,4,21,
X2,27,0,1,2,1,4,4,4,32,
X8,8,8,-35,32,-37,32,43,16,16,
X16,-35,-36,21,52,51,32,-41,-42,27,
X52,45,58,51,0,1,2,64,4,1,
X2,64,8,-65,8,73,8,73,64,73,
X16,-65,16,81,16,21,-70,86,64,73,
X-74,27,64,81,86,27,32,1,64,-67,
X32,-69,-70,99,8,73,-74,43,-76,45,
X102,43,16,81,-82,51,52,101,86,51,
X-88,57,58,27,108,57,58,99,0,1,
X2,128,4,1,128,128,8,1,2,-131,
X4,-133,128,139,16,-129,-130,145,16,21,
X146,145,16,145,146,27,128,141,146,27,
X32,128,128,-131,32,-133,-134,163,32,-137,
X-138,43,-140,45,166,141,-144,145,146,51,
X52,165,166,51,176,57,58,51,172,165,
X166,163,64,1,2,-131,128,-133,-134,195,
X64,73,-138,139,-140,141,198,139,16,81,
X146,195,-148,197,86,212,-152,216,90,27,
X204,197,86,195,32,1,2,99,4,101,
X102,163,8,169,106,99,108,101,102,-231,
X176,145,114,51,212,212,212,-231,120,57,
X114,27,120,-237,-238,239,0,1,2,256,
X4,-257,256,261,8,1,2,-259,256,261,
X256,267,16,1,2,-259,4,21,-262,275,
X8,-265,-266,27,256,281,278,275,32,256,
X256,-259,-260,261,292,291,32,-265,-266,43,
X292,45,298,291,32,-273,-274,51,52,305,
X278,305,-280,57,58,43,312,45,306,291,
X64,-257,256,321,256,261,-262,326,64,73,
X-266,267,-268,332,326,267,64,81,-274,275,
X-276,340,86,275,-280,281,90,344,332,281,
X282,344,256,321,-290,99,292,101,102,291,
X-296,297,106,267,108,297,298,360,-304,305,
X114,99,340,101,102,368,120,281,106,-363,
X108,-365,354,379,128,1,2,-259,4,261,
X-262,387,256,-265,-266,139,-268,141,390,387,
X128,145,146,275,-276,404,278,404,-280,281,
X282,139,396,141,278,387,32,-289,-290,163,
X292,165,166,417,-296,169,170,291,172,45,
X396,417,176,305,306,163,404,165,166,-423,
X312,169,170,-427,172,417,418,439,64,321,
X2,195,4,197,198,387,8,393,202,267,
X204,393,326,-455,16,81,338,195,212,197,
X198,-455,216,281,202,27,204,-461,-462,463,
X32,417,354,99,292,417,418,-455,360,297,
X354,43,424,45,-462,239,368,305,114,51,
X404,21,278,247,368,57,58,379,-476,253,
X254,239,0,1,2,512,4,-513,512,517,
X8,-513,-514,521,512,517,522,521,16,-513,
X-514,529,-516,21,530,529,512,521,522,27,
X532,517,530,529,32,1,512,2,4,517,
X-518,550,8,521,522,43,-524,45,550,556,
X16,529,530,51,52,21,550,-551,-536,57,
X58,568,556,-557,550,567,64,1,2,-515,
X4,517,2,579,8,73,522,579,8,521,
X522,579,16,81,530,579,532,21,86,-583,
X-536,600,90,27,600,-589,600,599,32,64,
X-546,99,32,101,102,-583,-552,616,106,43,
X108,45,610,615,-560,624,114,51,624,-597,
X624,567,120,57,58,90,568,573,58,605,
X128,-513,-514,641,512,517,642,641,512,521,
X522,139,-524,141,652,652,-528,145,146,656,
X532,529,656,656,656,529,530,-651,652,641,
X642,667,128,641,642,163,-548,165,166,676,
X-552,169,170,680,172,141,550,680,176,145,
X656,146,676,-661,-662,567,568,-665,-666,667,
X676,573,694,567,128,641,642,195,128,197,
X198,579,-584,712,202,139,204,141,712,139,
X656,145,146,-659,212,145,146,599,216,-665,
X-666,667,600,605,730,599,512,641,610,163,
X676,165,166,615,616,169,170,202,172,169,
X170,239,624,529,530,723,212,629,694,247,
X624,697,698,729,-732,253,254,764,256,-513,
X-514,769,-516,261,770,769,512,521,522,267,
X772,769,770,769,512,529,530,275,532,517,
X278,-775,-536,281,282,792,792,769,792,791,
X256,769,770,291,292,261,550,-775,-552,297,
X298,808,556,-781,808,807,-560,305,306,816,
X816,-789,550,567,312,281,792,282,556,573,
X816,807,256,321,770,579,772,261,326,-775,
X-584,840,330,267,332,-781,840,839,-592,848,
X338,275,340,-789,278,599,344,281,282,-843,
X792,605,282,859,-608,864,354,291,864,-805,
X864,615,360,297,298,330,808,813,298,845,
X368,305,306,338,816,629,306,615,312,344,
X-858,379,312,381,890,864,512,641,642,387,
X772,517,390,-775,-648,393,394,904,396,-781,
X904,903,656,641,642,-787,404,-789,-790,791,
X408,-793,-794,667,652,909,918,791,-672,417,
X418,928,676,-805,550,807,424,393,904,394,
X556,813,928,807,816,-817,-818,915,676,693,
X694,439,680,697,698,443,928,821,946,945,
X512,769,770,387,772,517,390,839,712,393,
X394,-907,396,845,394,463,848,529,530,723,
X404,853,918,471,408,729,730,859,408,477,
X478,859,864,417,418,-931,928,869,418,487,
X424,521,522,971,424,869,494,995,624,945,
X946,995,532,945,946,439,568,921,890,443,
X508,477,478,443,0,1,2,1024,4,-1025,
X1024,1029,8,-1025,-1026,1033,1024,1029,1034,1033,
X16,-1025,-1026,1041,-1028,21,1042,1041,1024,1033,
X1034,27,1044,1029,1042,1041,32,1024,1024,-1027,
X-1028,1029,1060,1059,-1032,1033,1034,43,1060,45,
X1064,1059,-1040,1041,1042,51,52,1044,1044,1072,
X1064,57,58,1059,1060,-1069,1072,1085,64,1,
X2,1,1024,1029,4,1029,8,73,1034,1033,
X-1036,1100,1100,1100,16,81,1042,1041,1044,1041,
X86,21,-1048,1112,90,1112,1100,-1101,1112,1117,
X1024,-1057,32,99,1060,101,102,1059,1064,1121,
X106,43,108,1121,1100,1121,1072,1121,114,51,
X1072,-1109,52,1141,120,1121,1112,57,-1116,1085,
X1148,1117,128,1,2,-1027,4,1029,-1030,1155,
X8,1033,1034,139,4,141,1158,1155,16,145,
X146,1155,1044,21,1158,-1159,16,1041,1042,27,
X1044,21,1158,1175,32,-1057,-1058,163,1060,165,
X166,1185,1064,169,170,43,172,45,1186,1185,
X176,1185,1186,51,52,-1173,-1174,1175,1072,57,
X58,51,52,1085,1206,1185,64,-1089,128,195,
X-1092,197,198,1155,64,1217,202,139,204,1217,
X-1166,1230,-1104,1217,1232,1232,212,-1173,86,1175,
X216,1217,90,-1227,1220,1117,1230,1243,1024,1121,
X1186,99,1220,101,102,165,1064,1121,106,99,
X108,101,1230,239,1232,1232,114,-1235,1044,1141,
X1206,247,120,-1241,114,1243,1148,253,254,1267,
X256,-1025,-1026,1281,-1028,261,1282,1281,1024,1033,
X1034,267,1284,1281,1282,1281,1024,1041,1042,275,
X1044,1029,278,-1287,-1048,281,282,1304,1304,1281,
X1304,1303,-1056,1281,1282,291,292,1284,1284,1312,
X1064,297,298,1059,1312,-1293,1312,1325,1072,305,
X306,1059,1060,-1301,-1302,1303,312,1304,1304,-1323,
X1312,1085,1334,1339,256,321,1282,1281,1284,1281,
X326,261,-1096,1352,330,1352,332,-1293,1352,1357,
X-1104,1360,338,1360,340,-1301,1360,1303,344,281,
X282,281,1100,1117,1360,1360,1312,1121,354,291,
X1312,-1317,292,1381,360,297,1352,297,-1324,1325,
X1388,1357,368,1121,1360,305,-1332,1141,1334,1365,
X1304,-1369,312,379,1148,381,-1374,1406,256,1281,
X1282,387,1284,261,390,-1287,256,393,394,267,
X396,261,1158,1415,-1168,1424,1424,275,404,-1301,
X278,1175,408,281,282,275,1424,1429,278,1303,
X1312,417,418,291,292,-1317,-1318,1415,424,297,
X298,291,292,1325,1446,-1423,1424,305,306,-1427,
X-1332,1205,1206,439,312,305,306,443,1460,1333,
X1334,1455,1024,1217,1282,387,1220,1029,326,1415,
X1352,393,330,393,332,1357,1230,463,1232,1217,
X338,-1427,340,1237,404,471,344,-1433,338,1243,
X340,477,478,1491,1312,1121,354,1059,1060,1381,
X1446,487,360,1033,354,-1451,1388,1381,494,1455,
X368,1041,1042,1267,1396,1141,1334,1459,368,1273,
X-1466,1515,508,381,1406,-1503,512,1,2,-1027,
X4,517,-1030,1539,8,521,522,1539,-1036,1548,
X1542,1539,16,529,530,1539,532,21,1542,-1543,
X-1048,1560,1560,27,1548,-1549,1542,1559,32,1024,
X-1058,1059,1060,1029,550,1542,1064,1033,1570,43,
X556,45,1548,-1575,1072,1041,1570,51,52,1044,
X-1558,567,568,57,1560,-1579,-1564,573,1590,1583,
X1024,-1089,512,579,1024,1601,1542,1539,-1096,1601,
X1608,1608,1100,1601,1608,1601,-1104,1601,1616,1616,
X1616,1041,86,599,600,1601,90,-1611,1560,605,
X1616,1627,-1120,1121,610,1059,1632,101,1570,615,
X616,1608,1608,-1611,108,1100,1632,1583,624,1616,
X1616,-1619,1072,629,1590,1651,120,1112,568,1595,
X1148,1085,1596,1595,512,641,642,1155,-1156,1668,
X1158,1668,512,521,522,1539,652,141,1542,-1671,
X656,529,530,-1555,1668,-1557,-1558,1175,1560,529,
X530,667,1668,1565,1686,1679,-1184,1185,1186,163,
X676,165,550,1696,680,169,1570,-1675,556,-1677,
X550,1583,1696,-1585,-1586,1683,-1588,693,694,567,
X568,697,698,1595,1596,1709,1590,1595,-1216,1217,
X1728,579,1220,197,1158,1155,712,1601,202,579,
X204,-1677,1230,1679,1232,-1617,656,723,212,1237,
X1686,599,600,729,730,1243,1728,1741,1728,1627,
X1632,1185,610,1539,1696,1185,1186,615,616,-1705,
X610,1643,1548,1709,1230,1707,624,1713,1714,1267,
X1716,629,1206,247,624,1273,698,1651,764,253,
X254,-1759,256,769,770,1539,772,261,1542,-1543,
X-1288,1800,1800,267,1548,-1549,1800,1799,-1296,1808,
X1808,1539,1808,-1557,1542,791,792,281,282,-1803,
X1548,1565,1808,1819,1312,1281,1570,291,292,1284,
X-1574,807,808,297,1800,-1803,-1580,813,1830,1583,
X816,305,1570,-1811,-1588,821,1334,1843,312,1304,
X-1818,1339,1596,-1821,1850,1853,-1344,1601,1856,1856,
X1856,1281,326,839,840,1601,330,-1803,1800,845,
X1856,1867,848,1601,338,-1811,1808,853,-1814,1875,
X1304,-1817,792,859,1304,1881,1878,1819,864,1856,
X1856,-1827,1312,869,1830,1891,360,1352,808,1643,
X1388,1325,1836,1835,1632,1360,816,1651,1396,1333,
X1878,1843,-1848,1401,890,1339,1912,1853,1406,1853,
X-1408,1920,1920,387,1668,-1669,390,903,904,393,
X394,-1803,396,909,1920,1679,1424,-1681,-1682,915,
X1668,917,918,791,792,921,922,1819,1920,1813,
X1938,1679,928,417,1920,-1827,-1700,933,1446,1955,
X808,-1833,-1834,1707,1836,1709,1962,1455,816,945,
X946,1459,1460,821,1590,439,816,1961,1850,1707,
X1844,1853,1850,1955,1728,1601,1920,1539,1920,1925,
X1542,839,840,-1865,904,971,1548,1741,-1870,1998,
X848,1745,1938,1491,1424,853,1878,471,848,1497,
X922,859,-1884,2012,1998,2012,864,-1889,1570,995,
X1956,2017,1446,1955,864,1769,1962,1515,1836,1961,
X1998,1455,1808,2017,1938,1459,1460,1813,1590,1459,
X1912,1769,1530,1595,2012,1853,2012,1535,0,1,
X2,2048,4,-2049,2048,2053,8,-2049,-2050,2057,
X2048,2053,2058,2057,16,-2049,-2050,2065,-2052,21,
X2066,2065,2048,2057,2058,27,2068,2053,2066,2065,
X32,2048,2048,-2051,-2052,2053,2084,2083,-2056,2057,
X2058,43,2084,45,2088,2083,-2064,2065,2066,51,
X52,2068,2068,2096,2088,57,58,2083,2084,-2093,
X2096,2109,64,-2049,2048,2113,2048,2053,-2054,2118,
X-2056,73,2058,2120,2120,2057,2118,2113,-2064,81,
X2066,2128,2068,2065,86,2128,2120,2113,90,-2123,
X2128,2113,2118,2139,2048,2113,-2082,99,2084,101,
X102,2083,2088,2057,106,-2123,108,-2125,2146,2155,
X2096,2065,114,-2131,2096,-2133,-2134,2163,120,-2137,
X2146,2139,-2140,2109,2166,2163,128,1,2,-2051,
X4,2053,2,2179,2048,2057,2058,139,8,141,
X2058,2179,16,145,146,2179,2068,21,2066,-2183,
X-2072,2200,2200,2179,2200,-2189,2200,2199,32,-2081,
X-2082,163,2084,165,166,2209,2088,169,170,2083,
X172,2209,2210,2209,176,2209,2210,51,52,-2197,
X-2198,2199,2200,2209,2200,-2219,-2204,2109,2230,2235,
X2048,2113,-2114,195,64,197,198,2179,2120,2113,
X202,-2187,204,73,2118,2251,2128,2065,2242,-2195,
X212,81,86,2199,216,-2201,2242,2139,2200,2205,
X2242,2259,2048,2209,2146,2083,2084,2209,2210,99,
X2088,2057,2146,2155,108,2157,106,239,2096,2065,
X114,2163,2068,2165,2166,247,2200,2169,-2266,2235,
X2172,253,254,2235,256,1,2,-2051,4,261,
X-2054,2307,8,2057,2058,267,-2060,2316,2310,2307,
X16,2065,2066,275,2068,21,278,-2311,8,281,
X282,27,2316,-2317,2310,2327,32,-2081,-2082,291,
X292,2337,2310,2337,2088,297,298,43,2316,45,
X2316,2337,2096,305,306,51,52,-2325,-2326,2327,
X312,57,58,43,-2332,2109,2358,2333,64,321,
X-2114,2307,-2116,2372,326,2307,2120,73,330,-2315,
X332,-2317,2370,2379,2128,81,338,-2323,340,-2325,
X86,2327,344,73,90,2139,2372,2333,2370,2387,
X-2144,2337,354,99,2372,101,102,2400,360,-2345,
X106,2155,108,2157,2400,2381,368,-2353,114,2163,
X-2356,2165,2166,2389,120,2169,106,379,2172,381,
X2166,2417,128,-2177,-2178,387,256,2433,390,2433,
X-2184,393,394,139,396,141,2310,2433,128,2433,
X2434,2179,404,-2325,278,2199,408,2433,2434,139,
X-2332,2205,2460,2327,-2208,417,418,163,2464,165,
X166,2464,424,169,170,-2443,172,297,2464,2475,
X2464,2209,2210,163,-2356,2229,2230,439,2464,169,
X170,443,2236,2357,2358,2464,2048,2433,2242,195,
X2372,197,198,-2439,2440,2057,202,2251,204,2381,
X330,463,2128,2065,2242,2259,212,2389,198,471,
X216,2265,202,2251,2460,477,478,2503,2400,2337,
X2146,2083,2464,2053,2310,487,2400,2409,2058,2475,
X2316,2157,494,239,368,2417,2066,2163,2420,2165,
X2166,247,-2488,2552,2298,2552,508,253,254,239,
X512,-2049,-2050,2561,-2052,517,2562,2561,-2056,521,
X522,2568,2564,2561,2562,2561,-2064,529,530,2576,
X532,-2565,2576,2581,2568,2561,2562,-2571,2564,2581,
X2562,2587,2048,2561,2562,2083,2084,2053,550,-2567,
X2088,2057,2568,2058,556,-2573,-2574,2599,2096,2065,
X2576,2066,2068,2581,-2582,567,568,-2585,-2586,2587,
X-2588,573,2606,2599,2048,2113,2562,579,2564,2053,
X2118,-2567,2120,2057,2058,-2571,2568,2057,2058,2631,
X2128,2065,2066,-2579,2068,2581,2066,599,600,-2585,
X-2586,2139,-2588,605,2650,2587,-2144,2656,610,2083,
X2656,-2597,2656,615,616,2120,-2602,2155,2656,2157,
X2606,2605,624,2128,-2610,2163,2096,629,2166,-2647,
X2656,2169,2618,2649,2172,2109,2618,2679,512,641,
X642,2179,2564,517,2562,-2567,2568,2561,2562,-2571,
X652,521,522,2695,656,529,530,-2579,532,2581,
X530,2199,2200,-2585,-2586,667,-2588,2205,2714,2695,
X-2208,2209,2210,2720,676,-2597,2720,2599,680,-2601,
X-2602,2699,2720,2605,2606,2599,2720,-2609,-2610,2707,
X-2612,693,694,2737,2720,697,698,2235,2236,2725,
X2614,2737,-2240,2752,2242,2179,2752,-2629,2752,2631,
X712,-2633,-2634,2251,2752,2757,2762,2631,2752,-2641,
X-2642,723,-2644,2757,2770,2199,2200,729,730,2643,
X2652,2205,2714,2769,2656,2209,2210,2242,2720,2661,
X2210,2757,2656,2729,2666,2761,616,2661,2730,-2767,
X624,2737,2674,2769,2740,2229,2230,2679,-2744,2808,
X2298,2235,764,-2781,2808,2799,512,769,770,2307,
X772,517,2310,-2567,2568,521,522,-2571,2316,-2573,
X-2574,2823,2576,529,530,-2579,532,2581,-2582,791,
X792,521,522,2587,-2588,2333,2830,2823,-2336,2337,
X2338,2848,2848,-2597,550,807,808,-2601,-2602,2827,
X556,813,2606,2829,816,-2609,-2610,2835,-2612,821,
X2358,567,568,2617,2618,-2843,2364,573,2606,2875,
X-2368,2880,2370,579,2372,-2629,2310,839,840,-2633,
X-2634,2379,2316,845,2830,2827,848,-2641,-2642,2387,
X-2644,853,2838,599,600,2649,2650,859,2652,605,
X2898,2897,864,2337,610,2370,2848,869,2338,615,
X616,2409,2666,2889,-2860,2924,2924,2924,624,2417,
X2674,2897,2420,629,2358,2679,616,-2873,890,2875,
X2924,2937,-2910,2942,-2432,2433,2434,2944,2944,769,
X2944,903,904,-2697,-2698,2699,652,909,2830,2823,
X2944,641,642,915,-2708,917,918,2695,2944,921,
X922,667,2460,-2845,2838,2973,928,2433,2944,2434,
X676,933,-2854,2982,680,2729,2730,2475,808,2853,
X2982,-2959,2720,945,946,-2867,2484,693,2982,2995,
X680,697,698,2875,2868,2973,2982,2991,2752,2433,
X2434,-2883,2944,2757,2434,2503,712,2761,2762,971,
X2440,2885,2954,3011,2752,2769,2770,3011,2772,2453,
X2838,-2967,712,729,730,3011,2460,2973,-2974,3031,
X2464,2561,2562,995,2464,2661,2982,2503,2568,2857,
X2666,2475,2924,2605,2606,2799,2576,2865,2674,2995,
X2484,2581,2614,3031,2552,2937,890,2875,764,2813,
X2942,2799,1024,1,2,-2051,4,1029,-2054,3075,
X8,1033,1034,3075,-2060,3084,3078,3075,16,1041,
X1042,3075,1044,21,3078,-3079,-2072,3096,3096,27,
X3084,-3085,3078,3095,32,-2081,-2082,1059,1060,3105,
X3078,3105,1064,3105,3106,43,3084,45,3084,3105,
X1072,3105,3106,51,52,-3093,-3094,3095,3096,57,
X3096,-3115,-3100,1085,3126,3131,64,2113,2048,3075,
X-2116,3140,2118,3075,2120,73,2058,2057,1100,-3085,
X3084,3149,2128,81,2066,2065,3140,-3093,86,3095,
X1112,-3097,90,2139,3096,1117,-3150,3166,-2144,1121,
X2146,99,3140,3105,3106,3168,3168,-3113,106,2155,
X108,2157,3168,3149,3168,-3121,114,2163,-3124,1141,
X2166,3157,120,2169,-3162,3131,1148,3101,3166,3131,
X2048,-2177,-2178,1155,1024,3201,1158,3201,2048,3201,
X3202,3075,3084,141,3078,3201,-2192,3201,3202,3216,
X3216,1041,3216,1175,2200,3201,3202,-3211,3216,2205,
X3202,3227,-2208,1185,1186,2083,3232,165,166,3232,
X3232,3105,3106,2083,172,-3213,3232,3245,3216,3216,
X3216,-3219,1072,1205,1206,3251,3232,-3225,-3226,2235,
X2236,3245,3258,3251,-2240,1217,2242,195,1220,3201,
X2118,3264,3264,2113,202,2251,3140,3149,1230,3264,
X1232,-3153,3216,2259,3216,1237,-3222,3286,216,2265,
X2200,1243,3264,3157,3166,3227,3168,3105,2146,3075,
X3232,1121,3078,-3239,3168,3177,2146,2155,3084,3245,
X-3246,3303,3216,3185,-3250,1267,3188,2165,3286,3303,
X3096,1273,2298,3131,2172,3257,3310,3303,1024,1281,
X1282,2307,1284,1029,2310,-3079,-2312,3336,3336,267,
X2316,-3085,3336,3335,1024,1041,1042,3075,1044,1029,
X3078,1303,1304,281,282,-3339,3084,2333,-3342,3355,
X1312,2337,2338,1059,1060,-3109,-3110,3335,3336,297,
X3336,-3339,-3116,1325,3366,3371,1072,3105,3106,1059,
X1060,1333,1334,-3351,312,-3353,-3354,1339,2364,3385,
X3358,3383,-2368,3392,2370,3392,2372,-3141,326,3335,
X1352,-3145,330,2379,1100,1357,3392,3401,1360,-3153,
X338,2387,3140,1365,-3350,3414,1112,3161,-3354,3355,
X1100,1117,3166,3355,2400,1121,3392,2337,-3172,1381,
X3366,3397,360,2409,-3370,3371,1388,3341,3434,3371,
X3168,2417,-3378,3442,1396,1141,3414,3383,-3384,1401,
X3194,379,3448,3385,1406,3448,-2432,2433,2434,1155,
X3456,1281,1158,1415,2440,393,394,2307,2316,3341,
X2310,3335,1424,3201,3202,1155,404,1429,1158,1175,
X408,-3353,-3354,3227,2460,3481,3358,3481,2464,1185,
X1186,-3363,1312,1445,1446,3491,424,2337,2338,2475,
X3372,3245,3366,1455,3232,1185,1186,1459,1460,1205,
X1206,3383,-3384,3257,3258,3481,3512,3245,3512,3383,
X3264,1217,2370,3075,1220,3397,3078,2503,3392,3401,
X2370,2379,2372,2381,1230,463,1232,3281,-3410,1491,
X1220,1237,3286,471,3096,1497,3418,1243,2460,3481,
X3414,-3487,2400,3105,3106,3491,3428,3365,3366,3303,
X2400,2409,3434,1515,3428,3341,3310,3303,-3440,3568,
X3314,1267,3568,3125,3568,3303,2552,1273,1530,3131,
X3512,1401,3310,1535,512,2561,2562,1539,2564,517,
X1542,-3079,2568,521,522,-3083,1548,-3085,-3086,3591,
X2576,529,530,-3091,532,2581,-3094,1559,1560,-3097,
X-3098,2587,-3100,1565,3598,3591,32,3105,1570,2083,
X2084,-3109,550,2599,2088,-3113,-3114,3595,556,2605,
X2606,1583,2096,-3121,-3122,3603,52,3125,1590,567,
X568,2617,2618,1595,1596,573,3612,3633,64,1601,
X2562,3075,3140,-3141,3078,2631,1608,73,2568,2635,
X3084,3149,3598,3595,1616,81,2576,2643,-3156,3157,
X3606,3095,3096,2649,2650,1627,2652,3101,3166,-3663,
X1632,3105,3106,99,3140,2661,3106,3653,616,3177,
X2666,1643,108,3625,3626,2605,624,3185,2674,1651,
X3188,3125,3126,2679,120,2169,3194,3131,3132,-3677,
X3166,3679,128,3201,3202,2179,1668,-3205,1542,2695,
X2568,2561,2562,2699,652,3597,3598,1679,3216,145,
X146,1683,-3220,1685,1686,2199,2200,2713,2714,3227,
X2716,2205,3606,-3727,1696,2209,2210,163,676,2725,
X166,2599,680,2729,2730,1707,172,1709,2606,1583,
X3216,1713,1714,3251,1716,693,2614,-3735,-3640,3257,
X3258,2235,3768,-3741,3768,3743,1728,3201,3202,195,
X-3268,2757,3780,2631,712,2761,2762,2635,3780,1741,
X3598,2631,3216,1745,2770,2643,2772,-3669,3286,3797,
X216,2649,2650,3227,2652,3797,2716,3679,2656,3264,
X2720,-3683,3780,2661,3780,3303,2656,1769,2666,3811,
X-3692,3820,3310,2799,-3696,3824,3314,3811,3824,3797,
X3824,3767,2808,3257,3258,3811,3820,2813,3258,1791,
X256,769,770,1539,772,261,1542,1799,1800,-3337,
X-3338,2827,1548,1805,2830,3849,1808,-3345,-3346,2835,
X-3348,1813,2838,1559,1560,3609,3610,1819,2844,1565,
X3358,3857,2848,2337,1570,291,292,2853,1830,807,
X808,2857,2858,1835,1836,813,-3630,3886,816,2865,
X2866,1843,1844,3621,1590,3383,312,3385,1850,2875,
X1596,1853,3886,1583,1856,1601,2370,-3651,2372,2885,
X326,3907,1608,2889,2890,1867,3336,3341,3850,3907,
X1616,2897,2898,1875,2900,3653,1878,-3863,1608,1881,
X3418,1627,2844,-3869,3358,3679,1632,3392,354,1891,
X3428,3365,3366,2853,360,2409,3434,1643,2924,-3885,
X3886,3949,1632,2417,3442,1651,2420,-3893,3414,3927,
X1912,2937,3386,2875,-3900,3709,2942,3933,1920,2433,
X2434,387,1668,1925,390,2823,904,2953,2954,1931,
X396,2829,2830,1679,1808,1937,1938,1683,2964,1685,
X1686,-3863,408,3481,3482,1819,2844,2973,2838,3743,
X1696,417,418,1955,1956,2853,2982,-3879,2848,1961,
X1962,1707,1836,1709,3886,2991,1696,1713,1714,2995,
X1716,-3893,-3894,3767,3512,3481,1850,2875,2868,3773,
X4022,4007,1728,-3777,2944,3011,3780,4033,-3782,4038,
X2880,1993,2890,3907,3780,1741,1998,463,1728,4033,
X3538,1875,2900,3797,4038,3031,-3800,4056,4056,4056,
X2012,3933,3038,3551,-3808,2017,4064,3811,4064,3621,
X4038,4007,4064,1769,3626,3811,3820,3949,3886,2991,
X3568,3633,3538,3811,3860,3957,4022,3991,4056,2937,
X4056,-4027,3964,3957,2942,4091,0,1,2,4096,
X4,-4097,4096,4101,8,-4097,-4098,4105,4096,4101,
X4106,4105,16,-4097,-4098,4113,-4100,21,4114,4113,
X4096,4105,4106,27,4116,4101,4114,4113,32,4096,
X4096,-4099,-4100,4101,4132,4131,-4104,4105,4106,43,
X4132,45,4136,4131,-4112,4113,4114,51,52,4116,
X4116,4144,4136,57,58,4131,4132,-4141,4144,4157,
X64,-4097,4096,4161,4096,4101,-4102,4166,-4104,73,
X4106,4168,4168,4105,4166,4161,-4112,81,4114,4176,
X4116,4113,86,4176,4168,4161,90,-4171,4176,4161,
X4166,4187,4096,4161,-4130,99,4132,101,102,4131,
X4136,4105,106,-4171,108,-4173,4194,4203,4144,4113,
X114,-4179,4144,-4181,-4182,4211,120,-4185,4194,4187,
X-4188,4157,4214,4211,128,-4097,-4098,4225,4096,4101,
X4226,4225,4096,4105,4106,139,-4108,141,4236,4236,
X-4112,145,146,4240,4116,4113,4240,4240,4240,4113,
X4114,-4235,4236,4225,4226,4251,-4128,4225,4226,163,
X4132,165,166,4131,4136,169,170,4131,172,4236,
X4236,4256,176,4240,4240,-4243,4144,-4245,-4246,4275,
X4144,-4249,-4250,4251,4256,4157,4278,4275,4096,4161,
X4226,195,-4164,197,198,4292,4168,4161,202,-4235,
X204,-4237,4166,4299,4176,4113,4114,-4243,212,-4245,
X-4246,4307,216,-4249,-4250,4187,4292,4301,4310,4251,
X4256,4225,4194,4131,4292,4292,4292,-4295,4136,4105,
X4194,4203,4236,4205,-4302,239,4144,4113,4114,4211,
X4116,4213,4214,247,-4280,4217,4282,4211,4220,253,
X254,4327,256,-4097,-4098,4353,-4100,261,4354,4353,
X4096,4105,4106,267,4356,4353,4354,4353,4096,4113,
X4114,275,4116,4101,278,-4359,-4120,281,282,4376,
X4376,4353,4376,4375,-4128,4353,4354,291,292,4356,
X4356,4384,4136,297,298,4131,4384,-4365,4384,4397,
X4144,305,306,4131,4132,-4373,-4374,4375,312,4376,
X4376,-4395,4384,4157,4406,4411,-4160,321,4354,4416,
X4356,4353,326,4416,4168,4161,330,-4363,332,-4365,
X4166,4427,4176,4161,338,-4371,340,-4373,4166,4375,
X344,-4377,4376,4187,4376,4429,4416,4435,4384,4353,
X354,-4387,4384,-4389,-4390,4451,360,-4393,4194,4203,
X-4396,4205,4454,4429,368,-4401,4194,4211,-4404,4213,
X4214,4437,4376,4217,-4442,379,4220,381,4474,4411,
X4096,4225,4226,387,4356,4101,390,-4359,-4232,393,
X394,4488,396,-4365,4488,4487,4240,4225,4226,-4371,
X404,-4373,-4374,4375,408,-4377,-4378,4251,4236,4493,
X4502,4375,4256,417,418,4131,4132,-4389,-4390,4487,
X424,4488,4488,-4491,-4396,4397,4518,4523,4256,-4401,
X-4402,4275,-4404,4277,4278,439,-4408,4281,4282,443,
X4524,4405,4406,4411,4416,4161,4354,-4419,4292,4101,
X4166,4487,4488,4105,4488,4299,4488,4301,-4494,463,
X4176,4113,4114,4307,4292,4309,4310,471,4376,4313,
X4314,4299,-4508,477,478,4572,4384,4353,4194,4451,
X4132,4453,4454,487,4488,4457,4106,4523,4460,4453,
X494,4523,4144,4465,4530,4211,4468,4529,4530,4327,
X4344,4465,4474,4411,508,4572,4334,-4575,512,1,
X2,-4099,4,517,-4102,4611,8,521,522,4611,
X-4108,4620,4614,4611,16,529,530,4611,532,21,
X4614,-4615,-4120,4632,4632,4611,4620,-4621,4614,4631,
X32,1,2,4131,4132,4101,550,4614,4136,4105,
X4106,43,556,45,4620,-4647,4144,4113,4114,51,
X52,21,-4630,567,568,57,4632,27,-4636,573,
X4662,4655,4096,4161,-4162,579,4096,4101,4166,4611,
X4168,4105,4674,-4619,4620,4105,4674,4683,4176,4113,
X4674,-4627,4116,4113,86,599,600,-4633,4674,4187,
X4632,605,4674,4691,64,4161,610,4131,4132,101,
X4614,615,616,73,106,4203,4620,4205,-4686,4655,
X624,81,114,4211,4144,629,4214,4631,4632,4217,
X90,4697,4220,4157,4718,-4719,128,641,642,4611,
X-4228,4740,4614,4740,-4232,4744,4744,4611,652,141,
X4614,4744,656,145,146,-4627,4740,-4629,-4630,4631,
X4632,-4633,-4634,667,4740,4637,4758,4631,4256,4225,
X4226,163,676,165,4740,-4743,680,169,4744,139,
X172,141,-4750,4655,176,145,146,4275,-4660,693,
X694,4775,-4664,697,698,4761,4668,-4765,4782,4797,
X-4288,4800,4674,4611,4292,197,4614,4800,712,-4681,
X4674,4299,4236,4301,4800,4809,4800,-4689,-4690,723,
X212,4309,4310,4755,4632,729,730,4251,4800,4761,
X4762,4251,4800,4800,4800,4611,4740,197,4614,4327,
X4744,4809,202,4809,4620,4301,4334,4655,-4720,4817,
X4818,4275,4788,4277,4278,247,4344,4281,4282,4314,
X764,4797,254,4735,256,769,770,4611,772,261,
X4614,-4615,-4360,4872,4872,4872,4620,-4621,4872,4871,
X-4368,4880,4880,4611,4880,-4629,4614,791,792,281,
X282,-4875,4620,4637,4880,4891,4384,4353,4354,291,
X292,261,-4646,807,808,297,4872,267,-4652,813,
X4902,4655,816,305,4880,275,-4660,821,4406,4885,
X312,281,282,4411,4668,-4893,4902,4925,4416,4353,
X4674,-4675,4356,4353,326,839,840,-4681,330,4427,
X4872,845,-4878,4942,848,-4689,4674,4435,4880,853,
X-4886,4950,4376,4441,-4890,859,4376,4945,4942,4891,
X864,321,354,4451,4384,869,4454,4871,4872,4457,
X330,4937,4460,4397,4718,4942,4880,4465,338,4945,
X4468,4405,4950,4950,344,4441,890,4411,-4924,4925,
X4988,4735,-4480,4992,4992,4611,4740,-4741,4614,903,
X904,393,394,-4875,4620,909,4992,5003,4880,-4753,
X-4754,915,4740,917,918,4631,4744,921,922,4891,
X4992,4885,5010,4891,928,417,4992,387,-4772,933,
X4518,4775,424,393,394,4523,4524,4493,4782,4655,
X-4784,945,946,5009,4532,4501,4662,4775,4536,4505,
X4506,443,4916,4797,4782,5040,4800,-4801,4674,4547,
X4992,4997,4614,4487,4488,4809,-4938,971,4488,4493,
X4558,5003,4800,4817,4818,4499,-4948,5076,4950,5076,
X4632,4505,4954,4891,4572,477,4950,5057,4992,5057,
X-4962,995,5028,4517,5090,487,4872,-4969,5066,5097,
X4524,5097,4718,5097,4848,4529,5090,-5043,5076,5076,
X5076,5107,4536,5097,5090,5107,4988,4925,5090,4607,
X1024,1,2,-4099,4,1029,-4102,5123,8,1033,
X1034,5123,-4108,5132,5126,5123,16,1041,1042,5123,
X1044,21,5126,-5127,-4120,5144,5144,27,5132,-5133,
X5126,5143,32,-4129,-4130,1059,1060,5153,5126,5153,
X1064,5153,5154,43,5132,45,5132,5153,1072,5153,
X5154,51,52,-5141,-5142,5143,5144,57,58,-5163,
X-5148,1085,5174,5179,64,4161,4096,5123,-4164,5188,
X4166,5123,4168,73,4106,4105,1100,-5133,5132,5197,
X4176,81,4114,4113,5188,-5141,86,5143,1112,-5145,
X90,4187,5144,1117,-5198,5214,-4192,1121,4194,99,
X5188,101,102,5216,5216,-5161,106,4203,108,4205,
X5216,5197,5216,-5169,114,4211,-5172,1141,4214,5205,
X120,4217,-5210,5179,1148,5149,5214,5179,128,4225,
X4226,1155,4,4101,1158,5123,8,4105,4106,139,
X4236,141,5126,-5255,4240,145,146,-5139,4116,21,
X-5142,1175,5144,4113,4114,4251,5144,5149,5270,5263,
X4256,1185,1186,163,4132,165,166,-5255,4136,169,
X170,43,172,45,-5262,5263,176,-5169,-5170,4275,
X52,1205,1206,5287,4144,4281,4282,5179,5180,4157,
X5294,5287,64,1217,4226,195,1220,197,198,-5255,
X4168,73,202,4299,204,4301,1230,5263,1232,81,
X4240,4307,212,1237,4310,5319,216,4313,4314,1243,
X-5276,5340,5214,5319,5216,5153,4194,99,5216,101,
X102,4327,5216,5225,106,4203,108,4205,4334,239,
X-5232,5233,5298,1267,5236,4213,4214,247,4344,1273,
X5242,5179,5340,253,254,5360,256,1281,1282,5123,
X1284,261,5126,-5127,-4360,5384,5384,267,5132,-5133,
X5384,5383,-4368,5392,5392,275,5392,-5141,278,1303,
X1304,281,282,-5387,5132,5149,5392,5403,1312,5153,
X5154,291,292,-5157,-5158,5383,5384,297,298,-5387,
X-5164,1325,5414,5419,5392,305,306,-5395,-5172,1333,
X1334,5427,312,-5401,-5402,1339,5180,5433,5434,5427,
X4416,321,4354,4353,5188,-5189,326,5383,1352,-5193,
X330,4427,332,1357,-5390,5454,1360,-5201,338,4435,
X340,1365,-5398,5462,344,4441,4376,5403,-5404,5468,
X5214,5403,5216,-5217,354,4451,-5220,1381,4454,5445,
X360,4457,-5418,5419,1388,5389,5454,5419,368,4465,
X-5426,5427,1396,5397,5462,5427,-5432,1401,4474,379,
X5468,381,1406,5496,256,4353,4354,387,4356,261,
X390,1415,4488,393,394,267,396,4493,-5390,5263,
X1424,-5265,-5266,4499,404,1429,4502,4375,408,4505,
X4506,5403,-5404,5532,5518,5263,4384,417,418,291,
X292,1445,1446,5287,424,297,298,4523,4524,4397,
X5294,1455,-5296,4529,4530,1459,1460,4405,4406,439,
X4536,5433,5434,443,5532,5433,5294,5552,4416,321,
X-5314,4547,5188,5445,5570,5319,5384,5449,5570,4427,
X332,4429,4558,463,5392,5457,5522,1491,340,4437,
X5462,471,344,1497,5570,5403,4572,477,478,-5535,
X5216,5473,5570,4451,5476,4453,4454,487,360,4457,
X5482,1515,4460,4453,494,-5551,5360,4465,5490,5427,
X4468,5173,5490,5143,5496,5433,1530,379,508,381,
X-5566,1535,512,-4609,-4610,1539,-4612,5633,1542,5633,
X-4616,5633,5634,5640,1548,5633,5634,5633,-4624,5633,
X5634,5648,5636,-5141,5648,1559,1560,5633,5634,-5643,
X5636,1565,5634,5659,1024,5153,1570,5633,5636,5636,
X550,5126,5640,5640,5640,1034,556,5132,-5646,1583,
X5648,5648,5648,1042,1044,5173,1590,567,568,5144,
X-5658,1595,1596,573,5678,-5679,-4672,1601,4674,579,
X5188,5633,5126,5123,1608,-5193,5640,4683,5132,5197,
X5696,5705,1616,-5201,5648,4691,5648,5205,-5654,5718,
X600,4697,4632,1627,5144,605,5214,5659,1632,5153,
X610,-5667,5636,5153,5154,5731,616,5225,-5674,1643,
X1100,4205,4718,5731,624,5233,-5682,1651,5236,629,
X5718,5718,1112,4217,5242,5179,5180,1117,5690,4735,
X512,5633,5634,4611,1668,5633,4614,-5639,4744,5633,
X5634,4611,652,517,4614,1679,5648,529,530,1683,
X5648,1685,1686,5767,4632,4761,4762,5659,532,4637,
X-5662,5790,1696,1185,1186,1155,676,-5669,550,4775,
X680,-5673,-5674,1707,556,1709,4782,4655,-5296,1713,
X1714,4275,1716,5797,694,567,4792,5801,5690,-5787,
X4668,4797,5790,5695,1728,5633,4674,579,4292,-5701,
X4740,5319,712,4809,4674,4683,-5708,1741,5836,5263,
X5648,1745,4818,723,-5716,5829,5718,5844,600,729,
X730,5659,5340,5829,5790,599,-5344,5856,5856,5731,
X5856,5797,5856,5287,5856,1769,5738,5731,5836,5801,
X4718,615,4848,5297,5746,1267,5844,5844,5844,-5815,
X4344,1273,5746,5819,764,4797,5790,1791,-4864,5633,
X5634,5888,5636,-5381,5888,1799,1800,5633,5634,-5643,
X5888,1805,5888,5899,1808,5633,5634,-5651,5636,1813,
X-5654,5907,792,-5657,-5658,1819,5888,5913,5910,5907,
X5888,5888,5888,1282,1284,5413,1830,807,808,5384,
X-5674,1835,1836,813,5678,-5903,816,5392,-5682,1843,
X1844,821,5910,5910,1304,5433,1850,5913,-5692,1853,
X5948,5695,1856,-5441,5888,4931,5888,5445,-5702,5958,
X840,4937,4872,1867,5384,845,4942,5899,848,4945,
X4880,1875,5392,853,1878,5907,-5720,1881,4954,859,
X5468,5913,5914,5403,864,5473,-5730,1891,5476,869,
X5958,5958,1352,4457,5482,5419,5420,1357,5930,5935,
X1360,4465,5490,5427,5428,1365,5938,5427,1912,5433,
X890,-5947,4988,4925,1406,6011,1920,5633,5634,-5763,
X5636,1925,-5766,5767,904,769,770,1931,772,909,
X5518,6019,4880,1937,1938,5907,-5780,6036,5910,5767,
X792,5913,5914,4891,5532,5913,5790,6019,928,-5793,
X-5794,1955,1956,5797,6022,6049,808,1961,1962,4523,
X4908,6049,5678,5935,5040,6049,5938,1459,6036,5797,
X6036,-5943,4536,5801,5802,5819,5948,4925,6050,6071,
X5696,5057,5570,6019,5636,5829,5958,6019,840,1993,
X5066,971,5836,5829,1998,839,848,4945,5522,5907,
X5076,5829,4950,-5975,5976,5913,4954,859,2012,853,
X4950,5599,5856,2017,5090,995,5028,6049,6050,-5991,
X5856,5097,5986,1515,-5996,6124,6124,5615,5552,-6001,
X5746,5107,6036,6129,5910,5879,-6008,6129,6136,6011,
X6124,6129,5630,4607,2048,-4097,-4098,6145,-4100,2053,
X6146,6145,-4104,2057,2058,6152,6148,6145,6146,6145,
X-4112,2065,2066,6160,2068,-6149,6160,6165,6152,6145,
X6146,-6155,6148,6165,6146,6171,-4128,6145,6146,2083,
X2084,6148,6148,6176,2088,6152,6152,-6155,6176,-6157,
X6176,6187,2096,6160,6160,-6163,-6164,6165,6196,6195,
X6176,-6169,-6170,6171,6196,2109,6202,6195,-4160,2113,
X6146,6208,6148,6145,2118,6208,2120,-6153,6152,6217,
X6152,6217,6208,6217,2128,-6161,6160,6225,6160,6165,
X-6166,6230,6208,6217,-6170,2139,6208,6225,6230,6171,
X6176,6145,2146,-6179,6176,-6181,-6182,6243,6152,6217,
X-6186,2155,-6188,2157,6246,6187,6160,6225,-6194,2163,
X6196,2165,2166,6195,-6200,2169,6202,6171,2172,6201,
X6202,6243,4096,4225,4226,2179,6148,4101,6146,-6151,
X6152,6145,6146,-6155,4236,4105,4106,6279,4240,4113,
X4114,-6163,4116,6165,4114,2199,2200,-6169,-6170,4251,
X-6172,2205,6298,6279,4256,2209,2210,4131,4132,-6181,
X-6182,6279,6176,-6185,-6186,6187,4136,6189,6310,6313,
X4144,-6193,-6194,4275,6196,2229,2230,6321,-6200,4281,
X4282,2235,2236,6309,6300,6321,6208,6145,2242,-6211,
X4292,4161,4166,6279,6208,6217,-6218,2251,4168,4301,
X6346,6283,6160,6225,-6226,2259,4176,4309,4310,6291,
X-6232,2265,4314,6171,6300,6297,6230,6339,6176,6145,
X4194,6243,6148,6245,6246,4327,6152,6313,6250,6243,
X6252,6245,4334,4203,6160,6321,6258,6195,6196,6321,
X6322,4211,4344,6201,2298,6171,6328,4217,-6366,6398,
X4096,4353,4354,2307,4356,4101,2310,-6151,6152,4105,
X4106,-6155,2316,-6157,-6158,6407,6160,4113,4114,-6163,
X4116,6165,-6166,2327,4376,4105,4106,6171,-6172,2333,
X6414,6407,4384,2337,2338,4131,4132,-6181,-6182,6407,
X4136,-6185,-6186,6187,-6188,4397,6414,6413,4144,-6193,
X-6194,6195,6196,2357,2358,6449,4136,6201,6202,4411,
X2364,4157,6428,6449,4416,4161,2370,-6211,2372,-6213,
X4166,6407,4168,6217,-6218,2379,-6220,2381,6414,6411,
X4176,6225,-6226,2387,-6228,2389,6230,6419,4168,4441,
X6234,4187,6428,6469,6482,6467,2400,-6241,4194,4451,
X-6244,4453,4454,6469,-6248,2409,6250,4203,4460,4205,
X6442,6497,-6256,2417,6258,4211,2420,4213,4214,6512,
X6264,4217,4474,4203,4220,4205,6512,6497,-4480,2433,
X2434,6528,6528,4353,6528,4487,2440,-6281,-6282,6283,
X4236,4493,6414,6407,6528,4225,4226,4499,-6292,2453,
X4502,6279,6528,4505,4506,4251,2460,-6429,6422,6557,
X2464,6528,6528,-6435,4384,4517,4518,6563,-6312,6313,
X6314,2475,4524,6437,6438,6563,4256,4529,4530,6563,
X2484,4277,4278,-6551,4536,4281,4282,6563,-6460,6557,
X6588,6583,6528,6145,6528,4547,4292,6469,-6470,2503,
X6152,6537,6346,4299,6476,4301,4558,4427,6160,6225,
X6354,4307,6484,4309,6598,4435,6360,4313,4314,4299,
X4572,6557,6598,6557,6528,6497,6146,6563,6500,6245,
X6598,4327,6504,6497,6250,6187,6500,6189,4334,-6575,
X6512,6449,6258,6195,6548,4465,6422,6583,2552,6201,
X4474,6171,6588,6557,6398,4607,2048,2561,2562,4611,
X2564,2053,4614,-6151,2568,2057,2058,-6155,4620,-6157,
X-6158,6663,2576,2065,2066,-6163,2068,2581,-6166,4631,
X4632,-6169,-6170,2587,-6172,4637,6670,6663,6176,6145,
X6146,2083,2084,2053,-6182,2599,2088,2057,2058,6187,
X-6188,2605,2606,4655,2096,2065,2066,6195,6196,6165,
X2614,6678,-6200,2617,2618,6681,2620,2109,6684,6712,
X6208,6145,4674,-6211,6148,6145,2118,2631,6152,6217,
X-6218,2635,6152,6669,6670,6667,6160,6225,-6226,2643,
X6160,6165,6230,6675,-6232,2649,2650,6171,2652,6681,
X6682,6171,2656,2113,2146,6243,6176,2661,6246,6663,
X2120,6217,2666,6187,6252,6189,4718,6187,2128,6225,
X2674,6195,6196,2165,6678,2679,6264,6201,6202,2139,
X6712,6201,6202,4735,-4736,6784,6784,6784,4740,-6277,
X6784,2695,4744,-6281,-6282,2699,6784,6669,6670,6663,
X6784,-6289,-6290,2707,-6292,4757,4758,6801,6784,2713,
X2714,6675,2716,6789,6678,6801,2720,2209,6784,2179,
X-6308,2725,6310,4775,-6312,2729,2730,6793,6700,-6701,
X4782,6829,-6320,2737,2738,6801,2740,2229,6804,6832,
X4792,6297,6298,2235,6820,4797,6832,6832,2752,-6337,
X2242,6339,6784,2757,4674,6279,-6344,2761,2762,6283,
X6856,6793,6794,6283,-6352,2769,2770,6291,2772,6801,
X6802,6291,6360,6297,6298,-6811,6300,6297,6298,6875,
X6784,6849,2242,6849,6820,6309,6310,6663,6824,6313,
X6314,6667,6824,6829,4718,2799,4848,6321,6322,6675,
X6832,6321,6322,-6839,2808,6681,2298,6875,6328,2813,
X6398,6903,-4864,6912,6912,4611,6912,-6405,4614,2823,
X4872,-6409,-6410,2827,4620,2829,2830,6921,4880,-6417,
X-6418,2835,-6420,4885,2838,4631,4632,6681,6682,4891,
X2844,4637,6670,6929,2848,2337,6912,2307,-6436,2853,
X4902,6917,-6440,2857,2858,6921,4908,6413,6952,4655,
X-6448,2865,2866,6929,2868,2357,4662,6960,6712,-6713,
X-6714,2875,4668,4925,6970,6969,2880,-6465,4674,4931,
X6912,2885,-6726,6982,-6472,2889,2890,4683,6476,6413,
X4942,6411,-6480,2897,2898,4691,2900,6929,4950,6419,
X6744,4697,4954,4683,6428,6977,6982,6977,6912,6497,
X2370,6977,6500,6437,6982,6982,6504,6441,6442,2379,
X2924,6441,4718,-6959,6512,6449,6450,2387,6960,6449,
X6450,-6967,-6776,2937,6970,7032,4988,6969,2942,7023,
X2944,2433,2434,-6787,4740,4997,-6790,7043,4744,2953,
X2954,5003,4872,6917,7046,7043,6784,5009,5010,7043,
X2964,4757,7046,-6935,4744,4761,4762,7043,6932,2973,
X7046,7063,2464,2433,2434,6563,5028,-6821,2982,7077,
X6568,6537,6538,2475,6948,6829,4782,2991,5040,-6833,
X-6834,2995,4788,7077,7090,6583,4792,6969,6970,-6971,
X6588,4797,7090,7099,4800,5057,-6850,3011,6528,6917,
X6598,7043,6856,4809,5066,6667,6984,6537,6982,-6991,
X6864,4817,7106,6675,5076,4945,4950,3031,6856,4809,
X7106,6875,6684,6557,3038,7119,6912,-6881,5090,7137,
X6948,7077,7046,7137,6568,5097,6922,6667,6568,7137,
X6670,6639,4848,7089,7090,5107,6932,7089,7090,6903,
X7032,6969,6970,7099,6588,7137,-7102,7166,2048,6145,
X6146,3075,6148,2053,3078,-6151,6152,2057,2058,-6155,
X3084,-6157,-6158,7175,6160,2065,2066,-6163,2068,6165,
X-6166,3095,3096,-6169,-6170,6171,-6172,3101,7182,7175,
X6176,3105,3106,2083,2084,-6181,-6182,7175,2088,-6185,
X-6186,6187,-6188,6189,7182,7181,2096,-6193,-6194,6195,
X6196,3125,3126,7217,-6200,6201,6202,3131,3132,2109,
X7196,7217,6208,2113,6146,6145,3140,-6213,2118,7175,
X2120,6217,6152,7179,-6220,3149,7182,7179,2128,6225,
X6160,7187,-6228,3157,6230,7187,-6232,3161,6234,2139,
X7196,7193,3166,7256,3168,-6241,2146,6243,-6244,6245,
X6246,7237,-6248,3177,6250,2155,6252,2157,7210,7265,
X-6256,3185,6258,2163,3188,2165,2166,7280,6264,2169,
X3194,6201,2172,7265,7280,7265,2048,3201,3202,2179,
X6148,2053,5126,6279,6152,2057,2058,6283,4236,7181,
X7182,5263,3216,2065,2066,5267,2068,6165,5270,2199,
X2200,6297,6298,3227,6300,2205,7190,-7311,3232,2209,
X2210,2083,2084,6309,6310,5287,2088,6313,6314,6187,
X7212,3245,5294,-7311,2096,5297,5298,3251,6196,2229,
X2230,-7319,6328,3257,3258,2235,2236,2109,-7326,7327,
X3264,2113,2242,6339,4292,7237,2118,5319,2120,6217,
X6346,2251,7244,7237,7182,-7311,2128,3281,6354,2259,
X7252,4309,3286,-7319,6360,2265,6234,2139,5340,5209,
X5214,7327,5216,7265,2146,6243,7268,6245,6246,3303,
X7272,7265,6250,2155,6252,2157,3310,7343,5360,7217,
X3314,2163,5236,2165,2166,7351,6264,2169,2298,2163,
X2172,2165,6398,7327,-5376,7424,7424,2307,7424,-6405,
X2310,3335,3336,-6409,-6410,6411,2316,3341,6414,7433,
X5392,-6417,-6418,6419,-6420,5397,6422,2327,5144,7193,
X7194,3355,6428,2333,3358,7441,7424,2337,2338,-7203,
X-6436,3365,3366,7459,-6440,6441,6442,3371,3372,4397,
X7464,7459,-6448,6449,6450,5427,5428,2357,2358,3383,
X7224,3385,3386,5179,2364,-7453,7472,7485,3392,-6465,
X2370,6467,2372,3397,-7238,7494,-6472,3401,6474,2379,
X6476,2381,5454,7489,-6480,3409,6482,2387,6484,2389,
X3414,7504,7256,5209,3418,-7451,5468,5197,5214,7515,
X2400,5473,-7266,7459,3428,4453,7494,7459,6504,2409,
X3434,6441,7464,-7469,7522,7533,6512,2417,3442,6449,
X2420,-7477,-7478,7541,3448,5225,5242,7515,-7484,7485,
X7542,7548,3456,2433,2434,2307,7424,7429,2310,6407,
X2440,6537,6538,6411,2316,6413,5518,5263,5392,5521,
X5522,5267,6548,2453,5270,2327,-7320,3481,3482,7576,
X5532,6557,7576,7327,2464,2337,2338,3491,7460,6437,
X6438,5287,6568,6441,6442,2475,6444,6437,5294,7343,
X5552,5297,5298,5427,2484,2357,2358,6583,3512,5433,
X7576,-7483,6588,7485,7358,7611,7424,7489,5570,6467,
X2372,6469,6598,2503,7496,7489,6474,2379,6476,2381,
X7494,7375,7504,7441,3538,2387,6484,2389,5462,7383,
X7576,7193,7576,7515,5340,6557,-7518,3551,2400,6497,
X7522,7459,6500,7205,7522,7175,6504,2409,7522,7179,
X6500,7533,5482,5615,3568,2417,5490,7187,2420,7541,
X7542,6583,2552,2417,7194,7611,7548,7541,5630,7611,
X4096,5633,5634,4611,5636,4101,4614,3591,5640,4105,
X4106,3595,4620,3597,3598,-7183,5648,4113,4114,3603,
X4116,5653,3606,4631,4632,3609,3610,5659,3612,4637,
X-7198,7695,6176,3105,3106,4131,4132,3621,6694,2599,
X4136,3625,3626,6187,6700,2605,5678,7695,4144,3633,
X3634,6195,6196,3125,2614,3095,6712,2617,5690,3131,
X2620,4157,7710,5695,5696,4161,4674,6723,3140,3653,
X4166,2631,4168,5705,6730,2635,7244,7181,7182,7695,
X4176,5713,6738,2643,3668,3157,5718,7187,6744,2649,
X2650,4187,2652,7193,7710,3679,2656,7265,4194,5731,
X7268,2661,7206,-7719,7272,7209,5738,4203,7212,7209,
X4718,7783,7280,7217,5746,4211,3188,7217,7218,7783,
X7224,4217,3194,-7739,7224,3709,7710,7803,6784,3201,
X3202,-7299,4740,3717,5634,5767,4744,6793,6794,7811,
X4236,6669,6670,7695,3216,6801,6802,7811,3732,4757,
X6678,-7703,2576,2713,2714,7811,2716,2581,5790,3743,
X2720,3201,3202,7811,6820,5797,6694,4775,6824,5801,
X5802,-7723,6700,6829,4782,7343,5808,2737,2738,3251,
X2740,4277,2614,3767,3768,3257,3258,5819,2620,3773,
X7358,5695,2752,6849,6784,7811,3780,5829,-7366,7878,
X6856,2761,2762,2635,5836,4301,7878,7375,6864,2769,
X2770,2643,5844,3797,7878,7383,6744,2649,2650,6875,
X2652,-7773,7710,7901,5856,3264,-7394,3811,6820,2661,
X7878,7783,6824,-7785,7906,7851,3820,7913,7906,2799,
X3824,3281,7906,-7795,-7796,7924,7924,5879,2808,7913,
X7906,7803,7924,7901,7358,7901,5888,5633,5634,-7427,
X5636,5893,-7430,7939,5640,3849,3850,5899,-7436,7948,
X7942,7695,5648,3857,3858,5907,3860,5653,5910,4375,
X5640,5913,5914,5659,7948,-7709,7710,7965,2848,7424,
X-7458,7459,6948,2853,7942,7942,6952,2857,5930,3371,
X7948,7948,3886,5935,6960,2865,5938,7442,2868,4405,
X4406,3383,-7480,6969,6970,2875,5948,7485,7992,5695,
X2880,5953,6912,3907,7424,2885,5958,7939,6984,2889,
X2890,4427,7948,7433,4942,-7759,6992,2897,2898,4435,
X2900,7441,5718,3927,5976,5705,4954,7515,-7772,3933,
X8028,8015,3392,6497,5986,5731,7460,4453,7970,7783,
X7464,4457,5738,-7787,2924,3949,-7790,7023,7472,4465,
X5746,5731,7472,3957,7542,7031,7032,2937,6970,6011,
X3964,7485,8046,-7999,2944,-7553,-7554,6019,5888,8065,
X6022,5767,6912,8065,8066,7939,7948,8065,7942,7695,
X-7568,8065,8066,7811,6036,4501,8080,3991,7576,8065,
X8066,2835,8080,7965,5790,7831,2848,6049,6050,8065,
X6948,7077,2982,4007,6952,5801,5802,7851,6948,2853,
X5930,2991,8080,7089,7090,2995,2868,4021,4022,6071,
X7992,6969,6970,7099,6588,-7997,-7998,8125,2880,4033,
X7106,3011,-7620,8132,4038,8132,6984,2889,5066,-7883,
X8132,2885,7878,7119,8080,2897,3538,-7891,8132,5829,
X7878,6103,4056,2897,2898,8139,8028,7901,7646,8147,
X4064,7137,7906,7939,8132,7077,8132,6119,-7912,7913,
X8168,8043,6124,-8045,8046,8173,8080,6129,7906,7923,
X7924,-8053,-8054,8181,6136,7913,-8058,4091,7924,8125,
X7166,8063,0,1,2,8192,4,-8193,8192,8197,
X8,-8193,-8194,8201,8192,8197,8202,8201,16,-8193,
X-8194,8209,-8196,21,8210,8209,8192,8201,8202,27,
X8212,8197,8210,8209,32,8192,8192,-8195,-8196,8197,
X8228,8227,-8200,8201,8202,43,8228,45,8232,8227,
X-8208,8209,8210,51,52,8212,8212,8240,8232,57,
X58,8227,8228,-8237,8240,8253,64,-8193,8192,8257,
X8192,8197,-8198,8262,-8200,73,8202,8264,8264,8201,
X8262,8257,-8208,81,8210,8272,8212,8209,86,8272,
X8264,8257,90,-8267,8272,8257,8262,8283,8192,8257,
X-8226,99,8228,101,102,8227,8232,8201,106,-8267,
X108,-8269,8290,8299,8240,8209,114,-8275,8240,-8277,
X-8278,8307,120,-8281,8290,8283,-8284,8253,8310,8307,
X128,-8193,-8194,8321,8192,8197,8322,8321,8192,8201,
X8202,139,-8204,141,8332,8332,-8208,145,146,8336,
X8212,8209,8336,8336,8336,8209,8210,-8331,8332,8321,
X8322,8347,-8224,8321,8322,163,8228,165,166,8227,
X8232,169,170,8227,172,8332,8332,8352,176,8336,
X8336,-8339,8240,-8341,-8342,8371,8240,-8345,-8346,8347,
X8352,8253,8374,8371,8192,8257,8322,195,-8260,197,
X198,8388,8264,8257,202,-8331,204,-8333,8262,8395,
X8272,8209,8210,-8339,212,-8341,-8342,8403,216,-8345,
X-8346,8283,8388,8397,8406,8347,8352,8321,8290,8227,
X8388,8388,8388,-8391,8232,8201,8290,8299,8332,8301,
X-8398,239,8240,8209,8210,8307,8212,8309,8310,247,
X-8376,8313,8378,8307,8316,253,254,8423,256,-8193,
X-8194,8449,-8196,261,8450,8449,8192,8201,8202,267,
X8452,8449,8450,8449,8192,8209,8210,275,8212,8197,
X278,-8455,-8216,281,282,8472,8472,8449,8472,8471,
X-8224,8449,8450,291,292,8452,8452,8480,8232,297,
X298,8227,8480,-8461,8480,8493,8240,305,306,8227,
END_OF_pyramid.tab.1
if test 41515 -ne `wc -c <pyramid.tab.1`; then
    echo shar: \"pyramid.tab.1\" unpacked with wrong size!
fi
# end of overwriting check
fi
echo shar: End of archive 4 \(of 4\).
cp /dev/null ark4isdone
MISSING=""
for I in 1 2 3 4 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked all 4 archives.
    rm -f ark[1-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0