ho modificato l'ordine degli handler per rendere il codice più comprensibile (solo ordine delle righe)