diff --git a/Answers/Yas_HasssanPour_40231712003/.gitignore b/Answers/Yas_HasssanPour_40231712003/.gitignore
new file mode 100644
index 0000000..5ff6309
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/.gitignore
@@ -0,0 +1,38 @@
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**/target/
+!**/src/test/**/target/
+
+### IntelliJ IDEA ###
+.idea/modules.xml
+.idea/jarRepositories.xml
+.idea/compiler.xml
+.idea/libraries/
+*.iws
+*.iml
+*.ipr
+
+### Eclipse ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+build/
+!**/src/main/**/build/
+!**/src/test/**/build/
+
+### VS Code ###
+.vscode/
+
+### Mac OS ###
+.DS_Store
\ No newline at end of file
diff --git a/Answers/Yas_HasssanPour_40231712003/.idea/.gitignore b/Answers/Yas_HasssanPour_40231712003/.idea/.gitignore
new file mode 100644
index 0000000..26d3352
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/.idea/.gitignore
@@ -0,0 +1,3 @@
+# Default ignored files
+/shelf/
+/workspace.xml
diff --git a/Answers/Yas_HasssanPour_40231712003/.idea/encodings.xml b/Answers/Yas_HasssanPour_40231712003/.idea/encodings.xml
new file mode 100644
index 0000000..aa00ffa
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/.idea/encodings.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Answers/Yas_HasssanPour_40231712003/.idea/misc.xml b/Answers/Yas_HasssanPour_40231712003/.idea/misc.xml
new file mode 100644
index 0000000..f346f33
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/.idea/misc.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Answers/Yas_HasssanPour_40231712003/.idea/vcs.xml b/Answers/Yas_HasssanPour_40231712003/.idea/vcs.xml
new file mode 100644
index 0000000..b2bdec2
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Answers/Yas_HasssanPour_40231712003/pom.xml b/Answers/Yas_HasssanPour_40231712003/pom.xml
new file mode 100644
index 0000000..ba51b4a
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/pom.xml
@@ -0,0 +1,17 @@
+
+
+ 4.0.0
+
+ org.example
+ Yas_HasssanPour_40231712003
+ 1.0-SNAPSHOT
+
+
+ 22
+ 22
+ UTF-8
+
+
+
\ No newline at end of file
diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Admin.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Admin.java
new file mode 100644
index 0000000..5c27414
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Admin.java
@@ -0,0 +1,19 @@
+package org.example;
+
+public class Admin extends User{
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
+ private String password;
+ public Admin (String name, int ID, int phoneNuM, String password)
+ {
+ super(name, ID, phoneNuM);
+ this.password= password;
+ }
+
+}
diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Book.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Book.java
new file mode 100644
index 0000000..9baefe1
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Book.java
@@ -0,0 +1,53 @@
+package org.example;
+
+import java.util.HashMap;
+
+public class Book {
+ private int Unique_bookID;
+ private String title;
+ private String author;
+ private boolean Availability_status;
+ String Description;
+
+ public int getUnique_bookID() {
+ return Unique_bookID;
+ }
+
+ public void setUnique_bookID(int unique_bookID) {
+ Unique_bookID = unique_bookID;
+ }
+
+ public String getTitle() {
+ return title;
+ }
+
+ public void setTitle(String title) {
+ this.title = title;
+ }
+
+ public String getAuthor() {
+ return author;
+ }
+
+ public void setAuthor(String author) {
+ this.author = author;
+ }
+
+ public boolean isAvailability_status() {
+ return Availability_status;
+ }
+
+ public void setAvailability_status(boolean availability_status) {
+ Availability_status = availability_status;
+ }
+
+
+ public Book (String title, int bookID, String author, String description) {
+ Unique_bookID = bookID;
+ this.title = title;
+ this.author = author;
+ this.Availability_status = true;
+ this.Description= description;
+ }
+}
+
diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/CLI.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/CLI.java
new file mode 100644
index 0000000..152e7ef
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/CLI.java
@@ -0,0 +1,14 @@
+package org.example;
+
+import java.util.Scanner;
+
+public class CLI {
+ Scanner scanner = new Scanner(System.in);
+ System.out.println("Welcom to our library! What can we do for you?\n lib add book: add a new book to the library\n lib get hrs: Retrieve library opening hours\n lib rent: Rent a book from the library\nlib add member : Add a new member to the library (admin privilege reqiuered\nlib rent ");
+ String input = scanner.nextLine();
+
+ while (true) {
+ System.out.println("Enter a command (type 'help' for available commands):");
+ String command = scanner.nextLine();
+}
+
diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Library.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Library.java
new file mode 100644
index 0000000..968b70b
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Library.java
@@ -0,0 +1,70 @@
+package org.example;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+public class Library {
+ public String getLibraryName() {
+ return LibraryName;
+ }
+
+ public void setLibraryName(String libraryName) {
+ LibraryName = libraryName;
+ }
+
+ public int getCapacity() {
+ return capacity;
+ }
+
+ public void setCapacity(int capacity) {
+ this.capacity = capacity;
+ }
+
+ public int getOperatingHours() {
+ return operatingHours;
+ }
+
+ public void setOperatingHours(int operatingHours) {
+ this.operatingHours = operatingHours;
+ }
+
+ private String LibraryName;
+ private int capacity;
+ private int operatingHours;
+ private ArrayListbookRepo;
+ private ListuserRegistries;
+ private ListrentalRegistries;
+ public Library (String LibraryName,int capacity, int operatingHours)
+ {
+ this.LibraryName= LibraryName;
+ this.capacity= capacity;
+ this.operatingHours= operatingHours;
+ this.bookRepo= new ArrayList<>();
+ this.userRegistries= new ArrayList<>();
+ this.rentalRegistries= new ArrayList<>();
+ }
+ public void addBook(Book book)
+ {
+ bookRepo.add(book);
+ }
+ public void addUser(User user)
+ {
+ userRegistries.add(user);
+ }
+ public void rentBook(Book book, NormalUser user, int rentalID, Date rentalDate)
+ {
+ Rent rent = new Rent(book, user, rentalID, rentalDate);
+ rentalRegistries.add(rent);
+ book.setAvailability_status(false);
+ }
+ public void returnBook(Book book)
+ {
+ book.setAvailability_status(true);
+ }
+ public void removeUser (User user)
+ {
+ userRegistries.remove(user);
+ }
+
+}
diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/MyApp.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/MyApp.java
new file mode 100644
index 0000000..6752680
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/MyApp.java
@@ -0,0 +1,25 @@
+package org.example;
+
+import java.util.Date;
+
+public class MyApp {
+ public static void main(String[] args) {
+
+ Library library = new Library("My Library", 100, 9_5);
+
+ Book book1 = new Book("Book2", 82734,"author1", "Description1");
+ Book book2 = new Book("Book2", 23984,"author2", "Description2");
+ library.addBook(book1);
+ library.addBook(book2);
+
+ NormalUser user1 = new NormalUser("User1", 1234567890,"09112143646", new Date());
+ library.addUser(user1);
+
+
+ library.rentBook(book1, user1, 1, new Date());
+ library.returnBook(book1);
+ library.removeUser(user1);
+ }
+
+
+ }
diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/NormalUser.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/NormalUser.java
new file mode 100644
index 0000000..7f0d310
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/NormalUser.java
@@ -0,0 +1,21 @@
+package org.example;
+
+import java.util.Date;
+
+public class NormalUser extends User{
+ private Date registrationDate;
+
+ public Date getRegistrationDate() {
+ return registrationDate;
+ }
+
+ public void setRegistrationDate(Date registrationDate) {
+ this.registrationDate = registrationDate;
+ }
+
+ public NormalUser(String name, int ID, String phoneNum, Date registrationDate)
+ {
+ super(name,ID,phoneNum);
+ this.registrationDate= registrationDate;
+ }
+}
diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Rent.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Rent.java
new file mode 100644
index 0000000..f84756f
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Rent.java
@@ -0,0 +1,54 @@
+package org.example;
+
+import java.util.Date;
+
+public class Rent {
+ public void setBook(Book book) {
+ this.book = book;
+ }
+
+ public void setNormalUser(NormalUser normalUser) {
+ this.normalUser = normalUser;
+ }
+
+ public void setRentalID(int rentalID) {
+ this.rentalID = rentalID;
+ }
+
+ public void setRentalDate(Date rentalDate) {
+ this.rentalDate = rentalDate;
+ }
+
+ private Book book;
+ private NormalUser normalUser;
+ private int rentalID;
+
+ public Book getBook() {
+ return book;
+ }
+
+ public NormalUser getNormalUser() {
+ return normalUser;
+ }
+
+ public int getRentalID() {
+ return rentalID;
+ }
+
+ public Date getRentalDate() {
+ return rentalDate;
+ }
+
+ private Date rentalDate;
+ public Rent (Book book, NormalUser normalUser, int rentalID, Date rentalDate)
+ {
+ this.book = book;
+ this.normalUser= normalUser;
+ this.rentalID = rentalID;
+ this.rentalDate= rentalDate;
+ }
+
+
+
+
+}
diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/User.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/User.java
new file mode 100644
index 0000000..331700f
--- /dev/null
+++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/User.java
@@ -0,0 +1,41 @@
+package org.example;
+
+import java.util.HashMap;
+
+public class User {
+ private String name;
+ private int ID;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public int getID() {
+ return ID;
+ }
+
+ public void setID(int ID) {
+ this.ID = ID;
+ }
+
+ public String getPhoneNum() {
+ return phoneNum;
+ }
+
+ public void setPhoneNum(String phoneNum) {
+ this.phoneNum = phoneNum;
+ }
+
+ private String phoneNum;
+ public User(String name, int ID, String PhoneNum) {
+ this.name = name;
+ this.ID = ID;
+ this.phoneNum = phoneNum;
+ }
+
+}
+