added extensive descriptions