 
   loadContentSync: (aOptions)->
     if isFunction(@_loadContentSync)
-      aOptions = @mergeTo aOptions
+      aOptions = @getOptions aOptions
       @contents = result = @_loadContentSync aOptions
     else
       throw new TypeError 'loadContentSync not implemented'

    @
  loadSync: (aOptions)->
    if isFunction(@_loadStatSync)
      aOptions = @mergeTo(aOptions)
      checkValid = aOptions.validate isnt false
      @stat = @_loadStatSync(aOptions) unless @stat?
      @validate() if checkValid

  toString: -> @path
  _inspect: -> '"'+@relative+'"'
  inspect: -> '<'+ @constructor.name + ' ' + @_inspect() + '>'
  getOptions: (aOptions)->
    result = @mergeTo(aOptions)
    result.path = @path
    result.base = @base
    result.cwd = @cwd
    result

  load: (aOptions, done)->
    if isFunction aOptions
      done = aOptions
      aOptions = null
    aOptions = @getOptions(aOptions)
    checkValid = aOptions.validate isnt false
    unless @stat?
      @_loadStat aOptions, (err, stat)=>
