PageSourceSearch

https://omeris.com/wp-content/themes/danka/dist/components/headroom/headroom.js?ver=7.1.2

js omeris.com collected 2026-10-06 12:57:23 UTC 22,021 bytes, 240 lines download raw bytes

vendor: 111 bytes, lines 1-5
1/******/ (() => { // webpackBootstrap
2/******/ 	"use strict";
3/******/ 	var __webpack_modules__ = ({
4
5/***/ "./
5components/headroom/headroom.js":
6/*!*****************************************!*\
7  !*** ./components/headroom/headroom.js ***!
8  \*****************************************/
9/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
10
11__webpack_require__.r(__webpack_exports__);
12/* harmony import */ var _headroom_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./headroom.scss */ "./components/headroom/headroom.scss");
13/* harmony import */ var headroom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! headroom.js */ "./node_modules/headroom.js/dist/headroom.js");
14/* harmony import */ var headroom_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(headroom_js__WEBPACK_IMPORTED_MODULE_1__);
15
16
17document.addEventListener('DOMContentLoaded', function () {
18  var siteHeader = document.querySelector(".container-headroom .header");
19  var headroom = new (headroom_js__WEBPACK_IMPORTED_MODULE_1___default())(siteHeader, {
20    offset: {
21      up: 100,
22      down: 50
23    },
24    tolerance: {
25      up: 5,
26      down: 0
27    },
28    onPin: function onPin() {
29      document.body.classList.add('headroom-pinned');
30      document.body.classList.remove('headroom-unpinned');
31    },
32    // // callback when unpinned, `this` is headroom object
33    onUnpin: function onUnpin() {
34      document.body.classList.add('headroom-unpinned');
35      document.body.classList.remove('headroom-pinned');
36    },
37    // // callback when above offset, `this` is headroom object
38    onTop: function onTop() {
39      document.body.classList.add('headroom-top');
40      document.body.classList.remove('headroom-not-top');
41    },
42    // // callback when below offset, `this` is headroom object
43    onNotTop: function onNotTop() {
44      document.body.classList.add('headroom-not-top');
45      document.body.classList.remove('headroom-top');
46    }
47
48    // callback when at bottom of page, `this` is headroom object
49    // onBottom: function () {
50    //     document.body.classList.add('headroom-bottom');
51    // },
52    // // callback when moving away from bottom of page, `this` is headroom object
53    // onNotBottom: function () {
54    //     document.body.classList.remove('headroom-bottom');
55    // }
56  });
57
58  headroom.init();
59});
60
61/***/ }),
62
63/***/ "./components/headroom/headroom.scss":
64/*!*******************************************!*\
65  !*** ./components/headroom/headroom.scss ***!
66  \*******************************************/
67/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
68
69__webpack_require__.r(__webpack_exports__);
70// extracted by mini-css-extract-plugin
71
72
73/***/ })
vendor: 8,703 bytes, lines 73-240
73
74
75/******/ 	});
76/************************************************************************/
77/******/ 	// The module cache
78/******/ 	var __webpack_module_cache__ = {};
79/******/ 	
80/******/ 	// The require function
81/******/ 	function __webpack_require__(moduleId) {
82/******/ 		// Check if module is in cache
83/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
84/******/ 		if (cachedModule !== undefined) {
85/******/ 			return cachedModule.exports;
86/******/ 		}
87/******/ 		// Create a new module (and put it into the cache)
88/******/ 		var module = __webpack_module_cache__[moduleId] = {
89/******/ 			// no module.id needed
90/******/ 			// no module.loaded needed
91/******/ 			exports: {}
92/******/ 		};
93/******/ 	
94/******/ 		// Execute the module function
95/******/ 		__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
96/******/ 	
97/******/ 		// Return the exports of the module
98/******/ 		return module.exports;
99/******/ 	}
100/******/ 	
101/******/ 	// expose the modules object (__webpack_modules__)
102/******/ 	__webpack_require__.m = __webpack_modules__;
103/******/ 	
104/************************************************************************/
105/******/ 	/* webpack/runtime/chunk loaded */
106/******/ 	(() => {
107/******/ 		var deferred = [];
108/******/ 		__webpack_require__.O = (result, chunkIds, fn, priority) => {
109/******/ 			if(chunkIds) {
110/******/ 				priority = priority || 0;
111/******/ 				for(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];
112/******/ 				deferred[i] = [chunkIds, fn, priority];
113/******/ 				return;
114/******/ 			}
115/******/ 			var notFulfilled = Infinity;
116/******/ 			for (var i = 0; i < deferred.length; i++) {
117/******/ 				var [chunkIds, fn, priority] = deferred[i];
118/******/ 				var fulfilled = true;
119/******/ 				for (var j = 0; j < chunkIds.length; j++) {
120/******/ 					if ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {
121/******/ 						chunkIds.splice(j--, 1);
122/******/ 					} else {
123/******/ 						fulfilled = false;
124/******/ 						if(priority < notFulfilled) notFulfilled = priority;
125/******/ 					}
126/******/ 				}
127/******/ 				if(fulfilled) {
128/******/ 					deferred.splice(i--, 1)
129/******/ 					var r = fn();
130/******/ 					if (r !== undefined) result = r;
131/******/ 				}
132/******/ 			}
133/******/ 			return result;
134/******/ 		};
135/******/ 	})();
136/******/ 	
137/******/ 	/* webpack/runtime/compat get default export */
138/******/ 	(() => {
139/******/ 		// getDefaultExport function for compatibility with non-harmony modules
140/******/ 		__webpack_require__.n = (module) => {
141/******/ 			var getter = module && module.__esModule ?
142/******/ 				() => (module['default']) :
143/******/ 				() => (module);
144/******/ 			__webpack_require__.d(getter, { a: getter });
145/******/ 			return getter;
146/******/ 		};
147/******/ 	})();
148/******/ 	
149/******/ 	/* webpack/runtime/define property getters */
150/******/ 	(() => {
151/******/ 		// define getter functions for harmony exports
152/******/ 		__webpack_require__.d = (exports, definition) => {
153/******/ 			for(var key in definition) {
154/******/ 				if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
155/******/ 					Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
156/******/ 				}
157/******/ 			}
158/******/ 		};
159/******/ 	})();
160/******/ 	
161/******/ 	/* webpack/runtime/hasOwnProperty shorthand */
162/******/ 	(() => {
163/******/ 		__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
164/******/ 	})();
165/******/ 	
166/******/ 	/* webpack/runtime/make namespace object */
167/******/ 	(() => {
168/******/ 		// define __esModule on exports
169/******/ 		__webpack_require__.r = (exports) => {
170/******/ 			if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
171/******/ 				Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
172/******/ 			}
173/******/ 			Object.defineProperty(exports, '__esModule', { value: true });
174/******/ 		};
175/******/ 	})();
176/******/ 	
177/******/ 	/* webpack/runtime/jsonp chunk loading */
178/******/ 	(() => {
179/******/ 		// no baseURI
180/******/ 		
181/******/ 		// object to store loaded and loading chunks
182/******/ 		// undefined = chunk not loaded, null = chunk preloaded/prefetched
183/******/ 		// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded
184/******/ 		var installedChunks = {
185/******/ 			"components/headroom/headroom": 0
186/******/ 		};
187/******/ 		
188/******/ 		// no chunk on demand loading
189/******/ 		
190/******/ 		// no prefetching
191/******/ 		
192/******/ 		// no preloaded
193/******/ 		
194/******/ 		// no HMR
195/******/ 		
196/******/ 		// no HMR manifest
197/******/ 		
198/******/ 		__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);
199/******/ 		
200/******/ 		// install a JSONP callback for chunk loading
201/******/ 		var webpackJsonpCallback = (parentChunkLoadingFunction, data) => {
202/******/ 			var [chunkIds, moreModules, runtime] = data;
203/******/ 			// add "moreModules" to the modules object,
204/******/ 			// then flag all "chunkIds" as loaded and fire callback
205/******/ 			var moduleId, chunkId, i = 0;
206/******/ 			if(chunkIds.some((id) => (installedChunks[id] !== 0))) {
207/******/ 				for(moduleId in moreModules) {
208/******/ 					if(__webpack_require__.o(moreModules, moduleId)) {
209/******/ 						__webpack_require__.m[moduleId] = moreModules[moduleId];
210/******/ 					}
211/******/ 				}
212/******/ 				if(runtime) var result = runtime(__webpack_require__);
213/******/ 			}
214/******/ 			if(parentChunkLoadingFunction) parentChunkLoadingFunction(data);
215/******/ 			for(;i < chunkIds.length; i++) {
216/******/ 				chunkId = chunkIds[i];
217/******/ 				if(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {
218/******/ 					installedChunks[chunkId][0]();
219/******/ 				}
220/******/ 				installedChunks[chunkId] = 0;
221/******/ 			}
222/******/ 			return __webpack_require__.O(result);
223/******/ 		}
224/******/ 		
225/******/ 		var chunkLoadingGlobal = self["webpackChunkdanka"] = self["webpackChunkdanka"] || [];
226/******/ 		chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));
227/******/ 		chunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));
228/******/ 	})();
229/******/ 	
230/************************************************************************/
231/******/ 	
232/******/ 	// startup
233/******/ 	// Load entry module and return exports
234/******/ 	// This entry module depends on other loaded chunks and execution need to be delayed
235/******/ 	var __webpack_exports__ = __webpack_require__.O(undefined, ["chunk-vendors"], () => (__webpack_require__("./components/headroom/headroom.js")))
236/******/ 	__webpack_exports__ = __webpack_require__.O(__webpack_exports__);
237/******/ 	
238/******/ })()
239;
240//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy9oZWFkcm9vbS9oZWFkcm9vbS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUF3QjtBQUNXO0FBRW5DQyxRQUFRLENBQUNDLGdCQUFnQixDQUFDLGtCQUFrQixFQUFFLFlBQU07RUFDaEQsSUFBTUMsVUFBVSxHQUFHRixRQUFRLENBQUNHLGFBQWEsQ0FBQyw2QkFBNkIsQ0FBQztFQUV4RSxJQUFNQyxRQUFRLEdBQUcsSUFBSUwsb0RBQVEsQ0FBQ0csVUFBVSxFQUFFO0lBQ3RDRyxNQUFNLEVBQUU7TUFDSkMsRUFBRSxFQUFFLEdBQUc7TUFDUEMsSUFBSSxFQUFFO0lBQ1YsQ0FBQztJQUNEQyxTQUFTLEVBQUc7TUFDUkYsRUFBRSxFQUFHLENBQUM7TUFDTkMsSUFBSSxFQUFHO0lBQ1gsQ0FBQztJQUNERSxLQUFLLEVBQUUsaUJBQVk7TUFDZlQsUUFBUSxDQUFDVSxJQUFJLENBQUNDLFNBQVMsQ0FBQ0MsR0FBRyxDQUFDLGlCQUFpQixDQUFDO01BQzlDWixRQUFRLENBQUNVLElBQUksQ0FBQ0MsU0FBUyxDQUFDRSxNQUFNLENBQUMsbUJBQW1CLENBQUM7SUFDdkQsQ0FBQztJQUNEO0lBQ0FDLE9BQU8sRUFBRSxtQkFBWTtNQUNqQmQsUUFBUSxDQUFDVSxJQUFJLENBQUNDLFNBQVMsQ0FBQ0MsR0FBRyxDQUFDLG1CQUFtQixDQUFDO01BQ2hEWixRQUFRLENBQUNVLElBQUksQ0FBQ0MsU0FBUyxDQUFDRSxNQUFNLENBQUMsaUJBQWlCLENBQUM7SUFDckQsQ0FBQztJQUNEO0lBQ0FFLEtBQUssRUFBRSxpQkFBWTtNQUNmZixRQUFRLENBQUNVLElBQUksQ0FBQ0MsU0FBUyxDQUFDQyxHQUFHLENBQUMsY0FBYyxDQUFDO01BQzNDWixRQUFRLENBQUNVLElBQUksQ0FBQ0MsU0FBUyxDQUFDRSxNQUFNLENBQUMsa0JBQWtCLENBQUM7SUFDdEQsQ0FBQztJQUNEO0lBQ0FHLFFBQVEsRUFBRSxvQkFBWTtNQUNsQmhCLFFBQVEsQ0FBQ1UsSUFBSSxDQUFDQyxTQUFTLENBQUNDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQztNQUMvQ1osUUFBUSxDQUFDVSxJQUFJLENBQUNDLFNBQVMsQ0FBQ0UsTUFBTSxDQUFDLGNBQWMsQ0FBQztJQUNsRDs7SUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VBQ0osQ0FBQyxDQUFDOztFQUVGVCxRQUFRLENBQUNhLElBQUksRUFBRTtBQUNuQixDQUFDLENBQUM7Ozs7Ozs7Ozs7O0FDOUNGOzs7Ozs7O1VDQUE7VUFDQTs7VUFFQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTs7VUFFQTtVQUNBOztVQUVBO1VBQ0E7VUFDQTs7VUFFQTtVQUNBOzs7OztXQ3pCQTtXQUNBO1dBQ0E7V0FDQTtXQUNBLCtCQUErQix3Q0FBd0M7V0FDdkU7V0FDQTtXQUNBO1dBQ0E7V0FDQSxpQkFBaUIscUJBQXFCO1dBQ3RDO1dBQ0E7V0FDQSxrQkFBa0IscUJBQXFCO1dBQ3ZDO1dBQ0E7V0FDQSxLQUFLO
2401dBQ0w7V0FDQTtXQUNBO1dBQ0E7V0FDQTtXQUNBO1dBQ0E7V0FDQTtXQUNBO1dBQ0E7V0FDQTtXQUNBOzs7OztXQzNCQTtXQUNBO1dBQ0E7V0FDQTtXQUNBO1dBQ0EsaUNBQWlDLFdBQVc7V0FDNUM7V0FDQTs7Ozs7V0NQQTtXQUNBO1dBQ0E7V0FDQTtXQUNBLHlDQUF5Qyx3Q0FBd0M7V0FDakY7V0FDQTtXQUNBOzs7OztXQ1BBOzs7OztXQ0FBO1dBQ0E7V0FDQTtXQUNBLHVEQUF1RCxpQkFBaUI7V0FDeEU7V0FDQSxnREFBZ0QsYUFBYTtXQUM3RDs7Ozs7V0NOQTs7V0FFQTtXQUNBO1dBQ0E7V0FDQTtXQUNBO1dBQ0E7O1dBRUE7O1dBRUE7O1dBRUE7O1dBRUE7O1dBRUE7O1dBRUE7O1dBRUE7V0FDQTtXQUNBO1dBQ0E7V0FDQTtXQUNBO1dBQ0E7V0FDQTtXQUNBO1dBQ0E7V0FDQTtXQUNBO1dBQ0E7V0FDQTtXQUNBO1dBQ0EsTUFBTSxxQkFBcUI7V0FDM0I7V0FDQTtXQUNBO1dBQ0E7V0FDQTtXQUNBO1dBQ0E7V0FDQTs7V0FFQTtXQUNBO1dBQ0E7Ozs7O1VFaERBO1VBQ0E7VUFDQTtVQUNBO1VBQ0EiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9kYW5rYS8uL2NvbXBvbmVudHMvaGVhZHJvb20vaGVhZHJvb20uanMiLCJ3ZWJwYWNrOi8vZGFua2EvLi9jb21wb25lbnRzL2hlYWRyb29tL2hlYWRyb29tLnNjc3M/MGI5NCIsIndlYnBhY2s6Ly9kYW5rYS93ZWJwYWNrL2Jvb3RzdHJhcCIsIndlYnBhY2s6Ly9kYW5rYS93ZWJwYWNrL3J1bnRpbWUvY2h1bmsgbG9hZGVkIiwid2VicGFjazovL2RhbmthL3dlYnBhY2svcnVudGltZS9jb21wYXQgZ2V0IGRlZmF1bHQgZXhwb3J0Iiwid2VicGFjazovL2RhbmthL3dlYnBhY2svcnVudGltZS9kZWZpbmUgcHJvcGVydHkgZ2V0dGVycyIsIndlYnBhY2s6Ly9kYW5rYS93ZWJwYWNrL3J1bnRpbWUvaGFzT3duUHJvcGVydHkgc2hvcnRoYW5kIiwid2VicGFjazovL2RhbmthL3dlYnBhY2svcnVudGltZS9tYWtlIG5hbWVzcGFjZSBvYmplY3QiLCJ3ZWJwYWNrOi8vZGFua2Evd2VicGFjay9ydW50aW1lL2pzb25wIGNodW5rIGxvYWRpbmciLCJ3ZWJwYWNrOi8vZGFua2Evd2VicGFjay9iZWZvcmUtc3RhcnR1cCIsIndlYnBhY2s6Ly9kYW5rYS93ZWJwYWNrL3N0YXJ0dXAiLCJ3ZWJwYWNrOi8vZGFua2Evd2VicGFjay9hZnRlci1zdGFydHVwIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnLi9oZWFkcm9vbS5zY3NzJ1xuaW1wb3J0IEhlYWRyb29tIGZyb20gXCJoZWFkcm9vbS5qc1wiO1xuXG5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgKCkgPT4ge1xuICAgIGNvbnN0IHNpdGVIZWFkZXIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFwiLmNvbnRhaW5lci1oZWFkcm9vbSAuaGVhZGVyXCIpXG5cbiAgICBjb25zdCBoZWFkcm9vbSA9IG5ldyBIZWFkcm9vbShzaXRlSGVhZGVyLCB7XG4gICAgICAgIG9mZnNldDoge1xuICAgICAgICAgICAgdXA6IDEwMCxcbiAgICAgICAgICAgIGRvd246IDUwXG4gICAgICAgIH0sXG4gICAgICAgIHRvbGVyYW5jZSA6IHtcbiAgICAgICAgICAgIHVwIDogNSxcbiAgICAgICAgICAgIGRvd24gOiAwXG4gICAgICAgIH0sXG4gICAgICAgIG9uUGluOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBkb2
240N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoJ2hlYWRyb29tLXBpbm5lZCcpO1xuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCdoZWFkcm9vbS11bnBpbm5lZCcpO1xuICAgICAgICB9LFxuICAgICAgICAvLyAvLyBjYWxsYmFjayB3aGVuIHVucGlubmVkLCBgdGhpc2AgaXMgaGVhZHJvb20gb2JqZWN0XG4gICAgICAgIG9uVW5waW46IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgnaGVhZHJvb20tdW5waW5uZWQnKTtcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgnaGVhZHJvb20tcGlubmVkJyk7XG4gICAgICAgIH0sXG4gICAgICAgIC8vIC8vIGNhbGxiYWNrIHdoZW4gYWJvdmUgb2Zmc2V0LCBgdGhpc2AgaXMgaGVhZHJvb20gb2JqZWN0XG4gICAgICAgIG9uVG9wOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoJ2hlYWRyb29tLXRvcCcpO1xuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCdoZWFkcm9vbS1ub3QtdG9wJyk7XG4gICAgICAgIH0sXG4gICAgICAgIC8vIC8vIGNhbGxiYWNrIHdoZW4gYmVsb3cgb2Zmc2V0LCBgdGhpc2AgaXMgaGVhZHJvb20gb2JqZWN0XG4gICAgICAgIG9uTm90VG9wOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoJ2hlYWRyb29tLW5vdC10b3AnKTtcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgnaGVhZHJvb20tdG9wJyk7XG4gICAgICAgIH0sXG5cbiAgICAgICAgLy8gY2FsbGJhY2sgd2hlbiBhdCBib3R0b20gb2YgcGFnZSwgYHRoaXNgIGlzIGhlYWRyb29tIG9iamVjdFxuICAgICAgICAvLyBvbkJvdHRvbTogZnVuY3Rpb24gKCkge1xuICAgICAgICAvLyAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKCdoZWFkcm9vbS1ib3R0b20nKTtcbiAgICAgICAgLy8gfSxcbiAgICAgICAgLy8gLy8gY2FsbGJhY2sgd2hlbiBtb3ZpbmcgYXdheSBmcm9tIGJvdHRvbSBvZiBwYWdlLCBgdGhpc2AgaXMgaGVhZHJvb20gb2JqZWN0XG4gICAgICAgIC8vIG9uTm90Qm90dG9tOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIC8vICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoJ2hlYWRyb29tLWJvdHRvbScpO1xuICAgICAgICAvLyB9XG4gICAgfSlcbiAgXG4gICAgaGVhZHJvb20uaW5pdCgpO1xufSlcbiIsIi8vIGV4dHJhY3RlZCBieSBtaW5pLWNzcy1leHRyYWN0LXBsdWdpblxuZXhwb3J0IHt9OyIsIi8vIFRoZSBtb2R1bGUgY2FjaGVcbnZhciBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX18gPSB7fTtcblxuLy8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbmZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcblx0Ly8gQ2hlY2sgaWYgbW9kdWxlIGlzIGluIGNhY2hlXG5cdHZhciBjYWNoZWRNb2R1bGUgPSBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdO1xuXHRpZiAoY2FjaGVkTW9kdWxlICE9PSB1bmRlZmluZWQpIHtcblx0XHRyZXR1cm4gY2FjaGVkTW9kdWxlLmV4cG9ydHM7XG5cdH1cblx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcblx0dmFyIG1vZHVsZSA9IF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF0gPSB7XG5cdFx0Ly8gbm8gbW9kdWxlLmlkIG5lZWRlZFxuXHRcdC8vIG5vIG1vZHVsZS5sb2FkZWQgbmVlZGVkXG5cdFx0ZXhwb3J0czoge31cblx0fTtcblxuXHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cblx0X193ZWJwYWNrX21vZHVsZXNfX1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cblx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcblx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xufVxuXG4vLyBleHBvc2UgdGhlIG1vZHVsZXMgb2JqZWN0IChfX3dlYnBhY2tfbW9kdWxlc19fKVxuX193ZWJwYWNrX3JlcXVpcmVfXy5tID0gX193ZWJwYWNrX21vZHVsZXNfXztcblxuIiwidmFyIGRlZmVycmVkID0gW107XG5fX3dlYnBhY2tfcmVxdWlyZV9fLk8gPSAocmVzdWx0LCBjaHVua0lkcywgZm4sIHByaW9yaXR5KSA9PiB7XG5cdGlmKGNodW5rSWRzKSB7XG5cdFx0cHJpb3JpdHkgPSBwcmlvcml0eSB8fCAwO1xuXHRcdGZvcih2YXIgaSA9IGRlZmVycmVkLmxlbmd0aDsgaSA+IDAgJiYgZGVmZXJyZWRbaSAtIDFdWzJdID4gcHJpb3JpdHk7IGktLSkgZGVmZXJyZWRbaV0gPSBkZWZlcnJlZFtpIC0gMV07XG5cdFx0ZGVmZXJyZWRbaV0gPSBbY2h1bmtJZHMsIGZuLCBwcmlvcml0eV07XG5cdFx0cmV0dXJuO1xuXHR9XG5cdHZhciBub3RGdWxmaWxsZWQgPSBJbmZpbml0eTtcblx0Zm9yICh2YXIgaSA9IDA7IGkgPCBkZWZlcnJlZC5sZW5ndGg7IGkrKykge1xuXHRcdHZhciBbY2h1bmtJZHMsIGZuLCBwcmlvcml0eV0gPSBkZWZlcnJlZFtpXTtcblx0XHR2YXIgZnVsZmlsbGVkID0gdHJ1ZTtcblx0XHRmb3IgKHZhciBqID0gMDsgaiA8IGNodW5rSWRzLmxlbmd0aDsgaisrKSB7XG5cdFx0XHRpZiAoKHByaW9yaXR5ICYgMSA9PT0gMCB8fCBub3RGdWxmaWxsZWQgPj0gcHJpb3JpdHkpICYmIE9iamVjdC5rZXlzKF9fd2VicGFja19yZXF1aXJlX18uTykuZXZlcnkoKGtleSkgPT4gKF9fd2VicGFja19yZXF1aXJlX18uT1trZXldKGNodW5rSWRzW2pdKSkpKSB7XG5cdFx0XHRcdGNodW5rSWRzLnNwbGljZShqLS0sIDEpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0ZnVsZmlsbGVkID0gZmFsc2U7XG5cdFx0XHRcdGlmKHByaW9yaXR5IDwgbm90RnVsZmlsbGVkKSBub3RGdWxmaWxsZWQgPSBwcmlvcml0eTtcblx0XHRcdH1cblx0XHR9XG5cdFx0aWYoZnVsZmlsbGVkKSB7XG5cdFx0XHRkZWZlcnJlZC5zcGxpY2UoaS0tLCAxKVxuXHRcdFx0dmFyIHIgPSBmbigpO1xuXHRcdFx0aWYgKHIgIT09IHVuZGVmaW5lZCkgcmVzdWx0ID0gcjtcblx0XHR9XG5cdH1cblx0cmV0dXJuIHJlc3VsdDtcbn07IiwiLy8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbl9fd2VicGFja19yZXF1aXJlX18ubiA9IChtb2R1bGUpID0+IHtcblx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG5cdFx0KCkgPT4gKG1vZHVsZVsnZGVmYXVsdCddKSA6XG5cdFx0KCkgPT4gKG1vZHVsZSk7XG5cdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsIHsgYTogZ2V0dGVyIH0pO1xuXHRyZXR1cm4gZ2V0dGVyO1xufTsiLCIvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9ucyBmb3IgaGFybW9ueSBleHBvcnRzXG5fX3dlYn
240BhY2tfcmVxdWlyZV9fLmQgPSAoZXhwb3J0cywgZGVmaW5pdGlvbikgPT4ge1xuXHRmb3IodmFyIGtleSBpbiBkZWZpbml0aW9uKSB7XG5cdFx0aWYoX193ZWJwYWNrX3JlcXVpcmVfXy5vKGRlZmluaXRpb24sIGtleSkgJiYgIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBrZXkpKSB7XG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywga2V5LCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZGVmaW5pdGlvbltrZXldIH0pO1xuXHRcdH1cblx0fVxufTsiLCJfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSAob2JqLCBwcm9wKSA9PiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgcHJvcCkpIiwiLy8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuX193ZWJwYWNrX3JlcXVpcmVfXy5yID0gKGV4cG9ydHMpID0+IHtcblx0aWYodHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiYgU3ltYm9sLnRvU3RyaW5nVGFnKSB7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cdH1cblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbn07IiwiLy8gbm8gYmFzZVVSSVxuXG4vLyBvYmplY3QgdG8gc3RvcmUgbG9hZGVkIGFuZCBsb2FkaW5nIGNodW5rc1xuLy8gdW5kZWZpbmVkID0gY2h1bmsgbm90IGxvYWRlZCwgbnVsbCA9IGNodW5rIHByZWxvYWRlZC9wcmVmZXRjaGVkXG4vLyBbcmVzb2x2ZSwgcmVqZWN0LCBQcm9taXNlXSA9IGNodW5rIGxvYWRpbmcsIDAgPSBjaHVuayBsb2FkZWRcbnZhciBpbnN0YWxsZWRDaHVua3MgPSB7XG5cdFwiY29tcG9uZW50cy9oZWFkcm9vbS9oZWFkcm9vbVwiOiAwXG59O1xuXG4vLyBubyBjaHVuayBvbiBkZW1hbmQgbG9hZGluZ1xuXG4vLyBubyBwcmVmZXRjaGluZ1xuXG4vLyBubyBwcmVsb2FkZWRcblxuLy8gbm8gSE1SXG5cbi8vIG5vIEhNUiBtYW5pZmVzdFxuXG5fX3dlYnBhY2tfcmVxdWlyZV9fLk8uaiA9IChjaHVua0lkKSA9PiAoaW5zdGFsbGVkQ2h1bmtzW2NodW5rSWRdID09PSAwKTtcblxuLy8gaW5zdGFsbCBhIEpTT05QIGNhbGxiYWNrIGZvciBjaHVuayBsb2FkaW5nXG52YXIgd2VicGFja0pzb25wQ2FsbGJhY2sgPSAocGFyZW50Q2h1bmtMb2FkaW5nRnVuY3Rpb24sIGRhdGEpID0+IHtcblx0dmFyIFtjaHVua0lkcywgbW9yZU1vZHVsZXMsIHJ1bnRpbWVdID0gZGF0YTtcblx0Ly8gYWRkIFwibW9yZU1vZHVsZXNcIiB0byB0aGUgbW9kdWxlcyBvYmplY3QsXG5cdC8vIHRoZW4gZmxhZyBhbGwgXCJjaHVua0lkc1wiIGFzIGxvYWRlZCBhbmQgZmlyZSBjYWxsYmFja1xuXHR2YXIgbW9kdWxlSWQsIGNodW5rSWQsIGkgPSAwO1xuXHRpZihjaHVua0lkcy5zb21lKChpZCkgPT4gKGluc3RhbGxlZENodW5rc1tpZF0gIT09IDApKSkge1xuXHRcdGZvcihtb2R1bGVJZCBpbiBtb3JlTW9kdWxlcykge1xuXHRcdFx0aWYoX193ZWJwYWNrX3JlcXVpcmVfXy5vKG1vcmVNb2R1bGVzLCBtb2R1bGVJZCkpIHtcblx0XHRcdFx0X193ZWJwYWNrX3JlcXVpcmVfXy5tW21vZHVsZUlkXSA9IG1vcmVNb2R1bGVzW21vZHVsZUlkXTtcblx0XHRcdH1cblx0XHR9XG5cdFx0aWYocnVudGltZSkgdmFyIHJlc3VsdCA9IHJ1bnRpbWUoX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cdH1cblx0aWYocGFyZW50Q2h1bmtMb2FkaW5nRnVuY3Rpb24pIHBhcmVudENodW5rTG9hZGluZ0Z1bmN0aW9uKGRhdGEpO1xuXHRmb3IoO2kgPCBjaHVua0lkcy5sZW5ndGg7IGkrKykge1xuXHRcdGNodW5rSWQgPSBjaHVua0lkc1tpXTtcblx0XHRpZihfX3dlYnBhY2tfcmVxdWlyZV9fLm8oaW5zdGFsbGVkQ2h1bmtzLCBjaHVua0lkKSAmJiBpbnN0YWxsZWRDaHVua3NbY2h1bmtJZF0pIHtcblx0XHRcdGluc3RhbGxlZENodW5rc1tjaHVua0lkXVswXSgpO1xuXHRcdH1cblx0XHRpbnN0YWxsZWRDaHVua3NbY2h1bmtJZF0gPSAwO1xuXHR9XG5cdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fLk8ocmVzdWx0KTtcbn1cblxudmFyIGNodW5rTG9hZGluZ0dsb2JhbCA9IHNlbGZbXCJ3ZWJwYWNrQ2h1bmtkYW5rYVwiXSA9IHNlbGZbXCJ3ZWJwYWNrQ2h1bmtkYW5rYVwiXSB8fCBbXTtcbmNodW5rTG9hZGluZ0dsb2JhbC5mb3JFYWNoKHdlYnBhY2tKc29ucENhbGxiYWNrLmJpbmQobnVsbCwgMCkpO1xuY2h1bmtMb2FkaW5nR2xvYmFsLnB1c2ggPSB3ZWJwYWNrSnNvbnBDYWxsYmFjay5iaW5kKG51bGwsIGNodW5rTG9hZGluZ0dsb2JhbC5wdXNoLmJpbmQoY2h1bmtMb2FkaW5nR2xvYmFsKSk7IiwiIiwiLy8gc3RhcnR1cFxuLy8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG4vLyBUaGlzIGVudHJ5IG1vZHVsZSBkZXBlbmRzIG9uIG90aGVyIGxvYWRlZCBjaHVua3MgYW5kIGV4ZWN1dGlvbiBuZWVkIHRvIGJlIGRlbGF5ZWRcbnZhciBfX3dlYnBhY2tfZXhwb3J0c19fID0gX193ZWJwYWNrX3JlcXVpcmVfXy5PKHVuZGVmaW5lZCwgW1wiY2h1bmstdmVuZG9yc1wiXSwgKCkgPT4gKF9fd2VicGFja19yZXF1aXJlX18oXCIuL2NvbXBvbmVudHMvaGVhZHJvb20vaGVhZHJvb20uanNcIikpKVxuX193ZWJwYWNrX2V4cG9ydHNfXyA9IF9fd2VicGFja19yZXF1aXJlX18uTyhfX3dlYnBhY2tfZXhwb3J0c19fKTtcbiIsIiJdLCJuYW1lcyI6WyJIZWFkcm9vbSIsImRvY3VtZW50IiwiYWRkRXZlbnRMaXN0ZW5lciIsInNpdGVIZWFkZXIiLCJxdWVyeVNlbGVjdG9yIiwiaGVhZHJvb20iLCJvZmZzZXQiLCJ1cCIsImRvd24iLCJ0b2xlcmFuY2UiLCJvblBpbiIsImJvZHkiLCJjbGFzc0xpc3QiLCJhZGQiLCJyZW1vdmUiLCJvblVucGluIiwib25Ub3AiLCJvbk5vdFRvcCIsImluaXQiXSwic291cmNlUm9vdCI6IiJ9

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.