import bisect
N,X=map(int,input().split())
A=list(map(int,input().split()))
ans=0
B=[0]+A+A
for i in range(1,len(B)):
    B[i]+=B[i-1]
for i in range(N):
    s=min(bisect.bisect_right(B,B[i]+X)-1,i+N)
    ans=max(ans,B[s]-B[i])
print(ans)