adding __validate_arguments
adding __validate_arguments