Source: http://www.ifsi-troyes.fr/sites/default/files/correction_situation_m_robert.pdf