#include <bits/stdc++.h>
using namespace std;
void delbit(int &a, int k) { a &= (~(1 << k)); }
bool getbit(int a, int k) { return 1 & (a >> k); }
int setbit(int &a, int k) { return a |= (1 << k); }
bool is_polindrom(string str) {
  int len = str.length();
  for (int i = 0; i < len / 2; i++)
    if (str[i] != str[len - i - 1]) return false;
  return true;
}
long long factorial(long long a) {
  long long res = 1;
  for (int i = 2; i <= a; i++) res *= i;
  return res;
}
struct Point {
  double x, y;
  void operator=(Point &p) {
    x = p.x;
    y = p.y;
  }
};
bool b[14][14];
int main() {
  int n, m, c, k;
  cin >> n >> m >> c >> k;
  for (int i = 0; i < c; i++) {
    int x, y;
    cin >> y >> x;
    b[y][x] = 1;
  }
  long long ans = 0;
  for (int i = 1; i < n + 1; i++) {
    for (int j = 1; j < m + 1; j++) {
      for (int y = 1; y <= n - i + 1; y++) {
        for (int x = 1; x <= m - j + 1; x++) {
          int r = 0;
          for (int o = y; o < y + i; o++)
            for (int z = x; z < x + j; z++)
              if (b[o][z]) r++;
          if (r >= k) ans++;
        }
      }
    }
  }
  cout << ans << endl;
  return 0;
}
