#include <stdio.h>
#include <stdbool.h>

char s[13][7];
int order[24] = {0, 1, 2, 0, 3, 2, 2, 1, 0, 2, 3, 0,
                 3, 0, 1, 3, 2, 1, 1, 0, 3, 1, 2, 3};
int nds[24] = {4, 0, 7, 6, 1, 5, 5, 2, 6, 7, 3, 4,
               3, 4, 0, 1, 5, 2, 2, 6, 1, 0, 7, 3};
int ds[8] = {1, 3, 1, 3, 0, 2, 0, 2};
int dx[4] = {0, 1, 0, -1}, dy[4] = {-1, 0, 1, 0};
char ls[8] = {'R', 'L', 'R', 'L', 'U', 'D', 'U', 'D'};
int i, j;

bool doesWallExist(int x, int y, int d){
    // printf("%d, %d, %d, %d, %d: ", x, y, d, x+(dx[d]-1)/2, 2*y+(dy[d]-1)/2);
    if(s[2*y+dy[d]][x+(dx[d]-1)/2] == '1'){
        //puts("o");
        return true;
    }
    //puts("x");
    return false;
}

int main(){
    for(i=0;i<13;i++){
        for(j=0;j<7;j++){
            s[i][j] = '0';
        }
    }

    for(i=2;i<=10;i++){
        int ub = i%2?5:4;
        for(j=0;j<ub;j++){
            scanf("%c", &s[i][j+1]);
        }
        scanf("%*c");
    }

    bool f = false;
    int x = 1, y = 1, d = 0;
    while(!(x == 1 && y == 1 && f)){
        if(!f){f = true;}

        // printf("%d, %d, %d\n", x, y, d);
        putchar(ls[d]);
        x += dx[ds[d]]; y += dy[ds[d]];

        for(i=0;i<3;i++){
            if(doesWallExist(x, y, order[d*3+i])){
                d = nds[d*3+i];
                break;
            }
        }
    }
    puts("");

    /* for(int i=0;i<13;i++){ */
    /*     for(int j=0;j<7;j++){ */
    /*         putchar(s[i][j]); */
    /*     } */
    /*     puts(""); */
    /* } */

    return 0;
}