#include <iostream>
#include <stdio.h>
#include <math.h>
#define PI 3.141592653589
using namespace std;

double x[3],y[3],rx,ry,r;

int trgin() {
	int i,k;
	double a,b,c,d=0;
	for (i=0; i<3; i++) {
	 k=(i+1) % 3;
	 a=sqrt((x[i]-x[k])*(x[i]-x[k])+(y[i]-y[k])*(y[i]-y[k]));
	 b=sqrt((x[i]-rx)*(x[i]-rx)+(y[i]-ry)*(y[i]-ry));
	 c=sqrt((x[k]-rx)*(x[k]-rx)+(y[k]-ry)*(y[k]-ry));
     d=d+acos((b*b+c*c-a*a)/(2*b*c));
	}
	if ((d-PI*2)<0.000001 && (d-PI*2)>-0.000001) return 1;
	return 0;
}
int line(double x1,double y1,double x2,double y2) {
    double x,y,m,d;
	if (y1==y2) { x=rx;y=y1;} else if (x1==x2) { x=x1;y=ry;}
	else {
    m=(y2-y1)/(x2-x1);
	x=(ry-y1+m*x1+rx/m)/(m+1/m);
	y=y1+m*(x-x1);
	}
	if (((x>=x1 && x<=x2) || (x>=x2 && x<=x1)) && ((y>=y1 && y<=y2) || (y>=y2 && y<=y1))){
	d=(rx-x)*(rx-x)+(ry-y)*(ry-y);
    if (d==r*r) return 1; else if (d<r*r) return 2;
	}
	return 0;
}
int main() {
	int i,j,k,f;
	while(true) {
		for (i=0;i<3;i++) {
		cin >> x[i] >> y[i];
		if (x[i]==0) break;
	}
    if (i!=3) break;
	cin >> rx >> ry >> r;
    for (i=0;i<3;i++) if ((x[i]-rx)*(x[i]-rx)+(y[i]-ry)*(y[i]-ry)>r*r) break;
	if (i==3) { cout << 'b' << endl; continue;}
	for (i=0,f=0,k=0;i<3;i++) {
		j=line(x[i],y[i],x[(i+1) % 3],y[(i+1) % 3]); k+=j;
		if (j>1) break;
	}
	if (i==3) if (trgin()==1) { cout << 'a' << endl; continue;} else if (k==0) {cout << 'd' << endl; continue;}
	cout << 'c' << endl;
	}
return 0;
 }