#include <bits/stdc++.h>
using namespace std;
const int N = 5e5 + 5;
int m, k, n, s, b[N], c[N], rc[N], a[N], rem, complete, R;
void add(int x) {
  ++c[x];
  if (c[x] <= rc[x]) ++complete;
  --rem;
}
void remove(int x) {
  if (c[x] <= rc[x]) --complete;
  --c[x];
  ++rem;
}
void print(int st) {
  cout << R - k << endl;
  int r = R - k;
  for (int i = st; i < st + R; i++) {
    if (r && c[a[i]] > rc[a[i]]) printf("%d ", i + 1), c[a[i]]--, r--;
  }
}
int main() {
  cin >> m >> k >> n >> s;
  for (int i = 0; i < m; i++) scanf("%d", a + i);
  for (int i = 0; i < s; i++) scanf("%d", b + i), rc[b[i]]++;
  rem = m - n * k + k;
  R = rem;
  for (int i = 0; i < R; i++) add(a[i]);
  if (complete == s) {
    print(0);
    return 0;
  }
  for (int i = k; i < m - k + 1; i += k) {
    for (int j = i - k; j < i; ++j) remove(a[j]);
    for (int j = i - k + R; j < i + R; j++) add(a[j]);
    if (complete == s) {
      print(i);
      return 0;
    }
  }
  cout << -1;
}
