1<!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,user-scalable=no"><meta name=robots content=""><link rel=icon href=https://resources.handelsblatt.com/hb-frontend/favicon.ico>
1<script>window.pulseWindowUserPromise=new Promise(function(i,o){window.pulseNotifyUserForCmp=function(o){i(o)}})</script>
1<link rel=preload href=//data-08d52e2a42.handelsblatt.com/iomm/latest/manager/base/es6/bundle.js as=script id=IOMmBundle><link rel=preload href=//data-08d52e2a42.handelsblatt.com/iomm/latest/bootstrap/loader.js as=script>
1<script src=//data-08d52e2a42.handelsblatt.com/iomm/latest/bootstrap/loader.js></script>
1<script>var mobileWidth = window.matchMedia('(max-width: 728px)'); 2 var tabletWidth = window.matchMedia('(min-width: 728px) and (max-width: 1000px)'); 3 var desktopWidth = window.matchMedia('(min-width: 1000px)'); 4 5 var handelsblattPulseAdsWidth = ''; 6 var widthMatched = false; 7 8 function widthWatcher(condition, device) { 9 function widthChange(watcher) { 10 if (watcher.matches) { 11 handelsblattPulseAdsWidth = device; 12 widthMatched = true; 13 } 14 } 15 condition.addListener(widthChange); 16 widthChange(condition); 17 } 18 19 widthWatcher(mobileWidth, 'mobile'); 20 widthWatcher(tabletWidth, 'tablet'); 21 22 if (!widthMatched) handelsblattPulseAdsWidth = 'desktop'; 23 window.handelsblattPulseAdsWidth = handelsblattPulseAdsWidth; 24 25 window.pulseWindowUserPromise.then((user) => { 26 var isNoAdsOrTrackingUser = user && user.rights && user.rights.noAdsOrTracking === true; 27 28 if (isNoAdsOrTrackingUser) { 29 console.log('Skipping iqdcontroller.iqdigital load'); 30 return; 31 } 32 33 function IQSLoader(url) { 34 var script = document.createElement('script'); 35 script.type = 'text/javascript'; 36 script.src = url; 37 document.getElementsByTagName('head')[0].appendChild(script); 38 } 39 var iqd_mode = (function() { 40 var dm = window.location.href.toLowerCase(); 41 return dm.indexOf('iqdeployment=') > 1 42 ? dm.split('iqdeployment=')[1].split('&')[0] 43 : 'live'; 44 })(); 45 46 if (window.handelsblattPulseAdsWidth === 'mobile') { 47 const host = location.host === 'www.wiwo.de' ? 'cdn_wwo_mob_fs_dt/' : 'cdn_hb_fs_mob/'; 48 const url = 49 'https://s3.eu-central-1.amazonaws.com/prod.iqdcontroller.iqdigital/' + 50 host + 51 iqd_mode + 52 '/iqadcontroller.js.gz'; 53 54 if (host) IQSLoader(url); 55 } else { 56 const host = location.host === 'www.wiwo.de' ? 'cdn_wwo_fs_dt/' : 'cdn_hbo_fs_dt/'; 57 const url = 58 'https://s3.eu-central-1.amazonaws.com/prod.iqdcontroller.iqdigital/' + 59 host + 60 iqd_mode + 61 '/iqadcontroller.js.gz'; 62 if (host) IQSLoader(url); 63 } 64 });</script>
64<script>window.AdController={i:null,q:[],f:!1,s:!1,n:!1,r:null,c:[],setPageInfo:function(n){window.AdController.i=n},stage:function(){window.AdController.s=!0},initialize:function(){window.AdController.n=!0},render:function(n,o){window.AdController.q.push([n,o])},finalize:function(){window.AdController.f=!0},ready:function(n){window.AdController.r=n},startLoadCycle:function(){window.AdController.c.push(["startLoadCycle"])},reload:function(n,o){window.AdController.c.push(["reload",n,o])},reinitialize:function(n){window.AdController.c.push(["reinitialize",n])}}</script>
64<script>var handleWidth=function(){switch(window.handelsblattPulseAdsWidth){case"tablet":return"stockworld_tablet";case"mobile":return"stockworld_mobile";case"desktop":return"stockworld"}};cmsObject={},cmsObject={$handle:handleWidth(),level2:"finanzen",level3:"boersentool",level4:"",keywords:"finanzen,boersentool",tma:"finanzen,boersentool",platform:handelsblattPulseAdsWidth}</script>
64<script>if(AdController._initialized)!function t(l){try{AdController.getRenderController().isReady()&&AdController.reinitialize(cmsObject)}catch(e){l<50&&(l++,setTimeout(function(){t(l)},100))}}(0);else{AdController.setPageInfo(cmsObject);try{AdController.stage()}catch(e){}AdController.initialize()}AdController._handle=cmsObject.$handle</script>
64<script>"use strict";function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}!function(){var t=function(){for(var t,n,r=[],a=window,e=a;e;){try{if(e.frames.__tcfapiLocator){t=e;break}}catch(t){}if(e===a.top)break;e=e.parent}t||(function t(){var e=a.document,o=!!a.frames.__tcfapiLocator;if(!o)if(e.body){var n=e.createElement("iframe");n.style.cssText="display:none",n.name="__tcfapiLocator",e.body.appendChild(n)}else setTimeout(t,5);return!o}(),a.__tcfapi=function(){for(var t=arguments.length,e=new Array(t),o=0;o<t;o++)e[o]=arguments[o];if(!e.length)return r;"setGdprApplies"===e[0]?3<e.length&&2===parseInt(e[1],10)&&"boolean"==typeof e[3]&&(n=e[3],"function"==typeof e[2]&&e[2]("set",!0)):"ping"===e[0]?"function"==typeof e[2]&&e[2]({gdprApplies:n,cmpLoaded:!1,cmpStatus:"stub"}):r.push(e)},a.addEventListener("message",function(n){var r="string"==typeof n.data,t={};if(r)try{t=JSON.parse(n.data)}catch(n){}else t=n.data;var a="object"===_typeof(t)&&null!==t?t.__tcfapiCall:null;a&&window.__tcfapi(a.command,a.version,function(t,e){var o={__tcfapiReturn:{returnValue:t,success:e,callId:a.callId}};n&&n.source&&n.source.postMessage&&n.source.postMessage(r?JSON.stringify(o):o,"*")},a.parameter)},!1))};"undefined"!=typeof module?module.exports=t:t()}()</script>
64<script>const source = 65 location.host === 'www.wiwo.de' 66 ? 'https://cmp-sp.wiwo.de' 67 : 'https://cmp-sp.handelsblatt.com'; 68 window._sp_ = { 69 config: { 70 accountId: 692, 71 baseEndpoint: source, 72 gdpr: {} 73 } 74 };</script>
74<script>!function(){var i="[Pulse Sourcepoint Bridge]";if("true"===new URLSearchParams(window.location.search).get("_sp_pass_consent")){var s={isReady:!1,consent:null,isConsentDelivered:!1};window.pulseLoadConsentForSourcepoint=function(e){return c(e,"window.pulseLoadConsentForSourcepoint")},window.addEventListener("message",function(e){var n,o,t=a(e.data);if(t&&"object"==typeof t)return"sp.readyForConsent"===t.name?(s.isReady=!0,r("info","Sourcepoint requested consent from the app bridge."),n={name:"sp.readyForConsent",href:window.location.href,origin:window.location.origin},o=!1,window.webkit&&window.webkit.messageHandlers&&window.webkit.messageHandlers.pulseSourcepointConsentBridge&&"function"==typeof window.webkit.messageHandlers.pulseSourcepointConsentBridge.postMessage&&(window.webkit.messageHandlers.pulseSourcepointConsentBridge.postMessage(n),o=!0),window.ReactNativeWebView&&"function"==typeof window.ReactNativeWebView.postMessage&&(window.ReactNativeWebView.postMessage(JSON.stringify(n)),o=!0),o?r("info","Forwarded Sourcepoint readiness to the native app bridge.",n):r("warn","Sourcepoint is waiting for consent, but no native app bridge is available."),void(s.consent&&c(s.consent,"stored-consent-after-ready"))):void("sp.loadConsent"===t.name&&t.consent&&e.origin!==window.location.origin&&c(t.consent,"cross-origin-message"))}),r("info","Enabled Sourcepoint app consent bridge because `_sp_pass_consent=true` is present.")}function r(e,n,o){var t=console[e]||console.log;void 0!==o?t.call(console,i,n,o):t.call(console,i,n)}function a(e){if(!e)return null;if("string"==typeof e)try{return JSON.parse(e)}catch(e){return r("error","Failed to parse consent payload JSON.",e),null}return"object"==typeof e?e:(r("warn","Received unsupported consent payload type.",{type:typeof e}),null)}function c(e,n){var o=a(e);return o?(s.consent=o,s.isReady?(s.isConsentDelivered?r("info","Ignoring duplicate consent payload.",{source:n}):(s.isConsentDelivered=!0,window.postMessage({name:"sp.loadConsent",consent:s.consent},window.location.origin),r("info","Relayed consent payload to Sourcepoint.",{source:n})),!0):(r("info","Stored consent payload until Sourcepoint signals readiness.",{source:n}),!1)):(r("warn","Ignoring empty consent payload.",{source:n}),!1)}}()</script>
74<script>var __values = 75 (this && this.__values) || 76 function(o) { 77 var s = typeof Symbol === 'function' && Symbol.iterator, 78 m = s && o[s], 79 i = 0; 80 if (m) return m.call(o); 81 if (o && typeof o.length === 'number') 82 return { 83 next: function() { 84 if (o && i >= o.length) o = void 0; 85 return { 86 value: o && o[i++], 87 done: !o 88 }; 89 } 90 }; 91 throw new TypeError(s ? 'Object is not iterable.' : 'Symbol.iterator is not defined.'); 92 }; 93 var __read = 94 (this && this.__read) || 95 function(o, n) { 96 var m = typeof Symbol === 'function' && o[Symbol.iterator]; 97 if (!m) return o; 98 var i = m.call(o), 99 r, 100 ar = [], 101 e; 102 try { 103 while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); 104 } catch (error) { 105 e = { 106 error: error 107 }; 108 } finally { 109 try { 110 if (r && !r.done && (m = i['return'])) m.call(i); 111 } finally { 112 if (e) throw e.error; 113 } 114 } 115 return ar; 116 }; 117 var __spread = 118 (this && this.__spread) || 119 function() { 120 for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i])); 121 return ar; 122 }; 123 var Cmp = (function() { 124 function Cmp(settings) { 125 if (settings === void 0) { 126 settings = {}; 127 } 128 var _a; 129 this.runEventFns = false; 130 this.loadedTriggered = false; 131 this.eventFunctions = []; 132 this.consents = []; 133 this.enabled = false; 134 this.loadedScripts = []; 135 this.settings = { 136 urlVendorMap: [ 137 { 138 name: 'TEST', 139 url: 'ungoro.de', 140 vendor: '5e820130b8e05c54a85c52f5' 141 }, 142 { 143 name: 'Youtube', 144 vendor: '5e7ac3fae30e7d1bc1ebf5e8', 145 url: 'youtube.com' 146 }, 147 { 148 name: 'Stepstone', 149 vendor: '5e7415079a0b5040d575707a', 150 url: 'stepstone.de' 151 }, 152 { 153 name: 'Burda', 154 vendor: '5f477ec82f6bf56b5f5a7898', 155 url: 'trck.bdi-services.de' 156 }, 157 { 158 name: 'Jurodo', 159 vendor: '5f477f208f4e072a82526849', 160 url: 'googletagmanager.com/gtag/js?id=UA-140773171-1' 161 }, 162 { 163 name: 'Google Tagmanager', 164 vendor: '5e952f6107d9d20c88e7c975', 165 url: 'googletagmanager.com/gtag/' 166 }, 167 { 168 name: 'Amazon', 169 vendor: '5e7e1298b8e05c5a7d171cee', 170 url: 'amazon.com' 171 }, 172 { 173 name: 'LinkedIn', 174 vendor: '5e777e669cb08971eb078d71', 175 url: 'linkedin.com' 176 }, 177 { 178 name: 'Microsoft Bing Ads', 179 vendor: '5e7786abf443bb795772efee', 180 url: 'ads.microsoft.com' 181 }, 182 { 183 name: 'Microsoft Corporation', 184 vendor: '5e7e1298b8e05c485246cd06', 185 url: 'microsoft.com' 186 }, 187 { 188 name: 'Brightcove', 189 vendor: '5ec796b4320b5a4efd764e0f', 190 url: 'brightcove.com' 191 }, 192 { 193 name: 'Chartbeat', 194 vendor: '5ea172e36ede87504f7b4590', 195 url: 'chartbeat.com' 196 }, 197 { 198 name: 'Parsely', 199 vendor: '5efb47c3a86ed40d775a6693', 200 url: 'parsely.com' 201 }, 202 { 203 name: 'Podigee', 204 vendor: '5e717ad49a0b5040d5750815', 205 url: 'podigee.com' 206 }, 207 { 208 name: 'Xing', 209 vendor: '5f10069a926b656bea2fd6a9', 210 url: 'xing.com' 211 }, 212 { 213 name: 'Instagram', 214 vendor: '5e7e5243b8e05c1c467daa57', 215 url: 'instagram.com' 216 }, 217 { 218 name: 'Cloudflare', 219 vendor: '5e820130b8e05c54a85c52f5', 220 url: 'cloudflare.com' 221 }, 222 { 223 name: 'facebook conversion tracking', 224 vendor: '5ee91b9593fc094b59242e27', 225 url: 'connect.facebook.net' 226 }, 227 { 228 name: 'facebook inc', 229 vendor: '5e716fc09a0b5040d575080f', 230 url: 'facebook.com' 231 }, 232 { 233 name: 'onesignal', 234 vendor: '5f0f4ac989bd4b6e3a537e68', 235 url: 'onesignal.com' 236 }, 237 { 238 name: 'twitter', 239 vendor: '5e71760b69966540e4554f01', 240 url: 'twitter.com' 241 } 242 ] 243 }; 244 this.enabled = typeof window.__tcfapi === 'function'; 245 this.settings.debug = settings.debug || false; 246 this.settings.gtm = { 247 push: !!(settings.gtm && settings.gtm.push), 248 variable: 249 ((_a = settings.gtm) === null || _a === void 0 ? void 0 : _a.variable) || 'dataLayer' 250 }; 251 this.settings.reload = settings.reload || true; 252 this.settings.eventPrefix = settings.eventPrefix || '_hmgCmp'; 253 this.settings.urlVendorMap = settings.urlVendorMap || this.settings.urlVendorMap; 254 this.registerEvents(); 255 } 256 Cmp.prototype.registerEvents = function() { 257 var _this = this; 258 if (this.enabled) { 259 __tcfapi('addEventListener', 2, function(tcData) { 260 _this.debug('__tcfapi Event', tcData); 261 if (tcData.eventStatus === 'useractioncomplete') { 262 _this.onLayerClosed(tcData); 263 } 264 if (tcData.eventStatus === 'tcloaded') {
265 _this.onLoaded(tcData); 266 } 267 }); 268 } 269 }; 270 Cmp.prototype.onLayerClosed = function(event) { 271 this.triggerEvent('LayerClosed'); 272 if (this.settings.reload) { 273 274 // 14768, delay reload a little 275 setTimeout(() => { 276 location.reload(); 277 }, 500); 278 } 279 }; 280 Cmp.prototype.onLoaded = function(event) { 281 var _this = this; 282 __tcfapi('getCustomVendorConsents', 2, function(data) { 283 _this.debug('__tcfapigetCustomVendorConsents', data); 284 if (data) { 285 _this.setConsents(data.grants || {}); 286 _this.loaded(); 287 } 288 }); 289 }; 290 Cmp.prototype.loaded = function(forceLoaded) { 291 if (forceLoaded === void 0) { 292 forceLoaded = false; 293 } 294 if (forceLoaded || !this.loadedTriggered) { 295 if (this.settings.gtm.push && window[this.settings.gtm.variable]) { 296 window[this.settings.gtm.variable].push({ 297 event: 'cmpLoaded' 298 }); 299 } 300 this.triggerEvent('Loaded'); 301 this.loadedTriggered = true; 302 this.loadScripts(); 303 this.loadIframes(); 304 this.runEventFunctions(); 305 } 306 }; 307 Cmp.prototype.loadScripts = function() { 308 var _this = this; 309 Array.from(document.querySelectorAll('script[type="javascript/blocked"]')).forEach( 310 function(script) { 311 var vendor = 312 script.getAttribute('data-vendor') || 313 _this.getVendorBySrc(script.getAttribute('src')); 314 if (vendor && _this.hasConsent(vendor)) { 315 var s_1 = document.createElement('script'); 316 s_1.onload = function() { 317 var src = s_1.getAttribute('src'); 318 if (_this.loadedScripts.indexOf(src) < 0) { 319 _this.loadedScripts.push(src); 320 } 321 _this.triggerEvent('ScriptLoaded', { 322 src: src, 323 element: s_1 324 }); 325 _this.runEventFunctions(); 326 }; 327 Array.prototype.slice.call(script.attributes).forEach(function(item) { 328 s_1.setAttribute(item.name, item.value); 329 }); 330 s_1.setAttribute('type', 'application/javascript'); 331 script.parentNode.insertBefore(s_1, script); 332 script.remove(); 333 } 334 } 335 ); 336 }; 337 Cmp.prototype.loadIframes = function() { 338 var _this = this; 339 Array.from(document.querySelectorAll('iframe[data-src]')).forEach(function(element) { 340 var vendor = 341 element.getAttribute('data-vendor') || 342 _this.getVendorBySrc(element.getAttribute('data-src')); 343 if (vendor && _this.hasConsent(vendor)) { 344 element.onload = function() { 345 _this.triggerEvent('IframeLoaded', { 346 src: element.getAttribute('src'), 347 element: element 348 }); 349 }; 350 element.setAttribute('src', element.getAttribute('data-src')); 351 element.removeAttribute('data-src'); 352 } 353 }); 354 }; 355 Cmp.prototype.getVendorBySrc = function(src) { 356 var e_1, _a; 357 try { 358 for ( 359 var _b = __values(this.settings.urlVendorMap), _c = _b.next(); 360 !_c.done; 361 _c = _b.next() 362 ) { 363 var item = _c.value; 364 if (item.url instanceof RegExp) { 365 } 366 var re = 367 item.url instanceof RegExp ? item.url : new RegExp('.*' + item.url + '(/|$|\\?)'); 368 if (re.test(src)) { 369 return item.vendor; 370 } 371 } 372 } catch (e_1_1) { 373 e_1 = { 374 error: e_1_1 375 }; 376 } finally { 377 try { 378 if (_c && !_c.done && (_a = _b.return)) _a.call(_b); 379 } finally { 380 if (e_1) throw e_1.error; 381 } 382 } 383 return null; 384 }; 385 Cmp.prototype.hasConsent = function(vendor) { 386 return this.consents.indexOf(vendor) >= 0; 387 }; 388 Cmp.prototype.setConsents = function(data) { 389 var grants = []; 390 for (var key in data) { 391 if (!data.hasOwnProperty(key)) { 392 continue; 393 } 394 var granted = !!data[key] && data[key].vendorGrant; 395 for (var purposeKey in data[key].purposeGrants) { 396 if (!data[key].purposeGrants.hasOwnProperty(purposeKey)) { 397 continue; 398 } 399 granted = granted && data[key].purposeGrants[purposeKey]; 400 } 401 if (granted) { 402 grants.push(key); 403 } 404 } 405 this.consents = grants; 406 if (this.settings.gtm.push && window[this.settings.gtm.variable]) { 407 window[this.settings.gtm.variable].push({ 408 consents: this.consents 409 }); 410 } 411 this.triggerEvent('SetConsents'); 412 }; 413 Cmp.prototype.triggerEvent = function(event, params) { 414 if (params === void 0) { 415 params = {}; 416 } 417 this.debug('Trigger event: ', event, params); 418 var e; 419 if (typeof Event === 'function') { 420 e = new CustomEvent('' + this.settings.eventPrefix + event, { 421 detail: params 422 }); 423 } else { 424 e = document.createEvent('CustomEvent'); 425 e.initCustomEvent('' + this.settings.eventPrefix + event, true, true, params); 426 } 427 window.dispatchEvent(e); 428 }; 429 Cmp.prototype.debug = function() { 430 var args = []; 431 for (var _i = 0; _i < arguments.length; _i++) { 432 args[_i] = arguments[_i]; 433 } 434 if (this.settings.debug) { 435 console.log('CMP DEBUG'); 436 console.log.apply(console, __spread(args)); 437 } 438 }; 439 Cmp.prototype.addEventFn = function(event, fn, params) { 440 if (params === void 0) { 441 params = {}; 442 } 443 this.eventFunctions.push({ 444 event: event, 445 fn: fn, 446 params: params 447 }); 448 this.runEventFunctions(); 449 }; 450 Cmp.prototype.runEventFunctions = function() { 451 var e_2, _a; 452 if (this.runEventFns === true) { 453 return; 454 } 455 this.runEventFns = true; 456 var fns = []; 457 var _loop_1 = function(item) { 458 if ( 459 (item.event === 'scriptLoaded' && 460 item.params && 461 typeof item.params === 'object' && 462 this_1.loadedScripts.indexOf(item.params.src) >= 0) || 463 (item.event === 'loaded' && this_1.loaded) || 464 (item.event === 'hasConsent' && 465 item.params && 466 typeof item.params === 'object' && 467 this_1.hasConsent(item.params.vendor)) 468 ) { 469 this_1.debug('RunEventFunction', item.event); 470 try { 471 window.setTimeout(function() { 472 item.fn(); 473 }, 5); 474 } catch (e) { 475 console.log('CMP ERROR'); 476 console.error(e); 477 } 478 return 'continue'; 479 } 480 fns.push(item); 481 }; 482 var this_1 = this; 483 try { 484 for (var _b = __values(this.eventFunctions), _c = _b.next(); !_c.done; _c = _b.next()) { 485 var item = _c.value; 486 _loop_1(item); 487 } 488 } catch (e_2_1) { 489 e_2 = { 490 error: e_2_1 491 }; 492 } finally { 493 try { 494 if (_c && !_c.done && (_a = _b.return)) _a.call(_b); 495 } finally { 496 if (e_2) throw e_2.error; 497 } 498 } 499 this.eventFunctions = fns; 500 this.runEventFns = false;
501 }; 502 return Cmp; 503 })(); //# sourceMappingURL=cmp.js.map</script>
503<script>// Delay the Sourcepoint wrapper until user targeting is prepared. The app bridge above 504 // is already listening, so `sp.readyForConsent` can be handled immediately after load. 505 setTimeout(() => { 506 window.pulseWindowUserPromise 507 .then((user) => { 508 var isNoAdsOrTrackingUser = user && user.rights && user.rights.noAdsOrTracking === true; 509 window._sp_.config.targetingParams = { 510 purabo: !!isNoAdsOrTrackingUser 511 }; 512 window.dataLayer = window.dataLayer || []; 513 window._hmgCmp = new Cmp({ gtm: { push: true } }); 514 window._hmgCmp.addEventFn( 515 'hasConsent', 516 function() { 517 console.info('[Pulse CMP]', 'Consent callback received.'); 518 if (isNoAdsOrTrackingUser) { 519 console.info('[Pulse CMP]', 'Skipping GTM load for no-ads-or-tracking user.'); 520 return; 521 } 522 (function(w, d, s, l, i) { 523 w[l] = w[l] || []; 524 w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' }); 525 var f = d.getElementsByTagName(s)[0], 526 j = d.createElement(s), 527 dl = l != 'dataLayer' ? '&l=' + l : ''; 528 j.async = true; 529 j.src = 530 'https://www.googletagmanager.com/gtm.js?id=' + 531 i + 532 dl + 533 '>m_auth=Eib0bR9BoWd8npBOwxl38w>m_preview=env-1>m_cookies_win=x'; 534 f.parentNode.insertBefore(j, f); 535 })( 536 window, 537 document, 538 'script', 539 'dataLayer', 540 'GTM-W4HPF5L' 541 ); 542 }, 543 { vendor: '5e952f6107d9d20c88e7c975' } 544 ); 545 }) 546 .finally(() => { 547 const cmpScriptElem = document.createElement('script'); 548 cmpScriptElem.type = 'text/javascript'; 549 const cmpScriptBaseUrl = 550 location.host === 'www.wiwo.de' 551 ? 'https://cmp-sp.wiwo.de' 552 : 'https://cmp-sp.handelsblatt.com'; 553 const cmpScriptUrl = '/unified/wrapperMessagingWithoutDetection.js'; 554 cmpScriptElem.src = cmpScriptBaseUrl + cmpScriptUrl; 555 document.head.appendChild(cmpScriptElem); 556 }); 557 }, 100);</script>
557<script src="https://prodo-api.ariva-services.de/clientjs/ProdoClient.js?t=RANDOMCACHEBUSTER"></script>
557<script src="https://script.ioam.de/iam.js?m=1"></script>
557<link href=/boerse/css/alerts.ab243b7b.css rel=prefetch><link href=/boerse/css/alerts~currencies~funds-item~funds-list~listPortfolio~portfolio~stock-chunk~stock-chunk-list~technicalSignals.e58cf84c.css rel=prefetch><link href=/boerse/css/currencies.4fb4bbb1.css rel=prefetch><link href=/boerse/css/currencies~home~portfolio~stock-chunk~stock-chunk-list~technicalSignals.c60cff14.css rel=prefetch><link href=/boerse/css/editorial-tools.70bf0ab6.css rel=prefetch><link href=/boerse/css/editorial-tools~funds-item~funds-list.9682df84.css rel=prefetch><link href=/boerse/css/editorial-tools~portfolio.f3bda815.css rel=prefetch><link href=/boerse/css/funds-item.0fddeaa0.css rel=prefetch><link href=/boerse/css/funds-list.6ead2ff8.css rel=prefetch><link href=/boerse/css/home.a589f589.css rel=prefetch><link href=/boerse/css/listPortfolio.c7ceb1f9.css rel=prefetch><link href=/boerse/css/portfolio.f055bd37.css rel=prefetch><link href=/boerse/css/stock-chunk-list.7be35677.css rel=prefetch><link href=/boerse/css/stock-chunk.7feb7563.css rel=prefetch><link href=/boerse/css/technicalSignals.f0f9dd78.css rel=prefetch><link href=/boerse/js/alerts.c85f417c.js rel=prefetch><link href=/boerse/js/alerts~currencies~funds-item~funds-list~listPortfolio~portfolio~stock-chunk~stock-chunk-list~technicalSignals.c2189544.js rel=prefetch><link href=/boerse/js/currencies.f88b72c2.js rel=prefetch><link href=/boerse/js/currencies~funds-item.a115f149.js rel=prefetch><link href=/boerse/js/currencies~home~portfolio~stock-chunk~stock-chunk-list~technicalSignals.75ecf7ed.js rel=prefetch><link href=/boerse/js/editorial-tools.b1d1b22a.js rel=prefetch><link href=/boerse/js/editorial-tools~funds-item~funds-list.371f4d9b.js rel=prefetch><link href=/boerse/js/editorial-tools~portfolio.a1243b4c.js rel=prefetch><link href=/boerse/js/funds-item.e0fda738.js rel=prefetch><link href=/boerse/js/funds-list.0c73347e.js rel=prefetch><link href=/boerse/js/home.d1891c95.js rel=prefetch><link href=/boerse/js/listPortfolio.53563fdf.js rel=prefetch><link href=/boerse/js/portfolio.98d8d9c0.js rel=prefetch><link href=/boerse/js/stock-chunk-isin.fb0ef682.js rel=prefetch><link href=/boerse/js/stock-chunk-list.9d1ca44e.js rel=prefetch><link href=/boerse/js/stock-chunk.8da363c9.js rel=prefetch><link href=/boerse/js/technicalSignals.7847c7bc.js rel=prefetch><link href=/boerse/css/app.6d72d91f.css rel=preload as=style><link href=/boerse/css/chunk-vendors.e08fa0b5.css rel=preload as=style><link href=/boerse/js/app.d15f4db9.js rel=preload as=script><link href=/boerse/js/chunk-vendors.456d55e5.js rel=preload as=script><link href=/boerse/css/chunk-vendors.e08fa0b5.css rel=stylesheet><link href=/boerse/css/app.6d72d91f.css rel=stylesheet></head><body style=overflow-y:hidden><noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-W4HPF5L>m_auth=Eib0bR9BoWd8npBOwxl38w>m_preview=env-1>m_cookies_win=x" height=0 width=0 style=display:none;visibility:hidden></iframe></noscript><div id=app></div>
557<script>IQDComplete={init:function(){return!0}}</script>
557<script>window.lightningjs||function(s){function e(e,t){var n,v,f,r,i,a;return t&&(t+=(/\?/.test(t)?"&":"?")+"lv=1"),s[e]||(n=window,v=document,f=e,r=v.location.protocol,i="load",a=0,function(){function e(){l.P(i),l.w=1,s[f]("_load")}s[f]=function(){function o(){return o.id=d,s[f].apply(o,arguments)}var e,d=++a;return e=this&&this!=n&&this.id||0,(l.s=l.s||[]).push([d,e,arguments]),o.then=function(e,t,n){var r=l.fh[d]=l.fh[d]||[],i=l.eh[d]=l.eh[d]||[],a=l.ph[d]=l.ph[d]||[];return e&&r.push(e),t&&i.push(t),n&&a.push(n),o},o};var l=s[f]._={};l.fh={},l.eh={},l.ph={},l.l=t?t.replace(/^\/\//,("https:"==r?r:"http:")+"//"):t,l.p={0:+new Date},l.P=function(e){l.p[e]=new Date-l.p[0]},l.w&&e(),n.addEventListener?n.addEventListener(i,e,!1):n.attachEvent("on"+i,e);var p=function(){function t(){return["<head></head><",e,' onload="var d=',h,";d.getElementsByTagName('head')[0].",i,"(d.",a,"('script')).",o,"='",l.l,"'\"></",e,">"].join("")}var e="body",n=v[e];if(!n)return setTimeout(p,100);l.P(1);var r,i="appendChild",a="createElement",o="src",d=v[a]("div"),s=d[i](v[a]("div")),c=v[a]("iframe"),h="document";d.style.display="none",n.insertBefore(d,n.firstChild).id=m+"-"+f,c.frameBorder="0",c.id=m+"-frame-"+f,/MSIE[ ]+6/.test(navigator.userAgent)&&(c[o]="javascript:false"),c.allowTransparency="true",s[i](c);try{c.contentWindow[h].open()}catch(e){l.domain=v.domain,r="javascript:var d="+h+".open();d.domain='"+v.domain+"';",c[o]=r+"void(0);"}try{var u=c.contentWindow[h];u.write(t()),u.close()}catch(e){c[o]=r+'d.write("'+t().replace(/"/g,String.fromCharCode(92)+'"')+'");d.close();'}l.P(2)};l.l&&setTimeout(p,0)}()),s[e].lv="1",s[e]}var m="lightningjs",t=window[m]=e(m);t.require=e,t.modules=s}({})</script>
557<script src=/boerse/js/chunk-vendors.456d55e5.js></script>
557<script src=/boerse/js/app.d15f4db9.js></script>
557</body>
557<script src=https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2></script>
557<script>cssVars({})</script>
557</html>
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.