documentation rewrite