Answers from user al3ajeeb