Adds user inputs
Adds O(log n) order to the algorithm, works as expected...