code: def get_outputs(self, merge_multi_context=True):
          
          assert self.binded and self.params_initialized
          return self._exec_group.get_outputs(merge_multi_context=merge_multi_context)
docs: Gets outputs of the previous forward computation.
  
          If ``merge_multi_context`` is ``True``, it is like ``[out1, out2]``. Otherwise, it
          is like ``[[out1_dev1, out1_dev2], [out2_dev1, out2_dev2]]``. All the output
          elements are `NDArray`. When `merge_multi_context` is `False`, those `NDArray`
          might live on different devices.
  
          Parameters
          ----------
          merge_multi_context : bool
              Default is ``True``. In the case when data-parallelism is used, the outputs
              will be collected from multiple devices. A ``True`` value indicate that we
              should merge the collected results so that they look like from a single
              executor.
  
          Returns
          -------
          list of NDArray or list of list of NDArray
              Output.