#!/bin/python import sys from collections import deque def printShortestPath(n, i_start, j_start, i_end, j_end): if i_start%2!=i_end%2: print "Impossible" return if j_start%2==j_end%2 and i_start%4!=i_end%4: print "Impossible" return if j_start%2!=j_end%2 and i_start%4!=(i_end+2)%4: print "Impossible" return stack = deque([(('START', i_start, j_start),)]) while stack: path = stack.popleft() _, i_start, j_start = path[-1] if i_start < 0 or j_start < 0 or i_start > n or j_start > n: continue if len(set(x[1:3] for x in path)) != len(path): continue if abs(i_end - i_start) == 1 and abs(j_end - j_start) == 1: print "Impossible" return if i_end == i_start and j_end == j_start: print len(path) - 1 print " ".join(x[0] for x in path[1:]) return if i_end >= i_start: if j_end >= j_start: stack.append(path + (("LR", i_start + 2, j_start + 1),)) else: stack.append(path + (("LL", i_start + 2, j_start - 1),)) else: if j_end >= j_start: stack.append(path + (("UR", i_start - 2, j_start + 1),)) else: stack.append(path + (("UL", i_start - 2, j_start - 1),)) if j_end >= j_start: stack.append(path + (("R", i_start, j_start + 2),)) else: stack.append(path + (("L", i_start, j_start - 2),)) print "Impossible" 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)