#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define int long long #define rep(i, n) for (int i=0;i<(int)(n);++i) #define rep1(i, n) for (int i=1;i<=(int)(n);++i) #define rrep(i, n) for (int i=(int)(n)-1;i>=0;--i) #define rrep1(i, n) for (int i=(int)(n);i>=1;--i) #define range(i, l, r) for (int i=l;i<(int)(r);++i) #define rrange(i, l, r) for (int i=(int)(r)-1;i>=l;--i) #define unless(a) if(!(a)) #define all(a) begin(a),end(a) #define fst first #define scd second #define PB emplace_back #define PPB pop_back using vi=vector; using pii=pair; using vpii=vector; using ll=long long; constexpr int TEN(int n){return n==0?1:10*TEN(n-1);} templatebool chmin(T&a,T b){return a>b?(a=b,1):0;} templatebool chmax(T&a,T b){return a> n; vi a(n); rep(i, n) cin >> a[i]; rep(i, n - 1) { int len = n - i - 1; vi res(len); rep(j, len) { res[j] = (a[j] + a[j + 1]) % mod; } //rep(j, len) { // printf("%lld%c", res[j], j == len - 1 ? '\n' : ' '); //} a = res; } cout << a[0] << endl; }