Re-worked docs into generic form.