#include <iostream>
#include <vector>

using namespace std;

int main()
{
    int n, m, s,t, u, v;
    cin>>t;
    while(t--){
        cin>>n>>m>>s;
        vector<int>deca(s);
        for(int i=0; i<s; i++){
            cin>>deca[i];
        }
        vector<vector<int>>graf(n+1);
        vector<pair<int,int>>par;
        vector<int>deg(n+1, 0);
        for(int i=0; i<m; i++){
            cin>>u>>v;
            graf[u].push_back(v);
            graf[v].push_back(u);
            deg[u]++; deg[v]++;
            par.push_back({u,v});
        }
        if(m==n-1){
            bool ind=true;
            for(auto a:deca){
                if(deg[a]>1){
                    ind=false; break;
                }
            }
            if(ind){
                cout<<m<<"\n";
                for(auto a:par){
                    cout<<a.first<<" "<<a.second<<"\n";
                }
            }
            else cout<<-1<<"\n";
        }
    }



}