diff --git a/Res/js/cordova.js b/Res/js/cordova.js
index e2f2f19..3a99bce 100644
--- a/Res/js/cordova.js
+++ b/Res/js/cordova.js
@@ -1,6 +1,6 @@
-// commit 861ff3d507fd5c64ed789d8abe360690e588252e
+// commit 24d65ab645742e8360c3dd16d7a36411cc3383e0
 
-// File generated at :: Mon Dec 10 2012 14:51:17 GMT-0800 (PST)
+// File generated at :: Wed Jan 02 2013 22:16:07 GMT-0800 (PST)
 
 /*
  Licensed to the Apache Software Foundation (ASF) under one
@@ -4323,7 +4323,7 @@
            me.platform = os_vendor + " " + os_name;
            me.version = os_version;
            me.uuid = uuid;
-           me.cordova = "2.3.0rc2";
+           me.cordova = "2.3.0";
            success(me);
        }
    };
@@ -6221,12 +6221,12 @@
 
                     // Drop the common globals into the window object, but be nice and don't overwrite anything.
                     builder.buildIntoButDoNotClobber(base.defaults, context);
-                    builder.buildIntoAndMerge(base.merges, context);
                     builder.buildIntoAndClobber(base.clobbers, context);
+                    builder.buildIntoAndMerge(base.merges, context);
 
                     builder.buildIntoButDoNotClobber(platform.defaults, context);
-                    builder.buildIntoAndMerge(platform.merges, context);
                     builder.buildIntoAndClobber(platform.clobbers, context);
+                    builder.buildIntoAndMerge(platform.merges, context);
 
                     // Call the platform-specific initialization
                     platform.initialize();
diff --git a/VERSION b/VERSION
index bcf7441..276cbf9 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.3.0rc2
+2.3.0
