#include <bits/stdc++.h>
using namespace std;
const long long int maxn = 400000;
long long int mas[maxn];
long long int ans[maxn];
long long int mn[maxn];
long long int pref[maxn];
long long int min1[maxn];
long long int rem[maxn];
int main() {
  ios_base::sync_with_stdio(false), cin.tie(0), cout.tie(0);
  long long int n, m, k;
  cin >> n >> m >> k;
  pref[0] = 0;
  for (int i = 0; i < n; i++) {
    cin >> mas[i];
    pref[i + 1] = pref[i] + mas[i];
  }
  for (int i = 1; i <= n; i++) {
    long long int k1 = -(k * (i / m));
    if (i % m != 0) {
      k1 -= k;
    }
    ans[i] = k1;
    mn[i] = ans[i];
  }
  long long int max1 = 0, rem = -1, rem1 = 0;
  long long int sum = 0;
  for (long long int i = 0; i < m; i++) {
    sum += mas[i];
    long long int min2 = 0;
    for (int j = 0; j < i; j++) {
      min2 = min(min2, pref[j + 1]);
    }
    min2 += k;
    max1 = max(max1, sum - min2);
    min1[i] = min2;
  }
  for (long long int i = m; i < n; i++) {
    sum += mas[i];
    long long int min2 = min1[i - m] + k;
    for (int j = i - m; j < i; j++) {
      min2 = min(min2, pref[j + 1] + k);
    }
    max1 = max(max1, sum - min2);
    min1[i] = min2;
  }
  cout << max1;
}
