hiding raise error logic to otp_version module