some design and document