docs: def _merge(self, value):
          """ Returns a list based on `value`:
  
          * missing required value is converted to an empty list;
          * missing required items are never created;
          * nested items are merged recursively.
  
          """
          if not value:
              return []
  
          if value is not None and not isinstance(value, list):
              # bogus value; will not pass validation but should be preserved
              return value
  
          item_spec = self._nested_validator
          return [x if x is None else item_spec.get_default_for(x) for x in value]