#include<iostream>
#include<cmath>
#include<algorithm>

using namespace std;

struct Point{
  double x, y;
  Point(){ x = 0; y = 0; }
  Point(double x_, double y_){ x = x_; y = y_; }
  void SetPoint(double x_, double y_){ x = x_; y = y_; }
};

struct Line{
  double a, b, c;
  Line(){ a = 0; b = 0; c = 0; }
  Line(double a_, double b_, double c_){ a = a_; b = b_; c = c_; }
  void SetLine(double a_, double b_, double c_){ a = a_; b = b_; c = c_; }
};

struct Circle{
  double x, y, r;
  Circle(){ x = 0; y = 0; r = 0; }
  Circle(double x_, double y_, double r_){ x = x_; y = y_; r = r_; }
  void SetCircle(double x_, double y_, double r_){ x = x_; y = y_; r = r_; }
};

double GetDistance(const Point a, const Point b){
  return sqrt(pow(a.x-b.x, 2) + pow(a.y-b.y, 2));
}

Line GetStraightLine(const Point& a, const Point& b){
  Line l;
  double x = a.x - b.x;
  double y = a.y - b.y;
  l.SetLine(y, -x, x*a.y - y*a.x);
  return l;
}

bool IsAttached(const Circle& c, const Line& l){
  double d = abs(l.a*c.x + l.b*c.y + l.c)/(sqrt(pow(l.a, 2) + pow(l.b, 2)));
  if(d < c.r) return true;
  else return false;
}

char Solved(const Point& a, const Point& b,
	    const Point& c, const Circle& cir){
  Point center(cir.x, cir.y);

  if(cir.r >= GetDistance(center, a) && cir.r >= GetDistance(center, b) &&
     cir.r >= GetDistance(center, c)) return 'b';

  Line ab = GetStraightLine(a, b);
  Line bc = GetStraightLine(b, c);
  Line ca = GetStraightLine(c, a);

  if(IsAttached(cir, ab) || IsAttached(cir, ab) || IsAttached(cir, ab)) return 'c';

  double max_x = max(a.x, max(b.x, c.x));
  double min_x = min(a.x, min(b.x, c.x));
  double max_y = max(a.y, max(b.y, c.y));
  double min_y = min(a.y, min(b.y, c.y));

  if(min_x <= cir.x - cir.r && cir.x + cir.r <= max_x &&
     min_y <= cir.y - cir.r && cir.y + cir.r <= max_y) return 'a';

  return 'd';
}

int main(){
  Point a, b, c;
  Circle cir;

  while(1){
    cin >> a.x >> a.y;
    if(a.x == 0 && a.y == 0) break;
    cin >> b.x >> b.y;
    cin >> c.x >> c.y;
    cin >> cir.x >> cir.y >> cir.r;
    cout << Solved(a, b, c, cir) << endl;
  }
  return 0;
}