re-org and documentation