Answers from user akramGDA