  from typing import Dict, List, Optional, Tuple, TYPE_CHECKING, Union
  
  from pkg_resources import parse_requirements, Requirement
  
  INSTALL_FAILED = False
  # Revisions of tensorflow GPU and cuda/cudnn requirements. These relate specifically to the
  # Tensorflow builds available from pypi
  TENSORFLOW_REQUIREMENTS = {">=2.4.0,<2.5.0": ["11.0", "8.0"],
                             ">=2.5.0,<2.9.0": ["11.2", "8.1"]}
  # Mapping of Python packages to their conda names if different from pip or in non-default channel
 
</s> remove     "imageio-ffmpeg": ("imageio-ffmpeg", "conda-forge")}
 </s> add     "imageio-ffmpeg": ("imageio-ffmpeg", "conda-forge"),
    "tensorflow-deps": ("tensorflow-deps", "apple"),
    "libblas": ("libblas", "conda-forge")} </s> remove         and revert it when deactivating.
 </s> add         and revert it when deactivating. Linux/conda only </s> remove     def process_arguments(self):
 </s> add     def process_arguments(self) -> None: </s> remove             if self.env.is_conda and not pkg.startswith("git"):
 </s> add             if self.env.is_conda and not self.env.enable_apple_silicon:
if TYPE_CHECKING:
    from logging import Logger


  from typing import Dict, List, Optional, Tuple, TYPE_CHECKING, Union
  
  from pkg_resources import parse_requirements, Requirement
  
if TYPE_CHECKING:
    from logging import Logger


  INSTALL_FAILED = False
  # Revisions of tensorflow GPU and cuda/cudnn requirements. These relate specifically to the
  # Tensorflow builds available from pypi
  TENSORFLOW_REQUIREMENTS = {">=2.4.0,<2.5.0": ["11.0", "8.0"],
                             ">=2.5.0,<2.9.0": ["11.2", "8.1"]}
  # Mapping of Python packages to their conda names if different from pip or in non-default channel
keep keep keep add keep keep keep keep keep keep
 Add Apple M1 to setup.py

add libblas to requirements 
setup.py