problem

Given a sequence of n integers a1, a2, ..., an and a positive integer k (1 ≤ k ≤ n), then the sum of k consecutive integers Si = ai + ai + Create a program that outputs the maximum value of 1 + ... + ai + k-1 (1 ≤ i ≤ n --k + 1).



input

The input consists of multiple datasets. Each dataset is given in the following format. The input ends on a line containing two zeros.

On the first line, the positive integer n (1 ≤ n ≤ 100000) and the positive integer k (1 ≤ k ≤ n) are written in this order, separated by blanks. The first + i lines after the second line. (1 ≤ i ≤ n) contains the i-th term ai (-10000 ≤ ai ≤ 10000) in the sequence. Of the scoring data, 60% of the points are n ≤ 5000, k ≤ 1000. Meet.

The number of datasets does not exceed 5.

output

The maximum value of Si is output to one line for each data set.

Examples

Input

5 3
2
5
-4
10
3
0 0


Output

11


Input

None


Output

None
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Collections;
import java.util.LinkedList;


public class Main {

	public static void main(String[] args) {
		Main main = new Main();
		main.maximumSumCalculation();
		return;
	}
	
	//数値の列の中から、連続して並ぶk個の整数の和の最大値を求める
	private void maximumSumCalculation() {
		
		BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in)); //標準入力
		
		while (true) {
			
			try {

				String inputStr = bufferedReader.readLine();
				String[] inputStrs = inputStr.split(" ");
				int sequenceNum = Integer.parseInt(inputStrs[0]); //数列全体の数
				int integerColumnNum = Integer.parseInt(inputStrs[1]); //kの数
				
				if ((sequenceNum + integerColumnNum) == 0) {
					break;
				}
				
				int[] sequenceArray = new int[sequenceNum]; //数列
				LinkedList<Integer> integerColumnList = new LinkedList<Integer>(); //k個の整数の和のリスト

				for (int i = 0; i < sequenceNum; i++) {

					String inputNumStr = bufferedReader.readLine();
					sequenceArray[i] = Integer.parseInt(inputNumStr);

				}

				for (int i = 0; i < sequenceNum; i++) {

					int tmp = 0;

					try {

						for (int j = 0; j < integerColumnNum; j++) {
							tmp += sequenceArray[j + i];
						}

						integerColumnList.add(tmp);

					} catch (ArrayIndexOutOfBoundsException e) {

						break;

					}

				}

				Collections.sort(integerColumnList);
				Collections.reverse(integerColumnList);

				System.out.println(integerColumnList.get(0));

			} catch (IOException e) {
				// TODO 自動生成された catch ブロック
				e.printStackTrace();
			}
		}
		
	}
}