raise something besides an `Exception` here, how about `KeyError` or `ValueError`?