Updated based on latest edits