I need help for my next project due next tuesday can you help me in writing this program and can you make it a simple program easy as possible. note here are the parameters of the program in bold: Design a class named Employee. The class should keep the following information in fields: • Employee name • Employee number in the format XXX–L, where each X is a digit within the range 0–9 and the L is a letter within the range A–M. • Hire date Write one or more constructors and the appropriate accessor and mutator methods for the class. Next, write a class named Production Worker that extends the Employee class. The Production Worker class should have fields to hold the following information: • Shift (an integer) • Hourly pay rate (a double) The workday is divided into two shifts: day and night. The shift field will be an integer value representing the shift that the employee works. The day shift is shift 1 and the night shift is shift 2. Write one or more constructors and the appropriate accessor and mutator methods for the class. Demonstrate the classes by writing a program that uses a Production Worker object. Each class needs a no-arg constructor and a constructor that initializes all fields with data (The Production Worker class constructor should receive data for the Employee class fields as well) Create a method within the Employee and Production Worker classes called display Info. (display Info accepts no arguments and returns void) To display the data for each constructor, the demonstration class will call the subclass display Info method and it will call the superclass display Info method. User input is not required for the demonstration class. Solution Employe class: public class Employee { public String name; public String number; public String hireDate; public Employee(String n, String num, String hd) { name = n; number = num; hireDate = hd; } public String getName() { return name; } public String getNumber() { return number; } public String getHireDate() { return hireDate; } private boolean isValidEmpNum(String e) { boolean isValid = true; int i = 0; if (e.length() != 5) { isValid = false; } while (isValid && i < 3) { if (!Character.isDigit(e.charAt(i))) { isValid = false; } i++; } while (isValid && i < 4) { if (e.charAt(i) != \'-\') { isValid = false; } i++; } while (isValid && i < 5) { if (!Character.isLetter(e.charAt(i))) { isValid = false; } i++; } while (isValid && i < 6) { if (e.charAt(4) <= \'A\' || e.charAt(4) >= \'M\') { isValid = false; } i++; } return isValid; } @Override public String toString() { String str = \"Name: \" + name + \"\ Employee Number: \"; if (\"\".equals(number)) { str += \"Invalid Employee Number\"; } else { str += number; } str += (\"\ Hire Date: \" + hireDate); return str; } } productionworker class: import java.text.DecimalFormat; public class ProductionWorker extends Employee { public static int dayShift = 1; public static int nightShift = 2; private int shift; private double payRate; public String ge.