better err msgs