#include using namespace std; int n,si,sj,ei,ej; int minv=INT_MAX; vector v; map , int > m; int ni,nj; int dp[205][205]; vector dps[205][205]; int type = 0; queue< pair > q; int d = 0,x,y; map prior, rev; //UL, UR, R, LR, LL, L bool check(){ int x = ni; int y = nj; if(x>=0 && x=0 && y top = q.front(); q.pop(); x = top.first; y = top.second; ni = x-2; nj= y-1; //UL util("UL"); ni = x-2; nj= y+1; //UR util("UR"); ni = x; nj = y+2; //R util("R"); ni = x+2; nj= y+1; //LR util("LR"); ni = x+2; nj= y-1; //LL util("LL"); ni = x; nj = y-2; //L util("L"); } } int main() { cin>>n>>si>>sj>>ei>>ej; prior["UL"] = "1"; prior["UR"] = "2"; prior["R"] = "3"; prior["LR"] = "4"; prior["LL"] = "5"; prior["L"] = "6"; rev["1"] = "UL"; rev["2"] = "UR"; rev["3"] = "R"; rev["4"] = "LR"; rev["5"] = "LL"; rev["6"] = "L"; solve(); if(dp[ei][ej]==INT_MAX) cout<< "Impossible"; else{ cout<< dp[ei][ej] << endl; for(auto it:dps[ei][ej]) cout<< it << " "; } }