   #
   # Fetches IP object(s) for port(s)
   get: (args...) ->
+    @activate()
     args = ['in'] unless args.length
-    if (@nodeInstance.ordered or @nodeInstance.autoOrdering) and
-    @nodeInstance.activateOnInput and
-    not ('__resolved' of @result)
-      @activate()
-    res = (@ports[port].get @scope for port in args)
+    res = []
+    for port in args
+      ip = @ports[port].get @scope
+      res.push ip
+
     if args.length is 1 then res[0] else res
 
   # Fetches `data` property of IP object(s) for given port(s)

    @ordered = options.ordered ? false
    @autoOrdering = options.autoOrdering ? null
    @outputQ = []
    @activateOnInput = options.activateOnInput ? true
    @forwardBrackets = in: ['out', 'error']


  # Finishes process activation gracefully
  done: (error) ->
    @error error if error

    debug "#{@nodeInstance.nodeId} finished processing #{@nodeInstance.load}"
    @nodeInstance.load--

    if @nodeInstance.isOrdered()
      @result.__resolved = true
      @nodeInstance.processOutputQueue()
