minor edits from shavin