#include <iostream>
#include <complex>
using namespace std;

typedef complex<double> P;
#define EPS (1e-10)
#define EQ(a,b) (abs((a)-(b)) < EPS)

double cross(P a,P b){
	return (a.real() * b.imag() - a.imag() * b.real());
}

int is_parallel(P a1,P a2,P b1,P b2){
	return EQ(cross(a1-a2,b1-b2),0.0);
}

int is_intersected_ls(P a1,P a2,P b1,P b2){
	return cross(a2-a1,b1-a1)*cross(a2-a1,b2-a1) < EPS &&
		cross(b2-b1,a1-b1)*cross(b2-b1,a2-b1) < EPS;
}

P intersection_ls(P a1,P a2,P b1,P b2){
	P b = b2 - b1;
	double d1 = abs(cross(b,a1-b1));
	double d2 = abs(cross(b,a2-b1));
	double t = d1 / (d1 + d2);
	return a1 + (a2 - a1) * t;
}

double polygon_area(int n, P p[]){
	double s = cross(p[n-1],p[0]);
	for(int i=0;i<n-1;i++) s += cross(p[i],p[i+1]); 
	return fabs(s) / 2;
}

int main(void){
	while(1){
		double s=0;
		P l[3][2],p[3];

		for(int i=0;i<3;i++){
			if(!(cin>>l[i][0].real()>>l[i][0].imag()>>l[i][1].real()>>l[i][1].imag())) return 0;
		}

		for(int i=0;i<3;i++){
			int j = (i + 1) % 3;
			if(is_parallel(l[i][0],l[i][1],l[j][0],l[j][1]) ||
				 !is_intersected_ls(l[i][0],l[i][1],l[j][0],l[j][1])){
				s = -1;
				break;
			}
			else{
				p[i] = intersection_ls(l[i][0],l[i][1],l[j][0],l[j][1]);
			}
		}

		if(s == -1 || p[0]==p[1] && p[1]==p[2]){
			cout<<"kyo\n";
		}
		else{
			s = polygon_area(3,p);
			if(s >= 1900000) cout<<"dai-kichi\n";
			else if(s >= 1000000) cout<<"chu-kichi\n";
			else if(s >= 100000) cout<<"kichi\n";
			else cout<<"syo-kichi\n";
		}
	}

	return 0;
}