#include using namespace std; using ll = long long; template T smax(T & x, T y) { if (x < y) { x = y; return true; } return false; } template T smin(T & x, T y) { if (x > y) { x = y; return true; } return false; } void solve() { int n, m; cin >> n >> m; cout << "YES\n"; vector forward; vector backward; for (int i = 0; i < m; ++i) { int a, b; cin >> a >> b; if (a < b) { forward.push_back(i + 1); } else { backward.push_back(i + 1); } } if (forward.size() >= backward.size()) { cout << forward.size() << "\n"; for (auto i : forward) { cout << i << " "; } } else { cout << backward.size() << "\n"; for (auto i : backward) { cout << i << " "; } } cout << "\n"; } int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int t = 1; // cin >> t; cout << fixed << setprecision(14); while (t--) { solve(); } cerr << clock() * 1.0 / CLOCKS_PER_SEC << "\n"; return 0; }