diff --git a/js/es5-shim.js b/js/es5-shim.js
new file mode 100644
index 0000000000..7fb3e1c6b0
--- /dev/null
+++ b/js/es5-shim.js
@@ -0,0 +1,1314 @@
+// Copyright 2009-2012 by contributors, MIT License
+// vim: ts=4 sts=4 sw=4 expandtab
+
+// Module systems magic dance
+(function (definition) {
+ // RequireJS
+ if (typeof define == "function") {
+ define(definition);
+ // YUI3
+ } else if (typeof YUI == "function") {
+ YUI.add("es5", definition);
+ // CommonJS and