rendered paste bodypackage datastructs;import java.util.ArrayList;public class HashMap<T,U> { private ArrayList<ArrayList<HashTableEntry<T,U>>> container; public HashMap() { container = new ArrayList<>(); for(int i=0; i<1000000; i++){ container.add(new ArrayList<HashTableEntry<T, U>>()); } } public void add(T key, U value){ HashTableEntry newEntry = new HashTableEntry(key, value); Integer hash = newEntry.hashCode(); container.get(hash).add(newEntry); } public U get(T key){ HashTableEntry newEntry = new HashTableEntry(key, null); Integer hash = newEntry.hashCode(); ArrayList<HashTableEntry<T, U>> chain = container.get(hash); for(HashTableEntry entry:chain){; if(entry.getKey().equals(key)){ return (U)entry.getValue(); } } return null; } public void delete(T key){ HashTableEntry newEntry = new HashTableEntry(key, null); Integer hash = newEntry.hashCode(); ArrayList<HashTableEntry<T, U>> chain = container.get(hash); int counter = 0; for(HashTableEntry entry:chain){ if(entry.getKey().equals(key)){ chain.remove(counter); counter++; } } } }