N=int(input()) K=int(input()) A=[0]*N for i in range(N): A[i]=i for i in range(K): u,v=map(int,input().split()) u-=1 v-=1 A[u],A[v]=A[v],A[u] print(A) B=list(map(int,input().split())) for i in range(N): B[i]-=1 C=[0]*N for i in range(N): C[B[i]]=i print(C) ans=[] for i in range(N): j=0 while C[i]!=A[j]: j+=1 while j!=i: ans.append((j,j+1)) A[j],A[j-1]=A[j-1],A[j] j-=1 print(len(ans)) for i in range(len(ans)): print(ans[i][0],ans[i][1],'')