Deal with signals
update output
correct mistake
Add log on error