#include<bits/stdc++.h>
#define x first
#define y second
#define PII pair<int,int>
#define PLL pair<long long,long long>
#define REP(i,a,b) for(int i=a;i<=b;i++)
#define PER(i,a,b) for(int i=b;i>=a;i--)
#define int __int128
using namespace std;
const int N=1e6+5;
int n,p,a[N],ans=LONG_MIN,dp[N],b[N],s;
int read(){
char ch;
int x=0;
bool flag=0;
while(ch=getchar(),!isdigit(ch))
if(ch=='-')flag=1;
while(isdigit(ch)){
x=x*10+ch-'0';
ch=getchar();
}
if(flag)x=-x;
return x;
}
void write(int x){
if(x<0){
putchar('-');
x=-x;
}
if(x>9)write(x/10);
putchar(x%10+'0');
}
signed main(){
ios::sync_with_stdio(0);
cin.tie(0), cout.tie(0);
n=read(),p=read();
for(int i=1;i<=n;i++){
a[i]=read(); if(i==1)dp[i]=a[i];
else dp[i]=max(dp[i-1]+a[i],a[i]);
}ans=s=b[1]=dp[1];
for(int i=2;i<=n;i++){
b[i]=s+b[i-1];
s=max(s,dp[i]);
ans=max(ans,b[i]);
}
write(ans%p);
}