old_contents: """
  This module regroups custom validation functions, and it is
  loaded as an extension of the pykwalify library:
  
  https://pykwalify.readthedocs.io/en/latest/extensions.html#extensions
  """
  from typing import Any, List, Dict, Text, Optional, Union
  
  from pykwalify.errors import SchemaError
  
  
  def require_response_keys(
      responses: List[Dict[Text, Any]], _: Dict, __: Text
  ) -> Union[SchemaError, bool]:
      """Validates that response dicts have either the "text" key or the "custom" key."""
      for response in responses:
          if not isinstance(response, dict):
              # this is handled by other validation rules
              continue
  
          if response.get("text") is None and not response.get("custom"):
              return SchemaError(
                  "Missing 'text' or 'custom' key in response or null 'text' value in response.",
              )
  
      return True
  
new_contents: """
  This module regroups custom validation functions, and it is
  loaded as an extension of the pykwalify library:
  
  https://pykwalify.readthedocs.io/en/latest/extensions.html#extensions
  """
  from typing import Any, List, Dict, Text, Union
  
  from pykwalify.errors import SchemaError
  
  
  def require_response_keys(
      responses: List[Dict[Text, Any]], _: Dict, __: Text
  ) -> Union[SchemaError, bool]:
      """Validates that response dicts have either the "text" key or the "custom" key."""
      for response in responses:
          if not isinstance(response, dict):
              # this is handled by other validation rules
              continue
  
          if response.get("text") is None and not response.get("custom"):
              return SchemaError(
                  "Missing 'text' or 'custom' key in response or null 'text' value in response.",
              )
  
      return True
  
subject: remove unused type