code: def copy_non_ecf(props, target):
      # type: (Dict[str, Any], Dict[str, Any]) -> Dict[str, Any]
      
      target.update(
          {key: value for key, value in props.items() if key not in ECFPROPNAMES}
      )
      return target
docs: Copies non-ECF properties from ``props`` to ``target``
  
      :param props: An input dictionary
      :param target: The dictionary to copy non-ECF properties to
      :return: The ``target`` dictionary