or maybe an illegal input throws the Praetorian, like IIV. Throw praetorian exception in function-sentinel style, so upon entering the function there's an immediate check with possible throw.
Now I feel like you need a Spear exception for a proper throw from the guard.