#1 added some testing but more would be desirable
#1 added some testing but more would be desirable