#include <bits/stdc++.h>
const int N = 5e5 + 5;
int a[N], b[N], c[N], p[N], t, d, g, k, s, n, m;
bool check(int x, int y) {
  int z = (x - 1) / k + 1;
  if (y - g <= z * k) {
    for (int i = (z - 1) * k + 1; i < x && t < g; ++i) p[++t] = i;
    for (int i = x; i <= y && t < g; ++i)
      if (c[a[i]]-- > b[a[i]]) p[++t] = i;
    return 1;
  }
  return 0;
}
int main() {
  int j = 0, x, q;
  scanf("%d%d%d%d", &m, &k, &n, &s);
  g = m - k * n;
  for (int i = 1; i <= m; ++i) scanf("%d", &a[i]);
  for (int i = 1; i <= s; ++i) scanf("%d", &x), ++b[x];
  for (int i = 1; i <= m; ++i) {
    for (; d < s && ++j <= m;)
      if (++c[a[j]] <= b[a[j]]) ++d;
    if (d == s && check(i, j)) {
      printf("%d\n", t);
      for (int i = 1; i <= t; ++i) printf("%d ", p[i]);
      return 0;
    }
    if (c[a[i]]-- <= b[a[i]]) --d;
  }
  puts("-1");
  return 0;
}
