 Node::compile: (o) ->
   @options: merge o or {}
   @indent:  o.indent
+  del @options, 'operation' unless @operation_sensitive()
   top:      if @top_sensitive() then @options.top else del @options, 'top'
   closure:  @is_statement() and not @is_statement_only() and not top and
             not @options.returns and not (this instanceof CommentNode) and

  compile_node: (o) ->
    soaked:   false
    only:     del(o, 'only_first')
    props:    if only then @properties[0...@properties.length - 1] else @properties
    baseline: @base.compile o
    baseline: '(' + baseline + ')' if @base instanceof ObjectNode and @has_properties()

    @children.push(prop)
    this

  operation_sensitive: ->
    true

  has_properties: ->
    !!@properties.length

