#include <bits/stdc++.h>
using namespace std;
const int N = 8e5 + 20, K = 19;
const int mod = 1e9 + 7;
vector<int> graph[N];
pair<int, int> vec[31];
int dp[402][402][2][2][2];
int main() {
  int xx, yy, n, d;
  cin >> xx >> yy >> n >> d, d = d * d;
  for (int i = 0; i < n; i++) {
    scanf("%d%d", &vec[i].first, &vec[i].second);
  }
  for (int i = 0; i < 2; i++) {
    for (int j = 0; j < 2; j++) {
      for (int x = 200; x >= -200; x--) {
        for (int y = 200; y >= -200; y--) {
          for (int k = 0; k < 2; k++) {
            for (int z = 0; z < n; z++) {
              int mx = (x + vec[z].first);
              int my = (y + vec[z].second);
              if (mx * mx + my * my >= d) {
                dp[x + 200][y + 200][i][j][k] = (k ^ 1) + 1;
              } else {
                dp[x + 200][y + 200][i][j][k] =
                    dp[mx + 200][my + 200][i][j][k ^ 1];
                if (dp[x + 200][y + 200][i][j][k] == k + 1) break;
                if (k == 0 && i == 1) {
                  dp[x + 200][y + 200][i][j][k] =
                      dp[y + 200][x + 200][0][j][k ^ 1];
                  if (dp[x + 200][y + 200][i][j][k] == k + 1) break;
                }
                if (k == 1 && j == 1) {
                  dp[x + 200][y + 200][i][j][k] =
                      dp[y + 200][x + 200][i][0][k ^ 1];
                  if (dp[x + 200][y + 200][i][j][k] == k + 1) break;
                }
              }
            }
          }
        }
      }
    }
  }
  if (dp[xx + 200][yy + 200][1][1][0] == 1)
    puts("Anton");
  else
    puts("Dasha");
  return 0;
}
