import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String S = sc.next();

        String[] strList = {"eraser", "erase", "dreamer", "dream"};
        for (String str : strList) {
            S = S.replace(str, "");
            if (S.isEmpty()) {
                System.out.print("YES");
                return;
            }
        }

        System.out.print("NO");

//        Scanner sc = new Scanner(System.in);
//        String S = sc.next();
//
//        S = S.replaceAll("eraser", "-");
//        S = S.replaceAll("erase", "-");
//        S = S.replaceAll("dreamer", "-");
//        S = S.replaceAll("dream", "-");
//        S = S.replaceAll("-", "");
//        if (S.length() == 0)
//            System.out.println("YES");
//        else
//            System.out.println("NO");
    }
} import java.util.Scanner; Scanner java.util public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String S = sc.next();

        String[] strList = {"eraser", "erase", "dreamer", "dream"};
        for (String str : strList) {
            S = S.replace(str, "");
            if (S.isEmpty()) {
                System.out.print("YES");
                return;
            }
        }

        System.out.print("NO");

//        Scanner sc = new Scanner(System.in);
//        String S = sc.next();
//
//        S = S.replaceAll("eraser", "-");
//        S = S.replaceAll("erase", "-");
//        S = S.replaceAll("dreamer", "-");
//        S = S.replaceAll("dream", "-");
//        S = S.replaceAll("-", "");
//        if (S.length() == 0)
//            System.out.println("YES");
//        else
//            System.out.println("NO");
    }
} Main public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String S = sc.next();

        String[] strList = {"eraser", "erase", "dreamer", "dream"};
        for (String str : strList) {
            S = S.replace(str, "");
            if (S.isEmpty()) {
                System.out.print("YES");
                return;
            }
        }

        System.out.print("NO");

//        Scanner sc = new Scanner(System.in);
//        String S = sc.next();
//
//        S = S.replaceAll("eraser", "-");
//        S = S.replaceAll("erase", "-");
//        S = S.replaceAll("dreamer", "-");
//        S = S.replaceAll("dream", "-");
//        S = S.replaceAll("-", "");
//        if (S.length() == 0)
//            System.out.println("YES");
//        else
//            System.out.println("NO");
    } main {
        Scanner sc = new Scanner(System.in);
        String S = sc.next();

        String[] strList = {"eraser", "erase", "dreamer", "dream"};
        for (String str : strList) {
            S = S.replace(str, "");
            if (S.isEmpty()) {
                System.out.print("YES");
                return;
            }
        }

        System.out.print("NO");

//        Scanner sc = new Scanner(System.in);
//        String S = sc.next();
//
//        S = S.replaceAll("eraser", "-");
//        S = S.replaceAll("erase", "-");
//        S = S.replaceAll("dreamer", "-");
//        S = S.replaceAll("dream", "-");
//        S = S.replaceAll("-", "");
//        if (S.length() == 0)
//            System.out.println("YES");
//        else
//            System.out.println("NO");
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) String S = sc.next(); S sc.next() sc.next sc String[] strList = {"eraser", "erase", "dreamer", "dream"}; strList {"eraser", "erase", "dreamer", "dream"} "eraser" "erase" "dreamer" "dream" for (String str : strList) {
            S = S.replace(str, "");
            if (S.isEmpty()) {
                System.out.print("YES");
                return;
            }
        } String str strList {
            S = S.replace(str, "");
            if (S.isEmpty()) {
                System.out.print("YES");
                return;
            }
        } {
            S = S.replace(str, "");
            if (S.isEmpty()) {
                System.out.print("YES");
                return;
            }
        } S = S.replace(str, "") S S.replace(str, "") S.replace S str "" if (S.isEmpty()) {
                System.out.print("YES");
                return;
            } S.isEmpty() S.isEmpty S {
                System.out.print("YES");
                return;
            } System.out.print("YES") System.out.print System.out System System.out "YES" return; System.out.print("NO") System.out.print System.out System System.out "NO" String[] args args public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String S = sc.next();

        String[] strList = {"eraser", "erase", "dreamer", "dream"};
        for (String str : strList) {
            S = S.replace(str, "");
            if (S.isEmpty()) {
                System.out.print("YES");
                return;
            }
        }

        System.out.print("NO");

//        Scanner sc = new Scanner(System.in);
//        String S = sc.next();
//
//        S = S.replaceAll("eraser", "-");
//        S = S.replaceAll("erase", "-");
//        S = S.replaceAll("dreamer", "-");
//        S = S.replaceAll("dream", "-");
//        S = S.replaceAll("-", "");
//        if (S.length() == 0)
//            System.out.println("YES");
//        else
//            System.out.println("NO");
    }
} public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String S = sc.next();

        String[] strList = {"eraser", "erase", "dreamer", "dream"};
        for (String str : strList) {
            S = S.replace(str, "");
            if (S.isEmpty()) {
                System.out.print("YES");
                return;
            }
        }

        System.out.print("NO");

//        Scanner sc = new Scanner(System.in);
//        String S = sc.next();
//
//        S = S.replaceAll("eraser", "-");
//        S = S.replaceAll("erase", "-");
//        S = S.replaceAll("dreamer", "-");
//        S = S.replaceAll("dream", "-");
//        S = S.replaceAll("-", "");
//        if (S.length() == 0)
//            System.out.println("YES");
//        else
//            System.out.println("NO");
    }
} Main
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String S = sc.next();

        String[] strList = {"eraser", "erase", "dreamer", "dream"};
        for (String str : strList) {
            S = S.replace(str, "");
            if (S.isEmpty()) {
                System.out.print("YES");
                return;
            }
        }

        System.out.print("NO");

//        Scanner sc = new Scanner(System.in);
//        String S = sc.next();
//
//        S = S.replaceAll("eraser", "-");
//        S = S.replaceAll("erase", "-");
//        S = S.replaceAll("dreamer", "-");
//        S = S.replaceAll("dream", "-");
//        S = S.replaceAll("-", "");
//        if (S.length() == 0)
//            System.out.println("YES");
//        else
//            System.out.println("NO");
    }
}