code: def optional(validator):
      
      if isinstance(validator, list):
          return _OptionalValidator(_AndValidator(validator))
      return _OptionalValidator(validator)
docs: A validator that makes an attribute optional.  An optional attribute is one
      which can be set to ``None`` in addition to satisfying the requirements of
      the sub-validator.
  
      :param validator: A validator (or a list of validators) that is used for
          non-``None`` values.
      :type validator: callable or :class:`list` of callables.
  
      .. versionadded:: 15.1.0
      .. versionchanged:: 17.1.0 *validator* can be a list of validators.