var fs=require("fs");function describe_ast(){var n=OutputStream({beautify:!0});return function r(t){n.print("AST_"+t.TYPE);var e=t.SELF_PROPS.filter(function(n){return!/^\$/.test(n)});e.length>0&&(n.space(),n.with_parens(function(){e.forEach(function(r,t){t&&n.space(),n.print(r)})})),t.documentation&&(n.space(),n.print_string(t.documentation)),t.SUBCLASSES.length>0&&(n.space(),n.with_block(function(){t.SUBCLASSES.forEach(function(t,e){n.indent(),r(t),n.newline()})}))}(AST_Node),n+"\n"}function infer_options(n){var r=exports.minify("",n);return r.error&&r.error.defs}exports.FILES=["../lib/utils.js","../lib/ast.js","../lib/parse.js","../lib/transform.js","../lib/scope.js","../lib/output.js","../lib/compress.js","../lib/sourcemap.js","../lib/mozilla-ast.js","../lib/propmangle.js","../lib/minify.js","./exports.js"].map(function(n){return require.resolve(n)}),new Function("MOZ_SourceMap","exports",function(){var n=exports.FILES.map(function(n){return fs.readFileSync(n,"utf8")});return n.push("exports.describe_ast = "+describe_ast.toString()),n.join("\n\n")}())(require("source-map"),exports),exports.default_options=function(){var n={};return Object.keys(infer_options({0:0})).forEach(function(r){var t={};t[r]={0:0},(t=infer_options(t))&&(n[r]=t)}),n};