I think there are better ways to handle this but it works. I am also happy that I used my first exception :)