throwing an exception should be enough