#include <bits/stdc++.h>
using namespace std;
const int maxN = 202;
int mem[2 * maxN][2 * maxN][8];
vector<pair<int, int> > ve;
int N, D, p[32];
int f(int x, int y, int mask) {
  int &res = mem[x + maxN][y + maxN][mask];
  if (res >= 0) return res;
  int pl = mask & p[0];
  if (!(mask & p[pl + 1]) && !f(y, x, mask ^ p[0] ^ p[pl + 1])) return res = 1;
  for (__typeof((ve).begin()) i = ((ve).begin()); i != (ve).end(); ++i) {
    int nx = x + i->first, ny = y + i->second;
    if (hypot(nx, ny) <= D && !f(nx, ny, mask ^ p[0])) return res = 1;
  }
  return res = 0;
}
int main() {
  for (int i = 0; i < (32); ++i) p[i] = 1 << i;
  int x, y, n;
  scanf("%d", &x);
  scanf("%d", &y);
  scanf("%d", &n);
  scanf("%d", &D);
  ve.resize(n);
  for (int i = 0; i < (n); ++i)
    scanf("%d", &ve[i].first), scanf("%d", &ve[i].second);
  memset(mem, 0xff, sizeof(mem));
  printf("%s\n", f(x, y, 0) ? "Anton" : "Dasha");
  return 0;
}
