func_code_string: #include <bits/stdc++.h>   using namespace std;   const int N = 5e5 + 5;   unordered_map<long long, long long> m1, mp;   long long m, k, n, s;   bool check() {     for (auto it : mp) {       if (it.second > m1[it.first]) return false;     }     return true;   }   int main() {     ios::sync_with_stdio(0);     cin.tie(0);     cout.tie(0);     int t = 1;     while (t--) {       cin >> m >> k >> n >> s;       long long a[m];       long long i, j;       for (int i = 0; i <= m - 1; i++) {         cin >> a[i];       }       long long b[s];       for (int i = 0; i <= s - 1; i++) {         cin >> b[i];         mp[b[i]]++;       }       long long del = m - n * k;       long long req = del + k;       for (i = 0; i < m; i += k) {         m1.clear();         for (j = i; j < min(m, i + req); j++) {           m1[a[j]]++;         }         if (check()) {           cout << del <<   n ;           for (j = i; j < min(i + req, m); j++) {             if (del > 0 && m1[a[j]] > mp[a[j]]) {               cout << j + 1 <<    ;               del--;               m1[a[j]]--;             }           }           return 0;         }       }       cout << -1 <<   n ;     }     return 0;   }   