#include<string>
#include<vector>
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstdlib>
#include<sstream>
#include<functional>
#include<map>
#include<set>
#include<cmath>

#define REP(i,s,e) for(int i=int(s);i<int(e);i++)
#define rep(i,n) for(int i=0;i<int(n);i++)

using namespace std;

bool f(double x,double y,double x0,double y0,double x4,double y4,double r){
double p=(x0-x)*(y0-y4)-(x0-x4)*(y0-y);
double q=(y0-y)*(y0-y)+(x0-x)*(x0-x);
if(x-x0!=0 && y-y0!=0){
if(abs(p)/sqrt(q)<=r && (-p*(y0-y)/q)>=min(x,x0) && (-p*(y0-y)/q)<=max(x,x0))
return true;
else return false;
}
if(x-x0==0 && abs(x0)<=r && sqrt(r*r-x0*x0)<=max(y,y0) && -sqrt(r*r-x0*x0)>=min(y,y0))
return true;
else return false;
if(y-y0==0 && abs(y0)<=r && sqrt(r*r-y0*y0)<=max(x,x0) && -sqrt(r*r-y0*y0)>=min(x,x0))
return true;
else return false;
}

bool g(double x1,double y1,double x2,double y2,double x3,double y3,double x4,double y4,double r){
double p=(y1-y4)/(x1-x4);
double q=(y2-y3)/(x2-x3);
double u=((y3-y4)-q*(x3-x4))/(p-q)-x1+x4;
double v=(p*(y3-y4)-p*q*(x3-x4))/(p-q)-y1+y4;
if((x1-x4)!=0 && (x2-x3)!=0 && (p-q)!=0 && sqrt(u*u+v*v)>sqrt((x1-x4)*(x1-x4)+(y1-y4)*(y1-y4))+r && !f(x3-x4,y3-y4,x2-x4,y2-y4,x4,y4,r))
return true;
else return false;
if((x1-x4)==0 && (x2-x3)!=0 && abs(y1-y4)+r<abs(y1-y3+q*(x3-x4)) && !f(x3-x4,y3-y4,x2-x4,y2-y4,x4,y4,r))
return true;
else return false;
if((x2-x3)==0 && (x1-x4)!=0 && sqrt((x1-x4)*(x1-x4)+(y1-y4)*(y1-y4))+r<sqrt((x2-x1)*(x2-x1)+(p*x2-p*x4-y1+y4)*(p*x2-p*x4-y1+y4)) && !f(x3-x4,y3-y4,x2-x4,y2-y4,x4,y4,r))
return true;
else return false;

}

int main(){

double x1,y1,x2,y2,x3,y3,x4,y4,r;

while(true){

cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3 >> x4 >> y4 >> r;

if(x1==0 && y1==0) break;


double a,b,c;
a=(x1-x4)*(x1-x4)+(y1-y4)*(y1-y4);
b=(x2-x4)*(x2-x4)+(y2-y4)*(y2-y4);
c=(x3-x4)*(x3-x4)+(y3-y4)*(y3-y4);

if(a<r*r && b<r*r && c<r*r)
cout << "b" << endl;

if(!(a<r*r && b<r*r && c<r*r) && !(a>r*r && b>r*r && c>r*r))
cout << "c" << endl;


if(a>r*r && b>r*r && c>r*r){

if(f(x1,y1,x2,y2,x4,y4,r) || f(x2,y2,x3,y3,x4,y4,r) || f(x1,y1,x3,y3,x4,y4,r))
cout << "c" << endl;

else if(g(x1,y1,x2,y2,x3,y3,x4,y4,r) && g(x2,y2,x1,y1,x3,y3,x4,y4,r) && g(x3,y3,x2,y2,x1,y1,x4,y4,r))
cout << "a" << endl;

else cout << "d" << endl;

}


}

	return 0;
}