still in progress, many edits still needed