     inPort.clear() for inPort in inPorts
     @bracketContext =
       in: {}
+      out: {}
     callback = =>
       @started = false
       @emit 'end'

    debug "#{@nodeId} packet on '#{port.name}' didn't match preconditions: #{ip.type}"
    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.in[portname] = {} unless @bracketContext.in[portname]
    @bracketContext.in[portname][scope] = [] unless @bracketContext.in[portname][scope]
    return @bracketContext.in[portname][scope]

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

          return unless buf[0] is ip
          # Remove from buffer
          port.get ip.scope, ip.index
          context = @getBracketContext('in', port.name, ip.scope, ip.index).pop()
          context.closeIp = ip
          debugBrackets "#{@nodeId} closeBracket-C from '#{context.source}' to #{context.ports}: '#{ip.data}'"
          result =
