#include<bits/stdc++.h>
using namespace std;
#define LL long long
#define ULL unsinged LL
#define STR string
int e[1010][1010];
LL cnt,cntt,sta,n,m,rd[1000100],cd[1000100],head[1000100],ans[10000100],t;
void in()
{
cin>>n>>m;
for(int i=1;i<=m;i++)
{
LL v1,v2;
cin>>v1>>v2;
e[v1][v2]++;
rd[v2]++;
cd[v1]++;
}
}
void dfs(LL x)
{
for(int i=1;i<=n;i++)
{
if(e[x][i]>0)
{
e[x][i]--;
dfs(i);
}
}
t++;
ans[t]=x;
}
void core()
{
bool flag=false;
for(int i=1;i<=n;i++)
if(cd[i]!=rd[i])flag=true;
for(int i=1;i<=n;i++)
{
if(cd[i]==1+rd[i])
{
sta=i;
cnt++;
}
if(rd[i]==1+cd[i])cntt++;
if(cd[i]-rd[i]>=2||rd[i]-cd[i]>=2)
{
cout<<"No";
exit(0);
}
}
// cout<<sta<<endl;
if(!flag)
{
dfs(1);
for(int i=t;i>=1;i--)
cout<<ans[i]<<" ";
exit(0);
}
if(cnt==1&&cntt==1)
{
dfs(sta);
for(int i=t;i>=1;i--)
cout<<ans[i]<<" ";
exit(0);
}
}
void out()
{
cout<<"No";
}
int main()
{
//freopen("1.in","r",stdin);
//freopen("1.out","w",stdout);
in();
core();
out();
return 0;
}
RE60分
蒟蒻求助