ticking version
adding more methods and unit tests