import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; public class Solution { static void printShortestPath(int n, int i_start, int j_start, int i_end, int j_end) { // Print the distance along with the sequence of moves. StringBuilder ans = new StringBuilder(""); int moves = 0; int tempi = i_start-i_end; int tempj = j_start-j_end; if(i_start==i_end && j_start==j_end) { moves=0; } else if(i_start==i_end) { if(tempj>0) { if(tempj%2!=0) ans.append("Impossible"); else{ moves = tempj/2; for(int i=1;i<=moves;i++) ans.append("L "); } } else{ if(tempj%2!=0) ans.append("Impossible"); else{ moves = (tempj*-1)/2; for(int i=1;i<=moves;i++) ans.append("R "); } } } else if(j_start==j_end) { if(tempi>0) { if(tempi%4!=0) ans.append("Impossible"); else{ moves = tempi/2; int halfMoves = moves/2; for(int i=1;i<=halfMoves;i++) ans.append("UL "); for(int i=1;i<=halfMoves;i++) ans.append("UR "); } } else{ if(tempi%4!=0) ans.append("Impossible"); else{ moves = (tempi*-1)/2; int halfMoves = moves/2; for(int i=1;i<=halfMoves;i++) ans.append("LR "); for(int i=1;i<=halfMoves;i++) ans.append("LL "); } } } else { if(tempi%2!=0) ans.append("Impossible"); else { if(tempi>0 && tempj>0) { int movesUL = tempi/2,movesL = tempj-movesUL; if(movesL%2!=0) ans.append("Impossible"); else { for(int i=1;i<=movesUL;i++) ans.append("UL "); movesL /= 2; for(int i=1;i<=movesL;i++) ans.append("L "); moves = movesUL+movesL; } } else if(tempi>0 && tempj<0) { int movesUR = tempi/2,movesR = (tempj*(-1))-movesUR; if(movesR%2!=0) ans.append("Impossible"); else { for(int i=1;i<=movesUR;i++) ans.append("UR "); movesR /= 2; for(int i=1;i<=movesR;i++) ans.append("R "); moves = movesUR+movesR; } } else if(tempi<0 && tempj>0) { int movesLL = (tempi*-1)/2,movesL = tempj-movesLL; if(movesL%2!=0) ans.append("Impossible"); else { for(int i=1;i<=movesLL;i++) ans.append("LL "); movesL /= 2; for(int i=1;i<=movesL;i++) ans.append("L "); moves = movesLL+movesL; } } else { int movesLR = (tempi*-1)/2,movesR = (tempj*-1)-movesLR; if(movesR%2!=0) ans.append("Impossible"); else { movesR /= 2; for(int i=1;i<=movesR;i++) ans.append("R "); for(int i=1;i<=movesLR;i++) ans.append("LR "); moves = movesLR+movesR; } } } } String answer = ans.toString().trim(); if(answer.length()==0) System.out.println(moves); else if(answer.equals("Impossible")) System.out.println(answer); else { System.out.println(moves); System.out.println(answer); } } public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); int i_start = in.nextInt(); int j_start = in.nextInt(); int i_end = in.nextInt(); int j_end = in.nextInt(); printShortestPath(n, i_start, j_start, i_end, j_end); in.close(); } }