#!/bin/python import sys def printShortestPath(n, i_start, j_start, i_end, j_end): # Print the distance along with the sequence of moves. y=i_end-i_start x=j_end-j_start s=[] c=0 while y!=0 or x!=0: #print i_start,i_end,j_start,j_end if y%2!=0 : print 'Impossible' return else: if y<=-2 and x<0: i_start-=2 j_start-=1 #print 'UL' s.append('UL') c+=1 elif y<=-2 and x>0: i_start-=2 j_start+=1 #print 'UR' s.append('UR') c+=1 elif x>=2 and x%2==0 and y==0: j_start+=2 #print 'R' s.append('R') c+=1 elif y>=2 and x>0: i_start+=2 j_start+=1 #print 'LR' s.append('LR') c+=1 elif y>=2 and x<0: i_start+=2 j_start-=1 #print 'LL' s.append('LL') c+=1 elif x<=-2 and x%2==0 and y==0: j_start-=2 #print 'L' s.append('L') c+=1 elif x==0 and y%4==0 and y<0: i_start-=2 j_start-=1 #print 'UR' s.append('UL') c+=1 elif x==0 and y%4==0 and y>0: i_start+=2 j_start+=1 #print 'LL' s.append('LR') c+=1 else: print 'Impossible' return y=i_end-i_start x=j_end-j_start print c my_own_order = ['UL','UR','R','LR','LL','L'] order = {key: i for i, key in enumerate(my_own_order)} print ' '.join(sorted(s, key=lambda d: order[d])) if __name__ == "__main__": n = int(raw_input().strip()) i_start, j_start, i_end, j_end = raw_input().strip().split(' ') i_start, j_start, i_end, j_end = [int(i_start), int(j_start), int(i_end), int(j_end)] printShortestPath(n, i_start, j_start, i_end, j_end)