#include using namespace std; int flag=0; vector v; /* UL=0 UR=1 R=2 LR=3 LL=4 L=5 */ int ans(int n, int i_start, int j_start, int i_end, int j_end) { //printf("%d %d %d\n",i_start,j_start); if(flag==1 || flag==2) { return flag; } if(abs(i_start-i_end)==1) { flag=2; return flag; } else if( ( i_start==i_end && (abs(j_start-j_end))%2==1 ) || ( j_start==j_end && (abs(i_start-i_end))%4!=0 ) ) { flag=2; return flag; } else if(i_start==i_end && j_start==j_end) { flag=1; return flag; } else if(i_start==i_end) { if(j_startj_end) { v.push_back(4); ans(n,i_start+2,j_start-1,i_end,j_end); if(flag!=0) { return flag; } } else if(i_start>i_end && j_starti_end && j_start>j_end) { v.push_back(0); ans(n,i_start-2,j_start-1,i_end,j_end); if(flag!=0) { return flag; } } } return flag; } int main() { int n; cin >> n; int i_start; int j_start; int i_end; int j_end,tmp; cin >> i_start >> j_start >> i_end >> j_end; tmp=ans(n, i_start, j_start, i_end, j_end); if(tmp==2) { printf("Impossible\n"); } if(tmp==1) { cout<