     return unless @started
     inPorts = @inPorts.ports or @inPorts
     inPort.clear() for inPort in inPorts
-    @bracketContext = {}
+    @bracketContextIn = {}
     callback = =>
       @started = false
       @emit 'end'

                ipClone = ctx.ip.clone()
                ipClone.index = parseInt idx
                idxIps.unshift ipClone
                debugBrackets "#{@nodeId} register from '#{inport}' to '#{portIdentifier}' < '#{ctx.ip.data}'"
                ctx.ports.push portIdentifier
            continue
          # Don't register ports we're only sending brackets to
          datas = ips.filter (ip) -> ip.type is 'data'
          continue unless datas.length
          unforwarded = context.filter (ctx) =>
            return false unless @isForwardingOutport inport, outport
            ctx.ports.indexOf(outport) is -1

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

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