!SESSION 2014-04-03 13:27:21.305 ----------------------------------------------- eclipse.buildId=unknown java.version=1.6.0_65 java.vendor=Apple Inc. BootLoader constants: OS=macosx, ARCH=x86, WS=cocoa, NL=en_US Framework arguments: -keyring /Users/bakermatt/.eclipse_keyring -showlocation Command-line arguments: -os macosx -ws cocoa -arch x86 -keyring /Users/bakermatt/.eclipse_keyring -consoleLog -showlocation !ENTRY org.eclipse.core.net 1 0 2014-04-03 13:27:45.580 !MESSAGE System property http.nonProxyHosts has been set to local|*.local|169.254/16|*.169.254/16 by an external source. This value will be overwritten using the values from the preferences !ENTRY org.eclipse.ui 2 0 2014-04-03 13:27:45.863 !MESSAGE Warnings while parsing the images from the 'org.eclipse.ui.commandImages' extension point. !SUBENTRY 1 org.eclipse.ui 2 0 2014-04-03 13:27:45.863 !MESSAGE Cannot bind to an undefined command: plug-in='com.appcelerator.titanium.android.ui', id='com.appcelerator.titanium.mobile.command.run_on_device.android' !SUBENTRY 1 org.eclipse.ui 2 0 2014-04-03 13:27:45.863 !MESSAGE Cannot bind to an undefined command: plug-in='com.appcelerator.titanium.android.ui', id='com.appcelerator.titanium.mobile.command.debug_on_device.android' !SESSION 2014-04-03 13:49:03.678 ----------------------------------------------- eclipse.buildId=unknown java.version=1.6.0_65 java.vendor=Apple Inc. BootLoader constants: OS=macosx, ARCH=x86, WS=cocoa, NL=en_US Framework arguments: -keyring /Users/bakermatt/.eclipse_keyring -showlocation Command-line arguments: -os macosx -ws cocoa -arch x86 -keyring /Users/bakermatt/.eclipse_keyring -consoleLog -showlocation !ENTRY org.eclipse.core.resources 2 10035 2014-04-03 13:49:09.498 !MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes. !ENTRY org.eclipse.core.net 1 0 2014-04-03 13:49:10.085 !MESSAGE System property http.nonProxyHosts has been set to local|*.local|169.254/16|*.169.254/16 by an external source. This value will be overwritten using the values from the preferences !ENTRY org.eclipse.ui 2 0 2014-04-03 13:49:10.224 !MESSAGE Warnings while parsing the images from the 'org.eclipse.ui.commandImages' extension point. !SUBENTRY 1 org.eclipse.ui 2 0 2014-04-03 13:49:10.224 !MESSAGE Cannot bind to an undefined command: plug-in='com.appcelerator.titanium.android.ui', id='com.appcelerator.titanium.mobile.command.run_on_device.android' !SUBENTRY 1 org.eclipse.ui 2 0 2014-04-03 13:49:10.225 !MESSAGE Cannot bind to an undefined command: plug-in='com.appcelerator.titanium.android.ui', id='com.appcelerator.titanium.mobile.command.debug_on_device.android' !ENTRY com.aptana.git.core 4 0 2014-04-03 13:49:50.145 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Errors occurred while grabbing changed file listings !ENTRY com.aptana.js.core 4 0 2014-04-03 13:49:52.695 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-03 13:49:52.715 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-03 13:49:53.605 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-03 13:49:53.607 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-03 13:49:53.608 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-03 13:49:53.609 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-03 13:49:53.610 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY org.eclipse.osgi 2 1 2014-04-03 14:31:18.003 !MESSAGE NLS unused message: MobileUIPlugin_DefaultProjectTemplate_Description in: com.appcelerator.titanium.ios.ui.messages !ENTRY org.eclipse.osgi 2 1 2014-04-03 14:31:18.010 !MESSAGE NLS unused message: MobileUIPlugin_DefaultProjectTemplate_Name in: com.appcelerator.titanium.ios.ui.messages !ENTRY org.eclipse.osgi 2 1 2014-04-03 14:31:18.011 !MESSAGE NLS unused message: MobileUIPlugin_mobileUIInitializationJobName in: com.appcelerator.titanium.ios.ui.messages !ENTRY org.eclipse.osgi 2 1 2014-04-03 14:31:18.012 !MESSAGE NLS unused message: AdhocHandler_sdk_compatibility_title in: com.appcelerator.titanium.ios.ui.messages !ENTRY org.eclipse.osgi 2 1 2014-04-03 14:31:18.012 !MESSAGE NLS unused message: DistributeWizard_ErrorDialogTitle in: com.appcelerator.titanium.ios.ui.messages !ENTRY org.eclipse.osgi 2 1 2014-04-03 14:31:18.012 !MESSAGE NLS unused message: DistributeWizard_LaunchConfigurationFailed_Error in: com.appcelerator.titanium.ios.ui.messages !ENTRY org.eclipse.osgi 2 1 2014-04-03 14:31:18.012 !MESSAGE NLS unused message: IOSConfigurationMessages_TestOnDevice_Desc in: com.appcelerator.titanium.ios.ui.messages !ENTRY org.eclipse.osgi 2 1 2014-04-03 14:31:18.013 !MESSAGE NLS unused message: IOSConfigurationMessages_TestOnDevice_Title in: com.appcelerator.titanium.ios.ui.messages !ENTRY com.aptana.js.core 4 0 2014-04-03 14:59:36.445 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-03 14:59:36.561 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-03 14:59:38.301 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-03 14:59:38.302 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-03 14:59:38.303 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-03 14:59:38.304 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-03 14:59:38.305 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY org.eclipse.core.jobs 4 2 2014-04-04 08:59:44.648 !MESSAGE An internal error occurred during: "Update iOS info". !STACK 0 java.lang.ArrayIndexOutOfBoundsException: 1 at java.util.ArrayList.add(ArrayList.java:352) at com.appcelerator.titanium.ios.core.IOSSDKLocator.detectXCode(IOSSDKLocator.java:342) at com.appcelerator.titanium.ios.core.IOSSDKLocator.initialize(IOSSDKLocator.java:129) at com.appcelerator.titanium.ios.core.IOSSDKLocator$4.run(IOSSDKLocator.java:255) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) !SESSION 2014-04-04 09:04:13.564 ----------------------------------------------- eclipse.buildId=unknown java.version=1.6.0_65 java.vendor=Apple Inc. BootLoader constants: OS=macosx, ARCH=x86, WS=cocoa, NL=en_US Framework arguments: -keyring /Users/bakermatt/.eclipse_keyring -showlocation Command-line arguments: -os macosx -ws cocoa -arch x86 -keyring /Users/bakermatt/.eclipse_keyring -consoleLog -showlocation !ENTRY org.eclipse.core.net 1 0 2014-04-04 09:04:24.523 !MESSAGE System property http.nonProxyHosts has been set to local|*.local|169.254/16|*.169.254/16 by an external source. This value will be overwritten using the values from the preferences !ENTRY org.eclipse.ui 2 0 2014-04-04 09:04:26.150 !MESSAGE Warnings while parsing the images from the 'org.eclipse.ui.commandImages' extension point. !SUBENTRY 1 org.eclipse.ui 2 0 2014-04-04 09:04:26.150 !MESSAGE Cannot bind to an undefined command: plug-in='com.appcelerator.titanium.android.ui', id='com.appcelerator.titanium.mobile.command.run_on_device.android' !SUBENTRY 1 org.eclipse.ui 2 0 2014-04-04 09:04:26.150 !MESSAGE Cannot bind to an undefined command: plug-in='com.appcelerator.titanium.android.ui', id='com.appcelerator.titanium.mobile.command.debug_on_device.android' !SESSION 2014-04-04 09:23:54.053 ----------------------------------------------- eclipse.buildId=unknown java.version=1.6.0_65 java.vendor=Apple Inc. BootLoader constants: OS=macosx, ARCH=x86, WS=cocoa, NL=en_US Framework arguments: -keyring /Users/bakermatt/.eclipse_keyring -showlocation Command-line arguments: -os macosx -ws cocoa -arch x86 -keyring /Users/bakermatt/.eclipse_keyring -consoleLog -showlocation !ENTRY org.eclipse.core.resources 2 10035 2014-04-04 09:24:58.882 !MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes. !ENTRY org.eclipse.core.net 1 0 2014-04-04 09:24:59.693 !MESSAGE System property http.nonProxyHosts has been set to local|*.local|169.254/16|*.169.254/16 by an external source. This value will be overwritten using the values from the preferences !ENTRY org.eclipse.ui 2 0 2014-04-04 09:25:00.076 !MESSAGE Warnings while parsing the images from the 'org.eclipse.ui.commandImages' extension point. !SUBENTRY 1 org.eclipse.ui 2 0 2014-04-04 09:25:00.076 !MESSAGE Cannot bind to an undefined command: plug-in='com.appcelerator.titanium.android.ui', id='com.appcelerator.titanium.mobile.command.run_on_device.android' !SUBENTRY 1 org.eclipse.ui 2 0 2014-04-04 09:25:00.076 !MESSAGE Cannot bind to an undefined command: plug-in='com.appcelerator.titanium.android.ui', id='com.appcelerator.titanium.mobile.command.debug_on_device.android' !ENTRY com.aptana.js.core 4 0 2014-04-04 09:28:22.715 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-04 09:28:22.810 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-04 09:28:24.224 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-04 09:28:24.225 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-04 09:28:24.227 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-04 09:28:24.228 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !ENTRY com.aptana.js.core 4 0 2014-04-04 09:28:24.229 !MESSAGE (Build 3.2.1.201402041146) [ERROR] Expected JSFunction node when applying documentation; however, the node type was 'com.aptana.js.core.parsing.ast.JSGroupNode' instead. Source = (function () {var Spec;Spec = {enabled: true, equals: function (a, b) {var i;if (a instanceof Array && b instanceof Array) {if (a.length !== b.length) {return false;}for (i = 0; i < a.length; i++) {if (!Spec.equals(a[i], b[i])) {return false;}}return true;}if ((a !== null && b !== null) && (typeof a === "object" && typeof b === "object")) {for (i in a) {if (a.hasOwnProperty(i)) {if (!Spec.equals(a[i], b[i])) {return false;}}}return true;}return (a === b);}, should: function (expection, message) {Spec.currentIndicator++;if (!expection) {var warning = ["[Spec failed", Spec.currentTitle ? " (" + Spec.currentTitle + ")] " : "] ", (message || (Spec.currentMessage + " " + Spec.currentIndicator) || "")].join("");alert(warning);throw warning;}return !!expection;}, describe: function (title, spec) {Spec.currentTitle = title;var name;for (name in spec) {if (spec.hasOwnProperty(name)) {Spec.currentMessage = name;Spec.currentIndicator = 0;spec[name]();Spec.currentIndicator = null;}}Spec.currentMessage = Spec.currentTitle = null;}, Version: "0.1"};Spec.should.equal = function (a, b, message) {return Spec.should(Spec.equals(a, b), message);};Spec.should.not = function (a, message) {return Spec.should(!a, message);};Spec.should.not.equal = function (a, b, message) {return Spec.should(!Spec.equals(a, b), message);};if (!Spec.enabled) {Spec.describe = function () {};}Spec.describe("Spec object", {"should": function () {Spec.should(true);Spec.should(1);}, "should.not": function () {Spec.should.not(false);Spec.should.not(0);}, "should.equal": function () {Spec.should.equal(null, null);Spec.should.equal("", "");Spec.should.equal(12345, 12345);Spec.should.equal([0, 1, 2], [0, 1, 2]);Spec.should.equal([0, 1, [0, 1, 2]], [0, 1, [0, 1, 2]]);Spec.should.equal({}, {});Spec.should.equal({x: 1}, {x: 1});Spec.should.equal({x: [1]}, {x: [1]});}, "should.not.equal": function () {Spec.should.not.equal([1, 2, 3], [1, 2, 3, 4]);Spec.should.not.equal({x: 1}, [1, 2, 3, 4]);}});function strfhex32 (i32) {i32 &= 0xffffffff;if (i32 < 0) {i32 += 0x100000000;}var hex = Number(i32).toString(16);if (hex.length < 8) {hex = "00000000".substr(0, 8 - hex.length) + hex;}return hex;}Spec.describe("sha1", {"strfhex32": function () {Spec.should.equal(strfhex32(0x0), "00000000");Spec.should.equal(strfhex32(0x123), "00000123");Spec.should.equal(strfhex32(0xffffffff), "ffffffff");}});function padding_size (nbits) {var n = nbits + 1 + 64;return 512 * Math.ceil(n / 512) / 32;}Spec.describe("sha1", {"padding_size": function () {Spec.should.equal(padding_size(0), 16);Spec.should.equal(padding_size(1), 16);Spec.should.equal(padding_size(512 - 64 - 1), 16);Spec.should.equal(padding_size(512 - 64), 32);}});function word_array (m) {var nchar = m.length;var size = padding_size(nchar * 8);var words = new Array(size);var i;for (i = 0, j = 0; i < nchar;) {words[j++] = ((m.charCodeAt(i++) & 0xff) << 24) | ((m.charCodeAt(i++) & 0xff) << 16) | ((m.charCodeAt(i++) & 0xff) << 8) | ((m.charCodeAt(i++) & 0xff));}while (j < size) {words[j++] = 0;}return words;}Spec.describe("sha1", {"word_array": function () {Spec.should.equal(word_array(""), [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);Spec.should.equal(word_array("1234")[0], 0x31323334);}});function write_nbits (words, length, nbits) {if (nbits > 0xffffffff) {var lo = nbits & 0xffffffff;if (lo < 0) {lo += 0x100000000;}words[length - 1] = lo;words[length - 2] = (nbits - lo) / 0x100000000;} else {words[length - 1] = nbits;words[length - 2] = 0x0;}return words;}Spec.describe("sha1", {"write_nbits": function () {Spec.should.equal(write_nbits([0, 0], 2, 1), [0, 1]);Spec.should.equal(write_nbits([0, 0], 2, 0xffffffff), [0, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x100000000), [1, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x1ffffffff), [1, 0xffffffff]);Spec.should.equal(write_nbits([0, 0], 2, 0x12300000000), [0x123, 0]);Spec.should.equal(write_nbits([0, 0], 2, 0x123abcdef12), [0x123, 0xabcdef12]);}});function padding (words, nbits) {var i = Math.floor(nbits / 32);words[i] |= (1 << (((i + 1) * 32) - nbits - 1));write_nbits(words, padding_size(nbits), nbits);return words;}function digest (words) {var i = 0, t = 0;var H = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0];while (i < words.length) {var W = new Array(80);for (t = 0; t < 16; t++) {W[t] = words[i++];}for (t = 16; t < 80; t++) {var w = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16];W[t] = (w << 1) | (w >>> 31);}var A = H[0], B = H[1], C = H[2], D = H[3], E = H[4];for (t = 0; t < 80; t++) {var tmp = ((A << 5) | (A >>> 27)) + E + W[t];if (t >= 0 && t <= 19) {tmp += ((B & C) | ((~B) & D)) + 0x5a827999;} else if (t >= 20 && t <= 39) {tmp += (B ^ C ^ D) + 0x6ed9eba1;} else if (t >= 40 && t <= 59) {tmp += ((B & C) | (B & D) | (C & D)) + 0x8f1bbcdc;} else if (t >= 60 && t <= 79) {tmp += (B ^ C ^ D) + 0xca62c1d6;}E = D;D = C;C = ((B << 30) | (B >>> 2));B = A;A = tmp;}H[0] = (H[0] + A) & 0xffffffff;H[1] = (H[1] + B) & 0xffffffff;H[2] = (H[2] + C) & 0xffffffff;H[3] = (H[3] + D) & 0xffffffff;H[4] = (H[4] + E) & 0xffffffff;if (H[0] < 0) {H[0] += 0x100000000;}if (H[1] < 0) {H[1] += 0x100000000;}if (H[2] < 0) {H[2] += 0x100000000;}if (H[3] < 0) {H[3] += 0x100000000;}if (H[4] < 0) {H[4] += 0x100000000;}}return H;}var SHA1 = function (message) {this.message = message;};function strfhex8 (i8) {i8 &= 0xff;if (i8 < 0) {i8 += 0x100;}var hex = Number(i8).toString(16);if (hex.length < 2) {hex = "00".substr(0, 2 - hex.length) + hex;}return hex;}_base64_keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";SHA1.prototype = {digest: function () {var nbits = this.message.length * 8;var words = padding(word_array(this.message), nbits);return digest(words);}, base64digest: function () {var hex = this.hexdigest();var output = "";var chr1, chr2, chr3, enc1, enc2, enc3, enc4;var i = 0;while (i < hex.length) {chr1 = parseInt(hex.substring(i, i + 2), 16);chr2 = parseInt(hex.substring(i + 2, i + 4), 16);chr3 = parseInt(hex.substring(i + 4, i + 6), 16);enc1 = chr1 >> 2;enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);enc4 = chr3 & 63;if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;}output = output + _base64_keyStr.charAt(enc1) + _base64_keyStr.charAt(enc2) + _base64_keyStr.charAt(enc3) + _base64_keyStr.charAt(enc4);i += 6;}return output;}, hexdigest: function () {var digest = this.digest();var i;for (i = 0; i < digest.length; i++) {digest[i] = strfhex32(digest[i]);}return digest.join("");}};Spec.describe("sha1", {"SHA1#hexdigest": function () {Spec.should.equal(new SHA1("").hexdigest(), "da39a3ee5e6b4b0d3255bfef95601890afd80709");Spec.should.equal(new SHA1("1").hexdigest(), "356a192b7913b04c54574d18c28d46e6395428ab");Spec.should.equal(new SHA1("Hello.").hexdigest(), "9b56d519ccd9e1e5b2a725e186184cdc68de0731");Spec.should.equal(new SHA1("9b56d519ccd9e1e5b2a725e186184cdc68de0731").hexdigest(), "f042dc98a62cbad68dbe21f11bbc1e9d416d2bf6");Spec.should.equal(new SHA1("MD5abZRVSXZVRcasdfasdddddddddddddddds+BNRJFSLKJFN+SEONBBJFJXLKCJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wurJFSE)RUNVXDLILKVJRN)#NVFJ)WVFWRW#)NVS$Q=$dddddddddddddWV;no9wuraddddddasdfasdfd").hexdigest(), "662dbf4ebc9cdb4224766e87634e5ba9e6de672b");}});return SHA1;}()) !SESSION 2014-04-04 09:44:36.141 ----------------------------------------------- eclipse.buildId=unknown java.version=1.6.0_65 java.vendor=Apple Inc. BootLoader constants: OS=macosx, ARCH=x86, WS=cocoa, NL=en_US Framework arguments: -keyring /Users/bakermatt/.eclipse_keyring -showlocation Command-line arguments: -os macosx -ws cocoa -arch x86 -keyring /Users/bakermatt/.eclipse_keyring -consoleLog -showlocation !ENTRY org.eclipse.core.resources 2 10035 2014-04-04 09:44:40.843 !MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes. !ENTRY org.eclipse.core.net 1 0 2014-04-04 09:44:42.281 !MESSAGE System property http.nonProxyHosts has been set to local|*.local|169.254/16|*.169.254/16 by an external source. This value will be overwritten using the values from the preferences !ENTRY org.eclipse.ui 2 0 2014-04-04 09:44:43.382 !MESSAGE Warnings while parsing the images from the 'org.eclipse.ui.commandImages' extension point. !SUBENTRY 1 org.eclipse.ui 2 0 2014-04-04 09:44:43.382 !MESSAGE Cannot bind to an undefined command: plug-in='com.appcelerator.titanium.android.ui', id='com.appcelerator.titanium.mobile.command.run_on_device.android' !SUBENTRY 1 org.eclipse.ui 2 0 2014-04-04 09:44:43.382 !MESSAGE Cannot bind to an undefined command: plug-in='com.appcelerator.titanium.android.ui', id='com.appcelerator.titanium.mobile.command.debug_on_device.android' !SESSION 2014-04-04 09:57:07.423 ----------------------------------------------- eclipse.buildId=unknown java.version=1.6.0_65 java.vendor=Apple Inc. BootLoader constants: OS=macosx, ARCH=x86, WS=cocoa, NL=en_US Framework arguments: -keyring /Users/bakermatt/.eclipse_keyring -showlocation Command-line arguments: -os macosx -ws cocoa -arch x86 -keyring /Users/bakermatt/.eclipse_keyring -consoleLog -showlocation !ENTRY org.eclipse.core.resources 2 10035 2014-04-04 09:57:11.689 !MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes. !ENTRY org.eclipse.core.net 1 0 2014-04-04 09:57:13.443 !MESSAGE System property http.nonProxyHosts has been set to local|*.local|169.254/16|*.169.254/16 by an external source. This value will be overwritten using the values from the preferences !ENTRY org.eclipse.ui 2 0 2014-04-04 09:57:13.748 !MESSAGE Warnings while parsing the images from the 'org.eclipse.ui.commandImages' extension point. !SUBENTRY 1 org.eclipse.ui 2 0 2014-04-04 09:57:13.748 !MESSAGE Cannot bind to an undefined command: plug-in='com.appcelerator.titanium.android.ui', id='com.appcelerator.titanium.mobile.command.run_on_device.android' !SUBENTRY 1 org.eclipse.ui 2 0 2014-04-04 09:57:13.749 !MESSAGE Cannot bind to an undefined command: plug-in='com.appcelerator.titanium.android.ui', id='com.appcelerator.titanium.mobile.command.debug_on_device.android'