Part 1 Instructions A local library needs a program that stores information about their books. The information that they need stored is as followed: The title of the book. The book's author. The ISBN number (note: for this program, we will just use a random 5-digit number). The status of the book (i.e., whether it is checked out). The name of the person that has it currently checked the book out. The program should, in addition, support the following commands: 1. Search the library of books by ISN. 2. Checkout a book 3. Return a book. 4. Quit Program To implement this program, we are going to create a class called Book, which will Nlow us to create objects that store the required information for a given book. Below is a UML diagram that describes what members the Book class should have: Book title:string author:string ISBN:int -status:bool -checkedOutBy:string
Book(p_title:string, p_author:string, p_ISBN:string) Getters and Setters +getTitle():string +getAuthor():string +getISBN():string +getStatus():bool +setTitle(new_title:string):none +setAuthor(new_author:string): none +setISBN(new_ISBN:int): none Utility Methods +checkOutBook(name:string): bool +returnBook():void +outputBook():void Descriptions of Notable Methods 1. checkOutBook - This method changes the status of the book to "true" and sets the *checkedOutByattribute to the name of the person that has checked out the book. This method should NOT update the status/checkedOutBy attributes if the book is already checked out. The method returns true if the book was successfully checked out and false if the book is already checked out. 2. returnBook - This method sets the status attribute to "false" and checked Out By attribute to the empty string (ie, empty set of quotes). This method should return nothing. 3. outputBook - This method outputs the books information in the following format: by Couthor ISBN: