#include <stdio.h>

int map[100][100];
int w, h, s, t;
int ans;

void tansaku();

main(){
  int n, x, y, i, j;

  while(1){
    scanf("%d", &n);
    if(n==0) break;

    scanf("%d %d", &w, &h);

    for(i=0;i<h;i++){
      for(j=0;j<w;j++){
        map[i][j]=0;
      }
    }

    for(i=0;i<n;i++){
      scanf("%d %d", &x, &y);
      x--;
      y--;
      map[y][x]=1;
    }

    scanf("%d %d", &s, &t);

    ans=-1;
    tansaku();

    printf("%d\n", ans);
  }
  return 0;
}

void tansaku(){
  int i, j, k, l, sum;

  for(i=0;i<h;i++){
    if((i+t-1)>=h) break;
    for(j=0;j<w;j++){
      if((j+s-1)>=w) break;

      sum=0;
      for(k=0;k<t;k++){
        for(l=0;l<s;l++){
          if(map[i+k][j+l]==1) sum++;
        }
      }
      if(ans<sum) ans=sum;
    }
  }
}