Write a program to simulate a payroll application. To that affect you will also create an Employee class, according to the specifications below. Since an Employee list might be large, and individual Employee objects may contain significant information themselves, we will store the Employee list as a linked list. You will also be asked to implement a basic linked list from scratch.
Attributes:
• Employee ID: you can use a string – the ID will contain digits and/or hyphens. The ID cannot be changed once an employee object is created.
• Number of hours worked in a week: a floating-point number.
• Hourly pay rate: a floating-point number that represents how much the employee is paid for one hour of work.
• Gross wages: a floating-point number that stores the number of hours times the hourly rate.
Methods:
• A constructor (__init__)
• Setter methods as needed.
• Getter methods as needed.
• This class should overload the __str__ or __repr__ methods so that Employee objects can be displayed using the print() function.