#include <bits/stdc++.h>
using namespace std;
void execute();
int main() {
  ios_base::sync_with_stdio(0);
  execute();
  return 0;
}
map<long long, long long> b, loc;
long long sov, sz;
void pl(long long v) {
  loc[v]++;
  if (loc[v] == b[v]) sov++;
}
void mn(long long v) {
  if (loc[v] == b[v]) sov--;
  loc[v]--;
}
void execute() {
  long long m, k, n, second, len;
  cin >> m >> k >> n >> second;
  vector<long long> in(m);
  len = m - n * k + k;
  for (int i = 0; i < m; i++) cin >> in[i];
  for (int i = 0, r; i < second; i++) {
    cin >> r;
    b[r]++;
  }
  sz = b.size();
  for (int i = 0; i < len; i++) pl(in[i]);
  for (int i = 0; i < n; i++) {
    if (sov == sz) {
      cout << len - k << '\n';
      for (int j = k * i, cnt = 0; j < k * i + len; j++) {
        if (loc[in[j]] > b[in[j]] && cnt < len - k) {
          cout << j + 1 << ' ';
          loc[in[j]]--;
          cnt++;
        }
      }
      return;
    }
    for (int j = len + k * i; j < min(k * (i + 1) + len, m); j++) pl(in[j]);
    for (int j = k * i; j < min(k * (i + 1), m); j++) mn(in[j]);
  }
  cout << -1;
}
