Less exceptions, better errors