why not ask user to handle exception