old_contents: # coding=utf-8
  """
  Flash
  -----
  """
  
  from plyer.facades import Flash
  from jnius import autoclass
  from plyer.platforms.android import activity
  
  Camera = autoclass("android.hardware.Camera")
  CameraParameters = autoclass("android.hardware.Camera$Parameters")
  SurfaceTexture = autoclass("android.graphics.SurfaceTexture")
  PackageManager = autoclass('android.content.pm.PackageManager')
  pm = activity.getPackageManager()
  flash_available = pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH)
  
  
  class AndroidFlash(Flash):
      _camera = None
  
      def _on(self):
          if self._camera is None:
              self._camera_open()
          if not self._camera:
              return
          self._camera.setParameters(self._f_on)
  
      def _off(self):
          if not self._camera:
              return
          self._camera.setParameters(self._f_off)
  
      def _release(self):
          if not self._camera:
              return
          self._camera.stopPreview()
          self._camera.release()
          self._camera = None
  
      def _camera_open(self):
          if not flash_available:
              return
          self._camera = Camera.open()
          self._f_on = cam.getParameters()
          self._f_off = cam.getParameters()
          self._f_on.setFlashMode(CameraParameters.FLASH_MODE_TORCH)
          self._f_off.setFlashMode(CameraParameters.FLASH_MODE_OFF)
          self._camera.startPreview()
          # Need this for Nexus 5
          self._camera.setPreviewTexture(SurfaceTexture(0))
  
  
  def instance():
      return AndroidFlash()
  
new_contents: # coding=utf-8
  """
  Flash
  -----
  """
  
  from plyer.facades import Flash
  from jnius import autoclass
  from plyer.platforms.android import activity
  
  Camera = autoclass("android.hardware.Camera")
  CameraParameters = autoclass("android.hardware.Camera$Parameters")
  SurfaceTexture = autoclass("android.graphics.SurfaceTexture")
  PackageManager = autoclass('android.content.pm.PackageManager')
  pm = activity.getPackageManager()
  flash_available = pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH)
  
  
  class AndroidFlash(Flash):
      _camera = None
  
      def _on(self):
          if self._camera is None:
              self._camera_open()
          if not self._camera:
              return
          self._camera.setParameters(self._f_on)
  
      def _off(self):
          if not self._camera:
              return
          self._camera.setParameters(self._f_off)
  
      def _release(self):
          if not self._camera:
              return
          self._camera.stopPreview()
          self._camera.release()
          self._camera = None
  
      def _camera_open(self):
          if not flash_available:
              return
          self._camera = Camera.open()
          self._f_on = Camera.getParameters()
          self._f_off = Camera.getParameters()
          self._f_on.setFlashMode(CameraParameters.FLASH_MODE_TORCH)
          self._f_off.setFlashMode(CameraParameters.FLASH_MODE_OFF)
          self._camera.startPreview()
          # Need this for Nexus 5
          self._camera.setPreviewTexture(SurfaceTexture(0))
  
  
  def instance():
      return AndroidFlash()
  
subject: replace cam/camera