#!/usr/bin/env node

var fs = require(“fs”),

uglify = require("uglify-js");

var filename = process.argv,

toplevel = uglify.parse(fs.readFileSync(filename, "utf8"), {filename: filename}),
output = uglify.OutputStream(),
compressor = uglify.Compressor(true),
warn = uglify.AST_Node.warn;

uglify.AST_Node.warn = function(s, o) {

if (o.msg === "Accidental global?" && o.name === "d3" && o.line === 1 && !o.col) return;
warn.apply(this, arguments);

};

toplevel.figure_out_scope(); toplevel.scope_warnings({

undeclared: false,
unreferenced: false,
assign_to_global: true,
func_arguments: false,
nested_defuns: false,
eval: false

});

toplevel = toplevel.transform(compressor);

toplevel.figure_out_scope(); toplevel.compute_char_frequency(true); toplevel.mangle_names(true); toplevel.print(output);

require(“util”).print(output.get());