#include <stdio.h>
#include <stdlib.h>

int static_var;

static void read_shifted(int *a)
{
	int i;
	short *b=(void*)a;
	++b;
	a=(void*)b;
	i=a[0];
}

static void read_long(int *p)
{
	int z;
	z = *p;
	z <<= ~z;
	static_var = z;
}

static void free_arg(int *a)
{
	free(a);
}

static void read_page_zero(void)
{
	register long *b;
	b = (long*)4;
	b = (long*)*b;
}

main(void)
{
	register int *a,*b;
	int c;
/*	extern int *malloc();	*/
/*	AP_Init();		/**/
	a=malloc(4),malloc(400),malloc(12000),malloc(40000);
	if(a)
		{
		if(b=malloc(15)) {a[0]=b[-10];c=b[0];free(b);}
		if(a[1] == 0) c = 32;
		read_long(&c);b = &c;*b = 0;
		b = &static_var;
		*b = 15;
		read_shifted(a);
		free_arg(a);
		read_long(a);
		read_page_zero();
		}
	return 0;
}
