Why are you always throwing an exception here?