     if args.length is 1 then res[0] else res
 
   __getForForwarding: (port) ->
-    # Ensure we have a bracket context for the current scope
-    @nodeInstance.bracketContext[port] = {} unless @nodeInstance.bracketContext[port]
-    @nodeInstance.bracketContext[port][@scope] = [] unless @nodeInstance.bracketContext[port][@scope]
     prefix = []
     dataIp = null
     # Read IPs until we hit data

      if ip.type is 'closeBracket'
        # Bracket closings before data should remove bracket context
        @result.__bracketClosingBefore = [] unless @result.__bracketClosingBefore
        context = @nodeInstance.bracketContext[port][@scope].pop()
        context.closeIp = ip
        @result.__bracketClosingBefore.push context
        continue
      if ip.type is 'openBracket'
        # Bracket openings need to go to bracket context
        @nodeInstance.bracketContext[port][@scope].push
          ip: ip
          ports: []
          source: port

      @outputQ.push result
      do @processOutputQueue
    return

  getBracketContext: (port, scope, idx) ->
    portname = port
    if @inPorts[port].isAddressable()
      portname = "#{port}[#{idx}]"
    # Ensure we have a bracket context for the current scope
    @bracketContext[portname] = {} unless @bracketContext[portname]
    @bracketContext[portname][scope] = [] unless @bracketContext[portname][scope]
    return @bracketContext[portname][scope]

  addToResult: (result, port, ip, before = false) ->
    if port.indexOf('[') is -1
