PageSourceSearch

https://www.javaadvent.com/sponsors

html javaadvent.com collected 2026-10-03 22:00:58 UTC 68,655 bytes, 551 lines download raw bytes

1<!DOCTYPE html>
2
3<html class="no-js" lang="en-US">
4
5	<head profile="http://gmpg.org/xfn/11">
6		
7		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
8		<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" >
9		 
10		<meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' />
11<script>document.documentElement.className = document.documentElement.className.replace("no-js","js");</script>
11
12<!-- Jetpack Site Verification Tags -->
13<meta name="google-site-verification" content="nxwCqd78tXrmiHRFzHBUmse1FNbMpaFxhYTeBTS7pus">
14<meta name="msvalidate.01" content="C5E83869E9A630D3937463911DD0F38C">
15
16	<!-- This site is optimized with the Yoast SEO plugin v28.6 - https://yoast.com/product/yoast-seo-wordpress/ -->
17	<title>Sponsors - JVM Advent</title>
18	<meta name="description" content="Every year we get outstanding support from our sponsors. So check them out and tell them, we send you." />
19	<link rel="canonical" href="https://www.javaadvent.com/sponsors" />
20	<meta property="og:locale" content="en_US" />
21	<meta property="og:type" content="article" />
22	<meta property="og:title" content="Sponsors - JVM Advent" />
23	<meta property="og:description" content="Every year we get outstanding support from our sponsors. So check them out and tell them, we send you." />
24	<meta property="og:url" content="https://www.javaadvent.com/sponsors" />
25	<meta property="og:site_name" content="JVM Advent" />
26	<meta property="article:publisher" content="https://www.facebook.com/Java-Advent-Calendar-229536173843473/" />
27	<meta property="article:modified_time" content="2023-11-30T19:07:06+00:00" />
28	<meta property="og:image" content="https://www.javaadvent.com/content/uploads/2020/11/SteinhauerSoftware-Logo-Only-267x300.png" />
29	<meta name="twitter:card" content="summary_large_image" />
30	<meta name="twitter:site" content="@javaadvent" />
31	<meta name="twitter:label1" content="Est. reading time" />
32	<meta name="twitter:data1" content="1 minute" />
33	<meta name="twitter:label2" content="Written by" />
34	<meta name="twitter:data2" content="Holger Steinhauer" />
35	
35<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.javaadvent.com\/sponsors","url":"https:\/\/www.javaadvent.com\/sponsors","name":"Sponsors - JVM Advent","isPartOf":{"@id":"https:\/\/www.javaadvent.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javaadvent.com\/sponsors#primaryimage"},"image":{"@id":"https:\/\/www.javaadvent.com\/sponsors#primaryimage"},"thumbnailUrl":"https:\/\/www.javaadvent.com\/content\/uploads\/2020\/11\/SteinhauerSoftware-Logo-Only-267x300.png","datePublished":"2022-10-03T21:30:58+00:00","dateModified":"2023-11-30T19:07:06+00:00","description":"Every year we get outstanding support from our sponsors. So check them out and tell them, we send you.","breadcrumb":{"@id":"https:\/\/www.javaadvent.com\/sponsors#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javaadvent.com\/sponsors"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javaadvent.com\/sponsors#primaryimage","url":"https:\/\/i0.wp.com\/www.javaadvent.com\/content\/uploads\/2020\/11\/SteinhauerSoftware-Logo-Only.png?fit=981%2C1101&ssl=1","contentUrl":"https:\/\/i0.wp.com\/www.javaadvent.com\/content\/uploads\/2020\/11\/SteinhauerSoftware-Logo-Only.png?fit=981%2C1101&ssl=1","width":981,"height":1101,"caption":"steinhauer.software logo"},{"@type":"BreadcrumbList","@id":"https:\/\/www.javaadvent.com\/sponsors#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javaadvent.com\/"},{"@type":"ListItem","position":2,"name":"Sponsors"}]},{"@type":"WebSite","@id":"https:\/\/www.javaadvent.com\/#website","url":"https:\/\/www.javaadvent.com\/","name":"JVM Advent","description":"The JVM Programming Advent Calendar","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.javaadvent.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}</script>
35
36	<!-- / Yoast SEO plugin. -->
37
38
39<link rel='dns-prefetch' href='//secure.gravatar.com' />
40<link rel='dns-prefetch' href='//v0.wordpress.com' />
41<link rel='dns-prefetch' href='//jetpack.wordpress.com' />
42<link rel='dns-prefetch' href='//s0.wp.com' />
43<link rel='dns-prefetch' href='//public-api.wordpress.com' />
44<link rel='dns-prefetch' href='//widgets.wp.com' />
45<link rel='dns-prefetch' href='//0.gravatar.com' />
46<link rel='dns-prefetch' href='//1.gravatar.com' />
47<link rel='dns-prefetch' href='//2.gravatar.com' />
48<link rel='preconnect' href='//i0.wp.com' />
49<link rel='preconnect' href='//c0.wp.com' />
50<link rel="alternate" type="application/rss+xml" title="JVM Advent &raquo; Feed" href="http://feeds.feedburner.com/JavaAdventCalendar" />
51<link rel="alternate" type="application/rss+xml" title="JVM Advent &raquo; Comments Feed" href="https://www.javaadvent.com/comments/feed" />
52<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.javaadvent.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.javaadvent.com%2Fsponsors" />
53<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.javaadvent.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.javaadvent.com%2Fsponsors&#038;format=xml" />
54<style id="wp-img-auto-sizes-contain-inline-css">
55img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
56/*# sourceURL=wp-img-auto-sizes-contain-inline-css */
57</style>
58<style id="wp-emoji-styles-inline-css">
59
60	img.wp-smiley, img.emoji {
61		display: inline !important;
62		border: none !important;
63		box-shadow: none !important;
64		height: 1em !important;
65		width: 1em !important;
66		margin: 0 0.07em !important;
67		vertical-align: -0.1em !important;
68		background: none !important;
69		padding: 0 !important;
70	}
71/*# sourceURL=wp-emoji-styles-inline-css */
72</style>
73<style id="wp-block-library-inline-css">
74:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;
74--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-break:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style^=border-color],[style*=";border-color"],[style*="; border-color"]){border-style:solid}html :where([style^=border-top-color],[style*=";border-top-color"],[style*="; border-top-color"]){border-top-style:solid}html :where([style^=border-right-color],[style*=";border-right-color"],[style*="; border-right-color"]){border-right-style:solid}html :where([style^=border-bottom-color],[style*=";border-bottom-color"],[style*="; border-bottom-color"]){border-bottom-style:solid}html :where([style^=border-left-color],[style*=";border-left-color"],[style*="; border-left-color"]){border-left-style:solid}html :where([style^=border-width],[style*=";border-width"],[style*="; border-width"]){border-style:solid}html :where([style^=border-top-width],[style*=";border-top-width"],[style*="; border-top-width"]){border-top-style:solid}html :where([style^=border-right-width],[style*=";border-right-width"],[style*="; border-right-width"]){border-right-style:solid}html :where([style^=border-bottom-width],[style*=";border-bottom-width"],[style*="; border-bottom-width"]){border-bottom-style:solid}html :where([style^=border-left-width],[style*=";border-left-width"],[style*="; border-left-width"]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}
75
76/*# sourceURL=/wp-includes/css/dist/block-library/common.min.css */
77</style>
78<style id="classic-theme-styles-inline-css">
79/*! This file is auto-generated */
80.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}
81/*# sourceURL=/wp-includes/css/classic-themes.min.css */
82</style>
83
84<style id="global-styles-inline-css">
85:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #1d1d1d;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #fff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--accent: #3bc492;--wp--preset--color--dark-gray: #555;--wp--preset--color--light-gray: #757575;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,
850) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 14px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 21px;--wp--preset--font-size--x-large: 42px;--wp--preset--font-size--normal: 16px;--wp--preset--font-size--larger: 26px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-accent-color{color: var(--wp--preset--color--accent) !important;}.has-dark-gray-color{color: var(--wp--preset--color--dark-gray) !important;}.has-light-gray-color{color: var(--wp--preset--color--light-gray) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-accent-background-color{background-color: var(--wp--preset--color--accent) !important;}.has-dark-gray-background-color{background-color: var(--wp--preset--color--dark-gray) !important;}.has-light-gray-background-color{background-color: var(--wp--preset--color--light-gray) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-accent-border-color{border-color: var(--wp--preset--color--accent) !important;}.has-dark-gray-border-color{border-color: var(--wp--preset--color--dark-gray) !important;}.has-light-gray-border-color{border-color: var(--wp--preset--color--light-gray) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
85.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.has-normal-font-size{font-size: var(--wp--preset--font-size--normal) !important;}.has-larger-font-size{font-size: var(--wp--preset--font-size--larger) !important;}
86/*# sourceURL=global-styles-inline-css */
87</style>
88
89<link rel='stylesheet' id='simple-banner-style-css' href='https://www.javaadvent.com/content/plugins/simple-banner/simple-banner.css?ver=3.3.2' media='all' />
90<link rel='stylesheet' id='yawab-author-box-css' href='https://www.javaadvent.com/content/plugins/yawab/style.css?ver=20181228' media='all' />
91<style id="jetpack-stats-inline-css">
92img#wpstats{display:none}
93/*# sourceURL=jetpack-stats-inline-css */
94</style>
95<style id="jetpack_likes-inline-css">
96#jp-post-flair{padding-top:.5em}#content div.sharedaddy,#main div.sharedaddy,div.sharedaddy{clear:both}div.sharedaddy h3.sd-title{display:inline-block;font-size:9pt;font-weight:700;line-height:1.2;margin:0 0 1em}div.sharedaddy h3.sd-title:before{border-top:1px solid #dcdcde;content:"";display:block;margin-bottom:1em;min-width:30px;width:100%}div.jetpack-likes-widget-wrapper{min-height:50px;position:relative;width:100%}div.jetpack-likes-widget-wrapper .sd-link-color{font-size:12px}div.jetpack-comment-likes-widget-wrapper{min-height:31px;position:relative;width:100%}div.jetpack-comment-likes-widget-wrapper iframe{margin-bottom:0}#likes-other-gravatars{background-color:#fff;border:1px solid #dcdcde;border-radius:4px;box-shadow:none;display:none;height:auto;max-height:240px;min-width:220px;overflow:auto;padding:9px 12px 10px;position:absolute;z-index:1000}#likes-other-gravatars *{line-height:normal}#likes-other-gravatars .likes-text{color:#101517;font-size:12px;font-weight:500;padding-bottom:8px}#likes-other-gravatars :is(li,ul){list-style-type:none;margin:0;padding:0;text-indent:0}#likes-other-gravatars li:before{content:""}#likes-other-gravatars ul.wpl-avatars{display:block;max-height:190px;overflow:auto}#likes-other-gravatars ul.wpl-avatars li{float:none;height:28px;margin:0 0 4px;width:196px}#likes-other-gravatars ul.wpl-avatars li a{align-items:center;border-bottom:none!important;display:flex;gap:8px;margin:0 2px 0 0;text-decoration:none}#likes-other-gravatars ul.wpl-avatars li a span{color:#2c3338;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#likes-other-gravatars ul.wpl-avatars li a img{background:none;border:none;border-radius:50%;box-sizing:border-box;margin:0!important;padding:1px!important;position:static}div.sd-box{border-top:1px solid #00000021}.jetpack-likes-widget-loaded iframe,.jetpack-likes-widget-loading .likes-widget-placeholder,.jetpack-likes-widget-unloaded .likes-widget-placeholder{display:block}.jetpack-likes-widget-loaded .likes-widget-placeholder,.jetpack-likes-widget-loading iframe,.jetpack-likes-widget-unloaded iframe{display:none}.comment-likes-widget,.entry-content .post-likes-widget,.post-likes-widget{border-width:0;margin:0}.comment-likes-widget-placeholder,.post-likes-widget-placeholder{border-width:0;margin:0;position:relative}.comment-likes-widget-placeholder{display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;height:18px;position:absolute}.comment-likes-widget-placeholder:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' d='M0 0h24v24H0z'/%3E%3Cpath fill='%232ea2cc' d='m12 2 2.582 6.953L22 9.257l-5.822 4.602L18.18 21 12 16.89 5.82 21l2.002-7.14L2 9.256l7.418-.304'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:16px 16px;color:#2ea2cc;content:"";display:inline-block;height:16px;padding-right:5px;position:relative;top:3px;width:16px}.post-likes-widget-placeholder .button{display:none}:is(.comment-likes-widget-placeholder,.post-likes-widget-placeholder) .loading{color:#999;font-size:12px}.comment-likes-widget-placeholder .loading{align-self:center;color:#4e4e4e;margin-top:4px;padding-left:5px}
96div.sharedaddy.sd-like-enabled .sd-like h3{display:none}div.sharedaddy.sd-like-enabled .sd-like .post-likes-widget{float:none;position:absolute;top:0;width:100%}.comment-likes-widget{width:100%}.cs-rating,.pd-rating{display:block!important}.sd-gplus .sd-title{display:none}@media print{.jetpack-likes-widget-wrapper{display:none}}
97/*# sourceURL=https://www.javaadvent.com/content/plugins/jetpack/_inc/build/likes/style.min.css */
98</style>
99<link rel='stylesheet' id='hitchcock_google_fonts-css' href='https://www.javaadvent.com/content/uploads/fonts/7ed5474470d445eb9888bc52a225318a/font.css?v=1783880475' media='all' />
100<link rel='stylesheet' id='hitchcock_fontawesome-css' href='https://www.javaadvent.com/content/themes/hitchcock-advent-theme/assets/fonts/font-awesome/css/font-awesome.css?ver=2.2.1' media='all' />
101<link rel='stylesheet' id='hitchcock_style-css' href='https://www.javaadvent.com/content/themes/hitchcock-advent-theme/style.css?ver=2.2.1' media='all' />
102<script id="jquery-core-js" src="https://c0.wp.com/c/7.1.2/wp-includes/js/jquery/jquery.min.js"></script>
vendor: 1 bytes, line 102
102
103<script id="jquery-migrate-js" src="https://c0.wp.com/c/7.1.2/wp-includes/js/jquery/jquery-migrate.min.js"></script>
vendor: 1 bytes, line 103
103
104<script id="simple-banner-script-js-before">
105const simpleBannerScriptParams = {"pro_version_enabled":"","debug_mode":false,"id":2342,"version":"3.3.2","banner_params":[{"hide_simple_banner":"yes","simple_banner_prepend_element":"body","simple_banner_position":"","header_margin":"","header_padding":"","wp_body_open_enabled":"","wp_body_open":true,"simple_banner_z_index":"","disabled_on_current_page":false,"disabled_pages_array":[],"is_current_page_a_post":false,"disabled_on_posts":"","simple_banner_disabled_page_paths":false,"simple_banner_font_size":"","simple_banner_color":"","simple_banner_text_color":"","simple_banner_link_color":"","simple_banner_close_color":"","simple_banner_text":"Win a one-year license for one of Jetbrains' amazing IDEs. Enter the raffle <a href=\"https:\/\/tinyurl.com\/javaadvent22-raffle\" target=\"_blank\">here<\/a>.","simple_banner_custom_css":"","simple_banner_scrolling_custom_css":"","simple_banner_text_custom_css":"","simple_banner_button_css":"","site_custom_css":"","keep_site_custom_css":"","site_custom_js":"","keep_site_custom_js":"","close_button_enabled":"on","close_button_expiration":"","close_button_cookie_set":false,"current_date":{"date":"2026-10-03 22:00:58.156301","timezone_type":3,"timezone":"UTC"},"start_date":{"date":"2026-10-03 22:00:58.156316","timezone_type":3,"timezone":"UTC"},"end_date":{"date":"2026-10-03 22:00:58.156324","timezone_type":3,"timezone":"UTC"},"simple_banner_start_after_date":"","simple_banner_remove_after_date":"","simple_banner_insert_inside_element":""}]}
106//# sourceURL=simple-banner-script-js-before
107</script>
vendor: 1 bytes, line 107
107
108<script id="simple-banner-script-js" src="https://www.javaadvent.com/content/plugins/simple-banner/simple-banner.js?ver=3.3.2"></script>
vendor: 1 bytes, line 108
108
109<script id="hitchcock_flexslider-js" src="https://www.javaadvent.com/content/themes/hitchcock-advent-theme/assets/js/flexslider.js?ver=2.2.1"></script>
vendor: 1 bytes, line 109
109
110<script id="hitchcock_doubletaptogo-js" src="https://www.javaadvent.com/content/themes/hitchcock-advent-theme/assets/js/doubletaptogo.js?ver=2.2.1"></script>
vendor: 1 bytes, line 110
110
111<script id="hitchcock_global-js" src="https://www.javaadvent.com/content/themes/hitchcock-advent-theme/assets/js/global.js?ver=2.2.1"></script>
111
112<link rel="https://api.w.org/" href="https://www.javaadvent.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.javaadvent.com/wp-json/wp/v2/pages/2342" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.javaadvent.com/xmlrpc.php?rsd" />
113<meta name="generator" content="WordPress 7.1.2" />
114<link rel='shortlink' href='https://www.javaadvent.com/?p=2342' />
115		<meta charset="utf-8">
116		<meta name="abstract" content="The JVM Programming Advent Calendar">
117		<meta name="author" content="gpanther">
118		<meta name="classification" content="@Primary, 2012, 2013, 2014, 2014 wrap up, 2015, 2015 wrap up, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 4financeit, achartengine, Actors, adopt openjdk, AI, Akka, Amazon Web Services, android, Apache OpenNLP, Apache Zeppelin, ArrayList, Artificial Intelligence, Atomic I/O, audio, Avatar, awesome graal, awk, bananas, bash, Bean Validation, benchmark, boot, Buffer, build, builders, bytecode, c/c++, Caching, CallableStatement, Camel, CI/CD, CircleCI, class file, Classloader, Cloud, CMS, code analysis, collections, command line, Composite, Continuous Query, CPU, cpu caches, debugging, Deep Learning, degraph, dependency, Dependency Injection, design pattern, developers, DevOps, distributed systems, Docker, Docker Image, DSL, executor, executorservice, Expect the unexpected, fork, free software, Friday 13, functional programming, functional relational programming, GAE, Gaming, garbage collection, GC, generics, Google App Engine, Google Cloud SQL, Google Cloud Storage, Graal Compiler, graalvm, gradle, groovy, guava, hardware counters, hg, High performance, hotspot, hybrid programming, I18N, iteration, java, java 8, java 9, Java Advent, java advent 2014, java agent, java closures, Java EE6, java self healing, javaagent, JavaEE, JavaScript, JAX-RS, JDBC, jdk, jdk 7, jdk 8, JDK 9, JEP, JInput, JIT, JMX, jni, join, jooq, JRebel, JSON API, JSR, JSR 353, jtreg, junit, JuPyteR, JuPyteR notebooks, JVM, JVM scripting, JVMCI, jypthon, jython, kawa, kotlin, lambda, LambdaJ, latency, lightweight, LinkedList, Linux, load testing, local, low latency, Machine Learning, macos, make, mathematics, maths, maven, mechanical sympathy, memory, Memory Barriers, memory mapped files, mercurial, messaging, meta, microservices, ML, mongodb, Murphy&#039;s Law, music, mutation, mutation testing, mutually recursive bounds, mx, MXBeans, MySQL, native-image, Natural Language Processing, netrexx, NetWeaver, NLP, Notebooks, Notes, Observable, Observer, open source, openjdk, oracle-labs-graalvm, other stuff, overseer, parallel, parameters, Performance, performance counters, performance testing, performance tuning, pipelines, PIT, PL/SQL, Programming, prototyping, python, Quercus, query, random rage, reactive, Realtime, reference, regular expression, repos, resource management, Resources, REST, rules, SAP, SAP HANA, Scala, script, self healing, serialization, service, Simon Maple, skynet, Spring, spring boot, SQL, statistics, stored procedure, streams, String, substring, T-SQL, test, testing, Things that go wrong, thread, threading, threadpool, transformations, truffle, type safety, Uncategorized, unit testing, unsafe, visualization, whatever can go wrong will go wrong, windows, Wordpress, work environment, ZeroTurnaround">
119		<meta name="copyright" content="Copyright JVM Advent - All rights Reserved.">
120		<meta name="designer" content="Anders Norén, Holger Steinhauer">
121		<meta name="distribution" content="Global">
122		<meta name="language" content="en-US">
123		<meta name="publisher" content="JVM Advent">
124		<meta name="rating" content="General">
125		<meta name="resource-type" content="Document">
126		<meta name="revisit-after" content="3">
127		<meta name="subject" content="@Primary, 2012, 2013, 2014, 2014 wrap up, 2015, 2015 wrap up, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 4financeit, achartengine, Actors, adopt openjdk, AI, Akka, Amazon Web Services, android, Apache OpenNLP, Apache Zeppelin, ArrayList, Artificial Intelligence, Atomic I/O, audio, Avatar, awesome graal, awk, bananas, bash, Bean Validation, benchmark, boot, Buffer, build, builders, bytecode, c/c++, Caching, CallableStatement, Camel, CI/CD, CircleCI, class file, Classloader, Cloud, CMS, code analysis, c
127ollections, command line, Composite, Continuous Query, CPU, cpu caches, debugging, Deep Learning, degraph, dependency, Dependency Injection, design pattern, developers, DevOps, distributed systems, Docker, Docker Image, DSL, executor, executorservice, Expect the unexpected, fork, free software, Friday 13, functional programming, functional relational programming, GAE, Gaming, garbage collection, GC, generics, Google App Engine, Google Cloud SQL, Google Cloud Storage, Graal Compiler, graalvm, gradle, groovy, guava, hardware counters, hg, High performance, hotspot, hybrid programming, I18N, iteration, java, java 8, java 9, Java Advent, java advent 2014, java agent, java closures, Java EE6, java self healing, javaagent, JavaEE, JavaScript, JAX-RS, JDBC, jdk, jdk 7, jdk 8, JDK 9, JEP, JInput, JIT, JMX, jni, join, jooq, JRebel, JSON API, JSR, JSR 353, jtreg, junit, JuPyteR, JuPyteR notebooks, JVM, JVM scripting, JVMCI, jypthon, jython, kawa, kotlin, lambda, LambdaJ, latency, lightweight, LinkedList, Linux, load testing, local, low latency, Machine Learning, macos, make, mathematics, maths, maven, mechanical sympathy, memory, Memory Barriers, memory mapped files, mercurial, messaging, meta, microservices, ML, mongodb, Murphy&#039;s Law, music, mutation, mutation testing, mutually recursive bounds, mx, MXBeans, MySQL, native-image, Natural Language Processing, netrexx, NetWeaver, NLP, Notebooks, Notes, Observable, Observer, open source, openjdk, oracle-labs-graalvm, other stuff, overseer, parallel, parameters, Performance, performance counters, performance testing, performance tuning, pipelines, PIT, PL/SQL, Programming, prototyping, python, Quercus, query, random rage, reactive, Realtime, reference, regular expression, repos, resource management, Resources, REST, rules, SAP, SAP HANA, Scala, script, self healing, serialization, service, Simon Maple, skynet, Spring, spring boot, SQL, statistics, stored procedure, streams, String, substring, T-SQL, test, testing, Things that go wrong, thread, threading, threadpool, transformations, truffle, type safety, Uncategorized, unit testing, unsafe, visualization, whatever can go wrong will go wrong, windows, Wordpress, work environment, ZeroTurnaround">
128		<meta name="template" content="Hitchcock">
129		<meta name="robots" content="index,follow">
130		<meta name="fediverse:creator" content="@[email protected]">
131<style id="simple-banner-hide" type="text/css">.simple-banner{display:none;}</style><style id="simple-banner-background-color" type="text/css">.simple-banner{background: #024985;}</style><style id="simple-banner-text-color" type="text/css">.simple-banner .simple-banner-text{color: #ffffff;}</style><style id="simple-banner-link-color" type="text/css">.simple-banner .simple-banner-text a{color:#f16521;}</style><style id="simple-banner-z-index" type="text/css">.simple-banner{z-index: 99999;}</style><style id="simple-banner-site-custom-css-dummy" type="text/css"></style>
131<script id="simple-banner-site-custom-js-dummy" type="text/javascript"></script>
131<link rel="amphtml" href="https://www.javaadvent.com/sponsors?amp"><link rel="icon" href="https://i0.wp.com/www.javaadvent.com/content/uploads/2017/12/DukeFavicon.png?fit=32%2C32&#038;ssl=1" sizes="32x32" />
132<link rel="icon" href="https://i0.wp.com/www.javaadvent.com/content/uploads/2017/12/DukeFavicon.png?fit=139%2C140&#038;ssl=1" sizes="192x192" />
133<link rel="apple-touch-icon" href="https://i0.wp.com/www.javaadvent.com/content/uploads/2017/12/DukeFavicon.png?fit=139%2C140&#038;ssl=1" />
134<meta name="msapplication-TileImage" content="https://i0.wp.com/www.javaadvent.com/content/uploads/2017/12/DukeFavicon.png?fit=139%2C140&#038;ssl=1" />
135	
136	<link rel='stylesheet' id='jetpack-swiper-library-css' href='https://c0.wp.com/p/jetpack/16.2/_inc/blocks/swiper.css' media='all' />
137<link rel='stylesheet' id='jetpack-carousel-css' href='https://c0.wp.com/p/jetpack/16.2/modules/carousel/jetpack-carousel.css' media='all' />
138
139</head>
140	
141	<body class="wp-singular page-template-default page page-id-2342 wp-theme-hitchcock-advent-theme post single">
142
143		
144		<a class="skip-link button" href="#site-content">Skip to the content</a>
145		
146		<div class="navigation">
147			
148			<div class="section-inner">
149				
150				<ul class="main-menu">
151																		
152					<li id="menu-item-2959" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-home menu-item-2959"><a href="https://www.javaadvent.com/">Home</a></li>
153<li id="menu-item-2474" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2474"><a href="https://www.javaadvent.com/about-page">About</a></li>
154<li id="menu-item-2965" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2965"><a href="https://www.javaadvent.com/calendar">Calendar</a></li>
155<li id="menu-item-2475" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2475"><a href="https://www.javaadvent.com/archive">Archive</a></li>
156<li id="menu-item-2476" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-2342 current_page_item menu-item-2476"><a href="https://www.javaadvent.com/sponsors" aria-current="page">Sponsors</a></li>
157					
158					<li class="header-search">
159						
160<form method="get" class="search-form" id="search-form-6ac17b1a3d9f1" action="https://www.javaadvent.com/">
161	<input type="search" class="search-field" placeholder="Search Form" name="s" id="search-field-6ac17b1a3d9f5" /> 
162	<button type="submit" class="search-button">
163		<span class="screen-reader-text">Search</span>
164		<div class="fa fw fa-search"></div>
165	</button>
166</form>					</li>
167					
168				</ul>
169				
170			</div><!-- .section-inner -->
171			
172			<button type="button" class="nav-toggle">
173					
174				<div class="bars">
175					<div class="bar"></div>
176					<div class="bar"></div>
177					<div class="bar"></div>
178				</div>
179				
180			</button><!-- .nav-toggle -->
181			
182			<div class="mobile-navigation">
183			
184				<ul class="mobile-menu">
185																			
186					<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-home menu-item-2959"><a href="https://www.javaadvent.com/">Home</a></li>
187<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2474"><a href="https://www.javaadvent.com/about-page">About</a></li>
188<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2965"><a href="https://www.javaadvent.com/calendar">Calendar</a></li>
189<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2475"><a href="https://www.javaadvent.com/archive">Archive</a></li>
190<li class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-2342 current_page_item menu-item-2476"><a href="https://www.javaadvent.com/sponsors" aria-current="page">Sponsors</a></li>
191					
192				</ul>
193				
194				
195<form method="get" class="search-form" id="search-form-6ac17b1a3e5dd" action="https://www.javaadvent.com/">
196	<input type="search" class="search-field" placeholder="Search Form" name="s" id="search-field-6ac17b1a3e5e0" /> 
197	<button type="submit" class="search-button">
198		<span class="screen-reader-text">Search</span>
199		<div class="fa fw fa-search"></div>
200	</button>
201</form>			
202			</div><!-- .mobile-navigation -->
203			
204		</div><!-- .navigation -->
205
206				
207		<div class="header-image" style="background-image: url( https://www.javaadvent.com/content/themes/hitchcock-advent-theme/assets/images/bg.jpg );"></div>
208	
209		<div class="header section-inner">
210		
211				
212			<div class="blog-title">
213									<a href="https://www.javaadvent.com" rel="home">JVM Advent</a>
214							</div>
215			
216							<div class="blog-description"><p>The JVM Programming Advent Calendar</p>
217</div>
218						
219						
220		</div><!-- .header -->
221
222		<main id="site-content">
223		<div class="content section-inner">
224		
225			<div id="post-2342" class="single single-post post-2342 page type-page status-publish hentry">
226				
227				<div class="post-container">
228					
229											
230										
231					<div class="post-header">
232
233												
234						<h1 class="post-title">Sponsors</h1>						
235					</div>
236					
237					<div class="post-inner">
238							
239						<div class="post-content entry-content">
240							<p>We thank our sponsors for their ongoing support.</p>
241<p>Our sponsors are:</p>
242<p>&nbsp;</p>
243<p><img data-recalc-dims="1" fetchpriority="high" decoding="async" data-attachment-id="2344" data-permalink="https://www.javaadvent.com/sponsors/steinhauersoftware-logo-only" data-orig-file="https://i0.wp.com/www.javaadvent.com/content/uploads/2020/11/SteinhauerSoftware-Logo-Only.png?fit=981%2C1101&amp;ssl=1" data-orig-size="981,1101" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="steinhauer.software" data-image-description="" data-image-caption="" data-large-file="https://i0.wp.com/www.javaadvent.com/content/uploads/2020/11/SteinhauerSoftware-Logo-Only.png?fit=600%2C6
24374&amp;ssl=1" class="alignright size-medium wp-image-2344" src="https://i0.wp.com/www.javaadvent.com/content/uploads/2020/11/SteinhauerSoftware-Logo-Only.png?resize=267%2C300&#038;ssl=1" alt="steinhauer.software logo" width="267" height="300" srcset="https://i0.wp.com/www.javaadvent.com/content/uploads/2020/11/SteinhauerSoftware-Logo-Only.png?resize=267%2C300&amp;ssl=1 267w, https://i0.wp.com/www.javaadvent.com/content/uploads/2020/11/SteinhauerSoftware-Logo-Only.png?resize=912%2C1024&amp;ssl=1 912w, https://i0.wp.com/www.javaadvent.com/content/uploads/2020/11/SteinhauerSoftware-Logo-Only.png?resize=768%2C862&amp;ssl=1 768w, https://i0.wp.com/www.javaadvent.com/content/uploads/2020/11/SteinhauerSoftware-Logo-Only.png?resize=508%2C570&amp;ssl=1 508w, https://i0.wp.com/www.javaadvent.com/content/uploads/2020/11/SteinhauerSoftware-Logo-Only.png?w=981&amp;ssl=1 981w" sizes="(max-width: 267px) 100vw, 267px" /><a href="https://steinhauer.software" target="_blank" rel="noopener noreferrer">steinhauer.software GmbH</a> transforms your legacy business application into a new cash cow and makes it fit for many years to come.</p>
244<p>They support us with web &amp; email hosting and software customization services.</p>
245						</div><!-- .post-content -->
246						
247						
248											
249					</div><!-- .post-inner -->
250					
251									
252				</div><!-- .post-container -->
253				
254			</div><!-- .post -->
255			
256		</div><!-- .content -->
257		
258				
259		</main><!-- #site-content -->
260
261		<div class="credits section-inner">
262            <p>&copy; 2026 <a href="https://www.javaadvent.com">JVM Advent</a> | Powered by <a href="https://steinhauer.software" target="_blank"><img src="https://www.javaadvent.com/content/themes/hitchcock-advent-theme/assets/images/steinhauer.software.png" alt="steinhauer.software Logo"/>steinhauer.software</a></p>
263			<p class="theme-by">Theme by <a href="https://www.andersnoren.se">Anders Nor&eacute;n</a></p>
264		</div><!-- .credits -->
265
266		
266<script type="speculationrules">
267{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/content/uploads/*","/content/*","/content/plugins/*","/content/themes/hitchcock-advent-theme/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
268</script>
vendor: 1 bytes, line 268
268
269<script src="https://www.jdoodle.com/assets/jdoodle-pym.min.js" type="text/javascript"></script>
269<div class="simple-banner simple-banner-text" style="display:none !important"></div><link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.6.1/css/all.css" />
270<!-- Matomo -->
271<script>
272  var _paq = window._paq = window._paq || [];
273  /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
274  _paq.push(["setCookieDomain", "*.www.javaadvent.com"]);
275  _paq.push(["setDomains", ["*.www.javaadvent.com"]]);
276  _paq.push(["enableCrossDomainLinking"]);
277  _paq.push(['trackPageView']);
278  _paq.push(['enableLinkTracking']);
279  (function() {
280    var u="//analytics.e-mehlbox.eu/";
281    _paq.push(['setTrackerUrl', u+'matomo.php']);
282    _paq.push(['setSiteId', '2']);
283    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
284    g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
285  })();
286</script>
286
287<!-- End Matomo Code -->
288<noscript><p><img referrerpolicy="no-referrer-when-downgrade" src="//analytics.e-mehlbox.eu/matomo.php?idsite=2&rec=1" style="border:0;" alt="" /></p></noscript>
289		<div id="jp-carousel-loading-overlay" style="display: none;">
290			<div id="jp-carousel-loading-wrapper">
291				<span id="jp-carousel-library-loading"><svg class="jetpack-spinner" width="40" height="40" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><circle cx="50" cy="50" r="46" fill="none" stroke="#ddd" stroke-width="8"/><path d="M 50 4 A 46 46 0 0 1 96 50" fill="none" stroke="currentColor" stroke-width="8" stroke-linecap="round"><animateTransform attributeName="transform" type="rotate" dur="1.4s" from="0 50 50" to="360 50 50" repeatCount="indefinite"/></path></svg></span>
292			</div>
293		</div>
294		<div class="jp-carousel-overlay" style="display: none;">
295
296		<div class="jp-carousel-container">
297			<!-- The Carousel Swiper -->
298			<div
299				class="jp-carousel-wrap swiper jp-carousel-swiper-container jp-carousel-transitions"
300				itemscope
301				itemtype="https://schema.org/ImageGallery">
302				<div class="jp-carousel swiper-wrapper"></div>
303				<div class="jp-swiper-button-prev swiper-button-prev">
304					<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
305						<mask id="maskPrev" mask-type="alpha" maskUnits="userSpaceOnUse" x="8" y="6" width="9" height="12">
306							<path d="M16.2072 16.59L11.6496 12L16.2072 7.41L14.8041 6L8.8335 12L14.8041 18L16.2072 16.59Z" fill="white"/>
307						</mask>
308						<g mask="url(#maskPrev)">
309							<rect x="0.579102" width="23.8823" height="24" fill="#FFFFFF"/>
310						</g>
311					</svg>
312				</div>
313				<div class="jp-swiper-button-next swiper-button-next">
314					<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
315						<mask id="maskNext" mask-type="alpha" maskUnits="userSpaceOnUse" x="8" y="6" width="8" height="12">
316							<path d="M8.59814 16.59L13.1557 12L8.59814 7.41L10.0012 6L15.9718 12L10.0012 18L8.59814 16.59Z" fill="white"/>
317						</mask>
318						<g mask="url(#maskNext)">
319							<rect x="0.34375" width="23.8822" height="24" fill="#FFFFFF"/>
320						</g>
321					</svg>
322				</div>
323			</div>
324			<!-- The main close buton -->
325			<div class="jp-carousel-close-hint">
326				<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
327					<mask id="maskClose" mask-type="alpha" maskUnits="userSpaceOnUse" x="5" y="5" width="15" height="14">
328						<path d="M19.3166 6.41L17.9135 5L12.3509 10.59L6.78834 5L5.38525 6.41L10.9478 12L5.38525 17.59L6.78834 19L12.3509 13.41L17.9135 19L19.3166 17.59L13.754 12L19.3166 6.41Z" fill="white"/>
329					</mask>
330					<g mask="url(#maskClose)">
331						<rect x="0.409668" width="23.8823" height="24" fill="#FFFFFF"/>
332					</g>
333				</svg>
334			</div>
335			<!-- Image info, comments and meta -->
336			<div class="jp-carousel-info">
337				<div class="jp-carousel-info-footer">
338					<div class="jp-carousel-pagination-container">
339						<div class="jp-swiper-pagination swiper-pagination"></div>
340						<div class="jp-carousel-pagination"></div>
341					</div>
342					<div class="jp-carousel-photo-title-container">
343						<div class="jp-carousel-photo-caption"></div>
344					</div>
345					<div class="jp-carousel-photo-icons-container">
346						<a href="#" class="jp-carousel-icon-btn jp-carousel-icon-info" aria-label="Toggle photo metadata visibility">
347							<span class="jp-carousel-icon">
348								<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
349									<mask id="maskInfo" mask-type="alpha" maskUnits="userSpaceOnUse" x="2" y="2" width="21" height="20">
350										<path fill-rule="evenodd" clip-rule="evenodd" d="M12.7537 2C7.26076 2 2.80273 6.48 2.80273 12C2.80273 17.52 7.26076 22 12.7537 22C18.2466 22 22.7046 17.52 22.7046 12C22.7046 6.48 18.2466 2 12.7537 2ZM11.7586 7V9H13.7488V7H11.7586ZM11.7586 11V17H13.7488V11H11.7586ZM4.79292 12C4.79292 16.41 8.36531 20 12.7537 20C17.142 20 20.7144 16.41 20.7144 12C20.7144 7.59 17.142 4 12.7537 4C8.36531 4 4.79292 7.59 4.79292 12Z" fill="white"/>
351									</mask>
352									<g mask="url(#maskInfo)">
353										<rect x="0.8125" width="23.8823" height="24" fill="#FFFFFF"/>
354									</g>
355								</svg>
356							</span>
357						</a>
358												<a href="#" class="jp-carousel-icon-btn jp-carousel-icon-comments" aria-label="Toggle photo comments visibility">
359							<span class="jp-carousel-icon">
360								<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
361									<mask id="maskComments" mask-type="alpha" maskUnits="userSpaceOnUse" x="2" y="2" width="21" height="20">
362										<path fill-rule="evenodd" clip-rule="evenodd" d="M4.3271 2H20.2486C21.3432 2 22.2388 2.9 22.2388 4V16C22.2388 17.1 21.3432 18 20.2486 18H6.31729L2.33691 22V4C2.33691 2.9 3.2325 2 4.3271 2ZM6.31729 16H20.2486V4H4.3271V18L6.31729 16Z" fill="white"/>
363									</mask>
364									<g mask="url(#maskComments)">
365										<rect x="0.34668" width="23.8823" height="24" fill="#FFFFFF"/>
366									</g>
367								</svg>
368
369								<span class="jp-carousel-has-comments-indicator" aria-label="This image has comments."></span>
370							</span>
371						</a>
372											</div>
373				</div>
374				<div class="jp-carousel-info-extra">
375					<div class="jp-carousel-info-content-wrapper">
376						<div class="jp-carousel-photo-title-container">
377							<div class="jp-carousel-photo-title"></div>
378						</div>
379						<div class="jp-carousel-comments-wrapper">
380															<div id="jp-carousel-comments-loading">
381									<span>Loading Comments...</span>
382								</div>
383								<div class="jp-carousel-comments"></div>
384								<div id="jp-carousel-comment-form-container">
385									<span id="jp-carousel-comment-form-spinner"><svg class="jetpack-spinner" width="20" height="20" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><circle cx="50" cy="50" r="46" fill="none" stroke="#ddd" stroke-width="8"/><path d="M 50 4 A 46 46 0 0 1 96 50" fill="none" stroke="currentColor" stroke-width="8" stroke-linecap="round"><animateTransform attributeName="transform" type="rotate" dur="1.4s" from="0 50 50" to="360 50 50" repeatCount="indefinite"/></path></svg></span>
386									<div id="jp-carousel-comment-post-results"></div>
387																														<form id="jp-carousel-comment-form">
388												<label for="jp-carousel-comment-form-comment-field" class="screen-reader-text">Write a Comment...</label>
389												<textarea
390													name="comment"
391													class="jp-carousel-comment-form-field jp-carousel-comment-form-textarea"
392													id="jp-carousel-comment-form-comment-field"
393													placeholder="Write a Comment..."
394												></textarea>
395												<div id="jp-carousel-comment-form-submit-and-info-wrapper">
396													<div id="jp-carousel-comment-form-commenting-as">
397																													<fieldset>
398																<label for="jp-carousel-comment-form-email-field">Email (Required)</label>
399																<input type="text" name="email" class="jp-carousel-comment-form-field jp-carousel-comment-form-text-field" id="jp-carousel-comment-form-email-field" />
400															</fieldset>
401															<fieldset>
402																<label for="jp-carousel-comment-form-author-field">Name (Required)</label>
403																<input type="text" name="author" class="jp-carousel-comment-form-field jp-carousel-comment-form-text-field" id="jp-carousel-comment-form-author-field" />
404															</fieldset>
405															<fieldset>
406																<label for="jp-carousel-comment-form-url-field">Website</label>
407																<input type="text" name="url" class="jp-carousel-comment-form-field jp-carousel-comment-form-text-field" id="jp-carousel-comment-form-url-field" />
408															</fieldset>
409																											</div>
410													<input
411														type="submit"
412														name="submit"
413														class="jp-carousel-comment-form-button"
414														id="jp-carousel-comment-form-button-submit"
415														value="Post Comment" />
416												</div>
417											</form>
418																											</div>
419													</div>
420						<div class="jp-carousel-image-meta">
421							<div class="jp-carousel-title-and-caption">
422								<div class="jp-carousel-photo-info">
423									<div class="jp-carousel-caption" itemprop="caption description"></div>
424								</div>
425
426								<div class="jp-carousel-photo-description"></div>
427							</div>
428							<a class="jp-carousel-image-download" href="#" aria-label="Download image" target="_blank" style="display: none;">
429								<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
430									<mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="3" y="3" width="19" height="18">
431										<path fill-rule="evenodd" clip-rule="evenodd" d="M5.84615 5V19H19.7775V12H21.7677V19C21.7677 20.1 20.8721 21 19.7775 21H5.84615C4.74159 21 3.85596 20.1 3.85596 19V5C3.85596 3.9 4.74159 3 5.84615 3H12.8118V5H5.84615ZM14.802 5V3H21.7677V10H19.7775V6.41L9.99569 16.24L8.59261 14.83L18.3744 5H14.802Z" fill="white"/>
432									</mask>
433									<g mask="url(#mask0)">
434										<rect x="0.870605" width="23.8823" height="24" fill="#FFFFFF"/>
435									</g>
436								</svg>
437								<span class="jp-carousel-download-text"></span>
438							</a>
439							<div class="jp-carousel-image-map" style="display: none;"></div>
440						</div>
441					</div>
442				</div>
443			</div>
444		</div>
445
446		</div>
447		
447<script id="syntaxhighlighter-core-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shCore.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 447
447
448<script id="syntaxhighlighter-brush-as3-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushAS3.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 448
448
449<script id="syntaxhighlighter-brush-arduino-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushArduino.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 449
449
450<script id="syntaxhighlighter-brush-bash-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushBash.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 450
450
451<script id="syntaxhighlighter-brush-coldfusion-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushColdFusion.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 451
451
452<script id="syntaxhighlighter-brush-clojure-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/third-party-brushes/shBrushClojure.js?ver=20090602"></script>
vendor: 1 bytes, line 452
452
453<script id="syntaxhighlighter-brush-cpp-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushCpp.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 453
453
454<script id="syntaxhighlighter-brush-csharp-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushCSharp.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 454
454
455<script id="syntaxhighlighter-brush-css-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushCss.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 455
455
456<script id="syntaxhighlighter-brush-delphi-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushDelphi.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 456
456
457<script id="syntaxhighlighter-brush-diff-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushDiff.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 457
457
458<script id="syntaxhighlighter-brush-erlang-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushErlang.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 458
458
459<script id="syntaxhighlighter-brush-fsharp-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/third-party-brushes/shBrushFSharp.js?ver=20091003"></script>
vendor: 1 bytes, line 459
459
460<script id="syntaxhighlighter-brush-go-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushGo.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 460
460
461<script id="syntaxhighlighter-brush-groovy-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushGroovy.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 461
461
462<script id="syntaxhighlighter-brush-haskell-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushHaskell.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 462
462
463<script id="syntaxhighlighter-brush-java-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJava.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 463
463
464<script id="syntaxhighlighter-brush-javafx-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJavaFX.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 464
464
465<script id="syntaxhighlighter-brush-jscript-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJScript.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 465
465
466<script id="syntaxhighlighter-brush-latex-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/third-party-brushes/shBrushLatex.js?ver=20090613"></script>
vendor: 1 bytes, line 466
466
467<script id="syntaxhighlighter-brush-matlabkey-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/third-party-brushes/shBrushMatlabKey.js?ver=20091209"></script>
vendor: 1 bytes, line 467
467
468<script id="syntaxhighlighter-brush-objc-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/third-party-brushes/shBrushObjC.js?ver=20091207"></script>
vendor: 1 bytes, line 468
468
469<script id="syntaxhighlighter-brush-perl-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPerl.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 469
469
470<script id="syntaxhighlighter-brush-php-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPhp.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 470
470
471<script id="syntaxhighlighter-brush-plain-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPlain.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 471
471
472<script id="syntaxhighlighter-brush-powershell-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPowerShell.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 472
472
473<script id="syntaxhighlighter-brush-python-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPython.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 473
473
474<script id="syntaxhighlighter-brush-r-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/third-party-brushes/shBrushR.js?ver=20100919"></script>
vendor: 1 bytes, line 474
474
475<script id="syntaxhighlighter-brush-ruby-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushRuby.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 475
475
476<script id="syntaxhighlighter-brush-scala-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushScala.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 476
476
477<script id="syntaxhighlighter-brush-sql-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushSql.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 477
477
478<script id="syntaxhighlighter-brush-swift-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushSwift.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 478
478
479<script id="syntaxhighlighter-brush-vb-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushVb.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 479
479
480<script id="syntaxhighlighter-brush-xml-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushXml.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 480
480
481<script id="syntaxhighlighter-brush-yaml-js" src="https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushYaml.js?ver=3.0.9b"></script>
vendor: 1 bytes, line 481
481
482<script type='text/javascript'>
483	(function(){
484		var corecss = document.createElement('link');
485		var themecss = document.createElement('link');
486		var corecssurl = "https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shCore.css?ver=3.0.9b";
487		if ( corecss.setAttribute ) {
488				corecss.setAttribute( "rel", "stylesheet" );
489				corecss.setAttribute( "type", "text/css" );
490				corecss.setAttribute( "href", corecssurl );
491		} else {
492				corecss.rel = "stylesheet";
493				corecss.href = corecssurl;
494		}
495		document.head.appendChild( corecss );
496		var themecssurl = "https://www.javaadvent.com/content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shThemeMidnight.css?ver=3.0.9b";
497		if ( themecss.setAttribute ) {
498				themecss.setAttribute( "rel", "stylesheet" );
499				themecss.setAttribute( "type", "text/css" );
500				themecss.setAttribute( "href", themecssurl );
501		} else {
502				themecss.rel = "stylesheet";
503				themecss.href = themecssurl;
504		}
505		document.head.appendChild( themecss );
506	})();
507	SyntaxHighlighter.config.strings.expandSource = '+ expand source';
508	SyntaxHighlighter.config.strings.help = '?';
509	SyntaxHighlighter.config.strings.alert = 'SyntaxHighlighter\n\n';
510	SyntaxHighlighter.config.strings.noBrush = 'Can\'t find brush for: ';
511	SyntaxHighlighter.config.strings.brushNotHtmlScript = 'Brush wasn\'t configured for html-script option: ';
512	SyntaxHighlighter.defaults['pad-line-numbers'] = false;
513	SyntaxHighlighter.defaults['tab-size'] = 2;
514	SyntaxHighlighter.defaults['toolbar'] = false;
515	SyntaxHighlighter.all();
516
517	// Infinite scroll support
518	if ( typeof( jQuery ) !== 'undefined' ) {
519		jQuery( function( $ ) {
520			$( document.body ).on( 'post-load', function() {
521				SyntaxHighlighter.highlight();
522			} );
523		} );
524	}
525</script>
vendor: 1 bytes, line 525
525
526<script async data-wp-strategy="async" fetchpriority="low" id="comment-reply-js" src="https://c0.wp.com/c/7.1.2/wp-includes/js/comment-reply.min.js"></script>
vendor: 1 bytes, line 526
526
527<script id="jetpack-stats-js-before">
528_stq = window._stq || [];
529_stq.push([ "view", {"v":"ext","blog":"101550570","post":"2342","tz":"0","srv":"www.javaadvent.com","j":"1:16.2"} ]);
530_stq.push([ "clickTrackerInit", "101550570", "2342" ]);
531//# sourceURL=jetpack-stats-js-before
532</script>
vendor: 1 bytes, line 532
532
533<script data-wp-strategy="defer" defer fetchpriority="low" id="jetpack-stats-js" src="https://stats.wp.com/e-202640.js"></script>
vendor: 1 bytes, line 533
533
534<script id="jetpack-carousel-js-extra">
535var jetpackSwiperLibraryPath = {"url":"https://www.javaadvent.com/content/plugins/jetpack/_inc/blocks/swiper.js"};
536var jetpackCarouselStrings = {"widths":[370,700,1000,1200,1400,2000],"is_logged_in":"","lang":"en","ajaxurl":"https://www.javaadvent.com/wp-admin/admin-ajax.php","nonce":"f6ce587168","display_exif":"1","display_comments":"1","single_image_gallery":"1","single_image_gallery_media_file":"","background_color":"black","comment":"Comment","post_comment":"Post Comment","write_comment":"Write a Comment...","loading_comments":"Loading Comments...","image_label":"Open image in full-screen.","download_original":"View full size \u003Cspan class=\"photo-size\"\u003E{0}\u003Cspan class=\"photo-size-times\"\u003E\u00d7\u003C/span\u003E{1}\u003C/span\u003E","no_comment_text":"Please be sure to submit some text with your comment.","no_comment_email":"Please provide an email address to comment.","no_comment_author":"Please provide your name to comment.","comment_post_error":"Sorry, but there was an error posting your comment. Please try again later.","comment_approved":"Your comment was approved.","comment_unapproved":"Your comment is in moderation.","camera":"Camera","aperture":"Aperture","shutter_speed":"Shutter Speed","focal_length":"Focal Length","copyright":"Copyright","comment_registration":"0","require_name_email":"1","login_url":"https://www.javaadvent.com/wp-login.php?redirect_to=https%3A%2F%2Fwww.javaadvent.com%2Fsponsors","blog_id":"1","meta_data":["camera","aperture","shutter_speed","focal_length","copyright"]};
537//# sourceURL=jetpack-carousel-js-extra
538</script>
vendor: 1 bytes, line 538
538
539<script id="jetpack-carousel-js" src="https://c0.wp.com/p/jetpack/16.2/_inc/build/carousel/jetpack-carousel.min.js"></script>
vendor: 1 bytes, line 539
539
540<script id="wp-emoji-settings" type="application/json">
541{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://www.javaadvent.com/wp-includes/js/wp-emoji-release.min.js?ver=7.1.2"}}
542</script>
vendor: 1 bytes, line 542
542
543<script type="module">
544/*! This file is auto-generated */
545var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))});
546//# sourceURL=https://www.javaadvent.com/wp-includes/js/wp-emoji-loader.min.js
547</script>
547
548
549	</body>
550	
551</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.