Could someone please give me the psuedocode of the problem described below im having trouble breaking it down to map out my program. You will implement a program that will initialize a battle ship game board with a single 5 unit long ship, positioned randomly but legally within the confines of the game board. For example: There must be a program loop to generate a new board with random ship location until the user wants to quit. I will run the board multiple times. I should see the ship located in all quadrants of the board in both directions. 2. When initializing a board or assigning positions to the ship, a for loops MUST be used. 3. The “empty” character can be the dash, not an underscore. 4.The appearance of the board MUST BE square if the # rows and # columns are the same. 5. All empty space characters MUST BE perfectly aligned, especially in the columns to the right of the ship placement. 6. You must have a method called generateBoard that takes the number or rows and column as argument that returns a 2D array which is randomly populated with a single ship. This method must use a loop structure to determine the positions of the ship. You must have a method called displayBoard that takes a populated array as argument and creates a popup window displaying the board. When a button on the popup is clicked, the methods and returns the option selected by the user determined by the button clicked. 8. All methods must be static (we will get to non-static next module), and there should be not static variables.