Nawqaan 88

This implements both NAWQAAN-88 and NAWQAAN-89.
nice jsdoc!