#include <bits/stdc++.h>
using namespace std;
const long long MOD = 1000000007;
const int NMAX = 5e5 + 5;
int m, k, n, s, win_size = 0;
int a[NMAX];
map<int, int> sfreq;
void solve() {
  cin >> m >> k >> n >> s;
  for (int i = 0; i < m; i++) cin >> a[i];
  for (int i = 0; i < s; i++) {
    int tmp;
    cin >> tmp;
    sfreq[tmp]++;
  }
  win_size = k + m - (k * n);
  map<int, int> rolling_freq;
  for (int i = 0; i < win_size; i++) rolling_freq[a[i]]++;
  int p1 = 0, p2 = win_size;
  while (p2 <= m) {
    if (p1 % k == 0) {
      bool isit = true;
      for (auto it : sfreq)
        if (rolling_freq[it.first] < it.second) isit = false;
      if (isit) {
        int tmp = win_size - k;
        std::cout << tmp << '\n';
        map<int, int> tmpfreq;
        int i = p1;
        while (tmp) {
          if (sfreq.count(a[i]) == 0 or tmpfreq[a[i]] >= sfreq[a[i]]) {
            std::cout << i + 1 << ' ';
            tmp--;
          }
          tmpfreq[a[i]]++;
          i++;
        }
        return;
      }
    }
    rolling_freq[a[p1]]--;
    rolling_freq[a[p2]]++;
    p1++;
    p2++;
  }
  std::cout << -1 << '\n';
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  solve();
  return 0;
}
