import Data.Char
import Data.IORef
import Control.Monad
import Data.List

count :: (a -> Bool) -> [a] -> Int
count p = foldr (\a acc -> if p a then acc + 1 else acc) 0

-- '0' -> 0, '1' -> 1, ..., '9' -> 9
charToInt :: Char -> Int
charToInt a = ord a - ord '0'

-- 各桁の和
sumOfDigits :: Int -> Int
sumOfDigits = sum . map charToInt . show

interleave :: [a] -> [a] -> [a]
interleave (x:xs) (y:ys) = x : y : interleave xs ys

uninterleave :: [a] -> ([a], [a])
uninterleave = foldr (\x (xs, ys) -> (x:ys, xs)) ([], [])

flipOrder :: Ordering -> Ordering
flipOrder GT = LT
flipOrder LT = GT
flipOrder EQ = EQ

sortRev :: Ord a => [a] -> [a]
sortRev = sortBy (\a b -> flipOrder $ compare a b)

intList :: [Int] -> [Int]
intList = id

int :: Int -> Int
int = id

gridDistance :: Num a => (a, a) -> (a, a) -> a
gridDistance (x1, y1) (x2, y2) = abs (x2 - x1) + abs (y2 - y1)

main = do
  [sx, sy, tx, ty] <- intList . map read . words <$> getLine
  let way1 = replicate (tx - sx) 'R' ++ replicate (ty - sy) 'U'
  let way2 = replicate (tx - sx) 'L' ++ replicate (ty - sy) 'D'
  let way3 = 'D' : replicate (tx - sx + 1) 'R' ++ replicate (ty - sy + 1) 'U' ++ "L"
  let way4 = 'U' : replicate (tx - sx + 1) 'L' ++ replicate (ty - sy + 1) 'D' ++ "R"
  putStrLn $ way1 ++ way2 ++ way3 ++ way4
