#include <bits/stdc++.h>
using namespace std;

int main() {
  int h,w,n,m;
  cin >> w >> h >> m >> n;
  string s[h],t[n];
  for(int i=0; i<h; i++) cin >> s[i];
  for(int i=0; i<n; i++) cin >> t[i];
  bitset<600> b[n][256];
  for(int i=0; i<n; i++) {
    for(int j=0; j<m; j++) {
      if(t[i][j]!='?') b[i][t[i][j]].set(j);
      else for(int k=0; k<256; k++) b[i][k].set(j);
    }
  }
  int ans=0;
  for(int i=0; i<h-n+1; i++) {
    bitset<600> r[n];
    for(int j=0; j<w; j++) {
      int cnt=0;
      for(int k=0; k<n; k++) {
        r[k]=(r[k]<<1).set(0);
        if(s[i+k][j]!='?') r[k]&=b[k][s[i+k][j]];
        if(r[k][m-1]) cnt++;
      }
      if(j>=m-1&&cnt==n) ans++;
    }
  }
  cout << ans << endl;
  return 0;
}
