clean document generation