programma completo (o quasi...)