added new methods and tests