#include <bits/stdc++.h>
using namespace std;
template <typename K, typename V>
multimap<V, K> invertMap(map<K, V> const &map) {
  multimap<V, K> multimap;
  for (auto const &pair : map) {
    multimap.insert(std::make_pair(pair.second, pair.first));
  }
  return multimap;
}
bool sf(string a, string b) {
  if (b.find(a) != string::npos) return true;
  return false;
}
int main() {
  ios::sync_with_stdio(false), cin.tie(0);
  int n, v;
  cin >> n >> v;
  vector<int> ans;
  for (int i = 0; i < n; i++) {
    int t;
    cin >> t;
    bool _ = true;
    for (int j = 0, k; j < t; j++) {
      cin >> k;
      if (_ && v > k) {
        ans.emplace_back(i + 1);
        _ = false;
      }
    }
  }
  cout << ans.size() << "\n";
  for (auto x : ans) cout << x << " ";
}
