better error messages
made public