You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by an...@apache.org on 2015/10/22 21:45:34 UTC

[16/32] android commit: CB-9782 Check in cordova-common dependency

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/constant.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/constant.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/constant.js
new file mode 100644
index 0000000..ae112ed
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/constant.js
@@ -0,0 +1,31 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/**
+ * Creates a function that returns `value`.
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @param {*} value The value to return from the new function.
+ * @returns {Function} Returns the new function.
+ * @example
+ *
+ * var object = { 'name': 'fred' };
+ * var getter = _.constant(object);
+ * getter() === object;
+ * // => true
+ */
+function constant(value) {
+  return function() {
+    return value;
+  };
+}
+
+module.exports = constant;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/escape.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/escape.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/escape.js
new file mode 100644
index 0000000..00582b9
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/escape.js
@@ -0,0 +1,31 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var escapeHtmlChar = require('../internals/escapeHtmlChar'),
+    keys = require('../objects/keys'),
+    reUnescapedHtml = require('../internals/reUnescapedHtml');
+
+/**
+ * Converts the characters `&`, `<`, `>`, `"`, and `'` in `string` to their
+ * corresponding HTML entities.
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @param {string} string The string to escape.
+ * @returns {string} Returns the escaped string.
+ * @example
+ *
+ * _.escape('Fred, Wilma, & Pebbles');
+ * // => 'Fred, Wilma, &amp; Pebbles'
+ */
+function escape(string) {
+  return string == null ? '' : String(string).replace(reUnescapedHtml, escapeHtmlChar);
+}
+
+module.exports = escape;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/identity.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/identity.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/identity.js
new file mode 100644
index 0000000..838700c
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/identity.js
@@ -0,0 +1,28 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/**
+ * This method returns the first argument provided to it.
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @param {*} value Any value.
+ * @returns {*} Returns `value`.
+ * @example
+ *
+ * var object = { 'name': 'fred' };
+ * _.identity(object) === object;
+ * // => true
+ */
+function identity(value) {
+  return value;
+}
+
+module.exports = identity;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/mixin.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/mixin.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/mixin.js
new file mode 100644
index 0000000..26db74f
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/mixin.js
@@ -0,0 +1,88 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var forEach = require('../collections/forEach'),
+    functions = require('../objects/functions'),
+    isFunction = require('../objects/isFunction'),
+    isObject = require('../objects/isObject');
+
+/**
+ * Used for `Array` method references.
+ *
+ * Normally `Array.prototype` would suffice, however, using an array literal
+ * avoids issues in Narwhal.
+ */
+var arrayRef = [];
+
+/** Native method shortcuts */
+var push = arrayRef.push;
+
+/**
+ * Adds function properties of a source object to the destination object.
+ * If `object` is a function methods will be added to its prototype as well.
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @param {Function|Object} [object=lodash] object The destination object.
+ * @param {Object} source The object of functions to add.
+ * @param {Object} [options] The options object.
+ * @param {boolean} [options.chain=true] Specify whether the functions added are chainable.
+ * @example
+ *
+ * function capitalize(string) {
+ *   return string.charAt(0).toUpperCase() + string.slice(1).toLowerCase();
+ * }
+ *
+ * _.mixin({ 'capitalize': capitalize });
+ * _.capitalize('fred');
+ * // => 'Fred'
+ *
+ * _('fred').capitalize().value();
+ * // => 'Fred'
+ *
+ * _.mixin({ 'capitalize': capitalize }, { 'chain': false });
+ * _('fred').capitalize();
+ * // => 'Fred'
+ */
+function mixin(object, source, options) {
+  var chain = true,
+      methodNames = source && functions(source);
+
+  if (options === false) {
+    chain = false;
+  } else if (isObject(options) && 'chain' in options) {
+    chain = options.chain;
+  }
+  var ctor = object,
+      isFunc = isFunction(ctor);
+
+  forEach(methodNames, function(methodName) {
+    var func = object[methodName] = source[methodName];
+    if (isFunc) {
+      ctor.prototype[methodName] = function() {
+        var chainAll = this.__chain__,
+            value = this.__wrapped__,
+            args = [value];
+
+        push.apply(args, arguments);
+        var result = func.apply(object, args);
+        if (chain || chainAll) {
+          if (value === result && isObject(result)) {
+            return this;
+          }
+          result = new ctor(result);
+          result.__chain__ = chainAll;
+        }
+        return result;
+      };
+    }
+  });
+}
+
+module.exports = mixin;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/noConflict.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/noConflict.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/noConflict.js
new file mode 100644
index 0000000..eb78149
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/noConflict.js
@@ -0,0 +1,30 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/** Used to restore the original `_` reference in `noConflict` */
+var oldDash = global._;
+
+/**
+ * Reverts the '_' variable to its previous value and returns a reference to
+ * the `lodash` function.
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @returns {Function} Returns the `lodash` function.
+ * @example
+ *
+ * var lodash = _.noConflict();
+ */
+function noConflict() {
+  global._ = oldDash;
+  return this;
+}
+
+module.exports = noConflict;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/noop.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/noop.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/noop.js
new file mode 100644
index 0000000..3cd2d53
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/noop.js
@@ -0,0 +1,26 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/**
+ * A no-operation function.
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @example
+ *
+ * var object = { 'name': 'fred' };
+ * _.noop(object) === undefined;
+ * // => true
+ */
+function noop() {
+  // no operation performed
+}
+
+module.exports = noop;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/now.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/now.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/now.js
new file mode 100644
index 0000000..ee091dc
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/now.js
@@ -0,0 +1,28 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var isNative = require('../internals/isNative');
+
+/**
+ * Gets the number of milliseconds that have elapsed since the Unix epoch
+ * (1 January 1970 00:00:00 UTC).
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @example
+ *
+ * var stamp = _.now();
+ * _.defer(function() { console.log(_.now() - stamp); });
+ * // => logs the number of milliseconds it took for the deferred function to be called
+ */
+var now = isNative(now = Date.now) && now || function() {
+  return new Date().getTime();
+};
+
+module.exports = now;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/parseInt.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/parseInt.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/parseInt.js
new file mode 100644
index 0000000..6227ccd
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/parseInt.js
@@ -0,0 +1,53 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var isString = require('../objects/isString');
+
+/** Used to detect and test whitespace */
+var whitespace = (
+  // whitespace
+  ' \t\x0B\f\xA0\ufeff' +
+
+  // line terminators
+  '\n\r\u2028\u2029' +
+
+  // unicode category "Zs" space separators
+  '\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000'
+);
+
+/** Used to match leading whitespace and zeros to be removed */
+var reLeadingSpacesAndZeros = RegExp('^[' + whitespace + ']*0+(?=.$)');
+
+/* Native method shortcuts for methods with the same name as other `lodash` methods */
+var nativeParseInt = global.parseInt;
+
+/**
+ * Converts the given value into an integer of the specified radix.
+ * If `radix` is `undefined` or `0` a `radix` of `10` is used unless the
+ * `value` is a hexadecimal, in which case a `radix` of `16` is used.
+ *
+ * Note: This method avoids differences in native ES3 and ES5 `parseInt`
+ * implementations. See http://es5.github.io/#E.
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @param {string} value The value to parse.
+ * @param {number} [radix] The radix used to interpret the value to parse.
+ * @returns {number} Returns the new integer value.
+ * @example
+ *
+ * _.parseInt('08');
+ * // => 8
+ */
+var parseInt = nativeParseInt(whitespace + '08') == 8 ? nativeParseInt : function(value, radix) {
+  // Firefox < 21 and Opera < 15 follow the ES3 specified implementation of `parseInt`
+  return nativeParseInt(isString(value) ? value.replace(reLeadingSpacesAndZeros, '') : value, radix || 0);
+};
+
+module.exports = parseInt;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/property.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/property.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/property.js
new file mode 100644
index 0000000..f3446dd
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/property.js
@@ -0,0 +1,40 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/**
+ * Creates a "_.pluck" style function, which returns the `key` value of a
+ * given object.
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @param {string} key The name of the property to retrieve.
+ * @returns {Function} Returns the new function.
+ * @example
+ *
+ * var characters = [
+ *   { 'name': 'fred',   'age': 40 },
+ *   { 'name': 'barney', 'age': 36 }
+ * ];
+ *
+ * var getName = _.property('name');
+ *
+ * _.map(characters, getName);
+ * // => ['barney', 'fred']
+ *
+ * _.sortBy(characters, getName);
+ * // => [{ 'name': 'barney', 'age': 36 }, { 'name': 'fred',   'age': 40 }]
+ */
+function property(key) {
+  return function(object) {
+    return object[key];
+  };
+}
+
+module.exports = property;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/random.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/random.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/random.js
new file mode 100644
index 0000000..286bd1e
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/random.js
@@ -0,0 +1,73 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseRandom = require('../internals/baseRandom');
+
+/* Native method shortcuts for methods with the same name as other `lodash` methods */
+var nativeMin = Math.min,
+    nativeRandom = Math.random;
+
+/**
+ * Produces a random number between `min` and `max` (inclusive). If only one
+ * argument is provided a number between `0` and the given number will be
+ * returned. If `floating` is truey or either `min` or `max` are floats a
+ * floating-point number will be returned instead of an integer.
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @param {number} [min=0] The minimum possible value.
+ * @param {number} [max=1] The maximum possible value.
+ * @param {boolean} [floating=false] Specify returning a floating-point number.
+ * @returns {number} Returns a random number.
+ * @example
+ *
+ * _.random(0, 5);
+ * // => an integer between 0 and 5
+ *
+ * _.random(5);
+ * // => also an integer between 0 and 5
+ *
+ * _.random(5, true);
+ * // => a floating-point number between 0 and 5
+ *
+ * _.random(1.2, 5.2);
+ * // => a floating-point number between 1.2 and 5.2
+ */
+function random(min, max, floating) {
+  var noMin = min == null,
+      noMax = max == null;
+
+  if (floating == null) {
+    if (typeof min == 'boolean' && noMax) {
+      floating = min;
+      min = 1;
+    }
+    else if (!noMax && typeof max == 'boolean') {
+      floating = max;
+      noMax = true;
+    }
+  }
+  if (noMin && noMax) {
+    max = 1;
+  }
+  min = +min || 0;
+  if (noMax) {
+    max = min;
+    min = 0;
+  } else {
+    max = +max || 0;
+  }
+  if (floating || min % 1 || max % 1) {
+    var rand = nativeRandom();
+    return nativeMin(min + (rand * (max - min + parseFloat('1e-' + ((rand +'').length - 1)))), max);
+  }
+  return baseRandom(min, max);
+}
+
+module.exports = random;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/result.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/result.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/result.js
new file mode 100644
index 0000000..306b563
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/result.js
@@ -0,0 +1,45 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var isFunction = require('../objects/isFunction');
+
+/**
+ * Resolves the value of property `key` on `object`. If `key` is a function
+ * it will be invoked with the `this` binding of `object` and its result returned,
+ * else the property value is returned. If `object` is falsey then `undefined`
+ * is returned.
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @param {Object} object The object to inspect.
+ * @param {string} key The name of the property to resolve.
+ * @returns {*} Returns the resolved value.
+ * @example
+ *
+ * var object = {
+ *   'cheese': 'crumpets',
+ *   'stuff': function() {
+ *     return 'nonsense';
+ *   }
+ * };
+ *
+ * _.result(object, 'cheese');
+ * // => 'crumpets'
+ *
+ * _.result(object, 'stuff');
+ * // => 'nonsense'
+ */
+function result(object, key) {
+  if (object) {
+    var value = object[key];
+    return isFunction(value) ? object[key]() : value;
+  }
+}
+
+module.exports = result;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/template.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/template.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/template.js
new file mode 100644
index 0000000..b4906b3
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/template.js
@@ -0,0 +1,216 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var defaults = require('../objects/defaults'),
+    escape = require('./escape'),
+    escapeStringChar = require('../internals/escapeStringChar'),
+    keys = require('../objects/keys'),
+    reInterpolate = require('../internals/reInterpolate'),
+    templateSettings = require('./templateSettings'),
+    values = require('../objects/values');
+
+/** Used to match empty string literals in compiled template source */
+var reEmptyStringLeading = /\b__p \+= '';/g,
+    reEmptyStringMiddle = /\b(__p \+=) '' \+/g,
+    reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g;
+
+/**
+ * Used to match ES6 template delimiters
+ * http://people.mozilla.org/~jorendorff/es6-draft.html#sec-literals-string-literals
+ */
+var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g;
+
+/** Used to ensure capturing order of template delimiters */
+var reNoMatch = /($^)/;
+
+/** Used to match unescaped characters in compiled string literals */
+var reUnescapedString = /['\n\r\t\u2028\u2029\\]/g;
+
+/**
+ * A micro-templating method that handles arbitrary delimiters, preserves
+ * whitespace, and correctly escapes quotes within interpolated code.
+ *
+ * Note: In the development build, `_.template` utilizes sourceURLs for easier
+ * debugging. See http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl
+ *
+ * For more information on precompiling templates see:
+ * http://lodash.com/custom-builds
+ *
+ * For more information on Chrome extension sandboxes see:
+ * http://developer.chrome.com/stable/extensions/sandboxingEval.html
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @param {string} text The template text.
+ * @param {Object} data The data object used to populate the text.
+ * @param {Object} [options] The options object.
+ * @param {RegExp} [options.escape] The "escape" delimiter.
+ * @param {RegExp} [options.evaluate] The "evaluate" delimiter.
+ * @param {Object} [options.imports] An object to import into the template as local variables.
+ * @param {RegExp} [options.interpolate] The "interpolate" delimiter.
+ * @param {string} [sourceURL] The sourceURL of the template's compiled source.
+ * @param {string} [variable] The data object variable name.
+ * @returns {Function|string} Returns a compiled function when no `data` object
+ *  is given, else it returns the interpolated text.
+ * @example
+ *
+ * // using the "interpolate" delimiter to create a compiled template
+ * var compiled = _.template('hello <%= name %>');
+ * compiled({ 'name': 'fred' });
+ * // => 'hello fred'
+ *
+ * // using the "escape" delimiter to escape HTML in data property values
+ * _.template('<b><%- value %></b>', { 'value': '<script>' });
+ * // => '<b>&lt;script&gt;</b>'
+ *
+ * // using the "evaluate" delimiter to generate HTML
+ * var list = '<% _.forEach(people, function(name) { %><li><%- name %></li><% }); %>';
+ * _.template(list, { 'people': ['fred', 'barney'] });
+ * // => '<li>fred</li><li>barney</li>'
+ *
+ * // using the ES6 delimiter as an alternative to the default "interpolate" delimiter
+ * _.template('hello ${ name }', { 'name': 'pebbles' });
+ * // => 'hello pebbles'
+ *
+ * // using the internal `print` function in "evaluate" delimiters
+ * _.template('<% print("hello " + name); %>!', { 'name': 'barney' });
+ * // => 'hello barney!'
+ *
+ * // using a custom template delimiters
+ * _.templateSettings = {
+ *   'interpolate': /{{([\s\S]+?)}}/g
+ * };
+ *
+ * _.template('hello {{ name }}!', { 'name': 'mustache' });
+ * // => 'hello mustache!'
+ *
+ * // using the `imports` option to import jQuery
+ * var list = '<% jq.each(people, function(name) { %><li><%- name %></li><% }); %>';
+ * _.template(list, { 'people': ['fred', 'barney'] }, { 'imports': { 'jq': jQuery } });
+ * // => '<li>fred</li><li>barney</li>'
+ *
+ * // using the `sourceURL` option to specify a custom sourceURL for the template
+ * var compiled = _.template('hello <%= name %>', null, { 'sourceURL': '/basic/greeting.jst' });
+ * compiled(data);
+ * // => find the source of "greeting.jst" under the Sources tab or Resources panel of the web inspector
+ *
+ * // using the `variable` option to ensure a with-statement isn't used in the compiled template
+ * var compiled = _.template('hi <%= data.name %>!', null, { 'variable': 'data' });
+ * compiled.source;
+ * // => function(data) {
+ *   var __t, __p = '', __e = _.escape;
+ *   __p += 'hi ' + ((__t = ( data.name )) == null ? '' : __t) + '!';
+ *   return __p;
+ * }
+ *
+ * // using the `source` property to inline compiled templates for meaningful
+ * // line numbers in error messages and a stack trace
+ * fs.writeFileSync(path.join(cwd, 'jst.js'), '\
+ *   var JST = {\
+ *     "main": ' + _.template(mainText).source + '\
+ *   };\
+ * ');
+ */
+function template(text, data, options) {
+  // based on John Resig's `tmpl` implementation
+  // http://ejohn.org/blog/javascript-micro-templating/
+  // and Laura Doktorova's doT.js
+  // https://github.com/olado/doT
+  var settings = templateSettings.imports._.templateSettings || templateSettings;
+  text = String(text || '');
+
+  // avoid missing dependencies when `iteratorTemplate` is not defined
+  options = defaults({}, options, settings);
+
+  var imports = defaults({}, options.imports, settings.imports),
+      importsKeys = keys(imports),
+      importsValues = values(imports);
+
+  var isEvaluating,
+      index = 0,
+      interpolate = options.interpolate || reNoMatch,
+      source = "__p += '";
+
+  // compile the regexp to match each delimiter
+  var reDelimiters = RegExp(
+    (options.escape || reNoMatch).source + '|' +
+    interpolate.source + '|' +
+    (interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + '|' +
+    (options.evaluate || reNoMatch).source + '|$'
+  , 'g');
+
+  text.replace(reDelimiters, function(match, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset) {
+    interpolateValue || (interpolateValue = esTemplateValue);
+
+    // escape characters that cannot be included in string literals
+    source += text.slice(index, offset).replace(reUnescapedString, escapeStringChar);
+
+    // replace delimiters with snippets
+    if (escapeValue) {
+      source += "' +\n__e(" + escapeValue + ") +\n'";
+    }
+    if (evaluateValue) {
+      isEvaluating = true;
+      source += "';\n" + evaluateValue + ";\n__p += '";
+    }
+    if (interpolateValue) {
+      source += "' +\n((__t = (" + interpolateValue + ")) == null ? '' : __t) +\n'";
+    }
+    index = offset + match.length;
+
+    // the JS engine embedded in Adobe products requires returning the `match`
+    // string in order to produce the correct `offset` value
+    return match;
+  });
+
+  source += "';\n";
+
+  // if `variable` is not specified, wrap a with-statement around the generated
+  // code to add the data object to the top of the scope chain
+  var variable = options.variable,
+      hasVariable = variable;
+
+  if (!hasVariable) {
+    variable = 'obj';
+    source = 'with (' + variable + ') {\n' + source + '\n}\n';
+  }
+  // cleanup code by stripping empty strings
+  source = (isEvaluating ? source.replace(reEmptyStringLeading, '') : source)
+    .replace(reEmptyStringMiddle, '$1')
+    .replace(reEmptyStringTrailing, '$1;');
+
+  // frame code as the function body
+  source = 'function(' + variable + ') {\n' +
+    (hasVariable ? '' : variable + ' || (' + variable + ' = {});\n') +
+    "var __t, __p = '', __e = _.escape" +
+    (isEvaluating
+      ? ', __j = Array.prototype.join;\n' +
+        "function print() { __p += __j.call(arguments, '') }\n"
+      : ';\n'
+    ) +
+    source +
+    'return __p\n}';
+
+  try {
+    var result = Function(importsKeys, 'return ' + source ).apply(undefined, importsValues);
+  } catch(e) {
+    e.source = source;
+    throw e;
+  }
+  if (data) {
+    return result(data);
+  }
+  // provide the compiled function's source by its `toString` method, in
+  // supported environments, or the `source` property as a convenience for
+  // inlining compiled templates during the build process
+  result.source = source;
+  return result;
+}
+
+module.exports = template;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/templateSettings.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/templateSettings.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/templateSettings.js
new file mode 100644
index 0000000..d8acdbf
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/templateSettings.js
@@ -0,0 +1,73 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var escape = require('./escape'),
+    reInterpolate = require('../internals/reInterpolate');
+
+/**
+ * By default, the template delimiters used by Lo-Dash are similar to those in
+ * embedded Ruby (ERB). Change the following template settings to use alternative
+ * delimiters.
+ *
+ * @static
+ * @memberOf _
+ * @type Object
+ */
+var templateSettings = {
+
+  /**
+   * Used to detect `data` property values to be HTML-escaped.
+   *
+   * @memberOf _.templateSettings
+   * @type RegExp
+   */
+  'escape': /<%-([\s\S]+?)%>/g,
+
+  /**
+   * Used to detect code to be evaluated.
+   *
+   * @memberOf _.templateSettings
+   * @type RegExp
+   */
+  'evaluate': /<%([\s\S]+?)%>/g,
+
+  /**
+   * Used to detect `data` property values to inject.
+   *
+   * @memberOf _.templateSettings
+   * @type RegExp
+   */
+  'interpolate': reInterpolate,
+
+  /**
+   * Used to reference the data object in the template text.
+   *
+   * @memberOf _.templateSettings
+   * @type string
+   */
+  'variable': '',
+
+  /**
+   * Used to import variables into the compiled template.
+   *
+   * @memberOf _.templateSettings
+   * @type Object
+   */
+  'imports': {
+
+    /**
+     * A reference to the `lodash` function.
+     *
+     * @memberOf _.templateSettings.imports
+     * @type Function
+     */
+    '_': { 'escape': escape }
+  }
+};
+
+module.exports = templateSettings;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/times.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/times.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/times.js
new file mode 100644
index 0000000..85e5c32
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/times.js
@@ -0,0 +1,46 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseCreateCallback = require('../internals/baseCreateCallback');
+
+/**
+ * Executes the callback `n` times, returning an array of the results
+ * of each callback execution. The callback is bound to `thisArg` and invoked
+ * with one argument; (index).
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @param {number} n The number of times to execute the callback.
+ * @param {Function} callback The function called per iteration.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {Array} Returns an array of the results of each `callback` execution.
+ * @example
+ *
+ * var diceRolls = _.times(3, _.partial(_.random, 1, 6));
+ * // => [3, 6, 4]
+ *
+ * _.times(3, function(n) { mage.castSpell(n); });
+ * // => calls `mage.castSpell(n)` three times, passing `n` of `0`, `1`, and `2` respectively
+ *
+ * _.times(3, function(n) { this.cast(n); }, mage);
+ * // => also calls `mage.castSpell(n)` three times
+ */
+function times(n, callback, thisArg) {
+  n = (n = +n) > -1 ? n : 0;
+  var index = -1,
+      result = Array(n);
+
+  callback = baseCreateCallback(callback, thisArg, 1);
+  while (++index < n) {
+    result[index] = callback(index);
+  }
+  return result;
+}
+
+module.exports = times;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/unescape.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/unescape.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/unescape.js
new file mode 100644
index 0000000..dec526f
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/unescape.js
@@ -0,0 +1,32 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var keys = require('../objects/keys'),
+    reEscapedHtml = require('../internals/reEscapedHtml'),
+    unescapeHtmlChar = require('../internals/unescapeHtmlChar');
+
+/**
+ * The inverse of `_.escape` this method converts the HTML entities
+ * `&amp;`, `&lt;`, `&gt;`, `&quot;`, and `&#39;` in `string` to their
+ * corresponding characters.
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @param {string} string The string to unescape.
+ * @returns {string} Returns the unescaped string.
+ * @example
+ *
+ * _.unescape('Fred, Barney &amp; Pebbles');
+ * // => 'Fred, Barney & Pebbles'
+ */
+function unescape(string) {
+  return string == null ? '' : String(string).replace(reEscapedHtml, unescapeHtmlChar);
+}
+
+module.exports = unescape;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/uniqueId.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/uniqueId.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/uniqueId.js
new file mode 100644
index 0000000..6c9346e
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/compat/utilities/uniqueId.js
@@ -0,0 +1,34 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize exports="node" -o ./compat/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/** Used to generate unique IDs */
+var idCounter = 0;
+
+/**
+ * Generates a unique ID. If `prefix` is provided the ID will be appended to it.
+ *
+ * @static
+ * @memberOf _
+ * @category Utilities
+ * @param {string} [prefix] The value to prefix the ID with.
+ * @returns {string} Returns the unique ID.
+ * @example
+ *
+ * _.uniqueId('contact_');
+ * // => 'contact_104'
+ *
+ * _.uniqueId();
+ * // => '105'
+ */
+function uniqueId(prefix) {
+  var id = ++idCounter;
+  return String(prefix == null ? '' : prefix) + id;
+}
+
+module.exports = uniqueId;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays.js
new file mode 100644
index 0000000..f6c37ff
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays.js
@@ -0,0 +1,40 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+module.exports = {
+  'compact': require('./arrays/compact'),
+  'difference': require('./arrays/difference'),
+  'drop': require('./arrays/rest'),
+  'findIndex': require('./arrays/findIndex'),
+  'findLastIndex': require('./arrays/findLastIndex'),
+  'first': require('./arrays/first'),
+  'flatten': require('./arrays/flatten'),
+  'head': require('./arrays/first'),
+  'indexOf': require('./arrays/indexOf'),
+  'initial': require('./arrays/initial'),
+  'intersection': require('./arrays/intersection'),
+  'last': require('./arrays/last'),
+  'lastIndexOf': require('./arrays/lastIndexOf'),
+  'object': require('./arrays/zipObject'),
+  'pull': require('./arrays/pull'),
+  'range': require('./arrays/range'),
+  'remove': require('./arrays/remove'),
+  'rest': require('./arrays/rest'),
+  'sortedIndex': require('./arrays/sortedIndex'),
+  'tail': require('./arrays/rest'),
+  'take': require('./arrays/first'),
+  'union': require('./arrays/union'),
+  'uniq': require('./arrays/uniq'),
+  'unique': require('./arrays/uniq'),
+  'unzip': require('./arrays/zip'),
+  'without': require('./arrays/without'),
+  'xor': require('./arrays/xor'),
+  'zip': require('./arrays/zip'),
+  'zipObject': require('./arrays/zipObject')
+};

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/compact.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/compact.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/compact.js
new file mode 100644
index 0000000..f0bffba
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/compact.js
@@ -0,0 +1,38 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/**
+ * Creates an array with all falsey values removed. The values `false`, `null`,
+ * `0`, `""`, `undefined`, and `NaN` are all falsey.
+ *
+ * @static
+ * @memberOf _
+ * @category Arrays
+ * @param {Array} array The array to compact.
+ * @returns {Array} Returns a new array of filtered values.
+ * @example
+ *
+ * _.compact([0, 1, false, 2, '', 3]);
+ * // => [1, 2, 3]
+ */
+function compact(array) {
+  var index = -1,
+      length = array ? array.length : 0,
+      result = [];
+
+  while (++index < length) {
+    var value = array[index];
+    if (value) {
+      result.push(value);
+    }
+  }
+  return result;
+}
+
+module.exports = compact;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/difference.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/difference.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/difference.js
new file mode 100644
index 0000000..22d16f0
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/difference.js
@@ -0,0 +1,31 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseDifference = require('../internals/baseDifference'),
+    baseFlatten = require('../internals/baseFlatten');
+
+/**
+ * Creates an array excluding all values of the provided arrays using strict
+ * equality for comparisons, i.e. `===`.
+ *
+ * @static
+ * @memberOf _
+ * @category Arrays
+ * @param {Array} array The array to process.
+ * @param {...Array} [values] The arrays of values to exclude.
+ * @returns {Array} Returns a new array of filtered values.
+ * @example
+ *
+ * _.difference([1, 2, 3, 4, 5], [5, 2, 10]);
+ * // => [1, 3, 4]
+ */
+function difference(array) {
+  return baseDifference(array, baseFlatten(arguments, true, true, 1));
+}
+
+module.exports = difference;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/findIndex.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/findIndex.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/findIndex.js
new file mode 100644
index 0000000..549d010
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/findIndex.js
@@ -0,0 +1,65 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var createCallback = require('../functions/createCallback');
+
+/**
+ * This method is like `_.find` except that it returns the index of the first
+ * element that passes the callback check, instead of the element itself.
+ *
+ * If a property name is provided for `callback` the created "_.pluck" style
+ * callback will return the property value of the given element.
+ *
+ * If an object is provided for `callback` the created "_.where" style callback
+ * will return `true` for elements that have the properties of the given object,
+ * else `false`.
+ *
+ * @static
+ * @memberOf _
+ * @category Arrays
+ * @param {Array} array The array to search.
+ * @param {Function|Object|string} [callback=identity] The function called
+ *  per iteration. If a property name or object is provided it will be used
+ *  to create a "_.pluck" or "_.where" style callback, respectively.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {number} Returns the index of the found element, else `-1`.
+ * @example
+ *
+ * var characters = [
+ *   { 'name': 'barney',  'age': 36, 'blocked': false },
+ *   { 'name': 'fred',    'age': 40, 'blocked': true },
+ *   { 'name': 'pebbles', 'age': 1,  'blocked': false }
+ * ];
+ *
+ * _.findIndex(characters, function(chr) {
+ *   return chr.age < 20;
+ * });
+ * // => 2
+ *
+ * // using "_.where" callback shorthand
+ * _.findIndex(characters, { 'age': 36 });
+ * // => 0
+ *
+ * // using "_.pluck" callback shorthand
+ * _.findIndex(characters, 'blocked');
+ * // => 1
+ */
+function findIndex(array, callback, thisArg) {
+  var index = -1,
+      length = array ? array.length : 0;
+
+  callback = createCallback(callback, thisArg, 3);
+  while (++index < length) {
+    if (callback(array[index], index, array)) {
+      return index;
+    }
+  }
+  return -1;
+}
+
+module.exports = findIndex;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/findLastIndex.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/findLastIndex.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/findLastIndex.js
new file mode 100644
index 0000000..f487f71
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/findLastIndex.js
@@ -0,0 +1,63 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var createCallback = require('../functions/createCallback');
+
+/**
+ * This method is like `_.findIndex` except that it iterates over elements
+ * of a `collection` from right to left.
+ *
+ * If a property name is provided for `callback` the created "_.pluck" style
+ * callback will return the property value of the given element.
+ *
+ * If an object is provided for `callback` the created "_.where" style callback
+ * will return `true` for elements that have the properties of the given object,
+ * else `false`.
+ *
+ * @static
+ * @memberOf _
+ * @category Arrays
+ * @param {Array} array The array to search.
+ * @param {Function|Object|string} [callback=identity] The function called
+ *  per iteration. If a property name or object is provided it will be used
+ *  to create a "_.pluck" or "_.where" style callback, respectively.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {number} Returns the index of the found element, else `-1`.
+ * @example
+ *
+ * var characters = [
+ *   { 'name': 'barney',  'age': 36, 'blocked': true },
+ *   { 'name': 'fred',    'age': 40, 'blocked': false },
+ *   { 'name': 'pebbles', 'age': 1,  'blocked': true }
+ * ];
+ *
+ * _.findLastIndex(characters, function(chr) {
+ *   return chr.age > 30;
+ * });
+ * // => 1
+ *
+ * // using "_.where" callback shorthand
+ * _.findLastIndex(characters, { 'age': 36 });
+ * // => 0
+ *
+ * // using "_.pluck" callback shorthand
+ * _.findLastIndex(characters, 'blocked');
+ * // => 2
+ */
+function findLastIndex(array, callback, thisArg) {
+  var length = array ? array.length : 0;
+  callback = createCallback(callback, thisArg, 3);
+  while (length--) {
+    if (callback(array[length], length, array)) {
+      return length;
+    }
+  }
+  return -1;
+}
+
+module.exports = findLastIndex;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/first.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/first.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/first.js
new file mode 100644
index 0000000..f7d802e
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/first.js
@@ -0,0 +1,86 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var createCallback = require('../functions/createCallback'),
+    slice = require('../internals/slice');
+
+/* Native method shortcuts for methods with the same name as other `lodash` methods */
+var nativeMax = Math.max,
+    nativeMin = Math.min;
+
+/**
+ * Gets the first element or first `n` elements of an array. If a callback
+ * is provided elements at the beginning of the array are returned as long
+ * as the callback returns truey. The callback is bound to `thisArg` and
+ * invoked with three arguments; (value, index, array).
+ *
+ * If a property name is provided for `callback` the created "_.pluck" style
+ * callback will return the property value of the given element.
+ *
+ * If an object is provided for `callback` the created "_.where" style callback
+ * will return `true` for elements that have the properties of the given object,
+ * else `false`.
+ *
+ * @static
+ * @memberOf _
+ * @alias head, take
+ * @category Arrays
+ * @param {Array} array The array to query.
+ * @param {Function|Object|number|string} [callback] The function called
+ *  per element or the number of elements to return. If a property name or
+ *  object is provided it will be used to create a "_.pluck" or "_.where"
+ *  style callback, respectively.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {*} Returns the first element(s) of `array`.
+ * @example
+ *
+ * _.first([1, 2, 3]);
+ * // => 1
+ *
+ * _.first([1, 2, 3], 2);
+ * // => [1, 2]
+ *
+ * _.first([1, 2, 3], function(num) {
+ *   return num < 3;
+ * });
+ * // => [1, 2]
+ *
+ * var characters = [
+ *   { 'name': 'barney',  'blocked': true,  'employer': 'slate' },
+ *   { 'name': 'fred',    'blocked': false, 'employer': 'slate' },
+ *   { 'name': 'pebbles', 'blocked': true,  'employer': 'na' }
+ * ];
+ *
+ * // using "_.pluck" callback shorthand
+ * _.first(characters, 'blocked');
+ * // => [{ 'name': 'barney', 'blocked': true, 'employer': 'slate' }]
+ *
+ * // using "_.where" callback shorthand
+ * _.pluck(_.first(characters, { 'employer': 'slate' }), 'name');
+ * // => ['barney', 'fred']
+ */
+function first(array, callback, thisArg) {
+  var n = 0,
+      length = array ? array.length : 0;
+
+  if (typeof callback != 'number' && callback != null) {
+    var index = -1;
+    callback = createCallback(callback, thisArg, 3);
+    while (++index < length && callback(array[index], index, array)) {
+      n++;
+    }
+  } else {
+    n = callback;
+    if (n == null || thisArg) {
+      return array ? array[0] : undefined;
+    }
+  }
+  return slice(array, 0, nativeMin(nativeMax(0, n), length));
+}
+
+module.exports = first;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/flatten.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/flatten.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/flatten.js
new file mode 100644
index 0000000..49b9da9
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/flatten.js
@@ -0,0 +1,66 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseFlatten = require('../internals/baseFlatten'),
+    map = require('../collections/map');
+
+/**
+ * Flattens a nested array (the nesting can be to any depth). If `isShallow`
+ * is truey, the array will only be flattened a single level. If a callback
+ * is provided each element of the array is passed through the callback before
+ * flattening. The callback is bound to `thisArg` and invoked with three
+ * arguments; (value, index, array).
+ *
+ * If a property name is provided for `callback` the created "_.pluck" style
+ * callback will return the property value of the given element.
+ *
+ * If an object is provided for `callback` the created "_.where" style callback
+ * will return `true` for elements that have the properties of the given object,
+ * else `false`.
+ *
+ * @static
+ * @memberOf _
+ * @category Arrays
+ * @param {Array} array The array to flatten.
+ * @param {boolean} [isShallow=false] A flag to restrict flattening to a single level.
+ * @param {Function|Object|string} [callback=identity] The function called
+ *  per iteration. If a property name or object is provided it will be used
+ *  to create a "_.pluck" or "_.where" style callback, respectively.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {Array} Returns a new flattened array.
+ * @example
+ *
+ * _.flatten([1, [2], [3, [[4]]]]);
+ * // => [1, 2, 3, 4];
+ *
+ * _.flatten([1, [2], [3, [[4]]]], true);
+ * // => [1, 2, 3, [[4]]];
+ *
+ * var characters = [
+ *   { 'name': 'barney', 'age': 30, 'pets': ['hoppy'] },
+ *   { 'name': 'fred',   'age': 40, 'pets': ['baby puss', 'dino'] }
+ * ];
+ *
+ * // using "_.pluck" callback shorthand
+ * _.flatten(characters, 'pets');
+ * // => ['hoppy', 'baby puss', 'dino']
+ */
+function flatten(array, isShallow, callback, thisArg) {
+  // juggle arguments
+  if (typeof isShallow != 'boolean' && isShallow != null) {
+    thisArg = callback;
+    callback = (typeof isShallow != 'function' && thisArg && thisArg[isShallow] === array) ? null : isShallow;
+    isShallow = false;
+  }
+  if (callback != null) {
+    array = map(array, callback, thisArg);
+  }
+  return baseFlatten(array, isShallow);
+}
+
+module.exports = flatten;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/indexOf.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/indexOf.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/indexOf.js
new file mode 100644
index 0000000..c7533e8
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/indexOf.js
@@ -0,0 +1,50 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseIndexOf = require('../internals/baseIndexOf'),
+    sortedIndex = require('./sortedIndex');
+
+/* Native method shortcuts for methods with the same name as other `lodash` methods */
+var nativeMax = Math.max;
+
+/**
+ * Gets the index at which the first occurrence of `value` is found using
+ * strict equality for comparisons, i.e. `===`. If the array is already sorted
+ * providing `true` for `fromIndex` will run a faster binary search.
+ *
+ * @static
+ * @memberOf _
+ * @category Arrays
+ * @param {Array} array The array to search.
+ * @param {*} value The value to search for.
+ * @param {boolean|number} [fromIndex=0] The index to search from or `true`
+ *  to perform a binary search on a sorted array.
+ * @returns {number} Returns the index of the matched value or `-1`.
+ * @example
+ *
+ * _.indexOf([1, 2, 3, 1, 2, 3], 2);
+ * // => 1
+ *
+ * _.indexOf([1, 2, 3, 1, 2, 3], 2, 3);
+ * // => 4
+ *
+ * _.indexOf([1, 1, 2, 2, 3, 3], 2, true);
+ * // => 2
+ */
+function indexOf(array, value, fromIndex) {
+  if (typeof fromIndex == 'number') {
+    var length = array ? array.length : 0;
+    fromIndex = (fromIndex < 0 ? nativeMax(0, length + fromIndex) : fromIndex || 0);
+  } else if (fromIndex) {
+    var index = sortedIndex(array, value);
+    return array[index] === value ? index : -1;
+  }
+  return baseIndexOf(array, value, fromIndex);
+}
+
+module.exports = indexOf;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/initial.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/initial.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/initial.js
new file mode 100644
index 0000000..c1441a5
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/initial.js
@@ -0,0 +1,82 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var createCallback = require('../functions/createCallback'),
+    slice = require('../internals/slice');
+
+/* Native method shortcuts for methods with the same name as other `lodash` methods */
+var nativeMax = Math.max,
+    nativeMin = Math.min;
+
+/**
+ * Gets all but the last element or last `n` elements of an array. If a
+ * callback is provided elements at the end of the array are excluded from
+ * the result as long as the callback returns truey. The callback is bound
+ * to `thisArg` and invoked with three arguments; (value, index, array).
+ *
+ * If a property name is provided for `callback` the created "_.pluck" style
+ * callback will return the property value of the given element.
+ *
+ * If an object is provided for `callback` the created "_.where" style callback
+ * will return `true` for elements that have the properties of the given object,
+ * else `false`.
+ *
+ * @static
+ * @memberOf _
+ * @category Arrays
+ * @param {Array} array The array to query.
+ * @param {Function|Object|number|string} [callback=1] The function called
+ *  per element or the number of elements to exclude. If a property name or
+ *  object is provided it will be used to create a "_.pluck" or "_.where"
+ *  style callback, respectively.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {Array} Returns a slice of `array`.
+ * @example
+ *
+ * _.initial([1, 2, 3]);
+ * // => [1, 2]
+ *
+ * _.initial([1, 2, 3], 2);
+ * // => [1]
+ *
+ * _.initial([1, 2, 3], function(num) {
+ *   return num > 1;
+ * });
+ * // => [1]
+ *
+ * var characters = [
+ *   { 'name': 'barney',  'blocked': false, 'employer': 'slate' },
+ *   { 'name': 'fred',    'blocked': true,  'employer': 'slate' },
+ *   { 'name': 'pebbles', 'blocked': true,  'employer': 'na' }
+ * ];
+ *
+ * // using "_.pluck" callback shorthand
+ * _.initial(characters, 'blocked');
+ * // => [{ 'name': 'barney',  'blocked': false, 'employer': 'slate' }]
+ *
+ * // using "_.where" callback shorthand
+ * _.pluck(_.initial(characters, { 'employer': 'na' }), 'name');
+ * // => ['barney', 'fred']
+ */
+function initial(array, callback, thisArg) {
+  var n = 0,
+      length = array ? array.length : 0;
+
+  if (typeof callback != 'number' && callback != null) {
+    var index = length;
+    callback = createCallback(callback, thisArg, 3);
+    while (index-- && callback(array[index], index, array)) {
+      n++;
+    }
+  } else {
+    n = (callback == null || thisArg) ? 1 : callback || n;
+  }
+  return slice(array, 0, nativeMin(nativeMax(0, length - n), length));
+}
+
+module.exports = initial;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/intersection.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/intersection.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/intersection.js
new file mode 100644
index 0000000..a49371d
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/intersection.js
@@ -0,0 +1,83 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseIndexOf = require('../internals/baseIndexOf'),
+    cacheIndexOf = require('../internals/cacheIndexOf'),
+    createCache = require('../internals/createCache'),
+    getArray = require('../internals/getArray'),
+    isArguments = require('../objects/isArguments'),
+    isArray = require('../objects/isArray'),
+    largeArraySize = require('../internals/largeArraySize'),
+    releaseArray = require('../internals/releaseArray'),
+    releaseObject = require('../internals/releaseObject');
+
+/**
+ * Creates an array of unique values present in all provided arrays using
+ * strict equality for comparisons, i.e. `===`.
+ *
+ * @static
+ * @memberOf _
+ * @category Arrays
+ * @param {...Array} [array] The arrays to inspect.
+ * @returns {Array} Returns an array of shared values.
+ * @example
+ *
+ * _.intersection([1, 2, 3], [5, 2, 1, 4], [2, 1]);
+ * // => [1, 2]
+ */
+function intersection() {
+  var args = [],
+      argsIndex = -1,
+      argsLength = arguments.length,
+      caches = getArray(),
+      indexOf = baseIndexOf,
+      trustIndexOf = indexOf === baseIndexOf,
+      seen = getArray();
+
+  while (++argsIndex < argsLength) {
+    var value = arguments[argsIndex];
+    if (isArray(value) || isArguments(value)) {
+      args.push(value);
+      caches.push(trustIndexOf && value.length >= largeArraySize &&
+        createCache(argsIndex ? args[argsIndex] : seen));
+    }
+  }
+  var array = args[0],
+      index = -1,
+      length = array ? array.length : 0,
+      result = [];
+
+  outer:
+  while (++index < length) {
+    var cache = caches[0];
+    value = array[index];
+
+    if ((cache ? cacheIndexOf(cache, value) : indexOf(seen, value)) < 0) {
+      argsIndex = argsLength;
+      (cache || seen).push(value);
+      while (--argsIndex) {
+        cache = caches[argsIndex];
+        if ((cache ? cacheIndexOf(cache, value) : indexOf(args[argsIndex], value)) < 0) {
+          continue outer;
+        }
+      }
+      result.push(value);
+    }
+  }
+  while (argsLength--) {
+    cache = caches[argsLength];
+    if (cache) {
+      releaseObject(cache);
+    }
+  }
+  releaseArray(caches);
+  releaseArray(seen);
+  return result;
+}
+
+module.exports = intersection;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/last.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/last.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/last.js
new file mode 100644
index 0000000..4cd82d8
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/last.js
@@ -0,0 +1,84 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var createCallback = require('../functions/createCallback'),
+    slice = require('../internals/slice');
+
+/* Native method shortcuts for methods with the same name as other `lodash` methods */
+var nativeMax = Math.max;
+
+/**
+ * Gets the last element or last `n` elements of an array. If a callback is
+ * provided elements at the end of the array are returned as long as the
+ * callback returns truey. The callback is bound to `thisArg` and invoked
+ * with three arguments; (value, index, array).
+ *
+ * If a property name is provided for `callback` the created "_.pluck" style
+ * callback will return the property value of the given element.
+ *
+ * If an object is provided for `callback` the created "_.where" style callback
+ * will return `true` for elements that have the properties of the given object,
+ * else `false`.
+ *
+ * @static
+ * @memberOf _
+ * @category Arrays
+ * @param {Array} array The array to query.
+ * @param {Function|Object|number|string} [callback] The function called
+ *  per element or the number of elements to return. If a property name or
+ *  object is provided it will be used to create a "_.pluck" or "_.where"
+ *  style callback, respectively.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {*} Returns the last element(s) of `array`.
+ * @example
+ *
+ * _.last([1, 2, 3]);
+ * // => 3
+ *
+ * _.last([1, 2, 3], 2);
+ * // => [2, 3]
+ *
+ * _.last([1, 2, 3], function(num) {
+ *   return num > 1;
+ * });
+ * // => [2, 3]
+ *
+ * var characters = [
+ *   { 'name': 'barney',  'blocked': false, 'employer': 'slate' },
+ *   { 'name': 'fred',    'blocked': true,  'employer': 'slate' },
+ *   { 'name': 'pebbles', 'blocked': true,  'employer': 'na' }
+ * ];
+ *
+ * // using "_.pluck" callback shorthand
+ * _.pluck(_.last(characters, 'blocked'), 'name');
+ * // => ['fred', 'pebbles']
+ *
+ * // using "_.where" callback shorthand
+ * _.last(characters, { 'employer': 'na' });
+ * // => [{ 'name': 'pebbles', 'blocked': true, 'employer': 'na' }]
+ */
+function last(array, callback, thisArg) {
+  var n = 0,
+      length = array ? array.length : 0;
+
+  if (typeof callback != 'number' && callback != null) {
+    var index = length;
+    callback = createCallback(callback, thisArg, 3);
+    while (index-- && callback(array[index], index, array)) {
+      n++;
+    }
+  } else {
+    n = callback;
+    if (n == null || thisArg) {
+      return array ? array[length - 1] : undefined;
+    }
+  }
+  return slice(array, nativeMax(0, length - n));
+}
+
+module.exports = last;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/lastIndexOf.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/lastIndexOf.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/lastIndexOf.js
new file mode 100644
index 0000000..51c8210
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/lastIndexOf.js
@@ -0,0 +1,54 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/* Native method shortcuts for methods with the same name as other `lodash` methods */
+var nativeMax = Math.max,
+    nativeMin = Math.min;
+
+/**
+ * Gets the index at which the last occurrence of `value` is found using strict
+ * equality for comparisons, i.e. `===`. If `fromIndex` is negative, it is used
+ * as the offset from the end of the collection.
+ *
+ * If a property name is provided for `callback` the created "_.pluck" style
+ * callback will return the property value of the given element.
+ *
+ * If an object is provided for `callback` the created "_.where" style callback
+ * will return `true` for elements that have the properties of the given object,
+ * else `false`.
+ *
+ * @static
+ * @memberOf _
+ * @category Arrays
+ * @param {Array} array The array to search.
+ * @param {*} value The value to search for.
+ * @param {number} [fromIndex=array.length-1] The index to search from.
+ * @returns {number} Returns the index of the matched value or `-1`.
+ * @example
+ *
+ * _.lastIndexOf([1, 2, 3, 1, 2, 3], 2);
+ * // => 4
+ *
+ * _.lastIndexOf([1, 2, 3, 1, 2, 3], 2, 3);
+ * // => 1
+ */
+function lastIndexOf(array, value, fromIndex) {
+  var index = array ? array.length : 0;
+  if (typeof fromIndex == 'number') {
+    index = (fromIndex < 0 ? nativeMax(0, index + fromIndex) : nativeMin(fromIndex, index - 1)) + 1;
+  }
+  while (index--) {
+    if (array[index] === value) {
+      return index;
+    }
+  }
+  return -1;
+}
+
+module.exports = lastIndexOf;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/pull.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/pull.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/pull.js
new file mode 100644
index 0000000..d7526ea
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/pull.js
@@ -0,0 +1,57 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/**
+ * Used for `Array` method references.
+ *
+ * Normally `Array.prototype` would suffice, however, using an array literal
+ * avoids issues in Narwhal.
+ */
+var arrayRef = [];
+
+/** Native method shortcuts */
+var splice = arrayRef.splice;
+
+/**
+ * Removes all provided values from the given array using strict equality for
+ * comparisons, i.e. `===`.
+ *
+ * @static
+ * @memberOf _
+ * @category Arrays
+ * @param {Array} array The array to modify.
+ * @param {...*} [value] The values to remove.
+ * @returns {Array} Returns `array`.
+ * @example
+ *
+ * var array = [1, 2, 3, 1, 2, 3];
+ * _.pull(array, 2, 3);
+ * console.log(array);
+ * // => [1, 1]
+ */
+function pull(array) {
+  var args = arguments,
+      argsIndex = 0,
+      argsLength = args.length,
+      length = array ? array.length : 0;
+
+  while (++argsIndex < argsLength) {
+    var index = -1,
+        value = args[argsIndex];
+    while (++index < length) {
+      if (array[index] === value) {
+        splice.call(array, index--, 1);
+        length--;
+      }
+    }
+  }
+  return array;
+}
+
+module.exports = pull;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/range.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/range.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/range.js
new file mode 100644
index 0000000..bbc4ab5
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/range.js
@@ -0,0 +1,69 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/** Native method shortcuts */
+var ceil = Math.ceil;
+
+/* Native method shortcuts for methods with the same name as other `lodash` methods */
+var nativeMax = Math.max;
+
+/**
+ * Creates an array of numbers (positive and/or negative) progressing from
+ * `start` up to but not including `end`. If `start` is less than `stop` a
+ * zero-length range is created unless a negative `step` is specified.
+ *
+ * @static
+ * @memberOf _
+ * @category Arrays
+ * @param {number} [start=0] The start of the range.
+ * @param {number} end The end of the range.
+ * @param {number} [step=1] The value to increment or decrement by.
+ * @returns {Array} Returns a new range array.
+ * @example
+ *
+ * _.range(4);
+ * // => [0, 1, 2, 3]
+ *
+ * _.range(1, 5);
+ * // => [1, 2, 3, 4]
+ *
+ * _.range(0, 20, 5);
+ * // => [0, 5, 10, 15]
+ *
+ * _.range(0, -4, -1);
+ * // => [0, -1, -2, -3]
+ *
+ * _.range(1, 4, 0);
+ * // => [1, 1, 1]
+ *
+ * _.range(0);
+ * // => []
+ */
+function range(start, end, step) {
+  start = +start || 0;
+  step = typeof step == 'number' ? step : (+step || 1);
+
+  if (end == null) {
+    end = start;
+    start = 0;
+  }
+  // use `Array(length)` so engines like Chakra and V8 avoid slower modes
+  // http://youtu.be/XAqIpGU8ZZk#t=17m25s
+  var index = -1,
+      length = nativeMax(0, ceil((end - start) / (step || 1))),
+      result = Array(length);
+
+  while (++index < length) {
+    result[index] = start;
+    start += step;
+  }
+  return result;
+}
+
+module.exports = range;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/remove.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/remove.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/remove.js
new file mode 100644
index 0000000..dc818d5
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/remove.js
@@ -0,0 +1,71 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var createCallback = require('../functions/createCallback');
+
+/**
+ * Used for `Array` method references.
+ *
+ * Normally `Array.prototype` would suffice, however, using an array literal
+ * avoids issues in Narwhal.
+ */
+var arrayRef = [];
+
+/** Native method shortcuts */
+var splice = arrayRef.splice;
+
+/**
+ * Removes all elements from an array that the callback returns truey for
+ * and returns an array of removed elements. The callback is bound to `thisArg`
+ * and invoked with three arguments; (value, index, array).
+ *
+ * If a property name is provided for `callback` the created "_.pluck" style
+ * callback will return the property value of the given element.
+ *
+ * If an object is provided for `callback` the created "_.where" style callback
+ * will return `true` for elements that have the properties of the given object,
+ * else `false`.
+ *
+ * @static
+ * @memberOf _
+ * @category Arrays
+ * @param {Array} array The array to modify.
+ * @param {Function|Object|string} [callback=identity] The function called
+ *  per iteration. If a property name or object is provided it will be used
+ *  to create a "_.pluck" or "_.where" style callback, respectively.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {Array} Returns a new array of removed elements.
+ * @example
+ *
+ * var array = [1, 2, 3, 4, 5, 6];
+ * var evens = _.remove(array, function(num) { return num % 2 == 0; });
+ *
+ * console.log(array);
+ * // => [1, 3, 5]
+ *
+ * console.log(evens);
+ * // => [2, 4, 6]
+ */
+function remove(array, callback, thisArg) {
+  var index = -1,
+      length = array ? array.length : 0,
+      result = [];
+
+  callback = createCallback(callback, thisArg, 3);
+  while (++index < length) {
+    var value = array[index];
+    if (callback(value, index, array)) {
+      result.push(value);
+      splice.call(array, index--, 1);
+      length--;
+    }
+  }
+  return result;
+}
+
+module.exports = remove;

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ab72e484/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/rest.js
----------------------------------------------------------------------
diff --git a/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/rest.js b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/rest.js
new file mode 100644
index 0000000..216672e
--- /dev/null
+++ b/node_modules/cordova-common/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/arrays/rest.js
@@ -0,0 +1,83 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var createCallback = require('../functions/createCallback'),
+    slice = require('../internals/slice');
+
+/* Native method shortcuts for methods with the same name as other `lodash` methods */
+var nativeMax = Math.max;
+
+/**
+ * The opposite of `_.initial` this method gets all but the first element or
+ * first `n` elements of an array. If a callback function is provided elements
+ * at the beginning of the array are excluded from the result as long as the
+ * callback returns truey. The callback is bound to `thisArg` and invoked
+ * with three arguments; (value, index, array).
+ *
+ * If a property name is provided for `callback` the created "_.pluck" style
+ * callback will return the property value of the given element.
+ *
+ * If an object is provided for `callback` the created "_.where" style callback
+ * will return `true` for elements that have the properties of the given object,
+ * else `false`.
+ *
+ * @static
+ * @memberOf _
+ * @alias drop, tail
+ * @category Arrays
+ * @param {Array} array The array to query.
+ * @param {Function|Object|number|string} [callback=1] The function called
+ *  per element or the number of elements to exclude. If a property name or
+ *  object is provided it will be used to create a "_.pluck" or "_.where"
+ *  style callback, respectively.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {Array} Returns a slice of `array`.
+ * @example
+ *
+ * _.rest([1, 2, 3]);
+ * // => [2, 3]
+ *
+ * _.rest([1, 2, 3], 2);
+ * // => [3]
+ *
+ * _.rest([1, 2, 3], function(num) {
+ *   return num < 3;
+ * });
+ * // => [3]
+ *
+ * var characters = [
+ *   { 'name': 'barney',  'blocked': true,  'employer': 'slate' },
+ *   { 'name': 'fred',    'blocked': false,  'employer': 'slate' },
+ *   { 'name': 'pebbles', 'blocked': true, 'employer': 'na' }
+ * ];
+ *
+ * // using "_.pluck" callback shorthand
+ * _.pluck(_.rest(characters, 'blocked'), 'name');
+ * // => ['fred', 'pebbles']
+ *
+ * // using "_.where" callback shorthand
+ * _.rest(characters, { 'employer': 'slate' });
+ * // => [{ 'name': 'pebbles', 'blocked': true, 'employer': 'na' }]
+ */
+function rest(array, callback, thisArg) {
+  if (typeof callback != 'number' && callback != null) {
+    var n = 0,
+        index = -1,
+        length = array ? array.length : 0;
+
+    callback = createCallback(callback, thisArg, 3);
+    while (++index < length && callback(array[index], index, array)) {
+      n++;
+    }
+  } else {
+    n = (callback == null || thisArg) ? 1 : nativeMax(0, callback);
+  }
+  return slice(array, n);
+}
+
+module.exports = rest;


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org