Fonctions pour algo principal