things todo
catch and print exception