can you add a delete button and a add button to the below program. java fx package nusoft; public class Car { private String make; private String model; private int year; private String color; public Car(String make, int year, String model, String color) { this.make = make; this.model = model; this.year = year; this.color = color; } public String getMake() { return make; } public void setMake(String make) { this.make = make; } public String getModel() { return model; } public void setModel(String model) { this.model = model; } public int getYear() { return year; } public void setYear(int year) { this.year = year; } public String getColor() { return color; } public void setColor(String color) { this.color = color; } @Override public String toString() { return year + " " + make + " " + model + " (" + color + ")"; } } package nusoft; import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.util.ArrayList; import javafx.application.Application; import javafx.geometry.Pos; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.Label; import javafx.scene.layout.BorderPane; import javafx.scene.layout.VBox; import javafx.stage.Stage; public class CarNavigator extends Application { private ArrayList cars = new ArrayList<>(); private int currentIndex = 0; @Override public void start(Stage primaryStage) throws Exception { readCarsFile(); Label carLabel = new Label(); carLabel.setAlignment(Pos.CENTER); updateCarLabel(carLabel); Button prevButton = new Button("Previous"); prevButton.setOnAction(e -> { currentIndex--; if (currentIndex < 0) { currentIndex = cars.size() - 1; } updateCarLabel(carLabel); }); Button nextButton = new Button("Next"); nextButton.setOnAction(e -> { currentIndex++; if (currentIndex >= cars.size()) { currentIndex = 0; } updateCarLabel(carLabel); }); VBox buttonBox = new VBox(10, prevButton, nextButton); buttonBox.setAlignment(Pos.CENTER); BorderPane root = new BorderPane(carLabel, null, null, buttonBox, null); Scene scene = new Scene(root, 400, 200); primaryStage.setScene(scene); primaryStage.show(); } private void readCarsFile() throws IOException { BufferedReader reader = new BufferedReader(new FileReader("cars.txt")); String line; while ((line = reader.readLine()) != null) { cars.add(line); } reader.close(); } private void updateCarLabel(Label label) { label.setText(cars.get(currentIndex)); } public static void main(String[] args) { launch(args); } } package nusoft.utils; import java.util.NoSuchElementException; import nusoft.Car; public class NuLinkedList { private Node head; private Node tail; private int size; private static class Node { E element; Node prev; Node next; Node(E element, Node prev, Node next) { this.element = element; this.prev = prev; this.next = next; } } public boolean contains(E e) { return indexOf(e) != -1; } public E get(int index) { if (index < 0 || index >= size) { throw new IndexOutOfBoundsException(); } return getNode(index).el.