All routines coded by Corentin Cazes Lionel Fiabane Tested and corrected by Dominique Heitz Félicie Théron Laurence Le Coq