first working version
version 2 with error messages
add full year method