moar error checking