JAVA Objective This assignment will give you practice with static methods, parameters, and returns. • The goal of this project is to take existing Java code, and compress it as much as possible by re- organizing it into methods. Your program: Your program will consist of a single Java file, which you should call RefactoredShapeDrawer.java. (The word \"refactored\" is a software engineering term for re- organized code.) The program should work IDENTICALLY to the attached Java code for the OriginalShapeDrawer class, meaning that if the user enters the same information into the RefactoredShapeDrawer and the OriginalShapeDrawer , the output should be identical. The key requirement for the RefactoredShapeDrawer will be that it reorganizes the code into methods, to make the program shorter and easier to understand. You should copy all of the code from OriginalShapeDrawer into RefactoredShapeDrawer (but make sure you change the line for the declaration of the class name). You should then edit the code in R efactoredShapeDrawer to reorganize it. Here are the specific requirements for your program: • It must behave identically to the OriginalShapeDrawer . If it doesn\'t behave identically, you will lose between 5 and 10 points, depending on how different your pr ogram\'s output is from the original. • You should introduce a minimum of 4 new methods, not including the main method. Each method must be something that is used during the execution of the program. • At least two of your methods should have parameters that af fect the behavior of the method. • At least two of your methods should have returns, and the return values must be used in some significant way by the code that calls the methods. • Your program should be clearly organized. Individual methods should have a cle ar purpose, and it should be easy to see what the purpose is from their name and/or comments describing the method. The behavior of the whole program should be clear from the sequence of method cal ls in the main method. Bonus: Besides re- organizing the code, an additional goal for the project is to reduce the overall length of the code. The TA will give the best “3” submissions (i.e., the shortest code that meets all of the requirements ) 10 points extra. Keep in mind that for t his assignment, LENGTH = NUMBER OF SEMI -COLONS (;) PLUS NUMBER OF ARITHMETIC OPERATORS (+, - , *, /, %) IN YOUR CODE. So comments don\'t count towards the length of the code (you should still put comments in your code!), method headers don\'t count (you shoul d still add new methods if they help organize the code!), and blank lines or lines that consist only of { or } don\'t count (so you should still inden t your code in accordance with good style!). Also, the class constants declared outside of any method wil l not count towards the length of the program, so please keep those in. It\'s good programming practice to use class constants instead of plain numbers in your program anyway. Instructions: • Und.