#include #include #include using namespace std; bool euler_path(vector> &g, int s = -1) { vector cnt(2); for (auto &v: g) cnt[v.size() % 2]++; if (cnt[1] == 0) return true; if (cnt[1] == 2 && (s == -1 || g[s].size() % 2 == 1)) return true; return false; } int main() { int n, m; cin >> n >> m; vector> g(n); while (m--) { int a, b; cin >> a >> b; g[a].emplace_back(b); g[b].emplace_back(a); } cout << (euler_path(g) ? "YES" : "NO") << endl; return 0; }