no longer throwing errors on illegal inputs
0.1.1 no longer throwing, invalid inputs return -1