docs: def start(self, wait_for_completion=True, operation_timeout=None,
                status_timeout=None):
          """
          Start (activate) this Partition, using the HMC operation "Start
          Partition".
  
          This HMC operation has deferred status behavior: If the asynchronous
          job on the HMC is complete, it takes a few seconds until the partition
          status has reached the desired value (it still may show status
          "paused"). If `wait_for_completion=True`, this method repeatedly checks
          the status of the partition after the HMC operation has completed, and
          waits until the status is in one of the desired states "active" or
          "degraded".
  
          TODO: Describe what happens if the maximum number of active partitions
          is exceeded.
  
          Authorization requirements:
  
          * Object-access permission to this Partition.
          * Object-access permission to the CPC containing this Partition.
          * Task permission to the "Start Partition" task.
  
          Parameters:
  
            wait_for_completion (bool):
              Boolean controlling whether this method should wait for completion
              of the requested asynchronous HMC operation, as follows:
  
              * If `True`, this method will wait for completion of the
                asynchronous job performing the operation.
  
              * If `False`, this method will return immediately once the HMC has
                accepted the request to perform the operation.
  
            operation_timeout (:term:`number`):
              Timeout in seconds, for waiting for completion of the asynchronous
              job performing the operation. The special value 0 means that no
              timeout is set. `None` means that the default async operation
              timeout of the session is used. If the timeout expires when
              `wait_for_completion=True`, a
              :exc:`~zhmcclient.OperationTimeout` is raised.
  
            status_timeout (:term:`number`):
              Timeout in seconds, for waiting that the status of the partition
              has reached the desired status, after the HMC operation has
              completed.
              The special value 0 means that no timeout is set. `None` means that
              the default async operation timeout of the session is used.
              If the timeout expires when `wait_for_completion=True`, a
              :exc:`~zhmcclient.StatusTimeout` is raised.
  
          Returns:
  
            :class:`py:dict` or :class:`~zhmcclient.Job`:
  
              If `wait_for_completion` is `True`, returns an empty
              :class:`py:dict` object.
  
              If `wait_for_completion` is `False`, returns a
              :class:`~zhmcclient.Job` object representing the asynchronously
              executing job on the HMC.
  
          Raises:
  
            :exc:`~zhmcclient.HTTPError`
            :exc:`~zhmcclient.ParseError`
            :exc:`~zhmcclient.AuthError`
            :exc:`~zhmcclient.ConnectionError`
            :exc:`~zhmcclient.OperationTimeout`: The timeout expired while
              waiting for completion of the operation.
            :exc:`~zhmcclient.StatusTimeout`: The timeout expired while
              waiting for the desired partition status.
          """
          result = self.manager.session.post(
              self.uri + '/operations/start',
              wait_for_completion=wait_for_completion,
              operation_timeout=operation_timeout)
          if wait_for_completion:
              statuses = ["active", "degraded"]
              self.wait_for_status(statuses, status_timeout)
          return result