#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
ll n, m;
cin>>n>>m;
set<ll> st;
for(ll i=1 ; i<=n ; i++)
st.insert(i);
for(ll i=0 ; i<m ; i++){
ll a, b;
cin>>a>>b;
if(st.count(a));
st.erase(a);
if(st.count(b))
st.erase(b);
}
ll center = *(st.begin());
cout<<n-1<<"\n";
for(ll i=1 ; i<=n ; i++){
if(i == center)
continue;
cout<<center<<" "<<i<<"\n";
}
return 0;
}
1547C - Pair Programming | 550A - Two Substrings |
797B - Odd sum | 1093A - Dice Rolling |
1360B - Honest Coach | 1399C - Boats Competition |
1609C - Complex Market Analysis | 1657E - Star MST |
1143B - Nirvana | 1285A - Mezo Playing Zoma |
919B - Perfect Number | 894A - QAQ |
1551A - Polycarp and Coins | 313A - Ilya and Bank Account |
1469A - Regular Bracket Sequence | 919C - Seat Arrangements |
1634A - Reverse and Concatenate | 1619C - Wrong Addition |
1437A - Marketing Scheme | 1473B - String LCM |
1374A - Required Remainder | 1265E - Beautiful Mirrors |
1296A - Array with Odd Sum | 1385A - Three Pairwise Maximums |
911A - Nearest Minimums | 102B - Sum of Digits |
707A - Brain's Photos | 1331B - Limericks |
305B - Continued Fractions | 1165B - Polycarp Training |