#include <bits/stdc++.h>
using namespace std;
struct Node {
  int l, r, idx;
  bool operator<(const Node& node) const {
    return l == node.l ? r < node.r : l < node.l;
  }
};
int main() {
  int n;
  scanf("%d", &n);
  vector<Node> g;
  for (int i = 0; i < n; ++i) {
    Node node;
    scanf("%d %d", &node.l, &node.r);
    node.idx = i + 1;
    g.push_back(node);
  }
  sort(g.begin(), g.end());
  vector<int> ans;
  for (int i = 0; i < n; ++i) {
    bool flag = true;
    int cur = 0;
    for (int j = 0; j < n; ++j)
      if (j != i) {
        if (g[j].l < cur) {
          flag = false;
          break;
        }
        cur = g[j].r;
      }
    if (flag) ans.push_back(g[i].idx);
  }
  sort(ans.begin(), ans.end());
  printf("%d\n", ans.size());
  if (!ans.empty()) {
    for (auto i : ans) printf("%d ", i);
    printf("\n");
  }
}
