from collections import deque def solve(): ans = 0 q = deque() ele = set() # キューに属する要素 s = 0 # キューの要素の合計 for _ in range(n): a = int(input()) # aが既にあった場合は過去のa以前をすべて削除 if a in ele: d = -1 while d != a: d = q.popleft() ele.remove(d) s -= d # キューにaを追加 q.append(a) ele.add(a) s += a # キューの和がw以下になるまで削除 while s > w: d = q.popleft() ele.remove(d) s -= d # 答えをキューの長さで更新 ans = max(ans, len(q)) print(ans) n,w=map(int,input().split()) solve()