#include<bits/stdc++.h>
using namespace std;
//priority_queue<int,vector<int>,greater<int>>q;
vector<int> topo(int V, vector<vector<int>>& adj )
{
vector<int> indegree(V, 0);
for(int i = 0; i < V; i++)
for(int v : adj[i])
indegree[v]++;
// priority_queue<int,vector<int>,greater<int>>q;
// priority queue pair<int,int>
queue<int>q;
for(int i = 0; i < V; i++)
if(indegree[i] == 0)
q.push(i);
vector<int> result;
while(!q.empty())
{
// int u = q.top();
int u=q.front();
q.pop();
result.push_back(u);
for(int v : adj[u])
{
indegree[v]--;
if(indegree[v] == 0)
q.push(v);
}
}
if(result.size() != V) // cyc
return {};
return result;
}
int main()
{
int V, E;
cin >> V >> E;
vector<vector<int>> adj(V);
//priority_queue<int,vector<int>,greater<int>>q;
for(int i=0;i<V;i++)
{
int x;
cin >> x;
// q.push(x);
}
for(int i = 0; i < E; i++)
{
int u, v;
cin >> u >> v;
u--;
v--;
adj[u].push_back(v);
}
vector<int>result=topo(V,adj);
for(int x:result)
{
cout<<x+1<<" ";
}
}
/*
5 4
10 7 6 1 4
5 1
4 5
2 5
3 4
*/
/*
*/
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIC8vcHJpb3JpdHlfcXVldWU8aW50LHZlY3RvcjxpbnQ+LGdyZWF0ZXI8aW50Pj5xOwp2ZWN0b3I8aW50PiB0b3BvKGludCBWLCB2ZWN0b3I8dmVjdG9yPGludD4+JiBhZGogKQp7CiAgICB2ZWN0b3I8aW50PiBpbmRlZ3JlZShWLCAwKTsKCiAgICBmb3IoaW50IGkgPSAwOyBpIDwgVjsgaSsrKQogICAgICAgIGZvcihpbnQgdiA6IGFkaltpXSkKICAgICAgICAgICAgaW5kZWdyZWVbdl0rKzsKCiAgLy8gIHByaW9yaXR5X3F1ZXVlPGludCx2ZWN0b3I8aW50PixncmVhdGVyPGludD4+cTsKICAvLyBwcmlvcml0eSBxdWV1ZSBwYWlyPGludCxpbnQ+CiAgICAgIHF1ZXVlPGludD5xOwoKICAgIGZvcihpbnQgaSA9IDA7IGkgPCBWOyBpKyspCiAgICAgICAgaWYoaW5kZWdyZWVbaV0gPT0gMCkKICAgICAgICAgICAgcS5wdXNoKGkpOwoKICAgIHZlY3RvcjxpbnQ+IHJlc3VsdDsKCiAgICB3aGlsZSghcS5lbXB0eSgpKQogICAgewogICAgICAgLy8gaW50IHUgPSBxLnRvcCgpOwogICAgICAgaW50IHU9cS5mcm9udCgpOwogICAgICAgIHEucG9wKCk7CgogICAgICAgIHJlc3VsdC5wdXNoX2JhY2sodSk7CgogICAgICAgIGZvcihpbnQgdiA6IGFkalt1XSkKICAgICAgICB7CiAgICAgICAgICAgIGluZGVncmVlW3ZdLS07CiAgICAgICAgICAgIGlmKGluZGVncmVlW3ZdID09IDApCiAgICAgICAgICAgICAgICBxLnB1c2godik7CiAgICAgICAgfQogICAgfQoKICAgIGlmKHJlc3VsdC5zaXplKCkgIT0gVikgLy8gY3ljCiAgICAgICAgcmV0dXJuIHt9OwoKICAgIHJldHVybiByZXN1bHQ7Cn0KCmludCBtYWluKCkKewogICAgaW50IFYsIEU7CiAgICBjaW4gPj4gViA+PiBFOwogICAgdmVjdG9yPHZlY3RvcjxpbnQ+PiBhZGooVik7CiAgICAgLy9wcmlvcml0eV9xdWV1ZTxpbnQsdmVjdG9yPGludD4sZ3JlYXRlcjxpbnQ+PnE7CiAgICBmb3IoaW50IGk9MDtpPFY7aSsrKQogICAgewogICAgICAgIGludCB4OwogICAgICAgIGNpbiA+PiB4OwogICAvLyAgICBxLnB1c2goeCk7CiAgICB9CiAgICBmb3IoaW50IGkgPSAwOyBpIDwgRTsgaSsrKQogICAgewogICAgICAgIGludCB1LCB2OwogICAgICAgIGNpbiA+PiB1ID4+IHY7CiAgICAgICAgdS0tOwogICAgICAgIHYtLTsKICAgICAgICBhZGpbdV0ucHVzaF9iYWNrKHYpOwogICAgfQogICAgdmVjdG9yPGludD5yZXN1bHQ9dG9wbyhWLGFkaik7CiAgICAgIGZvcihpbnQgIHg6cmVzdWx0KQogICAgICB7CiAgICAgICAgICBjb3V0PDx4KzE8PCIgIjsKICAgICAgfQoKfQovKgo1IDQKMTAgNyA2IDEgNAo1IDEKNCA1CjIgNQozIDQKKi8KLyoKCiovCg==