#include <bits/stdc++.h>
using namespace std;
#ifdef LOCAL
  #include "settings/debug.cpp"
  #define _GLIBCXX_DEBUG
#else
  #define Debug(...) void(0)
#endif
#define rep(i, n) for (int i = 0; i < (n); ++i)
using ll = long long;
using ull = unsigned long long;

#include <atcoder/modint>
using mint = atcoder::static_modint<1'000'003>;

int main() {
  int x, n;
  cin >> x >> n;
  vector<int> a(n);
  rep(i, n) cin >> a[i];
  mint ans = 0;
  rep(i, n) ans += mint(x).pow(a[i]);
  cout << ans.val() << endl;
  return 0;
}