#include<bits/stdc++.h>
using namespace std;
const int N=1e6+10;
int n,mod;
long long nums[N];
long long dp[N];
long long Count[N];
int main(){
scanf("%d %d",&n,&mod);
for(int i=1;i<=n;++i)
scanf("%lld",nums+i);
long long sum=nums[1];
long long maxx=sum;
dp[1]=sum;
for(int i=2;i<=n;++i){
if(sum<0)
sum=nums[i];
else
sum+=nums[i];
maxx=max(maxx,sum);
dp[i]=maxx;
}
Count[1]=dp[1];
long long ans=Count[1];
maxx=Count[1]+dp[1];
for(int i=2;i<=n;++i){
if(maxx<Count[i-1]+dp[i-1])maxx=Count[i-1]+dp[i-1];
Count[i]=maxx;
ans=max(ans,Count[i]);
}
ans%=mod;
printf("%lld",ans);
return 0;
}