removed requirements for 2 ArrayLists, refactored and removed unecessary complexity