doc and API comments