N, K = map(int, input().split())
A = list(map(int, input().split()))

cumsum = [0]
cummaxsum = [0]
for a in A:
    cumsum.append(cumsum[-1] + a)
    cummaxsum.append(cummaxsum[-1] + max(0, a))

ans = 0
for left in range(N-K+1):
    right = left + K

    # 区間leftからrightまで、負になるなら0（白色)、正になるなら累積和をもとに（黒色）
    score = max(0, cumsum[right] - cumsum[left])
    # 左端からleftまで自由に色を塗る
    score += cummaxsum[left]
    # rightから右端まで自由に色を塗る
    score += cummaxsum[-1] - cummaxsum[right]

    ans = max(ans, score)

print(ans)