Documented with jsdoc