Answers from user johnclerk