#import using namespace std;long n,h[1<<17],G[1<<17],i,u,v,p[1<<18],q,x;main(){for(cin>>n>>u;i>h[i];for(i=0;cin>>u>>v;G[i++]=h[u]*n*n+u*n+v)if(h[--u]>h[--v])swap(u,v);sort(G,G+i);p[0]=p[2*n-1]=n+1;for(i=0;x=G[i++];q=max(q,(p[v]=max(p[v],p[u]+1))+(p[v+n]=max(p[v+n],p[u+n]+1))-2*n))u=x/n%n,v=x%n;cout<