#include<stdio.h>

#define Wmax 1000
#define Rmax 1000

void order(int i, int w);

int A[Wmax][Wmax];/*[??????no.][0:?????£??????, 1~n-2:???no.]*/
int c[Rmax];/*????????°*/
int p[Wmax];/*???????????????*/

int t;

int main(void)
{
  int i, j, k, w, r, n;
  scanf("%d", &w);/*????????°*/
  scanf("%d", &r);/*?????¶??°*/

  for(i=0; i<w; i++)
    {
      c[i]=0;
      for(j=0; j<w+1; j++)
	{
	  A[i][j]=w+1;
	}
    }  
  for(i=0; i<r; i++)
    {
      scanf("%d", &n);
      c[n]++;
      scanf("%d", &A[n][c[n]]);
    }

  t=0;
  for(i=0; i<w; i++)
    {
      if(A[i][0]!=0)
	{
         for(j=c[i]; j>0; j--)
            {
              if(A[A[i][j]][0]!=0)
                {
                  break;
                }
	    }
          if(j==0)
	    {
	      order(i, w);
	    }
	}
    }

  for(i=w; i>0; i--)
    {
      printf("%d\n", p[i-1]);
    }

  return 0;
}

void order(int i, int w)
{
  int j, k;

  A[i][0]=0;
  p[t]=i;
  t++;
  for(j=0; j<w; j++)
    {
      if(A[j][0]!=0)
	{
	  for(k=c[j]; k>0; k--)
	    {
	      if(A[j][k]==i)
		{
		  order(j, w);
		  break;
		}
	    }
	}
      if(A[j][k]==i)
	{
	  break;
	}
    }
  return;
}