//54
#include<iostream>
#include<complex>
#include<cmath>
#include<algorithm>

using namespace std;

typedef complex<double> P;

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

bool in(double a,double b,double c,double d){
  return !(max(a,b)<min(c,d)||max(c,d)<min(a,b));
}

bool is(P *a,P *b){
  return in(a[0].real(),a[1].real(),b[0].real(),b[1].real())
    &&in(a[0].imag(),a[1].imag(),b[0].imag(),b[1].imag())
    &&cr(a[1]-a[0],b[1]-a[0])*cr(a[1]-a[0],b[0]-a[0])<=0
    &&cr(b[1]-b[0],a[1]-b[0])*cr(b[1]-b[0],a[0]-b[0])<=0;
}

int main(){
  for(;;){
    P l[3][2];
    for(int i=0;i<3;i++){
      int x,y,xx,yy;
      cin>>x>>y>>xx>>yy;
      if(i==0&&(x|y|xx|yy)==0)return 0;
      l[i][0]=P(x,y);
      l[i][1]=P(xx,yy);
    }
    double a=0;
    if(is(l[0],l[1])&&is(l[1],l[2])&&is(l[2],l[0])){
      P cp[3];
      for(int i=0;i<3;i++){
	P a,b,c,d;
	a=l[i][0];
	b=l[i][1];
	c=l[(i+1)%3][0];
	d=l[(i+1)%3][1];
	double d1=fabs(cr(a-b,c-b)),d2=fabs(cr(a-b,d-b));
	cp[i]=(d-c)*d1/(d1+d2)+c;
      }
      a=fabs(cr(cp[1]-cp[0],cp[2]-cp[0])/2);
    }
    double as[]={0,.1,100000,1000000,1900000};
    const char *ls[]={"kyo","syo-kichi","kichi","chu-kichi","dai-kichi"};
    cout<<ls[upper_bound(as,as+5,a)-as-1]<<endl;
  }
  return 0;
}