First round of edits from JX
Second round of edits by JX