Scanf.scanf "%s" (fun s ->
    let n = String.length s in

    let rec loop i =
        if i = n then "YES" else
            if n - i >= 7 && String.sub s i 7 = "dreamer" then (
                if n - i = 7 then "YES" else
                    if s.[i + 7] = 'a' then loop (i + 5) else loop (i + 7)
            ) else
            if n - i >= 6 && String.sub s i 6 = "eraser"  then loop (i + 6) else
            if n - i >= 5 && String.sub s i 5 = "dream"   then loop (i + 5) else
            if n - i >= 5 && String.sub s i 5 = "erase"   then loop (i + 5) else
                "NO"
    in
    loop 0 |> print_endline
)