posta a grandi linee il codice.