Well, throwing exceptions is the best return code ...