#include using namespace std; using ll = long long; using vl = vector; using vvl = vector; #define REP(i,n) for(ll i = 0; i < (n); ++i) int main() { cin.tie(0); ios_base::sync_with_stdio(false); cout << fixed << setprecision(50); ll n, m; cin >> n >> m; vvl g(n); vector> ab; REP(i, m) { ll a, b; cin >> a >> b; a--; b--; g[a].push_back(b); g[b].push_back(a); } queue> que; que.push(tuple(0, 0, -1)); while (!que.empty()) { ll d, cur, prev; tie(d, cur, prev) = que.front(); que.pop(); if (d > 5) break; for (auto e : g[cur]) if (prev != e) { if (d + 1 == 5 && e == 0) { cout << "YES" << endl; return 0; } que.push(tuple(d + 1, e, cur)); } } cout << "NO" << endl; return 0; }