code: def proximal(self):
          
  
          if self.scalar < 0:
              raise ValueError('proximal operator of functional scaled with a '
                               'negative value {} is not well-defined'
                               ''.format(self.scalar))
  
          elif self.scalar == 0:
              # Should not get here. `Functional.__rmul__` takes care of the case
              # scalar = 0
              return proximal_const_func(self.domain)
  
          else:
              def proximal_left_scalar_mult(sigma=1.0):
                  """Proximal operator for left scalar multiplication.
  
                      Parameters
                      ----------
                      sigma : positive float, optional
                          Step size parameter. Default: 1.0
                  """
                  return self.functional.proximal(sigma * self.scalar)
  
              return proximal_left_scalar_mult
docs: Proximal factory of the scaled functional.
  
          ``Functional.__rmul__`` takes care of the case scalar = 0
  
          See Also
          --------
          odl.solvers.nonsmooth.proximal_operators.proximal_const_func