Java program

You are working as a software developer for a large insurance company. Your company is planning to migrate the existing systems from Visual Basic to Java and this will require new calculations. You will be creating a program that calculates the insurance payment category based on the BMI score.

Your Java program should perform the following things:

Take the input from the user about the patient name, weight, birthdate, and height.
Calculate Body Mass Index.
Display person name and BMI Category.
If the BMI Score is less than 18.5, then underweight.
If the BMI Score is between 18.5-24.9, then Normal.
If the BMI score is between 25 to 29.9, then Overweight.
If the BMI score is greater than 29.9, then Obesity.
Calculate Insurance Payment Category based on BMI Category.
If underweight, then insurance payment category is low.
If Normal weight, then insurance payment category is low.
If Overweight, then insurance payment category is high.
If Obesity, then insurance payment category is highest.
Implement exception handling.
Store all the information in the file.
Use an interface.
Use the concept of a queue and insert the patient details.
Your project must include the following things:

Java program that calculates the BMI category
A method that calculates the insurance payment category
All the information should be stored in the file
Exception handling
Interface
Data structure concept
In addition to the above requirements, you will be expected to submit a solution that:

Runs and operates without error
Is written and readable with clear and sufficient comments

find the cost of your paper