Simplify code a bit, and be sure to mark the external node as potentially throwing