#include #define in cin #define out cout #define abs(x) ((x>0)?(x):(-(x))) #define max(a,b) ((a)>(b)?(a):(b)) #define min(a,b) ((a)<(b)?(a):(b)) #define FOR(i, a, b) for(int i = a; i <= b; ++i) #define DOWNFOR(i, a, b) for(int i = a; i >= b; --i) #define FOREACH(i, t) for (typeof(t.begin()) i = t.begin(); i != t.end(); ++i) using namespace std; typedef long long ll; int N,a,b,K,m[101][101]; int x[10001],y[10001]; int main(){ #ifndef ONLINE_JUDGE ifstream in("test.in"); ofstream out("test.out"); #endif in>>N>>a>>b; if(min(a,b)>1){ out<<"Impossible\n"; return 0; } if(a==1 && b==1){ if(N==2 || N==3){ out<<"Impossible\n"; return 0; } out<1) P=N-a+1; else P=N-b+1; for(int i=1;i<=P;i++) for(int j=i+1;j<=P;j++) m[i][j]=1; if(b>1){ for(int i=1;i<=N;i++) for(int j=i+1;j<=N;j++) if(m[i][j]) x[++K]=i,y[K]=j; } else{ for(int i=1;i<=N;i++) for(int j=i+1;j<=N;j++) if(!m[i][j]) x[++K]=i,y[K]=j; } out<