début implémentation générale