1/******/ (() => { // webpackBootstrap 2/******/ "use strict"; 3/******/ var __webpack_modules__ = ({}); 4/************************************************************************/ 5/******/ // The module cache 6/******/ var __webpack_module_cache__ = {}; 7/******/ 8/******/ // The require function 9/******/ function __webpack_require__(moduleId) { 10/******/ // Check if module is in cache 11/******/ var cachedModule = __webpack_module_cache__[moduleId]; 12/******/ if (cachedModule !== undefined) { 13/******/ return cachedModule.exports; 14/******/ } 15/******/ // Create a new module (and put it into the cache) 16/******/ var module = __webpack_module_cache__[moduleId] = { 17/******/ id: moduleId, 18/******/ loaded: false, 19/******/ exports: {} 20/******/ }; 21/******/ 22/******/ // Execute the module function 23/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__); 24/******/ 25/******/ // Flag the module as loaded 26/******/ module.loaded = true; 27/******/ 28/******/ // Return the exports of the module 29/******/ return module.exports; 30/******/ } 31/******/ 32/******/ // expose the modules object (__webpack_modules__) 33/******/ __webpack_require__.m = __webpack_modules__; 34/******/ 35/************************************************************************/ 36/******/ /* webpack/runtime/chunk loaded */ 37/******/ (() => { 38/******/ var deferred = []; 39/******/ __webpack_require__.O = (result, chunkIds, fn, priority) => { 40/******/ if(chunkIds) { 41/******/ priority = priority || 0; 42/******/ for(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1]; 43/******/ deferred[i] = [chunkIds, fn, priority]; 44/******/ return; 45/******/ } 46/******/ var notFulfilled = Infinity; 47/******/ for (var i = 0; i < deferred.length; i++) { 48/******/ var [chunkIds, fn, priority] = deferred[i]; 49/******/ var fulfilled = true; 50/******/ for (var j = 0; j < chunkIds.length; j++) { 51/******/ if ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) { 52/******/ chunkIds.splice(j--, 1); 53/******/ } else { 54/******/ fulfilled = false; 55/******/ if(priority < notFulfilled) notFulfilled = priority; 56/******/ } 57/******/ } 58/******/ if(fulfilled) { 59/******/ deferred.splice(i--, 1) 60/******/ var r = fn(); 61/******/ if (r !== undefined) result = r; 62/******/ } 63/******/ } 64/******/ return result; 65/******/ }; 66/******/ })(); 67/******/ 68/******/ /* webpack/runtime/compat get default export */ 69/******/ (() => { 70/******/ // getDefaultExport function for compatibility with non-harmony modules 71/******/ __webpack_require__.n = (module) => { 72/******/ var getter = module && module.__esModule ? 73/******/ () => (module['default']) : 74/******/ () => (module); 75/******/ __webpack_require__.d(getter, { a: getter }); 76/******/ return getter; 77/******/ }; 78/******/ })(); 79/******/ 80/******/ /* webpack/runtime/create fake namespace object */ 81/******/ (() => { 82/******/ var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__); 83/******/ var leafPrototypes; 84/******/ // create a fake namespace object 85/******/ // mode & 1: value is a module id, require it 86/******/ // mode & 2: merge all properties of value into the ns 87/******/ // mode & 4: return value when already ns object 88/******/ // mode & 16: return value when it's Promise-like 89/******/ // mode & 8|1: behave like require 90/******/ __webpack_require__.t = function(value, mode) { 91/******/ if(mode & 1) value = this(value); 92/******/ if(mode & 8) return value; 93/******/ if(typeof value === 'object' && value) { 94/******/ if((mode & 4) && value.__esModule) return value; 95/******/ if((mode & 16) && typeof value.then === 'function') return value; 96/******/ } 97/******/ var ns = Object.create(null); 98/******/ __webpack_require__.r(ns); 99/******/ var def = {}; 100/******/ leafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)]; 101/******/ for(var current = mode & 2 && value; (typeof current == 'object' || typeof current == 'function') && !~leafPrototypes.indexOf(current); current = getProto(current)) { 102/******/ Object.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key]))); 103/******/ } 104/******/ def['default'] = () => (value); 105/******/ __webpack_require__.d(ns, def); 106/******/ return ns; 107/******/ }; 108/******/ })(); 109/******/ 110/******/ /* webpack/runtime/define property getters */ 111/******/ (() => { 112/******/ // define getter functions for harmony exports 113/******/ __webpack_require__.d = (exports, definition) => { 114/******/ for(var key in definition) { 115/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { 116/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); 117/******/ } 118/******/ } 119/******/ }; 120/******/ })(); 121/******/ 122/******/ /* webpack/runtime/ensure chunk */ 123/******/ (() => { 124/******/ __webpack_require__.f = {}; 125/******/ // This file contains only the entry chunk.
vendor: 7,614 bytes, lines 126-207
126/******/ // The chunk loading function for additional chunks 127/******/ __webpack_require__.e = (chunkId) => { 128/******/ return Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => { 129/******/ __webpack_require__.f[key](chunkId, promises); 130/******/ return promises; 131/******/ }, [])); 132/******/ }; 133/******/ })(); 134/******/ 135/******/ /* webpack/runtime/get javascript chunk filename */ 136/******/ (() => { 137/******/ // This function allow to reference async chunks 138/******/ __webpack_require__.u = (chunkId) => { 139/******/ // return url for filenames based on template 140/******/ return "_GhbZtw_8fe3d6e8-6c75-4fc9-88ef-46b7f2723b06/static/legacy/js/" + ({"162":"page.promoHub","264":"page.services","531":"page.caseStudy","763":"Search","1168":"page.shortCourseGlobalSearch","1187":"page.fees","1205":"page.shortCourse","1357":"page.alp","1545":"page.ugTeaching","1549":"locations","1644":"page.ugEntryRequirements","1732":"page.pgrSupervision","2063":"page.generic","2225":"page.room","2506":"course.pgtTeaching","2578":"navitemloader","2592":"page.equipment","2603":"page.pgrTrainingAndDevelopment","2608":"redux-immutable","3357":"page.researchcapability","3410":"page.locationHub","3597":"Cookie","3627":"EnglishLanguageRequirements","3668":"page.topics","3973":"page.hub","4112":"course.presessional","4410":"page.jobVIP","4427":"formdata-polyfill","4557":"from-js","4813":"listing","5074":"page.researchproject","5086":"page.pgtCareers","5103":"course.pgt","5197":"immutable","5344":"page.unionProfile","5485":"course.foundation","5609":"VersionInfo","5689":"page.featuredEvents","5759":"page.coursePathway","5872":"page.module","6286":"page.ugDiscoverMore","6407":"page.eventseries","6701":"page.location","7069":"page.home","7216":"page.kifpathway","7335":"page.person","7602":"page.pgrFeesAndFunding","7614":"url-search-params-polyfill","7615":"page.facility","7919":"page.pgrResearchEnvironment","7931":"page.events","7994":"page.department","8013":"oidcclient","8019":"page.unionCampaign","8042":"page.researchCentre","8055":"page.fundingSearch","8250":"page.pgtFees","8426":"page.fundingOpportunity","8505":"page.jobSearch","8617":"adPage","8739":"page.pgtEntryRequirements","8889":"course.pgr","9202":"page.researchProfile","9266":"course.ug","9384":"page.pgtDiscover","9728":"ugFees"}[chunkId] || chunkId) + "." + {"162":"c54fc103eef1b673fb7a","264":"da46f3b5ebb390dac2e2","531":"b947a65f6ee4771968c8","761":"7fbdb8ad1c0e938f0425","763":"57269f4a88791a418e9d","799":"0849d916698cc15b5d27","811":"f7447c5f3b6f71adc002","1092":"1af8d86d81df7cf88d55","1140":"d5766b0ac44f8ad71fed","1168":"aa0468d449b452e2dc8f","1187":"ce5c09a0f052d9160159","1205":"247f3bee396e509f393a","1357":"38d0656be911e9e71d93","1545":"d19b0f5661008130c578","1549":"4070ab5d0e489358ca7e","1644":"57f640d090df1f3597cc","1722":"aea43278d2cd22fc3d6a","1732":"e6b52ad3dd68bde6ad25","2063":"2f7211fbea37bd2eed89","2225":"3467a38bde0254466f3b","2312":"56b27ab98f7ae9eea6cf","2497":"9a08a8b4e78e39f8f97f","2506":"eaf1674c8da899671da4","2578":"edfa33e97d42c5e8624a","2592":"d199addab27f261913a1","2603":"ba60962ce57e8dbb0a12","2608":"fabdaae0312caee1d91f","2708":"68b0abefe57268a0493f","3132":"9795d9ed03e15a3a0a0b","3133":"2318bd547603a1feeff7","3357":"d44460ea021c52cb3834","3410":"241f3cf4d65215e5ce71","3597":"e0a610d8d86eafcfe939","3627":"471bcabb5cec61c41092","3668":"1d65f79ed54aa43368b5","3973":"1ac6a76f90d68cb1bef9","4112":"521dc26f28642b1efc90","4216":"4648c0996ff9b333e054","4410":"ac7497b800c46b14ad1a","4427":"af901a01fd92e70a491b","4557":"843b6b9cd8b6cd5da65c","4813":"d1c4cd3d213e9f6fa87d","5074":"cc425dc30bf1f3566ae1","5086":"282dbfcd2fc3e4185e2a","5103":"b1cd3f47293076695199","5178":"0cf3810f9693cc2c93d4","5197":"65598a3e4aaea55a4a71","5344":"08e7adde91cda6e61b90","5485":"b41c8ffe4469c762c5ab","5609":"c5c92742701efca1d6c7","5689":"9df86418c4b719f8366a","5759":"85abf0bea1d93c7c17b1","5872":"7ad2a98aa3f20cda5aa8","6179":"e10d9545bccb68858212","6286":"9a1ad4bac5ea14ad04d7","6407":"976a48b2a138564747c7","6583":"574d2dd97085d4cb2497","6701":"e0ec30e733f957ef26a1","7069":"3b84b833ef466cfc9932","7216":"f5bdd3a9bb61bb205341","7335":"30f1235ddcd0b6685ba0","7514":"db774c2099d1a306a222","7602":"b0b98e0d3bfb234d5ca5","7614":"80ce856edba123ab270b","7615":"0e169bb7b4cc8c35f490","7715":"841bd611f99e6375c665","7919":"acec2343467b27d1e9eb","7931":"856c741cf555e2943ed2","7994":"9f9f28bc02c9d1deb125","8013":"3c09ec1b0433c07e8f61","8019":"aea915690077d6cbec46","8042":"864f9a39330196548b25","8055":"13acdac21a4d7a3460ed","8129":"ff59a50a761a5710bd17","8250":"11fceb742e675bb39e85","8424":"08f9d4dfbf80c1226ef5","8426":"53f51a6eede8db8a2197","8505":"cc936d4063c0b1853f90","8617":"7ad4fba7752b0096b6bc","8698":"73e796f0c44f44ad6e11","8739":"aa105d6a2c80ba3ad529","8773":"852e4f47366c3c13bd24","8889":"3ac1210a68c72372cd84","9202":"4a70df6c390775c95f80","9266":"f36723ab321c47dc95ac","9384":"256ebd2fb9889c9445f2","9728":"d3ffef9c9f2d15997891","9795":"3746ad72393929aa0b60"}[chunkId] + ".js"; 141/******/ }; 142/******/ })(); 143/******/ 144/******/ /* webpack/runtime/global */ 145/******/ (() => { 146/******/ __webpack_require__.g = (function() { 147/******/ if (typeof globalThis === 'object') return globalThis; 148/******/ try { 149/******/ return this || new Function('return this')(); 150/******/ } catch (e) { 151/******/ if (typeof window === 'object') return window; 152/******/ } 153/******/ })(); 154/******/ })(); 155/******/ 156/******/ /* webpack/runtime/harmony module decorator */ 157/******/ (() => { 158/******/ __webpack_require__.hmd = (module) => { 159/******/ module = Object.create(module); 160/******/ if (!module.children) module.children = []; 161/******/ Object.defineProperty(module, 'exports', { 162/******/ enumerable: true, 163/******/ set: () => { 164/******/ throw new Error('ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: ' + module.id); 165/******/ } 166/******/ }); 167/******/ return module; 168/******/ }; 169/******/ })(); 170/******/ 171/******/ /* webpack/runtime/hasOwnProperty shorthand */ 172/******/ (() => { 173/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) 174/******/ })(); 175/******/ 176/******/ /* webpack/runtime/load script */ 177/******/ (() => { 178/******/ var inProgress = {}; 179/******/ var dataWebpackPrefix = "kcl-website:"; 180/******/ // loadScript function to load a script via script tag 181/******/ __webpack_require__.l = (url, done, key, chunkId) => { 182/******/ if(inProgress[url]) { inProgress[url].push(done); return; } 183/******/ var script, needAttach; 184/******/ if(key !== undefined) { 185/******/ var scripts = document.getElementsByTagName("script"); 186/******/ for(var i = 0; i < scripts.length; i++) { 187/******/ var s = scripts[i]; 188/******/ if(s.getAttribute("src") == url || s.getAttribute("data-webpack") == dataWebpackPrefix + key) { script = s; break; } 189/******/ } 190/******/ } 191/******/ if(!script) { 192/******/ needAttach = true; 193/******/ script = document.createElement('script'); 194/******/ 195/******/ script.charset = 'utf-8'; 196/******/ if (__webpack_require__.nc) { 197/******/ script.setAttribute("nonce", __webpack_require__.nc); 198/******/ } 199/******/ script.setAttribute("data-webpack", dataWebpackPrefix + key); 200/******/ 201/******/ script.src = url; 202/******/ } 203/******/ inProgress[url] = [done]; 204/******/ var onScriptComplete = (prev, event) => { 205/******/ // avoid mem leaks in IE. 206/******/ script.onerror = script.onload = null; 207/******/ clearTimeout(timeout);
vendor: 6,358 bytes, lines 208-353
208/******/ var doneFns = inProgress[url]; 209/******/ delete inProgress[url]; 210/******/ script.parentNode && script.parentNode.removeChild(script); 211/******/ doneFns && doneFns.forEach((fn) => (fn(event))); 212/******/ if(prev) return prev(event); 213/******/ } 214/******/ var timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000); 215/******/ script.onerror = onScriptComplete.bind(null, script.onerror); 216/******/ script.onload = onScriptComplete.bind(null, script.onload); 217/******/ needAttach && document.head.appendChild(script); 218/******/ }; 219/******/ })(); 220/******/ 221/******/ /* webpack/runtime/make namespace object */ 222/******/ (() => { 223/******/ // define __esModule on exports 224/******/ __webpack_require__.r = (exports) => { 225/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { 226/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); 227/******/ } 228/******/ Object.defineProperty(exports, '__esModule', { value: true }); 229/******/ }; 230/******/ })(); 231/******/ 232/******/ /* webpack/runtime/node module decorator */ 233/******/ (() => { 234/******/ __webpack_require__.nmd = (module) => { 235/******/ module.paths = []; 236/******/ if (!module.children) module.children = []; 237/******/ return module; 238/******/ }; 239/******/ })(); 240/******/ 241/******/ /* webpack/runtime/set anonymous default export name */ 242/******/ (() => { 243/******/ // set .name for anonymous default exports per ES spec 244/******/ __webpack_require__.dn = (x) => { 245/******/ (Object.getOwnPropertyDescriptor(x, "name") || {}).writable || Object.defineProperty(x, "name", { value: "default", configurable: true }); 246/******/ }; 247/******/ })(); 248/******/ 249/******/ /* webpack/runtime/publicPath */ 250/******/ (() => { 251/******/ __webpack_require__.p = "/"; 252/******/ })(); 253/******/ 254/******/ /* webpack/runtime/jsonp chunk loading */ 255/******/ (() => { 256/******/ // no baseURI 257/******/ 258/******/ // object to store loaded and loading chunks 259/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched 260/******/ // [resolve, reject, Promise] = chunk loading, 0 = chunk loaded 261/******/ var installedChunks = { 262/******/ 9121: 0 263/******/ }; 264/******/ 265/******/ __webpack_require__.f.j = (chunkId, promises) => { 266/******/ // JSONP chunk loading for javascript 267/******/ var installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined; 268/******/ if(installedChunkData !== 0) { // 0 means "already installed". 269/******/ 270/******/ // a Promise means "currently loading". 271/******/ if(installedChunkData) { 272/******/ promises.push(installedChunkData[2]); 273/******/ } else { 274/******/ if(9121 != chunkId) { 275/******/ // setup Promise in chunk cache 276/******/ var promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject])); 277/******/ promises.push(installedChunkData[2] = promise); 278/******/ 279/******/ // start chunk loading 280/******/ var url = __webpack_require__.p + __webpack_require__.u(chunkId); 281/******/ // create error before stack unwound to get useful stacktrace later 282/******/ var error = new Error(); 283/******/ var loadingEnded = (event) => { 284/******/ if(__webpack_require__.o(installedChunks, chunkId)) { 285/******/ installedChunkData = installedChunks[chunkId]; 286/******/ if(installedChunkData !== 0) installedChunks[chunkId] = undefined; 287/******/ if(installedChunkData) { 288/******/ var errorType = event && (event.type === 'load' ? 'missing' : event.type); 289/******/ var realSrc = event && event.target && event.target.src; 290/******/ error.message = 'Loading chunk ' + chunkId + ' failed.\n(' + errorType + ': ' + realSrc + ')'; 291/******/ error.name = 'ChunkLoadError'; 292/******/ error.type = errorType; 293/******/ error.request = realSrc; 294/******/ installedChunkData[1](error); 295/******/ } 296/******/ } 297/******/ }; 298/******/ __webpack_require__.l(url, loadingEnded, "chunk-" + chunkId, chunkId); 299/******/ } else installedChunks[chunkId] = 0; 300/******/ } 301/******/ } 302/******/ }; 303/******/ 304/******/ // no prefetching 305/******/ 306/******/ // no preloaded 307/******/ 308/******/ // no HMR 309/******/ 310/******/ // no HMR manifest 311/******/ 312/******/ __webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0); 313/******/ 314/******/ // install a JSONP callback for chunk loading 315/******/ var webpackJsonpCallback = (parentChunkLoadingFunction, data) => { 316/******/ var [chunkIds, moreModules, runtime] = data; 317/******/ // add "moreModules" to the modules object, 318/******/ // then flag all "chunkIds" as loaded and fire callback 319/******/ var moduleId, chunkId, i = 0; 320/******/ if(chunkIds.some((id) => (installedChunks[id] !== 0))) { 321/******/ for(moduleId in moreModules) { 322/******/ if(__webpack_require__.o(moreModules, moduleId)) { 323/******/ __webpack_require__.m[moduleId] = moreModules[moduleId]; 324/******/ } 325/******/ } 326/******/ if(runtime) var result = runtime(__webpack_require__); 327/******/ } 328/******/ if(parentChunkLoadingFunction) parentChunkLoadingFunction(data); 329/******/ for(;i < chunkIds.length; i++) { 330/******/ chunkId = chunkIds[i]; 331/******/ if(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) { 332/******/ installedChunks[chunkId][0](); 333/******/ } 334/******/ installedChunks[chunkId] = 0; 335/******/ } 336/******/ return __webpack_require__.O(result); 337/******/ } 338/******/ 339/******/ var chunkLoadingGlobal = self["__LOADABLE_LOADED_CHUNKS__"] = self["__LOADABLE_LOADED_CHUNKS__"] || []; 340/******/ chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0)); 341/******/ chunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal)); 342/******/ })(); 343/******/ 344/******/ /* webpack/runtime/nonce */ 345/******/ (() => { 346/******/ __webpack_require__.nc = undefined; 347/******/ })(); 348/******/ 349/************************************************************************/ 350/******/ 351/******/ 352/******/ })() 353;
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.