maybe done with TryCatch & Throw. Not really certain.