added jsdocs