# File lib/cgikit/declaration.rb, line 8
    def new_with_file( filename, source = nil )
      hash = nil
      str = nil
      open(filename) { |f| str = f.read }
      Thread.start(str) do
        $SAFE = 4
        hash = eval(str)
      end.join
      hash ||= {}
      merge_source(source, hash) if source
      new_from_hash(hash)
    end