  # Mapping of Python packages to their conda names if different from pip or in non-default channel
  CONDA_MAPPING = {
      # "opencv-python": ("opencv", "conda-forge"),  # Periodic issues with conda-forge opencv
      "fastcluster": ("fastcluster", "conda-forge"),
      "imageio-ffmpeg": ("imageio-ffmpeg", "conda-forge")}
  
  
  class Environment():
      """ The current install environment """
      def __init__(self, logger=None, updater=False):
 
</s> remove     def __init__(self, logger=None, updater=False):
 </s> add     def __init__(self, logger: Optional["Logger"] = None, updater: bool = False) -> None: </s> remove     def __init__(self, environment):
        self.env = environment
        self.output = Output()
        self.tips = Tips()

 </s> add     def __init__(self, environment: Environment) -> None:
        self.env:  Environment = environment
        self.output: Output = Output()
        self.tips: Tips = Tips() </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: </s> remove     def upgrade_pip(self):
 </s> add     def upgrade_pip(self) -> None:
    "imageio-ffmpeg": ("imageio-ffmpeg", "conda-forge"),
    "tensorflow-deps": ("tensorflow-deps", "apple"),
    "libblas": ("libblas", "conda-forge")}
  # Mapping of Python packages to their conda names if different from pip or in non-default channel
  CONDA_MAPPING = {
      # "opencv-python": ("opencv", "conda-forge"),  # Periodic issues with conda-forge opencv
      "fastcluster": ("fastcluster", "conda-forge"),
    "imageio-ffmpeg": ("imageio-ffmpeg", "conda-forge"),
    "tensorflow-deps": ("tensorflow-deps", "apple"),
    "libblas": ("libblas", "conda-forge")}
  
  
  class Environment():
      """ The current install environment """
      def __init__(self, logger=None, updater=False):
keep keep keep keep replace keep keep keep keep keep
 Add Apple M1 to setup.py

add libblas to requirements 
setup.py