#include <bits/stdc++.h>
using namespace std;
#define int long long
#define f first
#define s second
#define pb push_back
const int N=1e5+1;
struct coord{
int a;
int b;
};
vector<coord>pin;
int n;
int ocup[2*N+2];
signed main(){
cin>>n;
int mod=2*n;
for (int i=0; i<mod; i++)
ocup[i]=1;
int ans=n;
for(int i=0; i<n; i++){
int x,y;
cin>>x>>y;
if ((x+y)%mod==1)ans--;
if(y<x) swap(x,y);
pin.pb({x,y});
}
cout<<ans<<endl;
for (int i=0; i<n; i++) {
if ((pin[i].a+pin[i].b)%mod==1)continue;
int z=pin[i].a;
int y=pin[i].b;
if (ocup[y]>1)swap(z,y);
cout<<i<<" "<<z<<" "<<(mod+1-y)%mod<<endl;
ocup[z]--;
ocup[(mod+1-y)%mod]++;
}
}