Answers from user AdamGerman