#include "liss_bool.h"
#include "liss_list.h"
#include "liss_set.h"

int factorial(int n, int m[4], int *a, int *d)
{
	int res = 1;

	while (n > 0)
	{
		res = res * n;
		n = n - 1;
	}

	/*
	writeLn(xn);
	writeLn(xn);
	writeLn(xn);
	writeLn(xn);
	writeLn(xn);
	*/
	for((*a)=0; (*a)<=3; (*a)+=1)
	{
		d[(*a)] = (*a) * res;
	}

	return res;
}

int calculate(int *d, int *a)
{
	int fac = 6, xn = 4;
	int res = -16;

	res = factorial(fac,d, &(*a), d);

	return res / 2;
}

/* xzdfgh
dafhad */
void main()
{
	/* dfsfh */
	int a = 4, b = 5, c = 5, xn = 10;
	/* dfzgdf */
	int d[4] = {10,20,30,40}, ev[4] = {0};
	int liss0 = 0;

	/*dfhdsf */
	/* THIS FILE WAS GENERATED TO BE USED IN CADUCEUS
	 * THIS CODE LINES WILL NOT BE READ BY CADUCEUS
	printf("%d", xn);
	printf("\n");
	*/

	/* aehadh */
	/* THIS FILE WAS GENERATED TO BE USED IN CADUCEUS
	 * THIS CODE LINES WILL NOT BE READ BY CADUCEUS
	printf("%d", xn);
	printf("\n");
	*/

	/* THIS FILE WAS GENERATED TO BE USED IN CADUCEUS
	 * THIS CODE LINES WILL NOT BE READ BY CADUCEUS
	printf("%d", xn);
	printf("\n");
	*/

	a = calculate(d, &a);

	/* THIS FILE WAS GENERATED TO BE USED IN CADUCEUS
	 * THIS CODE LINES WILL NOT BE READ BY CADUCEUS
	printf("%d", a);
	printf("\n");
	*/

	/* THIS FILE WAS GENERATED TO BE USED IN CADUCEUS
	 * THIS CODE LINES WILL NOT BE READ BY CADUCEUS
	printf("[");
	for(liss0=0; liss0<4; liss0++)
	{
		if (liss0==3)
			printf("%d", d[liss0]);
		else
			printf("%d,", d[liss0]);
	}
	printf("]");
	printf("\n");
	*/

}
