throwing exceptions on previously unchecked situations