Answers from user kedrewbrent