code: def _call(self, vf, out):
          
          if self.domain.field == ComplexNumbers():
              vf[0].multiply(self._vecfield[0].conj(), out=out)
          else:
              vf[0].multiply(self._vecfield[0], out=out)
  
          if self.is_weighted:
              out *= self.weights[0]
  
          if len(self.domain) == 1:
              return
  
          tmp = self.range.element()
          for vfi, gi, wi in zip(vf[1:], self.vecfield[1:],
                                 self.weights[1:]):
  
              if self.domain.field == ComplexNumbers():
                  vfi.multiply(gi.conj(), out=tmp)
              else:
                  vfi.multiply(gi, out=tmp)
  
              if self.is_weighted:
                  tmp *= wi
              out += tmp
docs: Implement ``self(vf, out)``.