removed dependency on numpy
added second hand