questions: explained in details 
 answers: explained in details