import java.util.Scanner;

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

    String result;
    if (s.matches("^(dream|dreamer|erase|eraser)*$")) {
      result = "YES";
    } else {
      result = "NO";
    }
    System.out.println(result);
  }
} 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();
    sc.close();

    String result;
    if (s.matches("^(dream|dreamer|erase|eraser)*$")) {
      result = "YES";
    } else {
      result = "NO";
    }
    System.out.println(result);
  }
} Main public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    String s = sc.next();
    sc.close();

    String result;
    if (s.matches("^(dream|dreamer|erase|eraser)*$")) {
      result = "YES";
    } else {
      result = "NO";
    }
    System.out.println(result);
  } main {
    Scanner sc = new Scanner(System.in);
    String s = sc.next();
    sc.close();

    String result;
    if (s.matches("^(dream|dreamer|erase|eraser)*$")) {
      result = "YES";
    } else {
      result = "NO";
    }
    System.out.println(result);
  } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) String s = sc.next(); s sc.next() sc.next sc sc.close() sc.close sc String result; result if (s.matches("^(dream|dreamer|erase|eraser)*$")) {
      result = "YES";
    } else {
      result = "NO";
    } s.matches("^(dream|dreamer|erase|eraser)*$") s.matches s "^(dream|dreamer|erase|eraser)*$" {
      result = "YES";
    } result = "YES" result "YES" {
      result = "NO";
    } result = "NO" result "NO" System.out.println(result) System.out.println System.out System System.out result String[] args args public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    String s = sc.next();
    sc.close();

    String result;
    if (s.matches("^(dream|dreamer|erase|eraser)*$")) {
      result = "YES";
    } else {
      result = "NO";
    }
    System.out.println(result);
  }
} public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    String s = sc.next();
    sc.close();

    String result;
    if (s.matches("^(dream|dreamer|erase|eraser)*$")) {
      result = "YES";
    } else {
      result = "NO";
    }
    System.out.println(result);
  }
} Main
import java.util.Scanner;

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

    String result;
    if (s.matches("^(dream|dreamer|erase|eraser)*$")) {
      result = "YES";
    } else {
      result = "NO";
    }
    System.out.println(result);
  }
}
