#include <bits/stdc++.h>
using namespace std;
int N, M;
int tam[200005], ans[200005];
map<pair<int, int>, bool> ex;
int main() {
  cin.tie(0);
  ios_base::sync_with_stdio(0);
  cin >> N >> M;
  for (int m = 0; m < M; m++) {
    int u, v;
    cin >> u >> v;
    tam[u]++;
    tam[v]++;
    ex[{u, v}] = 1;
    ex[{v, u}] = 1;
  }
  for (int i = 1; i <= N; i++)
    if (tam[i] < N - 1) {
      cout << "YES\n";
      for (int j = 1; j <= N; j++)
        if (i != j && !ex[{i, j}]) {
          ans[i] = 1;
          ans[j] = 2;
          int id = 3;
          for (int k = 1; k <= N; k++)
            if (!ans[k]) ans[k] = id++;
          for (int i = 1; i <= N; i++) cout << ans[i] << " \n"[i == N];
          for (int i = 1; i <= N; i++)
            cout << (ans[i] == 2 ? 1 : ans[i]) << " \n"[i == N];
          exit(0);
        }
    }
  cout << "NO\n";
  return 0;
}
