Shorter, clearer, and more idiomatic using the Weirich fail.
Cut out unnecessary logic.