#include <bits/stdc++.h>
using namespace std;
long long t, n, m, u, v, q, r, ql, qr, k, l, s, w, h, c, d, x, f;
const int N = 505;
int a[N * N];
int b[N * N];
int deg[N];
int ans[N];
int adj[N][N];
int Ans[N][N];
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  memset(ans, -1, sizeof(ans));
  cin >> n >> m;
  for (int i = 1; i <= m; ++i) {
    cin >> a[i] >> b[i];
    ++deg[a[i]];
    ++deg[b[i]];
    adj[a[i]][b[i]] = 1;
    adj[b[i]][a[i]] = 1;
  }
  for (int i = 1; i <= n; ++i) {
    if (deg[i] == n - 1) {
      ans[i] = 1;
    }
  }
  for (int i = 1; i <= n; ++i) {
    if (ans[i] == -1) {
      ans[i] = 0;
      for (int j = 1; j <= n; ++j) {
        if (!adj[i][j]) {
          if (ans[j] == -1) {
            ans[j] = 2;
          }
        }
      }
    }
  }
  for (int i = 1; i <= n; ++i) {
    if (ans[i] != -1) {
      for (int j = i + 1; j <= n; ++j) {
        if (ans[j] != -1) {
          if (abs(ans[i] - ans[j]) <= 1) {
            Ans[i][j] = 1;
            Ans[j][i] = 1;
          }
        }
      }
    }
  }
  for (int i = 1; i <= n; ++i) {
    for (int j = 1; j <= n; ++j) {
      if (adj[i][j] != Ans[i][j]) {
        cout << "No\n";
        return 0;
      }
    }
  }
  cout << "Yes\n";
  for (int i = 1; i <= n; ++i) {
    cout << char('a' + ans[i]);
  }
  cout << '\n';
}
