doc.
refactoring.