1if (!Object.entries) { 2 Object.entries = function (obj) { 3 let ownProps = Object.keys(obj), 4 i = ownProps.length, 5 resArray = new Array(i); // preallocate the Array 6 while (i--) { 7 resArray[i] = [ownProps[i], obj[ownProps[i]]]; 8 } 9 return resArray; 10 }; 11} 12if (!String.prototype.includes) { 13 Object.defineProperty(String.prototype, 'includes', { 14 enumerable: false, 15 writable: true, 16 value: function (search, start) { 17 'use strict'; 18 if (typeof start !== 'number') { 19 start = 0; 20 } 21 22 if (start + search.length > this.length) { 23 return false; 24 } else { 25 return this.indexOf(search, start) !== -1; 26 } 27 }, 28 }); 29} 30if (!Array.prototype.includes) { 31 Object.defineProperty(Array.prototype, 'includes', { 32 enumerable: false, 33 writable: true, 34 value: function (searchElement /*, fromIndex*/) { 35 'use strict'; 36 const O = Object(this); 37 const len = parseInt(O.length) || 0; 38 if (len === 0) { 39 return false; 40 } 41 const n = parseInt(arguments[1]) || 0; 42 let k; 43 if (n >= 0) { 44 k = n; 45 } else { 46 k = len + n; 47 if (k < 0) { 48 k = 0; 49 } 50 } 51 let currentElement; 52 while (k < len) { 53 currentElement = O[k]; 54 if ( 55 searchElement === currentElement || 56 (searchElement !== searchElement && currentElement !== currentElement) 57 ) { 58 // NaN !== NaN 59 return true; 60 } 61 k++; 62 } 63 return false; 64 }, 65 }); 66} 67Math.log10 = 68 Math.log10 || 69 function (x) { 70 return Math.log(x) * Math.LOG10E; 71 };
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.