improve remarks. Add documentation.