--- /dev/null
+#!/bin/bash
+java -jar ../../closure-compiler-read-only/build/compiler.jar \
+ --compilation_level ADVANCED_OPTIMIZATIONS \
+ --warning_level VERBOSE \
+ --output_wrapper='(function() {%output%})();' \
+ --js ../../closure-library-read-only/closure/goog/base.js \
+ --js=dashed-canvas.js \
+ --js=dygraph-constants.js \
+ --js=dygraph-options.js \
+ --js=dygraph-layout.js \
+ --js=dygraph-canvas.js \
+ --js=dygraph.js \
+ --js=dygraph-utils.js \
+ --js=dygraph-gviz.js \
+ --js=dygraph-interaction-model.js \
+ --js=dygraph-tickers.js \
+ --js=dygraph-plugin-base.js \
+ --js=plugins/annotations.js \
+ --js=plugins/axes.js \
+ --js=plugins/chart-labels.js \
+ --js=plugins/grid.js \
+ --js=plugins/legend.js \
+ --js=plugins/range-selector.js \
+ --js=dygraph-plugin-install.js \
+ --js=dygraph-options-reference.js \
+ --js=datahandler/datahandler.js \
+ --js=datahandler/default.js \
+ --js=datahandler/default-fractions.js \
+ --js=datahandler/bars.js \
+ --js=datahandler/bars-custom.js \
+ --js=datahandler/bars-error.js \
+ --js=datahandler/bars-fractions.js \
+ --js=dygraph-exports.js \
+ --externs dygraph-externs.js \
+ --externs gviz-api.js \
+ --js_output_file=/tmp/out.js
--- /dev/null
+goog.exportSymbol('Dygraph', Dygraph);
+
+goog.exportSymbol('Dygraph.prototype.adjustRoll', Dygraph.prototype.adjustRoll);
+goog.exportSymbol('Dygraph.prototype.annotations', Dygraph.prototype.annotations);
+goog.exportSymbol('Dygraph.prototype.clearSelection', Dygraph.prototype.clearSelection);
+goog.exportSymbol('Dygraph.prototype.destroy', Dygraph.prototype.destroy);
+goog.exportSymbol('Dygraph.prototype.eventToDomCoords', Dygraph.prototype.eventToDomCoords);
+goog.exportSymbol('Dygraph.prototype.getArea', Dygraph.prototype.getArea);
+goog.exportSymbol('Dygraph.prototype.getColors', Dygraph.prototype.getColors);
+goog.exportSymbol('Dygraph.prototype.getHighlightSeries', Dygraph.prototype.getHighlightSeries);
+goog.exportSymbol('Dygraph.prototype.getLabels', Dygraph.prototype.getLabels);
+goog.exportSymbol('Dygraph.prototype.getOption', Dygraph.prototype.getOption);
+goog.exportSymbol('Dygraph.prototype.getPropertiesForSeries', Dygraph.prototype.getPropertiesForSeries);
+goog.exportSymbol('Dygraph.prototype.getSelection', Dygraph.prototype.getSelection);
+goog.exportSymbol('Dygraph.prototype.getValue', Dygraph.prototype.getValue);
+goog.exportSymbol('Dygraph.prototype.indexFromSetName', Dygraph.prototype.indexFromSetName);
+goog.exportSymbol('Dygraph.prototype.isSeriesLocked', Dygraph.prototype.isSeriesLocked);
+goog.exportSymbol('Dygraph.prototype.isZoomed', Dygraph.prototype.isZoomed);
+goog.exportSymbol('Dygraph.prototype.numAxes', Dygraph.prototype.numAxes);
+goog.exportSymbol('Dygraph.prototype.numColumns', Dygraph.prototype.numColumns);
+goog.exportSymbol('Dygraph.prototype.numRows', Dygraph.prototype.numRows);
+goog.exportSymbol('Dygraph.prototype.ready', Dygraph.prototype.ready);
+goog.exportSymbol('Dygraph.prototype.resetZoom', Dygraph.prototype.resetZoom);
+goog.exportSymbol('Dygraph.prototype.resize', Dygraph.prototype.resize);
+goog.exportSymbol('Dygraph.prototype.rollPeriod', Dygraph.prototype.rollPeriod);
+goog.exportSymbol('Dygraph.prototype.setAnnotations', Dygraph.prototype.setAnnotations);
+goog.exportSymbol('Dygraph.prototype.setSelection', Dygraph.prototype.setSelection);
+goog.exportSymbol('Dygraph.prototype.setVisibility', Dygraph.prototype.setVisibility);
+goog.exportSymbol('Dygraph.prototype.toDataCoords', Dygraph.prototype.toDataCoords);
+goog.exportSymbol('Dygraph.prototype.toDataXCoord', Dygraph.prototype.toDataXCoord);
+goog.exportSymbol('Dygraph.prototype.toDataYCoord', Dygraph.prototype.toDataYCoord);
+goog.exportSymbol('Dygraph.prototype.toDomCoords', Dygraph.prototype.toDomCoords);
+goog.exportSymbol('Dygraph.prototype.toDomXCoord', Dygraph.prototype.toDomXCoord);
+goog.exportSymbol('Dygraph.prototype.toDomYCoord', Dygraph.prototype.toDomYCoord);
+goog.exportSymbol('Dygraph.prototype.toPercentXCoord', Dygraph.prototype.toPercentXCoord);
+goog.exportSymbol('Dygraph.prototype.toPercentYCoord', Dygraph.prototype.toPercentYCoord);
+goog.exportSymbol('Dygraph.prototype.toString', Dygraph.prototype.toString);
+goog.exportSymbol('Dygraph.prototype.updateOptions', Dygraph.prototype.updateOptions);
+goog.exportSymbol('Dygraph.prototype.visibility', Dygraph.prototype.visibility);
+goog.exportSymbol('Dygraph.prototype.xAxisExtremes', Dygraph.prototype.xAxisExtremes);
+goog.exportSymbol('Dygraph.prototype.xAxisRange', Dygraph.prototype.xAxisRange);
+goog.exportSymbol('Dygraph.prototype.yAxisRange', Dygraph.prototype.yAxisRange);
+goog.exportSymbol('Dygraph.prototype.yAxisRanges', Dygraph.prototype.yAxisRanges);
+
+goog.exportSymbol('Dygraph.Plotters', Dygraph.Plotters);