Added elegant validation