changed signal handling