catch sigint
catch ctrl-c