n,h=map(int,input().split()) a=[*map(int,input().split()),1<<30] b=[*map(int,input().split()),1<<30] m=c=s=r=d=p=0 for i in range(n): while s<=h: m=max(r,m) c+=1 r+=a[p] d+=b[p] s+=c*b[p] p+=1 c-=1 r-=a[i] s-=d d-=b[i] print(m)