done with all functions and selection