Documented and added tests