Updates
diff --git a/about/index.html b/about/index.html
index 091d591..1df7f4a 100644
--- a/about/index.html
+++ b/about/index.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/openj9/styles.49a8f6a822c9d7d4566b.css">/*!
  * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com
  * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
- */.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\F26E"}.fa-accessible-icon:before{content:"\F368"}.fa-accusoft:before{content:"\F369"}.fa-acquisitions-incorporated:before{content:"\F6AF"}.fa-ad:before{content:"\F641"}.fa-address-book:before{content:"\F2B9"}.fa-address-card:before{content:"\F2BB"}.fa-adjust:before{content:"\F042"}.fa-adn:before{content:"\F170"}.fa-adobe:before{content:"\F778"}.fa-adversal:before{content:"\F36A"}.fa-affiliatetheme:before{content:"\F36B"}.fa-air-freshener:before{content:"\F5D0"}.fa-airbnb:before{content:"\F834"}.fa-algolia:before{content:"\F36C"}.fa-align-center:before{content:"\F037"}.fa-align-justify:before{content:"\F039"}.fa-align-left:before{content:"\F036"}.fa-align-right:before{content:"\F038"}.fa-alipay:before{content:"\F642"}.fa-allergies:before{content:"\F461"}.fa-amazon:before{content:"\F270"}.fa-amazon-pay:before{content:"\F42C"}.fa-ambulance:before{content:"\F0F9"}.fa-american-sign-language-interpreting:before{content:"\F2A3"}.fa-amilia:before{content:"\F36D"}.fa-anchor:before{content:"\F13D"}.fa-android:before{content:"\F17B"}.fa-angellist:before{content:"\F209"}.fa-angle-double-down:before{content:"\F103"}.fa-angle-double-left:before{content:"\F100"}.fa-angle-double-right:before{content:"\F101"}.fa-angle-double-up:before{content:"\F102"}.fa-angle-down:before{content:"\F107"}.fa-angle-left:before{content:"\F104"}.fa-angle-right:before{content:"\F105"}.fa-angle-up:before{content:"\F106"}.fa-angry:before{content:"\F556"}.fa-angrycreative:before{content:"\F36E"}.fa-angular:before{content:"\F420"}.fa-ankh:before{content:"\F644"}.fa-app-store:before{content:"\F36F"}.fa-app-store-ios:before{content:"\F370"}.fa-apper:before{content:"\F371"}.fa-apple:before{content:"\F179"}.fa-apple-alt:before{content:"\F5D1"}.fa-apple-pay:before{content:"\F415"}.fa-archive:before{content:"\F187"}.fa-archway:before{content:"\F557"}.fa-arrow-alt-circle-down:before{content:"\F358"}.fa-arrow-alt-circle-left:before{content:"\F359"}.fa-arrow-alt-circle-right:before{content:"\F35A"}.fa-arrow-alt-circle-up:before{content:"\F35B"}.fa-arrow-circle-down:before{content:"\F0AB"}.fa-arrow-circle-left:before{content:"\F0A8"}.fa-arrow-circle-right:before{content:"\F0A9"}.fa-arrow-circle-up:before{content:"\F0AA"}.fa-arrow-down:before{content:"\F063"}.fa-arrow-left:before{content:"\F060"}.fa-arrow-right:before{content:"\F061"}.fa-arrow-up:before{content:"\F062"}.fa-arrows-alt:before{content:"\F0B2"}.fa-arrows-alt-h:before{content:"\F337"}.fa-arrows-alt-v:before{content:"\F338"}.fa-artstation:before{content:"\F77A"}.fa-assistive-listening-systems:before{content:"\F2A2"}.fa-asterisk:before{content:"\F069"}.fa-asymmetrik:before{content:"\F372"}.fa-at:before{content:"\F1FA"}.fa-atlas:before{content:"\F558"}.fa-atlassian:before{content:"\F77B"}.fa-atom:before{content:"\F5D2"}.fa-audible:before{content:"\F373"}.fa-audio-description:before{content:"\F29E"}.fa-autoprefixer:before{content:"\F41C"}.fa-avianex:before{content:"\F374"}.fa-aviato:before{content:"\F421"}.fa-award:before{content:"\F559"}.fa-aws:before{content:"\F375"}.fa-baby:before{content:"\F77C"}.fa-baby-carriage:before{content:"\F77D"}.fa-backspace:before{content:"\F55A"}.fa-backward:before{content:"\F04A"}.fa-bacon:before{content:"\F7E5"}.fa-bahai:before{content:"\F666"}.fa-balance-scale:before{content:"\F24E"}.fa-balance-scale-left:before{content:"\F515"}.fa-balance-scale-right:before{content:"\F516"}.fa-ban:before{content:"\F05E"}.fa-band-aid:before{content:"\F462"}.fa-bandcamp:before{content:"\F2D5"}.fa-barcode:before{content:"\F02A"}.fa-bars:before{content:"\F0C9"}.fa-baseball-ball:before{content:"\F433"}.fa-basketball-ball:before{content:"\F434"}.fa-bath:before{content:"\F2CD"}.fa-battery-empty:before{content:"\F244"}.fa-battery-full:before{content:"\F240"}.fa-battery-half:before{content:"\F242"}.fa-battery-quarter:before{content:"\F243"}.fa-battery-three-quarters:before{content:"\F241"}.fa-battle-net:before{content:"\F835"}.fa-bed:before{content:"\F236"}.fa-beer:before{content:"\F0FC"}.fa-behance:before{content:"\F1B4"}.fa-behance-square:before{content:"\F1B5"}.fa-bell:before{content:"\F0F3"}.fa-bell-slash:before{content:"\F1F6"}.fa-bezier-curve:before{content:"\F55B"}.fa-bible:before{content:"\F647"}.fa-bicycle:before{content:"\F206"}.fa-biking:before{content:"\F84A"}.fa-bimobject:before{content:"\F378"}.fa-binoculars:before{content:"\F1E5"}.fa-biohazard:before{content:"\F780"}.fa-birthday-cake:before{content:"\F1FD"}.fa-bitbucket:before{content:"\F171"}.fa-bitcoin:before{content:"\F379"}.fa-bity:before{content:"\F37A"}.fa-black-tie:before{content:"\F27E"}.fa-blackberry:before{content:"\F37B"}.fa-blender:before{content:"\F517"}.fa-blender-phone:before{content:"\F6B6"}.fa-blind:before{content:"\F29D"}.fa-blog:before{content:"\F781"}.fa-blogger:before{content:"\F37C"}.fa-blogger-b:before{content:"\F37D"}.fa-bluetooth:before{content:"\F293"}.fa-bluetooth-b:before{content:"\F294"}.fa-bold:before{content:"\F032"}.fa-bolt:before{content:"\F0E7"}.fa-bomb:before{content:"\F1E2"}.fa-bone:before{content:"\F5D7"}.fa-bong:before{content:"\F55C"}.fa-book:before{content:"\F02D"}.fa-book-dead:before{content:"\F6B7"}.fa-book-medical:before{content:"\F7E6"}.fa-book-open:before{content:"\F518"}.fa-book-reader:before{content:"\F5DA"}.fa-bookmark:before{content:"\F02E"}.fa-bootstrap:before{content:"\F836"}.fa-border-all:before{content:"\F84C"}.fa-border-none:before{content:"\F850"}.fa-border-style:before{content:"\F853"}.fa-bowling-ball:before{content:"\F436"}.fa-box:before{content:"\F466"}.fa-box-open:before{content:"\F49E"}.fa-boxes:before{content:"\F468"}.fa-braille:before{content:"\F2A1"}.fa-brain:before{content:"\F5DC"}.fa-bread-slice:before{content:"\F7EC"}.fa-briefcase:before{content:"\F0B1"}.fa-briefcase-medical:before{content:"\F469"}.fa-broadcast-tower:before{content:"\F519"}.fa-broom:before{content:"\F51A"}.fa-brush:before{content:"\F55D"}.fa-btc:before{content:"\F15A"}.fa-buffer:before{content:"\F837"}.fa-bug:before{content:"\F188"}.fa-building:before{content:"\F1AD"}.fa-bullhorn:before{content:"\F0A1"}.fa-bullseye:before{content:"\F140"}.fa-burn:before{content:"\F46A"}.fa-buromobelexperte:before{content:"\F37F"}.fa-bus:before{content:"\F207"}.fa-bus-alt:before{content:"\F55E"}.fa-business-time:before{content:"\F64A"}.fa-buy-n-large:before{content:"\F8A6"}.fa-buysellads:before{content:"\F20D"}.fa-calculator:before{content:"\F1EC"}.fa-calendar:before{content:"\F133"}.fa-calendar-alt:before{content:"\F073"}.fa-calendar-check:before{content:"\F274"}.fa-calendar-day:before{content:"\F783"}.fa-calendar-minus:before{content:"\F272"}.fa-calendar-plus:before{content:"\F271"}.fa-calendar-times:before{content:"\F273"}.fa-calendar-week:before{content:"\F784"}.fa-camera:before{content:"\F030"}.fa-camera-retro:before{content:"\F083"}.fa-campground:before{content:"\F6BB"}.fa-canadian-maple-leaf:before{content:"\F785"}.fa-candy-cane:before{content:"\F786"}.fa-cannabis:before{content:"\F55F"}.fa-capsules:before{content:"\F46B"}.fa-car:before{content:"\F1B9"}.fa-car-alt:before{content:"\F5DE"}.fa-car-battery:before{content:"\F5DF"}.fa-car-crash:before{content:"\F5E1"}.fa-car-side:before{content:"\F5E4"}.fa-caravan:before{content:"\F8FF"}.fa-caret-down:before{content:"\F0D7"}.fa-caret-left:before{content:"\F0D9"}.fa-caret-right:before{content:"\F0DA"}.fa-caret-square-down:before{content:"\F150"}.fa-caret-square-left:before{content:"\F191"}.fa-caret-square-right:before{content:"\F152"}.fa-caret-square-up:before{content:"\F151"}.fa-caret-up:before{content:"\F0D8"}.fa-carrot:before{content:"\F787"}.fa-cart-arrow-down:before{content:"\F218"}.fa-cart-plus:before{content:"\F217"}.fa-cash-register:before{content:"\F788"}.fa-cat:before{content:"\F6BE"}.fa-cc-amazon-pay:before{content:"\F42D"}.fa-cc-amex:before{content:"\F1F3"}.fa-cc-apple-pay:before{content:"\F416"}.fa-cc-diners-club:before{content:"\F24C"}.fa-cc-discover:before{content:"\F1F2"}.fa-cc-jcb:before{content:"\F24B"}.fa-cc-mastercard:before{content:"\F1F1"}.fa-cc-paypal:before{content:"\F1F4"}.fa-cc-stripe:before{content:"\F1F5"}.fa-cc-visa:before{content:"\F1F0"}.fa-centercode:before{content:"\F380"}.fa-centos:before{content:"\F789"}.fa-certificate:before{content:"\F0A3"}.fa-chair:before{content:"\F6C0"}.fa-chalkboard:before{content:"\F51B"}.fa-chalkboard-teacher:before{content:"\F51C"}.fa-charging-station:before{content:"\F5E7"}.fa-chart-area:before{content:"\F1FE"}.fa-chart-bar:before{content:"\F080"}.fa-chart-line:before{content:"\F201"}.fa-chart-pie:before{content:"\F200"}.fa-check:before{content:"\F00C"}.fa-check-circle:before{content:"\F058"}.fa-check-double:before{content:"\F560"}.fa-check-square:before{content:"\F14A"}.fa-cheese:before{content:"\F7EF"}.fa-chess:before{content:"\F439"}.fa-chess-bishop:before{content:"\F43A"}.fa-chess-board:before{content:"\F43C"}.fa-chess-king:before{content:"\F43F"}.fa-chess-knight:before{content:"\F441"}.fa-chess-pawn:before{content:"\F443"}.fa-chess-queen:before{content:"\F445"}.fa-chess-rook:before{content:"\F447"}.fa-chevron-circle-down:before{content:"\F13A"}.fa-chevron-circle-left:before{content:"\F137"}.fa-chevron-circle-right:before{content:"\F138"}.fa-chevron-circle-up:before{content:"\F139"}.fa-chevron-down:before{content:"\F078"}.fa-chevron-left:before{content:"\F053"}.fa-chevron-right:before{content:"\F054"}.fa-chevron-up:before{content:"\F077"}.fa-child:before{content:"\F1AE"}.fa-chrome:before{content:"\F268"}.fa-chromecast:before{content:"\F838"}.fa-church:before{content:"\F51D"}.fa-circle:before{content:"\F111"}.fa-circle-notch:before{content:"\F1CE"}.fa-city:before{content:"\F64F"}.fa-clinic-medical:before{content:"\F7F2"}.fa-clipboard:before{content:"\F328"}.fa-clipboard-check:before{content:"\F46C"}.fa-clipboard-list:before{content:"\F46D"}.fa-clock:before{content:"\F017"}.fa-clone:before{content:"\F24D"}.fa-closed-captioning:before{content:"\F20A"}.fa-cloud:before{content:"\F0C2"}.fa-cloud-download-alt:before{content:"\F381"}.fa-cloud-meatball:before{content:"\F73B"}.fa-cloud-moon:before{content:"\F6C3"}.fa-cloud-moon-rain:before{content:"\F73C"}.fa-cloud-rain:before{content:"\F73D"}.fa-cloud-showers-heavy:before{content:"\F740"}.fa-cloud-sun:before{content:"\F6C4"}.fa-cloud-sun-rain:before{content:"\F743"}.fa-cloud-upload-alt:before{content:"\F382"}.fa-cloudscale:before{content:"\F383"}.fa-cloudsmith:before{content:"\F384"}.fa-cloudversify:before{content:"\F385"}.fa-cocktail:before{content:"\F561"}.fa-code:before{content:"\F121"}.fa-code-branch:before{content:"\F126"}.fa-codepen:before{content:"\F1CB"}.fa-codiepie:before{content:"\F284"}.fa-coffee:before{content:"\F0F4"}.fa-cog:before{content:"\F013"}.fa-cogs:before{content:"\F085"}.fa-coins:before{content:"\F51E"}.fa-columns:before{content:"\F0DB"}.fa-comment:before{content:"\F075"}.fa-comment-alt:before{content:"\F27A"}.fa-comment-dollar:before{content:"\F651"}.fa-comment-dots:before{content:"\F4AD"}.fa-comment-medical:before{content:"\F7F5"}.fa-comment-slash:before{content:"\F4B3"}.fa-comments:before{content:"\F086"}.fa-comments-dollar:before{content:"\F653"}.fa-compact-disc:before{content:"\F51F"}.fa-compass:before{content:"\F14E"}.fa-compress:before{content:"\F066"}.fa-compress-alt:before{content:"\F422"}.fa-compress-arrows-alt:before{content:"\F78C"}.fa-concierge-bell:before{content:"\F562"}.fa-confluence:before{content:"\F78D"}.fa-connectdevelop:before{content:"\F20E"}.fa-contao:before{content:"\F26D"}.fa-cookie:before{content:"\F563"}.fa-cookie-bite:before{content:"\F564"}.fa-copy:before{content:"\F0C5"}.fa-copyright:before{content:"\F1F9"}.fa-cotton-bureau:before{content:"\F89E"}.fa-couch:before{content:"\F4B8"}.fa-cpanel:before{content:"\F388"}.fa-creative-commons:before{content:"\F25E"}.fa-creative-commons-by:before{content:"\F4E7"}.fa-creative-commons-nc:before{content:"\F4E8"}.fa-creative-commons-nc-eu:before{content:"\F4E9"}.fa-creative-commons-nc-jp:before{content:"\F4EA"}.fa-creative-commons-nd:before{content:"\F4EB"}.fa-creative-commons-pd:before{content:"\F4EC"}.fa-creative-commons-pd-alt:before{content:"\F4ED"}.fa-creative-commons-remix:before{content:"\F4EE"}.fa-creative-commons-sa:before{content:"\F4EF"}.fa-creative-commons-sampling:before{content:"\F4F0"}.fa-creative-commons-sampling-plus:before{content:"\F4F1"}.fa-creative-commons-share:before{content:"\F4F2"}.fa-creative-commons-zero:before{content:"\F4F3"}.fa-credit-card:before{content:"\F09D"}.fa-critical-role:before{content:"\F6C9"}.fa-crop:before{content:"\F125"}.fa-crop-alt:before{content:"\F565"}.fa-cross:before{content:"\F654"}.fa-crosshairs:before{content:"\F05B"}.fa-crow:before{content:"\F520"}.fa-crown:before{content:"\F521"}.fa-crutch:before{content:"\F7F7"}.fa-css3:before{content:"\F13C"}.fa-css3-alt:before{content:"\F38B"}.fa-cube:before{content:"\F1B2"}.fa-cubes:before{content:"\F1B3"}.fa-cut:before{content:"\F0C4"}.fa-cuttlefish:before{content:"\F38C"}.fa-d-and-d:before{content:"\F38D"}.fa-d-and-d-beyond:before{content:"\F6CA"}.fa-dailymotion:before{content:"\F952"}.fa-dashcube:before{content:"\F210"}.fa-database:before{content:"\F1C0"}.fa-deaf:before{content:"\F2A4"}.fa-delicious:before{content:"\F1A5"}.fa-democrat:before{content:"\F747"}.fa-deploydog:before{content:"\F38E"}.fa-deskpro:before{content:"\F38F"}.fa-desktop:before{content:"\F108"}.fa-dev:before{content:"\F6CC"}.fa-deviantart:before{content:"\F1BD"}.fa-dharmachakra:before{content:"\F655"}.fa-dhl:before{content:"\F790"}.fa-diagnoses:before{content:"\F470"}.fa-diaspora:before{content:"\F791"}.fa-dice:before{content:"\F522"}.fa-dice-d20:before{content:"\F6CF"}.fa-dice-d6:before{content:"\F6D1"}.fa-dice-five:before{content:"\F523"}.fa-dice-four:before{content:"\F524"}.fa-dice-one:before{content:"\F525"}.fa-dice-six:before{content:"\F526"}.fa-dice-three:before{content:"\F527"}.fa-dice-two:before{content:"\F528"}.fa-digg:before{content:"\F1A6"}.fa-digital-ocean:before{content:"\F391"}.fa-digital-tachograph:before{content:"\F566"}.fa-directions:before{content:"\F5EB"}.fa-discord:before{content:"\F392"}.fa-discourse:before{content:"\F393"}.fa-divide:before{content:"\F529"}.fa-dizzy:before{content:"\F567"}.fa-dna:before{content:"\F471"}.fa-dochub:before{content:"\F394"}.fa-docker:before{content:"\F395"}.fa-dog:before{content:"\F6D3"}.fa-dollar-sign:before{content:"\F155"}.fa-dolly:before{content:"\F472"}.fa-dolly-flatbed:before{content:"\F474"}.fa-donate:before{content:"\F4B9"}.fa-door-closed:before{content:"\F52A"}.fa-door-open:before{content:"\F52B"}.fa-dot-circle:before{content:"\F192"}.fa-dove:before{content:"\F4BA"}.fa-download:before{content:"\F019"}.fa-draft2digital:before{content:"\F396"}.fa-drafting-compass:before{content:"\F568"}.fa-dragon:before{content:"\F6D5"}.fa-draw-polygon:before{content:"\F5EE"}.fa-dribbble:before{content:"\F17D"}.fa-dribbble-square:before{content:"\F397"}.fa-dropbox:before{content:"\F16B"}.fa-drum:before{content:"\F569"}.fa-drum-steelpan:before{content:"\F56A"}.fa-drumstick-bite:before{content:"\F6D7"}.fa-drupal:before{content:"\F1A9"}.fa-dumbbell:before{content:"\F44B"}.fa-dumpster:before{content:"\F793"}.fa-dumpster-fire:before{content:"\F794"}.fa-dungeon:before{content:"\F6D9"}.fa-dyalog:before{content:"\F399"}.fa-earlybirds:before{content:"\F39A"}.fa-ebay:before{content:"\F4F4"}.fa-edge:before{content:"\F282"}.fa-edit:before{content:"\F044"}.fa-egg:before{content:"\F7FB"}.fa-eject:before{content:"\F052"}.fa-elementor:before{content:"\F430"}.fa-ellipsis-h:before{content:"\F141"}.fa-ellipsis-v:before{content:"\F142"}.fa-ello:before{content:"\F5F1"}.fa-ember:before{content:"\F423"}.fa-empire:before{content:"\F1D1"}.fa-envelope:before{content:"\F0E0"}.fa-envelope-open:before{content:"\F2B6"}.fa-envelope-open-text:before{content:"\F658"}.fa-envelope-square:before{content:"\F199"}.fa-envira:before{content:"\F299"}.fa-equals:before{content:"\F52C"}.fa-eraser:before{content:"\F12D"}.fa-erlang:before{content:"\F39D"}.fa-ethereum:before{content:"\F42E"}.fa-ethernet:before{content:"\F796"}.fa-etsy:before{content:"\F2D7"}.fa-euro-sign:before{content:"\F153"}.fa-evernote:before{content:"\F839"}.fa-exchange-alt:before{content:"\F362"}.fa-exclamation:before{content:"\F12A"}.fa-exclamation-circle:before{content:"\F06A"}.fa-exclamation-triangle:before{content:"\F071"}.fa-expand:before{content:"\F065"}.fa-expand-alt:before{content:"\F424"}.fa-expand-arrows-alt:before{content:"\F31E"}.fa-expeditedssl:before{content:"\F23E"}.fa-external-link-alt:before{content:"\F35D"}.fa-external-link-square-alt:before{content:"\F360"}.fa-eye:before{content:"\F06E"}.fa-eye-dropper:before{content:"\F1FB"}.fa-eye-slash:before{content:"\F070"}.fa-facebook:before{content:"\F09A"}.fa-facebook-f:before{content:"\F39E"}.fa-facebook-messenger:before{content:"\F39F"}.fa-facebook-square:before{content:"\F082"}.fa-fan:before{content:"\F863"}.fa-fantasy-flight-games:before{content:"\F6DC"}.fa-fast-backward:before{content:"\F049"}.fa-fast-forward:before{content:"\F050"}.fa-fax:before{content:"\F1AC"}.fa-feather:before{content:"\F52D"}.fa-feather-alt:before{content:"\F56B"}.fa-fedex:before{content:"\F797"}.fa-fedora:before{content:"\F798"}.fa-female:before{content:"\F182"}.fa-fighter-jet:before{content:"\F0FB"}.fa-figma:before{content:"\F799"}.fa-file:before{content:"\F15B"}.fa-file-alt:before{content:"\F15C"}.fa-file-archive:before{content:"\F1C6"}.fa-file-audio:before{content:"\F1C7"}.fa-file-code:before{content:"\F1C9"}.fa-file-contract:before{content:"\F56C"}.fa-file-csv:before{content:"\F6DD"}.fa-file-download:before{content:"\F56D"}.fa-file-excel:before{content:"\F1C3"}.fa-file-export:before{content:"\F56E"}.fa-file-image:before{content:"\F1C5"}.fa-file-import:before{content:"\F56F"}.fa-file-invoice:before{content:"\F570"}.fa-file-invoice-dollar:before{content:"\F571"}.fa-file-medical:before{content:"\F477"}.fa-file-medical-alt:before{content:"\F478"}.fa-file-pdf:before{content:"\F1C1"}.fa-file-powerpoint:before{content:"\F1C4"}.fa-file-prescription:before{content:"\F572"}.fa-file-signature:before{content:"\F573"}.fa-file-upload:before{content:"\F574"}.fa-file-video:before{content:"\F1C8"}.fa-file-word:before{content:"\F1C2"}.fa-fill:before{content:"\F575"}.fa-fill-drip:before{content:"\F576"}.fa-film:before{content:"\F008"}.fa-filter:before{content:"\F0B0"}.fa-fingerprint:before{content:"\F577"}.fa-fire:before{content:"\F06D"}.fa-fire-alt:before{content:"\F7E4"}.fa-fire-extinguisher:before{content:"\F134"}.fa-firefox:before{content:"\F269"}.fa-firefox-browser:before{content:"\F907"}.fa-first-aid:before{content:"\F479"}.fa-first-order:before{content:"\F2B0"}.fa-first-order-alt:before{content:"\F50A"}.fa-firstdraft:before{content:"\F3A1"}.fa-fish:before{content:"\F578"}.fa-fist-raised:before{content:"\F6DE"}.fa-flag:before{content:"\F024"}.fa-flag-checkered:before{content:"\F11E"}.fa-flag-usa:before{content:"\F74D"}.fa-flask:before{content:"\F0C3"}.fa-flickr:before{content:"\F16E"}.fa-flipboard:before{content:"\F44D"}.fa-flushed:before{content:"\F579"}.fa-fly:before{content:"\F417"}.fa-folder:before{content:"\F07B"}.fa-folder-minus:before{content:"\F65D"}.fa-folder-open:before{content:"\F07C"}.fa-folder-plus:before{content:"\F65E"}.fa-font:before{content:"\F031"}.fa-font-awesome:before{content:"\F2B4"}.fa-font-awesome-alt:before{content:"\F35C"}.fa-font-awesome-flag:before{content:"\F425"}.fa-font-awesome-logo-full:before{content:"\F4E6"}.fa-fonticons:before{content:"\F280"}.fa-fonticons-fi:before{content:"\F3A2"}.fa-football-ball:before{content:"\F44E"}.fa-fort-awesome:before{content:"\F286"}.fa-fort-awesome-alt:before{content:"\F3A3"}.fa-forumbee:before{content:"\F211"}.fa-forward:before{content:"\F04E"}.fa-foursquare:before{content:"\F180"}.fa-free-code-camp:before{content:"\F2C5"}.fa-freebsd:before{content:"\F3A4"}.fa-frog:before{content:"\F52E"}.fa-frown:before{content:"\F119"}.fa-frown-open:before{content:"\F57A"}.fa-fulcrum:before{content:"\F50B"}.fa-funnel-dollar:before{content:"\F662"}.fa-futbol:before{content:"\F1E3"}.fa-galactic-republic:before{content:"\F50C"}.fa-galactic-senate:before{content:"\F50D"}.fa-gamepad:before{content:"\F11B"}.fa-gas-pump:before{content:"\F52F"}.fa-gavel:before{content:"\F0E3"}.fa-gem:before{content:"\F3A5"}.fa-genderless:before{content:"\F22D"}.fa-get-pocket:before{content:"\F265"}.fa-gg:before{content:"\F260"}.fa-gg-circle:before{content:"\F261"}.fa-ghost:before{content:"\F6E2"}.fa-gift:before{content:"\F06B"}.fa-gifts:before{content:"\F79C"}.fa-git:before{content:"\F1D3"}.fa-git-alt:before{content:"\F841"}.fa-git-square:before{content:"\F1D2"}.fa-github:before{content:"\F09B"}.fa-github-alt:before{content:"\F113"}.fa-github-square:before{content:"\F092"}.fa-gitkraken:before{content:"\F3A6"}.fa-gitlab:before{content:"\F296"}.fa-gitter:before{content:"\F426"}.fa-glass-cheers:before{content:"\F79F"}.fa-glass-martini:before{content:"\F000"}.fa-glass-martini-alt:before{content:"\F57B"}.fa-glass-whiskey:before{content:"\F7A0"}.fa-glasses:before{content:"\F530"}.fa-glide:before{content:"\F2A5"}.fa-glide-g:before{content:"\F2A6"}.fa-globe:before{content:"\F0AC"}.fa-globe-africa:before{content:"\F57C"}.fa-globe-americas:before{content:"\F57D"}.fa-globe-asia:before{content:"\F57E"}.fa-globe-europe:before{content:"\F7A2"}.fa-gofore:before{content:"\F3A7"}.fa-golf-ball:before{content:"\F450"}.fa-goodreads:before{content:"\F3A8"}.fa-goodreads-g:before{content:"\F3A9"}.fa-google:before{content:"\F1A0"}.fa-google-drive:before{content:"\F3AA"}.fa-google-play:before{content:"\F3AB"}.fa-google-plus:before{content:"\F2B3"}.fa-google-plus-g:before{content:"\F0D5"}.fa-google-plus-square:before{content:"\F0D4"}.fa-google-wallet:before{content:"\F1EE"}.fa-gopuram:before{content:"\F664"}.fa-graduation-cap:before{content:"\F19D"}.fa-gratipay:before{content:"\F184"}.fa-grav:before{content:"\F2D6"}.fa-greater-than:before{content:"\F531"}.fa-greater-than-equal:before{content:"\F532"}.fa-grimace:before{content:"\F57F"}.fa-grin:before{content:"\F580"}.fa-grin-alt:before{content:"\F581"}.fa-grin-beam:before{content:"\F582"}.fa-grin-beam-sweat:before{content:"\F583"}.fa-grin-hearts:before{content:"\F584"}.fa-grin-squint:before{content:"\F585"}.fa-grin-squint-tears:before{content:"\F586"}.fa-grin-stars:before{content:"\F587"}.fa-grin-tears:before{content:"\F588"}.fa-grin-tongue:before{content:"\F589"}.fa-grin-tongue-squint:before{content:"\F58A"}.fa-grin-tongue-wink:before{content:"\F58B"}.fa-grin-wink:before{content:"\F58C"}.fa-grip-horizontal:before{content:"\F58D"}.fa-grip-lines:before{content:"\F7A4"}.fa-grip-lines-vertical:before{content:"\F7A5"}.fa-grip-vertical:before{content:"\F58E"}.fa-gripfire:before{content:"\F3AC"}.fa-grunt:before{content:"\F3AD"}.fa-guitar:before{content:"\F7A6"}.fa-gulp:before{content:"\F3AE"}.fa-h-square:before{content:"\F0FD"}.fa-hacker-news:before{content:"\F1D4"}.fa-hacker-news-square:before{content:"\F3AF"}.fa-hackerrank:before{content:"\F5F7"}.fa-hamburger:before{content:"\F805"}.fa-hammer:before{content:"\F6E3"}.fa-hamsa:before{content:"\F665"}.fa-hand-holding:before{content:"\F4BD"}.fa-hand-holding-heart:before{content:"\F4BE"}.fa-hand-holding-usd:before{content:"\F4C0"}.fa-hand-lizard:before{content:"\F258"}.fa-hand-middle-finger:before{content:"\F806"}.fa-hand-paper:before{content:"\F256"}.fa-hand-peace:before{content:"\F25B"}.fa-hand-point-down:before{content:"\F0A7"}.fa-hand-point-left:before{content:"\F0A5"}.fa-hand-point-right:before{content:"\F0A4"}.fa-hand-point-up:before{content:"\F0A6"}.fa-hand-pointer:before{content:"\F25A"}.fa-hand-rock:before{content:"\F255"}.fa-hand-scissors:before{content:"\F257"}.fa-hand-spock:before{content:"\F259"}.fa-hands:before{content:"\F4C2"}.fa-hands-helping:before{content:"\F4C4"}.fa-handshake:before{content:"\F2B5"}.fa-hanukiah:before{content:"\F6E6"}.fa-hard-hat:before{content:"\F807"}.fa-hashtag:before{content:"\F292"}.fa-hat-cowboy:before{content:"\F8C0"}.fa-hat-cowboy-side:before{content:"\F8C1"}.fa-hat-wizard:before{content:"\F6E8"}.fa-hdd:before{content:"\F0A0"}.fa-heading:before{content:"\F1DC"}.fa-headphones:before{content:"\F025"}.fa-headphones-alt:before{content:"\F58F"}.fa-headset:before{content:"\F590"}.fa-heart:before{content:"\F004"}.fa-heart-broken:before{content:"\F7A9"}.fa-heartbeat:before{content:"\F21E"}.fa-helicopter:before{content:"\F533"}.fa-highlighter:before{content:"\F591"}.fa-hiking:before{content:"\F6EC"}.fa-hippo:before{content:"\F6ED"}.fa-hips:before{content:"\F452"}.fa-hire-a-helper:before{content:"\F3B0"}.fa-history:before{content:"\F1DA"}.fa-hockey-puck:before{content:"\F453"}.fa-holly-berry:before{content:"\F7AA"}.fa-home:before{content:"\F015"}.fa-hooli:before{content:"\F427"}.fa-hornbill:before{content:"\F592"}.fa-horse:before{content:"\F6F0"}.fa-horse-head:before{content:"\F7AB"}.fa-hospital:before{content:"\F0F8"}.fa-hospital-alt:before{content:"\F47D"}.fa-hospital-symbol:before{content:"\F47E"}.fa-hot-tub:before{content:"\F593"}.fa-hotdog:before{content:"\F80F"}.fa-hotel:before{content:"\F594"}.fa-hotjar:before{content:"\F3B1"}.fa-hourglass:before{content:"\F254"}.fa-hourglass-end:before{content:"\F253"}.fa-hourglass-half:before{content:"\F252"}.fa-hourglass-start:before{content:"\F251"}.fa-house-damage:before{content:"\F6F1"}.fa-houzz:before{content:"\F27C"}.fa-hryvnia:before{content:"\F6F2"}.fa-html5:before{content:"\F13B"}.fa-hubspot:before{content:"\F3B2"}.fa-i-cursor:before{content:"\F246"}.fa-ice-cream:before{content:"\F810"}.fa-icicles:before{content:"\F7AD"}.fa-icons:before{content:"\F86D"}.fa-id-badge:before{content:"\F2C1"}.fa-id-card:before{content:"\F2C2"}.fa-id-card-alt:before{content:"\F47F"}.fa-ideal:before{content:"\F913"}.fa-igloo:before{content:"\F7AE"}.fa-image:before{content:"\F03E"}.fa-images:before{content:"\F302"}.fa-imdb:before{content:"\F2D8"}.fa-inbox:before{content:"\F01C"}.fa-indent:before{content:"\F03C"}.fa-industry:before{content:"\F275"}.fa-infinity:before{content:"\F534"}.fa-info:before{content:"\F129"}.fa-info-circle:before{content:"\F05A"}.fa-instagram:before{content:"\F16D"}.fa-instagram-square:before{content:"\F955"}.fa-intercom:before{content:"\F7AF"}.fa-internet-explorer:before{content:"\F26B"}.fa-invision:before{content:"\F7B0"}.fa-ioxhost:before{content:"\F208"}.fa-italic:before{content:"\F033"}.fa-itch-io:before{content:"\F83A"}.fa-itunes:before{content:"\F3B4"}.fa-itunes-note:before{content:"\F3B5"}.fa-java:before{content:"\F4E4"}.fa-jedi:before{content:"\F669"}.fa-jedi-order:before{content:"\F50E"}.fa-jenkins:before{content:"\F3B6"}.fa-jira:before{content:"\F7B1"}.fa-joget:before{content:"\F3B7"}.fa-joint:before{content:"\F595"}.fa-joomla:before{content:"\F1AA"}.fa-journal-whills:before{content:"\F66A"}.fa-js:before{content:"\F3B8"}.fa-js-square:before{content:"\F3B9"}.fa-jsfiddle:before{content:"\F1CC"}.fa-kaaba:before{content:"\F66B"}.fa-kaggle:before{content:"\F5FA"}.fa-key:before{content:"\F084"}.fa-keybase:before{content:"\F4F5"}.fa-keyboard:before{content:"\F11C"}.fa-keycdn:before{content:"\F3BA"}.fa-khanda:before{content:"\F66D"}.fa-kickstarter:before{content:"\F3BB"}.fa-kickstarter-k:before{content:"\F3BC"}.fa-kiss:before{content:"\F596"}.fa-kiss-beam:before{content:"\F597"}.fa-kiss-wink-heart:before{content:"\F598"}.fa-kiwi-bird:before{content:"\F535"}.fa-korvue:before{content:"\F42F"}.fa-landmark:before{content:"\F66F"}.fa-language:before{content:"\F1AB"}.fa-laptop:before{content:"\F109"}.fa-laptop-code:before{content:"\F5FC"}.fa-laptop-medical:before{content:"\F812"}.fa-laravel:before{content:"\F3BD"}.fa-lastfm:before{content:"\F202"}.fa-lastfm-square:before{content:"\F203"}.fa-laugh:before{content:"\F599"}.fa-laugh-beam:before{content:"\F59A"}.fa-laugh-squint:before{content:"\F59B"}.fa-laugh-wink:before{content:"\F59C"}.fa-layer-group:before{content:"\F5FD"}.fa-leaf:before{content:"\F06C"}.fa-leanpub:before{content:"\F212"}.fa-lemon:before{content:"\F094"}.fa-less:before{content:"\F41D"}.fa-less-than:before{content:"\F536"}.fa-less-than-equal:before{content:"\F537"}.fa-level-down-alt:before{content:"\F3BE"}.fa-level-up-alt:before{content:"\F3BF"}.fa-life-ring:before{content:"\F1CD"}.fa-lightbulb:before{content:"\F0EB"}.fa-line:before{content:"\F3C0"}.fa-link:before{content:"\F0C1"}.fa-linkedin:before{content:"\F08C"}.fa-linkedin-in:before{content:"\F0E1"}.fa-linode:before{content:"\F2B8"}.fa-linux:before{content:"\F17C"}.fa-lira-sign:before{content:"\F195"}.fa-list:before{content:"\F03A"}.fa-list-alt:before{content:"\F022"}.fa-list-ol:before{content:"\F0CB"}.fa-list-ul:before{content:"\F0CA"}.fa-location-arrow:before{content:"\F124"}.fa-lock:before{content:"\F023"}.fa-lock-open:before{content:"\F3C1"}.fa-long-arrow-alt-down:before{content:"\F309"}.fa-long-arrow-alt-left:before{content:"\F30A"}.fa-long-arrow-alt-right:before{content:"\F30B"}.fa-long-arrow-alt-up:before{content:"\F30C"}.fa-low-vision:before{content:"\F2A8"}.fa-luggage-cart:before{content:"\F59D"}.fa-lyft:before{content:"\F3C3"}.fa-magento:before{content:"\F3C4"}.fa-magic:before{content:"\F0D0"}.fa-magnet:before{content:"\F076"}.fa-mail-bulk:before{content:"\F674"}.fa-mailchimp:before{content:"\F59E"}.fa-male:before{content:"\F183"}.fa-mandalorian:before{content:"\F50F"}.fa-map:before{content:"\F279"}.fa-map-marked:before{content:"\F59F"}.fa-map-marked-alt:before{content:"\F5A0"}.fa-map-marker:before{content:"\F041"}.fa-map-marker-alt:before{content:"\F3C5"}.fa-map-pin:before{content:"\F276"}.fa-map-signs:before{content:"\F277"}.fa-markdown:before{content:"\F60F"}.fa-marker:before{content:"\F5A1"}.fa-mars:before{content:"\F222"}.fa-mars-double:before{content:"\F227"}.fa-mars-stroke:before{content:"\F229"}.fa-mars-stroke-h:before{content:"\F22B"}.fa-mars-stroke-v:before{content:"\F22A"}.fa-mask:before{content:"\F6FA"}.fa-mastodon:before{content:"\F4F6"}.fa-maxcdn:before{content:"\F136"}.fa-mdb:before{content:"\F8CA"}.fa-medal:before{content:"\F5A2"}.fa-medapps:before{content:"\F3C6"}.fa-medium:before{content:"\F23A"}.fa-medium-m:before{content:"\F3C7"}.fa-medkit:before{content:"\F0FA"}.fa-medrt:before{content:"\F3C8"}.fa-meetup:before{content:"\F2E0"}.fa-megaport:before{content:"\F5A3"}.fa-meh:before{content:"\F11A"}.fa-meh-blank:before{content:"\F5A4"}.fa-meh-rolling-eyes:before{content:"\F5A5"}.fa-memory:before{content:"\F538"}.fa-mendeley:before{content:"\F7B3"}.fa-menorah:before{content:"\F676"}.fa-mercury:before{content:"\F223"}.fa-meteor:before{content:"\F753"}.fa-microblog:before{content:"\F91A"}.fa-microchip:before{content:"\F2DB"}.fa-microphone:before{content:"\F130"}.fa-microphone-alt:before{content:"\F3C9"}.fa-microphone-alt-slash:before{content:"\F539"}.fa-microphone-slash:before{content:"\F131"}.fa-microscope:before{content:"\F610"}.fa-microsoft:before{content:"\F3CA"}.fa-minus:before{content:"\F068"}.fa-minus-circle:before{content:"\F056"}.fa-minus-square:before{content:"\F146"}.fa-mitten:before{content:"\F7B5"}.fa-mix:before{content:"\F3CB"}.fa-mixcloud:before{content:"\F289"}.fa-mixer:before{content:"\F956"}.fa-mizuni:before{content:"\F3CC"}.fa-mobile:before{content:"\F10B"}.fa-mobile-alt:before{content:"\F3CD"}.fa-modx:before{content:"\F285"}.fa-monero:before{content:"\F3D0"}.fa-money-bill:before{content:"\F0D6"}.fa-money-bill-alt:before{content:"\F3D1"}.fa-money-bill-wave:before{content:"\F53A"}.fa-money-bill-wave-alt:before{content:"\F53B"}.fa-money-check:before{content:"\F53C"}.fa-money-check-alt:before{content:"\F53D"}.fa-monument:before{content:"\F5A6"}.fa-moon:before{content:"\F186"}.fa-mortar-pestle:before{content:"\F5A7"}.fa-mosque:before{content:"\F678"}.fa-motorcycle:before{content:"\F21C"}.fa-mountain:before{content:"\F6FC"}.fa-mouse:before{content:"\F8CC"}.fa-mouse-pointer:before{content:"\F245"}.fa-mug-hot:before{content:"\F7B6"}.fa-music:before{content:"\F001"}.fa-napster:before{content:"\F3D2"}.fa-neos:before{content:"\F612"}.fa-network-wired:before{content:"\F6FF"}.fa-neuter:before{content:"\F22C"}.fa-newspaper:before{content:"\F1EA"}.fa-nimblr:before{content:"\F5A8"}.fa-node:before{content:"\F419"}.fa-node-js:before{content:"\F3D3"}.fa-not-equal:before{content:"\F53E"}.fa-notes-medical:before{content:"\F481"}.fa-npm:before{content:"\F3D4"}.fa-ns8:before{content:"\F3D5"}.fa-nutritionix:before{content:"\F3D6"}.fa-object-group:before{content:"\F247"}.fa-object-ungroup:before{content:"\F248"}.fa-odnoklassniki:before{content:"\F263"}.fa-odnoklassniki-square:before{content:"\F264"}.fa-oil-can:before{content:"\F613"}.fa-old-republic:before{content:"\F510"}.fa-om:before{content:"\F679"}.fa-opencart:before{content:"\F23D"}.fa-openid:before{content:"\F19B"}.fa-opera:before{content:"\F26A"}.fa-optin-monster:before{content:"\F23C"}.fa-orcid:before{content:"\F8D2"}.fa-osi:before{content:"\F41A"}.fa-otter:before{content:"\F700"}.fa-outdent:before{content:"\F03B"}.fa-page4:before{content:"\F3D7"}.fa-pagelines:before{content:"\F18C"}.fa-pager:before{content:"\F815"}.fa-paint-brush:before{content:"\F1FC"}.fa-paint-roller:before{content:"\F5AA"}.fa-palette:before{content:"\F53F"}.fa-palfed:before{content:"\F3D8"}.fa-pallet:before{content:"\F482"}.fa-paper-plane:before{content:"\F1D8"}.fa-paperclip:before{content:"\F0C6"}.fa-parachute-box:before{content:"\F4CD"}.fa-paragraph:before{content:"\F1DD"}.fa-parking:before{content:"\F540"}.fa-passport:before{content:"\F5AB"}.fa-pastafarianism:before{content:"\F67B"}.fa-paste:before{content:"\F0EA"}.fa-patreon:before{content:"\F3D9"}.fa-pause:before{content:"\F04C"}.fa-pause-circle:before{content:"\F28B"}.fa-paw:before{content:"\F1B0"}.fa-paypal:before{content:"\F1ED"}.fa-peace:before{content:"\F67C"}.fa-pen:before{content:"\F304"}.fa-pen-alt:before{content:"\F305"}.fa-pen-fancy:before{content:"\F5AC"}.fa-pen-nib:before{content:"\F5AD"}.fa-pen-square:before{content:"\F14B"}.fa-pencil-alt:before{content:"\F303"}.fa-pencil-ruler:before{content:"\F5AE"}.fa-penny-arcade:before{content:"\F704"}.fa-people-carry:before{content:"\F4CE"}.fa-pepper-hot:before{content:"\F816"}.fa-percent:before{content:"\F295"}.fa-percentage:before{content:"\F541"}.fa-periscope:before{content:"\F3DA"}.fa-person-booth:before{content:"\F756"}.fa-phabricator:before{content:"\F3DB"}.fa-phoenix-framework:before{content:"\F3DC"}.fa-phoenix-squadron:before{content:"\F511"}.fa-phone:before{content:"\F095"}.fa-phone-alt:before{content:"\F879"}.fa-phone-slash:before{content:"\F3DD"}.fa-phone-square:before{content:"\F098"}.fa-phone-square-alt:before{content:"\F87B"}.fa-phone-volume:before{content:"\F2A0"}.fa-photo-video:before{content:"\F87C"}.fa-php:before{content:"\F457"}.fa-pied-piper:before{content:"\F2AE"}.fa-pied-piper-alt:before{content:"\F1A8"}.fa-pied-piper-hat:before{content:"\F4E5"}.fa-pied-piper-pp:before{content:"\F1A7"}.fa-pied-piper-square:before{content:"\F91E"}.fa-piggy-bank:before{content:"\F4D3"}.fa-pills:before{content:"\F484"}.fa-pinterest:before{content:"\F0D2"}.fa-pinterest-p:before{content:"\F231"}.fa-pinterest-square:before{content:"\F0D3"}.fa-pizza-slice:before{content:"\F818"}.fa-place-of-worship:before{content:"\F67F"}.fa-plane:before{content:"\F072"}.fa-plane-arrival:before{content:"\F5AF"}.fa-plane-departure:before{content:"\F5B0"}.fa-play:before{content:"\F04B"}.fa-play-circle:before{content:"\F144"}.fa-playstation:before{content:"\F3DF"}.fa-plug:before{content:"\F1E6"}.fa-plus:before{content:"\F067"}.fa-plus-circle:before{content:"\F055"}.fa-plus-square:before{content:"\F0FE"}.fa-podcast:before{content:"\F2CE"}.fa-poll:before{content:"\F681"}.fa-poll-h:before{content:"\F682"}.fa-poo:before{content:"\F2FE"}.fa-poo-storm:before{content:"\F75A"}.fa-poop:before{content:"\F619"}.fa-portrait:before{content:"\F3E0"}.fa-pound-sign:before{content:"\F154"}.fa-power-off:before{content:"\F011"}.fa-pray:before{content:"\F683"}.fa-praying-hands:before{content:"\F684"}.fa-prescription:before{content:"\F5B1"}.fa-prescription-bottle:before{content:"\F485"}.fa-prescription-bottle-alt:before{content:"\F486"}.fa-print:before{content:"\F02F"}.fa-procedures:before{content:"\F487"}.fa-product-hunt:before{content:"\F288"}.fa-project-diagram:before{content:"\F542"}.fa-pushed:before{content:"\F3E1"}.fa-puzzle-piece:before{content:"\F12E"}.fa-python:before{content:"\F3E2"}.fa-qq:before{content:"\F1D6"}.fa-qrcode:before{content:"\F029"}.fa-question:before{content:"\F128"}.fa-question-circle:before{content:"\F059"}.fa-quidditch:before{content:"\F458"}.fa-quinscape:before{content:"\F459"}.fa-quora:before{content:"\F2C4"}.fa-quote-left:before{content:"\F10D"}.fa-quote-right:before{content:"\F10E"}.fa-quran:before{content:"\F687"}.fa-r-project:before{content:"\F4F7"}.fa-radiation:before{content:"\F7B9"}.fa-radiation-alt:before{content:"\F7BA"}.fa-rainbow:before{content:"\F75B"}.fa-random:before{content:"\F074"}.fa-raspberry-pi:before{content:"\F7BB"}.fa-ravelry:before{content:"\F2D9"}.fa-react:before{content:"\F41B"}.fa-reacteurope:before{content:"\F75D"}.fa-readme:before{content:"\F4D5"}.fa-rebel:before{content:"\F1D0"}.fa-receipt:before{content:"\F543"}.fa-record-vinyl:before{content:"\F8D9"}.fa-recycle:before{content:"\F1B8"}.fa-red-river:before{content:"\F3E3"}.fa-reddit:before{content:"\F1A1"}.fa-reddit-alien:before{content:"\F281"}.fa-reddit-square:before{content:"\F1A2"}.fa-redhat:before{content:"\F7BC"}.fa-redo:before{content:"\F01E"}.fa-redo-alt:before{content:"\F2F9"}.fa-registered:before{content:"\F25D"}.fa-remove-format:before{content:"\F87D"}.fa-renren:before{content:"\F18B"}.fa-reply:before{content:"\F3E5"}.fa-reply-all:before{content:"\F122"}.fa-replyd:before{content:"\F3E6"}.fa-republican:before{content:"\F75E"}.fa-researchgate:before{content:"\F4F8"}.fa-resolving:before{content:"\F3E7"}.fa-restroom:before{content:"\F7BD"}.fa-retweet:before{content:"\F079"}.fa-rev:before{content:"\F5B2"}.fa-ribbon:before{content:"\F4D6"}.fa-ring:before{content:"\F70B"}.fa-road:before{content:"\F018"}.fa-robot:before{content:"\F544"}.fa-rocket:before{content:"\F135"}.fa-rocketchat:before{content:"\F3E8"}.fa-rockrms:before{content:"\F3E9"}.fa-route:before{content:"\F4D7"}.fa-rss:before{content:"\F09E"}.fa-rss-square:before{content:"\F143"}.fa-ruble-sign:before{content:"\F158"}.fa-ruler:before{content:"\F545"}.fa-ruler-combined:before{content:"\F546"}.fa-ruler-horizontal:before{content:"\F547"}.fa-ruler-vertical:before{content:"\F548"}.fa-running:before{content:"\F70C"}.fa-rupee-sign:before{content:"\F156"}.fa-sad-cry:before{content:"\F5B3"}.fa-sad-tear:before{content:"\F5B4"}.fa-safari:before{content:"\F267"}.fa-salesforce:before{content:"\F83B"}.fa-sass:before{content:"\F41E"}.fa-satellite:before{content:"\F7BF"}.fa-satellite-dish:before{content:"\F7C0"}.fa-save:before{content:"\F0C7"}.fa-schlix:before{content:"\F3EA"}.fa-school:before{content:"\F549"}.fa-screwdriver:before{content:"\F54A"}.fa-scribd:before{content:"\F28A"}.fa-scroll:before{content:"\F70E"}.fa-sd-card:before{content:"\F7C2"}.fa-search:before{content:"\F002"}.fa-search-dollar:before{content:"\F688"}.fa-search-location:before{content:"\F689"}.fa-search-minus:before{content:"\F010"}.fa-search-plus:before{content:"\F00E"}.fa-searchengin:before{content:"\F3EB"}.fa-seedling:before{content:"\F4D8"}.fa-sellcast:before{content:"\F2DA"}.fa-sellsy:before{content:"\F213"}.fa-server:before{content:"\F233"}.fa-servicestack:before{content:"\F3EC"}.fa-shapes:before{content:"\F61F"}.fa-share:before{content:"\F064"}.fa-share-alt:before{content:"\F1E0"}.fa-share-alt-square:before{content:"\F1E1"}.fa-share-square:before{content:"\F14D"}.fa-shekel-sign:before{content:"\F20B"}.fa-shield-alt:before{content:"\F3ED"}.fa-ship:before{content:"\F21A"}.fa-shipping-fast:before{content:"\F48B"}.fa-shirtsinbulk:before{content:"\F214"}.fa-shoe-prints:before{content:"\F54B"}.fa-shopify:before{content:"\F957"}.fa-shopping-bag:before{content:"\F290"}.fa-shopping-basket:before{content:"\F291"}.fa-shopping-cart:before{content:"\F07A"}.fa-shopware:before{content:"\F5B5"}.fa-shower:before{content:"\F2CC"}.fa-shuttle-van:before{content:"\F5B6"}.fa-sign:before{content:"\F4D9"}.fa-sign-in-alt:before{content:"\F2F6"}.fa-sign-language:before{content:"\F2A7"}.fa-sign-out-alt:before{content:"\F2F5"}.fa-signal:before{content:"\F012"}.fa-signature:before{content:"\F5B7"}.fa-sim-card:before{content:"\F7C4"}.fa-simplybuilt:before{content:"\F215"}.fa-sistrix:before{content:"\F3EE"}.fa-sitemap:before{content:"\F0E8"}.fa-sith:before{content:"\F512"}.fa-skating:before{content:"\F7C5"}.fa-sketch:before{content:"\F7C6"}.fa-skiing:before{content:"\F7C9"}.fa-skiing-nordic:before{content:"\F7CA"}.fa-skull:before{content:"\F54C"}.fa-skull-crossbones:before{content:"\F714"}.fa-skyatlas:before{content:"\F216"}.fa-skype:before{content:"\F17E"}.fa-slack:before{content:"\F198"}.fa-slack-hash:before{content:"\F3EF"}.fa-slash:before{content:"\F715"}.fa-sleigh:before{content:"\F7CC"}.fa-sliders-h:before{content:"\F1DE"}.fa-slideshare:before{content:"\F1E7"}.fa-smile:before{content:"\F118"}.fa-smile-beam:before{content:"\F5B8"}.fa-smile-wink:before{content:"\F4DA"}.fa-smog:before{content:"\F75F"}.fa-smoking:before{content:"\F48D"}.fa-smoking-ban:before{content:"\F54D"}.fa-sms:before{content:"\F7CD"}.fa-snapchat:before{content:"\F2AB"}.fa-snapchat-ghost:before{content:"\F2AC"}.fa-snapchat-square:before{content:"\F2AD"}.fa-snowboarding:before{content:"\F7CE"}.fa-snowflake:before{content:"\F2DC"}.fa-snowman:before{content:"\F7D0"}.fa-snowplow:before{content:"\F7D2"}.fa-socks:before{content:"\F696"}.fa-solar-panel:before{content:"\F5BA"}.fa-sort:before{content:"\F0DC"}.fa-sort-alpha-down:before{content:"\F15D"}.fa-sort-alpha-down-alt:before{content:"\F881"}.fa-sort-alpha-up:before{content:"\F15E"}.fa-sort-alpha-up-alt:before{content:"\F882"}.fa-sort-amount-down:before{content:"\F160"}.fa-sort-amount-down-alt:before{content:"\F884"}.fa-sort-amount-up:before{content:"\F161"}.fa-sort-amount-up-alt:before{content:"\F885"}.fa-sort-down:before{content:"\F0DD"}.fa-sort-numeric-down:before{content:"\F162"}.fa-sort-numeric-down-alt:before{content:"\F886"}.fa-sort-numeric-up:before{content:"\F163"}.fa-sort-numeric-up-alt:before{content:"\F887"}.fa-sort-up:before{content:"\F0DE"}.fa-soundcloud:before{content:"\F1BE"}.fa-sourcetree:before{content:"\F7D3"}.fa-spa:before{content:"\F5BB"}.fa-space-shuttle:before{content:"\F197"}.fa-speakap:before{content:"\F3F3"}.fa-speaker-deck:before{content:"\F83C"}.fa-spell-check:before{content:"\F891"}.fa-spider:before{content:"\F717"}.fa-spinner:before{content:"\F110"}.fa-splotch:before{content:"\F5BC"}.fa-spotify:before{content:"\F1BC"}.fa-spray-can:before{content:"\F5BD"}.fa-square:before{content:"\F0C8"}.fa-square-full:before{content:"\F45C"}.fa-square-root-alt:before{content:"\F698"}.fa-squarespace:before{content:"\F5BE"}.fa-stack-exchange:before{content:"\F18D"}.fa-stack-overflow:before{content:"\F16C"}.fa-stackpath:before{content:"\F842"}.fa-stamp:before{content:"\F5BF"}.fa-star:before{content:"\F005"}.fa-star-and-crescent:before{content:"\F699"}.fa-star-half:before{content:"\F089"}.fa-star-half-alt:before{content:"\F5C0"}.fa-star-of-david:before{content:"\F69A"}.fa-star-of-life:before{content:"\F621"}.fa-staylinked:before{content:"\F3F5"}.fa-steam:before{content:"\F1B6"}.fa-steam-square:before{content:"\F1B7"}.fa-steam-symbol:before{content:"\F3F6"}.fa-step-backward:before{content:"\F048"}.fa-step-forward:before{content:"\F051"}.fa-stethoscope:before{content:"\F0F1"}.fa-sticker-mule:before{content:"\F3F7"}.fa-sticky-note:before{content:"\F249"}.fa-stop:before{content:"\F04D"}.fa-stop-circle:before{content:"\F28D"}.fa-stopwatch:before{content:"\F2F2"}.fa-store:before{content:"\F54E"}.fa-store-alt:before{content:"\F54F"}.fa-strava:before{content:"\F428"}.fa-stream:before{content:"\F550"}.fa-street-view:before{content:"\F21D"}.fa-strikethrough:before{content:"\F0CC"}.fa-stripe:before{content:"\F429"}.fa-stripe-s:before{content:"\F42A"}.fa-stroopwafel:before{content:"\F551"}.fa-studiovinari:before{content:"\F3F8"}.fa-stumbleupon:before{content:"\F1A4"}.fa-stumbleupon-circle:before{content:"\F1A3"}.fa-subscript:before{content:"\F12C"}.fa-subway:before{content:"\F239"}.fa-suitcase:before{content:"\F0F2"}.fa-suitcase-rolling:before{content:"\F5C1"}.fa-sun:before{content:"\F185"}.fa-superpowers:before{content:"\F2DD"}.fa-superscript:before{content:"\F12B"}.fa-supple:before{content:"\F3F9"}.fa-surprise:before{content:"\F5C2"}.fa-suse:before{content:"\F7D6"}.fa-swatchbook:before{content:"\F5C3"}.fa-swift:before{content:"\F8E1"}.fa-swimmer:before{content:"\F5C4"}.fa-swimming-pool:before{content:"\F5C5"}.fa-symfony:before{content:"\F83D"}.fa-synagogue:before{content:"\F69B"}.fa-sync:before{content:"\F021"}.fa-sync-alt:before{content:"\F2F1"}.fa-syringe:before{content:"\F48E"}.fa-table:before{content:"\F0CE"}.fa-table-tennis:before{content:"\F45D"}.fa-tablet:before{content:"\F10A"}.fa-tablet-alt:before{content:"\F3FA"}.fa-tablets:before{content:"\F490"}.fa-tachometer-alt:before{content:"\F3FD"}.fa-tag:before{content:"\F02B"}.fa-tags:before{content:"\F02C"}.fa-tape:before{content:"\F4DB"}.fa-tasks:before{content:"\F0AE"}.fa-taxi:before{content:"\F1BA"}.fa-teamspeak:before{content:"\F4F9"}.fa-teeth:before{content:"\F62E"}.fa-teeth-open:before{content:"\F62F"}.fa-telegram:before{content:"\F2C6"}.fa-telegram-plane:before{content:"\F3FE"}.fa-temperature-high:before{content:"\F769"}.fa-temperature-low:before{content:"\F76B"}.fa-tencent-weibo:before{content:"\F1D5"}.fa-tenge:before{content:"\F7D7"}.fa-terminal:before{content:"\F120"}.fa-text-height:before{content:"\F034"}.fa-text-width:before{content:"\F035"}.fa-th:before{content:"\F00A"}.fa-th-large:before{content:"\F009"}.fa-th-list:before{content:"\F00B"}.fa-the-red-yeti:before{content:"\F69D"}.fa-theater-masks:before{content:"\F630"}.fa-themeco:before{content:"\F5C6"}.fa-themeisle:before{content:"\F2B2"}.fa-thermometer:before{content:"\F491"}.fa-thermometer-empty:before{content:"\F2CB"}.fa-thermometer-full:before{content:"\F2C7"}.fa-thermometer-half:before{content:"\F2C9"}.fa-thermometer-quarter:before{content:"\F2CA"}.fa-thermometer-three-quarters:before{content:"\F2C8"}.fa-think-peaks:before{content:"\F731"}.fa-thumbs-down:before{content:"\F165"}.fa-thumbs-up:before{content:"\F164"}.fa-thumbtack:before{content:"\F08D"}.fa-ticket-alt:before{content:"\F3FF"}.fa-times:before{content:"\F00D"}.fa-times-circle:before{content:"\F057"}.fa-tint:before{content:"\F043"}.fa-tint-slash:before{content:"\F5C7"}.fa-tired:before{content:"\F5C8"}.fa-toggle-off:before{content:"\F204"}.fa-toggle-on:before{content:"\F205"}.fa-toilet:before{content:"\F7D8"}.fa-toilet-paper:before{content:"\F71E"}.fa-toolbox:before{content:"\F552"}.fa-tools:before{content:"\F7D9"}.fa-tooth:before{content:"\F5C9"}.fa-torah:before{content:"\F6A0"}.fa-torii-gate:before{content:"\F6A1"}.fa-tractor:before{content:"\F722"}.fa-trade-federation:before{content:"\F513"}.fa-trademark:before{content:"\F25C"}.fa-traffic-light:before{content:"\F637"}.fa-trailer:before{content:"\F941"}.fa-train:before{content:"\F238"}.fa-tram:before{content:"\F7DA"}.fa-transgender:before{content:"\F224"}.fa-transgender-alt:before{content:"\F225"}.fa-trash:before{content:"\F1F8"}.fa-trash-alt:before{content:"\F2ED"}.fa-trash-restore:before{content:"\F829"}.fa-trash-restore-alt:before{content:"\F82A"}.fa-tree:before{content:"\F1BB"}.fa-trello:before{content:"\F181"}.fa-tripadvisor:before{content:"\F262"}.fa-trophy:before{content:"\F091"}.fa-truck:before{content:"\F0D1"}.fa-truck-loading:before{content:"\F4DE"}.fa-truck-monster:before{content:"\F63B"}.fa-truck-moving:before{content:"\F4DF"}.fa-truck-pickup:before{content:"\F63C"}.fa-tshirt:before{content:"\F553"}.fa-tty:before{content:"\F1E4"}.fa-tumblr:before{content:"\F173"}.fa-tumblr-square:before{content:"\F174"}.fa-tv:before{content:"\F26C"}.fa-twitch:before{content:"\F1E8"}.fa-twitter:before{content:"\F099"}.fa-twitter-square:before{content:"\F081"}.fa-typo3:before{content:"\F42B"}.fa-uber:before{content:"\F402"}.fa-ubuntu:before{content:"\F7DF"}.fa-uikit:before{content:"\F403"}.fa-umbraco:before{content:"\F8E8"}.fa-umbrella:before{content:"\F0E9"}.fa-umbrella-beach:before{content:"\F5CA"}.fa-underline:before{content:"\F0CD"}.fa-undo:before{content:"\F0E2"}.fa-undo-alt:before{content:"\F2EA"}.fa-uniregistry:before{content:"\F404"}.fa-unity:before{content:"\F949"}.fa-universal-access:before{content:"\F29A"}.fa-university:before{content:"\F19C"}.fa-unlink:before{content:"\F127"}.fa-unlock:before{content:"\F09C"}.fa-unlock-alt:before{content:"\F13E"}.fa-untappd:before{content:"\F405"}.fa-upload:before{content:"\F093"}.fa-ups:before{content:"\F7E0"}.fa-usb:before{content:"\F287"}.fa-user:before{content:"\F007"}.fa-user-alt:before{content:"\F406"}.fa-user-alt-slash:before{content:"\F4FA"}.fa-user-astronaut:before{content:"\F4FB"}.fa-user-check:before{content:"\F4FC"}.fa-user-circle:before{content:"\F2BD"}.fa-user-clock:before{content:"\F4FD"}.fa-user-cog:before{content:"\F4FE"}.fa-user-edit:before{content:"\F4FF"}.fa-user-friends:before{content:"\F500"}.fa-user-graduate:before{content:"\F501"}.fa-user-injured:before{content:"\F728"}.fa-user-lock:before{content:"\F502"}.fa-user-md:before{content:"\F0F0"}.fa-user-minus:before{content:"\F503"}.fa-user-ninja:before{content:"\F504"}.fa-user-nurse:before{content:"\F82F"}.fa-user-plus:before{content:"\F234"}.fa-user-secret:before{content:"\F21B"}.fa-user-shield:before{content:"\F505"}.fa-user-slash:before{content:"\F506"}.fa-user-tag:before{content:"\F507"}.fa-user-tie:before{content:"\F508"}.fa-user-times:before{content:"\F235"}.fa-users:before{content:"\F0C0"}.fa-users-cog:before{content:"\F509"}.fa-usps:before{content:"\F7E1"}.fa-ussunnah:before{content:"\F407"}.fa-utensil-spoon:before{content:"\F2E5"}.fa-utensils:before{content:"\F2E7"}.fa-vaadin:before{content:"\F408"}.fa-vector-square:before{content:"\F5CB"}.fa-venus:before{content:"\F221"}.fa-venus-double:before{content:"\F226"}.fa-venus-mars:before{content:"\F228"}.fa-viacoin:before{content:"\F237"}.fa-viadeo:before{content:"\F2A9"}.fa-viadeo-square:before{content:"\F2AA"}.fa-vial:before{content:"\F492"}.fa-vials:before{content:"\F493"}.fa-viber:before{content:"\F409"}.fa-video:before{content:"\F03D"}.fa-video-slash:before{content:"\F4E2"}.fa-vihara:before{content:"\F6A7"}.fa-vimeo:before{content:"\F40A"}.fa-vimeo-square:before{content:"\F194"}.fa-vimeo-v:before{content:"\F27D"}.fa-vine:before{content:"\F1CA"}.fa-vk:before{content:"\F189"}.fa-vnv:before{content:"\F40B"}.fa-voicemail:before{content:"\F897"}.fa-volleyball-ball:before{content:"\F45F"}.fa-volume-down:before{content:"\F027"}.fa-volume-mute:before{content:"\F6A9"}.fa-volume-off:before{content:"\F026"}.fa-volume-up:before{content:"\F028"}.fa-vote-yea:before{content:"\F772"}.fa-vr-cardboard:before{content:"\F729"}.fa-vuejs:before{content:"\F41F"}.fa-walking:before{content:"\F554"}.fa-wallet:before{content:"\F555"}.fa-warehouse:before{content:"\F494"}.fa-water:before{content:"\F773"}.fa-wave-square:before{content:"\F83E"}.fa-waze:before{content:"\F83F"}.fa-weebly:before{content:"\F5CC"}.fa-weibo:before{content:"\F18A"}.fa-weight:before{content:"\F496"}.fa-weight-hanging:before{content:"\F5CD"}.fa-weixin:before{content:"\F1D7"}.fa-whatsapp:before{content:"\F232"}.fa-whatsapp-square:before{content:"\F40C"}.fa-wheelchair:before{content:"\F193"}.fa-whmcs:before{content:"\F40D"}.fa-wifi:before{content:"\F1EB"}.fa-wikipedia-w:before{content:"\F266"}.fa-wind:before{content:"\F72E"}.fa-window-close:before{content:"\F410"}.fa-window-maximize:before{content:"\F2D0"}.fa-window-minimize:before{content:"\F2D1"}.fa-window-restore:before{content:"\F2D2"}.fa-windows:before{content:"\F17A"}.fa-wine-bottle:before{content:"\F72F"}.fa-wine-glass:before{content:"\F4E3"}.fa-wine-glass-alt:before{content:"\F5CE"}.fa-wix:before{content:"\F5CF"}.fa-wizards-of-the-coast:before{content:"\F730"}.fa-wolf-pack-battalion:before{content:"\F514"}.fa-won-sign:before{content:"\F159"}.fa-wordpress:before{content:"\F19A"}.fa-wordpress-simple:before{content:"\F411"}.fa-wpbeginner:before{content:"\F297"}.fa-wpexplorer:before{content:"\F2DE"}.fa-wpforms:before{content:"\F298"}.fa-wpressr:before{content:"\F3E4"}.fa-wrench:before{content:"\F0AD"}.fa-x-ray:before{content:"\F497"}.fa-xbox:before{content:"\F412"}.fa-xing:before{content:"\F168"}.fa-xing-square:before{content:"\F169"}.fa-y-combinator:before{content:"\F23B"}.fa-yahoo:before{content:"\F19E"}.fa-yammer:before{content:"\F840"}.fa-yandex:before{content:"\F413"}.fa-yandex-international:before{content:"\F414"}.fa-yarn:before{content:"\F7E3"}.fa-yelp:before{content:"\F1E9"}.fa-yen-sign:before{content:"\F157"}.fa-yin-yang:before{content:"\F6AD"}.fa-yoast:before{content:"\F2B1"}.fa-youtube:before{content:"\F167"}.fa-youtube-square:before{content:"\F431"}.fa-zhihu:before{content:"\F63F"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:Font Awesome\ 5 Brands;font-style:normal;font-weight:400;font-display:auto;src:url(/openj9/static/fa-brands-400-57dcda6f368ea90179f75cbdae96c263.eot);src:url(/openj9/static/fa-brands-400-57dcda6f368ea90179f75cbdae96c263.eot?#iefix) format("embedded-opentype"),url(/openj9/static/fa-brands-400-067595ad77ecc0db9c81c8905a7eef32.woff2) format("woff2"),url(/openj9/static/fa-brands-400-b564da88bbf0c4aa446fa19653713cd1.woff) format("woff"),url(/openj9/static/fa-brands-400-9ec698d1a597bff5df337094b71ddaaf.ttf) format("truetype"),url(/openj9/static/fa-brands-400-9d67fa1429375bd2a899a17eb77d0342.svg#fontawesome) format("svg")}.fab{font-family:Font Awesome\ 5 Brands}@font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:400;font-display:auto;src:url(/openj9/static/fa-regular-400-3351f435b3c9037fd88aeb04dc1e43bc.eot);src:url(/openj9/static/fa-regular-400-3351f435b3c9037fd88aeb04dc1e43bc.eot?#iefix) format("embedded-opentype"),url(/openj9/static/fa-regular-400-4165c2688309cbfb1b877caf8f75afb5.woff2) format("woff2"),url(/openj9/static/fa-regular-400-73cf49a2232c06c920b7a34e36bfb58c.woff) format("woff"),url(/openj9/static/fa-regular-400-a0e3ac82940c1998c5977fd4bc1f5ef6.ttf) format("truetype"),url(/openj9/static/fa-regular-400-5d0861781aeef6c82fda3a3076954a1b.svg#fontawesome) format("svg")}.fab,.far{font-weight:400}@font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:900;font-display:auto;src:url(/openj9/static/fa-solid-900-89e02bae13c9131c7468b1e729339ac1.eot);src:url(/openj9/static/fa-solid-900-89e02bae13c9131c7468b1e729339ac1.eot?#iefix) format("embedded-opentype"),url(/openj9/static/fa-solid-900-55eb2a60e8181f0e68b558c991973bf0.woff2) format("woff2"),url(/openj9/static/fa-solid-900-cdfec5cf5e9840889790bcf2c4042583.woff) format("woff"),url(/openj9/static/fa-solid-900-75f38a159982b6bd1704891332d95fa7.ttf) format("truetype"),url(/openj9/static/fa-solid-900-0724bb8b89ab6b8b9b7df917b17be0b7.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:Font Awesome\ 5 Free}.fa,.fas{font-weight:900}</style><meta name="generator" content="Gatsby 2.19.7"/><link rel="icon" href="/openj9/favicon-32x32.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="manifest" href="/openj9/manifest.webmanifest"/><link rel="apple-touch-icon" sizes="48x48" href="/openj9/icons/icon-48x48.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="72x72" href="/openj9/icons/icon-72x72.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="96x96" href="/openj9/icons/icon-96x96.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="144x144" href="/openj9/icons/icon-144x144.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="192x192" href="/openj9/icons/icon-192x192.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="256x256" href="/openj9/icons/icon-256x256.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="384x384" href="/openj9/icons/icon-384x384.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="512x512" href="/openj9/icons/icon-512x512.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="preconnect dns-prefetch" href="https://www.google-analytics.com"/><link as="script" rel="preload" href="/openj9/component---src-pages-about-js-bab73d486dc0b5e1a35a.js"/><link as="script" rel="preload" href="/openj9/commons-13bc6123f79d93bf5635.js"/><link as="script" rel="preload" href="/openj9/app-2da2270a07d62743bcd4.js"/><link as="script" rel="preload" href="/openj9/styles-cc4082ebb0cb6903d934.js"/><link as="script" rel="preload" href="/openj9/webpack-runtime-01e9e8dadfdfd12d2817.js"/><link as="fetch" rel="preload" href="/openj9/page-data/about/page-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" role="group" id="gatsby-focus-wrapper"><style data-emotion-css="t923zi">body{color:text;background-color:var(--theme-ui-colors-background,#FFFFFF);}</style><style data-emotion-css="1gb9wyy">*{box-sizing:border-box;}body{margin:0;font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.5;font-weight:400;}</style><style data-emotion-css="1xgro3h">*{padding:0;margin:0;}</style><style data-emotion-css="gns71q">.css-gns71q{display:none;background-color:var(--theme-ui-colors-primary,#434343);width:100%;color:var(--theme-ui-colors-lightText,#d8d8d8);padding-left:40px;padding-right:40px;padding-top:32px;padding-bottom:32px;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}@media screen and (min-width:35rem){.css-gns71q{display:none;}}@media screen and (min-width:62.5rem){.css-gns71q{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}}@media screen and (min-width:85rem){.css-gns71q{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}}</style><header class="css-gns71q"><style data-emotion-css="4golyb">.css-4golyb{-webkit-flex:1;-ms-flex:1;flex:1;opacity:1;pointer-events:all;}</style><div class="css-4golyb"><a href="/openj9/"><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNzlweCIgaGVpZ2h0PSIzM3B4IiB2aWV3Qm94PSIwIDAgNzkgMzMiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5Mb2dvPC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IkxvZ28iIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik0xMC4wNDUyMzE4LDE5LjQ2MTIzMzcgQzkuMjQwNjc1MjUsMjAuNjk4NDMyOCA4LjEyNjE5NTA0LDIxLjMxNjY4NzggNi43MDA3Nzc4OSwyMS4zMTY2ODc4IEM1LjMxNTQ1ODI5LDIxLjMxNjY4NzggNC4yMDg2NTAxNywyMC43MTkxMTAzIDMuMzgwMjA4NzgsMTkuNTIzODE3NCBDMi41NTIyMDE2NiwxOC4zMjgyNDg5IDIuMTM4MDUzMzUsMTYuNzc4NDA3MSAyLjEzODA1MzM1LDE0Ljg3MzMyNzMgQzIuMTM4MDUzMzUsMTIuOTIyNzU3MSAyLjU0ODE0ODQ4LDExLjM0Mzk2NyAzLjM2ODMzODc1LDEwLjEzNzIzMjYgQzQuMTg4NjczNzgsOC45MzA2MzYxMiA1LjI5NTE5MjM4LDguMzI2OTkzMjQgNi42ODg3NjMxLDguMzI2OTkzMjQgQzguMDY2NTU1MzcsOC4zMjY5OTMyNCA5LjE3MTE5MjE0LDguODg1MjgzNjUgMTAuMDAzMzk3MiwxMC4wMDA0ODYgQzEwLjgzNTYwMjMsMTEuMTE2Mzc3NSAxMS4yNTE3NzcyLDEyLjY3NjI4MjIgMTEuMjUxNzc3MiwxNC42Nzk2NDg4IEMxMS4yNTE3NzcyLDE2LjYzMDM1NjggMTAuODQ5NDk4OSwxOC4yMjQxNzI1IDEwLjA0NTIzMTgsMTkuNDYxMjMzNyBNNi43MTI3OTI2OCw2LjczNDY5Mzg4IEM0LjY5MDExMDI1LDYuNzM0NjkzODggMy4wNjU2NTI5Myw3LjUwMTQxMjcgMS44MzkyNzU5NSw5LjAzNDAyMzI0IEMwLjYxMzE4ODQ4OSwxMC41NjY3NzE2IDAsMTIuNTA5NDg0NCAwLDE0Ljg2MTg4NTggQzAsMTcuMTE1NzI0OCAwLjU4NTM5NTI0MywxOS4wMTg1OTkxIDEuNzU2MDQwOTcsMjAuNTcwMDk1IEMyLjkyNjU0MTk1LDIyLjEyMjAwNDQgNC41NTg4MTYxMiwyMi44OTc5NTkyIDYuNjUzMDA4MjUsMjIuODk3OTU5MiBDOC43NzkxOTE1NywyMi44OTc5NTkyIDEwLjQzMzQ2ODcsMjIuMDgwMDk4MiAxMS42MTYyNzQsMjAuNDQ1MDY1NSBDMTIuNzk4NTAwMiwxOC44MDk3NTcxIDEzLjM4OTgzMDUsMTYuODkxNDQzNyAxMy4zODk4MzA1LDE0LjY5MTIyODEgQzEzLjM4OTgzMDUsMTIuMzk5NjE4MyAxMi43ODA1NTA0LDEwLjUwMDQ2NiAxMS41NjIyNzk4LDguOTkzOTA5MDQgQzEwLjM0Mzg2NDUsNy40ODgwNDEzIDguNzI3MzY4NzQsNi43MzQ2OTM4OCA2LjcxMjc5MjY4LDYuNzM0NjkzODgiIGlkPSJTaGFwZSIgZmlsbD0iIzVEQTdBMyI+PC9wYXRoPgogICAgICAgICAgICA8cGF0aCBkPSJNMjIuOTc0MzgxNywyMS4zNjc1NDcyIEMyMi4zMTQxOTk5LDIyLjA3MDg5MDkgMjEuNTU1MzY4NiwyMi40MjMxMzExIDIwLjY5OTU0OTUsMjIuNDIzMTMxMSBDMTkuOTYwMDU1MywyMi40MjMxMzExIDE5LjI1MDkyNjQsMjIuMTMwOTk0OCAxOC41Njk3NDU3LDIxLjU0NjU4MDEgQzE3Ljg4ODI2MjksMjAuOTYzMDE3OSAxNy41MTMzMDM4LDIwLjIyMzAxNTEgMTcuMzYyMjMyNSwxOS4zMjc5OTI0IEwxNy4zNjIyMzI1LDE1Ljk4NjA0NCBDMTcuNjY0Mzc1MiwxNS4xNzMxNDkxIDE3Ljk2OTM4ODIsMTQuNDgxNDU2OCAxOC41ODg0Nzg2LDEzLjkxMDk2NjggQzE5LjIwNzU2ODksMTMuMzQwNDc2OSAxOS45MDY3MjcxLDEzLjA1NTE2MDkgMjAuNjg3OTE3LDEzLjA1NTE2MDkgQzIxLjY3NjgzLDEzLjA1NTE2MDkgMjIuNDcwNDA3NywxMy40NTk2OTAxIDIzLjA2ODgwMTMsMTQuMjY4NjA2NSBDMjMuNjY2ODkyNywxNS4wNzc1MjI4IDIzLjk2NjAxNCwxNi4yMjg0NDg5IDIzLjk2NjAxNCwxNy43MjE1MjY5IEMyMy45NjYwMTQsMTkuNDQ4OTEwNyAyMy42MzUxNjc3LDIwLjY2NDYyOTcgMjIuOTc0MzgxNywyMS4zNjc1NDcyIE0yMS4xNjI3MzQyLDExLjQ0ODk3OTYgQzE5LjQwMzM1NzQsMTEuNDQ4OTc5NiAxOC4xMTc1ODkyLDEyLjMyNDUzNiAxNy4yMTExNjEyLDE0LjA3NDc5NjIgTDE3LjIxMTE2MTIsMTEuNjk4MjA0OCBMMTUuMzk4MzA1MSwxMS42OTgyMDQ4IEwxNS4zOTgzMDUxLDI3LjYxMjI0NDkgTDE3LjM2MjIzMjUsMjcuNjEyMjQ0OSBMMTcuMzYyMjMyNSwyMS44MjQ5MzM3IEMxOC4yNjg2NjA1LDIzLjIzOTQzNjEgMTkuNTA4OTU2MiwyMy45NDcwNDI1IDIxLjA4NzY1MTcsMjMuOTQ3MDQyNSBDMjIuNTU4OTM1NSwyMy45NDcwNDI1IDIzLjc2MjgyMywyMy4zNzk2Nzg2IDI0LjcwMjAzMzUsMjIuMjQ1NTE5MSBDMjUuNjQwNzkwOCwyMS4xMTA3OTEyIDI2LjExMDE2OTUsMTkuNTc3NTAxOCAyNi4xMTAxNjk1LDE3LjY0NTM2NjkgQzI2LjExMDE2OTUsMTUuODUzNDc0NCAyNS42NjI5OTgzLDE0LjM3MjkwMDMgMjQuNzUwNTI3NCwxMy4yMDMzNjA0IEMyMy44Mzc2MDMzLDEyLjAzMzY3ODUgMjIuNjQ4MDY3NiwxMS40NDg5Nzk2IDIxLjE2MjczNDIsMTEuNDQ4OTc5NiIgaWQ9IlNoYXBlIiBmaWxsPSIjNURBN0EzIj48L3BhdGg+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik0zMC4yNjM1ODc2LDE2LjM2MzMzNjcgQzMwLjM0MTcwNzYsMTUuMjU4OTg2OCAzMC43MDEzMTY2LDE0LjQwODM2MTMgMzEuMzQxNzAwNiwxMy43NzA0NjExIEMzMS45ODE2NTYxLDEzLjEzMjQyMyAzMi43NjE0Mjc5LDEyLjgwNDAxNjkgMzMuNjgwNzMwMiwxMi44MDQwMTY5IEMzNC4zNjQxMDE2LDEyLjgwNDAxNjkgMzQuOTQ5MDczMiwxMi45NzU3NDMzIDM1LjQzNjUwMiwxMy4zMjkxMzUzIEMzNS45MjM1MDIzLDEzLjY4MTk3NTEgMzYuMjY5NDAxLDE0LjEyNTc4NTcgMzYuNDczNDg0MSwxNC42MjcwMjI1IEMzNi42NzgxMzg1LDE1LjEyODEyMTMgMzYuNzg3NTM1MSwxNS42NzMxMTggMzYuODAzMzg3NiwxNi4zNjMzMzY3IEwzMC4yNjM1ODc2LDE2LjM2MzMzNjcgWiBNMzcuMzc1MjIwMiwxMy4wMzA2ODQ4IEMzNi40MjgzNTQ1LDExLjk5MDI0OTEgMzUuMTc3NDM1LDExLjQ0ODk3OTYgMzMuNjIxNzQ3NSwxMS40NDg5Nzk2IEMzMi4wNDI5MjM5LDExLjQ0ODk3OTYgMzAuNzMwNTkzOCwxMi4wMDI1MzUgMjkuNjg2MDQyNCwxMy4xMzE0NTY3IEMyOC42NDEyMDU0LDE0LjI1OTgyNjIgMjguMTE4NjQ0MSwxNS43MzQ5NjE2IDI4LjExODY0NDEsMTcuNTY2OTQwMSBDMjguMTE4NjQ0MSwxOS4zNjA4MTg0IDI4LjYyMTA2ODQsMjAuODA3Mzc4OCAyOS42MjY5MTY4LDIxLjkxMzM4NTIgQzMwLjYzMjQ3OTYsMjMuMDE5OTQzOCAzMS45NDg1MjMsMjMuNTcxNDI4NiAzMy41NzQ5MDQsMjMuNTcxNDI4NiBDMzQuODA4MjU3MywyMy41NzE0Mjg2IDM1Ljg4MDIyOTIsMjMuMjQ4OTU4NCAzNi43OTE1MzM5LDIyLjYwNDcwODMgQzM3LjcwMzEyNDIsMjEuOTYwNzM0MiAzOC4zMTU4MDIsMjEuMTQ3MzgwNSAzOC42MzAxMzg2LDIwLjE2NDA5NSBMMzYuOTA5OTI3OCwxOS44MjI3MTI4IEMzNi4yODg5NjY3LDIxLjMzMzQ2MzUgMzUuMjIwNTY1MiwyMi4wODkyNTI5IDMzLjcwNDI5NDcsMjIuMDg5MjUyOSBDMzIuODYzNjgzNywyMi4wODkyNTI5IDMyLjA2NjM0NTYsMjEuODI4MDc0MiAzMS4zMTIyODA3LDIxLjIyMDY4MTcgQzMwLjU1ODA3MjksMjAuNjEzMDEzMiAzMC4xODA3NTQ3LDE5LjQwMDI5OSAzMC4xODA3NTQ3LDE3Ljc0Mzc3NDEgTDM4LjgzMDUwODUsMTcuNzQzNzc0MSBDMzguODA2OTQzOSwxNS41MzUwNzQzIDM4LjMyMTgwMDIsMTQuMDcwODQ0MyAzNy4zNzUyMjAyLDEzLjAzMDY4NDggTDM3LjM3NTIyMDIsMTMuMDMwNjg0OCBaIiBpZD0iU2hhcGUiIGZpbGw9IiM1REE3QTMiPjwvcGF0aD4KICAgICAgICAgICAgPHBhdGggZD0iTTQ4LjQzNjA2MzksMTIuMTMxMzMxIEM0Ny43NjA0NDM5LDExLjY3NjU3MTQgNDYuOTE5MzU2NiwxMS40NDg5Nzk2IDQ1Ljk1ODg0MjIsMTEuNDQ4OTc5NiBDNDQuMjkzMDQ0MywxMS40NDg5Nzk2IDQyLjk1MDQ1NjMsMTIuMjgxMTc0IDQxLjg2ODk3LDEzLjk0NTEzODggTDQxLjg2ODk3LDExLjY5NzA2ODggTDQwLjE2OTQ5MTUsMTEuNjk3MDY4OCBMNDAuMTY5NDkxNSwyMy41NzE0Mjg2IEw0Mi4wMjM0NjgxLDIzLjU3MTQyODYgTDQyLjAyMzQ2ODEsMTcuMDk0Mzg3NSBDNDIuMDIzNDY4MSwxNS44NzQwMTQ3IDQyLjM4NTkyMDUsMTQuODg5OTk4MiA0My4wNzg1MzUyLDE0LjE0MzE4NiBDNDMuNzcwNjg2NCwxMy4zOTY3OTggNDQuNjM1NDEyLDEzLjAyMzYwNCA0NS42NTUwOTkxLDEzLjAyMzYwNCBDNDYuMzk0NjgxMiwxMy4wMjM2MDQgNDcuMDQyODAwNSwxMy4yNDUyNTg2IDQ3LjU2MTE0MTUsMTMuNjg4NTY3OSBDNDguMDc5NjM2OSwxNC4xMzE1OTQ0IDQ4LjM1Nzg4NzksMTQuODk3NjMxNyA0OC4zNTc4ODc5LDE1Ljk4NjUzODQgTDQ4LjM1Nzg4NzksMjMuNTcxNDI4NiBMNTAuMjExODY0NCwyMy41NzE0Mjg2IEw1MC4yMTE4NjQ0LDE2Ljc0NDUxODEgQzUwLjIxMTg2NDQsMTUuMjU5Mzc1NSA1MC4wODE0NjgxLDE0LjIzMzA5MTkgNDkuODMwNDA4NywxMy42NjUyNDMyIEM0OS41Nzk2NTg0LDEzLjA5NzM5NDYgNDkuMTExODM4MywxMi41ODYwOTA1IDQ4LjQzNjA2MzksMTIuMTMxMzMxIFoiIGlkPSJTaGFwZSIgZmlsbD0iIzVEQTdBMyI+PC9wYXRoPgogICAgICAgICAgICA8cGF0aCBkPSJNNTcuNzMyOTYwNywxOS4zMjIyNzI0IEM1Ny43MzI5NjA3LDIwLjIxNjkxMjkgNTcuNjY0MDE3MywyMC44NjM1NjU5IDU3LjUyOTgzNDEsMjEuMjYzMjQ2NCBDNTcuMzk1MjIzNiwyMS42NjI0OTE5IDU3LjEzMTQxNTQsMjEuOTg3NjMxMSA1Ni43Mzk0MDY4LDIyLjIzOTM4OTIgQzU2LjM0NzY4MywyMi40OTA4NTczIDU1LjY5NjI4MiwyMi42MTYxNTYzIDU0Ljg2OTM4ODcsMjIuNjE2MTU2MyBDNTQuMjg4MDcwNywyMi42MTYxNTYzIDUzLjc0NDUwMDUsMjIuNTM4NTY5NSA1Mi44ODk4MzA1LDIyLjM4MzI1MSBMNTIuODg5ODMwNSwyMy45MzQ2OTYgQzUzLjc0NDUwMDUsMjQuMTQxMjA3MyA1NC4zNzg4MDgyLDI0LjI0NDg5OCA1NS4wOTc0NDMyLDI0LjI0NDg5OCBDNTYuNDM5NTYsMjQuMjQ0ODk4IDU3LjUzNTEwNDYsMjMuODgyNDg4MSA1OC4zNDc4OTU4LDIzLjE1ODM5MzQgQzU5LjE2MDQwMjEsMjIuNDMzODYzNyA1OS41ODQ3NDU4LDIxLjE1NDkxNSA1OS41ODQ3NDU4LDE5LjMyMTExMjMgTDU5LjU4NDc0NTgsOC43NTUxMDIwNCBMNTcuNzMyOTYwNyw4Ljc1NTEwMjA0IEw1Ny43MzI5NjA3LDE5LjMyMjI3MjQgWiIgaWQ9IlNoYXBlIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik02OS4yNDA4MTE5LDE2LjIyNTg5MDQgQzY4LjU2Njc1NzgsMTYuOTQyNzI2NiA2Ny43MzIxNTUyLDE3LjMwMTIxNiA2Ni43Mzc0MTk4LDE3LjMwMTIxNiBDNjUuODMzODMyNiwxNy4zMDEyMTYgNjUuMDQyMDMzNywxNi45OTE5NDIyIDY0LjM2MTA1MzQsMTYuMzczNTM3MyBDNjMuNjgwMjExNiwxNS43NTQ3MDQzIDYzLjMzOTcyMTUsMTQuOTE0MTg3MiA2My4zMzk3MjE1LDEzLjg1MTI3MjQgQzYzLjMzOTcyMTUsMTIuODYxOTY3MiA2My42NDY4Mjc1LDEyLjAyMjQ0ODUgNjQuMjYwNzYyNiwxMS4zMzQ5OTkxIEM2NC44NzQxNDM1LDEwLjY0NzEyMTYgNjUuNzEwNDA4NCwxMC4zMDMzMjU2IDY2Ljc2OTAwMzEsMTAuMzAzMzI1NiBDNjcuODEzMzI5OCwxMC4zMDMzMjU2IDY4LjY1NDk5NzEsMTAuNjM3ODQ5MSA2OS4yOTM0NTA4LDExLjMwNzYwOTUgQzY5LjkzMjE4MTUsMTEuOTc3MjI3MiA3MC4yNTE0Nzc2LDEyLjc3ODA4NjYgNzAuMjUxNDc3NiwxMy43MDkzMzE3IEM3MC4yNTE0Nzc2LDE0LjY3MDEwNjIgNjkuOTE0MzEyLDE1LjUwOTA1NDIgNjkuMjQwODExOSwxNi4yMjU4OTA0IE03MC44NTQ3NDYzLDEwLjcyNDE1NDggQzY5Ljg4ODI2OTYsOS40MTIwMjM1NyA2OC40OTgwNTAzLDguNzU1MTAyMDQgNjYuNjg0MjI2OCw4Ljc1NTEwMjA0IEM2NS4yMDI1ODIxLDguNzU1MTAyMDQgNjMuOTgzNDM5LDkuMjU3MjQ0MDEgNjMuMDI3NDkwMSwxMC4yNjExIEM2Mi4wNzA5ODcsMTEuMjY1MjQxMyA2MS41OTMyMjAzLDEyLjQ3MjgwNzEgNjEuNTkzMjIwMywxMy44ODQyMjU1IEM2MS41OTMyMjAzLDE1LjI3MzgxNzggNjIuMDQ3OTkyMiwxNi40Mzk1ODYgNjIuOTU4MzY3LDE3LjM4MTY3MjkgQzYzLjg2ODg4MDMsMTguMzIzNjE3IDY0Ljk5NDI0MzIsMTguNzk0ODAzMSA2Ni4zMzQ3MzI3LDE4Ljc5NDgwMzEgQzY4LjIzMzA1NTMsMTguNzk0ODAzMSA2OS42NTUxMzUsMTcuOTAwNzkwNiA3MC42MDA4MzMyLDE2LjExMzA1MTEgQzcwLjU3OTUwMDYsMTguMTU1MTQyNyA3MC4yMjEyNzk1LDE5Ljc3MjI2ODEgNjkuNTI2NTg1NCwyMC45NjM5OTkzIEM2OC44MzEzMzcyLDIyLjE1NjAxNTkgNjcuNzk1ODc1OSwyMi43NTE0NTM2IDY2LjQxOTUwODksMjIuNzUxNDUzNiBDNjUuMDAxNTg0OSwyMi43NTE0NTM2IDYzLjk5MjMwNDUsMjIuMDY1MDAyNyA2My4zOTIzNjAzLDIwLjY5MTM4NzYgTDYxLjk0MjI5ODksMjEuMjM2NjExMSBDNjIuNzA0MTc2OCwyMy4yNDIxODMyIDY0LjE4OTU2MTYsMjQuMjQ0ODk4IDY2LjM5ODczMDQsMjQuMjQ0ODk4IEM2OC4yODk0MzQyLDI0LjI0NDg5OCA2OS43NDY5NzU5LDIzLjQ5NzgxOTEgNzAuNzcwMTA4NiwyMi4wMDM1MTg4IEM3MS43OTMyNDEzLDIwLjUwOTA3NTggNzIuMzA1MDg0NywxOC41NTQ1NzM4IDcyLjMwNTA4NDcsMTYuMTQwMDEyNyBDNzIuMzA1MDg0NywxMy44NDIxNDI2IDcxLjgyMTYzODYsMTIuMDM2ODU2NiA3MC44NTQ3NDYzLDEwLjcyNDE1NDgiIGlkPSJTaGFwZSIgZmlsbD0iI0ZGRkZGRiI+PC9wYXRoPgogICAgICAgICAgICA8cGF0aCBkPSJNNDguODQzNzkwMSwyNC42NDQ3MTU3IEM0OS41NDM5Mzk0LDI1LjkwNTU0OTIgNTAuNDE5NDA5OCwyNy4wOTIxMjI5IDUxLjQ3MDIwMTMsMjguMTY3MjQ1MyBDNTcuNzY4MDE2NSwzNC42MTA5MTgyIDY3Ljk3ODc5MjcsMzQuNjEwOTE4MiA3NC4yNzY2MDc5LDI4LjE2NzI0NTMgQzgwLjU3NDQ2NCwyMS43MjM2MDAzIDgwLjU3NDQ2NCwxMS4yNzY0MDE4IDc0LjI3NjYwNzksNC44MzI3NTY4MyBDNjcuOTc4NzkyNywtMS42MTA5MTg5NCA1Ny43NjgwMTY1LC0xLjYxMDkxODk0IDUxLjQ3MDIwMTMsNC44MzI3NTY4MyBDNDkuNjA2NzAxNiw2LjczOTM5NzA0IDQ4LjI5NDU5ODMsOC45OTY1NjQ4MyA0Ny41MzM4OTgzLDExLjM5NjgyMjkgTDQ4LjM3MDI2NzIsMTEuNzc3ODE5NiBDNDkuMDgzNDMyNSw5LjQ3ODI5OTU2IDUwLjMzMTIyMjcsNy4zMTQ3NjEyMiA1Mi4xMTM2MzM1LDUuNDkxMDg4OTIgQzU4LjA1NjA5NDgsLTAuNTg4OTk5Mjg4IDY3LjY5MDcyMTIsLTAuNTg4OTk5Mjg4IDczLjYzMzE3NTcsNS40OTEwODg5MiBDNzkuNTc1NjcxMiwxMS41NzExNDM2IDc5LjU3NTY3MTIsMjEuNDI4ODU1NyA3My42MzMxNzU3LDI3LjUwODkxNDYgQzY3LjY5MDcyMTIsMzMuNTg4OTkzIDU4LjA1NjA5NDgsMzMuNTg4OTkzIDUyLjExMzYzMzUsMjcuNTA4OTE0NiBDNTEuMTQ0MDY3NywyNi41MTY4OTg3IDUwLjMzMjY5OTgsMjUuNDI0MzI2NyA0OS42Nzk1MTYxLDI0LjI2NDAwNzMgTDQ4Ljg0Mzc5MDEsMjQuNjQ0NzE1NyBaIiBpZD0iU2hhcGUiIGZpbGw9IiM1REE3QTMiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==" alt="OpenJ9 Logo"/></a></div><style data-emotion-css="kzfr2u">.css-kzfr2u{-webkit-flex:2;-ms-flex:2;flex:2;}</style><nav class="css-kzfr2u"><style data-emotion-css="d1fq55">.css-d1fq55{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;list-style:none;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;}.css-d1fq55 li{padding:8px;margin-left:8px;margin-right:8px;}.css-d1fq55 li a{color:white;-webkit-text-decoration:none;text-decoration:none;}.css-d1fq55 li a:hover{color:var(--theme-ui-colors-links,#5DA7A3);}.css-d1fq55 li:first-of-type{margin-left:0;}.css-d1fq55 li:last-child{margin-right:0;padding-right:0;}</style><ul class="css-d1fq55"><li><a href="/openj9/">Home</a></li><li><a href="/openj9/about">About</a></li><li><a href="https://www.eclipse.org/openj9/docs/" rel="noopener noreferrer" target="_blank">Docs</a></li><li><a href="/openj9/performance">Performance</a></li><li><a href="/openj9/news">News</a></li></ul></nav><style data-emotion-css="1rr4qq7">.css-1rr4qq7{-webkit-flex:1;-ms-flex:1;flex:1;}</style><nav class="css-1rr4qq7"><ul class="css-d1fq55"><li><a href="https://twitter.com/openj9/" rel="noopener noreferrer" target="_blank"> <img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjVweCIgaGVpZ2h0PSIyNXB4IiB2aWV3Qm94PSIwIDAgMjUgMjUiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5Ud2l0dGVyPC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IlR3aXR0ZXIiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgIDxnIGlkPSJ0d2l0dGVyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwMDAwMCwgMC4yOTg4NzkpIj4KICAgICAgICAgICAgICAgIDxlbGxpcHNlIGlkPSJPdmFsLXBhdGgiIGZpbGw9IiM0MzQzNDMiIGN4PSIxMi41MDAyMjEyIiBjeT0iMTIuMjcyNzI3MyIgcng9IjEyLjUiIHJ5PSIxMi4yNzI3MjczIj48L2VsbGlwc2U+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTIuNTAwMjIxMiwwIEMxOS40MDM3ODA2LDAgMjUuMDAwMjIxMiw1LjQ5NDY4NzE2IDI1LjAwMDIyMTIsMTIuMjcyNzI3MyBDMjUuMDAwMjIxMiwxOS4wNTA3Njc0IDE5LjQwMzc4MDYsMjQuNTQ1NDU0NSAxMi41MDAyMjEyLDI0LjU0NTQ1NDUgQzUuNTk2NjYxODcsMjQuNTQ1NDU0NSAwLjAwMDIyMTIzODkzOCwxOS4wNTA3Njc0IDAuMDAwMjIxMjM4OTM4LDEyLjI3MjcyNzMgQzAuMDAwMjIxMjM4OTM4LDUuNDk0Njg3MTYgNS41OTY2NjE4NywwIDEyLjUwMDIyMTIsMCBaIE0xNS4xMDM0MzMzLDYuODE4MTgxODIgQzEzLjQ2NTM4MDIsNi44MTgxODE4MiAxMi4xMzY4NDA0LDguMDkyMTI0MTEgMTIuMTM2ODQwNCw5LjY2Mjg1OTk2IEMxMi4xMzY4NDA0LDkuODg1ODI2MzggMTIuMTYzMTY3OCwxMC4xMDI4NTI3IDEyLjIxNDA1MjgsMTAuMzExMTgxIEM5Ljc0ODU2NjA0LDEwLjE5MjU5MDggNy41NjI1MDQxLDkuMDYwMTUwNTQgNi4wOTkyMjk3Niw3LjMzODU3ODIzIEM1Ljg0MzkyMDAzLDcuNzU4NjI5MTUgNS42OTc0NTk4NSw4LjI0NzYyNzgxIDUuNjk3NDU5ODUsOC43Njg4NzI4MSBDNS42OTc0NTk4NSw5Ljc1NTU2ODE3IDYuMjIxNTc0ODksMTAuNjI2NjQzNCA3LjAxNzE1MDExLDExLjEzNjY0NDcgQzYuNTMxMDg4MTcsMTEuMTIyMDA2NSA2LjA3MzM0NDgsMTAuOTk0MDgxOSA1LjY3MzU2NjA0LDEwLjc4MDQ1IEw1LjY3MzM0NDgsMTAuODE2NTE0OSBMNS42NzMzNDQ4LDEwLjgxNjUxNDkgQzUuNjczMzQ0OCwxMi4xOTQ4MzM1IDYuNjk2MzUzNjUsMTMuMzQ0NDU3NyA4LjA1MzIxMjA2LDEzLjYwNTYxMDYgQzcuODA0NTM5NSwxMy42NzA5NTE5IDcuNTQxOTI4ODgsMTMuNzA1NTMxOCA3LjI3MTc5NjEzLDEzLjcwNTUzMTggQzcuMDgwMjAzMjEsMTMuNzA1NTMxOCA2Ljg5NDU4Mzc0LDEzLjY4NzkyMzYgNi43MTM2MTAyOSwxMy42NTQ4Mjg3IEM3LjA5MTA0MzkyLDE0Ljc4NDcyMzIgOC4xODYzOTc5LDE1LjYwNzIxNjkgOS40ODQ4NDkyMywxNS42MzAzNDA5IEM4LjQ2OTM2MjUsMTYuMzkzNDMzNCA3LjE5MDM4MDIsMTYuODQ4MDY0MiA1LjgwMDExNDcyLDE2Ljg0ODA2NDIgQzUuNTYxMTc2NjYsMTYuODQ4MDY0MiA1LjMyNDQ1MSwxNi44MzQ2OTkgNS4wOTI4MTM4MywxNi44MDgxODA2IEM2LjQwNDk4MTk3LDE3LjYxNTYxMTggNy45NjQ3MTY0OSwxOC4wODYzNjU4IDkuNjM5OTM3NzMsMTguMDg2MzY1OCBDMTUuMDk2NTc0OSwxOC4wODYzNjU4IDE4LjA4MDY0NTcsMTMuNzUxNzc5OCAxOC4wODA2NDU3LDkuOTkyMzI0MTQgQzE4LjA4MDY0NTcsOS44NjkwNjY3NyAxOC4wNzc3Njk2LDkuNzQ2MjMzNyAxOC4wNzIwMTc0LDkuNjI0NDYxMzcgQzE4LjY1MjEwNTksOS4yMjM1MDM2OCAxOS4xNTQ5ODIsOC43MjI2MjQ3OCAxOS41NTI1NDgzLDguMTUyMTYxNjkgQzE5LjAyMDY4OTksOC4zNzgzMTAzMiAxOC40NDg1NjYsOC41MzEyNjgyNSAxNy44NDg1NjYsOC41OTk1Nzk1NiBDMTguNDYxMTc2Nyw4LjI0NzYyNzgxIDE4LjkzMTMwOTQsNy42OTA3NDIxMyAxOS4xNTMyMTIxLDcuMDI2MDg1ODEgQzE4LjU3OTk4Miw3LjM1MjE1NTYzIDE3Ljk0NDgwNSw3LjU4ODY5OTQ2IDE3LjI2OTM2MjUsNy43MTYxOTk3NiBDMTYuNzI4MjEyMSw3LjE2MzU1NzAyIDE1Ljk1NzE5NDQsNi44MTgxODE4MiAxNS4xMDM0MzMzLDYuODE4MTgxODIgWiIgaWQ9IkNvbWJpbmVkLVNoYXBlIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==" alt="Twitter Logo"/></a></li><li><a href="https://github.com/eclipse/openj9" rel="noopener noreferrer" target="_blank"> <img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjVweCIgaGVpZ2h0PSIyNXB4IiB2aWV3Qm94PSIwIDAgMjUgMjUiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5HaXRIdWI8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iR2l0SHViIiBmaWxsPSIjRkZGRkZGIiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8ZyBpZD0iZ2l0aHViLWxvZ28iPgogICAgICAgICAgICAgICAgPHBhdGggZD0iTTIzLjMyMzIwOSw2LjM1NjM4NTg4IEMyMi4yMDU0MjQzLDQuNDI4ODY0OTMgMjAuNjg5MjIwNywyLjkwMjg0MzkxIDE4Ljc3NDE5OTMsMS43Nzc5Nzg1OCBDMTYuODU4ODkyOCwwLjY1MzA1NTg3MyAxNC43Njc5NDkxLDAuMDkwNzM3OTUzMyAxMi40OTk4ODYsMC4wOTA3Mzc5NTMzIEMxMC4yMzIxMDc5LDAuMDkwNzM3OTUzMyA4LjE0MDQ4MDEzLDAuNjUzMjI3OTkzIDYuMjI1NTcyNjksMS43Nzc5Nzg1OCBDNC4zMTAzODAyMSwyLjkwMjc4NjU0IDIuNzk0MjMzNjcsNC40Mjg4NjQ5MyAxLjY3NjQ0ODk5LDYuMzU2Mzg1ODggQzAuNTU4ODM1MzMzLDguMjgzODQ5NDUgMCwxMC4zODg2NTQ2IDAsMTIuNjcwNzQzOSBDMCwxNS40MTIwNTEgMC43OTQ2NzE0ODMsMTcuODc3MTA0NSAyLjM4NDQxMzQ5LDIwLjA2NjUzNTUgQzMuOTczOTg0NDksMjIuMjU2MTM4OCA2LjAyNzQ3NDg4LDIzLjc3MTI1ODggOC41NDQ3MTM2NywyNC42MTIwNjc4IEM4LjgzNzcyNzQsMjQuNjY2ODAyMiA5LjA1NDYzNzM3LDI0LjYyODMwNDUgOS4xOTU2NzE2MSwyNC40OTc1NTAzIEM5LjMzNjc2Mjg1LDI0LjM2NjYyMzkgOS40MDcyMjI5NiwyNC4yMDI2NTAzIDkuNDA3MjIyOTYsMjQuMDA2MzE4MSBDOS40MDcyMjI5NiwyMy45NzM1NTc5IDkuNDA0NDI5NjQsMjMuNjc4ODMwMSA5LjM5OTAxNDAxLDIzLjEyMTc5MDUgQzkuMzkzNDI3MzcsMjIuNTY0NzUxIDkuMzkwODA1MDcsMjIuMDc4Nzk3MiA5LjM5MDgwNTA3LDIxLjY2NDE1ODcgTDkuMDE2NDQyOTcsMjEuNzI5MzM1MSBDOC43Nzc3NTY1LDIxLjc3MzM0MDUgOC40NzY2NDc4MywyMS43OTE5ODY5IDguMTEzMTE2OTgsMjEuNzg2NzA4NiBDNy43NDk3NTcxNSwyMS43ODE2MDIzIDcuMzcyNTQ0NzMsMjEuNzQzMjc2OCA2Ljk4MTk5Mjc3LDIxLjY3MjAxODkgQzYuNTkxMjY5NzksMjEuNjAxMzkyMSA2LjIyNzg1Mjk1LDIxLjQzNzU5MDcgNS44OTE0NTcyMiwyMS4xODA5NTg5IEM1LjU1NTIzMjUyLDIwLjkyNDMyNzEgNS4zMTY1NDYwNCwyMC41ODg0MDUxIDUuMTc1NDU0OCwyMC4xNzM3MDkzIEw1LjAxMjcwMTA2LDE5Ljc5Njc2NTIgQzQuOTA0MjE3NTcsMTkuNTQ1ODEzNCA0LjczMzQyNTkxLDE5LjI2NzAzNTUgNC41MDAwOTgwNSwxOC45NjE0NjQxIEM0LjI2Njc3MDE5LDE4LjY1NTYwNTggNC4wMzA4MjAwMywxOC40NDgyNTc5IDMuNzkyMTMzNTUsMTguMzM5MDc2MSBMMy42NzgxNzc0MywxOC4yNTY5NzQ2IEMzLjYwMjI0NDY5LDE4LjIwMjQxMjMgMy41MzE3ODQ1OCwxOC4xMzY2MDQ5IDMuNDY2NjI2MDgsMTguMDYwMjQwOCBDMy40MDE1MjQ1OCwxNy45ODM4NzY2IDMuMzUyNzgzOTcsMTcuOTA3NDU1MSAzLjMyMDIzMzIzLDE3LjgzMDkxODggQzMuMjg3NjI1NDcsMTcuNzU0MzI1MSAzLjMxNDY0NjU4LDE3LjY5MTUwMTEgMy40MDE1ODE1OSwxNy42NDIyMTcyIEMzLjQ4ODUxNjYsMTcuNTkyOTMzNCAzLjY0NTYyNjY4LDE3LjU2OTAwODYgMy44NzM1OTU5MywxNy41NjkwMDg2IEw0LjE5ODk4OTM5LDE3LjYxNzk0ODIgQzQuNDE2MDEzMzcsMTcuNjYxNzI0MiA0LjY4NDQ1NzI3LDE3Ljc5MjQ3ODUgNS4wMDQ2NjMxNCwxOC4wMTEwMTQzIEM1LjMyNDY5Nzk4LDE4LjIyOTM3NzkgNS41ODc3ODMyNywxOC41MTMyNjIxIDUuNzkzOTc2LDE4Ljg2MjU1MjEgQzYuMDQzNjY0NzUsMTkuMzEwNDA5OSA2LjM0NDQ4ODM4LDE5LjY1MTY2NzYgNi42OTczMDE5OSwxOS44ODY0OTc0IEM3LjA0OTgzMDU4LDIwLjEyMTMyNzMgNy40MDUyNjY0OSwyMC4yMzg1NDE0IDcuNzYzMjY3NzEsMjAuMjM4NTQxNCBDOC4xMjEyNjg5MiwyMC4yMzg1NDE0IDguNDMwNDcyNTIsMjAuMjExMjMxNiA4LjY5MDk5MjUxLDIwLjE1Njg5ODkgQzguOTUxMjI3NDcsMjAuMTAyMjc5MyA5LjE5NTM4NjU3LDIwLjAyMDE3NzcgOS40MjMzNTU4MiwxOS45MTEwNTMzIEM5LjUyMTAwODA2LDE5LjE3OTA4MTkgOS43ODY4ODY2NywxOC42MTY3NjM5IDEwLjIyMDc2MzYsMTguMjIzNjk3OSBDOS42MDIzNTY0MiwxOC4xNTgyOTIxIDkuMDQ2MzcxNDIsMTguMDU5NzgxOCA4LjU1MjUyMzU3LDE3LjkyODc5OCBDOC4wNTg5NjA3NSwxNy43OTc2NDIxIDcuNTQ4OTIzMDMsMTcuNTg0Nzg2MyA3LjAyMjc1MjQ2LDE3LjI4OTY1NjkgQzYuNDk2Mjk2ODUsMTYuOTk0OTI5MSA2LjA1OTU2OTU4LDE2LjYyODk0MzQgNS43MTI0NTY2MiwxNi4xOTIzMzA5IEM1LjM2NTI4NjY1LDE1Ljc1NTQ4ODkgNS4wODAzNjc4NSwxNS4xODE5ODMxIDQuODU4MDk5MjYsMTQuNDcyMzMgQzQuNjM1NzE2NjYsMTMuNzYyMzkgNC41MjQ0OTY4NiwxMi45NDM0NDAzIDQuNTI0NDk2ODYsMTIuMDE1MjUxNCBDNC41MjQ0OTY4NiwxMC42OTM2NTIzIDQuOTUzMTg2MjEsOS41NjkwMTY0MiA1LjgxMDM5Mzg5LDguNjQwNzEyNzggQzUuNDA4ODM5NjcsNy42NDcxMTgwNyA1LjQ0Njc0OTAzLDYuNTMzMjY4NDYgNS45MjQyMzYsNS4yOTkyNzg2OCBDNi4yMzg5MTIyMiw1LjIwMDg4MzA4IDYuNzA1NTY3OTQsNS4yNzQ3MjI4MSA3LjMyMzk3NTE0LDUuNTIwMzM4ODcgQzcuOTQyNDk2MzQsNS43NjYwNjk2OCA4LjM5NTM1NjQ3LDUuOTc2NTczMTQgOC42ODMwMTE1OSw2LjE1MTEwMzQxIEM4Ljk3MDY2NjcsNi4zMjU1NzYzIDkuMjAxMTQ0MjQsNi40NzM0Mjc4NyA5LjM3NDc4NjIzLDYuNTkzMzM4NTQgQzEwLjM4NDA4NzQsNi4zMDk1MTE3MSAxMS40MjU2NTQzLDYuMTY3NTY5NjEgMTIuNDk5NzcyLDYuMTY3NTY5NjEgQzEzLjU3Mzg4OTYsNi4xNjc1Njk2MSAxNC42MTU2ODQ2LDYuMzA5NTExNzEgMTUuNjI1MDQyOCw2LjU5MzMzODU0IEwxNi4yNDM1MDcsNi4yMDAzODcyNiBDMTYuNjY2NDM4Niw1LjkzODE5MDI1IDE3LjE2NTg3MzEsNS42OTc5MDk5MyAxNy43NDA2MTMzLDUuNDc5NDg4OTIgQzE4LjMxNTY5NTUsNS4yNjExODI2NiAxOC43NTU0NDQxLDUuMjAxMDU1MiAxOS4wNTk0MDMxLDUuMjk5NDUwOCBDMTkuNTQ3NDkzMyw2LjUzMzQ5Nzk1IDE5LjU5MDk4OTMsNy42NDcyOTAxOSAxOS4xODkzMjExLDguNjQwODg0OSBDMjAuMDQ2NDcxNyw5LjU2OTE4ODU0IDIwLjQ3NTMzMjEsMTAuNjk0MTExMiAyMC40NzUzMzIxLDEyLjAxNTQyMzUgQzIwLjQ3NTMzMjEsMTIuOTQzNjEyNCAyMC4zNjM3MTMzLDEzLjc2NTE0MzkgMjAuMTQxNjcyNywxNC40ODA1MzQ0IEMxOS45MTkzNDcxLDE1LjE5NjAzOTYgMTkuNjMxOTc3LDE1Ljc2ODk3MTcgMTkuMjc5NDQ4NSwxNi4yMDA1MzUzIEMxOC45MjY1MjA4LDE2LjYzMjA0MTYgMTguNDg3MDAwMiwxNi45OTUxNTg2IDE3Ljk2MDgyOTcsMTcuMjg5ODI5MSBDMTcuNDM0NTQ1MSwxNy41ODQ3MjkgMTYuOTI0MzM2MywxNy43OTc1ODQ4IDE2LjQzMDc3MzUsMTcuOTI4NzQwNiBDMTUuOTM2OTgyNywxOC4wNTk4OTY1IDE1LjM4MDk5NzcsMTguMTU4NDY0MiAxNC43NjI1OTA1LDE4LjIyMzk4NDggQzE1LjMyNjYxMzQsMTguNzE1MjE2OSAxNS42MDg2ODE5LDE5LjQ5MDYyMDEgMTUuNjA4NjgxOSwyMC41NDk4NTAxIEwxNS42MDg2ODE5LDI0LjAwNTg1OTIgQzE1LjYwODY4MTksMjQuMjAyMTkxNCAxNS42NzY1MTk3LDI0LjM2NjEwNzUgMTUuODEyMzA5MywyNC40OTcwOTEzIEMxNS45NDc5Mjc5LDI0LjYyNzg0NTUgMTYuMTYyMTAxNiwyNC42NjYzNDMyIDE2LjQ1NTExNTMsMjQuNjExNTUxNSBDMTguOTcyNjk2MSwyMy43NzA4NTcyIDIxLjAyNjE4NjUsMjIuMjU1Njc5OCAyMi42MTU3MDA1LDIwLjA2NjA3NjYgQzI0LjIwNTA0MzUsMTcuODc2NjQ1NSAyNSwxNS40MTE1OTIgMjUsMTIuNjcwMjg0OSBDMjQuOTk5NDI5OSwxMC4zODg0ODI1IDI0LjQ0MDMwOTYsOC4yODM4NDk0NSAyMy4zMjMyMDksNi4zNTYzODU4OCBaIiBpZD0iU2hhcGUiPjwvcGF0aD4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+" alt="GitHub Logo"/></a></li><li><a href="https://openj9.slack.com/" rel="noopener noreferrer" target="_blank"><img src="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjVweCIgaGVpZ2h0PSIyNXB4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogPCEtLSBDcmVhdGVkIHdpdGggTWV0aG9kIERyYXcgLSBodHRwOi8vZ2l0aHViLmNvbS9kdW9waXhlbC9NZXRob2QtRHJhdy8gLS0+CgogPGc+CiAgPHRpdGxlPmJhY2tncm91bmQ8L3RpdGxlPgogIDxyZWN0IGZpbGw9Im5vbmUiIGlkPSJjYW52YXNfYmFja2dyb3VuZCIgaGVpZ2h0PSIyNiIgd2lkdGg9IjI2IiB5PSItMSIgeD0iLTEiLz4KICA8ZyBkaXNwbGF5PSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgeT0iMCIgeD0iMCIgaGVpZ2h0PSIxMDAlIiB3aWR0aD0iMTAwJSIgaWQ9ImNhbnZhc0dyaWQiPgogICA8cmVjdCBmaWxsPSJ1cmwoI2dyaWRwYXR0ZXJuKSIgc3Ryb2tlLXdpZHRoPSIwIiB5PSIxIiB4PSIxIiBoZWlnaHQ9IjIyIiB3aWR0aD0iMjIiLz4KICA8L2c+CiA8L2c+CiA8Zz4KICA8dGl0bGU+TGF5ZXIgMTwvdGl0bGU+CiAgPGVsbGlwc2Ugcnk9IjExIiByeD0iMTEiIGlkPSJzdmdfMSIgY3k9IjEyIiBjeD0iMTIiIHN0cm9rZT0iI0ZGRiIgZmlsbD0iI0ZGRkZGRiIvPgogIDxzdHlsZSB0cmFuc2Zvcm09Im1hdHJpeCgwLjA2NTE4MjQ5NTU3MzI1MzYyLDAsMCwwLjA2NTE4MjQ5NTU3MzI1MzYyLDAsMCkgIiB0eXBlPSJ0ZXh0L2NzcyI+LnN0MHtmaWxsOiM0MzQzNDM7fTwvc3R5bGU+CiAgPGcgc3Ryb2tlPSJudWxsIiBpZD0ic3ZnXzE5Ij4KICAgPGcgc3Ryb2tlPSJudWxsIiB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMDE1NTgwODUxODA5NDg2LDAsMCwwLjEzMDE1NTgwODUxODA5NDg2LC02Ljg0OTAwNjQ1MDQwNTQ5OSwtNi44MzE1MDczOTEwMjE5MjQpICIgaWQ9InN2Z182Ij4KICAgIDxnIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z183Ij4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfOCIgZD0ibTExMC4yOTgyOTIsMTYxLjI5MzAxMWMwLDcuMSAtNS44LDEyLjkgLTEyLjksMTIuOXMtMTIuOSwtNS44IC0xMi45LC0xMi45YzAsLTcuMSA1LjgsLTEyLjkgMTIuOSwtMTIuOWwxMi45LDBsMCwxMi45eiIgY2xhc3M9InN0MCIvPgogICAgIDxwYXRoIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z185IiBkPSJtMTE2Ljc5ODI5MiwxNjEuMjkzMDExYzAsLTcuMSA1LjgsLTEyLjkgMTIuOSwtMTIuOXMxMi45LDUuOCAxMi45LDEyLjlsMCwzMi4zYzAsNy4xIC01LjgsMTIuOSAtMTIuOSwxMi45cy0xMi45LC01LjggLTEyLjksLTEyLjljMCwwIDAsLTMyLjMgMCwtMzIuM3oiIGNsYXNzPSJzdDAiLz4KICAgIDwvZz4KICAgIDxnIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z18xMCI+CiAgICAgPHBhdGggc3Ryb2tlPSJudWxsIiBpZD0ic3ZnXzExIiBkPSJtMTI5LjY5ODI5MiwxMDkuNDkzMDExYy03LjEsMCAtMTIuOSwtNS44IC0xMi45LC0xMi45czUuOCwtMTIuOSAxMi45LC0xMi45czEyLjksNS44IDEyLjksMTIuOWwwLDEyLjlsLTEyLjksMHoiIGNsYXNzPSJzdDAiLz4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTIiIGQ9Im0xMjkuNjk4MjkyLDExNS45OTMwMTFjNy4xLDAgMTIuOSw1LjggMTIuOSwxMi45cy01LjgsMTIuOSAtMTIuOSwxMi45bC0zMi4zLDBjLTcuMSwwIC0xMi45LC01LjggLTEyLjksLTEyLjlzNS44LC0xMi45IDEyLjksLTEyLjljMCwwIDMyLjMsMCAzMi4zLDB6IiBjbGFzcz0ic3QwIi8+CiAgICA8L2c+CiAgICA8ZyBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTMiPgogICAgIDxwYXRoIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z18xNCIgZD0ibTE4MS40OTgyOTIsMTI4Ljg5MzAxMWMwLC03LjEgNS44LC0xMi45IDEyLjksLTEyLjljNy4xLDAgMTIuOSw1LjggMTIuOSwxMi45cy01LjgsMTIuOSAtMTIuOSwxMi45bC0xMi45LDBsMCwtMTIuOXoiIGNsYXNzPSJzdDAiLz4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTUiIGQ9Im0xNzQuOTk4MjkyLDEyOC44OTMwMTFjMCw3LjEgLTUuOCwxMi45IC0xMi45LDEyLjljLTcuMSwwIC0xMi45LC01LjggLTEyLjksLTEyLjlsMCwtMzIuM2MwLC03LjEgNS44LC0xMi45IDEyLjksLTEyLjljNy4xLDAgMTIuOSw1LjggMTIuOSwxMi45bDAsMzIuM3oiIGNsYXNzPSJzdDAiLz4KICAgIDwvZz4KICAgIDxnIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z18xNiI+CiAgICAgPHBhdGggc3Ryb2tlPSJudWxsIiBpZD0ic3ZnXzE3IiBkPSJtMTYyLjA5ODI5MiwxODAuNjkzMDExYzcuMSwwIDEyLjksNS44IDEyLjksMTIuOWMwLDcuMSAtNS44LDEyLjkgLTEyLjksMTIuOWMtNy4xLDAgLTEyLjksLTUuOCAtMTIuOSwtMTIuOWwwLC0xMi45bDEyLjksMHoiIGNsYXNzPSJzdDAiLz4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTgiIGQ9Im0xNjIuMDk4MjkyLDE3NC4xOTMwMTFjLTcuMSwwIC0xMi45LC01LjggLTEyLjksLTEyLjljMCwtNy4xIDUuOCwtMTIuOSAxMi45LC0xMi45bDMyLjMsMGM3LjEsMCAxMi45LDUuOCAxMi45LDEyLjljMCw3LjEgLTUuOCwxMi45IC0xMi45LDEyLjlsLTMyLjMsMHoiIGNsYXNzPSJzdDAiLz4KICAgIDwvZz4KICAgPC9nPgogIDwvZz4KIDwvZz4KPC9zdmc+" alt="Slack logo"/></a></li><li><a href="https://stackoverflow.com/search?q=%23OpenJ9" rel="noopener noreferrer" target="_blank"><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjRweCIgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgNjUgNzAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5zdGFja292ZXJmbG93LWxvZ288L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0iI0ZGRkZGRiIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0ic3RhY2tvdmVyZmxvdy1sb2dvIiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgZmlsbD0iI0ZGRkZGRiIgcG9pbnRzPSI1NC4yNDE3MjY2IDYzLjc3MDIyNjUgNTQuMjQxNzI2NiA0NSA2MSA0NSA2MSA3MCAwIDcwIDAgNDUgNi43NTgyNzMzOCA0NSA2Ljc1ODI3MzM4IDYzLjc3MDIyNjUiPjwvcG9seWdvbj4KICAgICAgICAgICAgPHBhdGggZD0iTTE0LjcwNzEwNTcsNDMuNjQyNzU2NyBMNDguMTE3ODUxLDUwLjA4NzIwMTEgTDQ5LjUzMjA2MjQsNDMuODg3NDgyNCBMMTYuMTIxMzE3MiwzNy40NDMwMzggTDE0LjcwNzEwNTcsNDMuNjQyNzU2NyBMMTQuNzA3MTA1Nyw0My42NDI3NTY3IFogTTE5LjEyNjUxNjUsMjguOTU5MjEyNCBMNTAuMDYyMzkxNyw0Mi4yNTU5Nzc1IEw1Mi44OTA4MTQ2LDM2LjU0NTcxMDMgTDIxLjk1NDkzOTMsMjMuMTY3MzY5OSBMMTkuMTI2NTE2NSwyOC45NTkyMTI0IFogTTI3LjcwMDE3MzMsMTQuOTI4MjcgTDUzLjk1MTQ3MzEsMzUuMDc3MzU1OCBMNTguMjgyNDk1NywzMC4yNjQ0MTYzIEwzMi4wMzExOTU4LDEwLjExNTMzMDUgTDI3LjcwMDE3MzMsMTQuOTI4MjcgTDI3LjcwMDE3MzMsMTQuOTI4MjcgWiBNNDQuNjcwNzEwNiwwIEwzOS4xOTA2NDEyLDMuNzUyNDYxMzIgTDU5LjUxOTkzMDcsMjkuMDQwNzg3NiBMNjUsMjUuMjg4MzI2MyBMNDQuNjcwNzEwNiwwIFogTTE0LDU4IEw0OC4xMTc4NTEsNTggTDQ4LjExNzg1MSw1MS43MTg3MDYgTDE0LDUxLjcxODcwNiBMMTQsNTggWiIgaWQ9IlNoYXBlIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4KCgo=" alt="Stack Overflow logo"/></a></li></ul></nav></header><style data-emotion-css="1824c0p">.css-1824c0p{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:fixed;width:100%;bottom:0;background-color:white;height:3rem;box-shadow:0 0.5rem 2rem grey;z-index:9999;}@media screen and (min-width:35rem){.css-1824c0p{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}}@media screen and (min-width:62.5rem){.css-1824c0p{display:none;}}@media screen and (min-width:85rem){.css-1824c0p{display:none;}}</style><nav class="css-1824c0p"><style data-emotion-css="94xmc6">.css-94xmc6{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;list-style:none;-webkit-box-pack:space-evenly;-webkit-justify-content:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly;width:100%;}.css-94xmc6 li a{color:black;-webkit-text-decoration:none;text-decoration:none;}.css-94xmc6 li:first-of-type{margin-left:0;}.css-94xmc6 li:last-child{margin-right:0;padding-right:0;}</style><ul class="css-94xmc6"><li><a href="/openj9/">Home</a></li><li><a href="/openj9/about">About</a> </li><li><a href="https://www.eclipse.org/openj9/docs/" rel="noopener noreferrer" target="_blank">Docs</a> </li><li><a href="/openj9/performance">Performance</a> </li><li><a href="/openj9/news">News</a> </li></ul></nav><style data-emotion-css="a14s3y">.css-a14s3y{background-color:#F5F9FC;padding-left:7%;padding-right:7%;padding-top:4rem;padding-bottom:4rem;}</style><section class="css-a14s3y"><style data-emotion-css="uirvwh">.css-uirvwh{margin-bottom:3rem;}</style><style data-emotion-css="17u419h">.css-17u419h{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:36px;margin-bottom:3rem;}</style><h1 class="css-17u419h">More about OpenJ9</h1><style data-emotion-css="1sl8abc">.css-1sl8abc{background-color:white;padding-top:2rem;padding-bottom:2rem;padding-left:5%;padding-right:5%;border-radius:0.5rem;}</style><div class="css-1sl8abc"><style data-emotion-css="1v4dyq7">.css-1v4dyq7{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:28px;}</style><h2 class="css-1v4dyq7">Our story</h2><style data-emotion-css="fza3g9">.css-fza3g9{margin-bottom:40px;font-size:18px;}</style><p class="css-fza3g9">Eclipse OpenJ9 is a high performance, scalable, Java virtual machine (JVM) implementation that represents hundreds of person-years of effort. Contributed to the Eclipse project by IBM, the OpenJ9 JVM underpins the IBM SDK, Java Technology Edition product that is a core component of many IBM Enterprise software products. Continued development of OpenJ9 at the Eclipse foundation ensures wider collaboration, fresh innovation, and the opportunity to influence the development of OpenJ9 for the next generation of Java applications.</p></div></section><style data-emotion-css="1cb4n38">.css-1cb4n38{background-color:var(--theme-ui-colors-primary,#434343);color:var(--theme-ui-colors-lightText,#d8d8d8);padding-left:7%;padding-right:7%;padding-top:2rem;padding-bottom:2rem;}</style><section class="css-1cb4n38"><style data-emotion-css="1v4dyq7">.css-1v4dyq7{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:28px;}</style><h2 class="css-1v4dyq7">Our supporters</h2><style data-emotion-css="fza3g9">.css-fza3g9{margin-bottom:40px;font-size:18px;}</style><p class="css-fza3g9">The success of the OpenJ9 project is underpinned by the generosity of our supporters, to whom we would like to extend our thanks. This support comes in different forms; monetory, people, system, and data center resources. People resources help us to staff the planning, development, delivery, and support of OpenJ9 releases as well as pioneering new and innovative technologies. Dedicated systems and hosting services allow us to run automated build and test operations, which help ensure that quality and reliability is central to all our deliverables.</p><style data-emotion-css="v2pi9l">.css-v2pi9l{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:space-around;-webkit-justify-content:space-around;-ms-flex-pack:space-around;justify-content:space-around;}</style><div class="css-v2pi9l"><style data-emotion-css="gu2vom">.css-gu2vom{min-height:12.5rem;border-radius:0.5rem;background-color:white;color:var(--theme-ui-colors-darkText,#4d4f50);margin-top:40px;margin-bottom:40px;margin-left:16px;margin-right:16px;width:18rem;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}</style><article class="css-gu2vom"><style data-emotion-css="vs5na0">.css-vs5na0{width:50%;height:50%;}</style><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNDVweCIgaGVpZ2h0PSIxOHB4IiB2aWV3Qm94PSIwIDAgNDUgMTgiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5pYm0tbG9nbzwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJpYm0tbG9nbyIgZmlsbD0iIzAwMDAwMCIgZmlsbC1ydWxlPSJub256ZXJvIj4KICAgICAgICAgICAgPHBhdGggZD0iTTAsMTcuNjk0MTE3NiBMOC42NzUwOTQxMiwxNy42OTQxMTc2IEw4LjY3NTA5NDEyLDE2LjU2NzIyMzUgTDAsMTYuNTY3MjIzNSBMMCwxNy42OTQxMTc2IFogTTAsMTUuMzI4MDgyNCBMOC42NzUwOTQxMiwxNS4zMjgwODI0IEw4LjY3NTA5NDEyLDE0LjIwMTE4ODIgTDAsMTQuMjAxMTg4MiBMMCwxNS4zMjgwODI0IFogTTIuNDc4ODM1MjksMTIuOTYyMDQ3MSBMNi4xOTY4MTE3NiwxMi45NjIwNDcxIEw2LjE5NjgxMTc2LDExLjgzNTcwNTkgTDIuNDc4ODM1MjksMTEuODM1NzA1OSBMMi40Nzg4MzUyOSwxMi45NjIwNDcxIFogTTIuNDc4ODM1MjksMTAuNTk2NTY0NyBMNi4xOTY4MTE3NiwxMC41OTY1NjQ3IEw2LjE5NjgxMTc2LDkuNDY5NjcwNTkgTDIuNDc4ODM1MjksOS40Njk2NzA1OSBMMi40Nzg4MzUyOSwxMC41OTY1NjQ3IFogTTIuNDc4ODM1MjksOC4yMzA1Mjk0MSBMNi4xOTY4MTE3Niw4LjIzMDUyOTQxIEw2LjE5NjgxMTc2LDcuMTA0MTg4MjQgTDIuNDc4ODM1MjksNy4xMDQxODgyNCBMMi40Nzg4MzUyOSw4LjIzMDUyOTQxIFogTTIuNDc4MjgyMzUsNS44NjQ0OTQxMiBMNi4xOTYyNTg4Miw1Ljg2NDQ5NDEyIEw2LjE5NjI1ODgyLDQuNzM3NiBMMi40NzgyODIzNSw0LjczNzYgTDIuNDc4MjgyMzUsNS44NjQ0OTQxMiBaIE0wLDMuNDk4NDU4ODIgTDguNjc1MDk0MTIsMy40OTg0NTg4MiBMOC42NzUwOTQxMiwyLjM3MjExNzY1IEwwLDIuMzcyMTE3NjUgTDAsMy40OTg0NTg4MiBaIE0wLDEuMTMyOTc2NDcgTDguNjc1MDk0MTIsMS4xMzI5NzY0NyBMOC42NzUwOTQxMiwwLjAwNjA4MjM1Mjk0IEwwLDAuMDA2MDgyMzUyOTQgTDAsMS4xMzI5NzY0NyBaIE05LjkxNDIzNTI5LDE2LjU2Nzc3NjUgTDkuOTE0MjM1MjksMTcuNjk0MTIxOSBMMTkuMDM5OTc2NSwxNy42OTQxMjE5IEMyMC4xNjI2NTU1LDE3LjY5NTYyMTIgMjEuMjQ4OTc1NCwxNy4yOTYxOTI4IDIyLjEwMzI3MDYsMTYuNTY3Nzc2NSBMOS45MTQyMzUyOSwxNi41Njc3NzY1IFogTTkuOTE0MjM1MjksMTQuMjAxMTg4MiBMOS45MTQyMzUyOSwxNS4zMjgwODI0IEwyMy4xMzcyNzA2LDE1LjMyODA4MjQgQzIzLjM0MjA3MjUsMTQuOTc0Mzg3NCAyMy41MDAwNjExLDE0LjU5NTU4NjYgMjMuNjA3MjcwNiwxNC4yMDExODgyIEw5LjkxNDIzNTI5LDE0LjIwMTE4ODIgWiBNMTIuMzkyNTE3NiwxMi45NjIwNDcxIEwxNi4xMTA0OTQxLDEyLjk2MjA0NzEgTDE2LjExMDQ5NDEsMTEuODM1NzA1OSBMMTIuMzkyNTE3NiwxMS44MzU3MDU5IEwxMi4zOTI1MTc2LDEyLjk2MjA0NzEgWiBNMjIuMTg2MjExOCw5LjQ2OTY3MDU5IEwxMi4zOTI1MTc2LDkuNDY5NjcwNTkgTDEyLjM5MjUxNzYsMTAuNTk2NTY0NyBMMjMuMDk2MzUyOSwxMC41OTY1NjQ3IEMyMi44NTIzMjQ4LDEwLjE3Njc5NjMgMjIuNTQ1NTg5LDkuNzk2Nzc5NjEgMjIuMTg2NzY0Nyw5LjQ2OTY3MDU5IE0xMi4zOTMwNzA2LDcuMTA0MTg4MjQgTDEyLjM5MzA3MDYsOC4yMjk5NzY0NyBMMjIuMjI3NjgyNCw4LjIyOTk3NjQ3IEMyMi41ODYzMTY2LDcuOTAzMDQyNiAyMi44OTI4Njg3LDcuNTIzMjA4ODggMjMuMTM2NzE3Niw3LjEwMzYzNTI5IEwxMi4zOTMwNzA2LDcuMTAzNjM1MjkgTDEyLjM5MzA3MDYsNy4xMDQxODgyNCBaIE0yMy42MDY3MTc2LDMuNDk4NDU4ODIgQzIzLjQ5OTk4OTMsMy4xMDQwNzA5MiAyMy4zNDE5NzM5LDIuNzI1MzkxNzkgMjMuMTM2NzE3NiwyLjM3MjExNzY1IEw5LjkxNDIzNTI5LDIuMzcyMTE3NjUgTDkuOTE0MjM1MjksMy40OTg0NTg4MiBMMjMuNjA2NzE3NiwzLjQ5ODQ1ODgyIEwyMy42MDY3MTc2LDMuNDk4NDU4ODIgWiBNMjIuMTAzMjcwNiwxLjEzMjk3NjQ3IEMyMS4yNDg5NzU0LDAuNDA0NTYwMTQyIDIwLjE2MjY1NTUsMC4wMDUxMzE2OTc4MiAxOS4wMzk5NzY1LDAuMDA2NjMxMDY0NDkgTDkuOTE0MjM1MjksMC4wMDY2MzEwNjQ0OSBMOS45MTQyMzUyOSwxLjEzMjk3NjQ3IEwyMi4xMDMyNzA2LDEuMTMyOTc2NDcgTDIyLjEwMzI3MDYsMS4xMzI5NzY0NyBaIE0xMi4zOTI1MTc2LDUuODY0NDk0MTIgTDE2LjExMDQ5NDEsNS44NjQ0OTQxMiBMMTYuMTEwNDk0MSw0LjczNzYgTDEyLjM5MjUxNzYsNC43Mzc2IEwxMi4zOTI1MTc2LDUuODY0NDk0MTIgWiBNMTkuNjAzNDIzNSw1Ljg2NDQ5NDEyIEwyMy42MzQzNjQ3LDUuODY0NDk0MTIgQzIzLjcyNDg5Miw1LjQ5NTY4MzA0IDIzLjc3MDkyOTUsNS4xMTczNTg0NCAyMy43NzE0OTQxLDQuNzM3NiBMMTkuNjAzNDIzNSw0LjczNzYgTDE5LjYwMzQyMzUsNS44NjQ0OTQxMiBaIE0xOS42MDM0MjM1LDExLjgzNTcwNTkgTDE5LjYwMzQyMzUsMTIuOTYyMDQ3MSBMMjMuNzcxNDk0MSwxMi45NjIwNDcxIEMyMy43NzE0OTQxLDEyLjU3MzMyOTQgMjMuNzIxNzI5NCwxMi4xOTY3NzY1IDIzLjYzNDM2NDcsMTEuODM1NzA1OSBMMTkuNjAzNDIzNSwxMS44MzU3MDU5IFogTTMxLjc3MDM0MTIsMCBMMjQuNzg1NTg4MiwwIEwyNC43ODU1ODgyLDEuMTI2ODk0MTIgTDMyLjE2MTgyMzUsMS4xMjY4OTQxMiBMMzEuNzcwMzQxMiwwIFogTTI0Ljc4NjE0MTIsMTcuNjk0MTE3NiBMMzAuOTg0NjExOCwxNy42OTQxMTc2IEwzMC45ODQ2MTE4LDE2LjU2NzIyMzUgTDI0Ljc4NjE0MTIsMTYuNTY3MjIzNSBMMjQuNzg2MTQxMiwxNy42OTQxMTc2IFogTTI0Ljc4NjE0MTIsMTUuMzI3NTI5NCBMMzAuOTg0NjExOCwxNS4zMjc1Mjk0IEwzMC45ODQ2MTE4LDE0LjIwMDYzNTMgTDI0Ljc4NjE0MTIsMTQuMjAwNjM1MyBMMjQuNzg2MTQxMiwxNS4zMjc1Mjk0IFogTTI3LjI2NDk3NjUsMTIuOTYwMzg4MiBMMzAuOTg0NjExOCwxMi45NjAzODgyIEwzMC45ODQ2MTE4LDExLjgzMzQ5NDEgTDI3LjI2NDk3NjUsMTEuODMzNDk0MSBMMjcuMjY0OTc2NSwxMi45NjAzODgyIFogTTI3LjI2NDk3NjUsMTAuNTkzOCBMMzAuOTg0NjExOCwxMC41OTM4IEwzMC45ODQ2MTE4LDkuNDY2OTA1ODggTDI3LjI2NDk3NjUsOS40NjY5MDU4OCBMMjcuMjY0OTc2NSwxMC41OTM4IFogTTM4LjQyMjc3NjUsMTcuNjk0MTE3NiBMNDQuNjIxMjQ3MSwxNy42OTQxMTc2IEw0NC42MjEyNDcxLDE2LjU2NzIyMzUgTDM4LjQyMjc3NjUsMTYuNTY3MjIzNSBMMzguNDIyNzc2NSwxNy42OTQxMTc2IFogTTM4LjQyMjc3NjUsMTUuMzI3NTI5NCBMNDQuNjIxMjQ3MSwxNS4zMjc1Mjk0IEw0NC42MjEyNDcxLDE0LjIwMDYzNTMgTDM4LjQyMjc3NjUsMTQuMjAwNjM1MyBMMzguNDIyNzc2NSwxNS4zMjc1Mjk0IFogTTM4LjQyMjc3NjUsMTIuOTYwMzg4MiBMNDIuMTQxODU4OCwxMi45NjAzODgyIEw0Mi4xNDE4NTg4LDExLjgzMzQ5NDEgTDM4LjQyMjc3NjUsMTEuODMzNDk0MSBMMzguNDIyNzc2NSwxMi45NjAzODgyIFogTTM4LjQyMjIyMzUsMTAuNTkzOCBMNDIuMTQxMzA1OSwxMC41OTM4IEw0Mi4xNDEzMDU5LDkuNDY2OTA1ODggTDM4LjQyMjIyMzUsOS40NjY5MDU4OCBMMzguNDIyMjIzNSwxMC41OTM4IFogTTM4LjQyMjc3NjUsOC4yMjcyMTE3NiBMNDIuMTQxODU4OCw4LjIyNzIxMTc2IEw0Mi4xNDE4NTg4LDcuMDk5NzY0NzEgTDM1LjE3MDM3NjUsNy4wOTk3NjQ3MSBMMzQuNzc5NDQ3MSw4LjIyNjY1ODgyIEwzOC4wNDM0NTg4LDguMjI2NjU4ODIgTDM4LjQyMjc3NjUsNy4xNTM5NTI5NCBMMzguNDIyNzc2NSw4LjIyNzIxMTc2IFogTTM0LjIzNTkwNTksNy4wOTk3NjQ3MSBMMjcuMjY1NTI5NCw3LjA5OTc2NDcxIEwyNy4yNjU1Mjk0LDguMjI3MjExNzYgTDMwLjk4NDYxMTgsOC4yMjcyMTE3NiBMMzAuOTg0NjExOCw3LjE1NDUwNTg4IEwzMS4zNjM5Mjk0LDguMjI3MjExNzYgTDM0LjYyNzk0MTIsOC4yMjcyMTE3NiBMMzQuMjM1OTA1OSw3LjA5OTc2NDcxIFogTTQyLjE0MTMwNTksNC43MzMxNzY0NyBMMzUuOTkxNDk0MSw0LjczMzE3NjQ3IEwzNS42MDA1NjQ3LDUuODYwMDcwNTkgTDQyLjE0MTg1ODgsNS44NjAwNzA1OSBMNDIuMTQxMzA1OSw0LjczMzE3NjQ3IFogTTM3LjYzMzE3NjUsMCBMMzcuMjQyOCwxLjEyNjg5NDEyIEw0NC42MjEyNDcxLDEuMTI2ODk0MTIgTDQ0LjYyMTI0NzEsMCBMMzcuNjMzMTc2NSwwIFogTTM0LjcwMDkyOTQsMTcuNjk0MTE3NiBMMzUuMDk5MDQ3MSwxNi41NjcyMjM1IEwzNC4zMDcyMzUzLDE2LjU2NzIyMzUgTDM0LjcwMDkyOTQsMTcuNjk0MTE3NiBaIE0zMy44Njk4NTg4LDE1LjMyNzUyOTQgTDM1LjUzNjk3NjUsMTUuMzI3NTI5NCBMMzUuOTM1MDk0MSwxNC4yMDA2MzUzIEwzMy40NzE3NDEyLDE0LjIwMDYzNTMgTDMzLjg2OTg1ODgsMTUuMzI3NTI5NCBaIE0zMy4wMzQzNjQ3LDEyLjk2MDk0MTIgTDM2LjM3MjQ3MDYsMTIuOTYwOTQxMiBMMzYuNzcwNTg4MiwxMS44MzM0OTQxIEwzMi42MzY4LDExLjgzMzQ5NDEgTDMzLjAzNDM2NDcsMTIuOTYwOTQxMiBaIE0zMi4xOTg4NzA2LDEwLjU5MzggTDM3LjIwODUxNzYsMTAuNTkzOCBMMzcuNjA2MDgyNCw5LjQ2NjkwNTg4IEwzMS44MDAyLDkuNDY2OTA1ODggTDMyLjE5ODg3MDYsMTAuNTkzOCBaIE0yNy4yNjQ5NzY1LDUuODYwMDcwNTkgTDMzLjgwNjI3MDYsNS44NjAwNzA1OSBMMzMuNDE1MzQxMiw0LjczMzE3NjQ3IEwyNy4yNjQ5NzY1LDQuNzMzMTc2NDcgTDI3LjI2NDk3NjUsNS44NjAwNzA1OSBaIE0zNi40MjExMjk0LDMuNDkzNDgyMzUgTDQ0LjYyMTI0NzEsMy40OTM0ODIzNSBMNDQuNjIxMjQ3MSwyLjM2NjU4ODI0IEwzNi44MTI2MTE4LDIuMzY2NTg4MjQgTDM2LjQyMTEyOTQsMy40OTM0ODIzNSBaIE0zMi41OTQyMjM1LDIuMzY2NTg4MjQgTDI0Ljc4NjE0MTIsMi4zNjY1ODgyNCBMMjQuNzg2MTQxMiwzLjQ5MzQ4MjM1IEwzMi45ODUxNTI5LDMuNDkzNDgyMzUgTDMyLjU5NDIyMzUsMi4zNjY1ODgyNCBaIiBpZD0iU2hhcGUiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==" alt="IBM Logo" class="css-vs5na0"/></article><article class="css-gu2vom"><style data-emotion-css="138rpve">.css-138rpve{width:80%;-webkit-filter:invert(100%);filter:invert(100%);}</style><img src="/openj9/static/adopt-open-jdk-7072a4c16b356c87671638dba5c860e9.png" alt="AdoptOpenJDK Logo" class="css-138rpve"/></article><article class="css-gu2vom"><img src="/openj9/static/oregon-state-university-logo-3c2d68263b3d6bd814701041f7626cbe.svg" alt="Oregon State University Logo" class="css-vs5na0"/></article><article class="css-gu2vom"><img src="/openj9/static/uni-new-brunswick-logo-6555470091976484ab5115fd4dc596ac.svg" alt="New Brunswick University Logo" class="css-vs5na0"/></article></div></section><style data-emotion-css="wqrdrc">.css-wqrdrc{padding-left:7%;padding-right:7%;padding-top:4rem;padding-bottom:4rem;background-color:#F5F9FC;}</style><section class="css-wqrdrc"><style data-emotion-css="rd3ir2">.css-rd3ir2{display:grid;grid-gap:6rem;grid-template-columns:repeat(1,1fr);background-color:white;padding-left:5%;padding-right:5%;padding-top:2rem;padding-bottom:2rem;border-radius:0.5rem;}@media screen and (min-width:35rem){.css-rd3ir2{grid-template-columns:repeat(1,1fr);}}@media screen and (min-width:62.5rem){.css-rd3ir2{grid-template-columns:repeat(1,1fr);}}@media screen and (min-width:85rem){.css-rd3ir2{grid-template-columns:repeat(2,1fr);}}</style><div class="css-rd3ir2"><style data-emotion-css="1b6n4o1">.css-1b6n4o1{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;}</style><article class="css-1b6n4o1"><style data-emotion-css="4ddra2">.css-4ddra2{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:24px;}</style><h3 class="css-4ddra2">DOCS</h3><style data-emotion-css="fza3g9">.css-fza3g9{margin-bottom:40px;font-size:18px;}</style><p class="css-fza3g9">If you are new to OpenJ9, our documentation will help you get started. Out of the box, we expect you to discover a great experience, but we also have many tuning options to help you ramp up application performance.</p><style data-emotion-css="1575med">.css-1575med{background-color:var(--theme-ui-colors-secondary,#5DA7A3);color:white;border-radius:2.5rem;height:2rem;width:12rem;border:none;font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';font-size:16px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-text-decoration:none;text-decoration:none;}.css-1575med:hover{cursor:pointer;background-color:var(--theme-ui-colors-secondaryDark,#5d9da3);border-color:var(--theme-ui-colors-secondaryDark,#5d9da3);-webkit-text-decoration:none;text-decoration:none;color:white;}</style><a href="https://www.eclipse.org/openj9/docs/" rel="noopener noreferrer" target="_blank" class="css-1575med">Go to docs</a></article><article class="css-1b6n4o1"><h3 class="css-4ddra2">BLOGS</h3><p class="css-fza3g9">Our blogs are written by developers, for developers. Read about their insights into up and coming technologies, take deep dives into OpenJ9 development, or simply hear about their experiences of working on the project.</p><a href="https://blog.openj9.org/" rel="noopener noreferrer" target="_blank" class="css-1575med">Go to blogs</a></article></div></section><style data-emotion-css="17cbhv0">.css-17cbhv0{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background-color:var(--theme-ui-colors-primary,#434343);color:white;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:1rem;padding-bottom:3rem;-webkit-flex-direction:reverse-column;-ms-flex-direction:reverse-column;flex-direction:reverse-column;}@media screen and (min-width:35rem){.css-17cbhv0{padding-bottom:3rem;}}@media screen and (min-width:62.5rem){.css-17cbhv0{padding-bottom:0;}}@media screen and (min-width:85rem){.css-17cbhv0{padding-bottom:0;}}</style><footer class="css-17cbhv0"><style data-emotion-css="vkolmb">.css-vkolmb{-webkit-flex:50%;-ms-flex:50%;flex:50%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}@media screen and (min-width:35rem){.css-vkolmb{display:none;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}}@media screen and (min-width:62.5rem){.css-vkolmb{display:none;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;}}@media screen and (min-width:85rem){.css-vkolmb{display:none;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;}}</style><section class="css-vkolmb"><a href="https://wiki.eclipse.org/Development_Resources/Process_Guidelines/What_is_Incubation" rel="noopener noreferrer" target="_blank"><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNTBweCIgaGVpZ2h0PSI3NXB4IiB2aWV3Qm94PSIwIDAgMTU3IDIzMSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDwhLS0gR2VuZXJhdG9yOiBTa2V0Y2ggNjEuMiAoODk2NTMpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPmVjbGlwc2VfaW5jdWJhdGlvbl92ZXJ0aWNhbF9zdmc8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iZWNsaXBzZV9pbmN1YmF0aW9uX3ZlcnRpY2FsX3N2ZyIgZmlsbC1ydWxlPSJub256ZXJvIj4KICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNy4wMDAwMDAsIDIxNC4wMDAwMDApIiBmaWxsPSIjRkZGRkZGIj4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJQYXRoIiBwb2ludHM9IjAuNzUgMC4zNCAxLjkyIDAuMzQgMS45MiAxNi4wMyAwLjc1IDE2LjAzIj48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSI1LjYyIDAuMzQgNi43MiAwLjM0IDE3LjU1IDEzLjk5IDE3LjU1IDAuMzQgMTguNjcgMC4zNCAxOC42NyAxNi4wMyAxNy44IDE2LjAzIDYuNzUgMi4wOSA2Ljc1IDE2LjAzIDUuNjMgMTYuMDMgNS42MyAwLjM0Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMjEuODYsOC4yMyBMMjEuODYsOC4xOSBDMjEuODYsMy43NSAyNS4xOCwwLjA4IDI5LjcxLDAuMDggQzMyLjUxLDAuMDggMzQuMTksMS4xMSAzNS44MSwyLjU5IEwzNC45OCwzLjQ0IEMzMy42MSwyLjEyIDMyLjA0LDEuMTMgMjkuNjksMS4xMyBDMjUuOTIsMS4xMyAyMy4wOCw0LjIgMjMuMDgsOC4xNSBMMjMuMDgsOC4xOSBDMjMuMDgsMTIuMTYgMjUuOTcsMTUuMjUgMjkuNzEsMTUuMjUgQzMxLjk3LDE1LjI1IDMzLjUyLDE0LjM3IDM1LjExLDEyLjgxIEwzNS44OSwxMy41NyBDMzQuMjMsMTUuMjEgMzIuNDQsMTYuMyAyOS42NiwxNi4zIEMyNS4xOCwxNi4zIDIxLjg2LDEyLjc0IDIxLjg2LDguMjMgWiIgaWQ9IlBhdGgiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0zOC40LDkuNTEgTDM4LjQsMC4zNCBMMzkuNTcsMC4zNCBMMzkuNTcsOS40IEMzOS41NywxMy4xIDQxLjU3LDE1LjIzIDQ0Ljg4LDE1LjIzIEM0OC4wNiwxNS4yMyA1MC4xLDEzLjMgNTAuMSw5LjUxIEw1MC4xLDAuMzQgTDUxLjI3LDAuMzQgTDUxLjI3LDkuMzcgQzUxLjI3LDEzLjg4IDQ4LjY1LDE2LjI3MDAzMTQgNDQuODQsMTYuMjcwMDMxNCBDNDEuMDcsMTYuMjggMzguNCwxMy45IDM4LjQsOS41MSBaIiBpZD0iUGF0aCI+PC9wYXRoPgogICAgICAgICAgICAgICAgPHBhdGggZD0iTTU0LjAyLDAuMzQgTDYwLjUsMC4zNCBDNjIuMjcsMC4zNCA2My43MSwwLjg2IDY0LjU4LDEuNzMgQzY1LjIzLDIuMzggNjUuNTksMy4yMSA2NS41OSw0LjIgTDY1LjU5LDQuMjQgQzY1LjU5LDYuMzcgNjQuMiw3LjQ1IDYyLjkyLDcuOTYgQzY0LjgsOC40NSA2Ni40Niw5LjUzIDY2LjQ2LDExLjcgTDY2LjQ2LDExLjc0IEM2Ni40NiwxNC4zNiA2NC4yMiwxNi4wMiA2MC44MywxNi4wMiBMNTQuMDIsMTYuMDIgTDU0LjAyLDAuMzQgTDU0LjAyLDAuMzQgWiBNNjQuNCw0LjMxIEM2NC40LDIuNTggNjIuOTksMS40MiA2MC40OCwxLjQyIEw1NS4xOSwxLjQyIEw1NS4xOSw3LjU4IEw2MC4zNyw3LjU4IEM2Mi43Miw3LjU4IDY0LjQsNi40NCA2NC40LDQuMzUgTDY0LjQsNC4zMSBaIE02MC41LDguNjYgTDU1LjE5LDguNjYgTDU1LjE5LDE0Ljk2IEw2MC44OCwxNC45NiBDNjMuNTcsMTQuOTYgNjUuMjcwMDQ0NCwxMy43MyA2NS4yNzAwNDQ0LDExLjc1IEw2NS4yNzAwNDQ0LDExLjcxIEM2NS4yOCw5Ljc4IDYzLjYsOC42NiA2MC41LDguNjYgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNzYuMjgsMC4yMyBMNzcuNCwwLjIzIEw4NC43MSwxNi4wMyBMODMuNDMsMTYuMDMgTDgxLjQ0LDExLjY0IEw3Mi4xOCwxMS42NCBMNzAuMTksMTYuMDMgTDY4Ljk4LDE2LjAzIEw3Ni4yOCwwLjIzIFogTTgwLjk0LDEwLjU5IEw3Ni44MiwxLjUxIEw3Mi42NywxMC41OSBMODAuOTQsMTAuNTkgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSI5MS4wNSAxLjQyIDg1LjU4IDEuNDIgODUuNTggMC4zNCA5Ny42OCAwLjM0IDk3LjY4IDEuNDIgOTIuMjEgMS40MiA5Mi4yMSAxNi4wMyA5MS4wNCAxNi4wMyA5MS4wNCAxLjQyIj48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSIxMDEuMjkgMC4zNCAxMDIuNDYgMC4zNCAxMDIuNDYgMTYuMDMgMTAxLjI5IDE2LjAzIj48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTA1LjkxLDguMjMgTDEwNS45MSw4LjE5IEMxMDUuOTEsMy45MSAxMDkuMDcsMC4wOCAxMTMuODIsMC4wOCBDMTE4LjU3LDAuMDggMTIxLjY5LDMuODcgMTIxLjY5LDguMTUgTDEyMS42OSw4LjE5IEMxMjEuNjksMTIuNDcgMTE4LjUzLDE2LjMgMTEzLjc4LDE2LjMgQzEwOS4wMywxNi4zIDEwNS45MSwxMi41MSAxMDUuOTEsOC4yMyBaIE0xMjAuNDgsOC4yMyBMMTIwLjQ4LDguMTkgQzEyMC40OCw0LjMxIDExNy42NiwxLjEzIDExMy43OCwxLjEzIEMxMDkuOSwxLjEzIDEwNy4xMiw0LjI3IDEwNy4xMiw4LjE1IEwxMDcuMTIsOC4xOSBDMTA3LjEyLDEyLjA3IDEwOS45NCwxNS4yNSAxMTMuODIsMTUuMjUgQzExNy43LDE1LjI1IDEyMC40OCwxMi4xMSAxMjAuNDgsOC4yMyBaIiBpZD0iU2hhcGUiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJQYXRoIiBwb2ludHM9IjEyNC44OSAwLjM0IDEyNS45OSAwLjM0IDEzNi44MiAxMy45OSAxMzYuODIgMC4zNCAxMzcuOTQgMC4zNCAxMzcuOTQgMTYuMDMgMTM3LjA3IDE2LjAzIDEyNi4wMiAyLjA5IDEyNi4wMiAxNi4wMyAxMjQuOSAxNi4wMyAxMjQuOSAwLjM0Ij48L3BvbHlnb24+CiAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgPHBhdGggZD0iTTU2LjY2LDE2Ni4yMyBDNTcuNTEsMTYzLjQ4IDYwLjQzLDE2MS40MyA2My45NCwxNjEuNDMgQzY1LjE0LDE2MS40MyA2Ni4yNSwxNjEuNjkgNjcuMjUsMTYyLjExIEM2OS40NiwxNjAuNjQgNzIuMTksMTU5Ljc2IDc1LjE3LDE1OS43NiBMNzUuMTksMTU5Ljc2IEM3Ni4xMSwxNTcuOSA3OC40OCwxNTYuNTcgODEuMywxNTYuNTcgQzgyLjA0LDE1Ni41NyA4Mi43NSwxNTYuNjcgODMuNDIsMTU2Ljg0IEM4My4zMywxNTQuNTYgODMuNjksMTUyLjE4IDg0LjU1LDE0OS42OCBDODUuNTUsMTQ2Ljc5IDg3LDE0NC4wMyA4OC41MiwxNDEuMjggQzg4LjE3LDEzNy4xNiA4Ny45LDEzMy41IDgyLjc0LDEzMiBDODAuODIsMTMxLjQ0IDc4LjgyLDEzMS4yNyA3Ni44NiwxMzEuMDQgTDc2Ljg1LDEzMS4wNCBMNzYuODUsMTMxLjAzIEM3Ni4wMSwxMzAuOTMgNzUuMTcsMTMwLjgxIDc0LjM1LDEzMC42NSBDNjAuMTgsMTQ1LjQxIDQwLjIsMTA5Ljk3IDQwLjIsMTA5Ljk3IEM4NC4zLDEwMy4xMyA3Ni4wMSwxMjUuNjEgNzYuMDEsMTI1LjYxIEM3Mi44MSwxMjQuMDUgNzEuOTMsMTIyLjA4IDY5LjQ5LDExOS43MyBDNjMuOTIsMTE0LjM4IDUwLjYyLDExMy40NCA1MC42MiwxMTMuNDQgQzY2LjU0LDExNy41MSA2OC43MSwxMjUuMjIgNzQuOTcsMTI3LjY5IEM3Ni4zOSwxMjguMDEgNzcuOSwxMjguMTMgNzkuMzUsMTI4LjI5IEM4Mi4xNSwxMjguNTkgODQuODksMTI5LjExIDg3LjIyLDEzMC42MSBDODkuNjMsMTMyLjE2IDkwLjcxLDEzNC4wOSA5MS4yNiwxMzYuMjYgQzkzLDEzMi45NCA5NC41LDEyOS41NiA5NS4wNywxMjUuOTIgQzk1LjgsMTIxLjI3IDk1LjEzLDExNS44OCA5MS44MywxMTIuMDcgQzg4Ljc4LDEwOC41NSA4NC42NiwxMDUuODkgODEuNCwxMDIuNTIgQzc3LjkyLDk4LjkxIDc1LjYxLDk0LjQ2IDc1LjUyLDg5LjcxIEM3My43Niw4NS44NiA3MC45LDgxLjM5IDY4LjI4LDc5LjY1IEM1Ni45LDkwLjM0IDQxLjksNjIuNTggNDEuOSw2Mi41OCBDNzYuODgsNTcuNyA3MS4xLDc1LjY3IDcxLjEsNzUuNjcgQzYyLjcsNjYuMjggNTIuMzEsNjcuMTIgNTIuMzEsNjcuMTIgQzYwLjcxLDY5Ljc5IDY3LjM0LDc1LjE1IDcxLjIsNzguODMgTDcxLjczLDc5LjM2IEM3My4zLDgxIDc0LjksODIuNzUgNzYuMjQsODQuNjMgQzc3LjYsNzkuNDggODAuNzcsNzIuMjcgODMuMjYsNjcuOTcgQzgzLjI2LDY3Ljk3IDkxLjY2LDUzLjE1IDEwNS44LDQzLjkgQzEwNS44LDQzLjkgOTUuMDIsNDUuMTQgODMuNDEsNjIuODkgQzgzLjQxLDYyLjg5IDY3Ljk5LDM4LjcgMTE3LjgzLDM0LjIzIEMxMTcuODMsMzQuMjMgMTE0LjQsNzguMTcgODcuNDUsNjkuNjMgQzgyLjc3LDc2LjY3IDc5LjcsODQuNzQgODAuMzMsOTAuNDIgQzgwLjk1LDk1Ljk2IDg0LjgzLDk5Ljg2IDg5LjExLDEwMy41IEM5MC4yNSw5Ny42NiA5NC40Niw5Mi42MyAxMDAuNjUsODkuODkgQzEwNS42LDg3LjkyIDExMi45LDg2LjAzIDExOS43Miw4NS42MiBDMTE5LjcyLDg1LjYyIDEwNi4zOSw4Mi41OCA5Ni4yNSw4OS41MSBDOTYuMjUsODkuNTEgOTYuNDIsNjkuMjIgMTMyLjM0LDgzLjk1IEMxMzIuMzQsODMuOTUgMTA2LjM0LDExMC4yOSA5Ny45OSw5NC41OSBDOTQuMDMsOTcuMiA5MS41MywxMDEuNTggOTIuMTgsMTA2LjExIEM5NC41LDEwOC4xNCA5Ni42NiwxMTAuMzMgOTcuOTcsMTEzLjAzIEM5OS44LDExNi44MiAxMDAuNDUsMTIxLjI0IDk5Ljk1LDEyNS4zNSBDOTguOTksMTMzLjI1IDk0LjA1LDEzOS45NyA5MC42NywxNDcuMTQgQzg5LjI5LDE1MC4wNiA4Ny45NywxNTMuMjcgODcuOTUsMTU2LjUxIEM4OS42NCwxNTYuMDQgOTEuNDcsMTU1Ljc4IDkzLjM5LDE1NS43OCBDMTAwLjYyLDE1NS43OCAxMDYuNzEsMTU5LjM3IDEwOC42OCwxNjQuMyBDMTExLjYxLDE2NC42MSAxMTMuOTIsMTY2LjMzIDExNC4zNCwxNjguNTEgQzExNi40NSwxNjkuODEgMTE4LjEyLDE3MS42MyAxMTkuMTMsMTczLjc1IEw1MC41NSwxNzMuNzUgQzUyLjAyLDE3MC42MiA1NC4xNCwxNjcuMTYgNTYuNjYsMTY2LjIzIiBpZD0iUGF0aCIgZmlsbD0iI0Y3OEQyQyI+PC9wYXRoPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE3LjAwMDAwMCwgMTgyLjAwMDAwMCkiIGZpbGw9IiNGRkZGRkYiPgogICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IlBhdGgiIHBvaW50cz0iMC41NCAxLjM5IDE4LjU0IDEuMzkgMTguNTQgNS4yMSA0LjggNS4yMSA0LjggMTEuNTIgMTYuOTcgMTEuNTIgMTYuOTcgMTUuMzMgNC44IDE1LjMzIDQuOCAyMS44NSAxOC43MSAyMS44NSAxOC43MSAyNS42NyAwLjU0IDI1LjY3Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMjEuNTUsMTMuNiBMMjEuNTUsMTMuNTMgQzIxLjU1LDYuNjMgMjYuNzIsMC45NyAzNC4wNywwLjk3IEMzOC41NCwwLjk3IDQxLjI1LDIuNTMgNDMuNTcsNC43NSBMNDAuODMsNy45MSBDMzguODksNi4xMSAzNi44MSw0Ljg5IDM0LjAzLDQuODkgQzI5LjQyLDQuODkgMjYuMDIsOC43MSAyNi4wMiwxMy40NiBMMjYuMDIsMTMuNTMgQzI2LjAyLDE4LjI4IDI5LjM4LDIyLjEzIDM0LjAzLDIyLjEzIEMzNy4wMSwyMi4xMyAzOC45MiwyMC45NSA0MSwxOS4wMSBMNDMuNzQsMjEuNzggQzQxLjIxLDI0LjQyIDM4LjQzLDI2LjA4MDAxMzYgMzMuODksMjYuMDgwMDEzNiBDMjYuODMsMjYuMDkgMjEuNTUsMjAuNTcgMjEuNTUsMTMuNiBaIiBpZD0iUGF0aCI+PC9wYXRoPgogICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IlBhdGgiIHBvaW50cz0iNDcuMjIgMS4zOSA1MS40OSAxLjM5IDUxLjQ5IDIxLjc4IDY0LjI1IDIxLjc4IDY0LjI1IDI1LjY2IDQ3LjIyIDI1LjY2Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSI2Ny45MyAxLjM5IDcyLjIgMS4zOSA3Mi4yIDI1LjY3IDY3LjkzIDI1LjY3Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNzcuNjcsMS4zOSBMODcuMjQsMS4zOSBDOTIuOTMsMS4zOSA5Ni40Nyw0LjYyIDk2LjQ3LDkuNTEgTDk2LjQ3LDkuNTggQzk2LjQ3LDE1LjAzIDkyLjEsMTcuODcgODYuNzYsMTcuODcgTDgxLjk0LDE3Ljg3IEw4MS45NCwyNS42NyBMNzcuNjcsMjUuNjcgTDc3LjY3LDEuMzkgWiBNODYuOSwxNC4wMiBDOTAuMTMsMTQuMDIgOTIuMTQsMTIuMjIgOTIuMTQsOS42OCBMOTIuMTQsOS42MSBDOTIuMTQsNi43NyA5MC4wOSw1LjI4IDg2LjksNS4yOCBMODEuOTQsNS4yOCBMODEuOTQsMTQuMDIgTDg2LjksMTQuMDIgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNOTguMjEsMjIuMTMgTDEwMC43OCwxOS4wOCBDMTAzLjEsMjEuMDkgMTA1LjQ2LDIyLjI0IDEwOC40NSwyMi4yNCBDMTExLjA5LDIyLjI0IDExMi43NSwyMC45OSAxMTIuNzUsMTkuMTkgTDExMi43NSwxOS4xMiBDMTEyLjc1LDE3LjM5IDExMS43OCwxNi40NSAxMDcuMjcsMTUuNDEgQzEwMi4xLDE0LjE2IDk5LjE5LDEyLjY0IDk5LjE5LDguMTYgTDk5LjE5LDguMDkgQzk5LjE5LDMuOTMgMTAyLjY2LDEuMDUgMTA3LjQ4LDEuMDUgQzExMS4wMiwxLjA1IDExMy44MywyLjEzIDExNi4yOSw0LjEgTDExNCw3LjMzIEMxMTEuODEsNS43IDEwOS42Myw0LjgzIDEwNy40MSw0LjgzIEMxMDQuOTEsNC44MyAxMDMuNDYsNi4xMSAxMDMuNDYsNy43MSBMMTAzLjQ2LDcuNzggQzEwMy40Niw5LjY1IDEwNC41NywxMC40OSAxMDkuMjUsMTEuNiBDMTE0LjM4LDEyLjg1IDExNy4wMiwxNC42OSAxMTcuMDIsMTguNzEgTDExNy4wMiwxOC43OCBDMTE3LjAyLDIzLjMyIDExMy40NSwyNi4wMyAxMDguMzUsMjYuMDMgQzEwNC42MiwyNi4wMiAxMDEuMTIsMjQuNzMgOTguMjEsMjIuMTMgWiIgaWQ9IlBhdGgiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJQYXRoIiBwb2ludHM9IjEyMC45OSAxLjM5IDEzOC45OSAxLjM5IDEzOC45OSA1LjIxIDEyNS4yNiA1LjIxIDEyNS4yNiAxMS41MiAxMzcuNDMgMTEuNTIgMTM3LjQzIDE1LjMzIDEyNS4yNiAxNS4zMyAxMjUuMjYgMjEuODUgMTM5LjE3IDIxLjg1IDEzOS4xNyAyNS42NyAxMjEgMjUuNjcgMTIxIDEuMzkiPjwvcG9seWdvbj4KICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8cGF0aCBkPSJNMjEuNjYsMzkuOTkgQzQxLjI2LDkuNDIgODAuNSwtMS4yNSAxMTMuMjMsMTMuNDQgQzExMi41MSwxMi45NCAxMTEuNzgsMTIuNDMgMTExLjAzLDExLjk1IEM3Ny41MiwtOS41NCAzMi45OCwwLjExIDExLjU2LDMzLjUyIEMtOS44Nyw2Ni45MiAtMC4wNiwxMTEuNDMgMzMuNDUsMTMyLjkyIEMzNC4yLDEzMy40IDM0Ljk2LDEzMy44NSAzNS43MiwxMzQuMyBDOC43MywxMTAuNjggMi4wNiw3MC41NiAyMS42NiwzOS45OSIgaWQ9IlBhdGgiIGZpbGw9IiNGNzhEMkMiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==" alt="Eclipse Incubator Logo"/></a><style data-emotion-css="1uno72p">.css-1uno72p{font-size:0.9rem;}</style><style data-emotion-css="2r9mng">.css-2r9mng{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:16px;font-size:0.9rem;}</style><h6 class="css-2r9mng">OpenJ9 is an Eclipse Incubator Project</h6></section><style data-emotion-css="1hrevlp">.css-1hrevlp{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:100%;-ms-flex:100%;flex:100%;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}@media screen and (min-width:35rem){.css-1hrevlp{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:50%;-ms-flex:50%;flex:50%;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}@media screen and (min-width:62.5rem){.css-1hrevlp{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:50%;-ms-flex:50%;flex:50%;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}@media screen and (min-width:85rem){.css-1hrevlp{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:50%;-ms-flex:50%;flex:50%;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}.css-1hrevlp a{color:white;-webkit-text-decoration:none;text-decoration:none;}.css-1hrevlp a:hover{color:var(--theme-ui-colors-links,#5DA7A3);}</style><nav class="css-1hrevlp"><style data-emotion-css="1vm4d63">.css-1vm4d63{-webkit-flex:1;-ms-flex:1;flex:1;padding-left:2rem;margin-right:1.1rem;padding:1rem;font-size:1rem;}@media screen and (min-width:35rem){.css-1vm4d63{padding-left:0.8rem;padding:0;font-size:0.9rem;}}@media screen and (min-width:62.5rem){.css-1vm4d63{padding-left:0.8rem;font-size:1rem;}}@media screen and (min-width:85rem){.css-1vm4d63{padding-left:0.8rem;font-size:1rem;}}</style><section class="css-1vm4d63"><style data-emotion-css="1p7eyhh">.css-1p7eyhh{margin-bottom:0.2rem;}</style><style data-emotion-css="shyl6e">.css-shyl6e{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:20px;margin-bottom:0.2rem;}</style><h4 class="css-shyl6e">Docs</h4><style data-emotion-css="1l04qsy">.css-1l04qsy{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;list-style:none;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}.css-1l04qsy li{padding:0;}.css-1l04qsy li:first-of-type{margin-left:0;}.css-1l04qsy li:last-child{margin-right:0;padding-right:0;}</style><ul class="css-1l04qsy"><li><style data-emotion-css="14i0930">.css-14i0930{-webkit-text-decoration:none;text-decoration:none;color:white;}</style><a href="https://www.eclipse.org/openj9/docs/openj9_newuser/" rel="noopener noreferrer" target="_blank" class="css-14i0930">New to OpenJ9?</a></li><li><a href="https://www.eclipse.org/openj9/docs/introduction/" rel="noopener noreferrer" target="_blank" class="css-14i0930">Getting started</a></li><li><a href="https://www.eclipse.org/openj9/docs/cmdline_specifying/" rel="noopener noreferrer" target="_blank" class="css-14i0930">Command-line options</a></li></ul></section><style data-emotion-css="4nlx3l">.css-4nlx3l{-webkit-flex:1;-ms-flex:1;flex:1;padding-left:2rem;padding:1rem;font-size:1rem;}@media screen and (min-width:35rem){.css-4nlx3l{padding-left:0.8rem;padding:0;font-size:0.9rem;}}@media screen and (min-width:62.5rem){.css-4nlx3l{padding-left:0;font-size:1rem;}}@media screen and (min-width:85rem){.css-4nlx3l{padding-left:0;font-size:1rem;}}</style><section class="css-4nlx3l"><h4 class="css-shyl6e">Resources</h4><ul class="css-1l04qsy"><li><a class="css-14i0930" href="/openj9/about">About</a></li><li><a class="css-14i0930" href="/openj9/performance">Performance</a></li></ul></section><style data-emotion-css="1v1ksah">.css-1v1ksah{-webkit-flex:1;-ms-flex:1;flex:1;padding-left:2rem;padding:1rem;font-size:1rem;margin-left:0;}@media screen and (min-width:35rem){.css-1v1ksah{padding-left:0;padding:0;font-size:0.9rem;margin-left:1rem;}}@media screen and (min-width:62.5rem){.css-1v1ksah{padding-left:0;font-size:1rem;}}@media screen and (min-width:85rem){.css-1v1ksah{padding-left:0;font-size:1rem;}}</style><section class="css-1v1ksah"><h4 class="css-shyl6e">Community</h4><ul class="css-1l04qsy"><li><a class="css-14i0930" href="/openj9/news">News</a></li><li><a href="https://blog.openj9.org/" rel="noopener noreferrer" target="_blank" class="css-14i0930">Blogs</a></li></ul></section></nav><style data-emotion-css="1qgmx7a">.css-1qgmx7a{-webkit-flex:25%;-ms-flex:25%;flex:25%;display:none;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}@media screen and (min-width:35rem){.css-1qgmx7a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;}}@media screen and (min-width:62.5rem){.css-1qgmx7a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;}}@media screen and (min-width:85rem){.css-1qgmx7a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;}}</style><section class="css-1qgmx7a"><style data-emotion-css="10op7gg">.css-10op7gg{font-size:0.9rem;margin-top:1.3rem;margin-left:0.6rem;}</style><style data-emotion-css="z87sw5">.css-z87sw5{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:16px;font-size:0.9rem;margin-top:1.3rem;margin-left:0.6rem;}</style><h6 class="css-z87sw5">OpenJ9 is an Eclipse Incubator Project</h6><a href="https://wiki.eclipse.org/Development_Resources/Process_Guidelines/What_is_Incubation" rel="noopener noreferrer" target="_blank"><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNTBweCIgaGVpZ2h0PSI3NXB4IiB2aWV3Qm94PSIwIDAgMTU3IDIzMSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDwhLS0gR2VuZXJhdG9yOiBTa2V0Y2ggNjEuMiAoODk2NTMpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPmVjbGlwc2VfaW5jdWJhdGlvbl92ZXJ0aWNhbF9zdmc8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iZWNsaXBzZV9pbmN1YmF0aW9uX3ZlcnRpY2FsX3N2ZyIgZmlsbC1ydWxlPSJub256ZXJvIj4KICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNy4wMDAwMDAsIDIxNC4wMDAwMDApIiBmaWxsPSIjRkZGRkZGIj4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJQYXRoIiBwb2ludHM9IjAuNzUgMC4zNCAxLjkyIDAuMzQgMS45MiAxNi4wMyAwLjc1IDE2LjAzIj48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSI1LjYyIDAuMzQgNi43MiAwLjM0IDE3LjU1IDEzLjk5IDE3LjU1IDAuMzQgMTguNjcgMC4zNCAxOC42NyAxNi4wMyAxNy44IDE2LjAzIDYuNzUgMi4wOSA2Ljc1IDE2LjAzIDUuNjMgMTYuMDMgNS42MyAwLjM0Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMjEuODYsOC4yMyBMMjEuODYsOC4xOSBDMjEuODYsMy43NSAyNS4xOCwwLjA4IDI5LjcxLDAuMDggQzMyLjUxLDAuMDggMzQuMTksMS4xMSAzNS44MSwyLjU5IEwzNC45OCwzLjQ0IEMzMy42MSwyLjEyIDMyLjA0LDEuMTMgMjkuNjksMS4xMyBDMjUuOTIsMS4xMyAyMy4wOCw0LjIgMjMuMDgsOC4xNSBMMjMuMDgsOC4xOSBDMjMuMDgsMTIuMTYgMjUuOTcsMTUuMjUgMjkuNzEsMTUuMjUgQzMxLjk3LDE1LjI1IDMzLjUyLDE0LjM3IDM1LjExLDEyLjgxIEwzNS44OSwxMy41NyBDMzQuMjMsMTUuMjEgMzIuNDQsMTYuMyAyOS42NiwxNi4zIEMyNS4xOCwxNi4zIDIxLjg2LDEyLjc0IDIxLjg2LDguMjMgWiIgaWQ9IlBhdGgiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0zOC40LDkuNTEgTDM4LjQsMC4zNCBMMzkuNTcsMC4zNCBMMzkuNTcsOS40IEMzOS41NywxMy4xIDQxLjU3LDE1LjIzIDQ0Ljg4LDE1LjIzIEM0OC4wNiwxNS4yMyA1MC4xLDEzLjMgNTAuMSw5LjUxIEw1MC4xLDAuMzQgTDUxLjI3LDAuMzQgTDUxLjI3LDkuMzcgQzUxLjI3LDEzLjg4IDQ4LjY1LDE2LjI3MDAzMTQgNDQuODQsMTYuMjcwMDMxNCBDNDEuMDcsMTYuMjggMzguNCwxMy45IDM4LjQsOS41MSBaIiBpZD0iUGF0aCI+PC9wYXRoPgogICAgICAgICAgICAgICAgPHBhdGggZD0iTTU0LjAyLDAuMzQgTDYwLjUsMC4zNCBDNjIuMjcsMC4zNCA2My43MSwwLjg2IDY0LjU4LDEuNzMgQzY1LjIzLDIuMzggNjUuNTksMy4yMSA2NS41OSw0LjIgTDY1LjU5LDQuMjQgQzY1LjU5LDYuMzcgNjQuMiw3LjQ1IDYyLjkyLDcuOTYgQzY0LjgsOC40NSA2Ni40Niw5LjUzIDY2LjQ2LDExLjcgTDY2LjQ2LDExLjc0IEM2Ni40NiwxNC4zNiA2NC4yMiwxNi4wMiA2MC44MywxNi4wMiBMNTQuMDIsMTYuMDIgTDU0LjAyLDAuMzQgTDU0LjAyLDAuMzQgWiBNNjQuNCw0LjMxIEM2NC40LDIuNTggNjIuOTksMS40MiA2MC40OCwxLjQyIEw1NS4xOSwxLjQyIEw1NS4xOSw3LjU4IEw2MC4zNyw3LjU4IEM2Mi43Miw3LjU4IDY0LjQsNi40NCA2NC40LDQuMzUgTDY0LjQsNC4zMSBaIE02MC41LDguNjYgTDU1LjE5LDguNjYgTDU1LjE5LDE0Ljk2IEw2MC44OCwxNC45NiBDNjMuNTcsMTQuOTYgNjUuMjcwMDQ0NCwxMy43MyA2NS4yNzAwNDQ0LDExLjc1IEw2NS4yNzAwNDQ0LDExLjcxIEM2NS4yOCw5Ljc4IDYzLjYsOC42NiA2MC41LDguNjYgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNzYuMjgsMC4yMyBMNzcuNCwwLjIzIEw4NC43MSwxNi4wMyBMODMuNDMsMTYuMDMgTDgxLjQ0LDExLjY0IEw3Mi4xOCwxMS42NCBMNzAuMTksMTYuMDMgTDY4Ljk4LDE2LjAzIEw3Ni4yOCwwLjIzIFogTTgwLjk0LDEwLjU5IEw3Ni44MiwxLjUxIEw3Mi42NywxMC41OSBMODAuOTQsMTAuNTkgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSI5MS4wNSAxLjQyIDg1LjU4IDEuNDIgODUuNTggMC4zNCA5Ny42OCAwLjM0IDk3LjY4IDEuNDIgOTIuMjEgMS40MiA5Mi4yMSAxNi4wMyA5MS4wNCAxNi4wMyA5MS4wNCAxLjQyIj48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSIxMDEuMjkgMC4zNCAxMDIuNDYgMC4zNCAxMDIuNDYgMTYuMDMgMTAxLjI5IDE2LjAzIj48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTA1LjkxLDguMjMgTDEwNS45MSw4LjE5IEMxMDUuOTEsMy45MSAxMDkuMDcsMC4wOCAxMTMuODIsMC4wOCBDMTE4LjU3LDAuMDggMTIxLjY5LDMuODcgMTIxLjY5LDguMTUgTDEyMS42OSw4LjE5IEMxMjEuNjksMTIuNDcgMTE4LjUzLDE2LjMgMTEzLjc4LDE2LjMgQzEwOS4wMywxNi4zIDEwNS45MSwxMi41MSAxMDUuOTEsOC4yMyBaIE0xMjAuNDgsOC4yMyBMMTIwLjQ4LDguMTkgQzEyMC40OCw0LjMxIDExNy42NiwxLjEzIDExMy43OCwxLjEzIEMxMDkuOSwxLjEzIDEwNy4xMiw0LjI3IDEwNy4xMiw4LjE1IEwxMDcuMTIsOC4xOSBDMTA3LjEyLDEyLjA3IDEwOS45NCwxNS4yNSAxMTMuODIsMTUuMjUgQzExNy43LDE1LjI1IDEyMC40OCwxMi4xMSAxMjAuNDgsOC4yMyBaIiBpZD0iU2hhcGUiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJQYXRoIiBwb2ludHM9IjEyNC44OSAwLjM0IDEyNS45OSAwLjM0IDEzNi44MiAxMy45OSAxMzYuODIgMC4zNCAxMzcuOTQgMC4zNCAxMzcuOTQgMTYuMDMgMTM3LjA3IDE2LjAzIDEyNi4wMiAyLjA5IDEyNi4wMiAxNi4wMyAxMjQuOSAxNi4wMyAxMjQuOSAwLjM0Ij48L3BvbHlnb24+CiAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgPHBhdGggZD0iTTU2LjY2LDE2Ni4yMyBDNTcuNTEsMTYzLjQ4IDYwLjQzLDE2MS40MyA2My45NCwxNjEuNDMgQzY1LjE0LDE2MS40MyA2Ni4yNSwxNjEuNjkgNjcuMjUsMTYyLjExIEM2OS40NiwxNjAuNjQgNzIuMTksMTU5Ljc2IDc1LjE3LDE1OS43NiBMNzUuMTksMTU5Ljc2IEM3Ni4xMSwxNTcuOSA3OC40OCwxNTYuNTcgODEuMywxNTYuNTcgQzgyLjA0LDE1Ni41NyA4Mi43NSwxNTYuNjcgODMuNDIsMTU2Ljg0IEM4My4zMywxNTQuNTYgODMuNjksMTUyLjE4IDg0LjU1LDE0OS42OCBDODUuNTUsMTQ2Ljc5IDg3LDE0NC4wMyA4OC41MiwxNDEuMjggQzg4LjE3LDEzNy4xNiA4Ny45LDEzMy41IDgyLjc0LDEzMiBDODAuODIsMTMxLjQ0IDc4LjgyLDEzMS4yNyA3Ni44NiwxMzEuMDQgTDc2Ljg1LDEzMS4wNCBMNzYuODUsMTMxLjAzIEM3Ni4wMSwxMzAuOTMgNzUuMTcsMTMwLjgxIDc0LjM1LDEzMC42NSBDNjAuMTgsMTQ1LjQxIDQwLjIsMTA5Ljk3IDQwLjIsMTA5Ljk3IEM4NC4zLDEwMy4xMyA3Ni4wMSwxMjUuNjEgNzYuMDEsMTI1LjYxIEM3Mi44MSwxMjQuMDUgNzEuOTMsMTIyLjA4IDY5LjQ5LDExOS43MyBDNjMuOTIsMTE0LjM4IDUwLjYyLDExMy40NCA1MC42MiwxMTMuNDQgQzY2LjU0LDExNy41MSA2OC43MSwxMjUuMjIgNzQuOTcsMTI3LjY5IEM3Ni4zOSwxMjguMDEgNzcuOSwxMjguMTMgNzkuMzUsMTI4LjI5IEM4Mi4xNSwxMjguNTkgODQuODksMTI5LjExIDg3LjIyLDEzMC42MSBDODkuNjMsMTMyLjE2IDkwLjcxLDEzNC4wOSA5MS4yNiwxMzYuMjYgQzkzLDEzMi45NCA5NC41LDEyOS41NiA5NS4wNywxMjUuOTIgQzk1LjgsMTIxLjI3IDk1LjEzLDExNS44OCA5MS44MywxMTIuMDcgQzg4Ljc4LDEwOC41NSA4NC42NiwxMDUuODkgODEuNCwxMDIuNTIgQzc3LjkyLDk4LjkxIDc1LjYxLDk0LjQ2IDc1LjUyLDg5LjcxIEM3My43Niw4NS44NiA3MC45LDgxLjM5IDY4LjI4LDc5LjY1IEM1Ni45LDkwLjM0IDQxLjksNjIuNTggNDEuOSw2Mi41OCBDNzYuODgsNTcuNyA3MS4xLDc1LjY3IDcxLjEsNzUuNjcgQzYyLjcsNjYuMjggNTIuMzEsNjcuMTIgNTIuMzEsNjcuMTIgQzYwLjcxLDY5Ljc5IDY3LjM0LDc1LjE1IDcxLjIsNzguODMgTDcxLjczLDc5LjM2IEM3My4zLDgxIDc0LjksODIuNzUgNzYuMjQsODQuNjMgQzc3LjYsNzkuNDggODAuNzcsNzIuMjcgODMuMjYsNjcuOTcgQzgzLjI2LDY3Ljk3IDkxLjY2LDUzLjE1IDEwNS44LDQzLjkgQzEwNS44LDQzLjkgOTUuMDIsNDUuMTQgODMuNDEsNjIuODkgQzgzLjQxLDYyLjg5IDY3Ljk5LDM4LjcgMTE3LjgzLDM0LjIzIEMxMTcuODMsMzQuMjMgMTE0LjQsNzguMTcgODcuNDUsNjkuNjMgQzgyLjc3LDc2LjY3IDc5LjcsODQuNzQgODAuMzMsOTAuNDIgQzgwLjk1LDk1Ljk2IDg0LjgzLDk5Ljg2IDg5LjExLDEwMy41IEM5MC4yNSw5Ny42NiA5NC40Niw5Mi42MyAxMDAuNjUsODkuODkgQzEwNS42LDg3LjkyIDExMi45LDg2LjAzIDExOS43Miw4NS42MiBDMTE5LjcyLDg1LjYyIDEwNi4zOSw4Mi41OCA5Ni4yNSw4OS41MSBDOTYuMjUsODkuNTEgOTYuNDIsNjkuMjIgMTMyLjM0LDgzLjk1IEMxMzIuMzQsODMuOTUgMTA2LjM0LDExMC4yOSA5Ny45OSw5NC41OSBDOTQuMDMsOTcuMiA5MS41MywxMDEuNTggOTIuMTgsMTA2LjExIEM5NC41LDEwOC4xNCA5Ni42NiwxMTAuMzMgOTcuOTcsMTEzLjAzIEM5OS44LDExNi44MiAxMDAuNDUsMTIxLjI0IDk5Ljk1LDEyNS4zNSBDOTguOTksMTMzLjI1IDk0LjA1LDEzOS45NyA5MC42NywxNDcuMTQgQzg5LjI5LDE1MC4wNiA4Ny45NywxNTMuMjcgODcuOTUsMTU2LjUxIEM4OS42NCwxNTYuMDQgOTEuNDcsMTU1Ljc4IDkzLjM5LDE1NS43OCBDMTAwLjYyLDE1NS43OCAxMDYuNzEsMTU5LjM3IDEwOC42OCwxNjQuMyBDMTExLjYxLDE2NC42MSAxMTMuOTIsMTY2LjMzIDExNC4zNCwxNjguNTEgQzExNi40NSwxNjkuODEgMTE4LjEyLDE3MS42MyAxMTkuMTMsMTczLjc1IEw1MC41NSwxNzMuNzUgQzUyLjAyLDE3MC42MiA1NC4xNCwxNjcuMTYgNTYuNjYsMTY2LjIzIiBpZD0iUGF0aCIgZmlsbD0iI0Y3OEQyQyI+PC9wYXRoPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE3LjAwMDAwMCwgMTgyLjAwMDAwMCkiIGZpbGw9IiNGRkZGRkYiPgogICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IlBhdGgiIHBvaW50cz0iMC41NCAxLjM5IDE4LjU0IDEuMzkgMTguNTQgNS4yMSA0LjggNS4yMSA0LjggMTEuNTIgMTYuOTcgMTEuNTIgMTYuOTcgMTUuMzMgNC44IDE1LjMzIDQuOCAyMS44NSAxOC43MSAyMS44NSAxOC43MSAyNS42NyAwLjU0IDI1LjY3Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMjEuNTUsMTMuNiBMMjEuNTUsMTMuNTMgQzIxLjU1LDYuNjMgMjYuNzIsMC45NyAzNC4wNywwLjk3IEMzOC41NCwwLjk3IDQxLjI1LDIuNTMgNDMuNTcsNC43NSBMNDAuODMsNy45MSBDMzguODksNi4xMSAzNi44MSw0Ljg5IDM0LjAzLDQuODkgQzI5LjQyLDQuODkgMjYuMDIsOC43MSAyNi4wMiwxMy40NiBMMjYuMDIsMTMuNTMgQzI2LjAyLDE4LjI4IDI5LjM4LDIyLjEzIDM0LjAzLDIyLjEzIEMzNy4wMSwyMi4xMyAzOC45MiwyMC45NSA0MSwxOS4wMSBMNDMuNzQsMjEuNzggQzQxLjIxLDI0LjQyIDM4LjQzLDI2LjA4MDAxMzYgMzMuODksMjYuMDgwMDEzNiBDMjYuODMsMjYuMDkgMjEuNTUsMjAuNTcgMjEuNTUsMTMuNiBaIiBpZD0iUGF0aCI+PC9wYXRoPgogICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IlBhdGgiIHBvaW50cz0iNDcuMjIgMS4zOSA1MS40OSAxLjM5IDUxLjQ5IDIxLjc4IDY0LjI1IDIxLjc4IDY0LjI1IDI1LjY2IDQ3LjIyIDI1LjY2Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSI2Ny45MyAxLjM5IDcyLjIgMS4zOSA3Mi4yIDI1LjY3IDY3LjkzIDI1LjY3Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNzcuNjcsMS4zOSBMODcuMjQsMS4zOSBDOTIuOTMsMS4zOSA5Ni40Nyw0LjYyIDk2LjQ3LDkuNTEgTDk2LjQ3LDkuNTggQzk2LjQ3LDE1LjAzIDkyLjEsMTcuODcgODYuNzYsMTcuODcgTDgxLjk0LDE3Ljg3IEw4MS45NCwyNS42NyBMNzcuNjcsMjUuNjcgTDc3LjY3LDEuMzkgWiBNODYuOSwxNC4wMiBDOTAuMTMsMTQuMDIgOTIuMTQsMTIuMjIgOTIuMTQsOS42OCBMOTIuMTQsOS42MSBDOTIuMTQsNi43NyA5MC4wOSw1LjI4IDg2LjksNS4yOCBMODEuOTQsNS4yOCBMODEuOTQsMTQuMDIgTDg2LjksMTQuMDIgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNOTguMjEsMjIuMTMgTDEwMC43OCwxOS4wOCBDMTAzLjEsMjEuMDkgMTA1LjQ2LDIyLjI0IDEwOC40NSwyMi4yNCBDMTExLjA5LDIyLjI0IDExMi43NSwyMC45OSAxMTIuNzUsMTkuMTkgTDExMi43NSwxOS4xMiBDMTEyLjc1LDE3LjM5IDExMS43OCwxNi40NSAxMDcuMjcsMTUuNDEgQzEwMi4xLDE0LjE2IDk5LjE5LDEyLjY0IDk5LjE5LDguMTYgTDk5LjE5LDguMDkgQzk5LjE5LDMuOTMgMTAyLjY2LDEuMDUgMTA3LjQ4LDEuMDUgQzExMS4wMiwxLjA1IDExMy44MywyLjEzIDExNi4yOSw0LjEgTDExNCw3LjMzIEMxMTEuODEsNS43IDEwOS42Myw0LjgzIDEwNy40MSw0LjgzIEMxMDQuOTEsNC44MyAxMDMuNDYsNi4xMSAxMDMuNDYsNy43MSBMMTAzLjQ2LDcuNzggQzEwMy40Niw5LjY1IDEwNC41NywxMC40OSAxMDkuMjUsMTEuNiBDMTE0LjM4LDEyLjg1IDExNy4wMiwxNC42OSAxMTcuMDIsMTguNzEgTDExNy4wMiwxOC43OCBDMTE3LjAyLDIzLjMyIDExMy40NSwyNi4wMyAxMDguMzUsMjYuMDMgQzEwNC42MiwyNi4wMiAxMDEuMTIsMjQuNzMgOTguMjEsMjIuMTMgWiIgaWQ9IlBhdGgiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJQYXRoIiBwb2ludHM9IjEyMC45OSAxLjM5IDEzOC45OSAxLjM5IDEzOC45OSA1LjIxIDEyNS4yNiA1LjIxIDEyNS4yNiAxMS41MiAxMzcuNDMgMTEuNTIgMTM3LjQzIDE1LjMzIDEyNS4yNiAxNS4zMyAxMjUuMjYgMjEuODUgMTM5LjE3IDIxLjg1IDEzOS4xNyAyNS42NyAxMjEgMjUuNjcgMTIxIDEuMzkiPjwvcG9seWdvbj4KICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8cGF0aCBkPSJNMjEuNjYsMzkuOTkgQzQxLjI2LDkuNDIgODAuNSwtMS4yNSAxMTMuMjMsMTMuNDQgQzExMi41MSwxMi45NCAxMTEuNzgsMTIuNDMgMTExLjAzLDExLjk1IEM3Ny41MiwtOS41NCAzMi45OCwwLjExIDExLjU2LDMzLjUyIEMtOS44Nyw2Ni45MiAtMC4wNiwxMTEuNDMgMzMuNDUsMTMyLjkyIEMzNC4yLDEzMy40IDM0Ljk2LDEzMy44NSAzNS43MiwxMzQuMyBDOC43MywxMTAuNjggMi4wNiw3MC41NiAyMS42NiwzOS45OSIgaWQ9IlBhdGgiIGZpbGw9IiNGNzhEMkMiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==" alt="Eclipse Incubator Logo"/></a></section><style data-emotion-css="7f8z6s">.css-7f8z6s{height:0.15rem;background-color:var(--theme-ui-colors-secondary,#5DA7A3);width:100%;margin-top:16px;margin-bottom:16px;}</style><div class="css-7f8z6s"></div><style data-emotion-css="6gs9hh">.css-6gs9hh{width:70%;}</style><nav class="css-6gs9hh"><style data-emotion-css="1dz3xom">.css-1dz3xom{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}@media screen and (min-width:35rem){.css-1dz3xom{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}@media screen and (min-width:62.5rem){.css-1dz3xom{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}@media screen and (min-width:85rem){.css-1dz3xom{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}.css-1dz3xom li{padding:0.4rem;font-size:0.9rem;list-style-type:none;padding-left:1rem;color:white;}@media screen and (min-width:35rem){.css-1dz3xom li{font-size:0.7rem;}}@media screen and (min-width:62.5rem){.css-1dz3xom li{font-size:1rem;}}@media screen and (min-width:85rem){.css-1dz3xom li{font-size:1rem;}}.css-1dz3xom a{color:white;-webkit-text-decoration:none;text-decoration:none;}.css-1dz3xom a:hover{color:var(--theme-ui-colors-links,#5DA7A3);}</style><ul class="css-1dz3xom"><style data-emotion-css="1ga24ma">.css-1ga24ma{padding-left:1rem;}@media screen and (min-width:35rem){.css-1ga24ma{padding-left:0rem !important;}}@media screen and (min-width:62.5rem){.css-1ga24ma{padding-left:0.5rem !important;}}@media screen and (min-width:85rem){.css-1ga24ma{padding-left:0.5 !important;}}</style><li class="css-1ga24ma"><a href="https://www.eclipse.org/" rel="noopener noreferrer" target="_blank" class="css-14i0930">Eclipse Foundation Website </a></li><li><a href="https://www.eclipse.org/legal/privacy.php" rel="noopener noreferrer" target="_blank" class="css-14i0930">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" rel="noopener noreferrer" target="_blank" class="css-14i0930">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" rel="noopener noreferrer" target="_blank" class="css-14i0930">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal/" rel="noopener noreferrer" target="_blank" class="css-14i0930">Legal</a></li></ul></nav><style data-emotion-css="1g96o9k">.css-1g96o9k{display:inline;-webkit-flex:30%;-ms-flex:30%;flex:30%;}@media screen and (min-width:35rem){.css-1g96o9k{display:inline;}}@media screen and (min-width:62.5rem){.css-1g96o9k{display:block;}}@media screen and (min-width:85rem){.css-1g96o9k{display:block;}}</style><nav class="css-1g96o9k"><style data-emotion-css="gwenrj">.css-gwenrj{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;list-style:none;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}.css-gwenrj li{padding:8px;margin-left:8px;margin-right:8px;}.css-gwenrj li a{color:white;-webkit-text-decoration:none;text-decoration:none;}.css-gwenrj li a:hover{color:var(--theme-ui-colors-links,#5DA7A3);}.css-gwenrj li:first-of-type{margin-left:0;}.css-gwenrj li:last-child{margin-right:0;padding-right:0;}@media screen and (min-width:35rem){.css-gwenrj{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;}}@media screen and (min-width:62.5rem){.css-gwenrj{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;}}@media screen and (min-width:85rem){.css-gwenrj{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;}}</style><ul class="css-gwenrj"><li><a href="https://twitter.com/openj9/" rel="noopener noreferrer" target="_blank"> <img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjVweCIgaGVpZ2h0PSIyNXB4IiB2aWV3Qm94PSIwIDAgMjUgMjUiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5Ud2l0dGVyPC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IlR3aXR0ZXIiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgIDxnIGlkPSJ0d2l0dGVyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwMDAwMCwgMC4yOTg4NzkpIj4KICAgICAgICAgICAgICAgIDxlbGxpcHNlIGlkPSJPdmFsLXBhdGgiIGZpbGw9IiM0MzQzNDMiIGN4PSIxMi41MDAyMjEyIiBjeT0iMTIuMjcyNzI3MyIgcng9IjEyLjUiIHJ5PSIxMi4yNzI3MjczIj48L2VsbGlwc2U+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTIuNTAwMjIxMiwwIEMxOS40MDM3ODA2LDAgMjUuMDAwMjIxMiw1LjQ5NDY4NzE2IDI1LjAwMDIyMTIsMTIuMjcyNzI3MyBDMjUuMDAwMjIxMiwxOS4wNTA3Njc0IDE5LjQwMzc4MDYsMjQuNTQ1NDU0NSAxMi41MDAyMjEyLDI0LjU0NTQ1NDUgQzUuNTk2NjYxODcsMjQuNTQ1NDU0NSAwLjAwMDIyMTIzODkzOCwxOS4wNTA3Njc0IDAuMDAwMjIxMjM4OTM4LDEyLjI3MjcyNzMgQzAuMDAwMjIxMjM4OTM4LDUuNDk0Njg3MTYgNS41OTY2NjE4NywwIDEyLjUwMDIyMTIsMCBaIE0xNS4xMDM0MzMzLDYuODE4MTgxODIgQzEzLjQ2NTM4MDIsNi44MTgxODE4MiAxMi4xMzY4NDA0LDguMDkyMTI0MTEgMTIuMTM2ODQwNCw5LjY2Mjg1OTk2IEMxMi4xMzY4NDA0LDkuODg1ODI2MzggMTIuMTYzMTY3OCwxMC4xMDI4NTI3IDEyLjIxNDA1MjgsMTAuMzExMTgxIEM5Ljc0ODU2NjA0LDEwLjE5MjU5MDggNy41NjI1MDQxLDkuMDYwMTUwNTQgNi4wOTkyMjk3Niw3LjMzODU3ODIzIEM1Ljg0MzkyMDAzLDcuNzU4NjI5MTUgNS42OTc0NTk4NSw4LjI0NzYyNzgxIDUuNjk3NDU5ODUsOC43Njg4NzI4MSBDNS42OTc0NTk4NSw5Ljc1NTU2ODE3IDYuMjIxNTc0ODksMTAuNjI2NjQzNCA3LjAxNzE1MDExLDExLjEzNjY0NDcgQzYuNTMxMDg4MTcsMTEuMTIyMDA2NSA2LjA3MzM0NDgsMTAuOTk0MDgxOSA1LjY3MzU2NjA0LDEwLjc4MDQ1IEw1LjY3MzM0NDgsMTAuODE2NTE0OSBMNS42NzMzNDQ4LDEwLjgxNjUxNDkgQzUuNjczMzQ0OCwxMi4xOTQ4MzM1IDYuNjk2MzUzNjUsMTMuMzQ0NDU3NyA4LjA1MzIxMjA2LDEzLjYwNTYxMDYgQzcuODA0NTM5NSwxMy42NzA5NTE5IDcuNTQxOTI4ODgsMTMuNzA1NTMxOCA3LjI3MTc5NjEzLDEzLjcwNTUzMTggQzcuMDgwMjAzMjEsMTMuNzA1NTMxOCA2Ljg5NDU4Mzc0LDEzLjY4NzkyMzYgNi43MTM2MTAyOSwxMy42NTQ4Mjg3IEM3LjA5MTA0MzkyLDE0Ljc4NDcyMzIgOC4xODYzOTc5LDE1LjYwNzIxNjkgOS40ODQ4NDkyMywxNS42MzAzNDA5IEM4LjQ2OTM2MjUsMTYuMzkzNDMzNCA3LjE5MDM4MDIsMTYuODQ4MDY0MiA1LjgwMDExNDcyLDE2Ljg0ODA2NDIgQzUuNTYxMTc2NjYsMTYuODQ4MDY0MiA1LjMyNDQ1MSwxNi44MzQ2OTkgNS4wOTI4MTM4MywxNi44MDgxODA2IEM2LjQwNDk4MTk3LDE3LjYxNTYxMTggNy45NjQ3MTY0OSwxOC4wODYzNjU4IDkuNjM5OTM3NzMsMTguMDg2MzY1OCBDMTUuMDk2NTc0OSwxOC4wODYzNjU4IDE4LjA4MDY0NTcsMTMuNzUxNzc5OCAxOC4wODA2NDU3LDkuOTkyMzI0MTQgQzE4LjA4MDY0NTcsOS44NjkwNjY3NyAxOC4wNzc3Njk2LDkuNzQ2MjMzNyAxOC4wNzIwMTc0LDkuNjI0NDYxMzcgQzE4LjY1MjEwNTksOS4yMjM1MDM2OCAxOS4xNTQ5ODIsOC43MjI2MjQ3OCAxOS41NTI1NDgzLDguMTUyMTYxNjkgQzE5LjAyMDY4OTksOC4zNzgzMTAzMiAxOC40NDg1NjYsOC41MzEyNjgyNSAxNy44NDg1NjYsOC41OTk1Nzk1NiBDMTguNDYxMTc2Nyw4LjI0NzYyNzgxIDE4LjkzMTMwOTQsNy42OTA3NDIxMyAxOS4xNTMyMTIxLDcuMDI2MDg1ODEgQzE4LjU3OTk4Miw3LjM1MjE1NTYzIDE3Ljk0NDgwNSw3LjU4ODY5OTQ2IDE3LjI2OTM2MjUsNy43MTYxOTk3NiBDMTYuNzI4MjEyMSw3LjE2MzU1NzAyIDE1Ljk1NzE5NDQsNi44MTgxODE4MiAxNS4xMDM0MzMzLDYuODE4MTgxODIgWiIgaWQ9IkNvbWJpbmVkLVNoYXBlIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==" alt="Twitter Logo"/></a></li><li><a href="https://github.com/eclipse/openj9" rel="noopener noreferrer" target="_blank"> <img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjVweCIgaGVpZ2h0PSIyNXB4IiB2aWV3Qm94PSIwIDAgMjUgMjUiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5HaXRIdWI8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iR2l0SHViIiBmaWxsPSIjRkZGRkZGIiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8ZyBpZD0iZ2l0aHViLWxvZ28iPgogICAgICAgICAgICAgICAgPHBhdGggZD0iTTIzLjMyMzIwOSw2LjM1NjM4NTg4IEMyMi4yMDU0MjQzLDQuNDI4ODY0OTMgMjAuNjg5MjIwNywyLjkwMjg0MzkxIDE4Ljc3NDE5OTMsMS43Nzc5Nzg1OCBDMTYuODU4ODkyOCwwLjY1MzA1NTg3MyAxNC43Njc5NDkxLDAuMDkwNzM3OTUzMyAxMi40OTk4ODYsMC4wOTA3Mzc5NTMzIEMxMC4yMzIxMDc5LDAuMDkwNzM3OTUzMyA4LjE0MDQ4MDEzLDAuNjUzMjI3OTkzIDYuMjI1NTcyNjksMS43Nzc5Nzg1OCBDNC4zMTAzODAyMSwyLjkwMjc4NjU0IDIuNzk0MjMzNjcsNC40Mjg4NjQ5MyAxLjY3NjQ0ODk5LDYuMzU2Mzg1ODggQzAuNTU4ODM1MzMzLDguMjgzODQ5NDUgMCwxMC4zODg2NTQ2IDAsMTIuNjcwNzQzOSBDMCwxNS40MTIwNTEgMC43OTQ2NzE0ODMsMTcuODc3MTA0NSAyLjM4NDQxMzQ5LDIwLjA2NjUzNTUgQzMuOTczOTg0NDksMjIuMjU2MTM4OCA2LjAyNzQ3NDg4LDIzLjc3MTI1ODggOC41NDQ3MTM2NywyNC42MTIwNjc4IEM4LjgzNzcyNzQsMjQuNjY2ODAyMiA5LjA1NDYzNzM3LDI0LjYyODMwNDUgOS4xOTU2NzE2MSwyNC40OTc1NTAzIEM5LjMzNjc2Mjg1LDI0LjM2NjYyMzkgOS40MDcyMjI5NiwyNC4yMDI2NTAzIDkuNDA3MjIyOTYsMjQuMDA2MzE4MSBDOS40MDcyMjI5NiwyMy45NzM1NTc5IDkuNDA0NDI5NjQsMjMuNjc4ODMwMSA5LjM5OTAxNDAxLDIzLjEyMTc5MDUgQzkuMzkzNDI3MzcsMjIuNTY0NzUxIDkuMzkwODA1MDcsMjIuMDc4Nzk3MiA5LjM5MDgwNTA3LDIxLjY2NDE1ODcgTDkuMDE2NDQyOTcsMjEuNzI5MzM1MSBDOC43Nzc3NTY1LDIxLjc3MzM0MDUgOC40NzY2NDc4MywyMS43OTE5ODY5IDguMTEzMTE2OTgsMjEuNzg2NzA4NiBDNy43NDk3NTcxNSwyMS43ODE2MDIzIDcuMzcyNTQ0NzMsMjEuNzQzMjc2OCA2Ljk4MTk5Mjc3LDIxLjY3MjAxODkgQzYuNTkxMjY5NzksMjEuNjAxMzkyMSA2LjIyNzg1Mjk1LDIxLjQzNzU5MDcgNS44OTE0NTcyMiwyMS4xODA5NTg5IEM1LjU1NTIzMjUyLDIwLjkyNDMyNzEgNS4zMTY1NDYwNCwyMC41ODg0MDUxIDUuMTc1NDU0OCwyMC4xNzM3MDkzIEw1LjAxMjcwMTA2LDE5Ljc5Njc2NTIgQzQuOTA0MjE3NTcsMTkuNTQ1ODEzNCA0LjczMzQyNTkxLDE5LjI2NzAzNTUgNC41MDAwOTgwNSwxOC45NjE0NjQxIEM0LjI2Njc3MDE5LDE4LjY1NTYwNTggNC4wMzA4MjAwMywxOC40NDgyNTc5IDMuNzkyMTMzNTUsMTguMzM5MDc2MSBMMy42NzgxNzc0MywxOC4yNTY5NzQ2IEMzLjYwMjI0NDY5LDE4LjIwMjQxMjMgMy41MzE3ODQ1OCwxOC4xMzY2MDQ5IDMuNDY2NjI2MDgsMTguMDYwMjQwOCBDMy40MDE1MjQ1OCwxNy45ODM4NzY2IDMuMzUyNzgzOTcsMTcuOTA3NDU1MSAzLjMyMDIzMzIzLDE3LjgzMDkxODggQzMuMjg3NjI1NDcsMTcuNzU0MzI1MSAzLjMxNDY0NjU4LDE3LjY5MTUwMTEgMy40MDE1ODE1OSwxNy42NDIyMTcyIEMzLjQ4ODUxNjYsMTcuNTkyOTMzNCAzLjY0NTYyNjY4LDE3LjU2OTAwODYgMy44NzM1OTU5MywxNy41NjkwMDg2IEw0LjE5ODk4OTM5LDE3LjYxNzk0ODIgQzQuNDE2MDEzMzcsMTcuNjYxNzI0MiA0LjY4NDQ1NzI3LDE3Ljc5MjQ3ODUgNS4wMDQ2NjMxNCwxOC4wMTEwMTQzIEM1LjMyNDY5Nzk4LDE4LjIyOTM3NzkgNS41ODc3ODMyNywxOC41MTMyNjIxIDUuNzkzOTc2LDE4Ljg2MjU1MjEgQzYuMDQzNjY0NzUsMTkuMzEwNDA5OSA2LjM0NDQ4ODM4LDE5LjY1MTY2NzYgNi42OTczMDE5OSwxOS44ODY0OTc0IEM3LjA0OTgzMDU4LDIwLjEyMTMyNzMgNy40MDUyNjY0OSwyMC4yMzg1NDE0IDcuNzYzMjY3NzEsMjAuMjM4NTQxNCBDOC4xMjEyNjg5MiwyMC4yMzg1NDE0IDguNDMwNDcyNTIsMjAuMjExMjMxNiA4LjY5MDk5MjUxLDIwLjE1Njg5ODkgQzguOTUxMjI3NDcsMjAuMTAyMjc5MyA5LjE5NTM4NjU3LDIwLjAyMDE3NzcgOS40MjMzNTU4MiwxOS45MTEwNTMzIEM5LjUyMTAwODA2LDE5LjE3OTA4MTkgOS43ODY4ODY2NywxOC42MTY3NjM5IDEwLjIyMDc2MzYsMTguMjIzNjk3OSBDOS42MDIzNTY0MiwxOC4xNTgyOTIxIDkuMDQ2MzcxNDIsMTguMDU5NzgxOCA4LjU1MjUyMzU3LDE3LjkyODc5OCBDOC4wNTg5NjA3NSwxNy43OTc2NDIxIDcuNTQ4OTIzMDMsMTcuNTg0Nzg2MyA3LjAyMjc1MjQ2LDE3LjI4OTY1NjkgQzYuNDk2Mjk2ODUsMTYuOTk0OTI5MSA2LjA1OTU2OTU4LDE2LjYyODk0MzQgNS43MTI0NTY2MiwxNi4xOTIzMzA5IEM1LjM2NTI4NjY1LDE1Ljc1NTQ4ODkgNS4wODAzNjc4NSwxNS4xODE5ODMxIDQuODU4MDk5MjYsMTQuNDcyMzMgQzQuNjM1NzE2NjYsMTMuNzYyMzkgNC41MjQ0OTY4NiwxMi45NDM0NDAzIDQuNTI0NDk2ODYsMTIuMDE1MjUxNCBDNC41MjQ0OTY4NiwxMC42OTM2NTIzIDQuOTUzMTg2MjEsOS41NjkwMTY0MiA1LjgxMDM5Mzg5LDguNjQwNzEyNzggQzUuNDA4ODM5NjcsNy42NDcxMTgwNyA1LjQ0Njc0OTAzLDYuNTMzMjY4NDYgNS45MjQyMzYsNS4yOTkyNzg2OCBDNi4yMzg5MTIyMiw1LjIwMDg4MzA4IDYuNzA1NTY3OTQsNS4yNzQ3MjI4MSA3LjMyMzk3NTE0LDUuNTIwMzM4ODcgQzcuOTQyNDk2MzQsNS43NjYwNjk2OCA4LjM5NTM1NjQ3LDUuOTc2NTczMTQgOC42ODMwMTE1OSw2LjE1MTEwMzQxIEM4Ljk3MDY2NjcsNi4zMjU1NzYzIDkuMjAxMTQ0MjQsNi40NzM0Mjc4NyA5LjM3NDc4NjIzLDYuNTkzMzM4NTQgQzEwLjM4NDA4NzQsNi4zMDk1MTE3MSAxMS40MjU2NTQzLDYuMTY3NTY5NjEgMTIuNDk5NzcyLDYuMTY3NTY5NjEgQzEzLjU3Mzg4OTYsNi4xNjc1Njk2MSAxNC42MTU2ODQ2LDYuMzA5NTExNzEgMTUuNjI1MDQyOCw2LjU5MzMzODU0IEwxNi4yNDM1MDcsNi4yMDAzODcyNiBDMTYuNjY2NDM4Niw1LjkzODE5MDI1IDE3LjE2NTg3MzEsNS42OTc5MDk5MyAxNy43NDA2MTMzLDUuNDc5NDg4OTIgQzE4LjMxNTY5NTUsNS4yNjExODI2NiAxOC43NTU0NDQxLDUuMjAxMDU1MiAxOS4wNTk0MDMxLDUuMjk5NDUwOCBDMTkuNTQ3NDkzMyw2LjUzMzQ5Nzk1IDE5LjU5MDk4OTMsNy42NDcyOTAxOSAxOS4xODkzMjExLDguNjQwODg0OSBDMjAuMDQ2NDcxNyw5LjU2OTE4ODU0IDIwLjQ3NTMzMjEsMTAuNjk0MTExMiAyMC40NzUzMzIxLDEyLjAxNTQyMzUgQzIwLjQ3NTMzMjEsMTIuOTQzNjEyNCAyMC4zNjM3MTMzLDEzLjc2NTE0MzkgMjAuMTQxNjcyNywxNC40ODA1MzQ0IEMxOS45MTkzNDcxLDE1LjE5NjAzOTYgMTkuNjMxOTc3LDE1Ljc2ODk3MTcgMTkuMjc5NDQ4NSwxNi4yMDA1MzUzIEMxOC45MjY1MjA4LDE2LjYzMjA0MTYgMTguNDg3MDAwMiwxNi45OTUxNTg2IDE3Ljk2MDgyOTcsMTcuMjg5ODI5MSBDMTcuNDM0NTQ1MSwxNy41ODQ3MjkgMTYuOTI0MzM2MywxNy43OTc1ODQ4IDE2LjQzMDc3MzUsMTcuOTI4NzQwNiBDMTUuOTM2OTgyNywxOC4wNTk4OTY1IDE1LjM4MDk5NzcsMTguMTU4NDY0MiAxNC43NjI1OTA1LDE4LjIyMzk4NDggQzE1LjMyNjYxMzQsMTguNzE1MjE2OSAxNS42MDg2ODE5LDE5LjQ5MDYyMDEgMTUuNjA4NjgxOSwyMC41NDk4NTAxIEwxNS42MDg2ODE5LDI0LjAwNTg1OTIgQzE1LjYwODY4MTksMjQuMjAyMTkxNCAxNS42NzY1MTk3LDI0LjM2NjEwNzUgMTUuODEyMzA5MywyNC40OTcwOTEzIEMxNS45NDc5Mjc5LDI0LjYyNzg0NTUgMTYuMTYyMTAxNiwyNC42NjYzNDMyIDE2LjQ1NTExNTMsMjQuNjExNTUxNSBDMTguOTcyNjk2MSwyMy43NzA4NTcyIDIxLjAyNjE4NjUsMjIuMjU1Njc5OCAyMi42MTU3MDA1LDIwLjA2NjA3NjYgQzI0LjIwNTA0MzUsMTcuODc2NjQ1NSAyNSwxNS40MTE1OTIgMjUsMTIuNjcwMjg0OSBDMjQuOTk5NDI5OSwxMC4zODg0ODI1IDI0LjQ0MDMwOTYsOC4yODM4NDk0NSAyMy4zMjMyMDksNi4zNTYzODU4OCBaIiBpZD0iU2hhcGUiPjwvcGF0aD4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+" alt="GitHub Logo"/></a></li><li><a href="https://openj9.slack.com/" rel="noopener noreferrer" target="_blank"><img src="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjVweCIgaGVpZ2h0PSIyNXB4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogPCEtLSBDcmVhdGVkIHdpdGggTWV0aG9kIERyYXcgLSBodHRwOi8vZ2l0aHViLmNvbS9kdW9waXhlbC9NZXRob2QtRHJhdy8gLS0+CgogPGc+CiAgPHRpdGxlPmJhY2tncm91bmQ8L3RpdGxlPgogIDxyZWN0IGZpbGw9Im5vbmUiIGlkPSJjYW52YXNfYmFja2dyb3VuZCIgaGVpZ2h0PSIyNiIgd2lkdGg9IjI2IiB5PSItMSIgeD0iLTEiLz4KICA8ZyBkaXNwbGF5PSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgeT0iMCIgeD0iMCIgaGVpZ2h0PSIxMDAlIiB3aWR0aD0iMTAwJSIgaWQ9ImNhbnZhc0dyaWQiPgogICA8cmVjdCBmaWxsPSJ1cmwoI2dyaWRwYXR0ZXJuKSIgc3Ryb2tlLXdpZHRoPSIwIiB5PSIxIiB4PSIxIiBoZWlnaHQ9IjIyIiB3aWR0aD0iMjIiLz4KICA8L2c+CiA8L2c+CiA8Zz4KICA8dGl0bGU+TGF5ZXIgMTwvdGl0bGU+CiAgPGVsbGlwc2Ugcnk9IjExIiByeD0iMTEiIGlkPSJzdmdfMSIgY3k9IjEyIiBjeD0iMTIiIHN0cm9rZT0iI0ZGRiIgZmlsbD0iI0ZGRkZGRiIvPgogIDxzdHlsZSB0cmFuc2Zvcm09Im1hdHJpeCgwLjA2NTE4MjQ5NTU3MzI1MzYyLDAsMCwwLjA2NTE4MjQ5NTU3MzI1MzYyLDAsMCkgIiB0eXBlPSJ0ZXh0L2NzcyI+LnN0MHtmaWxsOiM0MzQzNDM7fTwvc3R5bGU+CiAgPGcgc3Ryb2tlPSJudWxsIiBpZD0ic3ZnXzE5Ij4KICAgPGcgc3Ryb2tlPSJudWxsIiB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMDE1NTgwODUxODA5NDg2LDAsMCwwLjEzMDE1NTgwODUxODA5NDg2LC02Ljg0OTAwNjQ1MDQwNTQ5OSwtNi44MzE1MDczOTEwMjE5MjQpICIgaWQ9InN2Z182Ij4KICAgIDxnIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z183Ij4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfOCIgZD0ibTExMC4yOTgyOTIsMTYxLjI5MzAxMWMwLDcuMSAtNS44LDEyLjkgLTEyLjksMTIuOXMtMTIuOSwtNS44IC0xMi45LC0xMi45YzAsLTcuMSA1LjgsLTEyLjkgMTIuOSwtMTIuOWwxMi45LDBsMCwxMi45eiIgY2xhc3M9InN0MCIvPgogICAgIDxwYXRoIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z185IiBkPSJtMTE2Ljc5ODI5MiwxNjEuMjkzMDExYzAsLTcuMSA1LjgsLTEyLjkgMTIuOSwtMTIuOXMxMi45LDUuOCAxMi45LDEyLjlsMCwzMi4zYzAsNy4xIC01LjgsMTIuOSAtMTIuOSwxMi45cy0xMi45LC01LjggLTEyLjksLTEyLjljMCwwIDAsLTMyLjMgMCwtMzIuM3oiIGNsYXNzPSJzdDAiLz4KICAgIDwvZz4KICAgIDxnIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z18xMCI+CiAgICAgPHBhdGggc3Ryb2tlPSJudWxsIiBpZD0ic3ZnXzExIiBkPSJtMTI5LjY5ODI5MiwxMDkuNDkzMDExYy03LjEsMCAtMTIuOSwtNS44IC0xMi45LC0xMi45czUuOCwtMTIuOSAxMi45LC0xMi45czEyLjksNS44IDEyLjksMTIuOWwwLDEyLjlsLTEyLjksMHoiIGNsYXNzPSJzdDAiLz4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTIiIGQ9Im0xMjkuNjk4MjkyLDExNS45OTMwMTFjNy4xLDAgMTIuOSw1LjggMTIuOSwxMi45cy01LjgsMTIuOSAtMTIuOSwxMi45bC0zMi4zLDBjLTcuMSwwIC0xMi45LC01LjggLTEyLjksLTEyLjlzNS44LC0xMi45IDEyLjksLTEyLjljMCwwIDMyLjMsMCAzMi4zLDB6IiBjbGFzcz0ic3QwIi8+CiAgICA8L2c+CiAgICA8ZyBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTMiPgogICAgIDxwYXRoIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z18xNCIgZD0ibTE4MS40OTgyOTIsMTI4Ljg5MzAxMWMwLC03LjEgNS44LC0xMi45IDEyLjksLTEyLjljNy4xLDAgMTIuOSw1LjggMTIuOSwxMi45cy01LjgsMTIuOSAtMTIuOSwxMi45bC0xMi45LDBsMCwtMTIuOXoiIGNsYXNzPSJzdDAiLz4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTUiIGQ9Im0xNzQuOTk4MjkyLDEyOC44OTMwMTFjMCw3LjEgLTUuOCwxMi45IC0xMi45LDEyLjljLTcuMSwwIC0xMi45LC01LjggLTEyLjksLTEyLjlsMCwtMzIuM2MwLC03LjEgNS44LC0xMi45IDEyLjksLTEyLjljNy4xLDAgMTIuOSw1LjggMTIuOSwxMi45bDAsMzIuM3oiIGNsYXNzPSJzdDAiLz4KICAgIDwvZz4KICAgIDxnIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z18xNiI+CiAgICAgPHBhdGggc3Ryb2tlPSJudWxsIiBpZD0ic3ZnXzE3IiBkPSJtMTYyLjA5ODI5MiwxODAuNjkzMDExYzcuMSwwIDEyLjksNS44IDEyLjksMTIuOWMwLDcuMSAtNS44LDEyLjkgLTEyLjksMTIuOWMtNy4xLDAgLTEyLjksLTUuOCAtMTIuOSwtMTIuOWwwLC0xMi45bDEyLjksMHoiIGNsYXNzPSJzdDAiLz4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTgiIGQ9Im0xNjIuMDk4MjkyLDE3NC4xOTMwMTFjLTcuMSwwIC0xMi45LC01LjggLTEyLjksLTEyLjljMCwtNy4xIDUuOCwtMTIuOSAxMi45LC0xMi45bDMyLjMsMGM3LjEsMCAxMi45LDUuOCAxMi45LDEyLjljMCw3LjEgLTUuOCwxMi45IC0xMi45LDEyLjlsLTMyLjMsMHoiIGNsYXNzPSJzdDAiLz4KICAgIDwvZz4KICAgPC9nPgogIDwvZz4KIDwvZz4KPC9zdmc+" alt="Slack logo"/></a></li><li><a href="https://stackoverflow.com/search?q=%23OpenJ9" rel="noopener noreferrer" target="_blank"><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjRweCIgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgNjUgNzAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5zdGFja292ZXJmbG93LWxvZ288L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0iI0ZGRkZGRiIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0ic3RhY2tvdmVyZmxvdy1sb2dvIiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgZmlsbD0iI0ZGRkZGRiIgcG9pbnRzPSI1NC4yNDE3MjY2IDYzLjc3MDIyNjUgNTQuMjQxNzI2NiA0NSA2MSA0NSA2MSA3MCAwIDcwIDAgNDUgNi43NTgyNzMzOCA0NSA2Ljc1ODI3MzM4IDYzLjc3MDIyNjUiPjwvcG9seWdvbj4KICAgICAgICAgICAgPHBhdGggZD0iTTE0LjcwNzEwNTcsNDMuNjQyNzU2NyBMNDguMTE3ODUxLDUwLjA4NzIwMTEgTDQ5LjUzMjA2MjQsNDMuODg3NDgyNCBMMTYuMTIxMzE3MiwzNy40NDMwMzggTDE0LjcwNzEwNTcsNDMuNjQyNzU2NyBMMTQuNzA3MTA1Nyw0My42NDI3NTY3IFogTTE5LjEyNjUxNjUsMjguOTU5MjEyNCBMNTAuMDYyMzkxNyw0Mi4yNTU5Nzc1IEw1Mi44OTA4MTQ2LDM2LjU0NTcxMDMgTDIxLjk1NDkzOTMsMjMuMTY3MzY5OSBMMTkuMTI2NTE2NSwyOC45NTkyMTI0IFogTTI3LjcwMDE3MzMsMTQuOTI4MjcgTDUzLjk1MTQ3MzEsMzUuMDc3MzU1OCBMNTguMjgyNDk1NywzMC4yNjQ0MTYzIEwzMi4wMzExOTU4LDEwLjExNTMzMDUgTDI3LjcwMDE3MzMsMTQuOTI4MjcgTDI3LjcwMDE3MzMsMTQuOTI4MjcgWiBNNDQuNjcwNzEwNiwwIEwzOS4xOTA2NDEyLDMuNzUyNDYxMzIgTDU5LjUxOTkzMDcsMjkuMDQwNzg3NiBMNjUsMjUuMjg4MzI2MyBMNDQuNjcwNzEwNiwwIFogTTE0LDU4IEw0OC4xMTc4NTEsNTggTDQ4LjExNzg1MSw1MS43MTg3MDYgTDE0LDUxLjcxODcwNiBMMTQsNTggWiIgaWQ9IlNoYXBlIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4KCgo=" alt="Stack Overflow logo"/></a></li></ul></nav></footer></div></div><script>
+ */.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\F26E"}.fa-accessible-icon:before{content:"\F368"}.fa-accusoft:before{content:"\F369"}.fa-acquisitions-incorporated:before{content:"\F6AF"}.fa-ad:before{content:"\F641"}.fa-address-book:before{content:"\F2B9"}.fa-address-card:before{content:"\F2BB"}.fa-adjust:before{content:"\F042"}.fa-adn:before{content:"\F170"}.fa-adobe:before{content:"\F778"}.fa-adversal:before{content:"\F36A"}.fa-affiliatetheme:before{content:"\F36B"}.fa-air-freshener:before{content:"\F5D0"}.fa-airbnb:before{content:"\F834"}.fa-algolia:before{content:"\F36C"}.fa-align-center:before{content:"\F037"}.fa-align-justify:before{content:"\F039"}.fa-align-left:before{content:"\F036"}.fa-align-right:before{content:"\F038"}.fa-alipay:before{content:"\F642"}.fa-allergies:before{content:"\F461"}.fa-amazon:before{content:"\F270"}.fa-amazon-pay:before{content:"\F42C"}.fa-ambulance:before{content:"\F0F9"}.fa-american-sign-language-interpreting:before{content:"\F2A3"}.fa-amilia:before{content:"\F36D"}.fa-anchor:before{content:"\F13D"}.fa-android:before{content:"\F17B"}.fa-angellist:before{content:"\F209"}.fa-angle-double-down:before{content:"\F103"}.fa-angle-double-left:before{content:"\F100"}.fa-angle-double-right:before{content:"\F101"}.fa-angle-double-up:before{content:"\F102"}.fa-angle-down:before{content:"\F107"}.fa-angle-left:before{content:"\F104"}.fa-angle-right:before{content:"\F105"}.fa-angle-up:before{content:"\F106"}.fa-angry:before{content:"\F556"}.fa-angrycreative:before{content:"\F36E"}.fa-angular:before{content:"\F420"}.fa-ankh:before{content:"\F644"}.fa-app-store:before{content:"\F36F"}.fa-app-store-ios:before{content:"\F370"}.fa-apper:before{content:"\F371"}.fa-apple:before{content:"\F179"}.fa-apple-alt:before{content:"\F5D1"}.fa-apple-pay:before{content:"\F415"}.fa-archive:before{content:"\F187"}.fa-archway:before{content:"\F557"}.fa-arrow-alt-circle-down:before{content:"\F358"}.fa-arrow-alt-circle-left:before{content:"\F359"}.fa-arrow-alt-circle-right:before{content:"\F35A"}.fa-arrow-alt-circle-up:before{content:"\F35B"}.fa-arrow-circle-down:before{content:"\F0AB"}.fa-arrow-circle-left:before{content:"\F0A8"}.fa-arrow-circle-right:before{content:"\F0A9"}.fa-arrow-circle-up:before{content:"\F0AA"}.fa-arrow-down:before{content:"\F063"}.fa-arrow-left:before{content:"\F060"}.fa-arrow-right:before{content:"\F061"}.fa-arrow-up:before{content:"\F062"}.fa-arrows-alt:before{content:"\F0B2"}.fa-arrows-alt-h:before{content:"\F337"}.fa-arrows-alt-v:before{content:"\F338"}.fa-artstation:before{content:"\F77A"}.fa-assistive-listening-systems:before{content:"\F2A2"}.fa-asterisk:before{content:"\F069"}.fa-asymmetrik:before{content:"\F372"}.fa-at:before{content:"\F1FA"}.fa-atlas:before{content:"\F558"}.fa-atlassian:before{content:"\F77B"}.fa-atom:before{content:"\F5D2"}.fa-audible:before{content:"\F373"}.fa-audio-description:before{content:"\F29E"}.fa-autoprefixer:before{content:"\F41C"}.fa-avianex:before{content:"\F374"}.fa-aviato:before{content:"\F421"}.fa-award:before{content:"\F559"}.fa-aws:before{content:"\F375"}.fa-baby:before{content:"\F77C"}.fa-baby-carriage:before{content:"\F77D"}.fa-backspace:before{content:"\F55A"}.fa-backward:before{content:"\F04A"}.fa-bacon:before{content:"\F7E5"}.fa-bahai:before{content:"\F666"}.fa-balance-scale:before{content:"\F24E"}.fa-balance-scale-left:before{content:"\F515"}.fa-balance-scale-right:before{content:"\F516"}.fa-ban:before{content:"\F05E"}.fa-band-aid:before{content:"\F462"}.fa-bandcamp:before{content:"\F2D5"}.fa-barcode:before{content:"\F02A"}.fa-bars:before{content:"\F0C9"}.fa-baseball-ball:before{content:"\F433"}.fa-basketball-ball:before{content:"\F434"}.fa-bath:before{content:"\F2CD"}.fa-battery-empty:before{content:"\F244"}.fa-battery-full:before{content:"\F240"}.fa-battery-half:before{content:"\F242"}.fa-battery-quarter:before{content:"\F243"}.fa-battery-three-quarters:before{content:"\F241"}.fa-battle-net:before{content:"\F835"}.fa-bed:before{content:"\F236"}.fa-beer:before{content:"\F0FC"}.fa-behance:before{content:"\F1B4"}.fa-behance-square:before{content:"\F1B5"}.fa-bell:before{content:"\F0F3"}.fa-bell-slash:before{content:"\F1F6"}.fa-bezier-curve:before{content:"\F55B"}.fa-bible:before{content:"\F647"}.fa-bicycle:before{content:"\F206"}.fa-biking:before{content:"\F84A"}.fa-bimobject:before{content:"\F378"}.fa-binoculars:before{content:"\F1E5"}.fa-biohazard:before{content:"\F780"}.fa-birthday-cake:before{content:"\F1FD"}.fa-bitbucket:before{content:"\F171"}.fa-bitcoin:before{content:"\F379"}.fa-bity:before{content:"\F37A"}.fa-black-tie:before{content:"\F27E"}.fa-blackberry:before{content:"\F37B"}.fa-blender:before{content:"\F517"}.fa-blender-phone:before{content:"\F6B6"}.fa-blind:before{content:"\F29D"}.fa-blog:before{content:"\F781"}.fa-blogger:before{content:"\F37C"}.fa-blogger-b:before{content:"\F37D"}.fa-bluetooth:before{content:"\F293"}.fa-bluetooth-b:before{content:"\F294"}.fa-bold:before{content:"\F032"}.fa-bolt:before{content:"\F0E7"}.fa-bomb:before{content:"\F1E2"}.fa-bone:before{content:"\F5D7"}.fa-bong:before{content:"\F55C"}.fa-book:before{content:"\F02D"}.fa-book-dead:before{content:"\F6B7"}.fa-book-medical:before{content:"\F7E6"}.fa-book-open:before{content:"\F518"}.fa-book-reader:before{content:"\F5DA"}.fa-bookmark:before{content:"\F02E"}.fa-bootstrap:before{content:"\F836"}.fa-border-all:before{content:"\F84C"}.fa-border-none:before{content:"\F850"}.fa-border-style:before{content:"\F853"}.fa-bowling-ball:before{content:"\F436"}.fa-box:before{content:"\F466"}.fa-box-open:before{content:"\F49E"}.fa-boxes:before{content:"\F468"}.fa-braille:before{content:"\F2A1"}.fa-brain:before{content:"\F5DC"}.fa-bread-slice:before{content:"\F7EC"}.fa-briefcase:before{content:"\F0B1"}.fa-briefcase-medical:before{content:"\F469"}.fa-broadcast-tower:before{content:"\F519"}.fa-broom:before{content:"\F51A"}.fa-brush:before{content:"\F55D"}.fa-btc:before{content:"\F15A"}.fa-buffer:before{content:"\F837"}.fa-bug:before{content:"\F188"}.fa-building:before{content:"\F1AD"}.fa-bullhorn:before{content:"\F0A1"}.fa-bullseye:before{content:"\F140"}.fa-burn:before{content:"\F46A"}.fa-buromobelexperte:before{content:"\F37F"}.fa-bus:before{content:"\F207"}.fa-bus-alt:before{content:"\F55E"}.fa-business-time:before{content:"\F64A"}.fa-buy-n-large:before{content:"\F8A6"}.fa-buysellads:before{content:"\F20D"}.fa-calculator:before{content:"\F1EC"}.fa-calendar:before{content:"\F133"}.fa-calendar-alt:before{content:"\F073"}.fa-calendar-check:before{content:"\F274"}.fa-calendar-day:before{content:"\F783"}.fa-calendar-minus:before{content:"\F272"}.fa-calendar-plus:before{content:"\F271"}.fa-calendar-times:before{content:"\F273"}.fa-calendar-week:before{content:"\F784"}.fa-camera:before{content:"\F030"}.fa-camera-retro:before{content:"\F083"}.fa-campground:before{content:"\F6BB"}.fa-canadian-maple-leaf:before{content:"\F785"}.fa-candy-cane:before{content:"\F786"}.fa-cannabis:before{content:"\F55F"}.fa-capsules:before{content:"\F46B"}.fa-car:before{content:"\F1B9"}.fa-car-alt:before{content:"\F5DE"}.fa-car-battery:before{content:"\F5DF"}.fa-car-crash:before{content:"\F5E1"}.fa-car-side:before{content:"\F5E4"}.fa-caravan:before{content:"\F8FF"}.fa-caret-down:before{content:"\F0D7"}.fa-caret-left:before{content:"\F0D9"}.fa-caret-right:before{content:"\F0DA"}.fa-caret-square-down:before{content:"\F150"}.fa-caret-square-left:before{content:"\F191"}.fa-caret-square-right:before{content:"\F152"}.fa-caret-square-up:before{content:"\F151"}.fa-caret-up:before{content:"\F0D8"}.fa-carrot:before{content:"\F787"}.fa-cart-arrow-down:before{content:"\F218"}.fa-cart-plus:before{content:"\F217"}.fa-cash-register:before{content:"\F788"}.fa-cat:before{content:"\F6BE"}.fa-cc-amazon-pay:before{content:"\F42D"}.fa-cc-amex:before{content:"\F1F3"}.fa-cc-apple-pay:before{content:"\F416"}.fa-cc-diners-club:before{content:"\F24C"}.fa-cc-discover:before{content:"\F1F2"}.fa-cc-jcb:before{content:"\F24B"}.fa-cc-mastercard:before{content:"\F1F1"}.fa-cc-paypal:before{content:"\F1F4"}.fa-cc-stripe:before{content:"\F1F5"}.fa-cc-visa:before{content:"\F1F0"}.fa-centercode:before{content:"\F380"}.fa-centos:before{content:"\F789"}.fa-certificate:before{content:"\F0A3"}.fa-chair:before{content:"\F6C0"}.fa-chalkboard:before{content:"\F51B"}.fa-chalkboard-teacher:before{content:"\F51C"}.fa-charging-station:before{content:"\F5E7"}.fa-chart-area:before{content:"\F1FE"}.fa-chart-bar:before{content:"\F080"}.fa-chart-line:before{content:"\F201"}.fa-chart-pie:before{content:"\F200"}.fa-check:before{content:"\F00C"}.fa-check-circle:before{content:"\F058"}.fa-check-double:before{content:"\F560"}.fa-check-square:before{content:"\F14A"}.fa-cheese:before{content:"\F7EF"}.fa-chess:before{content:"\F439"}.fa-chess-bishop:before{content:"\F43A"}.fa-chess-board:before{content:"\F43C"}.fa-chess-king:before{content:"\F43F"}.fa-chess-knight:before{content:"\F441"}.fa-chess-pawn:before{content:"\F443"}.fa-chess-queen:before{content:"\F445"}.fa-chess-rook:before{content:"\F447"}.fa-chevron-circle-down:before{content:"\F13A"}.fa-chevron-circle-left:before{content:"\F137"}.fa-chevron-circle-right:before{content:"\F138"}.fa-chevron-circle-up:before{content:"\F139"}.fa-chevron-down:before{content:"\F078"}.fa-chevron-left:before{content:"\F053"}.fa-chevron-right:before{content:"\F054"}.fa-chevron-up:before{content:"\F077"}.fa-child:before{content:"\F1AE"}.fa-chrome:before{content:"\F268"}.fa-chromecast:before{content:"\F838"}.fa-church:before{content:"\F51D"}.fa-circle:before{content:"\F111"}.fa-circle-notch:before{content:"\F1CE"}.fa-city:before{content:"\F64F"}.fa-clinic-medical:before{content:"\F7F2"}.fa-clipboard:before{content:"\F328"}.fa-clipboard-check:before{content:"\F46C"}.fa-clipboard-list:before{content:"\F46D"}.fa-clock:before{content:"\F017"}.fa-clone:before{content:"\F24D"}.fa-closed-captioning:before{content:"\F20A"}.fa-cloud:before{content:"\F0C2"}.fa-cloud-download-alt:before{content:"\F381"}.fa-cloud-meatball:before{content:"\F73B"}.fa-cloud-moon:before{content:"\F6C3"}.fa-cloud-moon-rain:before{content:"\F73C"}.fa-cloud-rain:before{content:"\F73D"}.fa-cloud-showers-heavy:before{content:"\F740"}.fa-cloud-sun:before{content:"\F6C4"}.fa-cloud-sun-rain:before{content:"\F743"}.fa-cloud-upload-alt:before{content:"\F382"}.fa-cloudscale:before{content:"\F383"}.fa-cloudsmith:before{content:"\F384"}.fa-cloudversify:before{content:"\F385"}.fa-cocktail:before{content:"\F561"}.fa-code:before{content:"\F121"}.fa-code-branch:before{content:"\F126"}.fa-codepen:before{content:"\F1CB"}.fa-codiepie:before{content:"\F284"}.fa-coffee:before{content:"\F0F4"}.fa-cog:before{content:"\F013"}.fa-cogs:before{content:"\F085"}.fa-coins:before{content:"\F51E"}.fa-columns:before{content:"\F0DB"}.fa-comment:before{content:"\F075"}.fa-comment-alt:before{content:"\F27A"}.fa-comment-dollar:before{content:"\F651"}.fa-comment-dots:before{content:"\F4AD"}.fa-comment-medical:before{content:"\F7F5"}.fa-comment-slash:before{content:"\F4B3"}.fa-comments:before{content:"\F086"}.fa-comments-dollar:before{content:"\F653"}.fa-compact-disc:before{content:"\F51F"}.fa-compass:before{content:"\F14E"}.fa-compress:before{content:"\F066"}.fa-compress-alt:before{content:"\F422"}.fa-compress-arrows-alt:before{content:"\F78C"}.fa-concierge-bell:before{content:"\F562"}.fa-confluence:before{content:"\F78D"}.fa-connectdevelop:before{content:"\F20E"}.fa-contao:before{content:"\F26D"}.fa-cookie:before{content:"\F563"}.fa-cookie-bite:before{content:"\F564"}.fa-copy:before{content:"\F0C5"}.fa-copyright:before{content:"\F1F9"}.fa-cotton-bureau:before{content:"\F89E"}.fa-couch:before{content:"\F4B8"}.fa-cpanel:before{content:"\F388"}.fa-creative-commons:before{content:"\F25E"}.fa-creative-commons-by:before{content:"\F4E7"}.fa-creative-commons-nc:before{content:"\F4E8"}.fa-creative-commons-nc-eu:before{content:"\F4E9"}.fa-creative-commons-nc-jp:before{content:"\F4EA"}.fa-creative-commons-nd:before{content:"\F4EB"}.fa-creative-commons-pd:before{content:"\F4EC"}.fa-creative-commons-pd-alt:before{content:"\F4ED"}.fa-creative-commons-remix:before{content:"\F4EE"}.fa-creative-commons-sa:before{content:"\F4EF"}.fa-creative-commons-sampling:before{content:"\F4F0"}.fa-creative-commons-sampling-plus:before{content:"\F4F1"}.fa-creative-commons-share:before{content:"\F4F2"}.fa-creative-commons-zero:before{content:"\F4F3"}.fa-credit-card:before{content:"\F09D"}.fa-critical-role:before{content:"\F6C9"}.fa-crop:before{content:"\F125"}.fa-crop-alt:before{content:"\F565"}.fa-cross:before{content:"\F654"}.fa-crosshairs:before{content:"\F05B"}.fa-crow:before{content:"\F520"}.fa-crown:before{content:"\F521"}.fa-crutch:before{content:"\F7F7"}.fa-css3:before{content:"\F13C"}.fa-css3-alt:before{content:"\F38B"}.fa-cube:before{content:"\F1B2"}.fa-cubes:before{content:"\F1B3"}.fa-cut:before{content:"\F0C4"}.fa-cuttlefish:before{content:"\F38C"}.fa-d-and-d:before{content:"\F38D"}.fa-d-and-d-beyond:before{content:"\F6CA"}.fa-dailymotion:before{content:"\F952"}.fa-dashcube:before{content:"\F210"}.fa-database:before{content:"\F1C0"}.fa-deaf:before{content:"\F2A4"}.fa-delicious:before{content:"\F1A5"}.fa-democrat:before{content:"\F747"}.fa-deploydog:before{content:"\F38E"}.fa-deskpro:before{content:"\F38F"}.fa-desktop:before{content:"\F108"}.fa-dev:before{content:"\F6CC"}.fa-deviantart:before{content:"\F1BD"}.fa-dharmachakra:before{content:"\F655"}.fa-dhl:before{content:"\F790"}.fa-diagnoses:before{content:"\F470"}.fa-diaspora:before{content:"\F791"}.fa-dice:before{content:"\F522"}.fa-dice-d20:before{content:"\F6CF"}.fa-dice-d6:before{content:"\F6D1"}.fa-dice-five:before{content:"\F523"}.fa-dice-four:before{content:"\F524"}.fa-dice-one:before{content:"\F525"}.fa-dice-six:before{content:"\F526"}.fa-dice-three:before{content:"\F527"}.fa-dice-two:before{content:"\F528"}.fa-digg:before{content:"\F1A6"}.fa-digital-ocean:before{content:"\F391"}.fa-digital-tachograph:before{content:"\F566"}.fa-directions:before{content:"\F5EB"}.fa-discord:before{content:"\F392"}.fa-discourse:before{content:"\F393"}.fa-divide:before{content:"\F529"}.fa-dizzy:before{content:"\F567"}.fa-dna:before{content:"\F471"}.fa-dochub:before{content:"\F394"}.fa-docker:before{content:"\F395"}.fa-dog:before{content:"\F6D3"}.fa-dollar-sign:before{content:"\F155"}.fa-dolly:before{content:"\F472"}.fa-dolly-flatbed:before{content:"\F474"}.fa-donate:before{content:"\F4B9"}.fa-door-closed:before{content:"\F52A"}.fa-door-open:before{content:"\F52B"}.fa-dot-circle:before{content:"\F192"}.fa-dove:before{content:"\F4BA"}.fa-download:before{content:"\F019"}.fa-draft2digital:before{content:"\F396"}.fa-drafting-compass:before{content:"\F568"}.fa-dragon:before{content:"\F6D5"}.fa-draw-polygon:before{content:"\F5EE"}.fa-dribbble:before{content:"\F17D"}.fa-dribbble-square:before{content:"\F397"}.fa-dropbox:before{content:"\F16B"}.fa-drum:before{content:"\F569"}.fa-drum-steelpan:before{content:"\F56A"}.fa-drumstick-bite:before{content:"\F6D7"}.fa-drupal:before{content:"\F1A9"}.fa-dumbbell:before{content:"\F44B"}.fa-dumpster:before{content:"\F793"}.fa-dumpster-fire:before{content:"\F794"}.fa-dungeon:before{content:"\F6D9"}.fa-dyalog:before{content:"\F399"}.fa-earlybirds:before{content:"\F39A"}.fa-ebay:before{content:"\F4F4"}.fa-edge:before{content:"\F282"}.fa-edit:before{content:"\F044"}.fa-egg:before{content:"\F7FB"}.fa-eject:before{content:"\F052"}.fa-elementor:before{content:"\F430"}.fa-ellipsis-h:before{content:"\F141"}.fa-ellipsis-v:before{content:"\F142"}.fa-ello:before{content:"\F5F1"}.fa-ember:before{content:"\F423"}.fa-empire:before{content:"\F1D1"}.fa-envelope:before{content:"\F0E0"}.fa-envelope-open:before{content:"\F2B6"}.fa-envelope-open-text:before{content:"\F658"}.fa-envelope-square:before{content:"\F199"}.fa-envira:before{content:"\F299"}.fa-equals:before{content:"\F52C"}.fa-eraser:before{content:"\F12D"}.fa-erlang:before{content:"\F39D"}.fa-ethereum:before{content:"\F42E"}.fa-ethernet:before{content:"\F796"}.fa-etsy:before{content:"\F2D7"}.fa-euro-sign:before{content:"\F153"}.fa-evernote:before{content:"\F839"}.fa-exchange-alt:before{content:"\F362"}.fa-exclamation:before{content:"\F12A"}.fa-exclamation-circle:before{content:"\F06A"}.fa-exclamation-triangle:before{content:"\F071"}.fa-expand:before{content:"\F065"}.fa-expand-alt:before{content:"\F424"}.fa-expand-arrows-alt:before{content:"\F31E"}.fa-expeditedssl:before{content:"\F23E"}.fa-external-link-alt:before{content:"\F35D"}.fa-external-link-square-alt:before{content:"\F360"}.fa-eye:before{content:"\F06E"}.fa-eye-dropper:before{content:"\F1FB"}.fa-eye-slash:before{content:"\F070"}.fa-facebook:before{content:"\F09A"}.fa-facebook-f:before{content:"\F39E"}.fa-facebook-messenger:before{content:"\F39F"}.fa-facebook-square:before{content:"\F082"}.fa-fan:before{content:"\F863"}.fa-fantasy-flight-games:before{content:"\F6DC"}.fa-fast-backward:before{content:"\F049"}.fa-fast-forward:before{content:"\F050"}.fa-fax:before{content:"\F1AC"}.fa-feather:before{content:"\F52D"}.fa-feather-alt:before{content:"\F56B"}.fa-fedex:before{content:"\F797"}.fa-fedora:before{content:"\F798"}.fa-female:before{content:"\F182"}.fa-fighter-jet:before{content:"\F0FB"}.fa-figma:before{content:"\F799"}.fa-file:before{content:"\F15B"}.fa-file-alt:before{content:"\F15C"}.fa-file-archive:before{content:"\F1C6"}.fa-file-audio:before{content:"\F1C7"}.fa-file-code:before{content:"\F1C9"}.fa-file-contract:before{content:"\F56C"}.fa-file-csv:before{content:"\F6DD"}.fa-file-download:before{content:"\F56D"}.fa-file-excel:before{content:"\F1C3"}.fa-file-export:before{content:"\F56E"}.fa-file-image:before{content:"\F1C5"}.fa-file-import:before{content:"\F56F"}.fa-file-invoice:before{content:"\F570"}.fa-file-invoice-dollar:before{content:"\F571"}.fa-file-medical:before{content:"\F477"}.fa-file-medical-alt:before{content:"\F478"}.fa-file-pdf:before{content:"\F1C1"}.fa-file-powerpoint:before{content:"\F1C4"}.fa-file-prescription:before{content:"\F572"}.fa-file-signature:before{content:"\F573"}.fa-file-upload:before{content:"\F574"}.fa-file-video:before{content:"\F1C8"}.fa-file-word:before{content:"\F1C2"}.fa-fill:before{content:"\F575"}.fa-fill-drip:before{content:"\F576"}.fa-film:before{content:"\F008"}.fa-filter:before{content:"\F0B0"}.fa-fingerprint:before{content:"\F577"}.fa-fire:before{content:"\F06D"}.fa-fire-alt:before{content:"\F7E4"}.fa-fire-extinguisher:before{content:"\F134"}.fa-firefox:before{content:"\F269"}.fa-firefox-browser:before{content:"\F907"}.fa-first-aid:before{content:"\F479"}.fa-first-order:before{content:"\F2B0"}.fa-first-order-alt:before{content:"\F50A"}.fa-firstdraft:before{content:"\F3A1"}.fa-fish:before{content:"\F578"}.fa-fist-raised:before{content:"\F6DE"}.fa-flag:before{content:"\F024"}.fa-flag-checkered:before{content:"\F11E"}.fa-flag-usa:before{content:"\F74D"}.fa-flask:before{content:"\F0C3"}.fa-flickr:before{content:"\F16E"}.fa-flipboard:before{content:"\F44D"}.fa-flushed:before{content:"\F579"}.fa-fly:before{content:"\F417"}.fa-folder:before{content:"\F07B"}.fa-folder-minus:before{content:"\F65D"}.fa-folder-open:before{content:"\F07C"}.fa-folder-plus:before{content:"\F65E"}.fa-font:before{content:"\F031"}.fa-font-awesome:before{content:"\F2B4"}.fa-font-awesome-alt:before{content:"\F35C"}.fa-font-awesome-flag:before{content:"\F425"}.fa-font-awesome-logo-full:before{content:"\F4E6"}.fa-fonticons:before{content:"\F280"}.fa-fonticons-fi:before{content:"\F3A2"}.fa-football-ball:before{content:"\F44E"}.fa-fort-awesome:before{content:"\F286"}.fa-fort-awesome-alt:before{content:"\F3A3"}.fa-forumbee:before{content:"\F211"}.fa-forward:before{content:"\F04E"}.fa-foursquare:before{content:"\F180"}.fa-free-code-camp:before{content:"\F2C5"}.fa-freebsd:before{content:"\F3A4"}.fa-frog:before{content:"\F52E"}.fa-frown:before{content:"\F119"}.fa-frown-open:before{content:"\F57A"}.fa-fulcrum:before{content:"\F50B"}.fa-funnel-dollar:before{content:"\F662"}.fa-futbol:before{content:"\F1E3"}.fa-galactic-republic:before{content:"\F50C"}.fa-galactic-senate:before{content:"\F50D"}.fa-gamepad:before{content:"\F11B"}.fa-gas-pump:before{content:"\F52F"}.fa-gavel:before{content:"\F0E3"}.fa-gem:before{content:"\F3A5"}.fa-genderless:before{content:"\F22D"}.fa-get-pocket:before{content:"\F265"}.fa-gg:before{content:"\F260"}.fa-gg-circle:before{content:"\F261"}.fa-ghost:before{content:"\F6E2"}.fa-gift:before{content:"\F06B"}.fa-gifts:before{content:"\F79C"}.fa-git:before{content:"\F1D3"}.fa-git-alt:before{content:"\F841"}.fa-git-square:before{content:"\F1D2"}.fa-github:before{content:"\F09B"}.fa-github-alt:before{content:"\F113"}.fa-github-square:before{content:"\F092"}.fa-gitkraken:before{content:"\F3A6"}.fa-gitlab:before{content:"\F296"}.fa-gitter:before{content:"\F426"}.fa-glass-cheers:before{content:"\F79F"}.fa-glass-martini:before{content:"\F000"}.fa-glass-martini-alt:before{content:"\F57B"}.fa-glass-whiskey:before{content:"\F7A0"}.fa-glasses:before{content:"\F530"}.fa-glide:before{content:"\F2A5"}.fa-glide-g:before{content:"\F2A6"}.fa-globe:before{content:"\F0AC"}.fa-globe-africa:before{content:"\F57C"}.fa-globe-americas:before{content:"\F57D"}.fa-globe-asia:before{content:"\F57E"}.fa-globe-europe:before{content:"\F7A2"}.fa-gofore:before{content:"\F3A7"}.fa-golf-ball:before{content:"\F450"}.fa-goodreads:before{content:"\F3A8"}.fa-goodreads-g:before{content:"\F3A9"}.fa-google:before{content:"\F1A0"}.fa-google-drive:before{content:"\F3AA"}.fa-google-play:before{content:"\F3AB"}.fa-google-plus:before{content:"\F2B3"}.fa-google-plus-g:before{content:"\F0D5"}.fa-google-plus-square:before{content:"\F0D4"}.fa-google-wallet:before{content:"\F1EE"}.fa-gopuram:before{content:"\F664"}.fa-graduation-cap:before{content:"\F19D"}.fa-gratipay:before{content:"\F184"}.fa-grav:before{content:"\F2D6"}.fa-greater-than:before{content:"\F531"}.fa-greater-than-equal:before{content:"\F532"}.fa-grimace:before{content:"\F57F"}.fa-grin:before{content:"\F580"}.fa-grin-alt:before{content:"\F581"}.fa-grin-beam:before{content:"\F582"}.fa-grin-beam-sweat:before{content:"\F583"}.fa-grin-hearts:before{content:"\F584"}.fa-grin-squint:before{content:"\F585"}.fa-grin-squint-tears:before{content:"\F586"}.fa-grin-stars:before{content:"\F587"}.fa-grin-tears:before{content:"\F588"}.fa-grin-tongue:before{content:"\F589"}.fa-grin-tongue-squint:before{content:"\F58A"}.fa-grin-tongue-wink:before{content:"\F58B"}.fa-grin-wink:before{content:"\F58C"}.fa-grip-horizontal:before{content:"\F58D"}.fa-grip-lines:before{content:"\F7A4"}.fa-grip-lines-vertical:before{content:"\F7A5"}.fa-grip-vertical:before{content:"\F58E"}.fa-gripfire:before{content:"\F3AC"}.fa-grunt:before{content:"\F3AD"}.fa-guitar:before{content:"\F7A6"}.fa-gulp:before{content:"\F3AE"}.fa-h-square:before{content:"\F0FD"}.fa-hacker-news:before{content:"\F1D4"}.fa-hacker-news-square:before{content:"\F3AF"}.fa-hackerrank:before{content:"\F5F7"}.fa-hamburger:before{content:"\F805"}.fa-hammer:before{content:"\F6E3"}.fa-hamsa:before{content:"\F665"}.fa-hand-holding:before{content:"\F4BD"}.fa-hand-holding-heart:before{content:"\F4BE"}.fa-hand-holding-usd:before{content:"\F4C0"}.fa-hand-lizard:before{content:"\F258"}.fa-hand-middle-finger:before{content:"\F806"}.fa-hand-paper:before{content:"\F256"}.fa-hand-peace:before{content:"\F25B"}.fa-hand-point-down:before{content:"\F0A7"}.fa-hand-point-left:before{content:"\F0A5"}.fa-hand-point-right:before{content:"\F0A4"}.fa-hand-point-up:before{content:"\F0A6"}.fa-hand-pointer:before{content:"\F25A"}.fa-hand-rock:before{content:"\F255"}.fa-hand-scissors:before{content:"\F257"}.fa-hand-spock:before{content:"\F259"}.fa-hands:before{content:"\F4C2"}.fa-hands-helping:before{content:"\F4C4"}.fa-handshake:before{content:"\F2B5"}.fa-hanukiah:before{content:"\F6E6"}.fa-hard-hat:before{content:"\F807"}.fa-hashtag:before{content:"\F292"}.fa-hat-cowboy:before{content:"\F8C0"}.fa-hat-cowboy-side:before{content:"\F8C1"}.fa-hat-wizard:before{content:"\F6E8"}.fa-hdd:before{content:"\F0A0"}.fa-heading:before{content:"\F1DC"}.fa-headphones:before{content:"\F025"}.fa-headphones-alt:before{content:"\F58F"}.fa-headset:before{content:"\F590"}.fa-heart:before{content:"\F004"}.fa-heart-broken:before{content:"\F7A9"}.fa-heartbeat:before{content:"\F21E"}.fa-helicopter:before{content:"\F533"}.fa-highlighter:before{content:"\F591"}.fa-hiking:before{content:"\F6EC"}.fa-hippo:before{content:"\F6ED"}.fa-hips:before{content:"\F452"}.fa-hire-a-helper:before{content:"\F3B0"}.fa-history:before{content:"\F1DA"}.fa-hockey-puck:before{content:"\F453"}.fa-holly-berry:before{content:"\F7AA"}.fa-home:before{content:"\F015"}.fa-hooli:before{content:"\F427"}.fa-hornbill:before{content:"\F592"}.fa-horse:before{content:"\F6F0"}.fa-horse-head:before{content:"\F7AB"}.fa-hospital:before{content:"\F0F8"}.fa-hospital-alt:before{content:"\F47D"}.fa-hospital-symbol:before{content:"\F47E"}.fa-hot-tub:before{content:"\F593"}.fa-hotdog:before{content:"\F80F"}.fa-hotel:before{content:"\F594"}.fa-hotjar:before{content:"\F3B1"}.fa-hourglass:before{content:"\F254"}.fa-hourglass-end:before{content:"\F253"}.fa-hourglass-half:before{content:"\F252"}.fa-hourglass-start:before{content:"\F251"}.fa-house-damage:before{content:"\F6F1"}.fa-houzz:before{content:"\F27C"}.fa-hryvnia:before{content:"\F6F2"}.fa-html5:before{content:"\F13B"}.fa-hubspot:before{content:"\F3B2"}.fa-i-cursor:before{content:"\F246"}.fa-ice-cream:before{content:"\F810"}.fa-icicles:before{content:"\F7AD"}.fa-icons:before{content:"\F86D"}.fa-id-badge:before{content:"\F2C1"}.fa-id-card:before{content:"\F2C2"}.fa-id-card-alt:before{content:"\F47F"}.fa-ideal:before{content:"\F913"}.fa-igloo:before{content:"\F7AE"}.fa-image:before{content:"\F03E"}.fa-images:before{content:"\F302"}.fa-imdb:before{content:"\F2D8"}.fa-inbox:before{content:"\F01C"}.fa-indent:before{content:"\F03C"}.fa-industry:before{content:"\F275"}.fa-infinity:before{content:"\F534"}.fa-info:before{content:"\F129"}.fa-info-circle:before{content:"\F05A"}.fa-instagram:before{content:"\F16D"}.fa-instagram-square:before{content:"\F955"}.fa-intercom:before{content:"\F7AF"}.fa-internet-explorer:before{content:"\F26B"}.fa-invision:before{content:"\F7B0"}.fa-ioxhost:before{content:"\F208"}.fa-italic:before{content:"\F033"}.fa-itch-io:before{content:"\F83A"}.fa-itunes:before{content:"\F3B4"}.fa-itunes-note:before{content:"\F3B5"}.fa-java:before{content:"\F4E4"}.fa-jedi:before{content:"\F669"}.fa-jedi-order:before{content:"\F50E"}.fa-jenkins:before{content:"\F3B6"}.fa-jira:before{content:"\F7B1"}.fa-joget:before{content:"\F3B7"}.fa-joint:before{content:"\F595"}.fa-joomla:before{content:"\F1AA"}.fa-journal-whills:before{content:"\F66A"}.fa-js:before{content:"\F3B8"}.fa-js-square:before{content:"\F3B9"}.fa-jsfiddle:before{content:"\F1CC"}.fa-kaaba:before{content:"\F66B"}.fa-kaggle:before{content:"\F5FA"}.fa-key:before{content:"\F084"}.fa-keybase:before{content:"\F4F5"}.fa-keyboard:before{content:"\F11C"}.fa-keycdn:before{content:"\F3BA"}.fa-khanda:before{content:"\F66D"}.fa-kickstarter:before{content:"\F3BB"}.fa-kickstarter-k:before{content:"\F3BC"}.fa-kiss:before{content:"\F596"}.fa-kiss-beam:before{content:"\F597"}.fa-kiss-wink-heart:before{content:"\F598"}.fa-kiwi-bird:before{content:"\F535"}.fa-korvue:before{content:"\F42F"}.fa-landmark:before{content:"\F66F"}.fa-language:before{content:"\F1AB"}.fa-laptop:before{content:"\F109"}.fa-laptop-code:before{content:"\F5FC"}.fa-laptop-medical:before{content:"\F812"}.fa-laravel:before{content:"\F3BD"}.fa-lastfm:before{content:"\F202"}.fa-lastfm-square:before{content:"\F203"}.fa-laugh:before{content:"\F599"}.fa-laugh-beam:before{content:"\F59A"}.fa-laugh-squint:before{content:"\F59B"}.fa-laugh-wink:before{content:"\F59C"}.fa-layer-group:before{content:"\F5FD"}.fa-leaf:before{content:"\F06C"}.fa-leanpub:before{content:"\F212"}.fa-lemon:before{content:"\F094"}.fa-less:before{content:"\F41D"}.fa-less-than:before{content:"\F536"}.fa-less-than-equal:before{content:"\F537"}.fa-level-down-alt:before{content:"\F3BE"}.fa-level-up-alt:before{content:"\F3BF"}.fa-life-ring:before{content:"\F1CD"}.fa-lightbulb:before{content:"\F0EB"}.fa-line:before{content:"\F3C0"}.fa-link:before{content:"\F0C1"}.fa-linkedin:before{content:"\F08C"}.fa-linkedin-in:before{content:"\F0E1"}.fa-linode:before{content:"\F2B8"}.fa-linux:before{content:"\F17C"}.fa-lira-sign:before{content:"\F195"}.fa-list:before{content:"\F03A"}.fa-list-alt:before{content:"\F022"}.fa-list-ol:before{content:"\F0CB"}.fa-list-ul:before{content:"\F0CA"}.fa-location-arrow:before{content:"\F124"}.fa-lock:before{content:"\F023"}.fa-lock-open:before{content:"\F3C1"}.fa-long-arrow-alt-down:before{content:"\F309"}.fa-long-arrow-alt-left:before{content:"\F30A"}.fa-long-arrow-alt-right:before{content:"\F30B"}.fa-long-arrow-alt-up:before{content:"\F30C"}.fa-low-vision:before{content:"\F2A8"}.fa-luggage-cart:before{content:"\F59D"}.fa-lyft:before{content:"\F3C3"}.fa-magento:before{content:"\F3C4"}.fa-magic:before{content:"\F0D0"}.fa-magnet:before{content:"\F076"}.fa-mail-bulk:before{content:"\F674"}.fa-mailchimp:before{content:"\F59E"}.fa-male:before{content:"\F183"}.fa-mandalorian:before{content:"\F50F"}.fa-map:before{content:"\F279"}.fa-map-marked:before{content:"\F59F"}.fa-map-marked-alt:before{content:"\F5A0"}.fa-map-marker:before{content:"\F041"}.fa-map-marker-alt:before{content:"\F3C5"}.fa-map-pin:before{content:"\F276"}.fa-map-signs:before{content:"\F277"}.fa-markdown:before{content:"\F60F"}.fa-marker:before{content:"\F5A1"}.fa-mars:before{content:"\F222"}.fa-mars-double:before{content:"\F227"}.fa-mars-stroke:before{content:"\F229"}.fa-mars-stroke-h:before{content:"\F22B"}.fa-mars-stroke-v:before{content:"\F22A"}.fa-mask:before{content:"\F6FA"}.fa-mastodon:before{content:"\F4F6"}.fa-maxcdn:before{content:"\F136"}.fa-mdb:before{content:"\F8CA"}.fa-medal:before{content:"\F5A2"}.fa-medapps:before{content:"\F3C6"}.fa-medium:before{content:"\F23A"}.fa-medium-m:before{content:"\F3C7"}.fa-medkit:before{content:"\F0FA"}.fa-medrt:before{content:"\F3C8"}.fa-meetup:before{content:"\F2E0"}.fa-megaport:before{content:"\F5A3"}.fa-meh:before{content:"\F11A"}.fa-meh-blank:before{content:"\F5A4"}.fa-meh-rolling-eyes:before{content:"\F5A5"}.fa-memory:before{content:"\F538"}.fa-mendeley:before{content:"\F7B3"}.fa-menorah:before{content:"\F676"}.fa-mercury:before{content:"\F223"}.fa-meteor:before{content:"\F753"}.fa-microblog:before{content:"\F91A"}.fa-microchip:before{content:"\F2DB"}.fa-microphone:before{content:"\F130"}.fa-microphone-alt:before{content:"\F3C9"}.fa-microphone-alt-slash:before{content:"\F539"}.fa-microphone-slash:before{content:"\F131"}.fa-microscope:before{content:"\F610"}.fa-microsoft:before{content:"\F3CA"}.fa-minus:before{content:"\F068"}.fa-minus-circle:before{content:"\F056"}.fa-minus-square:before{content:"\F146"}.fa-mitten:before{content:"\F7B5"}.fa-mix:before{content:"\F3CB"}.fa-mixcloud:before{content:"\F289"}.fa-mixer:before{content:"\F956"}.fa-mizuni:before{content:"\F3CC"}.fa-mobile:before{content:"\F10B"}.fa-mobile-alt:before{content:"\F3CD"}.fa-modx:before{content:"\F285"}.fa-monero:before{content:"\F3D0"}.fa-money-bill:before{content:"\F0D6"}.fa-money-bill-alt:before{content:"\F3D1"}.fa-money-bill-wave:before{content:"\F53A"}.fa-money-bill-wave-alt:before{content:"\F53B"}.fa-money-check:before{content:"\F53C"}.fa-money-check-alt:before{content:"\F53D"}.fa-monument:before{content:"\F5A6"}.fa-moon:before{content:"\F186"}.fa-mortar-pestle:before{content:"\F5A7"}.fa-mosque:before{content:"\F678"}.fa-motorcycle:before{content:"\F21C"}.fa-mountain:before{content:"\F6FC"}.fa-mouse:before{content:"\F8CC"}.fa-mouse-pointer:before{content:"\F245"}.fa-mug-hot:before{content:"\F7B6"}.fa-music:before{content:"\F001"}.fa-napster:before{content:"\F3D2"}.fa-neos:before{content:"\F612"}.fa-network-wired:before{content:"\F6FF"}.fa-neuter:before{content:"\F22C"}.fa-newspaper:before{content:"\F1EA"}.fa-nimblr:before{content:"\F5A8"}.fa-node:before{content:"\F419"}.fa-node-js:before{content:"\F3D3"}.fa-not-equal:before{content:"\F53E"}.fa-notes-medical:before{content:"\F481"}.fa-npm:before{content:"\F3D4"}.fa-ns8:before{content:"\F3D5"}.fa-nutritionix:before{content:"\F3D6"}.fa-object-group:before{content:"\F247"}.fa-object-ungroup:before{content:"\F248"}.fa-odnoklassniki:before{content:"\F263"}.fa-odnoklassniki-square:before{content:"\F264"}.fa-oil-can:before{content:"\F613"}.fa-old-republic:before{content:"\F510"}.fa-om:before{content:"\F679"}.fa-opencart:before{content:"\F23D"}.fa-openid:before{content:"\F19B"}.fa-opera:before{content:"\F26A"}.fa-optin-monster:before{content:"\F23C"}.fa-orcid:before{content:"\F8D2"}.fa-osi:before{content:"\F41A"}.fa-otter:before{content:"\F700"}.fa-outdent:before{content:"\F03B"}.fa-page4:before{content:"\F3D7"}.fa-pagelines:before{content:"\F18C"}.fa-pager:before{content:"\F815"}.fa-paint-brush:before{content:"\F1FC"}.fa-paint-roller:before{content:"\F5AA"}.fa-palette:before{content:"\F53F"}.fa-palfed:before{content:"\F3D8"}.fa-pallet:before{content:"\F482"}.fa-paper-plane:before{content:"\F1D8"}.fa-paperclip:before{content:"\F0C6"}.fa-parachute-box:before{content:"\F4CD"}.fa-paragraph:before{content:"\F1DD"}.fa-parking:before{content:"\F540"}.fa-passport:before{content:"\F5AB"}.fa-pastafarianism:before{content:"\F67B"}.fa-paste:before{content:"\F0EA"}.fa-patreon:before{content:"\F3D9"}.fa-pause:before{content:"\F04C"}.fa-pause-circle:before{content:"\F28B"}.fa-paw:before{content:"\F1B0"}.fa-paypal:before{content:"\F1ED"}.fa-peace:before{content:"\F67C"}.fa-pen:before{content:"\F304"}.fa-pen-alt:before{content:"\F305"}.fa-pen-fancy:before{content:"\F5AC"}.fa-pen-nib:before{content:"\F5AD"}.fa-pen-square:before{content:"\F14B"}.fa-pencil-alt:before{content:"\F303"}.fa-pencil-ruler:before{content:"\F5AE"}.fa-penny-arcade:before{content:"\F704"}.fa-people-carry:before{content:"\F4CE"}.fa-pepper-hot:before{content:"\F816"}.fa-percent:before{content:"\F295"}.fa-percentage:before{content:"\F541"}.fa-periscope:before{content:"\F3DA"}.fa-person-booth:before{content:"\F756"}.fa-phabricator:before{content:"\F3DB"}.fa-phoenix-framework:before{content:"\F3DC"}.fa-phoenix-squadron:before{content:"\F511"}.fa-phone:before{content:"\F095"}.fa-phone-alt:before{content:"\F879"}.fa-phone-slash:before{content:"\F3DD"}.fa-phone-square:before{content:"\F098"}.fa-phone-square-alt:before{content:"\F87B"}.fa-phone-volume:before{content:"\F2A0"}.fa-photo-video:before{content:"\F87C"}.fa-php:before{content:"\F457"}.fa-pied-piper:before{content:"\F2AE"}.fa-pied-piper-alt:before{content:"\F1A8"}.fa-pied-piper-hat:before{content:"\F4E5"}.fa-pied-piper-pp:before{content:"\F1A7"}.fa-pied-piper-square:before{content:"\F91E"}.fa-piggy-bank:before{content:"\F4D3"}.fa-pills:before{content:"\F484"}.fa-pinterest:before{content:"\F0D2"}.fa-pinterest-p:before{content:"\F231"}.fa-pinterest-square:before{content:"\F0D3"}.fa-pizza-slice:before{content:"\F818"}.fa-place-of-worship:before{content:"\F67F"}.fa-plane:before{content:"\F072"}.fa-plane-arrival:before{content:"\F5AF"}.fa-plane-departure:before{content:"\F5B0"}.fa-play:before{content:"\F04B"}.fa-play-circle:before{content:"\F144"}.fa-playstation:before{content:"\F3DF"}.fa-plug:before{content:"\F1E6"}.fa-plus:before{content:"\F067"}.fa-plus-circle:before{content:"\F055"}.fa-plus-square:before{content:"\F0FE"}.fa-podcast:before{content:"\F2CE"}.fa-poll:before{content:"\F681"}.fa-poll-h:before{content:"\F682"}.fa-poo:before{content:"\F2FE"}.fa-poo-storm:before{content:"\F75A"}.fa-poop:before{content:"\F619"}.fa-portrait:before{content:"\F3E0"}.fa-pound-sign:before{content:"\F154"}.fa-power-off:before{content:"\F011"}.fa-pray:before{content:"\F683"}.fa-praying-hands:before{content:"\F684"}.fa-prescription:before{content:"\F5B1"}.fa-prescription-bottle:before{content:"\F485"}.fa-prescription-bottle-alt:before{content:"\F486"}.fa-print:before{content:"\F02F"}.fa-procedures:before{content:"\F487"}.fa-product-hunt:before{content:"\F288"}.fa-project-diagram:before{content:"\F542"}.fa-pushed:before{content:"\F3E1"}.fa-puzzle-piece:before{content:"\F12E"}.fa-python:before{content:"\F3E2"}.fa-qq:before{content:"\F1D6"}.fa-qrcode:before{content:"\F029"}.fa-question:before{content:"\F128"}.fa-question-circle:before{content:"\F059"}.fa-quidditch:before{content:"\F458"}.fa-quinscape:before{content:"\F459"}.fa-quora:before{content:"\F2C4"}.fa-quote-left:before{content:"\F10D"}.fa-quote-right:before{content:"\F10E"}.fa-quran:before{content:"\F687"}.fa-r-project:before{content:"\F4F7"}.fa-radiation:before{content:"\F7B9"}.fa-radiation-alt:before{content:"\F7BA"}.fa-rainbow:before{content:"\F75B"}.fa-random:before{content:"\F074"}.fa-raspberry-pi:before{content:"\F7BB"}.fa-ravelry:before{content:"\F2D9"}.fa-react:before{content:"\F41B"}.fa-reacteurope:before{content:"\F75D"}.fa-readme:before{content:"\F4D5"}.fa-rebel:before{content:"\F1D0"}.fa-receipt:before{content:"\F543"}.fa-record-vinyl:before{content:"\F8D9"}.fa-recycle:before{content:"\F1B8"}.fa-red-river:before{content:"\F3E3"}.fa-reddit:before{content:"\F1A1"}.fa-reddit-alien:before{content:"\F281"}.fa-reddit-square:before{content:"\F1A2"}.fa-redhat:before{content:"\F7BC"}.fa-redo:before{content:"\F01E"}.fa-redo-alt:before{content:"\F2F9"}.fa-registered:before{content:"\F25D"}.fa-remove-format:before{content:"\F87D"}.fa-renren:before{content:"\F18B"}.fa-reply:before{content:"\F3E5"}.fa-reply-all:before{content:"\F122"}.fa-replyd:before{content:"\F3E6"}.fa-republican:before{content:"\F75E"}.fa-researchgate:before{content:"\F4F8"}.fa-resolving:before{content:"\F3E7"}.fa-restroom:before{content:"\F7BD"}.fa-retweet:before{content:"\F079"}.fa-rev:before{content:"\F5B2"}.fa-ribbon:before{content:"\F4D6"}.fa-ring:before{content:"\F70B"}.fa-road:before{content:"\F018"}.fa-robot:before{content:"\F544"}.fa-rocket:before{content:"\F135"}.fa-rocketchat:before{content:"\F3E8"}.fa-rockrms:before{content:"\F3E9"}.fa-route:before{content:"\F4D7"}.fa-rss:before{content:"\F09E"}.fa-rss-square:before{content:"\F143"}.fa-ruble-sign:before{content:"\F158"}.fa-ruler:before{content:"\F545"}.fa-ruler-combined:before{content:"\F546"}.fa-ruler-horizontal:before{content:"\F547"}.fa-ruler-vertical:before{content:"\F548"}.fa-running:before{content:"\F70C"}.fa-rupee-sign:before{content:"\F156"}.fa-sad-cry:before{content:"\F5B3"}.fa-sad-tear:before{content:"\F5B4"}.fa-safari:before{content:"\F267"}.fa-salesforce:before{content:"\F83B"}.fa-sass:before{content:"\F41E"}.fa-satellite:before{content:"\F7BF"}.fa-satellite-dish:before{content:"\F7C0"}.fa-save:before{content:"\F0C7"}.fa-schlix:before{content:"\F3EA"}.fa-school:before{content:"\F549"}.fa-screwdriver:before{content:"\F54A"}.fa-scribd:before{content:"\F28A"}.fa-scroll:before{content:"\F70E"}.fa-sd-card:before{content:"\F7C2"}.fa-search:before{content:"\F002"}.fa-search-dollar:before{content:"\F688"}.fa-search-location:before{content:"\F689"}.fa-search-minus:before{content:"\F010"}.fa-search-plus:before{content:"\F00E"}.fa-searchengin:before{content:"\F3EB"}.fa-seedling:before{content:"\F4D8"}.fa-sellcast:before{content:"\F2DA"}.fa-sellsy:before{content:"\F213"}.fa-server:before{content:"\F233"}.fa-servicestack:before{content:"\F3EC"}.fa-shapes:before{content:"\F61F"}.fa-share:before{content:"\F064"}.fa-share-alt:before{content:"\F1E0"}.fa-share-alt-square:before{content:"\F1E1"}.fa-share-square:before{content:"\F14D"}.fa-shekel-sign:before{content:"\F20B"}.fa-shield-alt:before{content:"\F3ED"}.fa-ship:before{content:"\F21A"}.fa-shipping-fast:before{content:"\F48B"}.fa-shirtsinbulk:before{content:"\F214"}.fa-shoe-prints:before{content:"\F54B"}.fa-shopify:before{content:"\F957"}.fa-shopping-bag:before{content:"\F290"}.fa-shopping-basket:before{content:"\F291"}.fa-shopping-cart:before{content:"\F07A"}.fa-shopware:before{content:"\F5B5"}.fa-shower:before{content:"\F2CC"}.fa-shuttle-van:before{content:"\F5B6"}.fa-sign:before{content:"\F4D9"}.fa-sign-in-alt:before{content:"\F2F6"}.fa-sign-language:before{content:"\F2A7"}.fa-sign-out-alt:before{content:"\F2F5"}.fa-signal:before{content:"\F012"}.fa-signature:before{content:"\F5B7"}.fa-sim-card:before{content:"\F7C4"}.fa-simplybuilt:before{content:"\F215"}.fa-sistrix:before{content:"\F3EE"}.fa-sitemap:before{content:"\F0E8"}.fa-sith:before{content:"\F512"}.fa-skating:before{content:"\F7C5"}.fa-sketch:before{content:"\F7C6"}.fa-skiing:before{content:"\F7C9"}.fa-skiing-nordic:before{content:"\F7CA"}.fa-skull:before{content:"\F54C"}.fa-skull-crossbones:before{content:"\F714"}.fa-skyatlas:before{content:"\F216"}.fa-skype:before{content:"\F17E"}.fa-slack:before{content:"\F198"}.fa-slack-hash:before{content:"\F3EF"}.fa-slash:before{content:"\F715"}.fa-sleigh:before{content:"\F7CC"}.fa-sliders-h:before{content:"\F1DE"}.fa-slideshare:before{content:"\F1E7"}.fa-smile:before{content:"\F118"}.fa-smile-beam:before{content:"\F5B8"}.fa-smile-wink:before{content:"\F4DA"}.fa-smog:before{content:"\F75F"}.fa-smoking:before{content:"\F48D"}.fa-smoking-ban:before{content:"\F54D"}.fa-sms:before{content:"\F7CD"}.fa-snapchat:before{content:"\F2AB"}.fa-snapchat-ghost:before{content:"\F2AC"}.fa-snapchat-square:before{content:"\F2AD"}.fa-snowboarding:before{content:"\F7CE"}.fa-snowflake:before{content:"\F2DC"}.fa-snowman:before{content:"\F7D0"}.fa-snowplow:before{content:"\F7D2"}.fa-socks:before{content:"\F696"}.fa-solar-panel:before{content:"\F5BA"}.fa-sort:before{content:"\F0DC"}.fa-sort-alpha-down:before{content:"\F15D"}.fa-sort-alpha-down-alt:before{content:"\F881"}.fa-sort-alpha-up:before{content:"\F15E"}.fa-sort-alpha-up-alt:before{content:"\F882"}.fa-sort-amount-down:before{content:"\F160"}.fa-sort-amount-down-alt:before{content:"\F884"}.fa-sort-amount-up:before{content:"\F161"}.fa-sort-amount-up-alt:before{content:"\F885"}.fa-sort-down:before{content:"\F0DD"}.fa-sort-numeric-down:before{content:"\F162"}.fa-sort-numeric-down-alt:before{content:"\F886"}.fa-sort-numeric-up:before{content:"\F163"}.fa-sort-numeric-up-alt:before{content:"\F887"}.fa-sort-up:before{content:"\F0DE"}.fa-soundcloud:before{content:"\F1BE"}.fa-sourcetree:before{content:"\F7D3"}.fa-spa:before{content:"\F5BB"}.fa-space-shuttle:before{content:"\F197"}.fa-speakap:before{content:"\F3F3"}.fa-speaker-deck:before{content:"\F83C"}.fa-spell-check:before{content:"\F891"}.fa-spider:before{content:"\F717"}.fa-spinner:before{content:"\F110"}.fa-splotch:before{content:"\F5BC"}.fa-spotify:before{content:"\F1BC"}.fa-spray-can:before{content:"\F5BD"}.fa-square:before{content:"\F0C8"}.fa-square-full:before{content:"\F45C"}.fa-square-root-alt:before{content:"\F698"}.fa-squarespace:before{content:"\F5BE"}.fa-stack-exchange:before{content:"\F18D"}.fa-stack-overflow:before{content:"\F16C"}.fa-stackpath:before{content:"\F842"}.fa-stamp:before{content:"\F5BF"}.fa-star:before{content:"\F005"}.fa-star-and-crescent:before{content:"\F699"}.fa-star-half:before{content:"\F089"}.fa-star-half-alt:before{content:"\F5C0"}.fa-star-of-david:before{content:"\F69A"}.fa-star-of-life:before{content:"\F621"}.fa-staylinked:before{content:"\F3F5"}.fa-steam:before{content:"\F1B6"}.fa-steam-square:before{content:"\F1B7"}.fa-steam-symbol:before{content:"\F3F6"}.fa-step-backward:before{content:"\F048"}.fa-step-forward:before{content:"\F051"}.fa-stethoscope:before{content:"\F0F1"}.fa-sticker-mule:before{content:"\F3F7"}.fa-sticky-note:before{content:"\F249"}.fa-stop:before{content:"\F04D"}.fa-stop-circle:before{content:"\F28D"}.fa-stopwatch:before{content:"\F2F2"}.fa-store:before{content:"\F54E"}.fa-store-alt:before{content:"\F54F"}.fa-strava:before{content:"\F428"}.fa-stream:before{content:"\F550"}.fa-street-view:before{content:"\F21D"}.fa-strikethrough:before{content:"\F0CC"}.fa-stripe:before{content:"\F429"}.fa-stripe-s:before{content:"\F42A"}.fa-stroopwafel:before{content:"\F551"}.fa-studiovinari:before{content:"\F3F8"}.fa-stumbleupon:before{content:"\F1A4"}.fa-stumbleupon-circle:before{content:"\F1A3"}.fa-subscript:before{content:"\F12C"}.fa-subway:before{content:"\F239"}.fa-suitcase:before{content:"\F0F2"}.fa-suitcase-rolling:before{content:"\F5C1"}.fa-sun:before{content:"\F185"}.fa-superpowers:before{content:"\F2DD"}.fa-superscript:before{content:"\F12B"}.fa-supple:before{content:"\F3F9"}.fa-surprise:before{content:"\F5C2"}.fa-suse:before{content:"\F7D6"}.fa-swatchbook:before{content:"\F5C3"}.fa-swift:before{content:"\F8E1"}.fa-swimmer:before{content:"\F5C4"}.fa-swimming-pool:before{content:"\F5C5"}.fa-symfony:before{content:"\F83D"}.fa-synagogue:before{content:"\F69B"}.fa-sync:before{content:"\F021"}.fa-sync-alt:before{content:"\F2F1"}.fa-syringe:before{content:"\F48E"}.fa-table:before{content:"\F0CE"}.fa-table-tennis:before{content:"\F45D"}.fa-tablet:before{content:"\F10A"}.fa-tablet-alt:before{content:"\F3FA"}.fa-tablets:before{content:"\F490"}.fa-tachometer-alt:before{content:"\F3FD"}.fa-tag:before{content:"\F02B"}.fa-tags:before{content:"\F02C"}.fa-tape:before{content:"\F4DB"}.fa-tasks:before{content:"\F0AE"}.fa-taxi:before{content:"\F1BA"}.fa-teamspeak:before{content:"\F4F9"}.fa-teeth:before{content:"\F62E"}.fa-teeth-open:before{content:"\F62F"}.fa-telegram:before{content:"\F2C6"}.fa-telegram-plane:before{content:"\F3FE"}.fa-temperature-high:before{content:"\F769"}.fa-temperature-low:before{content:"\F76B"}.fa-tencent-weibo:before{content:"\F1D5"}.fa-tenge:before{content:"\F7D7"}.fa-terminal:before{content:"\F120"}.fa-text-height:before{content:"\F034"}.fa-text-width:before{content:"\F035"}.fa-th:before{content:"\F00A"}.fa-th-large:before{content:"\F009"}.fa-th-list:before{content:"\F00B"}.fa-the-red-yeti:before{content:"\F69D"}.fa-theater-masks:before{content:"\F630"}.fa-themeco:before{content:"\F5C6"}.fa-themeisle:before{content:"\F2B2"}.fa-thermometer:before{content:"\F491"}.fa-thermometer-empty:before{content:"\F2CB"}.fa-thermometer-full:before{content:"\F2C7"}.fa-thermometer-half:before{content:"\F2C9"}.fa-thermometer-quarter:before{content:"\F2CA"}.fa-thermometer-three-quarters:before{content:"\F2C8"}.fa-think-peaks:before{content:"\F731"}.fa-thumbs-down:before{content:"\F165"}.fa-thumbs-up:before{content:"\F164"}.fa-thumbtack:before{content:"\F08D"}.fa-ticket-alt:before{content:"\F3FF"}.fa-times:before{content:"\F00D"}.fa-times-circle:before{content:"\F057"}.fa-tint:before{content:"\F043"}.fa-tint-slash:before{content:"\F5C7"}.fa-tired:before{content:"\F5C8"}.fa-toggle-off:before{content:"\F204"}.fa-toggle-on:before{content:"\F205"}.fa-toilet:before{content:"\F7D8"}.fa-toilet-paper:before{content:"\F71E"}.fa-toolbox:before{content:"\F552"}.fa-tools:before{content:"\F7D9"}.fa-tooth:before{content:"\F5C9"}.fa-torah:before{content:"\F6A0"}.fa-torii-gate:before{content:"\F6A1"}.fa-tractor:before{content:"\F722"}.fa-trade-federation:before{content:"\F513"}.fa-trademark:before{content:"\F25C"}.fa-traffic-light:before{content:"\F637"}.fa-trailer:before{content:"\F941"}.fa-train:before{content:"\F238"}.fa-tram:before{content:"\F7DA"}.fa-transgender:before{content:"\F224"}.fa-transgender-alt:before{content:"\F225"}.fa-trash:before{content:"\F1F8"}.fa-trash-alt:before{content:"\F2ED"}.fa-trash-restore:before{content:"\F829"}.fa-trash-restore-alt:before{content:"\F82A"}.fa-tree:before{content:"\F1BB"}.fa-trello:before{content:"\F181"}.fa-tripadvisor:before{content:"\F262"}.fa-trophy:before{content:"\F091"}.fa-truck:before{content:"\F0D1"}.fa-truck-loading:before{content:"\F4DE"}.fa-truck-monster:before{content:"\F63B"}.fa-truck-moving:before{content:"\F4DF"}.fa-truck-pickup:before{content:"\F63C"}.fa-tshirt:before{content:"\F553"}.fa-tty:before{content:"\F1E4"}.fa-tumblr:before{content:"\F173"}.fa-tumblr-square:before{content:"\F174"}.fa-tv:before{content:"\F26C"}.fa-twitch:before{content:"\F1E8"}.fa-twitter:before{content:"\F099"}.fa-twitter-square:before{content:"\F081"}.fa-typo3:before{content:"\F42B"}.fa-uber:before{content:"\F402"}.fa-ubuntu:before{content:"\F7DF"}.fa-uikit:before{content:"\F403"}.fa-umbraco:before{content:"\F8E8"}.fa-umbrella:before{content:"\F0E9"}.fa-umbrella-beach:before{content:"\F5CA"}.fa-underline:before{content:"\F0CD"}.fa-undo:before{content:"\F0E2"}.fa-undo-alt:before{content:"\F2EA"}.fa-uniregistry:before{content:"\F404"}.fa-unity:before{content:"\F949"}.fa-universal-access:before{content:"\F29A"}.fa-university:before{content:"\F19C"}.fa-unlink:before{content:"\F127"}.fa-unlock:before{content:"\F09C"}.fa-unlock-alt:before{content:"\F13E"}.fa-untappd:before{content:"\F405"}.fa-upload:before{content:"\F093"}.fa-ups:before{content:"\F7E0"}.fa-usb:before{content:"\F287"}.fa-user:before{content:"\F007"}.fa-user-alt:before{content:"\F406"}.fa-user-alt-slash:before{content:"\F4FA"}.fa-user-astronaut:before{content:"\F4FB"}.fa-user-check:before{content:"\F4FC"}.fa-user-circle:before{content:"\F2BD"}.fa-user-clock:before{content:"\F4FD"}.fa-user-cog:before{content:"\F4FE"}.fa-user-edit:before{content:"\F4FF"}.fa-user-friends:before{content:"\F500"}.fa-user-graduate:before{content:"\F501"}.fa-user-injured:before{content:"\F728"}.fa-user-lock:before{content:"\F502"}.fa-user-md:before{content:"\F0F0"}.fa-user-minus:before{content:"\F503"}.fa-user-ninja:before{content:"\F504"}.fa-user-nurse:before{content:"\F82F"}.fa-user-plus:before{content:"\F234"}.fa-user-secret:before{content:"\F21B"}.fa-user-shield:before{content:"\F505"}.fa-user-slash:before{content:"\F506"}.fa-user-tag:before{content:"\F507"}.fa-user-tie:before{content:"\F508"}.fa-user-times:before{content:"\F235"}.fa-users:before{content:"\F0C0"}.fa-users-cog:before{content:"\F509"}.fa-usps:before{content:"\F7E1"}.fa-ussunnah:before{content:"\F407"}.fa-utensil-spoon:before{content:"\F2E5"}.fa-utensils:before{content:"\F2E7"}.fa-vaadin:before{content:"\F408"}.fa-vector-square:before{content:"\F5CB"}.fa-venus:before{content:"\F221"}.fa-venus-double:before{content:"\F226"}.fa-venus-mars:before{content:"\F228"}.fa-viacoin:before{content:"\F237"}.fa-viadeo:before{content:"\F2A9"}.fa-viadeo-square:before{content:"\F2AA"}.fa-vial:before{content:"\F492"}.fa-vials:before{content:"\F493"}.fa-viber:before{content:"\F409"}.fa-video:before{content:"\F03D"}.fa-video-slash:before{content:"\F4E2"}.fa-vihara:before{content:"\F6A7"}.fa-vimeo:before{content:"\F40A"}.fa-vimeo-square:before{content:"\F194"}.fa-vimeo-v:before{content:"\F27D"}.fa-vine:before{content:"\F1CA"}.fa-vk:before{content:"\F189"}.fa-vnv:before{content:"\F40B"}.fa-voicemail:before{content:"\F897"}.fa-volleyball-ball:before{content:"\F45F"}.fa-volume-down:before{content:"\F027"}.fa-volume-mute:before{content:"\F6A9"}.fa-volume-off:before{content:"\F026"}.fa-volume-up:before{content:"\F028"}.fa-vote-yea:before{content:"\F772"}.fa-vr-cardboard:before{content:"\F729"}.fa-vuejs:before{content:"\F41F"}.fa-walking:before{content:"\F554"}.fa-wallet:before{content:"\F555"}.fa-warehouse:before{content:"\F494"}.fa-water:before{content:"\F773"}.fa-wave-square:before{content:"\F83E"}.fa-waze:before{content:"\F83F"}.fa-weebly:before{content:"\F5CC"}.fa-weibo:before{content:"\F18A"}.fa-weight:before{content:"\F496"}.fa-weight-hanging:before{content:"\F5CD"}.fa-weixin:before{content:"\F1D7"}.fa-whatsapp:before{content:"\F232"}.fa-whatsapp-square:before{content:"\F40C"}.fa-wheelchair:before{content:"\F193"}.fa-whmcs:before{content:"\F40D"}.fa-wifi:before{content:"\F1EB"}.fa-wikipedia-w:before{content:"\F266"}.fa-wind:before{content:"\F72E"}.fa-window-close:before{content:"\F410"}.fa-window-maximize:before{content:"\F2D0"}.fa-window-minimize:before{content:"\F2D1"}.fa-window-restore:before{content:"\F2D2"}.fa-windows:before{content:"\F17A"}.fa-wine-bottle:before{content:"\F72F"}.fa-wine-glass:before{content:"\F4E3"}.fa-wine-glass-alt:before{content:"\F5CE"}.fa-wix:before{content:"\F5CF"}.fa-wizards-of-the-coast:before{content:"\F730"}.fa-wolf-pack-battalion:before{content:"\F514"}.fa-won-sign:before{content:"\F159"}.fa-wordpress:before{content:"\F19A"}.fa-wordpress-simple:before{content:"\F411"}.fa-wpbeginner:before{content:"\F297"}.fa-wpexplorer:before{content:"\F2DE"}.fa-wpforms:before{content:"\F298"}.fa-wpressr:before{content:"\F3E4"}.fa-wrench:before{content:"\F0AD"}.fa-x-ray:before{content:"\F497"}.fa-xbox:before{content:"\F412"}.fa-xing:before{content:"\F168"}.fa-xing-square:before{content:"\F169"}.fa-y-combinator:before{content:"\F23B"}.fa-yahoo:before{content:"\F19E"}.fa-yammer:before{content:"\F840"}.fa-yandex:before{content:"\F413"}.fa-yandex-international:before{content:"\F414"}.fa-yarn:before{content:"\F7E3"}.fa-yelp:before{content:"\F1E9"}.fa-yen-sign:before{content:"\F157"}.fa-yin-yang:before{content:"\F6AD"}.fa-yoast:before{content:"\F2B1"}.fa-youtube:before{content:"\F167"}.fa-youtube-square:before{content:"\F431"}.fa-zhihu:before{content:"\F63F"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:Font Awesome\ 5 Brands;font-style:normal;font-weight:400;font-display:auto;src:url(/openj9/static/fa-brands-400-57dcda6f368ea90179f75cbdae96c263.eot);src:url(/openj9/static/fa-brands-400-57dcda6f368ea90179f75cbdae96c263.eot?#iefix) format("embedded-opentype"),url(/openj9/static/fa-brands-400-067595ad77ecc0db9c81c8905a7eef32.woff2) format("woff2"),url(/openj9/static/fa-brands-400-b564da88bbf0c4aa446fa19653713cd1.woff) format("woff"),url(/openj9/static/fa-brands-400-9ec698d1a597bff5df337094b71ddaaf.ttf) format("truetype"),url(/openj9/static/fa-brands-400-9d67fa1429375bd2a899a17eb77d0342.svg#fontawesome) format("svg")}.fab{font-family:Font Awesome\ 5 Brands}@font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:400;font-display:auto;src:url(/openj9/static/fa-regular-400-3351f435b3c9037fd88aeb04dc1e43bc.eot);src:url(/openj9/static/fa-regular-400-3351f435b3c9037fd88aeb04dc1e43bc.eot?#iefix) format("embedded-opentype"),url(/openj9/static/fa-regular-400-4165c2688309cbfb1b877caf8f75afb5.woff2) format("woff2"),url(/openj9/static/fa-regular-400-73cf49a2232c06c920b7a34e36bfb58c.woff) format("woff"),url(/openj9/static/fa-regular-400-a0e3ac82940c1998c5977fd4bc1f5ef6.ttf) format("truetype"),url(/openj9/static/fa-regular-400-5d0861781aeef6c82fda3a3076954a1b.svg#fontawesome) format("svg")}.fab,.far{font-weight:400}@font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:900;font-display:auto;src:url(/openj9/static/fa-solid-900-89e02bae13c9131c7468b1e729339ac1.eot);src:url(/openj9/static/fa-solid-900-89e02bae13c9131c7468b1e729339ac1.eot?#iefix) format("embedded-opentype"),url(/openj9/static/fa-solid-900-55eb2a60e8181f0e68b558c991973bf0.woff2) format("woff2"),url(/openj9/static/fa-solid-900-cdfec5cf5e9840889790bcf2c4042583.woff) format("woff"),url(/openj9/static/fa-solid-900-75f38a159982b6bd1704891332d95fa7.ttf) format("truetype"),url(/openj9/static/fa-solid-900-0724bb8b89ab6b8b9b7df917b17be0b7.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:Font Awesome\ 5 Free}.fa,.fas{font-weight:900}</style><meta name="generator" content="Gatsby 2.19.7"/><link rel="icon" href="/openj9/favicon-32x32.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="manifest" href="/openj9/manifest.webmanifest"/><link rel="apple-touch-icon" sizes="48x48" href="/openj9/icons/icon-48x48.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="72x72" href="/openj9/icons/icon-72x72.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="96x96" href="/openj9/icons/icon-96x96.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="144x144" href="/openj9/icons/icon-144x144.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="192x192" href="/openj9/icons/icon-192x192.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="256x256" href="/openj9/icons/icon-256x256.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="384x384" href="/openj9/icons/icon-384x384.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="apple-touch-icon" sizes="512x512" href="/openj9/icons/icon-512x512.png?v=521b6ab03638f6a52fffc5f7bf4c617e"/><link rel="preconnect dns-prefetch" href="https://www.google-analytics.com"/><link as="script" rel="preload" href="/openj9/component---src-pages-about-js-bab73d486dc0b5e1a35a.js"/><link as="script" rel="preload" href="/openj9/commons-13bc6123f79d93bf5635.js"/><link as="script" rel="preload" href="/openj9/app-2da2270a07d62743bcd4.js"/><link as="script" rel="preload" href="/openj9/styles-cc4082ebb0cb6903d934.js"/><link as="script" rel="preload" href="/openj9/webpack-runtime-d87f02dbde2c8c5e0faf.js"/><link as="fetch" rel="preload" href="/openj9/page-data/about/page-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" role="group" id="gatsby-focus-wrapper"><style data-emotion-css="t923zi">body{color:text;background-color:var(--theme-ui-colors-background,#FFFFFF);}</style><style data-emotion-css="1gb9wyy">*{box-sizing:border-box;}body{margin:0;font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.5;font-weight:400;}</style><style data-emotion-css="1xgro3h">*{padding:0;margin:0;}</style><style data-emotion-css="gns71q">.css-gns71q{display:none;background-color:var(--theme-ui-colors-primary,#434343);width:100%;color:var(--theme-ui-colors-lightText,#d8d8d8);padding-left:40px;padding-right:40px;padding-top:32px;padding-bottom:32px;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}@media screen and (min-width:35rem){.css-gns71q{display:none;}}@media screen and (min-width:62.5rem){.css-gns71q{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}}@media screen and (min-width:85rem){.css-gns71q{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}}</style><header class="css-gns71q"><style data-emotion-css="4golyb">.css-4golyb{-webkit-flex:1;-ms-flex:1;flex:1;opacity:1;pointer-events:all;}</style><div class="css-4golyb"><a href="/openj9/"><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNzlweCIgaGVpZ2h0PSIzM3B4IiB2aWV3Qm94PSIwIDAgNzkgMzMiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5Mb2dvPC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IkxvZ28iIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik0xMC4wNDUyMzE4LDE5LjQ2MTIzMzcgQzkuMjQwNjc1MjUsMjAuNjk4NDMyOCA4LjEyNjE5NTA0LDIxLjMxNjY4NzggNi43MDA3Nzc4OSwyMS4zMTY2ODc4IEM1LjMxNTQ1ODI5LDIxLjMxNjY4NzggNC4yMDg2NTAxNywyMC43MTkxMTAzIDMuMzgwMjA4NzgsMTkuNTIzODE3NCBDMi41NTIyMDE2NiwxOC4zMjgyNDg5IDIuMTM4MDUzMzUsMTYuNzc4NDA3MSAyLjEzODA1MzM1LDE0Ljg3MzMyNzMgQzIuMTM4MDUzMzUsMTIuOTIyNzU3MSAyLjU0ODE0ODQ4LDExLjM0Mzk2NyAzLjM2ODMzODc1LDEwLjEzNzIzMjYgQzQuMTg4NjczNzgsOC45MzA2MzYxMiA1LjI5NTE5MjM4LDguMzI2OTkzMjQgNi42ODg3NjMxLDguMzI2OTkzMjQgQzguMDY2NTU1MzcsOC4zMjY5OTMyNCA5LjE3MTE5MjE0LDguODg1MjgzNjUgMTAuMDAzMzk3MiwxMC4wMDA0ODYgQzEwLjgzNTYwMjMsMTEuMTE2Mzc3NSAxMS4yNTE3NzcyLDEyLjY3NjI4MjIgMTEuMjUxNzc3MiwxNC42Nzk2NDg4IEMxMS4yNTE3NzcyLDE2LjYzMDM1NjggMTAuODQ5NDk4OSwxOC4yMjQxNzI1IDEwLjA0NTIzMTgsMTkuNDYxMjMzNyBNNi43MTI3OTI2OCw2LjczNDY5Mzg4IEM0LjY5MDExMDI1LDYuNzM0NjkzODggMy4wNjU2NTI5Myw3LjUwMTQxMjcgMS44MzkyNzU5NSw5LjAzNDAyMzI0IEMwLjYxMzE4ODQ4OSwxMC41NjY3NzE2IDAsMTIuNTA5NDg0NCAwLDE0Ljg2MTg4NTggQzAsMTcuMTE1NzI0OCAwLjU4NTM5NTI0MywxOS4wMTg1OTkxIDEuNzU2MDQwOTcsMjAuNTcwMDk1IEMyLjkyNjU0MTk1LDIyLjEyMjAwNDQgNC41NTg4MTYxMiwyMi44OTc5NTkyIDYuNjUzMDA4MjUsMjIuODk3OTU5MiBDOC43NzkxOTE1NywyMi44OTc5NTkyIDEwLjQzMzQ2ODcsMjIuMDgwMDk4MiAxMS42MTYyNzQsMjAuNDQ1MDY1NSBDMTIuNzk4NTAwMiwxOC44MDk3NTcxIDEzLjM4OTgzMDUsMTYuODkxNDQzNyAxMy4zODk4MzA1LDE0LjY5MTIyODEgQzEzLjM4OTgzMDUsMTIuMzk5NjE4MyAxMi43ODA1NTA0LDEwLjUwMDQ2NiAxMS41NjIyNzk4LDguOTkzOTA5MDQgQzEwLjM0Mzg2NDUsNy40ODgwNDEzIDguNzI3MzY4NzQsNi43MzQ2OTM4OCA2LjcxMjc5MjY4LDYuNzM0NjkzODgiIGlkPSJTaGFwZSIgZmlsbD0iIzVEQTdBMyI+PC9wYXRoPgogICAgICAgICAgICA8cGF0aCBkPSJNMjIuOTc0MzgxNywyMS4zNjc1NDcyIEMyMi4zMTQxOTk5LDIyLjA3MDg5MDkgMjEuNTU1MzY4NiwyMi40MjMxMzExIDIwLjY5OTU0OTUsMjIuNDIzMTMxMSBDMTkuOTYwMDU1MywyMi40MjMxMzExIDE5LjI1MDkyNjQsMjIuMTMwOTk0OCAxOC41Njk3NDU3LDIxLjU0NjU4MDEgQzE3Ljg4ODI2MjksMjAuOTYzMDE3OSAxNy41MTMzMDM4LDIwLjIyMzAxNTEgMTcuMzYyMjMyNSwxOS4zMjc5OTI0IEwxNy4zNjIyMzI1LDE1Ljk4NjA0NCBDMTcuNjY0Mzc1MiwxNS4xNzMxNDkxIDE3Ljk2OTM4ODIsMTQuNDgxNDU2OCAxOC41ODg0Nzg2LDEzLjkxMDk2NjggQzE5LjIwNzU2ODksMTMuMzQwNDc2OSAxOS45MDY3MjcxLDEzLjA1NTE2MDkgMjAuNjg3OTE3LDEzLjA1NTE2MDkgQzIxLjY3NjgzLDEzLjA1NTE2MDkgMjIuNDcwNDA3NywxMy40NTk2OTAxIDIzLjA2ODgwMTMsMTQuMjY4NjA2NSBDMjMuNjY2ODkyNywxNS4wNzc1MjI4IDIzLjk2NjAxNCwxNi4yMjg0NDg5IDIzLjk2NjAxNCwxNy43MjE1MjY5IEMyMy45NjYwMTQsMTkuNDQ4OTEwNyAyMy42MzUxNjc3LDIwLjY2NDYyOTcgMjIuOTc0MzgxNywyMS4zNjc1NDcyIE0yMS4xNjI3MzQyLDExLjQ0ODk3OTYgQzE5LjQwMzM1NzQsMTEuNDQ4OTc5NiAxOC4xMTc1ODkyLDEyLjMyNDUzNiAxNy4yMTExNjEyLDE0LjA3NDc5NjIgTDE3LjIxMTE2MTIsMTEuNjk4MjA0OCBMMTUuMzk4MzA1MSwxMS42OTgyMDQ4IEwxNS4zOTgzMDUxLDI3LjYxMjI0NDkgTDE3LjM2MjIzMjUsMjcuNjEyMjQ0OSBMMTcuMzYyMjMyNSwyMS44MjQ5MzM3IEMxOC4yNjg2NjA1LDIzLjIzOTQzNjEgMTkuNTA4OTU2MiwyMy45NDcwNDI1IDIxLjA4NzY1MTcsMjMuOTQ3MDQyNSBDMjIuNTU4OTM1NSwyMy45NDcwNDI1IDIzLjc2MjgyMywyMy4zNzk2Nzg2IDI0LjcwMjAzMzUsMjIuMjQ1NTE5MSBDMjUuNjQwNzkwOCwyMS4xMTA3OTEyIDI2LjExMDE2OTUsMTkuNTc3NTAxOCAyNi4xMTAxNjk1LDE3LjY0NTM2NjkgQzI2LjExMDE2OTUsMTUuODUzNDc0NCAyNS42NjI5OTgzLDE0LjM3MjkwMDMgMjQuNzUwNTI3NCwxMy4yMDMzNjA0IEMyMy44Mzc2MDMzLDEyLjAzMzY3ODUgMjIuNjQ4MDY3NiwxMS40NDg5Nzk2IDIxLjE2MjczNDIsMTEuNDQ4OTc5NiIgaWQ9IlNoYXBlIiBmaWxsPSIjNURBN0EzIj48L3BhdGg+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik0zMC4yNjM1ODc2LDE2LjM2MzMzNjcgQzMwLjM0MTcwNzYsMTUuMjU4OTg2OCAzMC43MDEzMTY2LDE0LjQwODM2MTMgMzEuMzQxNzAwNiwxMy43NzA0NjExIEMzMS45ODE2NTYxLDEzLjEzMjQyMyAzMi43NjE0Mjc5LDEyLjgwNDAxNjkgMzMuNjgwNzMwMiwxMi44MDQwMTY5IEMzNC4zNjQxMDE2LDEyLjgwNDAxNjkgMzQuOTQ5MDczMiwxMi45NzU3NDMzIDM1LjQzNjUwMiwxMy4zMjkxMzUzIEMzNS45MjM1MDIzLDEzLjY4MTk3NTEgMzYuMjY5NDAxLDE0LjEyNTc4NTcgMzYuNDczNDg0MSwxNC42MjcwMjI1IEMzNi42NzgxMzg1LDE1LjEyODEyMTMgMzYuNzg3NTM1MSwxNS42NzMxMTggMzYuODAzMzg3NiwxNi4zNjMzMzY3IEwzMC4yNjM1ODc2LDE2LjM2MzMzNjcgWiBNMzcuMzc1MjIwMiwxMy4wMzA2ODQ4IEMzNi40MjgzNTQ1LDExLjk5MDI0OTEgMzUuMTc3NDM1LDExLjQ0ODk3OTYgMzMuNjIxNzQ3NSwxMS40NDg5Nzk2IEMzMi4wNDI5MjM5LDExLjQ0ODk3OTYgMzAuNzMwNTkzOCwxMi4wMDI1MzUgMjkuNjg2MDQyNCwxMy4xMzE0NTY3IEMyOC42NDEyMDU0LDE0LjI1OTgyNjIgMjguMTE4NjQ0MSwxNS43MzQ5NjE2IDI4LjExODY0NDEsMTcuNTY2OTQwMSBDMjguMTE4NjQ0MSwxOS4zNjA4MTg0IDI4LjYyMTA2ODQsMjAuODA3Mzc4OCAyOS42MjY5MTY4LDIxLjkxMzM4NTIgQzMwLjYzMjQ3OTYsMjMuMDE5OTQzOCAzMS45NDg1MjMsMjMuNTcxNDI4NiAzMy41NzQ5MDQsMjMuNTcxNDI4NiBDMzQuODA4MjU3MywyMy41NzE0Mjg2IDM1Ljg4MDIyOTIsMjMuMjQ4OTU4NCAzNi43OTE1MzM5LDIyLjYwNDcwODMgQzM3LjcwMzEyNDIsMjEuOTYwNzM0MiAzOC4zMTU4MDIsMjEuMTQ3MzgwNSAzOC42MzAxMzg2LDIwLjE2NDA5NSBMMzYuOTA5OTI3OCwxOS44MjI3MTI4IEMzNi4yODg5NjY3LDIxLjMzMzQ2MzUgMzUuMjIwNTY1MiwyMi4wODkyNTI5IDMzLjcwNDI5NDcsMjIuMDg5MjUyOSBDMzIuODYzNjgzNywyMi4wODkyNTI5IDMyLjA2NjM0NTYsMjEuODI4MDc0MiAzMS4zMTIyODA3LDIxLjIyMDY4MTcgQzMwLjU1ODA3MjksMjAuNjEzMDEzMiAzMC4xODA3NTQ3LDE5LjQwMDI5OSAzMC4xODA3NTQ3LDE3Ljc0Mzc3NDEgTDM4LjgzMDUwODUsMTcuNzQzNzc0MSBDMzguODA2OTQzOSwxNS41MzUwNzQzIDM4LjMyMTgwMDIsMTQuMDcwODQ0MyAzNy4zNzUyMjAyLDEzLjAzMDY4NDggTDM3LjM3NTIyMDIsMTMuMDMwNjg0OCBaIiBpZD0iU2hhcGUiIGZpbGw9IiM1REE3QTMiPjwvcGF0aD4KICAgICAgICAgICAgPHBhdGggZD0iTTQ4LjQzNjA2MzksMTIuMTMxMzMxIEM0Ny43NjA0NDM5LDExLjY3NjU3MTQgNDYuOTE5MzU2NiwxMS40NDg5Nzk2IDQ1Ljk1ODg0MjIsMTEuNDQ4OTc5NiBDNDQuMjkzMDQ0MywxMS40NDg5Nzk2IDQyLjk1MDQ1NjMsMTIuMjgxMTc0IDQxLjg2ODk3LDEzLjk0NTEzODggTDQxLjg2ODk3LDExLjY5NzA2ODggTDQwLjE2OTQ5MTUsMTEuNjk3MDY4OCBMNDAuMTY5NDkxNSwyMy41NzE0Mjg2IEw0Mi4wMjM0NjgxLDIzLjU3MTQyODYgTDQyLjAyMzQ2ODEsMTcuMDk0Mzg3NSBDNDIuMDIzNDY4MSwxNS44NzQwMTQ3IDQyLjM4NTkyMDUsMTQuODg5OTk4MiA0My4wNzg1MzUyLDE0LjE0MzE4NiBDNDMuNzcwNjg2NCwxMy4zOTY3OTggNDQuNjM1NDEyLDEzLjAyMzYwNCA0NS42NTUwOTkxLDEzLjAyMzYwNCBDNDYuMzk0NjgxMiwxMy4wMjM2MDQgNDcuMDQyODAwNSwxMy4yNDUyNTg2IDQ3LjU2MTE0MTUsMTMuNjg4NTY3OSBDNDguMDc5NjM2OSwxNC4xMzE1OTQ0IDQ4LjM1Nzg4NzksMTQuODk3NjMxNyA0OC4zNTc4ODc5LDE1Ljk4NjUzODQgTDQ4LjM1Nzg4NzksMjMuNTcxNDI4NiBMNTAuMjExODY0NCwyMy41NzE0Mjg2IEw1MC4yMTE4NjQ0LDE2Ljc0NDUxODEgQzUwLjIxMTg2NDQsMTUuMjU5Mzc1NSA1MC4wODE0NjgxLDE0LjIzMzA5MTkgNDkuODMwNDA4NywxMy42NjUyNDMyIEM0OS41Nzk2NTg0LDEzLjA5NzM5NDYgNDkuMTExODM4MywxMi41ODYwOTA1IDQ4LjQzNjA2MzksMTIuMTMxMzMxIFoiIGlkPSJTaGFwZSIgZmlsbD0iIzVEQTdBMyI+PC9wYXRoPgogICAgICAgICAgICA8cGF0aCBkPSJNNTcuNzMyOTYwNywxOS4zMjIyNzI0IEM1Ny43MzI5NjA3LDIwLjIxNjkxMjkgNTcuNjY0MDE3MywyMC44NjM1NjU5IDU3LjUyOTgzNDEsMjEuMjYzMjQ2NCBDNTcuMzk1MjIzNiwyMS42NjI0OTE5IDU3LjEzMTQxNTQsMjEuOTg3NjMxMSA1Ni43Mzk0MDY4LDIyLjIzOTM4OTIgQzU2LjM0NzY4MywyMi40OTA4NTczIDU1LjY5NjI4MiwyMi42MTYxNTYzIDU0Ljg2OTM4ODcsMjIuNjE2MTU2MyBDNTQuMjg4MDcwNywyMi42MTYxNTYzIDUzLjc0NDUwMDUsMjIuNTM4NTY5NSA1Mi44ODk4MzA1LDIyLjM4MzI1MSBMNTIuODg5ODMwNSwyMy45MzQ2OTYgQzUzLjc0NDUwMDUsMjQuMTQxMjA3MyA1NC4zNzg4MDgyLDI0LjI0NDg5OCA1NS4wOTc0NDMyLDI0LjI0NDg5OCBDNTYuNDM5NTYsMjQuMjQ0ODk4IDU3LjUzNTEwNDYsMjMuODgyNDg4MSA1OC4zNDc4OTU4LDIzLjE1ODM5MzQgQzU5LjE2MDQwMjEsMjIuNDMzODYzNyA1OS41ODQ3NDU4LDIxLjE1NDkxNSA1OS41ODQ3NDU4LDE5LjMyMTExMjMgTDU5LjU4NDc0NTgsOC43NTUxMDIwNCBMNTcuNzMyOTYwNyw4Ljc1NTEwMjA0IEw1Ny43MzI5NjA3LDE5LjMyMjI3MjQgWiIgaWQ9IlNoYXBlIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik02OS4yNDA4MTE5LDE2LjIyNTg5MDQgQzY4LjU2Njc1NzgsMTYuOTQyNzI2NiA2Ny43MzIxNTUyLDE3LjMwMTIxNiA2Ni43Mzc0MTk4LDE3LjMwMTIxNiBDNjUuODMzODMyNiwxNy4zMDEyMTYgNjUuMDQyMDMzNywxNi45OTE5NDIyIDY0LjM2MTA1MzQsMTYuMzczNTM3MyBDNjMuNjgwMjExNiwxNS43NTQ3MDQzIDYzLjMzOTcyMTUsMTQuOTE0MTg3MiA2My4zMzk3MjE1LDEzLjg1MTI3MjQgQzYzLjMzOTcyMTUsMTIuODYxOTY3MiA2My42NDY4Mjc1LDEyLjAyMjQ0ODUgNjQuMjYwNzYyNiwxMS4zMzQ5OTkxIEM2NC44NzQxNDM1LDEwLjY0NzEyMTYgNjUuNzEwNDA4NCwxMC4zMDMzMjU2IDY2Ljc2OTAwMzEsMTAuMzAzMzI1NiBDNjcuODEzMzI5OCwxMC4zMDMzMjU2IDY4LjY1NDk5NzEsMTAuNjM3ODQ5MSA2OS4yOTM0NTA4LDExLjMwNzYwOTUgQzY5LjkzMjE4MTUsMTEuOTc3MjI3MiA3MC4yNTE0Nzc2LDEyLjc3ODA4NjYgNzAuMjUxNDc3NiwxMy43MDkzMzE3IEM3MC4yNTE0Nzc2LDE0LjY3MDEwNjIgNjkuOTE0MzEyLDE1LjUwOTA1NDIgNjkuMjQwODExOSwxNi4yMjU4OTA0IE03MC44NTQ3NDYzLDEwLjcyNDE1NDggQzY5Ljg4ODI2OTYsOS40MTIwMjM1NyA2OC40OTgwNTAzLDguNzU1MTAyMDQgNjYuNjg0MjI2OCw4Ljc1NTEwMjA0IEM2NS4yMDI1ODIxLDguNzU1MTAyMDQgNjMuOTgzNDM5LDkuMjU3MjQ0MDEgNjMuMDI3NDkwMSwxMC4yNjExIEM2Mi4wNzA5ODcsMTEuMjY1MjQxMyA2MS41OTMyMjAzLDEyLjQ3MjgwNzEgNjEuNTkzMjIwMywxMy44ODQyMjU1IEM2MS41OTMyMjAzLDE1LjI3MzgxNzggNjIuMDQ3OTkyMiwxNi40Mzk1ODYgNjIuOTU4MzY3LDE3LjM4MTY3MjkgQzYzLjg2ODg4MDMsMTguMzIzNjE3IDY0Ljk5NDI0MzIsMTguNzk0ODAzMSA2Ni4zMzQ3MzI3LDE4Ljc5NDgwMzEgQzY4LjIzMzA1NTMsMTguNzk0ODAzMSA2OS42NTUxMzUsMTcuOTAwNzkwNiA3MC42MDA4MzMyLDE2LjExMzA1MTEgQzcwLjU3OTUwMDYsMTguMTU1MTQyNyA3MC4yMjEyNzk1LDE5Ljc3MjI2ODEgNjkuNTI2NTg1NCwyMC45NjM5OTkzIEM2OC44MzEzMzcyLDIyLjE1NjAxNTkgNjcuNzk1ODc1OSwyMi43NTE0NTM2IDY2LjQxOTUwODksMjIuNzUxNDUzNiBDNjUuMDAxNTg0OSwyMi43NTE0NTM2IDYzLjk5MjMwNDUsMjIuMDY1MDAyNyA2My4zOTIzNjAzLDIwLjY5MTM4NzYgTDYxLjk0MjI5ODksMjEuMjM2NjExMSBDNjIuNzA0MTc2OCwyMy4yNDIxODMyIDY0LjE4OTU2MTYsMjQuMjQ0ODk4IDY2LjM5ODczMDQsMjQuMjQ0ODk4IEM2OC4yODk0MzQyLDI0LjI0NDg5OCA2OS43NDY5NzU5LDIzLjQ5NzgxOTEgNzAuNzcwMTA4NiwyMi4wMDM1MTg4IEM3MS43OTMyNDEzLDIwLjUwOTA3NTggNzIuMzA1MDg0NywxOC41NTQ1NzM4IDcyLjMwNTA4NDcsMTYuMTQwMDEyNyBDNzIuMzA1MDg0NywxMy44NDIxNDI2IDcxLjgyMTYzODYsMTIuMDM2ODU2NiA3MC44NTQ3NDYzLDEwLjcyNDE1NDgiIGlkPSJTaGFwZSIgZmlsbD0iI0ZGRkZGRiI+PC9wYXRoPgogICAgICAgICAgICA8cGF0aCBkPSJNNDguODQzNzkwMSwyNC42NDQ3MTU3IEM0OS41NDM5Mzk0LDI1LjkwNTU0OTIgNTAuNDE5NDA5OCwyNy4wOTIxMjI5IDUxLjQ3MDIwMTMsMjguMTY3MjQ1MyBDNTcuNzY4MDE2NSwzNC42MTA5MTgyIDY3Ljk3ODc5MjcsMzQuNjEwOTE4MiA3NC4yNzY2MDc5LDI4LjE2NzI0NTMgQzgwLjU3NDQ2NCwyMS43MjM2MDAzIDgwLjU3NDQ2NCwxMS4yNzY0MDE4IDc0LjI3NjYwNzksNC44MzI3NTY4MyBDNjcuOTc4NzkyNywtMS42MTA5MTg5NCA1Ny43NjgwMTY1LC0xLjYxMDkxODk0IDUxLjQ3MDIwMTMsNC44MzI3NTY4MyBDNDkuNjA2NzAxNiw2LjczOTM5NzA0IDQ4LjI5NDU5ODMsOC45OTY1NjQ4MyA0Ny41MzM4OTgzLDExLjM5NjgyMjkgTDQ4LjM3MDI2NzIsMTEuNzc3ODE5NiBDNDkuMDgzNDMyNSw5LjQ3ODI5OTU2IDUwLjMzMTIyMjcsNy4zMTQ3NjEyMiA1Mi4xMTM2MzM1LDUuNDkxMDg4OTIgQzU4LjA1NjA5NDgsLTAuNTg4OTk5Mjg4IDY3LjY5MDcyMTIsLTAuNTg4OTk5Mjg4IDczLjYzMzE3NTcsNS40OTEwODg5MiBDNzkuNTc1NjcxMiwxMS41NzExNDM2IDc5LjU3NTY3MTIsMjEuNDI4ODU1NyA3My42MzMxNzU3LDI3LjUwODkxNDYgQzY3LjY5MDcyMTIsMzMuNTg4OTkzIDU4LjA1NjA5NDgsMzMuNTg4OTkzIDUyLjExMzYzMzUsMjcuNTA4OTE0NiBDNTEuMTQ0MDY3NywyNi41MTY4OTg3IDUwLjMzMjY5OTgsMjUuNDI0MzI2NyA0OS42Nzk1MTYxLDI0LjI2NDAwNzMgTDQ4Ljg0Mzc5MDEsMjQuNjQ0NzE1NyBaIiBpZD0iU2hhcGUiIGZpbGw9IiM1REE3QTMiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==" alt="OpenJ9 Logo"/></a></div><style data-emotion-css="kzfr2u">.css-kzfr2u{-webkit-flex:2;-ms-flex:2;flex:2;}</style><nav class="css-kzfr2u"><style data-emotion-css="d1fq55">.css-d1fq55{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;list-style:none;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;}.css-d1fq55 li{padding:8px;margin-left:8px;margin-right:8px;}.css-d1fq55 li a{color:white;-webkit-text-decoration:none;text-decoration:none;}.css-d1fq55 li a:hover{color:var(--theme-ui-colors-links,#5DA7A3);}.css-d1fq55 li:first-of-type{margin-left:0;}.css-d1fq55 li:last-child{margin-right:0;padding-right:0;}</style><ul class="css-d1fq55"><li><a href="/openj9/">Home</a></li><li><a href="/openj9/about">About</a></li><li><a href="https://www.eclipse.org/openj9/docs/" rel="noopener noreferrer" target="_blank">Docs</a></li><li><a href="/openj9/performance">Performance</a></li><li><a href="/openj9/news">News</a></li></ul></nav><style data-emotion-css="1rr4qq7">.css-1rr4qq7{-webkit-flex:1;-ms-flex:1;flex:1;}</style><nav class="css-1rr4qq7"><ul class="css-d1fq55"><li><a href="https://twitter.com/openj9/" rel="noopener noreferrer" target="_blank"> <img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjVweCIgaGVpZ2h0PSIyNXB4IiB2aWV3Qm94PSIwIDAgMjUgMjUiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5Ud2l0dGVyPC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IlR3aXR0ZXIiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgIDxnIGlkPSJ0d2l0dGVyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwMDAwMCwgMC4yOTg4NzkpIj4KICAgICAgICAgICAgICAgIDxlbGxpcHNlIGlkPSJPdmFsLXBhdGgiIGZpbGw9IiM0MzQzNDMiIGN4PSIxMi41MDAyMjEyIiBjeT0iMTIuMjcyNzI3MyIgcng9IjEyLjUiIHJ5PSIxMi4yNzI3MjczIj48L2VsbGlwc2U+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTIuNTAwMjIxMiwwIEMxOS40MDM3ODA2LDAgMjUuMDAwMjIxMiw1LjQ5NDY4NzE2IDI1LjAwMDIyMTIsMTIuMjcyNzI3MyBDMjUuMDAwMjIxMiwxOS4wNTA3Njc0IDE5LjQwMzc4MDYsMjQuNTQ1NDU0NSAxMi41MDAyMjEyLDI0LjU0NTQ1NDUgQzUuNTk2NjYxODcsMjQuNTQ1NDU0NSAwLjAwMDIyMTIzODkzOCwxOS4wNTA3Njc0IDAuMDAwMjIxMjM4OTM4LDEyLjI3MjcyNzMgQzAuMDAwMjIxMjM4OTM4LDUuNDk0Njg3MTYgNS41OTY2NjE4NywwIDEyLjUwMDIyMTIsMCBaIE0xNS4xMDM0MzMzLDYuODE4MTgxODIgQzEzLjQ2NTM4MDIsNi44MTgxODE4MiAxMi4xMzY4NDA0LDguMDkyMTI0MTEgMTIuMTM2ODQwNCw5LjY2Mjg1OTk2IEMxMi4xMzY4NDA0LDkuODg1ODI2MzggMTIuMTYzMTY3OCwxMC4xMDI4NTI3IDEyLjIxNDA1MjgsMTAuMzExMTgxIEM5Ljc0ODU2NjA0LDEwLjE5MjU5MDggNy41NjI1MDQxLDkuMDYwMTUwNTQgNi4wOTkyMjk3Niw3LjMzODU3ODIzIEM1Ljg0MzkyMDAzLDcuNzU4NjI5MTUgNS42OTc0NTk4NSw4LjI0NzYyNzgxIDUuNjk3NDU5ODUsOC43Njg4NzI4MSBDNS42OTc0NTk4NSw5Ljc1NTU2ODE3IDYuMjIxNTc0ODksMTAuNjI2NjQzNCA3LjAxNzE1MDExLDExLjEzNjY0NDcgQzYuNTMxMDg4MTcsMTEuMTIyMDA2NSA2LjA3MzM0NDgsMTAuOTk0MDgxOSA1LjY3MzU2NjA0LDEwLjc4MDQ1IEw1LjY3MzM0NDgsMTAuODE2NTE0OSBMNS42NzMzNDQ4LDEwLjgxNjUxNDkgQzUuNjczMzQ0OCwxMi4xOTQ4MzM1IDYuNjk2MzUzNjUsMTMuMzQ0NDU3NyA4LjA1MzIxMjA2LDEzLjYwNTYxMDYgQzcuODA0NTM5NSwxMy42NzA5NTE5IDcuNTQxOTI4ODgsMTMuNzA1NTMxOCA3LjI3MTc5NjEzLDEzLjcwNTUzMTggQzcuMDgwMjAzMjEsMTMuNzA1NTMxOCA2Ljg5NDU4Mzc0LDEzLjY4NzkyMzYgNi43MTM2MTAyOSwxMy42NTQ4Mjg3IEM3LjA5MTA0MzkyLDE0Ljc4NDcyMzIgOC4xODYzOTc5LDE1LjYwNzIxNjkgOS40ODQ4NDkyMywxNS42MzAzNDA5IEM4LjQ2OTM2MjUsMTYuMzkzNDMzNCA3LjE5MDM4MDIsMTYuODQ4MDY0MiA1LjgwMDExNDcyLDE2Ljg0ODA2NDIgQzUuNTYxMTc2NjYsMTYuODQ4MDY0MiA1LjMyNDQ1MSwxNi44MzQ2OTkgNS4wOTI4MTM4MywxNi44MDgxODA2IEM2LjQwNDk4MTk3LDE3LjYxNTYxMTggNy45NjQ3MTY0OSwxOC4wODYzNjU4IDkuNjM5OTM3NzMsMTguMDg2MzY1OCBDMTUuMDk2NTc0OSwxOC4wODYzNjU4IDE4LjA4MDY0NTcsMTMuNzUxNzc5OCAxOC4wODA2NDU3LDkuOTkyMzI0MTQgQzE4LjA4MDY0NTcsOS44NjkwNjY3NyAxOC4wNzc3Njk2LDkuNzQ2MjMzNyAxOC4wNzIwMTc0LDkuNjI0NDYxMzcgQzE4LjY1MjEwNTksOS4yMjM1MDM2OCAxOS4xNTQ5ODIsOC43MjI2MjQ3OCAxOS41NTI1NDgzLDguMTUyMTYxNjkgQzE5LjAyMDY4OTksOC4zNzgzMTAzMiAxOC40NDg1NjYsOC41MzEyNjgyNSAxNy44NDg1NjYsOC41OTk1Nzk1NiBDMTguNDYxMTc2Nyw4LjI0NzYyNzgxIDE4LjkzMTMwOTQsNy42OTA3NDIxMyAxOS4xNTMyMTIxLDcuMDI2MDg1ODEgQzE4LjU3OTk4Miw3LjM1MjE1NTYzIDE3Ljk0NDgwNSw3LjU4ODY5OTQ2IDE3LjI2OTM2MjUsNy43MTYxOTk3NiBDMTYuNzI4MjEyMSw3LjE2MzU1NzAyIDE1Ljk1NzE5NDQsNi44MTgxODE4MiAxNS4xMDM0MzMzLDYuODE4MTgxODIgWiIgaWQ9IkNvbWJpbmVkLVNoYXBlIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==" alt="Twitter Logo"/></a></li><li><a href="https://github.com/eclipse/openj9" rel="noopener noreferrer" target="_blank"> <img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjVweCIgaGVpZ2h0PSIyNXB4IiB2aWV3Qm94PSIwIDAgMjUgMjUiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5HaXRIdWI8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iR2l0SHViIiBmaWxsPSIjRkZGRkZGIiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8ZyBpZD0iZ2l0aHViLWxvZ28iPgogICAgICAgICAgICAgICAgPHBhdGggZD0iTTIzLjMyMzIwOSw2LjM1NjM4NTg4IEMyMi4yMDU0MjQzLDQuNDI4ODY0OTMgMjAuNjg5MjIwNywyLjkwMjg0MzkxIDE4Ljc3NDE5OTMsMS43Nzc5Nzg1OCBDMTYuODU4ODkyOCwwLjY1MzA1NTg3MyAxNC43Njc5NDkxLDAuMDkwNzM3OTUzMyAxMi40OTk4ODYsMC4wOTA3Mzc5NTMzIEMxMC4yMzIxMDc5LDAuMDkwNzM3OTUzMyA4LjE0MDQ4MDEzLDAuNjUzMjI3OTkzIDYuMjI1NTcyNjksMS43Nzc5Nzg1OCBDNC4zMTAzODAyMSwyLjkwMjc4NjU0IDIuNzk0MjMzNjcsNC40Mjg4NjQ5MyAxLjY3NjQ0ODk5LDYuMzU2Mzg1ODggQzAuNTU4ODM1MzMzLDguMjgzODQ5NDUgMCwxMC4zODg2NTQ2IDAsMTIuNjcwNzQzOSBDMCwxNS40MTIwNTEgMC43OTQ2NzE0ODMsMTcuODc3MTA0NSAyLjM4NDQxMzQ5LDIwLjA2NjUzNTUgQzMuOTczOTg0NDksMjIuMjU2MTM4OCA2LjAyNzQ3NDg4LDIzLjc3MTI1ODggOC41NDQ3MTM2NywyNC42MTIwNjc4IEM4LjgzNzcyNzQsMjQuNjY2ODAyMiA5LjA1NDYzNzM3LDI0LjYyODMwNDUgOS4xOTU2NzE2MSwyNC40OTc1NTAzIEM5LjMzNjc2Mjg1LDI0LjM2NjYyMzkgOS40MDcyMjI5NiwyNC4yMDI2NTAzIDkuNDA3MjIyOTYsMjQuMDA2MzE4MSBDOS40MDcyMjI5NiwyMy45NzM1NTc5IDkuNDA0NDI5NjQsMjMuNjc4ODMwMSA5LjM5OTAxNDAxLDIzLjEyMTc5MDUgQzkuMzkzNDI3MzcsMjIuNTY0NzUxIDkuMzkwODA1MDcsMjIuMDc4Nzk3MiA5LjM5MDgwNTA3LDIxLjY2NDE1ODcgTDkuMDE2NDQyOTcsMjEuNzI5MzM1MSBDOC43Nzc3NTY1LDIxLjc3MzM0MDUgOC40NzY2NDc4MywyMS43OTE5ODY5IDguMTEzMTE2OTgsMjEuNzg2NzA4NiBDNy43NDk3NTcxNSwyMS43ODE2MDIzIDcuMzcyNTQ0NzMsMjEuNzQzMjc2OCA2Ljk4MTk5Mjc3LDIxLjY3MjAxODkgQzYuNTkxMjY5NzksMjEuNjAxMzkyMSA2LjIyNzg1Mjk1LDIxLjQzNzU5MDcgNS44OTE0NTcyMiwyMS4xODA5NTg5IEM1LjU1NTIzMjUyLDIwLjkyNDMyNzEgNS4zMTY1NDYwNCwyMC41ODg0MDUxIDUuMTc1NDU0OCwyMC4xNzM3MDkzIEw1LjAxMjcwMTA2LDE5Ljc5Njc2NTIgQzQuOTA0MjE3NTcsMTkuNTQ1ODEzNCA0LjczMzQyNTkxLDE5LjI2NzAzNTUgNC41MDAwOTgwNSwxOC45NjE0NjQxIEM0LjI2Njc3MDE5LDE4LjY1NTYwNTggNC4wMzA4MjAwMywxOC40NDgyNTc5IDMuNzkyMTMzNTUsMTguMzM5MDc2MSBMMy42NzgxNzc0MywxOC4yNTY5NzQ2IEMzLjYwMjI0NDY5LDE4LjIwMjQxMjMgMy41MzE3ODQ1OCwxOC4xMzY2MDQ5IDMuNDY2NjI2MDgsMTguMDYwMjQwOCBDMy40MDE1MjQ1OCwxNy45ODM4NzY2IDMuMzUyNzgzOTcsMTcuOTA3NDU1MSAzLjMyMDIzMzIzLDE3LjgzMDkxODggQzMuMjg3NjI1NDcsMTcuNzU0MzI1MSAzLjMxNDY0NjU4LDE3LjY5MTUwMTEgMy40MDE1ODE1OSwxNy42NDIyMTcyIEMzLjQ4ODUxNjYsMTcuNTkyOTMzNCAzLjY0NTYyNjY4LDE3LjU2OTAwODYgMy44NzM1OTU5MywxNy41NjkwMDg2IEw0LjE5ODk4OTM5LDE3LjYxNzk0ODIgQzQuNDE2MDEzMzcsMTcuNjYxNzI0MiA0LjY4NDQ1NzI3LDE3Ljc5MjQ3ODUgNS4wMDQ2NjMxNCwxOC4wMTEwMTQzIEM1LjMyNDY5Nzk4LDE4LjIyOTM3NzkgNS41ODc3ODMyNywxOC41MTMyNjIxIDUuNzkzOTc2LDE4Ljg2MjU1MjEgQzYuMDQzNjY0NzUsMTkuMzEwNDA5OSA2LjM0NDQ4ODM4LDE5LjY1MTY2NzYgNi42OTczMDE5OSwxOS44ODY0OTc0IEM3LjA0OTgzMDU4LDIwLjEyMTMyNzMgNy40MDUyNjY0OSwyMC4yMzg1NDE0IDcuNzYzMjY3NzEsMjAuMjM4NTQxNCBDOC4xMjEyNjg5MiwyMC4yMzg1NDE0IDguNDMwNDcyNTIsMjAuMjExMjMxNiA4LjY5MDk5MjUxLDIwLjE1Njg5ODkgQzguOTUxMjI3NDcsMjAuMTAyMjc5MyA5LjE5NTM4NjU3LDIwLjAyMDE3NzcgOS40MjMzNTU4MiwxOS45MTEwNTMzIEM5LjUyMTAwODA2LDE5LjE3OTA4MTkgOS43ODY4ODY2NywxOC42MTY3NjM5IDEwLjIyMDc2MzYsMTguMjIzNjk3OSBDOS42MDIzNTY0MiwxOC4xNTgyOTIxIDkuMDQ2MzcxNDIsMTguMDU5NzgxOCA4LjU1MjUyMzU3LDE3LjkyODc5OCBDOC4wNTg5NjA3NSwxNy43OTc2NDIxIDcuNTQ4OTIzMDMsMTcuNTg0Nzg2MyA3LjAyMjc1MjQ2LDE3LjI4OTY1NjkgQzYuNDk2Mjk2ODUsMTYuOTk0OTI5MSA2LjA1OTU2OTU4LDE2LjYyODk0MzQgNS43MTI0NTY2MiwxNi4xOTIzMzA5IEM1LjM2NTI4NjY1LDE1Ljc1NTQ4ODkgNS4wODAzNjc4NSwxNS4xODE5ODMxIDQuODU4MDk5MjYsMTQuNDcyMzMgQzQuNjM1NzE2NjYsMTMuNzYyMzkgNC41MjQ0OTY4NiwxMi45NDM0NDAzIDQuNTI0NDk2ODYsMTIuMDE1MjUxNCBDNC41MjQ0OTY4NiwxMC42OTM2NTIzIDQuOTUzMTg2MjEsOS41NjkwMTY0MiA1LjgxMDM5Mzg5LDguNjQwNzEyNzggQzUuNDA4ODM5NjcsNy42NDcxMTgwNyA1LjQ0Njc0OTAzLDYuNTMzMjY4NDYgNS45MjQyMzYsNS4yOTkyNzg2OCBDNi4yMzg5MTIyMiw1LjIwMDg4MzA4IDYuNzA1NTY3OTQsNS4yNzQ3MjI4MSA3LjMyMzk3NTE0LDUuNTIwMzM4ODcgQzcuOTQyNDk2MzQsNS43NjYwNjk2OCA4LjM5NTM1NjQ3LDUuOTc2NTczMTQgOC42ODMwMTE1OSw2LjE1MTEwMzQxIEM4Ljk3MDY2NjcsNi4zMjU1NzYzIDkuMjAxMTQ0MjQsNi40NzM0Mjc4NyA5LjM3NDc4NjIzLDYuNTkzMzM4NTQgQzEwLjM4NDA4NzQsNi4zMDk1MTE3MSAxMS40MjU2NTQzLDYuMTY3NTY5NjEgMTIuNDk5NzcyLDYuMTY3NTY5NjEgQzEzLjU3Mzg4OTYsNi4xNjc1Njk2MSAxNC42MTU2ODQ2LDYuMzA5NTExNzEgMTUuNjI1MDQyOCw2LjU5MzMzODU0IEwxNi4yNDM1MDcsNi4yMDAzODcyNiBDMTYuNjY2NDM4Niw1LjkzODE5MDI1IDE3LjE2NTg3MzEsNS42OTc5MDk5MyAxNy43NDA2MTMzLDUuNDc5NDg4OTIgQzE4LjMxNTY5NTUsNS4yNjExODI2NiAxOC43NTU0NDQxLDUuMjAxMDU1MiAxOS4wNTk0MDMxLDUuMjk5NDUwOCBDMTkuNTQ3NDkzMyw2LjUzMzQ5Nzk1IDE5LjU5MDk4OTMsNy42NDcyOTAxOSAxOS4xODkzMjExLDguNjQwODg0OSBDMjAuMDQ2NDcxNyw5LjU2OTE4ODU0IDIwLjQ3NTMzMjEsMTAuNjk0MTExMiAyMC40NzUzMzIxLDEyLjAxNTQyMzUgQzIwLjQ3NTMzMjEsMTIuOTQzNjEyNCAyMC4zNjM3MTMzLDEzLjc2NTE0MzkgMjAuMTQxNjcyNywxNC40ODA1MzQ0IEMxOS45MTkzNDcxLDE1LjE5NjAzOTYgMTkuNjMxOTc3LDE1Ljc2ODk3MTcgMTkuMjc5NDQ4NSwxNi4yMDA1MzUzIEMxOC45MjY1MjA4LDE2LjYzMjA0MTYgMTguNDg3MDAwMiwxNi45OTUxNTg2IDE3Ljk2MDgyOTcsMTcuMjg5ODI5MSBDMTcuNDM0NTQ1MSwxNy41ODQ3MjkgMTYuOTI0MzM2MywxNy43OTc1ODQ4IDE2LjQzMDc3MzUsMTcuOTI4NzQwNiBDMTUuOTM2OTgyNywxOC4wNTk4OTY1IDE1LjM4MDk5NzcsMTguMTU4NDY0MiAxNC43NjI1OTA1LDE4LjIyMzk4NDggQzE1LjMyNjYxMzQsMTguNzE1MjE2OSAxNS42MDg2ODE5LDE5LjQ5MDYyMDEgMTUuNjA4NjgxOSwyMC41NDk4NTAxIEwxNS42MDg2ODE5LDI0LjAwNTg1OTIgQzE1LjYwODY4MTksMjQuMjAyMTkxNCAxNS42NzY1MTk3LDI0LjM2NjEwNzUgMTUuODEyMzA5MywyNC40OTcwOTEzIEMxNS45NDc5Mjc5LDI0LjYyNzg0NTUgMTYuMTYyMTAxNiwyNC42NjYzNDMyIDE2LjQ1NTExNTMsMjQuNjExNTUxNSBDMTguOTcyNjk2MSwyMy43NzA4NTcyIDIxLjAyNjE4NjUsMjIuMjU1Njc5OCAyMi42MTU3MDA1LDIwLjA2NjA3NjYgQzI0LjIwNTA0MzUsMTcuODc2NjQ1NSAyNSwxNS40MTE1OTIgMjUsMTIuNjcwMjg0OSBDMjQuOTk5NDI5OSwxMC4zODg0ODI1IDI0LjQ0MDMwOTYsOC4yODM4NDk0NSAyMy4zMjMyMDksNi4zNTYzODU4OCBaIiBpZD0iU2hhcGUiPjwvcGF0aD4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+" alt="GitHub Logo"/></a></li><li><a href="https://openj9.slack.com/" rel="noopener noreferrer" target="_blank"><img src="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjVweCIgaGVpZ2h0PSIyNXB4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogPCEtLSBDcmVhdGVkIHdpdGggTWV0aG9kIERyYXcgLSBodHRwOi8vZ2l0aHViLmNvbS9kdW9waXhlbC9NZXRob2QtRHJhdy8gLS0+CgogPGc+CiAgPHRpdGxlPmJhY2tncm91bmQ8L3RpdGxlPgogIDxyZWN0IGZpbGw9Im5vbmUiIGlkPSJjYW52YXNfYmFja2dyb3VuZCIgaGVpZ2h0PSIyNiIgd2lkdGg9IjI2IiB5PSItMSIgeD0iLTEiLz4KICA8ZyBkaXNwbGF5PSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgeT0iMCIgeD0iMCIgaGVpZ2h0PSIxMDAlIiB3aWR0aD0iMTAwJSIgaWQ9ImNhbnZhc0dyaWQiPgogICA8cmVjdCBmaWxsPSJ1cmwoI2dyaWRwYXR0ZXJuKSIgc3Ryb2tlLXdpZHRoPSIwIiB5PSIxIiB4PSIxIiBoZWlnaHQ9IjIyIiB3aWR0aD0iMjIiLz4KICA8L2c+CiA8L2c+CiA8Zz4KICA8dGl0bGU+TGF5ZXIgMTwvdGl0bGU+CiAgPGVsbGlwc2Ugcnk9IjExIiByeD0iMTEiIGlkPSJzdmdfMSIgY3k9IjEyIiBjeD0iMTIiIHN0cm9rZT0iI0ZGRiIgZmlsbD0iI0ZGRkZGRiIvPgogIDxzdHlsZSB0cmFuc2Zvcm09Im1hdHJpeCgwLjA2NTE4MjQ5NTU3MzI1MzYyLDAsMCwwLjA2NTE4MjQ5NTU3MzI1MzYyLDAsMCkgIiB0eXBlPSJ0ZXh0L2NzcyI+LnN0MHtmaWxsOiM0MzQzNDM7fTwvc3R5bGU+CiAgPGcgc3Ryb2tlPSJudWxsIiBpZD0ic3ZnXzE5Ij4KICAgPGcgc3Ryb2tlPSJudWxsIiB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMDE1NTgwODUxODA5NDg2LDAsMCwwLjEzMDE1NTgwODUxODA5NDg2LC02Ljg0OTAwNjQ1MDQwNTQ5OSwtNi44MzE1MDczOTEwMjE5MjQpICIgaWQ9InN2Z182Ij4KICAgIDxnIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z183Ij4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfOCIgZD0ibTExMC4yOTgyOTIsMTYxLjI5MzAxMWMwLDcuMSAtNS44LDEyLjkgLTEyLjksMTIuOXMtMTIuOSwtNS44IC0xMi45LC0xMi45YzAsLTcuMSA1LjgsLTEyLjkgMTIuOSwtMTIuOWwxMi45LDBsMCwxMi45eiIgY2xhc3M9InN0MCIvPgogICAgIDxwYXRoIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z185IiBkPSJtMTE2Ljc5ODI5MiwxNjEuMjkzMDExYzAsLTcuMSA1LjgsLTEyLjkgMTIuOSwtMTIuOXMxMi45LDUuOCAxMi45LDEyLjlsMCwzMi4zYzAsNy4xIC01LjgsMTIuOSAtMTIuOSwxMi45cy0xMi45LC01LjggLTEyLjksLTEyLjljMCwwIDAsLTMyLjMgMCwtMzIuM3oiIGNsYXNzPSJzdDAiLz4KICAgIDwvZz4KICAgIDxnIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z18xMCI+CiAgICAgPHBhdGggc3Ryb2tlPSJudWxsIiBpZD0ic3ZnXzExIiBkPSJtMTI5LjY5ODI5MiwxMDkuNDkzMDExYy03LjEsMCAtMTIuOSwtNS44IC0xMi45LC0xMi45czUuOCwtMTIuOSAxMi45LC0xMi45czEyLjksNS44IDEyLjksMTIuOWwwLDEyLjlsLTEyLjksMHoiIGNsYXNzPSJzdDAiLz4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTIiIGQ9Im0xMjkuNjk4MjkyLDExNS45OTMwMTFjNy4xLDAgMTIuOSw1LjggMTIuOSwxMi45cy01LjgsMTIuOSAtMTIuOSwxMi45bC0zMi4zLDBjLTcuMSwwIC0xMi45LC01LjggLTEyLjksLTEyLjlzNS44LC0xMi45IDEyLjksLTEyLjljMCwwIDMyLjMsMCAzMi4zLDB6IiBjbGFzcz0ic3QwIi8+CiAgICA8L2c+CiAgICA8ZyBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTMiPgogICAgIDxwYXRoIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z18xNCIgZD0ibTE4MS40OTgyOTIsMTI4Ljg5MzAxMWMwLC03LjEgNS44LC0xMi45IDEyLjksLTEyLjljNy4xLDAgMTIuOSw1LjggMTIuOSwxMi45cy01LjgsMTIuOSAtMTIuOSwxMi45bC0xMi45LDBsMCwtMTIuOXoiIGNsYXNzPSJzdDAiLz4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTUiIGQ9Im0xNzQuOTk4MjkyLDEyOC44OTMwMTFjMCw3LjEgLTUuOCwxMi45IC0xMi45LDEyLjljLTcuMSwwIC0xMi45LC01LjggLTEyLjksLTEyLjlsMCwtMzIuM2MwLC03LjEgNS44LC0xMi45IDEyLjksLTEyLjljNy4xLDAgMTIuOSw1LjggMTIuOSwxMi45bDAsMzIuM3oiIGNsYXNzPSJzdDAiLz4KICAgIDwvZz4KICAgIDxnIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z18xNiI+CiAgICAgPHBhdGggc3Ryb2tlPSJudWxsIiBpZD0ic3ZnXzE3IiBkPSJtMTYyLjA5ODI5MiwxODAuNjkzMDExYzcuMSwwIDEyLjksNS44IDEyLjksMTIuOWMwLDcuMSAtNS44LDEyLjkgLTEyLjksMTIuOWMtNy4xLDAgLTEyLjksLTUuOCAtMTIuOSwtMTIuOWwwLC0xMi45bDEyLjksMHoiIGNsYXNzPSJzdDAiLz4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTgiIGQ9Im0xNjIuMDk4MjkyLDE3NC4xOTMwMTFjLTcuMSwwIC0xMi45LC01LjggLTEyLjksLTEyLjljMCwtNy4xIDUuOCwtMTIuOSAxMi45LC0xMi45bDMyLjMsMGM3LjEsMCAxMi45LDUuOCAxMi45LDEyLjljMCw3LjEgLTUuOCwxMi45IC0xMi45LDEyLjlsLTMyLjMsMHoiIGNsYXNzPSJzdDAiLz4KICAgIDwvZz4KICAgPC9nPgogIDwvZz4KIDwvZz4KPC9zdmc+" alt="Slack logo"/></a></li><li><a href="https://stackoverflow.com/search?q=%23OpenJ9" rel="noopener noreferrer" target="_blank"><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjRweCIgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgNjUgNzAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5zdGFja292ZXJmbG93LWxvZ288L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0iI0ZGRkZGRiIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0ic3RhY2tvdmVyZmxvdy1sb2dvIiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgZmlsbD0iI0ZGRkZGRiIgcG9pbnRzPSI1NC4yNDE3MjY2IDYzLjc3MDIyNjUgNTQuMjQxNzI2NiA0NSA2MSA0NSA2MSA3MCAwIDcwIDAgNDUgNi43NTgyNzMzOCA0NSA2Ljc1ODI3MzM4IDYzLjc3MDIyNjUiPjwvcG9seWdvbj4KICAgICAgICAgICAgPHBhdGggZD0iTTE0LjcwNzEwNTcsNDMuNjQyNzU2NyBMNDguMTE3ODUxLDUwLjA4NzIwMTEgTDQ5LjUzMjA2MjQsNDMuODg3NDgyNCBMMTYuMTIxMzE3MiwzNy40NDMwMzggTDE0LjcwNzEwNTcsNDMuNjQyNzU2NyBMMTQuNzA3MTA1Nyw0My42NDI3NTY3IFogTTE5LjEyNjUxNjUsMjguOTU5MjEyNCBMNTAuMDYyMzkxNyw0Mi4yNTU5Nzc1IEw1Mi44OTA4MTQ2LDM2LjU0NTcxMDMgTDIxLjk1NDkzOTMsMjMuMTY3MzY5OSBMMTkuMTI2NTE2NSwyOC45NTkyMTI0IFogTTI3LjcwMDE3MzMsMTQuOTI4MjcgTDUzLjk1MTQ3MzEsMzUuMDc3MzU1OCBMNTguMjgyNDk1NywzMC4yNjQ0MTYzIEwzMi4wMzExOTU4LDEwLjExNTMzMDUgTDI3LjcwMDE3MzMsMTQuOTI4MjcgTDI3LjcwMDE3MzMsMTQuOTI4MjcgWiBNNDQuNjcwNzEwNiwwIEwzOS4xOTA2NDEyLDMuNzUyNDYxMzIgTDU5LjUxOTkzMDcsMjkuMDQwNzg3NiBMNjUsMjUuMjg4MzI2MyBMNDQuNjcwNzEwNiwwIFogTTE0LDU4IEw0OC4xMTc4NTEsNTggTDQ4LjExNzg1MSw1MS43MTg3MDYgTDE0LDUxLjcxODcwNiBMMTQsNTggWiIgaWQ9IlNoYXBlIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4KCgo=" alt="Stack Overflow logo"/></a></li></ul></nav></header><style data-emotion-css="1824c0p">.css-1824c0p{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:fixed;width:100%;bottom:0;background-color:white;height:3rem;box-shadow:0 0.5rem 2rem grey;z-index:9999;}@media screen and (min-width:35rem){.css-1824c0p{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}}@media screen and (min-width:62.5rem){.css-1824c0p{display:none;}}@media screen and (min-width:85rem){.css-1824c0p{display:none;}}</style><nav class="css-1824c0p"><style data-emotion-css="94xmc6">.css-94xmc6{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;list-style:none;-webkit-box-pack:space-evenly;-webkit-justify-content:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly;width:100%;}.css-94xmc6 li a{color:black;-webkit-text-decoration:none;text-decoration:none;}.css-94xmc6 li:first-of-type{margin-left:0;}.css-94xmc6 li:last-child{margin-right:0;padding-right:0;}</style><ul class="css-94xmc6"><li><a href="/openj9/">Home</a></li><li><a href="/openj9/about">About</a> </li><li><a href="https://www.eclipse.org/openj9/docs/" rel="noopener noreferrer" target="_blank">Docs</a> </li><li><a href="/openj9/performance">Performance</a> </li><li><a href="/openj9/news">News</a> </li></ul></nav><style data-emotion-css="a14s3y">.css-a14s3y{background-color:#F5F9FC;padding-left:7%;padding-right:7%;padding-top:4rem;padding-bottom:4rem;}</style><section class="css-a14s3y"><style data-emotion-css="uirvwh">.css-uirvwh{margin-bottom:3rem;}</style><style data-emotion-css="17u419h">.css-17u419h{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:36px;margin-bottom:3rem;}</style><h1 class="css-17u419h">More about OpenJ9</h1><style data-emotion-css="1sl8abc">.css-1sl8abc{background-color:white;padding-top:2rem;padding-bottom:2rem;padding-left:5%;padding-right:5%;border-radius:0.5rem;}</style><div class="css-1sl8abc"><style data-emotion-css="1v4dyq7">.css-1v4dyq7{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:28px;}</style><h2 class="css-1v4dyq7">Our story</h2><style data-emotion-css="fza3g9">.css-fza3g9{margin-bottom:40px;font-size:18px;}</style><p class="css-fza3g9">Eclipse OpenJ9 is a high performance, scalable, Java virtual machine (JVM) implementation that represents hundreds of person-years of effort. Contributed to the Eclipse project by IBM, the OpenJ9 JVM underpins the IBM SDK, Java Technology Edition product that is a core component of many IBM Enterprise software products. Continued development of OpenJ9 at the Eclipse foundation ensures wider collaboration, fresh innovation, and the opportunity to influence the development of OpenJ9 for the next generation of Java applications.</p></div></section><style data-emotion-css="1cb4n38">.css-1cb4n38{background-color:var(--theme-ui-colors-primary,#434343);color:var(--theme-ui-colors-lightText,#d8d8d8);padding-left:7%;padding-right:7%;padding-top:2rem;padding-bottom:2rem;}</style><section class="css-1cb4n38"><style data-emotion-css="1v4dyq7">.css-1v4dyq7{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:28px;}</style><h2 class="css-1v4dyq7">Our supporters</h2><style data-emotion-css="fza3g9">.css-fza3g9{margin-bottom:40px;font-size:18px;}</style><p class="css-fza3g9">The success of the OpenJ9 project is underpinned by the generosity of our supporters, to whom we would like to extend our thanks. This support comes in different forms; monetory, people, system, and data center resources. People resources help us to staff the planning, development, delivery, and support of OpenJ9 releases as well as pioneering new and innovative technologies. Dedicated systems and hosting services allow us to run automated build and test operations, which help ensure that quality and reliability is central to all our deliverables.</p><style data-emotion-css="v2pi9l">.css-v2pi9l{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:space-around;-webkit-justify-content:space-around;-ms-flex-pack:space-around;justify-content:space-around;}</style><div class="css-v2pi9l"><style data-emotion-css="gu2vom">.css-gu2vom{min-height:12.5rem;border-radius:0.5rem;background-color:white;color:var(--theme-ui-colors-darkText,#4d4f50);margin-top:40px;margin-bottom:40px;margin-left:16px;margin-right:16px;width:18rem;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}</style><article class="css-gu2vom"><style data-emotion-css="vs5na0">.css-vs5na0{width:50%;height:50%;}</style><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNDVweCIgaGVpZ2h0PSIxOHB4IiB2aWV3Qm94PSIwIDAgNDUgMTgiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5pYm0tbG9nbzwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJpYm0tbG9nbyIgZmlsbD0iIzAwMDAwMCIgZmlsbC1ydWxlPSJub256ZXJvIj4KICAgICAgICAgICAgPHBhdGggZD0iTTAsMTcuNjk0MTE3NiBMOC42NzUwOTQxMiwxNy42OTQxMTc2IEw4LjY3NTA5NDEyLDE2LjU2NzIyMzUgTDAsMTYuNTY3MjIzNSBMMCwxNy42OTQxMTc2IFogTTAsMTUuMzI4MDgyNCBMOC42NzUwOTQxMiwxNS4zMjgwODI0IEw4LjY3NTA5NDEyLDE0LjIwMTE4ODIgTDAsMTQuMjAxMTg4MiBMMCwxNS4zMjgwODI0IFogTTIuNDc4ODM1MjksMTIuOTYyMDQ3MSBMNi4xOTY4MTE3NiwxMi45NjIwNDcxIEw2LjE5NjgxMTc2LDExLjgzNTcwNTkgTDIuNDc4ODM1MjksMTEuODM1NzA1OSBMMi40Nzg4MzUyOSwxMi45NjIwNDcxIFogTTIuNDc4ODM1MjksMTAuNTk2NTY0NyBMNi4xOTY4MTE3NiwxMC41OTY1NjQ3IEw2LjE5NjgxMTc2LDkuNDY5NjcwNTkgTDIuNDc4ODM1MjksOS40Njk2NzA1OSBMMi40Nzg4MzUyOSwxMC41OTY1NjQ3IFogTTIuNDc4ODM1MjksOC4yMzA1Mjk0MSBMNi4xOTY4MTE3Niw4LjIzMDUyOTQxIEw2LjE5NjgxMTc2LDcuMTA0MTg4MjQgTDIuNDc4ODM1MjksNy4xMDQxODgyNCBMMi40Nzg4MzUyOSw4LjIzMDUyOTQxIFogTTIuNDc4MjgyMzUsNS44NjQ0OTQxMiBMNi4xOTYyNTg4Miw1Ljg2NDQ5NDEyIEw2LjE5NjI1ODgyLDQuNzM3NiBMMi40NzgyODIzNSw0LjczNzYgTDIuNDc4MjgyMzUsNS44NjQ0OTQxMiBaIE0wLDMuNDk4NDU4ODIgTDguNjc1MDk0MTIsMy40OTg0NTg4MiBMOC42NzUwOTQxMiwyLjM3MjExNzY1IEwwLDIuMzcyMTE3NjUgTDAsMy40OTg0NTg4MiBaIE0wLDEuMTMyOTc2NDcgTDguNjc1MDk0MTIsMS4xMzI5NzY0NyBMOC42NzUwOTQxMiwwLjAwNjA4MjM1Mjk0IEwwLDAuMDA2MDgyMzUyOTQgTDAsMS4xMzI5NzY0NyBaIE05LjkxNDIzNTI5LDE2LjU2Nzc3NjUgTDkuOTE0MjM1MjksMTcuNjk0MTIxOSBMMTkuMDM5OTc2NSwxNy42OTQxMjE5IEMyMC4xNjI2NTU1LDE3LjY5NTYyMTIgMjEuMjQ4OTc1NCwxNy4yOTYxOTI4IDIyLjEwMzI3MDYsMTYuNTY3Nzc2NSBMOS45MTQyMzUyOSwxNi41Njc3NzY1IFogTTkuOTE0MjM1MjksMTQuMjAxMTg4MiBMOS45MTQyMzUyOSwxNS4zMjgwODI0IEwyMy4xMzcyNzA2LDE1LjMyODA4MjQgQzIzLjM0MjA3MjUsMTQuOTc0Mzg3NCAyMy41MDAwNjExLDE0LjU5NTU4NjYgMjMuNjA3MjcwNiwxNC4yMDExODgyIEw5LjkxNDIzNTI5LDE0LjIwMTE4ODIgWiBNMTIuMzkyNTE3NiwxMi45NjIwNDcxIEwxNi4xMTA0OTQxLDEyLjk2MjA0NzEgTDE2LjExMDQ5NDEsMTEuODM1NzA1OSBMMTIuMzkyNTE3NiwxMS44MzU3MDU5IEwxMi4zOTI1MTc2LDEyLjk2MjA0NzEgWiBNMjIuMTg2MjExOCw5LjQ2OTY3MDU5IEwxMi4zOTI1MTc2LDkuNDY5NjcwNTkgTDEyLjM5MjUxNzYsMTAuNTk2NTY0NyBMMjMuMDk2MzUyOSwxMC41OTY1NjQ3IEMyMi44NTIzMjQ4LDEwLjE3Njc5NjMgMjIuNTQ1NTg5LDkuNzk2Nzc5NjEgMjIuMTg2NzY0Nyw5LjQ2OTY3MDU5IE0xMi4zOTMwNzA2LDcuMTA0MTg4MjQgTDEyLjM5MzA3MDYsOC4yMjk5NzY0NyBMMjIuMjI3NjgyNCw4LjIyOTk3NjQ3IEMyMi41ODYzMTY2LDcuOTAzMDQyNiAyMi44OTI4Njg3LDcuNTIzMjA4ODggMjMuMTM2NzE3Niw3LjEwMzYzNTI5IEwxMi4zOTMwNzA2LDcuMTAzNjM1MjkgTDEyLjM5MzA3MDYsNy4xMDQxODgyNCBaIE0yMy42MDY3MTc2LDMuNDk4NDU4ODIgQzIzLjQ5OTk4OTMsMy4xMDQwNzA5MiAyMy4zNDE5NzM5LDIuNzI1MzkxNzkgMjMuMTM2NzE3NiwyLjM3MjExNzY1IEw5LjkxNDIzNTI5LDIuMzcyMTE3NjUgTDkuOTE0MjM1MjksMy40OTg0NTg4MiBMMjMuNjA2NzE3NiwzLjQ5ODQ1ODgyIEwyMy42MDY3MTc2LDMuNDk4NDU4ODIgWiBNMjIuMTAzMjcwNiwxLjEzMjk3NjQ3IEMyMS4yNDg5NzU0LDAuNDA0NTYwMTQyIDIwLjE2MjY1NTUsMC4wMDUxMzE2OTc4MiAxOS4wMzk5NzY1LDAuMDA2NjMxMDY0NDkgTDkuOTE0MjM1MjksMC4wMDY2MzEwNjQ0OSBMOS45MTQyMzUyOSwxLjEzMjk3NjQ3IEwyMi4xMDMyNzA2LDEuMTMyOTc2NDcgTDIyLjEwMzI3MDYsMS4xMzI5NzY0NyBaIE0xMi4zOTI1MTc2LDUuODY0NDk0MTIgTDE2LjExMDQ5NDEsNS44NjQ0OTQxMiBMMTYuMTEwNDk0MSw0LjczNzYgTDEyLjM5MjUxNzYsNC43Mzc2IEwxMi4zOTI1MTc2LDUuODY0NDk0MTIgWiBNMTkuNjAzNDIzNSw1Ljg2NDQ5NDEyIEwyMy42MzQzNjQ3LDUuODY0NDk0MTIgQzIzLjcyNDg5Miw1LjQ5NTY4MzA0IDIzLjc3MDkyOTUsNS4xMTczNTg0NCAyMy43NzE0OTQxLDQuNzM3NiBMMTkuNjAzNDIzNSw0LjczNzYgTDE5LjYwMzQyMzUsNS44NjQ0OTQxMiBaIE0xOS42MDM0MjM1LDExLjgzNTcwNTkgTDE5LjYwMzQyMzUsMTIuOTYyMDQ3MSBMMjMuNzcxNDk0MSwxMi45NjIwNDcxIEMyMy43NzE0OTQxLDEyLjU3MzMyOTQgMjMuNzIxNzI5NCwxMi4xOTY3NzY1IDIzLjYzNDM2NDcsMTEuODM1NzA1OSBMMTkuNjAzNDIzNSwxMS44MzU3MDU5IFogTTMxLjc3MDM0MTIsMCBMMjQuNzg1NTg4MiwwIEwyNC43ODU1ODgyLDEuMTI2ODk0MTIgTDMyLjE2MTgyMzUsMS4xMjY4OTQxMiBMMzEuNzcwMzQxMiwwIFogTTI0Ljc4NjE0MTIsMTcuNjk0MTE3NiBMMzAuOTg0NjExOCwxNy42OTQxMTc2IEwzMC45ODQ2MTE4LDE2LjU2NzIyMzUgTDI0Ljc4NjE0MTIsMTYuNTY3MjIzNSBMMjQuNzg2MTQxMiwxNy42OTQxMTc2IFogTTI0Ljc4NjE0MTIsMTUuMzI3NTI5NCBMMzAuOTg0NjExOCwxNS4zMjc1Mjk0IEwzMC45ODQ2MTE4LDE0LjIwMDYzNTMgTDI0Ljc4NjE0MTIsMTQuMjAwNjM1MyBMMjQuNzg2MTQxMiwxNS4zMjc1Mjk0IFogTTI3LjI2NDk3NjUsMTIuOTYwMzg4MiBMMzAuOTg0NjExOCwxMi45NjAzODgyIEwzMC45ODQ2MTE4LDExLjgzMzQ5NDEgTDI3LjI2NDk3NjUsMTEuODMzNDk0MSBMMjcuMjY0OTc2NSwxMi45NjAzODgyIFogTTI3LjI2NDk3NjUsMTAuNTkzOCBMMzAuOTg0NjExOCwxMC41OTM4IEwzMC45ODQ2MTE4LDkuNDY2OTA1ODggTDI3LjI2NDk3NjUsOS40NjY5MDU4OCBMMjcuMjY0OTc2NSwxMC41OTM4IFogTTM4LjQyMjc3NjUsMTcuNjk0MTE3NiBMNDQuNjIxMjQ3MSwxNy42OTQxMTc2IEw0NC42MjEyNDcxLDE2LjU2NzIyMzUgTDM4LjQyMjc3NjUsMTYuNTY3MjIzNSBMMzguNDIyNzc2NSwxNy42OTQxMTc2IFogTTM4LjQyMjc3NjUsMTUuMzI3NTI5NCBMNDQuNjIxMjQ3MSwxNS4zMjc1Mjk0IEw0NC42MjEyNDcxLDE0LjIwMDYzNTMgTDM4LjQyMjc3NjUsMTQuMjAwNjM1MyBMMzguNDIyNzc2NSwxNS4zMjc1Mjk0IFogTTM4LjQyMjc3NjUsMTIuOTYwMzg4MiBMNDIuMTQxODU4OCwxMi45NjAzODgyIEw0Mi4xNDE4NTg4LDExLjgzMzQ5NDEgTDM4LjQyMjc3NjUsMTEuODMzNDk0MSBMMzguNDIyNzc2NSwxMi45NjAzODgyIFogTTM4LjQyMjIyMzUsMTAuNTkzOCBMNDIuMTQxMzA1OSwxMC41OTM4IEw0Mi4xNDEzMDU5LDkuNDY2OTA1ODggTDM4LjQyMjIyMzUsOS40NjY5MDU4OCBMMzguNDIyMjIzNSwxMC41OTM4IFogTTM4LjQyMjc3NjUsOC4yMjcyMTE3NiBMNDIuMTQxODU4OCw4LjIyNzIxMTc2IEw0Mi4xNDE4NTg4LDcuMDk5NzY0NzEgTDM1LjE3MDM3NjUsNy4wOTk3NjQ3MSBMMzQuNzc5NDQ3MSw4LjIyNjY1ODgyIEwzOC4wNDM0NTg4LDguMjI2NjU4ODIgTDM4LjQyMjc3NjUsNy4xNTM5NTI5NCBMMzguNDIyNzc2NSw4LjIyNzIxMTc2IFogTTM0LjIzNTkwNTksNy4wOTk3NjQ3MSBMMjcuMjY1NTI5NCw3LjA5OTc2NDcxIEwyNy4yNjU1Mjk0LDguMjI3MjExNzYgTDMwLjk4NDYxMTgsOC4yMjcyMTE3NiBMMzAuOTg0NjExOCw3LjE1NDUwNTg4IEwzMS4zNjM5Mjk0LDguMjI3MjExNzYgTDM0LjYyNzk0MTIsOC4yMjcyMTE3NiBMMzQuMjM1OTA1OSw3LjA5OTc2NDcxIFogTTQyLjE0MTMwNTksNC43MzMxNzY0NyBMMzUuOTkxNDk0MSw0LjczMzE3NjQ3IEwzNS42MDA1NjQ3LDUuODYwMDcwNTkgTDQyLjE0MTg1ODgsNS44NjAwNzA1OSBMNDIuMTQxMzA1OSw0LjczMzE3NjQ3IFogTTM3LjYzMzE3NjUsMCBMMzcuMjQyOCwxLjEyNjg5NDEyIEw0NC42MjEyNDcxLDEuMTI2ODk0MTIgTDQ0LjYyMTI0NzEsMCBMMzcuNjMzMTc2NSwwIFogTTM0LjcwMDkyOTQsMTcuNjk0MTE3NiBMMzUuMDk5MDQ3MSwxNi41NjcyMjM1IEwzNC4zMDcyMzUzLDE2LjU2NzIyMzUgTDM0LjcwMDkyOTQsMTcuNjk0MTE3NiBaIE0zMy44Njk4NTg4LDE1LjMyNzUyOTQgTDM1LjUzNjk3NjUsMTUuMzI3NTI5NCBMMzUuOTM1MDk0MSwxNC4yMDA2MzUzIEwzMy40NzE3NDEyLDE0LjIwMDYzNTMgTDMzLjg2OTg1ODgsMTUuMzI3NTI5NCBaIE0zMy4wMzQzNjQ3LDEyLjk2MDk0MTIgTDM2LjM3MjQ3MDYsMTIuOTYwOTQxMiBMMzYuNzcwNTg4MiwxMS44MzM0OTQxIEwzMi42MzY4LDExLjgzMzQ5NDEgTDMzLjAzNDM2NDcsMTIuOTYwOTQxMiBaIE0zMi4xOTg4NzA2LDEwLjU5MzggTDM3LjIwODUxNzYsMTAuNTkzOCBMMzcuNjA2MDgyNCw5LjQ2NjkwNTg4IEwzMS44MDAyLDkuNDY2OTA1ODggTDMyLjE5ODg3MDYsMTAuNTkzOCBaIE0yNy4yNjQ5NzY1LDUuODYwMDcwNTkgTDMzLjgwNjI3MDYsNS44NjAwNzA1OSBMMzMuNDE1MzQxMiw0LjczMzE3NjQ3IEwyNy4yNjQ5NzY1LDQuNzMzMTc2NDcgTDI3LjI2NDk3NjUsNS44NjAwNzA1OSBaIE0zNi40MjExMjk0LDMuNDkzNDgyMzUgTDQ0LjYyMTI0NzEsMy40OTM0ODIzNSBMNDQuNjIxMjQ3MSwyLjM2NjU4ODI0IEwzNi44MTI2MTE4LDIuMzY2NTg4MjQgTDM2LjQyMTEyOTQsMy40OTM0ODIzNSBaIE0zMi41OTQyMjM1LDIuMzY2NTg4MjQgTDI0Ljc4NjE0MTIsMi4zNjY1ODgyNCBMMjQuNzg2MTQxMiwzLjQ5MzQ4MjM1IEwzMi45ODUxNTI5LDMuNDkzNDgyMzUgTDMyLjU5NDIyMzUsMi4zNjY1ODgyNCBaIiBpZD0iU2hhcGUiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==" alt="IBM Logo" class="css-vs5na0"/></article><article class="css-gu2vom"><style data-emotion-css="138rpve">.css-138rpve{width:80%;-webkit-filter:invert(100%);filter:invert(100%);}</style><img src="/openj9/static/adopt-open-jdk-7072a4c16b356c87671638dba5c860e9.png" alt="AdoptOpenJDK Logo" class="css-138rpve"/></article><article class="css-gu2vom"><img src="/openj9/static/oregon-state-university-logo-3c2d68263b3d6bd814701041f7626cbe.svg" alt="Oregon State University Logo" class="css-vs5na0"/></article><article class="css-gu2vom"><img src="/openj9/static/uni-new-brunswick-logo-6555470091976484ab5115fd4dc596ac.svg" alt="New Brunswick University Logo" class="css-vs5na0"/></article></div></section><style data-emotion-css="wqrdrc">.css-wqrdrc{padding-left:7%;padding-right:7%;padding-top:4rem;padding-bottom:4rem;background-color:#F5F9FC;}</style><section class="css-wqrdrc"><style data-emotion-css="rd3ir2">.css-rd3ir2{display:grid;grid-gap:6rem;grid-template-columns:repeat(1,1fr);background-color:white;padding-left:5%;padding-right:5%;padding-top:2rem;padding-bottom:2rem;border-radius:0.5rem;}@media screen and (min-width:35rem){.css-rd3ir2{grid-template-columns:repeat(1,1fr);}}@media screen and (min-width:62.5rem){.css-rd3ir2{grid-template-columns:repeat(1,1fr);}}@media screen and (min-width:85rem){.css-rd3ir2{grid-template-columns:repeat(2,1fr);}}</style><div class="css-rd3ir2"><style data-emotion-css="1b6n4o1">.css-1b6n4o1{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;}</style><article class="css-1b6n4o1"><style data-emotion-css="4ddra2">.css-4ddra2{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:24px;}</style><h3 class="css-4ddra2">DOCS</h3><style data-emotion-css="fza3g9">.css-fza3g9{margin-bottom:40px;font-size:18px;}</style><p class="css-fza3g9">If you are new to OpenJ9, our documentation will help you get started. Out of the box, we expect you to discover a great experience, but we also have many tuning options to help you ramp up application performance.</p><style data-emotion-css="1575med">.css-1575med{background-color:var(--theme-ui-colors-secondary,#5DA7A3);color:white;border-radius:2.5rem;height:2rem;width:12rem;border:none;font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';font-size:16px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-text-decoration:none;text-decoration:none;}.css-1575med:hover{cursor:pointer;background-color:var(--theme-ui-colors-secondaryDark,#5d9da3);border-color:var(--theme-ui-colors-secondaryDark,#5d9da3);-webkit-text-decoration:none;text-decoration:none;color:white;}</style><a href="https://www.eclipse.org/openj9/docs/" rel="noopener noreferrer" target="_blank" class="css-1575med">Go to docs</a></article><article class="css-1b6n4o1"><h3 class="css-4ddra2">BLOGS</h3><p class="css-fza3g9">Our blogs are written by developers, for developers. Read about their insights into up and coming technologies, take deep dives into OpenJ9 development, or simply hear about their experiences of working on the project.</p><a href="https://blog.openj9.org/" rel="noopener noreferrer" target="_blank" class="css-1575med">Go to blogs</a></article></div></section><style data-emotion-css="17cbhv0">.css-17cbhv0{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background-color:var(--theme-ui-colors-primary,#434343);color:white;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:1rem;padding-bottom:3rem;-webkit-flex-direction:reverse-column;-ms-flex-direction:reverse-column;flex-direction:reverse-column;}@media screen and (min-width:35rem){.css-17cbhv0{padding-bottom:3rem;}}@media screen and (min-width:62.5rem){.css-17cbhv0{padding-bottom:0;}}@media screen and (min-width:85rem){.css-17cbhv0{padding-bottom:0;}}</style><footer class="css-17cbhv0"><style data-emotion-css="vkolmb">.css-vkolmb{-webkit-flex:50%;-ms-flex:50%;flex:50%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}@media screen and (min-width:35rem){.css-vkolmb{display:none;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}}@media screen and (min-width:62.5rem){.css-vkolmb{display:none;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;}}@media screen and (min-width:85rem){.css-vkolmb{display:none;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;}}</style><section class="css-vkolmb"><a href="https://wiki.eclipse.org/Development_Resources/Process_Guidelines/What_is_Incubation" rel="noopener noreferrer" target="_blank"><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNTBweCIgaGVpZ2h0PSI3NXB4IiB2aWV3Qm94PSIwIDAgMTU3IDIzMSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDwhLS0gR2VuZXJhdG9yOiBTa2V0Y2ggNjEuMiAoODk2NTMpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPmVjbGlwc2VfaW5jdWJhdGlvbl92ZXJ0aWNhbF9zdmc8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iZWNsaXBzZV9pbmN1YmF0aW9uX3ZlcnRpY2FsX3N2ZyIgZmlsbC1ydWxlPSJub256ZXJvIj4KICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNy4wMDAwMDAsIDIxNC4wMDAwMDApIiBmaWxsPSIjRkZGRkZGIj4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJQYXRoIiBwb2ludHM9IjAuNzUgMC4zNCAxLjkyIDAuMzQgMS45MiAxNi4wMyAwLjc1IDE2LjAzIj48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSI1LjYyIDAuMzQgNi43MiAwLjM0IDE3LjU1IDEzLjk5IDE3LjU1IDAuMzQgMTguNjcgMC4zNCAxOC42NyAxNi4wMyAxNy44IDE2LjAzIDYuNzUgMi4wOSA2Ljc1IDE2LjAzIDUuNjMgMTYuMDMgNS42MyAwLjM0Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMjEuODYsOC4yMyBMMjEuODYsOC4xOSBDMjEuODYsMy43NSAyNS4xOCwwLjA4IDI5LjcxLDAuMDggQzMyLjUxLDAuMDggMzQuMTksMS4xMSAzNS44MSwyLjU5IEwzNC45OCwzLjQ0IEMzMy42MSwyLjEyIDMyLjA0LDEuMTMgMjkuNjksMS4xMyBDMjUuOTIsMS4xMyAyMy4wOCw0LjIgMjMuMDgsOC4xNSBMMjMuMDgsOC4xOSBDMjMuMDgsMTIuMTYgMjUuOTcsMTUuMjUgMjkuNzEsMTUuMjUgQzMxLjk3LDE1LjI1IDMzLjUyLDE0LjM3IDM1LjExLDEyLjgxIEwzNS44OSwxMy41NyBDMzQuMjMsMTUuMjEgMzIuNDQsMTYuMyAyOS42NiwxNi4zIEMyNS4xOCwxNi4zIDIxLjg2LDEyLjc0IDIxLjg2LDguMjMgWiIgaWQ9IlBhdGgiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0zOC40LDkuNTEgTDM4LjQsMC4zNCBMMzkuNTcsMC4zNCBMMzkuNTcsOS40IEMzOS41NywxMy4xIDQxLjU3LDE1LjIzIDQ0Ljg4LDE1LjIzIEM0OC4wNiwxNS4yMyA1MC4xLDEzLjMgNTAuMSw5LjUxIEw1MC4xLDAuMzQgTDUxLjI3LDAuMzQgTDUxLjI3LDkuMzcgQzUxLjI3LDEzLjg4IDQ4LjY1LDE2LjI3MDAzMTQgNDQuODQsMTYuMjcwMDMxNCBDNDEuMDcsMTYuMjggMzguNCwxMy45IDM4LjQsOS41MSBaIiBpZD0iUGF0aCI+PC9wYXRoPgogICAgICAgICAgICAgICAgPHBhdGggZD0iTTU0LjAyLDAuMzQgTDYwLjUsMC4zNCBDNjIuMjcsMC4zNCA2My43MSwwLjg2IDY0LjU4LDEuNzMgQzY1LjIzLDIuMzggNjUuNTksMy4yMSA2NS41OSw0LjIgTDY1LjU5LDQuMjQgQzY1LjU5LDYuMzcgNjQuMiw3LjQ1IDYyLjkyLDcuOTYgQzY0LjgsOC40NSA2Ni40Niw5LjUzIDY2LjQ2LDExLjcgTDY2LjQ2LDExLjc0IEM2Ni40NiwxNC4zNiA2NC4yMiwxNi4wMiA2MC44MywxNi4wMiBMNTQuMDIsMTYuMDIgTDU0LjAyLDAuMzQgTDU0LjAyLDAuMzQgWiBNNjQuNCw0LjMxIEM2NC40LDIuNTggNjIuOTksMS40MiA2MC40OCwxLjQyIEw1NS4xOSwxLjQyIEw1NS4xOSw3LjU4IEw2MC4zNyw3LjU4IEM2Mi43Miw3LjU4IDY0LjQsNi40NCA2NC40LDQuMzUgTDY0LjQsNC4zMSBaIE02MC41LDguNjYgTDU1LjE5LDguNjYgTDU1LjE5LDE0Ljk2IEw2MC44OCwxNC45NiBDNjMuNTcsMTQuOTYgNjUuMjcwMDQ0NCwxMy43MyA2NS4yNzAwNDQ0LDExLjc1IEw2NS4yNzAwNDQ0LDExLjcxIEM2NS4yOCw5Ljc4IDYzLjYsOC42NiA2MC41LDguNjYgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNzYuMjgsMC4yMyBMNzcuNCwwLjIzIEw4NC43MSwxNi4wMyBMODMuNDMsMTYuMDMgTDgxLjQ0LDExLjY0IEw3Mi4xOCwxMS42NCBMNzAuMTksMTYuMDMgTDY4Ljk4LDE2LjAzIEw3Ni4yOCwwLjIzIFogTTgwLjk0LDEwLjU5IEw3Ni44MiwxLjUxIEw3Mi42NywxMC41OSBMODAuOTQsMTAuNTkgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSI5MS4wNSAxLjQyIDg1LjU4IDEuNDIgODUuNTggMC4zNCA5Ny42OCAwLjM0IDk3LjY4IDEuNDIgOTIuMjEgMS40MiA5Mi4yMSAxNi4wMyA5MS4wNCAxNi4wMyA5MS4wNCAxLjQyIj48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSIxMDEuMjkgMC4zNCAxMDIuNDYgMC4zNCAxMDIuNDYgMTYuMDMgMTAxLjI5IDE2LjAzIj48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTA1LjkxLDguMjMgTDEwNS45MSw4LjE5IEMxMDUuOTEsMy45MSAxMDkuMDcsMC4wOCAxMTMuODIsMC4wOCBDMTE4LjU3LDAuMDggMTIxLjY5LDMuODcgMTIxLjY5LDguMTUgTDEyMS42OSw4LjE5IEMxMjEuNjksMTIuNDcgMTE4LjUzLDE2LjMgMTEzLjc4LDE2LjMgQzEwOS4wMywxNi4zIDEwNS45MSwxMi41MSAxMDUuOTEsOC4yMyBaIE0xMjAuNDgsOC4yMyBMMTIwLjQ4LDguMTkgQzEyMC40OCw0LjMxIDExNy42NiwxLjEzIDExMy43OCwxLjEzIEMxMDkuOSwxLjEzIDEwNy4xMiw0LjI3IDEwNy4xMiw4LjE1IEwxMDcuMTIsOC4xOSBDMTA3LjEyLDEyLjA3IDEwOS45NCwxNS4yNSAxMTMuODIsMTUuMjUgQzExNy43LDE1LjI1IDEyMC40OCwxMi4xMSAxMjAuNDgsOC4yMyBaIiBpZD0iU2hhcGUiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJQYXRoIiBwb2ludHM9IjEyNC44OSAwLjM0IDEyNS45OSAwLjM0IDEzNi44MiAxMy45OSAxMzYuODIgMC4zNCAxMzcuOTQgMC4zNCAxMzcuOTQgMTYuMDMgMTM3LjA3IDE2LjAzIDEyNi4wMiAyLjA5IDEyNi4wMiAxNi4wMyAxMjQuOSAxNi4wMyAxMjQuOSAwLjM0Ij48L3BvbHlnb24+CiAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgPHBhdGggZD0iTTU2LjY2LDE2Ni4yMyBDNTcuNTEsMTYzLjQ4IDYwLjQzLDE2MS40MyA2My45NCwxNjEuNDMgQzY1LjE0LDE2MS40MyA2Ni4yNSwxNjEuNjkgNjcuMjUsMTYyLjExIEM2OS40NiwxNjAuNjQgNzIuMTksMTU5Ljc2IDc1LjE3LDE1OS43NiBMNzUuMTksMTU5Ljc2IEM3Ni4xMSwxNTcuOSA3OC40OCwxNTYuNTcgODEuMywxNTYuNTcgQzgyLjA0LDE1Ni41NyA4Mi43NSwxNTYuNjcgODMuNDIsMTU2Ljg0IEM4My4zMywxNTQuNTYgODMuNjksMTUyLjE4IDg0LjU1LDE0OS42OCBDODUuNTUsMTQ2Ljc5IDg3LDE0NC4wMyA4OC41MiwxNDEuMjggQzg4LjE3LDEzNy4xNiA4Ny45LDEzMy41IDgyLjc0LDEzMiBDODAuODIsMTMxLjQ0IDc4LjgyLDEzMS4yNyA3Ni44NiwxMzEuMDQgTDc2Ljg1LDEzMS4wNCBMNzYuODUsMTMxLjAzIEM3Ni4wMSwxMzAuOTMgNzUuMTcsMTMwLjgxIDc0LjM1LDEzMC42NSBDNjAuMTgsMTQ1LjQxIDQwLjIsMTA5Ljk3IDQwLjIsMTA5Ljk3IEM4NC4zLDEwMy4xMyA3Ni4wMSwxMjUuNjEgNzYuMDEsMTI1LjYxIEM3Mi44MSwxMjQuMDUgNzEuOTMsMTIyLjA4IDY5LjQ5LDExOS43MyBDNjMuOTIsMTE0LjM4IDUwLjYyLDExMy40NCA1MC42MiwxMTMuNDQgQzY2LjU0LDExNy41MSA2OC43MSwxMjUuMjIgNzQuOTcsMTI3LjY5IEM3Ni4zOSwxMjguMDEgNzcuOSwxMjguMTMgNzkuMzUsMTI4LjI5IEM4Mi4xNSwxMjguNTkgODQuODksMTI5LjExIDg3LjIyLDEzMC42MSBDODkuNjMsMTMyLjE2IDkwLjcxLDEzNC4wOSA5MS4yNiwxMzYuMjYgQzkzLDEzMi45NCA5NC41LDEyOS41NiA5NS4wNywxMjUuOTIgQzk1LjgsMTIxLjI3IDk1LjEzLDExNS44OCA5MS44MywxMTIuMDcgQzg4Ljc4LDEwOC41NSA4NC42NiwxMDUuODkgODEuNCwxMDIuNTIgQzc3LjkyLDk4LjkxIDc1LjYxLDk0LjQ2IDc1LjUyLDg5LjcxIEM3My43Niw4NS44NiA3MC45LDgxLjM5IDY4LjI4LDc5LjY1IEM1Ni45LDkwLjM0IDQxLjksNjIuNTggNDEuOSw2Mi41OCBDNzYuODgsNTcuNyA3MS4xLDc1LjY3IDcxLjEsNzUuNjcgQzYyLjcsNjYuMjggNTIuMzEsNjcuMTIgNTIuMzEsNjcuMTIgQzYwLjcxLDY5Ljc5IDY3LjM0LDc1LjE1IDcxLjIsNzguODMgTDcxLjczLDc5LjM2IEM3My4zLDgxIDc0LjksODIuNzUgNzYuMjQsODQuNjMgQzc3LjYsNzkuNDggODAuNzcsNzIuMjcgODMuMjYsNjcuOTcgQzgzLjI2LDY3Ljk3IDkxLjY2LDUzLjE1IDEwNS44LDQzLjkgQzEwNS44LDQzLjkgOTUuMDIsNDUuMTQgODMuNDEsNjIuODkgQzgzLjQxLDYyLjg5IDY3Ljk5LDM4LjcgMTE3LjgzLDM0LjIzIEMxMTcuODMsMzQuMjMgMTE0LjQsNzguMTcgODcuNDUsNjkuNjMgQzgyLjc3LDc2LjY3IDc5LjcsODQuNzQgODAuMzMsOTAuNDIgQzgwLjk1LDk1Ljk2IDg0LjgzLDk5Ljg2IDg5LjExLDEwMy41IEM5MC4yNSw5Ny42NiA5NC40Niw5Mi42MyAxMDAuNjUsODkuODkgQzEwNS42LDg3LjkyIDExMi45LDg2LjAzIDExOS43Miw4NS42MiBDMTE5LjcyLDg1LjYyIDEwNi4zOSw4Mi41OCA5Ni4yNSw4OS41MSBDOTYuMjUsODkuNTEgOTYuNDIsNjkuMjIgMTMyLjM0LDgzLjk1IEMxMzIuMzQsODMuOTUgMTA2LjM0LDExMC4yOSA5Ny45OSw5NC41OSBDOTQuMDMsOTcuMiA5MS41MywxMDEuNTggOTIuMTgsMTA2LjExIEM5NC41LDEwOC4xNCA5Ni42NiwxMTAuMzMgOTcuOTcsMTEzLjAzIEM5OS44LDExNi44MiAxMDAuNDUsMTIxLjI0IDk5Ljk1LDEyNS4zNSBDOTguOTksMTMzLjI1IDk0LjA1LDEzOS45NyA5MC42NywxNDcuMTQgQzg5LjI5LDE1MC4wNiA4Ny45NywxNTMuMjcgODcuOTUsMTU2LjUxIEM4OS42NCwxNTYuMDQgOTEuNDcsMTU1Ljc4IDkzLjM5LDE1NS43OCBDMTAwLjYyLDE1NS43OCAxMDYuNzEsMTU5LjM3IDEwOC42OCwxNjQuMyBDMTExLjYxLDE2NC42MSAxMTMuOTIsMTY2LjMzIDExNC4zNCwxNjguNTEgQzExNi40NSwxNjkuODEgMTE4LjEyLDE3MS42MyAxMTkuMTMsMTczLjc1IEw1MC41NSwxNzMuNzUgQzUyLjAyLDE3MC42MiA1NC4xNCwxNjcuMTYgNTYuNjYsMTY2LjIzIiBpZD0iUGF0aCIgZmlsbD0iI0Y3OEQyQyI+PC9wYXRoPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE3LjAwMDAwMCwgMTgyLjAwMDAwMCkiIGZpbGw9IiNGRkZGRkYiPgogICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IlBhdGgiIHBvaW50cz0iMC41NCAxLjM5IDE4LjU0IDEuMzkgMTguNTQgNS4yMSA0LjggNS4yMSA0LjggMTEuNTIgMTYuOTcgMTEuNTIgMTYuOTcgMTUuMzMgNC44IDE1LjMzIDQuOCAyMS44NSAxOC43MSAyMS44NSAxOC43MSAyNS42NyAwLjU0IDI1LjY3Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMjEuNTUsMTMuNiBMMjEuNTUsMTMuNTMgQzIxLjU1LDYuNjMgMjYuNzIsMC45NyAzNC4wNywwLjk3IEMzOC41NCwwLjk3IDQxLjI1LDIuNTMgNDMuNTcsNC43NSBMNDAuODMsNy45MSBDMzguODksNi4xMSAzNi44MSw0Ljg5IDM0LjAzLDQuODkgQzI5LjQyLDQuODkgMjYuMDIsOC43MSAyNi4wMiwxMy40NiBMMjYuMDIsMTMuNTMgQzI2LjAyLDE4LjI4IDI5LjM4LDIyLjEzIDM0LjAzLDIyLjEzIEMzNy4wMSwyMi4xMyAzOC45MiwyMC45NSA0MSwxOS4wMSBMNDMuNzQsMjEuNzggQzQxLjIxLDI0LjQyIDM4LjQzLDI2LjA4MDAxMzYgMzMuODksMjYuMDgwMDEzNiBDMjYuODMsMjYuMDkgMjEuNTUsMjAuNTcgMjEuNTUsMTMuNiBaIiBpZD0iUGF0aCI+PC9wYXRoPgogICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IlBhdGgiIHBvaW50cz0iNDcuMjIgMS4zOSA1MS40OSAxLjM5IDUxLjQ5IDIxLjc4IDY0LjI1IDIxLjc4IDY0LjI1IDI1LjY2IDQ3LjIyIDI1LjY2Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSI2Ny45MyAxLjM5IDcyLjIgMS4zOSA3Mi4yIDI1LjY3IDY3LjkzIDI1LjY3Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNzcuNjcsMS4zOSBMODcuMjQsMS4zOSBDOTIuOTMsMS4zOSA5Ni40Nyw0LjYyIDk2LjQ3LDkuNTEgTDk2LjQ3LDkuNTggQzk2LjQ3LDE1LjAzIDkyLjEsMTcuODcgODYuNzYsMTcuODcgTDgxLjk0LDE3Ljg3IEw4MS45NCwyNS42NyBMNzcuNjcsMjUuNjcgTDc3LjY3LDEuMzkgWiBNODYuOSwxNC4wMiBDOTAuMTMsMTQuMDIgOTIuMTQsMTIuMjIgOTIuMTQsOS42OCBMOTIuMTQsOS42MSBDOTIuMTQsNi43NyA5MC4wOSw1LjI4IDg2LjksNS4yOCBMODEuOTQsNS4yOCBMODEuOTQsMTQuMDIgTDg2LjksMTQuMDIgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNOTguMjEsMjIuMTMgTDEwMC43OCwxOS4wOCBDMTAzLjEsMjEuMDkgMTA1LjQ2LDIyLjI0IDEwOC40NSwyMi4yNCBDMTExLjA5LDIyLjI0IDExMi43NSwyMC45OSAxMTIuNzUsMTkuMTkgTDExMi43NSwxOS4xMiBDMTEyLjc1LDE3LjM5IDExMS43OCwxNi40NSAxMDcuMjcsMTUuNDEgQzEwMi4xLDE0LjE2IDk5LjE5LDEyLjY0IDk5LjE5LDguMTYgTDk5LjE5LDguMDkgQzk5LjE5LDMuOTMgMTAyLjY2LDEuMDUgMTA3LjQ4LDEuMDUgQzExMS4wMiwxLjA1IDExMy44MywyLjEzIDExNi4yOSw0LjEgTDExNCw3LjMzIEMxMTEuODEsNS43IDEwOS42Myw0LjgzIDEwNy40MSw0LjgzIEMxMDQuOTEsNC44MyAxMDMuNDYsNi4xMSAxMDMuNDYsNy43MSBMMTAzLjQ2LDcuNzggQzEwMy40Niw5LjY1IDEwNC41NywxMC40OSAxMDkuMjUsMTEuNiBDMTE0LjM4LDEyLjg1IDExNy4wMiwxNC42OSAxMTcuMDIsMTguNzEgTDExNy4wMiwxOC43OCBDMTE3LjAyLDIzLjMyIDExMy40NSwyNi4wMyAxMDguMzUsMjYuMDMgQzEwNC42MiwyNi4wMiAxMDEuMTIsMjQuNzMgOTguMjEsMjIuMTMgWiIgaWQ9IlBhdGgiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJQYXRoIiBwb2ludHM9IjEyMC45OSAxLjM5IDEzOC45OSAxLjM5IDEzOC45OSA1LjIxIDEyNS4yNiA1LjIxIDEyNS4yNiAxMS41MiAxMzcuNDMgMTEuNTIgMTM3LjQzIDE1LjMzIDEyNS4yNiAxNS4zMyAxMjUuMjYgMjEuODUgMTM5LjE3IDIxLjg1IDEzOS4xNyAyNS42NyAxMjEgMjUuNjcgMTIxIDEuMzkiPjwvcG9seWdvbj4KICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8cGF0aCBkPSJNMjEuNjYsMzkuOTkgQzQxLjI2LDkuNDIgODAuNSwtMS4yNSAxMTMuMjMsMTMuNDQgQzExMi41MSwxMi45NCAxMTEuNzgsMTIuNDMgMTExLjAzLDExLjk1IEM3Ny41MiwtOS41NCAzMi45OCwwLjExIDExLjU2LDMzLjUyIEMtOS44Nyw2Ni45MiAtMC4wNiwxMTEuNDMgMzMuNDUsMTMyLjkyIEMzNC4yLDEzMy40IDM0Ljk2LDEzMy44NSAzNS43MiwxMzQuMyBDOC43MywxMTAuNjggMi4wNiw3MC41NiAyMS42NiwzOS45OSIgaWQ9IlBhdGgiIGZpbGw9IiNGNzhEMkMiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==" alt="Eclipse Incubator Logo"/></a><style data-emotion-css="1uno72p">.css-1uno72p{font-size:0.9rem;}</style><style data-emotion-css="2r9mng">.css-2r9mng{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:16px;font-size:0.9rem;}</style><h6 class="css-2r9mng">OpenJ9 is an Eclipse Incubator Project</h6></section><style data-emotion-css="1hrevlp">.css-1hrevlp{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:100%;-ms-flex:100%;flex:100%;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}@media screen and (min-width:35rem){.css-1hrevlp{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:50%;-ms-flex:50%;flex:50%;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}@media screen and (min-width:62.5rem){.css-1hrevlp{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:50%;-ms-flex:50%;flex:50%;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}@media screen and (min-width:85rem){.css-1hrevlp{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:50%;-ms-flex:50%;flex:50%;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}.css-1hrevlp a{color:white;-webkit-text-decoration:none;text-decoration:none;}.css-1hrevlp a:hover{color:var(--theme-ui-colors-links,#5DA7A3);}</style><nav class="css-1hrevlp"><style data-emotion-css="1vm4d63">.css-1vm4d63{-webkit-flex:1;-ms-flex:1;flex:1;padding-left:2rem;margin-right:1.1rem;padding:1rem;font-size:1rem;}@media screen and (min-width:35rem){.css-1vm4d63{padding-left:0.8rem;padding:0;font-size:0.9rem;}}@media screen and (min-width:62.5rem){.css-1vm4d63{padding-left:0.8rem;font-size:1rem;}}@media screen and (min-width:85rem){.css-1vm4d63{padding-left:0.8rem;font-size:1rem;}}</style><section class="css-1vm4d63"><style data-emotion-css="1p7eyhh">.css-1p7eyhh{margin-bottom:0.2rem;}</style><style data-emotion-css="shyl6e">.css-shyl6e{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:20px;margin-bottom:0.2rem;}</style><h4 class="css-shyl6e">Docs</h4><style data-emotion-css="1l04qsy">.css-1l04qsy{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;list-style:none;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}.css-1l04qsy li{padding:0;}.css-1l04qsy li:first-of-type{margin-left:0;}.css-1l04qsy li:last-child{margin-right:0;padding-right:0;}</style><ul class="css-1l04qsy"><li><style data-emotion-css="14i0930">.css-14i0930{-webkit-text-decoration:none;text-decoration:none;color:white;}</style><a href="https://www.eclipse.org/openj9/docs/openj9_newuser/" rel="noopener noreferrer" target="_blank" class="css-14i0930">New to OpenJ9?</a></li><li><a href="https://www.eclipse.org/openj9/docs/introduction/" rel="noopener noreferrer" target="_blank" class="css-14i0930">Getting started</a></li><li><a href="https://www.eclipse.org/openj9/docs/cmdline_specifying/" rel="noopener noreferrer" target="_blank" class="css-14i0930">Command-line options</a></li></ul></section><style data-emotion-css="4nlx3l">.css-4nlx3l{-webkit-flex:1;-ms-flex:1;flex:1;padding-left:2rem;padding:1rem;font-size:1rem;}@media screen and (min-width:35rem){.css-4nlx3l{padding-left:0.8rem;padding:0;font-size:0.9rem;}}@media screen and (min-width:62.5rem){.css-4nlx3l{padding-left:0;font-size:1rem;}}@media screen and (min-width:85rem){.css-4nlx3l{padding-left:0;font-size:1rem;}}</style><section class="css-4nlx3l"><h4 class="css-shyl6e">Resources</h4><ul class="css-1l04qsy"><li><a class="css-14i0930" href="/openj9/about">About</a></li><li><a class="css-14i0930" href="/openj9/performance">Performance</a></li></ul></section><style data-emotion-css="1v1ksah">.css-1v1ksah{-webkit-flex:1;-ms-flex:1;flex:1;padding-left:2rem;padding:1rem;font-size:1rem;margin-left:0;}@media screen and (min-width:35rem){.css-1v1ksah{padding-left:0;padding:0;font-size:0.9rem;margin-left:1rem;}}@media screen and (min-width:62.5rem){.css-1v1ksah{padding-left:0;font-size:1rem;}}@media screen and (min-width:85rem){.css-1v1ksah{padding-left:0;font-size:1rem;}}</style><section class="css-1v1ksah"><h4 class="css-shyl6e">Community</h4><ul class="css-1l04qsy"><li><a class="css-14i0930" href="/openj9/news">News</a></li><li><a href="https://blog.openj9.org/" rel="noopener noreferrer" target="_blank" class="css-14i0930">Blogs</a></li></ul></section></nav><style data-emotion-css="1qgmx7a">.css-1qgmx7a{-webkit-flex:25%;-ms-flex:25%;flex:25%;display:none;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}@media screen and (min-width:35rem){.css-1qgmx7a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;}}@media screen and (min-width:62.5rem){.css-1qgmx7a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;}}@media screen and (min-width:85rem){.css-1qgmx7a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:flex-end;-webkit-box-align:flex-end;-ms-flex-align:flex-end;align-items:flex-end;}}</style><section class="css-1qgmx7a"><style data-emotion-css="10op7gg">.css-10op7gg{font-size:0.9rem;margin-top:1.3rem;margin-left:0.6rem;}</style><style data-emotion-css="z87sw5">.css-z87sw5{font-family:'Helvetica Neue',Helvetica,Arial,'Lucida Grande';line-height:1.125;font-weight:700;margin-top:16px;margin-bottom:16px;font-size:16px;font-size:0.9rem;margin-top:1.3rem;margin-left:0.6rem;}</style><h6 class="css-z87sw5">OpenJ9 is an Eclipse Incubator Project</h6><a href="https://wiki.eclipse.org/Development_Resources/Process_Guidelines/What_is_Incubation" rel="noopener noreferrer" target="_blank"><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNTBweCIgaGVpZ2h0PSI3NXB4IiB2aWV3Qm94PSIwIDAgMTU3IDIzMSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDwhLS0gR2VuZXJhdG9yOiBTa2V0Y2ggNjEuMiAoODk2NTMpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPmVjbGlwc2VfaW5jdWJhdGlvbl92ZXJ0aWNhbF9zdmc8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iZWNsaXBzZV9pbmN1YmF0aW9uX3ZlcnRpY2FsX3N2ZyIgZmlsbC1ydWxlPSJub256ZXJvIj4KICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNy4wMDAwMDAsIDIxNC4wMDAwMDApIiBmaWxsPSIjRkZGRkZGIj4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJQYXRoIiBwb2ludHM9IjAuNzUgMC4zNCAxLjkyIDAuMzQgMS45MiAxNi4wMyAwLjc1IDE2LjAzIj48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSI1LjYyIDAuMzQgNi43MiAwLjM0IDE3LjU1IDEzLjk5IDE3LjU1IDAuMzQgMTguNjcgMC4zNCAxOC42NyAxNi4wMyAxNy44IDE2LjAzIDYuNzUgMi4wOSA2Ljc1IDE2LjAzIDUuNjMgMTYuMDMgNS42MyAwLjM0Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMjEuODYsOC4yMyBMMjEuODYsOC4xOSBDMjEuODYsMy43NSAyNS4xOCwwLjA4IDI5LjcxLDAuMDggQzMyLjUxLDAuMDggMzQuMTksMS4xMSAzNS44MSwyLjU5IEwzNC45OCwzLjQ0IEMzMy42MSwyLjEyIDMyLjA0LDEuMTMgMjkuNjksMS4xMyBDMjUuOTIsMS4xMyAyMy4wOCw0LjIgMjMuMDgsOC4xNSBMMjMuMDgsOC4xOSBDMjMuMDgsMTIuMTYgMjUuOTcsMTUuMjUgMjkuNzEsMTUuMjUgQzMxLjk3LDE1LjI1IDMzLjUyLDE0LjM3IDM1LjExLDEyLjgxIEwzNS44OSwxMy41NyBDMzQuMjMsMTUuMjEgMzIuNDQsMTYuMyAyOS42NiwxNi4zIEMyNS4xOCwxNi4zIDIxLjg2LDEyLjc0IDIxLjg2LDguMjMgWiIgaWQ9IlBhdGgiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0zOC40LDkuNTEgTDM4LjQsMC4zNCBMMzkuNTcsMC4zNCBMMzkuNTcsOS40IEMzOS41NywxMy4xIDQxLjU3LDE1LjIzIDQ0Ljg4LDE1LjIzIEM0OC4wNiwxNS4yMyA1MC4xLDEzLjMgNTAuMSw5LjUxIEw1MC4xLDAuMzQgTDUxLjI3LDAuMzQgTDUxLjI3LDkuMzcgQzUxLjI3LDEzLjg4IDQ4LjY1LDE2LjI3MDAzMTQgNDQuODQsMTYuMjcwMDMxNCBDNDEuMDcsMTYuMjggMzguNCwxMy45IDM4LjQsOS41MSBaIiBpZD0iUGF0aCI+PC9wYXRoPgogICAgICAgICAgICAgICAgPHBhdGggZD0iTTU0LjAyLDAuMzQgTDYwLjUsMC4zNCBDNjIuMjcsMC4zNCA2My43MSwwLjg2IDY0LjU4LDEuNzMgQzY1LjIzLDIuMzggNjUuNTksMy4yMSA2NS41OSw0LjIgTDY1LjU5LDQuMjQgQzY1LjU5LDYuMzcgNjQuMiw3LjQ1IDYyLjkyLDcuOTYgQzY0LjgsOC40NSA2Ni40Niw5LjUzIDY2LjQ2LDExLjcgTDY2LjQ2LDExLjc0IEM2Ni40NiwxNC4zNiA2NC4yMiwxNi4wMiA2MC44MywxNi4wMiBMNTQuMDIsMTYuMDIgTDU0LjAyLDAuMzQgTDU0LjAyLDAuMzQgWiBNNjQuNCw0LjMxIEM2NC40LDIuNTggNjIuOTksMS40MiA2MC40OCwxLjQyIEw1NS4xOSwxLjQyIEw1NS4xOSw3LjU4IEw2MC4zNyw3LjU4IEM2Mi43Miw3LjU4IDY0LjQsNi40NCA2NC40LDQuMzUgTDY0LjQsNC4zMSBaIE02MC41LDguNjYgTDU1LjE5LDguNjYgTDU1LjE5LDE0Ljk2IEw2MC44OCwxNC45NiBDNjMuNTcsMTQuOTYgNjUuMjcwMDQ0NCwxMy43MyA2NS4yNzAwNDQ0LDExLjc1IEw2NS4yNzAwNDQ0LDExLjcxIEM2NS4yOCw5Ljc4IDYzLjYsOC42NiA2MC41LDguNjYgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNzYuMjgsMC4yMyBMNzcuNCwwLjIzIEw4NC43MSwxNi4wMyBMODMuNDMsMTYuMDMgTDgxLjQ0LDExLjY0IEw3Mi4xOCwxMS42NCBMNzAuMTksMTYuMDMgTDY4Ljk4LDE2LjAzIEw3Ni4yOCwwLjIzIFogTTgwLjk0LDEwLjU5IEw3Ni44MiwxLjUxIEw3Mi42NywxMC41OSBMODAuOTQsMTAuNTkgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSI5MS4wNSAxLjQyIDg1LjU4IDEuNDIgODUuNTggMC4zNCA5Ny42OCAwLjM0IDk3LjY4IDEuNDIgOTIuMjEgMS40MiA5Mi4yMSAxNi4wMyA5MS4wNCAxNi4wMyA5MS4wNCAxLjQyIj48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSIxMDEuMjkgMC4zNCAxMDIuNDYgMC4zNCAxMDIuNDYgMTYuMDMgMTAxLjI5IDE2LjAzIj48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTA1LjkxLDguMjMgTDEwNS45MSw4LjE5IEMxMDUuOTEsMy45MSAxMDkuMDcsMC4wOCAxMTMuODIsMC4wOCBDMTE4LjU3LDAuMDggMTIxLjY5LDMuODcgMTIxLjY5LDguMTUgTDEyMS42OSw4LjE5IEMxMjEuNjksMTIuNDcgMTE4LjUzLDE2LjMgMTEzLjc4LDE2LjMgQzEwOS4wMywxNi4zIDEwNS45MSwxMi41MSAxMDUuOTEsOC4yMyBaIE0xMjAuNDgsOC4yMyBMMTIwLjQ4LDguMTkgQzEyMC40OCw0LjMxIDExNy42NiwxLjEzIDExMy43OCwxLjEzIEMxMDkuOSwxLjEzIDEwNy4xMiw0LjI3IDEwNy4xMiw4LjE1IEwxMDcuMTIsOC4xOSBDMTA3LjEyLDEyLjA3IDEwOS45NCwxNS4yNSAxMTMuODIsMTUuMjUgQzExNy43LDE1LjI1IDEyMC40OCwxMi4xMSAxMjAuNDgsOC4yMyBaIiBpZD0iU2hhcGUiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJQYXRoIiBwb2ludHM9IjEyNC44OSAwLjM0IDEyNS45OSAwLjM0IDEzNi44MiAxMy45OSAxMzYuODIgMC4zNCAxMzcuOTQgMC4zNCAxMzcuOTQgMTYuMDMgMTM3LjA3IDE2LjAzIDEyNi4wMiAyLjA5IDEyNi4wMiAxNi4wMyAxMjQuOSAxNi4wMyAxMjQuOSAwLjM0Ij48L3BvbHlnb24+CiAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgPHBhdGggZD0iTTU2LjY2LDE2Ni4yMyBDNTcuNTEsMTYzLjQ4IDYwLjQzLDE2MS40MyA2My45NCwxNjEuNDMgQzY1LjE0LDE2MS40MyA2Ni4yNSwxNjEuNjkgNjcuMjUsMTYyLjExIEM2OS40NiwxNjAuNjQgNzIuMTksMTU5Ljc2IDc1LjE3LDE1OS43NiBMNzUuMTksMTU5Ljc2IEM3Ni4xMSwxNTcuOSA3OC40OCwxNTYuNTcgODEuMywxNTYuNTcgQzgyLjA0LDE1Ni41NyA4Mi43NSwxNTYuNjcgODMuNDIsMTU2Ljg0IEM4My4zMywxNTQuNTYgODMuNjksMTUyLjE4IDg0LjU1LDE0OS42OCBDODUuNTUsMTQ2Ljc5IDg3LDE0NC4wMyA4OC41MiwxNDEuMjggQzg4LjE3LDEzNy4xNiA4Ny45LDEzMy41IDgyLjc0LDEzMiBDODAuODIsMTMxLjQ0IDc4LjgyLDEzMS4yNyA3Ni44NiwxMzEuMDQgTDc2Ljg1LDEzMS4wNCBMNzYuODUsMTMxLjAzIEM3Ni4wMSwxMzAuOTMgNzUuMTcsMTMwLjgxIDc0LjM1LDEzMC42NSBDNjAuMTgsMTQ1LjQxIDQwLjIsMTA5Ljk3IDQwLjIsMTA5Ljk3IEM4NC4zLDEwMy4xMyA3Ni4wMSwxMjUuNjEgNzYuMDEsMTI1LjYxIEM3Mi44MSwxMjQuMDUgNzEuOTMsMTIyLjA4IDY5LjQ5LDExOS43MyBDNjMuOTIsMTE0LjM4IDUwLjYyLDExMy40NCA1MC42MiwxMTMuNDQgQzY2LjU0LDExNy41MSA2OC43MSwxMjUuMjIgNzQuOTcsMTI3LjY5IEM3Ni4zOSwxMjguMDEgNzcuOSwxMjguMTMgNzkuMzUsMTI4LjI5IEM4Mi4xNSwxMjguNTkgODQuODksMTI5LjExIDg3LjIyLDEzMC42MSBDODkuNjMsMTMyLjE2IDkwLjcxLDEzNC4wOSA5MS4yNiwxMzYuMjYgQzkzLDEzMi45NCA5NC41LDEyOS41NiA5NS4wNywxMjUuOTIgQzk1LjgsMTIxLjI3IDk1LjEzLDExNS44OCA5MS44MywxMTIuMDcgQzg4Ljc4LDEwOC41NSA4NC42NiwxMDUuODkgODEuNCwxMDIuNTIgQzc3LjkyLDk4LjkxIDc1LjYxLDk0LjQ2IDc1LjUyLDg5LjcxIEM3My43Niw4NS44NiA3MC45LDgxLjM5IDY4LjI4LDc5LjY1IEM1Ni45LDkwLjM0IDQxLjksNjIuNTggNDEuOSw2Mi41OCBDNzYuODgsNTcuNyA3MS4xLDc1LjY3IDcxLjEsNzUuNjcgQzYyLjcsNjYuMjggNTIuMzEsNjcuMTIgNTIuMzEsNjcuMTIgQzYwLjcxLDY5Ljc5IDY3LjM0LDc1LjE1IDcxLjIsNzguODMgTDcxLjczLDc5LjM2IEM3My4zLDgxIDc0LjksODIuNzUgNzYuMjQsODQuNjMgQzc3LjYsNzkuNDggODAuNzcsNzIuMjcgODMuMjYsNjcuOTcgQzgzLjI2LDY3Ljk3IDkxLjY2LDUzLjE1IDEwNS44LDQzLjkgQzEwNS44LDQzLjkgOTUuMDIsNDUuMTQgODMuNDEsNjIuODkgQzgzLjQxLDYyLjg5IDY3Ljk5LDM4LjcgMTE3LjgzLDM0LjIzIEMxMTcuODMsMzQuMjMgMTE0LjQsNzguMTcgODcuNDUsNjkuNjMgQzgyLjc3LDc2LjY3IDc5LjcsODQuNzQgODAuMzMsOTAuNDIgQzgwLjk1LDk1Ljk2IDg0LjgzLDk5Ljg2IDg5LjExLDEwMy41IEM5MC4yNSw5Ny42NiA5NC40Niw5Mi42MyAxMDAuNjUsODkuODkgQzEwNS42LDg3LjkyIDExMi45LDg2LjAzIDExOS43Miw4NS42MiBDMTE5LjcyLDg1LjYyIDEwNi4zOSw4Mi41OCA5Ni4yNSw4OS41MSBDOTYuMjUsODkuNTEgOTYuNDIsNjkuMjIgMTMyLjM0LDgzLjk1IEMxMzIuMzQsODMuOTUgMTA2LjM0LDExMC4yOSA5Ny45OSw5NC41OSBDOTQuMDMsOTcuMiA5MS41MywxMDEuNTggOTIuMTgsMTA2LjExIEM5NC41LDEwOC4xNCA5Ni42NiwxMTAuMzMgOTcuOTcsMTEzLjAzIEM5OS44LDExNi44MiAxMDAuNDUsMTIxLjI0IDk5Ljk1LDEyNS4zNSBDOTguOTksMTMzLjI1IDk0LjA1LDEzOS45NyA5MC42NywxNDcuMTQgQzg5LjI5LDE1MC4wNiA4Ny45NywxNTMuMjcgODcuOTUsMTU2LjUxIEM4OS42NCwxNTYuMDQgOTEuNDcsMTU1Ljc4IDkzLjM5LDE1NS43OCBDMTAwLjYyLDE1NS43OCAxMDYuNzEsMTU5LjM3IDEwOC42OCwxNjQuMyBDMTExLjYxLDE2NC42MSAxMTMuOTIsMTY2LjMzIDExNC4zNCwxNjguNTEgQzExNi40NSwxNjkuODEgMTE4LjEyLDE3MS42MyAxMTkuMTMsMTczLjc1IEw1MC41NSwxNzMuNzUgQzUyLjAyLDE3MC42MiA1NC4xNCwxNjcuMTYgNTYuNjYsMTY2LjIzIiBpZD0iUGF0aCIgZmlsbD0iI0Y3OEQyQyI+PC9wYXRoPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE3LjAwMDAwMCwgMTgyLjAwMDAwMCkiIGZpbGw9IiNGRkZGRkYiPgogICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IlBhdGgiIHBvaW50cz0iMC41NCAxLjM5IDE4LjU0IDEuMzkgMTguNTQgNS4yMSA0LjggNS4yMSA0LjggMTEuNTIgMTYuOTcgMTEuNTIgMTYuOTcgMTUuMzMgNC44IDE1LjMzIDQuOCAyMS44NSAxOC43MSAyMS44NSAxOC43MSAyNS42NyAwLjU0IDI1LjY3Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMjEuNTUsMTMuNiBMMjEuNTUsMTMuNTMgQzIxLjU1LDYuNjMgMjYuNzIsMC45NyAzNC4wNywwLjk3IEMzOC41NCwwLjk3IDQxLjI1LDIuNTMgNDMuNTcsNC43NSBMNDAuODMsNy45MSBDMzguODksNi4xMSAzNi44MSw0Ljg5IDM0LjAzLDQuODkgQzI5LjQyLDQuODkgMjYuMDIsOC43MSAyNi4wMiwxMy40NiBMMjYuMDIsMTMuNTMgQzI2LjAyLDE4LjI4IDI5LjM4LDIyLjEzIDM0LjAzLDIyLjEzIEMzNy4wMSwyMi4xMyAzOC45MiwyMC45NSA0MSwxOS4wMSBMNDMuNzQsMjEuNzggQzQxLjIxLDI0LjQyIDM4LjQzLDI2LjA4MDAxMzYgMzMuODksMjYuMDgwMDEzNiBDMjYuODMsMjYuMDkgMjEuNTUsMjAuNTcgMjEuNTUsMTMuNiBaIiBpZD0iUGF0aCI+PC9wYXRoPgogICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IlBhdGgiIHBvaW50cz0iNDcuMjIgMS4zOSA1MS40OSAxLjM5IDUxLjQ5IDIxLjc4IDY0LjI1IDIxLjc4IDY0LjI1IDI1LjY2IDQ3LjIyIDI1LjY2Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgcG9pbnRzPSI2Ny45MyAxLjM5IDcyLjIgMS4zOSA3Mi4yIDI1LjY3IDY3LjkzIDI1LjY3Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNzcuNjcsMS4zOSBMODcuMjQsMS4zOSBDOTIuOTMsMS4zOSA5Ni40Nyw0LjYyIDk2LjQ3LDkuNTEgTDk2LjQ3LDkuNTggQzk2LjQ3LDE1LjAzIDkyLjEsMTcuODcgODYuNzYsMTcuODcgTDgxLjk0LDE3Ljg3IEw4MS45NCwyNS42NyBMNzcuNjcsMjUuNjcgTDc3LjY3LDEuMzkgWiBNODYuOSwxNC4wMiBDOTAuMTMsMTQuMDIgOTIuMTQsMTIuMjIgOTIuMTQsOS42OCBMOTIuMTQsOS42MSBDOTIuMTQsNi43NyA5MC4wOSw1LjI4IDg2LjksNS4yOCBMODEuOTQsNS4yOCBMODEuOTQsMTQuMDIgTDg2LjksMTQuMDIgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNOTguMjEsMjIuMTMgTDEwMC43OCwxOS4wOCBDMTAzLjEsMjEuMDkgMTA1LjQ2LDIyLjI0IDEwOC40NSwyMi4yNCBDMTExLjA5LDIyLjI0IDExMi43NSwyMC45OSAxMTIuNzUsMTkuMTkgTDExMi43NSwxOS4xMiBDMTEyLjc1LDE3LjM5IDExMS43OCwxNi40NSAxMDcuMjcsMTUuNDEgQzEwMi4xLDE0LjE2IDk5LjE5LDEyLjY0IDk5LjE5LDguMTYgTDk5LjE5LDguMDkgQzk5LjE5LDMuOTMgMTAyLjY2LDEuMDUgMTA3LjQ4LDEuMDUgQzExMS4wMiwxLjA1IDExMy44MywyLjEzIDExNi4yOSw0LjEgTDExNCw3LjMzIEMxMTEuODEsNS43IDEwOS42Myw0LjgzIDEwNy40MSw0LjgzIEMxMDQuOTEsNC44MyAxMDMuNDYsNi4xMSAxMDMuNDYsNy43MSBMMTAzLjQ2LDcuNzggQzEwMy40Niw5LjY1IDEwNC41NywxMC40OSAxMDkuMjUsMTEuNiBDMTE0LjM4LDEyLjg1IDExNy4wMiwxNC42OSAxMTcuMDIsMTguNzEgTDExNy4wMiwxOC43OCBDMTE3LjAyLDIzLjMyIDExMy40NSwyNi4wMyAxMDguMzUsMjYuMDMgQzEwNC42MiwyNi4wMiAxMDEuMTIsMjQuNzMgOTguMjEsMjIuMTMgWiIgaWQ9IlBhdGgiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSJQYXRoIiBwb2ludHM9IjEyMC45OSAxLjM5IDEzOC45OSAxLjM5IDEzOC45OSA1LjIxIDEyNS4yNiA1LjIxIDEyNS4yNiAxMS41MiAxMzcuNDMgMTEuNTIgMTM3LjQzIDE1LjMzIDEyNS4yNiAxNS4zMyAxMjUuMjYgMjEuODUgMTM5LjE3IDIxLjg1IDEzOS4xNyAyNS42NyAxMjEgMjUuNjcgMTIxIDEuMzkiPjwvcG9seWdvbj4KICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8cGF0aCBkPSJNMjEuNjYsMzkuOTkgQzQxLjI2LDkuNDIgODAuNSwtMS4yNSAxMTMuMjMsMTMuNDQgQzExMi41MSwxMi45NCAxMTEuNzgsMTIuNDMgMTExLjAzLDExLjk1IEM3Ny41MiwtOS41NCAzMi45OCwwLjExIDExLjU2LDMzLjUyIEMtOS44Nyw2Ni45MiAtMC4wNiwxMTEuNDMgMzMuNDUsMTMyLjkyIEMzNC4yLDEzMy40IDM0Ljk2LDEzMy44NSAzNS43MiwxMzQuMyBDOC43MywxMTAuNjggMi4wNiw3MC41NiAyMS42NiwzOS45OSIgaWQ9IlBhdGgiIGZpbGw9IiNGNzhEMkMiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==" alt="Eclipse Incubator Logo"/></a></section><style data-emotion-css="7f8z6s">.css-7f8z6s{height:0.15rem;background-color:var(--theme-ui-colors-secondary,#5DA7A3);width:100%;margin-top:16px;margin-bottom:16px;}</style><div class="css-7f8z6s"></div><style data-emotion-css="6gs9hh">.css-6gs9hh{width:70%;}</style><nav class="css-6gs9hh"><style data-emotion-css="1dz3xom">.css-1dz3xom{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}@media screen and (min-width:35rem){.css-1dz3xom{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}@media screen and (min-width:62.5rem){.css-1dz3xom{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}@media screen and (min-width:85rem){.css-1dz3xom{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}.css-1dz3xom li{padding:0.4rem;font-size:0.9rem;list-style-type:none;padding-left:1rem;color:white;}@media screen and (min-width:35rem){.css-1dz3xom li{font-size:0.7rem;}}@media screen and (min-width:62.5rem){.css-1dz3xom li{font-size:1rem;}}@media screen and (min-width:85rem){.css-1dz3xom li{font-size:1rem;}}.css-1dz3xom a{color:white;-webkit-text-decoration:none;text-decoration:none;}.css-1dz3xom a:hover{color:var(--theme-ui-colors-links,#5DA7A3);}</style><ul class="css-1dz3xom"><style data-emotion-css="1ga24ma">.css-1ga24ma{padding-left:1rem;}@media screen and (min-width:35rem){.css-1ga24ma{padding-left:0rem !important;}}@media screen and (min-width:62.5rem){.css-1ga24ma{padding-left:0.5rem !important;}}@media screen and (min-width:85rem){.css-1ga24ma{padding-left:0.5 !important;}}</style><li class="css-1ga24ma"><a href="https://www.eclipse.org/" rel="noopener noreferrer" target="_blank" class="css-14i0930">Eclipse Foundation Website </a></li><li><a href="https://www.eclipse.org/legal/privacy.php" rel="noopener noreferrer" target="_blank" class="css-14i0930">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" rel="noopener noreferrer" target="_blank" class="css-14i0930">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" rel="noopener noreferrer" target="_blank" class="css-14i0930">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal/" rel="noopener noreferrer" target="_blank" class="css-14i0930">Legal</a></li></ul></nav><style data-emotion-css="1g96o9k">.css-1g96o9k{display:inline;-webkit-flex:30%;-ms-flex:30%;flex:30%;}@media screen and (min-width:35rem){.css-1g96o9k{display:inline;}}@media screen and (min-width:62.5rem){.css-1g96o9k{display:block;}}@media screen and (min-width:85rem){.css-1g96o9k{display:block;}}</style><nav class="css-1g96o9k"><style data-emotion-css="gwenrj">.css-gwenrj{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;list-style:none;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}.css-gwenrj li{padding:8px;margin-left:8px;margin-right:8px;}.css-gwenrj li a{color:white;-webkit-text-decoration:none;text-decoration:none;}.css-gwenrj li a:hover{color:var(--theme-ui-colors-links,#5DA7A3);}.css-gwenrj li:first-of-type{margin-left:0;}.css-gwenrj li:last-child{margin-right:0;padding-right:0;}@media screen and (min-width:35rem){.css-gwenrj{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;}}@media screen and (min-width:62.5rem){.css-gwenrj{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;}}@media screen and (min-width:85rem){.css-gwenrj{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;}}</style><ul class="css-gwenrj"><li><a href="https://twitter.com/openj9/" rel="noopener noreferrer" target="_blank"> <img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjVweCIgaGVpZ2h0PSIyNXB4IiB2aWV3Qm94PSIwIDAgMjUgMjUiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5Ud2l0dGVyPC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IlR3aXR0ZXIiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgIDxnIGlkPSJ0d2l0dGVyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwMDAwMCwgMC4yOTg4NzkpIj4KICAgICAgICAgICAgICAgIDxlbGxpcHNlIGlkPSJPdmFsLXBhdGgiIGZpbGw9IiM0MzQzNDMiIGN4PSIxMi41MDAyMjEyIiBjeT0iMTIuMjcyNzI3MyIgcng9IjEyLjUiIHJ5PSIxMi4yNzI3MjczIj48L2VsbGlwc2U+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTIuNTAwMjIxMiwwIEMxOS40MDM3ODA2LDAgMjUuMDAwMjIxMiw1LjQ5NDY4NzE2IDI1LjAwMDIyMTIsMTIuMjcyNzI3MyBDMjUuMDAwMjIxMiwxOS4wNTA3Njc0IDE5LjQwMzc4MDYsMjQuNTQ1NDU0NSAxMi41MDAyMjEyLDI0LjU0NTQ1NDUgQzUuNTk2NjYxODcsMjQuNTQ1NDU0NSAwLjAwMDIyMTIzODkzOCwxOS4wNTA3Njc0IDAuMDAwMjIxMjM4OTM4LDEyLjI3MjcyNzMgQzAuMDAwMjIxMjM4OTM4LDUuNDk0Njg3MTYgNS41OTY2NjE4NywwIDEyLjUwMDIyMTIsMCBaIE0xNS4xMDM0MzMzLDYuODE4MTgxODIgQzEzLjQ2NTM4MDIsNi44MTgxODE4MiAxMi4xMzY4NDA0LDguMDkyMTI0MTEgMTIuMTM2ODQwNCw5LjY2Mjg1OTk2IEMxMi4xMzY4NDA0LDkuODg1ODI2MzggMTIuMTYzMTY3OCwxMC4xMDI4NTI3IDEyLjIxNDA1MjgsMTAuMzExMTgxIEM5Ljc0ODU2NjA0LDEwLjE5MjU5MDggNy41NjI1MDQxLDkuMDYwMTUwNTQgNi4wOTkyMjk3Niw3LjMzODU3ODIzIEM1Ljg0MzkyMDAzLDcuNzU4NjI5MTUgNS42OTc0NTk4NSw4LjI0NzYyNzgxIDUuNjk3NDU5ODUsOC43Njg4NzI4MSBDNS42OTc0NTk4NSw5Ljc1NTU2ODE3IDYuMjIxNTc0ODksMTAuNjI2NjQzNCA3LjAxNzE1MDExLDExLjEzNjY0NDcgQzYuNTMxMDg4MTcsMTEuMTIyMDA2NSA2LjA3MzM0NDgsMTAuOTk0MDgxOSA1LjY3MzU2NjA0LDEwLjc4MDQ1IEw1LjY3MzM0NDgsMTAuODE2NTE0OSBMNS42NzMzNDQ4LDEwLjgxNjUxNDkgQzUuNjczMzQ0OCwxMi4xOTQ4MzM1IDYuNjk2MzUzNjUsMTMuMzQ0NDU3NyA4LjA1MzIxMjA2LDEzLjYwNTYxMDYgQzcuODA0NTM5NSwxMy42NzA5NTE5IDcuNTQxOTI4ODgsMTMuNzA1NTMxOCA3LjI3MTc5NjEzLDEzLjcwNTUzMTggQzcuMDgwMjAzMjEsMTMuNzA1NTMxOCA2Ljg5NDU4Mzc0LDEzLjY4NzkyMzYgNi43MTM2MTAyOSwxMy42NTQ4Mjg3IEM3LjA5MTA0MzkyLDE0Ljc4NDcyMzIgOC4xODYzOTc5LDE1LjYwNzIxNjkgOS40ODQ4NDkyMywxNS42MzAzNDA5IEM4LjQ2OTM2MjUsMTYuMzkzNDMzNCA3LjE5MDM4MDIsMTYuODQ4MDY0MiA1LjgwMDExNDcyLDE2Ljg0ODA2NDIgQzUuNTYxMTc2NjYsMTYuODQ4MDY0MiA1LjMyNDQ1MSwxNi44MzQ2OTkgNS4wOTI4MTM4MywxNi44MDgxODA2IEM2LjQwNDk4MTk3LDE3LjYxNTYxMTggNy45NjQ3MTY0OSwxOC4wODYzNjU4IDkuNjM5OTM3NzMsMTguMDg2MzY1OCBDMTUuMDk2NTc0OSwxOC4wODYzNjU4IDE4LjA4MDY0NTcsMTMuNzUxNzc5OCAxOC4wODA2NDU3LDkuOTkyMzI0MTQgQzE4LjA4MDY0NTcsOS44NjkwNjY3NyAxOC4wNzc3Njk2LDkuNzQ2MjMzNyAxOC4wNzIwMTc0LDkuNjI0NDYxMzcgQzE4LjY1MjEwNTksOS4yMjM1MDM2OCAxOS4xNTQ5ODIsOC43MjI2MjQ3OCAxOS41NTI1NDgzLDguMTUyMTYxNjkgQzE5LjAyMDY4OTksOC4zNzgzMTAzMiAxOC40NDg1NjYsOC41MzEyNjgyNSAxNy44NDg1NjYsOC41OTk1Nzk1NiBDMTguNDYxMTc2Nyw4LjI0NzYyNzgxIDE4LjkzMTMwOTQsNy42OTA3NDIxMyAxOS4xNTMyMTIxLDcuMDI2MDg1ODEgQzE4LjU3OTk4Miw3LjM1MjE1NTYzIDE3Ljk0NDgwNSw3LjU4ODY5OTQ2IDE3LjI2OTM2MjUsNy43MTYxOTk3NiBDMTYuNzI4MjEyMSw3LjE2MzU1NzAyIDE1Ljk1NzE5NDQsNi44MTgxODE4MiAxNS4xMDM0MzMzLDYuODE4MTgxODIgWiIgaWQ9IkNvbWJpbmVkLVNoYXBlIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==" alt="Twitter Logo"/></a></li><li><a href="https://github.com/eclipse/openj9" rel="noopener noreferrer" target="_blank"> <img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjVweCIgaGVpZ2h0PSIyNXB4IiB2aWV3Qm94PSIwIDAgMjUgMjUiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5HaXRIdWI8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iR2l0SHViIiBmaWxsPSIjRkZGRkZGIiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8ZyBpZD0iZ2l0aHViLWxvZ28iPgogICAgICAgICAgICAgICAgPHBhdGggZD0iTTIzLjMyMzIwOSw2LjM1NjM4NTg4IEMyMi4yMDU0MjQzLDQuNDI4ODY0OTMgMjAuNjg5MjIwNywyLjkwMjg0MzkxIDE4Ljc3NDE5OTMsMS43Nzc5Nzg1OCBDMTYuODU4ODkyOCwwLjY1MzA1NTg3MyAxNC43Njc5NDkxLDAuMDkwNzM3OTUzMyAxMi40OTk4ODYsMC4wOTA3Mzc5NTMzIEMxMC4yMzIxMDc5LDAuMDkwNzM3OTUzMyA4LjE0MDQ4MDEzLDAuNjUzMjI3OTkzIDYuMjI1NTcyNjksMS43Nzc5Nzg1OCBDNC4zMTAzODAyMSwyLjkwMjc4NjU0IDIuNzk0MjMzNjcsNC40Mjg4NjQ5MyAxLjY3NjQ0ODk5LDYuMzU2Mzg1ODggQzAuNTU4ODM1MzMzLDguMjgzODQ5NDUgMCwxMC4zODg2NTQ2IDAsMTIuNjcwNzQzOSBDMCwxNS40MTIwNTEgMC43OTQ2NzE0ODMsMTcuODc3MTA0NSAyLjM4NDQxMzQ5LDIwLjA2NjUzNTUgQzMuOTczOTg0NDksMjIuMjU2MTM4OCA2LjAyNzQ3NDg4LDIzLjc3MTI1ODggOC41NDQ3MTM2NywyNC42MTIwNjc4IEM4LjgzNzcyNzQsMjQuNjY2ODAyMiA5LjA1NDYzNzM3LDI0LjYyODMwNDUgOS4xOTU2NzE2MSwyNC40OTc1NTAzIEM5LjMzNjc2Mjg1LDI0LjM2NjYyMzkgOS40MDcyMjI5NiwyNC4yMDI2NTAzIDkuNDA3MjIyOTYsMjQuMDA2MzE4MSBDOS40MDcyMjI5NiwyMy45NzM1NTc5IDkuNDA0NDI5NjQsMjMuNjc4ODMwMSA5LjM5OTAxNDAxLDIzLjEyMTc5MDUgQzkuMzkzNDI3MzcsMjIuNTY0NzUxIDkuMzkwODA1MDcsMjIuMDc4Nzk3MiA5LjM5MDgwNTA3LDIxLjY2NDE1ODcgTDkuMDE2NDQyOTcsMjEuNzI5MzM1MSBDOC43Nzc3NTY1LDIxLjc3MzM0MDUgOC40NzY2NDc4MywyMS43OTE5ODY5IDguMTEzMTE2OTgsMjEuNzg2NzA4NiBDNy43NDk3NTcxNSwyMS43ODE2MDIzIDcuMzcyNTQ0NzMsMjEuNzQzMjc2OCA2Ljk4MTk5Mjc3LDIxLjY3MjAxODkgQzYuNTkxMjY5NzksMjEuNjAxMzkyMSA2LjIyNzg1Mjk1LDIxLjQzNzU5MDcgNS44OTE0NTcyMiwyMS4xODA5NTg5IEM1LjU1NTIzMjUyLDIwLjkyNDMyNzEgNS4zMTY1NDYwNCwyMC41ODg0MDUxIDUuMTc1NDU0OCwyMC4xNzM3MDkzIEw1LjAxMjcwMTA2LDE5Ljc5Njc2NTIgQzQuOTA0MjE3NTcsMTkuNTQ1ODEzNCA0LjczMzQyNTkxLDE5LjI2NzAzNTUgNC41MDAwOTgwNSwxOC45NjE0NjQxIEM0LjI2Njc3MDE5LDE4LjY1NTYwNTggNC4wMzA4MjAwMywxOC40NDgyNTc5IDMuNzkyMTMzNTUsMTguMzM5MDc2MSBMMy42NzgxNzc0MywxOC4yNTY5NzQ2IEMzLjYwMjI0NDY5LDE4LjIwMjQxMjMgMy41MzE3ODQ1OCwxOC4xMzY2MDQ5IDMuNDY2NjI2MDgsMTguMDYwMjQwOCBDMy40MDE1MjQ1OCwxNy45ODM4NzY2IDMuMzUyNzgzOTcsMTcuOTA3NDU1MSAzLjMyMDIzMzIzLDE3LjgzMDkxODggQzMuMjg3NjI1NDcsMTcuNzU0MzI1MSAzLjMxNDY0NjU4LDE3LjY5MTUwMTEgMy40MDE1ODE1OSwxNy42NDIyMTcyIEMzLjQ4ODUxNjYsMTcuNTkyOTMzNCAzLjY0NTYyNjY4LDE3LjU2OTAwODYgMy44NzM1OTU5MywxNy41NjkwMDg2IEw0LjE5ODk4OTM5LDE3LjYxNzk0ODIgQzQuNDE2MDEzMzcsMTcuNjYxNzI0MiA0LjY4NDQ1NzI3LDE3Ljc5MjQ3ODUgNS4wMDQ2NjMxNCwxOC4wMTEwMTQzIEM1LjMyNDY5Nzk4LDE4LjIyOTM3NzkgNS41ODc3ODMyNywxOC41MTMyNjIxIDUuNzkzOTc2LDE4Ljg2MjU1MjEgQzYuMDQzNjY0NzUsMTkuMzEwNDA5OSA2LjM0NDQ4ODM4LDE5LjY1MTY2NzYgNi42OTczMDE5OSwxOS44ODY0OTc0IEM3LjA0OTgzMDU4LDIwLjEyMTMyNzMgNy40MDUyNjY0OSwyMC4yMzg1NDE0IDcuNzYzMjY3NzEsMjAuMjM4NTQxNCBDOC4xMjEyNjg5MiwyMC4yMzg1NDE0IDguNDMwNDcyNTIsMjAuMjExMjMxNiA4LjY5MDk5MjUxLDIwLjE1Njg5ODkgQzguOTUxMjI3NDcsMjAuMTAyMjc5MyA5LjE5NTM4NjU3LDIwLjAyMDE3NzcgOS40MjMzNTU4MiwxOS45MTEwNTMzIEM5LjUyMTAwODA2LDE5LjE3OTA4MTkgOS43ODY4ODY2NywxOC42MTY3NjM5IDEwLjIyMDc2MzYsMTguMjIzNjk3OSBDOS42MDIzNTY0MiwxOC4xNTgyOTIxIDkuMDQ2MzcxNDIsMTguMDU5NzgxOCA4LjU1MjUyMzU3LDE3LjkyODc5OCBDOC4wNTg5NjA3NSwxNy43OTc2NDIxIDcuNTQ4OTIzMDMsMTcuNTg0Nzg2MyA3LjAyMjc1MjQ2LDE3LjI4OTY1NjkgQzYuNDk2Mjk2ODUsMTYuOTk0OTI5MSA2LjA1OTU2OTU4LDE2LjYyODk0MzQgNS43MTI0NTY2MiwxNi4xOTIzMzA5IEM1LjM2NTI4NjY1LDE1Ljc1NTQ4ODkgNS4wODAzNjc4NSwxNS4xODE5ODMxIDQuODU4MDk5MjYsMTQuNDcyMzMgQzQuNjM1NzE2NjYsMTMuNzYyMzkgNC41MjQ0OTY4NiwxMi45NDM0NDAzIDQuNTI0NDk2ODYsMTIuMDE1MjUxNCBDNC41MjQ0OTY4NiwxMC42OTM2NTIzIDQuOTUzMTg2MjEsOS41NjkwMTY0MiA1LjgxMDM5Mzg5LDguNjQwNzEyNzggQzUuNDA4ODM5NjcsNy42NDcxMTgwNyA1LjQ0Njc0OTAzLDYuNTMzMjY4NDYgNS45MjQyMzYsNS4yOTkyNzg2OCBDNi4yMzg5MTIyMiw1LjIwMDg4MzA4IDYuNzA1NTY3OTQsNS4yNzQ3MjI4MSA3LjMyMzk3NTE0LDUuNTIwMzM4ODcgQzcuOTQyNDk2MzQsNS43NjYwNjk2OCA4LjM5NTM1NjQ3LDUuOTc2NTczMTQgOC42ODMwMTE1OSw2LjE1MTEwMzQxIEM4Ljk3MDY2NjcsNi4zMjU1NzYzIDkuMjAxMTQ0MjQsNi40NzM0Mjc4NyA5LjM3NDc4NjIzLDYuNTkzMzM4NTQgQzEwLjM4NDA4NzQsNi4zMDk1MTE3MSAxMS40MjU2NTQzLDYuMTY3NTY5NjEgMTIuNDk5NzcyLDYuMTY3NTY5NjEgQzEzLjU3Mzg4OTYsNi4xNjc1Njk2MSAxNC42MTU2ODQ2LDYuMzA5NTExNzEgMTUuNjI1MDQyOCw2LjU5MzMzODU0IEwxNi4yNDM1MDcsNi4yMDAzODcyNiBDMTYuNjY2NDM4Niw1LjkzODE5MDI1IDE3LjE2NTg3MzEsNS42OTc5MDk5MyAxNy43NDA2MTMzLDUuNDc5NDg4OTIgQzE4LjMxNTY5NTUsNS4yNjExODI2NiAxOC43NTU0NDQxLDUuMjAxMDU1MiAxOS4wNTk0MDMxLDUuMjk5NDUwOCBDMTkuNTQ3NDkzMyw2LjUzMzQ5Nzk1IDE5LjU5MDk4OTMsNy42NDcyOTAxOSAxOS4xODkzMjExLDguNjQwODg0OSBDMjAuMDQ2NDcxNyw5LjU2OTE4ODU0IDIwLjQ3NTMzMjEsMTAuNjk0MTExMiAyMC40NzUzMzIxLDEyLjAxNTQyMzUgQzIwLjQ3NTMzMjEsMTIuOTQzNjEyNCAyMC4zNjM3MTMzLDEzLjc2NTE0MzkgMjAuMTQxNjcyNywxNC40ODA1MzQ0IEMxOS45MTkzNDcxLDE1LjE5NjAzOTYgMTkuNjMxOTc3LDE1Ljc2ODk3MTcgMTkuMjc5NDQ4NSwxNi4yMDA1MzUzIEMxOC45MjY1MjA4LDE2LjYzMjA0MTYgMTguNDg3MDAwMiwxNi45OTUxNTg2IDE3Ljk2MDgyOTcsMTcuMjg5ODI5MSBDMTcuNDM0NTQ1MSwxNy41ODQ3MjkgMTYuOTI0MzM2MywxNy43OTc1ODQ4IDE2LjQzMDc3MzUsMTcuOTI4NzQwNiBDMTUuOTM2OTgyNywxOC4wNTk4OTY1IDE1LjM4MDk5NzcsMTguMTU4NDY0MiAxNC43NjI1OTA1LDE4LjIyMzk4NDggQzE1LjMyNjYxMzQsMTguNzE1MjE2OSAxNS42MDg2ODE5LDE5LjQ5MDYyMDEgMTUuNjA4NjgxOSwyMC41NDk4NTAxIEwxNS42MDg2ODE5LDI0LjAwNTg1OTIgQzE1LjYwODY4MTksMjQuMjAyMTkxNCAxNS42NzY1MTk3LDI0LjM2NjEwNzUgMTUuODEyMzA5MywyNC40OTcwOTEzIEMxNS45NDc5Mjc5LDI0LjYyNzg0NTUgMTYuMTYyMTAxNiwyNC42NjYzNDMyIDE2LjQ1NTExNTMsMjQuNjExNTUxNSBDMTguOTcyNjk2MSwyMy43NzA4NTcyIDIxLjAyNjE4NjUsMjIuMjU1Njc5OCAyMi42MTU3MDA1LDIwLjA2NjA3NjYgQzI0LjIwNTA0MzUsMTcuODc2NjQ1NSAyNSwxNS40MTE1OTIgMjUsMTIuNjcwMjg0OSBDMjQuOTk5NDI5OSwxMC4zODg0ODI1IDI0LjQ0MDMwOTYsOC4yODM4NDk0NSAyMy4zMjMyMDksNi4zNTYzODU4OCBaIiBpZD0iU2hhcGUiPjwvcGF0aD4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+" alt="GitHub Logo"/></a></li><li><a href="https://openj9.slack.com/" rel="noopener noreferrer" target="_blank"><img src="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjVweCIgaGVpZ2h0PSIyNXB4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogPCEtLSBDcmVhdGVkIHdpdGggTWV0aG9kIERyYXcgLSBodHRwOi8vZ2l0aHViLmNvbS9kdW9waXhlbC9NZXRob2QtRHJhdy8gLS0+CgogPGc+CiAgPHRpdGxlPmJhY2tncm91bmQ8L3RpdGxlPgogIDxyZWN0IGZpbGw9Im5vbmUiIGlkPSJjYW52YXNfYmFja2dyb3VuZCIgaGVpZ2h0PSIyNiIgd2lkdGg9IjI2IiB5PSItMSIgeD0iLTEiLz4KICA8ZyBkaXNwbGF5PSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgeT0iMCIgeD0iMCIgaGVpZ2h0PSIxMDAlIiB3aWR0aD0iMTAwJSIgaWQ9ImNhbnZhc0dyaWQiPgogICA8cmVjdCBmaWxsPSJ1cmwoI2dyaWRwYXR0ZXJuKSIgc3Ryb2tlLXdpZHRoPSIwIiB5PSIxIiB4PSIxIiBoZWlnaHQ9IjIyIiB3aWR0aD0iMjIiLz4KICA8L2c+CiA8L2c+CiA8Zz4KICA8dGl0bGU+TGF5ZXIgMTwvdGl0bGU+CiAgPGVsbGlwc2Ugcnk9IjExIiByeD0iMTEiIGlkPSJzdmdfMSIgY3k9IjEyIiBjeD0iMTIiIHN0cm9rZT0iI0ZGRiIgZmlsbD0iI0ZGRkZGRiIvPgogIDxzdHlsZSB0cmFuc2Zvcm09Im1hdHJpeCgwLjA2NTE4MjQ5NTU3MzI1MzYyLDAsMCwwLjA2NTE4MjQ5NTU3MzI1MzYyLDAsMCkgIiB0eXBlPSJ0ZXh0L2NzcyI+LnN0MHtmaWxsOiM0MzQzNDM7fTwvc3R5bGU+CiAgPGcgc3Ryb2tlPSJudWxsIiBpZD0ic3ZnXzE5Ij4KICAgPGcgc3Ryb2tlPSJudWxsIiB0cmFuc2Zvcm09Im1hdHJpeCgwLjEzMDE1NTgwODUxODA5NDg2LDAsMCwwLjEzMDE1NTgwODUxODA5NDg2LC02Ljg0OTAwNjQ1MDQwNTQ5OSwtNi44MzE1MDczOTEwMjE5MjQpICIgaWQ9InN2Z182Ij4KICAgIDxnIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z183Ij4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfOCIgZD0ibTExMC4yOTgyOTIsMTYxLjI5MzAxMWMwLDcuMSAtNS44LDEyLjkgLTEyLjksMTIuOXMtMTIuOSwtNS44IC0xMi45LC0xMi45YzAsLTcuMSA1LjgsLTEyLjkgMTIuOSwtMTIuOWwxMi45LDBsMCwxMi45eiIgY2xhc3M9InN0MCIvPgogICAgIDxwYXRoIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z185IiBkPSJtMTE2Ljc5ODI5MiwxNjEuMjkzMDExYzAsLTcuMSA1LjgsLTEyLjkgMTIuOSwtMTIuOXMxMi45LDUuOCAxMi45LDEyLjlsMCwzMi4zYzAsNy4xIC01LjgsMTIuOSAtMTIuOSwxMi45cy0xMi45LC01LjggLTEyLjksLTEyLjljMCwwIDAsLTMyLjMgMCwtMzIuM3oiIGNsYXNzPSJzdDAiLz4KICAgIDwvZz4KICAgIDxnIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z18xMCI+CiAgICAgPHBhdGggc3Ryb2tlPSJudWxsIiBpZD0ic3ZnXzExIiBkPSJtMTI5LjY5ODI5MiwxMDkuNDkzMDExYy03LjEsMCAtMTIuOSwtNS44IC0xMi45LC0xMi45czUuOCwtMTIuOSAxMi45LC0xMi45czEyLjksNS44IDEyLjksMTIuOWwwLDEyLjlsLTEyLjksMHoiIGNsYXNzPSJzdDAiLz4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTIiIGQ9Im0xMjkuNjk4MjkyLDExNS45OTMwMTFjNy4xLDAgMTIuOSw1LjggMTIuOSwxMi45cy01LjgsMTIuOSAtMTIuOSwxMi45bC0zMi4zLDBjLTcuMSwwIC0xMi45LC01LjggLTEyLjksLTEyLjlzNS44LC0xMi45IDEyLjksLTEyLjljMCwwIDMyLjMsMCAzMi4zLDB6IiBjbGFzcz0ic3QwIi8+CiAgICA8L2c+CiAgICA8ZyBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTMiPgogICAgIDxwYXRoIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z18xNCIgZD0ibTE4MS40OTgyOTIsMTI4Ljg5MzAxMWMwLC03LjEgNS44LC0xMi45IDEyLjksLTEyLjljNy4xLDAgMTIuOSw1LjggMTIuOSwxMi45cy01LjgsMTIuOSAtMTIuOSwxMi45bC0xMi45LDBsMCwtMTIuOXoiIGNsYXNzPSJzdDAiLz4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTUiIGQ9Im0xNzQuOTk4MjkyLDEyOC44OTMwMTFjMCw3LjEgLTUuOCwxMi45IC0xMi45LDEyLjljLTcuMSwwIC0xMi45LC01LjggLTEyLjksLTEyLjlsMCwtMzIuM2MwLC03LjEgNS44LC0xMi45IDEyLjksLTEyLjljNy4xLDAgMTIuOSw1LjggMTIuOSwxMi45bDAsMzIuM3oiIGNsYXNzPSJzdDAiLz4KICAgIDwvZz4KICAgIDxnIHN0cm9rZT0ibnVsbCIgaWQ9InN2Z18xNiI+CiAgICAgPHBhdGggc3Ryb2tlPSJudWxsIiBpZD0ic3ZnXzE3IiBkPSJtMTYyLjA5ODI5MiwxODAuNjkzMDExYzcuMSwwIDEyLjksNS44IDEyLjksMTIuOWMwLDcuMSAtNS44LDEyLjkgLTEyLjksMTIuOWMtNy4xLDAgLTEyLjksLTUuOCAtMTIuOSwtMTIuOWwwLC0xMi45bDEyLjksMHoiIGNsYXNzPSJzdDAiLz4KICAgICA8cGF0aCBzdHJva2U9Im51bGwiIGlkPSJzdmdfMTgiIGQ9Im0xNjIuMDk4MjkyLDE3NC4xOTMwMTFjLTcuMSwwIC0xMi45LC01LjggLTEyLjksLTEyLjljMCwtNy4xIDUuOCwtMTIuOSAxMi45LC0xMi45bDMyLjMsMGM3LjEsMCAxMi45LDUuOCAxMi45LDEyLjljMCw3LjEgLTUuOCwxMi45IC0xMi45LDEyLjlsLTMyLjMsMHoiIGNsYXNzPSJzdDAiLz4KICAgIDwvZz4KICAgPC9nPgogIDwvZz4KIDwvZz4KPC9zdmc+" alt="Slack logo"/></a></li><li><a href="https://stackoverflow.com/search?q=%23OpenJ9" rel="noopener noreferrer" target="_blank"><img src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjRweCIgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgNjUgNzAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5zdGFja292ZXJmbG93LWxvZ288L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0iI0ZGRkZGRiIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0ic3RhY2tvdmVyZmxvdy1sb2dvIiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8cG9seWdvbiBpZD0iUGF0aCIgZmlsbD0iI0ZGRkZGRiIgcG9pbnRzPSI1NC4yNDE3MjY2IDYzLjc3MDIyNjUgNTQuMjQxNzI2NiA0NSA2MSA0NSA2MSA3MCAwIDcwIDAgNDUgNi43NTgyNzMzOCA0NSA2Ljc1ODI3MzM4IDYzLjc3MDIyNjUiPjwvcG9seWdvbj4KICAgICAgICAgICAgPHBhdGggZD0iTTE0LjcwNzEwNTcsNDMuNjQyNzU2NyBMNDguMTE3ODUxLDUwLjA4NzIwMTEgTDQ5LjUzMjA2MjQsNDMuODg3NDgyNCBMMTYuMTIxMzE3MiwzNy40NDMwMzggTDE0LjcwNzEwNTcsNDMuNjQyNzU2NyBMMTQuNzA3MTA1Nyw0My42NDI3NTY3IFogTTE5LjEyNjUxNjUsMjguOTU5MjEyNCBMNTAuMDYyMzkxNyw0Mi4yNTU5Nzc1IEw1Mi44OTA4MTQ2LDM2LjU0NTcxMDMgTDIxLjk1NDkzOTMsMjMuMTY3MzY5OSBMMTkuMTI2NTE2NSwyOC45NTkyMTI0IFogTTI3LjcwMDE3MzMsMTQuOTI4MjcgTDUzLjk1MTQ3MzEsMzUuMDc3MzU1OCBMNTguMjgyNDk1NywzMC4yNjQ0MTYzIEwzMi4wMzExOTU4LDEwLjExNTMzMDUgTDI3LjcwMDE3MzMsMTQuOTI4MjcgTDI3LjcwMDE3MzMsMTQuOTI4MjcgWiBNNDQuNjcwNzEwNiwwIEwzOS4xOTA2NDEyLDMuNzUyNDYxMzIgTDU5LjUxOTkzMDcsMjkuMDQwNzg3NiBMNjUsMjUuMjg4MzI2MyBMNDQuNjcwNzEwNiwwIFogTTE0LDU4IEw0OC4xMTc4NTEsNTggTDQ4LjExNzg1MSw1MS43MTg3MDYgTDE0LDUxLjcxODcwNiBMMTQsNTggWiIgaWQ9IlNoYXBlIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4KCgo=" alt="Stack Overflow logo"/></a></li></ul></nav></footer></div></div><script>
   
   function gaOptout(){document.cookie=disableStr+'=true; expires=Thu, 31 Dec 2099 23:59:59 UTC;path=/',window[disableStr]=!0}var gaProperty='UA-105616558-3',disableStr='ga-disable-'+gaProperty;document.cookie.indexOf(disableStr+'=true')>-1&&(window[disableStr]=!0);
   if(true) {
@@ -17,4 +17,4 @@
       
       
       
-      }</script><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/about/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"app":["/app-2da2270a07d62743bcd4.js"],"component---src-pages-about-js":["/component---src-pages-about-js-bab73d486dc0b5e1a35a.js"],"component---src-pages-index-js":["/component---src-pages-index-js-0745b3eaefdd67e1ce2f.js"],"component---src-pages-news-js":["/component---src-pages-news-js-0f1d1f3e38e8fabb699f.js"],"component---src-pages-performance-js":["/component---src-pages-performance-js-c2c171a1e450568c0b0f.js"]};/*]]>*/</script><script src="/openj9/webpack-runtime-01e9e8dadfdfd12d2817.js" async=""></script><script src="/openj9/styles-cc4082ebb0cb6903d934.js" async=""></script><script src="/openj9/app-2da2270a07d62743bcd4.js" async=""></script><script src="/openj9/commons-13bc6123f79d93bf5635.js" async=""></script><script src="/openj9/component---src-pages-about-js-bab73d486dc0b5e1a35a.js" async=""></script></body></html>
\ No newline at end of file
+      }</script><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/about/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"app":["/app-2da2270a07d62743bcd4.js"],"component---src-pages-about-js":["/component---src-pages-about-js-bab73d486dc0b5e1a35a.js"],"component---src-pages-index-js":["/component---src-pages-index-js-0745b3eaefdd67e1ce2f.js"],"component---src-pages-news-js":["/component---src-pages-news-js-0f1d1f3e38e8fabb699f.js"],"component---src-pages-performance-js":["/component---src-pages-performance-js-543d97d8e2ab1f92fc6a.js"]};/*]]>*/</script><script src="/openj9/webpack-runtime-d87f02dbde2c8c5e0faf.js" async=""></script><script src="/openj9/styles-cc4082ebb0cb6903d934.js" async=""></script><script src="/openj9/app-2da2270a07d62743bcd4.js" async=""></script><script src="/openj9/commons-13bc6123f79d93bf5635.js" async=""></script><script src="/openj9/component---src-pages-about-js-bab73d486dc0b5e1a35a.js" async=""></script></body></html>
\ No newline at end of file
diff --git a/chunk-map.json b/chunk-map.json
index eb01918..56199a2 100644
--- a/chunk-map.json
+++ b/chunk-map.json
@@ -1 +1 @@
-{"app":["/app-2da2270a07d62743bcd4.js"],"component---src-pages-about-js":["/component---src-pages-about-js-bab73d486dc0b5e1a35a.js"],"component---src-pages-index-js":["/component---src-pages-index-js-0745b3eaefdd67e1ce2f.js"],"component---src-pages-news-js":["/component---src-pages-news-js-0f1d1f3e38e8fabb699f.js"],"component---src-pages-performance-js":["/component---src-pages-performance-js-c2c171a1e450568c0b0f.js"]}
\ No newline at end of file
+{"app":["/app-2da2270a07d62743bcd4.js"],"component---src-pages-about-js":["/component---src-pages-about-js-bab73d486dc0b5e1a35a.js"],"component---src-pages-index-js":["/component---src-pages-index-js-0745b3eaefdd67e1ce2f.js"],"component---src-pages-news-js":["/component---src-pages-news-js-0f1d1f3e38e8fabb699f.js"],"component---src-pages-performance-js":["/component---src-pages-performance-js-543d97d8e2ab1f92fc6a.js"]}
\ No newline at end of file
diff --git a/component---src-pages-performance-js-c2c171a1e450568c0b0f.js b/component---src-pages-performance-js-543d97d8e2ab1f92fc6a.js
similarity index 71%
rename from component---src-pages-performance-js-c2c171a1e450568c0b0f.js
rename to component---src-pages-performance-js-543d97d8e2ab1f92fc6a.js
index a2cfc65..11c3fcc 100644
--- a/component---src-pages-performance-js-c2c171a1e450568c0b0f.js
+++ b/component---src-pages-performance-js-543d97d8e2ab1f92fc6a.js
@@ -1,2 +1,2 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{"+6XX":function(t,e,n){var r=n("y1pI");t.exports=function(t){return r(this.__data__,t)>-1}},"+c4W":function(t,e,n){var r=n("711d"),i=n("4/ic"),a=n("9ggG"),o=n("9Nap");t.exports=function(t){return a(t)?r(o(t)):i(t)}},"/9aa":function(t,e,n){var r=n("NykK"),i=n("ExA7");t.exports=function(t){return"symbol"==typeof t||i(t)&&"[object Symbol]"==r(t)}},"03A+":function(t,e,n){var r=n("JTzB"),i=n("ExA7"),a=Object.prototype,o=a.hasOwnProperty,s=a.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(t){return i(t)&&o.call(t,"callee")&&!s.call(t,"callee")};t.exports=l},"0Cz8":function(t,e,n){var r=n("Xi7e"),i=n("ebwN"),a=n("e4Nc");t.exports=function(t,e){var n=this.__data__;if(n instanceof r){var o=n.__data__;if(!i||o.length<199)return o.push([t,e]),this.size=++n.size,this;n=this.__data__=new a(o)}return n.set(t,e),this.size=n.size,this}},"0ycA":function(t,e){t.exports=function(){return[]}},"1hJj":function(t,e,n){var r=n("e4Nc"),i=n("ftKO"),a=n("3A9y");function o(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new r;++e<n;)this.add(t[e])}o.prototype.add=o.prototype.push=i,o.prototype.has=a,t.exports=o},"2gN3":function(t,e,n){var r=n("Kz5y")["__core-js_shared__"];t.exports=r},"3A9y":function(t,e){t.exports=function(t){return this.__data__.has(t)}},"3Fdi":function(t,e,n){n("a1Th"),n("h7Nl"),n("Btvt");var r=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return r.call(t)}catch(e){}try{return t+""}catch(e){}}return""}},"4/ic":function(t,e,n){var r=n("ZWtO");t.exports=function(t){return function(e){return r(e,t)}}},"44Ds":function(t,e,n){var r=n("e4Nc");function i(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var n=function n(){var r=arguments,i=e?e.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=t.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(i.Cache||r),n}i.Cache=r,t.exports=i},"4kuk":function(t,e,n){var r=n("SfRM"),i=n("Hvzi"),a=n("u8Dt"),o=n("ekgI"),s=n("JSQU");function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=i,l.prototype.get=a,l.prototype.has=o,l.prototype.set=s,t.exports=l},"4sDh":function(t,e,n){var r=n("4uTw"),i=n("03A+"),a=n("Z0cm"),o=n("wJg7"),s=n("shjB"),l=n("9Nap");t.exports=function(t,e,n){for(var u=-1,c=(e=r(e,t)).length,h=!1;++u<c;){var d=l(e[u]);if(!(h=null!=t&&n(t,d)))break;t=t[d]}return h||++u!=c?h:!!(c=null==t?0:t.length)&&s(c)&&o(d,c)&&(a(t)||i(t))}},"4uTw":function(t,e,n){var r=n("Z0cm"),i=n("9ggG"),a=n("GNiM"),o=n("dt0z");t.exports=function(t,e){return r(t)?t:i(t,e)?[t]:a(o(t))}},"6sVZ":function(t,e){var n=Object.prototype;t.exports=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||n)}},"711d":function(t,e){t.exports=function(t){return function(e){return null==e?void 0:e[t]}}},"77Zs":function(t,e,n){var r=n("Xi7e");t.exports=function(){this.__data__=new r,this.size=0}},"7GkX":function(t,e,n){var r=n("b80T"),i=n("A90E"),a=n("MMmD");t.exports=function(t){return a(t)?r(t):i(t)}},"7fqy":function(t,e,n){n("8+KV"),t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}},"8oxB":function(t,e){var n,r,i=t.exports={};function a(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function s(t){if(n===setTimeout)return setTimeout(t,0);if((n===a||!n)&&setTimeout)return n=setTimeout,setTimeout(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(e){return n.call(this,t,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:a}catch(t){n=a}try{r="function"==typeof clearTimeout?clearTimeout:o}catch(t){r=o}}();var l,u=[],c=!1,h=-1;function d(){c&&l&&(c=!1,l.length?u=l.concat(u):h=-1,u.length&&f())}function f(){if(!c){var t=s(d);c=!0;for(var e=u.length;e;){for(l=u,u=[];++h<e;)l&&l[h].run();h=-1,e=u.length}l=null,c=!1,function(t){if(r===clearTimeout)return clearTimeout(t);if((r===o||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(t);try{r(t)}catch(e){try{return r.call(null,t)}catch(e){return r.call(this,t)}}}(t)}}function p(t,e){this.fun=t,this.array=e}function g(){}i.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];u.push(new p(t,e)),1!==u.length||c||s(f)},p.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={},i.on=g,i.addListener=g,i.once=g,i.off=g,i.removeListener=g,i.removeAllListeners=g,i.emit=g,i.prependListener=g,i.prependOnceListener=g,i.listeners=function(t){return[]},i.binding=function(t){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(t){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},"9Nap":function(t,e,n){var r=n("/9aa");t.exports=function(t){if("string"==typeof t||r(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}},"9ggG":function(t,e,n){var r=n("Z0cm"),i=n("/9aa"),a=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,o=/^\w*$/;t.exports=function(t,e){if(r(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!i(t))||(o.test(t)||!a.test(t)||null!=e&&t in Object(e))}},A90E:function(t,e,n){var r=n("6sVZ"),i=n("V6Ve"),a=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return i(t);var e=[];for(var n in Object(t))a.call(t,n)&&"constructor"!=n&&e.push(n);return e}},AP2z:function(t,e,n){n("a1Th"),n("h7Nl"),n("Btvt");var r=n("nmnc"),i=Object.prototype,a=i.hasOwnProperty,o=i.toString,s=r?r.toStringTag:void 0;t.exports=function(t){var e=a.call(t,s),n=t[s];try{t[s]=void 0;var r=!0}catch(l){}var i=o.call(t);return r&&(e?t[s]=n:delete t[s]),i}},AphP:function(t,e,n){"use strict";var r=n("XKFU"),i=n("S/j/"),a=n("apmT");r(r.P+r.F*n("eeVq")((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})})),"Date",{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},B8du:function(t,e){t.exports=function(){return!1}},CH3K:function(t,e){t.exports=function(t,e){for(var n=-1,r=e.length,i=t.length;++n<r;)t[i+n]=e[n];return t}},CMye:function(t,e,n){var r=n("GoyQ");t.exports=function(t){return t==t&&!r(t)}},Cwc5:function(t,e,n){var r=n("NKxu"),i=n("Npjl");t.exports=function(t,e){var n=i(t,e);return r(n)?n:void 0}},CyHz:function(t,e,n){var r=n("XKFU");r(r.S,"Math",{sign:n("lvtm")})},DSRE:function(t,e,n){(function(t){var r=n("Kz5y"),i=n("B8du"),a=e&&!e.nodeType&&e,o=a&&"object"==typeof t&&t&&!t.nodeType&&t,s=o&&o.exports===a?r.Buffer:void 0,l=(s?s.isBuffer:void 0)||i;t.exports=l}).call(this,n("YuTi")(t))},DW2E:function(t,e,n){var r=n("0/R4"),i=n("Z6vF").onFreeze;n("Xtr8")("freeze",(function(t){return function(e){return t&&r(e)?t(i(e)):e}}))},E2jh:function(t,e,n){n("rGqo"),n("yt8O"),n("Btvt");var r,i=n("2gN3"),a=(r=/[^.]+$/.exec(i&&i.keys&&i.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";t.exports=function(t){return!!a&&a in t}},EpBk:function(t,e){t.exports=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}},ExA7:function(t,e){t.exports=function(t){return null!=t&&"object"==typeof t}},FlsD:function(t,e,n){var r=n("0/R4");n("Xtr8")("isExtensible",(function(t){return function(e){return!!r(e)&&(!t||t(e))}}))},GDhZ:function(t,e,n){var r=n("wF/u"),i=n("mwIZ"),a=n("hgQt"),o=n("9ggG"),s=n("CMye"),l=n("IOzZ"),u=n("9Nap");t.exports=function(t,e){return o(t)&&s(e)?l(u(t),e):function(n){var o=i(n,t);return void 0===o&&o===e?a(n,t):r(e,o,3)}}},GNiM:function(t,e,n){n("pIFo");var r=n("I01J"),i=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,a=/\\(\\)?/g,o=r((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(i,(function(t,n,r,i){e.push(r?i.replace(a,"$1"):n||t)})),e}));t.exports=o},GoyQ:function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},H8j4:function(t,e,n){var r=n("QkVE");t.exports=function(t,e){var n=r(this,t),i=n.size;return n.set(t,e),this.size+=n.size==i?0:1,this}},HDyB:function(t,e,n){n("f3/d");var r=n("nmnc"),i=n("JHRd"),a=n("ljhN"),o=n("or5M"),s=n("7fqy"),l=n("rEGp"),u=r?r.prototype:void 0,c=u?u.valueOf:void 0;t.exports=function(t,e,n,r,u,h,d){switch(n){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!h(new i(t),new i(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return a(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var f=s;case"[object Set]":var p=1&r;if(f||(f=l),t.size!=e.size&&!p)return!1;var g=d.get(t);if(g)return g==e;r|=2,d.set(t,e);var m=o(f(t),f(e),r,u,h,d);return d.delete(t),m;case"[object Symbol]":if(c)return c.call(t)==c.call(e)}return!1}},HOxn:function(t,e,n){var r=n("Cwc5")(n("Kz5y"),"Promise");t.exports=r},Hvzi:function(t,e){t.exports=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}},I01J:function(t,e,n){var r=n("44Ds");t.exports=function(t){var e=r(t,(function(t){return 500===n.size&&n.clear(),t})),n=e.cache;return e}},INYr:function(t,e,n){"use strict";var r=n("XKFU"),i=n("CkkT")(6),a="findIndex",o=!0;a in[]&&Array(1)[a]((function(){o=!1})),r(r.P+r.F*o,"Array",{findIndex:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),n("nGyu")(a)},IOzZ:function(t,e){t.exports=function(t,e){return function(n){return null!=n&&(n[t]===e&&(void 0!==e||t in Object(n)))}}},JC6p:function(t,e,n){var r=n("cq/+"),i=n("7GkX");t.exports=function(t,e){return t&&r(t,e,i)}},JD84:function(t,e,n){var r=n("SKAX");t.exports=function(t,e,n,i){return r(t,(function(t,r,a){e(i,t,n(t),a)})),i}},JHRd:function(t,e,n){var r=n("Kz5y").Uint8Array;t.exports=r},JHgL:function(t,e,n){var r=n("QkVE");t.exports=function(t){return r(this,t).get(t)}},JSQU:function(t,e,n){var r=n("YESw");t.exports=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=r&&void 0===e?"__lodash_hash_undefined__":e,this}},JTzB:function(t,e,n){var r=n("NykK"),i=n("ExA7");t.exports=function(t){return i(t)&&"[object Arguments]"==r(t)}},Juji:function(t,e){t.exports=function(t,e){return null!=t&&e in Object(t)}},KMkd:function(t,e){t.exports=function(){this.__data__=[],this.size=0}},KfNM:function(t,e,n){n("a1Th"),n("h7Nl"),n("Btvt");var r=Object.prototype.toString;t.exports=function(t){return r.call(t)}},Kz5y:function(t,e,n){var r=n("WFqU"),i="object"==typeof self&&self&&self.Object===Object&&self,a=r||i||Function("return this")();t.exports=a},L8xA:function(t,e){t.exports=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}},LXxW:function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,i=0,a=[];++n<r;){var o=t[n];e(o,n,t)&&(a[i++]=o)}return a}},Ljet:function(t,e,n){var r=n("XKFU");r(r.S,"Number",{EPSILON:Math.pow(2,-52)})},MMmD:function(t,e,n){var r=n("lSCD"),i=n("shjB");t.exports=function(t){return null!=t&&i(t.length)&&!r(t)}},"MO+k":function(t,e,n){n("h/M4"),n("knhD"),n("Ljet"),n("CyHz"),n("DNiP"),n("2Spj"),n("0l/t"),n("DW2E"),n("FlsD"),n("INYr"),n("eM6i"),n("eHKK"),n("Vd3H"),n("bHtr"),n("V+eJ"),n("91GP"),n("xfY5"),n("LK8F"),n("8+KV"),n("rGqo"),n("yt8O"),n("RW0V"),n("KKXr"),n("bWfx"),n("SRfc"),n("a1Th"),n("h7Nl"),n("Btvt"),n("HAE/"),t.exports=function(t){"use strict";t=t&&t.hasOwnProperty("default")?t.default:t;var e={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},n=function(t,e){return t(e={exports:{}},e.exports),e.exports}((function(t){var n={};for(var r in e)e.hasOwnProperty(r)&&(n[e[r]]=r);var i=t.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(var a in i)if(i.hasOwnProperty(a)){if(!("channels"in i[a]))throw new Error("missing channels property: "+a);if(!("labels"in i[a]))throw new Error("missing channel labels property: "+a);if(i[a].labels.length!==i[a].channels)throw new Error("channel and label counts mismatch: "+a);var o=i[a].channels,s=i[a].labels;delete i[a].channels,delete i[a].labels,Object.defineProperty(i[a],"channels",{value:o}),Object.defineProperty(i[a],"labels",{value:s})}i.rgb.hsl=function(t){var e,n,r=t[0]/255,i=t[1]/255,a=t[2]/255,o=Math.min(r,i,a),s=Math.max(r,i,a),l=s-o;return s===o?e=0:r===s?e=(i-a)/l:i===s?e=2+(a-r)/l:a===s&&(e=4+(r-i)/l),(e=Math.min(60*e,360))<0&&(e+=360),n=(o+s)/2,[e,100*(s===o?0:n<=.5?l/(s+o):l/(2-s-o)),100*n]},i.rgb.hsv=function(t){var e,n,r,i,a,o=t[0]/255,s=t[1]/255,l=t[2]/255,u=Math.max(o,s,l),c=u-Math.min(o,s,l),h=function(t){return(u-t)/6/c+.5};return 0===c?i=a=0:(a=c/u,e=h(o),n=h(s),r=h(l),o===u?i=r-n:s===u?i=1/3+e-r:l===u&&(i=2/3+n-e),i<0?i+=1:i>1&&(i-=1)),[360*i,100*a,100*u]},i.rgb.hwb=function(t){var e=t[0],n=t[1],r=t[2];return[i.rgb.hsl(t)[0],1/255*Math.min(e,Math.min(n,r))*100,100*(r=1-1/255*Math.max(e,Math.max(n,r)))]},i.rgb.cmyk=function(t){var e,n=t[0]/255,r=t[1]/255,i=t[2]/255;return[100*((1-n-(e=Math.min(1-n,1-r,1-i)))/(1-e)||0),100*((1-r-e)/(1-e)||0),100*((1-i-e)/(1-e)||0),100*e]},i.rgb.keyword=function(t){var r=n[t];if(r)return r;var i,a,o,s=1/0;for(var l in e)if(e.hasOwnProperty(l)){var u=e[l],c=(a=t,o=u,Math.pow(a[0]-o[0],2)+Math.pow(a[1]-o[1],2)+Math.pow(a[2]-o[2],2));c<s&&(s=c,i=l)}return i},i.keyword.rgb=function(t){return e[t]},i.rgb.xyz=function(t){var e=t[0]/255,n=t[1]/255,r=t[2]/255;return[100*(.4124*(e=e>.04045?Math.pow((e+.055)/1.055,2.4):e/12.92)+.3576*(n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92)+.1805*(r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92)),100*(.2126*e+.7152*n+.0722*r),100*(.0193*e+.1192*n+.9505*r)]},i.rgb.lab=function(t){var e=i.rgb.xyz(t),n=e[0],r=e[1],a=e[2];return r/=100,a/=108.883,n=(n/=95.047)>.008856?Math.pow(n,1/3):7.787*n+16/116,[116*(r=r>.008856?Math.pow(r,1/3):7.787*r+16/116)-16,500*(n-r),200*(r-(a=a>.008856?Math.pow(a,1/3):7.787*a+16/116))]},i.hsl.rgb=function(t){var e,n,r,i,a,o=t[0]/360,s=t[1]/100,l=t[2]/100;if(0===s)return[a=255*l,a,a];e=2*l-(n=l<.5?l*(1+s):l+s-l*s),i=[0,0,0];for(var u=0;u<3;u++)(r=o+1/3*-(u-1))<0&&r++,r>1&&r--,a=6*r<1?e+6*(n-e)*r:2*r<1?n:3*r<2?e+(n-e)*(2/3-r)*6:e,i[u]=255*a;return i},i.hsl.hsv=function(t){var e=t[0],n=t[1]/100,r=t[2]/100,i=n,a=Math.max(r,.01);return n*=(r*=2)<=1?r:2-r,i*=a<=1?a:2-a,[e,100*(0===r?2*i/(a+i):2*n/(r+n)),(r+n)/2*100]},i.hsv.rgb=function(t){var e=t[0]/60,n=t[1]/100,r=t[2]/100,i=Math.floor(e)%6,a=e-Math.floor(e),o=255*r*(1-n),s=255*r*(1-n*a),l=255*r*(1-n*(1-a));switch(r*=255,i){case 0:return[r,l,o];case 1:return[s,r,o];case 2:return[o,r,l];case 3:return[o,s,r];case 4:return[l,o,r];case 5:return[r,o,s]}},i.hsv.hsl=function(t){var e,n,r,i=t[0],a=t[1]/100,o=t[2]/100,s=Math.max(o,.01);return r=(2-a)*o,n=a*s,[i,100*(n=(n/=(e=(2-a)*s)<=1?e:2-e)||0),100*(r/=2)]},i.hwb.rgb=function(t){var e,n,r,i,a,o,s,l=t[0]/360,u=t[1]/100,c=t[2]/100,h=u+c;switch(h>1&&(u/=h,c/=h),r=6*l-(e=Math.floor(6*l)),0!=(1&e)&&(r=1-r),i=u+r*((n=1-c)-u),e){default:case 6:case 0:a=n,o=i,s=u;break;case 1:a=i,o=n,s=u;break;case 2:a=u,o=n,s=i;break;case 3:a=u,o=i,s=n;break;case 4:a=i,o=u,s=n;break;case 5:a=n,o=u,s=i}return[255*a,255*o,255*s]},i.cmyk.rgb=function(t){var e=t[0]/100,n=t[1]/100,r=t[2]/100,i=t[3]/100;return[255*(1-Math.min(1,e*(1-i)+i)),255*(1-Math.min(1,n*(1-i)+i)),255*(1-Math.min(1,r*(1-i)+i))]},i.xyz.rgb=function(t){var e,n,r,i=t[0]/100,a=t[1]/100,o=t[2]/100;return n=-.9689*i+1.8758*a+.0415*o,r=.0557*i+-.204*a+1.057*o,e=(e=3.2406*i+-1.5372*a+-.4986*o)>.0031308?1.055*Math.pow(e,1/2.4)-.055:12.92*e,n=n>.0031308?1.055*Math.pow(n,1/2.4)-.055:12.92*n,r=r>.0031308?1.055*Math.pow(r,1/2.4)-.055:12.92*r,[255*(e=Math.min(Math.max(0,e),1)),255*(n=Math.min(Math.max(0,n),1)),255*(r=Math.min(Math.max(0,r),1))]},i.xyz.lab=function(t){var e=t[0],n=t[1],r=t[2];return n/=100,r/=108.883,e=(e/=95.047)>.008856?Math.pow(e,1/3):7.787*e+16/116,[116*(n=n>.008856?Math.pow(n,1/3):7.787*n+16/116)-16,500*(e-n),200*(n-(r=r>.008856?Math.pow(r,1/3):7.787*r+16/116))]},i.lab.xyz=function(t){var e,n,r,i=t[0];e=t[1]/500+(n=(i+16)/116),r=n-t[2]/200;var a=Math.pow(n,3),o=Math.pow(e,3),s=Math.pow(r,3);return n=a>.008856?a:(n-16/116)/7.787,e=o>.008856?o:(e-16/116)/7.787,r=s>.008856?s:(r-16/116)/7.787,[e*=95.047,n*=100,r*=108.883]},i.lab.lch=function(t){var e,n=t[0],r=t[1],i=t[2];return(e=360*Math.atan2(i,r)/2/Math.PI)<0&&(e+=360),[n,Math.sqrt(r*r+i*i),e]},i.lch.lab=function(t){var e,n=t[0],r=t[1];return e=t[2]/360*2*Math.PI,[n,r*Math.cos(e),r*Math.sin(e)]},i.rgb.ansi16=function(t){var e=t[0],n=t[1],r=t[2],a=1 in arguments?arguments[1]:i.rgb.hsv(t)[2];if(0===(a=Math.round(a/50)))return 30;var o=30+(Math.round(r/255)<<2|Math.round(n/255)<<1|Math.round(e/255));return 2===a&&(o+=60),o},i.hsv.ansi16=function(t){return i.rgb.ansi16(i.hsv.rgb(t),t[2])},i.rgb.ansi256=function(t){var e=t[0],n=t[1],r=t[2];return e===n&&n===r?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},i.ansi16.rgb=function(t){var e=t%10;if(0===e||7===e)return t>50&&(e+=3.5),[e=e/10.5*255,e,e];var n=.5*(1+~~(t>50));return[(1&e)*n*255,(e>>1&1)*n*255,(e>>2&1)*n*255]},i.ansi256.rgb=function(t){if(t>=232){var e=10*(t-232)+8;return[e,e,e]}var n;return t-=16,[Math.floor(t/36)/5*255,Math.floor((n=t%36)/6)/5*255,n%6/5*255]},i.rgb.hex=function(t){var e=(((255&Math.round(t[0]))<<16)+((255&Math.round(t[1]))<<8)+(255&Math.round(t[2]))).toString(16).toUpperCase();return"000000".substring(e.length)+e},i.hex.rgb=function(t){var e=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!e)return[0,0,0];var n=e[0];3===e[0].length&&(n=n.split("").map((function(t){return t+t})).join(""));var r=parseInt(n,16);return[r>>16&255,r>>8&255,255&r]},i.rgb.hcg=function(t){var e,n=t[0]/255,r=t[1]/255,i=t[2]/255,a=Math.max(Math.max(n,r),i),o=Math.min(Math.min(n,r),i),s=a-o;return e=s<=0?0:a===n?(r-i)/s%6:a===r?2+(i-n)/s:4+(n-r)/s+4,e/=6,[360*(e%=1),100*s,100*(s<1?o/(1-s):0)]},i.hsl.hcg=function(t){var e=t[1]/100,n=t[2]/100,r=1,i=0;return(r=n<.5?2*e*n:2*e*(1-n))<1&&(i=(n-.5*r)/(1-r)),[t[0],100*r,100*i]},i.hsv.hcg=function(t){var e=t[1]/100,n=t[2]/100,r=e*n,i=0;return r<1&&(i=(n-r)/(1-r)),[t[0],100*r,100*i]},i.hcg.rgb=function(t){var e=t[0]/360,n=t[1]/100,r=t[2]/100;if(0===n)return[255*r,255*r,255*r];var i,a=[0,0,0],o=e%1*6,s=o%1,l=1-s;switch(Math.floor(o)){case 0:a[0]=1,a[1]=s,a[2]=0;break;case 1:a[0]=l,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=s;break;case 3:a[0]=0,a[1]=l,a[2]=1;break;case 4:a[0]=s,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=l}return i=(1-n)*r,[255*(n*a[0]+i),255*(n*a[1]+i),255*(n*a[2]+i)]},i.hcg.hsv=function(t){var e=t[1]/100,n=e+t[2]/100*(1-e),r=0;return n>0&&(r=e/n),[t[0],100*r,100*n]},i.hcg.hsl=function(t){var e=t[1]/100,n=t[2]/100*(1-e)+.5*e,r=0;return n>0&&n<.5?r=e/(2*n):n>=.5&&n<1&&(r=e/(2*(1-n))),[t[0],100*r,100*n]},i.hcg.hwb=function(t){var e=t[1]/100,n=e+t[2]/100*(1-e);return[t[0],100*(n-e),100*(1-n)]},i.hwb.hcg=function(t){var e=t[1]/100,n=1-t[2]/100,r=n-e,i=0;return r<1&&(i=(n-r)/(1-r)),[t[0],100*r,100*i]},i.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]},i.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]},i.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]},i.gray.hsl=i.gray.hsv=function(t){return[0,0,t[0]]},i.gray.hwb=function(t){return[0,100,t[0]]},i.gray.cmyk=function(t){return[0,0,0,t[0]]},i.gray.lab=function(t){return[t[0],0,0]},i.gray.hex=function(t){var e=255&Math.round(t[0]/100*255),n=((e<<16)+(e<<8)+e).toString(16).toUpperCase();return"000000".substring(n.length)+n},i.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}}));function r(t){var e=function(){for(var t={},e=Object.keys(n),r=e.length,i=0;i<r;i++)t[e[i]]={distance:-1,parent:null};return t}(),r=[t];for(e[t].distance=0;r.length;)for(var i=r.pop(),a=Object.keys(n[i]),o=a.length,s=0;s<o;s++){var l=a[s],u=e[l];-1===u.distance&&(u.distance=e[i].distance+1,u.parent=i,r.unshift(l))}return e}function i(t,e){return function(n){return e(t(n))}}function a(t,e){for(var r=[e[t].parent,t],a=n[e[t].parent][t],o=e[t].parent;e[o].parent;)r.unshift(e[o].parent),a=i(n[e[o].parent][o],a),o=e[o].parent;return a.conversion=r,a}n.rgb,n.hsl,n.hsv,n.hwb,n.cmyk,n.xyz,n.lab,n.lch,n.hex,n.keyword,n.ansi16,n.ansi256,n.hcg,n.apple,n.gray;var o={};Object.keys(n).forEach((function(t){o[t]={},Object.defineProperty(o[t],"channels",{value:n[t].channels}),Object.defineProperty(o[t],"labels",{value:n[t].labels});var e=function(t){for(var e=r(t),n={},i=Object.keys(e),o=i.length,s=0;s<o;s++){var l=i[s];null!==e[l].parent&&(n[l]=a(l,e))}return n}(t);Object.keys(e).forEach((function(n){var r=e[n];o[t][n]=function(t){var e=function(e){if(null==e)return e;arguments.length>1&&(e=Array.prototype.slice.call(arguments));var n=t(e);if("object"==typeof n)for(var r=n.length,i=0;i<r;i++)n[i]=Math.round(n[i]);return n};return"conversion"in t&&(e.conversion=t.conversion),e}(r),o[t][n].raw=function(t){var e=function(e){return null==e?e:(arguments.length>1&&(e=Array.prototype.slice.call(arguments)),t(e))};return"conversion"in t&&(e.conversion=t.conversion),e}(r)}))}));var s=o,l={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},u={getRgba:c,getHsla:h,getRgb:function(t){var e=c(t);return e&&e.slice(0,3)},getHsl:function(t){var e=h(t);return e&&e.slice(0,3)},getHwb:d,getAlpha:function(t){var e=c(t);return e?e[3]:(e=h(t))?e[3]:(e=d(t))?e[3]:void 0},hexString:function(t,e){return e=void 0!==e&&3===t.length?e:t[3],"#"+v(t[0])+v(t[1])+v(t[2])+(e>=0&&e<1?v(Math.round(255*e)):"")},rgbString:function(t,e){return e<1||t[3]&&t[3]<1?f(t,e):"rgb("+t[0]+", "+t[1]+", "+t[2]+")"},rgbaString:f,percentString:function(t,e){if(e<1||t[3]&&t[3]<1)return p(t,e);var n=Math.round(t[0]/255*100),r=Math.round(t[1]/255*100),i=Math.round(t[2]/255*100);return"rgb("+n+"%, "+r+"%, "+i+"%)"},percentaString:p,hslString:function(t,e){return e<1||t[3]&&t[3]<1?g(t,e):"hsl("+t[0]+", "+t[1]+"%, "+t[2]+"%)"},hslaString:g,hwbString:function(t,e){return void 0===e&&(e=void 0!==t[3]?t[3]:1),"hwb("+t[0]+", "+t[1]+"%, "+t[2]+"%"+(void 0!==e&&1!==e?", "+e:"")+")"},keyword:function(t){return y[t.slice(0,3)]}};function c(t){if(t){var e=[0,0,0],n=1,r=t.match(/^#([a-fA-F0-9]{3,4})$/i),i="";if(r){i=(r=r[1])[3];for(var a=0;a<e.length;a++)e[a]=parseInt(r[a]+r[a],16);i&&(n=Math.round(parseInt(i+i,16)/255*100)/100)}else if(r=t.match(/^#([a-fA-F0-9]{6}([a-fA-F0-9]{2})?)$/i)){for(i=r[2],r=r[1],a=0;a<e.length;a++)e[a]=parseInt(r.slice(2*a,2*a+2),16);i&&(n=Math.round(parseInt(i,16)/255*100)/100)}else if(r=t.match(/^rgba?\(\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/i)){for(a=0;a<e.length;a++)e[a]=parseInt(r[a+1]);n=parseFloat(r[4])}else if(r=t.match(/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/i)){for(a=0;a<e.length;a++)e[a]=Math.round(2.55*parseFloat(r[a+1]));n=parseFloat(r[4])}else if(r=t.match(/(\w+)/)){if("transparent"==r[1])return[0,0,0,0];if(!(e=l[r[1]]))return}for(a=0;a<e.length;a++)e[a]=m(e[a],0,255);return n=n||0==n?m(n,0,1):1,e[3]=n,e}}function h(t){if(t){var e=t.match(/^hsla?\(\s*([+-]?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)/);if(e){var n=parseFloat(e[4]);return[m(parseInt(e[1]),0,360),m(parseFloat(e[2]),0,100),m(parseFloat(e[3]),0,100),m(isNaN(n)?1:n,0,1)]}}}function d(t){if(t){var e=t.match(/^hwb\(\s*([+-]?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)/);if(e){var n=parseFloat(e[4]);return[m(parseInt(e[1]),0,360),m(parseFloat(e[2]),0,100),m(parseFloat(e[3]),0,100),m(isNaN(n)?1:n,0,1)]}}}function f(t,e){return void 0===e&&(e=void 0!==t[3]?t[3]:1),"rgba("+t[0]+", "+t[1]+", "+t[2]+", "+e+")"}function p(t,e){return"rgba("+Math.round(t[0]/255*100)+"%, "+Math.round(t[1]/255*100)+"%, "+Math.round(t[2]/255*100)+"%, "+(e||t[3]||1)+")"}function g(t,e){return void 0===e&&(e=void 0!==t[3]?t[3]:1),"hsla("+t[0]+", "+t[1]+"%, "+t[2]+"%, "+e+")"}function m(t,e,n){return Math.min(Math.max(e,t),n)}function v(t){var e=t.toString(16).toUpperCase();return e.length<2?"0"+e:e}var y={};for(var b in l)y[l[b]]=b;var x=function t(e){return e instanceof t?e:this instanceof t?(this.valid=!1,this.values={rgb:[0,0,0],hsl:[0,0,0],hsv:[0,0,0],hwb:[0,0,0],cmyk:[0,0,0,0],alpha:1},void("string"==typeof e?(n=u.getRgba(e))?this.setValues("rgb",n):(n=u.getHsla(e))?this.setValues("hsl",n):(n=u.getHwb(e))&&this.setValues("hwb",n):"object"==typeof e&&(void 0!==(n=e).r||void 0!==n.red?this.setValues("rgb",n):void 0!==n.l||void 0!==n.lightness?this.setValues("hsl",n):void 0!==n.v||void 0!==n.value?this.setValues("hsv",n):void 0!==n.w||void 0!==n.whiteness?this.setValues("hwb",n):void 0===n.c&&void 0===n.cyan||this.setValues("cmyk",n)))):new t(e);var n};(x.prototype={isValid:function(){return this.valid},rgb:function(){return this.setSpace("rgb",arguments)},hsl:function(){return this.setSpace("hsl",arguments)},hsv:function(){return this.setSpace("hsv",arguments)},hwb:function(){return this.setSpace("hwb",arguments)},cmyk:function(){return this.setSpace("cmyk",arguments)},rgbArray:function(){return this.values.rgb},hslArray:function(){return this.values.hsl},hsvArray:function(){return this.values.hsv},hwbArray:function(){var t=this.values;return 1!==t.alpha?t.hwb.concat([t.alpha]):t.hwb},cmykArray:function(){return this.values.cmyk},rgbaArray:function(){var t=this.values;return t.rgb.concat([t.alpha])},hslaArray:function(){var t=this.values;return t.hsl.concat([t.alpha])},alpha:function(t){return void 0===t?this.values.alpha:(this.setValues("alpha",t),this)},red:function(t){return this.setChannel("rgb",0,t)},green:function(t){return this.setChannel("rgb",1,t)},blue:function(t){return this.setChannel("rgb",2,t)},hue:function(t){return t&&(t=(t%=360)<0?360+t:t),this.setChannel("hsl",0,t)},saturation:function(t){return this.setChannel("hsl",1,t)},lightness:function(t){return this.setChannel("hsl",2,t)},saturationv:function(t){return this.setChannel("hsv",1,t)},whiteness:function(t){return this.setChannel("hwb",1,t)},blackness:function(t){return this.setChannel("hwb",2,t)},value:function(t){return this.setChannel("hsv",2,t)},cyan:function(t){return this.setChannel("cmyk",0,t)},magenta:function(t){return this.setChannel("cmyk",1,t)},yellow:function(t){return this.setChannel("cmyk",2,t)},black:function(t){return this.setChannel("cmyk",3,t)},hexString:function(){return u.hexString(this.values.rgb)},rgbString:function(){return u.rgbString(this.values.rgb,this.values.alpha)},rgbaString:function(){return u.rgbaString(this.values.rgb,this.values.alpha)},percentString:function(){return u.percentString(this.values.rgb,this.values.alpha)},hslString:function(){return u.hslString(this.values.hsl,this.values.alpha)},hslaString:function(){return u.hslaString(this.values.hsl,this.values.alpha)},hwbString:function(){return u.hwbString(this.values.hwb,this.values.alpha)},keyword:function(){return u.keyword(this.values.rgb,this.values.alpha)},rgbNumber:function(){var t=this.values.rgb;return t[0]<<16|t[1]<<8|t[2]},luminosity:function(){for(var t=this.values.rgb,e=[],n=0;n<t.length;n++){var r=t[n]/255;e[n]=r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4)}return.2126*e[0]+.7152*e[1]+.0722*e[2]},contrast:function(t){var e=this.luminosity(),n=t.luminosity();return e>n?(e+.05)/(n+.05):(n+.05)/(e+.05)},level:function(t){var e=this.contrast(t);return e>=7.1?"AAA":e>=4.5?"AA":""},dark:function(){var t=this.values.rgb;return(299*t[0]+587*t[1]+114*t[2])/1e3<128},light:function(){return!this.dark()},negate:function(){for(var t=[],e=0;e<3;e++)t[e]=255-this.values.rgb[e];return this.setValues("rgb",t),this},lighten:function(t){var e=this.values.hsl;return e[2]+=e[2]*t,this.setValues("hsl",e),this},darken:function(t){var e=this.values.hsl;return e[2]-=e[2]*t,this.setValues("hsl",e),this},saturate:function(t){var e=this.values.hsl;return e[1]+=e[1]*t,this.setValues("hsl",e),this},desaturate:function(t){var e=this.values.hsl;return e[1]-=e[1]*t,this.setValues("hsl",e),this},whiten:function(t){var e=this.values.hwb;return e[1]+=e[1]*t,this.setValues("hwb",e),this},blacken:function(t){var e=this.values.hwb;return e[2]+=e[2]*t,this.setValues("hwb",e),this},greyscale:function(){var t=this.values.rgb,e=.3*t[0]+.59*t[1]+.11*t[2];return this.setValues("rgb",[e,e,e]),this},clearer:function(t){var e=this.values.alpha;return this.setValues("alpha",e-e*t),this},opaquer:function(t){var e=this.values.alpha;return this.setValues("alpha",e+e*t),this},rotate:function(t){var e=this.values.hsl,n=(e[0]+t)%360;return e[0]=n<0?360+n:n,this.setValues("hsl",e),this},mix:function(t,e){var n=t,r=void 0===e?.5:e,i=2*r-1,a=this.alpha()-n.alpha(),o=((i*a==-1?i:(i+a)/(1+i*a))+1)/2,s=1-o;return this.rgb(o*this.red()+s*n.red(),o*this.green()+s*n.green(),o*this.blue()+s*n.blue()).alpha(this.alpha()*r+n.alpha()*(1-r))},toJSON:function(){return this.rgb()},clone:function(){var t,e,n=new x,r=this.values,i=n.values;for(var a in r)r.hasOwnProperty(a)&&(t=r[a],"[object Array]"===(e={}.toString.call(t))?i[a]=t.slice(0):"[object Number]"===e?i[a]=t:console.error("unexpected color value:",t));return n}}).spaces={rgb:["red","green","blue"],hsl:["hue","saturation","lightness"],hsv:["hue","saturation","value"],hwb:["hue","whiteness","blackness"],cmyk:["cyan","magenta","yellow","black"]},x.prototype.maxes={rgb:[255,255,255],hsl:[360,100,100],hsv:[360,100,100],hwb:[360,100,100],cmyk:[100,100,100,100]},x.prototype.getValues=function(t){for(var e=this.values,n={},r=0;r<t.length;r++)n[t.charAt(r)]=e[t][r];return 1!==e.alpha&&(n.a=e.alpha),n},x.prototype.setValues=function(t,e){var n,r,i=this.values,a=this.spaces,o=this.maxes,l=1;if(this.valid=!0,"alpha"===t)l=e;else if(e.length)i[t]=e.slice(0,t.length),l=e[t.length];else if(void 0!==e[t.charAt(0)]){for(n=0;n<t.length;n++)i[t][n]=e[t.charAt(n)];l=e.a}else if(void 0!==e[a[t][0]]){var u=a[t];for(n=0;n<t.length;n++)i[t][n]=e[u[n]];l=e.alpha}if(i.alpha=Math.max(0,Math.min(1,void 0===l?i.alpha:l)),"alpha"===t)return!1;for(n=0;n<t.length;n++)r=Math.max(0,Math.min(o[t][n],i[t][n])),i[t][n]=Math.round(r);for(var c in a)c!==t&&(i[c]=s[t][c](i[t]));return!0},x.prototype.setSpace=function(t,e){var n=e[0];return void 0===n?this.getValues(t):("number"==typeof n&&(n=Array.prototype.slice.call(e)),this.setValues(t,n),this)},x.prototype.setChannel=function(t,e,n){var r=this.values[t];return void 0===n?r[e]:n===r[e]?this:(r[e]=n,this.setValues(t,r),this)},"undefined"!=typeof window&&(window.Color=x);var _,w=x,k={noop:function(){},uid:(_=0,function(){return _++}),isNullOrUndef:function(t){return null==t},isArray:function(t){if(Array.isArray&&Array.isArray(t))return!0;var e=Object.prototype.toString.call(t);return"[object"===e.substr(0,7)&&"Array]"===e.substr(-6)},isObject:function(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)},isFinite:function(t){function e(e){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}((function(t){return("number"==typeof t||t instanceof Number)&&isFinite(t)})),valueOrDefault:function(t,e){return void 0===t?e:t},valueAtIndexOrDefault:function(t,e,n){return k.valueOrDefault(k.isArray(t)?t[e]:t,n)},callback:function(t,e,n){if(t&&"function"==typeof t.call)return t.apply(n,e)},each:function(t,e,n,r){var i,a,o;if(k.isArray(t))if(a=t.length,r)for(i=a-1;i>=0;i--)e.call(n,t[i],i);else for(i=0;i<a;i++)e.call(n,t[i],i);else if(k.isObject(t))for(a=(o=Object.keys(t)).length,i=0;i<a;i++)e.call(n,t[o[i]],o[i])},arrayEquals:function(t,e){var n,r,i,a;if(!t||!e||t.length!==e.length)return!1;for(n=0,r=t.length;n<r;++n)if(i=t[n],a=e[n],i instanceof Array&&a instanceof Array){if(!k.arrayEquals(i,a))return!1}else if(i!==a)return!1;return!0},clone:function(t){if(k.isArray(t))return t.map(k.clone);if(k.isObject(t)){for(var e={},n=Object.keys(t),r=n.length,i=0;i<r;++i)e[n[i]]=k.clone(t[n[i]]);return e}return t},_merger:function(t,e,n,r){var i=e[t],a=n[t];k.isObject(i)&&k.isObject(a)?k.merge(i,a,r):e[t]=k.clone(a)},_mergerIf:function(t,e,n){var r=e[t],i=n[t];k.isObject(r)&&k.isObject(i)?k.mergeIf(r,i):e.hasOwnProperty(t)||(e[t]=k.clone(i))},merge:function(t,e,n){var r,i,a,o,s,l=k.isArray(e)?e:[e],u=l.length;if(!k.isObject(t))return t;for(r=(n=n||{}).merger||k._merger,i=0;i<u;++i)if(e=l[i],k.isObject(e))for(s=0,o=(a=Object.keys(e)).length;s<o;++s)r(a[s],t,e,n);return t},mergeIf:function(t,e){return k.merge(t,e,{merger:k._mergerIf})},extend:Object.assign||function(t){return k.merge(t,[].slice.call(arguments,1),{merger:function(t,e,n){e[t]=n[t]}})},inherits:function(t){var e=this,n=t&&t.hasOwnProperty("constructor")?t.constructor:function(){return e.apply(this,arguments)},r=function(){this.constructor=n};return r.prototype=e.prototype,n.prototype=new r,n.extend=k.inherits,t&&k.extend(n.prototype,t),n.__super__=e.prototype,n},_deprecated:function(t,e,n,r){void 0!==e&&console.warn(t+': "'+n+'" is deprecated. Please use "'+r+'" instead')}},M=k;k.callCallback=k.callback,k.indexOf=function(t,e,n){return Array.prototype.indexOf.call(t,e,n)},k.getValueOrDefault=k.valueOrDefault,k.getValueAtIndexOrDefault=k.valueAtIndexOrDefault;var S={linear:function(t){return t},easeInQuad:function(t){return t*t},easeOutQuad:function(t){return-t*(t-2)},easeInOutQuad:function(t){return(t/=.5)<1?.5*t*t:-.5*(--t*(t-2)-1)},easeInCubic:function(t){return t*t*t},easeOutCubic:function(t){return(t-=1)*t*t+1},easeInOutCubic:function(t){return(t/=.5)<1?.5*t*t*t:.5*((t-=2)*t*t+2)},easeInQuart:function(t){return t*t*t*t},easeOutQuart:function(t){return-((t-=1)*t*t*t-1)},easeInOutQuart:function(t){return(t/=.5)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)},easeInQuint:function(t){return t*t*t*t*t},easeOutQuint:function(t){return(t-=1)*t*t*t*t+1},easeInOutQuint:function(t){return(t/=.5)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)},easeInSine:function(t){return 1-Math.cos(t*(Math.PI/2))},easeOutSine:function(t){return Math.sin(t*(Math.PI/2))},easeInOutSine:function(t){return-.5*(Math.cos(Math.PI*t)-1)},easeInExpo:function(t){return 0===t?0:Math.pow(2,10*(t-1))},easeOutExpo:function(t){return 1===t?1:1-Math.pow(2,-10*t)},easeInOutExpo:function(t){return 0===t?0:1===t?1:(t/=.5)<1?.5*Math.pow(2,10*(t-1)):.5*(2-Math.pow(2,-10*--t))},easeInCirc:function(t){return t>=1?t:-(Math.sqrt(1-t*t)-1)},easeOutCirc:function(t){return Math.sqrt(1-(t-=1)*t)},easeInOutCirc:function(t){return(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)},easeInElastic:function(t){var e=1.70158,n=0,r=1;return 0===t?0:1===t?1:(n||(n=.3),r<1?(r=1,e=n/4):e=n/(2*Math.PI)*Math.asin(1/r),-r*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/n))},easeOutElastic:function(t){var e=1.70158,n=0,r=1;return 0===t?0:1===t?1:(n||(n=.3),r<1?(r=1,e=n/4):e=n/(2*Math.PI)*Math.asin(1/r),r*Math.pow(2,-10*t)*Math.sin((t-e)*(2*Math.PI)/n)+1)},easeInOutElastic:function(t){var e=1.70158,n=0,r=1;return 0===t?0:2==(t/=.5)?1:(n||(n=.45),r<1?(r=1,e=n/4):e=n/(2*Math.PI)*Math.asin(1/r),t<1?r*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/n)*-.5:r*Math.pow(2,-10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/n)*.5+1)},easeInBack:function(t){var e=1.70158;return t*t*((e+1)*t-e)},easeOutBack:function(t){var e=1.70158;return(t-=1)*t*((e+1)*t+e)+1},easeInOutBack:function(t){var e=1.70158;return(t/=.5)<1?t*t*((1+(e*=1.525))*t-e)*.5:.5*((t-=2)*t*((1+(e*=1.525))*t+e)+2)},easeInBounce:function(t){return 1-S.easeOutBounce(1-t)},easeOutBounce:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},easeInOutBounce:function(t){return t<.5?.5*S.easeInBounce(2*t):.5*S.easeOutBounce(2*t-1)+.5}},D={effects:S};M.easingEffects=S;var C=Math.PI,O=C/180,T=2*C,A=C/2,P=C/4,I=2*C/3,F={clear:function(t){t.ctx.clearRect(0,0,t.width,t.height)},roundedRect:function(t,e,n,r,i,a){if(a){var o=Math.min(a,i/2,r/2),s=e+o,l=n+o,u=e+r-o,c=n+i-o;t.moveTo(e,l),s<u&&l<c?(t.arc(s,l,o,-C,-A),t.arc(u,l,o,-A,0),t.arc(u,c,o,0,A),t.arc(s,c,o,A,C)):s<u?(t.moveTo(s,n),t.arc(u,l,o,-A,A),t.arc(s,l,o,A,C+A)):l<c?(t.arc(s,l,o,-C,0),t.arc(s,c,o,0,C)):t.arc(s,l,o,-C,C),t.closePath(),t.moveTo(e,n)}else t.rect(e,n,r,i)},drawPoint:function(t,e,n,r,i,a){var o,s,l,u,c,h=(a||0)*O;if(e&&"object"==typeof e&&("[object HTMLImageElement]"===(o=e.toString())||"[object HTMLCanvasElement]"===o))return t.save(),t.translate(r,i),t.rotate(h),t.drawImage(e,-e.width/2,-e.height/2,e.width,e.height),void t.restore();if(!(isNaN(n)||n<=0)){switch(t.beginPath(),e){default:t.arc(r,i,n,0,T),t.closePath();break;case"triangle":t.moveTo(r+Math.sin(h)*n,i-Math.cos(h)*n),h+=I,t.lineTo(r+Math.sin(h)*n,i-Math.cos(h)*n),h+=I,t.lineTo(r+Math.sin(h)*n,i-Math.cos(h)*n),t.closePath();break;case"rectRounded":u=n-(c=.516*n),s=Math.cos(h+P)*u,l=Math.sin(h+P)*u,t.arc(r-s,i-l,c,h-C,h-A),t.arc(r+l,i-s,c,h-A,h),t.arc(r+s,i+l,c,h,h+A),t.arc(r-l,i+s,c,h+A,h+C),t.closePath();break;case"rect":if(!a){u=Math.SQRT1_2*n,t.rect(r-u,i-u,2*u,2*u);break}h+=P;case"rectRot":s=Math.cos(h)*n,l=Math.sin(h)*n,t.moveTo(r-s,i-l),t.lineTo(r+l,i-s),t.lineTo(r+s,i+l),t.lineTo(r-l,i+s),t.closePath();break;case"crossRot":h+=P;case"cross":s=Math.cos(h)*n,l=Math.sin(h)*n,t.moveTo(r-s,i-l),t.lineTo(r+s,i+l),t.moveTo(r+l,i-s),t.lineTo(r-l,i+s);break;case"star":s=Math.cos(h)*n,l=Math.sin(h)*n,t.moveTo(r-s,i-l),t.lineTo(r+s,i+l),t.moveTo(r+l,i-s),t.lineTo(r-l,i+s),h+=P,s=Math.cos(h)*n,l=Math.sin(h)*n,t.moveTo(r-s,i-l),t.lineTo(r+s,i+l),t.moveTo(r+l,i-s),t.lineTo(r-l,i+s);break;case"line":s=Math.cos(h)*n,l=Math.sin(h)*n,t.moveTo(r-s,i-l),t.lineTo(r+s,i+l);break;case"dash":t.moveTo(r,i),t.lineTo(r+Math.cos(h)*n,i+Math.sin(h)*n)}t.fill(),t.stroke()}},_isPointInArea:function(t,e){return t.x>e.left-1e-6&&t.x<e.right+1e-6&&t.y>e.top-1e-6&&t.y<e.bottom+1e-6},clipArea:function(t,e){t.save(),t.beginPath(),t.rect(e.left,e.top,e.right-e.left,e.bottom-e.top),t.clip()},unclipArea:function(t){t.restore()},lineTo:function(t,e,n,r){var i=n.steppedLine;if(i){if("middle"===i){var a=(e.x+n.x)/2;t.lineTo(a,r?n.y:e.y),t.lineTo(a,r?e.y:n.y)}else"after"===i&&!r||"after"!==i&&r?t.lineTo(e.x,n.y):t.lineTo(n.x,e.y);t.lineTo(n.x,n.y)}else n.tension?t.bezierCurveTo(r?e.controlPointPreviousX:e.controlPointNextX,r?e.controlPointPreviousY:e.controlPointNextY,r?n.controlPointNextX:n.controlPointPreviousX,r?n.controlPointNextY:n.controlPointPreviousY,n.x,n.y):t.lineTo(n.x,n.y)}},L=F;M.clear=F.clear,M.drawRoundedRectangle=function(t){t.beginPath(),F.roundedRect.apply(F,arguments)};var R={_set:function(t,e){return M.merge(this[t]||(this[t]={}),e)}};R._set("global",{defaultColor:"rgba(0,0,0,0.1)",defaultFontColor:"#666",defaultFontFamily:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",defaultFontSize:12,defaultFontStyle:"normal",defaultLineHeight:1.2,showLines:!0});var N=R,E=M.valueOrDefault,j={toLineHeight:function(t,e){var n=(""+t).match(/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/);if(!n||"normal"===n[1])return 1.2*e;switch(t=+n[2],n[3]){case"px":return t;case"%":t/=100}return e*t},toPadding:function(t){var e,n,r,i;return M.isObject(t)?(e=+t.top||0,n=+t.right||0,r=+t.bottom||0,i=+t.left||0):e=n=r=i=+t||0,{top:e,right:n,bottom:r,left:i,height:e+r,width:i+n}},_parseFont:function(t){var e=N.global,n=E(t.fontSize,e.defaultFontSize),r={family:E(t.fontFamily,e.defaultFontFamily),lineHeight:M.options.toLineHeight(E(t.lineHeight,e.defaultLineHeight),n),size:n,style:E(t.fontStyle,e.defaultFontStyle),weight:null,string:""};return r.string=function(t){return!t||M.isNullOrUndef(t.size)||M.isNullOrUndef(t.family)?null:(t.style?t.style+" ":"")+(t.weight?t.weight+" ":"")+t.size+"px "+t.family}(r),r},resolve:function(t,e,n,r){var i,a,o,s=!0;for(i=0,a=t.length;i<a;++i)if(void 0!==(o=t[i])&&(void 0!==e&&"function"==typeof o&&(o=o(e),s=!1),void 0!==n&&M.isArray(o)&&(o=o[n],s=!1),void 0!==o))return r&&!s&&(r.cacheable=!1),o}},z={_factorize:function(t){var e,n=[],r=Math.sqrt(t);for(e=1;e<r;e++)t%e==0&&(n.push(e),n.push(t/e));return r===(0|r)&&n.push(r),n.sort((function(t,e){return t-e})).pop(),n},log10:Math.log10||function(t){var e=Math.log(t)*Math.LOG10E,n=Math.round(e);return t===Math.pow(10,n)?n:e}},W=z;M.log10=z.log10;var Y=M,V=D,B=L,H=j,U=W,G={getRtlAdapter:function(t,e,n){return t?function(t,e){return{x:function(n){return t+t+e-n},setWidth:function(t){e=t},textAlign:function(t){return"center"===t?t:"right"===t?"left":"right"},xPlus:function(t,e){return t-e},leftForLtr:function(t,e){return t-e}}}(e,n):{x:function(t){return t},setWidth:function(t){},textAlign:function(t){return t},xPlus:function(t,e){return t+e},leftForLtr:function(t,e){return t}}},overrideTextDirection:function(t,e){var n,r;"ltr"!==e&&"rtl"!==e||(r=[(n=t.canvas.style).getPropertyValue("direction"),n.getPropertyPriority("direction")],n.setProperty("direction",e,"important"),t.prevTextDirection=r)},restoreTextDirection:function(t){var e=t.prevTextDirection;void 0!==e&&(delete t.prevTextDirection,t.canvas.style.setProperty("direction",e[0],e[1]))}};Y.easing=V,Y.canvas=B,Y.options=H,Y.math=U,Y.rtl=G;var q=function(t){Y.extend(this,t),this.initialize.apply(this,arguments)};Y.extend(q.prototype,{_type:void 0,initialize:function(){this.hidden=!1},pivot:function(){var t=this;return t._view||(t._view=Y.extend({},t._model)),t._start={},t},transition:function(t){var e=this,n=e._model,r=e._start,i=e._view;return n&&1!==t?(i||(i=e._view={}),r||(r=e._start={}),function(t,e,n,r){var i,a,o,s,l,u,c,h,d,f=Object.keys(n);for(i=0,a=f.length;i<a;++i)if(u=n[o=f[i]],e.hasOwnProperty(o)||(e[o]=u),(s=e[o])!==u&&"_"!==o[0]){if(t.hasOwnProperty(o)||(t[o]=s),(c=typeof u)==typeof(l=t[o]))if("string"===c){if((h=w(l)).valid&&(d=w(u)).valid){e[o]=d.mix(h,r).rgbString();continue}}else if(Y.isFinite(l)&&Y.isFinite(u)){e[o]=l+(u-l)*r;continue}e[o]=u}}(r,i,n,t),e):(e._view=Y.extend({},n),e._start=null,e)},tooltipPosition:function(){return{x:this._model.x,y:this._model.y}},hasValue:function(){return Y.isNumber(this._model.x)&&Y.isNumber(this._model.y)}}),q.extend=Y.inherits;var K=q,J=K.extend({chart:null,currentStep:0,numSteps:60,easing:"",render:null,onAnimationProgress:null,onAnimationComplete:null}),Z=J;Object.defineProperty(J.prototype,"animationObject",{get:function(){return this}}),Object.defineProperty(J.prototype,"chartInstance",{get:function(){return this.chart},set:function(t){this.chart=t}}),N._set("global",{animation:{duration:1e3,easing:"easeOutQuart",onProgress:Y.noop,onComplete:Y.noop}});var X={animations:[],request:null,addAnimation:function(t,e,n,r){var i,a,o=this.animations;for(e.chart=t,e.startTime=Date.now(),e.duration=n,r||(t.animating=!0),i=0,a=o.length;i<a;++i)if(o[i].chart===t)return void(o[i]=e);o.push(e),1===o.length&&this.requestAnimationFrame()},cancelAnimation:function(t){var e=Y.findIndex(this.animations,(function(e){return e.chart===t}));-1!==e&&(this.animations.splice(e,1),t.animating=!1)},requestAnimationFrame:function(){var t=this;null===t.request&&(t.request=Y.requestAnimFrame.call(window,(function(){t.request=null,t.startDigest()})))},startDigest:function(){this.advance(),this.animations.length>0&&this.requestAnimationFrame()},advance:function(){for(var t,e,n,r,i=this.animations,a=0;a<i.length;)e=(t=i[a]).chart,n=t.numSteps,r=Math.floor((Date.now()-t.startTime)/t.duration*n)+1,t.currentStep=Math.min(r,n),Y.callback(t.render,[e,t],e),Y.callback(t.onAnimationProgress,[t],e),t.currentStep>=n?(Y.callback(t.onAnimationComplete,[t],e),e.animating=!1,i.splice(a,1)):++a}},$=Y.options.resolve,Q=["push","pop","shift","splice","unshift"];function tt(t,e){var n=t._chartjs;if(n){var r=n.listeners,i=r.indexOf(e);-1!==i&&r.splice(i,1),r.length>0||(Q.forEach((function(e){delete t[e]})),delete t._chartjs)}}var et=function(t,e){this.initialize(t,e)};Y.extend(et.prototype,{datasetElementType:null,dataElementType:null,_datasetElementOptions:["backgroundColor","borderCapStyle","borderColor","borderDash","borderDashOffset","borderJoinStyle","borderWidth"],_dataElementOptions:["backgroundColor","borderColor","borderWidth","pointStyle"],initialize:function(t,e){var n=this;n.chart=t,n.index=e,n.linkScales(),n.addElements(),n._type=n.getMeta().type},updateIndex:function(t){this.index=t},linkScales:function(){var t=this.getMeta(),e=this.chart,n=e.scales,r=this.getDataset(),i=e.options.scales;null!==t.xAxisID&&t.xAxisID in n&&!r.xAxisID||(t.xAxisID=r.xAxisID||i.xAxes[0].id),null!==t.yAxisID&&t.yAxisID in n&&!r.yAxisID||(t.yAxisID=r.yAxisID||i.yAxes[0].id)},getDataset:function(){return this.chart.data.datasets[this.index]},getMeta:function(){return this.chart.getDatasetMeta(this.index)},getScaleForId:function(t){return this.chart.scales[t]},_getValueScaleId:function(){return this.getMeta().yAxisID},_getIndexScaleId:function(){return this.getMeta().xAxisID},_getValueScale:function(){return this.getScaleForId(this._getValueScaleId())},_getIndexScale:function(){return this.getScaleForId(this._getIndexScaleId())},reset:function(){this._update(!0)},destroy:function(){this._data&&tt(this._data,this)},createMetaDataset:function(){var t=this.datasetElementType;return t&&new t({_chart:this.chart,_datasetIndex:this.index})},createMetaData:function(t){var e=this.dataElementType;return e&&new e({_chart:this.chart,_datasetIndex:this.index,_index:t})},addElements:function(){var t,e,n=this.getMeta(),r=this.getDataset().data||[],i=n.data;for(t=0,e=r.length;t<e;++t)i[t]=i[t]||this.createMetaData(t);n.dataset=n.dataset||this.createMetaDataset()},addElementAndReset:function(t){var e=this.createMetaData(t);this.getMeta().data.splice(t,0,e),this.updateElement(e,t,!0)},buildOrUpdateElements:function(){var t,e,n=this,r=n.getDataset(),i=r.data||(r.data=[]);n._data!==i&&(n._data&&tt(n._data,n),i&&Object.isExtensible(i)&&(e=n,(t=i)._chartjs?t._chartjs.listeners.push(e):(Object.defineProperty(t,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[e]}}),Q.forEach((function(e){var n="onData"+e.charAt(0).toUpperCase()+e.slice(1),r=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value:function(){var e=Array.prototype.slice.call(arguments),i=r.apply(this,e);return Y.each(t._chartjs.listeners,(function(t){"function"==typeof t[n]&&t[n].apply(t,e)})),i}})})))),n._data=i),n.resyncElements()},_configure:function(){this._config=Y.merge({},[this.chart.options.datasets[this._type],this.getDataset()],{merger:function(t,e,n){"_meta"!==t&&"data"!==t&&Y._merger(t,e,n)}})},_update:function(t){this._configure(),this._cachedDataOpts=null,this.update(t)},update:Y.noop,transition:function(t){for(var e=this.getMeta(),n=e.data||[],r=n.length,i=0;i<r;++i)n[i].transition(t);e.dataset&&e.dataset.transition(t)},draw:function(){var t=this.getMeta(),e=t.data||[],n=e.length,r=0;for(t.dataset&&t.dataset.draw();r<n;++r)e[r].draw()},getStyle:function(t){var e,n=this.getMeta(),r=n.dataset;return this._configure(),r&&void 0===t?e=this._resolveDatasetElementOptions(r||{}):(t=t||0,e=this._resolveDataElementOptions(n.data[t]||{},t)),!1!==e.fill&&null!==e.fill||(e.backgroundColor=e.borderColor),e},_resolveDatasetElementOptions:function(t,e){var n,r,i,a,o=this,s=o.chart,l=o._config,u=t.custom||{},c=s.options.elements[o.datasetElementType.prototype._type]||{},h=o._datasetElementOptions,d={},f={chart:s,dataset:o.getDataset(),datasetIndex:o.index,hover:e};for(n=0,r=h.length;n<r;++n)i=h[n],a=e?"hover"+i.charAt(0).toUpperCase()+i.slice(1):i,d[i]=$([u[a],l[a],c[a]],f);return d},_resolveDataElementOptions:function(t,e){var n=this,r=t&&t.custom,i=n._cachedDataOpts;if(i&&!r)return i;var a,o,s,l,u=n.chart,c=n._config,h=u.options.elements[n.dataElementType.prototype._type]||{},d=n._dataElementOptions,f={},p={chart:u,dataIndex:e,dataset:n.getDataset(),datasetIndex:n.index},g={cacheable:!r};if(r=r||{},Y.isArray(d))for(o=0,s=d.length;o<s;++o)f[l=d[o]]=$([r[l],c[l],h[l]],p,e,g);else for(o=0,s=(a=Object.keys(d)).length;o<s;++o)f[l=a[o]]=$([r[l],c[d[l]],c[l],h[l]],p,e,g);return g.cacheable&&(n._cachedDataOpts=Object.freeze(f)),f},removeHoverStyle:function(t){Y.merge(t._model,t.$previousStyle||{}),delete t.$previousStyle},setHoverStyle:function(t){var e=this.chart.data.datasets[t._datasetIndex],n=t._index,r=t.custom||{},i=t._model,a=Y.getHoverColor;t.$previousStyle={backgroundColor:i.backgroundColor,borderColor:i.borderColor,borderWidth:i.borderWidth},i.backgroundColor=$([r.hoverBackgroundColor,e.hoverBackgroundColor,a(i.backgroundColor)],void 0,n),i.borderColor=$([r.hoverBorderColor,e.hoverBorderColor,a(i.borderColor)],void 0,n),i.borderWidth=$([r.hoverBorderWidth,e.hoverBorderWidth,i.borderWidth],void 0,n)},_removeDatasetHoverStyle:function(){var t=this.getMeta().dataset;t&&this.removeHoverStyle(t)},_setDatasetHoverStyle:function(){var t,e,n,r,i,a,o=this.getMeta().dataset,s={};if(o){for(a=o._model,i=this._resolveDatasetElementOptions(o,!0),t=0,e=(r=Object.keys(i)).length;t<e;++t)s[n=r[t]]=a[n],a[n]=i[n];o.$previousStyle=s}},resyncElements:function(){var t=this.getMeta(),e=this.getDataset().data,n=t.data.length,r=e.length;r<n?t.data.splice(r,n-r):r>n&&this.insertElements(n,r-n)},insertElements:function(t,e){for(var n=0;n<e;++n)this.addElementAndReset(t+n)},onDataPush:function(){var t=arguments.length;this.insertElements(this.getDataset().data.length-t,t)},onDataPop:function(){this.getMeta().data.pop()},onDataShift:function(){this.getMeta().data.shift()},onDataSplice:function(t,e){this.getMeta().data.splice(t,e),this.insertElements(t,arguments.length-2)},onDataUnshift:function(){this.insertElements(0,arguments.length)}}),et.extend=Y.inherits;var nt=et,rt=2*Math.PI;function it(t,e){var n=e.startAngle,r=e.endAngle,i=e.pixelMargin,a=i/e.outerRadius,o=e.x,s=e.y;t.beginPath(),t.arc(o,s,e.outerRadius,n-a,r+a),e.innerRadius>i?(a=i/e.innerRadius,t.arc(o,s,e.innerRadius-i,r+a,n-a,!0)):t.arc(o,s,i,r+Math.PI/2,n-Math.PI/2),t.closePath(),t.clip()}function at(t,e,n){var r="inner"===e.borderAlign;r?(t.lineWidth=2*e.borderWidth,t.lineJoin="round"):(t.lineWidth=e.borderWidth,t.lineJoin="bevel"),n.fullCircles&&function(t,e,n,r){var i,a=n.endAngle;for(r&&(n.endAngle=n.startAngle+rt,it(t,n),n.endAngle=a,n.endAngle===n.startAngle&&n.fullCircles&&(n.endAngle+=rt,n.fullCircles--)),t.beginPath(),t.arc(n.x,n.y,n.innerRadius,n.startAngle+rt,n.startAngle,!0),i=0;i<n.fullCircles;++i)t.stroke();for(t.beginPath(),t.arc(n.x,n.y,e.outerRadius,n.startAngle,n.startAngle+rt),i=0;i<n.fullCircles;++i)t.stroke()}(t,e,n,r),r&&it(t,n),t.beginPath(),t.arc(n.x,n.y,e.outerRadius,n.startAngle,n.endAngle),t.arc(n.x,n.y,n.innerRadius,n.endAngle,n.startAngle,!0),t.closePath(),t.stroke()}N._set("global",{elements:{arc:{backgroundColor:N.global.defaultColor,borderColor:"#fff",borderWidth:2,borderAlign:"center"}}});var ot=K.extend({_type:"arc",inLabelRange:function(t){var e=this._view;return!!e&&Math.pow(t-e.x,2)<Math.pow(e.radius+e.hoverRadius,2)},inRange:function(t,e){var n=this._view;if(n){for(var r=Y.getAngleFromPoint(n,{x:t,y:e}),i=r.angle,a=r.distance,o=n.startAngle,s=n.endAngle;s<o;)s+=rt;for(;i>s;)i-=rt;for(;i<o;)i+=rt;var l=i>=o&&i<=s,u=a>=n.innerRadius&&a<=n.outerRadius;return l&&u}return!1},getCenterPoint:function(){var t=this._view,e=(t.startAngle+t.endAngle)/2,n=(t.innerRadius+t.outerRadius)/2;return{x:t.x+Math.cos(e)*n,y:t.y+Math.sin(e)*n}},getArea:function(){var t=this._view;return Math.PI*((t.endAngle-t.startAngle)/(2*Math.PI))*(Math.pow(t.outerRadius,2)-Math.pow(t.innerRadius,2))},tooltipPosition:function(){var t=this._view,e=t.startAngle+(t.endAngle-t.startAngle)/2,n=(t.outerRadius-t.innerRadius)/2+t.innerRadius;return{x:t.x+Math.cos(e)*n,y:t.y+Math.sin(e)*n}},draw:function(){var t,e=this._chart.ctx,n=this._view,r="inner"===n.borderAlign?.33:0,i={x:n.x,y:n.y,innerRadius:n.innerRadius,outerRadius:Math.max(n.outerRadius-r,0),pixelMargin:r,startAngle:n.startAngle,endAngle:n.endAngle,fullCircles:Math.floor(n.circumference/rt)};if(e.save(),e.fillStyle=n.backgroundColor,e.strokeStyle=n.borderColor,i.fullCircles){for(i.endAngle=i.startAngle+rt,e.beginPath(),e.arc(i.x,i.y,i.outerRadius,i.startAngle,i.endAngle),e.arc(i.x,i.y,i.innerRadius,i.endAngle,i.startAngle,!0),e.closePath(),t=0;t<i.fullCircles;++t)e.fill();i.endAngle=i.startAngle+n.circumference%rt}e.beginPath(),e.arc(i.x,i.y,i.outerRadius,i.startAngle,i.endAngle),e.arc(i.x,i.y,i.innerRadius,i.endAngle,i.startAngle,!0),e.closePath(),e.fill(),n.borderWidth&&at(e,n,i),e.restore()}}),st=Y.valueOrDefault,lt=N.global.defaultColor;N._set("global",{elements:{line:{tension:.4,backgroundColor:lt,borderWidth:3,borderColor:lt,borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",capBezierPoints:!0,fill:!0}}});var ut=K.extend({_type:"line",draw:function(){var t,e,n,r=this,i=r._view,a=r._chart.ctx,o=i.spanGaps,s=r._children.slice(),l=N.global,u=l.elements.line,c=-1,h=r._loop;if(s.length){if(r._loop){for(t=0;t<s.length;++t)if(e=Y.previousItem(s,t),!s[t]._view.skip&&e._view.skip){s=s.slice(t).concat(s.slice(0,t)),h=o;break}h&&s.push(s[0])}for(a.save(),a.lineCap=i.borderCapStyle||u.borderCapStyle,a.setLineDash&&a.setLineDash(i.borderDash||u.borderDash),a.lineDashOffset=st(i.borderDashOffset,u.borderDashOffset),a.lineJoin=i.borderJoinStyle||u.borderJoinStyle,a.lineWidth=st(i.borderWidth,u.borderWidth),a.strokeStyle=i.borderColor||l.defaultColor,a.beginPath(),(n=s[0]._view).skip||(a.moveTo(n.x,n.y),c=0),t=1;t<s.length;++t)n=s[t]._view,e=-1===c?Y.previousItem(s,t):s[c],n.skip||(c!==t-1&&!o||-1===c?a.moveTo(n.x,n.y):Y.canvas.lineTo(a,e._view,n),c=t);h&&a.closePath(),a.stroke(),a.restore()}}}),ct=Y.valueOrDefault,ht=N.global.defaultColor;function dt(t){var e=this._view;return!!e&&Math.abs(t-e.x)<e.radius+e.hitRadius}N._set("global",{elements:{point:{radius:3,pointStyle:"circle",backgroundColor:ht,borderColor:ht,borderWidth:1,hitRadius:1,hoverRadius:4,hoverBorderWidth:1}}});var ft=K.extend({_type:"point",inRange:function(t,e){var n=this._view;return!!n&&Math.pow(t-n.x,2)+Math.pow(e-n.y,2)<Math.pow(n.hitRadius+n.radius,2)},inLabelRange:dt,inXRange:dt,inYRange:function(t){var e=this._view;return!!e&&Math.abs(t-e.y)<e.radius+e.hitRadius},getCenterPoint:function(){var t=this._view;return{x:t.x,y:t.y}},getArea:function(){return Math.PI*Math.pow(this._view.radius,2)},tooltipPosition:function(){var t=this._view;return{x:t.x,y:t.y,padding:t.radius+t.borderWidth}},draw:function(t){var e=this._view,n=this._chart.ctx,r=e.pointStyle,i=e.rotation,a=e.radius,o=e.x,s=e.y,l=N.global,u=l.defaultColor;e.skip||(void 0===t||Y.canvas._isPointInArea(e,t))&&(n.strokeStyle=e.borderColor||u,n.lineWidth=ct(e.borderWidth,l.elements.point.borderWidth),n.fillStyle=e.backgroundColor||u,Y.canvas.drawPoint(n,r,a,o,s,i))}}),pt=N.global.defaultColor;function gt(t){return t&&void 0!==t.width}function mt(t){var e,n,r,i,a;return gt(t)?(a=t.width/2,e=t.x-a,n=t.x+a,r=Math.min(t.y,t.base),i=Math.max(t.y,t.base)):(a=t.height/2,e=Math.min(t.x,t.base),n=Math.max(t.x,t.base),r=t.y-a,i=t.y+a),{left:e,top:r,right:n,bottom:i}}function vt(t,e,n){return t===e?n:t===n?e:t}function yt(t,e,n){var r,i,a,o,s=t.borderWidth,l=function(t){var e=t.borderSkipped,n={};return e?(t.horizontal?t.base>t.x&&(e=vt(e,"left","right")):t.base<t.y&&(e=vt(e,"bottom","top")),n[e]=!0,n):n}(t);return Y.isObject(s)?(r=+s.top||0,i=+s.right||0,a=+s.bottom||0,o=+s.left||0):r=i=a=o=+s||0,{t:l.top||r<0?0:r>n?n:r,r:l.right||i<0?0:i>e?e:i,b:l.bottom||a<0?0:a>n?n:a,l:l.left||o<0?0:o>e?e:o}}function bt(t,e,n){var r=null===e,i=null===n,a=!(!t||r&&i)&&mt(t);return a&&(r||e>=a.left&&e<=a.right)&&(i||n>=a.top&&n<=a.bottom)}N._set("global",{elements:{rectangle:{backgroundColor:pt,borderColor:pt,borderSkipped:"bottom",borderWidth:0}}});var xt=K.extend({_type:"rectangle",draw:function(){var t=this._chart.ctx,e=this._view,n=function(t){var e=mt(t),n=e.right-e.left,r=e.bottom-e.top,i=yt(t,n/2,r/2);return{outer:{x:e.left,y:e.top,w:n,h:r},inner:{x:e.left+i.l,y:e.top+i.t,w:n-i.l-i.r,h:r-i.t-i.b}}}(e),r=n.outer,i=n.inner;t.fillStyle=e.backgroundColor,t.fillRect(r.x,r.y,r.w,r.h),r.w===i.w&&r.h===i.h||(t.save(),t.beginPath(),t.rect(r.x,r.y,r.w,r.h),t.clip(),t.fillStyle=e.borderColor,t.rect(i.x,i.y,i.w,i.h),t.fill("evenodd"),t.restore())},height:function(){var t=this._view;return t.base-t.y},inRange:function(t,e){return bt(this._view,t,e)},inLabelRange:function(t,e){var n=this._view;return gt(n)?bt(n,t,null):bt(n,null,e)},inXRange:function(t){return bt(this._view,t,null)},inYRange:function(t){return bt(this._view,null,t)},getCenterPoint:function(){var t,e,n=this._view;return gt(n)?(t=n.x,e=(n.y+n.base)/2):(t=(n.x+n.base)/2,e=n.y),{x:t,y:e}},getArea:function(){var t=this._view;return gt(t)?t.width*Math.abs(t.y-t.base):t.height*Math.abs(t.x-t.base)},tooltipPosition:function(){var t=this._view;return{x:t.x,y:t.y}}}),_t={},wt=ot,kt=ut,Mt=ft,St=xt;_t.Arc=wt,_t.Line=kt,_t.Point=Mt,_t.Rectangle=St;var Dt=Y._deprecated,Ct=Y.valueOrDefault;function Ot(t,e,n){var r,i,a=n.barThickness,o=e.stackCount,s=e.pixels[t],l=Y.isNullOrUndef(a)?function(t,e){var n,r,i,a,o=t._length;for(i=1,a=e.length;i<a;++i)o=Math.min(o,Math.abs(e[i]-e[i-1]));for(i=0,a=t.getTicks().length;i<a;++i)r=t.getPixelForTick(i),o=i>0?Math.min(o,Math.abs(r-n)):o,n=r;return o}(e.scale,e.pixels):-1;return Y.isNullOrUndef(a)?(r=l*n.categoryPercentage,i=n.barPercentage):(r=a*o,i=1),{chunk:r/o,ratio:i,start:s-r/2}}N._set("bar",{hover:{mode:"label"},scales:{xAxes:[{type:"category",offset:!0,gridLines:{offsetGridLines:!0}}],yAxes:[{type:"linear"}]}}),N._set("global",{datasets:{bar:{categoryPercentage:.8,barPercentage:.9}}});var Tt=nt.extend({dataElementType:_t.Rectangle,_dataElementOptions:["backgroundColor","borderColor","borderSkipped","borderWidth","barPercentage","barThickness","categoryPercentage","maxBarThickness","minBarLength"],initialize:function(){var t,e,n=this;nt.prototype.initialize.apply(n,arguments),(t=n.getMeta()).stack=n.getDataset().stack,t.bar=!0,e=n._getIndexScale().options,Dt("bar chart",e.barPercentage,"scales.[x/y]Axes.barPercentage","dataset.barPercentage"),Dt("bar chart",e.barThickness,"scales.[x/y]Axes.barThickness","dataset.barThickness"),Dt("bar chart",e.categoryPercentage,"scales.[x/y]Axes.categoryPercentage","dataset.categoryPercentage"),Dt("bar chart",n._getValueScale().options.minBarLength,"scales.[x/y]Axes.minBarLength","dataset.minBarLength"),Dt("bar chart",e.maxBarThickness,"scales.[x/y]Axes.maxBarThickness","dataset.maxBarThickness")},update:function(t){var e,n,r=this.getMeta().data;for(this._ruler=this.getRuler(),e=0,n=r.length;e<n;++e)this.updateElement(r[e],e,t)},updateElement:function(t,e,n){var r=this,i=r.getMeta(),a=r.getDataset(),o=r._resolveDataElementOptions(t,e);t._xScale=r.getScaleForId(i.xAxisID),t._yScale=r.getScaleForId(i.yAxisID),t._datasetIndex=r.index,t._index=e,t._model={backgroundColor:o.backgroundColor,borderColor:o.borderColor,borderSkipped:o.borderSkipped,borderWidth:o.borderWidth,datasetLabel:a.label,label:r.chart.data.labels[e]},Y.isArray(a.data[e])&&(t._model.borderSkipped=null),r._updateElementGeometry(t,e,n,o),t.pivot()},_updateElementGeometry:function(t,e,n,r){var i=this,a=t._model,o=i._getValueScale(),s=o.getBasePixel(),l=o.isHorizontal(),u=i._ruler||i.getRuler(),c=i.calculateBarValuePixels(i.index,e,r),h=i.calculateBarIndexPixels(i.index,e,u,r);a.horizontal=l,a.base=n?s:c.base,a.x=l?n?s:c.head:h.center,a.y=l?h.center:n?s:c.head,a.height=l?h.size:void 0,a.width=l?void 0:h.size},_getStacks:function(t){var e,n,r=this._getIndexScale(),i=r._getMatchingVisibleMetas(this._type),a=r.options.stacked,o=i.length,s=[];for(e=0;e<o&&(n=i[e],(!1===a||-1===s.indexOf(n.stack)||void 0===a&&void 0===n.stack)&&s.push(n.stack),n.index!==t);++e);return s},getStackCount:function(){return this._getStacks().length},getStackIndex:function(t,e){var n=this._getStacks(t),r=void 0!==e?n.indexOf(e):-1;return-1===r?n.length-1:r},getRuler:function(){var t,e,n=this._getIndexScale(),r=[];for(t=0,e=this.getMeta().data.length;t<e;++t)r.push(n.getPixelForValue(null,t,this.index));return{pixels:r,start:n._startPixel,end:n._endPixel,stackCount:this.getStackCount(),scale:n}},calculateBarValuePixels:function(t,e,n){var r,i,a,o,s,l,u,c=this.chart,h=this._getValueScale(),d=h.isHorizontal(),f=c.data.datasets,p=h._getMatchingVisibleMetas(this._type),g=h._parseValue(f[t].data[e]),m=n.minBarLength,v=h.options.stacked,y=this.getMeta().stack,b=void 0===g.start?0:g.max>=0&&g.min>=0?g.min:g.max,x=void 0===g.start?g.end:g.max>=0&&g.min>=0?g.max-g.min:g.min-g.max,_=p.length;if(v||void 0===v&&void 0!==y)for(r=0;r<_&&(i=p[r]).index!==t;++r)i.stack===y&&(a=void 0===(u=h._parseValue(f[i.index].data[e])).start?u.end:u.min>=0&&u.max>=0?u.max:u.min,(g.min<0&&a<0||g.max>=0&&a>0)&&(b+=a));return o=h.getPixelForValue(b),l=(s=h.getPixelForValue(b+x))-o,void 0!==m&&Math.abs(l)<m&&(l=m,s=x>=0&&!d||x<0&&d?o-m:o+m),{size:l,base:o,head:s,center:s+l/2}},calculateBarIndexPixels:function(t,e,n,r){var i="flex"===r.barThickness?function(t,e,n){var r,i=e.pixels,a=i[t],o=t>0?i[t-1]:null,s=t<i.length-1?i[t+1]:null,l=n.categoryPercentage;return null===o&&(o=a-(null===s?e.end-e.start:s-a)),null===s&&(s=a+a-o),r=a-(a-Math.min(o,s))/2*l,{chunk:Math.abs(s-o)/2*l/e.stackCount,ratio:n.barPercentage,start:r}}(e,n,r):Ot(e,n,r),a=this.getStackIndex(t,this.getMeta().stack),o=i.start+i.chunk*a+i.chunk/2,s=Math.min(Ct(r.maxBarThickness,1/0),i.chunk*i.ratio);return{base:o-s/2,head:o+s/2,center:o,size:s}},draw:function(){var t=this.chart,e=this._getValueScale(),n=this.getMeta().data,r=this.getDataset(),i=n.length,a=0;for(Y.canvas.clipArea(t.ctx,t.chartArea);a<i;++a){var o=e._parseValue(r.data[a]);isNaN(o.min)||isNaN(o.max)||n[a].draw()}Y.canvas.unclipArea(t.ctx)},_resolveDataElementOptions:function(){var t=this,e=Y.extend({},nt.prototype._resolveDataElementOptions.apply(t,arguments)),n=t._getIndexScale().options,r=t._getValueScale().options;return e.barPercentage=Ct(n.barPercentage,e.barPercentage),e.barThickness=Ct(n.barThickness,e.barThickness),e.categoryPercentage=Ct(n.categoryPercentage,e.categoryPercentage),e.maxBarThickness=Ct(n.maxBarThickness,e.maxBarThickness),e.minBarLength=Ct(r.minBarLength,e.minBarLength),e}}),At=Y.valueOrDefault,Pt=Y.options.resolve;N._set("bubble",{hover:{mode:"single"},scales:{xAxes:[{type:"linear",position:"bottom",id:"x-axis-0"}],yAxes:[{type:"linear",position:"left",id:"y-axis-0"}]},tooltips:{callbacks:{title:function(){return""},label:function(t,e){var n=e.datasets[t.datasetIndex].label||"",r=e.datasets[t.datasetIndex].data[t.index];return n+": ("+t.xLabel+", "+t.yLabel+", "+r.r+")"}}}});var It=nt.extend({dataElementType:_t.Point,_dataElementOptions:["backgroundColor","borderColor","borderWidth","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth","hoverRadius","hitRadius","pointStyle","rotation"],update:function(t){var e=this,n=e.getMeta().data;Y.each(n,(function(n,r){e.updateElement(n,r,t)}))},updateElement:function(t,e,n){var r=this,i=r.getMeta(),a=t.custom||{},o=r.getScaleForId(i.xAxisID),s=r.getScaleForId(i.yAxisID),l=r._resolveDataElementOptions(t,e),u=r.getDataset().data[e],c=r.index,h=n?o.getPixelForDecimal(.5):o.getPixelForValue("object"==typeof u?u:NaN,e,c),d=n?s.getBasePixel():s.getPixelForValue(u,e,c);t._xScale=o,t._yScale=s,t._options=l,t._datasetIndex=c,t._index=e,t._model={backgroundColor:l.backgroundColor,borderColor:l.borderColor,borderWidth:l.borderWidth,hitRadius:l.hitRadius,pointStyle:l.pointStyle,rotation:l.rotation,radius:n?0:l.radius,skip:a.skip||isNaN(h)||isNaN(d),x:h,y:d},t.pivot()},setHoverStyle:function(t){var e=t._model,n=t._options,r=Y.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth,radius:e.radius},e.backgroundColor=At(n.hoverBackgroundColor,r(n.backgroundColor)),e.borderColor=At(n.hoverBorderColor,r(n.borderColor)),e.borderWidth=At(n.hoverBorderWidth,n.borderWidth),e.radius=n.radius+n.hoverRadius},_resolveDataElementOptions:function(t,e){var n=this,r=n.chart,i=n.getDataset(),a=t.custom||{},o=i.data[e]||{},s=nt.prototype._resolveDataElementOptions.apply(n,arguments),l={chart:r,dataIndex:e,dataset:i,datasetIndex:n.index};return n._cachedDataOpts===s&&(s=Y.extend({},s)),s.radius=Pt([a.radius,o.r,n._config.radius,r.options.elements.point.radius],l,e),s}}),Ft=Y.valueOrDefault,Lt=Math.PI,Rt=2*Lt,Nt=Lt/2;N._set("doughnut",{animation:{animateRotate:!0,animateScale:!1},hover:{mode:"single"},legendCallback:function(t){var e,n,r,i=document.createElement("ul"),a=t.data,o=a.datasets,s=a.labels;if(i.setAttribute("class",t.id+"-legend"),o.length)for(e=0,n=o[0].data.length;e<n;++e)(r=i.appendChild(document.createElement("li"))).appendChild(document.createElement("span")).style.backgroundColor=o[0].backgroundColor[e],s[e]&&r.appendChild(document.createTextNode(s[e]));return i.outerHTML},legend:{labels:{generateLabels:function(t){var e=t.data;return e.labels.length&&e.datasets.length?e.labels.map((function(n,r){var i=t.getDatasetMeta(0),a=i.controller.getStyle(r);return{text:n,fillStyle:a.backgroundColor,strokeStyle:a.borderColor,lineWidth:a.borderWidth,hidden:isNaN(e.datasets[0].data[r])||i.data[r].hidden,index:r}})):[]}},onClick:function(t,e){var n,r,i,a=e.index,o=this.chart;for(n=0,r=(o.data.datasets||[]).length;n<r;++n)(i=o.getDatasetMeta(n)).data[a]&&(i.data[a].hidden=!i.data[a].hidden);o.update()}},cutoutPercentage:50,rotation:-Nt,circumference:Rt,tooltips:{callbacks:{title:function(){return""},label:function(t,e){var n=e.labels[t.index],r=": "+e.datasets[t.datasetIndex].data[t.index];return Y.isArray(n)?(n=n.slice())[0]+=r:n+=r,n}}}});var Et=nt.extend({dataElementType:_t.Arc,linkScales:Y.noop,_dataElementOptions:["backgroundColor","borderColor","borderWidth","borderAlign","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth"],getRingIndex:function(t){for(var e=0,n=0;n<t;++n)this.chart.isDatasetVisible(n)&&++e;return e},update:function(t){var e,n,r,i,a=this,o=a.chart,s=o.chartArea,l=o.options,u=1,c=1,h=0,d=0,f=a.getMeta(),p=f.data,g=l.cutoutPercentage/100||0,m=l.circumference,v=a._getRingWeight(a.index);if(m<Rt){var y=l.rotation%Rt,b=(y+=y>=Lt?-Rt:y<-Lt?Rt:0)+m,x=Math.cos(y),_=Math.sin(y),w=Math.cos(b),k=Math.sin(b),M=y<=0&&b>=0||b>=Rt,S=y<=Nt&&b>=Nt||b>=Rt+Nt,D=y<=-Nt&&b>=-Nt||b>=Lt+Nt,C=y===-Lt||b>=Lt?-1:Math.min(x,x*g,w,w*g),O=D?-1:Math.min(_,_*g,k,k*g),T=M?1:Math.max(x,x*g,w,w*g),A=S?1:Math.max(_,_*g,k,k*g);u=(T-C)/2,c=(A-O)/2,h=-(T+C)/2,d=-(A+O)/2}for(r=0,i=p.length;r<i;++r)p[r]._options=a._resolveDataElementOptions(p[r],r);for(o.borderWidth=a.getMaxBorderWidth(),e=(s.right-s.left-o.borderWidth)/u,n=(s.bottom-s.top-o.borderWidth)/c,o.outerRadius=Math.max(Math.min(e,n)/2,0),o.innerRadius=Math.max(o.outerRadius*g,0),o.radiusLength=(o.outerRadius-o.innerRadius)/(a._getVisibleDatasetWeightTotal()||1),o.offsetX=h*o.outerRadius,o.offsetY=d*o.outerRadius,f.total=a.calculateTotal(),a.outerRadius=o.outerRadius-o.radiusLength*a._getRingWeightOffset(a.index),a.innerRadius=Math.max(a.outerRadius-o.radiusLength*v,0),r=0,i=p.length;r<i;++r)a.updateElement(p[r],r,t)},updateElement:function(t,e,n){var r=this,i=r.chart,a=i.chartArea,o=i.options,s=o.animation,l=(a.left+a.right)/2,u=(a.top+a.bottom)/2,c=o.rotation,h=o.rotation,d=r.getDataset(),f=n&&s.animateRotate?0:t.hidden?0:r.calculateCircumference(d.data[e])*(o.circumference/Rt),p=n&&s.animateScale?0:r.innerRadius,g=n&&s.animateScale?0:r.outerRadius,m=t._options||{};Y.extend(t,{_datasetIndex:r.index,_index:e,_model:{backgroundColor:m.backgroundColor,borderColor:m.borderColor,borderWidth:m.borderWidth,borderAlign:m.borderAlign,x:l+i.offsetX,y:u+i.offsetY,startAngle:c,endAngle:h,circumference:f,outerRadius:g,innerRadius:p,label:Y.valueAtIndexOrDefault(d.label,e,i.data.labels[e])}});var v=t._model;n&&s.animateRotate||(v.startAngle=0===e?o.rotation:r.getMeta().data[e-1]._model.endAngle,v.endAngle=v.startAngle+v.circumference),t.pivot()},calculateTotal:function(){var t,e=this.getDataset(),n=this.getMeta(),r=0;return Y.each(n.data,(function(n,i){t=e.data[i],isNaN(t)||n.hidden||(r+=Math.abs(t))})),r},calculateCircumference:function(t){var e=this.getMeta().total;return e>0&&!isNaN(t)?Rt*(Math.abs(t)/e):0},getMaxBorderWidth:function(t){var e,n,r,i,a,o,s,l,u=0,c=this.chart;if(!t)for(e=0,n=c.data.datasets.length;e<n;++e)if(c.isDatasetVisible(e)){t=(r=c.getDatasetMeta(e)).data,e!==this.index&&(a=r.controller);break}if(!t)return 0;for(e=0,n=t.length;e<n;++e)i=t[e],a?(a._configure(),o=a._resolveDataElementOptions(i,e)):o=i._options,"inner"!==o.borderAlign&&(s=o.borderWidth,u=(l=o.hoverBorderWidth)>(u=s>u?s:u)?l:u);return u},setHoverStyle:function(t){var e=t._model,n=t._options,r=Y.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth},e.backgroundColor=Ft(n.hoverBackgroundColor,r(n.backgroundColor)),e.borderColor=Ft(n.hoverBorderColor,r(n.borderColor)),e.borderWidth=Ft(n.hoverBorderWidth,n.borderWidth)},_getRingWeightOffset:function(t){for(var e=0,n=0;n<t;++n)this.chart.isDatasetVisible(n)&&(e+=this._getRingWeight(n));return e},_getRingWeight:function(t){return Math.max(Ft(this.chart.data.datasets[t].weight,1),0)},_getVisibleDatasetWeightTotal:function(){return this._getRingWeightOffset(this.chart.data.datasets.length)}});N._set("horizontalBar",{hover:{mode:"index",axis:"y"},scales:{xAxes:[{type:"linear",position:"bottom"}],yAxes:[{type:"category",position:"left",offset:!0,gridLines:{offsetGridLines:!0}}]},elements:{rectangle:{borderSkipped:"left"}},tooltips:{mode:"index",axis:"y"}}),N._set("global",{datasets:{horizontalBar:{categoryPercentage:.8,barPercentage:.9}}});var jt=Tt.extend({_getValueScaleId:function(){return this.getMeta().xAxisID},_getIndexScaleId:function(){return this.getMeta().yAxisID}}),zt=Y.valueOrDefault,Wt=Y.options.resolve,Yt=Y.canvas._isPointInArea;function Vt(t,e){var n=t&&t.options.ticks||{},r=n.reverse,i=void 0===n.min?e:0,a=void 0===n.max?e:0;return{start:r?a:i,end:r?i:a}}function Bt(t,e,n){var r=n/2,i=Vt(t,r),a=Vt(e,r);return{top:a.end,right:i.end,bottom:a.start,left:i.start}}function Ht(t){var e,n,r,i;return Y.isObject(t)?(e=t.top,n=t.right,r=t.bottom,i=t.left):e=n=r=i=t,{top:e,right:n,bottom:r,left:i}}N._set("line",{showLines:!0,spanGaps:!1,hover:{mode:"label"},scales:{xAxes:[{type:"category",id:"x-axis-0"}],yAxes:[{type:"linear",id:"y-axis-0"}]}});var Ut=nt.extend({datasetElementType:_t.Line,dataElementType:_t.Point,_datasetElementOptions:["backgroundColor","borderCapStyle","borderColor","borderDash","borderDashOffset","borderJoinStyle","borderWidth","cubicInterpolationMode","fill"],_dataElementOptions:{backgroundColor:"pointBackgroundColor",borderColor:"pointBorderColor",borderWidth:"pointBorderWidth",hitRadius:"pointHitRadius",hoverBackgroundColor:"pointHoverBackgroundColor",hoverBorderColor:"pointHoverBorderColor",hoverBorderWidth:"pointHoverBorderWidth",hoverRadius:"pointHoverRadius",pointStyle:"pointStyle",radius:"pointRadius",rotation:"pointRotation"},update:function(t){var e,n,r=this,i=r.getMeta(),a=i.dataset,o=i.data||[],s=r.chart.options,l=r._config,u=r._showLine=zt(l.showLine,s.showLines);for(r._xScale=r.getScaleForId(i.xAxisID),r._yScale=r.getScaleForId(i.yAxisID),u&&(void 0!==l.tension&&void 0===l.lineTension&&(l.lineTension=l.tension),a._scale=r._yScale,a._datasetIndex=r.index,a._children=o,a._model=r._resolveDatasetElementOptions(a),a.pivot()),e=0,n=o.length;e<n;++e)r.updateElement(o[e],e,t);for(u&&0!==a._model.tension&&r.updateBezierControlPoints(),e=0,n=o.length;e<n;++e)o[e].pivot()},updateElement:function(t,e,n){var r,i,a=this,o=a.getMeta(),s=t.custom||{},l=a.getDataset(),u=a.index,c=l.data[e],h=a._xScale,d=a._yScale,f=o.dataset._model,p=a._resolveDataElementOptions(t,e);r=h.getPixelForValue("object"==typeof c?c:NaN,e,u),i=n?d.getBasePixel():a.calculatePointY(c,e,u),t._xScale=h,t._yScale=d,t._options=p,t._datasetIndex=u,t._index=e,t._model={x:r,y:i,skip:s.skip||isNaN(r)||isNaN(i),radius:p.radius,pointStyle:p.pointStyle,rotation:p.rotation,backgroundColor:p.backgroundColor,borderColor:p.borderColor,borderWidth:p.borderWidth,tension:zt(s.tension,f?f.tension:0),steppedLine:!!f&&f.steppedLine,hitRadius:p.hitRadius}},_resolveDatasetElementOptions:function(t){var e=this,n=e._config,r=t.custom||{},i=e.chart.options,a=i.elements.line,o=nt.prototype._resolveDatasetElementOptions.apply(e,arguments);return o.spanGaps=zt(n.spanGaps,i.spanGaps),o.tension=zt(n.lineTension,a.tension),o.steppedLine=Wt([r.steppedLine,n.steppedLine,a.stepped]),o.clip=Ht(zt(n.clip,Bt(e._xScale,e._yScale,o.borderWidth))),o},calculatePointY:function(t,e,n){var r,i,a,o,s,l,u,c=this.chart,h=this._yScale,d=0,f=0;if(h.options.stacked){for(s=+h.getRightValue(t),u=(l=c._getSortedVisibleDatasetMetas()).length,r=0;r<u&&(a=l[r]).index!==n;++r)i=c.data.datasets[a.index],"line"===a.type&&a.yAxisID===h.id&&((o=+h.getRightValue(i.data[e]))<0?f+=o||0:d+=o||0);return s<0?h.getPixelForValue(f+s):h.getPixelForValue(d+s)}return h.getPixelForValue(t)},updateBezierControlPoints:function(){var t,e,n,r,i=this.chart,a=this.getMeta(),o=a.dataset._model,s=i.chartArea,l=a.data||[];function u(t,e,n){return Math.max(Math.min(t,n),e)}if(o.spanGaps&&(l=l.filter((function(t){return!t._model.skip}))),"monotone"===o.cubicInterpolationMode)Y.splineCurveMonotone(l);else for(t=0,e=l.length;t<e;++t)n=l[t]._model,r=Y.splineCurve(Y.previousItem(l,t)._model,n,Y.nextItem(l,t)._model,o.tension),n.controlPointPreviousX=r.previous.x,n.controlPointPreviousY=r.previous.y,n.controlPointNextX=r.next.x,n.controlPointNextY=r.next.y;if(i.options.elements.line.capBezierPoints)for(t=0,e=l.length;t<e;++t)n=l[t]._model,Yt(n,s)&&(t>0&&Yt(l[t-1]._model,s)&&(n.controlPointPreviousX=u(n.controlPointPreviousX,s.left,s.right),n.controlPointPreviousY=u(n.controlPointPreviousY,s.top,s.bottom)),t<l.length-1&&Yt(l[t+1]._model,s)&&(n.controlPointNextX=u(n.controlPointNextX,s.left,s.right),n.controlPointNextY=u(n.controlPointNextY,s.top,s.bottom)))},draw:function(){var t,e=this.chart,n=this.getMeta(),r=n.data||[],i=e.chartArea,a=e.canvas,o=0,s=r.length;for(this._showLine&&(t=n.dataset._model.clip,Y.canvas.clipArea(e.ctx,{left:!1===t.left?0:i.left-t.left,right:!1===t.right?a.width:i.right+t.right,top:!1===t.top?0:i.top-t.top,bottom:!1===t.bottom?a.height:i.bottom+t.bottom}),n.dataset.draw(),Y.canvas.unclipArea(e.ctx));o<s;++o)r[o].draw(i)},setHoverStyle:function(t){var e=t._model,n=t._options,r=Y.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth,radius:e.radius},e.backgroundColor=zt(n.hoverBackgroundColor,r(n.backgroundColor)),e.borderColor=zt(n.hoverBorderColor,r(n.borderColor)),e.borderWidth=zt(n.hoverBorderWidth,n.borderWidth),e.radius=zt(n.hoverRadius,n.radius)}}),Gt=Y.options.resolve;N._set("polarArea",{scale:{type:"radialLinear",angleLines:{display:!1},gridLines:{circular:!0},pointLabels:{display:!1},ticks:{beginAtZero:!0}},animation:{animateRotate:!0,animateScale:!0},startAngle:-.5*Math.PI,legendCallback:function(t){var e,n,r,i=document.createElement("ul"),a=t.data,o=a.datasets,s=a.labels;if(i.setAttribute("class",t.id+"-legend"),o.length)for(e=0,n=o[0].data.length;e<n;++e)(r=i.appendChild(document.createElement("li"))).appendChild(document.createElement("span")).style.backgroundColor=o[0].backgroundColor[e],s[e]&&r.appendChild(document.createTextNode(s[e]));return i.outerHTML},legend:{labels:{generateLabels:function(t){var e=t.data;return e.labels.length&&e.datasets.length?e.labels.map((function(n,r){var i=t.getDatasetMeta(0),a=i.controller.getStyle(r);return{text:n,fillStyle:a.backgroundColor,strokeStyle:a.borderColor,lineWidth:a.borderWidth,hidden:isNaN(e.datasets[0].data[r])||i.data[r].hidden,index:r}})):[]}},onClick:function(t,e){var n,r,i,a=e.index,o=this.chart;for(n=0,r=(o.data.datasets||[]).length;n<r;++n)(i=o.getDatasetMeta(n)).data[a].hidden=!i.data[a].hidden;o.update()}},tooltips:{callbacks:{title:function(){return""},label:function(t,e){return e.labels[t.index]+": "+t.yLabel}}}});var qt=nt.extend({dataElementType:_t.Arc,linkScales:Y.noop,_dataElementOptions:["backgroundColor","borderColor","borderWidth","borderAlign","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth"],_getIndexScaleId:function(){return this.chart.scale.id},_getValueScaleId:function(){return this.chart.scale.id},update:function(t){var e,n,r,i=this,a=i.getDataset(),o=i.getMeta(),s=i.chart.options.startAngle||0,l=i._starts=[],u=i._angles=[],c=o.data;for(i._updateRadius(),o.count=i.countVisibleElements(),e=0,n=a.data.length;e<n;e++)l[e]=s,r=i._computeAngle(e),u[e]=r,s+=r;for(e=0,n=c.length;e<n;++e)c[e]._options=i._resolveDataElementOptions(c[e],e),i.updateElement(c[e],e,t)},_updateRadius:function(){var t=this,e=t.chart,n=e.chartArea,r=e.options,i=Math.min(n.right-n.left,n.bottom-n.top);e.outerRadius=Math.max(i/2,0),e.innerRadius=Math.max(r.cutoutPercentage?e.outerRadius/100*r.cutoutPercentage:1,0),e.radiusLength=(e.outerRadius-e.innerRadius)/e.getVisibleDatasetCount(),t.outerRadius=e.outerRadius-e.radiusLength*t.index,t.innerRadius=t.outerRadius-e.radiusLength},updateElement:function(t,e,n){var r=this,i=r.chart,a=r.getDataset(),o=i.options,s=o.animation,l=i.scale,u=i.data.labels,c=l.xCenter,h=l.yCenter,d=o.startAngle,f=t.hidden?0:l.getDistanceFromCenterForValue(a.data[e]),p=r._starts[e],g=p+(t.hidden?0:r._angles[e]),m=s.animateScale?0:l.getDistanceFromCenterForValue(a.data[e]),v=t._options||{};Y.extend(t,{_datasetIndex:r.index,_index:e,_scale:l,_model:{backgroundColor:v.backgroundColor,borderColor:v.borderColor,borderWidth:v.borderWidth,borderAlign:v.borderAlign,x:c,y:h,innerRadius:0,outerRadius:n?m:f,startAngle:n&&s.animateRotate?d:p,endAngle:n&&s.animateRotate?d:g,label:Y.valueAtIndexOrDefault(u,e,u[e])}}),t.pivot()},countVisibleElements:function(){var t=this.getDataset(),e=this.getMeta(),n=0;return Y.each(e.data,(function(e,r){isNaN(t.data[r])||e.hidden||n++})),n},setHoverStyle:function(t){var e=t._model,n=t._options,r=Y.getHoverColor,i=Y.valueOrDefault;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth},e.backgroundColor=i(n.hoverBackgroundColor,r(n.backgroundColor)),e.borderColor=i(n.hoverBorderColor,r(n.borderColor)),e.borderWidth=i(n.hoverBorderWidth,n.borderWidth)},_computeAngle:function(t){var e=this,n=this.getMeta().count,r=e.getDataset(),i=e.getMeta();if(isNaN(r.data[t])||i.data[t].hidden)return 0;var a={chart:e.chart,dataIndex:t,dataset:r,datasetIndex:e.index};return Gt([e.chart.options.elements.arc.angle,2*Math.PI/n],a,t)}});N._set("pie",Y.clone(N.doughnut)),N._set("pie",{cutoutPercentage:0});var Kt=Et,Jt=Y.valueOrDefault;N._set("radar",{spanGaps:!1,scale:{type:"radialLinear"},elements:{line:{fill:"start",tension:0}}});var Zt=nt.extend({datasetElementType:_t.Line,dataElementType:_t.Point,linkScales:Y.noop,_datasetElementOptions:["backgroundColor","borderWidth","borderColor","borderCapStyle","borderDash","borderDashOffset","borderJoinStyle","fill"],_dataElementOptions:{backgroundColor:"pointBackgroundColor",borderColor:"pointBorderColor",borderWidth:"pointBorderWidth",hitRadius:"pointHitRadius",hoverBackgroundColor:"pointHoverBackgroundColor",hoverBorderColor:"pointHoverBorderColor",hoverBorderWidth:"pointHoverBorderWidth",hoverRadius:"pointHoverRadius",pointStyle:"pointStyle",radius:"pointRadius",rotation:"pointRotation"},_getIndexScaleId:function(){return this.chart.scale.id},_getValueScaleId:function(){return this.chart.scale.id},update:function(t){var e,n,r=this,i=r.getMeta(),a=i.dataset,o=i.data||[],s=r.chart.scale,l=r._config;for(void 0!==l.tension&&void 0===l.lineTension&&(l.lineTension=l.tension),a._scale=s,a._datasetIndex=r.index,a._children=o,a._loop=!0,a._model=r._resolveDatasetElementOptions(a),a.pivot(),e=0,n=o.length;e<n;++e)r.updateElement(o[e],e,t);for(r.updateBezierControlPoints(),e=0,n=o.length;e<n;++e)o[e].pivot()},updateElement:function(t,e,n){var r=this,i=t.custom||{},a=r.getDataset(),o=r.chart.scale,s=o.getPointPositionForValue(e,a.data[e]),l=r._resolveDataElementOptions(t,e),u=r.getMeta().dataset._model,c=n?o.xCenter:s.x,h=n?o.yCenter:s.y;t._scale=o,t._options=l,t._datasetIndex=r.index,t._index=e,t._model={x:c,y:h,skip:i.skip||isNaN(c)||isNaN(h),radius:l.radius,pointStyle:l.pointStyle,rotation:l.rotation,backgroundColor:l.backgroundColor,borderColor:l.borderColor,borderWidth:l.borderWidth,tension:Jt(i.tension,u?u.tension:0),hitRadius:l.hitRadius}},_resolveDatasetElementOptions:function(){var t=this,e=t._config,n=t.chart.options,r=nt.prototype._resolveDatasetElementOptions.apply(t,arguments);return r.spanGaps=Jt(e.spanGaps,n.spanGaps),r.tension=Jt(e.lineTension,n.elements.line.tension),r},updateBezierControlPoints:function(){var t,e,n,r,i=this.getMeta(),a=this.chart.chartArea,o=i.data||[];function s(t,e,n){return Math.max(Math.min(t,n),e)}for(i.dataset._model.spanGaps&&(o=o.filter((function(t){return!t._model.skip}))),t=0,e=o.length;t<e;++t)n=o[t]._model,r=Y.splineCurve(Y.previousItem(o,t,!0)._model,n,Y.nextItem(o,t,!0)._model,n.tension),n.controlPointPreviousX=s(r.previous.x,a.left,a.right),n.controlPointPreviousY=s(r.previous.y,a.top,a.bottom),n.controlPointNextX=s(r.next.x,a.left,a.right),n.controlPointNextY=s(r.next.y,a.top,a.bottom)},setHoverStyle:function(t){var e=t._model,n=t._options,r=Y.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth,radius:e.radius},e.backgroundColor=Jt(n.hoverBackgroundColor,r(n.backgroundColor)),e.borderColor=Jt(n.hoverBorderColor,r(n.borderColor)),e.borderWidth=Jt(n.hoverBorderWidth,n.borderWidth),e.radius=Jt(n.hoverRadius,n.radius)}});N._set("scatter",{hover:{mode:"single"},scales:{xAxes:[{id:"x-axis-1",type:"linear",position:"bottom"}],yAxes:[{id:"y-axis-1",type:"linear",position:"left"}]},tooltips:{callbacks:{title:function(){return""},label:function(t){return"("+t.xLabel+", "+t.yLabel+")"}}}}),N._set("global",{datasets:{scatter:{showLine:!1}}});var Xt={bar:Tt,bubble:It,doughnut:Et,horizontalBar:jt,line:Ut,polarArea:qt,pie:Kt,radar:Zt,scatter:Ut};function $t(t,e){return t.native?{x:t.x,y:t.y}:Y.getRelativePosition(t,e)}function Qt(t,e){var n,r,i,a,o,s,l=t._getSortedVisibleDatasetMetas();for(r=0,a=l.length;r<a;++r)for(i=0,o=(n=l[r].data).length;i<o;++i)(s=n[i])._view.skip||e(s)}function te(t,e){var n=[];return Qt(t,(function(t){t.inRange(e.x,e.y)&&n.push(t)})),n}function ee(t,e,n,r){var i=Number.POSITIVE_INFINITY,a=[];return Qt(t,(function(t){if(!n||t.inRange(e.x,e.y)){var o=t.getCenterPoint(),s=r(e,o);s<i?(a=[t],i=s):s===i&&a.push(t)}})),a}function ne(t){var e=-1!==t.indexOf("x"),n=-1!==t.indexOf("y");return function(t,r){var i=e?Math.abs(t.x-r.x):0,a=n?Math.abs(t.y-r.y):0;return Math.sqrt(Math.pow(i,2)+Math.pow(a,2))}}function re(t,e,n){var r=$t(e,t);n.axis=n.axis||"x";var i=ne(n.axis),a=n.intersect?te(t,r):ee(t,r,!1,i),o=[];return a.length?(t._getSortedVisibleDatasetMetas().forEach((function(t){var e=t.data[a[0]._index];e&&!e._view.skip&&o.push(e)})),o):[]}var ie={modes:{single:function(t,e){var n=$t(e,t),r=[];return Qt(t,(function(t){if(t.inRange(n.x,n.y))return r.push(t),r})),r.slice(0,1)},label:re,index:re,dataset:function(t,e,n){var r=$t(e,t);n.axis=n.axis||"xy";var i=ne(n.axis),a=n.intersect?te(t,r):ee(t,r,!1,i);return a.length>0&&(a=t.getDatasetMeta(a[0]._datasetIndex).data),a},"x-axis":function(t,e){return re(t,e,{intersect:!1})},point:function(t,e){return te(t,$t(e,t))},nearest:function(t,e,n){var r=$t(e,t);n.axis=n.axis||"xy";var i=ne(n.axis);return ee(t,r,n.intersect,i)},x:function(t,e,n){var r=$t(e,t),i=[],a=!1;return Qt(t,(function(t){t.inXRange(r.x)&&i.push(t),t.inRange(r.x,r.y)&&(a=!0)})),n.intersect&&!a&&(i=[]),i},y:function(t,e,n){var r=$t(e,t),i=[],a=!1;return Qt(t,(function(t){t.inYRange(r.y)&&i.push(t),t.inRange(r.x,r.y)&&(a=!0)})),n.intersect&&!a&&(i=[]),i}}},ae=Y.extend;function oe(t,e){return Y.where(t,(function(t){return t.pos===e}))}function se(t,e){return t.sort((function(t,n){var r=e?n:t,i=e?t:n;return r.weight===i.weight?r.index-i.index:r.weight-i.weight}))}function le(t,e,n,r){return Math.max(t[n],e[n])+Math.max(t[r],e[r])}function ue(t,e,n){var r,i,a=n.box,o=t.maxPadding;if(n.size&&(t[n.pos]-=n.size),n.size=n.horizontal?a.height:a.width,t[n.pos]+=n.size,a.getPadding){var s=a.getPadding();o.top=Math.max(o.top,s.top),o.left=Math.max(o.left,s.left),o.bottom=Math.max(o.bottom,s.bottom),o.right=Math.max(o.right,s.right)}if(r=e.outerWidth-le(o,t,"left","right"),i=e.outerHeight-le(o,t,"top","bottom"),r!==t.w||i!==t.h)return t.w=r,t.h=i,n.horizontal?r!==t.w:i!==t.h}function ce(t,e){var n=e.maxPadding;function r(t){var r={left:0,top:0,right:0,bottom:0};return t.forEach((function(t){r[t]=Math.max(e[t],n[t])})),r}return r(t?["left","right"]:["top","bottom"])}function he(t,e,n){var r,i,a,o,s,l,u=[];for(r=0,i=t.length;r<i;++r)(o=(a=t[r]).box).update(a.width||e.w,a.height||e.h,ce(a.horizontal,e)),ue(e,n,a)&&(l=!0,u.length&&(s=!0)),o.fullWidth||u.push(a);return s&&he(u,e,n)||l}function de(t,e,n){var r,i,a,o,s=n.padding,l=e.x,u=e.y;for(r=0,i=t.length;r<i;++r)o=(a=t[r]).box,a.horizontal?(o.left=o.fullWidth?s.left:e.left,o.right=o.fullWidth?n.outerWidth-s.right:e.left+e.w,o.top=u,o.bottom=u+o.height,o.width=o.right-o.left,u=o.bottom):(o.left=l,o.right=l+o.width,o.top=e.top,o.bottom=e.top+e.h,o.height=o.bottom-o.top,l=o.right);e.x=l,e.y=u}N._set("global",{layout:{padding:{top:0,right:0,bottom:0,left:0}}});var fe,pe={defaults:{},addBox:function(t,e){t.boxes||(t.boxes=[]),e.fullWidth=e.fullWidth||!1,e.position=e.position||"top",e.weight=e.weight||0,e._layers=e._layers||function(){return[{z:0,draw:function(){e.draw.apply(e,arguments)}}]},t.boxes.push(e)},removeBox:function(t,e){var n=t.boxes?t.boxes.indexOf(e):-1;-1!==n&&t.boxes.splice(n,1)},configure:function(t,e,n){for(var r,i=["fullWidth","position","weight"],a=i.length,o=0;o<a;++o)r=i[o],n.hasOwnProperty(r)&&(e[r]=n[r])},update:function(t,e,n){if(t){var r=t.options.layout||{},i=Y.options.toPadding(r.padding),a=e-i.width,o=n-i.height,s=function(t){var e=function(t){var e,n,r,i=[];for(e=0,n=(t||[]).length;e<n;++e)r=t[e],i.push({index:e,box:r,pos:r.position,horizontal:r.isHorizontal(),weight:r.weight});return i}(t),n=se(oe(e,"left"),!0),r=se(oe(e,"right")),i=se(oe(e,"top"),!0),a=se(oe(e,"bottom"));return{leftAndTop:n.concat(i),rightAndBottom:r.concat(a),chartArea:oe(e,"chartArea"),vertical:n.concat(r),horizontal:i.concat(a)}}(t.boxes),l=s.vertical,u=s.horizontal,c=Object.freeze({outerWidth:e,outerHeight:n,padding:i,availableWidth:a,vBoxMaxWidth:a/2/l.length,hBoxMaxHeight:o/2}),h=ae({maxPadding:ae({},i),w:a,h:o,x:i.left,y:i.top},i);!function(t,e){var n,r,i;for(n=0,r=t.length;n<r;++n)(i=t[n]).width=i.horizontal?i.box.fullWidth&&e.availableWidth:e.vBoxMaxWidth,i.height=i.horizontal&&e.hBoxMaxHeight}(l.concat(u),c),he(l,h,c),he(u,h,c)&&he(l,h,c),function(t){var e=t.maxPadding;function n(n){var r=Math.max(e[n]-t[n],0);return t[n]+=r,r}t.y+=n("top"),t.x+=n("left"),n("right"),n("bottom")}(h),de(s.leftAndTop,h,c),h.x+=h.w,h.y+=h.h,de(s.rightAndBottom,h,c),t.chartArea={left:h.left,top:h.top,right:h.left+h.w,bottom:h.top+h.h},Y.each(s.chartArea,(function(e){var n=e.box;ae(n,t.chartArea),n.update(h.w,h.h)}))}}},ge=(fe=Object.freeze({__proto__:null,default:"/*\n * DOM element rendering detection\n * https://davidwalsh.name/detect-node-insertion\n */\n@keyframes chartjs-render-animation {\n\tfrom { opacity: 0.99; }\n\tto { opacity: 1; }\n}\n\n.chartjs-render-monitor {\n\tanimation: chartjs-render-animation 0.001s;\n}\n\n/*\n * DOM element resizing detection\n * https://github.com/marcj/css-element-queries\n */\n.chartjs-size-monitor,\n.chartjs-size-monitor-expand,\n.chartjs-size-monitor-shrink {\n\tposition: absolute;\n\tdirection: ltr;\n\tleft: 0;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\toverflow: hidden;\n\tpointer-events: none;\n\tvisibility: hidden;\n\tz-index: -1;\n}\n\n.chartjs-size-monitor-expand > div {\n\tposition: absolute;\n\twidth: 1000000px;\n\theight: 1000000px;\n\tleft: 0;\n\ttop: 0;\n}\n\n.chartjs-size-monitor-shrink > div {\n\tposition: absolute;\n\twidth: 200%;\n\theight: 200%;\n\tleft: 0;\n\ttop: 0;\n}\n"}))&&fe.default||fe,me=["animationstart","webkitAnimationStart"],ve={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"};function ye(t,e){var n=Y.getStyle(t,e),r=n&&n.match(/^(\d+)(\.\d+)?px$/);return r?Number(r[1]):void 0}var be=!!function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("e",null,e)}catch(n){}return t}()&&{passive:!0};function xe(t,e,n){t.addEventListener(e,n,be)}function _e(t,e,n){t.removeEventListener(e,n,be)}function we(t,e,n,r,i){return{type:t,chart:e,native:i||null,x:void 0!==n?n:null,y:void 0!==r?r:null}}function ke(t){var e=document.createElement("div");return e.className=t||"",e}function Me(t,e,n){var r,i,a,o,s=t.$chartjs||(t.$chartjs={}),l=s.resizer=function(t){var e=ke("chartjs-size-monitor"),n=ke("chartjs-size-monitor-expand"),r=ke("chartjs-size-monitor-shrink");n.appendChild(ke()),r.appendChild(ke()),e.appendChild(n),e.appendChild(r),e._reset=function(){n.scrollLeft=1e6,n.scrollTop=1e6,r.scrollLeft=1e6,r.scrollTop=1e6};var i=function(){e._reset(),t()};return xe(n,"scroll",i.bind(n,"expand")),xe(r,"scroll",i.bind(r,"shrink")),e}((r=function(){if(s.resizer){var r=n.options.maintainAspectRatio&&t.parentNode,i=r?r.clientWidth:0;e(we("resize",n)),r&&r.clientWidth<i&&n.canvas&&e(we("resize",n))}},a=!1,o=[],function(){o=Array.prototype.slice.call(arguments),i=i||this,a||(a=!0,Y.requestAnimFrame.call(window,(function(){a=!1,r.apply(i,o)})))}));!function(t,e){var n=t.$chartjs||(t.$chartjs={}),r=n.renderProxy=function(t){"chartjs-render-animation"===t.animationName&&e()};Y.each(me,(function(e){xe(t,e,r)})),n.reflow=!!t.offsetParent,t.classList.add("chartjs-render-monitor")}(t,(function(){if(s.resizer){var e=t.parentNode;e&&e!==l.parentNode&&e.insertBefore(l,e.firstChild),l._reset()}}))}function Se(t){var e=t.$chartjs||{},n=e.resizer;delete e.resizer,function(t){var e=t.$chartjs||{},n=e.renderProxy;n&&(Y.each(me,(function(e){_e(t,e,n)})),delete e.renderProxy),t.classList.remove("chartjs-render-monitor")}(t),n&&n.parentNode&&n.parentNode.removeChild(n)}var De={disableCSSInjection:!1,_enabled:"undefined"!=typeof window&&"undefined"!=typeof document,_ensureLoaded:function(t){if(!this.disableCSSInjection){var e=t.getRootNode?t.getRootNode():document;!function(t,e){var n=t.$chartjs||(t.$chartjs={});if(!n.containsStyles){n.containsStyles=!0,e="/* Chart.js */\n"+e;var r=document.createElement("style");r.setAttribute("type","text/css"),r.appendChild(document.createTextNode(e)),t.appendChild(r)}}(e.host?e:document.head,ge)}},acquireContext:function(t,e){"string"==typeof t?t=document.getElementById(t):t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas);var n=t&&t.getContext&&t.getContext("2d");return n&&n.canvas===t?(this._ensureLoaded(t),function(t,e){var n=t.style,r=t.getAttribute("height"),i=t.getAttribute("width");if(t.$chartjs={initial:{height:r,width:i,style:{display:n.display,height:n.height,width:n.width}}},n.display=n.display||"block",null===i||""===i){var a=ye(t,"width");void 0!==a&&(t.width=a)}if(null===r||""===r)if(""===t.style.height)t.height=t.width/(e.options.aspectRatio||2);else{var o=ye(t,"height");void 0!==a&&(t.height=o)}}(t,e),n):null},releaseContext:function(t){var e=t.canvas;if(e.$chartjs){var n=e.$chartjs.initial;["height","width"].forEach((function(t){var r=n[t];Y.isNullOrUndef(r)?e.removeAttribute(t):e.setAttribute(t,r)})),Y.each(n.style||{},(function(t,n){e.style[n]=t})),e.width=e.width,delete e.$chartjs}},addEventListener:function(t,e,n){var r=t.canvas;if("resize"!==e){var i=n.$chartjs||(n.$chartjs={});xe(r,e,(i.proxies||(i.proxies={}))[t.id+"_"+e]=function(e){n(function(t,e){var n=ve[t.type]||t.type,r=Y.getRelativePosition(t,e);return we(n,e,r.x,r.y,t)}(e,t))})}else Me(r,n,t)},removeEventListener:function(t,e,n){var r=t.canvas;if("resize"!==e){var i=((n.$chartjs||{}).proxies||{})[t.id+"_"+e];i&&_e(r,e,i)}else Se(r)}};Y.addEvent=xe,Y.removeEvent=_e;var Ce=De._enabled?De:{acquireContext:function(t){return t&&t.canvas&&(t=t.canvas),t&&t.getContext("2d")||null}},Oe=Y.extend({initialize:function(){},acquireContext:function(){},releaseContext:function(){},addEventListener:function(){},removeEventListener:function(){}},Ce);N._set("global",{plugins:{}});var Te={_plugins:[],_cacheId:0,register:function(t){var e=this._plugins;[].concat(t).forEach((function(t){-1===e.indexOf(t)&&e.push(t)})),this._cacheId++},unregister:function(t){var e=this._plugins;[].concat(t).forEach((function(t){var n=e.indexOf(t);-1!==n&&e.splice(n,1)})),this._cacheId++},clear:function(){this._plugins=[],this._cacheId++},count:function(){return this._plugins.length},getAll:function(){return this._plugins},notify:function(t,e,n){var r,i,a,o,s,l=this.descriptors(t),u=l.length;for(r=0;r<u;++r)if("function"==typeof(s=(a=(i=l[r]).plugin)[e])&&((o=[t].concat(n||[])).push(i.options),!1===s.apply(a,o)))return!1;return!0},descriptors:function(t){var e=t.$plugins||(t.$plugins={});if(e.id===this._cacheId)return e.descriptors;var n=[],r=[],i=t&&t.config||{},a=i.options&&i.options.plugins||{};return this._plugins.concat(i.plugins||[]).forEach((function(t){if(-1===n.indexOf(t)){var e=t.id,i=a[e];!1!==i&&(!0===i&&(i=Y.clone(N.global.plugins[e])),n.push(t),r.push({plugin:t,options:i||{}}))}})),e.descriptors=r,e.id=this._cacheId,r},_invalidate:function(t){delete t.$plugins}},Ae={constructors:{},defaults:{},registerScaleType:function(t,e,n){this.constructors[t]=e,this.defaults[t]=Y.clone(n)},getScaleConstructor:function(t){return this.constructors.hasOwnProperty(t)?this.constructors[t]:void 0},getScaleDefaults:function(t){return this.defaults.hasOwnProperty(t)?Y.merge({},[N.scale,this.defaults[t]]):{}},updateScaleDefaults:function(t,e){this.defaults.hasOwnProperty(t)&&(this.defaults[t]=Y.extend(this.defaults[t],e))},addScalesToLayout:function(t){Y.each(t.scales,(function(e){e.fullWidth=e.options.fullWidth,e.position=e.options.position,e.weight=e.options.weight,pe.addBox(t,e)}))}},Pe=Y.valueOrDefault,Ie=Y.rtl.getRtlAdapter;N._set("global",{tooltips:{enabled:!0,custom:null,mode:"nearest",position:"average",intersect:!0,backgroundColor:"rgba(0,0,0,0.8)",titleFontStyle:"bold",titleSpacing:2,titleMarginBottom:6,titleFontColor:"#fff",titleAlign:"left",bodySpacing:2,bodyFontColor:"#fff",bodyAlign:"left",footerFontStyle:"bold",footerSpacing:2,footerMarginTop:6,footerFontColor:"#fff",footerAlign:"left",yPadding:6,xPadding:6,caretPadding:2,caretSize:5,cornerRadius:6,multiKeyBackground:"#fff",displayColors:!0,borderColor:"rgba(0,0,0,0)",borderWidth:0,callbacks:{beforeTitle:Y.noop,title:function(t,e){var n="",r=e.labels,i=r?r.length:0;if(t.length>0){var a=t[0];a.label?n=a.label:a.xLabel?n=a.xLabel:i>0&&a.index<i&&(n=r[a.index])}return n},afterTitle:Y.noop,beforeBody:Y.noop,beforeLabel:Y.noop,label:function(t,e){var n=e.datasets[t.datasetIndex].label||"";return n&&(n+=": "),Y.isNullOrUndef(t.value)?n+=t.yLabel:n+=t.value,n},labelColor:function(t,e){var n=e.getDatasetMeta(t.datasetIndex).data[t.index]._view;return{borderColor:n.borderColor,backgroundColor:n.backgroundColor}},labelTextColor:function(){return this._options.bodyFontColor},afterLabel:Y.noop,afterBody:Y.noop,beforeFooter:Y.noop,footer:Y.noop,afterFooter:Y.noop}}});var Fe={average:function(t){if(!t.length)return!1;var e,n,r=0,i=0,a=0;for(e=0,n=t.length;e<n;++e){var o=t[e];if(o&&o.hasValue()){var s=o.tooltipPosition();r+=s.x,i+=s.y,++a}}return{x:r/a,y:i/a}},nearest:function(t,e){var n,r,i,a=e.x,o=e.y,s=Number.POSITIVE_INFINITY;for(n=0,r=t.length;n<r;++n){var l=t[n];if(l&&l.hasValue()){var u=l.getCenterPoint(),c=Y.distanceBetweenPoints(e,u);c<s&&(s=c,i=l)}}if(i){var h=i.tooltipPosition();a=h.x,o=h.y}return{x:a,y:o}}};function Le(t,e){return e&&(Y.isArray(e)?Array.prototype.push.apply(t,e):t.push(e)),t}function Re(t){return("string"==typeof t||t instanceof String)&&t.indexOf("\n")>-1?t.split("\n"):t}function Ne(t){var e=N.global;return{xPadding:t.xPadding,yPadding:t.yPadding,xAlign:t.xAlign,yAlign:t.yAlign,rtl:t.rtl,textDirection:t.textDirection,bodyFontColor:t.bodyFontColor,_bodyFontFamily:Pe(t.bodyFontFamily,e.defaultFontFamily),_bodyFontStyle:Pe(t.bodyFontStyle,e.defaultFontStyle),_bodyAlign:t.bodyAlign,bodyFontSize:Pe(t.bodyFontSize,e.defaultFontSize),bodySpacing:t.bodySpacing,titleFontColor:t.titleFontColor,_titleFontFamily:Pe(t.titleFontFamily,e.defaultFontFamily),_titleFontStyle:Pe(t.titleFontStyle,e.defaultFontStyle),titleFontSize:Pe(t.titleFontSize,e.defaultFontSize),_titleAlign:t.titleAlign,titleSpacing:t.titleSpacing,titleMarginBottom:t.titleMarginBottom,footerFontColor:t.footerFontColor,_footerFontFamily:Pe(t.footerFontFamily,e.defaultFontFamily),_footerFontStyle:Pe(t.footerFontStyle,e.defaultFontStyle),footerFontSize:Pe(t.footerFontSize,e.defaultFontSize),_footerAlign:t.footerAlign,footerSpacing:t.footerSpacing,footerMarginTop:t.footerMarginTop,caretSize:t.caretSize,cornerRadius:t.cornerRadius,backgroundColor:t.backgroundColor,opacity:0,legendColorBackground:t.multiKeyBackground,displayColors:t.displayColors,borderColor:t.borderColor,borderWidth:t.borderWidth}}function Ee(t,e){return"center"===e?t.x+t.width/2:"right"===e?t.x+t.width-t.xPadding:t.x+t.xPadding}function je(t){return Le([],Re(t))}var ze=K.extend({initialize:function(){this._model=Ne(this._options),this._lastActive=[]},getTitle:function(){var t=this,e=t._options,n=e.callbacks,r=n.beforeTitle.apply(t,arguments),i=n.title.apply(t,arguments),a=n.afterTitle.apply(t,arguments),o=[];return o=Le(o,Re(r)),o=Le(o,Re(i)),o=Le(o,Re(a))},getBeforeBody:function(){return je(this._options.callbacks.beforeBody.apply(this,arguments))},getBody:function(t,e){var n=this,r=n._options.callbacks,i=[];return Y.each(t,(function(t){var a={before:[],lines:[],after:[]};Le(a.before,Re(r.beforeLabel.call(n,t,e))),Le(a.lines,r.label.call(n,t,e)),Le(a.after,Re(r.afterLabel.call(n,t,e))),i.push(a)})),i},getAfterBody:function(){return je(this._options.callbacks.afterBody.apply(this,arguments))},getFooter:function(){var t=this,e=t._options.callbacks,n=e.beforeFooter.apply(t,arguments),r=e.footer.apply(t,arguments),i=e.afterFooter.apply(t,arguments),a=[];return a=Le(a,Re(n)),a=Le(a,Re(r)),a=Le(a,Re(i))},update:function(t){var e,n,r,i,a,o,s,l,u,c,h=this,d=h._options,f=h._model,p=h._model=Ne(d),g=h._active,m=h._data,v={xAlign:f.xAlign,yAlign:f.yAlign},y={x:f.x,y:f.y},b={width:f.width,height:f.height},x={x:f.caretX,y:f.caretY};if(g.length){p.opacity=1;var _=[],w=[];x=Fe[d.position].call(h,g,h._eventPosition);var k=[];for(e=0,n=g.length;e<n;++e)k.push((r=g[e],i=void 0,a=void 0,o=void 0,s=void 0,l=void 0,u=void 0,c=void 0,i=r._xScale,a=r._yScale||r._scale,o=r._index,s=r._datasetIndex,l=r._chart.getDatasetMeta(s).controller,u=l._getIndexScale(),c=l._getValueScale(),{xLabel:i?i.getLabelForIndex(o,s):"",yLabel:a?a.getLabelForIndex(o,s):"",label:u?""+u.getLabelForIndex(o,s):"",value:c?""+c.getLabelForIndex(o,s):"",index:o,datasetIndex:s,x:r._model.x,y:r._model.y}));d.filter&&(k=k.filter((function(t){return d.filter(t,m)}))),d.itemSort&&(k=k.sort((function(t,e){return d.itemSort(t,e,m)}))),Y.each(k,(function(t){_.push(d.callbacks.labelColor.call(h,t,h._chart)),w.push(d.callbacks.labelTextColor.call(h,t,h._chart))})),p.title=h.getTitle(k,m),p.beforeBody=h.getBeforeBody(k,m),p.body=h.getBody(k,m),p.afterBody=h.getAfterBody(k,m),p.footer=h.getFooter(k,m),p.x=x.x,p.y=x.y,p.caretPadding=d.caretPadding,p.labelColors=_,p.labelTextColors=w,p.dataPoints=k,b=function(t,e){var n=t._chart.ctx,r=2*e.yPadding,i=0,a=e.body,o=a.reduce((function(t,e){return t+e.before.length+e.lines.length+e.after.length}),0);o+=e.beforeBody.length+e.afterBody.length;var s=e.title.length,l=e.footer.length,u=e.titleFontSize,c=e.bodyFontSize,h=e.footerFontSize;r+=s*u,r+=s?(s-1)*e.titleSpacing:0,r+=s?e.titleMarginBottom:0,r+=o*c,r+=o?(o-1)*e.bodySpacing:0,r+=l?e.footerMarginTop:0,r+=l*h,r+=l?(l-1)*e.footerSpacing:0;var d=0,f=function(t){i=Math.max(i,n.measureText(t).width+d)};return n.font=Y.fontString(u,e._titleFontStyle,e._titleFontFamily),Y.each(e.title,f),n.font=Y.fontString(c,e._bodyFontStyle,e._bodyFontFamily),Y.each(e.beforeBody.concat(e.afterBody),f),d=e.displayColors?c+2:0,Y.each(a,(function(t){Y.each(t.before,f),Y.each(t.lines,f),Y.each(t.after,f)})),d=0,n.font=Y.fontString(h,e._footerFontStyle,e._footerFontFamily),Y.each(e.footer,f),{width:i+=2*e.xPadding,height:r}}(this,p),y=function(t,e,n,r){var i=t.x,a=t.y,o=t.caretSize,s=t.caretPadding,l=t.cornerRadius,u=n.xAlign,c=n.yAlign,h=o+s,d=l+s;return"right"===u?i-=e.width:"center"===u&&((i-=e.width/2)+e.width>r.width&&(i=r.width-e.width),i<0&&(i=0)),"top"===c?a+=h:a-="bottom"===c?e.height+h:e.height/2,"center"===c?"left"===u?i+=h:"right"===u&&(i-=h):"left"===u?i-=d:"right"===u&&(i+=d),{x:i,y:a}}(p,b,v=function(t,e){var n,r,i,a,o,s=t._model,l=t._chart,u=t._chart.chartArea,c="center",h="center";s.y<e.height?h="top":s.y>l.height-e.height&&(h="bottom");var d=(u.left+u.right)/2,f=(u.top+u.bottom)/2;"center"===h?(n=function(t){return t<=d},r=function(t){return t>d}):(n=function(t){return t<=e.width/2},r=function(t){return t>=l.width-e.width/2}),i=function(t){return t+e.width+s.caretSize+s.caretPadding>l.width},a=function(t){return t-e.width-s.caretSize-s.caretPadding<0},o=function(t){return t<=f?"top":"bottom"},n(s.x)?(c="left",i(s.x)&&(c="center",h=o(s.y))):r(s.x)&&(c="right",a(s.x)&&(c="center",h=o(s.y)));var p=t._options;return{xAlign:p.xAlign?p.xAlign:c,yAlign:p.yAlign?p.yAlign:h}}(this,b),h._chart)}else p.opacity=0;return p.xAlign=v.xAlign,p.yAlign=v.yAlign,p.x=y.x,p.y=y.y,p.width=b.width,p.height=b.height,p.caretX=x.x,p.caretY=x.y,h._model=p,t&&d.custom&&d.custom.call(h,p),h},drawCaret:function(t,e){var n=this._chart.ctx,r=this._view,i=this.getCaretPosition(t,e,r);n.lineTo(i.x1,i.y1),n.lineTo(i.x2,i.y2),n.lineTo(i.x3,i.y3)},getCaretPosition:function(t,e,n){var r,i,a,o,s,l,u=n.caretSize,c=n.cornerRadius,h=n.xAlign,d=n.yAlign,f=t.x,p=t.y,g=e.width,m=e.height;if("center"===d)s=p+m/2,"left"===h?(i=(r=f)-u,a=r,o=s+u,l=s-u):(i=(r=f+g)+u,a=r,o=s-u,l=s+u);else if("left"===h?(r=(i=f+c+u)-u,a=i+u):"right"===h?(r=(i=f+g-c-u)-u,a=i+u):(r=(i=n.caretX)-u,a=i+u),"top"===d)s=(o=p)-u,l=o;else{s=(o=p+m)+u,l=o;var v=a;a=r,r=v}return{x1:r,x2:i,x3:a,y1:o,y2:s,y3:l}},drawTitle:function(t,e,n){var r,i,a,o=e.title,s=o.length;if(s){var l=Ie(e.rtl,e.x,e.width);for(t.x=Ee(e,e._titleAlign),n.textAlign=l.textAlign(e._titleAlign),n.textBaseline="middle",r=e.titleFontSize,i=e.titleSpacing,n.fillStyle=e.titleFontColor,n.font=Y.fontString(r,e._titleFontStyle,e._titleFontFamily),a=0;a<s;++a)n.fillText(o[a],l.x(t.x),t.y+r/2),t.y+=r+i,a+1===s&&(t.y+=e.titleMarginBottom-i)}},drawBody:function(t,e,n){var r,i,a,o,s,l,u,c,h=e.bodyFontSize,d=e.bodySpacing,f=e._bodyAlign,p=e.body,g=e.displayColors,m=0,v=g?Ee(e,"left"):0,y=Ie(e.rtl,e.x,e.width),b=function(e){n.fillText(e,y.x(t.x+m),t.y+h/2),t.y+=h+d},x=y.textAlign(f);for(n.textAlign=f,n.textBaseline="middle",n.font=Y.fontString(h,e._bodyFontStyle,e._bodyFontFamily),t.x=Ee(e,x),n.fillStyle=e.bodyFontColor,Y.each(e.beforeBody,b),m=g&&"right"!==x?"center"===f?h/2+1:h+2:0,s=0,u=p.length;s<u;++s){for(r=p[s],i=e.labelTextColors[s],a=e.labelColors[s],n.fillStyle=i,Y.each(r.before,b),l=0,c=(o=r.lines).length;l<c;++l){if(g){var _=y.x(v);n.fillStyle=e.legendColorBackground,n.fillRect(y.leftForLtr(_,h),t.y,h,h),n.lineWidth=1,n.strokeStyle=a.borderColor,n.strokeRect(y.leftForLtr(_,h),t.y,h,h),n.fillStyle=a.backgroundColor,n.fillRect(y.leftForLtr(y.xPlus(_,1),h-2),t.y+1,h-2,h-2),n.fillStyle=i}b(o[l])}Y.each(r.after,b)}m=0,Y.each(e.afterBody,b),t.y-=d},drawFooter:function(t,e,n){var r,i,a=e.footer,o=a.length;if(o){var s=Ie(e.rtl,e.x,e.width);for(t.x=Ee(e,e._footerAlign),t.y+=e.footerMarginTop,n.textAlign=s.textAlign(e._footerAlign),n.textBaseline="middle",r=e.footerFontSize,n.fillStyle=e.footerFontColor,n.font=Y.fontString(r,e._footerFontStyle,e._footerFontFamily),i=0;i<o;++i)n.fillText(a[i],s.x(t.x),t.y+r/2),t.y+=r+e.footerSpacing}},drawBackground:function(t,e,n,r){n.fillStyle=e.backgroundColor,n.strokeStyle=e.borderColor,n.lineWidth=e.borderWidth;var i=e.xAlign,a=e.yAlign,o=t.x,s=t.y,l=r.width,u=r.height,c=e.cornerRadius;n.beginPath(),n.moveTo(o+c,s),"top"===a&&this.drawCaret(t,r),n.lineTo(o+l-c,s),n.quadraticCurveTo(o+l,s,o+l,s+c),"center"===a&&"right"===i&&this.drawCaret(t,r),n.lineTo(o+l,s+u-c),n.quadraticCurveTo(o+l,s+u,o+l-c,s+u),"bottom"===a&&this.drawCaret(t,r),n.lineTo(o+c,s+u),n.quadraticCurveTo(o,s+u,o,s+u-c),"center"===a&&"left"===i&&this.drawCaret(t,r),n.lineTo(o,s+c),n.quadraticCurveTo(o,s,o+c,s),n.closePath(),n.fill(),e.borderWidth>0&&n.stroke()},draw:function(){var t=this._chart.ctx,e=this._view;if(0!==e.opacity){var n={width:e.width,height:e.height},r={x:e.x,y:e.y},i=Math.abs(e.opacity<.001)?0:e.opacity,a=e.title.length||e.beforeBody.length||e.body.length||e.afterBody.length||e.footer.length;this._options.enabled&&a&&(t.save(),t.globalAlpha=i,this.drawBackground(r,e,t,n),r.y+=e.yPadding,Y.rtl.overrideTextDirection(t,e.textDirection),this.drawTitle(r,e,t),this.drawBody(r,e,t),this.drawFooter(r,e,t),Y.rtl.restoreTextDirection(t,e.textDirection),t.restore())}},handleEvent:function(t){var e,n=this,r=n._options;return n._lastActive=n._lastActive||[],"mouseout"===t.type?n._active=[]:(n._active=n._chart.getElementsAtEventForMode(t,r.mode,r),r.reverse&&n._active.reverse()),(e=!Y.arrayEquals(n._active,n._lastActive))&&(n._lastActive=n._active,(r.enabled||r.custom)&&(n._eventPosition={x:t.x,y:t.y},n.update(!0),n.pivot())),e}}),We=Fe,Ye=ze;Ye.positioners=We;var Ve=Y.valueOrDefault;function Be(){return Y.merge({},[].slice.call(arguments),{merger:function(t,e,n,r){if("xAxes"===t||"yAxes"===t){var i,a,o,s=n[t].length;for(e[t]||(e[t]=[]),i=0;i<s;++i)o=n[t][i],a=Ve(o.type,"xAxes"===t?"category":"linear"),i>=e[t].length&&e[t].push({}),!e[t][i].type||o.type&&o.type!==e[t][i].type?Y.merge(e[t][i],[Ae.getScaleDefaults(a),o]):Y.merge(e[t][i],o)}else Y._merger(t,e,n,r)}})}function He(){return Y.merge({},[].slice.call(arguments),{merger:function(t,e,n,r){var i=e[t]||{},a=n[t];"scales"===t?e[t]=Be(i,a):"scale"===t?e[t]=Y.merge(i,[Ae.getScaleDefaults(a.type),a]):Y._merger(t,e,n,r)}})}function Ue(t){var e=t.options;Y.each(t.scales,(function(e){pe.removeBox(t,e)})),e=He(N.global,N[t.config.type],e),t.options=t.config.options=e,t.ensureScalesHaveIDs(),t.buildOrUpdateScales(),t.tooltip._options=e.tooltips,t.tooltip.initialize()}function Ge(t,e,n){var r,i=function(t){return t.id===r};do{r=e+n++}while(Y.findIndex(t,i)>=0);return r}function qe(t){return"top"===t||"bottom"===t}function Ke(t,e){return function(n,r){return n[t]===r[t]?n[e]-r[e]:n[t]-r[t]}}N._set("global",{elements:{},events:["mousemove","mouseout","click","touchstart","touchmove"],hover:{onHover:null,mode:"nearest",intersect:!0,animationDuration:400},onClick:null,maintainAspectRatio:!0,responsive:!0,responsiveAnimationDuration:0});var Je=function(t,e){return this.construct(t,e),this};Y.extend(Je.prototype,{construct:function(t,e){var n=this;e=function(t){var e=(t=t||{}).data=t.data||{};return e.datasets=e.datasets||[],e.labels=e.labels||[],t.options=He(N.global,N[t.type],t.options||{}),t}(e);var r=Oe.acquireContext(t,e),i=r&&r.canvas,a=i&&i.height,o=i&&i.width;n.id=Y.uid(),n.ctx=r,n.canvas=i,n.config=e,n.width=o,n.height=a,n.aspectRatio=a?o/a:null,n.options=e.options,n._bufferedRender=!1,n._layers=[],n.chart=n,n.controller=n,Je.instances[n.id]=n,Object.defineProperty(n,"data",{get:function(){return n.config.data},set:function(t){n.config.data=t}}),r&&i?(n.initialize(),n.update()):console.error("Failed to create chart: can't acquire context from the given item")},initialize:function(){var t=this;return Te.notify(t,"beforeInit"),Y.retinaScale(t,t.options.devicePixelRatio),t.bindEvents(),t.options.responsive&&t.resize(!0),t.initToolTip(),Te.notify(t,"afterInit"),t},clear:function(){return Y.canvas.clear(this),this},stop:function(){return X.cancelAnimation(this),this},resize:function(t){var e=this,n=e.options,r=e.canvas,i=n.maintainAspectRatio&&e.aspectRatio||null,a=Math.max(0,Math.floor(Y.getMaximumWidth(r))),o=Math.max(0,Math.floor(i?a/i:Y.getMaximumHeight(r)));if((e.width!==a||e.height!==o)&&(r.width=e.width=a,r.height=e.height=o,r.style.width=a+"px",r.style.height=o+"px",Y.retinaScale(e,n.devicePixelRatio),!t)){var s={width:a,height:o};Te.notify(e,"resize",[s]),n.onResize&&n.onResize(e,s),e.stop(),e.update({duration:n.responsiveAnimationDuration})}},ensureScalesHaveIDs:function(){var t=this.options,e=t.scales||{},n=t.scale;Y.each(e.xAxes,(function(t,n){t.id||(t.id=Ge(e.xAxes,"x-axis-",n))})),Y.each(e.yAxes,(function(t,n){t.id||(t.id=Ge(e.yAxes,"y-axis-",n))})),n&&(n.id=n.id||"scale")},buildOrUpdateScales:function(){var t=this,e=t.options,n=t.scales||{},r=[],i=Object.keys(n).reduce((function(t,e){return t[e]=!1,t}),{});e.scales&&(r=r.concat((e.scales.xAxes||[]).map((function(t){return{options:t,dtype:"category",dposition:"bottom"}})),(e.scales.yAxes||[]).map((function(t){return{options:t,dtype:"linear",dposition:"left"}})))),e.scale&&r.push({options:e.scale,dtype:"radialLinear",isDefault:!0,dposition:"chartArea"}),Y.each(r,(function(e){var r=e.options,a=r.id,o=Ve(r.type,e.dtype);qe(r.position)!==qe(e.dposition)&&(r.position=e.dposition),i[a]=!0;var s=null;if(a in n&&n[a].type===o)(s=n[a]).options=r,s.ctx=t.ctx,s.chart=t;else{var l=Ae.getScaleConstructor(o);if(!l)return;s=new l({id:a,type:o,options:r,ctx:t.ctx,chart:t}),n[s.id]=s}s.mergeTicksOptions(),e.isDefault&&(t.scale=s)})),Y.each(i,(function(t,e){t||delete n[e]})),t.scales=n,Ae.addScalesToLayout(this)},buildOrUpdateControllers:function(){var t,e,n=this,r=[],i=n.data.datasets;for(t=0,e=i.length;t<e;t++){var a=i[t],o=n.getDatasetMeta(t),s=a.type||n.config.type;if(o.type&&o.type!==s&&(n.destroyDatasetMeta(t),o=n.getDatasetMeta(t)),o.type=s,o.order=a.order||0,o.index=t,o.controller)o.controller.updateIndex(t),o.controller.linkScales();else{var l=Xt[o.type];if(void 0===l)throw new Error('"'+o.type+'" is not a chart type.');o.controller=new l(n,t),r.push(o.controller)}}return r},resetElements:function(){var t=this;Y.each(t.data.datasets,(function(e,n){t.getDatasetMeta(n).controller.reset()}),t)},reset:function(){this.resetElements(),this.tooltip.initialize()},update:function(t){var e,n,r=this;if(t&&"object"==typeof t||(t={duration:t,lazy:arguments[1]}),Ue(r),Te._invalidate(r),!1!==Te.notify(r,"beforeUpdate")){r.tooltip._data=r.data;var i=r.buildOrUpdateControllers();for(e=0,n=r.data.datasets.length;e<n;e++)r.getDatasetMeta(e).controller.buildOrUpdateElements();r.updateLayout(),r.options.animation&&r.options.animation.duration&&Y.each(i,(function(t){t.reset()})),r.updateDatasets(),r.tooltip.initialize(),r.lastActive=[],Te.notify(r,"afterUpdate"),r._layers.sort(Ke("z","_idx")),r._bufferedRender?r._bufferedRequest={duration:t.duration,easing:t.easing,lazy:t.lazy}:r.render(t)}},updateLayout:function(){var t=this;!1!==Te.notify(t,"beforeLayout")&&(pe.update(this,this.width,this.height),t._layers=[],Y.each(t.boxes,(function(e){e._configure&&e._configure(),t._layers.push.apply(t._layers,e._layers())}),t),t._layers.forEach((function(t,e){t._idx=e})),Te.notify(t,"afterScaleUpdate"),Te.notify(t,"afterLayout"))},updateDatasets:function(){if(!1!==Te.notify(this,"beforeDatasetsUpdate")){for(var t=0,e=this.data.datasets.length;t<e;++t)this.updateDataset(t);Te.notify(this,"afterDatasetsUpdate")}},updateDataset:function(t){var e=this.getDatasetMeta(t),n={meta:e,index:t};!1!==Te.notify(this,"beforeDatasetUpdate",[n])&&(e.controller._update(),Te.notify(this,"afterDatasetUpdate",[n]))},render:function(t){var e=this;t&&"object"==typeof t||(t={duration:t,lazy:arguments[1]});var n=e.options.animation,r=Ve(t.duration,n&&n.duration),i=t.lazy;if(!1!==Te.notify(e,"beforeRender")){var a=function(t){Te.notify(e,"afterRender"),Y.callback(n&&n.onComplete,[t],e)};if(n&&r){var o=new Z({numSteps:r/16.66,easing:t.easing||n.easing,render:function(t,e){var n=Y.easing.effects[e.easing],r=e.currentStep,i=r/e.numSteps;t.draw(n(i),i,r)},onAnimationProgress:n.onProgress,onAnimationComplete:a});X.addAnimation(e,o,r,i)}else e.draw(),a(new Z({numSteps:0,chart:e}));return e}},draw:function(t){var e,n,r=this;if(r.clear(),Y.isNullOrUndef(t)&&(t=1),r.transition(t),!(r.width<=0||r.height<=0)&&!1!==Te.notify(r,"beforeDraw",[t])){for(n=r._layers,e=0;e<n.length&&n[e].z<=0;++e)n[e].draw(r.chartArea);for(r.drawDatasets(t);e<n.length;++e)n[e].draw(r.chartArea);r._drawTooltip(t),Te.notify(r,"afterDraw",[t])}},transition:function(t){for(var e=0,n=(this.data.datasets||[]).length;e<n;++e)this.isDatasetVisible(e)&&this.getDatasetMeta(e).controller.transition(t);this.tooltip.transition(t)},_getSortedDatasetMetas:function(t){var e,n,r=[];for(e=0,n=(this.data.datasets||[]).length;e<n;++e)t&&!this.isDatasetVisible(e)||r.push(this.getDatasetMeta(e));return r.sort(Ke("order","index")),r},_getSortedVisibleDatasetMetas:function(){return this._getSortedDatasetMetas(!0)},drawDatasets:function(t){var e,n;if(!1!==Te.notify(this,"beforeDatasetsDraw",[t])){for(n=(e=this._getSortedVisibleDatasetMetas()).length-1;n>=0;--n)this.drawDataset(e[n],t);Te.notify(this,"afterDatasetsDraw",[t])}},drawDataset:function(t,e){var n={meta:t,index:t.index,easingValue:e};!1!==Te.notify(this,"beforeDatasetDraw",[n])&&(t.controller.draw(e),Te.notify(this,"afterDatasetDraw",[n]))},_drawTooltip:function(t){var e=this.tooltip,n={tooltip:e,easingValue:t};!1!==Te.notify(this,"beforeTooltipDraw",[n])&&(e.draw(),Te.notify(this,"afterTooltipDraw",[n]))},getElementAtEvent:function(t){return ie.modes.single(this,t)},getElementsAtEvent:function(t){return ie.modes.label(this,t,{intersect:!0})},getElementsAtXAxis:function(t){return ie.modes["x-axis"](this,t,{intersect:!0})},getElementsAtEventForMode:function(t,e,n){var r=ie.modes[e];return"function"==typeof r?r(this,t,n):[]},getDatasetAtEvent:function(t){return ie.modes.dataset(this,t,{intersect:!0})},getDatasetMeta:function(t){var e=this.data.datasets[t];e._meta||(e._meta={});var n=e._meta[this.id];return n||(n=e._meta[this.id]={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:e.order||0,index:t}),n},getVisibleDatasetCount:function(){for(var t=0,e=0,n=this.data.datasets.length;e<n;++e)this.isDatasetVisible(e)&&t++;return t},isDatasetVisible:function(t){var e=this.getDatasetMeta(t);return"boolean"==typeof e.hidden?!e.hidden:!this.data.datasets[t].hidden},generateLegend:function(){return this.options.legendCallback(this)},destroyDatasetMeta:function(t){var e=this.id,n=this.data.datasets[t],r=n._meta&&n._meta[e];r&&(r.controller.destroy(),delete n._meta[e])},destroy:function(){var t,e,n=this,r=n.canvas;for(n.stop(),t=0,e=n.data.datasets.length;t<e;++t)n.destroyDatasetMeta(t);r&&(n.unbindEvents(),Y.canvas.clear(n),Oe.releaseContext(n.ctx),n.canvas=null,n.ctx=null),Te.notify(n,"destroy"),delete Je.instances[n.id]},toBase64Image:function(){return this.canvas.toDataURL.apply(this.canvas,arguments)},initToolTip:function(){var t=this;t.tooltip=new Ye({_chart:t,_chartInstance:t,_data:t.data,_options:t.options.tooltips},t)},bindEvents:function(){var t=this,e=t._listeners={},n=function(){t.eventHandler.apply(t,arguments)};Y.each(t.options.events,(function(r){Oe.addEventListener(t,r,n),e[r]=n})),t.options.responsive&&(n=function(){t.resize()},Oe.addEventListener(t,"resize",n),e.resize=n)},unbindEvents:function(){var t=this,e=t._listeners;e&&(delete t._listeners,Y.each(e,(function(e,n){Oe.removeEventListener(t,n,e)})))},updateHoverStyle:function(t,e,n){var r,i,a,o=n?"set":"remove";for(i=0,a=t.length;i<a;++i)(r=t[i])&&this.getDatasetMeta(r._datasetIndex).controller[o+"HoverStyle"](r);"dataset"===e&&this.getDatasetMeta(t[0]._datasetIndex).controller["_"+o+"DatasetHoverStyle"]()},eventHandler:function(t){var e=this,n=e.tooltip;if(!1!==Te.notify(e,"beforeEvent",[t])){e._bufferedRender=!0,e._bufferedRequest=null;var r=e.handleEvent(t);n&&(r=n._start?n.handleEvent(t):r|n.handleEvent(t)),Te.notify(e,"afterEvent",[t]);var i=e._bufferedRequest;return i?e.render(i):r&&!e.animating&&(e.stop(),e.render({duration:e.options.hover.animationDuration,lazy:!0})),e._bufferedRender=!1,e._bufferedRequest=null,e}},handleEvent:function(t){var e,n=this,r=n.options||{},i=r.hover;return n.lastActive=n.lastActive||[],"mouseout"===t.type?n.active=[]:n.active=n.getElementsAtEventForMode(t,i.mode,i),Y.callback(r.onHover||r.hover.onHover,[t.native,n.active],n),"mouseup"!==t.type&&"click"!==t.type||r.onClick&&r.onClick.call(n,t.native,n.active),n.lastActive.length&&n.updateHoverStyle(n.lastActive,i.mode,!1),n.active.length&&i.mode&&n.updateHoverStyle(n.active,i.mode,!0),e=!Y.arrayEquals(n.active,n.lastActive),n.lastActive=n.active,e}}),Je.instances={};var Ze=Je;function Xe(){throw new Error("This method is not implemented: either no adapter can be found or an incomplete integration was provided.")}function $e(t){this.options=t||{}}Je.Controller=Je,Je.types={},Y.configMerge=He,Y.scaleMerge=Be,Y.extend($e.prototype,{formats:Xe,parse:Xe,format:Xe,add:Xe,diff:Xe,startOf:Xe,endOf:Xe,_create:function(t){return t}}),$e.override=function(t){Y.extend($e.prototype,t)};var Qe={_date:$e},tn={formatters:{values:function(t){return Y.isArray(t)?t:""+t},linear:function(t,e,n){var r=n.length>3?n[2]-n[1]:n[1]-n[0];Math.abs(r)>1&&t!==Math.floor(t)&&(r=t-Math.floor(t));var i=Y.log10(Math.abs(r)),a="";if(0!==t)if(Math.max(Math.abs(n[0]),Math.abs(n[n.length-1]))<1e-4){var o=Y.log10(Math.abs(t)),s=Math.floor(o)-Math.floor(i);s=Math.max(Math.min(s,20),0),a=t.toExponential(s)}else{var l=-1*Math.floor(i);l=Math.max(Math.min(l,20),0),a=t.toFixed(l)}else a="0";return a},logarithmic:function(t,e,n){var r=t/Math.pow(10,Math.floor(Y.log10(t)));return 0===t?"0":1===r||2===r||5===r||0===e||e===n.length-1?t.toExponential():""}}},en=Y.isArray,nn=Y.isNullOrUndef,rn=Y.valueOrDefault,an=Y.valueAtIndexOrDefault;function on(t,e,n){var r,i=t.getTicks().length,a=Math.min(e,i-1),o=t.getPixelForTick(a),s=t._startPixel,l=t._endPixel;if(!(n&&(r=1===i?Math.max(o-s,l-o):0===e?(t.getPixelForTick(1)-o)/2:(o-t.getPixelForTick(a-1))/2,(o+=a<e?r:-r)<s-1e-6||o>l+1e-6)))return o}function sn(t,e,n,r){var i,a,o,s,l,u,c,h,d,f,p,g,m,v=n.length,y=[],b=[],x=[];for(i=0;i<v;++i){if(s=n[i].label,l=n[i].major?e.major:e.minor,t.font=u=l.string,c=r[u]=r[u]||{data:{},gc:[]},h=l.lineHeight,d=f=0,nn(s)||en(s)){if(en(s))for(a=0,o=s.length;a<o;++a)p=s[a],nn(p)||en(p)||(d=Y.measureText(t,c.data,c.gc,d,p),f+=h)}else d=Y.measureText(t,c.data,c.gc,d,s),f=h;y.push(d),b.push(f),x.push(h/2)}function _(t){return{width:y[t]||0,height:b[t]||0,offset:x[t]||0}}return function(t,e){Y.each(t,(function(t){var n,r=t.gc,i=r.length/2;if(i>e){for(n=0;n<i;++n)delete t.data[r[n]];r.splice(0,i)}}))}(r,v),g=y.indexOf(Math.max.apply(null,y)),m=b.indexOf(Math.max.apply(null,b)),{first:_(0),last:_(v-1),widest:_(g),highest:_(m)}}function ln(t){return t.drawTicks?t.tickMarkLength:0}function un(t){var e,n;return t.display?(e=Y.options._parseFont(t),n=Y.options.toPadding(t.padding),e.lineHeight+n.height):0}function cn(t,e){return Y.extend(Y.options._parseFont({fontFamily:rn(e.fontFamily,t.fontFamily),fontSize:rn(e.fontSize,t.fontSize),fontStyle:rn(e.fontStyle,t.fontStyle),lineHeight:rn(e.lineHeight,t.lineHeight)}),{color:Y.options.resolve([e.fontColor,t.fontColor,N.global.defaultFontColor])})}function hn(t){var e=cn(t,t.minor);return{minor:e,major:t.major.enabled?cn(t,t.major):e}}function dn(t){var e,n,r,i=[];for(n=0,r=t.length;n<r;++n)void 0!==(e=t[n])._index&&i.push(e);return i}function fn(t,e,n,r){var i,a,o,s,l=rn(n,0),u=Math.min(rn(r,t.length),t.length),c=0;for(e=Math.ceil(e),r&&(e=(i=r-n)/Math.floor(i/e)),s=l;s<0;)c++,s=Math.round(l+c*e);for(a=Math.max(l,0);a<u;a++)o=t[a],a===s?(o._index=a,c++,s=Math.round(l+c*e)):delete o.label}N._set("scale",{display:!0,position:"left",offset:!1,gridLines:{display:!0,color:"rgba(0,0,0,0.1)",lineWidth:1,drawBorder:!0,drawOnChartArea:!0,drawTicks:!0,tickMarkLength:10,zeroLineWidth:1,zeroLineColor:"rgba(0,0,0,0.25)",zeroLineBorderDash:[],zeroLineBorderDashOffset:0,offsetGridLines:!1,borderDash:[],borderDashOffset:0},scaleLabel:{display:!1,labelString:"",padding:{top:4,bottom:4}},ticks:{beginAtZero:!1,minRotation:0,maxRotation:50,mirror:!1,padding:0,reverse:!1,display:!0,autoSkip:!0,autoSkipPadding:0,labelOffset:0,callback:tn.formatters.values,minor:{},major:{}}});var pn=K.extend({zeroLineIndex:0,getPadding:function(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}},getTicks:function(){return this._ticks},_getLabels:function(){var t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels||[]},mergeTicksOptions:function(){},beforeUpdate:function(){Y.callback(this.options.beforeUpdate,[this])},update:function(t,e,n){var r,i,a,o,s,l=this,u=l.options.ticks,c=u.sampleSize;if(l.beforeUpdate(),l.maxWidth=t,l.maxHeight=e,l.margins=Y.extend({left:0,right:0,top:0,bottom:0},n),l._ticks=null,l.ticks=null,l._labelSizes=null,l._maxLabelLines=0,l.longestLabelWidth=0,l.longestTextCache=l.longestTextCache||{},l._gridLineItems=null,l._labelItems=null,l.beforeSetDimensions(),l.setDimensions(),l.afterSetDimensions(),l.beforeDataLimits(),l.determineDataLimits(),l.afterDataLimits(),l.beforeBuildTicks(),o=l.buildTicks()||[],(!(o=l.afterBuildTicks(o)||o)||!o.length)&&l.ticks)for(o=[],r=0,i=l.ticks.length;r<i;++r)o.push({value:l.ticks[r],major:!1});return l._ticks=o,s=c<o.length,a=l._convertTicksToLabels(s?function(t,e){for(var n=[],r=t.length/e,i=0,a=t.length;i<a;i+=r)n.push(t[Math.floor(i)]);return n}(o,c):o),l._configure(),l.beforeCalculateTickRotation(),l.calculateTickRotation(),l.afterCalculateTickRotation(),l.beforeFit(),l.fit(),l.afterFit(),l._ticksToDraw=u.display&&(u.autoSkip||"auto"===u.source)?l._autoSkip(o):o,s&&(a=l._convertTicksToLabels(l._ticksToDraw)),l.ticks=a,l.afterUpdate(),l.minSize},_configure:function(){var t,e,n=this,r=n.options.ticks.reverse;n.isHorizontal()?(t=n.left,e=n.right):(t=n.top,e=n.bottom,r=!r),n._startPixel=t,n._endPixel=e,n._reversePixels=r,n._length=e-t},afterUpdate:function(){Y.callback(this.options.afterUpdate,[this])},beforeSetDimensions:function(){Y.callback(this.options.beforeSetDimensions,[this])},setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0},afterSetDimensions:function(){Y.callback(this.options.afterSetDimensions,[this])},beforeDataLimits:function(){Y.callback(this.options.beforeDataLimits,[this])},determineDataLimits:Y.noop,afterDataLimits:function(){Y.callback(this.options.afterDataLimits,[this])},beforeBuildTicks:function(){Y.callback(this.options.beforeBuildTicks,[this])},buildTicks:Y.noop,afterBuildTicks:function(t){var e=this;return en(t)&&t.length?Y.callback(e.options.afterBuildTicks,[e,t]):(e.ticks=Y.callback(e.options.afterBuildTicks,[e,e.ticks])||e.ticks,t)},beforeTickToLabelConversion:function(){Y.callback(this.options.beforeTickToLabelConversion,[this])},convertTicksToLabels:function(){var t=this.options.ticks;this.ticks=this.ticks.map(t.userCallback||t.callback,this)},afterTickToLabelConversion:function(){Y.callback(this.options.afterTickToLabelConversion,[this])},beforeCalculateTickRotation:function(){Y.callback(this.options.beforeCalculateTickRotation,[this])},calculateTickRotation:function(){var t,e,n,r,i,a,o,s=this,l=s.options,u=l.ticks,c=s.getTicks().length,h=u.minRotation||0,d=u.maxRotation,f=h;!s._isVisible()||!u.display||h>=d||c<=1||!s.isHorizontal()?s.labelRotation=h:(e=(t=s._getLabelSizes()).widest.width,n=t.highest.height-t.highest.offset,r=Math.min(s.maxWidth,s.chart.width-e),e+6>(i=l.offset?s.maxWidth/c:r/(c-1))&&(i=r/(c-(l.offset?.5:1)),a=s.maxHeight-ln(l.gridLines)-u.padding-un(l.scaleLabel),o=Math.sqrt(e*e+n*n),f=Y.toDegrees(Math.min(Math.asin(Math.min((t.highest.height+6)/i,1)),Math.asin(Math.min(a/o,1))-Math.asin(n/o))),f=Math.max(h,Math.min(d,f))),s.labelRotation=f)},afterCalculateTickRotation:function(){Y.callback(this.options.afterCalculateTickRotation,[this])},beforeFit:function(){Y.callback(this.options.beforeFit,[this])},fit:function(){var t=this,e=t.minSize={width:0,height:0},n=t.chart,r=t.options,i=r.ticks,a=r.scaleLabel,o=r.gridLines,s=t._isVisible(),l="bottom"===r.position,u=t.isHorizontal();if(u?e.width=t.maxWidth:s&&(e.width=ln(o)+un(a)),u?s&&(e.height=ln(o)+un(a)):e.height=t.maxHeight,i.display&&s){var c=hn(i),h=t._getLabelSizes(),d=h.first,f=h.last,p=h.widest,g=h.highest,m=.4*c.minor.lineHeight,v=i.padding;if(u){var y=0!==t.labelRotation,b=Y.toRadians(t.labelRotation),x=Math.cos(b),_=Math.sin(b),w=_*p.width+x*(g.height-(y?g.offset:0))+(y?0:m);e.height=Math.min(t.maxHeight,e.height+w+v);var k,M,S=t.getPixelForTick(0)-t.left,D=t.right-t.getPixelForTick(t.getTicks().length-1);y?(k=l?x*d.width+_*d.offset:_*(d.height-d.offset),M=l?_*(f.height-f.offset):x*f.width+_*f.offset):(k=d.width/2,M=f.width/2),t.paddingLeft=Math.max((k-S)*t.width/(t.width-S),0)+3,t.paddingRight=Math.max((M-D)*t.width/(t.width-D),0)+3}else{var C=i.mirror?0:p.width+v+m;e.width=Math.min(t.maxWidth,e.width+C),t.paddingTop=d.height/2,t.paddingBottom=f.height/2}}t.handleMargins(),u?(t.width=t._length=n.width-t.margins.left-t.margins.right,t.height=e.height):(t.width=e.width,t.height=t._length=n.height-t.margins.top-t.margins.bottom)},handleMargins:function(){var t=this;t.margins&&(t.margins.left=Math.max(t.paddingLeft,t.margins.left),t.margins.top=Math.max(t.paddingTop,t.margins.top),t.margins.right=Math.max(t.paddingRight,t.margins.right),t.margins.bottom=Math.max(t.paddingBottom,t.margins.bottom))},afterFit:function(){Y.callback(this.options.afterFit,[this])},isHorizontal:function(){var t=this.options.position;return"top"===t||"bottom"===t},isFullWidth:function(){return this.options.fullWidth},getRightValue:function(t){if(nn(t))return NaN;if(("number"==typeof t||t instanceof Number)&&!isFinite(t))return NaN;if(t)if(this.isHorizontal()){if(void 0!==t.x)return this.getRightValue(t.x)}else if(void 0!==t.y)return this.getRightValue(t.y);return t},_convertTicksToLabels:function(t){var e,n,r,i=this;for(i.ticks=t.map((function(t){return t.value})),i.beforeTickToLabelConversion(),e=i.convertTicksToLabels(t)||i.ticks,i.afterTickToLabelConversion(),n=0,r=t.length;n<r;++n)t[n].label=e[n];return e},_getLabelSizes:function(){var t=this,e=t._labelSizes;return e||(t._labelSizes=e=sn(t.ctx,hn(t.options.ticks),t.getTicks(),t.longestTextCache),t.longestLabelWidth=e.widest.width),e},_parseValue:function(t){var e,n,r,i;return en(t)?(e=+this.getRightValue(t[0]),n=+this.getRightValue(t[1]),r=Math.min(e,n),i=Math.max(e,n)):(e=void 0,n=t=+this.getRightValue(t),r=t,i=t),{min:r,max:i,start:e,end:n}},_getScaleLabel:function(t){var e=this._parseValue(t);return void 0!==e.start?"["+e.start+", "+e.end+"]":+this.getRightValue(t)},getLabelForIndex:Y.noop,getPixelForValue:Y.noop,getValueForPixel:Y.noop,getPixelForTick:function(t){var e=this.options.offset,n=this._ticks.length,r=1/Math.max(n-(e?0:1),1);return t<0||t>n-1?null:this.getPixelForDecimal(t*r+(e?r/2:0))},getPixelForDecimal:function(t){return this._reversePixels&&(t=1-t),this._startPixel+t*this._length},getDecimalForPixel:function(t){var e=(t-this._startPixel)/this._length;return this._reversePixels?1-e:e},getBasePixel:function(){return this.getPixelForValue(this.getBaseValue())},getBaseValue:function(){var t=this.min,e=this.max;return this.beginAtZero?0:t<0&&e<0?e:t>0&&e>0?t:0},_autoSkip:function(t){var e,n,r,i,a=this.options.ticks,o=this._length,s=a.maxTicksLimit||o/this._tickSize()+1,l=a.major.enabled?function(t){var e,n,r=[];for(e=0,n=t.length;e<n;e++)t[e].major&&r.push(e);return r}(t):[],u=l.length,c=l[0],h=l[u-1];if(u>s)return function(t,e,n){var r,i,a=0,o=e[0];for(n=Math.ceil(n),r=0;r<t.length;r++)i=t[r],r===o?(i._index=r,o=e[++a*n]):delete i.label}(t,l,u/s),dn(t);if(r=function(t,e,n,r){var i,a,o,s,l=function(t){var e,n,r=t.length;if(r<2)return!1;for(n=t[0],e=1;e<r;++e)if(t[e]-t[e-1]!==n)return!1;return n}(t),u=(e.length-1)/r;if(!l)return Math.max(u,1);for(o=0,s=(i=Y.math._factorize(l)).length-1;o<s;o++)if((a=i[o])>u)return a;return Math.max(u,1)}(l,t,0,s),u>0){for(e=0,n=u-1;e<n;e++)fn(t,r,l[e],l[e+1]);return i=u>1?(h-c)/(u-1):null,fn(t,r,Y.isNullOrUndef(i)?0:c-i,c),fn(t,r,h,Y.isNullOrUndef(i)?t.length:h+i),dn(t)}return fn(t,r),dn(t)},_tickSize:function(){var t=this.options.ticks,e=Y.toRadians(this.labelRotation),n=Math.abs(Math.cos(e)),r=Math.abs(Math.sin(e)),i=this._getLabelSizes(),a=t.autoSkipPadding||0,o=i?i.widest.width+a:0,s=i?i.highest.height+a:0;return this.isHorizontal()?s*n>o*r?o/n:s/r:s*r<o*n?s/n:o/r},_isVisible:function(){var t,e,n,r=this.chart,i=this.options.display;if("auto"!==i)return!!i;for(t=0,e=r.data.datasets.length;t<e;++t)if(r.isDatasetVisible(t)&&((n=r.getDatasetMeta(t)).xAxisID===this.id||n.yAxisID===this.id))return!0;return!1},_computeGridLineItems:function(t){var e,n,r,i,a,o,s,l,u,c,h,d,f,p,g,m,v,y=this,b=y.chart,x=y.options,_=x.gridLines,w=x.position,k=_.offsetGridLines,M=y.isHorizontal(),S=y._ticksToDraw,D=S.length+(k?1:0),C=ln(_),O=[],T=_.drawBorder?an(_.lineWidth,0,0):0,A=T/2,P=Y._alignPixel,I=function(t){return P(b,t,T)};for("top"===w?(e=I(y.bottom),s=y.bottom-C,u=e-A,h=I(t.top)+A,f=t.bottom):"bottom"===w?(e=I(y.top),h=t.top,f=I(t.bottom)-A,s=e+A,u=y.top+C):"left"===w?(e=I(y.right),o=y.right-C,l=e-A,c=I(t.left)+A,d=t.right):(e=I(y.left),c=t.left,d=I(t.right)-A,o=e+A,l=y.left+C),n=0;n<D;++n)r=S[n]||{},nn(r.label)&&n<S.length||(n===y.zeroLineIndex&&x.offset===k?(p=_.zeroLineWidth,g=_.zeroLineColor,m=_.zeroLineBorderDash||[],v=_.zeroLineBorderDashOffset||0):(p=an(_.lineWidth,n,1),g=an(_.color,n,"rgba(0,0,0,0.1)"),m=_.borderDash||[],v=_.borderDashOffset||0),void 0!==(i=on(y,r._index||n,k))&&(a=P(b,i,p),M?o=l=c=d=a:s=u=h=f=a,O.push({tx1:o,ty1:s,tx2:l,ty2:u,x1:c,y1:h,x2:d,y2:f,width:p,color:g,borderDash:m,borderDashOffset:v})));return O.ticksLength=D,O.borderValue=e,O},_computeLabelItems:function(){var t,e,n,r,i,a,o,s,l,u,c,h,d=this,f=d.options,p=f.ticks,g=f.position,m=p.mirror,v=d.isHorizontal(),y=d._ticksToDraw,b=hn(p),x=p.padding,_=ln(f.gridLines),w=-Y.toRadians(d.labelRotation),k=[];for("top"===g?(a=d.bottom-_-x,o=w?"left":"center"):"bottom"===g?(a=d.top+_+x,o=w?"right":"center"):"left"===g?(i=d.right-(m?0:_)-x,o=m?"left":"right"):(i=d.left+(m?0:_)+x,o=m?"right":"left"),t=0,e=y.length;t<e;++t)r=(n=y[t]).label,nn(r)||(s=d.getPixelForTick(n._index||t)+p.labelOffset,u=(l=n.major?b.major:b.minor).lineHeight,c=en(r)?r.length:1,v?(i=s,h="top"===g?((w?1:.5)-c)*u:(w?0:.5)*u):(a=s,h=(1-c)*u/2),k.push({x:i,y:a,rotation:w,label:r,font:l,textOffset:h,textAlign:o}));return k},_drawGrid:function(t){var e=this,n=e.options.gridLines;if(n.display){var r,i,a,o,s,l=e.ctx,u=e.chart,c=Y._alignPixel,h=n.drawBorder?an(n.lineWidth,0,0):0,d=e._gridLineItems||(e._gridLineItems=e._computeGridLineItems(t));for(a=0,o=d.length;a<o;++a)r=(s=d[a]).width,i=s.color,r&&i&&(l.save(),l.lineWidth=r,l.strokeStyle=i,l.setLineDash&&(l.setLineDash(s.borderDash),l.lineDashOffset=s.borderDashOffset),l.beginPath(),n.drawTicks&&(l.moveTo(s.tx1,s.ty1),l.lineTo(s.tx2,s.ty2)),n.drawOnChartArea&&(l.moveTo(s.x1,s.y1),l.lineTo(s.x2,s.y2)),l.stroke(),l.restore());if(h){var f,p,g,m,v=h,y=an(n.lineWidth,d.ticksLength-1,1),b=d.borderValue;e.isHorizontal()?(f=c(u,e.left,v)-v/2,p=c(u,e.right,y)+y/2,g=m=b):(g=c(u,e.top,v)-v/2,m=c(u,e.bottom,y)+y/2,f=p=b),l.lineWidth=h,l.strokeStyle=an(n.color,0),l.beginPath(),l.moveTo(f,g),l.lineTo(p,m),l.stroke()}}},_drawLabels:function(){var t=this;if(t.options.ticks.display){var e,n,r,i,a,o,s,l,u=t.ctx,c=t._labelItems||(t._labelItems=t._computeLabelItems());for(e=0,r=c.length;e<r;++e){if(o=(a=c[e]).font,u.save(),u.translate(a.x,a.y),u.rotate(a.rotation),u.font=o.string,u.fillStyle=o.color,u.textBaseline="middle",u.textAlign=a.textAlign,s=a.label,l=a.textOffset,en(s))for(n=0,i=s.length;n<i;++n)u.fillText(""+s[n],0,l),l+=o.lineHeight;else u.fillText(s,0,l);u.restore()}}},_drawTitle:function(){var t=this,e=t.ctx,n=t.options,r=n.scaleLabel;if(r.display){var i,a,o=rn(r.fontColor,N.global.defaultFontColor),s=Y.options._parseFont(r),l=Y.options.toPadding(r.padding),u=s.lineHeight/2,c=n.position,h=0;if(t.isHorizontal())i=t.left+t.width/2,a="bottom"===c?t.bottom-u-l.bottom:t.top+u+l.top;else{var d="left"===c;i=d?t.left+u+l.top:t.right-u-l.top,a=t.top+t.height/2,h=d?-.5*Math.PI:.5*Math.PI}e.save(),e.translate(i,a),e.rotate(h),e.textAlign="center",e.textBaseline="middle",e.fillStyle=o,e.font=s.string,e.fillText(r.labelString,0,0),e.restore()}},draw:function(t){this._isVisible()&&(this._drawGrid(t),this._drawTitle(),this._drawLabels())},_layers:function(){var t=this,e=t.options,n=e.ticks&&e.ticks.z||0,r=e.gridLines&&e.gridLines.z||0;return t._isVisible()&&n!==r&&t.draw===t._draw?[{z:r,draw:function(){t._drawGrid.apply(t,arguments),t._drawTitle.apply(t,arguments)}},{z:n,draw:function(){t._drawLabels.apply(t,arguments)}}]:[{z:n,draw:function(){t.draw.apply(t,arguments)}}]},_getMatchingVisibleMetas:function(t){var e=this,n=e.isHorizontal();return e.chart._getSortedVisibleDatasetMetas().filter((function(r){return(!t||r.type===t)&&(n?r.xAxisID===e.id:r.yAxisID===e.id)}))}});pn.prototype._draw=pn.prototype.draw;var gn=pn,mn=Y.isNullOrUndef,vn=gn.extend({determineDataLimits:function(){var t,e=this,n=e._getLabels(),r=e.options.ticks,i=r.min,a=r.max,o=0,s=n.length-1;void 0!==i&&(t=n.indexOf(i))>=0&&(o=t),void 0!==a&&(t=n.indexOf(a))>=0&&(s=t),e.minIndex=o,e.maxIndex=s,e.min=n[o],e.max=n[s]},buildTicks:function(){var t=this._getLabels(),e=this.minIndex,n=this.maxIndex;this.ticks=0===e&&n===t.length-1?t:t.slice(e,n+1)},getLabelForIndex:function(t,e){var n=this.chart;return n.getDatasetMeta(e).controller._getValueScaleId()===this.id?this.getRightValue(n.data.datasets[e].data[t]):this._getLabels()[t]},_configure:function(){var t=this,e=t.options.offset,n=t.ticks;gn.prototype._configure.call(t),t.isHorizontal()||(t._reversePixels=!t._reversePixels),n&&(t._startValue=t.minIndex-(e?.5:0),t._valueRange=Math.max(n.length-(e?0:1),1))},getPixelForValue:function(t,e,n){var r,i,a,o=this;return mn(e)||mn(n)||(t=o.chart.data.datasets[n].data[e]),mn(t)||(r=o.isHorizontal()?t.x:t.y),(void 0!==r||void 0!==t&&isNaN(e))&&(i=o._getLabels(),t=Y.valueOrDefault(r,t),e=-1!==(a=i.indexOf(t))?a:e,isNaN(e)&&(e=t)),o.getPixelForDecimal((e-o._startValue)/o._valueRange)},getPixelForTick:function(t){var e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t],t+this.minIndex)},getValueForPixel:function(t){var e=Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange);return Math.min(Math.max(e,0),this.ticks.length-1)},getBasePixel:function(){return this.bottom}}),yn={position:"bottom"};vn._defaults=yn;var bn=Y.noop,xn=Y.isNullOrUndef,_n=gn.extend({getRightValue:function(t){return"string"==typeof t?+t:gn.prototype.getRightValue.call(this,t)},handleTickRangeOptions:function(){var t=this,e=t.options.ticks;if(e.beginAtZero){var n=Y.sign(t.min),r=Y.sign(t.max);n<0&&r<0?t.max=0:n>0&&r>0&&(t.min=0)}var i=void 0!==e.min||void 0!==e.suggestedMin,a=void 0!==e.max||void 0!==e.suggestedMax;void 0!==e.min?t.min=e.min:void 0!==e.suggestedMin&&(null===t.min?t.min=e.suggestedMin:t.min=Math.min(t.min,e.suggestedMin)),void 0!==e.max?t.max=e.max:void 0!==e.suggestedMax&&(null===t.max?t.max=e.suggestedMax:t.max=Math.max(t.max,e.suggestedMax)),i!==a&&t.min>=t.max&&(i?t.max=t.min+1:t.min=t.max-1),t.min===t.max&&(t.max++,e.beginAtZero||t.min--)},getTickLimit:function(){var t,e=this.options.ticks,n=e.stepSize,r=e.maxTicksLimit;return n?t=Math.ceil(this.max/n)-Math.floor(this.min/n)+1:(t=this._computeTickLimit(),r=r||11),r&&(t=Math.min(r,t)),t},_computeTickLimit:function(){return Number.POSITIVE_INFINITY},handleDirectionalChanges:bn,buildTicks:function(){var t=this,e=t.options.ticks,n=t.getTickLimit(),r={maxTicks:n=Math.max(2,n),min:e.min,max:e.max,precision:e.precision,stepSize:Y.valueOrDefault(e.fixedStepSize,e.stepSize)},i=t.ticks=function(t,e){var n,r,i,a,o=[],s=t.stepSize,l=s||1,u=t.maxTicks-1,c=t.min,h=t.max,d=t.precision,f=e.min,p=e.max,g=Y.niceNum((p-f)/u/l)*l;if(g<1e-14&&xn(c)&&xn(h))return[f,p];(a=Math.ceil(p/g)-Math.floor(f/g))>u&&(g=Y.niceNum(a*g/u/l)*l),s||xn(d)?n=Math.pow(10,Y._decimalPlaces(g)):(n=Math.pow(10,d),g=Math.ceil(g*n)/n),r=Math.floor(f/g)*g,i=Math.ceil(p/g)*g,s&&(!xn(c)&&Y.almostWhole(c/g,g/1e3)&&(r=c),!xn(h)&&Y.almostWhole(h/g,g/1e3)&&(i=h)),a=(i-r)/g,a=Y.almostEquals(a,Math.round(a),g/1e3)?Math.round(a):Math.ceil(a),r=Math.round(r*n)/n,i=Math.round(i*n)/n,o.push(xn(c)?r:c);for(var m=1;m<a;++m)o.push(Math.round((r+m*g)*n)/n);return o.push(xn(h)?i:h),o}(r,t);t.handleDirectionalChanges(),t.max=Y.max(i),t.min=Y.min(i),e.reverse?(i.reverse(),t.start=t.max,t.end=t.min):(t.start=t.min,t.end=t.max)},convertTicksToLabels:function(){var t=this;t.ticksAsNumbers=t.ticks.slice(),t.zeroLineIndex=t.ticks.indexOf(0),gn.prototype.convertTicksToLabels.call(t)},_configure:function(){var t,e=this,n=e.getTicks(),r=e.min,i=e.max;gn.prototype._configure.call(e),e.options.offset&&n.length&&(r-=t=(i-r)/Math.max(n.length-1,1)/2,i+=t),e._startValue=r,e._endValue=i,e._valueRange=i-r}}),wn={position:"left",ticks:{callback:tn.formatters.linear}};function kn(t,e,n,r){var i,a,o=t.options,s=function(t,e,n){var r=[n.type,void 0===e&&void 0===n.stack?n.index:"",n.stack].join(".");return void 0===t[r]&&(t[r]={pos:[],neg:[]}),t[r]}(e,o.stacked,n),l=s.pos,u=s.neg,c=r.length;for(i=0;i<c;++i)a=t._parseValue(r[i]),isNaN(a.min)||isNaN(a.max)||n.data[i].hidden||(l[i]=l[i]||0,u[i]=u[i]||0,o.relativePoints?l[i]=100:a.min<0||a.max<0?u[i]+=a.min:l[i]+=a.max)}function Mn(t,e,n){var r,i,a=n.length;for(r=0;r<a;++r)i=t._parseValue(n[r]),isNaN(i.min)||isNaN(i.max)||e.data[r].hidden||(t.min=Math.min(t.min,i.min),t.max=Math.max(t.max,i.max))}var Sn=_n.extend({determineDataLimits:function(){var t,e,n,r,i=this,a=i.options,o=i.chart.data.datasets,s=i._getMatchingVisibleMetas(),l=a.stacked,u={},c=s.length;if(i.min=Number.POSITIVE_INFINITY,i.max=Number.NEGATIVE_INFINITY,void 0===l)for(t=0;!l&&t<c;++t)l=void 0!==(e=s[t]).stack;for(t=0;t<c;++t)n=o[(e=s[t]).index].data,l?kn(i,u,e,n):Mn(i,e,n);Y.each(u,(function(t){r=t.pos.concat(t.neg),i.min=Math.min(i.min,Y.min(r)),i.max=Math.max(i.max,Y.max(r))})),i.min=Y.isFinite(i.min)&&!isNaN(i.min)?i.min:0,i.max=Y.isFinite(i.max)&&!isNaN(i.max)?i.max:1,i.handleTickRangeOptions()},_computeTickLimit:function(){var t;return this.isHorizontal()?Math.ceil(this.width/40):(t=Y.options._parseFont(this.options.ticks),Math.ceil(this.height/t.lineHeight))},handleDirectionalChanges:function(){this.isHorizontal()||this.ticks.reverse()},getLabelForIndex:function(t,e){return this._getScaleLabel(this.chart.data.datasets[e].data[t])},getPixelForValue:function(t){return this.getPixelForDecimal((+this.getRightValue(t)-this._startValue)/this._valueRange)},getValueForPixel:function(t){return this._startValue+this.getDecimalForPixel(t)*this._valueRange},getPixelForTick:function(t){var e=this.ticksAsNumbers;return t<0||t>e.length-1?null:this.getPixelForValue(e[t])}}),Dn=wn;Sn._defaults=Dn;var Cn=Y.valueOrDefault,On=Y.math.log10,Tn={position:"left",ticks:{callback:tn.formatters.logarithmic}};function An(t,e){return Y.isFinite(t)&&t>=0?t:e}var Pn=gn.extend({determineDataLimits:function(){var t,e,n,r,i,a,o=this,s=o.options,l=o.chart,u=l.data.datasets,c=o.isHorizontal();function h(t){return c?t.xAxisID===o.id:t.yAxisID===o.id}o.min=Number.POSITIVE_INFINITY,o.max=Number.NEGATIVE_INFINITY,o.minNotZero=Number.POSITIVE_INFINITY;var d=s.stacked;if(void 0===d)for(t=0;t<u.length;t++)if(e=l.getDatasetMeta(t),l.isDatasetVisible(t)&&h(e)&&void 0!==e.stack){d=!0;break}if(s.stacked||d){var f={};for(t=0;t<u.length;t++){var p=[(e=l.getDatasetMeta(t)).type,void 0===s.stacked&&void 0===e.stack?t:"",e.stack].join(".");if(l.isDatasetVisible(t)&&h(e))for(void 0===f[p]&&(f[p]=[]),i=0,a=(r=u[t].data).length;i<a;i++){var g=f[p];n=o._parseValue(r[i]),isNaN(n.min)||isNaN(n.max)||e.data[i].hidden||n.min<0||n.max<0||(g[i]=g[i]||0,g[i]+=n.max)}}Y.each(f,(function(t){if(t.length>0){var e=Y.min(t),n=Y.max(t);o.min=Math.min(o.min,e),o.max=Math.max(o.max,n)}}))}else for(t=0;t<u.length;t++)if(e=l.getDatasetMeta(t),l.isDatasetVisible(t)&&h(e))for(i=0,a=(r=u[t].data).length;i<a;i++)n=o._parseValue(r[i]),isNaN(n.min)||isNaN(n.max)||e.data[i].hidden||n.min<0||n.max<0||(o.min=Math.min(n.min,o.min),o.max=Math.max(n.max,o.max),0!==n.min&&(o.minNotZero=Math.min(n.min,o.minNotZero)));o.min=Y.isFinite(o.min)?o.min:null,o.max=Y.isFinite(o.max)?o.max:null,o.minNotZero=Y.isFinite(o.minNotZero)?o.minNotZero:null,this.handleTickRangeOptions()},handleTickRangeOptions:function(){var t=this,e=t.options.ticks;t.min=An(e.min,t.min),t.max=An(e.max,t.max),t.min===t.max&&(0!==t.min&&null!==t.min?(t.min=Math.pow(10,Math.floor(On(t.min))-1),t.max=Math.pow(10,Math.floor(On(t.max))+1)):(t.min=1,t.max=10)),null===t.min&&(t.min=Math.pow(10,Math.floor(On(t.max))-1)),null===t.max&&(t.max=0!==t.min?Math.pow(10,Math.floor(On(t.min))+1):10),null===t.minNotZero&&(t.min>0?t.minNotZero=t.min:t.max<1?t.minNotZero=Math.pow(10,Math.floor(On(t.max))):t.minNotZero=1)},buildTicks:function(){var t=this,e=t.options.ticks,n=!t.isHorizontal(),r={min:An(e.min),max:An(e.max)},i=t.ticks=function(t,e){var n,r,i=[],a=Cn(t.min,Math.pow(10,Math.floor(On(e.min)))),o=Math.floor(On(e.max)),s=Math.ceil(e.max/Math.pow(10,o));0===a?(n=Math.floor(On(e.minNotZero)),r=Math.floor(e.minNotZero/Math.pow(10,n)),i.push(a),a=r*Math.pow(10,n)):(n=Math.floor(On(a)),r=Math.floor(a/Math.pow(10,n)));var l=n<0?Math.pow(10,Math.abs(n)):1;do{i.push(a),10==++r&&(r=1,l=++n>=0?1:l),a=Math.round(r*Math.pow(10,n)*l)/l}while(n<o||n===o&&r<s);var u=Cn(t.max,a);return i.push(u),i}(r,t);t.max=Y.max(i),t.min=Y.min(i),e.reverse?(n=!n,t.start=t.max,t.end=t.min):(t.start=t.min,t.end=t.max),n&&i.reverse()},convertTicksToLabels:function(){this.tickValues=this.ticks.slice(),gn.prototype.convertTicksToLabels.call(this)},getLabelForIndex:function(t,e){return this._getScaleLabel(this.chart.data.datasets[e].data[t])},getPixelForTick:function(t){var e=this.tickValues;return t<0||t>e.length-1?null:this.getPixelForValue(e[t])},_getFirstTickValue:function(t){var e=Math.floor(On(t));return Math.floor(t/Math.pow(10,e))*Math.pow(10,e)},_configure:function(){var t=this,e=t.min,n=0;gn.prototype._configure.call(t),0===e&&(e=t._getFirstTickValue(t.minNotZero),n=Cn(t.options.ticks.fontSize,N.global.defaultFontSize)/t._length),t._startValue=On(e),t._valueOffset=n,t._valueRange=(On(t.max)-On(e))/(1-n)},getPixelForValue:function(t){var e=this,n=0;return(t=+e.getRightValue(t))>e.min&&t>0&&(n=(On(t)-e._startValue)/e._valueRange+e._valueOffset),e.getPixelForDecimal(n)},getValueForPixel:function(t){var e=this,n=e.getDecimalForPixel(t);return 0===n&&0===e.min?0:Math.pow(10,e._startValue+(n-e._valueOffset)*e._valueRange)}}),In=Tn;Pn._defaults=In;var Fn=Y.valueOrDefault,Ln=Y.valueAtIndexOrDefault,Rn=Y.options.resolve,Nn={display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,color:"rgba(0,0,0,0.1)",lineWidth:1,borderDash:[],borderDashOffset:0},gridLines:{circular:!1},ticks:{showLabelBackdrop:!0,backdropColor:"rgba(255,255,255,0.75)",backdropPaddingY:2,backdropPaddingX:2,callback:tn.formatters.linear},pointLabels:{display:!0,fontSize:10,callback:function(t){return t}}};function En(t){var e=t.ticks;return e.display&&t.display?Fn(e.fontSize,N.global.defaultFontSize)+2*e.backdropPaddingY:0}function jn(t,e,n,r,i){return t===r||t===i?{start:e-n/2,end:e+n/2}:t<r||t>i?{start:e-n,end:e}:{start:e,end:e+n}}function zn(t){return 0===t||180===t?"center":t<180?"left":"right"}function Wn(t,e,n,r){var i,a,o=n.y+r/2;if(Y.isArray(e))for(i=0,a=e.length;i<a;++i)t.fillText(e[i],n.x,o),o+=r;else t.fillText(e,n.x,o)}function Yn(t,e,n){90===t||270===t?n.y-=e.h/2:(t>270||t<90)&&(n.y-=e.h)}function Vn(t){return Y.isNumber(t)?t:0}var Bn=_n.extend({setDimensions:function(){var t=this;t.width=t.maxWidth,t.height=t.maxHeight,t.paddingTop=En(t.options)/2,t.xCenter=Math.floor(t.width/2),t.yCenter=Math.floor((t.height-t.paddingTop)/2),t.drawingArea=Math.min(t.height-t.paddingTop,t.width)/2},determineDataLimits:function(){var t=this,e=t.chart,n=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY;Y.each(e.data.datasets,(function(i,a){if(e.isDatasetVisible(a)){var o=e.getDatasetMeta(a);Y.each(i.data,(function(e,i){var a=+t.getRightValue(e);isNaN(a)||o.data[i].hidden||(n=Math.min(a,n),r=Math.max(a,r))}))}})),t.min=n===Number.POSITIVE_INFINITY?0:n,t.max=r===Number.NEGATIVE_INFINITY?0:r,t.handleTickRangeOptions()},_computeTickLimit:function(){return Math.ceil(this.drawingArea/En(this.options))},convertTicksToLabels:function(){var t=this;_n.prototype.convertTicksToLabels.call(t),t.pointLabels=t.chart.data.labels.map((function(){var e=Y.callback(t.options.pointLabels.callback,arguments,t);return e||0===e?e:""}))},getLabelForIndex:function(t,e){return+this.getRightValue(this.chart.data.datasets[e].data[t])},fit:function(){var t=this.options;t.display&&t.pointLabels.display?function(t){var e,n,r,i=Y.options._parseFont(t.options.pointLabels),a={l:0,r:t.width,t:0,b:t.height-t.paddingTop},o={};t.ctx.font=i.string,t._pointLabelSizes=[];var s,l,u,c=t.chart.data.labels.length;for(e=0;e<c;e++){r=t.getPointPosition(e,t.drawingArea+5),s=t.ctx,l=i.lineHeight,u=t.pointLabels[e],n=Y.isArray(u)?{w:Y.longestText(s,s.font,u),h:u.length*l}:{w:s.measureText(u).width,h:l},t._pointLabelSizes[e]=n;var h=t.getIndexAngle(e),d=Y.toDegrees(h)%360,f=jn(d,r.x,n.w,0,180),p=jn(d,r.y,n.h,90,270);f.start<a.l&&(a.l=f.start,o.l=h),f.end>a.r&&(a.r=f.end,o.r=h),p.start<a.t&&(a.t=p.start,o.t=h),p.end>a.b&&(a.b=p.end,o.b=h)}t.setReductions(t.drawingArea,a,o)}(this):this.setCenterPoint(0,0,0,0)},setReductions:function(t,e,n){var r=this,i=e.l/Math.sin(n.l),a=Math.max(e.r-r.width,0)/Math.sin(n.r),o=-e.t/Math.cos(n.t),s=-Math.max(e.b-(r.height-r.paddingTop),0)/Math.cos(n.b);i=Vn(i),a=Vn(a),o=Vn(o),s=Vn(s),r.drawingArea=Math.min(Math.floor(t-(i+a)/2),Math.floor(t-(o+s)/2)),r.setCenterPoint(i,a,o,s)},setCenterPoint:function(t,e,n,r){var i=this,a=i.width-e-i.drawingArea,o=t+i.drawingArea,s=n+i.drawingArea,l=i.height-i.paddingTop-r-i.drawingArea;i.xCenter=Math.floor((o+a)/2+i.left),i.yCenter=Math.floor((s+l)/2+i.top+i.paddingTop)},getIndexAngle:function(t){var e=this.chart,n=(t*(360/e.data.labels.length)+((e.options||{}).startAngle||0))%360;return(n<0?n+360:n)*Math.PI*2/360},getDistanceFromCenterForValue:function(t){var e=this;if(Y.isNullOrUndef(t))return NaN;var n=e.drawingArea/(e.max-e.min);return e.options.ticks.reverse?(e.max-t)*n:(t-e.min)*n},getPointPosition:function(t,e){var n=this.getIndexAngle(t)-Math.PI/2;return{x:Math.cos(n)*e+this.xCenter,y:Math.sin(n)*e+this.yCenter}},getPointPositionForValue:function(t,e){return this.getPointPosition(t,this.getDistanceFromCenterForValue(e))},getBasePosition:function(t){var e=this.min,n=this.max;return this.getPointPositionForValue(t||0,this.beginAtZero?0:e<0&&n<0?n:e>0&&n>0?e:0)},_drawGrid:function(){var t,e,n,r=this,i=r.ctx,a=r.options,o=a.gridLines,s=a.angleLines,l=Fn(s.lineWidth,o.lineWidth),u=Fn(s.color,o.color);if(a.pointLabels.display&&function(t){var e=t.ctx,n=t.options,r=n.pointLabels,i=En(n),a=t.getDistanceFromCenterForValue(n.ticks.reverse?t.min:t.max),o=Y.options._parseFont(r);e.save(),e.font=o.string,e.textBaseline="middle";for(var s=t.chart.data.labels.length-1;s>=0;s--){var l=0===s?i/2:0,u=t.getPointPosition(s,a+l+5),c=Ln(r.fontColor,s,N.global.defaultFontColor);e.fillStyle=c;var h=t.getIndexAngle(s),d=Y.toDegrees(h);e.textAlign=zn(d),Yn(d,t._pointLabelSizes[s],u),Wn(e,t.pointLabels[s],u,o.lineHeight)}e.restore()}(r),o.display&&Y.each(r.ticks,(function(t,n){0!==n&&(e=r.getDistanceFromCenterForValue(r.ticksAsNumbers[n]),function(t,e,n,r){var i,a=t.ctx,o=e.circular,s=t.chart.data.labels.length,l=Ln(e.color,r-1),u=Ln(e.lineWidth,r-1);if((o||s)&&l&&u){if(a.save(),a.strokeStyle=l,a.lineWidth=u,a.setLineDash&&(a.setLineDash(e.borderDash||[]),a.lineDashOffset=e.borderDashOffset||0),a.beginPath(),o)a.arc(t.xCenter,t.yCenter,n,0,2*Math.PI);else{i=t.getPointPosition(0,n),a.moveTo(i.x,i.y);for(var c=1;c<s;c++)i=t.getPointPosition(c,n),a.lineTo(i.x,i.y)}a.closePath(),a.stroke(),a.restore()}}(r,o,e,n))})),s.display&&l&&u){for(i.save(),i.lineWidth=l,i.strokeStyle=u,i.setLineDash&&(i.setLineDash(Rn([s.borderDash,o.borderDash,[]])),i.lineDashOffset=Rn([s.borderDashOffset,o.borderDashOffset,0])),t=r.chart.data.labels.length-1;t>=0;t--)e=r.getDistanceFromCenterForValue(a.ticks.reverse?r.min:r.max),n=r.getPointPosition(t,e),i.beginPath(),i.moveTo(r.xCenter,r.yCenter),i.lineTo(n.x,n.y),i.stroke();i.restore()}},_drawLabels:function(){var t=this,e=t.ctx,n=t.options.ticks;if(n.display){var r,i,a=t.getIndexAngle(0),o=Y.options._parseFont(n),s=Fn(n.fontColor,N.global.defaultFontColor);e.save(),e.font=o.string,e.translate(t.xCenter,t.yCenter),e.rotate(a),e.textAlign="center",e.textBaseline="middle",Y.each(t.ticks,(function(a,l){(0!==l||n.reverse)&&(r=t.getDistanceFromCenterForValue(t.ticksAsNumbers[l]),n.showLabelBackdrop&&(i=e.measureText(a).width,e.fillStyle=n.backdropColor,e.fillRect(-i/2-n.backdropPaddingX,-r-o.size/2-n.backdropPaddingY,i+2*n.backdropPaddingX,o.size+2*n.backdropPaddingY)),e.fillStyle=s,e.fillText(a,0,-r))})),e.restore()}},_drawTitle:Y.noop}),Hn=Nn;Bn._defaults=Hn;var Un=Y._deprecated,Gn=Y.options.resolve,qn=Y.valueOrDefault,Kn=Number.MIN_SAFE_INTEGER||-9007199254740991,Jn=Number.MAX_SAFE_INTEGER||9007199254740991,Zn={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},Xn=Object.keys(Zn);function $n(t,e){return t-e}function Qn(t){return Y.valueOrDefault(t.time.min,t.ticks.min)}function tr(t){return Y.valueOrDefault(t.time.max,t.ticks.max)}function er(t,e,n,r){var i=function(t,e,n){for(var r,i,a,o=0,s=t.length-1;o>=0&&o<=s;){if(i=t[(r=o+s>>1)-1]||null,a=t[r],!i)return{lo:null,hi:a};if(a[e]<n)o=r+1;else{if(!(i[e]>n))return{lo:i,hi:a};s=r-1}}return{lo:a,hi:null}}(t,e,n),a=i.lo?i.hi?i.lo:t[t.length-2]:t[0],o=i.lo?i.hi?i.hi:t[t.length-1]:t[1],s=o[e]-a[e],l=s?(n-a[e])/s:0,u=(o[r]-a[r])*l;return a[r]+u}function nr(t,e){var n=t._adapter,r=t.options.time,i=r.parser,a=i||r.format,o=e;return"function"==typeof i&&(o=i(o)),Y.isFinite(o)||(o="string"==typeof a?n.parse(o,a):n.parse(o)),null!==o?+o:(i||"function"!=typeof a||(o=a(e),Y.isFinite(o)||(o=n.parse(o))),o)}function rr(t,e){if(Y.isNullOrUndef(e))return null;var n=t.options.time,r=nr(t,t.getRightValue(e));return null===r?r:(n.round&&(r=+t._adapter.startOf(r,n.round)),r)}function ir(t,e,n,r){var i,a,o,s=Xn.length;for(i=Xn.indexOf(t);i<s-1;++i)if(o=(a=Zn[Xn[i]]).steps?a.steps:Jn,a.common&&Math.ceil((n-e)/(o*a.size))<=r)return Xn[i];return Xn[s-1]}function ar(t,e,n){var r,i,a=[],o={},s=e.length;for(r=0;r<s;++r)o[i=e[r]]=r,a.push({value:i,major:!1});return 0!==s&&n?function(t,e,n,r){var i,a,o=t._adapter,s=+o.startOf(e[0].value,r),l=e[e.length-1].value;for(i=s;i<=l;i=+o.add(i,1,r))(a=n[i])>=0&&(e[a].major=!0);return e}(t,a,o,n):a}var or=gn.extend({initialize:function(){this.mergeTicksOptions(),gn.prototype.initialize.call(this)},update:function(){var t=this,e=t.options,n=e.time||(e.time={}),r=t._adapter=new Qe._date(e.adapters.date);return Un("time scale",n.format,"time.format","time.parser"),Un("time scale",n.min,"time.min","ticks.min"),Un("time scale",n.max,"time.max","ticks.max"),Y.mergeIf(n.displayFormats,r.formats()),gn.prototype.update.apply(t,arguments)},getRightValue:function(t){return t&&void 0!==t.t&&(t=t.t),gn.prototype.getRightValue.call(this,t)},determineDataLimits:function(){var t,e,n,r,i,a,o,s=this,l=s.chart,u=s._adapter,c=s.options,h=c.time.unit||"day",d=Jn,f=Kn,p=[],g=[],m=[],v=s._getLabels();for(t=0,n=v.length;t<n;++t)m.push(rr(s,v[t]));for(t=0,n=(l.data.datasets||[]).length;t<n;++t)if(l.isDatasetVisible(t))if(i=l.data.datasets[t].data,Y.isObject(i[0]))for(g[t]=[],e=0,r=i.length;e<r;++e)a=rr(s,i[e]),p.push(a),g[t][e]=a;else g[t]=m.slice(0),o||(p=p.concat(m),o=!0);else g[t]=[];m.length&&(d=Math.min(d,m[0]),f=Math.max(f,m[m.length-1])),p.length&&(p=n>1?function(t){var e,n,r,i={},a=[];for(e=0,n=t.length;e<n;++e)i[r=t[e]]||(i[r]=!0,a.push(r));return a}(p).sort($n):p.sort($n),d=Math.min(d,p[0]),f=Math.max(f,p[p.length-1])),d=rr(s,Qn(c))||d,f=rr(s,tr(c))||f,d=d===Jn?+u.startOf(Date.now(),h):d,f=f===Kn?+u.endOf(Date.now(),h)+1:f,s.min=Math.min(d,f),s.max=Math.max(d+1,f),s._table=[],s._timestamps={data:p,datasets:g,labels:m}},buildTicks:function(){var t,e,n,r=this,i=r.min,a=r.max,o=r.options,s=o.ticks,l=o.time,u=r._timestamps,c=[],h=r.getLabelCapacity(i),d=s.source,f=o.distribution;for(u="data"===d||"auto"===d&&"series"===f?u.data:"labels"===d?u.labels:function(t,e,n,r){var i,a=t._adapter,o=t.options,s=o.time,l=s.unit||ir(s.minUnit,e,n,r),u=Gn([s.stepSize,s.unitStepSize,1]),c="week"===l&&s.isoWeekday,h=e,d=[];if(c&&(h=+a.startOf(h,"isoWeek",c)),h=+a.startOf(h,c?"day":l),a.diff(n,e,l)>1e5*u)throw e+" and "+n+" are too far apart with stepSize of "+u+" "+l;for(i=h;i<n;i=+a.add(i,u,l))d.push(i);return i!==n&&"ticks"!==o.bounds||d.push(i),d}(r,i,a,h),"ticks"===o.bounds&&u.length&&(i=u[0],a=u[u.length-1]),i=rr(r,Qn(o))||i,a=rr(r,tr(o))||a,t=0,e=u.length;t<e;++t)(n=u[t])>=i&&n<=a&&c.push(n);return r.min=i,r.max=a,r._unit=l.unit||(s.autoSkip?ir(l.minUnit,r.min,r.max,h):function(t,e,n,r,i){var a,o;for(a=Xn.length-1;a>=Xn.indexOf(n);a--)if(o=Xn[a],Zn[o].common&&t._adapter.diff(i,r,o)>=e-1)return o;return Xn[n?Xn.indexOf(n):0]}(r,c.length,l.minUnit,r.min,r.max)),r._majorUnit=s.major.enabled&&"year"!==r._unit?function(t){for(var e=Xn.indexOf(t)+1,n=Xn.length;e<n;++e)if(Zn[Xn[e]].common)return Xn[e]}(r._unit):void 0,r._table=function(t,e,n,r){if("linear"===r||!t.length)return[{time:e,pos:0},{time:n,pos:1}];var i,a,o,s,l,u=[],c=[e];for(i=0,a=t.length;i<a;++i)(s=t[i])>e&&s<n&&c.push(s);for(c.push(n),i=0,a=c.length;i<a;++i)l=c[i+1],o=c[i-1],s=c[i],void 0!==o&&void 0!==l&&Math.round((l+o)/2)===s||u.push({time:s,pos:i/(a-1)});return u}(r._timestamps.data,i,a,f),r._offsets=function(t,e,n,r,i){var a,o,s=0,l=0;return i.offset&&e.length&&(a=er(t,"time",e[0],"pos"),s=1===e.length?1-a:(er(t,"time",e[1],"pos")-a)/2,o=er(t,"time",e[e.length-1],"pos"),l=1===e.length?o:(o-er(t,"time",e[e.length-2],"pos"))/2),{start:s,end:l,factor:1/(s+1+l)}}(r._table,c,0,0,o),s.reverse&&c.reverse(),ar(r,c,r._majorUnit)},getLabelForIndex:function(t,e){var n=this,r=n._adapter,i=n.chart.data,a=n.options.time,o=i.labels&&t<i.labels.length?i.labels[t]:"",s=i.datasets[e].data[t];return Y.isObject(s)&&(o=n.getRightValue(s)),a.tooltipFormat?r.format(nr(n,o),a.tooltipFormat):"string"==typeof o?o:r.format(nr(n,o),a.displayFormats.datetime)},tickFormatFunction:function(t,e,n,r){var i=this._adapter,a=this.options,o=a.time.displayFormats,s=o[this._unit],l=this._majorUnit,u=o[l],c=n[e],h=a.ticks,d=l&&u&&c&&c.major,f=i.format(t,r||(d?u:s)),p=d?h.major:h.minor,g=Gn([p.callback,p.userCallback,h.callback,h.userCallback]);return g?g(f,e,n):f},convertTicksToLabels:function(t){var e,n,r=[];for(e=0,n=t.length;e<n;++e)r.push(this.tickFormatFunction(t[e].value,e,t));return r},getPixelForOffset:function(t){var e=this._offsets,n=er(this._table,"time",t,"pos");return this.getPixelForDecimal((e.start+n)*e.factor)},getPixelForValue:function(t,e,n){var r=null;if(void 0!==e&&void 0!==n&&(r=this._timestamps.datasets[n][e]),null===r&&(r=rr(this,t)),null!==r)return this.getPixelForOffset(r)},getPixelForTick:function(t){var e=this.getTicks();return t>=0&&t<e.length?this.getPixelForOffset(e[t].value):null},getValueForPixel:function(t){var e=this._offsets,n=this.getDecimalForPixel(t)/e.factor-e.end,r=er(this._table,"pos",n,"time");return this._adapter._create(r)},_getLabelSize:function(t){var e=this.options.ticks,n=this.ctx.measureText(t).width,r=Y.toRadians(this.isHorizontal()?e.maxRotation:e.minRotation),i=Math.cos(r),a=Math.sin(r),o=qn(e.fontSize,N.global.defaultFontSize);return{w:n*i+o*a,h:n*a+o*i}},getLabelWidth:function(t){return this._getLabelSize(t).w},getLabelCapacity:function(t){var e=this,n=e.options.time,r=n.displayFormats,i=r[n.unit]||r.millisecond,a=e.tickFormatFunction(t,0,ar(e,[t],e._majorUnit),i),o=e._getLabelSize(a),s=Math.floor(e.isHorizontal()?e.width/o.w:e.height/o.h);return e.options.offset&&s--,s>0?s:1}}),sr={position:"bottom",distribution:"linear",bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,displayFormat:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{autoSkip:!1,source:"auto",major:{enabled:!1}}};or._defaults=sr;var lr={category:vn,linear:Sn,logarithmic:Pn,radialLinear:Bn,time:or},ur={datetime:"MMM D, YYYY, h:mm:ss a",millisecond:"h:mm:ss.SSS a",second:"h:mm:ss a",minute:"h:mm a",hour:"hA",day:"MMM D",week:"ll",month:"MMM YYYY",quarter:"[Q]Q - YYYY",year:"YYYY"};Qe._date.override("function"==typeof t?{_id:"moment",formats:function(){return ur},parse:function(e,n){return"string"==typeof e&&"string"==typeof n?e=t(e,n):e instanceof t||(e=t(e)),e.isValid()?e.valueOf():null},format:function(e,n){return t(e).format(n)},add:function(e,n,r){return t(e).add(n,r).valueOf()},diff:function(e,n,r){return t(e).diff(t(n),r)},startOf:function(e,n,r){return e=t(e),"isoWeek"===n?e.isoWeekday(r).valueOf():e.startOf(n).valueOf()},endOf:function(e,n){return t(e).endOf(n).valueOf()},_create:function(e){return t(e)}}:{}),N._set("global",{plugins:{filler:{propagate:!0}}});var cr={dataset:function(t){var e=t.fill,n=t.chart,r=n.getDatasetMeta(e),i=r&&n.isDatasetVisible(e)&&r.dataset._children||[],a=i.length||0;return a?function(t,e){return e<a&&i[e]._view||null}:null},boundary:function(t){var e=t.boundary,n=e?e.x:null,r=e?e.y:null;return Y.isArray(e)?function(t,n){return e[n]}:function(t){return{x:null===n?t.x:n,y:null===r?t.y:r}}}};function hr(t,e,n){var r,i=t._model||{},a=i.fill;if(void 0===a&&(a=!!i.backgroundColor),!1===a||null===a)return!1;if(!0===a)return"origin";if(r=parseFloat(a,10),isFinite(r)&&Math.floor(r)===r)return"-"!==a[0]&&"+"!==a[0]||(r=e+r),!(r===e||r<0||r>=n)&&r;switch(a){case"bottom":return"start";case"top":return"end";case"zero":return"origin";case"origin":case"start":case"end":return a;default:return!1}}function dr(t){return(t.el._scale||{}).getPointPositionForValue?function(t){var e,n,r,i,a,o=t.el._scale,s=o.options,l=o.chart.data.labels.length,u=t.fill,c=[];if(!l)return null;for(e=s.ticks.reverse?o.max:o.min,n=s.ticks.reverse?o.min:o.max,r=o.getPointPositionForValue(0,e),i=0;i<l;++i)a="start"===u||"end"===u?o.getPointPositionForValue(i,"start"===u?e:n):o.getBasePosition(i),s.gridLines.circular&&(a.cx=r.x,a.cy=r.y,a.angle=o.getIndexAngle(i)-Math.PI/2),c.push(a);return c}(t):function(t){var e,n=t.el._model||{},r=t.el._scale||{},i=t.fill,a=null;if(isFinite(i))return null;if("start"===i?a=void 0===n.scaleBottom?r.bottom:n.scaleBottom:"end"===i?a=void 0===n.scaleTop?r.top:n.scaleTop:void 0!==n.scaleZero?a=n.scaleZero:r.getBasePixel&&(a=r.getBasePixel()),null!=a){if(void 0!==a.x&&void 0!==a.y)return a;if(Y.isFinite(a))return{x:(e=r.isHorizontal())?a:null,y:e?null:a}}return null}(t)}function fr(t,e,n){var r,i=t[e].fill,a=[e];if(!n)return i;for(;!1!==i&&-1===a.indexOf(i);){if(!isFinite(i))return i;if(!(r=t[i]))return!1;if(r.visible)return i;a.push(i),i=r.fill}return!1}function pr(t){var e=t.fill,n="dataset";return!1===e?null:(isFinite(e)||(n="boundary"),cr[n](t))}function gr(t){return t&&!t.skip}function mr(t,e,n,r,i){var a,o,s,l;if(r&&i){for(t.moveTo(e[0].x,e[0].y),a=1;a<r;++a)Y.canvas.lineTo(t,e[a-1],e[a]);if(void 0===n[0].angle)for(t.lineTo(n[i-1].x,n[i-1].y),a=i-1;a>0;--a)Y.canvas.lineTo(t,n[a],n[a-1],!0);else for(o=n[0].cx,s=n[0].cy,l=Math.sqrt(Math.pow(n[0].x-o,2)+Math.pow(n[0].y-s,2)),a=i-1;a>0;--a)t.arc(o,s,l,n[a].angle,n[a-1].angle,!0)}}function vr(t,e,n,r,i,a){var o,s,l,u,c,h,d,f,p=e.length,g=r.spanGaps,m=[],v=[],y=0,b=0;for(t.beginPath(),o=0,s=p;o<s;++o)c=n(u=e[l=o%p]._view,l,r),h=gr(u),d=gr(c),a&&void 0===f&&h&&(s=p+(f=o+1)),h&&d?(y=m.push(u),b=v.push(c)):y&&b&&(g?(h&&m.push(u),d&&v.push(c)):(mr(t,m,v,y,b),y=b=0,m=[],v=[]));mr(t,m,v,y,b),t.closePath(),t.fillStyle=i,t.fill()}var yr={id:"filler",afterDatasetsUpdate:function(t,e){var n,r,i,a,o=(t.data.datasets||[]).length,s=e.propagate,l=[];for(r=0;r<o;++r)a=null,(i=(n=t.getDatasetMeta(r)).dataset)&&i._model&&i instanceof _t.Line&&(a={visible:t.isDatasetVisible(r),fill:hr(i,r,o),chart:t,el:i}),n.$filler=a,l.push(a);for(r=0;r<o;++r)(a=l[r])&&(a.fill=fr(l,r,s),a.boundary=dr(a),a.mapper=pr(a))},beforeDatasetsDraw:function(t){var e,n,r,i,a,o,s,l=t._getSortedVisibleDatasetMetas(),u=t.ctx;for(n=l.length-1;n>=0;--n)(e=l[n].$filler)&&e.visible&&(i=(r=e.el)._view,a=r._children||[],o=e.mapper,s=i.backgroundColor||N.global.defaultColor,o&&s&&a.length&&(Y.canvas.clipArea(u,t.chartArea),vr(u,a,o,i,s,r._loop),Y.canvas.unclipArea(u)))}},br=Y.rtl.getRtlAdapter,xr=Y.noop,_r=Y.valueOrDefault;function wr(t,e){return t.usePointStyle&&t.boxWidth>e?e:t.boxWidth}N._set("global",{legend:{display:!0,position:"top",align:"center",fullWidth:!0,reverse:!1,weight:1e3,onClick:function(t,e){var n=e.datasetIndex,r=this.chart,i=r.getDatasetMeta(n);i.hidden=null===i.hidden?!r.data.datasets[n].hidden:null,r.update()},onHover:null,onLeave:null,labels:{boxWidth:40,padding:10,generateLabels:function(t){var e=t.data.datasets,n=t.options.legend||{},r=n.labels&&n.labels.usePointStyle;return t._getSortedDatasetMetas().map((function(n){var i=n.controller.getStyle(r?0:void 0);return{text:e[n.index].label,fillStyle:i.backgroundColor,hidden:!t.isDatasetVisible(n.index),lineCap:i.borderCapStyle,lineDash:i.borderDash,lineDashOffset:i.borderDashOffset,lineJoin:i.borderJoinStyle,lineWidth:i.borderWidth,strokeStyle:i.borderColor,pointStyle:i.pointStyle,rotation:i.rotation,datasetIndex:n.index}}),this)}}},legendCallback:function(t){var e,n,r,i=document.createElement("ul"),a=t.data.datasets;for(i.setAttribute("class",t.id+"-legend"),e=0,n=a.length;e<n;e++)(r=i.appendChild(document.createElement("li"))).appendChild(document.createElement("span")).style.backgroundColor=a[e].backgroundColor,a[e].label&&r.appendChild(document.createTextNode(a[e].label));return i.outerHTML}});var kr=K.extend({initialize:function(t){Y.extend(this,t),this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1},beforeUpdate:xr,update:function(t,e,n){var r=this;return r.beforeUpdate(),r.maxWidth=t,r.maxHeight=e,r.margins=n,r.beforeSetDimensions(),r.setDimensions(),r.afterSetDimensions(),r.beforeBuildLabels(),r.buildLabels(),r.afterBuildLabels(),r.beforeFit(),r.fit(),r.afterFit(),r.afterUpdate(),r.minSize},afterUpdate:xr,beforeSetDimensions:xr,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:xr,beforeBuildLabels:xr,buildLabels:function(){var t=this,e=t.options.labels||{},n=Y.callback(e.generateLabels,[t.chart],t)||[];e.filter&&(n=n.filter((function(n){return e.filter(n,t.chart.data)}))),t.options.reverse&&n.reverse(),t.legendItems=n},afterBuildLabels:xr,beforeFit:xr,fit:function(){var t=this,e=t.options,n=e.labels,r=e.display,i=t.ctx,a=Y.options._parseFont(n),o=a.size,s=t.legendHitBoxes=[],l=t.minSize,u=t.isHorizontal();if(u?(l.width=t.maxWidth,l.height=r?10:0):(l.width=r?10:0,l.height=t.maxHeight),r){if(i.font=a.string,u){var c=t.lineWidths=[0],h=0;i.textAlign="left",i.textBaseline="middle",Y.each(t.legendItems,(function(t,e){var r=wr(n,o)+o/2+i.measureText(t.text).width;(0===e||c[c.length-1]+r+2*n.padding>l.width)&&(h+=o+n.padding,c[c.length-(e>0?0:1)]=0),s[e]={left:0,top:0,width:r,height:o},c[c.length-1]+=r+n.padding})),l.height+=h}else{var d=n.padding,f=t.columnWidths=[],p=t.columnHeights=[],g=n.padding,m=0,v=0;Y.each(t.legendItems,(function(t,e){var r=wr(n,o)+o/2+i.measureText(t.text).width;e>0&&v+o+2*d>l.height&&(g+=m+n.padding,f.push(m),p.push(v),m=0,v=0),m=Math.max(m,r),v+=o+d,s[e]={left:0,top:0,width:r,height:o}})),g+=m,f.push(m),p.push(v),l.width+=g}t.width=l.width,t.height=l.height}else t.width=l.width=t.height=l.height=0},afterFit:xr,isHorizontal:function(){return"top"===this.options.position||"bottom"===this.options.position},draw:function(){var t=this,e=t.options,n=e.labels,r=N.global,i=r.defaultColor,a=r.elements.line,o=t.height,s=t.columnHeights,l=t.width,u=t.lineWidths;if(e.display){var c,h=br(e.rtl,t.left,t.minSize.width),d=t.ctx,f=_r(n.fontColor,r.defaultFontColor),p=Y.options._parseFont(n),g=p.size;d.textAlign=h.textAlign("left"),d.textBaseline="middle",d.lineWidth=.5,d.strokeStyle=f,d.fillStyle=f,d.font=p.string;var m=wr(n,g),v=t.legendHitBoxes,y=function(t,r){switch(e.align){case"start":return n.padding;case"end":return t-r;default:return(t-r+n.padding)/2}},b=t.isHorizontal();c=b?{x:t.left+y(l,u[0]),y:t.top+n.padding,line:0}:{x:t.left+n.padding,y:t.top+y(o,s[0]),line:0},Y.rtl.overrideTextDirection(t.ctx,e.textDirection);var x=g+n.padding;Y.each(t.legendItems,(function(e,r){var f=d.measureText(e.text).width,p=m+g/2+f,_=c.x,w=c.y;h.setWidth(t.minSize.width),b?r>0&&_+p+n.padding>t.left+t.minSize.width&&(w=c.y+=x,c.line++,_=c.x=t.left+y(l,u[c.line])):r>0&&w+x>t.top+t.minSize.height&&(_=c.x=_+t.columnWidths[c.line]+n.padding,c.line++,w=c.y=t.top+y(o,s[c.line]));var k=h.x(_);!function(t,e,r){if(!(isNaN(m)||m<=0)){d.save();var o=_r(r.lineWidth,a.borderWidth);if(d.fillStyle=_r(r.fillStyle,i),d.lineCap=_r(r.lineCap,a.borderCapStyle),d.lineDashOffset=_r(r.lineDashOffset,a.borderDashOffset),d.lineJoin=_r(r.lineJoin,a.borderJoinStyle),d.lineWidth=o,d.strokeStyle=_r(r.strokeStyle,i),d.setLineDash&&d.setLineDash(_r(r.lineDash,a.borderDash)),n&&n.usePointStyle){var s=m*Math.SQRT2/2,l=h.xPlus(t,m/2),u=e+g/2;Y.canvas.drawPoint(d,r.pointStyle,s,l,u,r.rotation)}else d.fillRect(h.leftForLtr(t,m),e,m,g),0!==o&&d.strokeRect(h.leftForLtr(t,m),e,m,g);d.restore()}}(k,w,e),v[r].left=h.leftForLtr(k,v[r].width),v[r].top=w,function(t,e,n,r){var i=g/2,a=h.xPlus(t,m+i),o=e+i;d.fillText(n.text,a,o),n.hidden&&(d.beginPath(),d.lineWidth=2,d.moveTo(a,o),d.lineTo(h.xPlus(a,r),o),d.stroke())}(k,w,e,f),b?c.x+=p+n.padding:c.y+=x})),Y.rtl.restoreTextDirection(t.ctx,e.textDirection)}},_getLegendItemAt:function(t,e){var n,r,i,a=this;if(t>=a.left&&t<=a.right&&e>=a.top&&e<=a.bottom)for(i=a.legendHitBoxes,n=0;n<i.length;++n)if(t>=(r=i[n]).left&&t<=r.left+r.width&&e>=r.top&&e<=r.top+r.height)return a.legendItems[n];return null},handleEvent:function(t){var e,n=this,r=n.options,i="mouseup"===t.type?"click":t.type;if("mousemove"===i){if(!r.onHover&&!r.onLeave)return}else{if("click"!==i)return;if(!r.onClick)return}e=n._getLegendItemAt(t.x,t.y),"click"===i?e&&r.onClick&&r.onClick.call(n,t.native,e):(r.onLeave&&e!==n._hoveredItem&&(n._hoveredItem&&r.onLeave.call(n,t.native,n._hoveredItem),n._hoveredItem=e),r.onHover&&e&&r.onHover.call(n,t.native,e))}});function Mr(t,e){var n=new kr({ctx:t.ctx,options:e,chart:t});pe.configure(t,n,e),pe.addBox(t,n),t.legend=n}var Sr={id:"legend",_element:kr,beforeInit:function(t){var e=t.options.legend;e&&Mr(t,e)},beforeUpdate:function(t){var e=t.options.legend,n=t.legend;e?(Y.mergeIf(e,N.global.legend),n?(pe.configure(t,n,e),n.options=e):Mr(t,e)):n&&(pe.removeBox(t,n),delete t.legend)},afterEvent:function(t,e){var n=t.legend;n&&n.handleEvent(e)}},Dr=Y.noop;N._set("global",{title:{display:!1,fontStyle:"bold",fullWidth:!0,padding:10,position:"top",text:"",weight:2e3}});var Cr=K.extend({initialize:function(t){Y.extend(this,t),this.legendHitBoxes=[]},beforeUpdate:Dr,update:function(t,e,n){var r=this;return r.beforeUpdate(),r.maxWidth=t,r.maxHeight=e,r.margins=n,r.beforeSetDimensions(),r.setDimensions(),r.afterSetDimensions(),r.beforeBuildLabels(),r.buildLabels(),r.afterBuildLabels(),r.beforeFit(),r.fit(),r.afterFit(),r.afterUpdate(),r.minSize},afterUpdate:Dr,beforeSetDimensions:Dr,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:Dr,beforeBuildLabels:Dr,buildLabels:Dr,afterBuildLabels:Dr,beforeFit:Dr,fit:function(){var t,e=this,n=e.options,r=e.minSize={},i=e.isHorizontal();n.display?(t=(Y.isArray(n.text)?n.text.length:1)*Y.options._parseFont(n).lineHeight+2*n.padding,e.width=r.width=i?e.maxWidth:t,e.height=r.height=i?t:e.maxHeight):e.width=r.width=e.height=r.height=0},afterFit:Dr,isHorizontal:function(){var t=this.options.position;return"top"===t||"bottom"===t},draw:function(){var t=this,e=t.ctx,n=t.options;if(n.display){var r,i,a,o=Y.options._parseFont(n),s=o.lineHeight,l=s/2+n.padding,u=0,c=t.top,h=t.left,d=t.bottom,f=t.right;e.fillStyle=Y.valueOrDefault(n.fontColor,N.global.defaultFontColor),e.font=o.string,t.isHorizontal()?(i=h+(f-h)/2,a=c+l,r=f-h):(i="left"===n.position?h+l:f-l,a=c+(d-c)/2,r=d-c,u=Math.PI*("left"===n.position?-.5:.5)),e.save(),e.translate(i,a),e.rotate(u),e.textAlign="center",e.textBaseline="middle";var p=n.text;if(Y.isArray(p))for(var g=0,m=0;m<p.length;++m)e.fillText(p[m],0,g,r),g+=s;else e.fillText(p,0,0,r);e.restore()}}});function Or(t,e){var n=new Cr({ctx:t.ctx,options:e,chart:t});pe.configure(t,n,e),pe.addBox(t,n),t.titleBlock=n}var Tr={},Ar=yr,Pr=Sr,Ir={id:"title",_element:Cr,beforeInit:function(t){var e=t.options.title;e&&Or(t,e)},beforeUpdate:function(t){var e=t.options.title,n=t.titleBlock;e?(Y.mergeIf(e,N.global.title),n?(pe.configure(t,n,e),n.options=e):Or(t,e)):n&&(pe.removeBox(t,n),delete t.titleBlock)}};for(var Fr in Tr.filler=Ar,Tr.legend=Pr,Tr.title=Ir,Ze.helpers=Y,function(){function t(t,e,n){var r;return"string"==typeof t?(r=parseInt(t,10),-1!==t.indexOf("%")&&(r=r/100*e.parentNode[n])):r=t,r}function e(t){return null!=t&&"none"!==t}function n(n,r,i){var a=document.defaultView,o=Y._getParentNode(n),s=a.getComputedStyle(n)[r],l=a.getComputedStyle(o)[r],u=e(s),c=e(l),h=Number.POSITIVE_INFINITY;return u||c?Math.min(u?t(s,n,i):h,c?t(l,o,i):h):"none"}Y.where=function(t,e){if(Y.isArray(t)&&Array.prototype.filter)return t.filter(e);var n=[];return Y.each(t,(function(t){e(t)&&n.push(t)})),n},Y.findIndex=Array.prototype.findIndex?function(t,e,n){return t.findIndex(e,n)}:function(t,e,n){n=void 0===n?t:n;for(var r=0,i=t.length;r<i;++r)if(e.call(n,t[r],r,t))return r;return-1},Y.findNextWhere=function(t,e,n){Y.isNullOrUndef(n)&&(n=-1);for(var r=n+1;r<t.length;r++){var i=t[r];if(e(i))return i}},Y.findPreviousWhere=function(t,e,n){Y.isNullOrUndef(n)&&(n=t.length);for(var r=n-1;r>=0;r--){var i=t[r];if(e(i))return i}},Y.isNumber=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},Y.almostEquals=function(t,e,n){return Math.abs(t-e)<n},Y.almostWhole=function(t,e){var n=Math.round(t);return n-e<=t&&n+e>=t},Y.max=function(t){return t.reduce((function(t,e){return isNaN(e)?t:Math.max(t,e)}),Number.NEGATIVE_INFINITY)},Y.min=function(t){return t.reduce((function(t,e){return isNaN(e)?t:Math.min(t,e)}),Number.POSITIVE_INFINITY)},Y.sign=Math.sign?function(t){return Math.sign(t)}:function(t){return 0==(t=+t)||isNaN(t)?t:t>0?1:-1},Y.toRadians=function(t){return t*(Math.PI/180)},Y.toDegrees=function(t){return t*(180/Math.PI)},Y._decimalPlaces=function(t){if(Y.isFinite(t)){for(var e=1,n=0;Math.round(t*e)/e!==t;)e*=10,n++;return n}},Y.getAngleFromPoint=function(t,e){var n=e.x-t.x,r=e.y-t.y,i=Math.sqrt(n*n+r*r),a=Math.atan2(r,n);return a<-.5*Math.PI&&(a+=2*Math.PI),{angle:a,distance:i}},Y.distanceBetweenPoints=function(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))},Y.aliasPixel=function(t){return t%2==0?0:.5},Y._alignPixel=function(t,e,n){var r=t.currentDevicePixelRatio,i=n/2;return Math.round((e-i)*r)/r+i},Y.splineCurve=function(t,e,n,r){var i=t.skip?e:t,a=e,o=n.skip?e:n,s=Math.sqrt(Math.pow(a.x-i.x,2)+Math.pow(a.y-i.y,2)),l=Math.sqrt(Math.pow(o.x-a.x,2)+Math.pow(o.y-a.y,2)),u=s/(s+l),c=l/(s+l),h=r*(u=isNaN(u)?0:u),d=r*(c=isNaN(c)?0:c);return{previous:{x:a.x-h*(o.x-i.x),y:a.y-h*(o.y-i.y)},next:{x:a.x+d*(o.x-i.x),y:a.y+d*(o.y-i.y)}}},Y.EPSILON=Number.EPSILON||1e-14,Y.splineCurveMonotone=function(t){var e,n,r,i,a,o,s,l,u,c=(t||[]).map((function(t){return{model:t._model,deltaK:0,mK:0}})),h=c.length;for(e=0;e<h;++e)if(!(r=c[e]).model.skip){if(n=e>0?c[e-1]:null,(i=e<h-1?c[e+1]:null)&&!i.model.skip){var d=i.model.x-r.model.x;r.deltaK=0!==d?(i.model.y-r.model.y)/d:0}!n||n.model.skip?r.mK=r.deltaK:!i||i.model.skip?r.mK=n.deltaK:this.sign(n.deltaK)!==this.sign(r.deltaK)?r.mK=0:r.mK=(n.deltaK+r.deltaK)/2}for(e=0;e<h-1;++e)r=c[e],i=c[e+1],r.model.skip||i.model.skip||(Y.almostEquals(r.deltaK,0,this.EPSILON)?r.mK=i.mK=0:(a=r.mK/r.deltaK,o=i.mK/r.deltaK,(l=Math.pow(a,2)+Math.pow(o,2))<=9||(s=3/Math.sqrt(l),r.mK=a*s*r.deltaK,i.mK=o*s*r.deltaK)));for(e=0;e<h;++e)(r=c[e]).model.skip||(n=e>0?c[e-1]:null,i=e<h-1?c[e+1]:null,n&&!n.model.skip&&(u=(r.model.x-n.model.x)/3,r.model.controlPointPreviousX=r.model.x-u,r.model.controlPointPreviousY=r.model.y-u*r.mK),i&&!i.model.skip&&(u=(i.model.x-r.model.x)/3,r.model.controlPointNextX=r.model.x+u,r.model.controlPointNextY=r.model.y+u*r.mK))},Y.nextItem=function(t,e,n){return n?e>=t.length-1?t[0]:t[e+1]:e>=t.length-1?t[t.length-1]:t[e+1]},Y.previousItem=function(t,e,n){return n?e<=0?t[t.length-1]:t[e-1]:e<=0?t[0]:t[e-1]},Y.niceNum=function(t,e){var n=Math.floor(Y.log10(t)),r=t/Math.pow(10,n);return(e?r<1.5?1:r<3?2:r<7?5:10:r<=1?1:r<=2?2:r<=5?5:10)*Math.pow(10,n)},Y.requestAnimFrame="undefined"==typeof window?function(t){t()}:window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){return window.setTimeout(t,1e3/60)},Y.getRelativePosition=function(t,e){var n,r,i=t.originalEvent||t,a=t.target||t.srcElement,o=a.getBoundingClientRect(),s=i.touches;s&&s.length>0?(n=s[0].clientX,r=s[0].clientY):(n=i.clientX,r=i.clientY);var l=parseFloat(Y.getStyle(a,"padding-left")),u=parseFloat(Y.getStyle(a,"padding-top")),c=parseFloat(Y.getStyle(a,"padding-right")),h=parseFloat(Y.getStyle(a,"padding-bottom")),d=o.right-o.left-l-c,f=o.bottom-o.top-u-h;return{x:n=Math.round((n-o.left-l)/d*a.width/e.currentDevicePixelRatio),y:r=Math.round((r-o.top-u)/f*a.height/e.currentDevicePixelRatio)}},Y.getConstraintWidth=function(t){return n(t,"max-width","clientWidth")},Y.getConstraintHeight=function(t){return n(t,"max-height","clientHeight")},Y._calculatePadding=function(t,e,n){return(e=Y.getStyle(t,e)).indexOf("%")>-1?n*parseInt(e,10)/100:parseInt(e,10)},Y._getParentNode=function(t){var e=t.parentNode;return e&&"[object ShadowRoot]"===e.toString()&&(e=e.host),e},Y.getMaximumWidth=function(t){var e=Y._getParentNode(t);if(!e)return t.clientWidth;var n=e.clientWidth,r=n-Y._calculatePadding(e,"padding-left",n)-Y._calculatePadding(e,"padding-right",n),i=Y.getConstraintWidth(t);return isNaN(i)?r:Math.min(r,i)},Y.getMaximumHeight=function(t){var e=Y._getParentNode(t);if(!e)return t.clientHeight;var n=e.clientHeight,r=n-Y._calculatePadding(e,"padding-top",n)-Y._calculatePadding(e,"padding-bottom",n),i=Y.getConstraintHeight(t);return isNaN(i)?r:Math.min(r,i)},Y.getStyle=function(t,e){return t.currentStyle?t.currentStyle[e]:document.defaultView.getComputedStyle(t,null).getPropertyValue(e)},Y.retinaScale=function(t,e){var n=t.currentDevicePixelRatio=e||"undefined"!=typeof window&&window.devicePixelRatio||1;if(1!==n){var r=t.canvas,i=t.height,a=t.width;r.height=i*n,r.width=a*n,t.ctx.scale(n,n),r.style.height||r.style.width||(r.style.height=i+"px",r.style.width=a+"px")}},Y.fontString=function(t,e,n){return e+" "+t+"px "+n},Y.longestText=function(t,e,n,r){var i=(r=r||{}).data=r.data||{},a=r.garbageCollect=r.garbageCollect||[];r.font!==e&&(i=r.data={},a=r.garbageCollect=[],r.font=e),t.font=e;var o,s,l,u,c,h=0,d=n.length;for(o=0;o<d;o++)if(null!=(u=n[o])&&!0!==Y.isArray(u))h=Y.measureText(t,i,a,h,u);else if(Y.isArray(u))for(s=0,l=u.length;s<l;s++)null==(c=u[s])||Y.isArray(c)||(h=Y.measureText(t,i,a,h,c));var f=a.length/2;if(f>n.length){for(o=0;o<f;o++)delete i[a[o]];a.splice(0,f)}return h},Y.measureText=function(t,e,n,r,i){var a=e[i];return a||(a=e[i]=t.measureText(i).width,n.push(i)),a>r&&(r=a),r},Y.numberOfLabelLines=function(t){var e=1;return Y.each(t,(function(t){Y.isArray(t)&&t.length>e&&(e=t.length)})),e},Y.color=w?function(t){return t instanceof CanvasGradient&&(t=N.global.defaultColor),w(t)}:function(t){return console.error("Color.js not found!"),t},Y.getHoverColor=function(t){return t instanceof CanvasPattern||t instanceof CanvasGradient?t:Y.color(t).saturate(.5).darken(.1).rgbString()}}(),Ze._adapters=Qe,Ze.Animation=Z,Ze.animationService=X,Ze.controllers=Xt,Ze.DatasetController=nt,Ze.defaults=N,Ze.Element=K,Ze.elements=_t,Ze.Interaction=ie,Ze.layouts=pe,Ze.platform=Oe,Ze.plugins=Te,Ze.Scale=gn,Ze.scaleService=Ae,Ze.Ticks=tn,Ze.Tooltip=Ye,Ze.helpers.each(lr,(function(t,e){Ze.scaleService.registerScaleType(e,t,t._defaults)})),Tr)Tr.hasOwnProperty(Fr)&&Ze.plugins.register(Tr[Fr]);Ze.platform.initialize();var Lr=Ze;return"undefined"!=typeof window&&(window.Chart=Ze),Ze.Chart=Ze,Ze.Legend=Tr.legend._element,Ze.Title=Tr.title._element,Ze.pluginService=Ze.plugins,Ze.PluginBase=Ze.Element.extend({}),Ze.canvasHelpers=Ze.helpers.canvas,Ze.layoutService=Ze.layouts,Ze.LinearScaleBase=_n,Ze.helpers.each(["Bar","Bubble","Doughnut","Line","PolarArea","Radar","Scatter"],(function(t){Ze[t]=function(e,n){return new Ze(e,Ze.helpers.merge(n||{},{type:t.charAt(0).toLowerCase()+t.slice(1)}))}})),Lr}(function(){try{return n("wd/R")}catch(t){}}())},MvSz:function(t,e,n){n("ioFf");var r=n("LXxW"),i=n("0ycA"),a=Object.prototype.propertyIsEnumerable,o=Object.getOwnPropertySymbols,s=o?function(t){return null==t?[]:(t=Object(t),r(o(t),(function(e){return a.call(t,e)})))}:i;t.exports=s},NKxu:function(t,e,n){n("pIFo"),n("Oyvg"),n("a1Th"),n("h7Nl"),n("Btvt");var r=n("lSCD"),i=n("E2jh"),a=n("GoyQ"),o=n("3Fdi"),s=/^\[object .+?Constructor\]$/,l=Function.prototype,u=Object.prototype,c=l.toString,h=u.hasOwnProperty,d=RegExp("^"+c.call(h).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!a(t)||i(t))&&(r(t)?d:s).test(o(t))}},Npjl:function(t,e){t.exports=function(t,e){return null==t?void 0:t[e]}},Nr18:function(t,e,n){"use strict";var r=n("S/j/"),i=n("d/Gc"),a=n("ne8i");t.exports=function(t){for(var e=r(this),n=a(e.length),o=arguments.length,s=i(o>1?arguments[1]:void 0,n),l=o>2?arguments[2]:void 0,u=void 0===l?n:i(l,n);u>s;)e[s++]=t;return e}},NykK:function(t,e,n){var r=n("nmnc"),i=n("AP2z"),a=n("KfNM"),o=r?r.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":o&&o in Object(t)?i(t):a(t)}},O0oS:function(t,e,n){var r=n("Cwc5"),i=function(){try{var t=r(Object,"defineProperty");return t({},"",{}),t}catch(e){}}();t.exports=i},O7RO:function(t,e,n){var r=n("CMye"),i=n("7GkX");t.exports=function(t){for(var e=i(t),n=e.length;n--;){var a=e[n],o=t[a];e[n]=[a,o,r(o)]}return e}},"Of+w":function(t,e,n){var r=n("Cwc5")(n("Kz5y"),"WeakMap");t.exports=r},QVEU:function(t,e,n){var r=n("hypo"),i=n("UMY1")((function(t,e,n){r(t,n,e)}));t.exports=i},QkVE:function(t,e,n){n("bWfx");var r=n("EpBk");t.exports=function(t,e){var n=t.__data__;return r(e)?n["string"==typeof e?"string":"hash"]:n.map}},QoRX:function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}},QqLw:function(t,e,n){var r=n("tadb"),i=n("ebwN"),a=n("HOxn"),o=n("yGk4"),s=n("Of+w"),l=n("NykK"),u=n("3Fdi"),c=u(r),h=u(i),d=u(a),f=u(o),p=u(s),g=l;(r&&"[object DataView]"!=g(new r(new ArrayBuffer(1)))||i&&"[object Map]"!=g(new i)||a&&"[object Promise]"!=g(a.resolve())||o&&"[object Set]"!=g(new o)||s&&"[object WeakMap]"!=g(new s))&&(g=function(t){var e=l(t),n="[object Object]"==e?t.constructor:void 0,r=n?u(n):"";if(r)switch(r){case c:return"[object DataView]";case h:return"[object Map]";case d:return"[object Promise]";case f:return"[object Set]";case p:return"[object WeakMap]"}return e}),t.exports=g},SKAX:function(t,e,n){var r=n("JC6p"),i=n("lQqw")(r);t.exports=i},SfRM:function(t,e,n){var r=n("YESw");t.exports=function(){this.__data__=r?r(null):{},this.size=0}},UDbo:function(t,e,n){"use strict";(function(t){n.d(e,"b",(function(){return x})),n.d(e,"a",(function(){return _}));n("rGqo"),n("yt8O"),n("Btvt"),n("hhXQ"),n("8+KV"),n("bWfx"),n("/SS/"),n("hHhE"),n("V+eJ"),n("91GP");var r=n("q1tI"),i=n.n(r),a=n("17x9"),o=n.n(a),s=n("MO+k"),l=n.n(s),u=n("Y+p1"),c=n.n(u),h=n("QVEU"),d=n.n(h),f=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t};function p(t,e){var n={};for(var r in t)e.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n}function g(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function m(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function v(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var y=void 0!==t&&{}&&"production",b=function(t){function e(){g(this,e);var n=m(this,t.call(this));return n.handleOnClick=function(t){var e=n.chartInstance,r=n.props,i=r.getDatasetAtEvent,a=r.getElementAtEvent,o=r.getElementsAtEvent,s=r.onElementsClick;i&&i(e.getDatasetAtEvent(t),t),a&&a(e.getElementAtEvent(t),t),o&&o(e.getElementsAtEvent(t),t),s&&s(e.getElementsAtEvent(t),t)},n.ref=function(t){n.element=t},n.chartInstance=void 0,n}return v(e,t),e.prototype.componentDidMount=function(){this.renderChart()},e.prototype.componentDidUpdate=function(){if(this.props.redraw)return this.destroyChart(),void this.renderChart();this.updateChart()},e.prototype.shouldComponentUpdate=function(t){var e=this.props,n=(e.redraw,e.type),r=e.options,i=e.plugins,a=e.legend,o=e.height,s=e.width;if(!0===t.redraw)return!0;if(o!==t.height||s!==t.width)return!0;if(n!==t.type)return!0;if(!c()(a,t.legend))return!0;if(!c()(r,t.options))return!0;var l=this.transformDataProp(t);return!c()(this.shadowDataProp,l)||!c()(i,t.plugins)},e.prototype.componentWillUnmount=function(){this.destroyChart()},e.prototype.transformDataProp=function(t){var e=t.data;return"function"==typeof e?e(this.element):e},e.prototype.memoizeDataProps=function(){if(this.props.data){var t=this.transformDataProp(this.props);return this.shadowDataProp=f({},t,{datasets:t.datasets&&t.datasets.map((function(t){return f({},t)}))}),this.saveCurrentDatasets(),t}},e.prototype.checkDatasets=function(t){var n="production"!==y&&"prod"!==y,r=this.props.datasetKeyProvider!==e.getLabelAsKey,i=t.length>1;if(n&&i&&!r){var a=!1;t.forEach((function(t){t.label||(a=!0)})),a&&console.error('[react-chartjs-2] Warning: Each dataset needs a unique key. By default, the "label" property on each dataset is used. Alternatively, you may provide a "datasetKeyProvider" as a prop that returns a unique key.')}},e.prototype.getCurrentDatasets=function(){return this.chartInstance&&this.chartInstance.config.data&&this.chartInstance.config.data.datasets||[]},e.prototype.saveCurrentDatasets=function(){var t=this;this.datasets=this.datasets||{},this.getCurrentDatasets().forEach((function(e){t.datasets[t.props.datasetKeyProvider(e)]=e}))},e.prototype.updateChart=function(){var t=this,e=this.props.options,n=this.memoizeDataProps(this.props);if(this.chartInstance){e&&(this.chartInstance.options=l.a.helpers.configMerge(this.chartInstance.options,e));var r=this.getCurrentDatasets(),i=n.datasets||[];this.checkDatasets(r);var a=d()(r,this.props.datasetKeyProvider);this.chartInstance.config.data.datasets=i.map((function(e){var n=a[t.props.datasetKeyProvider(e)];if(n&&n.type===e.type&&e.data){n.data.splice(e.data.length),e.data.forEach((function(t,r){n.data[r]=e.data[r]}));e.data;var r=p(e,["data"]);return f({},n,r)}return e}));n.datasets;var o=p(n,["datasets"]);this.chartInstance.config.data=f({},this.chartInstance.config.data,o),this.chartInstance.update()}},e.prototype.renderChart=function(){var t=this.props,n=t.options,r=t.legend,i=t.type,a=t.plugins,o=this.element,s=this.memoizeDataProps();void 0===r||c()(e.defaultProps.legend,r)||(n.legend=r),this.chartInstance=new l.a(o,{type:i,data:s,options:n,plugins:a})},e.prototype.destroyChart=function(){if(this.chartInstance){this.saveCurrentDatasets();var t=Object.values(this.datasets);this.chartInstance.config.data.datasets=t,this.chartInstance.destroy()}},e.prototype.render=function(){var t=this.props,e=t.height,n=t.width,r=t.id;return i.a.createElement("canvas",{ref:this.ref,height:e,width:n,id:r,onClick:this.handleOnClick})},e}(i.a.Component);b.getLabelAsKey=function(t){return t.label},b.propTypes={data:o.a.oneOfType([o.a.object,o.a.func]).isRequired,getDatasetAtEvent:o.a.func,getElementAtEvent:o.a.func,getElementsAtEvent:o.a.func,height:o.a.number,legend:o.a.object,onElementsClick:o.a.func,options:o.a.object,plugins:o.a.arrayOf(o.a.object),redraw:o.a.bool,type:function(t,e,n){if(!l.a.controllers[t[e]])return new Error("Invalid chart type `"+t[e]+"` supplied to `"+n+"`.")},width:o.a.number,datasetKeyProvider:o.a.func},b.defaultProps={legend:{display:!0,position:"bottom"},type:"doughnut",height:150,width:300,redraw:!1,options:{},datasetKeyProvider:b.getLabelAsKey};(function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(b,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"doughnut"}))}})(i.a.Component),function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(b,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"pie"}))}}(i.a.Component);var x=function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}return v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(b,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"line"}))},e}(i.a.Component),_=function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}return v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(b,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"bar"}))},e}(i.a.Component);(function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(b,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"horizontalBar"}))}})(i.a.Component),function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(b,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"radar"}))}}(i.a.Component),function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(b,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"polarArea"}))}}(i.a.Component),function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(b,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"bubble"}))}}(i.a.Component),function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(b,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"scatter"}))}}(i.a.Component),l.a.defaults}).call(this,n("8oxB"))},UExd:function(t,e,n){var r=n("nh4g"),i=n("DVgA"),a=n("aCFj"),o=n("UqcF").f;t.exports=function(t){return function(e){for(var n,s=a(e),l=i(s),u=l.length,c=0,h=[];u>c;)n=l[c++],r&&!o.call(s,n)||h.push(t?[n,s[n]]:s[n]);return h}}},UMY1:function(t,e,n){var r=n("oMRN"),i=n("JD84"),a=n("ut/Y"),o=n("Z0cm");t.exports=function(t,e){return function(n,s){var l=o(n)?r:i,u=e?e():{};return l(n,t,a(s,2),u)}}},"UNi/":function(t,e){t.exports=function(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}},V6Ve:function(t,e,n){n("rGqo"),n("yt8O"),n("Btvt"),n("RW0V");var r=n("kekF")(Object.keys,Object);t.exports=r},VaNO:function(t,e){t.exports=function(t){return this.__data__.has(t)}},WFqU:function(t,e,n){(function(e){var n="object"==typeof e&&e&&e.Object===Object&&e;t.exports=n}).call(this,n("yLpj"))},Xi7e:function(t,e,n){var r=n("KMkd"),i=n("adU4"),a=n("tMB7"),o=n("+6XX"),s=n("Z8oC");function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=i,l.prototype.get=a,l.prototype.has=o,l.prototype.set=s,t.exports=l},"Y+p1":function(t,e,n){var r=n("wF/u");t.exports=function(t,e){return r(t,e)}},YESw:function(t,e,n){var r=n("Cwc5")(Object,"create");t.exports=r},YuTi:function(t,e,n){n("HAE/"),t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},Z0cm:function(t,e,n){n("LK8F");var r=Array.isArray;t.exports=r},Z8oC:function(t,e,n){var r=n("y1pI");t.exports=function(t,e){var n=this.__data__,i=r(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this}},ZCpW:function(t,e,n){var r=n("lm/5"),i=n("O7RO"),a=n("IOzZ");t.exports=function(t){var e=i(t);return 1==e.length&&e[0][2]?a(e[0][0],e[0][1]):function(n){return n===t||r(n,t,e)}}},ZWtO:function(t,e,n){var r=n("4uTw"),i=n("9Nap");t.exports=function(t,e){for(var n=0,a=(e=r(e,t)).length;null!=t&&n<a;)t=t[i(e[n++])];return n&&n==a?t:void 0}},Zshi:function(t,e,n){var r=n("0/R4");n("Xtr8")("isFrozen",(function(t){return function(e){return!r(e)||!!t&&t(e)}}))},adU4:function(t,e,n){var r=n("y1pI"),i=Array.prototype.splice;t.exports=function(t){var e=this.__data__,n=r(e,t);return!(n<0)&&(n==e.length-1?e.pop():i.call(e,n,1),--this.size,!0)}},b80T:function(t,e,n){var r=n("UNi/"),i=n("03A+"),a=n("Z0cm"),o=n("DSRE"),s=n("wJg7"),l=n("c6wG"),u=Object.prototype.hasOwnProperty;t.exports=function(t,e){var n=a(t),c=!n&&i(t),h=!n&&!c&&o(t),d=!n&&!c&&!h&&l(t),f=n||c||h||d,p=f?r(t.length,String):[],g=p.length;for(var m in t)!e&&!u.call(t,m)||f&&("length"==m||h&&("offset"==m||"parent"==m)||d&&("buffer"==m||"byteLength"==m||"byteOffset"==m)||s(m,g))||p.push(m);return p}},bHtr:function(t,e,n){var r=n("XKFU");r(r.P,"Array",{fill:n("Nr18")}),n("nGyu")("fill")},c6wG:function(t,e,n){var r=n("dD9F"),i=n("sEf8"),a=n("mdPL"),o=a&&a.isTypedArray,s=o?i(o):r;t.exports=s},"cq/+":function(t,e,n){var r=n("mc0g")();t.exports=r},dD9F:function(t,e,n){var r=n("NykK"),i=n("shjB"),a=n("ExA7"),o={};o["[object Float32Array]"]=o["[object Float64Array]"]=o["[object Int8Array]"]=o["[object Int16Array]"]=o["[object Int32Array]"]=o["[object Uint8Array]"]=o["[object Uint8ClampedArray]"]=o["[object Uint16Array]"]=o["[object Uint32Array]"]=!0,o["[object Arguments]"]=o["[object Array]"]=o["[object ArrayBuffer]"]=o["[object Boolean]"]=o["[object DataView]"]=o["[object Date]"]=o["[object Error]"]=o["[object Function]"]=o["[object Map]"]=o["[object Number]"]=o["[object Object]"]=o["[object RegExp]"]=o["[object Set]"]=o["[object String]"]=o["[object WeakMap]"]=!1,t.exports=function(t){return a(t)&&i(t.length)&&!!o[r(t)]}},dt0z:function(t,e,n){var r=n("zoYe");t.exports=function(t){return null==t?"":r(t)}},e4Nc:function(t,e,n){var r=n("fGT3"),i=n("k+1r"),a=n("JHgL"),o=n("pSRY"),s=n("H8j4");function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=i,l.prototype.get=a,l.prototype.has=o,l.prototype.set=s,t.exports=l},e5cp:function(t,e,n){var r=n("fmRc"),i=n("or5M"),a=n("HDyB"),o=n("seXi"),s=n("QqLw"),l=n("Z0cm"),u=n("DSRE"),c=n("c6wG"),h="[object Object]",d=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,f,p,g){var m=l(t),v=l(e),y=m?"[object Array]":s(t),b=v?"[object Array]":s(e),x=(y="[object Arguments]"==y?h:y)==h,_=(b="[object Arguments]"==b?h:b)==h,w=y==b;if(w&&u(t)){if(!u(e))return!1;m=!0,x=!1}if(w&&!x)return g||(g=new r),m||c(t)?i(t,e,n,f,p,g):a(t,e,y,n,f,p,g);if(!(1&n)){var k=x&&d.call(t,"__wrapped__"),M=_&&d.call(e,"__wrapped__");if(k||M){var S=k?t.value():t,D=M?e.value():e;return g||(g=new r),p(S,D,n,f,g)}}return!!w&&(g||(g=new r),o(t,e,n,f,p,g))}},eHKK:function(t,e,n){var r=n("XKFU");r(r.S,"Math",{log10:function(t){return Math.log(t)*Math.LOG10E}})},eUgh:function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,i=Array(r);++n<r;)i[n]=e(t[n],n,t);return i}},ebwN:function(t,e,n){var r=n("Cwc5")(n("Kz5y"),"Map");t.exports=r},ekgI:function(t,e,n){var r=n("YESw"),i=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;return r?void 0!==e[t]:i.call(e,t)}},fGT3:function(t,e,n){var r=n("4kuk"),i=n("Xi7e"),a=n("ebwN");t.exports=function(){this.size=0,this.__data__={hash:new r,map:new(a||i),string:new r}}},"fR/l":function(t,e,n){var r=n("CH3K"),i=n("Z0cm");t.exports=function(t,e,n){var a=e(t);return i(t)?a:r(a,n(t))}},fmRc:function(t,e,n){var r=n("Xi7e"),i=n("77Zs"),a=n("L8xA"),o=n("gCq4"),s=n("VaNO"),l=n("0Cz8");function u(t){var e=this.__data__=new r(t);this.size=e.size}u.prototype.clear=i,u.prototype.delete=a,u.prototype.get=o,u.prototype.has=s,u.prototype.set=l,t.exports=u},ftKO:function(t,e){t.exports=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this}},gCq4:function(t,e){t.exports=function(t){return this.__data__.get(t)}},"h/M4":function(t,e,n){var r=n("XKFU");r(r.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},hgQt:function(t,e,n){var r=n("Juji"),i=n("4sDh");t.exports=function(t,e){return null!=t&&i(t,e,r)}},hhXQ:function(t,e,n){var r=n("XKFU"),i=n("UExd")(!1);r(r.S,"Object",{values:function(t){return i(t)}})},hypo:function(t,e,n){var r=n("O0oS");t.exports=function(t,e,n){"__proto__"==e&&r?r(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}},jqX0:function(t,e,n){var r=n("XKFU"),i=n("jtBr");r(r.P+r.F*(Date.prototype.toISOString!==i),"Date",{toISOString:i})},jtBr:function(t,e,n){"use strict";var r=n("eeVq"),i=Date.prototype.getTime,a=Date.prototype.toISOString,o=function(t){return t>9?t:"0"+t};t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=a.call(new Date(-5e13-1))}))||!r((function(){a.call(new Date(NaN))}))?function(){if(!isFinite(i.call(this)))throw RangeError("Invalid time value");var t=this,e=t.getUTCFullYear(),n=t.getUTCMilliseconds(),r=e<0?"-":e>9999?"+":"";return r+("00000"+Math.abs(e)).slice(r?-6:-4)+"-"+o(t.getUTCMonth()+1)+"-"+o(t.getUTCDate())+"T"+o(t.getUTCHours())+":"+o(t.getUTCMinutes())+":"+o(t.getUTCSeconds())+"."+(n>99?n:"0"+o(n))+"Z"}:a},"k+1r":function(t,e,n){var r=n("QkVE");t.exports=function(t){var e=r(this,t).delete(t);return this.size-=e?1:0,e}},kekF:function(t,e){t.exports=function(t,e){return function(n){return t(e(n))}}},knhD:function(t,e,n){var r=n("XKFU");r(r.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},lQqw:function(t,e,n){var r=n("MMmD");t.exports=function(t,e){return function(n,i){if(null==n)return n;if(!r(n))return t(n,i);for(var a=n.length,o=e?a:-1,s=Object(n);(e?o--:++o<a)&&!1!==i(s[o],o,s););return n}}},lSCD:function(t,e,n){var r=n("NykK"),i=n("GoyQ");t.exports=function(t){if(!i(t))return!1;var e=r(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}},ljhN:function(t,e){t.exports=function(t,e){return t===e||t!=t&&e!=e}},"lm/5":function(t,e,n){var r=n("fmRc"),i=n("wF/u");t.exports=function(t,e,n,a){var o=n.length,s=o,l=!a;if(null==t)return!s;for(t=Object(t);o--;){var u=n[o];if(l&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++o<s;){var c=(u=n[o])[0],h=t[c],d=u[1];if(l&&u[2]){if(void 0===h&&!(c in t))return!1}else{var f=new r;if(a)var p=a(h,d,c,t,e,f);if(!(void 0===p?i(d,h,3,a,f):p))return!1}}return!0}},lvtm:function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},mc0g:function(t,e){t.exports=function(t){return function(e,n,r){for(var i=-1,a=Object(e),o=r(e),s=o.length;s--;){var l=o[t?s:++i];if(!1===n(a[l],l,a))break}return e}}},mdPL:function(t,e,n){(function(t){var r=n("WFqU"),i=e&&!e.nodeType&&e,a=i&&"object"==typeof t&&t&&!t.nodeType&&t,o=a&&a.exports===i&&r.process,s=function(){try{var t=a&&a.require&&a.require("util").types;return t||o&&o.binding&&o.binding("util")}catch(e){}}();t.exports=s}).call(this,n("YuTi")(t))},mwIZ:function(t,e,n){var r=n("ZWtO");t.exports=function(t,e,n){var i=null==t?void 0:r(t,e);return void 0===i?n:i}},nmnc:function(t,e,n){var r=n("Kz5y").Symbol;t.exports=r},oMRN:function(t,e){t.exports=function(t,e,n,r){for(var i=-1,a=null==t?0:t.length;++i<a;){var o=t[i];e(r,o,n(o),t)}return r}},or5M:function(t,e,n){var r=n("1hJj"),i=n("QoRX"),a=n("xYSL");t.exports=function(t,e,n,o,s,l){var u=1&n,c=t.length,h=e.length;if(c!=h&&!(u&&h>c))return!1;var d=l.get(t);if(d&&l.get(e))return d==e;var f=-1,p=!0,g=2&n?new r:void 0;for(l.set(t,e),l.set(e,t);++f<c;){var m=t[f],v=e[f];if(o)var y=u?o(v,m,f,e,t,l):o(m,v,f,t,e,l);if(void 0!==y){if(y)continue;p=!1;break}if(g){if(!i(e,(function(t,e){if(!a(g,e)&&(m===t||s(m,t,n,o,l)))return g.push(e)}))){p=!1;break}}else if(m!==v&&!s(m,v,n,o,l)){p=!1;break}}return l.delete(t),l.delete(e),p}},oweT:function(t,e,n){"use strict";n.r(e);var r=n("Bl7J"),i=n("2A+t"),a=n("MXbp"),o=n("q1tI"),s=n("UDbo"),l=n("qKvR");var u=function(t){var e,n;function r(){for(var e,n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];return(e=t.call.apply(t,[this].concat(r))||this).state={lineChartData:e.props.lineChartData},e}return n=t,(e=r).prototype=Object.create(n.prototype),e.prototype.constructor=e,e.__proto__=n,r.prototype.render=function(){return Object(l.c)("div",null,Object(l.c)(s.b,{data:this.state.lineChartData,height:220,width:250,options:{scales:{xAxes:[{display:!0,ticks:{fontColor:"white",maxTicksLimit:3},gridLines:{color:"white"},scaleLabel:{display:!0,labelString:this.props.xAxis,fontColor:"white"}}],yAxes:[{display:!0,ticks:{fontColor:"white",maxTicksLimit:3},gridLines:{color:"white"},scaleLabel:{display:!0,labelString:this.props.yAxis,fontColor:"white"}}]},legend:{labels:{fontColor:"white"},display:this.props.displayLegend,position:this.props.legendPosition},animation:{duration:2e3,easing:"easeOutCubic"}}}))},r}(o.Component);u.defaultProps={displayLegend:!0,legendPosition:"bottom"};var c=u;var h=function(t){var e,n;function r(){for(var e,n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];return(e=t.call.apply(t,[this].concat(r))||this).state={barChartData:e.props.barChartData},e}return n=t,(e=r).prototype=Object.create(n.prototype),e.prototype.constructor=e,e.__proto__=n,r.prototype.render=function(){return Object(l.c)("div",null,Object(l.c)(s.a,{data:this.state.barChartData,height:220,width:250,options:{scales:{xAxes:[{display:!0,ticks:{fontColor:"white"},gridLines:{color:"white"},scaleLabel:{display:!1,labelString:this.props.xAxis,fontColor:"white"}}],yAxes:[{display:!0,ticks:{fontColor:"white",maxTicksLimit:4,padding:2,beginAtZero:!0},gridLines:{color:"white"},scaleLabel:{display:!0,labelString:this.props.yAxis,fontColor:"white"}}]},legend:{display:this.props.displayLegend,position:this.props.legendPosition},animation:{duration:2e3,easing:"easeOutCubic"}}}))},r}(o.Component);h.defaultProps={displayLegend:!1,legendPosition:"bottom"};var d=h,f=function(t){var e=t.children,n=t.primary,r=t.graphData,a=t.heading,o=t.chartType,s=t.xAxis,l=t.yAxis;return"line"===o?Object(i.c)("div",{sx:{boxShadow:n?"cardShadow":null,borderRadius:"card",backgroundColor:"primary",color:"white",marginY:5,marginX:1,width:"18rem",display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center"}},Object(i.c)("h5",{sx:{fontSize:"1.1rem",margin:"0.5rem 1.5rem 0.5rem 1.5rem",textAlign:"center",height:"3rem"}},a),Object(i.c)(c,{lineChartData:r,legendPosition:"bottom",xAxis:s,yAxis:l}),Object(i.c)("div",{sx:{boxShadowBottom:n?"cardShadow":null,borderBottomRightRadius:"card",borderBottomLeftRadius:"card",backgroundColor:"white",borderTop:"0.35rem solid #5DA7A3",color:"darkText",height:"50%",padding:"4rem 1rem",display:"flex",justifyContent:"center",alignItems:"center",width:"100%",marginBottom:"-4rem",marginTop:"1rem"}},e)):Object(i.c)("div",{sx:{boxShadow:n?"cardShadow":null,borderRadius:"card",backgroundColor:"primary",color:"white",marginY:5,marginX:1,width:"18rem",display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center"}},Object(i.c)("h5",{sx:{fontSize:"1.1rem",margin:"0.5rem 1rem 0.5rem 1rem",textAlign:"center",height:"3rem"}},a),Object(i.c)(d,{barChartData:r,yAxis:l}),Object(i.c)("div",{sx:{boxShadowBottom:n?"cardShadow":null,borderBottomRightRadius:"card",borderBottomLeftRadius:"card",backgroundColor:"white",borderTop:"0.35rem solid #5DA7A3",color:"darkText",height:"50%",padding:"4rem 1rem",display:"flex",justifyContent:"center",alignItems:"center",width:"100%",marginBottom:"-4rem",marginTop:"1rem"}},e))};var p=function(t){var e,n;function o(){for(var e,n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];return(e=t.call.apply(t,[this].concat(r))||this).state={barChartJDK8Startup:{labels:["OpenJ9","HotSpot"],datasets:[{data:[.58,1],backgroundColor:["#5DA7A3","#E58B23"]}]},barChartJDK8Footprint:{labels:["OpenJ9","HotSpot"],datasets:[{data:[.34,1],backgroundColor:["#5DA7A3","#E58B23"]}]},lineChartJK8FasterRampupInTheCloud:{labels:[0,150,300,450,600,750,900,1050,1200,1350],datasets:[{label:"OpenJ9",data:[8.5,1064,1063,1133,1188.5,1071,1125.5,1084.5,1095,1104.5],fill:!1,borderColor:"#5DA7A3",backgroundColor:"#5DA7A3"},{label:"HotSpot",data:[10.5,529.5,700.5,832.5,796,829.5,698.5,791.5,1017,1175.5],fill:!1,borderColor:"#E58B23",backgroundColor:"#E58B23"}]},lineChartJK8FootprintDuringLoad:{labels:[0,200,400,600,800,1e3,1200,1400,1600,1800],datasets:[{label:"OpenJ9",data:[232,488,505,511,516,517,520,521,521,522],fill:!1,borderColor:"#5DA7A3",backgroundColor:"#5DA7A3"},{label:"HotSpot",data:[563,902,1023,1140,1200,1218,1220,1289,1359,1368],fill:!1,borderColor:"#E58B23",backgroundColor:"#E58B23"}]},barChartJDK11Startup:{labels:["OpenJ9","HotSpot"],datasets:[{data:[.49,1],backgroundColor:["#5DA7A3","#E58B23"]}]},barChartJDK11Footprint:{labels:["OpenJ9","HotSpot"],datasets:[{data:[.5,1],backgroundColor:["#5DA7A3","#E58B23"]}]},lineChartJK11FasterRampupInTheCloud:{labels:[0,25,50,75,100,125,150,175,200,225,250,275,300],datasets:[{label:"OpenJ9",data:[606,2483,2621,2805,2853,2924,3049,3103,3122,3043,3069,3092,3167],fill:!1,borderColor:"#5DA7A3",backgroundColor:"#5DA7A3"},{label:"HotSpot",data:[139,1208,1620,1952,2157,2551,2696,2879,3264,3337,3392,3436,3479],fill:!1,borderColor:"#E58B23",backgroundColor:"#E58B23"}]},lineChartJK11FootprintDuringLoad:{labels:[0,100,200,300,400,500,600],datasets:[{label:"OpenJ9",data:[267,630,674,680,688,688,691],fill:!1,borderColor:"#5DA7A3",backgroundColor:"#5DA7A3"},{label:"HotSpot",data:[500,786,945,975,985,1001,1011],fill:!1,borderColor:"#E58B23",backgroundColor:"#E58B23"}]}},e}return n=t,(e=o).prototype=Object.create(n.prototype),e.prototype.constructor=e,e.__proto__=n,o.prototype.render=function(){return Object(i.c)(r.a,{isHome:!1,title:"Eclipse OpenJ9 performance",description:"OpenJDK with OpenJ9 demonstrates significantly better performance than HotSpot."},Object(i.c)("section",{sx:{backgroundColor:"#F5F9FC",paddingX:"7%",paddingTop:"4rem",paddingBottom:"0.1rem"}},Object(i.c)(a.b.h1,{sx:{marginBottom:"1rem"}},"Performance Overview"),Object(i.c)(a.b.p,null,"Application performance can be measured using many different metrics, including startup time, ramp-up time, footprint, and response time, as well as throughput. At Eclipse OpenJ9, we keep a watchful eye on all of these metrics, making sensible tradeoffs and providing tuning options that allow the virtual machine (VM) to be optimized for different workloads.")),Object(i.c)("section",{sx:{backgroundColor:"#F5F9FC",paddingX:"7%",paddingTop:"0.1rem",paddingBottom:"4rem"}},Object(i.c)(a.b.h2,null,"OpenJDK 8 performance with Eclipse OpenJ9"),Object(i.c)(a.b.p,{sx:{marginBottom:"0.5rem"}},"OpenJDK 8 with OpenJ9 demonstrates significantly better performance than OpenJDK 8 with HotSpot"),Object(i.c)("div",{sx:{display:"flex",justifyContent:"space-around",flexWrap:"wrap"}},Object(i.c)(f,{graphData:this.state.barChartJDK8Startup,heading:"42% faster startup time",primary:!0,chartType:"bar",yAxis:"Relative startup time"},Object(i.c)("p",null,"Shared classes and Ahead-of-Time (AOT) technologies typically reduce startup time. By using -Xquickstart mode as well, you can reduce startup time by up to 42%.")),Object(i.c)(f,{graphData:this.state.barChartJDK8Footprint,heading:"66% smaller footprint after startup",primary:!0,chartType:"bar",yAxis:"Relative resident set size"},Object(i.c)("p",null,"OpenJ9 is highly optimized for cloud workloads, where minimizing memory footprint is important. Out of the box, the footprint is 66% smaller than HotSpot.")),Object(i.c)(f,{graphData:this.state.lineChartJK8FasterRampupInTheCloud,heading:"Faster ramp-up time in the cloud",primary:!0,chartType:"line",xAxis:"Time (s)",yAxis:"Throughput (pages/s)"},Object(i.c)("p",null,"OpenJ9 reaches peak throughput on a single CPU core in 8.5 minutes compared with 30 minutes for Hotspot. Ideal for short-lived VMs running in the cloud.")),Object(i.c)(f,{graphData:this.state.lineChartJK8FootprintDuringLoad,heading:"63% smaller footprint during load",primary:!0,chartType:"line",yAxis:"Resident Set Size (MB)",xAxis:"Time (s)"},Object(i.c)("p",null,"Memory footprint increases rapidly when load is applied. However, at steady state, OpenJ9 consistently used around 63% less physical memory than HotSpot."))),Object(i.c)("div",{sx:{display:"flex",justifyContent:"center"}},Object(i.c)("a",{sx:{variant:"buttons.secondary",display:"flex",alignItems:"center",justifyContent:"center",textDecoration:"none",width:"16rem",marginTop:"7rem"},href:"https://github.com/eclipse/openj9-website/blob/master/benchmark/daytrader7.md",rel:"noopener noreferrer",target:"_blank"},"Read more performance details"))),Object(i.c)("section",{sx:{backgroundColor:"#F5F9FC",paddingX:"7%",paddingTop:"0.1rem",paddingBottom:"4rem"}},Object(i.c)(a.b.h2,null,"OpenJDK 11 performance with Eclipse OpenJ9"),Object(i.c)(a.b.p,{sx:{marginBottom:"0.5rem"}},"Testing shows similar results for OpenJDK 11; OpenJ9 outperforms HotSpot on startup, ramp up, and footprint"),Object(i.c)("div",{sx:{display:"flex",justifyContent:"space-around",flexWrap:"wrap"}},Object(i.c)(f,{graphData:this.state.barChartJDK11Startup,heading:"51% faster startup time",primary:!0,chartType:"bar",yAxis:"Relative startup time"},Object(i.c)("p",null,"By using shared classes cache and AOT technology, OpenJ9 starts in roughly half the time it takes HotSpot.")),Object(i.c)(f,{graphData:this.state.barChartJDK11Footprint,heading:"50% smaller footprint after startup",primary:!0,chartType:"bar",yAxis:"Relative resident set size"},Object(i.c)("p",null,"After startup, the OpenJ9 footprint is half the size of HotSpot, which makes it ideal for cloud workloads.")),Object(i.c)(f,{graphData:this.state.lineChartJK11FasterRampupInTheCloud,heading:"Faster ramp-up time in the cloud",primary:!0,chartType:"line",xAxis:"Time (s)",yAxis:"Throughput (pages/s)"},Object(i.c)("p",null,"OpenJ9 reaches peak throughput much faster than HotSpot making it especially suitable for running short-lived applications.")),Object(i.c)(f,{graphData:this.state.lineChartJK11FootprintDuringLoad,heading:"33% smaller footprint during load",primary:!0,chartType:"line",yAxis:"Resident Set Size (MB)",xAxis:"Time (s)"},Object(i.c)("p",null,"Consistent with the footprint results after startup, the OpenJ9 footprint remains much smaller than HotSpot when load is applied."))),Object(i.c)("div",{sx:{display:"flex",justifyContent:"center"}},Object(i.c)("a",{sx:{variant:"buttons.secondary",display:"flex",alignItems:"center",justifyContent:"center",textDecoration:"none",width:"16rem",marginTop:"7rem"},href:"https://github.com/eclipse/openj9-website/blob/master/benchmark/openjdk11-daytrader7.md",rel:"noopener noreferrer",target:"_blank"},"Read more performance details"))))},o}(o.Component);e.default=p},pSRY:function(t,e,n){var r=n("QkVE");t.exports=function(t){return r(this,t).has(t)}},qZTm:function(t,e,n){var r=n("fR/l"),i=n("MvSz"),a=n("7GkX");t.exports=function(t){return r(t,a,i)}},rEGp:function(t,e,n){n("8+KV"),t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}},sEf8:function(t,e){t.exports=function(t){return function(e){return t(e)}}},seXi:function(t,e,n){var r=n("qZTm"),i=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,a,o,s){var l=1&n,u=r(t),c=u.length;if(c!=r(e).length&&!l)return!1;for(var h=c;h--;){var d=u[h];if(!(l?d in e:i.call(e,d)))return!1}var f=s.get(t);if(f&&s.get(e))return f==e;var p=!0;s.set(t,e),s.set(e,t);for(var g=l;++h<c;){var m=t[d=u[h]],v=e[d];if(a)var y=l?a(v,m,d,e,t,s):a(m,v,d,t,e,s);if(!(void 0===y?m===v||o(m,v,n,a,s):y)){p=!1;break}g||(g="constructor"==d)}if(p&&!g){var b=t.constructor,x=e.constructor;b!=x&&"constructor"in t&&"constructor"in e&&!("function"==typeof b&&b instanceof b&&"function"==typeof x&&x instanceof x)&&(p=!1)}return s.delete(t),s.delete(e),p}},shjB:function(t,e){t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},tMB7:function(t,e,n){var r=n("y1pI");t.exports=function(t){var e=this.__data__,n=r(e,t);return n<0?void 0:e[n][1]}},tadb:function(t,e,n){var r=n("Cwc5")(n("Kz5y"),"DataView");t.exports=r},u8Dt:function(t,e,n){var r=n("YESw"),i=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;if(r){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return i.call(e,t)?e[t]:void 0}},"ut/Y":function(t,e,n){var r=n("ZCpW"),i=n("GDhZ"),a=n("zZ0H"),o=n("Z0cm"),s=n("+c4W");t.exports=function(t){return"function"==typeof t?t:null==t?a:"object"==typeof t?o(t)?i(t[0],t[1]):r(t):s(t)}},"wF/u":function(t,e,n){var r=n("e5cp"),i=n("ExA7");t.exports=function t(e,n,a,o,s){return e===n||(null==e||null==n||!i(e)&&!i(n)?e!=e&&n!=n:r(e,n,a,o,t,s))}},wJg7:function(t,e){var n=/^(?:0|[1-9]\d*)$/;t.exports=function(t,e){var r=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==r||"symbol"!=r&&n.test(t))&&t>-1&&t%1==0&&t<e}},"wd/R":function(t,e,n){(function(t){n("AphP"),n("jqX0"),n("eM6i"),n("f3/d"),n("8+KV"),n("KKXr"),n("V+eJ"),n("SRfc"),n("Vd3H"),n("pIFo"),n("rGqo"),n("yt8O"),n("RW0V"),n("Oyvg"),n("Zshi"),n("dZ+Y"),n("a1Th"),n("h7Nl"),n("Btvt"),t.exports=function(){"use strict";var e,n;function r(){return e.apply(null,arguments)}function i(t){return t instanceof Array||"[object Array]"===Object.prototype.toString.call(t)}function a(t){return null!=t&&"[object Object]"===Object.prototype.toString.call(t)}function o(t){return void 0===t}function s(t){return"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t)}function l(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function u(t,e){var n,r=[];for(n=0;n<t.length;++n)r.push(e(t[n],n));return r}function c(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function h(t,e){for(var n in e)c(e,n)&&(t[n]=e[n]);return c(e,"toString")&&(t.toString=e.toString),c(e,"valueOf")&&(t.valueOf=e.valueOf),t}function d(t,e,n,r){return ke(t,e,n,r,!0).utc()}function f(t){return null==t._pf&&(t._pf={empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1}),t._pf}function p(t){if(null==t._isValid){var e=f(t),r=n.call(e.parsedDateParts,(function(t){return null!=t})),i=!isNaN(t._d.getTime())&&e.overflow<0&&!e.empty&&!e.invalidMonth&&!e.invalidWeekday&&!e.weekdayMismatch&&!e.nullInput&&!e.invalidFormat&&!e.userInvalidated&&(!e.meridiem||e.meridiem&&r);if(t._strict&&(i=i&&0===e.charsLeftOver&&0===e.unusedTokens.length&&void 0===e.bigHour),null!=Object.isFrozen&&Object.isFrozen(t))return i;t._isValid=i}return t._isValid}function g(t){var e=d(NaN);return null!=t?h(f(e),t):f(e).userInvalidated=!0,e}n=Array.prototype.some?Array.prototype.some:function(t){for(var e=Object(this),n=e.length>>>0,r=0;r<n;r++)if(r in e&&t.call(this,e[r],r,e))return!0;return!1};var m=r.momentProperties=[];function v(t,e){var n,r,i;if(o(e._isAMomentObject)||(t._isAMomentObject=e._isAMomentObject),o(e._i)||(t._i=e._i),o(e._f)||(t._f=e._f),o(e._l)||(t._l=e._l),o(e._strict)||(t._strict=e._strict),o(e._tzm)||(t._tzm=e._tzm),o(e._isUTC)||(t._isUTC=e._isUTC),o(e._offset)||(t._offset=e._offset),o(e._pf)||(t._pf=f(e)),o(e._locale)||(t._locale=e._locale),m.length>0)for(n=0;n<m.length;n++)o(i=e[r=m[n]])||(t[r]=i);return t}var y=!1;function b(t){v(this,t),this._d=new Date(null!=t._d?t._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),!1===y&&(y=!0,r.updateOffset(this),y=!1)}function x(t){return t instanceof b||null!=t&&null!=t._isAMomentObject}function _(t){return t<0?Math.ceil(t)||0:Math.floor(t)}function w(t){var e=+t,n=0;return 0!==e&&isFinite(e)&&(n=_(e)),n}function k(t,e,n){var r,i=Math.min(t.length,e.length),a=Math.abs(t.length-e.length),o=0;for(r=0;r<i;r++)(n&&t[r]!==e[r]||!n&&w(t[r])!==w(e[r]))&&o++;return o+a}function M(t){!1===r.suppressDeprecationWarnings&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function S(t,e){var n=!0;return h((function(){if(null!=r.deprecationHandler&&r.deprecationHandler(null,t),n){for(var i,a=[],o=0;o<arguments.length;o++){if(i="","object"==typeof arguments[o]){for(var s in i+="\n["+o+"] ",arguments[0])i+=s+": "+arguments[0][s]+", ";i=i.slice(0,-2)}else i=arguments[o];a.push(i)}M(t+"\nArguments: "+Array.prototype.slice.call(a).join("")+"\n"+(new Error).stack),n=!1}return e.apply(this,arguments)}),e)}var D,C={};function O(t,e){null!=r.deprecationHandler&&r.deprecationHandler(t,e),C[t]||(M(e),C[t]=!0)}function T(t){return t instanceof Function||"[object Function]"===Object.prototype.toString.call(t)}function A(t,e){var n,r=h({},t);for(n in e)c(e,n)&&(a(t[n])&&a(e[n])?(r[n]={},h(r[n],t[n]),h(r[n],e[n])):null!=e[n]?r[n]=e[n]:delete r[n]);for(n in t)c(t,n)&&!c(e,n)&&a(t[n])&&(r[n]=h({},r[n]));return r}function P(t){null!=t&&this.set(t)}r.suppressDeprecationWarnings=!1,r.deprecationHandler=null,D=Object.keys?Object.keys:function(t){var e,n=[];for(e in t)c(t,e)&&n.push(e);return n};var I={};function F(t,e){var n=t.toLowerCase();I[n]=I[n+"s"]=I[e]=t}function L(t){return"string"==typeof t?I[t]||I[t.toLowerCase()]:void 0}function R(t){var e,n,r={};for(n in t)c(t,n)&&(e=L(n))&&(r[e]=t[n]);return r}var N={};function E(t,e){N[t]=e}function j(t,e,n){var r=""+Math.abs(t),i=e-r.length;return(t>=0?n?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+r}var z=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,W=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Y={},V={};function B(t,e,n,r){var i=r;"string"==typeof r&&(i=function(){return this[r]()}),t&&(V[t]=i),e&&(V[e[0]]=function(){return j(i.apply(this,arguments),e[1],e[2])}),n&&(V[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),t)})}function H(t,e){return t.isValid()?(e=U(e,t.localeData()),Y[e]=Y[e]||function(t){var e,n,r,i=t.match(z);for(e=0,n=i.length;e<n;e++)V[i[e]]?i[e]=V[i[e]]:i[e]=(r=i[e]).match(/\[[\s\S]/)?r.replace(/^\[|\]$/g,""):r.replace(/\\/g,"");return function(e){var r,a="";for(r=0;r<n;r++)a+=T(i[r])?i[r].call(e,t):i[r];return a}}(e),Y[e](t)):t.localeData().invalidDate()}function U(t,e){var n=5;function r(t){return e.longDateFormat(t)||t}for(W.lastIndex=0;n>=0&&W.test(t);)t=t.replace(W,r),W.lastIndex=0,n-=1;return t}var G=/\d/,q=/\d\d/,K=/\d{3}/,J=/\d{4}/,Z=/[+-]?\d{6}/,X=/\d\d?/,$=/\d\d\d\d?/,Q=/\d\d\d\d\d\d?/,tt=/\d{1,3}/,et=/\d{1,4}/,nt=/[+-]?\d{1,6}/,rt=/\d+/,it=/[+-]?\d+/,at=/Z|[+-]\d\d:?\d\d/gi,ot=/Z|[+-]\d\d(?::?\d\d)?/gi,st=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,lt={};function ut(t,e,n){lt[t]=T(e)?e:function(t,r){return t&&n?n:e}}function ct(t,e){return c(lt,t)?lt[t](e._strict,e._locale):new RegExp(ht(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,(function(t,e,n,r,i){return e||n||r||i}))))}function ht(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}var dt={};function ft(t,e){var n,r=e;for("string"==typeof t&&(t=[t]),s(e)&&(r=function(t,n){n[e]=w(t)}),n=0;n<t.length;n++)dt[t[n]]=r}function pt(t,e){ft(t,(function(t,n,r,i){r._w=r._w||{},e(t,r._w,r,i)}))}function gt(t,e,n){null!=e&&c(dt,t)&&dt[t](e,n._a,n,t)}function mt(t){return vt(t)?366:365}function vt(t){return t%4==0&&t%100!=0||t%400==0}B("Y",0,0,(function(){var t=this.year();return t<=9999?""+t:"+"+t})),B(0,["YY",2],0,(function(){return this.year()%100})),B(0,["YYYY",4],0,"year"),B(0,["YYYYY",5],0,"year"),B(0,["YYYYYY",6,!0],0,"year"),F("year","y"),E("year",1),ut("Y",it),ut("YY",X,q),ut("YYYY",et,J),ut("YYYYY",nt,Z),ut("YYYYYY",nt,Z),ft(["YYYYY","YYYYYY"],0),ft("YYYY",(function(t,e){e[0]=2===t.length?r.parseTwoDigitYear(t):w(t)})),ft("YY",(function(t,e){e[0]=r.parseTwoDigitYear(t)})),ft("Y",(function(t,e){e[0]=parseInt(t,10)})),r.parseTwoDigitYear=function(t){return w(t)+(w(t)>68?1900:2e3)};var yt,bt=xt("FullYear",!0);function xt(t,e){return function(n){return null!=n?(wt(this,t,n),r.updateOffset(this,e),this):_t(this,t)}}function _t(t,e){return t.isValid()?t._d["get"+(t._isUTC?"UTC":"")+e]():NaN}function wt(t,e,n){t.isValid()&&!isNaN(n)&&("FullYear"===e&&vt(t.year())&&1===t.month()&&29===t.date()?t._d["set"+(t._isUTC?"UTC":"")+e](n,t.month(),kt(n,t.month())):t._d["set"+(t._isUTC?"UTC":"")+e](n))}function kt(t,e){if(isNaN(t)||isNaN(e))return NaN;var n,r=(e%(n=12)+n)%n;return t+=(e-r)/12,1===r?vt(t)?29:28:31-r%7%2}yt=Array.prototype.indexOf?Array.prototype.indexOf:function(t){var e;for(e=0;e<this.length;++e)if(this[e]===t)return e;return-1},B("M",["MM",2],"Mo",(function(){return this.month()+1})),B("MMM",0,0,(function(t){return this.localeData().monthsShort(this,t)})),B("MMMM",0,0,(function(t){return this.localeData().months(this,t)})),F("month","M"),E("month",8),ut("M",X),ut("MM",X,q),ut("MMM",(function(t,e){return e.monthsShortRegex(t)})),ut("MMMM",(function(t,e){return e.monthsRegex(t)})),ft(["M","MM"],(function(t,e){e[1]=w(t)-1})),ft(["MMM","MMMM"],(function(t,e,n,r){var i=n._locale.monthsParse(t,r,n._strict);null!=i?e[1]=i:f(n).invalidMonth=t}));var Mt=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,St="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),Dt="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_");function Ct(t,e,n){var r,i,a,o=t.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],r=0;r<12;++r)a=d([2e3,r]),this._shortMonthsParse[r]=this.monthsShort(a,"").toLocaleLowerCase(),this._longMonthsParse[r]=this.months(a,"").toLocaleLowerCase();return n?"MMM"===e?-1!==(i=yt.call(this._shortMonthsParse,o))?i:null:-1!==(i=yt.call(this._longMonthsParse,o))?i:null:"MMM"===e?-1!==(i=yt.call(this._shortMonthsParse,o))?i:-1!==(i=yt.call(this._longMonthsParse,o))?i:null:-1!==(i=yt.call(this._longMonthsParse,o))?i:-1!==(i=yt.call(this._shortMonthsParse,o))?i:null}function Ot(t,e){var n;if(!t.isValid())return t;if("string"==typeof e)if(/^\d+$/.test(e))e=w(e);else if(!s(e=t.localeData().monthsParse(e)))return t;return n=Math.min(t.date(),kt(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,n),t}function Tt(t){return null!=t?(Ot(this,t),r.updateOffset(this,!0),this):_t(this,"Month")}var At=st,Pt=st;function It(){function t(t,e){return e.length-t.length}var e,n,r=[],i=[],a=[];for(e=0;e<12;e++)n=d([2e3,e]),r.push(this.monthsShort(n,"")),i.push(this.months(n,"")),a.push(this.months(n,"")),a.push(this.monthsShort(n,""));for(r.sort(t),i.sort(t),a.sort(t),e=0;e<12;e++)r[e]=ht(r[e]),i[e]=ht(i[e]);for(e=0;e<24;e++)a[e]=ht(a[e]);this._monthsRegex=new RegExp("^("+a.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+i.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+r.join("|")+")","i")}function Ft(t,e,n,r,i,a,o){var s;return t<100&&t>=0?(s=new Date(t+400,e,n,r,i,a,o),isFinite(s.getFullYear())&&s.setFullYear(t)):s=new Date(t,e,n,r,i,a,o),s}function Lt(t){var e;if(t<100&&t>=0){var n=Array.prototype.slice.call(arguments);n[0]=t+400,e=new Date(Date.UTC.apply(null,n)),isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t)}else e=new Date(Date.UTC.apply(null,arguments));return e}function Rt(t,e,n){var r=7+e-n;return-(7+Lt(t,0,r).getUTCDay()-e)%7+r-1}function Nt(t,e,n,r,i){var a,o,s=1+7*(e-1)+(7+n-r)%7+Rt(t,r,i);return s<=0?o=mt(a=t-1)+s:s>mt(t)?(a=t+1,o=s-mt(t)):(a=t,o=s),{year:a,dayOfYear:o}}function Et(t,e,n){var r,i,a=Rt(t.year(),e,n),o=Math.floor((t.dayOfYear()-a-1)/7)+1;return o<1?r=o+jt(i=t.year()-1,e,n):o>jt(t.year(),e,n)?(r=o-jt(t.year(),e,n),i=t.year()+1):(i=t.year(),r=o),{week:r,year:i}}function jt(t,e,n){var r=Rt(t,e,n),i=Rt(t+1,e,n);return(mt(t)-r+i)/7}function zt(t,e){return t.slice(e,7).concat(t.slice(0,e))}B("w",["ww",2],"wo","week"),B("W",["WW",2],"Wo","isoWeek"),F("week","w"),F("isoWeek","W"),E("week",5),E("isoWeek",5),ut("w",X),ut("ww",X,q),ut("W",X),ut("WW",X,q),pt(["w","ww","W","WW"],(function(t,e,n,r){e[r.substr(0,1)]=w(t)})),B("d",0,"do","day"),B("dd",0,0,(function(t){return this.localeData().weekdaysMin(this,t)})),B("ddd",0,0,(function(t){return this.localeData().weekdaysShort(this,t)})),B("dddd",0,0,(function(t){return this.localeData().weekdays(this,t)})),B("e",0,0,"weekday"),B("E",0,0,"isoWeekday"),F("day","d"),F("weekday","e"),F("isoWeekday","E"),E("day",11),E("weekday",11),E("isoWeekday",11),ut("d",X),ut("e",X),ut("E",X),ut("dd",(function(t,e){return e.weekdaysMinRegex(t)})),ut("ddd",(function(t,e){return e.weekdaysShortRegex(t)})),ut("dddd",(function(t,e){return e.weekdaysRegex(t)})),pt(["dd","ddd","dddd"],(function(t,e,n,r){var i=n._locale.weekdaysParse(t,r,n._strict);null!=i?e.d=i:f(n).invalidWeekday=t})),pt(["d","e","E"],(function(t,e,n,r){e[r]=w(t)}));var Wt="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Yt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Vt="Su_Mo_Tu_We_Th_Fr_Sa".split("_");function Bt(t,e,n){var r,i,a,o=t.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],r=0;r<7;++r)a=d([2e3,1]).day(r),this._minWeekdaysParse[r]=this.weekdaysMin(a,"").toLocaleLowerCase(),this._shortWeekdaysParse[r]=this.weekdaysShort(a,"").toLocaleLowerCase(),this._weekdaysParse[r]=this.weekdays(a,"").toLocaleLowerCase();return n?"dddd"===e?-1!==(i=yt.call(this._weekdaysParse,o))?i:null:"ddd"===e?-1!==(i=yt.call(this._shortWeekdaysParse,o))?i:null:-1!==(i=yt.call(this._minWeekdaysParse,o))?i:null:"dddd"===e?-1!==(i=yt.call(this._weekdaysParse,o))?i:-1!==(i=yt.call(this._shortWeekdaysParse,o))?i:-1!==(i=yt.call(this._minWeekdaysParse,o))?i:null:"ddd"===e?-1!==(i=yt.call(this._shortWeekdaysParse,o))?i:-1!==(i=yt.call(this._weekdaysParse,o))?i:-1!==(i=yt.call(this._minWeekdaysParse,o))?i:null:-1!==(i=yt.call(this._minWeekdaysParse,o))?i:-1!==(i=yt.call(this._weekdaysParse,o))?i:-1!==(i=yt.call(this._shortWeekdaysParse,o))?i:null}var Ht=st,Ut=st,Gt=st;function qt(){function t(t,e){return e.length-t.length}var e,n,r,i,a,o=[],s=[],l=[],u=[];for(e=0;e<7;e++)n=d([2e3,1]).day(e),r=this.weekdaysMin(n,""),i=this.weekdaysShort(n,""),a=this.weekdays(n,""),o.push(r),s.push(i),l.push(a),u.push(r),u.push(i),u.push(a);for(o.sort(t),s.sort(t),l.sort(t),u.sort(t),e=0;e<7;e++)s[e]=ht(s[e]),l[e]=ht(l[e]),u[e]=ht(u[e]);this._weekdaysRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+o.join("|")+")","i")}function Kt(){return this.hours()%12||12}function Jt(t,e){B(t,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)}))}function Zt(t,e){return e._meridiemParse}B("H",["HH",2],0,"hour"),B("h",["hh",2],0,Kt),B("k",["kk",2],0,(function(){return this.hours()||24})),B("hmm",0,0,(function(){return""+Kt.apply(this)+j(this.minutes(),2)})),B("hmmss",0,0,(function(){return""+Kt.apply(this)+j(this.minutes(),2)+j(this.seconds(),2)})),B("Hmm",0,0,(function(){return""+this.hours()+j(this.minutes(),2)})),B("Hmmss",0,0,(function(){return""+this.hours()+j(this.minutes(),2)+j(this.seconds(),2)})),Jt("a",!0),Jt("A",!1),F("hour","h"),E("hour",13),ut("a",Zt),ut("A",Zt),ut("H",X),ut("h",X),ut("k",X),ut("HH",X,q),ut("hh",X,q),ut("kk",X,q),ut("hmm",$),ut("hmmss",Q),ut("Hmm",$),ut("Hmmss",Q),ft(["H","HH"],3),ft(["k","kk"],(function(t,e,n){var r=w(t);e[3]=24===r?0:r})),ft(["a","A"],(function(t,e,n){n._isPm=n._locale.isPM(t),n._meridiem=t})),ft(["h","hh"],(function(t,e,n){e[3]=w(t),f(n).bigHour=!0})),ft("hmm",(function(t,e,n){var r=t.length-2;e[3]=w(t.substr(0,r)),e[4]=w(t.substr(r)),f(n).bigHour=!0})),ft("hmmss",(function(t,e,n){var r=t.length-4,i=t.length-2;e[3]=w(t.substr(0,r)),e[4]=w(t.substr(r,2)),e[5]=w(t.substr(i)),f(n).bigHour=!0})),ft("Hmm",(function(t,e,n){var r=t.length-2;e[3]=w(t.substr(0,r)),e[4]=w(t.substr(r))})),ft("Hmmss",(function(t,e,n){var r=t.length-4,i=t.length-2;e[3]=w(t.substr(0,r)),e[4]=w(t.substr(r,2)),e[5]=w(t.substr(i))}));var Xt,$t=xt("Hours",!0),Qt={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:St,monthsShort:Dt,week:{dow:0,doy:6},weekdays:Wt,weekdaysMin:Vt,weekdaysShort:Yt,meridiemParse:/[ap]\.?m?\.?/i},te={},ee={};function ne(t){return t?t.toLowerCase().replace("_","-"):t}function re(e){var n=null;if(!te[e]&&void 0!==t&&t&&t.exports)try{n=Xt._abbr,!function(){var t=new Error("Cannot find module 'undefined'");throw t.code="MODULE_NOT_FOUND",t}(),ie(n)}catch(r){}return te[e]}function ie(t,e){var n;return t&&((n=o(e)?oe(t):ae(t,e))?Xt=n:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+t+" not found. Did you forget to load it?")),Xt._abbr}function ae(t,e){if(null!==e){var n,r=Qt;if(e.abbr=t,null!=te[t])O("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),r=te[t]._config;else if(null!=e.parentLocale)if(null!=te[e.parentLocale])r=te[e.parentLocale]._config;else{if(null==(n=re(e.parentLocale)))return ee[e.parentLocale]||(ee[e.parentLocale]=[]),ee[e.parentLocale].push({name:t,config:e}),null;r=n._config}return te[t]=new P(A(r,e)),ee[t]&&ee[t].forEach((function(t){ae(t.name,t.config)})),ie(t),te[t]}return delete te[t],null}function oe(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Xt;if(!i(t)){if(e=re(t))return e;t=[t]}return function(t){for(var e,n,r,i,a=0;a<t.length;){for(e=(i=ne(t[a]).split("-")).length,n=(n=ne(t[a+1]))?n.split("-"):null;e>0;){if(r=re(i.slice(0,e).join("-")))return r;if(n&&n.length>=e&&k(i,n,!0)>=e-1)break;e--}a++}return Xt}(t)}function se(t){var e,n=t._a;return n&&-2===f(t).overflow&&(e=n[1]<0||n[1]>11?1:n[2]<1||n[2]>kt(n[0],n[1])?2:n[3]<0||n[3]>24||24===n[3]&&(0!==n[4]||0!==n[5]||0!==n[6])?3:n[4]<0||n[4]>59?4:n[5]<0||n[5]>59?5:n[6]<0||n[6]>999?6:-1,f(t)._overflowDayOfYear&&(e<0||e>2)&&(e=2),f(t)._overflowWeeks&&-1===e&&(e=7),f(t)._overflowWeekday&&-1===e&&(e=8),f(t).overflow=e),t}function le(t,e,n){return null!=t?t:null!=e?e:n}function ue(t){var e,n,i,a,o,s=[];if(!t._d){for(i=function(t){var e=new Date(r.now());return t._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}(t),t._w&&null==t._a[2]&&null==t._a[1]&&function(t){var e,n,r,i,a,o,s,l;if(null!=(e=t._w).GG||null!=e.W||null!=e.E)a=1,o=4,n=le(e.GG,t._a[0],Et(Me(),1,4).year),r=le(e.W,1),((i=le(e.E,1))<1||i>7)&&(l=!0);else{a=t._locale._week.dow,o=t._locale._week.doy;var u=Et(Me(),a,o);n=le(e.gg,t._a[0],u.year),r=le(e.w,u.week),null!=e.d?((i=e.d)<0||i>6)&&(l=!0):null!=e.e?(i=e.e+a,(e.e<0||e.e>6)&&(l=!0)):i=a}r<1||r>jt(n,a,o)?f(t)._overflowWeeks=!0:null!=l?f(t)._overflowWeekday=!0:(s=Nt(n,r,i,a,o),t._a[0]=s.year,t._dayOfYear=s.dayOfYear)}(t),null!=t._dayOfYear&&(o=le(t._a[0],i[0]),(t._dayOfYear>mt(o)||0===t._dayOfYear)&&(f(t)._overflowDayOfYear=!0),n=Lt(o,0,t._dayOfYear),t._a[1]=n.getUTCMonth(),t._a[2]=n.getUTCDate()),e=0;e<3&&null==t._a[e];++e)t._a[e]=s[e]=i[e];for(;e<7;e++)t._a[e]=s[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[3]&&0===t._a[4]&&0===t._a[5]&&0===t._a[6]&&(t._nextDay=!0,t._a[3]=0),t._d=(t._useUTC?Lt:Ft).apply(null,s),a=t._useUTC?t._d.getUTCDay():t._d.getDay(),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[3]=24),t._w&&void 0!==t._w.d&&t._w.d!==a&&(f(t).weekdayMismatch=!0)}}var ce=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,he=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,de=/Z|[+-]\d\d(?::?\d\d)?/,fe=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],pe=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],ge=/^\/?Date\((\-?\d+)/i;function me(t){var e,n,r,i,a,o,s=t._i,l=ce.exec(s)||he.exec(s);if(l){for(f(t).iso=!0,e=0,n=fe.length;e<n;e++)if(fe[e][1].exec(l[1])){i=fe[e][0],r=!1!==fe[e][2];break}if(null==i)return void(t._isValid=!1);if(l[3]){for(e=0,n=pe.length;e<n;e++)if(pe[e][1].exec(l[3])){a=(l[2]||" ")+pe[e][0];break}if(null==a)return void(t._isValid=!1)}if(!r&&null!=a)return void(t._isValid=!1);if(l[4]){if(!de.exec(l[4]))return void(t._isValid=!1);o="Z"}t._f=i+(a||"")+(o||""),_e(t)}else t._isValid=!1}var ve=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/;function ye(t){var e=parseInt(t,10);return e<=49?2e3+e:e<=999?1900+e:e}var be={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function xe(t){var e,n,r,i,a,o,s,l=ve.exec(t._i.replace(/\([^)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s\s*/,"").replace(/\s\s*$/,""));if(l){var u=(e=l[4],n=l[3],r=l[2],i=l[5],a=l[6],o=l[7],s=[ye(e),Dt.indexOf(n),parseInt(r,10),parseInt(i,10),parseInt(a,10)],o&&s.push(parseInt(o,10)),s);if(!function(t,e,n){return!t||Yt.indexOf(t)===new Date(e[0],e[1],e[2]).getDay()||(f(n).weekdayMismatch=!0,n._isValid=!1,!1)}(l[1],u,t))return;t._a=u,t._tzm=function(t,e,n){if(t)return be[t];if(e)return 0;var r=parseInt(n,10),i=r%100;return(r-i)/100*60+i}(l[8],l[9],l[10]),t._d=Lt.apply(null,t._a),t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),f(t).rfc2822=!0}else t._isValid=!1}function _e(t){if(t._f!==r.ISO_8601)if(t._f!==r.RFC_2822){t._a=[],f(t).empty=!0;var e,n,i,a,o,s=""+t._i,l=s.length,u=0;for(i=U(t._f,t._locale).match(z)||[],e=0;e<i.length;e++)a=i[e],(n=(s.match(ct(a,t))||[])[0])&&((o=s.substr(0,s.indexOf(n))).length>0&&f(t).unusedInput.push(o),s=s.slice(s.indexOf(n)+n.length),u+=n.length),V[a]?(n?f(t).empty=!1:f(t).unusedTokens.push(a),gt(a,n,t)):t._strict&&!n&&f(t).unusedTokens.push(a);f(t).charsLeftOver=l-u,s.length>0&&f(t).unusedInput.push(s),t._a[3]<=12&&!0===f(t).bigHour&&t._a[3]>0&&(f(t).bigHour=void 0),f(t).parsedDateParts=t._a.slice(0),f(t).meridiem=t._meridiem,t._a[3]=function(t,e,n){var r;return null==n?e:null!=t.meridiemHour?t.meridiemHour(e,n):null!=t.isPM?((r=t.isPM(n))&&e<12&&(e+=12),r||12!==e||(e=0),e):e}(t._locale,t._a[3],t._meridiem),ue(t),se(t)}else xe(t);else me(t)}function we(t){var e=t._i,n=t._f;return t._locale=t._locale||oe(t._l),null===e||void 0===n&&""===e?g({nullInput:!0}):("string"==typeof e&&(t._i=e=t._locale.preparse(e)),x(e)?new b(se(e)):(l(e)?t._d=e:i(n)?function(t){var e,n,r,i,a;if(0===t._f.length)return f(t).invalidFormat=!0,void(t._d=new Date(NaN));for(i=0;i<t._f.length;i++)a=0,e=v({},t),null!=t._useUTC&&(e._useUTC=t._useUTC),e._f=t._f[i],_e(e),p(e)&&(a+=f(e).charsLeftOver,a+=10*f(e).unusedTokens.length,f(e).score=a,(null==r||a<r)&&(r=a,n=e));h(t,n||e)}(t):n?_e(t):function(t){var e=t._i;o(e)?t._d=new Date(r.now()):l(e)?t._d=new Date(e.valueOf()):"string"==typeof e?function(t){var e=ge.exec(t._i);null===e?(me(t),!1===t._isValid&&(delete t._isValid,xe(t),!1===t._isValid&&(delete t._isValid,r.createFromInputFallback(t)))):t._d=new Date(+e[1])}(t):i(e)?(t._a=u(e.slice(0),(function(t){return parseInt(t,10)})),ue(t)):a(e)?function(t){if(!t._d){var e=R(t._i);t._a=u([e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],(function(t){return t&&parseInt(t,10)})),ue(t)}}(t):s(e)?t._d=new Date(e):r.createFromInputFallback(t)}(t),p(t)||(t._d=null),t))}function ke(t,e,n,r,o){var s,l={};return!0!==n&&!1!==n||(r=n,n=void 0),(a(t)&&function(t){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(t).length;var e;for(e in t)if(t.hasOwnProperty(e))return!1;return!0}(t)||i(t)&&0===t.length)&&(t=void 0),l._isAMomentObject=!0,l._useUTC=l._isUTC=o,l._l=n,l._i=t,l._f=e,l._strict=r,(s=new b(se(we(l))))._nextDay&&(s.add(1,"d"),s._nextDay=void 0),s}function Me(t,e,n,r){return ke(t,e,n,r,!1)}r.createFromInputFallback=S("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",(function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))})),r.ISO_8601=function(){},r.RFC_2822=function(){};var Se=S("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var t=Me.apply(null,arguments);return this.isValid()&&t.isValid()?t<this?this:t:g()})),De=S("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var t=Me.apply(null,arguments);return this.isValid()&&t.isValid()?t>this?this:t:g()}));function Ce(t,e){var n,r;if(1===e.length&&i(e[0])&&(e=e[0]),!e.length)return Me();for(n=e[0],r=1;r<e.length;++r)e[r].isValid()&&!e[r][t](n)||(n=e[r]);return n}var Oe=["year","quarter","month","week","day","hour","minute","second","millisecond"];function Te(t){var e=R(t),n=e.year||0,r=e.quarter||0,i=e.month||0,a=e.week||e.isoWeek||0,o=e.day||0,s=e.hour||0,l=e.minute||0,u=e.second||0,c=e.millisecond||0;this._isValid=function(t){for(var e in t)if(-1===yt.call(Oe,e)||null!=t[e]&&isNaN(t[e]))return!1;for(var n=!1,r=0;r<Oe.length;++r)if(t[Oe[r]]){if(n)return!1;parseFloat(t[Oe[r]])!==w(t[Oe[r]])&&(n=!0)}return!0}(e),this._milliseconds=+c+1e3*u+6e4*l+1e3*s*60*60,this._days=+o+7*a,this._months=+i+3*r+12*n,this._data={},this._locale=oe(),this._bubble()}function Ae(t){return t instanceof Te}function Pe(t){return t<0?-1*Math.round(-1*t):Math.round(t)}function Ie(t,e){B(t,0,0,(function(){var t=this.utcOffset(),n="+";return t<0&&(t=-t,n="-"),n+j(~~(t/60),2)+e+j(~~t%60,2)}))}Ie("Z",":"),Ie("ZZ",""),ut("Z",ot),ut("ZZ",ot),ft(["Z","ZZ"],(function(t,e,n){n._useUTC=!0,n._tzm=Le(ot,t)}));var Fe=/([\+\-]|\d\d)/gi;function Le(t,e){var n=(e||"").match(t);if(null===n)return null;var r=((n[n.length-1]||[])+"").match(Fe)||["-",0,0],i=60*r[1]+w(r[2]);return 0===i?0:"+"===r[0]?i:-i}function Re(t,e){var n,i;return e._isUTC?(n=e.clone(),i=(x(t)||l(t)?t.valueOf():Me(t).valueOf())-n.valueOf(),n._d.setTime(n._d.valueOf()+i),r.updateOffset(n,!1),n):Me(t).local()}function Ne(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function Ee(){return!!this.isValid()&&this._isUTC&&0===this._offset}r.updateOffset=function(){};var je=/^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,ze=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function We(t,e){var n,r,i,a,o,l,u=t,h=null;return Ae(t)?u={ms:t._milliseconds,d:t._days,M:t._months}:s(t)?(u={},e?u[e]=t:u.milliseconds=t):(h=je.exec(t))?(n="-"===h[1]?-1:1,u={y:0,d:w(h[2])*n,h:w(h[3])*n,m:w(h[4])*n,s:w(h[5])*n,ms:w(Pe(1e3*h[6]))*n}):(h=ze.exec(t))?(n="-"===h[1]?-1:1,u={y:Ye(h[2],n),M:Ye(h[3],n),w:Ye(h[4],n),d:Ye(h[5],n),h:Ye(h[6],n),m:Ye(h[7],n),s:Ye(h[8],n)}):null==u?u={}:"object"==typeof u&&("from"in u||"to"in u)&&(a=Me(u.from),o=Me(u.to),i=a.isValid()&&o.isValid()?(o=Re(o,a),a.isBefore(o)?l=Ve(a,o):((l=Ve(o,a)).milliseconds=-l.milliseconds,l.months=-l.months),l):{milliseconds:0,months:0},(u={}).ms=i.milliseconds,u.M=i.months),r=new Te(u),Ae(t)&&c(t,"_locale")&&(r._locale=t._locale),r}function Ye(t,e){var n=t&&parseFloat(t.replace(",","."));return(isNaN(n)?0:n)*e}function Ve(t,e){var n={};return n.months=e.month()-t.month()+12*(e.year()-t.year()),t.clone().add(n.months,"M").isAfter(e)&&--n.months,n.milliseconds=+e-+t.clone().add(n.months,"M"),n}function Be(t,e){return function(n,r){var i;return null===r||isNaN(+r)||(O(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),i=n,n=r,r=i),He(this,We(n="string"==typeof n?+n:n,r),t),this}}function He(t,e,n,i){var a=e._milliseconds,o=Pe(e._days),s=Pe(e._months);t.isValid()&&(i=null==i||i,s&&Ot(t,_t(t,"Month")+s*n),o&&wt(t,"Date",_t(t,"Date")+o*n),a&&t._d.setTime(t._d.valueOf()+a*n),i&&r.updateOffset(t,o||s))}We.fn=Te.prototype,We.invalid=function(){return We(NaN)};var Ue=Be(1,"add"),Ge=Be(-1,"subtract");function qe(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,"months");return-(n+(e-r<0?(e-r)/(r-t.clone().add(n-1,"months")):(e-r)/(t.clone().add(n+1,"months")-r)))||0}function Ke(t){var e;return void 0===t?this._locale._abbr:(null!=(e=oe(t))&&(this._locale=e),this)}r.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",r.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var Je=S("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",(function(t){return void 0===t?this.localeData():this.locale(t)}));function Ze(){return this._locale}function Xe(t,e){return(t%e+e)%e}function $e(t,e,n){return t<100&&t>=0?new Date(t+400,e,n)-126227808e5:new Date(t,e,n).valueOf()}function Qe(t,e,n){return t<100&&t>=0?Date.UTC(t+400,e,n)-126227808e5:Date.UTC(t,e,n)}function tn(t,e){B(0,[t,t.length],0,e)}function en(t,e,n,r,i){var a;return null==t?Et(this,r,i).year:(e>(a=jt(t,r,i))&&(e=a),nn.call(this,t,e,n,r,i))}function nn(t,e,n,r,i){var a=Nt(t,e,n,r,i),o=Lt(a.year,0,a.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}B(0,["gg",2],0,(function(){return this.weekYear()%100})),B(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),tn("gggg","weekYear"),tn("ggggg","weekYear"),tn("GGGG","isoWeekYear"),tn("GGGGG","isoWeekYear"),F("weekYear","gg"),F("isoWeekYear","GG"),E("weekYear",1),E("isoWeekYear",1),ut("G",it),ut("g",it),ut("GG",X,q),ut("gg",X,q),ut("GGGG",et,J),ut("gggg",et,J),ut("GGGGG",nt,Z),ut("ggggg",nt,Z),pt(["gggg","ggggg","GGGG","GGGGG"],(function(t,e,n,r){e[r.substr(0,2)]=w(t)})),pt(["gg","GG"],(function(t,e,n,i){e[i]=r.parseTwoDigitYear(t)})),B("Q",0,"Qo","quarter"),F("quarter","Q"),E("quarter",7),ut("Q",G),ft("Q",(function(t,e){e[1]=3*(w(t)-1)})),B("D",["DD",2],"Do","date"),F("date","D"),E("date",9),ut("D",X),ut("DD",X,q),ut("Do",(function(t,e){return t?e._dayOfMonthOrdinalParse||e._ordinalParse:e._dayOfMonthOrdinalParseLenient})),ft(["D","DD"],2),ft("Do",(function(t,e){e[2]=w(t.match(X)[0])}));var rn=xt("Date",!0);B("DDD",["DDDD",3],"DDDo","dayOfYear"),F("dayOfYear","DDD"),E("dayOfYear",4),ut("DDD",tt),ut("DDDD",K),ft(["DDD","DDDD"],(function(t,e,n){n._dayOfYear=w(t)})),B("m",["mm",2],0,"minute"),F("minute","m"),E("minute",14),ut("m",X),ut("mm",X,q),ft(["m","mm"],4);var an=xt("Minutes",!1);B("s",["ss",2],0,"second"),F("second","s"),E("second",15),ut("s",X),ut("ss",X,q),ft(["s","ss"],5);var on,sn=xt("Seconds",!1);for(B("S",0,0,(function(){return~~(this.millisecond()/100)})),B(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),B(0,["SSS",3],0,"millisecond"),B(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),B(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),B(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),B(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),B(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),B(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),F("millisecond","ms"),E("millisecond",16),ut("S",tt,G),ut("SS",tt,q),ut("SSS",tt,K),on="SSSS";on.length<=9;on+="S")ut(on,rt);function ln(t,e){e[6]=w(1e3*("0."+t))}for(on="S";on.length<=9;on+="S")ft(on,ln);var un=xt("Milliseconds",!1);B("z",0,0,"zoneAbbr"),B("zz",0,0,"zoneName");var cn=b.prototype;function hn(t){return t}cn.add=Ue,cn.calendar=function(t,e){var n=t||Me(),i=Re(n,this).startOf("day"),a=r.calendarFormat(this,i)||"sameElse",o=e&&(T(e[a])?e[a].call(this,n):e[a]);return this.format(o||this.localeData().calendar(a,this,Me(n)))},cn.clone=function(){return new b(this)},cn.diff=function(t,e,n){var r,i,a;if(!this.isValid())return NaN;if(!(r=Re(t,this)).isValid())return NaN;switch(i=6e4*(r.utcOffset()-this.utcOffset()),e=L(e)){case"year":a=qe(this,r)/12;break;case"month":a=qe(this,r);break;case"quarter":a=qe(this,r)/3;break;case"second":a=(this-r)/1e3;break;case"minute":a=(this-r)/6e4;break;case"hour":a=(this-r)/36e5;break;case"day":a=(this-r-i)/864e5;break;case"week":a=(this-r-i)/6048e5;break;default:a=this-r}return n?a:_(a)},cn.endOf=function(t){var e;if(void 0===(t=L(t))||"millisecond"===t||!this.isValid())return this;var n=this._isUTC?Qe:$e;switch(t){case"year":e=n(this.year()+1,0,1)-1;break;case"quarter":e=n(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":e=n(this.year(),this.month()+1,1)-1;break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":e=n(this.year(),this.month(),this.date()+1)-1;break;case"hour":e=this._d.valueOf(),e+=36e5-Xe(e+(this._isUTC?0:6e4*this.utcOffset()),36e5)-1;break;case"minute":e=this._d.valueOf(),e+=6e4-Xe(e,6e4)-1;break;case"second":e=this._d.valueOf(),e+=1e3-Xe(e,1e3)-1}return this._d.setTime(e),r.updateOffset(this,!0),this},cn.format=function(t){t||(t=this.isUtc()?r.defaultFormatUtc:r.defaultFormat);var e=H(this,t);return this.localeData().postformat(e)},cn.from=function(t,e){return this.isValid()&&(x(t)&&t.isValid()||Me(t).isValid())?We({to:this,from:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()},cn.fromNow=function(t){return this.from(Me(),t)},cn.to=function(t,e){return this.isValid()&&(x(t)&&t.isValid()||Me(t).isValid())?We({from:this,to:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()},cn.toNow=function(t){return this.to(Me(),t)},cn.get=function(t){return T(this[t=L(t)])?this[t]():this},cn.invalidAt=function(){return f(this).overflow},cn.isAfter=function(t,e){var n=x(t)?t:Me(t);return!(!this.isValid()||!n.isValid())&&("millisecond"===(e=L(e)||"millisecond")?this.valueOf()>n.valueOf():n.valueOf()<this.clone().startOf(e).valueOf())},cn.isBefore=function(t,e){var n=x(t)?t:Me(t);return!(!this.isValid()||!n.isValid())&&("millisecond"===(e=L(e)||"millisecond")?this.valueOf()<n.valueOf():this.clone().endOf(e).valueOf()<n.valueOf())},cn.isBetween=function(t,e,n,r){var i=x(t)?t:Me(t),a=x(e)?e:Me(e);return!!(this.isValid()&&i.isValid()&&a.isValid())&&("("===(r=r||"()")[0]?this.isAfter(i,n):!this.isBefore(i,n))&&(")"===r[1]?this.isBefore(a,n):!this.isAfter(a,n))},cn.isSame=function(t,e){var n,r=x(t)?t:Me(t);return!(!this.isValid()||!r.isValid())&&("millisecond"===(e=L(e)||"millisecond")?this.valueOf()===r.valueOf():(n=r.valueOf(),this.clone().startOf(e).valueOf()<=n&&n<=this.clone().endOf(e).valueOf()))},cn.isSameOrAfter=function(t,e){return this.isSame(t,e)||this.isAfter(t,e)},cn.isSameOrBefore=function(t,e){return this.isSame(t,e)||this.isBefore(t,e)},cn.isValid=function(){return p(this)},cn.lang=Je,cn.locale=Ke,cn.localeData=Ze,cn.max=De,cn.min=Se,cn.parsingFlags=function(){return h({},f(this))},cn.set=function(t,e){if("object"==typeof t)for(var n=function(t){var e=[];for(var n in t)e.push({unit:n,priority:N[n]});return e.sort((function(t,e){return t.priority-e.priority})),e}(t=R(t)),r=0;r<n.length;r++)this[n[r].unit](t[n[r].unit]);else if(T(this[t=L(t)]))return this[t](e);return this},cn.startOf=function(t){var e;if(void 0===(t=L(t))||"millisecond"===t||!this.isValid())return this;var n=this._isUTC?Qe:$e;switch(t){case"year":e=n(this.year(),0,1);break;case"quarter":e=n(this.year(),this.month()-this.month()%3,1);break;case"month":e=n(this.year(),this.month(),1);break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":e=n(this.year(),this.month(),this.date());break;case"hour":e=this._d.valueOf(),e-=Xe(e+(this._isUTC?0:6e4*this.utcOffset()),36e5);break;case"minute":e=this._d.valueOf(),e-=Xe(e,6e4);break;case"second":e=this._d.valueOf(),e-=Xe(e,1e3)}return this._d.setTime(e),r.updateOffset(this,!0),this},cn.subtract=Ge,cn.toArray=function(){var t=this;return[t.year(),t.month(),t.date(),t.hour(),t.minute(),t.second(),t.millisecond()]},cn.toObject=function(){var t=this;return{years:t.year(),months:t.month(),date:t.date(),hours:t.hours(),minutes:t.minutes(),seconds:t.seconds(),milliseconds:t.milliseconds()}},cn.toDate=function(){return new Date(this.valueOf())},cn.toISOString=function(t){if(!this.isValid())return null;var e=!0!==t,n=e?this.clone().utc():this;return n.year()<0||n.year()>9999?H(n,e?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):T(Date.prototype.toISOString)?e?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",H(n,"Z")):H(n,e?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")},cn.inspect=function(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var t="moment",e="";this.isLocal()||(t=0===this.utcOffset()?"moment.utc":"moment.parseZone",e="Z");var n="["+t+'("]',r=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",i=e+'[")]';return this.format(n+r+"-MM-DD[T]HH:mm:ss.SSS"+i)},cn.toJSON=function(){return this.isValid()?this.toISOString():null},cn.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},cn.unix=function(){return Math.floor(this.valueOf()/1e3)},cn.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},cn.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},cn.year=bt,cn.isLeapYear=function(){return vt(this.year())},cn.weekYear=function(t){return en.call(this,t,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)},cn.isoWeekYear=function(t){return en.call(this,t,this.isoWeek(),this.isoWeekday(),1,4)},cn.quarter=cn.quarters=function(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)},cn.month=Tt,cn.daysInMonth=function(){return kt(this.year(),this.month())},cn.week=cn.weeks=function(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")},cn.isoWeek=cn.isoWeeks=function(t){var e=Et(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")},cn.weeksInYear=function(){var t=this.localeData()._week;return jt(this.year(),t.dow,t.doy)},cn.isoWeeksInYear=function(){return jt(this.year(),1,4)},cn.date=rn,cn.day=cn.days=function(t){if(!this.isValid())return null!=t?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=function(t,e){return"string"!=typeof t?t:isNaN(t)?"number"==typeof(t=e.weekdaysParse(t))?t:null:parseInt(t,10)}(t,this.localeData()),this.add(t-e,"d")):e},cn.weekday=function(t){if(!this.isValid())return null!=t?this:NaN;var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")},cn.isoWeekday=function(t){if(!this.isValid())return null!=t?this:NaN;if(null!=t){var e=function(t,e){return"string"==typeof t?e.weekdaysParse(t)%7||7:isNaN(t)?null:t}(t,this.localeData());return this.day(this.day()%7?e:e-7)}return this.day()||7},cn.dayOfYear=function(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")},cn.hour=cn.hours=$t,cn.minute=cn.minutes=an,cn.second=cn.seconds=sn,cn.millisecond=cn.milliseconds=un,cn.utcOffset=function(t,e,n){var i,a=this._offset||0;if(!this.isValid())return null!=t?this:NaN;if(null!=t){if("string"==typeof t){if(null===(t=Le(ot,t)))return this}else Math.abs(t)<16&&!n&&(t*=60);return!this._isUTC&&e&&(i=Ne(this)),this._offset=t,this._isUTC=!0,null!=i&&this.add(i,"m"),a!==t&&(!e||this._changeInProgress?He(this,We(t-a,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,r.updateOffset(this,!0),this._changeInProgress=null)),this}return this._isUTC?a:Ne(this)},cn.utc=function(t){return this.utcOffset(0,t)},cn.local=function(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(Ne(this),"m")),this},cn.parseZone=function(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if("string"==typeof this._i){var t=Le(at,this._i);null!=t?this.utcOffset(t):this.utcOffset(0,!0)}return this},cn.hasAlignedHourOffset=function(t){return!!this.isValid()&&(t=t?Me(t).utcOffset():0,(this.utcOffset()-t)%60==0)},cn.isDST=function(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},cn.isLocal=function(){return!!this.isValid()&&!this._isUTC},cn.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},cn.isUtc=Ee,cn.isUTC=Ee,cn.zoneAbbr=function(){return this._isUTC?"UTC":""},cn.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},cn.dates=S("dates accessor is deprecated. Use date instead.",rn),cn.months=S("months accessor is deprecated. Use month instead",Tt),cn.years=S("years accessor is deprecated. Use year instead",bt),cn.zone=S("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",(function(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()})),cn.isDSTShifted=S("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",(function(){if(!o(this._isDSTShifted))return this._isDSTShifted;var t={};if(v(t,this),(t=we(t))._a){var e=t._isUTC?d(t._a):Me(t._a);this._isDSTShifted=this.isValid()&&k(t._a,e.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}));var dn=P.prototype;function fn(t,e,n,r){var i=oe(),a=d().set(r,e);return i[n](a,t)}function pn(t,e,n){if(s(t)&&(e=t,t=void 0),t=t||"",null!=e)return fn(t,e,n,"month");var r,i=[];for(r=0;r<12;r++)i[r]=fn(t,r,n,"month");return i}function gn(t,e,n,r){"boolean"==typeof t?(s(e)&&(n=e,e=void 0),e=e||""):(n=e=t,t=!1,s(e)&&(n=e,e=void 0),e=e||"");var i,a=oe(),o=t?a._week.dow:0;if(null!=n)return fn(e,(n+o)%7,r,"day");var l=[];for(i=0;i<7;i++)l[i]=fn(e,(i+o)%7,r,"day");return l}dn.calendar=function(t,e,n){var r=this._calendar[t]||this._calendar.sameElse;return T(r)?r.call(e,n):r},dn.longDateFormat=function(t){var e=this._longDateFormat[t],n=this._longDateFormat[t.toUpperCase()];return e||!n?e:(this._longDateFormat[t]=n.replace(/MMMM|MM|DD|dddd/g,(function(t){return t.slice(1)})),this._longDateFormat[t])},dn.invalidDate=function(){return this._invalidDate},dn.ordinal=function(t){return this._ordinal.replace("%d",t)},dn.preparse=hn,dn.postformat=hn,dn.relativeTime=function(t,e,n,r){var i=this._relativeTime[n];return T(i)?i(t,e,n,r):i.replace(/%d/i,t)},dn.pastFuture=function(t,e){var n=this._relativeTime[t>0?"future":"past"];return T(n)?n(e):n.replace(/%s/i,e)},dn.set=function(t){var e,n;for(n in t)T(e=t[n])?this[n]=e:this["_"+n]=e;this._config=t,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)},dn.months=function(t,e){return t?i(this._months)?this._months[t.month()]:this._months[(this._months.isFormat||Mt).test(e)?"format":"standalone"][t.month()]:i(this._months)?this._months:this._months.standalone},dn.monthsShort=function(t,e){return t?i(this._monthsShort)?this._monthsShort[t.month()]:this._monthsShort[Mt.test(e)?"format":"standalone"][t.month()]:i(this._monthsShort)?this._monthsShort:this._monthsShort.standalone},dn.monthsParse=function(t,e,n){var r,i,a;if(this._monthsParseExact)return Ct.call(this,t,e,n);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),r=0;r<12;r++){if(i=d([2e3,r]),n&&!this._longMonthsParse[r]&&(this._longMonthsParse[r]=new RegExp("^"+this.months(i,"").replace(".","")+"$","i"),this._shortMonthsParse[r]=new RegExp("^"+this.monthsShort(i,"").replace(".","")+"$","i")),n||this._monthsParse[r]||(a="^"+this.months(i,"")+"|^"+this.monthsShort(i,""),this._monthsParse[r]=new RegExp(a.replace(".",""),"i")),n&&"MMMM"===e&&this._longMonthsParse[r].test(t))return r;if(n&&"MMM"===e&&this._shortMonthsParse[r].test(t))return r;if(!n&&this._monthsParse[r].test(t))return r}},dn.monthsRegex=function(t){return this._monthsParseExact?(c(this,"_monthsRegex")||It.call(this),t?this._monthsStrictRegex:this._monthsRegex):(c(this,"_monthsRegex")||(this._monthsRegex=Pt),this._monthsStrictRegex&&t?this._monthsStrictRegex:this._monthsRegex)},dn.monthsShortRegex=function(t){return this._monthsParseExact?(c(this,"_monthsRegex")||It.call(this),t?this._monthsShortStrictRegex:this._monthsShortRegex):(c(this,"_monthsShortRegex")||(this._monthsShortRegex=At),this._monthsShortStrictRegex&&t?this._monthsShortStrictRegex:this._monthsShortRegex)},dn.week=function(t){return Et(t,this._week.dow,this._week.doy).week},dn.firstDayOfYear=function(){return this._week.doy},dn.firstDayOfWeek=function(){return this._week.dow},dn.weekdays=function(t,e){var n=i(this._weekdays)?this._weekdays:this._weekdays[t&&!0!==t&&this._weekdays.isFormat.test(e)?"format":"standalone"];return!0===t?zt(n,this._week.dow):t?n[t.day()]:n},dn.weekdaysMin=function(t){return!0===t?zt(this._weekdaysMin,this._week.dow):t?this._weekdaysMin[t.day()]:this._weekdaysMin},dn.weekdaysShort=function(t){return!0===t?zt(this._weekdaysShort,this._week.dow):t?this._weekdaysShort[t.day()]:this._weekdaysShort},dn.weekdaysParse=function(t,e,n){var r,i,a;if(this._weekdaysParseExact)return Bt.call(this,t,e,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),r=0;r<7;r++){if(i=d([2e3,1]).day(r),n&&!this._fullWeekdaysParse[r]&&(this._fullWeekdaysParse[r]=new RegExp("^"+this.weekdays(i,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[r]=new RegExp("^"+this.weekdaysShort(i,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[r]=new RegExp("^"+this.weekdaysMin(i,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[r]||(a="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[r]=new RegExp(a.replace(".",""),"i")),n&&"dddd"===e&&this._fullWeekdaysParse[r].test(t))return r;if(n&&"ddd"===e&&this._shortWeekdaysParse[r].test(t))return r;if(n&&"dd"===e&&this._minWeekdaysParse[r].test(t))return r;if(!n&&this._weekdaysParse[r].test(t))return r}},dn.weekdaysRegex=function(t){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||qt.call(this),t?this._weekdaysStrictRegex:this._weekdaysRegex):(c(this,"_weekdaysRegex")||(this._weekdaysRegex=Ht),this._weekdaysStrictRegex&&t?this._weekdaysStrictRegex:this._weekdaysRegex)},dn.weekdaysShortRegex=function(t){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||qt.call(this),t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(c(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Ut),this._weekdaysShortStrictRegex&&t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)},dn.weekdaysMinRegex=function(t){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||qt.call(this),t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(c(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Gt),this._weekdaysMinStrictRegex&&t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)},dn.isPM=function(t){return"p"===(t+"").toLowerCase().charAt(0)},dn.meridiem=function(t,e,n){return t>11?n?"pm":"PM":n?"am":"AM"},ie("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10;return t+(1===w(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}}),r.lang=S("moment.lang is deprecated. Use moment.locale instead.",ie),r.langData=S("moment.langData is deprecated. Use moment.localeData instead.",oe);var mn=Math.abs;function vn(t,e,n,r){var i=We(e,n);return t._milliseconds+=r*i._milliseconds,t._days+=r*i._days,t._months+=r*i._months,t._bubble()}function yn(t){return t<0?Math.floor(t):Math.ceil(t)}function bn(t){return 4800*t/146097}function xn(t){return 146097*t/4800}function _n(t){return function(){return this.as(t)}}var wn=_n("ms"),kn=_n("s"),Mn=_n("m"),Sn=_n("h"),Dn=_n("d"),Cn=_n("w"),On=_n("M"),Tn=_n("Q"),An=_n("y");function Pn(t){return function(){return this.isValid()?this._data[t]:NaN}}var In=Pn("milliseconds"),Fn=Pn("seconds"),Ln=Pn("minutes"),Rn=Pn("hours"),Nn=Pn("days"),En=Pn("months"),jn=Pn("years"),zn=Math.round,Wn={ss:44,s:45,m:45,h:22,d:26,M:11};function Yn(t,e,n,r,i){return i.relativeTime(e||1,!!n,t,r)}var Vn=Math.abs;function Bn(t){return(t>0)-(t<0)||+t}function Hn(){if(!this.isValid())return this.localeData().invalidDate();var t,e,n=Vn(this._milliseconds)/1e3,r=Vn(this._days),i=Vn(this._months);t=_(n/60),e=_(t/60),n%=60,t%=60;var a=_(i/12),o=i%=12,s=r,l=e,u=t,c=n?n.toFixed(3).replace(/\.?0+$/,""):"",h=this.asSeconds();if(!h)return"P0D";var d=h<0?"-":"",f=Bn(this._months)!==Bn(h)?"-":"",p=Bn(this._days)!==Bn(h)?"-":"",g=Bn(this._milliseconds)!==Bn(h)?"-":"";return d+"P"+(a?f+a+"Y":"")+(o?f+o+"M":"")+(s?p+s+"D":"")+(l||u||c?"T":"")+(l?g+l+"H":"")+(u?g+u+"M":"")+(c?g+c+"S":"")}var Un=Te.prototype;return Un.isValid=function(){return this._isValid},Un.abs=function(){var t=this._data;return this._milliseconds=mn(this._milliseconds),this._days=mn(this._days),this._months=mn(this._months),t.milliseconds=mn(t.milliseconds),t.seconds=mn(t.seconds),t.minutes=mn(t.minutes),t.hours=mn(t.hours),t.months=mn(t.months),t.years=mn(t.years),this},Un.add=function(t,e){return vn(this,t,e,1)},Un.subtract=function(t,e){return vn(this,t,e,-1)},Un.as=function(t){if(!this.isValid())return NaN;var e,n,r=this._milliseconds;if("month"===(t=L(t))||"quarter"===t||"year"===t)switch(e=this._days+r/864e5,n=this._months+bn(e),t){case"month":return n;case"quarter":return n/3;case"year":return n/12}else switch(e=this._days+Math.round(xn(this._months)),t){case"week":return e/7+r/6048e5;case"day":return e+r/864e5;case"hour":return 24*e+r/36e5;case"minute":return 1440*e+r/6e4;case"second":return 86400*e+r/1e3;case"millisecond":return Math.floor(864e5*e)+r;default:throw new Error("Unknown unit "+t)}},Un.asMilliseconds=wn,Un.asSeconds=kn,Un.asMinutes=Mn,Un.asHours=Sn,Un.asDays=Dn,Un.asWeeks=Cn,Un.asMonths=On,Un.asQuarters=Tn,Un.asYears=An,Un.valueOf=function(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*w(this._months/12):NaN},Un._bubble=function(){var t,e,n,r,i,a=this._milliseconds,o=this._days,s=this._months,l=this._data;return a>=0&&o>=0&&s>=0||a<=0&&o<=0&&s<=0||(a+=864e5*yn(xn(s)+o),o=0,s=0),l.milliseconds=a%1e3,t=_(a/1e3),l.seconds=t%60,e=_(t/60),l.minutes=e%60,n=_(e/60),l.hours=n%24,o+=_(n/24),i=_(bn(o)),s+=i,o-=yn(xn(i)),r=_(s/12),s%=12,l.days=o,l.months=s,l.years=r,this},Un.clone=function(){return We(this)},Un.get=function(t){return t=L(t),this.isValid()?this[t+"s"]():NaN},Un.milliseconds=In,Un.seconds=Fn,Un.minutes=Ln,Un.hours=Rn,Un.days=Nn,Un.weeks=function(){return _(this.days()/7)},Un.months=En,Un.years=jn,Un.humanize=function(t){if(!this.isValid())return this.localeData().invalidDate();var e=this.localeData(),n=function(t,e,n){var r=We(t).abs(),i=zn(r.as("s")),a=zn(r.as("m")),o=zn(r.as("h")),s=zn(r.as("d")),l=zn(r.as("M")),u=zn(r.as("y")),c=i<=Wn.ss&&["s",i]||i<Wn.s&&["ss",i]||a<=1&&["m"]||a<Wn.m&&["mm",a]||o<=1&&["h"]||o<Wn.h&&["hh",o]||s<=1&&["d"]||s<Wn.d&&["dd",s]||l<=1&&["M"]||l<Wn.M&&["MM",l]||u<=1&&["y"]||["yy",u];return c[2]=e,c[3]=+t>0,c[4]=n,Yn.apply(null,c)}(this,!t,e);return t&&(n=e.pastFuture(+this,n)),e.postformat(n)},Un.toISOString=Hn,Un.toString=Hn,Un.toJSON=Hn,Un.locale=Ke,Un.localeData=Ze,Un.toIsoString=S("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Hn),Un.lang=Je,B("X",0,0,"unix"),B("x",0,0,"valueOf"),ut("x",it),ut("X",/[+-]?\d+(\.\d{1,3})?/),ft("X",(function(t,e,n){n._d=new Date(1e3*parseFloat(t,10))})),ft("x",(function(t,e,n){n._d=new Date(w(t))})),r.version="2.24.0",e=Me,r.fn=cn,r.min=function(){var t=[].slice.call(arguments,0);return Ce("isBefore",t)},r.max=function(){var t=[].slice.call(arguments,0);return Ce("isAfter",t)},r.now=function(){return Date.now?Date.now():+new Date},r.utc=d,r.unix=function(t){return Me(1e3*t)},r.months=function(t,e){return pn(t,e,"months")},r.isDate=l,r.locale=ie,r.invalid=g,r.duration=We,r.isMoment=x,r.weekdays=function(t,e,n){return gn(t,e,n,"weekdays")},r.parseZone=function(){return Me.apply(null,arguments).parseZone()},r.localeData=oe,r.isDuration=Ae,r.monthsShort=function(t,e){return pn(t,e,"monthsShort")},r.weekdaysMin=function(t,e,n){return gn(t,e,n,"weekdaysMin")},r.defineLocale=ae,r.updateLocale=function(t,e){if(null!=e){var n,r,i=Qt;null!=(r=re(t))&&(i=r._config),e=A(i,e),(n=new P(e)).parentLocale=te[t],te[t]=n,ie(t)}else null!=te[t]&&(null!=te[t].parentLocale?te[t]=te[t].parentLocale:null!=te[t]&&delete te[t]);return te[t]},r.locales=function(){return D(te)},r.weekdaysShort=function(t,e,n){return gn(t,e,n,"weekdaysShort")},r.normalizeUnits=L,r.relativeTimeRounding=function(t){return void 0===t?zn:"function"==typeof t&&(zn=t,!0)},r.relativeTimeThreshold=function(t,e){return void 0!==Wn[t]&&(void 0===e?Wn[t]:(Wn[t]=e,"s"===t&&(Wn.ss=e-1),!0))},r.calendarFormat=function(t,e){var n=t.diff(e,"days",!0);return n<-6?"sameElse":n<-1?"lastWeek":n<0?"lastDay":n<1?"sameDay":n<2?"nextDay":n<7?"nextWeek":"sameElse"},r.prototype=cn,r.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},r}()}).call(this,n("YuTi")(t))},xYSL:function(t,e){t.exports=function(t,e){return t.has(e)}},xfY5:function(t,e,n){"use strict";var r=n("dyZX"),i=n("aagx"),a=n("LZWt"),o=n("Xbzi"),s=n("apmT"),l=n("eeVq"),u=n("kJMx").f,c=n("EemH").f,h=n("hswa").f,d=n("qncB").trim,f=r.Number,p=f,g=f.prototype,m="Number"==a(n("Kuth")(g)),v="trim"in String.prototype,y=function(t){var e=s(t,!1);if("string"==typeof e&&e.length>2){var n,r,i,a=(e=v?e.trim():d(e,3)).charCodeAt(0);if(43===a||45===a){if(88===(n=e.charCodeAt(2))||120===n)return NaN}else if(48===a){switch(e.charCodeAt(1)){case 66:case 98:r=2,i=49;break;case 79:case 111:r=8,i=55;break;default:return+e}for(var o,l=e.slice(2),u=0,c=l.length;u<c;u++)if((o=l.charCodeAt(u))<48||o>i)return NaN;return parseInt(l,r)}}return+e};if(!f(" 0o1")||!f("0b1")||f("+0x1")){f=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof f&&(m?l((function(){g.valueOf.call(n)})):"Number"!=a(n))?o(new p(y(e)),n,f):y(e)};for(var b,x=n("nh4g")?u(p):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),_=0;x.length>_;_++)i(p,b=x[_])&&!i(f,b)&&h(f,b,c(p,b));f.prototype=g,g.constructor=f,n("KroJ")(r,"Number",f)}},y1pI:function(t,e,n){var r=n("ljhN");t.exports=function(t,e){for(var n=t.length;n--;)if(r(t[n][0],e))return n;return-1}},yGk4:function(t,e,n){var r=n("Cwc5")(n("Kz5y"),"Set");t.exports=r},zZ0H:function(t,e){t.exports=function(t){return t}},zoYe:function(t,e,n){n("a1Th"),n("h7Nl"),n("Btvt");var r=n("nmnc"),i=n("eUgh"),a=n("Z0cm"),o=n("/9aa"),s=r?r.prototype:void 0,l=s?s.toString:void 0;t.exports=function t(e){if("string"==typeof e)return e;if(a(e))return i(e,t)+"";if(o(e))return l?l.call(e):"";var n=e+"";return"0"==n&&1/e==-1/0?"-0":n}}}]);
-//# sourceMappingURL=component---src-pages-performance-js-c2c171a1e450568c0b0f.js.map
\ No newline at end of file
+(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{"+6XX":function(t,e,n){var r=n("y1pI");t.exports=function(t){return r(this.__data__,t)>-1}},"+c4W":function(t,e,n){var r=n("711d"),i=n("4/ic"),a=n("9ggG"),o=n("9Nap");t.exports=function(t){return a(t)?r(o(t)):i(t)}},"/9aa":function(t,e,n){var r=n("NykK"),i=n("ExA7");t.exports=function(t){return"symbol"==typeof t||i(t)&&"[object Symbol]"==r(t)}},"03A+":function(t,e,n){var r=n("JTzB"),i=n("ExA7"),a=Object.prototype,o=a.hasOwnProperty,s=a.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(t){return i(t)&&o.call(t,"callee")&&!s.call(t,"callee")};t.exports=l},"0Cz8":function(t,e,n){var r=n("Xi7e"),i=n("ebwN"),a=n("e4Nc");t.exports=function(t,e){var n=this.__data__;if(n instanceof r){var o=n.__data__;if(!i||o.length<199)return o.push([t,e]),this.size=++n.size,this;n=this.__data__=new a(o)}return n.set(t,e),this.size=n.size,this}},"0ycA":function(t,e){t.exports=function(){return[]}},"1hJj":function(t,e,n){var r=n("e4Nc"),i=n("ftKO"),a=n("3A9y");function o(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new r;++e<n;)this.add(t[e])}o.prototype.add=o.prototype.push=i,o.prototype.has=a,t.exports=o},"2gN3":function(t,e,n){var r=n("Kz5y")["__core-js_shared__"];t.exports=r},"3A9y":function(t,e){t.exports=function(t){return this.__data__.has(t)}},"3Fdi":function(t,e,n){n("a1Th"),n("h7Nl"),n("Btvt");var r=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return r.call(t)}catch(e){}try{return t+""}catch(e){}}return""}},"4/ic":function(t,e,n){var r=n("ZWtO");t.exports=function(t){return function(e){return r(e,t)}}},"44Ds":function(t,e,n){var r=n("e4Nc");function i(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var n=function n(){var r=arguments,i=e?e.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=t.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(i.Cache||r),n}i.Cache=r,t.exports=i},"4kuk":function(t,e,n){var r=n("SfRM"),i=n("Hvzi"),a=n("u8Dt"),o=n("ekgI"),s=n("JSQU");function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=i,l.prototype.get=a,l.prototype.has=o,l.prototype.set=s,t.exports=l},"4sDh":function(t,e,n){var r=n("4uTw"),i=n("03A+"),a=n("Z0cm"),o=n("wJg7"),s=n("shjB"),l=n("9Nap");t.exports=function(t,e,n){for(var u=-1,c=(e=r(e,t)).length,h=!1;++u<c;){var d=l(e[u]);if(!(h=null!=t&&n(t,d)))break;t=t[d]}return h||++u!=c?h:!!(c=null==t?0:t.length)&&s(c)&&o(d,c)&&(a(t)||i(t))}},"4uTw":function(t,e,n){var r=n("Z0cm"),i=n("9ggG"),a=n("GNiM"),o=n("dt0z");t.exports=function(t,e){return r(t)?t:i(t,e)?[t]:a(o(t))}},"6sVZ":function(t,e){var n=Object.prototype;t.exports=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||n)}},"711d":function(t,e){t.exports=function(t){return function(e){return null==e?void 0:e[t]}}},"77Zs":function(t,e,n){var r=n("Xi7e");t.exports=function(){this.__data__=new r,this.size=0}},"7GkX":function(t,e,n){var r=n("b80T"),i=n("A90E"),a=n("MMmD");t.exports=function(t){return a(t)?r(t):i(t)}},"7fqy":function(t,e,n){n("8+KV"),t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}},"8oxB":function(t,e){var n,r,i=t.exports={};function a(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function s(t){if(n===setTimeout)return setTimeout(t,0);if((n===a||!n)&&setTimeout)return n=setTimeout,setTimeout(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(e){return n.call(this,t,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:a}catch(t){n=a}try{r="function"==typeof clearTimeout?clearTimeout:o}catch(t){r=o}}();var l,u=[],c=!1,h=-1;function d(){c&&l&&(c=!1,l.length?u=l.concat(u):h=-1,u.length&&f())}function f(){if(!c){var t=s(d);c=!0;for(var e=u.length;e;){for(l=u,u=[];++h<e;)l&&l[h].run();h=-1,e=u.length}l=null,c=!1,function(t){if(r===clearTimeout)return clearTimeout(t);if((r===o||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(t);try{r(t)}catch(e){try{return r.call(null,t)}catch(e){return r.call(this,t)}}}(t)}}function p(t,e){this.fun=t,this.array=e}function g(){}i.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];u.push(new p(t,e)),1!==u.length||c||s(f)},p.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={},i.on=g,i.addListener=g,i.once=g,i.off=g,i.removeListener=g,i.removeAllListeners=g,i.emit=g,i.prependListener=g,i.prependOnceListener=g,i.listeners=function(t){return[]},i.binding=function(t){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(t){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},"9Nap":function(t,e,n){var r=n("/9aa");t.exports=function(t){if("string"==typeof t||r(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}},"9ggG":function(t,e,n){var r=n("Z0cm"),i=n("/9aa"),a=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,o=/^\w*$/;t.exports=function(t,e){if(r(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!i(t))||(o.test(t)||!a.test(t)||null!=e&&t in Object(e))}},A90E:function(t,e,n){var r=n("6sVZ"),i=n("V6Ve"),a=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return i(t);var e=[];for(var n in Object(t))a.call(t,n)&&"constructor"!=n&&e.push(n);return e}},AP2z:function(t,e,n){n("a1Th"),n("h7Nl"),n("Btvt");var r=n("nmnc"),i=Object.prototype,a=i.hasOwnProperty,o=i.toString,s=r?r.toStringTag:void 0;t.exports=function(t){var e=a.call(t,s),n=t[s];try{t[s]=void 0;var r=!0}catch(l){}var i=o.call(t);return r&&(e?t[s]=n:delete t[s]),i}},AphP:function(t,e,n){"use strict";var r=n("XKFU"),i=n("S/j/"),a=n("apmT");r(r.P+r.F*n("eeVq")((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})})),"Date",{toJSON:function(t){var e=i(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},B8du:function(t,e){t.exports=function(){return!1}},CH3K:function(t,e){t.exports=function(t,e){for(var n=-1,r=e.length,i=t.length;++n<r;)t[i+n]=e[n];return t}},CMye:function(t,e,n){var r=n("GoyQ");t.exports=function(t){return t==t&&!r(t)}},Cwc5:function(t,e,n){var r=n("NKxu"),i=n("Npjl");t.exports=function(t,e){var n=i(t,e);return r(n)?n:void 0}},CyHz:function(t,e,n){var r=n("XKFU");r(r.S,"Math",{sign:n("lvtm")})},DSRE:function(t,e,n){(function(t){var r=n("Kz5y"),i=n("B8du"),a=e&&!e.nodeType&&e,o=a&&"object"==typeof t&&t&&!t.nodeType&&t,s=o&&o.exports===a?r.Buffer:void 0,l=(s?s.isBuffer:void 0)||i;t.exports=l}).call(this,n("YuTi")(t))},DW2E:function(t,e,n){var r=n("0/R4"),i=n("Z6vF").onFreeze;n("Xtr8")("freeze",(function(t){return function(e){return t&&r(e)?t(i(e)):e}}))},E2jh:function(t,e,n){n("rGqo"),n("yt8O"),n("Btvt");var r,i=n("2gN3"),a=(r=/[^.]+$/.exec(i&&i.keys&&i.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";t.exports=function(t){return!!a&&a in t}},EpBk:function(t,e){t.exports=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}},ExA7:function(t,e){t.exports=function(t){return null!=t&&"object"==typeof t}},FlsD:function(t,e,n){var r=n("0/R4");n("Xtr8")("isExtensible",(function(t){return function(e){return!!r(e)&&(!t||t(e))}}))},GDhZ:function(t,e,n){var r=n("wF/u"),i=n("mwIZ"),a=n("hgQt"),o=n("9ggG"),s=n("CMye"),l=n("IOzZ"),u=n("9Nap");t.exports=function(t,e){return o(t)&&s(e)?l(u(t),e):function(n){var o=i(n,t);return void 0===o&&o===e?a(n,t):r(e,o,3)}}},GNiM:function(t,e,n){n("pIFo");var r=n("I01J"),i=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,a=/\\(\\)?/g,o=r((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(i,(function(t,n,r,i){e.push(r?i.replace(a,"$1"):n||t)})),e}));t.exports=o},GoyQ:function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},H8j4:function(t,e,n){var r=n("QkVE");t.exports=function(t,e){var n=r(this,t),i=n.size;return n.set(t,e),this.size+=n.size==i?0:1,this}},HDyB:function(t,e,n){n("f3/d");var r=n("nmnc"),i=n("JHRd"),a=n("ljhN"),o=n("or5M"),s=n("7fqy"),l=n("rEGp"),u=r?r.prototype:void 0,c=u?u.valueOf:void 0;t.exports=function(t,e,n,r,u,h,d){switch(n){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!h(new i(t),new i(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return a(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var f=s;case"[object Set]":var p=1&r;if(f||(f=l),t.size!=e.size&&!p)return!1;var g=d.get(t);if(g)return g==e;r|=2,d.set(t,e);var m=o(f(t),f(e),r,u,h,d);return d.delete(t),m;case"[object Symbol]":if(c)return c.call(t)==c.call(e)}return!1}},HOxn:function(t,e,n){var r=n("Cwc5")(n("Kz5y"),"Promise");t.exports=r},Hvzi:function(t,e){t.exports=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}},I01J:function(t,e,n){var r=n("44Ds");t.exports=function(t){var e=r(t,(function(t){return 500===n.size&&n.clear(),t})),n=e.cache;return e}},INYr:function(t,e,n){"use strict";var r=n("XKFU"),i=n("CkkT")(6),a="findIndex",o=!0;a in[]&&Array(1)[a]((function(){o=!1})),r(r.P+r.F*o,"Array",{findIndex:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),n("nGyu")(a)},IOzZ:function(t,e){t.exports=function(t,e){return function(n){return null!=n&&(n[t]===e&&(void 0!==e||t in Object(n)))}}},JC6p:function(t,e,n){var r=n("cq/+"),i=n("7GkX");t.exports=function(t,e){return t&&r(t,e,i)}},JD84:function(t,e,n){var r=n("SKAX");t.exports=function(t,e,n,i){return r(t,(function(t,r,a){e(i,t,n(t),a)})),i}},JHRd:function(t,e,n){var r=n("Kz5y").Uint8Array;t.exports=r},JHgL:function(t,e,n){var r=n("QkVE");t.exports=function(t){return r(this,t).get(t)}},JSQU:function(t,e,n){var r=n("YESw");t.exports=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=r&&void 0===e?"__lodash_hash_undefined__":e,this}},JTzB:function(t,e,n){var r=n("NykK"),i=n("ExA7");t.exports=function(t){return i(t)&&"[object Arguments]"==r(t)}},Juji:function(t,e){t.exports=function(t,e){return null!=t&&e in Object(t)}},KMkd:function(t,e){t.exports=function(){this.__data__=[],this.size=0}},KfNM:function(t,e,n){n("a1Th"),n("h7Nl"),n("Btvt");var r=Object.prototype.toString;t.exports=function(t){return r.call(t)}},Kz5y:function(t,e,n){var r=n("WFqU"),i="object"==typeof self&&self&&self.Object===Object&&self,a=r||i||Function("return this")();t.exports=a},L8xA:function(t,e){t.exports=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}},LXxW:function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,i=0,a=[];++n<r;){var o=t[n];e(o,n,t)&&(a[i++]=o)}return a}},Ljet:function(t,e,n){var r=n("XKFU");r(r.S,"Number",{EPSILON:Math.pow(2,-52)})},MMmD:function(t,e,n){var r=n("lSCD"),i=n("shjB");t.exports=function(t){return null!=t&&i(t.length)&&!r(t)}},"MO+k":function(t,e,n){n("h/M4"),n("knhD"),n("Ljet"),n("CyHz"),n("DNiP"),n("2Spj"),n("0l/t"),n("DW2E"),n("FlsD"),n("INYr"),n("eM6i"),n("eHKK"),n("Vd3H"),n("bHtr"),n("V+eJ"),n("91GP"),n("xfY5"),n("LK8F"),n("8+KV"),n("rGqo"),n("yt8O"),n("RW0V"),n("KKXr"),n("bWfx"),n("SRfc"),n("a1Th"),n("h7Nl"),n("Btvt"),n("HAE/"),t.exports=function(t){"use strict";t=t&&t.hasOwnProperty("default")?t.default:t;var e={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},n=function(t,e){return t(e={exports:{}},e.exports),e.exports}((function(t){var n={};for(var r in e)e.hasOwnProperty(r)&&(n[e[r]]=r);var i=t.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(var a in i)if(i.hasOwnProperty(a)){if(!("channels"in i[a]))throw new Error("missing channels property: "+a);if(!("labels"in i[a]))throw new Error("missing channel labels property: "+a);if(i[a].labels.length!==i[a].channels)throw new Error("channel and label counts mismatch: "+a);var o=i[a].channels,s=i[a].labels;delete i[a].channels,delete i[a].labels,Object.defineProperty(i[a],"channels",{value:o}),Object.defineProperty(i[a],"labels",{value:s})}i.rgb.hsl=function(t){var e,n,r=t[0]/255,i=t[1]/255,a=t[2]/255,o=Math.min(r,i,a),s=Math.max(r,i,a),l=s-o;return s===o?e=0:r===s?e=(i-a)/l:i===s?e=2+(a-r)/l:a===s&&(e=4+(r-i)/l),(e=Math.min(60*e,360))<0&&(e+=360),n=(o+s)/2,[e,100*(s===o?0:n<=.5?l/(s+o):l/(2-s-o)),100*n]},i.rgb.hsv=function(t){var e,n,r,i,a,o=t[0]/255,s=t[1]/255,l=t[2]/255,u=Math.max(o,s,l),c=u-Math.min(o,s,l),h=function(t){return(u-t)/6/c+.5};return 0===c?i=a=0:(a=c/u,e=h(o),n=h(s),r=h(l),o===u?i=r-n:s===u?i=1/3+e-r:l===u&&(i=2/3+n-e),i<0?i+=1:i>1&&(i-=1)),[360*i,100*a,100*u]},i.rgb.hwb=function(t){var e=t[0],n=t[1],r=t[2];return[i.rgb.hsl(t)[0],1/255*Math.min(e,Math.min(n,r))*100,100*(r=1-1/255*Math.max(e,Math.max(n,r)))]},i.rgb.cmyk=function(t){var e,n=t[0]/255,r=t[1]/255,i=t[2]/255;return[100*((1-n-(e=Math.min(1-n,1-r,1-i)))/(1-e)||0),100*((1-r-e)/(1-e)||0),100*((1-i-e)/(1-e)||0),100*e]},i.rgb.keyword=function(t){var r=n[t];if(r)return r;var i,a,o,s=1/0;for(var l in e)if(e.hasOwnProperty(l)){var u=e[l],c=(a=t,o=u,Math.pow(a[0]-o[0],2)+Math.pow(a[1]-o[1],2)+Math.pow(a[2]-o[2],2));c<s&&(s=c,i=l)}return i},i.keyword.rgb=function(t){return e[t]},i.rgb.xyz=function(t){var e=t[0]/255,n=t[1]/255,r=t[2]/255;return[100*(.4124*(e=e>.04045?Math.pow((e+.055)/1.055,2.4):e/12.92)+.3576*(n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92)+.1805*(r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92)),100*(.2126*e+.7152*n+.0722*r),100*(.0193*e+.1192*n+.9505*r)]},i.rgb.lab=function(t){var e=i.rgb.xyz(t),n=e[0],r=e[1],a=e[2];return r/=100,a/=108.883,n=(n/=95.047)>.008856?Math.pow(n,1/3):7.787*n+16/116,[116*(r=r>.008856?Math.pow(r,1/3):7.787*r+16/116)-16,500*(n-r),200*(r-(a=a>.008856?Math.pow(a,1/3):7.787*a+16/116))]},i.hsl.rgb=function(t){var e,n,r,i,a,o=t[0]/360,s=t[1]/100,l=t[2]/100;if(0===s)return[a=255*l,a,a];e=2*l-(n=l<.5?l*(1+s):l+s-l*s),i=[0,0,0];for(var u=0;u<3;u++)(r=o+1/3*-(u-1))<0&&r++,r>1&&r--,a=6*r<1?e+6*(n-e)*r:2*r<1?n:3*r<2?e+(n-e)*(2/3-r)*6:e,i[u]=255*a;return i},i.hsl.hsv=function(t){var e=t[0],n=t[1]/100,r=t[2]/100,i=n,a=Math.max(r,.01);return n*=(r*=2)<=1?r:2-r,i*=a<=1?a:2-a,[e,100*(0===r?2*i/(a+i):2*n/(r+n)),(r+n)/2*100]},i.hsv.rgb=function(t){var e=t[0]/60,n=t[1]/100,r=t[2]/100,i=Math.floor(e)%6,a=e-Math.floor(e),o=255*r*(1-n),s=255*r*(1-n*a),l=255*r*(1-n*(1-a));switch(r*=255,i){case 0:return[r,l,o];case 1:return[s,r,o];case 2:return[o,r,l];case 3:return[o,s,r];case 4:return[l,o,r];case 5:return[r,o,s]}},i.hsv.hsl=function(t){var e,n,r,i=t[0],a=t[1]/100,o=t[2]/100,s=Math.max(o,.01);return r=(2-a)*o,n=a*s,[i,100*(n=(n/=(e=(2-a)*s)<=1?e:2-e)||0),100*(r/=2)]},i.hwb.rgb=function(t){var e,n,r,i,a,o,s,l=t[0]/360,u=t[1]/100,c=t[2]/100,h=u+c;switch(h>1&&(u/=h,c/=h),r=6*l-(e=Math.floor(6*l)),0!=(1&e)&&(r=1-r),i=u+r*((n=1-c)-u),e){default:case 6:case 0:a=n,o=i,s=u;break;case 1:a=i,o=n,s=u;break;case 2:a=u,o=n,s=i;break;case 3:a=u,o=i,s=n;break;case 4:a=i,o=u,s=n;break;case 5:a=n,o=u,s=i}return[255*a,255*o,255*s]},i.cmyk.rgb=function(t){var e=t[0]/100,n=t[1]/100,r=t[2]/100,i=t[3]/100;return[255*(1-Math.min(1,e*(1-i)+i)),255*(1-Math.min(1,n*(1-i)+i)),255*(1-Math.min(1,r*(1-i)+i))]},i.xyz.rgb=function(t){var e,n,r,i=t[0]/100,a=t[1]/100,o=t[2]/100;return n=-.9689*i+1.8758*a+.0415*o,r=.0557*i+-.204*a+1.057*o,e=(e=3.2406*i+-1.5372*a+-.4986*o)>.0031308?1.055*Math.pow(e,1/2.4)-.055:12.92*e,n=n>.0031308?1.055*Math.pow(n,1/2.4)-.055:12.92*n,r=r>.0031308?1.055*Math.pow(r,1/2.4)-.055:12.92*r,[255*(e=Math.min(Math.max(0,e),1)),255*(n=Math.min(Math.max(0,n),1)),255*(r=Math.min(Math.max(0,r),1))]},i.xyz.lab=function(t){var e=t[0],n=t[1],r=t[2];return n/=100,r/=108.883,e=(e/=95.047)>.008856?Math.pow(e,1/3):7.787*e+16/116,[116*(n=n>.008856?Math.pow(n,1/3):7.787*n+16/116)-16,500*(e-n),200*(n-(r=r>.008856?Math.pow(r,1/3):7.787*r+16/116))]},i.lab.xyz=function(t){var e,n,r,i=t[0];e=t[1]/500+(n=(i+16)/116),r=n-t[2]/200;var a=Math.pow(n,3),o=Math.pow(e,3),s=Math.pow(r,3);return n=a>.008856?a:(n-16/116)/7.787,e=o>.008856?o:(e-16/116)/7.787,r=s>.008856?s:(r-16/116)/7.787,[e*=95.047,n*=100,r*=108.883]},i.lab.lch=function(t){var e,n=t[0],r=t[1],i=t[2];return(e=360*Math.atan2(i,r)/2/Math.PI)<0&&(e+=360),[n,Math.sqrt(r*r+i*i),e]},i.lch.lab=function(t){var e,n=t[0],r=t[1];return e=t[2]/360*2*Math.PI,[n,r*Math.cos(e),r*Math.sin(e)]},i.rgb.ansi16=function(t){var e=t[0],n=t[1],r=t[2],a=1 in arguments?arguments[1]:i.rgb.hsv(t)[2];if(0===(a=Math.round(a/50)))return 30;var o=30+(Math.round(r/255)<<2|Math.round(n/255)<<1|Math.round(e/255));return 2===a&&(o+=60),o},i.hsv.ansi16=function(t){return i.rgb.ansi16(i.hsv.rgb(t),t[2])},i.rgb.ansi256=function(t){var e=t[0],n=t[1],r=t[2];return e===n&&n===r?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},i.ansi16.rgb=function(t){var e=t%10;if(0===e||7===e)return t>50&&(e+=3.5),[e=e/10.5*255,e,e];var n=.5*(1+~~(t>50));return[(1&e)*n*255,(e>>1&1)*n*255,(e>>2&1)*n*255]},i.ansi256.rgb=function(t){if(t>=232){var e=10*(t-232)+8;return[e,e,e]}var n;return t-=16,[Math.floor(t/36)/5*255,Math.floor((n=t%36)/6)/5*255,n%6/5*255]},i.rgb.hex=function(t){var e=(((255&Math.round(t[0]))<<16)+((255&Math.round(t[1]))<<8)+(255&Math.round(t[2]))).toString(16).toUpperCase();return"000000".substring(e.length)+e},i.hex.rgb=function(t){var e=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!e)return[0,0,0];var n=e[0];3===e[0].length&&(n=n.split("").map((function(t){return t+t})).join(""));var r=parseInt(n,16);return[r>>16&255,r>>8&255,255&r]},i.rgb.hcg=function(t){var e,n=t[0]/255,r=t[1]/255,i=t[2]/255,a=Math.max(Math.max(n,r),i),o=Math.min(Math.min(n,r),i),s=a-o;return e=s<=0?0:a===n?(r-i)/s%6:a===r?2+(i-n)/s:4+(n-r)/s+4,e/=6,[360*(e%=1),100*s,100*(s<1?o/(1-s):0)]},i.hsl.hcg=function(t){var e=t[1]/100,n=t[2]/100,r=1,i=0;return(r=n<.5?2*e*n:2*e*(1-n))<1&&(i=(n-.5*r)/(1-r)),[t[0],100*r,100*i]},i.hsv.hcg=function(t){var e=t[1]/100,n=t[2]/100,r=e*n,i=0;return r<1&&(i=(n-r)/(1-r)),[t[0],100*r,100*i]},i.hcg.rgb=function(t){var e=t[0]/360,n=t[1]/100,r=t[2]/100;if(0===n)return[255*r,255*r,255*r];var i,a=[0,0,0],o=e%1*6,s=o%1,l=1-s;switch(Math.floor(o)){case 0:a[0]=1,a[1]=s,a[2]=0;break;case 1:a[0]=l,a[1]=1,a[2]=0;break;case 2:a[0]=0,a[1]=1,a[2]=s;break;case 3:a[0]=0,a[1]=l,a[2]=1;break;case 4:a[0]=s,a[1]=0,a[2]=1;break;default:a[0]=1,a[1]=0,a[2]=l}return i=(1-n)*r,[255*(n*a[0]+i),255*(n*a[1]+i),255*(n*a[2]+i)]},i.hcg.hsv=function(t){var e=t[1]/100,n=e+t[2]/100*(1-e),r=0;return n>0&&(r=e/n),[t[0],100*r,100*n]},i.hcg.hsl=function(t){var e=t[1]/100,n=t[2]/100*(1-e)+.5*e,r=0;return n>0&&n<.5?r=e/(2*n):n>=.5&&n<1&&(r=e/(2*(1-n))),[t[0],100*r,100*n]},i.hcg.hwb=function(t){var e=t[1]/100,n=e+t[2]/100*(1-e);return[t[0],100*(n-e),100*(1-n)]},i.hwb.hcg=function(t){var e=t[1]/100,n=1-t[2]/100,r=n-e,i=0;return r<1&&(i=(n-r)/(1-r)),[t[0],100*r,100*i]},i.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]},i.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]},i.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]},i.gray.hsl=i.gray.hsv=function(t){return[0,0,t[0]]},i.gray.hwb=function(t){return[0,100,t[0]]},i.gray.cmyk=function(t){return[0,0,0,t[0]]},i.gray.lab=function(t){return[t[0],0,0]},i.gray.hex=function(t){var e=255&Math.round(t[0]/100*255),n=((e<<16)+(e<<8)+e).toString(16).toUpperCase();return"000000".substring(n.length)+n},i.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}}));function r(t){var e=function(){for(var t={},e=Object.keys(n),r=e.length,i=0;i<r;i++)t[e[i]]={distance:-1,parent:null};return t}(),r=[t];for(e[t].distance=0;r.length;)for(var i=r.pop(),a=Object.keys(n[i]),o=a.length,s=0;s<o;s++){var l=a[s],u=e[l];-1===u.distance&&(u.distance=e[i].distance+1,u.parent=i,r.unshift(l))}return e}function i(t,e){return function(n){return e(t(n))}}function a(t,e){for(var r=[e[t].parent,t],a=n[e[t].parent][t],o=e[t].parent;e[o].parent;)r.unshift(e[o].parent),a=i(n[e[o].parent][o],a),o=e[o].parent;return a.conversion=r,a}n.rgb,n.hsl,n.hsv,n.hwb,n.cmyk,n.xyz,n.lab,n.lch,n.hex,n.keyword,n.ansi16,n.ansi256,n.hcg,n.apple,n.gray;var o={};Object.keys(n).forEach((function(t){o[t]={},Object.defineProperty(o[t],"channels",{value:n[t].channels}),Object.defineProperty(o[t],"labels",{value:n[t].labels});var e=function(t){for(var e=r(t),n={},i=Object.keys(e),o=i.length,s=0;s<o;s++){var l=i[s];null!==e[l].parent&&(n[l]=a(l,e))}return n}(t);Object.keys(e).forEach((function(n){var r=e[n];o[t][n]=function(t){var e=function(e){if(null==e)return e;arguments.length>1&&(e=Array.prototype.slice.call(arguments));var n=t(e);if("object"==typeof n)for(var r=n.length,i=0;i<r;i++)n[i]=Math.round(n[i]);return n};return"conversion"in t&&(e.conversion=t.conversion),e}(r),o[t][n].raw=function(t){var e=function(e){return null==e?e:(arguments.length>1&&(e=Array.prototype.slice.call(arguments)),t(e))};return"conversion"in t&&(e.conversion=t.conversion),e}(r)}))}));var s=o,l={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},u={getRgba:c,getHsla:h,getRgb:function(t){var e=c(t);return e&&e.slice(0,3)},getHsl:function(t){var e=h(t);return e&&e.slice(0,3)},getHwb:d,getAlpha:function(t){var e=c(t);return e?e[3]:(e=h(t))?e[3]:(e=d(t))?e[3]:void 0},hexString:function(t,e){return e=void 0!==e&&3===t.length?e:t[3],"#"+v(t[0])+v(t[1])+v(t[2])+(e>=0&&e<1?v(Math.round(255*e)):"")},rgbString:function(t,e){return e<1||t[3]&&t[3]<1?f(t,e):"rgb("+t[0]+", "+t[1]+", "+t[2]+")"},rgbaString:f,percentString:function(t,e){if(e<1||t[3]&&t[3]<1)return p(t,e);var n=Math.round(t[0]/255*100),r=Math.round(t[1]/255*100),i=Math.round(t[2]/255*100);return"rgb("+n+"%, "+r+"%, "+i+"%)"},percentaString:p,hslString:function(t,e){return e<1||t[3]&&t[3]<1?g(t,e):"hsl("+t[0]+", "+t[1]+"%, "+t[2]+"%)"},hslaString:g,hwbString:function(t,e){return void 0===e&&(e=void 0!==t[3]?t[3]:1),"hwb("+t[0]+", "+t[1]+"%, "+t[2]+"%"+(void 0!==e&&1!==e?", "+e:"")+")"},keyword:function(t){return b[t.slice(0,3)]}};function c(t){if(t){var e=[0,0,0],n=1,r=t.match(/^#([a-fA-F0-9]{3,4})$/i),i="";if(r){i=(r=r[1])[3];for(var a=0;a<e.length;a++)e[a]=parseInt(r[a]+r[a],16);i&&(n=Math.round(parseInt(i+i,16)/255*100)/100)}else if(r=t.match(/^#([a-fA-F0-9]{6}([a-fA-F0-9]{2})?)$/i)){for(i=r[2],r=r[1],a=0;a<e.length;a++)e[a]=parseInt(r.slice(2*a,2*a+2),16);i&&(n=Math.round(parseInt(i,16)/255*100)/100)}else if(r=t.match(/^rgba?\(\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/i)){for(a=0;a<e.length;a++)e[a]=parseInt(r[a+1]);n=parseFloat(r[4])}else if(r=t.match(/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/i)){for(a=0;a<e.length;a++)e[a]=Math.round(2.55*parseFloat(r[a+1]));n=parseFloat(r[4])}else if(r=t.match(/(\w+)/)){if("transparent"==r[1])return[0,0,0,0];if(!(e=l[r[1]]))return}for(a=0;a<e.length;a++)e[a]=m(e[a],0,255);return n=n||0==n?m(n,0,1):1,e[3]=n,e}}function h(t){if(t){var e=t.match(/^hsla?\(\s*([+-]?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)/);if(e){var n=parseFloat(e[4]);return[m(parseInt(e[1]),0,360),m(parseFloat(e[2]),0,100),m(parseFloat(e[3]),0,100),m(isNaN(n)?1:n,0,1)]}}}function d(t){if(t){var e=t.match(/^hwb\(\s*([+-]?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)/);if(e){var n=parseFloat(e[4]);return[m(parseInt(e[1]),0,360),m(parseFloat(e[2]),0,100),m(parseFloat(e[3]),0,100),m(isNaN(n)?1:n,0,1)]}}}function f(t,e){return void 0===e&&(e=void 0!==t[3]?t[3]:1),"rgba("+t[0]+", "+t[1]+", "+t[2]+", "+e+")"}function p(t,e){return"rgba("+Math.round(t[0]/255*100)+"%, "+Math.round(t[1]/255*100)+"%, "+Math.round(t[2]/255*100)+"%, "+(e||t[3]||1)+")"}function g(t,e){return void 0===e&&(e=void 0!==t[3]?t[3]:1),"hsla("+t[0]+", "+t[1]+"%, "+t[2]+"%, "+e+")"}function m(t,e,n){return Math.min(Math.max(e,t),n)}function v(t){var e=t.toString(16).toUpperCase();return e.length<2?"0"+e:e}var b={};for(var y in l)b[l[y]]=y;var x=function t(e){return e instanceof t?e:this instanceof t?(this.valid=!1,this.values={rgb:[0,0,0],hsl:[0,0,0],hsv:[0,0,0],hwb:[0,0,0],cmyk:[0,0,0,0],alpha:1},void("string"==typeof e?(n=u.getRgba(e))?this.setValues("rgb",n):(n=u.getHsla(e))?this.setValues("hsl",n):(n=u.getHwb(e))&&this.setValues("hwb",n):"object"==typeof e&&(void 0!==(n=e).r||void 0!==n.red?this.setValues("rgb",n):void 0!==n.l||void 0!==n.lightness?this.setValues("hsl",n):void 0!==n.v||void 0!==n.value?this.setValues("hsv",n):void 0!==n.w||void 0!==n.whiteness?this.setValues("hwb",n):void 0===n.c&&void 0===n.cyan||this.setValues("cmyk",n)))):new t(e);var n};(x.prototype={isValid:function(){return this.valid},rgb:function(){return this.setSpace("rgb",arguments)},hsl:function(){return this.setSpace("hsl",arguments)},hsv:function(){return this.setSpace("hsv",arguments)},hwb:function(){return this.setSpace("hwb",arguments)},cmyk:function(){return this.setSpace("cmyk",arguments)},rgbArray:function(){return this.values.rgb},hslArray:function(){return this.values.hsl},hsvArray:function(){return this.values.hsv},hwbArray:function(){var t=this.values;return 1!==t.alpha?t.hwb.concat([t.alpha]):t.hwb},cmykArray:function(){return this.values.cmyk},rgbaArray:function(){var t=this.values;return t.rgb.concat([t.alpha])},hslaArray:function(){var t=this.values;return t.hsl.concat([t.alpha])},alpha:function(t){return void 0===t?this.values.alpha:(this.setValues("alpha",t),this)},red:function(t){return this.setChannel("rgb",0,t)},green:function(t){return this.setChannel("rgb",1,t)},blue:function(t){return this.setChannel("rgb",2,t)},hue:function(t){return t&&(t=(t%=360)<0?360+t:t),this.setChannel("hsl",0,t)},saturation:function(t){return this.setChannel("hsl",1,t)},lightness:function(t){return this.setChannel("hsl",2,t)},saturationv:function(t){return this.setChannel("hsv",1,t)},whiteness:function(t){return this.setChannel("hwb",1,t)},blackness:function(t){return this.setChannel("hwb",2,t)},value:function(t){return this.setChannel("hsv",2,t)},cyan:function(t){return this.setChannel("cmyk",0,t)},magenta:function(t){return this.setChannel("cmyk",1,t)},yellow:function(t){return this.setChannel("cmyk",2,t)},black:function(t){return this.setChannel("cmyk",3,t)},hexString:function(){return u.hexString(this.values.rgb)},rgbString:function(){return u.rgbString(this.values.rgb,this.values.alpha)},rgbaString:function(){return u.rgbaString(this.values.rgb,this.values.alpha)},percentString:function(){return u.percentString(this.values.rgb,this.values.alpha)},hslString:function(){return u.hslString(this.values.hsl,this.values.alpha)},hslaString:function(){return u.hslaString(this.values.hsl,this.values.alpha)},hwbString:function(){return u.hwbString(this.values.hwb,this.values.alpha)},keyword:function(){return u.keyword(this.values.rgb,this.values.alpha)},rgbNumber:function(){var t=this.values.rgb;return t[0]<<16|t[1]<<8|t[2]},luminosity:function(){for(var t=this.values.rgb,e=[],n=0;n<t.length;n++){var r=t[n]/255;e[n]=r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4)}return.2126*e[0]+.7152*e[1]+.0722*e[2]},contrast:function(t){var e=this.luminosity(),n=t.luminosity();return e>n?(e+.05)/(n+.05):(n+.05)/(e+.05)},level:function(t){var e=this.contrast(t);return e>=7.1?"AAA":e>=4.5?"AA":""},dark:function(){var t=this.values.rgb;return(299*t[0]+587*t[1]+114*t[2])/1e3<128},light:function(){return!this.dark()},negate:function(){for(var t=[],e=0;e<3;e++)t[e]=255-this.values.rgb[e];return this.setValues("rgb",t),this},lighten:function(t){var e=this.values.hsl;return e[2]+=e[2]*t,this.setValues("hsl",e),this},darken:function(t){var e=this.values.hsl;return e[2]-=e[2]*t,this.setValues("hsl",e),this},saturate:function(t){var e=this.values.hsl;return e[1]+=e[1]*t,this.setValues("hsl",e),this},desaturate:function(t){var e=this.values.hsl;return e[1]-=e[1]*t,this.setValues("hsl",e),this},whiten:function(t){var e=this.values.hwb;return e[1]+=e[1]*t,this.setValues("hwb",e),this},blacken:function(t){var e=this.values.hwb;return e[2]+=e[2]*t,this.setValues("hwb",e),this},greyscale:function(){var t=this.values.rgb,e=.3*t[0]+.59*t[1]+.11*t[2];return this.setValues("rgb",[e,e,e]),this},clearer:function(t){var e=this.values.alpha;return this.setValues("alpha",e-e*t),this},opaquer:function(t){var e=this.values.alpha;return this.setValues("alpha",e+e*t),this},rotate:function(t){var e=this.values.hsl,n=(e[0]+t)%360;return e[0]=n<0?360+n:n,this.setValues("hsl",e),this},mix:function(t,e){var n=t,r=void 0===e?.5:e,i=2*r-1,a=this.alpha()-n.alpha(),o=((i*a==-1?i:(i+a)/(1+i*a))+1)/2,s=1-o;return this.rgb(o*this.red()+s*n.red(),o*this.green()+s*n.green(),o*this.blue()+s*n.blue()).alpha(this.alpha()*r+n.alpha()*(1-r))},toJSON:function(){return this.rgb()},clone:function(){var t,e,n=new x,r=this.values,i=n.values;for(var a in r)r.hasOwnProperty(a)&&(t=r[a],"[object Array]"===(e={}.toString.call(t))?i[a]=t.slice(0):"[object Number]"===e?i[a]=t:console.error("unexpected color value:",t));return n}}).spaces={rgb:["red","green","blue"],hsl:["hue","saturation","lightness"],hsv:["hue","saturation","value"],hwb:["hue","whiteness","blackness"],cmyk:["cyan","magenta","yellow","black"]},x.prototype.maxes={rgb:[255,255,255],hsl:[360,100,100],hsv:[360,100,100],hwb:[360,100,100],cmyk:[100,100,100,100]},x.prototype.getValues=function(t){for(var e=this.values,n={},r=0;r<t.length;r++)n[t.charAt(r)]=e[t][r];return 1!==e.alpha&&(n.a=e.alpha),n},x.prototype.setValues=function(t,e){var n,r,i=this.values,a=this.spaces,o=this.maxes,l=1;if(this.valid=!0,"alpha"===t)l=e;else if(e.length)i[t]=e.slice(0,t.length),l=e[t.length];else if(void 0!==e[t.charAt(0)]){for(n=0;n<t.length;n++)i[t][n]=e[t.charAt(n)];l=e.a}else if(void 0!==e[a[t][0]]){var u=a[t];for(n=0;n<t.length;n++)i[t][n]=e[u[n]];l=e.alpha}if(i.alpha=Math.max(0,Math.min(1,void 0===l?i.alpha:l)),"alpha"===t)return!1;for(n=0;n<t.length;n++)r=Math.max(0,Math.min(o[t][n],i[t][n])),i[t][n]=Math.round(r);for(var c in a)c!==t&&(i[c]=s[t][c](i[t]));return!0},x.prototype.setSpace=function(t,e){var n=e[0];return void 0===n?this.getValues(t):("number"==typeof n&&(n=Array.prototype.slice.call(e)),this.setValues(t,n),this)},x.prototype.setChannel=function(t,e,n){var r=this.values[t];return void 0===n?r[e]:n===r[e]?this:(r[e]=n,this.setValues(t,r),this)},"undefined"!=typeof window&&(window.Color=x);var _,w=x,k={noop:function(){},uid:(_=0,function(){return _++}),isNullOrUndef:function(t){return null==t},isArray:function(t){if(Array.isArray&&Array.isArray(t))return!0;var e=Object.prototype.toString.call(t);return"[object"===e.substr(0,7)&&"Array]"===e.substr(-6)},isObject:function(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)},isFinite:function(t){function e(e){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}((function(t){return("number"==typeof t||t instanceof Number)&&isFinite(t)})),valueOrDefault:function(t,e){return void 0===t?e:t},valueAtIndexOrDefault:function(t,e,n){return k.valueOrDefault(k.isArray(t)?t[e]:t,n)},callback:function(t,e,n){if(t&&"function"==typeof t.call)return t.apply(n,e)},each:function(t,e,n,r){var i,a,o;if(k.isArray(t))if(a=t.length,r)for(i=a-1;i>=0;i--)e.call(n,t[i],i);else for(i=0;i<a;i++)e.call(n,t[i],i);else if(k.isObject(t))for(a=(o=Object.keys(t)).length,i=0;i<a;i++)e.call(n,t[o[i]],o[i])},arrayEquals:function(t,e){var n,r,i,a;if(!t||!e||t.length!==e.length)return!1;for(n=0,r=t.length;n<r;++n)if(i=t[n],a=e[n],i instanceof Array&&a instanceof Array){if(!k.arrayEquals(i,a))return!1}else if(i!==a)return!1;return!0},clone:function(t){if(k.isArray(t))return t.map(k.clone);if(k.isObject(t)){for(var e={},n=Object.keys(t),r=n.length,i=0;i<r;++i)e[n[i]]=k.clone(t[n[i]]);return e}return t},_merger:function(t,e,n,r){var i=e[t],a=n[t];k.isObject(i)&&k.isObject(a)?k.merge(i,a,r):e[t]=k.clone(a)},_mergerIf:function(t,e,n){var r=e[t],i=n[t];k.isObject(r)&&k.isObject(i)?k.mergeIf(r,i):e.hasOwnProperty(t)||(e[t]=k.clone(i))},merge:function(t,e,n){var r,i,a,o,s,l=k.isArray(e)?e:[e],u=l.length;if(!k.isObject(t))return t;for(r=(n=n||{}).merger||k._merger,i=0;i<u;++i)if(e=l[i],k.isObject(e))for(s=0,o=(a=Object.keys(e)).length;s<o;++s)r(a[s],t,e,n);return t},mergeIf:function(t,e){return k.merge(t,e,{merger:k._mergerIf})},extend:Object.assign||function(t){return k.merge(t,[].slice.call(arguments,1),{merger:function(t,e,n){e[t]=n[t]}})},inherits:function(t){var e=this,n=t&&t.hasOwnProperty("constructor")?t.constructor:function(){return e.apply(this,arguments)},r=function(){this.constructor=n};return r.prototype=e.prototype,n.prototype=new r,n.extend=k.inherits,t&&k.extend(n.prototype,t),n.__super__=e.prototype,n},_deprecated:function(t,e,n,r){void 0!==e&&console.warn(t+': "'+n+'" is deprecated. Please use "'+r+'" instead')}},M=k;k.callCallback=k.callback,k.indexOf=function(t,e,n){return Array.prototype.indexOf.call(t,e,n)},k.getValueOrDefault=k.valueOrDefault,k.getValueAtIndexOrDefault=k.valueAtIndexOrDefault;var S={linear:function(t){return t},easeInQuad:function(t){return t*t},easeOutQuad:function(t){return-t*(t-2)},easeInOutQuad:function(t){return(t/=.5)<1?.5*t*t:-.5*(--t*(t-2)-1)},easeInCubic:function(t){return t*t*t},easeOutCubic:function(t){return(t-=1)*t*t+1},easeInOutCubic:function(t){return(t/=.5)<1?.5*t*t*t:.5*((t-=2)*t*t+2)},easeInQuart:function(t){return t*t*t*t},easeOutQuart:function(t){return-((t-=1)*t*t*t-1)},easeInOutQuart:function(t){return(t/=.5)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)},easeInQuint:function(t){return t*t*t*t*t},easeOutQuint:function(t){return(t-=1)*t*t*t*t+1},easeInOutQuint:function(t){return(t/=.5)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)},easeInSine:function(t){return 1-Math.cos(t*(Math.PI/2))},easeOutSine:function(t){return Math.sin(t*(Math.PI/2))},easeInOutSine:function(t){return-.5*(Math.cos(Math.PI*t)-1)},easeInExpo:function(t){return 0===t?0:Math.pow(2,10*(t-1))},easeOutExpo:function(t){return 1===t?1:1-Math.pow(2,-10*t)},easeInOutExpo:function(t){return 0===t?0:1===t?1:(t/=.5)<1?.5*Math.pow(2,10*(t-1)):.5*(2-Math.pow(2,-10*--t))},easeInCirc:function(t){return t>=1?t:-(Math.sqrt(1-t*t)-1)},easeOutCirc:function(t){return Math.sqrt(1-(t-=1)*t)},easeInOutCirc:function(t){return(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)},easeInElastic:function(t){var e=1.70158,n=0,r=1;return 0===t?0:1===t?1:(n||(n=.3),r<1?(r=1,e=n/4):e=n/(2*Math.PI)*Math.asin(1/r),-r*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/n))},easeOutElastic:function(t){var e=1.70158,n=0,r=1;return 0===t?0:1===t?1:(n||(n=.3),r<1?(r=1,e=n/4):e=n/(2*Math.PI)*Math.asin(1/r),r*Math.pow(2,-10*t)*Math.sin((t-e)*(2*Math.PI)/n)+1)},easeInOutElastic:function(t){var e=1.70158,n=0,r=1;return 0===t?0:2==(t/=.5)?1:(n||(n=.45),r<1?(r=1,e=n/4):e=n/(2*Math.PI)*Math.asin(1/r),t<1?r*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/n)*-.5:r*Math.pow(2,-10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/n)*.5+1)},easeInBack:function(t){var e=1.70158;return t*t*((e+1)*t-e)},easeOutBack:function(t){var e=1.70158;return(t-=1)*t*((e+1)*t+e)+1},easeInOutBack:function(t){var e=1.70158;return(t/=.5)<1?t*t*((1+(e*=1.525))*t-e)*.5:.5*((t-=2)*t*((1+(e*=1.525))*t+e)+2)},easeInBounce:function(t){return 1-S.easeOutBounce(1-t)},easeOutBounce:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},easeInOutBounce:function(t){return t<.5?.5*S.easeInBounce(2*t):.5*S.easeOutBounce(2*t-1)+.5}},D={effects:S};M.easingEffects=S;var C=Math.PI,O=C/180,T=2*C,A=C/2,P=C/4,I=2*C/3,F={clear:function(t){t.ctx.clearRect(0,0,t.width,t.height)},roundedRect:function(t,e,n,r,i,a){if(a){var o=Math.min(a,i/2,r/2),s=e+o,l=n+o,u=e+r-o,c=n+i-o;t.moveTo(e,l),s<u&&l<c?(t.arc(s,l,o,-C,-A),t.arc(u,l,o,-A,0),t.arc(u,c,o,0,A),t.arc(s,c,o,A,C)):s<u?(t.moveTo(s,n),t.arc(u,l,o,-A,A),t.arc(s,l,o,A,C+A)):l<c?(t.arc(s,l,o,-C,0),t.arc(s,c,o,0,C)):t.arc(s,l,o,-C,C),t.closePath(),t.moveTo(e,n)}else t.rect(e,n,r,i)},drawPoint:function(t,e,n,r,i,a){var o,s,l,u,c,h=(a||0)*O;if(e&&"object"==typeof e&&("[object HTMLImageElement]"===(o=e.toString())||"[object HTMLCanvasElement]"===o))return t.save(),t.translate(r,i),t.rotate(h),t.drawImage(e,-e.width/2,-e.height/2,e.width,e.height),void t.restore();if(!(isNaN(n)||n<=0)){switch(t.beginPath(),e){default:t.arc(r,i,n,0,T),t.closePath();break;case"triangle":t.moveTo(r+Math.sin(h)*n,i-Math.cos(h)*n),h+=I,t.lineTo(r+Math.sin(h)*n,i-Math.cos(h)*n),h+=I,t.lineTo(r+Math.sin(h)*n,i-Math.cos(h)*n),t.closePath();break;case"rectRounded":u=n-(c=.516*n),s=Math.cos(h+P)*u,l=Math.sin(h+P)*u,t.arc(r-s,i-l,c,h-C,h-A),t.arc(r+l,i-s,c,h-A,h),t.arc(r+s,i+l,c,h,h+A),t.arc(r-l,i+s,c,h+A,h+C),t.closePath();break;case"rect":if(!a){u=Math.SQRT1_2*n,t.rect(r-u,i-u,2*u,2*u);break}h+=P;case"rectRot":s=Math.cos(h)*n,l=Math.sin(h)*n,t.moveTo(r-s,i-l),t.lineTo(r+l,i-s),t.lineTo(r+s,i+l),t.lineTo(r-l,i+s),t.closePath();break;case"crossRot":h+=P;case"cross":s=Math.cos(h)*n,l=Math.sin(h)*n,t.moveTo(r-s,i-l),t.lineTo(r+s,i+l),t.moveTo(r+l,i-s),t.lineTo(r-l,i+s);break;case"star":s=Math.cos(h)*n,l=Math.sin(h)*n,t.moveTo(r-s,i-l),t.lineTo(r+s,i+l),t.moveTo(r+l,i-s),t.lineTo(r-l,i+s),h+=P,s=Math.cos(h)*n,l=Math.sin(h)*n,t.moveTo(r-s,i-l),t.lineTo(r+s,i+l),t.moveTo(r+l,i-s),t.lineTo(r-l,i+s);break;case"line":s=Math.cos(h)*n,l=Math.sin(h)*n,t.moveTo(r-s,i-l),t.lineTo(r+s,i+l);break;case"dash":t.moveTo(r,i),t.lineTo(r+Math.cos(h)*n,i+Math.sin(h)*n)}t.fill(),t.stroke()}},_isPointInArea:function(t,e){return t.x>e.left-1e-6&&t.x<e.right+1e-6&&t.y>e.top-1e-6&&t.y<e.bottom+1e-6},clipArea:function(t,e){t.save(),t.beginPath(),t.rect(e.left,e.top,e.right-e.left,e.bottom-e.top),t.clip()},unclipArea:function(t){t.restore()},lineTo:function(t,e,n,r){var i=n.steppedLine;if(i){if("middle"===i){var a=(e.x+n.x)/2;t.lineTo(a,r?n.y:e.y),t.lineTo(a,r?e.y:n.y)}else"after"===i&&!r||"after"!==i&&r?t.lineTo(e.x,n.y):t.lineTo(n.x,e.y);t.lineTo(n.x,n.y)}else n.tension?t.bezierCurveTo(r?e.controlPointPreviousX:e.controlPointNextX,r?e.controlPointPreviousY:e.controlPointNextY,r?n.controlPointNextX:n.controlPointPreviousX,r?n.controlPointNextY:n.controlPointPreviousY,n.x,n.y):t.lineTo(n.x,n.y)}},L=F;M.clear=F.clear,M.drawRoundedRectangle=function(t){t.beginPath(),F.roundedRect.apply(F,arguments)};var R={_set:function(t,e){return M.merge(this[t]||(this[t]={}),e)}};R._set("global",{defaultColor:"rgba(0,0,0,0.1)",defaultFontColor:"#666",defaultFontFamily:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",defaultFontSize:12,defaultFontStyle:"normal",defaultLineHeight:1.2,showLines:!0});var j=R,E=M.valueOrDefault,N={toLineHeight:function(t,e){var n=(""+t).match(/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/);if(!n||"normal"===n[1])return 1.2*e;switch(t=+n[2],n[3]){case"px":return t;case"%":t/=100}return e*t},toPadding:function(t){var e,n,r,i;return M.isObject(t)?(e=+t.top||0,n=+t.right||0,r=+t.bottom||0,i=+t.left||0):e=n=r=i=+t||0,{top:e,right:n,bottom:r,left:i,height:e+r,width:i+n}},_parseFont:function(t){var e=j.global,n=E(t.fontSize,e.defaultFontSize),r={family:E(t.fontFamily,e.defaultFontFamily),lineHeight:M.options.toLineHeight(E(t.lineHeight,e.defaultLineHeight),n),size:n,style:E(t.fontStyle,e.defaultFontStyle),weight:null,string:""};return r.string=function(t){return!t||M.isNullOrUndef(t.size)||M.isNullOrUndef(t.family)?null:(t.style?t.style+" ":"")+(t.weight?t.weight+" ":"")+t.size+"px "+t.family}(r),r},resolve:function(t,e,n,r){var i,a,o,s=!0;for(i=0,a=t.length;i<a;++i)if(void 0!==(o=t[i])&&(void 0!==e&&"function"==typeof o&&(o=o(e),s=!1),void 0!==n&&M.isArray(o)&&(o=o[n],s=!1),void 0!==o))return r&&!s&&(r.cacheable=!1),o}},z={_factorize:function(t){var e,n=[],r=Math.sqrt(t);for(e=1;e<r;e++)t%e==0&&(n.push(e),n.push(t/e));return r===(0|r)&&n.push(r),n.sort((function(t,e){return t-e})).pop(),n},log10:Math.log10||function(t){var e=Math.log(t)*Math.LOG10E,n=Math.round(e);return t===Math.pow(10,n)?n:e}},W=z;M.log10=z.log10;var Y=M,V=D,B=L,H=N,U=W,G={getRtlAdapter:function(t,e,n){return t?function(t,e){return{x:function(n){return t+t+e-n},setWidth:function(t){e=t},textAlign:function(t){return"center"===t?t:"right"===t?"left":"right"},xPlus:function(t,e){return t-e},leftForLtr:function(t,e){return t-e}}}(e,n):{x:function(t){return t},setWidth:function(t){},textAlign:function(t){return t},xPlus:function(t,e){return t+e},leftForLtr:function(t,e){return t}}},overrideTextDirection:function(t,e){var n,r;"ltr"!==e&&"rtl"!==e||(r=[(n=t.canvas.style).getPropertyValue("direction"),n.getPropertyPriority("direction")],n.setProperty("direction",e,"important"),t.prevTextDirection=r)},restoreTextDirection:function(t){var e=t.prevTextDirection;void 0!==e&&(delete t.prevTextDirection,t.canvas.style.setProperty("direction",e[0],e[1]))}};Y.easing=V,Y.canvas=B,Y.options=H,Y.math=U,Y.rtl=G;var K=function(t){Y.extend(this,t),this.initialize.apply(this,arguments)};Y.extend(K.prototype,{_type:void 0,initialize:function(){this.hidden=!1},pivot:function(){var t=this;return t._view||(t._view=Y.extend({},t._model)),t._start={},t},transition:function(t){var e=this,n=e._model,r=e._start,i=e._view;return n&&1!==t?(i||(i=e._view={}),r||(r=e._start={}),function(t,e,n,r){var i,a,o,s,l,u,c,h,d,f=Object.keys(n);for(i=0,a=f.length;i<a;++i)if(u=n[o=f[i]],e.hasOwnProperty(o)||(e[o]=u),(s=e[o])!==u&&"_"!==o[0]){if(t.hasOwnProperty(o)||(t[o]=s),(c=typeof u)==typeof(l=t[o]))if("string"===c){if((h=w(l)).valid&&(d=w(u)).valid){e[o]=d.mix(h,r).rgbString();continue}}else if(Y.isFinite(l)&&Y.isFinite(u)){e[o]=l+(u-l)*r;continue}e[o]=u}}(r,i,n,t),e):(e._view=Y.extend({},n),e._start=null,e)},tooltipPosition:function(){return{x:this._model.x,y:this._model.y}},hasValue:function(){return Y.isNumber(this._model.x)&&Y.isNumber(this._model.y)}}),K.extend=Y.inherits;var J=K,q=J.extend({chart:null,currentStep:0,numSteps:60,easing:"",render:null,onAnimationProgress:null,onAnimationComplete:null}),Z=q;Object.defineProperty(q.prototype,"animationObject",{get:function(){return this}}),Object.defineProperty(q.prototype,"chartInstance",{get:function(){return this.chart},set:function(t){this.chart=t}}),j._set("global",{animation:{duration:1e3,easing:"easeOutQuart",onProgress:Y.noop,onComplete:Y.noop}});var X={animations:[],request:null,addAnimation:function(t,e,n,r){var i,a,o=this.animations;for(e.chart=t,e.startTime=Date.now(),e.duration=n,r||(t.animating=!0),i=0,a=o.length;i<a;++i)if(o[i].chart===t)return void(o[i]=e);o.push(e),1===o.length&&this.requestAnimationFrame()},cancelAnimation:function(t){var e=Y.findIndex(this.animations,(function(e){return e.chart===t}));-1!==e&&(this.animations.splice(e,1),t.animating=!1)},requestAnimationFrame:function(){var t=this;null===t.request&&(t.request=Y.requestAnimFrame.call(window,(function(){t.request=null,t.startDigest()})))},startDigest:function(){this.advance(),this.animations.length>0&&this.requestAnimationFrame()},advance:function(){for(var t,e,n,r,i=this.animations,a=0;a<i.length;)e=(t=i[a]).chart,n=t.numSteps,r=Math.floor((Date.now()-t.startTime)/t.duration*n)+1,t.currentStep=Math.min(r,n),Y.callback(t.render,[e,t],e),Y.callback(t.onAnimationProgress,[t],e),t.currentStep>=n?(Y.callback(t.onAnimationComplete,[t],e),e.animating=!1,i.splice(a,1)):++a}},$=Y.options.resolve,Q=["push","pop","shift","splice","unshift"];function tt(t,e){var n=t._chartjs;if(n){var r=n.listeners,i=r.indexOf(e);-1!==i&&r.splice(i,1),r.length>0||(Q.forEach((function(e){delete t[e]})),delete t._chartjs)}}var et=function(t,e){this.initialize(t,e)};Y.extend(et.prototype,{datasetElementType:null,dataElementType:null,_datasetElementOptions:["backgroundColor","borderCapStyle","borderColor","borderDash","borderDashOffset","borderJoinStyle","borderWidth"],_dataElementOptions:["backgroundColor","borderColor","borderWidth","pointStyle"],initialize:function(t,e){var n=this;n.chart=t,n.index=e,n.linkScales(),n.addElements(),n._type=n.getMeta().type},updateIndex:function(t){this.index=t},linkScales:function(){var t=this.getMeta(),e=this.chart,n=e.scales,r=this.getDataset(),i=e.options.scales;null!==t.xAxisID&&t.xAxisID in n&&!r.xAxisID||(t.xAxisID=r.xAxisID||i.xAxes[0].id),null!==t.yAxisID&&t.yAxisID in n&&!r.yAxisID||(t.yAxisID=r.yAxisID||i.yAxes[0].id)},getDataset:function(){return this.chart.data.datasets[this.index]},getMeta:function(){return this.chart.getDatasetMeta(this.index)},getScaleForId:function(t){return this.chart.scales[t]},_getValueScaleId:function(){return this.getMeta().yAxisID},_getIndexScaleId:function(){return this.getMeta().xAxisID},_getValueScale:function(){return this.getScaleForId(this._getValueScaleId())},_getIndexScale:function(){return this.getScaleForId(this._getIndexScaleId())},reset:function(){this._update(!0)},destroy:function(){this._data&&tt(this._data,this)},createMetaDataset:function(){var t=this.datasetElementType;return t&&new t({_chart:this.chart,_datasetIndex:this.index})},createMetaData:function(t){var e=this.dataElementType;return e&&new e({_chart:this.chart,_datasetIndex:this.index,_index:t})},addElements:function(){var t,e,n=this.getMeta(),r=this.getDataset().data||[],i=n.data;for(t=0,e=r.length;t<e;++t)i[t]=i[t]||this.createMetaData(t);n.dataset=n.dataset||this.createMetaDataset()},addElementAndReset:function(t){var e=this.createMetaData(t);this.getMeta().data.splice(t,0,e),this.updateElement(e,t,!0)},buildOrUpdateElements:function(){var t,e,n=this,r=n.getDataset(),i=r.data||(r.data=[]);n._data!==i&&(n._data&&tt(n._data,n),i&&Object.isExtensible(i)&&(e=n,(t=i)._chartjs?t._chartjs.listeners.push(e):(Object.defineProperty(t,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[e]}}),Q.forEach((function(e){var n="onData"+e.charAt(0).toUpperCase()+e.slice(1),r=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value:function(){var e=Array.prototype.slice.call(arguments),i=r.apply(this,e);return Y.each(t._chartjs.listeners,(function(t){"function"==typeof t[n]&&t[n].apply(t,e)})),i}})})))),n._data=i),n.resyncElements()},_configure:function(){this._config=Y.merge({},[this.chart.options.datasets[this._type],this.getDataset()],{merger:function(t,e,n){"_meta"!==t&&"data"!==t&&Y._merger(t,e,n)}})},_update:function(t){this._configure(),this._cachedDataOpts=null,this.update(t)},update:Y.noop,transition:function(t){for(var e=this.getMeta(),n=e.data||[],r=n.length,i=0;i<r;++i)n[i].transition(t);e.dataset&&e.dataset.transition(t)},draw:function(){var t=this.getMeta(),e=t.data||[],n=e.length,r=0;for(t.dataset&&t.dataset.draw();r<n;++r)e[r].draw()},getStyle:function(t){var e,n=this.getMeta(),r=n.dataset;return this._configure(),r&&void 0===t?e=this._resolveDatasetElementOptions(r||{}):(t=t||0,e=this._resolveDataElementOptions(n.data[t]||{},t)),!1!==e.fill&&null!==e.fill||(e.backgroundColor=e.borderColor),e},_resolveDatasetElementOptions:function(t,e){var n,r,i,a,o=this,s=o.chart,l=o._config,u=t.custom||{},c=s.options.elements[o.datasetElementType.prototype._type]||{},h=o._datasetElementOptions,d={},f={chart:s,dataset:o.getDataset(),datasetIndex:o.index,hover:e};for(n=0,r=h.length;n<r;++n)i=h[n],a=e?"hover"+i.charAt(0).toUpperCase()+i.slice(1):i,d[i]=$([u[a],l[a],c[a]],f);return d},_resolveDataElementOptions:function(t,e){var n=this,r=t&&t.custom,i=n._cachedDataOpts;if(i&&!r)return i;var a,o,s,l,u=n.chart,c=n._config,h=u.options.elements[n.dataElementType.prototype._type]||{},d=n._dataElementOptions,f={},p={chart:u,dataIndex:e,dataset:n.getDataset(),datasetIndex:n.index},g={cacheable:!r};if(r=r||{},Y.isArray(d))for(o=0,s=d.length;o<s;++o)f[l=d[o]]=$([r[l],c[l],h[l]],p,e,g);else for(o=0,s=(a=Object.keys(d)).length;o<s;++o)f[l=a[o]]=$([r[l],c[d[l]],c[l],h[l]],p,e,g);return g.cacheable&&(n._cachedDataOpts=Object.freeze(f)),f},removeHoverStyle:function(t){Y.merge(t._model,t.$previousStyle||{}),delete t.$previousStyle},setHoverStyle:function(t){var e=this.chart.data.datasets[t._datasetIndex],n=t._index,r=t.custom||{},i=t._model,a=Y.getHoverColor;t.$previousStyle={backgroundColor:i.backgroundColor,borderColor:i.borderColor,borderWidth:i.borderWidth},i.backgroundColor=$([r.hoverBackgroundColor,e.hoverBackgroundColor,a(i.backgroundColor)],void 0,n),i.borderColor=$([r.hoverBorderColor,e.hoverBorderColor,a(i.borderColor)],void 0,n),i.borderWidth=$([r.hoverBorderWidth,e.hoverBorderWidth,i.borderWidth],void 0,n)},_removeDatasetHoverStyle:function(){var t=this.getMeta().dataset;t&&this.removeHoverStyle(t)},_setDatasetHoverStyle:function(){var t,e,n,r,i,a,o=this.getMeta().dataset,s={};if(o){for(a=o._model,i=this._resolveDatasetElementOptions(o,!0),t=0,e=(r=Object.keys(i)).length;t<e;++t)s[n=r[t]]=a[n],a[n]=i[n];o.$previousStyle=s}},resyncElements:function(){var t=this.getMeta(),e=this.getDataset().data,n=t.data.length,r=e.length;r<n?t.data.splice(r,n-r):r>n&&this.insertElements(n,r-n)},insertElements:function(t,e){for(var n=0;n<e;++n)this.addElementAndReset(t+n)},onDataPush:function(){var t=arguments.length;this.insertElements(this.getDataset().data.length-t,t)},onDataPop:function(){this.getMeta().data.pop()},onDataShift:function(){this.getMeta().data.shift()},onDataSplice:function(t,e){this.getMeta().data.splice(t,e),this.insertElements(t,arguments.length-2)},onDataUnshift:function(){this.insertElements(0,arguments.length)}}),et.extend=Y.inherits;var nt=et,rt=2*Math.PI;function it(t,e){var n=e.startAngle,r=e.endAngle,i=e.pixelMargin,a=i/e.outerRadius,o=e.x,s=e.y;t.beginPath(),t.arc(o,s,e.outerRadius,n-a,r+a),e.innerRadius>i?(a=i/e.innerRadius,t.arc(o,s,e.innerRadius-i,r+a,n-a,!0)):t.arc(o,s,i,r+Math.PI/2,n-Math.PI/2),t.closePath(),t.clip()}function at(t,e,n){var r="inner"===e.borderAlign;r?(t.lineWidth=2*e.borderWidth,t.lineJoin="round"):(t.lineWidth=e.borderWidth,t.lineJoin="bevel"),n.fullCircles&&function(t,e,n,r){var i,a=n.endAngle;for(r&&(n.endAngle=n.startAngle+rt,it(t,n),n.endAngle=a,n.endAngle===n.startAngle&&n.fullCircles&&(n.endAngle+=rt,n.fullCircles--)),t.beginPath(),t.arc(n.x,n.y,n.innerRadius,n.startAngle+rt,n.startAngle,!0),i=0;i<n.fullCircles;++i)t.stroke();for(t.beginPath(),t.arc(n.x,n.y,e.outerRadius,n.startAngle,n.startAngle+rt),i=0;i<n.fullCircles;++i)t.stroke()}(t,e,n,r),r&&it(t,n),t.beginPath(),t.arc(n.x,n.y,e.outerRadius,n.startAngle,n.endAngle),t.arc(n.x,n.y,n.innerRadius,n.endAngle,n.startAngle,!0),t.closePath(),t.stroke()}j._set("global",{elements:{arc:{backgroundColor:j.global.defaultColor,borderColor:"#fff",borderWidth:2,borderAlign:"center"}}});var ot=J.extend({_type:"arc",inLabelRange:function(t){var e=this._view;return!!e&&Math.pow(t-e.x,2)<Math.pow(e.radius+e.hoverRadius,2)},inRange:function(t,e){var n=this._view;if(n){for(var r=Y.getAngleFromPoint(n,{x:t,y:e}),i=r.angle,a=r.distance,o=n.startAngle,s=n.endAngle;s<o;)s+=rt;for(;i>s;)i-=rt;for(;i<o;)i+=rt;var l=i>=o&&i<=s,u=a>=n.innerRadius&&a<=n.outerRadius;return l&&u}return!1},getCenterPoint:function(){var t=this._view,e=(t.startAngle+t.endAngle)/2,n=(t.innerRadius+t.outerRadius)/2;return{x:t.x+Math.cos(e)*n,y:t.y+Math.sin(e)*n}},getArea:function(){var t=this._view;return Math.PI*((t.endAngle-t.startAngle)/(2*Math.PI))*(Math.pow(t.outerRadius,2)-Math.pow(t.innerRadius,2))},tooltipPosition:function(){var t=this._view,e=t.startAngle+(t.endAngle-t.startAngle)/2,n=(t.outerRadius-t.innerRadius)/2+t.innerRadius;return{x:t.x+Math.cos(e)*n,y:t.y+Math.sin(e)*n}},draw:function(){var t,e=this._chart.ctx,n=this._view,r="inner"===n.borderAlign?.33:0,i={x:n.x,y:n.y,innerRadius:n.innerRadius,outerRadius:Math.max(n.outerRadius-r,0),pixelMargin:r,startAngle:n.startAngle,endAngle:n.endAngle,fullCircles:Math.floor(n.circumference/rt)};if(e.save(),e.fillStyle=n.backgroundColor,e.strokeStyle=n.borderColor,i.fullCircles){for(i.endAngle=i.startAngle+rt,e.beginPath(),e.arc(i.x,i.y,i.outerRadius,i.startAngle,i.endAngle),e.arc(i.x,i.y,i.innerRadius,i.endAngle,i.startAngle,!0),e.closePath(),t=0;t<i.fullCircles;++t)e.fill();i.endAngle=i.startAngle+n.circumference%rt}e.beginPath(),e.arc(i.x,i.y,i.outerRadius,i.startAngle,i.endAngle),e.arc(i.x,i.y,i.innerRadius,i.endAngle,i.startAngle,!0),e.closePath(),e.fill(),n.borderWidth&&at(e,n,i),e.restore()}}),st=Y.valueOrDefault,lt=j.global.defaultColor;j._set("global",{elements:{line:{tension:.4,backgroundColor:lt,borderWidth:3,borderColor:lt,borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",capBezierPoints:!0,fill:!0}}});var ut=J.extend({_type:"line",draw:function(){var t,e,n,r=this,i=r._view,a=r._chart.ctx,o=i.spanGaps,s=r._children.slice(),l=j.global,u=l.elements.line,c=-1,h=r._loop;if(s.length){if(r._loop){for(t=0;t<s.length;++t)if(e=Y.previousItem(s,t),!s[t]._view.skip&&e._view.skip){s=s.slice(t).concat(s.slice(0,t)),h=o;break}h&&s.push(s[0])}for(a.save(),a.lineCap=i.borderCapStyle||u.borderCapStyle,a.setLineDash&&a.setLineDash(i.borderDash||u.borderDash),a.lineDashOffset=st(i.borderDashOffset,u.borderDashOffset),a.lineJoin=i.borderJoinStyle||u.borderJoinStyle,a.lineWidth=st(i.borderWidth,u.borderWidth),a.strokeStyle=i.borderColor||l.defaultColor,a.beginPath(),(n=s[0]._view).skip||(a.moveTo(n.x,n.y),c=0),t=1;t<s.length;++t)n=s[t]._view,e=-1===c?Y.previousItem(s,t):s[c],n.skip||(c!==t-1&&!o||-1===c?a.moveTo(n.x,n.y):Y.canvas.lineTo(a,e._view,n),c=t);h&&a.closePath(),a.stroke(),a.restore()}}}),ct=Y.valueOrDefault,ht=j.global.defaultColor;function dt(t){var e=this._view;return!!e&&Math.abs(t-e.x)<e.radius+e.hitRadius}j._set("global",{elements:{point:{radius:3,pointStyle:"circle",backgroundColor:ht,borderColor:ht,borderWidth:1,hitRadius:1,hoverRadius:4,hoverBorderWidth:1}}});var ft=J.extend({_type:"point",inRange:function(t,e){var n=this._view;return!!n&&Math.pow(t-n.x,2)+Math.pow(e-n.y,2)<Math.pow(n.hitRadius+n.radius,2)},inLabelRange:dt,inXRange:dt,inYRange:function(t){var e=this._view;return!!e&&Math.abs(t-e.y)<e.radius+e.hitRadius},getCenterPoint:function(){var t=this._view;return{x:t.x,y:t.y}},getArea:function(){return Math.PI*Math.pow(this._view.radius,2)},tooltipPosition:function(){var t=this._view;return{x:t.x,y:t.y,padding:t.radius+t.borderWidth}},draw:function(t){var e=this._view,n=this._chart.ctx,r=e.pointStyle,i=e.rotation,a=e.radius,o=e.x,s=e.y,l=j.global,u=l.defaultColor;e.skip||(void 0===t||Y.canvas._isPointInArea(e,t))&&(n.strokeStyle=e.borderColor||u,n.lineWidth=ct(e.borderWidth,l.elements.point.borderWidth),n.fillStyle=e.backgroundColor||u,Y.canvas.drawPoint(n,r,a,o,s,i))}}),pt=j.global.defaultColor;function gt(t){return t&&void 0!==t.width}function mt(t){var e,n,r,i,a;return gt(t)?(a=t.width/2,e=t.x-a,n=t.x+a,r=Math.min(t.y,t.base),i=Math.max(t.y,t.base)):(a=t.height/2,e=Math.min(t.x,t.base),n=Math.max(t.x,t.base),r=t.y-a,i=t.y+a),{left:e,top:r,right:n,bottom:i}}function vt(t,e,n){return t===e?n:t===n?e:t}function bt(t,e,n){var r,i,a,o,s=t.borderWidth,l=function(t){var e=t.borderSkipped,n={};return e?(t.horizontal?t.base>t.x&&(e=vt(e,"left","right")):t.base<t.y&&(e=vt(e,"bottom","top")),n[e]=!0,n):n}(t);return Y.isObject(s)?(r=+s.top||0,i=+s.right||0,a=+s.bottom||0,o=+s.left||0):r=i=a=o=+s||0,{t:l.top||r<0?0:r>n?n:r,r:l.right||i<0?0:i>e?e:i,b:l.bottom||a<0?0:a>n?n:a,l:l.left||o<0?0:o>e?e:o}}function yt(t,e,n){var r=null===e,i=null===n,a=!(!t||r&&i)&&mt(t);return a&&(r||e>=a.left&&e<=a.right)&&(i||n>=a.top&&n<=a.bottom)}j._set("global",{elements:{rectangle:{backgroundColor:pt,borderColor:pt,borderSkipped:"bottom",borderWidth:0}}});var xt=J.extend({_type:"rectangle",draw:function(){var t=this._chart.ctx,e=this._view,n=function(t){var e=mt(t),n=e.right-e.left,r=e.bottom-e.top,i=bt(t,n/2,r/2);return{outer:{x:e.left,y:e.top,w:n,h:r},inner:{x:e.left+i.l,y:e.top+i.t,w:n-i.l-i.r,h:r-i.t-i.b}}}(e),r=n.outer,i=n.inner;t.fillStyle=e.backgroundColor,t.fillRect(r.x,r.y,r.w,r.h),r.w===i.w&&r.h===i.h||(t.save(),t.beginPath(),t.rect(r.x,r.y,r.w,r.h),t.clip(),t.fillStyle=e.borderColor,t.rect(i.x,i.y,i.w,i.h),t.fill("evenodd"),t.restore())},height:function(){var t=this._view;return t.base-t.y},inRange:function(t,e){return yt(this._view,t,e)},inLabelRange:function(t,e){var n=this._view;return gt(n)?yt(n,t,null):yt(n,null,e)},inXRange:function(t){return yt(this._view,t,null)},inYRange:function(t){return yt(this._view,null,t)},getCenterPoint:function(){var t,e,n=this._view;return gt(n)?(t=n.x,e=(n.y+n.base)/2):(t=(n.x+n.base)/2,e=n.y),{x:t,y:e}},getArea:function(){var t=this._view;return gt(t)?t.width*Math.abs(t.y-t.base):t.height*Math.abs(t.x-t.base)},tooltipPosition:function(){var t=this._view;return{x:t.x,y:t.y}}}),_t={},wt=ot,kt=ut,Mt=ft,St=xt;_t.Arc=wt,_t.Line=kt,_t.Point=Mt,_t.Rectangle=St;var Dt=Y._deprecated,Ct=Y.valueOrDefault;function Ot(t,e,n){var r,i,a=n.barThickness,o=e.stackCount,s=e.pixels[t],l=Y.isNullOrUndef(a)?function(t,e){var n,r,i,a,o=t._length;for(i=1,a=e.length;i<a;++i)o=Math.min(o,Math.abs(e[i]-e[i-1]));for(i=0,a=t.getTicks().length;i<a;++i)r=t.getPixelForTick(i),o=i>0?Math.min(o,Math.abs(r-n)):o,n=r;return o}(e.scale,e.pixels):-1;return Y.isNullOrUndef(a)?(r=l*n.categoryPercentage,i=n.barPercentage):(r=a*o,i=1),{chunk:r/o,ratio:i,start:s-r/2}}j._set("bar",{hover:{mode:"label"},scales:{xAxes:[{type:"category",offset:!0,gridLines:{offsetGridLines:!0}}],yAxes:[{type:"linear"}]}}),j._set("global",{datasets:{bar:{categoryPercentage:.8,barPercentage:.9}}});var Tt=nt.extend({dataElementType:_t.Rectangle,_dataElementOptions:["backgroundColor","borderColor","borderSkipped","borderWidth","barPercentage","barThickness","categoryPercentage","maxBarThickness","minBarLength"],initialize:function(){var t,e,n=this;nt.prototype.initialize.apply(n,arguments),(t=n.getMeta()).stack=n.getDataset().stack,t.bar=!0,e=n._getIndexScale().options,Dt("bar chart",e.barPercentage,"scales.[x/y]Axes.barPercentage","dataset.barPercentage"),Dt("bar chart",e.barThickness,"scales.[x/y]Axes.barThickness","dataset.barThickness"),Dt("bar chart",e.categoryPercentage,"scales.[x/y]Axes.categoryPercentage","dataset.categoryPercentage"),Dt("bar chart",n._getValueScale().options.minBarLength,"scales.[x/y]Axes.minBarLength","dataset.minBarLength"),Dt("bar chart",e.maxBarThickness,"scales.[x/y]Axes.maxBarThickness","dataset.maxBarThickness")},update:function(t){var e,n,r=this.getMeta().data;for(this._ruler=this.getRuler(),e=0,n=r.length;e<n;++e)this.updateElement(r[e],e,t)},updateElement:function(t,e,n){var r=this,i=r.getMeta(),a=r.getDataset(),o=r._resolveDataElementOptions(t,e);t._xScale=r.getScaleForId(i.xAxisID),t._yScale=r.getScaleForId(i.yAxisID),t._datasetIndex=r.index,t._index=e,t._model={backgroundColor:o.backgroundColor,borderColor:o.borderColor,borderSkipped:o.borderSkipped,borderWidth:o.borderWidth,datasetLabel:a.label,label:r.chart.data.labels[e]},Y.isArray(a.data[e])&&(t._model.borderSkipped=null),r._updateElementGeometry(t,e,n,o),t.pivot()},_updateElementGeometry:function(t,e,n,r){var i=this,a=t._model,o=i._getValueScale(),s=o.getBasePixel(),l=o.isHorizontal(),u=i._ruler||i.getRuler(),c=i.calculateBarValuePixels(i.index,e,r),h=i.calculateBarIndexPixels(i.index,e,u,r);a.horizontal=l,a.base=n?s:c.base,a.x=l?n?s:c.head:h.center,a.y=l?h.center:n?s:c.head,a.height=l?h.size:void 0,a.width=l?void 0:h.size},_getStacks:function(t){var e,n,r=this._getIndexScale(),i=r._getMatchingVisibleMetas(this._type),a=r.options.stacked,o=i.length,s=[];for(e=0;e<o&&(n=i[e],(!1===a||-1===s.indexOf(n.stack)||void 0===a&&void 0===n.stack)&&s.push(n.stack),n.index!==t);++e);return s},getStackCount:function(){return this._getStacks().length},getStackIndex:function(t,e){var n=this._getStacks(t),r=void 0!==e?n.indexOf(e):-1;return-1===r?n.length-1:r},getRuler:function(){var t,e,n=this._getIndexScale(),r=[];for(t=0,e=this.getMeta().data.length;t<e;++t)r.push(n.getPixelForValue(null,t,this.index));return{pixels:r,start:n._startPixel,end:n._endPixel,stackCount:this.getStackCount(),scale:n}},calculateBarValuePixels:function(t,e,n){var r,i,a,o,s,l,u,c=this.chart,h=this._getValueScale(),d=h.isHorizontal(),f=c.data.datasets,p=h._getMatchingVisibleMetas(this._type),g=h._parseValue(f[t].data[e]),m=n.minBarLength,v=h.options.stacked,b=this.getMeta().stack,y=void 0===g.start?0:g.max>=0&&g.min>=0?g.min:g.max,x=void 0===g.start?g.end:g.max>=0&&g.min>=0?g.max-g.min:g.min-g.max,_=p.length;if(v||void 0===v&&void 0!==b)for(r=0;r<_&&(i=p[r]).index!==t;++r)i.stack===b&&(a=void 0===(u=h._parseValue(f[i.index].data[e])).start?u.end:u.min>=0&&u.max>=0?u.max:u.min,(g.min<0&&a<0||g.max>=0&&a>0)&&(y+=a));return o=h.getPixelForValue(y),l=(s=h.getPixelForValue(y+x))-o,void 0!==m&&Math.abs(l)<m&&(l=m,s=x>=0&&!d||x<0&&d?o-m:o+m),{size:l,base:o,head:s,center:s+l/2}},calculateBarIndexPixels:function(t,e,n,r){var i="flex"===r.barThickness?function(t,e,n){var r,i=e.pixels,a=i[t],o=t>0?i[t-1]:null,s=t<i.length-1?i[t+1]:null,l=n.categoryPercentage;return null===o&&(o=a-(null===s?e.end-e.start:s-a)),null===s&&(s=a+a-o),r=a-(a-Math.min(o,s))/2*l,{chunk:Math.abs(s-o)/2*l/e.stackCount,ratio:n.barPercentage,start:r}}(e,n,r):Ot(e,n,r),a=this.getStackIndex(t,this.getMeta().stack),o=i.start+i.chunk*a+i.chunk/2,s=Math.min(Ct(r.maxBarThickness,1/0),i.chunk*i.ratio);return{base:o-s/2,head:o+s/2,center:o,size:s}},draw:function(){var t=this.chart,e=this._getValueScale(),n=this.getMeta().data,r=this.getDataset(),i=n.length,a=0;for(Y.canvas.clipArea(t.ctx,t.chartArea);a<i;++a){var o=e._parseValue(r.data[a]);isNaN(o.min)||isNaN(o.max)||n[a].draw()}Y.canvas.unclipArea(t.ctx)},_resolveDataElementOptions:function(){var t=this,e=Y.extend({},nt.prototype._resolveDataElementOptions.apply(t,arguments)),n=t._getIndexScale().options,r=t._getValueScale().options;return e.barPercentage=Ct(n.barPercentage,e.barPercentage),e.barThickness=Ct(n.barThickness,e.barThickness),e.categoryPercentage=Ct(n.categoryPercentage,e.categoryPercentage),e.maxBarThickness=Ct(n.maxBarThickness,e.maxBarThickness),e.minBarLength=Ct(r.minBarLength,e.minBarLength),e}}),At=Y.valueOrDefault,Pt=Y.options.resolve;j._set("bubble",{hover:{mode:"single"},scales:{xAxes:[{type:"linear",position:"bottom",id:"x-axis-0"}],yAxes:[{type:"linear",position:"left",id:"y-axis-0"}]},tooltips:{callbacks:{title:function(){return""},label:function(t,e){var n=e.datasets[t.datasetIndex].label||"",r=e.datasets[t.datasetIndex].data[t.index];return n+": ("+t.xLabel+", "+t.yLabel+", "+r.r+")"}}}});var It=nt.extend({dataElementType:_t.Point,_dataElementOptions:["backgroundColor","borderColor","borderWidth","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth","hoverRadius","hitRadius","pointStyle","rotation"],update:function(t){var e=this,n=e.getMeta().data;Y.each(n,(function(n,r){e.updateElement(n,r,t)}))},updateElement:function(t,e,n){var r=this,i=r.getMeta(),a=t.custom||{},o=r.getScaleForId(i.xAxisID),s=r.getScaleForId(i.yAxisID),l=r._resolveDataElementOptions(t,e),u=r.getDataset().data[e],c=r.index,h=n?o.getPixelForDecimal(.5):o.getPixelForValue("object"==typeof u?u:NaN,e,c),d=n?s.getBasePixel():s.getPixelForValue(u,e,c);t._xScale=o,t._yScale=s,t._options=l,t._datasetIndex=c,t._index=e,t._model={backgroundColor:l.backgroundColor,borderColor:l.borderColor,borderWidth:l.borderWidth,hitRadius:l.hitRadius,pointStyle:l.pointStyle,rotation:l.rotation,radius:n?0:l.radius,skip:a.skip||isNaN(h)||isNaN(d),x:h,y:d},t.pivot()},setHoverStyle:function(t){var e=t._model,n=t._options,r=Y.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth,radius:e.radius},e.backgroundColor=At(n.hoverBackgroundColor,r(n.backgroundColor)),e.borderColor=At(n.hoverBorderColor,r(n.borderColor)),e.borderWidth=At(n.hoverBorderWidth,n.borderWidth),e.radius=n.radius+n.hoverRadius},_resolveDataElementOptions:function(t,e){var n=this,r=n.chart,i=n.getDataset(),a=t.custom||{},o=i.data[e]||{},s=nt.prototype._resolveDataElementOptions.apply(n,arguments),l={chart:r,dataIndex:e,dataset:i,datasetIndex:n.index};return n._cachedDataOpts===s&&(s=Y.extend({},s)),s.radius=Pt([a.radius,o.r,n._config.radius,r.options.elements.point.radius],l,e),s}}),Ft=Y.valueOrDefault,Lt=Math.PI,Rt=2*Lt,jt=Lt/2;j._set("doughnut",{animation:{animateRotate:!0,animateScale:!1},hover:{mode:"single"},legendCallback:function(t){var e,n,r,i=document.createElement("ul"),a=t.data,o=a.datasets,s=a.labels;if(i.setAttribute("class",t.id+"-legend"),o.length)for(e=0,n=o[0].data.length;e<n;++e)(r=i.appendChild(document.createElement("li"))).appendChild(document.createElement("span")).style.backgroundColor=o[0].backgroundColor[e],s[e]&&r.appendChild(document.createTextNode(s[e]));return i.outerHTML},legend:{labels:{generateLabels:function(t){var e=t.data;return e.labels.length&&e.datasets.length?e.labels.map((function(n,r){var i=t.getDatasetMeta(0),a=i.controller.getStyle(r);return{text:n,fillStyle:a.backgroundColor,strokeStyle:a.borderColor,lineWidth:a.borderWidth,hidden:isNaN(e.datasets[0].data[r])||i.data[r].hidden,index:r}})):[]}},onClick:function(t,e){var n,r,i,a=e.index,o=this.chart;for(n=0,r=(o.data.datasets||[]).length;n<r;++n)(i=o.getDatasetMeta(n)).data[a]&&(i.data[a].hidden=!i.data[a].hidden);o.update()}},cutoutPercentage:50,rotation:-jt,circumference:Rt,tooltips:{callbacks:{title:function(){return""},label:function(t,e){var n=e.labels[t.index],r=": "+e.datasets[t.datasetIndex].data[t.index];return Y.isArray(n)?(n=n.slice())[0]+=r:n+=r,n}}}});var Et=nt.extend({dataElementType:_t.Arc,linkScales:Y.noop,_dataElementOptions:["backgroundColor","borderColor","borderWidth","borderAlign","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth"],getRingIndex:function(t){for(var e=0,n=0;n<t;++n)this.chart.isDatasetVisible(n)&&++e;return e},update:function(t){var e,n,r,i,a=this,o=a.chart,s=o.chartArea,l=o.options,u=1,c=1,h=0,d=0,f=a.getMeta(),p=f.data,g=l.cutoutPercentage/100||0,m=l.circumference,v=a._getRingWeight(a.index);if(m<Rt){var b=l.rotation%Rt,y=(b+=b>=Lt?-Rt:b<-Lt?Rt:0)+m,x=Math.cos(b),_=Math.sin(b),w=Math.cos(y),k=Math.sin(y),M=b<=0&&y>=0||y>=Rt,S=b<=jt&&y>=jt||y>=Rt+jt,D=b<=-jt&&y>=-jt||y>=Lt+jt,C=b===-Lt||y>=Lt?-1:Math.min(x,x*g,w,w*g),O=D?-1:Math.min(_,_*g,k,k*g),T=M?1:Math.max(x,x*g,w,w*g),A=S?1:Math.max(_,_*g,k,k*g);u=(T-C)/2,c=(A-O)/2,h=-(T+C)/2,d=-(A+O)/2}for(r=0,i=p.length;r<i;++r)p[r]._options=a._resolveDataElementOptions(p[r],r);for(o.borderWidth=a.getMaxBorderWidth(),e=(s.right-s.left-o.borderWidth)/u,n=(s.bottom-s.top-o.borderWidth)/c,o.outerRadius=Math.max(Math.min(e,n)/2,0),o.innerRadius=Math.max(o.outerRadius*g,0),o.radiusLength=(o.outerRadius-o.innerRadius)/(a._getVisibleDatasetWeightTotal()||1),o.offsetX=h*o.outerRadius,o.offsetY=d*o.outerRadius,f.total=a.calculateTotal(),a.outerRadius=o.outerRadius-o.radiusLength*a._getRingWeightOffset(a.index),a.innerRadius=Math.max(a.outerRadius-o.radiusLength*v,0),r=0,i=p.length;r<i;++r)a.updateElement(p[r],r,t)},updateElement:function(t,e,n){var r=this,i=r.chart,a=i.chartArea,o=i.options,s=o.animation,l=(a.left+a.right)/2,u=(a.top+a.bottom)/2,c=o.rotation,h=o.rotation,d=r.getDataset(),f=n&&s.animateRotate?0:t.hidden?0:r.calculateCircumference(d.data[e])*(o.circumference/Rt),p=n&&s.animateScale?0:r.innerRadius,g=n&&s.animateScale?0:r.outerRadius,m=t._options||{};Y.extend(t,{_datasetIndex:r.index,_index:e,_model:{backgroundColor:m.backgroundColor,borderColor:m.borderColor,borderWidth:m.borderWidth,borderAlign:m.borderAlign,x:l+i.offsetX,y:u+i.offsetY,startAngle:c,endAngle:h,circumference:f,outerRadius:g,innerRadius:p,label:Y.valueAtIndexOrDefault(d.label,e,i.data.labels[e])}});var v=t._model;n&&s.animateRotate||(v.startAngle=0===e?o.rotation:r.getMeta().data[e-1]._model.endAngle,v.endAngle=v.startAngle+v.circumference),t.pivot()},calculateTotal:function(){var t,e=this.getDataset(),n=this.getMeta(),r=0;return Y.each(n.data,(function(n,i){t=e.data[i],isNaN(t)||n.hidden||(r+=Math.abs(t))})),r},calculateCircumference:function(t){var e=this.getMeta().total;return e>0&&!isNaN(t)?Rt*(Math.abs(t)/e):0},getMaxBorderWidth:function(t){var e,n,r,i,a,o,s,l,u=0,c=this.chart;if(!t)for(e=0,n=c.data.datasets.length;e<n;++e)if(c.isDatasetVisible(e)){t=(r=c.getDatasetMeta(e)).data,e!==this.index&&(a=r.controller);break}if(!t)return 0;for(e=0,n=t.length;e<n;++e)i=t[e],a?(a._configure(),o=a._resolveDataElementOptions(i,e)):o=i._options,"inner"!==o.borderAlign&&(s=o.borderWidth,u=(l=o.hoverBorderWidth)>(u=s>u?s:u)?l:u);return u},setHoverStyle:function(t){var e=t._model,n=t._options,r=Y.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth},e.backgroundColor=Ft(n.hoverBackgroundColor,r(n.backgroundColor)),e.borderColor=Ft(n.hoverBorderColor,r(n.borderColor)),e.borderWidth=Ft(n.hoverBorderWidth,n.borderWidth)},_getRingWeightOffset:function(t){for(var e=0,n=0;n<t;++n)this.chart.isDatasetVisible(n)&&(e+=this._getRingWeight(n));return e},_getRingWeight:function(t){return Math.max(Ft(this.chart.data.datasets[t].weight,1),0)},_getVisibleDatasetWeightTotal:function(){return this._getRingWeightOffset(this.chart.data.datasets.length)}});j._set("horizontalBar",{hover:{mode:"index",axis:"y"},scales:{xAxes:[{type:"linear",position:"bottom"}],yAxes:[{type:"category",position:"left",offset:!0,gridLines:{offsetGridLines:!0}}]},elements:{rectangle:{borderSkipped:"left"}},tooltips:{mode:"index",axis:"y"}}),j._set("global",{datasets:{horizontalBar:{categoryPercentage:.8,barPercentage:.9}}});var Nt=Tt.extend({_getValueScaleId:function(){return this.getMeta().xAxisID},_getIndexScaleId:function(){return this.getMeta().yAxisID}}),zt=Y.valueOrDefault,Wt=Y.options.resolve,Yt=Y.canvas._isPointInArea;function Vt(t,e){var n=t&&t.options.ticks||{},r=n.reverse,i=void 0===n.min?e:0,a=void 0===n.max?e:0;return{start:r?a:i,end:r?i:a}}function Bt(t,e,n){var r=n/2,i=Vt(t,r),a=Vt(e,r);return{top:a.end,right:i.end,bottom:a.start,left:i.start}}function Ht(t){var e,n,r,i;return Y.isObject(t)?(e=t.top,n=t.right,r=t.bottom,i=t.left):e=n=r=i=t,{top:e,right:n,bottom:r,left:i}}j._set("line",{showLines:!0,spanGaps:!1,hover:{mode:"label"},scales:{xAxes:[{type:"category",id:"x-axis-0"}],yAxes:[{type:"linear",id:"y-axis-0"}]}});var Ut=nt.extend({datasetElementType:_t.Line,dataElementType:_t.Point,_datasetElementOptions:["backgroundColor","borderCapStyle","borderColor","borderDash","borderDashOffset","borderJoinStyle","borderWidth","cubicInterpolationMode","fill"],_dataElementOptions:{backgroundColor:"pointBackgroundColor",borderColor:"pointBorderColor",borderWidth:"pointBorderWidth",hitRadius:"pointHitRadius",hoverBackgroundColor:"pointHoverBackgroundColor",hoverBorderColor:"pointHoverBorderColor",hoverBorderWidth:"pointHoverBorderWidth",hoverRadius:"pointHoverRadius",pointStyle:"pointStyle",radius:"pointRadius",rotation:"pointRotation"},update:function(t){var e,n,r=this,i=r.getMeta(),a=i.dataset,o=i.data||[],s=r.chart.options,l=r._config,u=r._showLine=zt(l.showLine,s.showLines);for(r._xScale=r.getScaleForId(i.xAxisID),r._yScale=r.getScaleForId(i.yAxisID),u&&(void 0!==l.tension&&void 0===l.lineTension&&(l.lineTension=l.tension),a._scale=r._yScale,a._datasetIndex=r.index,a._children=o,a._model=r._resolveDatasetElementOptions(a),a.pivot()),e=0,n=o.length;e<n;++e)r.updateElement(o[e],e,t);for(u&&0!==a._model.tension&&r.updateBezierControlPoints(),e=0,n=o.length;e<n;++e)o[e].pivot()},updateElement:function(t,e,n){var r,i,a=this,o=a.getMeta(),s=t.custom||{},l=a.getDataset(),u=a.index,c=l.data[e],h=a._xScale,d=a._yScale,f=o.dataset._model,p=a._resolveDataElementOptions(t,e);r=h.getPixelForValue("object"==typeof c?c:NaN,e,u),i=n?d.getBasePixel():a.calculatePointY(c,e,u),t._xScale=h,t._yScale=d,t._options=p,t._datasetIndex=u,t._index=e,t._model={x:r,y:i,skip:s.skip||isNaN(r)||isNaN(i),radius:p.radius,pointStyle:p.pointStyle,rotation:p.rotation,backgroundColor:p.backgroundColor,borderColor:p.borderColor,borderWidth:p.borderWidth,tension:zt(s.tension,f?f.tension:0),steppedLine:!!f&&f.steppedLine,hitRadius:p.hitRadius}},_resolveDatasetElementOptions:function(t){var e=this,n=e._config,r=t.custom||{},i=e.chart.options,a=i.elements.line,o=nt.prototype._resolveDatasetElementOptions.apply(e,arguments);return o.spanGaps=zt(n.spanGaps,i.spanGaps),o.tension=zt(n.lineTension,a.tension),o.steppedLine=Wt([r.steppedLine,n.steppedLine,a.stepped]),o.clip=Ht(zt(n.clip,Bt(e._xScale,e._yScale,o.borderWidth))),o},calculatePointY:function(t,e,n){var r,i,a,o,s,l,u,c=this.chart,h=this._yScale,d=0,f=0;if(h.options.stacked){for(s=+h.getRightValue(t),u=(l=c._getSortedVisibleDatasetMetas()).length,r=0;r<u&&(a=l[r]).index!==n;++r)i=c.data.datasets[a.index],"line"===a.type&&a.yAxisID===h.id&&((o=+h.getRightValue(i.data[e]))<0?f+=o||0:d+=o||0);return s<0?h.getPixelForValue(f+s):h.getPixelForValue(d+s)}return h.getPixelForValue(t)},updateBezierControlPoints:function(){var t,e,n,r,i=this.chart,a=this.getMeta(),o=a.dataset._model,s=i.chartArea,l=a.data||[];function u(t,e,n){return Math.max(Math.min(t,n),e)}if(o.spanGaps&&(l=l.filter((function(t){return!t._model.skip}))),"monotone"===o.cubicInterpolationMode)Y.splineCurveMonotone(l);else for(t=0,e=l.length;t<e;++t)n=l[t]._model,r=Y.splineCurve(Y.previousItem(l,t)._model,n,Y.nextItem(l,t)._model,o.tension),n.controlPointPreviousX=r.previous.x,n.controlPointPreviousY=r.previous.y,n.controlPointNextX=r.next.x,n.controlPointNextY=r.next.y;if(i.options.elements.line.capBezierPoints)for(t=0,e=l.length;t<e;++t)n=l[t]._model,Yt(n,s)&&(t>0&&Yt(l[t-1]._model,s)&&(n.controlPointPreviousX=u(n.controlPointPreviousX,s.left,s.right),n.controlPointPreviousY=u(n.controlPointPreviousY,s.top,s.bottom)),t<l.length-1&&Yt(l[t+1]._model,s)&&(n.controlPointNextX=u(n.controlPointNextX,s.left,s.right),n.controlPointNextY=u(n.controlPointNextY,s.top,s.bottom)))},draw:function(){var t,e=this.chart,n=this.getMeta(),r=n.data||[],i=e.chartArea,a=e.canvas,o=0,s=r.length;for(this._showLine&&(t=n.dataset._model.clip,Y.canvas.clipArea(e.ctx,{left:!1===t.left?0:i.left-t.left,right:!1===t.right?a.width:i.right+t.right,top:!1===t.top?0:i.top-t.top,bottom:!1===t.bottom?a.height:i.bottom+t.bottom}),n.dataset.draw(),Y.canvas.unclipArea(e.ctx));o<s;++o)r[o].draw(i)},setHoverStyle:function(t){var e=t._model,n=t._options,r=Y.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth,radius:e.radius},e.backgroundColor=zt(n.hoverBackgroundColor,r(n.backgroundColor)),e.borderColor=zt(n.hoverBorderColor,r(n.borderColor)),e.borderWidth=zt(n.hoverBorderWidth,n.borderWidth),e.radius=zt(n.hoverRadius,n.radius)}}),Gt=Y.options.resolve;j._set("polarArea",{scale:{type:"radialLinear",angleLines:{display:!1},gridLines:{circular:!0},pointLabels:{display:!1},ticks:{beginAtZero:!0}},animation:{animateRotate:!0,animateScale:!0},startAngle:-.5*Math.PI,legendCallback:function(t){var e,n,r,i=document.createElement("ul"),a=t.data,o=a.datasets,s=a.labels;if(i.setAttribute("class",t.id+"-legend"),o.length)for(e=0,n=o[0].data.length;e<n;++e)(r=i.appendChild(document.createElement("li"))).appendChild(document.createElement("span")).style.backgroundColor=o[0].backgroundColor[e],s[e]&&r.appendChild(document.createTextNode(s[e]));return i.outerHTML},legend:{labels:{generateLabels:function(t){var e=t.data;return e.labels.length&&e.datasets.length?e.labels.map((function(n,r){var i=t.getDatasetMeta(0),a=i.controller.getStyle(r);return{text:n,fillStyle:a.backgroundColor,strokeStyle:a.borderColor,lineWidth:a.borderWidth,hidden:isNaN(e.datasets[0].data[r])||i.data[r].hidden,index:r}})):[]}},onClick:function(t,e){var n,r,i,a=e.index,o=this.chart;for(n=0,r=(o.data.datasets||[]).length;n<r;++n)(i=o.getDatasetMeta(n)).data[a].hidden=!i.data[a].hidden;o.update()}},tooltips:{callbacks:{title:function(){return""},label:function(t,e){return e.labels[t.index]+": "+t.yLabel}}}});var Kt=nt.extend({dataElementType:_t.Arc,linkScales:Y.noop,_dataElementOptions:["backgroundColor","borderColor","borderWidth","borderAlign","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth"],_getIndexScaleId:function(){return this.chart.scale.id},_getValueScaleId:function(){return this.chart.scale.id},update:function(t){var e,n,r,i=this,a=i.getDataset(),o=i.getMeta(),s=i.chart.options.startAngle||0,l=i._starts=[],u=i._angles=[],c=o.data;for(i._updateRadius(),o.count=i.countVisibleElements(),e=0,n=a.data.length;e<n;e++)l[e]=s,r=i._computeAngle(e),u[e]=r,s+=r;for(e=0,n=c.length;e<n;++e)c[e]._options=i._resolveDataElementOptions(c[e],e),i.updateElement(c[e],e,t)},_updateRadius:function(){var t=this,e=t.chart,n=e.chartArea,r=e.options,i=Math.min(n.right-n.left,n.bottom-n.top);e.outerRadius=Math.max(i/2,0),e.innerRadius=Math.max(r.cutoutPercentage?e.outerRadius/100*r.cutoutPercentage:1,0),e.radiusLength=(e.outerRadius-e.innerRadius)/e.getVisibleDatasetCount(),t.outerRadius=e.outerRadius-e.radiusLength*t.index,t.innerRadius=t.outerRadius-e.radiusLength},updateElement:function(t,e,n){var r=this,i=r.chart,a=r.getDataset(),o=i.options,s=o.animation,l=i.scale,u=i.data.labels,c=l.xCenter,h=l.yCenter,d=o.startAngle,f=t.hidden?0:l.getDistanceFromCenterForValue(a.data[e]),p=r._starts[e],g=p+(t.hidden?0:r._angles[e]),m=s.animateScale?0:l.getDistanceFromCenterForValue(a.data[e]),v=t._options||{};Y.extend(t,{_datasetIndex:r.index,_index:e,_scale:l,_model:{backgroundColor:v.backgroundColor,borderColor:v.borderColor,borderWidth:v.borderWidth,borderAlign:v.borderAlign,x:c,y:h,innerRadius:0,outerRadius:n?m:f,startAngle:n&&s.animateRotate?d:p,endAngle:n&&s.animateRotate?d:g,label:Y.valueAtIndexOrDefault(u,e,u[e])}}),t.pivot()},countVisibleElements:function(){var t=this.getDataset(),e=this.getMeta(),n=0;return Y.each(e.data,(function(e,r){isNaN(t.data[r])||e.hidden||n++})),n},setHoverStyle:function(t){var e=t._model,n=t._options,r=Y.getHoverColor,i=Y.valueOrDefault;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth},e.backgroundColor=i(n.hoverBackgroundColor,r(n.backgroundColor)),e.borderColor=i(n.hoverBorderColor,r(n.borderColor)),e.borderWidth=i(n.hoverBorderWidth,n.borderWidth)},_computeAngle:function(t){var e=this,n=this.getMeta().count,r=e.getDataset(),i=e.getMeta();if(isNaN(r.data[t])||i.data[t].hidden)return 0;var a={chart:e.chart,dataIndex:t,dataset:r,datasetIndex:e.index};return Gt([e.chart.options.elements.arc.angle,2*Math.PI/n],a,t)}});j._set("pie",Y.clone(j.doughnut)),j._set("pie",{cutoutPercentage:0});var Jt=Et,qt=Y.valueOrDefault;j._set("radar",{spanGaps:!1,scale:{type:"radialLinear"},elements:{line:{fill:"start",tension:0}}});var Zt=nt.extend({datasetElementType:_t.Line,dataElementType:_t.Point,linkScales:Y.noop,_datasetElementOptions:["backgroundColor","borderWidth","borderColor","borderCapStyle","borderDash","borderDashOffset","borderJoinStyle","fill"],_dataElementOptions:{backgroundColor:"pointBackgroundColor",borderColor:"pointBorderColor",borderWidth:"pointBorderWidth",hitRadius:"pointHitRadius",hoverBackgroundColor:"pointHoverBackgroundColor",hoverBorderColor:"pointHoverBorderColor",hoverBorderWidth:"pointHoverBorderWidth",hoverRadius:"pointHoverRadius",pointStyle:"pointStyle",radius:"pointRadius",rotation:"pointRotation"},_getIndexScaleId:function(){return this.chart.scale.id},_getValueScaleId:function(){return this.chart.scale.id},update:function(t){var e,n,r=this,i=r.getMeta(),a=i.dataset,o=i.data||[],s=r.chart.scale,l=r._config;for(void 0!==l.tension&&void 0===l.lineTension&&(l.lineTension=l.tension),a._scale=s,a._datasetIndex=r.index,a._children=o,a._loop=!0,a._model=r._resolveDatasetElementOptions(a),a.pivot(),e=0,n=o.length;e<n;++e)r.updateElement(o[e],e,t);for(r.updateBezierControlPoints(),e=0,n=o.length;e<n;++e)o[e].pivot()},updateElement:function(t,e,n){var r=this,i=t.custom||{},a=r.getDataset(),o=r.chart.scale,s=o.getPointPositionForValue(e,a.data[e]),l=r._resolveDataElementOptions(t,e),u=r.getMeta().dataset._model,c=n?o.xCenter:s.x,h=n?o.yCenter:s.y;t._scale=o,t._options=l,t._datasetIndex=r.index,t._index=e,t._model={x:c,y:h,skip:i.skip||isNaN(c)||isNaN(h),radius:l.radius,pointStyle:l.pointStyle,rotation:l.rotation,backgroundColor:l.backgroundColor,borderColor:l.borderColor,borderWidth:l.borderWidth,tension:qt(i.tension,u?u.tension:0),hitRadius:l.hitRadius}},_resolveDatasetElementOptions:function(){var t=this,e=t._config,n=t.chart.options,r=nt.prototype._resolveDatasetElementOptions.apply(t,arguments);return r.spanGaps=qt(e.spanGaps,n.spanGaps),r.tension=qt(e.lineTension,n.elements.line.tension),r},updateBezierControlPoints:function(){var t,e,n,r,i=this.getMeta(),a=this.chart.chartArea,o=i.data||[];function s(t,e,n){return Math.max(Math.min(t,n),e)}for(i.dataset._model.spanGaps&&(o=o.filter((function(t){return!t._model.skip}))),t=0,e=o.length;t<e;++t)n=o[t]._model,r=Y.splineCurve(Y.previousItem(o,t,!0)._model,n,Y.nextItem(o,t,!0)._model,n.tension),n.controlPointPreviousX=s(r.previous.x,a.left,a.right),n.controlPointPreviousY=s(r.previous.y,a.top,a.bottom),n.controlPointNextX=s(r.next.x,a.left,a.right),n.controlPointNextY=s(r.next.y,a.top,a.bottom)},setHoverStyle:function(t){var e=t._model,n=t._options,r=Y.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth,radius:e.radius},e.backgroundColor=qt(n.hoverBackgroundColor,r(n.backgroundColor)),e.borderColor=qt(n.hoverBorderColor,r(n.borderColor)),e.borderWidth=qt(n.hoverBorderWidth,n.borderWidth),e.radius=qt(n.hoverRadius,n.radius)}});j._set("scatter",{hover:{mode:"single"},scales:{xAxes:[{id:"x-axis-1",type:"linear",position:"bottom"}],yAxes:[{id:"y-axis-1",type:"linear",position:"left"}]},tooltips:{callbacks:{title:function(){return""},label:function(t){return"("+t.xLabel+", "+t.yLabel+")"}}}}),j._set("global",{datasets:{scatter:{showLine:!1}}});var Xt={bar:Tt,bubble:It,doughnut:Et,horizontalBar:Nt,line:Ut,polarArea:Kt,pie:Jt,radar:Zt,scatter:Ut};function $t(t,e){return t.native?{x:t.x,y:t.y}:Y.getRelativePosition(t,e)}function Qt(t,e){var n,r,i,a,o,s,l=t._getSortedVisibleDatasetMetas();for(r=0,a=l.length;r<a;++r)for(i=0,o=(n=l[r].data).length;i<o;++i)(s=n[i])._view.skip||e(s)}function te(t,e){var n=[];return Qt(t,(function(t){t.inRange(e.x,e.y)&&n.push(t)})),n}function ee(t,e,n,r){var i=Number.POSITIVE_INFINITY,a=[];return Qt(t,(function(t){if(!n||t.inRange(e.x,e.y)){var o=t.getCenterPoint(),s=r(e,o);s<i?(a=[t],i=s):s===i&&a.push(t)}})),a}function ne(t){var e=-1!==t.indexOf("x"),n=-1!==t.indexOf("y");return function(t,r){var i=e?Math.abs(t.x-r.x):0,a=n?Math.abs(t.y-r.y):0;return Math.sqrt(Math.pow(i,2)+Math.pow(a,2))}}function re(t,e,n){var r=$t(e,t);n.axis=n.axis||"x";var i=ne(n.axis),a=n.intersect?te(t,r):ee(t,r,!1,i),o=[];return a.length?(t._getSortedVisibleDatasetMetas().forEach((function(t){var e=t.data[a[0]._index];e&&!e._view.skip&&o.push(e)})),o):[]}var ie={modes:{single:function(t,e){var n=$t(e,t),r=[];return Qt(t,(function(t){if(t.inRange(n.x,n.y))return r.push(t),r})),r.slice(0,1)},label:re,index:re,dataset:function(t,e,n){var r=$t(e,t);n.axis=n.axis||"xy";var i=ne(n.axis),a=n.intersect?te(t,r):ee(t,r,!1,i);return a.length>0&&(a=t.getDatasetMeta(a[0]._datasetIndex).data),a},"x-axis":function(t,e){return re(t,e,{intersect:!1})},point:function(t,e){return te(t,$t(e,t))},nearest:function(t,e,n){var r=$t(e,t);n.axis=n.axis||"xy";var i=ne(n.axis);return ee(t,r,n.intersect,i)},x:function(t,e,n){var r=$t(e,t),i=[],a=!1;return Qt(t,(function(t){t.inXRange(r.x)&&i.push(t),t.inRange(r.x,r.y)&&(a=!0)})),n.intersect&&!a&&(i=[]),i},y:function(t,e,n){var r=$t(e,t),i=[],a=!1;return Qt(t,(function(t){t.inYRange(r.y)&&i.push(t),t.inRange(r.x,r.y)&&(a=!0)})),n.intersect&&!a&&(i=[]),i}}},ae=Y.extend;function oe(t,e){return Y.where(t,(function(t){return t.pos===e}))}function se(t,e){return t.sort((function(t,n){var r=e?n:t,i=e?t:n;return r.weight===i.weight?r.index-i.index:r.weight-i.weight}))}function le(t,e,n,r){return Math.max(t[n],e[n])+Math.max(t[r],e[r])}function ue(t,e,n){var r,i,a=n.box,o=t.maxPadding;if(n.size&&(t[n.pos]-=n.size),n.size=n.horizontal?a.height:a.width,t[n.pos]+=n.size,a.getPadding){var s=a.getPadding();o.top=Math.max(o.top,s.top),o.left=Math.max(o.left,s.left),o.bottom=Math.max(o.bottom,s.bottom),o.right=Math.max(o.right,s.right)}if(r=e.outerWidth-le(o,t,"left","right"),i=e.outerHeight-le(o,t,"top","bottom"),r!==t.w||i!==t.h)return t.w=r,t.h=i,n.horizontal?r!==t.w:i!==t.h}function ce(t,e){var n=e.maxPadding;function r(t){var r={left:0,top:0,right:0,bottom:0};return t.forEach((function(t){r[t]=Math.max(e[t],n[t])})),r}return r(t?["left","right"]:["top","bottom"])}function he(t,e,n){var r,i,a,o,s,l,u=[];for(r=0,i=t.length;r<i;++r)(o=(a=t[r]).box).update(a.width||e.w,a.height||e.h,ce(a.horizontal,e)),ue(e,n,a)&&(l=!0,u.length&&(s=!0)),o.fullWidth||u.push(a);return s&&he(u,e,n)||l}function de(t,e,n){var r,i,a,o,s=n.padding,l=e.x,u=e.y;for(r=0,i=t.length;r<i;++r)o=(a=t[r]).box,a.horizontal?(o.left=o.fullWidth?s.left:e.left,o.right=o.fullWidth?n.outerWidth-s.right:e.left+e.w,o.top=u,o.bottom=u+o.height,o.width=o.right-o.left,u=o.bottom):(o.left=l,o.right=l+o.width,o.top=e.top,o.bottom=e.top+e.h,o.height=o.bottom-o.top,l=o.right);e.x=l,e.y=u}j._set("global",{layout:{padding:{top:0,right:0,bottom:0,left:0}}});var fe,pe={defaults:{},addBox:function(t,e){t.boxes||(t.boxes=[]),e.fullWidth=e.fullWidth||!1,e.position=e.position||"top",e.weight=e.weight||0,e._layers=e._layers||function(){return[{z:0,draw:function(){e.draw.apply(e,arguments)}}]},t.boxes.push(e)},removeBox:function(t,e){var n=t.boxes?t.boxes.indexOf(e):-1;-1!==n&&t.boxes.splice(n,1)},configure:function(t,e,n){for(var r,i=["fullWidth","position","weight"],a=i.length,o=0;o<a;++o)r=i[o],n.hasOwnProperty(r)&&(e[r]=n[r])},update:function(t,e,n){if(t){var r=t.options.layout||{},i=Y.options.toPadding(r.padding),a=e-i.width,o=n-i.height,s=function(t){var e=function(t){var e,n,r,i=[];for(e=0,n=(t||[]).length;e<n;++e)r=t[e],i.push({index:e,box:r,pos:r.position,horizontal:r.isHorizontal(),weight:r.weight});return i}(t),n=se(oe(e,"left"),!0),r=se(oe(e,"right")),i=se(oe(e,"top"),!0),a=se(oe(e,"bottom"));return{leftAndTop:n.concat(i),rightAndBottom:r.concat(a),chartArea:oe(e,"chartArea"),vertical:n.concat(r),horizontal:i.concat(a)}}(t.boxes),l=s.vertical,u=s.horizontal,c=Object.freeze({outerWidth:e,outerHeight:n,padding:i,availableWidth:a,vBoxMaxWidth:a/2/l.length,hBoxMaxHeight:o/2}),h=ae({maxPadding:ae({},i),w:a,h:o,x:i.left,y:i.top},i);!function(t,e){var n,r,i;for(n=0,r=t.length;n<r;++n)(i=t[n]).width=i.horizontal?i.box.fullWidth&&e.availableWidth:e.vBoxMaxWidth,i.height=i.horizontal&&e.hBoxMaxHeight}(l.concat(u),c),he(l,h,c),he(u,h,c)&&he(l,h,c),function(t){var e=t.maxPadding;function n(n){var r=Math.max(e[n]-t[n],0);return t[n]+=r,r}t.y+=n("top"),t.x+=n("left"),n("right"),n("bottom")}(h),de(s.leftAndTop,h,c),h.x+=h.w,h.y+=h.h,de(s.rightAndBottom,h,c),t.chartArea={left:h.left,top:h.top,right:h.left+h.w,bottom:h.top+h.h},Y.each(s.chartArea,(function(e){var n=e.box;ae(n,t.chartArea),n.update(h.w,h.h)}))}}},ge=(fe=Object.freeze({__proto__:null,default:"/*\n * DOM element rendering detection\n * https://davidwalsh.name/detect-node-insertion\n */\n@keyframes chartjs-render-animation {\n\tfrom { opacity: 0.99; }\n\tto { opacity: 1; }\n}\n\n.chartjs-render-monitor {\n\tanimation: chartjs-render-animation 0.001s;\n}\n\n/*\n * DOM element resizing detection\n * https://github.com/marcj/css-element-queries\n */\n.chartjs-size-monitor,\n.chartjs-size-monitor-expand,\n.chartjs-size-monitor-shrink {\n\tposition: absolute;\n\tdirection: ltr;\n\tleft: 0;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\toverflow: hidden;\n\tpointer-events: none;\n\tvisibility: hidden;\n\tz-index: -1;\n}\n\n.chartjs-size-monitor-expand > div {\n\tposition: absolute;\n\twidth: 1000000px;\n\theight: 1000000px;\n\tleft: 0;\n\ttop: 0;\n}\n\n.chartjs-size-monitor-shrink > div {\n\tposition: absolute;\n\twidth: 200%;\n\theight: 200%;\n\tleft: 0;\n\ttop: 0;\n}\n"}))&&fe.default||fe,me=["animationstart","webkitAnimationStart"],ve={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"};function be(t,e){var n=Y.getStyle(t,e),r=n&&n.match(/^(\d+)(\.\d+)?px$/);return r?Number(r[1]):void 0}var ye=!!function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("e",null,e)}catch(n){}return t}()&&{passive:!0};function xe(t,e,n){t.addEventListener(e,n,ye)}function _e(t,e,n){t.removeEventListener(e,n,ye)}function we(t,e,n,r,i){return{type:t,chart:e,native:i||null,x:void 0!==n?n:null,y:void 0!==r?r:null}}function ke(t){var e=document.createElement("div");return e.className=t||"",e}function Me(t,e,n){var r,i,a,o,s=t.$chartjs||(t.$chartjs={}),l=s.resizer=function(t){var e=ke("chartjs-size-monitor"),n=ke("chartjs-size-monitor-expand"),r=ke("chartjs-size-monitor-shrink");n.appendChild(ke()),r.appendChild(ke()),e.appendChild(n),e.appendChild(r),e._reset=function(){n.scrollLeft=1e6,n.scrollTop=1e6,r.scrollLeft=1e6,r.scrollTop=1e6};var i=function(){e._reset(),t()};return xe(n,"scroll",i.bind(n,"expand")),xe(r,"scroll",i.bind(r,"shrink")),e}((r=function(){if(s.resizer){var r=n.options.maintainAspectRatio&&t.parentNode,i=r?r.clientWidth:0;e(we("resize",n)),r&&r.clientWidth<i&&n.canvas&&e(we("resize",n))}},a=!1,o=[],function(){o=Array.prototype.slice.call(arguments),i=i||this,a||(a=!0,Y.requestAnimFrame.call(window,(function(){a=!1,r.apply(i,o)})))}));!function(t,e){var n=t.$chartjs||(t.$chartjs={}),r=n.renderProxy=function(t){"chartjs-render-animation"===t.animationName&&e()};Y.each(me,(function(e){xe(t,e,r)})),n.reflow=!!t.offsetParent,t.classList.add("chartjs-render-monitor")}(t,(function(){if(s.resizer){var e=t.parentNode;e&&e!==l.parentNode&&e.insertBefore(l,e.firstChild),l._reset()}}))}function Se(t){var e=t.$chartjs||{},n=e.resizer;delete e.resizer,function(t){var e=t.$chartjs||{},n=e.renderProxy;n&&(Y.each(me,(function(e){_e(t,e,n)})),delete e.renderProxy),t.classList.remove("chartjs-render-monitor")}(t),n&&n.parentNode&&n.parentNode.removeChild(n)}var De={disableCSSInjection:!1,_enabled:"undefined"!=typeof window&&"undefined"!=typeof document,_ensureLoaded:function(t){if(!this.disableCSSInjection){var e=t.getRootNode?t.getRootNode():document;!function(t,e){var n=t.$chartjs||(t.$chartjs={});if(!n.containsStyles){n.containsStyles=!0,e="/* Chart.js */\n"+e;var r=document.createElement("style");r.setAttribute("type","text/css"),r.appendChild(document.createTextNode(e)),t.appendChild(r)}}(e.host?e:document.head,ge)}},acquireContext:function(t,e){"string"==typeof t?t=document.getElementById(t):t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas);var n=t&&t.getContext&&t.getContext("2d");return n&&n.canvas===t?(this._ensureLoaded(t),function(t,e){var n=t.style,r=t.getAttribute("height"),i=t.getAttribute("width");if(t.$chartjs={initial:{height:r,width:i,style:{display:n.display,height:n.height,width:n.width}}},n.display=n.display||"block",null===i||""===i){var a=be(t,"width");void 0!==a&&(t.width=a)}if(null===r||""===r)if(""===t.style.height)t.height=t.width/(e.options.aspectRatio||2);else{var o=be(t,"height");void 0!==a&&(t.height=o)}}(t,e),n):null},releaseContext:function(t){var e=t.canvas;if(e.$chartjs){var n=e.$chartjs.initial;["height","width"].forEach((function(t){var r=n[t];Y.isNullOrUndef(r)?e.removeAttribute(t):e.setAttribute(t,r)})),Y.each(n.style||{},(function(t,n){e.style[n]=t})),e.width=e.width,delete e.$chartjs}},addEventListener:function(t,e,n){var r=t.canvas;if("resize"!==e){var i=n.$chartjs||(n.$chartjs={});xe(r,e,(i.proxies||(i.proxies={}))[t.id+"_"+e]=function(e){n(function(t,e){var n=ve[t.type]||t.type,r=Y.getRelativePosition(t,e);return we(n,e,r.x,r.y,t)}(e,t))})}else Me(r,n,t)},removeEventListener:function(t,e,n){var r=t.canvas;if("resize"!==e){var i=((n.$chartjs||{}).proxies||{})[t.id+"_"+e];i&&_e(r,e,i)}else Se(r)}};Y.addEvent=xe,Y.removeEvent=_e;var Ce=De._enabled?De:{acquireContext:function(t){return t&&t.canvas&&(t=t.canvas),t&&t.getContext("2d")||null}},Oe=Y.extend({initialize:function(){},acquireContext:function(){},releaseContext:function(){},addEventListener:function(){},removeEventListener:function(){}},Ce);j._set("global",{plugins:{}});var Te={_plugins:[],_cacheId:0,register:function(t){var e=this._plugins;[].concat(t).forEach((function(t){-1===e.indexOf(t)&&e.push(t)})),this._cacheId++},unregister:function(t){var e=this._plugins;[].concat(t).forEach((function(t){var n=e.indexOf(t);-1!==n&&e.splice(n,1)})),this._cacheId++},clear:function(){this._plugins=[],this._cacheId++},count:function(){return this._plugins.length},getAll:function(){return this._plugins},notify:function(t,e,n){var r,i,a,o,s,l=this.descriptors(t),u=l.length;for(r=0;r<u;++r)if("function"==typeof(s=(a=(i=l[r]).plugin)[e])&&((o=[t].concat(n||[])).push(i.options),!1===s.apply(a,o)))return!1;return!0},descriptors:function(t){var e=t.$plugins||(t.$plugins={});if(e.id===this._cacheId)return e.descriptors;var n=[],r=[],i=t&&t.config||{},a=i.options&&i.options.plugins||{};return this._plugins.concat(i.plugins||[]).forEach((function(t){if(-1===n.indexOf(t)){var e=t.id,i=a[e];!1!==i&&(!0===i&&(i=Y.clone(j.global.plugins[e])),n.push(t),r.push({plugin:t,options:i||{}}))}})),e.descriptors=r,e.id=this._cacheId,r},_invalidate:function(t){delete t.$plugins}},Ae={constructors:{},defaults:{},registerScaleType:function(t,e,n){this.constructors[t]=e,this.defaults[t]=Y.clone(n)},getScaleConstructor:function(t){return this.constructors.hasOwnProperty(t)?this.constructors[t]:void 0},getScaleDefaults:function(t){return this.defaults.hasOwnProperty(t)?Y.merge({},[j.scale,this.defaults[t]]):{}},updateScaleDefaults:function(t,e){this.defaults.hasOwnProperty(t)&&(this.defaults[t]=Y.extend(this.defaults[t],e))},addScalesToLayout:function(t){Y.each(t.scales,(function(e){e.fullWidth=e.options.fullWidth,e.position=e.options.position,e.weight=e.options.weight,pe.addBox(t,e)}))}},Pe=Y.valueOrDefault,Ie=Y.rtl.getRtlAdapter;j._set("global",{tooltips:{enabled:!0,custom:null,mode:"nearest",position:"average",intersect:!0,backgroundColor:"rgba(0,0,0,0.8)",titleFontStyle:"bold",titleSpacing:2,titleMarginBottom:6,titleFontColor:"#fff",titleAlign:"left",bodySpacing:2,bodyFontColor:"#fff",bodyAlign:"left",footerFontStyle:"bold",footerSpacing:2,footerMarginTop:6,footerFontColor:"#fff",footerAlign:"left",yPadding:6,xPadding:6,caretPadding:2,caretSize:5,cornerRadius:6,multiKeyBackground:"#fff",displayColors:!0,borderColor:"rgba(0,0,0,0)",borderWidth:0,callbacks:{beforeTitle:Y.noop,title:function(t,e){var n="",r=e.labels,i=r?r.length:0;if(t.length>0){var a=t[0];a.label?n=a.label:a.xLabel?n=a.xLabel:i>0&&a.index<i&&(n=r[a.index])}return n},afterTitle:Y.noop,beforeBody:Y.noop,beforeLabel:Y.noop,label:function(t,e){var n=e.datasets[t.datasetIndex].label||"";return n&&(n+=": "),Y.isNullOrUndef(t.value)?n+=t.yLabel:n+=t.value,n},labelColor:function(t,e){var n=e.getDatasetMeta(t.datasetIndex).data[t.index]._view;return{borderColor:n.borderColor,backgroundColor:n.backgroundColor}},labelTextColor:function(){return this._options.bodyFontColor},afterLabel:Y.noop,afterBody:Y.noop,beforeFooter:Y.noop,footer:Y.noop,afterFooter:Y.noop}}});var Fe={average:function(t){if(!t.length)return!1;var e,n,r=0,i=0,a=0;for(e=0,n=t.length;e<n;++e){var o=t[e];if(o&&o.hasValue()){var s=o.tooltipPosition();r+=s.x,i+=s.y,++a}}return{x:r/a,y:i/a}},nearest:function(t,e){var n,r,i,a=e.x,o=e.y,s=Number.POSITIVE_INFINITY;for(n=0,r=t.length;n<r;++n){var l=t[n];if(l&&l.hasValue()){var u=l.getCenterPoint(),c=Y.distanceBetweenPoints(e,u);c<s&&(s=c,i=l)}}if(i){var h=i.tooltipPosition();a=h.x,o=h.y}return{x:a,y:o}}};function Le(t,e){return e&&(Y.isArray(e)?Array.prototype.push.apply(t,e):t.push(e)),t}function Re(t){return("string"==typeof t||t instanceof String)&&t.indexOf("\n")>-1?t.split("\n"):t}function je(t){var e=j.global;return{xPadding:t.xPadding,yPadding:t.yPadding,xAlign:t.xAlign,yAlign:t.yAlign,rtl:t.rtl,textDirection:t.textDirection,bodyFontColor:t.bodyFontColor,_bodyFontFamily:Pe(t.bodyFontFamily,e.defaultFontFamily),_bodyFontStyle:Pe(t.bodyFontStyle,e.defaultFontStyle),_bodyAlign:t.bodyAlign,bodyFontSize:Pe(t.bodyFontSize,e.defaultFontSize),bodySpacing:t.bodySpacing,titleFontColor:t.titleFontColor,_titleFontFamily:Pe(t.titleFontFamily,e.defaultFontFamily),_titleFontStyle:Pe(t.titleFontStyle,e.defaultFontStyle),titleFontSize:Pe(t.titleFontSize,e.defaultFontSize),_titleAlign:t.titleAlign,titleSpacing:t.titleSpacing,titleMarginBottom:t.titleMarginBottom,footerFontColor:t.footerFontColor,_footerFontFamily:Pe(t.footerFontFamily,e.defaultFontFamily),_footerFontStyle:Pe(t.footerFontStyle,e.defaultFontStyle),footerFontSize:Pe(t.footerFontSize,e.defaultFontSize),_footerAlign:t.footerAlign,footerSpacing:t.footerSpacing,footerMarginTop:t.footerMarginTop,caretSize:t.caretSize,cornerRadius:t.cornerRadius,backgroundColor:t.backgroundColor,opacity:0,legendColorBackground:t.multiKeyBackground,displayColors:t.displayColors,borderColor:t.borderColor,borderWidth:t.borderWidth}}function Ee(t,e){return"center"===e?t.x+t.width/2:"right"===e?t.x+t.width-t.xPadding:t.x+t.xPadding}function Ne(t){return Le([],Re(t))}var ze=J.extend({initialize:function(){this._model=je(this._options),this._lastActive=[]},getTitle:function(){var t=this,e=t._options,n=e.callbacks,r=n.beforeTitle.apply(t,arguments),i=n.title.apply(t,arguments),a=n.afterTitle.apply(t,arguments),o=[];return o=Le(o,Re(r)),o=Le(o,Re(i)),o=Le(o,Re(a))},getBeforeBody:function(){return Ne(this._options.callbacks.beforeBody.apply(this,arguments))},getBody:function(t,e){var n=this,r=n._options.callbacks,i=[];return Y.each(t,(function(t){var a={before:[],lines:[],after:[]};Le(a.before,Re(r.beforeLabel.call(n,t,e))),Le(a.lines,r.label.call(n,t,e)),Le(a.after,Re(r.afterLabel.call(n,t,e))),i.push(a)})),i},getAfterBody:function(){return Ne(this._options.callbacks.afterBody.apply(this,arguments))},getFooter:function(){var t=this,e=t._options.callbacks,n=e.beforeFooter.apply(t,arguments),r=e.footer.apply(t,arguments),i=e.afterFooter.apply(t,arguments),a=[];return a=Le(a,Re(n)),a=Le(a,Re(r)),a=Le(a,Re(i))},update:function(t){var e,n,r,i,a,o,s,l,u,c,h=this,d=h._options,f=h._model,p=h._model=je(d),g=h._active,m=h._data,v={xAlign:f.xAlign,yAlign:f.yAlign},b={x:f.x,y:f.y},y={width:f.width,height:f.height},x={x:f.caretX,y:f.caretY};if(g.length){p.opacity=1;var _=[],w=[];x=Fe[d.position].call(h,g,h._eventPosition);var k=[];for(e=0,n=g.length;e<n;++e)k.push((r=g[e],i=void 0,a=void 0,o=void 0,s=void 0,l=void 0,u=void 0,c=void 0,i=r._xScale,a=r._yScale||r._scale,o=r._index,s=r._datasetIndex,l=r._chart.getDatasetMeta(s).controller,u=l._getIndexScale(),c=l._getValueScale(),{xLabel:i?i.getLabelForIndex(o,s):"",yLabel:a?a.getLabelForIndex(o,s):"",label:u?""+u.getLabelForIndex(o,s):"",value:c?""+c.getLabelForIndex(o,s):"",index:o,datasetIndex:s,x:r._model.x,y:r._model.y}));d.filter&&(k=k.filter((function(t){return d.filter(t,m)}))),d.itemSort&&(k=k.sort((function(t,e){return d.itemSort(t,e,m)}))),Y.each(k,(function(t){_.push(d.callbacks.labelColor.call(h,t,h._chart)),w.push(d.callbacks.labelTextColor.call(h,t,h._chart))})),p.title=h.getTitle(k,m),p.beforeBody=h.getBeforeBody(k,m),p.body=h.getBody(k,m),p.afterBody=h.getAfterBody(k,m),p.footer=h.getFooter(k,m),p.x=x.x,p.y=x.y,p.caretPadding=d.caretPadding,p.labelColors=_,p.labelTextColors=w,p.dataPoints=k,y=function(t,e){var n=t._chart.ctx,r=2*e.yPadding,i=0,a=e.body,o=a.reduce((function(t,e){return t+e.before.length+e.lines.length+e.after.length}),0);o+=e.beforeBody.length+e.afterBody.length;var s=e.title.length,l=e.footer.length,u=e.titleFontSize,c=e.bodyFontSize,h=e.footerFontSize;r+=s*u,r+=s?(s-1)*e.titleSpacing:0,r+=s?e.titleMarginBottom:0,r+=o*c,r+=o?(o-1)*e.bodySpacing:0,r+=l?e.footerMarginTop:0,r+=l*h,r+=l?(l-1)*e.footerSpacing:0;var d=0,f=function(t){i=Math.max(i,n.measureText(t).width+d)};return n.font=Y.fontString(u,e._titleFontStyle,e._titleFontFamily),Y.each(e.title,f),n.font=Y.fontString(c,e._bodyFontStyle,e._bodyFontFamily),Y.each(e.beforeBody.concat(e.afterBody),f),d=e.displayColors?c+2:0,Y.each(a,(function(t){Y.each(t.before,f),Y.each(t.lines,f),Y.each(t.after,f)})),d=0,n.font=Y.fontString(h,e._footerFontStyle,e._footerFontFamily),Y.each(e.footer,f),{width:i+=2*e.xPadding,height:r}}(this,p),b=function(t,e,n,r){var i=t.x,a=t.y,o=t.caretSize,s=t.caretPadding,l=t.cornerRadius,u=n.xAlign,c=n.yAlign,h=o+s,d=l+s;return"right"===u?i-=e.width:"center"===u&&((i-=e.width/2)+e.width>r.width&&(i=r.width-e.width),i<0&&(i=0)),"top"===c?a+=h:a-="bottom"===c?e.height+h:e.height/2,"center"===c?"left"===u?i+=h:"right"===u&&(i-=h):"left"===u?i-=d:"right"===u&&(i+=d),{x:i,y:a}}(p,y,v=function(t,e){var n,r,i,a,o,s=t._model,l=t._chart,u=t._chart.chartArea,c="center",h="center";s.y<e.height?h="top":s.y>l.height-e.height&&(h="bottom");var d=(u.left+u.right)/2,f=(u.top+u.bottom)/2;"center"===h?(n=function(t){return t<=d},r=function(t){return t>d}):(n=function(t){return t<=e.width/2},r=function(t){return t>=l.width-e.width/2}),i=function(t){return t+e.width+s.caretSize+s.caretPadding>l.width},a=function(t){return t-e.width-s.caretSize-s.caretPadding<0},o=function(t){return t<=f?"top":"bottom"},n(s.x)?(c="left",i(s.x)&&(c="center",h=o(s.y))):r(s.x)&&(c="right",a(s.x)&&(c="center",h=o(s.y)));var p=t._options;return{xAlign:p.xAlign?p.xAlign:c,yAlign:p.yAlign?p.yAlign:h}}(this,y),h._chart)}else p.opacity=0;return p.xAlign=v.xAlign,p.yAlign=v.yAlign,p.x=b.x,p.y=b.y,p.width=y.width,p.height=y.height,p.caretX=x.x,p.caretY=x.y,h._model=p,t&&d.custom&&d.custom.call(h,p),h},drawCaret:function(t,e){var n=this._chart.ctx,r=this._view,i=this.getCaretPosition(t,e,r);n.lineTo(i.x1,i.y1),n.lineTo(i.x2,i.y2),n.lineTo(i.x3,i.y3)},getCaretPosition:function(t,e,n){var r,i,a,o,s,l,u=n.caretSize,c=n.cornerRadius,h=n.xAlign,d=n.yAlign,f=t.x,p=t.y,g=e.width,m=e.height;if("center"===d)s=p+m/2,"left"===h?(i=(r=f)-u,a=r,o=s+u,l=s-u):(i=(r=f+g)+u,a=r,o=s-u,l=s+u);else if("left"===h?(r=(i=f+c+u)-u,a=i+u):"right"===h?(r=(i=f+g-c-u)-u,a=i+u):(r=(i=n.caretX)-u,a=i+u),"top"===d)s=(o=p)-u,l=o;else{s=(o=p+m)+u,l=o;var v=a;a=r,r=v}return{x1:r,x2:i,x3:a,y1:o,y2:s,y3:l}},drawTitle:function(t,e,n){var r,i,a,o=e.title,s=o.length;if(s){var l=Ie(e.rtl,e.x,e.width);for(t.x=Ee(e,e._titleAlign),n.textAlign=l.textAlign(e._titleAlign),n.textBaseline="middle",r=e.titleFontSize,i=e.titleSpacing,n.fillStyle=e.titleFontColor,n.font=Y.fontString(r,e._titleFontStyle,e._titleFontFamily),a=0;a<s;++a)n.fillText(o[a],l.x(t.x),t.y+r/2),t.y+=r+i,a+1===s&&(t.y+=e.titleMarginBottom-i)}},drawBody:function(t,e,n){var r,i,a,o,s,l,u,c,h=e.bodyFontSize,d=e.bodySpacing,f=e._bodyAlign,p=e.body,g=e.displayColors,m=0,v=g?Ee(e,"left"):0,b=Ie(e.rtl,e.x,e.width),y=function(e){n.fillText(e,b.x(t.x+m),t.y+h/2),t.y+=h+d},x=b.textAlign(f);for(n.textAlign=f,n.textBaseline="middle",n.font=Y.fontString(h,e._bodyFontStyle,e._bodyFontFamily),t.x=Ee(e,x),n.fillStyle=e.bodyFontColor,Y.each(e.beforeBody,y),m=g&&"right"!==x?"center"===f?h/2+1:h+2:0,s=0,u=p.length;s<u;++s){for(r=p[s],i=e.labelTextColors[s],a=e.labelColors[s],n.fillStyle=i,Y.each(r.before,y),l=0,c=(o=r.lines).length;l<c;++l){if(g){var _=b.x(v);n.fillStyle=e.legendColorBackground,n.fillRect(b.leftForLtr(_,h),t.y,h,h),n.lineWidth=1,n.strokeStyle=a.borderColor,n.strokeRect(b.leftForLtr(_,h),t.y,h,h),n.fillStyle=a.backgroundColor,n.fillRect(b.leftForLtr(b.xPlus(_,1),h-2),t.y+1,h-2,h-2),n.fillStyle=i}y(o[l])}Y.each(r.after,y)}m=0,Y.each(e.afterBody,y),t.y-=d},drawFooter:function(t,e,n){var r,i,a=e.footer,o=a.length;if(o){var s=Ie(e.rtl,e.x,e.width);for(t.x=Ee(e,e._footerAlign),t.y+=e.footerMarginTop,n.textAlign=s.textAlign(e._footerAlign),n.textBaseline="middle",r=e.footerFontSize,n.fillStyle=e.footerFontColor,n.font=Y.fontString(r,e._footerFontStyle,e._footerFontFamily),i=0;i<o;++i)n.fillText(a[i],s.x(t.x),t.y+r/2),t.y+=r+e.footerSpacing}},drawBackground:function(t,e,n,r){n.fillStyle=e.backgroundColor,n.strokeStyle=e.borderColor,n.lineWidth=e.borderWidth;var i=e.xAlign,a=e.yAlign,o=t.x,s=t.y,l=r.width,u=r.height,c=e.cornerRadius;n.beginPath(),n.moveTo(o+c,s),"top"===a&&this.drawCaret(t,r),n.lineTo(o+l-c,s),n.quadraticCurveTo(o+l,s,o+l,s+c),"center"===a&&"right"===i&&this.drawCaret(t,r),n.lineTo(o+l,s+u-c),n.quadraticCurveTo(o+l,s+u,o+l-c,s+u),"bottom"===a&&this.drawCaret(t,r),n.lineTo(o+c,s+u),n.quadraticCurveTo(o,s+u,o,s+u-c),"center"===a&&"left"===i&&this.drawCaret(t,r),n.lineTo(o,s+c),n.quadraticCurveTo(o,s,o+c,s),n.closePath(),n.fill(),e.borderWidth>0&&n.stroke()},draw:function(){var t=this._chart.ctx,e=this._view;if(0!==e.opacity){var n={width:e.width,height:e.height},r={x:e.x,y:e.y},i=Math.abs(e.opacity<.001)?0:e.opacity,a=e.title.length||e.beforeBody.length||e.body.length||e.afterBody.length||e.footer.length;this._options.enabled&&a&&(t.save(),t.globalAlpha=i,this.drawBackground(r,e,t,n),r.y+=e.yPadding,Y.rtl.overrideTextDirection(t,e.textDirection),this.drawTitle(r,e,t),this.drawBody(r,e,t),this.drawFooter(r,e,t),Y.rtl.restoreTextDirection(t,e.textDirection),t.restore())}},handleEvent:function(t){var e,n=this,r=n._options;return n._lastActive=n._lastActive||[],"mouseout"===t.type?n._active=[]:(n._active=n._chart.getElementsAtEventForMode(t,r.mode,r),r.reverse&&n._active.reverse()),(e=!Y.arrayEquals(n._active,n._lastActive))&&(n._lastActive=n._active,(r.enabled||r.custom)&&(n._eventPosition={x:t.x,y:t.y},n.update(!0),n.pivot())),e}}),We=Fe,Ye=ze;Ye.positioners=We;var Ve=Y.valueOrDefault;function Be(){return Y.merge({},[].slice.call(arguments),{merger:function(t,e,n,r){if("xAxes"===t||"yAxes"===t){var i,a,o,s=n[t].length;for(e[t]||(e[t]=[]),i=0;i<s;++i)o=n[t][i],a=Ve(o.type,"xAxes"===t?"category":"linear"),i>=e[t].length&&e[t].push({}),!e[t][i].type||o.type&&o.type!==e[t][i].type?Y.merge(e[t][i],[Ae.getScaleDefaults(a),o]):Y.merge(e[t][i],o)}else Y._merger(t,e,n,r)}})}function He(){return Y.merge({},[].slice.call(arguments),{merger:function(t,e,n,r){var i=e[t]||{},a=n[t];"scales"===t?e[t]=Be(i,a):"scale"===t?e[t]=Y.merge(i,[Ae.getScaleDefaults(a.type),a]):Y._merger(t,e,n,r)}})}function Ue(t){var e=t.options;Y.each(t.scales,(function(e){pe.removeBox(t,e)})),e=He(j.global,j[t.config.type],e),t.options=t.config.options=e,t.ensureScalesHaveIDs(),t.buildOrUpdateScales(),t.tooltip._options=e.tooltips,t.tooltip.initialize()}function Ge(t,e,n){var r,i=function(t){return t.id===r};do{r=e+n++}while(Y.findIndex(t,i)>=0);return r}function Ke(t){return"top"===t||"bottom"===t}function Je(t,e){return function(n,r){return n[t]===r[t]?n[e]-r[e]:n[t]-r[t]}}j._set("global",{elements:{},events:["mousemove","mouseout","click","touchstart","touchmove"],hover:{onHover:null,mode:"nearest",intersect:!0,animationDuration:400},onClick:null,maintainAspectRatio:!0,responsive:!0,responsiveAnimationDuration:0});var qe=function(t,e){return this.construct(t,e),this};Y.extend(qe.prototype,{construct:function(t,e){var n=this;e=function(t){var e=(t=t||{}).data=t.data||{};return e.datasets=e.datasets||[],e.labels=e.labels||[],t.options=He(j.global,j[t.type],t.options||{}),t}(e);var r=Oe.acquireContext(t,e),i=r&&r.canvas,a=i&&i.height,o=i&&i.width;n.id=Y.uid(),n.ctx=r,n.canvas=i,n.config=e,n.width=o,n.height=a,n.aspectRatio=a?o/a:null,n.options=e.options,n._bufferedRender=!1,n._layers=[],n.chart=n,n.controller=n,qe.instances[n.id]=n,Object.defineProperty(n,"data",{get:function(){return n.config.data},set:function(t){n.config.data=t}}),r&&i?(n.initialize(),n.update()):console.error("Failed to create chart: can't acquire context from the given item")},initialize:function(){var t=this;return Te.notify(t,"beforeInit"),Y.retinaScale(t,t.options.devicePixelRatio),t.bindEvents(),t.options.responsive&&t.resize(!0),t.initToolTip(),Te.notify(t,"afterInit"),t},clear:function(){return Y.canvas.clear(this),this},stop:function(){return X.cancelAnimation(this),this},resize:function(t){var e=this,n=e.options,r=e.canvas,i=n.maintainAspectRatio&&e.aspectRatio||null,a=Math.max(0,Math.floor(Y.getMaximumWidth(r))),o=Math.max(0,Math.floor(i?a/i:Y.getMaximumHeight(r)));if((e.width!==a||e.height!==o)&&(r.width=e.width=a,r.height=e.height=o,r.style.width=a+"px",r.style.height=o+"px",Y.retinaScale(e,n.devicePixelRatio),!t)){var s={width:a,height:o};Te.notify(e,"resize",[s]),n.onResize&&n.onResize(e,s),e.stop(),e.update({duration:n.responsiveAnimationDuration})}},ensureScalesHaveIDs:function(){var t=this.options,e=t.scales||{},n=t.scale;Y.each(e.xAxes,(function(t,n){t.id||(t.id=Ge(e.xAxes,"x-axis-",n))})),Y.each(e.yAxes,(function(t,n){t.id||(t.id=Ge(e.yAxes,"y-axis-",n))})),n&&(n.id=n.id||"scale")},buildOrUpdateScales:function(){var t=this,e=t.options,n=t.scales||{},r=[],i=Object.keys(n).reduce((function(t,e){return t[e]=!1,t}),{});e.scales&&(r=r.concat((e.scales.xAxes||[]).map((function(t){return{options:t,dtype:"category",dposition:"bottom"}})),(e.scales.yAxes||[]).map((function(t){return{options:t,dtype:"linear",dposition:"left"}})))),e.scale&&r.push({options:e.scale,dtype:"radialLinear",isDefault:!0,dposition:"chartArea"}),Y.each(r,(function(e){var r=e.options,a=r.id,o=Ve(r.type,e.dtype);Ke(r.position)!==Ke(e.dposition)&&(r.position=e.dposition),i[a]=!0;var s=null;if(a in n&&n[a].type===o)(s=n[a]).options=r,s.ctx=t.ctx,s.chart=t;else{var l=Ae.getScaleConstructor(o);if(!l)return;s=new l({id:a,type:o,options:r,ctx:t.ctx,chart:t}),n[s.id]=s}s.mergeTicksOptions(),e.isDefault&&(t.scale=s)})),Y.each(i,(function(t,e){t||delete n[e]})),t.scales=n,Ae.addScalesToLayout(this)},buildOrUpdateControllers:function(){var t,e,n=this,r=[],i=n.data.datasets;for(t=0,e=i.length;t<e;t++){var a=i[t],o=n.getDatasetMeta(t),s=a.type||n.config.type;if(o.type&&o.type!==s&&(n.destroyDatasetMeta(t),o=n.getDatasetMeta(t)),o.type=s,o.order=a.order||0,o.index=t,o.controller)o.controller.updateIndex(t),o.controller.linkScales();else{var l=Xt[o.type];if(void 0===l)throw new Error('"'+o.type+'" is not a chart type.');o.controller=new l(n,t),r.push(o.controller)}}return r},resetElements:function(){var t=this;Y.each(t.data.datasets,(function(e,n){t.getDatasetMeta(n).controller.reset()}),t)},reset:function(){this.resetElements(),this.tooltip.initialize()},update:function(t){var e,n,r=this;if(t&&"object"==typeof t||(t={duration:t,lazy:arguments[1]}),Ue(r),Te._invalidate(r),!1!==Te.notify(r,"beforeUpdate")){r.tooltip._data=r.data;var i=r.buildOrUpdateControllers();for(e=0,n=r.data.datasets.length;e<n;e++)r.getDatasetMeta(e).controller.buildOrUpdateElements();r.updateLayout(),r.options.animation&&r.options.animation.duration&&Y.each(i,(function(t){t.reset()})),r.updateDatasets(),r.tooltip.initialize(),r.lastActive=[],Te.notify(r,"afterUpdate"),r._layers.sort(Je("z","_idx")),r._bufferedRender?r._bufferedRequest={duration:t.duration,easing:t.easing,lazy:t.lazy}:r.render(t)}},updateLayout:function(){var t=this;!1!==Te.notify(t,"beforeLayout")&&(pe.update(this,this.width,this.height),t._layers=[],Y.each(t.boxes,(function(e){e._configure&&e._configure(),t._layers.push.apply(t._layers,e._layers())}),t),t._layers.forEach((function(t,e){t._idx=e})),Te.notify(t,"afterScaleUpdate"),Te.notify(t,"afterLayout"))},updateDatasets:function(){if(!1!==Te.notify(this,"beforeDatasetsUpdate")){for(var t=0,e=this.data.datasets.length;t<e;++t)this.updateDataset(t);Te.notify(this,"afterDatasetsUpdate")}},updateDataset:function(t){var e=this.getDatasetMeta(t),n={meta:e,index:t};!1!==Te.notify(this,"beforeDatasetUpdate",[n])&&(e.controller._update(),Te.notify(this,"afterDatasetUpdate",[n]))},render:function(t){var e=this;t&&"object"==typeof t||(t={duration:t,lazy:arguments[1]});var n=e.options.animation,r=Ve(t.duration,n&&n.duration),i=t.lazy;if(!1!==Te.notify(e,"beforeRender")){var a=function(t){Te.notify(e,"afterRender"),Y.callback(n&&n.onComplete,[t],e)};if(n&&r){var o=new Z({numSteps:r/16.66,easing:t.easing||n.easing,render:function(t,e){var n=Y.easing.effects[e.easing],r=e.currentStep,i=r/e.numSteps;t.draw(n(i),i,r)},onAnimationProgress:n.onProgress,onAnimationComplete:a});X.addAnimation(e,o,r,i)}else e.draw(),a(new Z({numSteps:0,chart:e}));return e}},draw:function(t){var e,n,r=this;if(r.clear(),Y.isNullOrUndef(t)&&(t=1),r.transition(t),!(r.width<=0||r.height<=0)&&!1!==Te.notify(r,"beforeDraw",[t])){for(n=r._layers,e=0;e<n.length&&n[e].z<=0;++e)n[e].draw(r.chartArea);for(r.drawDatasets(t);e<n.length;++e)n[e].draw(r.chartArea);r._drawTooltip(t),Te.notify(r,"afterDraw",[t])}},transition:function(t){for(var e=0,n=(this.data.datasets||[]).length;e<n;++e)this.isDatasetVisible(e)&&this.getDatasetMeta(e).controller.transition(t);this.tooltip.transition(t)},_getSortedDatasetMetas:function(t){var e,n,r=[];for(e=0,n=(this.data.datasets||[]).length;e<n;++e)t&&!this.isDatasetVisible(e)||r.push(this.getDatasetMeta(e));return r.sort(Je("order","index")),r},_getSortedVisibleDatasetMetas:function(){return this._getSortedDatasetMetas(!0)},drawDatasets:function(t){var e,n;if(!1!==Te.notify(this,"beforeDatasetsDraw",[t])){for(n=(e=this._getSortedVisibleDatasetMetas()).length-1;n>=0;--n)this.drawDataset(e[n],t);Te.notify(this,"afterDatasetsDraw",[t])}},drawDataset:function(t,e){var n={meta:t,index:t.index,easingValue:e};!1!==Te.notify(this,"beforeDatasetDraw",[n])&&(t.controller.draw(e),Te.notify(this,"afterDatasetDraw",[n]))},_drawTooltip:function(t){var e=this.tooltip,n={tooltip:e,easingValue:t};!1!==Te.notify(this,"beforeTooltipDraw",[n])&&(e.draw(),Te.notify(this,"afterTooltipDraw",[n]))},getElementAtEvent:function(t){return ie.modes.single(this,t)},getElementsAtEvent:function(t){return ie.modes.label(this,t,{intersect:!0})},getElementsAtXAxis:function(t){return ie.modes["x-axis"](this,t,{intersect:!0})},getElementsAtEventForMode:function(t,e,n){var r=ie.modes[e];return"function"==typeof r?r(this,t,n):[]},getDatasetAtEvent:function(t){return ie.modes.dataset(this,t,{intersect:!0})},getDatasetMeta:function(t){var e=this.data.datasets[t];e._meta||(e._meta={});var n=e._meta[this.id];return n||(n=e._meta[this.id]={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:e.order||0,index:t}),n},getVisibleDatasetCount:function(){for(var t=0,e=0,n=this.data.datasets.length;e<n;++e)this.isDatasetVisible(e)&&t++;return t},isDatasetVisible:function(t){var e=this.getDatasetMeta(t);return"boolean"==typeof e.hidden?!e.hidden:!this.data.datasets[t].hidden},generateLegend:function(){return this.options.legendCallback(this)},destroyDatasetMeta:function(t){var e=this.id,n=this.data.datasets[t],r=n._meta&&n._meta[e];r&&(r.controller.destroy(),delete n._meta[e])},destroy:function(){var t,e,n=this,r=n.canvas;for(n.stop(),t=0,e=n.data.datasets.length;t<e;++t)n.destroyDatasetMeta(t);r&&(n.unbindEvents(),Y.canvas.clear(n),Oe.releaseContext(n.ctx),n.canvas=null,n.ctx=null),Te.notify(n,"destroy"),delete qe.instances[n.id]},toBase64Image:function(){return this.canvas.toDataURL.apply(this.canvas,arguments)},initToolTip:function(){var t=this;t.tooltip=new Ye({_chart:t,_chartInstance:t,_data:t.data,_options:t.options.tooltips},t)},bindEvents:function(){var t=this,e=t._listeners={},n=function(){t.eventHandler.apply(t,arguments)};Y.each(t.options.events,(function(r){Oe.addEventListener(t,r,n),e[r]=n})),t.options.responsive&&(n=function(){t.resize()},Oe.addEventListener(t,"resize",n),e.resize=n)},unbindEvents:function(){var t=this,e=t._listeners;e&&(delete t._listeners,Y.each(e,(function(e,n){Oe.removeEventListener(t,n,e)})))},updateHoverStyle:function(t,e,n){var r,i,a,o=n?"set":"remove";for(i=0,a=t.length;i<a;++i)(r=t[i])&&this.getDatasetMeta(r._datasetIndex).controller[o+"HoverStyle"](r);"dataset"===e&&this.getDatasetMeta(t[0]._datasetIndex).controller["_"+o+"DatasetHoverStyle"]()},eventHandler:function(t){var e=this,n=e.tooltip;if(!1!==Te.notify(e,"beforeEvent",[t])){e._bufferedRender=!0,e._bufferedRequest=null;var r=e.handleEvent(t);n&&(r=n._start?n.handleEvent(t):r|n.handleEvent(t)),Te.notify(e,"afterEvent",[t]);var i=e._bufferedRequest;return i?e.render(i):r&&!e.animating&&(e.stop(),e.render({duration:e.options.hover.animationDuration,lazy:!0})),e._bufferedRender=!1,e._bufferedRequest=null,e}},handleEvent:function(t){var e,n=this,r=n.options||{},i=r.hover;return n.lastActive=n.lastActive||[],"mouseout"===t.type?n.active=[]:n.active=n.getElementsAtEventForMode(t,i.mode,i),Y.callback(r.onHover||r.hover.onHover,[t.native,n.active],n),"mouseup"!==t.type&&"click"!==t.type||r.onClick&&r.onClick.call(n,t.native,n.active),n.lastActive.length&&n.updateHoverStyle(n.lastActive,i.mode,!1),n.active.length&&i.mode&&n.updateHoverStyle(n.active,i.mode,!0),e=!Y.arrayEquals(n.active,n.lastActive),n.lastActive=n.active,e}}),qe.instances={};var Ze=qe;function Xe(){throw new Error("This method is not implemented: either no adapter can be found or an incomplete integration was provided.")}function $e(t){this.options=t||{}}qe.Controller=qe,qe.types={},Y.configMerge=He,Y.scaleMerge=Be,Y.extend($e.prototype,{formats:Xe,parse:Xe,format:Xe,add:Xe,diff:Xe,startOf:Xe,endOf:Xe,_create:function(t){return t}}),$e.override=function(t){Y.extend($e.prototype,t)};var Qe={_date:$e},tn={formatters:{values:function(t){return Y.isArray(t)?t:""+t},linear:function(t,e,n){var r=n.length>3?n[2]-n[1]:n[1]-n[0];Math.abs(r)>1&&t!==Math.floor(t)&&(r=t-Math.floor(t));var i=Y.log10(Math.abs(r)),a="";if(0!==t)if(Math.max(Math.abs(n[0]),Math.abs(n[n.length-1]))<1e-4){var o=Y.log10(Math.abs(t)),s=Math.floor(o)-Math.floor(i);s=Math.max(Math.min(s,20),0),a=t.toExponential(s)}else{var l=-1*Math.floor(i);l=Math.max(Math.min(l,20),0),a=t.toFixed(l)}else a="0";return a},logarithmic:function(t,e,n){var r=t/Math.pow(10,Math.floor(Y.log10(t)));return 0===t?"0":1===r||2===r||5===r||0===e||e===n.length-1?t.toExponential():""}}},en=Y.isArray,nn=Y.isNullOrUndef,rn=Y.valueOrDefault,an=Y.valueAtIndexOrDefault;function on(t,e,n){var r,i=t.getTicks().length,a=Math.min(e,i-1),o=t.getPixelForTick(a),s=t._startPixel,l=t._endPixel;if(!(n&&(r=1===i?Math.max(o-s,l-o):0===e?(t.getPixelForTick(1)-o)/2:(o-t.getPixelForTick(a-1))/2,(o+=a<e?r:-r)<s-1e-6||o>l+1e-6)))return o}function sn(t,e,n,r){var i,a,o,s,l,u,c,h,d,f,p,g,m,v=n.length,b=[],y=[],x=[];for(i=0;i<v;++i){if(s=n[i].label,l=n[i].major?e.major:e.minor,t.font=u=l.string,c=r[u]=r[u]||{data:{},gc:[]},h=l.lineHeight,d=f=0,nn(s)||en(s)){if(en(s))for(a=0,o=s.length;a<o;++a)p=s[a],nn(p)||en(p)||(d=Y.measureText(t,c.data,c.gc,d,p),f+=h)}else d=Y.measureText(t,c.data,c.gc,d,s),f=h;b.push(d),y.push(f),x.push(h/2)}function _(t){return{width:b[t]||0,height:y[t]||0,offset:x[t]||0}}return function(t,e){Y.each(t,(function(t){var n,r=t.gc,i=r.length/2;if(i>e){for(n=0;n<i;++n)delete t.data[r[n]];r.splice(0,i)}}))}(r,v),g=b.indexOf(Math.max.apply(null,b)),m=y.indexOf(Math.max.apply(null,y)),{first:_(0),last:_(v-1),widest:_(g),highest:_(m)}}function ln(t){return t.drawTicks?t.tickMarkLength:0}function un(t){var e,n;return t.display?(e=Y.options._parseFont(t),n=Y.options.toPadding(t.padding),e.lineHeight+n.height):0}function cn(t,e){return Y.extend(Y.options._parseFont({fontFamily:rn(e.fontFamily,t.fontFamily),fontSize:rn(e.fontSize,t.fontSize),fontStyle:rn(e.fontStyle,t.fontStyle),lineHeight:rn(e.lineHeight,t.lineHeight)}),{color:Y.options.resolve([e.fontColor,t.fontColor,j.global.defaultFontColor])})}function hn(t){var e=cn(t,t.minor);return{minor:e,major:t.major.enabled?cn(t,t.major):e}}function dn(t){var e,n,r,i=[];for(n=0,r=t.length;n<r;++n)void 0!==(e=t[n])._index&&i.push(e);return i}function fn(t,e,n,r){var i,a,o,s,l=rn(n,0),u=Math.min(rn(r,t.length),t.length),c=0;for(e=Math.ceil(e),r&&(e=(i=r-n)/Math.floor(i/e)),s=l;s<0;)c++,s=Math.round(l+c*e);for(a=Math.max(l,0);a<u;a++)o=t[a],a===s?(o._index=a,c++,s=Math.round(l+c*e)):delete o.label}j._set("scale",{display:!0,position:"left",offset:!1,gridLines:{display:!0,color:"rgba(0,0,0,0.1)",lineWidth:1,drawBorder:!0,drawOnChartArea:!0,drawTicks:!0,tickMarkLength:10,zeroLineWidth:1,zeroLineColor:"rgba(0,0,0,0.25)",zeroLineBorderDash:[],zeroLineBorderDashOffset:0,offsetGridLines:!1,borderDash:[],borderDashOffset:0},scaleLabel:{display:!1,labelString:"",padding:{top:4,bottom:4}},ticks:{beginAtZero:!1,minRotation:0,maxRotation:50,mirror:!1,padding:0,reverse:!1,display:!0,autoSkip:!0,autoSkipPadding:0,labelOffset:0,callback:tn.formatters.values,minor:{},major:{}}});var pn=J.extend({zeroLineIndex:0,getPadding:function(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}},getTicks:function(){return this._ticks},_getLabels:function(){var t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels||[]},mergeTicksOptions:function(){},beforeUpdate:function(){Y.callback(this.options.beforeUpdate,[this])},update:function(t,e,n){var r,i,a,o,s,l=this,u=l.options.ticks,c=u.sampleSize;if(l.beforeUpdate(),l.maxWidth=t,l.maxHeight=e,l.margins=Y.extend({left:0,right:0,top:0,bottom:0},n),l._ticks=null,l.ticks=null,l._labelSizes=null,l._maxLabelLines=0,l.longestLabelWidth=0,l.longestTextCache=l.longestTextCache||{},l._gridLineItems=null,l._labelItems=null,l.beforeSetDimensions(),l.setDimensions(),l.afterSetDimensions(),l.beforeDataLimits(),l.determineDataLimits(),l.afterDataLimits(),l.beforeBuildTicks(),o=l.buildTicks()||[],(!(o=l.afterBuildTicks(o)||o)||!o.length)&&l.ticks)for(o=[],r=0,i=l.ticks.length;r<i;++r)o.push({value:l.ticks[r],major:!1});return l._ticks=o,s=c<o.length,a=l._convertTicksToLabels(s?function(t,e){for(var n=[],r=t.length/e,i=0,a=t.length;i<a;i+=r)n.push(t[Math.floor(i)]);return n}(o,c):o),l._configure(),l.beforeCalculateTickRotation(),l.calculateTickRotation(),l.afterCalculateTickRotation(),l.beforeFit(),l.fit(),l.afterFit(),l._ticksToDraw=u.display&&(u.autoSkip||"auto"===u.source)?l._autoSkip(o):o,s&&(a=l._convertTicksToLabels(l._ticksToDraw)),l.ticks=a,l.afterUpdate(),l.minSize},_configure:function(){var t,e,n=this,r=n.options.ticks.reverse;n.isHorizontal()?(t=n.left,e=n.right):(t=n.top,e=n.bottom,r=!r),n._startPixel=t,n._endPixel=e,n._reversePixels=r,n._length=e-t},afterUpdate:function(){Y.callback(this.options.afterUpdate,[this])},beforeSetDimensions:function(){Y.callback(this.options.beforeSetDimensions,[this])},setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0},afterSetDimensions:function(){Y.callback(this.options.afterSetDimensions,[this])},beforeDataLimits:function(){Y.callback(this.options.beforeDataLimits,[this])},determineDataLimits:Y.noop,afterDataLimits:function(){Y.callback(this.options.afterDataLimits,[this])},beforeBuildTicks:function(){Y.callback(this.options.beforeBuildTicks,[this])},buildTicks:Y.noop,afterBuildTicks:function(t){var e=this;return en(t)&&t.length?Y.callback(e.options.afterBuildTicks,[e,t]):(e.ticks=Y.callback(e.options.afterBuildTicks,[e,e.ticks])||e.ticks,t)},beforeTickToLabelConversion:function(){Y.callback(this.options.beforeTickToLabelConversion,[this])},convertTicksToLabels:function(){var t=this.options.ticks;this.ticks=this.ticks.map(t.userCallback||t.callback,this)},afterTickToLabelConversion:function(){Y.callback(this.options.afterTickToLabelConversion,[this])},beforeCalculateTickRotation:function(){Y.callback(this.options.beforeCalculateTickRotation,[this])},calculateTickRotation:function(){var t,e,n,r,i,a,o,s=this,l=s.options,u=l.ticks,c=s.getTicks().length,h=u.minRotation||0,d=u.maxRotation,f=h;!s._isVisible()||!u.display||h>=d||c<=1||!s.isHorizontal()?s.labelRotation=h:(e=(t=s._getLabelSizes()).widest.width,n=t.highest.height-t.highest.offset,r=Math.min(s.maxWidth,s.chart.width-e),e+6>(i=l.offset?s.maxWidth/c:r/(c-1))&&(i=r/(c-(l.offset?.5:1)),a=s.maxHeight-ln(l.gridLines)-u.padding-un(l.scaleLabel),o=Math.sqrt(e*e+n*n),f=Y.toDegrees(Math.min(Math.asin(Math.min((t.highest.height+6)/i,1)),Math.asin(Math.min(a/o,1))-Math.asin(n/o))),f=Math.max(h,Math.min(d,f))),s.labelRotation=f)},afterCalculateTickRotation:function(){Y.callback(this.options.afterCalculateTickRotation,[this])},beforeFit:function(){Y.callback(this.options.beforeFit,[this])},fit:function(){var t=this,e=t.minSize={width:0,height:0},n=t.chart,r=t.options,i=r.ticks,a=r.scaleLabel,o=r.gridLines,s=t._isVisible(),l="bottom"===r.position,u=t.isHorizontal();if(u?e.width=t.maxWidth:s&&(e.width=ln(o)+un(a)),u?s&&(e.height=ln(o)+un(a)):e.height=t.maxHeight,i.display&&s){var c=hn(i),h=t._getLabelSizes(),d=h.first,f=h.last,p=h.widest,g=h.highest,m=.4*c.minor.lineHeight,v=i.padding;if(u){var b=0!==t.labelRotation,y=Y.toRadians(t.labelRotation),x=Math.cos(y),_=Math.sin(y),w=_*p.width+x*(g.height-(b?g.offset:0))+(b?0:m);e.height=Math.min(t.maxHeight,e.height+w+v);var k,M,S=t.getPixelForTick(0)-t.left,D=t.right-t.getPixelForTick(t.getTicks().length-1);b?(k=l?x*d.width+_*d.offset:_*(d.height-d.offset),M=l?_*(f.height-f.offset):x*f.width+_*f.offset):(k=d.width/2,M=f.width/2),t.paddingLeft=Math.max((k-S)*t.width/(t.width-S),0)+3,t.paddingRight=Math.max((M-D)*t.width/(t.width-D),0)+3}else{var C=i.mirror?0:p.width+v+m;e.width=Math.min(t.maxWidth,e.width+C),t.paddingTop=d.height/2,t.paddingBottom=f.height/2}}t.handleMargins(),u?(t.width=t._length=n.width-t.margins.left-t.margins.right,t.height=e.height):(t.width=e.width,t.height=t._length=n.height-t.margins.top-t.margins.bottom)},handleMargins:function(){var t=this;t.margins&&(t.margins.left=Math.max(t.paddingLeft,t.margins.left),t.margins.top=Math.max(t.paddingTop,t.margins.top),t.margins.right=Math.max(t.paddingRight,t.margins.right),t.margins.bottom=Math.max(t.paddingBottom,t.margins.bottom))},afterFit:function(){Y.callback(this.options.afterFit,[this])},isHorizontal:function(){var t=this.options.position;return"top"===t||"bottom"===t},isFullWidth:function(){return this.options.fullWidth},getRightValue:function(t){if(nn(t))return NaN;if(("number"==typeof t||t instanceof Number)&&!isFinite(t))return NaN;if(t)if(this.isHorizontal()){if(void 0!==t.x)return this.getRightValue(t.x)}else if(void 0!==t.y)return this.getRightValue(t.y);return t},_convertTicksToLabels:function(t){var e,n,r,i=this;for(i.ticks=t.map((function(t){return t.value})),i.beforeTickToLabelConversion(),e=i.convertTicksToLabels(t)||i.ticks,i.afterTickToLabelConversion(),n=0,r=t.length;n<r;++n)t[n].label=e[n];return e},_getLabelSizes:function(){var t=this,e=t._labelSizes;return e||(t._labelSizes=e=sn(t.ctx,hn(t.options.ticks),t.getTicks(),t.longestTextCache),t.longestLabelWidth=e.widest.width),e},_parseValue:function(t){var e,n,r,i;return en(t)?(e=+this.getRightValue(t[0]),n=+this.getRightValue(t[1]),r=Math.min(e,n),i=Math.max(e,n)):(e=void 0,n=t=+this.getRightValue(t),r=t,i=t),{min:r,max:i,start:e,end:n}},_getScaleLabel:function(t){var e=this._parseValue(t);return void 0!==e.start?"["+e.start+", "+e.end+"]":+this.getRightValue(t)},getLabelForIndex:Y.noop,getPixelForValue:Y.noop,getValueForPixel:Y.noop,getPixelForTick:function(t){var e=this.options.offset,n=this._ticks.length,r=1/Math.max(n-(e?0:1),1);return t<0||t>n-1?null:this.getPixelForDecimal(t*r+(e?r/2:0))},getPixelForDecimal:function(t){return this._reversePixels&&(t=1-t),this._startPixel+t*this._length},getDecimalForPixel:function(t){var e=(t-this._startPixel)/this._length;return this._reversePixels?1-e:e},getBasePixel:function(){return this.getPixelForValue(this.getBaseValue())},getBaseValue:function(){var t=this.min,e=this.max;return this.beginAtZero?0:t<0&&e<0?e:t>0&&e>0?t:0},_autoSkip:function(t){var e,n,r,i,a=this.options.ticks,o=this._length,s=a.maxTicksLimit||o/this._tickSize()+1,l=a.major.enabled?function(t){var e,n,r=[];for(e=0,n=t.length;e<n;e++)t[e].major&&r.push(e);return r}(t):[],u=l.length,c=l[0],h=l[u-1];if(u>s)return function(t,e,n){var r,i,a=0,o=e[0];for(n=Math.ceil(n),r=0;r<t.length;r++)i=t[r],r===o?(i._index=r,o=e[++a*n]):delete i.label}(t,l,u/s),dn(t);if(r=function(t,e,n,r){var i,a,o,s,l=function(t){var e,n,r=t.length;if(r<2)return!1;for(n=t[0],e=1;e<r;++e)if(t[e]-t[e-1]!==n)return!1;return n}(t),u=(e.length-1)/r;if(!l)return Math.max(u,1);for(o=0,s=(i=Y.math._factorize(l)).length-1;o<s;o++)if((a=i[o])>u)return a;return Math.max(u,1)}(l,t,0,s),u>0){for(e=0,n=u-1;e<n;e++)fn(t,r,l[e],l[e+1]);return i=u>1?(h-c)/(u-1):null,fn(t,r,Y.isNullOrUndef(i)?0:c-i,c),fn(t,r,h,Y.isNullOrUndef(i)?t.length:h+i),dn(t)}return fn(t,r),dn(t)},_tickSize:function(){var t=this.options.ticks,e=Y.toRadians(this.labelRotation),n=Math.abs(Math.cos(e)),r=Math.abs(Math.sin(e)),i=this._getLabelSizes(),a=t.autoSkipPadding||0,o=i?i.widest.width+a:0,s=i?i.highest.height+a:0;return this.isHorizontal()?s*n>o*r?o/n:s/r:s*r<o*n?s/n:o/r},_isVisible:function(){var t,e,n,r=this.chart,i=this.options.display;if("auto"!==i)return!!i;for(t=0,e=r.data.datasets.length;t<e;++t)if(r.isDatasetVisible(t)&&((n=r.getDatasetMeta(t)).xAxisID===this.id||n.yAxisID===this.id))return!0;return!1},_computeGridLineItems:function(t){var e,n,r,i,a,o,s,l,u,c,h,d,f,p,g,m,v,b=this,y=b.chart,x=b.options,_=x.gridLines,w=x.position,k=_.offsetGridLines,M=b.isHorizontal(),S=b._ticksToDraw,D=S.length+(k?1:0),C=ln(_),O=[],T=_.drawBorder?an(_.lineWidth,0,0):0,A=T/2,P=Y._alignPixel,I=function(t){return P(y,t,T)};for("top"===w?(e=I(b.bottom),s=b.bottom-C,u=e-A,h=I(t.top)+A,f=t.bottom):"bottom"===w?(e=I(b.top),h=t.top,f=I(t.bottom)-A,s=e+A,u=b.top+C):"left"===w?(e=I(b.right),o=b.right-C,l=e-A,c=I(t.left)+A,d=t.right):(e=I(b.left),c=t.left,d=I(t.right)-A,o=e+A,l=b.left+C),n=0;n<D;++n)r=S[n]||{},nn(r.label)&&n<S.length||(n===b.zeroLineIndex&&x.offset===k?(p=_.zeroLineWidth,g=_.zeroLineColor,m=_.zeroLineBorderDash||[],v=_.zeroLineBorderDashOffset||0):(p=an(_.lineWidth,n,1),g=an(_.color,n,"rgba(0,0,0,0.1)"),m=_.borderDash||[],v=_.borderDashOffset||0),void 0!==(i=on(b,r._index||n,k))&&(a=P(y,i,p),M?o=l=c=d=a:s=u=h=f=a,O.push({tx1:o,ty1:s,tx2:l,ty2:u,x1:c,y1:h,x2:d,y2:f,width:p,color:g,borderDash:m,borderDashOffset:v})));return O.ticksLength=D,O.borderValue=e,O},_computeLabelItems:function(){var t,e,n,r,i,a,o,s,l,u,c,h,d=this,f=d.options,p=f.ticks,g=f.position,m=p.mirror,v=d.isHorizontal(),b=d._ticksToDraw,y=hn(p),x=p.padding,_=ln(f.gridLines),w=-Y.toRadians(d.labelRotation),k=[];for("top"===g?(a=d.bottom-_-x,o=w?"left":"center"):"bottom"===g?(a=d.top+_+x,o=w?"right":"center"):"left"===g?(i=d.right-(m?0:_)-x,o=m?"left":"right"):(i=d.left+(m?0:_)+x,o=m?"right":"left"),t=0,e=b.length;t<e;++t)r=(n=b[t]).label,nn(r)||(s=d.getPixelForTick(n._index||t)+p.labelOffset,u=(l=n.major?y.major:y.minor).lineHeight,c=en(r)?r.length:1,v?(i=s,h="top"===g?((w?1:.5)-c)*u:(w?0:.5)*u):(a=s,h=(1-c)*u/2),k.push({x:i,y:a,rotation:w,label:r,font:l,textOffset:h,textAlign:o}));return k},_drawGrid:function(t){var e=this,n=e.options.gridLines;if(n.display){var r,i,a,o,s,l=e.ctx,u=e.chart,c=Y._alignPixel,h=n.drawBorder?an(n.lineWidth,0,0):0,d=e._gridLineItems||(e._gridLineItems=e._computeGridLineItems(t));for(a=0,o=d.length;a<o;++a)r=(s=d[a]).width,i=s.color,r&&i&&(l.save(),l.lineWidth=r,l.strokeStyle=i,l.setLineDash&&(l.setLineDash(s.borderDash),l.lineDashOffset=s.borderDashOffset),l.beginPath(),n.drawTicks&&(l.moveTo(s.tx1,s.ty1),l.lineTo(s.tx2,s.ty2)),n.drawOnChartArea&&(l.moveTo(s.x1,s.y1),l.lineTo(s.x2,s.y2)),l.stroke(),l.restore());if(h){var f,p,g,m,v=h,b=an(n.lineWidth,d.ticksLength-1,1),y=d.borderValue;e.isHorizontal()?(f=c(u,e.left,v)-v/2,p=c(u,e.right,b)+b/2,g=m=y):(g=c(u,e.top,v)-v/2,m=c(u,e.bottom,b)+b/2,f=p=y),l.lineWidth=h,l.strokeStyle=an(n.color,0),l.beginPath(),l.moveTo(f,g),l.lineTo(p,m),l.stroke()}}},_drawLabels:function(){var t=this;if(t.options.ticks.display){var e,n,r,i,a,o,s,l,u=t.ctx,c=t._labelItems||(t._labelItems=t._computeLabelItems());for(e=0,r=c.length;e<r;++e){if(o=(a=c[e]).font,u.save(),u.translate(a.x,a.y),u.rotate(a.rotation),u.font=o.string,u.fillStyle=o.color,u.textBaseline="middle",u.textAlign=a.textAlign,s=a.label,l=a.textOffset,en(s))for(n=0,i=s.length;n<i;++n)u.fillText(""+s[n],0,l),l+=o.lineHeight;else u.fillText(s,0,l);u.restore()}}},_drawTitle:function(){var t=this,e=t.ctx,n=t.options,r=n.scaleLabel;if(r.display){var i,a,o=rn(r.fontColor,j.global.defaultFontColor),s=Y.options._parseFont(r),l=Y.options.toPadding(r.padding),u=s.lineHeight/2,c=n.position,h=0;if(t.isHorizontal())i=t.left+t.width/2,a="bottom"===c?t.bottom-u-l.bottom:t.top+u+l.top;else{var d="left"===c;i=d?t.left+u+l.top:t.right-u-l.top,a=t.top+t.height/2,h=d?-.5*Math.PI:.5*Math.PI}e.save(),e.translate(i,a),e.rotate(h),e.textAlign="center",e.textBaseline="middle",e.fillStyle=o,e.font=s.string,e.fillText(r.labelString,0,0),e.restore()}},draw:function(t){this._isVisible()&&(this._drawGrid(t),this._drawTitle(),this._drawLabels())},_layers:function(){var t=this,e=t.options,n=e.ticks&&e.ticks.z||0,r=e.gridLines&&e.gridLines.z||0;return t._isVisible()&&n!==r&&t.draw===t._draw?[{z:r,draw:function(){t._drawGrid.apply(t,arguments),t._drawTitle.apply(t,arguments)}},{z:n,draw:function(){t._drawLabels.apply(t,arguments)}}]:[{z:n,draw:function(){t.draw.apply(t,arguments)}}]},_getMatchingVisibleMetas:function(t){var e=this,n=e.isHorizontal();return e.chart._getSortedVisibleDatasetMetas().filter((function(r){return(!t||r.type===t)&&(n?r.xAxisID===e.id:r.yAxisID===e.id)}))}});pn.prototype._draw=pn.prototype.draw;var gn=pn,mn=Y.isNullOrUndef,vn=gn.extend({determineDataLimits:function(){var t,e=this,n=e._getLabels(),r=e.options.ticks,i=r.min,a=r.max,o=0,s=n.length-1;void 0!==i&&(t=n.indexOf(i))>=0&&(o=t),void 0!==a&&(t=n.indexOf(a))>=0&&(s=t),e.minIndex=o,e.maxIndex=s,e.min=n[o],e.max=n[s]},buildTicks:function(){var t=this._getLabels(),e=this.minIndex,n=this.maxIndex;this.ticks=0===e&&n===t.length-1?t:t.slice(e,n+1)},getLabelForIndex:function(t,e){var n=this.chart;return n.getDatasetMeta(e).controller._getValueScaleId()===this.id?this.getRightValue(n.data.datasets[e].data[t]):this._getLabels()[t]},_configure:function(){var t=this,e=t.options.offset,n=t.ticks;gn.prototype._configure.call(t),t.isHorizontal()||(t._reversePixels=!t._reversePixels),n&&(t._startValue=t.minIndex-(e?.5:0),t._valueRange=Math.max(n.length-(e?0:1),1))},getPixelForValue:function(t,e,n){var r,i,a,o=this;return mn(e)||mn(n)||(t=o.chart.data.datasets[n].data[e]),mn(t)||(r=o.isHorizontal()?t.x:t.y),(void 0!==r||void 0!==t&&isNaN(e))&&(i=o._getLabels(),t=Y.valueOrDefault(r,t),e=-1!==(a=i.indexOf(t))?a:e,isNaN(e)&&(e=t)),o.getPixelForDecimal((e-o._startValue)/o._valueRange)},getPixelForTick:function(t){var e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t],t+this.minIndex)},getValueForPixel:function(t){var e=Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange);return Math.min(Math.max(e,0),this.ticks.length-1)},getBasePixel:function(){return this.bottom}}),bn={position:"bottom"};vn._defaults=bn;var yn=Y.noop,xn=Y.isNullOrUndef,_n=gn.extend({getRightValue:function(t){return"string"==typeof t?+t:gn.prototype.getRightValue.call(this,t)},handleTickRangeOptions:function(){var t=this,e=t.options.ticks;if(e.beginAtZero){var n=Y.sign(t.min),r=Y.sign(t.max);n<0&&r<0?t.max=0:n>0&&r>0&&(t.min=0)}var i=void 0!==e.min||void 0!==e.suggestedMin,a=void 0!==e.max||void 0!==e.suggestedMax;void 0!==e.min?t.min=e.min:void 0!==e.suggestedMin&&(null===t.min?t.min=e.suggestedMin:t.min=Math.min(t.min,e.suggestedMin)),void 0!==e.max?t.max=e.max:void 0!==e.suggestedMax&&(null===t.max?t.max=e.suggestedMax:t.max=Math.max(t.max,e.suggestedMax)),i!==a&&t.min>=t.max&&(i?t.max=t.min+1:t.min=t.max-1),t.min===t.max&&(t.max++,e.beginAtZero||t.min--)},getTickLimit:function(){var t,e=this.options.ticks,n=e.stepSize,r=e.maxTicksLimit;return n?t=Math.ceil(this.max/n)-Math.floor(this.min/n)+1:(t=this._computeTickLimit(),r=r||11),r&&(t=Math.min(r,t)),t},_computeTickLimit:function(){return Number.POSITIVE_INFINITY},handleDirectionalChanges:yn,buildTicks:function(){var t=this,e=t.options.ticks,n=t.getTickLimit(),r={maxTicks:n=Math.max(2,n),min:e.min,max:e.max,precision:e.precision,stepSize:Y.valueOrDefault(e.fixedStepSize,e.stepSize)},i=t.ticks=function(t,e){var n,r,i,a,o=[],s=t.stepSize,l=s||1,u=t.maxTicks-1,c=t.min,h=t.max,d=t.precision,f=e.min,p=e.max,g=Y.niceNum((p-f)/u/l)*l;if(g<1e-14&&xn(c)&&xn(h))return[f,p];(a=Math.ceil(p/g)-Math.floor(f/g))>u&&(g=Y.niceNum(a*g/u/l)*l),s||xn(d)?n=Math.pow(10,Y._decimalPlaces(g)):(n=Math.pow(10,d),g=Math.ceil(g*n)/n),r=Math.floor(f/g)*g,i=Math.ceil(p/g)*g,s&&(!xn(c)&&Y.almostWhole(c/g,g/1e3)&&(r=c),!xn(h)&&Y.almostWhole(h/g,g/1e3)&&(i=h)),a=(i-r)/g,a=Y.almostEquals(a,Math.round(a),g/1e3)?Math.round(a):Math.ceil(a),r=Math.round(r*n)/n,i=Math.round(i*n)/n,o.push(xn(c)?r:c);for(var m=1;m<a;++m)o.push(Math.round((r+m*g)*n)/n);return o.push(xn(h)?i:h),o}(r,t);t.handleDirectionalChanges(),t.max=Y.max(i),t.min=Y.min(i),e.reverse?(i.reverse(),t.start=t.max,t.end=t.min):(t.start=t.min,t.end=t.max)},convertTicksToLabels:function(){var t=this;t.ticksAsNumbers=t.ticks.slice(),t.zeroLineIndex=t.ticks.indexOf(0),gn.prototype.convertTicksToLabels.call(t)},_configure:function(){var t,e=this,n=e.getTicks(),r=e.min,i=e.max;gn.prototype._configure.call(e),e.options.offset&&n.length&&(r-=t=(i-r)/Math.max(n.length-1,1)/2,i+=t),e._startValue=r,e._endValue=i,e._valueRange=i-r}}),wn={position:"left",ticks:{callback:tn.formatters.linear}};function kn(t,e,n,r){var i,a,o=t.options,s=function(t,e,n){var r=[n.type,void 0===e&&void 0===n.stack?n.index:"",n.stack].join(".");return void 0===t[r]&&(t[r]={pos:[],neg:[]}),t[r]}(e,o.stacked,n),l=s.pos,u=s.neg,c=r.length;for(i=0;i<c;++i)a=t._parseValue(r[i]),isNaN(a.min)||isNaN(a.max)||n.data[i].hidden||(l[i]=l[i]||0,u[i]=u[i]||0,o.relativePoints?l[i]=100:a.min<0||a.max<0?u[i]+=a.min:l[i]+=a.max)}function Mn(t,e,n){var r,i,a=n.length;for(r=0;r<a;++r)i=t._parseValue(n[r]),isNaN(i.min)||isNaN(i.max)||e.data[r].hidden||(t.min=Math.min(t.min,i.min),t.max=Math.max(t.max,i.max))}var Sn=_n.extend({determineDataLimits:function(){var t,e,n,r,i=this,a=i.options,o=i.chart.data.datasets,s=i._getMatchingVisibleMetas(),l=a.stacked,u={},c=s.length;if(i.min=Number.POSITIVE_INFINITY,i.max=Number.NEGATIVE_INFINITY,void 0===l)for(t=0;!l&&t<c;++t)l=void 0!==(e=s[t]).stack;for(t=0;t<c;++t)n=o[(e=s[t]).index].data,l?kn(i,u,e,n):Mn(i,e,n);Y.each(u,(function(t){r=t.pos.concat(t.neg),i.min=Math.min(i.min,Y.min(r)),i.max=Math.max(i.max,Y.max(r))})),i.min=Y.isFinite(i.min)&&!isNaN(i.min)?i.min:0,i.max=Y.isFinite(i.max)&&!isNaN(i.max)?i.max:1,i.handleTickRangeOptions()},_computeTickLimit:function(){var t;return this.isHorizontal()?Math.ceil(this.width/40):(t=Y.options._parseFont(this.options.ticks),Math.ceil(this.height/t.lineHeight))},handleDirectionalChanges:function(){this.isHorizontal()||this.ticks.reverse()},getLabelForIndex:function(t,e){return this._getScaleLabel(this.chart.data.datasets[e].data[t])},getPixelForValue:function(t){return this.getPixelForDecimal((+this.getRightValue(t)-this._startValue)/this._valueRange)},getValueForPixel:function(t){return this._startValue+this.getDecimalForPixel(t)*this._valueRange},getPixelForTick:function(t){var e=this.ticksAsNumbers;return t<0||t>e.length-1?null:this.getPixelForValue(e[t])}}),Dn=wn;Sn._defaults=Dn;var Cn=Y.valueOrDefault,On=Y.math.log10,Tn={position:"left",ticks:{callback:tn.formatters.logarithmic}};function An(t,e){return Y.isFinite(t)&&t>=0?t:e}var Pn=gn.extend({determineDataLimits:function(){var t,e,n,r,i,a,o=this,s=o.options,l=o.chart,u=l.data.datasets,c=o.isHorizontal();function h(t){return c?t.xAxisID===o.id:t.yAxisID===o.id}o.min=Number.POSITIVE_INFINITY,o.max=Number.NEGATIVE_INFINITY,o.minNotZero=Number.POSITIVE_INFINITY;var d=s.stacked;if(void 0===d)for(t=0;t<u.length;t++)if(e=l.getDatasetMeta(t),l.isDatasetVisible(t)&&h(e)&&void 0!==e.stack){d=!0;break}if(s.stacked||d){var f={};for(t=0;t<u.length;t++){var p=[(e=l.getDatasetMeta(t)).type,void 0===s.stacked&&void 0===e.stack?t:"",e.stack].join(".");if(l.isDatasetVisible(t)&&h(e))for(void 0===f[p]&&(f[p]=[]),i=0,a=(r=u[t].data).length;i<a;i++){var g=f[p];n=o._parseValue(r[i]),isNaN(n.min)||isNaN(n.max)||e.data[i].hidden||n.min<0||n.max<0||(g[i]=g[i]||0,g[i]+=n.max)}}Y.each(f,(function(t){if(t.length>0){var e=Y.min(t),n=Y.max(t);o.min=Math.min(o.min,e),o.max=Math.max(o.max,n)}}))}else for(t=0;t<u.length;t++)if(e=l.getDatasetMeta(t),l.isDatasetVisible(t)&&h(e))for(i=0,a=(r=u[t].data).length;i<a;i++)n=o._parseValue(r[i]),isNaN(n.min)||isNaN(n.max)||e.data[i].hidden||n.min<0||n.max<0||(o.min=Math.min(n.min,o.min),o.max=Math.max(n.max,o.max),0!==n.min&&(o.minNotZero=Math.min(n.min,o.minNotZero)));o.min=Y.isFinite(o.min)?o.min:null,o.max=Y.isFinite(o.max)?o.max:null,o.minNotZero=Y.isFinite(o.minNotZero)?o.minNotZero:null,this.handleTickRangeOptions()},handleTickRangeOptions:function(){var t=this,e=t.options.ticks;t.min=An(e.min,t.min),t.max=An(e.max,t.max),t.min===t.max&&(0!==t.min&&null!==t.min?(t.min=Math.pow(10,Math.floor(On(t.min))-1),t.max=Math.pow(10,Math.floor(On(t.max))+1)):(t.min=1,t.max=10)),null===t.min&&(t.min=Math.pow(10,Math.floor(On(t.max))-1)),null===t.max&&(t.max=0!==t.min?Math.pow(10,Math.floor(On(t.min))+1):10),null===t.minNotZero&&(t.min>0?t.minNotZero=t.min:t.max<1?t.minNotZero=Math.pow(10,Math.floor(On(t.max))):t.minNotZero=1)},buildTicks:function(){var t=this,e=t.options.ticks,n=!t.isHorizontal(),r={min:An(e.min),max:An(e.max)},i=t.ticks=function(t,e){var n,r,i=[],a=Cn(t.min,Math.pow(10,Math.floor(On(e.min)))),o=Math.floor(On(e.max)),s=Math.ceil(e.max/Math.pow(10,o));0===a?(n=Math.floor(On(e.minNotZero)),r=Math.floor(e.minNotZero/Math.pow(10,n)),i.push(a),a=r*Math.pow(10,n)):(n=Math.floor(On(a)),r=Math.floor(a/Math.pow(10,n)));var l=n<0?Math.pow(10,Math.abs(n)):1;do{i.push(a),10==++r&&(r=1,l=++n>=0?1:l),a=Math.round(r*Math.pow(10,n)*l)/l}while(n<o||n===o&&r<s);var u=Cn(t.max,a);return i.push(u),i}(r,t);t.max=Y.max(i),t.min=Y.min(i),e.reverse?(n=!n,t.start=t.max,t.end=t.min):(t.start=t.min,t.end=t.max),n&&i.reverse()},convertTicksToLabels:function(){this.tickValues=this.ticks.slice(),gn.prototype.convertTicksToLabels.call(this)},getLabelForIndex:function(t,e){return this._getScaleLabel(this.chart.data.datasets[e].data[t])},getPixelForTick:function(t){var e=this.tickValues;return t<0||t>e.length-1?null:this.getPixelForValue(e[t])},_getFirstTickValue:function(t){var e=Math.floor(On(t));return Math.floor(t/Math.pow(10,e))*Math.pow(10,e)},_configure:function(){var t=this,e=t.min,n=0;gn.prototype._configure.call(t),0===e&&(e=t._getFirstTickValue(t.minNotZero),n=Cn(t.options.ticks.fontSize,j.global.defaultFontSize)/t._length),t._startValue=On(e),t._valueOffset=n,t._valueRange=(On(t.max)-On(e))/(1-n)},getPixelForValue:function(t){var e=this,n=0;return(t=+e.getRightValue(t))>e.min&&t>0&&(n=(On(t)-e._startValue)/e._valueRange+e._valueOffset),e.getPixelForDecimal(n)},getValueForPixel:function(t){var e=this,n=e.getDecimalForPixel(t);return 0===n&&0===e.min?0:Math.pow(10,e._startValue+(n-e._valueOffset)*e._valueRange)}}),In=Tn;Pn._defaults=In;var Fn=Y.valueOrDefault,Ln=Y.valueAtIndexOrDefault,Rn=Y.options.resolve,jn={display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,color:"rgba(0,0,0,0.1)",lineWidth:1,borderDash:[],borderDashOffset:0},gridLines:{circular:!1},ticks:{showLabelBackdrop:!0,backdropColor:"rgba(255,255,255,0.75)",backdropPaddingY:2,backdropPaddingX:2,callback:tn.formatters.linear},pointLabels:{display:!0,fontSize:10,callback:function(t){return t}}};function En(t){var e=t.ticks;return e.display&&t.display?Fn(e.fontSize,j.global.defaultFontSize)+2*e.backdropPaddingY:0}function Nn(t,e,n,r,i){return t===r||t===i?{start:e-n/2,end:e+n/2}:t<r||t>i?{start:e-n,end:e}:{start:e,end:e+n}}function zn(t){return 0===t||180===t?"center":t<180?"left":"right"}function Wn(t,e,n,r){var i,a,o=n.y+r/2;if(Y.isArray(e))for(i=0,a=e.length;i<a;++i)t.fillText(e[i],n.x,o),o+=r;else t.fillText(e,n.x,o)}function Yn(t,e,n){90===t||270===t?n.y-=e.h/2:(t>270||t<90)&&(n.y-=e.h)}function Vn(t){return Y.isNumber(t)?t:0}var Bn=_n.extend({setDimensions:function(){var t=this;t.width=t.maxWidth,t.height=t.maxHeight,t.paddingTop=En(t.options)/2,t.xCenter=Math.floor(t.width/2),t.yCenter=Math.floor((t.height-t.paddingTop)/2),t.drawingArea=Math.min(t.height-t.paddingTop,t.width)/2},determineDataLimits:function(){var t=this,e=t.chart,n=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY;Y.each(e.data.datasets,(function(i,a){if(e.isDatasetVisible(a)){var o=e.getDatasetMeta(a);Y.each(i.data,(function(e,i){var a=+t.getRightValue(e);isNaN(a)||o.data[i].hidden||(n=Math.min(a,n),r=Math.max(a,r))}))}})),t.min=n===Number.POSITIVE_INFINITY?0:n,t.max=r===Number.NEGATIVE_INFINITY?0:r,t.handleTickRangeOptions()},_computeTickLimit:function(){return Math.ceil(this.drawingArea/En(this.options))},convertTicksToLabels:function(){var t=this;_n.prototype.convertTicksToLabels.call(t),t.pointLabels=t.chart.data.labels.map((function(){var e=Y.callback(t.options.pointLabels.callback,arguments,t);return e||0===e?e:""}))},getLabelForIndex:function(t,e){return+this.getRightValue(this.chart.data.datasets[e].data[t])},fit:function(){var t=this.options;t.display&&t.pointLabels.display?function(t){var e,n,r,i=Y.options._parseFont(t.options.pointLabels),a={l:0,r:t.width,t:0,b:t.height-t.paddingTop},o={};t.ctx.font=i.string,t._pointLabelSizes=[];var s,l,u,c=t.chart.data.labels.length;for(e=0;e<c;e++){r=t.getPointPosition(e,t.drawingArea+5),s=t.ctx,l=i.lineHeight,u=t.pointLabels[e],n=Y.isArray(u)?{w:Y.longestText(s,s.font,u),h:u.length*l}:{w:s.measureText(u).width,h:l},t._pointLabelSizes[e]=n;var h=t.getIndexAngle(e),d=Y.toDegrees(h)%360,f=Nn(d,r.x,n.w,0,180),p=Nn(d,r.y,n.h,90,270);f.start<a.l&&(a.l=f.start,o.l=h),f.end>a.r&&(a.r=f.end,o.r=h),p.start<a.t&&(a.t=p.start,o.t=h),p.end>a.b&&(a.b=p.end,o.b=h)}t.setReductions(t.drawingArea,a,o)}(this):this.setCenterPoint(0,0,0,0)},setReductions:function(t,e,n){var r=this,i=e.l/Math.sin(n.l),a=Math.max(e.r-r.width,0)/Math.sin(n.r),o=-e.t/Math.cos(n.t),s=-Math.max(e.b-(r.height-r.paddingTop),0)/Math.cos(n.b);i=Vn(i),a=Vn(a),o=Vn(o),s=Vn(s),r.drawingArea=Math.min(Math.floor(t-(i+a)/2),Math.floor(t-(o+s)/2)),r.setCenterPoint(i,a,o,s)},setCenterPoint:function(t,e,n,r){var i=this,a=i.width-e-i.drawingArea,o=t+i.drawingArea,s=n+i.drawingArea,l=i.height-i.paddingTop-r-i.drawingArea;i.xCenter=Math.floor((o+a)/2+i.left),i.yCenter=Math.floor((s+l)/2+i.top+i.paddingTop)},getIndexAngle:function(t){var e=this.chart,n=(t*(360/e.data.labels.length)+((e.options||{}).startAngle||0))%360;return(n<0?n+360:n)*Math.PI*2/360},getDistanceFromCenterForValue:function(t){var e=this;if(Y.isNullOrUndef(t))return NaN;var n=e.drawingArea/(e.max-e.min);return e.options.ticks.reverse?(e.max-t)*n:(t-e.min)*n},getPointPosition:function(t,e){var n=this.getIndexAngle(t)-Math.PI/2;return{x:Math.cos(n)*e+this.xCenter,y:Math.sin(n)*e+this.yCenter}},getPointPositionForValue:function(t,e){return this.getPointPosition(t,this.getDistanceFromCenterForValue(e))},getBasePosition:function(t){var e=this.min,n=this.max;return this.getPointPositionForValue(t||0,this.beginAtZero?0:e<0&&n<0?n:e>0&&n>0?e:0)},_drawGrid:function(){var t,e,n,r=this,i=r.ctx,a=r.options,o=a.gridLines,s=a.angleLines,l=Fn(s.lineWidth,o.lineWidth),u=Fn(s.color,o.color);if(a.pointLabels.display&&function(t){var e=t.ctx,n=t.options,r=n.pointLabels,i=En(n),a=t.getDistanceFromCenterForValue(n.ticks.reverse?t.min:t.max),o=Y.options._parseFont(r);e.save(),e.font=o.string,e.textBaseline="middle";for(var s=t.chart.data.labels.length-1;s>=0;s--){var l=0===s?i/2:0,u=t.getPointPosition(s,a+l+5),c=Ln(r.fontColor,s,j.global.defaultFontColor);e.fillStyle=c;var h=t.getIndexAngle(s),d=Y.toDegrees(h);e.textAlign=zn(d),Yn(d,t._pointLabelSizes[s],u),Wn(e,t.pointLabels[s],u,o.lineHeight)}e.restore()}(r),o.display&&Y.each(r.ticks,(function(t,n){0!==n&&(e=r.getDistanceFromCenterForValue(r.ticksAsNumbers[n]),function(t,e,n,r){var i,a=t.ctx,o=e.circular,s=t.chart.data.labels.length,l=Ln(e.color,r-1),u=Ln(e.lineWidth,r-1);if((o||s)&&l&&u){if(a.save(),a.strokeStyle=l,a.lineWidth=u,a.setLineDash&&(a.setLineDash(e.borderDash||[]),a.lineDashOffset=e.borderDashOffset||0),a.beginPath(),o)a.arc(t.xCenter,t.yCenter,n,0,2*Math.PI);else{i=t.getPointPosition(0,n),a.moveTo(i.x,i.y);for(var c=1;c<s;c++)i=t.getPointPosition(c,n),a.lineTo(i.x,i.y)}a.closePath(),a.stroke(),a.restore()}}(r,o,e,n))})),s.display&&l&&u){for(i.save(),i.lineWidth=l,i.strokeStyle=u,i.setLineDash&&(i.setLineDash(Rn([s.borderDash,o.borderDash,[]])),i.lineDashOffset=Rn([s.borderDashOffset,o.borderDashOffset,0])),t=r.chart.data.labels.length-1;t>=0;t--)e=r.getDistanceFromCenterForValue(a.ticks.reverse?r.min:r.max),n=r.getPointPosition(t,e),i.beginPath(),i.moveTo(r.xCenter,r.yCenter),i.lineTo(n.x,n.y),i.stroke();i.restore()}},_drawLabels:function(){var t=this,e=t.ctx,n=t.options.ticks;if(n.display){var r,i,a=t.getIndexAngle(0),o=Y.options._parseFont(n),s=Fn(n.fontColor,j.global.defaultFontColor);e.save(),e.font=o.string,e.translate(t.xCenter,t.yCenter),e.rotate(a),e.textAlign="center",e.textBaseline="middle",Y.each(t.ticks,(function(a,l){(0!==l||n.reverse)&&(r=t.getDistanceFromCenterForValue(t.ticksAsNumbers[l]),n.showLabelBackdrop&&(i=e.measureText(a).width,e.fillStyle=n.backdropColor,e.fillRect(-i/2-n.backdropPaddingX,-r-o.size/2-n.backdropPaddingY,i+2*n.backdropPaddingX,o.size+2*n.backdropPaddingY)),e.fillStyle=s,e.fillText(a,0,-r))})),e.restore()}},_drawTitle:Y.noop}),Hn=jn;Bn._defaults=Hn;var Un=Y._deprecated,Gn=Y.options.resolve,Kn=Y.valueOrDefault,Jn=Number.MIN_SAFE_INTEGER||-9007199254740991,qn=Number.MAX_SAFE_INTEGER||9007199254740991,Zn={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},Xn=Object.keys(Zn);function $n(t,e){return t-e}function Qn(t){return Y.valueOrDefault(t.time.min,t.ticks.min)}function tr(t){return Y.valueOrDefault(t.time.max,t.ticks.max)}function er(t,e,n,r){var i=function(t,e,n){for(var r,i,a,o=0,s=t.length-1;o>=0&&o<=s;){if(i=t[(r=o+s>>1)-1]||null,a=t[r],!i)return{lo:null,hi:a};if(a[e]<n)o=r+1;else{if(!(i[e]>n))return{lo:i,hi:a};s=r-1}}return{lo:a,hi:null}}(t,e,n),a=i.lo?i.hi?i.lo:t[t.length-2]:t[0],o=i.lo?i.hi?i.hi:t[t.length-1]:t[1],s=o[e]-a[e],l=s?(n-a[e])/s:0,u=(o[r]-a[r])*l;return a[r]+u}function nr(t,e){var n=t._adapter,r=t.options.time,i=r.parser,a=i||r.format,o=e;return"function"==typeof i&&(o=i(o)),Y.isFinite(o)||(o="string"==typeof a?n.parse(o,a):n.parse(o)),null!==o?+o:(i||"function"!=typeof a||(o=a(e),Y.isFinite(o)||(o=n.parse(o))),o)}function rr(t,e){if(Y.isNullOrUndef(e))return null;var n=t.options.time,r=nr(t,t.getRightValue(e));return null===r?r:(n.round&&(r=+t._adapter.startOf(r,n.round)),r)}function ir(t,e,n,r){var i,a,o,s=Xn.length;for(i=Xn.indexOf(t);i<s-1;++i)if(o=(a=Zn[Xn[i]]).steps?a.steps:qn,a.common&&Math.ceil((n-e)/(o*a.size))<=r)return Xn[i];return Xn[s-1]}function ar(t,e,n){var r,i,a=[],o={},s=e.length;for(r=0;r<s;++r)o[i=e[r]]=r,a.push({value:i,major:!1});return 0!==s&&n?function(t,e,n,r){var i,a,o=t._adapter,s=+o.startOf(e[0].value,r),l=e[e.length-1].value;for(i=s;i<=l;i=+o.add(i,1,r))(a=n[i])>=0&&(e[a].major=!0);return e}(t,a,o,n):a}var or=gn.extend({initialize:function(){this.mergeTicksOptions(),gn.prototype.initialize.call(this)},update:function(){var t=this,e=t.options,n=e.time||(e.time={}),r=t._adapter=new Qe._date(e.adapters.date);return Un("time scale",n.format,"time.format","time.parser"),Un("time scale",n.min,"time.min","ticks.min"),Un("time scale",n.max,"time.max","ticks.max"),Y.mergeIf(n.displayFormats,r.formats()),gn.prototype.update.apply(t,arguments)},getRightValue:function(t){return t&&void 0!==t.t&&(t=t.t),gn.prototype.getRightValue.call(this,t)},determineDataLimits:function(){var t,e,n,r,i,a,o,s=this,l=s.chart,u=s._adapter,c=s.options,h=c.time.unit||"day",d=qn,f=Jn,p=[],g=[],m=[],v=s._getLabels();for(t=0,n=v.length;t<n;++t)m.push(rr(s,v[t]));for(t=0,n=(l.data.datasets||[]).length;t<n;++t)if(l.isDatasetVisible(t))if(i=l.data.datasets[t].data,Y.isObject(i[0]))for(g[t]=[],e=0,r=i.length;e<r;++e)a=rr(s,i[e]),p.push(a),g[t][e]=a;else g[t]=m.slice(0),o||(p=p.concat(m),o=!0);else g[t]=[];m.length&&(d=Math.min(d,m[0]),f=Math.max(f,m[m.length-1])),p.length&&(p=n>1?function(t){var e,n,r,i={},a=[];for(e=0,n=t.length;e<n;++e)i[r=t[e]]||(i[r]=!0,a.push(r));return a}(p).sort($n):p.sort($n),d=Math.min(d,p[0]),f=Math.max(f,p[p.length-1])),d=rr(s,Qn(c))||d,f=rr(s,tr(c))||f,d=d===qn?+u.startOf(Date.now(),h):d,f=f===Jn?+u.endOf(Date.now(),h)+1:f,s.min=Math.min(d,f),s.max=Math.max(d+1,f),s._table=[],s._timestamps={data:p,datasets:g,labels:m}},buildTicks:function(){var t,e,n,r=this,i=r.min,a=r.max,o=r.options,s=o.ticks,l=o.time,u=r._timestamps,c=[],h=r.getLabelCapacity(i),d=s.source,f=o.distribution;for(u="data"===d||"auto"===d&&"series"===f?u.data:"labels"===d?u.labels:function(t,e,n,r){var i,a=t._adapter,o=t.options,s=o.time,l=s.unit||ir(s.minUnit,e,n,r),u=Gn([s.stepSize,s.unitStepSize,1]),c="week"===l&&s.isoWeekday,h=e,d=[];if(c&&(h=+a.startOf(h,"isoWeek",c)),h=+a.startOf(h,c?"day":l),a.diff(n,e,l)>1e5*u)throw e+" and "+n+" are too far apart with stepSize of "+u+" "+l;for(i=h;i<n;i=+a.add(i,u,l))d.push(i);return i!==n&&"ticks"!==o.bounds||d.push(i),d}(r,i,a,h),"ticks"===o.bounds&&u.length&&(i=u[0],a=u[u.length-1]),i=rr(r,Qn(o))||i,a=rr(r,tr(o))||a,t=0,e=u.length;t<e;++t)(n=u[t])>=i&&n<=a&&c.push(n);return r.min=i,r.max=a,r._unit=l.unit||(s.autoSkip?ir(l.minUnit,r.min,r.max,h):function(t,e,n,r,i){var a,o;for(a=Xn.length-1;a>=Xn.indexOf(n);a--)if(o=Xn[a],Zn[o].common&&t._adapter.diff(i,r,o)>=e-1)return o;return Xn[n?Xn.indexOf(n):0]}(r,c.length,l.minUnit,r.min,r.max)),r._majorUnit=s.major.enabled&&"year"!==r._unit?function(t){for(var e=Xn.indexOf(t)+1,n=Xn.length;e<n;++e)if(Zn[Xn[e]].common)return Xn[e]}(r._unit):void 0,r._table=function(t,e,n,r){if("linear"===r||!t.length)return[{time:e,pos:0},{time:n,pos:1}];var i,a,o,s,l,u=[],c=[e];for(i=0,a=t.length;i<a;++i)(s=t[i])>e&&s<n&&c.push(s);for(c.push(n),i=0,a=c.length;i<a;++i)l=c[i+1],o=c[i-1],s=c[i],void 0!==o&&void 0!==l&&Math.round((l+o)/2)===s||u.push({time:s,pos:i/(a-1)});return u}(r._timestamps.data,i,a,f),r._offsets=function(t,e,n,r,i){var a,o,s=0,l=0;return i.offset&&e.length&&(a=er(t,"time",e[0],"pos"),s=1===e.length?1-a:(er(t,"time",e[1],"pos")-a)/2,o=er(t,"time",e[e.length-1],"pos"),l=1===e.length?o:(o-er(t,"time",e[e.length-2],"pos"))/2),{start:s,end:l,factor:1/(s+1+l)}}(r._table,c,0,0,o),s.reverse&&c.reverse(),ar(r,c,r._majorUnit)},getLabelForIndex:function(t,e){var n=this,r=n._adapter,i=n.chart.data,a=n.options.time,o=i.labels&&t<i.labels.length?i.labels[t]:"",s=i.datasets[e].data[t];return Y.isObject(s)&&(o=n.getRightValue(s)),a.tooltipFormat?r.format(nr(n,o),a.tooltipFormat):"string"==typeof o?o:r.format(nr(n,o),a.displayFormats.datetime)},tickFormatFunction:function(t,e,n,r){var i=this._adapter,a=this.options,o=a.time.displayFormats,s=o[this._unit],l=this._majorUnit,u=o[l],c=n[e],h=a.ticks,d=l&&u&&c&&c.major,f=i.format(t,r||(d?u:s)),p=d?h.major:h.minor,g=Gn([p.callback,p.userCallback,h.callback,h.userCallback]);return g?g(f,e,n):f},convertTicksToLabels:function(t){var e,n,r=[];for(e=0,n=t.length;e<n;++e)r.push(this.tickFormatFunction(t[e].value,e,t));return r},getPixelForOffset:function(t){var e=this._offsets,n=er(this._table,"time",t,"pos");return this.getPixelForDecimal((e.start+n)*e.factor)},getPixelForValue:function(t,e,n){var r=null;if(void 0!==e&&void 0!==n&&(r=this._timestamps.datasets[n][e]),null===r&&(r=rr(this,t)),null!==r)return this.getPixelForOffset(r)},getPixelForTick:function(t){var e=this.getTicks();return t>=0&&t<e.length?this.getPixelForOffset(e[t].value):null},getValueForPixel:function(t){var e=this._offsets,n=this.getDecimalForPixel(t)/e.factor-e.end,r=er(this._table,"pos",n,"time");return this._adapter._create(r)},_getLabelSize:function(t){var e=this.options.ticks,n=this.ctx.measureText(t).width,r=Y.toRadians(this.isHorizontal()?e.maxRotation:e.minRotation),i=Math.cos(r),a=Math.sin(r),o=Kn(e.fontSize,j.global.defaultFontSize);return{w:n*i+o*a,h:n*a+o*i}},getLabelWidth:function(t){return this._getLabelSize(t).w},getLabelCapacity:function(t){var e=this,n=e.options.time,r=n.displayFormats,i=r[n.unit]||r.millisecond,a=e.tickFormatFunction(t,0,ar(e,[t],e._majorUnit),i),o=e._getLabelSize(a),s=Math.floor(e.isHorizontal()?e.width/o.w:e.height/o.h);return e.options.offset&&s--,s>0?s:1}}),sr={position:"bottom",distribution:"linear",bounds:"data",adapters:{},time:{parser:!1,unit:!1,round:!1,displayFormat:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{autoSkip:!1,source:"auto",major:{enabled:!1}}};or._defaults=sr;var lr={category:vn,linear:Sn,logarithmic:Pn,radialLinear:Bn,time:or},ur={datetime:"MMM D, YYYY, h:mm:ss a",millisecond:"h:mm:ss.SSS a",second:"h:mm:ss a",minute:"h:mm a",hour:"hA",day:"MMM D",week:"ll",month:"MMM YYYY",quarter:"[Q]Q - YYYY",year:"YYYY"};Qe._date.override("function"==typeof t?{_id:"moment",formats:function(){return ur},parse:function(e,n){return"string"==typeof e&&"string"==typeof n?e=t(e,n):e instanceof t||(e=t(e)),e.isValid()?e.valueOf():null},format:function(e,n){return t(e).format(n)},add:function(e,n,r){return t(e).add(n,r).valueOf()},diff:function(e,n,r){return t(e).diff(t(n),r)},startOf:function(e,n,r){return e=t(e),"isoWeek"===n?e.isoWeekday(r).valueOf():e.startOf(n).valueOf()},endOf:function(e,n){return t(e).endOf(n).valueOf()},_create:function(e){return t(e)}}:{}),j._set("global",{plugins:{filler:{propagate:!0}}});var cr={dataset:function(t){var e=t.fill,n=t.chart,r=n.getDatasetMeta(e),i=r&&n.isDatasetVisible(e)&&r.dataset._children||[],a=i.length||0;return a?function(t,e){return e<a&&i[e]._view||null}:null},boundary:function(t){var e=t.boundary,n=e?e.x:null,r=e?e.y:null;return Y.isArray(e)?function(t,n){return e[n]}:function(t){return{x:null===n?t.x:n,y:null===r?t.y:r}}}};function hr(t,e,n){var r,i=t._model||{},a=i.fill;if(void 0===a&&(a=!!i.backgroundColor),!1===a||null===a)return!1;if(!0===a)return"origin";if(r=parseFloat(a,10),isFinite(r)&&Math.floor(r)===r)return"-"!==a[0]&&"+"!==a[0]||(r=e+r),!(r===e||r<0||r>=n)&&r;switch(a){case"bottom":return"start";case"top":return"end";case"zero":return"origin";case"origin":case"start":case"end":return a;default:return!1}}function dr(t){return(t.el._scale||{}).getPointPositionForValue?function(t){var e,n,r,i,a,o=t.el._scale,s=o.options,l=o.chart.data.labels.length,u=t.fill,c=[];if(!l)return null;for(e=s.ticks.reverse?o.max:o.min,n=s.ticks.reverse?o.min:o.max,r=o.getPointPositionForValue(0,e),i=0;i<l;++i)a="start"===u||"end"===u?o.getPointPositionForValue(i,"start"===u?e:n):o.getBasePosition(i),s.gridLines.circular&&(a.cx=r.x,a.cy=r.y,a.angle=o.getIndexAngle(i)-Math.PI/2),c.push(a);return c}(t):function(t){var e,n=t.el._model||{},r=t.el._scale||{},i=t.fill,a=null;if(isFinite(i))return null;if("start"===i?a=void 0===n.scaleBottom?r.bottom:n.scaleBottom:"end"===i?a=void 0===n.scaleTop?r.top:n.scaleTop:void 0!==n.scaleZero?a=n.scaleZero:r.getBasePixel&&(a=r.getBasePixel()),null!=a){if(void 0!==a.x&&void 0!==a.y)return a;if(Y.isFinite(a))return{x:(e=r.isHorizontal())?a:null,y:e?null:a}}return null}(t)}function fr(t,e,n){var r,i=t[e].fill,a=[e];if(!n)return i;for(;!1!==i&&-1===a.indexOf(i);){if(!isFinite(i))return i;if(!(r=t[i]))return!1;if(r.visible)return i;a.push(i),i=r.fill}return!1}function pr(t){var e=t.fill,n="dataset";return!1===e?null:(isFinite(e)||(n="boundary"),cr[n](t))}function gr(t){return t&&!t.skip}function mr(t,e,n,r,i){var a,o,s,l;if(r&&i){for(t.moveTo(e[0].x,e[0].y),a=1;a<r;++a)Y.canvas.lineTo(t,e[a-1],e[a]);if(void 0===n[0].angle)for(t.lineTo(n[i-1].x,n[i-1].y),a=i-1;a>0;--a)Y.canvas.lineTo(t,n[a],n[a-1],!0);else for(o=n[0].cx,s=n[0].cy,l=Math.sqrt(Math.pow(n[0].x-o,2)+Math.pow(n[0].y-s,2)),a=i-1;a>0;--a)t.arc(o,s,l,n[a].angle,n[a-1].angle,!0)}}function vr(t,e,n,r,i,a){var o,s,l,u,c,h,d,f,p=e.length,g=r.spanGaps,m=[],v=[],b=0,y=0;for(t.beginPath(),o=0,s=p;o<s;++o)c=n(u=e[l=o%p]._view,l,r),h=gr(u),d=gr(c),a&&void 0===f&&h&&(s=p+(f=o+1)),h&&d?(b=m.push(u),y=v.push(c)):b&&y&&(g?(h&&m.push(u),d&&v.push(c)):(mr(t,m,v,b,y),b=y=0,m=[],v=[]));mr(t,m,v,b,y),t.closePath(),t.fillStyle=i,t.fill()}var br={id:"filler",afterDatasetsUpdate:function(t,e){var n,r,i,a,o=(t.data.datasets||[]).length,s=e.propagate,l=[];for(r=0;r<o;++r)a=null,(i=(n=t.getDatasetMeta(r)).dataset)&&i._model&&i instanceof _t.Line&&(a={visible:t.isDatasetVisible(r),fill:hr(i,r,o),chart:t,el:i}),n.$filler=a,l.push(a);for(r=0;r<o;++r)(a=l[r])&&(a.fill=fr(l,r,s),a.boundary=dr(a),a.mapper=pr(a))},beforeDatasetsDraw:function(t){var e,n,r,i,a,o,s,l=t._getSortedVisibleDatasetMetas(),u=t.ctx;for(n=l.length-1;n>=0;--n)(e=l[n].$filler)&&e.visible&&(i=(r=e.el)._view,a=r._children||[],o=e.mapper,s=i.backgroundColor||j.global.defaultColor,o&&s&&a.length&&(Y.canvas.clipArea(u,t.chartArea),vr(u,a,o,i,s,r._loop),Y.canvas.unclipArea(u)))}},yr=Y.rtl.getRtlAdapter,xr=Y.noop,_r=Y.valueOrDefault;function wr(t,e){return t.usePointStyle&&t.boxWidth>e?e:t.boxWidth}j._set("global",{legend:{display:!0,position:"top",align:"center",fullWidth:!0,reverse:!1,weight:1e3,onClick:function(t,e){var n=e.datasetIndex,r=this.chart,i=r.getDatasetMeta(n);i.hidden=null===i.hidden?!r.data.datasets[n].hidden:null,r.update()},onHover:null,onLeave:null,labels:{boxWidth:40,padding:10,generateLabels:function(t){var e=t.data.datasets,n=t.options.legend||{},r=n.labels&&n.labels.usePointStyle;return t._getSortedDatasetMetas().map((function(n){var i=n.controller.getStyle(r?0:void 0);return{text:e[n.index].label,fillStyle:i.backgroundColor,hidden:!t.isDatasetVisible(n.index),lineCap:i.borderCapStyle,lineDash:i.borderDash,lineDashOffset:i.borderDashOffset,lineJoin:i.borderJoinStyle,lineWidth:i.borderWidth,strokeStyle:i.borderColor,pointStyle:i.pointStyle,rotation:i.rotation,datasetIndex:n.index}}),this)}}},legendCallback:function(t){var e,n,r,i=document.createElement("ul"),a=t.data.datasets;for(i.setAttribute("class",t.id+"-legend"),e=0,n=a.length;e<n;e++)(r=i.appendChild(document.createElement("li"))).appendChild(document.createElement("span")).style.backgroundColor=a[e].backgroundColor,a[e].label&&r.appendChild(document.createTextNode(a[e].label));return i.outerHTML}});var kr=J.extend({initialize:function(t){Y.extend(this,t),this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1},beforeUpdate:xr,update:function(t,e,n){var r=this;return r.beforeUpdate(),r.maxWidth=t,r.maxHeight=e,r.margins=n,r.beforeSetDimensions(),r.setDimensions(),r.afterSetDimensions(),r.beforeBuildLabels(),r.buildLabels(),r.afterBuildLabels(),r.beforeFit(),r.fit(),r.afterFit(),r.afterUpdate(),r.minSize},afterUpdate:xr,beforeSetDimensions:xr,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:xr,beforeBuildLabels:xr,buildLabels:function(){var t=this,e=t.options.labels||{},n=Y.callback(e.generateLabels,[t.chart],t)||[];e.filter&&(n=n.filter((function(n){return e.filter(n,t.chart.data)}))),t.options.reverse&&n.reverse(),t.legendItems=n},afterBuildLabels:xr,beforeFit:xr,fit:function(){var t=this,e=t.options,n=e.labels,r=e.display,i=t.ctx,a=Y.options._parseFont(n),o=a.size,s=t.legendHitBoxes=[],l=t.minSize,u=t.isHorizontal();if(u?(l.width=t.maxWidth,l.height=r?10:0):(l.width=r?10:0,l.height=t.maxHeight),r){if(i.font=a.string,u){var c=t.lineWidths=[0],h=0;i.textAlign="left",i.textBaseline="middle",Y.each(t.legendItems,(function(t,e){var r=wr(n,o)+o/2+i.measureText(t.text).width;(0===e||c[c.length-1]+r+2*n.padding>l.width)&&(h+=o+n.padding,c[c.length-(e>0?0:1)]=0),s[e]={left:0,top:0,width:r,height:o},c[c.length-1]+=r+n.padding})),l.height+=h}else{var d=n.padding,f=t.columnWidths=[],p=t.columnHeights=[],g=n.padding,m=0,v=0;Y.each(t.legendItems,(function(t,e){var r=wr(n,o)+o/2+i.measureText(t.text).width;e>0&&v+o+2*d>l.height&&(g+=m+n.padding,f.push(m),p.push(v),m=0,v=0),m=Math.max(m,r),v+=o+d,s[e]={left:0,top:0,width:r,height:o}})),g+=m,f.push(m),p.push(v),l.width+=g}t.width=l.width,t.height=l.height}else t.width=l.width=t.height=l.height=0},afterFit:xr,isHorizontal:function(){return"top"===this.options.position||"bottom"===this.options.position},draw:function(){var t=this,e=t.options,n=e.labels,r=j.global,i=r.defaultColor,a=r.elements.line,o=t.height,s=t.columnHeights,l=t.width,u=t.lineWidths;if(e.display){var c,h=yr(e.rtl,t.left,t.minSize.width),d=t.ctx,f=_r(n.fontColor,r.defaultFontColor),p=Y.options._parseFont(n),g=p.size;d.textAlign=h.textAlign("left"),d.textBaseline="middle",d.lineWidth=.5,d.strokeStyle=f,d.fillStyle=f,d.font=p.string;var m=wr(n,g),v=t.legendHitBoxes,b=function(t,r){switch(e.align){case"start":return n.padding;case"end":return t-r;default:return(t-r+n.padding)/2}},y=t.isHorizontal();c=y?{x:t.left+b(l,u[0]),y:t.top+n.padding,line:0}:{x:t.left+n.padding,y:t.top+b(o,s[0]),line:0},Y.rtl.overrideTextDirection(t.ctx,e.textDirection);var x=g+n.padding;Y.each(t.legendItems,(function(e,r){var f=d.measureText(e.text).width,p=m+g/2+f,_=c.x,w=c.y;h.setWidth(t.minSize.width),y?r>0&&_+p+n.padding>t.left+t.minSize.width&&(w=c.y+=x,c.line++,_=c.x=t.left+b(l,u[c.line])):r>0&&w+x>t.top+t.minSize.height&&(_=c.x=_+t.columnWidths[c.line]+n.padding,c.line++,w=c.y=t.top+b(o,s[c.line]));var k=h.x(_);!function(t,e,r){if(!(isNaN(m)||m<=0)){d.save();var o=_r(r.lineWidth,a.borderWidth);if(d.fillStyle=_r(r.fillStyle,i),d.lineCap=_r(r.lineCap,a.borderCapStyle),d.lineDashOffset=_r(r.lineDashOffset,a.borderDashOffset),d.lineJoin=_r(r.lineJoin,a.borderJoinStyle),d.lineWidth=o,d.strokeStyle=_r(r.strokeStyle,i),d.setLineDash&&d.setLineDash(_r(r.lineDash,a.borderDash)),n&&n.usePointStyle){var s=m*Math.SQRT2/2,l=h.xPlus(t,m/2),u=e+g/2;Y.canvas.drawPoint(d,r.pointStyle,s,l,u,r.rotation)}else d.fillRect(h.leftForLtr(t,m),e,m,g),0!==o&&d.strokeRect(h.leftForLtr(t,m),e,m,g);d.restore()}}(k,w,e),v[r].left=h.leftForLtr(k,v[r].width),v[r].top=w,function(t,e,n,r){var i=g/2,a=h.xPlus(t,m+i),o=e+i;d.fillText(n.text,a,o),n.hidden&&(d.beginPath(),d.lineWidth=2,d.moveTo(a,o),d.lineTo(h.xPlus(a,r),o),d.stroke())}(k,w,e,f),y?c.x+=p+n.padding:c.y+=x})),Y.rtl.restoreTextDirection(t.ctx,e.textDirection)}},_getLegendItemAt:function(t,e){var n,r,i,a=this;if(t>=a.left&&t<=a.right&&e>=a.top&&e<=a.bottom)for(i=a.legendHitBoxes,n=0;n<i.length;++n)if(t>=(r=i[n]).left&&t<=r.left+r.width&&e>=r.top&&e<=r.top+r.height)return a.legendItems[n];return null},handleEvent:function(t){var e,n=this,r=n.options,i="mouseup"===t.type?"click":t.type;if("mousemove"===i){if(!r.onHover&&!r.onLeave)return}else{if("click"!==i)return;if(!r.onClick)return}e=n._getLegendItemAt(t.x,t.y),"click"===i?e&&r.onClick&&r.onClick.call(n,t.native,e):(r.onLeave&&e!==n._hoveredItem&&(n._hoveredItem&&r.onLeave.call(n,t.native,n._hoveredItem),n._hoveredItem=e),r.onHover&&e&&r.onHover.call(n,t.native,e))}});function Mr(t,e){var n=new kr({ctx:t.ctx,options:e,chart:t});pe.configure(t,n,e),pe.addBox(t,n),t.legend=n}var Sr={id:"legend",_element:kr,beforeInit:function(t){var e=t.options.legend;e&&Mr(t,e)},beforeUpdate:function(t){var e=t.options.legend,n=t.legend;e?(Y.mergeIf(e,j.global.legend),n?(pe.configure(t,n,e),n.options=e):Mr(t,e)):n&&(pe.removeBox(t,n),delete t.legend)},afterEvent:function(t,e){var n=t.legend;n&&n.handleEvent(e)}},Dr=Y.noop;j._set("global",{title:{display:!1,fontStyle:"bold",fullWidth:!0,padding:10,position:"top",text:"",weight:2e3}});var Cr=J.extend({initialize:function(t){Y.extend(this,t),this.legendHitBoxes=[]},beforeUpdate:Dr,update:function(t,e,n){var r=this;return r.beforeUpdate(),r.maxWidth=t,r.maxHeight=e,r.margins=n,r.beforeSetDimensions(),r.setDimensions(),r.afterSetDimensions(),r.beforeBuildLabels(),r.buildLabels(),r.afterBuildLabels(),r.beforeFit(),r.fit(),r.afterFit(),r.afterUpdate(),r.minSize},afterUpdate:Dr,beforeSetDimensions:Dr,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:Dr,beforeBuildLabels:Dr,buildLabels:Dr,afterBuildLabels:Dr,beforeFit:Dr,fit:function(){var t,e=this,n=e.options,r=e.minSize={},i=e.isHorizontal();n.display?(t=(Y.isArray(n.text)?n.text.length:1)*Y.options._parseFont(n).lineHeight+2*n.padding,e.width=r.width=i?e.maxWidth:t,e.height=r.height=i?t:e.maxHeight):e.width=r.width=e.height=r.height=0},afterFit:Dr,isHorizontal:function(){var t=this.options.position;return"top"===t||"bottom"===t},draw:function(){var t=this,e=t.ctx,n=t.options;if(n.display){var r,i,a,o=Y.options._parseFont(n),s=o.lineHeight,l=s/2+n.padding,u=0,c=t.top,h=t.left,d=t.bottom,f=t.right;e.fillStyle=Y.valueOrDefault(n.fontColor,j.global.defaultFontColor),e.font=o.string,t.isHorizontal()?(i=h+(f-h)/2,a=c+l,r=f-h):(i="left"===n.position?h+l:f-l,a=c+(d-c)/2,r=d-c,u=Math.PI*("left"===n.position?-.5:.5)),e.save(),e.translate(i,a),e.rotate(u),e.textAlign="center",e.textBaseline="middle";var p=n.text;if(Y.isArray(p))for(var g=0,m=0;m<p.length;++m)e.fillText(p[m],0,g,r),g+=s;else e.fillText(p,0,0,r);e.restore()}}});function Or(t,e){var n=new Cr({ctx:t.ctx,options:e,chart:t});pe.configure(t,n,e),pe.addBox(t,n),t.titleBlock=n}var Tr={},Ar=br,Pr=Sr,Ir={id:"title",_element:Cr,beforeInit:function(t){var e=t.options.title;e&&Or(t,e)},beforeUpdate:function(t){var e=t.options.title,n=t.titleBlock;e?(Y.mergeIf(e,j.global.title),n?(pe.configure(t,n,e),n.options=e):Or(t,e)):n&&(pe.removeBox(t,n),delete t.titleBlock)}};for(var Fr in Tr.filler=Ar,Tr.legend=Pr,Tr.title=Ir,Ze.helpers=Y,function(){function t(t,e,n){var r;return"string"==typeof t?(r=parseInt(t,10),-1!==t.indexOf("%")&&(r=r/100*e.parentNode[n])):r=t,r}function e(t){return null!=t&&"none"!==t}function n(n,r,i){var a=document.defaultView,o=Y._getParentNode(n),s=a.getComputedStyle(n)[r],l=a.getComputedStyle(o)[r],u=e(s),c=e(l),h=Number.POSITIVE_INFINITY;return u||c?Math.min(u?t(s,n,i):h,c?t(l,o,i):h):"none"}Y.where=function(t,e){if(Y.isArray(t)&&Array.prototype.filter)return t.filter(e);var n=[];return Y.each(t,(function(t){e(t)&&n.push(t)})),n},Y.findIndex=Array.prototype.findIndex?function(t,e,n){return t.findIndex(e,n)}:function(t,e,n){n=void 0===n?t:n;for(var r=0,i=t.length;r<i;++r)if(e.call(n,t[r],r,t))return r;return-1},Y.findNextWhere=function(t,e,n){Y.isNullOrUndef(n)&&(n=-1);for(var r=n+1;r<t.length;r++){var i=t[r];if(e(i))return i}},Y.findPreviousWhere=function(t,e,n){Y.isNullOrUndef(n)&&(n=t.length);for(var r=n-1;r>=0;r--){var i=t[r];if(e(i))return i}},Y.isNumber=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},Y.almostEquals=function(t,e,n){return Math.abs(t-e)<n},Y.almostWhole=function(t,e){var n=Math.round(t);return n-e<=t&&n+e>=t},Y.max=function(t){return t.reduce((function(t,e){return isNaN(e)?t:Math.max(t,e)}),Number.NEGATIVE_INFINITY)},Y.min=function(t){return t.reduce((function(t,e){return isNaN(e)?t:Math.min(t,e)}),Number.POSITIVE_INFINITY)},Y.sign=Math.sign?function(t){return Math.sign(t)}:function(t){return 0==(t=+t)||isNaN(t)?t:t>0?1:-1},Y.toRadians=function(t){return t*(Math.PI/180)},Y.toDegrees=function(t){return t*(180/Math.PI)},Y._decimalPlaces=function(t){if(Y.isFinite(t)){for(var e=1,n=0;Math.round(t*e)/e!==t;)e*=10,n++;return n}},Y.getAngleFromPoint=function(t,e){var n=e.x-t.x,r=e.y-t.y,i=Math.sqrt(n*n+r*r),a=Math.atan2(r,n);return a<-.5*Math.PI&&(a+=2*Math.PI),{angle:a,distance:i}},Y.distanceBetweenPoints=function(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))},Y.aliasPixel=function(t){return t%2==0?0:.5},Y._alignPixel=function(t,e,n){var r=t.currentDevicePixelRatio,i=n/2;return Math.round((e-i)*r)/r+i},Y.splineCurve=function(t,e,n,r){var i=t.skip?e:t,a=e,o=n.skip?e:n,s=Math.sqrt(Math.pow(a.x-i.x,2)+Math.pow(a.y-i.y,2)),l=Math.sqrt(Math.pow(o.x-a.x,2)+Math.pow(o.y-a.y,2)),u=s/(s+l),c=l/(s+l),h=r*(u=isNaN(u)?0:u),d=r*(c=isNaN(c)?0:c);return{previous:{x:a.x-h*(o.x-i.x),y:a.y-h*(o.y-i.y)},next:{x:a.x+d*(o.x-i.x),y:a.y+d*(o.y-i.y)}}},Y.EPSILON=Number.EPSILON||1e-14,Y.splineCurveMonotone=function(t){var e,n,r,i,a,o,s,l,u,c=(t||[]).map((function(t){return{model:t._model,deltaK:0,mK:0}})),h=c.length;for(e=0;e<h;++e)if(!(r=c[e]).model.skip){if(n=e>0?c[e-1]:null,(i=e<h-1?c[e+1]:null)&&!i.model.skip){var d=i.model.x-r.model.x;r.deltaK=0!==d?(i.model.y-r.model.y)/d:0}!n||n.model.skip?r.mK=r.deltaK:!i||i.model.skip?r.mK=n.deltaK:this.sign(n.deltaK)!==this.sign(r.deltaK)?r.mK=0:r.mK=(n.deltaK+r.deltaK)/2}for(e=0;e<h-1;++e)r=c[e],i=c[e+1],r.model.skip||i.model.skip||(Y.almostEquals(r.deltaK,0,this.EPSILON)?r.mK=i.mK=0:(a=r.mK/r.deltaK,o=i.mK/r.deltaK,(l=Math.pow(a,2)+Math.pow(o,2))<=9||(s=3/Math.sqrt(l),r.mK=a*s*r.deltaK,i.mK=o*s*r.deltaK)));for(e=0;e<h;++e)(r=c[e]).model.skip||(n=e>0?c[e-1]:null,i=e<h-1?c[e+1]:null,n&&!n.model.skip&&(u=(r.model.x-n.model.x)/3,r.model.controlPointPreviousX=r.model.x-u,r.model.controlPointPreviousY=r.model.y-u*r.mK),i&&!i.model.skip&&(u=(i.model.x-r.model.x)/3,r.model.controlPointNextX=r.model.x+u,r.model.controlPointNextY=r.model.y+u*r.mK))},Y.nextItem=function(t,e,n){return n?e>=t.length-1?t[0]:t[e+1]:e>=t.length-1?t[t.length-1]:t[e+1]},Y.previousItem=function(t,e,n){return n?e<=0?t[t.length-1]:t[e-1]:e<=0?t[0]:t[e-1]},Y.niceNum=function(t,e){var n=Math.floor(Y.log10(t)),r=t/Math.pow(10,n);return(e?r<1.5?1:r<3?2:r<7?5:10:r<=1?1:r<=2?2:r<=5?5:10)*Math.pow(10,n)},Y.requestAnimFrame="undefined"==typeof window?function(t){t()}:window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){return window.setTimeout(t,1e3/60)},Y.getRelativePosition=function(t,e){var n,r,i=t.originalEvent||t,a=t.target||t.srcElement,o=a.getBoundingClientRect(),s=i.touches;s&&s.length>0?(n=s[0].clientX,r=s[0].clientY):(n=i.clientX,r=i.clientY);var l=parseFloat(Y.getStyle(a,"padding-left")),u=parseFloat(Y.getStyle(a,"padding-top")),c=parseFloat(Y.getStyle(a,"padding-right")),h=parseFloat(Y.getStyle(a,"padding-bottom")),d=o.right-o.left-l-c,f=o.bottom-o.top-u-h;return{x:n=Math.round((n-o.left-l)/d*a.width/e.currentDevicePixelRatio),y:r=Math.round((r-o.top-u)/f*a.height/e.currentDevicePixelRatio)}},Y.getConstraintWidth=function(t){return n(t,"max-width","clientWidth")},Y.getConstraintHeight=function(t){return n(t,"max-height","clientHeight")},Y._calculatePadding=function(t,e,n){return(e=Y.getStyle(t,e)).indexOf("%")>-1?n*parseInt(e,10)/100:parseInt(e,10)},Y._getParentNode=function(t){var e=t.parentNode;return e&&"[object ShadowRoot]"===e.toString()&&(e=e.host),e},Y.getMaximumWidth=function(t){var e=Y._getParentNode(t);if(!e)return t.clientWidth;var n=e.clientWidth,r=n-Y._calculatePadding(e,"padding-left",n)-Y._calculatePadding(e,"padding-right",n),i=Y.getConstraintWidth(t);return isNaN(i)?r:Math.min(r,i)},Y.getMaximumHeight=function(t){var e=Y._getParentNode(t);if(!e)return t.clientHeight;var n=e.clientHeight,r=n-Y._calculatePadding(e,"padding-top",n)-Y._calculatePadding(e,"padding-bottom",n),i=Y.getConstraintHeight(t);return isNaN(i)?r:Math.min(r,i)},Y.getStyle=function(t,e){return t.currentStyle?t.currentStyle[e]:document.defaultView.getComputedStyle(t,null).getPropertyValue(e)},Y.retinaScale=function(t,e){var n=t.currentDevicePixelRatio=e||"undefined"!=typeof window&&window.devicePixelRatio||1;if(1!==n){var r=t.canvas,i=t.height,a=t.width;r.height=i*n,r.width=a*n,t.ctx.scale(n,n),r.style.height||r.style.width||(r.style.height=i+"px",r.style.width=a+"px")}},Y.fontString=function(t,e,n){return e+" "+t+"px "+n},Y.longestText=function(t,e,n,r){var i=(r=r||{}).data=r.data||{},a=r.garbageCollect=r.garbageCollect||[];r.font!==e&&(i=r.data={},a=r.garbageCollect=[],r.font=e),t.font=e;var o,s,l,u,c,h=0,d=n.length;for(o=0;o<d;o++)if(null!=(u=n[o])&&!0!==Y.isArray(u))h=Y.measureText(t,i,a,h,u);else if(Y.isArray(u))for(s=0,l=u.length;s<l;s++)null==(c=u[s])||Y.isArray(c)||(h=Y.measureText(t,i,a,h,c));var f=a.length/2;if(f>n.length){for(o=0;o<f;o++)delete i[a[o]];a.splice(0,f)}return h},Y.measureText=function(t,e,n,r,i){var a=e[i];return a||(a=e[i]=t.measureText(i).width,n.push(i)),a>r&&(r=a),r},Y.numberOfLabelLines=function(t){var e=1;return Y.each(t,(function(t){Y.isArray(t)&&t.length>e&&(e=t.length)})),e},Y.color=w?function(t){return t instanceof CanvasGradient&&(t=j.global.defaultColor),w(t)}:function(t){return console.error("Color.js not found!"),t},Y.getHoverColor=function(t){return t instanceof CanvasPattern||t instanceof CanvasGradient?t:Y.color(t).saturate(.5).darken(.1).rgbString()}}(),Ze._adapters=Qe,Ze.Animation=Z,Ze.animationService=X,Ze.controllers=Xt,Ze.DatasetController=nt,Ze.defaults=j,Ze.Element=J,Ze.elements=_t,Ze.Interaction=ie,Ze.layouts=pe,Ze.platform=Oe,Ze.plugins=Te,Ze.Scale=gn,Ze.scaleService=Ae,Ze.Ticks=tn,Ze.Tooltip=Ye,Ze.helpers.each(lr,(function(t,e){Ze.scaleService.registerScaleType(e,t,t._defaults)})),Tr)Tr.hasOwnProperty(Fr)&&Ze.plugins.register(Tr[Fr]);Ze.platform.initialize();var Lr=Ze;return"undefined"!=typeof window&&(window.Chart=Ze),Ze.Chart=Ze,Ze.Legend=Tr.legend._element,Ze.Title=Tr.title._element,Ze.pluginService=Ze.plugins,Ze.PluginBase=Ze.Element.extend({}),Ze.canvasHelpers=Ze.helpers.canvas,Ze.layoutService=Ze.layouts,Ze.LinearScaleBase=_n,Ze.helpers.each(["Bar","Bubble","Doughnut","Line","PolarArea","Radar","Scatter"],(function(t){Ze[t]=function(e,n){return new Ze(e,Ze.helpers.merge(n||{},{type:t.charAt(0).toLowerCase()+t.slice(1)}))}})),Lr}(function(){try{return n("wd/R")}catch(t){}}())},MvSz:function(t,e,n){n("ioFf");var r=n("LXxW"),i=n("0ycA"),a=Object.prototype.propertyIsEnumerable,o=Object.getOwnPropertySymbols,s=o?function(t){return null==t?[]:(t=Object(t),r(o(t),(function(e){return a.call(t,e)})))}:i;t.exports=s},NKxu:function(t,e,n){n("pIFo"),n("Oyvg"),n("a1Th"),n("h7Nl"),n("Btvt");var r=n("lSCD"),i=n("E2jh"),a=n("GoyQ"),o=n("3Fdi"),s=/^\[object .+?Constructor\]$/,l=Function.prototype,u=Object.prototype,c=l.toString,h=u.hasOwnProperty,d=RegExp("^"+c.call(h).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!a(t)||i(t))&&(r(t)?d:s).test(o(t))}},Npjl:function(t,e){t.exports=function(t,e){return null==t?void 0:t[e]}},Nr18:function(t,e,n){"use strict";var r=n("S/j/"),i=n("d/Gc"),a=n("ne8i");t.exports=function(t){for(var e=r(this),n=a(e.length),o=arguments.length,s=i(o>1?arguments[1]:void 0,n),l=o>2?arguments[2]:void 0,u=void 0===l?n:i(l,n);u>s;)e[s++]=t;return e}},NykK:function(t,e,n){var r=n("nmnc"),i=n("AP2z"),a=n("KfNM"),o=r?r.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":o&&o in Object(t)?i(t):a(t)}},O0oS:function(t,e,n){var r=n("Cwc5"),i=function(){try{var t=r(Object,"defineProperty");return t({},"",{}),t}catch(e){}}();t.exports=i},O7RO:function(t,e,n){var r=n("CMye"),i=n("7GkX");t.exports=function(t){for(var e=i(t),n=e.length;n--;){var a=e[n],o=t[a];e[n]=[a,o,r(o)]}return e}},"Of+w":function(t,e,n){var r=n("Cwc5")(n("Kz5y"),"WeakMap");t.exports=r},QVEU:function(t,e,n){var r=n("hypo"),i=n("UMY1")((function(t,e,n){r(t,n,e)}));t.exports=i},QkVE:function(t,e,n){n("bWfx");var r=n("EpBk");t.exports=function(t,e){var n=t.__data__;return r(e)?n["string"==typeof e?"string":"hash"]:n.map}},QoRX:function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}},QqLw:function(t,e,n){var r=n("tadb"),i=n("ebwN"),a=n("HOxn"),o=n("yGk4"),s=n("Of+w"),l=n("NykK"),u=n("3Fdi"),c=u(r),h=u(i),d=u(a),f=u(o),p=u(s),g=l;(r&&"[object DataView]"!=g(new r(new ArrayBuffer(1)))||i&&"[object Map]"!=g(new i)||a&&"[object Promise]"!=g(a.resolve())||o&&"[object Set]"!=g(new o)||s&&"[object WeakMap]"!=g(new s))&&(g=function(t){var e=l(t),n="[object Object]"==e?t.constructor:void 0,r=n?u(n):"";if(r)switch(r){case c:return"[object DataView]";case h:return"[object Map]";case d:return"[object Promise]";case f:return"[object Set]";case p:return"[object WeakMap]"}return e}),t.exports=g},SKAX:function(t,e,n){var r=n("JC6p"),i=n("lQqw")(r);t.exports=i},SfRM:function(t,e,n){var r=n("YESw");t.exports=function(){this.__data__=r?r(null):{},this.size=0}},UDbo:function(t,e,n){"use strict";(function(t){n.d(e,"b",(function(){return x})),n.d(e,"a",(function(){return _}));n("rGqo"),n("yt8O"),n("Btvt"),n("hhXQ"),n("8+KV"),n("bWfx"),n("/SS/"),n("hHhE"),n("V+eJ"),n("91GP");var r=n("q1tI"),i=n.n(r),a=n("17x9"),o=n.n(a),s=n("MO+k"),l=n.n(s),u=n("Y+p1"),c=n.n(u),h=n("QVEU"),d=n.n(h),f=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t};function p(t,e){var n={};for(var r in t)e.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n}function g(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function m(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function v(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var b=void 0!==t&&{}&&"production",y=function(t){function e(){g(this,e);var n=m(this,t.call(this));return n.handleOnClick=function(t){var e=n.chartInstance,r=n.props,i=r.getDatasetAtEvent,a=r.getElementAtEvent,o=r.getElementsAtEvent,s=r.onElementsClick;i&&i(e.getDatasetAtEvent(t),t),a&&a(e.getElementAtEvent(t),t),o&&o(e.getElementsAtEvent(t),t),s&&s(e.getElementsAtEvent(t),t)},n.ref=function(t){n.element=t},n.chartInstance=void 0,n}return v(e,t),e.prototype.componentDidMount=function(){this.renderChart()},e.prototype.componentDidUpdate=function(){if(this.props.redraw)return this.destroyChart(),void this.renderChart();this.updateChart()},e.prototype.shouldComponentUpdate=function(t){var e=this.props,n=(e.redraw,e.type),r=e.options,i=e.plugins,a=e.legend,o=e.height,s=e.width;if(!0===t.redraw)return!0;if(o!==t.height||s!==t.width)return!0;if(n!==t.type)return!0;if(!c()(a,t.legend))return!0;if(!c()(r,t.options))return!0;var l=this.transformDataProp(t);return!c()(this.shadowDataProp,l)||!c()(i,t.plugins)},e.prototype.componentWillUnmount=function(){this.destroyChart()},e.prototype.transformDataProp=function(t){var e=t.data;return"function"==typeof e?e(this.element):e},e.prototype.memoizeDataProps=function(){if(this.props.data){var t=this.transformDataProp(this.props);return this.shadowDataProp=f({},t,{datasets:t.datasets&&t.datasets.map((function(t){return f({},t)}))}),this.saveCurrentDatasets(),t}},e.prototype.checkDatasets=function(t){var n="production"!==b&&"prod"!==b,r=this.props.datasetKeyProvider!==e.getLabelAsKey,i=t.length>1;if(n&&i&&!r){var a=!1;t.forEach((function(t){t.label||(a=!0)})),a&&console.error('[react-chartjs-2] Warning: Each dataset needs a unique key. By default, the "label" property on each dataset is used. Alternatively, you may provide a "datasetKeyProvider" as a prop that returns a unique key.')}},e.prototype.getCurrentDatasets=function(){return this.chartInstance&&this.chartInstance.config.data&&this.chartInstance.config.data.datasets||[]},e.prototype.saveCurrentDatasets=function(){var t=this;this.datasets=this.datasets||{},this.getCurrentDatasets().forEach((function(e){t.datasets[t.props.datasetKeyProvider(e)]=e}))},e.prototype.updateChart=function(){var t=this,e=this.props.options,n=this.memoizeDataProps(this.props);if(this.chartInstance){e&&(this.chartInstance.options=l.a.helpers.configMerge(this.chartInstance.options,e));var r=this.getCurrentDatasets(),i=n.datasets||[];this.checkDatasets(r);var a=d()(r,this.props.datasetKeyProvider);this.chartInstance.config.data.datasets=i.map((function(e){var n=a[t.props.datasetKeyProvider(e)];if(n&&n.type===e.type&&e.data){n.data.splice(e.data.length),e.data.forEach((function(t,r){n.data[r]=e.data[r]}));e.data;var r=p(e,["data"]);return f({},n,r)}return e}));n.datasets;var o=p(n,["datasets"]);this.chartInstance.config.data=f({},this.chartInstance.config.data,o),this.chartInstance.update()}},e.prototype.renderChart=function(){var t=this.props,n=t.options,r=t.legend,i=t.type,a=t.plugins,o=this.element,s=this.memoizeDataProps();void 0===r||c()(e.defaultProps.legend,r)||(n.legend=r),this.chartInstance=new l.a(o,{type:i,data:s,options:n,plugins:a})},e.prototype.destroyChart=function(){if(this.chartInstance){this.saveCurrentDatasets();var t=Object.values(this.datasets);this.chartInstance.config.data.datasets=t,this.chartInstance.destroy()}},e.prototype.render=function(){var t=this.props,e=t.height,n=t.width,r=t.id;return i.a.createElement("canvas",{ref:this.ref,height:e,width:n,id:r,onClick:this.handleOnClick})},e}(i.a.Component);y.getLabelAsKey=function(t){return t.label},y.propTypes={data:o.a.oneOfType([o.a.object,o.a.func]).isRequired,getDatasetAtEvent:o.a.func,getElementAtEvent:o.a.func,getElementsAtEvent:o.a.func,height:o.a.number,legend:o.a.object,onElementsClick:o.a.func,options:o.a.object,plugins:o.a.arrayOf(o.a.object),redraw:o.a.bool,type:function(t,e,n){if(!l.a.controllers[t[e]])return new Error("Invalid chart type `"+t[e]+"` supplied to `"+n+"`.")},width:o.a.number,datasetKeyProvider:o.a.func},y.defaultProps={legend:{display:!0,position:"bottom"},type:"doughnut",height:150,width:300,redraw:!1,options:{},datasetKeyProvider:y.getLabelAsKey};(function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(y,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"doughnut"}))}})(i.a.Component),function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(y,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"pie"}))}}(i.a.Component);var x=function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}return v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(y,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"line"}))},e}(i.a.Component),_=function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}return v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(y,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"bar"}))},e}(i.a.Component);(function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(y,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"horizontalBar"}))}})(i.a.Component),function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(y,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"radar"}))}}(i.a.Component),function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(y,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"polarArea"}))}}(i.a.Component),function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(y,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"bubble"}))}}(i.a.Component),function(t){function e(){return g(this,e),m(this,t.apply(this,arguments))}v(e,t),e.prototype.render=function(){var t=this;return i.a.createElement(y,f({},this.props,{ref:function(e){return t.chartInstance=e&&e.chartInstance},type:"scatter"}))}}(i.a.Component),l.a.defaults}).call(this,n("8oxB"))},UExd:function(t,e,n){var r=n("nh4g"),i=n("DVgA"),a=n("aCFj"),o=n("UqcF").f;t.exports=function(t){return function(e){for(var n,s=a(e),l=i(s),u=l.length,c=0,h=[];u>c;)n=l[c++],r&&!o.call(s,n)||h.push(t?[n,s[n]]:s[n]);return h}}},UMY1:function(t,e,n){var r=n("oMRN"),i=n("JD84"),a=n("ut/Y"),o=n("Z0cm");t.exports=function(t,e){return function(n,s){var l=o(n)?r:i,u=e?e():{};return l(n,t,a(s,2),u)}}},"UNi/":function(t,e){t.exports=function(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}},V6Ve:function(t,e,n){n("rGqo"),n("yt8O"),n("Btvt"),n("RW0V");var r=n("kekF")(Object.keys,Object);t.exports=r},VaNO:function(t,e){t.exports=function(t){return this.__data__.has(t)}},WFqU:function(t,e,n){(function(e){var n="object"==typeof e&&e&&e.Object===Object&&e;t.exports=n}).call(this,n("yLpj"))},Xi7e:function(t,e,n){var r=n("KMkd"),i=n("adU4"),a=n("tMB7"),o=n("+6XX"),s=n("Z8oC");function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=i,l.prototype.get=a,l.prototype.has=o,l.prototype.set=s,t.exports=l},"Y+p1":function(t,e,n){var r=n("wF/u");t.exports=function(t,e){return r(t,e)}},YESw:function(t,e,n){var r=n("Cwc5")(Object,"create");t.exports=r},YuTi:function(t,e,n){n("HAE/"),t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},Z0cm:function(t,e,n){n("LK8F");var r=Array.isArray;t.exports=r},Z8oC:function(t,e,n){var r=n("y1pI");t.exports=function(t,e){var n=this.__data__,i=r(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this}},ZCpW:function(t,e,n){var r=n("lm/5"),i=n("O7RO"),a=n("IOzZ");t.exports=function(t){var e=i(t);return 1==e.length&&e[0][2]?a(e[0][0],e[0][1]):function(n){return n===t||r(n,t,e)}}},ZWtO:function(t,e,n){var r=n("4uTw"),i=n("9Nap");t.exports=function(t,e){for(var n=0,a=(e=r(e,t)).length;null!=t&&n<a;)t=t[i(e[n++])];return n&&n==a?t:void 0}},Zshi:function(t,e,n){var r=n("0/R4");n("Xtr8")("isFrozen",(function(t){return function(e){return!r(e)||!!t&&t(e)}}))},adU4:function(t,e,n){var r=n("y1pI"),i=Array.prototype.splice;t.exports=function(t){var e=this.__data__,n=r(e,t);return!(n<0)&&(n==e.length-1?e.pop():i.call(e,n,1),--this.size,!0)}},b80T:function(t,e,n){var r=n("UNi/"),i=n("03A+"),a=n("Z0cm"),o=n("DSRE"),s=n("wJg7"),l=n("c6wG"),u=Object.prototype.hasOwnProperty;t.exports=function(t,e){var n=a(t),c=!n&&i(t),h=!n&&!c&&o(t),d=!n&&!c&&!h&&l(t),f=n||c||h||d,p=f?r(t.length,String):[],g=p.length;for(var m in t)!e&&!u.call(t,m)||f&&("length"==m||h&&("offset"==m||"parent"==m)||d&&("buffer"==m||"byteLength"==m||"byteOffset"==m)||s(m,g))||p.push(m);return p}},bHtr:function(t,e,n){var r=n("XKFU");r(r.P,"Array",{fill:n("Nr18")}),n("nGyu")("fill")},c6wG:function(t,e,n){var r=n("dD9F"),i=n("sEf8"),a=n("mdPL"),o=a&&a.isTypedArray,s=o?i(o):r;t.exports=s},"cq/+":function(t,e,n){var r=n("mc0g")();t.exports=r},dD9F:function(t,e,n){var r=n("NykK"),i=n("shjB"),a=n("ExA7"),o={};o["[object Float32Array]"]=o["[object Float64Array]"]=o["[object Int8Array]"]=o["[object Int16Array]"]=o["[object Int32Array]"]=o["[object Uint8Array]"]=o["[object Uint8ClampedArray]"]=o["[object Uint16Array]"]=o["[object Uint32Array]"]=!0,o["[object Arguments]"]=o["[object Array]"]=o["[object ArrayBuffer]"]=o["[object Boolean]"]=o["[object DataView]"]=o["[object Date]"]=o["[object Error]"]=o["[object Function]"]=o["[object Map]"]=o["[object Number]"]=o["[object Object]"]=o["[object RegExp]"]=o["[object Set]"]=o["[object String]"]=o["[object WeakMap]"]=!1,t.exports=function(t){return a(t)&&i(t.length)&&!!o[r(t)]}},dt0z:function(t,e,n){var r=n("zoYe");t.exports=function(t){return null==t?"":r(t)}},e4Nc:function(t,e,n){var r=n("fGT3"),i=n("k+1r"),a=n("JHgL"),o=n("pSRY"),s=n("H8j4");function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=i,l.prototype.get=a,l.prototype.has=o,l.prototype.set=s,t.exports=l},e5cp:function(t,e,n){var r=n("fmRc"),i=n("or5M"),a=n("HDyB"),o=n("seXi"),s=n("QqLw"),l=n("Z0cm"),u=n("DSRE"),c=n("c6wG"),h="[object Object]",d=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,f,p,g){var m=l(t),v=l(e),b=m?"[object Array]":s(t),y=v?"[object Array]":s(e),x=(b="[object Arguments]"==b?h:b)==h,_=(y="[object Arguments]"==y?h:y)==h,w=b==y;if(w&&u(t)){if(!u(e))return!1;m=!0,x=!1}if(w&&!x)return g||(g=new r),m||c(t)?i(t,e,n,f,p,g):a(t,e,b,n,f,p,g);if(!(1&n)){var k=x&&d.call(t,"__wrapped__"),M=_&&d.call(e,"__wrapped__");if(k||M){var S=k?t.value():t,D=M?e.value():e;return g||(g=new r),p(S,D,n,f,g)}}return!!w&&(g||(g=new r),o(t,e,n,f,p,g))}},eHKK:function(t,e,n){var r=n("XKFU");r(r.S,"Math",{log10:function(t){return Math.log(t)*Math.LOG10E}})},eUgh:function(t,e){t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,i=Array(r);++n<r;)i[n]=e(t[n],n,t);return i}},ebwN:function(t,e,n){var r=n("Cwc5")(n("Kz5y"),"Map");t.exports=r},ekgI:function(t,e,n){var r=n("YESw"),i=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;return r?void 0!==e[t]:i.call(e,t)}},fGT3:function(t,e,n){var r=n("4kuk"),i=n("Xi7e"),a=n("ebwN");t.exports=function(){this.size=0,this.__data__={hash:new r,map:new(a||i),string:new r}}},"fR/l":function(t,e,n){var r=n("CH3K"),i=n("Z0cm");t.exports=function(t,e,n){var a=e(t);return i(t)?a:r(a,n(t))}},fmRc:function(t,e,n){var r=n("Xi7e"),i=n("77Zs"),a=n("L8xA"),o=n("gCq4"),s=n("VaNO"),l=n("0Cz8");function u(t){var e=this.__data__=new r(t);this.size=e.size}u.prototype.clear=i,u.prototype.delete=a,u.prototype.get=o,u.prototype.has=s,u.prototype.set=l,t.exports=u},ftKO:function(t,e){t.exports=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this}},gCq4:function(t,e){t.exports=function(t){return this.__data__.get(t)}},"h/M4":function(t,e,n){var r=n("XKFU");r(r.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},hgQt:function(t,e,n){var r=n("Juji"),i=n("4sDh");t.exports=function(t,e){return null!=t&&i(t,e,r)}},hhXQ:function(t,e,n){var r=n("XKFU"),i=n("UExd")(!1);r(r.S,"Object",{values:function(t){return i(t)}})},hypo:function(t,e,n){var r=n("O0oS");t.exports=function(t,e,n){"__proto__"==e&&r?r(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}},jqX0:function(t,e,n){var r=n("XKFU"),i=n("jtBr");r(r.P+r.F*(Date.prototype.toISOString!==i),"Date",{toISOString:i})},jtBr:function(t,e,n){"use strict";var r=n("eeVq"),i=Date.prototype.getTime,a=Date.prototype.toISOString,o=function(t){return t>9?t:"0"+t};t.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=a.call(new Date(-5e13-1))}))||!r((function(){a.call(new Date(NaN))}))?function(){if(!isFinite(i.call(this)))throw RangeError("Invalid time value");var t=this,e=t.getUTCFullYear(),n=t.getUTCMilliseconds(),r=e<0?"-":e>9999?"+":"";return r+("00000"+Math.abs(e)).slice(r?-6:-4)+"-"+o(t.getUTCMonth()+1)+"-"+o(t.getUTCDate())+"T"+o(t.getUTCHours())+":"+o(t.getUTCMinutes())+":"+o(t.getUTCSeconds())+"."+(n>99?n:"0"+o(n))+"Z"}:a},"k+1r":function(t,e,n){var r=n("QkVE");t.exports=function(t){var e=r(this,t).delete(t);return this.size-=e?1:0,e}},kekF:function(t,e){t.exports=function(t,e){return function(n){return t(e(n))}}},knhD:function(t,e,n){var r=n("XKFU");r(r.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},lQqw:function(t,e,n){var r=n("MMmD");t.exports=function(t,e){return function(n,i){if(null==n)return n;if(!r(n))return t(n,i);for(var a=n.length,o=e?a:-1,s=Object(n);(e?o--:++o<a)&&!1!==i(s[o],o,s););return n}}},lSCD:function(t,e,n){var r=n("NykK"),i=n("GoyQ");t.exports=function(t){if(!i(t))return!1;var e=r(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}},ljhN:function(t,e){t.exports=function(t,e){return t===e||t!=t&&e!=e}},"lm/5":function(t,e,n){var r=n("fmRc"),i=n("wF/u");t.exports=function(t,e,n,a){var o=n.length,s=o,l=!a;if(null==t)return!s;for(t=Object(t);o--;){var u=n[o];if(l&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++o<s;){var c=(u=n[o])[0],h=t[c],d=u[1];if(l&&u[2]){if(void 0===h&&!(c in t))return!1}else{var f=new r;if(a)var p=a(h,d,c,t,e,f);if(!(void 0===p?i(d,h,3,a,f):p))return!1}}return!0}},lvtm:function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},mc0g:function(t,e){t.exports=function(t){return function(e,n,r){for(var i=-1,a=Object(e),o=r(e),s=o.length;s--;){var l=o[t?s:++i];if(!1===n(a[l],l,a))break}return e}}},mdPL:function(t,e,n){(function(t){var r=n("WFqU"),i=e&&!e.nodeType&&e,a=i&&"object"==typeof t&&t&&!t.nodeType&&t,o=a&&a.exports===i&&r.process,s=function(){try{var t=a&&a.require&&a.require("util").types;return t||o&&o.binding&&o.binding("util")}catch(e){}}();t.exports=s}).call(this,n("YuTi")(t))},mwIZ:function(t,e,n){var r=n("ZWtO");t.exports=function(t,e,n){var i=null==t?void 0:r(t,e);return void 0===i?n:i}},nmnc:function(t,e,n){var r=n("Kz5y").Symbol;t.exports=r},oMRN:function(t,e){t.exports=function(t,e,n,r){for(var i=-1,a=null==t?0:t.length;++i<a;){var o=t[i];e(r,o,n(o),t)}return r}},or5M:function(t,e,n){var r=n("1hJj"),i=n("QoRX"),a=n("xYSL");t.exports=function(t,e,n,o,s,l){var u=1&n,c=t.length,h=e.length;if(c!=h&&!(u&&h>c))return!1;var d=l.get(t);if(d&&l.get(e))return d==e;var f=-1,p=!0,g=2&n?new r:void 0;for(l.set(t,e),l.set(e,t);++f<c;){var m=t[f],v=e[f];if(o)var b=u?o(v,m,f,e,t,l):o(m,v,f,t,e,l);if(void 0!==b){if(b)continue;p=!1;break}if(g){if(!i(e,(function(t,e){if(!a(g,e)&&(m===t||s(m,t,n,o,l)))return g.push(e)}))){p=!1;break}}else if(m!==v&&!s(m,v,n,o,l)){p=!1;break}}return l.delete(t),l.delete(e),p}},oweT:function(t,e,n){"use strict";n.r(e);var r=n("Bl7J"),i=n("2A+t"),a=n("MXbp"),o=n("q1tI"),s=n("UDbo"),l=n("qKvR");var u=function(t){var e,n;function r(){for(var e,n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];return(e=t.call.apply(t,[this].concat(r))||this).state={lineChartData:e.props.lineChartData},e}return n=t,(e=r).prototype=Object.create(n.prototype),e.prototype.constructor=e,e.__proto__=n,r.prototype.render=function(){return Object(l.c)("div",null,Object(l.c)(s.b,{data:this.state.lineChartData,height:220,width:250,options:{scales:{xAxes:[{display:!0,ticks:{fontColor:"white",maxTicksLimit:3},gridLines:{color:"white"},scaleLabel:{display:!0,labelString:this.props.xAxis,fontColor:"white"}}],yAxes:[{display:!0,ticks:{fontColor:"white",maxTicksLimit:3},gridLines:{color:"white"},scaleLabel:{display:!0,labelString:this.props.yAxis,fontColor:"white"}}]},legend:{labels:{fontColor:"white"},display:this.props.displayLegend,position:this.props.legendPosition},animation:{duration:2e3,easing:"easeOutCubic"}}}))},r}(o.Component);u.defaultProps={displayLegend:!0,legendPosition:"bottom"};var c=u;var h=function(t){var e,n;function r(){for(var e,n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];return(e=t.call.apply(t,[this].concat(r))||this).state={barChartData:e.props.barChartData},e}return n=t,(e=r).prototype=Object.create(n.prototype),e.prototype.constructor=e,e.__proto__=n,r.prototype.render=function(){return Object(l.c)("div",null,Object(l.c)(s.a,{data:this.state.barChartData,height:220,width:250,options:{scales:{xAxes:[{display:!0,ticks:{fontColor:"white"},gridLines:{color:"white"},scaleLabel:{display:!1,labelString:this.props.xAxis,fontColor:"white"}}],yAxes:[{display:!0,ticks:{fontColor:"white",maxTicksLimit:4,padding:2,beginAtZero:!0},gridLines:{color:"white"},scaleLabel:{display:!0,labelString:this.props.yAxis,fontColor:"white"}}]},legend:{display:this.props.displayLegend,position:this.props.legendPosition},animation:{duration:2e3,easing:"easeOutCubic"}}}))},r}(o.Component);h.defaultProps={displayLegend:!1,legendPosition:"bottom"};var d=h,f=function(t){var e=t.children,n=t.primary,r=t.graphData,a=t.heading,o=t.chartType,s=t.xAxis,l=t.yAxis;return"line"===o?Object(i.c)("div",{sx:{boxShadow:n?"cardShadow":null,borderRadius:"card",backgroundColor:"primary",color:"white",marginY:5,marginX:1,width:"18rem",display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center"}},Object(i.c)("h5",{sx:{fontSize:"1.1rem",margin:"0.5rem 1.5rem 0.5rem 1.5rem",textAlign:"center",height:"3rem"}},a),Object(i.c)(c,{lineChartData:r,legendPosition:"bottom",xAxis:s,yAxis:l}),Object(i.c)("div",{sx:{boxShadowBottom:n?"cardShadow":null,borderBottomRightRadius:"card",borderBottomLeftRadius:"card",backgroundColor:"white",borderTop:"0.35rem solid #5DA7A3",color:"darkText",height:"50%",padding:"4rem 1rem",display:"flex",justifyContent:"center",alignItems:"center",width:"100%",marginBottom:"-4rem",marginTop:"1rem"}},e)):Object(i.c)("div",{sx:{boxShadow:n?"cardShadow":null,borderRadius:"card",backgroundColor:"primary",color:"white",marginY:5,marginX:1,width:"18rem",display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center"}},Object(i.c)("h5",{sx:{fontSize:"1.1rem",margin:"0.5rem 1rem 0.5rem 1rem",textAlign:"center",height:"3rem"}},a),Object(i.c)(d,{barChartData:r,yAxis:l}),Object(i.c)("div",{sx:{boxShadowBottom:n?"cardShadow":null,borderBottomRightRadius:"card",borderBottomLeftRadius:"card",backgroundColor:"white",borderTop:"0.35rem solid #5DA7A3",color:"darkText",height:"50%",padding:"4rem 1rem",display:"flex",justifyContent:"center",alignItems:"center",width:"100%",marginBottom:"-4rem",marginTop:"1rem"}},e))};var p=function(t){var e,n;function o(){for(var e,n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];return(e=t.call.apply(t,[this].concat(r))||this).state={barChartJDK8Startup:{labels:["OpenJ9","HotSpot"],datasets:[{data:[.58,1],backgroundColor:["#5DA7A3","#E58B23"]}]},barChartJDK8Footprint:{labels:["OpenJ9","HotSpot"],datasets:[{data:[.34,1],backgroundColor:["#5DA7A3","#E58B23"]}]},lineChartJK8FasterRampupInTheCloud:{labels:[0,150,300,450,600,750,900,1050,1200,1350],datasets:[{label:"OpenJ9",data:[8.5,1064,1063,1133,1188.5,1071,1125.5,1084.5,1095,1104.5],fill:!1,borderColor:"#5DA7A3",backgroundColor:"#5DA7A3"},{label:"HotSpot",data:[10.5,529.5,700.5,832.5,796,829.5,698.5,791.5,1017,1175.5],fill:!1,borderColor:"#E58B23",backgroundColor:"#E58B23"}]},lineChartJK8FootprintDuringLoad:{labels:[0,200,400,600,800,1e3,1200,1400,1600,1800],datasets:[{label:"OpenJ9",data:[232,488,505,511,516,517,520,521,521,522],fill:!1,borderColor:"#5DA7A3",backgroundColor:"#5DA7A3"},{label:"HotSpot",data:[563,902,1023,1140,1200,1218,1220,1289,1359,1368],fill:!1,borderColor:"#E58B23",backgroundColor:"#E58B23"}]},barChartJDK11Startup:{labels:["OpenJ9","HotSpot"],datasets:[{data:[.49,1],backgroundColor:["#5DA7A3","#E58B23"]}]},barChartJDK11Footprint:{labels:["OpenJ9","HotSpot"],datasets:[{data:[.5,1],backgroundColor:["#5DA7A3","#E58B23"]}]},lineChartJK11FasterRampupInTheCloud:{labels:[0,25,50,75,100,125,150,175,200,225,250,275,300],datasets:[{label:"OpenJ9",data:[606,2483,2621,2805,2853,2924,3049,3103,3122,3043,3069,3092,3167],fill:!1,borderColor:"#5DA7A3",backgroundColor:"#5DA7A3"},{label:"HotSpot",data:[139,1208,1620,1952,2157,2551,2696,2879,3264,3337,3392,3436,3479],fill:!1,borderColor:"#E58B23",backgroundColor:"#E58B23"}]},lineChartJK11FootprintDuringLoad:{labels:[0,100,200,300,400,500,600],datasets:[{label:"OpenJ9",data:[267,630,674,680,688,688,691],fill:!1,borderColor:"#5DA7A3",backgroundColor:"#5DA7A3"},{label:"HotSpot",data:[500,786,945,975,985,1001,1011],fill:!1,borderColor:"#E58B23",backgroundColor:"#E58B23"}]},barChartJDK11QuarkusStartup:{labels:["OpenJ9","HotSpot"],datasets:[{data:[.34,1],backgroundColor:["#5DA7A3","#E58B23"]}]},barChartJDK11QuarkusFootprint:{labels:["OpenJ9","HotSpot"],datasets:[{data:[.82,1],backgroundColor:["#5DA7A3","#E58B23"]}]},lineChartJK11QuarkusFasterRampupInTheCloud:{labels:[0,10,20,30,40,50,60,70,80,90,100,110,120],datasets:[{label:"OpenJ9",data:[2,4233,4311,4307,4312,4347,4432,4468,4564,4601,4627,4606,4657],fill:!1,borderColor:"#5DA7A3",backgroundColor:"#5DA7A3"},{label:"HotSpot",data:[1,1426,1959,3603,5545,5609,5616,5601,5583,5619,5560,5354,5639],fill:!1,borderColor:"#E58B23",backgroundColor:"#E58B23"}]},barChartJK11QuarkusFootprintDuringLoad:{labels:["OpenJ9","HotSpot"],datasets:[{data:[147,178],backgroundColor:["#5DA7A3","#E58B23"]}]}},e}return n=t,(e=o).prototype=Object.create(n.prototype),e.prototype.constructor=e,e.__proto__=n,o.prototype.render=function(){return Object(i.c)(r.a,{isHome:!1,title:"Eclipse OpenJ9 performance",description:"OpenJDK with OpenJ9 demonstrates significantly better performance than HotSpot."},Object(i.c)("section",{sx:{backgroundColor:"#F5F9FC",paddingX:"7%",paddingTop:"4rem",paddingBottom:"0.1rem"}},Object(i.c)(a.b.h1,{sx:{marginBottom:"1rem"}},"Performance Overview"),Object(i.c)(a.b.p,null,"Application performance can be measured using many different metrics, including startup time, ramp-up time, footprint, and response time, as well as throughput. At Eclipse OpenJ9, we keep a watchful eye on all of these metrics, making sensible tradeoffs and providing tuning options that allow the virtual machine (VM) to be optimized for different workloads.")),Object(i.c)("section",{id:"openjdk8",sx:{backgroundColor:"#F5F9FC",paddingX:"7%",paddingTop:"0.1rem",paddingBottom:"4rem"}},Object(i.c)(a.b.h2,null,"OpenJDK 8 performance with Eclipse OpenJ9"),Object(i.c)(a.b.p,{sx:{marginBottom:"0.5rem"}},"OpenJDK 8 with OpenJ9 demonstrates significantly better performance than OpenJDK 8 with HotSpot"),Object(i.c)("div",{sx:{display:"flex",justifyContent:"space-around",flexWrap:"wrap"}},Object(i.c)(f,{graphData:this.state.barChartJDK8Startup,heading:"42% faster startup time",primary:!0,chartType:"bar",yAxis:"Relative startup time"},Object(i.c)("p",null,"Shared classes and Ahead-of-Time (AOT) technologies typically reduce startup time. By using -Xquickstart mode as well, you can reduce startup time by up to 42%.")),Object(i.c)(f,{graphData:this.state.barChartJDK8Footprint,heading:"66% smaller footprint after startup",primary:!0,chartType:"bar",yAxis:"Relative resident set size"},Object(i.c)("p",null,"OpenJ9 is highly optimized for cloud workloads, where minimizing memory footprint is important. Out of the box, the footprint is 66% smaller than HotSpot.")),Object(i.c)(f,{graphData:this.state.lineChartJK8FasterRampupInTheCloud,heading:"Faster ramp-up time in the cloud",primary:!0,chartType:"line",xAxis:"Time (s)",yAxis:"Throughput (pages/s)"},Object(i.c)("p",null,"OpenJ9 reaches peak throughput on a single CPU core in 8.5 minutes compared with 30 minutes for Hotspot. Ideal for short-lived VMs running in the cloud.")),Object(i.c)(f,{graphData:this.state.lineChartJK8FootprintDuringLoad,heading:"63% smaller footprint during load",primary:!0,chartType:"line",yAxis:"Resident Set Size (MB)",xAxis:"Time (s)"},Object(i.c)("p",null,"Memory footprint increases rapidly when load is applied. However, at steady state, OpenJ9 consistently used around 63% less physical memory than HotSpot."))),Object(i.c)("div",{sx:{display:"flex",justifyContent:"center"}},Object(i.c)("a",{sx:{variant:"buttons.secondary",display:"flex",alignItems:"center",justifyContent:"center",textDecoration:"none",width:"16rem",marginTop:"7rem"},href:"https://github.com/eclipse/openj9-website/blob/master/benchmark/daytrader7.md",rel:"noopener noreferrer",target:"_blank"},"Read more performance details"))),Object(i.c)("section",{id:"openjdk11",sx:{backgroundColor:"#F5F9FC",paddingX:"7%",paddingTop:"0.1rem",paddingBottom:"4rem"}},Object(i.c)(a.b.h2,null,"OpenJDK 11 performance with Eclipse OpenJ9"),Object(i.c)(a.b.p,{sx:{marginBottom:"0.5rem"}},"Testing shows similar results for OpenJDK 11; OpenJ9 outperforms HotSpot on Liberty startup, ramp up, and footprint"),Object(i.c)("div",{sx:{display:"flex",justifyContent:"space-around",flexWrap:"wrap"}},Object(i.c)(f,{graphData:this.state.barChartJDK11Startup,heading:"51% faster startup time",primary:!0,chartType:"bar",yAxis:"Relative startup time"},Object(i.c)("p",null,"By using shared classes cache and AOT technology, OpenJ9 starts in roughly half the time it takes HotSpot.")),Object(i.c)(f,{graphData:this.state.barChartJDK11Footprint,heading:"50% smaller footprint after startup",primary:!0,chartType:"bar",yAxis:"Relative resident set size"},Object(i.c)("p",null,"After startup, the OpenJ9 footprint is half the size of HotSpot, which makes it ideal for cloud workloads.")),Object(i.c)(f,{graphData:this.state.lineChartJK11FasterRampupInTheCloud,heading:"Faster ramp-up time in the cloud",primary:!0,chartType:"line",xAxis:"Time (s)",yAxis:"Throughput (pages/s)"},Object(i.c)("p",null,"OpenJ9 reaches peak throughput much faster than HotSpot making it especially suitable for running short-lived applications.")),Object(i.c)(f,{graphData:this.state.lineChartJK11FootprintDuringLoad,heading:"33% smaller footprint during load",primary:!0,chartType:"line",yAxis:"Resident Set Size (MB)",xAxis:"Time (s)"},Object(i.c)("p",null,"Consistent with the footprint results after startup, the OpenJ9 footprint remains much smaller than HotSpot when load is applied."))),Object(i.c)("div",{sx:{display:"flex",justifyContent:"center"}},Object(i.c)("a",{sx:{variant:"buttons.secondary",display:"flex",alignItems:"center",justifyContent:"center",textDecoration:"none",width:"16rem",marginTop:"7rem"},href:"https://github.com/eclipse/openj9-website/blob/master/benchmark/openjdk11-daytrader7.md",rel:"noopener noreferrer",target:"_blank"},"Read more performance details"))),Object(i.c)("section",{id:"openjdk11quarkus",sx:{backgroundColor:"#F5F9FC",paddingX:"7%",paddingTop:"0.1rem",paddingBottom:"4rem"}},Object(i.c)(a.b.h2,null,"OpenJDK 11 performance with Quarkus and Eclipse OpenJ9"),Object(i.c)(a.b.p,{sx:{marginBottom:"0.5rem"}},"Using OpenJ9 with Quarkus instead of HotSpot makes Java even more supersonic and subatomic!"),Object(i.c)("div",{sx:{display:"flex",justifyContent:"space-around",flexWrap:"wrap"}},Object(i.c)(f,{graphData:this.state.barChartJDK11QuarkusStartup,heading:"66% faster startup time",primary:!0,chartType:"bar",yAxis:"Relative startup time"},Object(i.c)("p",null,"Quarkus might be supersonic, but running it with OpenJ9 instead of HotSpot reduces startup time by a further 66%.")),Object(i.c)(f,{graphData:this.state.barChartJDK11QuarkusFootprint,heading:"18% smaller footprint after startup",primary:!0,chartType:"bar",yAxis:"Relative resident set size"},Object(i.c)("p",null,"The ultra-supersonic startup time comes at some tradeoff to footprint, but OpenJ9 still has an edge over HotSpot.")),Object(i.c)(f,{graphData:this.state.lineChartJK11QuarkusFasterRampupInTheCloud,heading:"Faster ramp-up time in the cloud",primary:!0,chartType:"line",xAxis:"Time (s)",yAxis:"Throughput (pages/s)"},Object(i.c)("p",null,"For short-lived cloud workloads running on Quarkus, OpenJ9 delivers excellent ramp-up performance compared to HotSpot.")),Object(i.c)(f,{graphData:this.state.barChartJK11QuarkusFootprintDuringLoad,heading:"18% smaller footprint during load",primary:!0,chartType:"bar",yAxis:"Resident Set Size (MB)",xAxis:"Time (s)"},Object(i.c)("p",null,"When ramp-up completes, as well as getting there faster, OpenJ9 still retains a smaller footprint than HotSpot."))),Object(i.c)("div",{sx:{display:"flex",justifyContent:"center"}},Object(i.c)("a",{sx:{variant:"buttons.secondary",display:"flex",alignItems:"center",justifyContent:"center",textDecoration:"none",width:"16rem",marginTop:"7rem"},href:"https://github.com/eclipse/openj9-website/blob/master/benchmark/quarkus.md",rel:"noopener noreferrer",target:"_blank"},"Read more performance details"))))},o}(o.Component);e.default=p},pSRY:function(t,e,n){var r=n("QkVE");t.exports=function(t){return r(this,t).has(t)}},qZTm:function(t,e,n){var r=n("fR/l"),i=n("MvSz"),a=n("7GkX");t.exports=function(t){return r(t,a,i)}},rEGp:function(t,e,n){n("8+KV"),t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}},sEf8:function(t,e){t.exports=function(t){return function(e){return t(e)}}},seXi:function(t,e,n){var r=n("qZTm"),i=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,a,o,s){var l=1&n,u=r(t),c=u.length;if(c!=r(e).length&&!l)return!1;for(var h=c;h--;){var d=u[h];if(!(l?d in e:i.call(e,d)))return!1}var f=s.get(t);if(f&&s.get(e))return f==e;var p=!0;s.set(t,e),s.set(e,t);for(var g=l;++h<c;){var m=t[d=u[h]],v=e[d];if(a)var b=l?a(v,m,d,e,t,s):a(m,v,d,t,e,s);if(!(void 0===b?m===v||o(m,v,n,a,s):b)){p=!1;break}g||(g="constructor"==d)}if(p&&!g){var y=t.constructor,x=e.constructor;y!=x&&"constructor"in t&&"constructor"in e&&!("function"==typeof y&&y instanceof y&&"function"==typeof x&&x instanceof x)&&(p=!1)}return s.delete(t),s.delete(e),p}},shjB:function(t,e){t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},tMB7:function(t,e,n){var r=n("y1pI");t.exports=function(t){var e=this.__data__,n=r(e,t);return n<0?void 0:e[n][1]}},tadb:function(t,e,n){var r=n("Cwc5")(n("Kz5y"),"DataView");t.exports=r},u8Dt:function(t,e,n){var r=n("YESw"),i=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;if(r){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return i.call(e,t)?e[t]:void 0}},"ut/Y":function(t,e,n){var r=n("ZCpW"),i=n("GDhZ"),a=n("zZ0H"),o=n("Z0cm"),s=n("+c4W");t.exports=function(t){return"function"==typeof t?t:null==t?a:"object"==typeof t?o(t)?i(t[0],t[1]):r(t):s(t)}},"wF/u":function(t,e,n){var r=n("e5cp"),i=n("ExA7");t.exports=function t(e,n,a,o,s){return e===n||(null==e||null==n||!i(e)&&!i(n)?e!=e&&n!=n:r(e,n,a,o,t,s))}},wJg7:function(t,e){var n=/^(?:0|[1-9]\d*)$/;t.exports=function(t,e){var r=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==r||"symbol"!=r&&n.test(t))&&t>-1&&t%1==0&&t<e}},"wd/R":function(t,e,n){(function(t){n("AphP"),n("jqX0"),n("eM6i"),n("f3/d"),n("8+KV"),n("KKXr"),n("V+eJ"),n("SRfc"),n("Vd3H"),n("pIFo"),n("rGqo"),n("yt8O"),n("RW0V"),n("Oyvg"),n("Zshi"),n("dZ+Y"),n("a1Th"),n("h7Nl"),n("Btvt"),t.exports=function(){"use strict";var e,n;function r(){return e.apply(null,arguments)}function i(t){return t instanceof Array||"[object Array]"===Object.prototype.toString.call(t)}function a(t){return null!=t&&"[object Object]"===Object.prototype.toString.call(t)}function o(t){return void 0===t}function s(t){return"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t)}function l(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function u(t,e){var n,r=[];for(n=0;n<t.length;++n)r.push(e(t[n],n));return r}function c(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function h(t,e){for(var n in e)c(e,n)&&(t[n]=e[n]);return c(e,"toString")&&(t.toString=e.toString),c(e,"valueOf")&&(t.valueOf=e.valueOf),t}function d(t,e,n,r){return ke(t,e,n,r,!0).utc()}function f(t){return null==t._pf&&(t._pf={empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1}),t._pf}function p(t){if(null==t._isValid){var e=f(t),r=n.call(e.parsedDateParts,(function(t){return null!=t})),i=!isNaN(t._d.getTime())&&e.overflow<0&&!e.empty&&!e.invalidMonth&&!e.invalidWeekday&&!e.weekdayMismatch&&!e.nullInput&&!e.invalidFormat&&!e.userInvalidated&&(!e.meridiem||e.meridiem&&r);if(t._strict&&(i=i&&0===e.charsLeftOver&&0===e.unusedTokens.length&&void 0===e.bigHour),null!=Object.isFrozen&&Object.isFrozen(t))return i;t._isValid=i}return t._isValid}function g(t){var e=d(NaN);return null!=t?h(f(e),t):f(e).userInvalidated=!0,e}n=Array.prototype.some?Array.prototype.some:function(t){for(var e=Object(this),n=e.length>>>0,r=0;r<n;r++)if(r in e&&t.call(this,e[r],r,e))return!0;return!1};var m=r.momentProperties=[];function v(t,e){var n,r,i;if(o(e._isAMomentObject)||(t._isAMomentObject=e._isAMomentObject),o(e._i)||(t._i=e._i),o(e._f)||(t._f=e._f),o(e._l)||(t._l=e._l),o(e._strict)||(t._strict=e._strict),o(e._tzm)||(t._tzm=e._tzm),o(e._isUTC)||(t._isUTC=e._isUTC),o(e._offset)||(t._offset=e._offset),o(e._pf)||(t._pf=f(e)),o(e._locale)||(t._locale=e._locale),m.length>0)for(n=0;n<m.length;n++)o(i=e[r=m[n]])||(t[r]=i);return t}var b=!1;function y(t){v(this,t),this._d=new Date(null!=t._d?t._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),!1===b&&(b=!0,r.updateOffset(this),b=!1)}function x(t){return t instanceof y||null!=t&&null!=t._isAMomentObject}function _(t){return t<0?Math.ceil(t)||0:Math.floor(t)}function w(t){var e=+t,n=0;return 0!==e&&isFinite(e)&&(n=_(e)),n}function k(t,e,n){var r,i=Math.min(t.length,e.length),a=Math.abs(t.length-e.length),o=0;for(r=0;r<i;r++)(n&&t[r]!==e[r]||!n&&w(t[r])!==w(e[r]))&&o++;return o+a}function M(t){!1===r.suppressDeprecationWarnings&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function S(t,e){var n=!0;return h((function(){if(null!=r.deprecationHandler&&r.deprecationHandler(null,t),n){for(var i,a=[],o=0;o<arguments.length;o++){if(i="","object"==typeof arguments[o]){for(var s in i+="\n["+o+"] ",arguments[0])i+=s+": "+arguments[0][s]+", ";i=i.slice(0,-2)}else i=arguments[o];a.push(i)}M(t+"\nArguments: "+Array.prototype.slice.call(a).join("")+"\n"+(new Error).stack),n=!1}return e.apply(this,arguments)}),e)}var D,C={};function O(t,e){null!=r.deprecationHandler&&r.deprecationHandler(t,e),C[t]||(M(e),C[t]=!0)}function T(t){return t instanceof Function||"[object Function]"===Object.prototype.toString.call(t)}function A(t,e){var n,r=h({},t);for(n in e)c(e,n)&&(a(t[n])&&a(e[n])?(r[n]={},h(r[n],t[n]),h(r[n],e[n])):null!=e[n]?r[n]=e[n]:delete r[n]);for(n in t)c(t,n)&&!c(e,n)&&a(t[n])&&(r[n]=h({},r[n]));return r}function P(t){null!=t&&this.set(t)}r.suppressDeprecationWarnings=!1,r.deprecationHandler=null,D=Object.keys?Object.keys:function(t){var e,n=[];for(e in t)c(t,e)&&n.push(e);return n};var I={};function F(t,e){var n=t.toLowerCase();I[n]=I[n+"s"]=I[e]=t}function L(t){return"string"==typeof t?I[t]||I[t.toLowerCase()]:void 0}function R(t){var e,n,r={};for(n in t)c(t,n)&&(e=L(n))&&(r[e]=t[n]);return r}var j={};function E(t,e){j[t]=e}function N(t,e,n){var r=""+Math.abs(t),i=e-r.length;return(t>=0?n?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+r}var z=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,W=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Y={},V={};function B(t,e,n,r){var i=r;"string"==typeof r&&(i=function(){return this[r]()}),t&&(V[t]=i),e&&(V[e[0]]=function(){return N(i.apply(this,arguments),e[1],e[2])}),n&&(V[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),t)})}function H(t,e){return t.isValid()?(e=U(e,t.localeData()),Y[e]=Y[e]||function(t){var e,n,r,i=t.match(z);for(e=0,n=i.length;e<n;e++)V[i[e]]?i[e]=V[i[e]]:i[e]=(r=i[e]).match(/\[[\s\S]/)?r.replace(/^\[|\]$/g,""):r.replace(/\\/g,"");return function(e){var r,a="";for(r=0;r<n;r++)a+=T(i[r])?i[r].call(e,t):i[r];return a}}(e),Y[e](t)):t.localeData().invalidDate()}function U(t,e){var n=5;function r(t){return e.longDateFormat(t)||t}for(W.lastIndex=0;n>=0&&W.test(t);)t=t.replace(W,r),W.lastIndex=0,n-=1;return t}var G=/\d/,K=/\d\d/,J=/\d{3}/,q=/\d{4}/,Z=/[+-]?\d{6}/,X=/\d\d?/,$=/\d\d\d\d?/,Q=/\d\d\d\d\d\d?/,tt=/\d{1,3}/,et=/\d{1,4}/,nt=/[+-]?\d{1,6}/,rt=/\d+/,it=/[+-]?\d+/,at=/Z|[+-]\d\d:?\d\d/gi,ot=/Z|[+-]\d\d(?::?\d\d)?/gi,st=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,lt={};function ut(t,e,n){lt[t]=T(e)?e:function(t,r){return t&&n?n:e}}function ct(t,e){return c(lt,t)?lt[t](e._strict,e._locale):new RegExp(ht(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,(function(t,e,n,r,i){return e||n||r||i}))))}function ht(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}var dt={};function ft(t,e){var n,r=e;for("string"==typeof t&&(t=[t]),s(e)&&(r=function(t,n){n[e]=w(t)}),n=0;n<t.length;n++)dt[t[n]]=r}function pt(t,e){ft(t,(function(t,n,r,i){r._w=r._w||{},e(t,r._w,r,i)}))}function gt(t,e,n){null!=e&&c(dt,t)&&dt[t](e,n._a,n,t)}function mt(t){return vt(t)?366:365}function vt(t){return t%4==0&&t%100!=0||t%400==0}B("Y",0,0,(function(){var t=this.year();return t<=9999?""+t:"+"+t})),B(0,["YY",2],0,(function(){return this.year()%100})),B(0,["YYYY",4],0,"year"),B(0,["YYYYY",5],0,"year"),B(0,["YYYYYY",6,!0],0,"year"),F("year","y"),E("year",1),ut("Y",it),ut("YY",X,K),ut("YYYY",et,q),ut("YYYYY",nt,Z),ut("YYYYYY",nt,Z),ft(["YYYYY","YYYYYY"],0),ft("YYYY",(function(t,e){e[0]=2===t.length?r.parseTwoDigitYear(t):w(t)})),ft("YY",(function(t,e){e[0]=r.parseTwoDigitYear(t)})),ft("Y",(function(t,e){e[0]=parseInt(t,10)})),r.parseTwoDigitYear=function(t){return w(t)+(w(t)>68?1900:2e3)};var bt,yt=xt("FullYear",!0);function xt(t,e){return function(n){return null!=n?(wt(this,t,n),r.updateOffset(this,e),this):_t(this,t)}}function _t(t,e){return t.isValid()?t._d["get"+(t._isUTC?"UTC":"")+e]():NaN}function wt(t,e,n){t.isValid()&&!isNaN(n)&&("FullYear"===e&&vt(t.year())&&1===t.month()&&29===t.date()?t._d["set"+(t._isUTC?"UTC":"")+e](n,t.month(),kt(n,t.month())):t._d["set"+(t._isUTC?"UTC":"")+e](n))}function kt(t,e){if(isNaN(t)||isNaN(e))return NaN;var n,r=(e%(n=12)+n)%n;return t+=(e-r)/12,1===r?vt(t)?29:28:31-r%7%2}bt=Array.prototype.indexOf?Array.prototype.indexOf:function(t){var e;for(e=0;e<this.length;++e)if(this[e]===t)return e;return-1},B("M",["MM",2],"Mo",(function(){return this.month()+1})),B("MMM",0,0,(function(t){return this.localeData().monthsShort(this,t)})),B("MMMM",0,0,(function(t){return this.localeData().months(this,t)})),F("month","M"),E("month",8),ut("M",X),ut("MM",X,K),ut("MMM",(function(t,e){return e.monthsShortRegex(t)})),ut("MMMM",(function(t,e){return e.monthsRegex(t)})),ft(["M","MM"],(function(t,e){e[1]=w(t)-1})),ft(["MMM","MMMM"],(function(t,e,n,r){var i=n._locale.monthsParse(t,r,n._strict);null!=i?e[1]=i:f(n).invalidMonth=t}));var Mt=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,St="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),Dt="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_");function Ct(t,e,n){var r,i,a,o=t.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],r=0;r<12;++r)a=d([2e3,r]),this._shortMonthsParse[r]=this.monthsShort(a,"").toLocaleLowerCase(),this._longMonthsParse[r]=this.months(a,"").toLocaleLowerCase();return n?"MMM"===e?-1!==(i=bt.call(this._shortMonthsParse,o))?i:null:-1!==(i=bt.call(this._longMonthsParse,o))?i:null:"MMM"===e?-1!==(i=bt.call(this._shortMonthsParse,o))?i:-1!==(i=bt.call(this._longMonthsParse,o))?i:null:-1!==(i=bt.call(this._longMonthsParse,o))?i:-1!==(i=bt.call(this._shortMonthsParse,o))?i:null}function Ot(t,e){var n;if(!t.isValid())return t;if("string"==typeof e)if(/^\d+$/.test(e))e=w(e);else if(!s(e=t.localeData().monthsParse(e)))return t;return n=Math.min(t.date(),kt(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,n),t}function Tt(t){return null!=t?(Ot(this,t),r.updateOffset(this,!0),this):_t(this,"Month")}var At=st,Pt=st;function It(){function t(t,e){return e.length-t.length}var e,n,r=[],i=[],a=[];for(e=0;e<12;e++)n=d([2e3,e]),r.push(this.monthsShort(n,"")),i.push(this.months(n,"")),a.push(this.months(n,"")),a.push(this.monthsShort(n,""));for(r.sort(t),i.sort(t),a.sort(t),e=0;e<12;e++)r[e]=ht(r[e]),i[e]=ht(i[e]);for(e=0;e<24;e++)a[e]=ht(a[e]);this._monthsRegex=new RegExp("^("+a.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+i.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+r.join("|")+")","i")}function Ft(t,e,n,r,i,a,o){var s;return t<100&&t>=0?(s=new Date(t+400,e,n,r,i,a,o),isFinite(s.getFullYear())&&s.setFullYear(t)):s=new Date(t,e,n,r,i,a,o),s}function Lt(t){var e;if(t<100&&t>=0){var n=Array.prototype.slice.call(arguments);n[0]=t+400,e=new Date(Date.UTC.apply(null,n)),isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t)}else e=new Date(Date.UTC.apply(null,arguments));return e}function Rt(t,e,n){var r=7+e-n;return-(7+Lt(t,0,r).getUTCDay()-e)%7+r-1}function jt(t,e,n,r,i){var a,o,s=1+7*(e-1)+(7+n-r)%7+Rt(t,r,i);return s<=0?o=mt(a=t-1)+s:s>mt(t)?(a=t+1,o=s-mt(t)):(a=t,o=s),{year:a,dayOfYear:o}}function Et(t,e,n){var r,i,a=Rt(t.year(),e,n),o=Math.floor((t.dayOfYear()-a-1)/7)+1;return o<1?r=o+Nt(i=t.year()-1,e,n):o>Nt(t.year(),e,n)?(r=o-Nt(t.year(),e,n),i=t.year()+1):(i=t.year(),r=o),{week:r,year:i}}function Nt(t,e,n){var r=Rt(t,e,n),i=Rt(t+1,e,n);return(mt(t)-r+i)/7}function zt(t,e){return t.slice(e,7).concat(t.slice(0,e))}B("w",["ww",2],"wo","week"),B("W",["WW",2],"Wo","isoWeek"),F("week","w"),F("isoWeek","W"),E("week",5),E("isoWeek",5),ut("w",X),ut("ww",X,K),ut("W",X),ut("WW",X,K),pt(["w","ww","W","WW"],(function(t,e,n,r){e[r.substr(0,1)]=w(t)})),B("d",0,"do","day"),B("dd",0,0,(function(t){return this.localeData().weekdaysMin(this,t)})),B("ddd",0,0,(function(t){return this.localeData().weekdaysShort(this,t)})),B("dddd",0,0,(function(t){return this.localeData().weekdays(this,t)})),B("e",0,0,"weekday"),B("E",0,0,"isoWeekday"),F("day","d"),F("weekday","e"),F("isoWeekday","E"),E("day",11),E("weekday",11),E("isoWeekday",11),ut("d",X),ut("e",X),ut("E",X),ut("dd",(function(t,e){return e.weekdaysMinRegex(t)})),ut("ddd",(function(t,e){return e.weekdaysShortRegex(t)})),ut("dddd",(function(t,e){return e.weekdaysRegex(t)})),pt(["dd","ddd","dddd"],(function(t,e,n,r){var i=n._locale.weekdaysParse(t,r,n._strict);null!=i?e.d=i:f(n).invalidWeekday=t})),pt(["d","e","E"],(function(t,e,n,r){e[r]=w(t)}));var Wt="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Yt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Vt="Su_Mo_Tu_We_Th_Fr_Sa".split("_");function Bt(t,e,n){var r,i,a,o=t.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],r=0;r<7;++r)a=d([2e3,1]).day(r),this._minWeekdaysParse[r]=this.weekdaysMin(a,"").toLocaleLowerCase(),this._shortWeekdaysParse[r]=this.weekdaysShort(a,"").toLocaleLowerCase(),this._weekdaysParse[r]=this.weekdays(a,"").toLocaleLowerCase();return n?"dddd"===e?-1!==(i=bt.call(this._weekdaysParse,o))?i:null:"ddd"===e?-1!==(i=bt.call(this._shortWeekdaysParse,o))?i:null:-1!==(i=bt.call(this._minWeekdaysParse,o))?i:null:"dddd"===e?-1!==(i=bt.call(this._weekdaysParse,o))?i:-1!==(i=bt.call(this._shortWeekdaysParse,o))?i:-1!==(i=bt.call(this._minWeekdaysParse,o))?i:null:"ddd"===e?-1!==(i=bt.call(this._shortWeekdaysParse,o))?i:-1!==(i=bt.call(this._weekdaysParse,o))?i:-1!==(i=bt.call(this._minWeekdaysParse,o))?i:null:-1!==(i=bt.call(this._minWeekdaysParse,o))?i:-1!==(i=bt.call(this._weekdaysParse,o))?i:-1!==(i=bt.call(this._shortWeekdaysParse,o))?i:null}var Ht=st,Ut=st,Gt=st;function Kt(){function t(t,e){return e.length-t.length}var e,n,r,i,a,o=[],s=[],l=[],u=[];for(e=0;e<7;e++)n=d([2e3,1]).day(e),r=this.weekdaysMin(n,""),i=this.weekdaysShort(n,""),a=this.weekdays(n,""),o.push(r),s.push(i),l.push(a),u.push(r),u.push(i),u.push(a);for(o.sort(t),s.sort(t),l.sort(t),u.sort(t),e=0;e<7;e++)s[e]=ht(s[e]),l[e]=ht(l[e]),u[e]=ht(u[e]);this._weekdaysRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+o.join("|")+")","i")}function Jt(){return this.hours()%12||12}function qt(t,e){B(t,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)}))}function Zt(t,e){return e._meridiemParse}B("H",["HH",2],0,"hour"),B("h",["hh",2],0,Jt),B("k",["kk",2],0,(function(){return this.hours()||24})),B("hmm",0,0,(function(){return""+Jt.apply(this)+N(this.minutes(),2)})),B("hmmss",0,0,(function(){return""+Jt.apply(this)+N(this.minutes(),2)+N(this.seconds(),2)})),B("Hmm",0,0,(function(){return""+this.hours()+N(this.minutes(),2)})),B("Hmmss",0,0,(function(){return""+this.hours()+N(this.minutes(),2)+N(this.seconds(),2)})),qt("a",!0),qt("A",!1),F("hour","h"),E("hour",13),ut("a",Zt),ut("A",Zt),ut("H",X),ut("h",X),ut("k",X),ut("HH",X,K),ut("hh",X,K),ut("kk",X,K),ut("hmm",$),ut("hmmss",Q),ut("Hmm",$),ut("Hmmss",Q),ft(["H","HH"],3),ft(["k","kk"],(function(t,e,n){var r=w(t);e[3]=24===r?0:r})),ft(["a","A"],(function(t,e,n){n._isPm=n._locale.isPM(t),n._meridiem=t})),ft(["h","hh"],(function(t,e,n){e[3]=w(t),f(n).bigHour=!0})),ft("hmm",(function(t,e,n){var r=t.length-2;e[3]=w(t.substr(0,r)),e[4]=w(t.substr(r)),f(n).bigHour=!0})),ft("hmmss",(function(t,e,n){var r=t.length-4,i=t.length-2;e[3]=w(t.substr(0,r)),e[4]=w(t.substr(r,2)),e[5]=w(t.substr(i)),f(n).bigHour=!0})),ft("Hmm",(function(t,e,n){var r=t.length-2;e[3]=w(t.substr(0,r)),e[4]=w(t.substr(r))})),ft("Hmmss",(function(t,e,n){var r=t.length-4,i=t.length-2;e[3]=w(t.substr(0,r)),e[4]=w(t.substr(r,2)),e[5]=w(t.substr(i))}));var Xt,$t=xt("Hours",!0),Qt={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:St,monthsShort:Dt,week:{dow:0,doy:6},weekdays:Wt,weekdaysMin:Vt,weekdaysShort:Yt,meridiemParse:/[ap]\.?m?\.?/i},te={},ee={};function ne(t){return t?t.toLowerCase().replace("_","-"):t}function re(e){var n=null;if(!te[e]&&void 0!==t&&t&&t.exports)try{n=Xt._abbr,!function(){var t=new Error("Cannot find module 'undefined'");throw t.code="MODULE_NOT_FOUND",t}(),ie(n)}catch(r){}return te[e]}function ie(t,e){var n;return t&&((n=o(e)?oe(t):ae(t,e))?Xt=n:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+t+" not found. Did you forget to load it?")),Xt._abbr}function ae(t,e){if(null!==e){var n,r=Qt;if(e.abbr=t,null!=te[t])O("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),r=te[t]._config;else if(null!=e.parentLocale)if(null!=te[e.parentLocale])r=te[e.parentLocale]._config;else{if(null==(n=re(e.parentLocale)))return ee[e.parentLocale]||(ee[e.parentLocale]=[]),ee[e.parentLocale].push({name:t,config:e}),null;r=n._config}return te[t]=new P(A(r,e)),ee[t]&&ee[t].forEach((function(t){ae(t.name,t.config)})),ie(t),te[t]}return delete te[t],null}function oe(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Xt;if(!i(t)){if(e=re(t))return e;t=[t]}return function(t){for(var e,n,r,i,a=0;a<t.length;){for(e=(i=ne(t[a]).split("-")).length,n=(n=ne(t[a+1]))?n.split("-"):null;e>0;){if(r=re(i.slice(0,e).join("-")))return r;if(n&&n.length>=e&&k(i,n,!0)>=e-1)break;e--}a++}return Xt}(t)}function se(t){var e,n=t._a;return n&&-2===f(t).overflow&&(e=n[1]<0||n[1]>11?1:n[2]<1||n[2]>kt(n[0],n[1])?2:n[3]<0||n[3]>24||24===n[3]&&(0!==n[4]||0!==n[5]||0!==n[6])?3:n[4]<0||n[4]>59?4:n[5]<0||n[5]>59?5:n[6]<0||n[6]>999?6:-1,f(t)._overflowDayOfYear&&(e<0||e>2)&&(e=2),f(t)._overflowWeeks&&-1===e&&(e=7),f(t)._overflowWeekday&&-1===e&&(e=8),f(t).overflow=e),t}function le(t,e,n){return null!=t?t:null!=e?e:n}function ue(t){var e,n,i,a,o,s=[];if(!t._d){for(i=function(t){var e=new Date(r.now());return t._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}(t),t._w&&null==t._a[2]&&null==t._a[1]&&function(t){var e,n,r,i,a,o,s,l;if(null!=(e=t._w).GG||null!=e.W||null!=e.E)a=1,o=4,n=le(e.GG,t._a[0],Et(Me(),1,4).year),r=le(e.W,1),((i=le(e.E,1))<1||i>7)&&(l=!0);else{a=t._locale._week.dow,o=t._locale._week.doy;var u=Et(Me(),a,o);n=le(e.gg,t._a[0],u.year),r=le(e.w,u.week),null!=e.d?((i=e.d)<0||i>6)&&(l=!0):null!=e.e?(i=e.e+a,(e.e<0||e.e>6)&&(l=!0)):i=a}r<1||r>Nt(n,a,o)?f(t)._overflowWeeks=!0:null!=l?f(t)._overflowWeekday=!0:(s=jt(n,r,i,a,o),t._a[0]=s.year,t._dayOfYear=s.dayOfYear)}(t),null!=t._dayOfYear&&(o=le(t._a[0],i[0]),(t._dayOfYear>mt(o)||0===t._dayOfYear)&&(f(t)._overflowDayOfYear=!0),n=Lt(o,0,t._dayOfYear),t._a[1]=n.getUTCMonth(),t._a[2]=n.getUTCDate()),e=0;e<3&&null==t._a[e];++e)t._a[e]=s[e]=i[e];for(;e<7;e++)t._a[e]=s[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[3]&&0===t._a[4]&&0===t._a[5]&&0===t._a[6]&&(t._nextDay=!0,t._a[3]=0),t._d=(t._useUTC?Lt:Ft).apply(null,s),a=t._useUTC?t._d.getUTCDay():t._d.getDay(),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[3]=24),t._w&&void 0!==t._w.d&&t._w.d!==a&&(f(t).weekdayMismatch=!0)}}var ce=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,he=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,de=/Z|[+-]\d\d(?::?\d\d)?/,fe=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],pe=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],ge=/^\/?Date\((\-?\d+)/i;function me(t){var e,n,r,i,a,o,s=t._i,l=ce.exec(s)||he.exec(s);if(l){for(f(t).iso=!0,e=0,n=fe.length;e<n;e++)if(fe[e][1].exec(l[1])){i=fe[e][0],r=!1!==fe[e][2];break}if(null==i)return void(t._isValid=!1);if(l[3]){for(e=0,n=pe.length;e<n;e++)if(pe[e][1].exec(l[3])){a=(l[2]||" ")+pe[e][0];break}if(null==a)return void(t._isValid=!1)}if(!r&&null!=a)return void(t._isValid=!1);if(l[4]){if(!de.exec(l[4]))return void(t._isValid=!1);o="Z"}t._f=i+(a||"")+(o||""),_e(t)}else t._isValid=!1}var ve=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/;function be(t){var e=parseInt(t,10);return e<=49?2e3+e:e<=999?1900+e:e}var ye={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function xe(t){var e,n,r,i,a,o,s,l=ve.exec(t._i.replace(/\([^)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s\s*/,"").replace(/\s\s*$/,""));if(l){var u=(e=l[4],n=l[3],r=l[2],i=l[5],a=l[6],o=l[7],s=[be(e),Dt.indexOf(n),parseInt(r,10),parseInt(i,10),parseInt(a,10)],o&&s.push(parseInt(o,10)),s);if(!function(t,e,n){return!t||Yt.indexOf(t)===new Date(e[0],e[1],e[2]).getDay()||(f(n).weekdayMismatch=!0,n._isValid=!1,!1)}(l[1],u,t))return;t._a=u,t._tzm=function(t,e,n){if(t)return ye[t];if(e)return 0;var r=parseInt(n,10),i=r%100;return(r-i)/100*60+i}(l[8],l[9],l[10]),t._d=Lt.apply(null,t._a),t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),f(t).rfc2822=!0}else t._isValid=!1}function _e(t){if(t._f!==r.ISO_8601)if(t._f!==r.RFC_2822){t._a=[],f(t).empty=!0;var e,n,i,a,o,s=""+t._i,l=s.length,u=0;for(i=U(t._f,t._locale).match(z)||[],e=0;e<i.length;e++)a=i[e],(n=(s.match(ct(a,t))||[])[0])&&((o=s.substr(0,s.indexOf(n))).length>0&&f(t).unusedInput.push(o),s=s.slice(s.indexOf(n)+n.length),u+=n.length),V[a]?(n?f(t).empty=!1:f(t).unusedTokens.push(a),gt(a,n,t)):t._strict&&!n&&f(t).unusedTokens.push(a);f(t).charsLeftOver=l-u,s.length>0&&f(t).unusedInput.push(s),t._a[3]<=12&&!0===f(t).bigHour&&t._a[3]>0&&(f(t).bigHour=void 0),f(t).parsedDateParts=t._a.slice(0),f(t).meridiem=t._meridiem,t._a[3]=function(t,e,n){var r;return null==n?e:null!=t.meridiemHour?t.meridiemHour(e,n):null!=t.isPM?((r=t.isPM(n))&&e<12&&(e+=12),r||12!==e||(e=0),e):e}(t._locale,t._a[3],t._meridiem),ue(t),se(t)}else xe(t);else me(t)}function we(t){var e=t._i,n=t._f;return t._locale=t._locale||oe(t._l),null===e||void 0===n&&""===e?g({nullInput:!0}):("string"==typeof e&&(t._i=e=t._locale.preparse(e)),x(e)?new y(se(e)):(l(e)?t._d=e:i(n)?function(t){var e,n,r,i,a;if(0===t._f.length)return f(t).invalidFormat=!0,void(t._d=new Date(NaN));for(i=0;i<t._f.length;i++)a=0,e=v({},t),null!=t._useUTC&&(e._useUTC=t._useUTC),e._f=t._f[i],_e(e),p(e)&&(a+=f(e).charsLeftOver,a+=10*f(e).unusedTokens.length,f(e).score=a,(null==r||a<r)&&(r=a,n=e));h(t,n||e)}(t):n?_e(t):function(t){var e=t._i;o(e)?t._d=new Date(r.now()):l(e)?t._d=new Date(e.valueOf()):"string"==typeof e?function(t){var e=ge.exec(t._i);null===e?(me(t),!1===t._isValid&&(delete t._isValid,xe(t),!1===t._isValid&&(delete t._isValid,r.createFromInputFallback(t)))):t._d=new Date(+e[1])}(t):i(e)?(t._a=u(e.slice(0),(function(t){return parseInt(t,10)})),ue(t)):a(e)?function(t){if(!t._d){var e=R(t._i);t._a=u([e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],(function(t){return t&&parseInt(t,10)})),ue(t)}}(t):s(e)?t._d=new Date(e):r.createFromInputFallback(t)}(t),p(t)||(t._d=null),t))}function ke(t,e,n,r,o){var s,l={};return!0!==n&&!1!==n||(r=n,n=void 0),(a(t)&&function(t){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(t).length;var e;for(e in t)if(t.hasOwnProperty(e))return!1;return!0}(t)||i(t)&&0===t.length)&&(t=void 0),l._isAMomentObject=!0,l._useUTC=l._isUTC=o,l._l=n,l._i=t,l._f=e,l._strict=r,(s=new y(se(we(l))))._nextDay&&(s.add(1,"d"),s._nextDay=void 0),s}function Me(t,e,n,r){return ke(t,e,n,r,!1)}r.createFromInputFallback=S("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",(function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))})),r.ISO_8601=function(){},r.RFC_2822=function(){};var Se=S("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var t=Me.apply(null,arguments);return this.isValid()&&t.isValid()?t<this?this:t:g()})),De=S("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var t=Me.apply(null,arguments);return this.isValid()&&t.isValid()?t>this?this:t:g()}));function Ce(t,e){var n,r;if(1===e.length&&i(e[0])&&(e=e[0]),!e.length)return Me();for(n=e[0],r=1;r<e.length;++r)e[r].isValid()&&!e[r][t](n)||(n=e[r]);return n}var Oe=["year","quarter","month","week","day","hour","minute","second","millisecond"];function Te(t){var e=R(t),n=e.year||0,r=e.quarter||0,i=e.month||0,a=e.week||e.isoWeek||0,o=e.day||0,s=e.hour||0,l=e.minute||0,u=e.second||0,c=e.millisecond||0;this._isValid=function(t){for(var e in t)if(-1===bt.call(Oe,e)||null!=t[e]&&isNaN(t[e]))return!1;for(var n=!1,r=0;r<Oe.length;++r)if(t[Oe[r]]){if(n)return!1;parseFloat(t[Oe[r]])!==w(t[Oe[r]])&&(n=!0)}return!0}(e),this._milliseconds=+c+1e3*u+6e4*l+1e3*s*60*60,this._days=+o+7*a,this._months=+i+3*r+12*n,this._data={},this._locale=oe(),this._bubble()}function Ae(t){return t instanceof Te}function Pe(t){return t<0?-1*Math.round(-1*t):Math.round(t)}function Ie(t,e){B(t,0,0,(function(){var t=this.utcOffset(),n="+";return t<0&&(t=-t,n="-"),n+N(~~(t/60),2)+e+N(~~t%60,2)}))}Ie("Z",":"),Ie("ZZ",""),ut("Z",ot),ut("ZZ",ot),ft(["Z","ZZ"],(function(t,e,n){n._useUTC=!0,n._tzm=Le(ot,t)}));var Fe=/([\+\-]|\d\d)/gi;function Le(t,e){var n=(e||"").match(t);if(null===n)return null;var r=((n[n.length-1]||[])+"").match(Fe)||["-",0,0],i=60*r[1]+w(r[2]);return 0===i?0:"+"===r[0]?i:-i}function Re(t,e){var n,i;return e._isUTC?(n=e.clone(),i=(x(t)||l(t)?t.valueOf():Me(t).valueOf())-n.valueOf(),n._d.setTime(n._d.valueOf()+i),r.updateOffset(n,!1),n):Me(t).local()}function je(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function Ee(){return!!this.isValid()&&this._isUTC&&0===this._offset}r.updateOffset=function(){};var Ne=/^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,ze=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function We(t,e){var n,r,i,a,o,l,u=t,h=null;return Ae(t)?u={ms:t._milliseconds,d:t._days,M:t._months}:s(t)?(u={},e?u[e]=t:u.milliseconds=t):(h=Ne.exec(t))?(n="-"===h[1]?-1:1,u={y:0,d:w(h[2])*n,h:w(h[3])*n,m:w(h[4])*n,s:w(h[5])*n,ms:w(Pe(1e3*h[6]))*n}):(h=ze.exec(t))?(n="-"===h[1]?-1:1,u={y:Ye(h[2],n),M:Ye(h[3],n),w:Ye(h[4],n),d:Ye(h[5],n),h:Ye(h[6],n),m:Ye(h[7],n),s:Ye(h[8],n)}):null==u?u={}:"object"==typeof u&&("from"in u||"to"in u)&&(a=Me(u.from),o=Me(u.to),i=a.isValid()&&o.isValid()?(o=Re(o,a),a.isBefore(o)?l=Ve(a,o):((l=Ve(o,a)).milliseconds=-l.milliseconds,l.months=-l.months),l):{milliseconds:0,months:0},(u={}).ms=i.milliseconds,u.M=i.months),r=new Te(u),Ae(t)&&c(t,"_locale")&&(r._locale=t._locale),r}function Ye(t,e){var n=t&&parseFloat(t.replace(",","."));return(isNaN(n)?0:n)*e}function Ve(t,e){var n={};return n.months=e.month()-t.month()+12*(e.year()-t.year()),t.clone().add(n.months,"M").isAfter(e)&&--n.months,n.milliseconds=+e-+t.clone().add(n.months,"M"),n}function Be(t,e){return function(n,r){var i;return null===r||isNaN(+r)||(O(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),i=n,n=r,r=i),He(this,We(n="string"==typeof n?+n:n,r),t),this}}function He(t,e,n,i){var a=e._milliseconds,o=Pe(e._days),s=Pe(e._months);t.isValid()&&(i=null==i||i,s&&Ot(t,_t(t,"Month")+s*n),o&&wt(t,"Date",_t(t,"Date")+o*n),a&&t._d.setTime(t._d.valueOf()+a*n),i&&r.updateOffset(t,o||s))}We.fn=Te.prototype,We.invalid=function(){return We(NaN)};var Ue=Be(1,"add"),Ge=Be(-1,"subtract");function Ke(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,"months");return-(n+(e-r<0?(e-r)/(r-t.clone().add(n-1,"months")):(e-r)/(t.clone().add(n+1,"months")-r)))||0}function Je(t){var e;return void 0===t?this._locale._abbr:(null!=(e=oe(t))&&(this._locale=e),this)}r.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",r.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var qe=S("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",(function(t){return void 0===t?this.localeData():this.locale(t)}));function Ze(){return this._locale}function Xe(t,e){return(t%e+e)%e}function $e(t,e,n){return t<100&&t>=0?new Date(t+400,e,n)-126227808e5:new Date(t,e,n).valueOf()}function Qe(t,e,n){return t<100&&t>=0?Date.UTC(t+400,e,n)-126227808e5:Date.UTC(t,e,n)}function tn(t,e){B(0,[t,t.length],0,e)}function en(t,e,n,r,i){var a;return null==t?Et(this,r,i).year:(e>(a=Nt(t,r,i))&&(e=a),nn.call(this,t,e,n,r,i))}function nn(t,e,n,r,i){var a=jt(t,e,n,r,i),o=Lt(a.year,0,a.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}B(0,["gg",2],0,(function(){return this.weekYear()%100})),B(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),tn("gggg","weekYear"),tn("ggggg","weekYear"),tn("GGGG","isoWeekYear"),tn("GGGGG","isoWeekYear"),F("weekYear","gg"),F("isoWeekYear","GG"),E("weekYear",1),E("isoWeekYear",1),ut("G",it),ut("g",it),ut("GG",X,K),ut("gg",X,K),ut("GGGG",et,q),ut("gggg",et,q),ut("GGGGG",nt,Z),ut("ggggg",nt,Z),pt(["gggg","ggggg","GGGG","GGGGG"],(function(t,e,n,r){e[r.substr(0,2)]=w(t)})),pt(["gg","GG"],(function(t,e,n,i){e[i]=r.parseTwoDigitYear(t)})),B("Q",0,"Qo","quarter"),F("quarter","Q"),E("quarter",7),ut("Q",G),ft("Q",(function(t,e){e[1]=3*(w(t)-1)})),B("D",["DD",2],"Do","date"),F("date","D"),E("date",9),ut("D",X),ut("DD",X,K),ut("Do",(function(t,e){return t?e._dayOfMonthOrdinalParse||e._ordinalParse:e._dayOfMonthOrdinalParseLenient})),ft(["D","DD"],2),ft("Do",(function(t,e){e[2]=w(t.match(X)[0])}));var rn=xt("Date",!0);B("DDD",["DDDD",3],"DDDo","dayOfYear"),F("dayOfYear","DDD"),E("dayOfYear",4),ut("DDD",tt),ut("DDDD",J),ft(["DDD","DDDD"],(function(t,e,n){n._dayOfYear=w(t)})),B("m",["mm",2],0,"minute"),F("minute","m"),E("minute",14),ut("m",X),ut("mm",X,K),ft(["m","mm"],4);var an=xt("Minutes",!1);B("s",["ss",2],0,"second"),F("second","s"),E("second",15),ut("s",X),ut("ss",X,K),ft(["s","ss"],5);var on,sn=xt("Seconds",!1);for(B("S",0,0,(function(){return~~(this.millisecond()/100)})),B(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),B(0,["SSS",3],0,"millisecond"),B(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),B(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),B(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),B(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),B(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),B(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),F("millisecond","ms"),E("millisecond",16),ut("S",tt,G),ut("SS",tt,K),ut("SSS",tt,J),on="SSSS";on.length<=9;on+="S")ut(on,rt);function ln(t,e){e[6]=w(1e3*("0."+t))}for(on="S";on.length<=9;on+="S")ft(on,ln);var un=xt("Milliseconds",!1);B("z",0,0,"zoneAbbr"),B("zz",0,0,"zoneName");var cn=y.prototype;function hn(t){return t}cn.add=Ue,cn.calendar=function(t,e){var n=t||Me(),i=Re(n,this).startOf("day"),a=r.calendarFormat(this,i)||"sameElse",o=e&&(T(e[a])?e[a].call(this,n):e[a]);return this.format(o||this.localeData().calendar(a,this,Me(n)))},cn.clone=function(){return new y(this)},cn.diff=function(t,e,n){var r,i,a;if(!this.isValid())return NaN;if(!(r=Re(t,this)).isValid())return NaN;switch(i=6e4*(r.utcOffset()-this.utcOffset()),e=L(e)){case"year":a=Ke(this,r)/12;break;case"month":a=Ke(this,r);break;case"quarter":a=Ke(this,r)/3;break;case"second":a=(this-r)/1e3;break;case"minute":a=(this-r)/6e4;break;case"hour":a=(this-r)/36e5;break;case"day":a=(this-r-i)/864e5;break;case"week":a=(this-r-i)/6048e5;break;default:a=this-r}return n?a:_(a)},cn.endOf=function(t){var e;if(void 0===(t=L(t))||"millisecond"===t||!this.isValid())return this;var n=this._isUTC?Qe:$e;switch(t){case"year":e=n(this.year()+1,0,1)-1;break;case"quarter":e=n(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":e=n(this.year(),this.month()+1,1)-1;break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":e=n(this.year(),this.month(),this.date()+1)-1;break;case"hour":e=this._d.valueOf(),e+=36e5-Xe(e+(this._isUTC?0:6e4*this.utcOffset()),36e5)-1;break;case"minute":e=this._d.valueOf(),e+=6e4-Xe(e,6e4)-1;break;case"second":e=this._d.valueOf(),e+=1e3-Xe(e,1e3)-1}return this._d.setTime(e),r.updateOffset(this,!0),this},cn.format=function(t){t||(t=this.isUtc()?r.defaultFormatUtc:r.defaultFormat);var e=H(this,t);return this.localeData().postformat(e)},cn.from=function(t,e){return this.isValid()&&(x(t)&&t.isValid()||Me(t).isValid())?We({to:this,from:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()},cn.fromNow=function(t){return this.from(Me(),t)},cn.to=function(t,e){return this.isValid()&&(x(t)&&t.isValid()||Me(t).isValid())?We({from:this,to:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()},cn.toNow=function(t){return this.to(Me(),t)},cn.get=function(t){return T(this[t=L(t)])?this[t]():this},cn.invalidAt=function(){return f(this).overflow},cn.isAfter=function(t,e){var n=x(t)?t:Me(t);return!(!this.isValid()||!n.isValid())&&("millisecond"===(e=L(e)||"millisecond")?this.valueOf()>n.valueOf():n.valueOf()<this.clone().startOf(e).valueOf())},cn.isBefore=function(t,e){var n=x(t)?t:Me(t);return!(!this.isValid()||!n.isValid())&&("millisecond"===(e=L(e)||"millisecond")?this.valueOf()<n.valueOf():this.clone().endOf(e).valueOf()<n.valueOf())},cn.isBetween=function(t,e,n,r){var i=x(t)?t:Me(t),a=x(e)?e:Me(e);return!!(this.isValid()&&i.isValid()&&a.isValid())&&("("===(r=r||"()")[0]?this.isAfter(i,n):!this.isBefore(i,n))&&(")"===r[1]?this.isBefore(a,n):!this.isAfter(a,n))},cn.isSame=function(t,e){var n,r=x(t)?t:Me(t);return!(!this.isValid()||!r.isValid())&&("millisecond"===(e=L(e)||"millisecond")?this.valueOf()===r.valueOf():(n=r.valueOf(),this.clone().startOf(e).valueOf()<=n&&n<=this.clone().endOf(e).valueOf()))},cn.isSameOrAfter=function(t,e){return this.isSame(t,e)||this.isAfter(t,e)},cn.isSameOrBefore=function(t,e){return this.isSame(t,e)||this.isBefore(t,e)},cn.isValid=function(){return p(this)},cn.lang=qe,cn.locale=Je,cn.localeData=Ze,cn.max=De,cn.min=Se,cn.parsingFlags=function(){return h({},f(this))},cn.set=function(t,e){if("object"==typeof t)for(var n=function(t){var e=[];for(var n in t)e.push({unit:n,priority:j[n]});return e.sort((function(t,e){return t.priority-e.priority})),e}(t=R(t)),r=0;r<n.length;r++)this[n[r].unit](t[n[r].unit]);else if(T(this[t=L(t)]))return this[t](e);return this},cn.startOf=function(t){var e;if(void 0===(t=L(t))||"millisecond"===t||!this.isValid())return this;var n=this._isUTC?Qe:$e;switch(t){case"year":e=n(this.year(),0,1);break;case"quarter":e=n(this.year(),this.month()-this.month()%3,1);break;case"month":e=n(this.year(),this.month(),1);break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":e=n(this.year(),this.month(),this.date());break;case"hour":e=this._d.valueOf(),e-=Xe(e+(this._isUTC?0:6e4*this.utcOffset()),36e5);break;case"minute":e=this._d.valueOf(),e-=Xe(e,6e4);break;case"second":e=this._d.valueOf(),e-=Xe(e,1e3)}return this._d.setTime(e),r.updateOffset(this,!0),this},cn.subtract=Ge,cn.toArray=function(){var t=this;return[t.year(),t.month(),t.date(),t.hour(),t.minute(),t.second(),t.millisecond()]},cn.toObject=function(){var t=this;return{years:t.year(),months:t.month(),date:t.date(),hours:t.hours(),minutes:t.minutes(),seconds:t.seconds(),milliseconds:t.milliseconds()}},cn.toDate=function(){return new Date(this.valueOf())},cn.toISOString=function(t){if(!this.isValid())return null;var e=!0!==t,n=e?this.clone().utc():this;return n.year()<0||n.year()>9999?H(n,e?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):T(Date.prototype.toISOString)?e?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",H(n,"Z")):H(n,e?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")},cn.inspect=function(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var t="moment",e="";this.isLocal()||(t=0===this.utcOffset()?"moment.utc":"moment.parseZone",e="Z");var n="["+t+'("]',r=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",i=e+'[")]';return this.format(n+r+"-MM-DD[T]HH:mm:ss.SSS"+i)},cn.toJSON=function(){return this.isValid()?this.toISOString():null},cn.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},cn.unix=function(){return Math.floor(this.valueOf()/1e3)},cn.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},cn.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},cn.year=yt,cn.isLeapYear=function(){return vt(this.year())},cn.weekYear=function(t){return en.call(this,t,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)},cn.isoWeekYear=function(t){return en.call(this,t,this.isoWeek(),this.isoWeekday(),1,4)},cn.quarter=cn.quarters=function(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)},cn.month=Tt,cn.daysInMonth=function(){return kt(this.year(),this.month())},cn.week=cn.weeks=function(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")},cn.isoWeek=cn.isoWeeks=function(t){var e=Et(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")},cn.weeksInYear=function(){var t=this.localeData()._week;return Nt(this.year(),t.dow,t.doy)},cn.isoWeeksInYear=function(){return Nt(this.year(),1,4)},cn.date=rn,cn.day=cn.days=function(t){if(!this.isValid())return null!=t?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=function(t,e){return"string"!=typeof t?t:isNaN(t)?"number"==typeof(t=e.weekdaysParse(t))?t:null:parseInt(t,10)}(t,this.localeData()),this.add(t-e,"d")):e},cn.weekday=function(t){if(!this.isValid())return null!=t?this:NaN;var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")},cn.isoWeekday=function(t){if(!this.isValid())return null!=t?this:NaN;if(null!=t){var e=function(t,e){return"string"==typeof t?e.weekdaysParse(t)%7||7:isNaN(t)?null:t}(t,this.localeData());return this.day(this.day()%7?e:e-7)}return this.day()||7},cn.dayOfYear=function(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")},cn.hour=cn.hours=$t,cn.minute=cn.minutes=an,cn.second=cn.seconds=sn,cn.millisecond=cn.milliseconds=un,cn.utcOffset=function(t,e,n){var i,a=this._offset||0;if(!this.isValid())return null!=t?this:NaN;if(null!=t){if("string"==typeof t){if(null===(t=Le(ot,t)))return this}else Math.abs(t)<16&&!n&&(t*=60);return!this._isUTC&&e&&(i=je(this)),this._offset=t,this._isUTC=!0,null!=i&&this.add(i,"m"),a!==t&&(!e||this._changeInProgress?He(this,We(t-a,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,r.updateOffset(this,!0),this._changeInProgress=null)),this}return this._isUTC?a:je(this)},cn.utc=function(t){return this.utcOffset(0,t)},cn.local=function(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(je(this),"m")),this},cn.parseZone=function(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if("string"==typeof this._i){var t=Le(at,this._i);null!=t?this.utcOffset(t):this.utcOffset(0,!0)}return this},cn.hasAlignedHourOffset=function(t){return!!this.isValid()&&(t=t?Me(t).utcOffset():0,(this.utcOffset()-t)%60==0)},cn.isDST=function(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},cn.isLocal=function(){return!!this.isValid()&&!this._isUTC},cn.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},cn.isUtc=Ee,cn.isUTC=Ee,cn.zoneAbbr=function(){return this._isUTC?"UTC":""},cn.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},cn.dates=S("dates accessor is deprecated. Use date instead.",rn),cn.months=S("months accessor is deprecated. Use month instead",Tt),cn.years=S("years accessor is deprecated. Use year instead",yt),cn.zone=S("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",(function(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()})),cn.isDSTShifted=S("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",(function(){if(!o(this._isDSTShifted))return this._isDSTShifted;var t={};if(v(t,this),(t=we(t))._a){var e=t._isUTC?d(t._a):Me(t._a);this._isDSTShifted=this.isValid()&&k(t._a,e.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}));var dn=P.prototype;function fn(t,e,n,r){var i=oe(),a=d().set(r,e);return i[n](a,t)}function pn(t,e,n){if(s(t)&&(e=t,t=void 0),t=t||"",null!=e)return fn(t,e,n,"month");var r,i=[];for(r=0;r<12;r++)i[r]=fn(t,r,n,"month");return i}function gn(t,e,n,r){"boolean"==typeof t?(s(e)&&(n=e,e=void 0),e=e||""):(n=e=t,t=!1,s(e)&&(n=e,e=void 0),e=e||"");var i,a=oe(),o=t?a._week.dow:0;if(null!=n)return fn(e,(n+o)%7,r,"day");var l=[];for(i=0;i<7;i++)l[i]=fn(e,(i+o)%7,r,"day");return l}dn.calendar=function(t,e,n){var r=this._calendar[t]||this._calendar.sameElse;return T(r)?r.call(e,n):r},dn.longDateFormat=function(t){var e=this._longDateFormat[t],n=this._longDateFormat[t.toUpperCase()];return e||!n?e:(this._longDateFormat[t]=n.replace(/MMMM|MM|DD|dddd/g,(function(t){return t.slice(1)})),this._longDateFormat[t])},dn.invalidDate=function(){return this._invalidDate},dn.ordinal=function(t){return this._ordinal.replace("%d",t)},dn.preparse=hn,dn.postformat=hn,dn.relativeTime=function(t,e,n,r){var i=this._relativeTime[n];return T(i)?i(t,e,n,r):i.replace(/%d/i,t)},dn.pastFuture=function(t,e){var n=this._relativeTime[t>0?"future":"past"];return T(n)?n(e):n.replace(/%s/i,e)},dn.set=function(t){var e,n;for(n in t)T(e=t[n])?this[n]=e:this["_"+n]=e;this._config=t,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)},dn.months=function(t,e){return t?i(this._months)?this._months[t.month()]:this._months[(this._months.isFormat||Mt).test(e)?"format":"standalone"][t.month()]:i(this._months)?this._months:this._months.standalone},dn.monthsShort=function(t,e){return t?i(this._monthsShort)?this._monthsShort[t.month()]:this._monthsShort[Mt.test(e)?"format":"standalone"][t.month()]:i(this._monthsShort)?this._monthsShort:this._monthsShort.standalone},dn.monthsParse=function(t,e,n){var r,i,a;if(this._monthsParseExact)return Ct.call(this,t,e,n);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),r=0;r<12;r++){if(i=d([2e3,r]),n&&!this._longMonthsParse[r]&&(this._longMonthsParse[r]=new RegExp("^"+this.months(i,"").replace(".","")+"$","i"),this._shortMonthsParse[r]=new RegExp("^"+this.monthsShort(i,"").replace(".","")+"$","i")),n||this._monthsParse[r]||(a="^"+this.months(i,"")+"|^"+this.monthsShort(i,""),this._monthsParse[r]=new RegExp(a.replace(".",""),"i")),n&&"MMMM"===e&&this._longMonthsParse[r].test(t))return r;if(n&&"MMM"===e&&this._shortMonthsParse[r].test(t))return r;if(!n&&this._monthsParse[r].test(t))return r}},dn.monthsRegex=function(t){return this._monthsParseExact?(c(this,"_monthsRegex")||It.call(this),t?this._monthsStrictRegex:this._monthsRegex):(c(this,"_monthsRegex")||(this._monthsRegex=Pt),this._monthsStrictRegex&&t?this._monthsStrictRegex:this._monthsRegex)},dn.monthsShortRegex=function(t){return this._monthsParseExact?(c(this,"_monthsRegex")||It.call(this),t?this._monthsShortStrictRegex:this._monthsShortRegex):(c(this,"_monthsShortRegex")||(this._monthsShortRegex=At),this._monthsShortStrictRegex&&t?this._monthsShortStrictRegex:this._monthsShortRegex)},dn.week=function(t){return Et(t,this._week.dow,this._week.doy).week},dn.firstDayOfYear=function(){return this._week.doy},dn.firstDayOfWeek=function(){return this._week.dow},dn.weekdays=function(t,e){var n=i(this._weekdays)?this._weekdays:this._weekdays[t&&!0!==t&&this._weekdays.isFormat.test(e)?"format":"standalone"];return!0===t?zt(n,this._week.dow):t?n[t.day()]:n},dn.weekdaysMin=function(t){return!0===t?zt(this._weekdaysMin,this._week.dow):t?this._weekdaysMin[t.day()]:this._weekdaysMin},dn.weekdaysShort=function(t){return!0===t?zt(this._weekdaysShort,this._week.dow):t?this._weekdaysShort[t.day()]:this._weekdaysShort},dn.weekdaysParse=function(t,e,n){var r,i,a;if(this._weekdaysParseExact)return Bt.call(this,t,e,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),r=0;r<7;r++){if(i=d([2e3,1]).day(r),n&&!this._fullWeekdaysParse[r]&&(this._fullWeekdaysParse[r]=new RegExp("^"+this.weekdays(i,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[r]=new RegExp("^"+this.weekdaysShort(i,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[r]=new RegExp("^"+this.weekdaysMin(i,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[r]||(a="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[r]=new RegExp(a.replace(".",""),"i")),n&&"dddd"===e&&this._fullWeekdaysParse[r].test(t))return r;if(n&&"ddd"===e&&this._shortWeekdaysParse[r].test(t))return r;if(n&&"dd"===e&&this._minWeekdaysParse[r].test(t))return r;if(!n&&this._weekdaysParse[r].test(t))return r}},dn.weekdaysRegex=function(t){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||Kt.call(this),t?this._weekdaysStrictRegex:this._weekdaysRegex):(c(this,"_weekdaysRegex")||(this._weekdaysRegex=Ht),this._weekdaysStrictRegex&&t?this._weekdaysStrictRegex:this._weekdaysRegex)},dn.weekdaysShortRegex=function(t){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||Kt.call(this),t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(c(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Ut),this._weekdaysShortStrictRegex&&t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)},dn.weekdaysMinRegex=function(t){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||Kt.call(this),t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(c(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Gt),this._weekdaysMinStrictRegex&&t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)},dn.isPM=function(t){return"p"===(t+"").toLowerCase().charAt(0)},dn.meridiem=function(t,e,n){return t>11?n?"pm":"PM":n?"am":"AM"},ie("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10;return t+(1===w(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}}),r.lang=S("moment.lang is deprecated. Use moment.locale instead.",ie),r.langData=S("moment.langData is deprecated. Use moment.localeData instead.",oe);var mn=Math.abs;function vn(t,e,n,r){var i=We(e,n);return t._milliseconds+=r*i._milliseconds,t._days+=r*i._days,t._months+=r*i._months,t._bubble()}function bn(t){return t<0?Math.floor(t):Math.ceil(t)}function yn(t){return 4800*t/146097}function xn(t){return 146097*t/4800}function _n(t){return function(){return this.as(t)}}var wn=_n("ms"),kn=_n("s"),Mn=_n("m"),Sn=_n("h"),Dn=_n("d"),Cn=_n("w"),On=_n("M"),Tn=_n("Q"),An=_n("y");function Pn(t){return function(){return this.isValid()?this._data[t]:NaN}}var In=Pn("milliseconds"),Fn=Pn("seconds"),Ln=Pn("minutes"),Rn=Pn("hours"),jn=Pn("days"),En=Pn("months"),Nn=Pn("years"),zn=Math.round,Wn={ss:44,s:45,m:45,h:22,d:26,M:11};function Yn(t,e,n,r,i){return i.relativeTime(e||1,!!n,t,r)}var Vn=Math.abs;function Bn(t){return(t>0)-(t<0)||+t}function Hn(){if(!this.isValid())return this.localeData().invalidDate();var t,e,n=Vn(this._milliseconds)/1e3,r=Vn(this._days),i=Vn(this._months);t=_(n/60),e=_(t/60),n%=60,t%=60;var a=_(i/12),o=i%=12,s=r,l=e,u=t,c=n?n.toFixed(3).replace(/\.?0+$/,""):"",h=this.asSeconds();if(!h)return"P0D";var d=h<0?"-":"",f=Bn(this._months)!==Bn(h)?"-":"",p=Bn(this._days)!==Bn(h)?"-":"",g=Bn(this._milliseconds)!==Bn(h)?"-":"";return d+"P"+(a?f+a+"Y":"")+(o?f+o+"M":"")+(s?p+s+"D":"")+(l||u||c?"T":"")+(l?g+l+"H":"")+(u?g+u+"M":"")+(c?g+c+"S":"")}var Un=Te.prototype;return Un.isValid=function(){return this._isValid},Un.abs=function(){var t=this._data;return this._milliseconds=mn(this._milliseconds),this._days=mn(this._days),this._months=mn(this._months),t.milliseconds=mn(t.milliseconds),t.seconds=mn(t.seconds),t.minutes=mn(t.minutes),t.hours=mn(t.hours),t.months=mn(t.months),t.years=mn(t.years),this},Un.add=function(t,e){return vn(this,t,e,1)},Un.subtract=function(t,e){return vn(this,t,e,-1)},Un.as=function(t){if(!this.isValid())return NaN;var e,n,r=this._milliseconds;if("month"===(t=L(t))||"quarter"===t||"year"===t)switch(e=this._days+r/864e5,n=this._months+yn(e),t){case"month":return n;case"quarter":return n/3;case"year":return n/12}else switch(e=this._days+Math.round(xn(this._months)),t){case"week":return e/7+r/6048e5;case"day":return e+r/864e5;case"hour":return 24*e+r/36e5;case"minute":return 1440*e+r/6e4;case"second":return 86400*e+r/1e3;case"millisecond":return Math.floor(864e5*e)+r;default:throw new Error("Unknown unit "+t)}},Un.asMilliseconds=wn,Un.asSeconds=kn,Un.asMinutes=Mn,Un.asHours=Sn,Un.asDays=Dn,Un.asWeeks=Cn,Un.asMonths=On,Un.asQuarters=Tn,Un.asYears=An,Un.valueOf=function(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*w(this._months/12):NaN},Un._bubble=function(){var t,e,n,r,i,a=this._milliseconds,o=this._days,s=this._months,l=this._data;return a>=0&&o>=0&&s>=0||a<=0&&o<=0&&s<=0||(a+=864e5*bn(xn(s)+o),o=0,s=0),l.milliseconds=a%1e3,t=_(a/1e3),l.seconds=t%60,e=_(t/60),l.minutes=e%60,n=_(e/60),l.hours=n%24,o+=_(n/24),i=_(yn(o)),s+=i,o-=bn(xn(i)),r=_(s/12),s%=12,l.days=o,l.months=s,l.years=r,this},Un.clone=function(){return We(this)},Un.get=function(t){return t=L(t),this.isValid()?this[t+"s"]():NaN},Un.milliseconds=In,Un.seconds=Fn,Un.minutes=Ln,Un.hours=Rn,Un.days=jn,Un.weeks=function(){return _(this.days()/7)},Un.months=En,Un.years=Nn,Un.humanize=function(t){if(!this.isValid())return this.localeData().invalidDate();var e=this.localeData(),n=function(t,e,n){var r=We(t).abs(),i=zn(r.as("s")),a=zn(r.as("m")),o=zn(r.as("h")),s=zn(r.as("d")),l=zn(r.as("M")),u=zn(r.as("y")),c=i<=Wn.ss&&["s",i]||i<Wn.s&&["ss",i]||a<=1&&["m"]||a<Wn.m&&["mm",a]||o<=1&&["h"]||o<Wn.h&&["hh",o]||s<=1&&["d"]||s<Wn.d&&["dd",s]||l<=1&&["M"]||l<Wn.M&&["MM",l]||u<=1&&["y"]||["yy",u];return c[2]=e,c[3]=+t>0,c[4]=n,Yn.apply(null,c)}(this,!t,e);return t&&(n=e.pastFuture(+this,n)),e.postformat(n)},Un.toISOString=Hn,Un.toString=Hn,Un.toJSON=Hn,Un.locale=Je,Un.localeData=Ze,Un.toIsoString=S("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Hn),Un.lang=qe,B("X",0,0,"unix"),B("x",0,0,"valueOf"),ut("x",it),ut("X",/[+-]?\d+(\.\d{1,3})?/),ft("X",(function(t,e,n){n._d=new Date(1e3*parseFloat(t,10))})),ft("x",(function(t,e,n){n._d=new Date(w(t))})),r.version="2.24.0",e=Me,r.fn=cn,r.min=function(){var t=[].slice.call(arguments,0);return Ce("isBefore",t)},r.max=function(){var t=[].slice.call(arguments,0);return Ce("isAfter",t)},r.now=function(){return Date.now?Date.now():+new Date},r.utc=d,r.unix=function(t){return Me(1e3*t)},r.months=function(t,e){return pn(t,e,"months")},r.isDate=l,r.locale=ie,r.invalid=g,r.duration=We,r.isMoment=x,r.weekdays=function(t,e,n){return gn(t,e,n,"weekdays")},r.parseZone=function(){return Me.apply(null,arguments).parseZone()},r.localeData=oe,r.isDuration=Ae,r.monthsShort=function(t,e){return pn(t,e,"monthsShort")},r.weekdaysMin=function(t,e,n){return gn(t,e,n,"weekdaysMin")},r.defineLocale=ae,r.updateLocale=function(t,e){if(null!=e){var n,r,i=Qt;null!=(r=re(t))&&(i=r._config),e=A(i,e),(n=new P(e)).parentLocale=te[t],te[t]=n,ie(t)}else null!=te[t]&&(null!=te[t].parentLocale?te[t]=te[t].parentLocale:null!=te[t]&&delete te[t]);return te[t]},r.locales=function(){return D(te)},r.weekdaysShort=function(t,e,n){return gn(t,e,n,"weekdaysShort")},r.normalizeUnits=L,r.relativeTimeRounding=function(t){return void 0===t?zn:"function"==typeof t&&(zn=t,!0)},r.relativeTimeThreshold=function(t,e){return void 0!==Wn[t]&&(void 0===e?Wn[t]:(Wn[t]=e,"s"===t&&(Wn.ss=e-1),!0))},r.calendarFormat=function(t,e){var n=t.diff(e,"days",!0);return n<-6?"sameElse":n<-1?"lastWeek":n<0?"lastDay":n<1?"sameDay":n<2?"nextDay":n<7?"nextWeek":"sameElse"},r.prototype=cn,r.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},r}()}).call(this,n("YuTi")(t))},xYSL:function(t,e){t.exports=function(t,e){return t.has(e)}},xfY5:function(t,e,n){"use strict";var r=n("dyZX"),i=n("aagx"),a=n("LZWt"),o=n("Xbzi"),s=n("apmT"),l=n("eeVq"),u=n("kJMx").f,c=n("EemH").f,h=n("hswa").f,d=n("qncB").trim,f=r.Number,p=f,g=f.prototype,m="Number"==a(n("Kuth")(g)),v="trim"in String.prototype,b=function(t){var e=s(t,!1);if("string"==typeof e&&e.length>2){var n,r,i,a=(e=v?e.trim():d(e,3)).charCodeAt(0);if(43===a||45===a){if(88===(n=e.charCodeAt(2))||120===n)return NaN}else if(48===a){switch(e.charCodeAt(1)){case 66:case 98:r=2,i=49;break;case 79:case 111:r=8,i=55;break;default:return+e}for(var o,l=e.slice(2),u=0,c=l.length;u<c;u++)if((o=l.charCodeAt(u))<48||o>i)return NaN;return parseInt(l,r)}}return+e};if(!f(" 0o1")||!f("0b1")||f("+0x1")){f=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof f&&(m?l((function(){g.valueOf.call(n)})):"Number"!=a(n))?o(new p(b(e)),n,f):b(e)};for(var y,x=n("nh4g")?u(p):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),_=0;x.length>_;_++)i(p,y=x[_])&&!i(f,y)&&h(f,y,c(p,y));f.prototype=g,g.constructor=f,n("KroJ")(r,"Number",f)}},y1pI:function(t,e,n){var r=n("ljhN");t.exports=function(t,e){for(var n=t.length;n--;)if(r(t[n][0],e))return n;return-1}},yGk4:function(t,e,n){var r=n("Cwc5")(n("Kz5y"),"Set");t.exports=r},zZ0H:function(t,e){t.exports=function(t){return t}},zoYe:function(t,e,n){n("a1Th"),n("h7Nl"),n("Btvt");var r=n("nmnc"),i=n("eUgh"),a=n("Z0cm"),o=n("/9aa"),s=r?r.prototype:void 0,l=s?s.toString:void 0;t.exports=function t(e){if("string"==typeof e)return e;if(a(e))return i(e,t)+"";if(o(e))return l?l.call(e):"";var n=e+"";return"0"==n&&1/e==-1/0?"-0":n}}}]);
+//# sourceMappingURL=component---src-pages-performance-js-543d97d8e2ab1f92fc6a.js.map
\ No newline at end of file
diff --git a/component---src-pages-performance-js-543d97d8e2ab1f92fc6a.js.map b/component---src-pages-performance-js-543d97d8e2ab1f92fc6a.js.map
new file mode 100644
index 0000000..b1c3d3c
--- /dev/null
+++ b/component---src-pages-performance-js-543d97d8e2ab1f92fc6a.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["webpack:///./node_modules/lodash/_listCacheHas.js","webpack:///./node_modules/lodash/property.js","webpack:///./node_modules/lodash/isSymbol.js","webpack:///./node_modules/lodash/isArguments.js","webpack:///./node_modules/lodash/_stackSet.js","webpack:///./node_modules/lodash/stubArray.js","webpack:///./node_modules/lodash/_SetCache.js","webpack:///./node_modules/lodash/_coreJsData.js","webpack:///./node_modules/lodash/_setCacheHas.js","webpack:///./node_modules/lodash/_toSource.js","webpack:///./node_modules/lodash/_basePropertyDeep.js","webpack:///./node_modules/lodash/memoize.js","webpack:///./node_modules/lodash/_Hash.js","webpack:///./node_modules/lodash/_hasPath.js","webpack:///./node_modules/lodash/_castPath.js","webpack:///./node_modules/lodash/_isPrototype.js","webpack:///./node_modules/lodash/_baseProperty.js","webpack:///./node_modules/lodash/_stackClear.js","webpack:///./node_modules/lodash/keys.js","webpack:///./node_modules/lodash/_mapToArray.js","webpack:///./node_modules/process/browser.js","webpack:///./node_modules/lodash/_toKey.js","webpack:///./node_modules/lodash/_isKey.js","webpack:///./node_modules/lodash/_baseKeys.js","webpack:///./node_modules/lodash/_getRawTag.js","webpack:///./node_modules/core-js/modules/es6.date.to-json.js","webpack:///./node_modules/lodash/stubFalse.js","webpack:///./node_modules/lodash/_arrayPush.js","webpack:///./node_modules/lodash/_isStrictComparable.js","webpack:///./node_modules/lodash/_getNative.js","webpack:///./node_modules/core-js/modules/es6.math.sign.js","webpack:///./node_modules/lodash/isBuffer.js","webpack:///./node_modules/core-js/modules/es6.object.freeze.js","webpack:///./node_modules/lodash/_isMasked.js","webpack:///./node_modules/lodash/_isKeyable.js","webpack:///./node_modules/lodash/isObjectLike.js","webpack:///./node_modules/core-js/modules/es6.object.is-extensible.js","webpack:///./node_modules/lodash/_baseMatchesProperty.js","webpack:///./node_modules/lodash/_stringToPath.js","webpack:///./node_modules/lodash/isObject.js","webpack:///./node_modules/lodash/_mapCacheSet.js","webpack:///./node_modules/lodash/_equalByTag.js","webpack:///./node_modules/lodash/_Promise.js","webpack:///./node_modules/lodash/_hashDelete.js","webpack:///./node_modules/lodash/_memoizeCapped.js","webpack:///./node_modules/core-js/modules/es6.array.find-index.js","webpack:///./node_modules/lodash/_matchesStrictComparable.js","webpack:///./node_modules/lodash/_baseForOwn.js","webpack:///./node_modules/lodash/_baseAggregator.js","webpack:///./node_modules/lodash/_Uint8Array.js","webpack:///./node_modules/lodash/_mapCacheGet.js","webpack:///./node_modules/lodash/_hashSet.js","webpack:///./node_modules/lodash/_baseIsArguments.js","webpack:///./node_modules/lodash/_baseHasIn.js","webpack:///./node_modules/lodash/_listCacheClear.js","webpack:///./node_modules/lodash/_objectToString.js","webpack:///./node_modules/lodash/_root.js","webpack:///./node_modules/lodash/_stackDelete.js","webpack:///./node_modules/lodash/_arrayFilter.js","webpack:///./node_modules/core-js/modules/es6.number.epsilon.js","webpack:///./node_modules/lodash/isArrayLike.js","webpack:///./node_modules/chart.js/dist/Chart.js","webpack:///./node_modules/lodash/_getSymbols.js","webpack:///./node_modules/lodash/_baseIsNative.js","webpack:///./node_modules/lodash/_getValue.js","webpack:///./node_modules/core-js/modules/_array-fill.js","webpack:///./node_modules/lodash/_baseGetTag.js","webpack:///./node_modules/lodash/_defineProperty.js","webpack:///./node_modules/lodash/_getMatchData.js","webpack:///./node_modules/lodash/_WeakMap.js","webpack:///./node_modules/lodash/keyBy.js","webpack:///./node_modules/lodash/_getMapData.js","webpack:///./node_modules/lodash/_arraySome.js","webpack:///./node_modules/lodash/_getTag.js","webpack:///./node_modules/lodash/_baseEach.js","webpack:///./node_modules/lodash/_hashClear.js","webpack:///./node_modules/react-chartjs-2/es/index.js","webpack:///./node_modules/core-js/modules/_object-to-array.js","webpack:///./node_modules/lodash/_createAggregator.js","webpack:///./node_modules/lodash/_baseTimes.js","webpack:///./node_modules/lodash/_nativeKeys.js","webpack:///./node_modules/lodash/_stackHas.js","webpack:///./node_modules/lodash/_freeGlobal.js","webpack:///./node_modules/lodash/_ListCache.js","webpack:///./node_modules/lodash/isEqual.js","webpack:///./node_modules/lodash/_nativeCreate.js","webpack:///(webpack)/buildin/module.js","webpack:///./node_modules/lodash/isArray.js","webpack:///./node_modules/lodash/_listCacheSet.js","webpack:///./node_modules/lodash/_baseMatches.js","webpack:///./node_modules/lodash/_baseGet.js","webpack:///./node_modules/core-js/modules/es6.object.is-frozen.js","webpack:///./node_modules/lodash/_listCacheDelete.js","webpack:///./node_modules/lodash/_arrayLikeKeys.js","webpack:///./node_modules/core-js/modules/es6.array.fill.js","webpack:///./node_modules/lodash/isTypedArray.js","webpack:///./node_modules/lodash/_baseFor.js","webpack:///./node_modules/lodash/_baseIsTypedArray.js","webpack:///./node_modules/lodash/toString.js","webpack:///./node_modules/lodash/_MapCache.js","webpack:///./node_modules/lodash/_baseIsEqualDeep.js","webpack:///./node_modules/core-js/modules/es6.math.log10.js","webpack:///./node_modules/lodash/_arrayMap.js","webpack:///./node_modules/lodash/_Map.js","webpack:///./node_modules/lodash/_hashHas.js","webpack:///./node_modules/lodash/_mapCacheClear.js","webpack:///./node_modules/lodash/_baseGetAllKeys.js","webpack:///./node_modules/lodash/_Stack.js","webpack:///./node_modules/lodash/_setCacheAdd.js","webpack:///./node_modules/lodash/_stackGet.js","webpack:///./node_modules/core-js/modules/es6.number.max-safe-integer.js","webpack:///./node_modules/lodash/hasIn.js","webpack:///./node_modules/core-js/modules/es7.object.values.js","webpack:///./node_modules/lodash/_baseAssignValue.js","webpack:///./node_modules/core-js/modules/es6.date.to-iso-string.js","webpack:///./node_modules/core-js/modules/_date-to-iso-string.js","webpack:///./node_modules/lodash/_mapCacheDelete.js","webpack:///./node_modules/lodash/_overArg.js","webpack:///./node_modules/core-js/modules/es6.number.min-safe-integer.js","webpack:///./node_modules/lodash/_createBaseEach.js","webpack:///./node_modules/lodash/isFunction.js","webpack:///./node_modules/lodash/eq.js","webpack:///./node_modules/lodash/_baseIsMatch.js","webpack:///./node_modules/core-js/modules/_math-sign.js","webpack:///./node_modules/lodash/_createBaseFor.js","webpack:///./node_modules/lodash/_nodeUtil.js","webpack:///./node_modules/lodash/get.js","webpack:///./node_modules/lodash/_Symbol.js","webpack:///./node_modules/lodash/_arrayAggregator.js","webpack:///./node_modules/lodash/_equalArrays.js","webpack:///./src/components/lineChart.js","webpack:///./src/components/barChart.js","webpack:///./src/components/performanceCard.js","webpack:///./src/pages/performance.js","webpack:///./node_modules/lodash/_mapCacheHas.js","webpack:///./node_modules/lodash/_getAllKeys.js","webpack:///./node_modules/lodash/_setToArray.js","webpack:///./node_modules/lodash/_baseUnary.js","webpack:///./node_modules/lodash/_equalObjects.js","webpack:///./node_modules/lodash/isLength.js","webpack:///./node_modules/lodash/_listCacheGet.js","webpack:///./node_modules/lodash/_DataView.js","webpack:///./node_modules/lodash/_hashGet.js","webpack:///./node_modules/lodash/_baseIteratee.js","webpack:///./node_modules/lodash/_baseIsEqual.js","webpack:///./node_modules/lodash/_isIndex.js","webpack:///./node_modules/moment/moment.js","webpack:///./node_modules/lodash/_cacheHas.js","webpack:///./node_modules/core-js/modules/es6.number.constructor.js","webpack:///./node_modules/lodash/_assocIndexOf.js","webpack:///./node_modules/lodash/_Set.js","webpack:///./node_modules/lodash/identity.js","webpack:///./node_modules/lodash/_baseToString.js"],"names":["assocIndexOf","module","exports","key","this","__data__","baseProperty","basePropertyDeep","isKey","toKey","path","baseGetTag","isObjectLike","value","baseIsArguments","objectProto","Object","prototype","hasOwnProperty","propertyIsEnumerable","isArguments","arguments","call","ListCache","Map","MapCache","data","pairs","length","LARGE_ARRAY_SIZE","push","size","set","setCacheAdd","setCacheHas","SetCache","values","index","add","has","coreJsData","funcToString","Function","toString","func","e","baseGet","object","memoize","resolver","TypeError","memoized","args","apply","cache","get","result","Cache","hashClear","hashDelete","hashGet","hashHas","hashSet","Hash","entries","clear","entry","castPath","isArray","isIndex","isLength","hasFunc","stringToPath","Ctor","constructor","undefined","arrayLikeKeys","baseKeys","isArrayLike","map","Array","forEach","cachedSetTimeout","cachedClearTimeout","process","defaultSetTimout","Error","defaultClearTimeout","runTimeout","fun","setTimeout","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","concat","drainQueue","timeout","len","run","marker","runClearTimeout","Item","array","noop","nextTick","i","title","browser","env","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","name","binding","cwd","chdir","dir","umask","isSymbol","reIsDeepProp","reIsPlainProp","type","test","isPrototype","nativeKeys","Symbol","nativeObjectToString","symToStringTag","toStringTag","isOwn","tag","unmasked","$export","toObject","toPrimitive","P","F","Date","NaN","toJSON","toISOString","O","pv","isFinite","offset","isObject","baseIsNative","getValue","S","sign","stubFalse","freeExports","nodeType","freeModule","Buffer","root","isBuffer","meta","onFreeze","$freeze","it","uid","maskSrcKey","exec","keys","IE_PROTO","$isExtensible","baseIsEqual","hasIn","isStrictComparable","matchesStrictComparable","srcValue","objValue","COMPARE_PARTIAL_FLAG","memoizeCapped","rePropName","reEscapeChar","string","charCodeAt","replace","match","number","quote","subString","getMapData","Uint8Array","eq","equalArrays","mapToArray","setToArray","symbolProto","symbolValueOf","valueOf","other","bitmask","customizer","equalFunc","stack","byteLength","byteOffset","buffer","message","convert","isPartial","stacked","Promise","getNative","$find","KEY","forced","findIndex","callbackfn","baseFor","iteratee","baseEach","collection","setter","accumulator","nativeCreate","freeGlobal","freeSelf","self","predicate","resIndex","EPSILON","Math","pow","isFunction","moment","colorName","conversions","fn","createCommonjsModule","reverseKeywords","rgb","channels","labels","hsl","hsv","hwb","cmyk","xyz","lab","lch","hex","keyword","ansi16","ansi256","hcg","apple","gray","model","defineProperty","h","l","r","g","b","min","max","delta","rdif","gdif","bdif","s","v","diff","diffc","c","k","reversed","currentClosestKeyword","x","y","currentClosestDistance","Infinity","distance","z","t1","t2","t3","val","smin","lmin","hi","floor","f","p","q","t","sl","vmin","n","wh","bl","ratio","m","y2","x2","z2","a","atan2","PI","sqrt","hr","cos","sin","round","ansi","color","mult","rem","toUpperCase","substring","colorString","split","_char","join","integer","parseInt","hue","chroma","mg","pure","w","deriveBFS","fromModel","graph","models","parent","buildGraph","current","pop","adjacents","adjacent","node","unshift","link","from","to","wrapConversion","toModel","cur","conversion","routes","route","wrappedFn","slice","wrapRounded","raw","wrapRaw","colorConvert","colorName$1","getRgba","getHsla","getRgb","rgba","getHsl","hsla","getHwb","getAlpha","vals","hexString","hexDouble","rgbString","alpha","rgbaString","percentString","percentaString","hslString","hslaString","hwbString","reverseNames","hexAlpha","parseFloat","scale","isNaN","num","str","Color","obj","valid","setValues","red","lightness","whiteness","cyan","isValid","setSpace","rgbArray","hslArray","hsvArray","hwbArray","cmykArray","rgbaArray","hslaArray","setChannel","green","blue","saturation","saturationv","blackness","magenta","yellow","black","rgbNumber","luminosity","lum","chan","contrast","color2","lum1","lum2","level","contrastRatio","dark","light","negate","lighten","darken","saturate","desaturate","whiten","blacken","greyscale","clearer","opaquer","rotate","degrees","mix","mixinColor","weight","w1","w2","clone","source","target","prop","console","error","spaces","maxes","getValues","space","charAt","capped","chans","sname","svalues","window","id","chartjsColor","helpers","isNullOrUndef","substr","_isFinite","_x","Number","valueOrDefault","defaultValue","valueAtIndexOrDefault","callback","thisArg","each","loopable","reverse","arrayEquals","a0","a1","ilen","v0","v1","klen","_merger","options","tval","sval","merge","_mergerIf","mergeIf","sources","merger","extend","assign","dst","src","inherits","extensions","me","ChartElement","Surrogate","__super__","_deprecated","scope","previous","warn","helpers_core","callCallback","indexOf","item","fromIndex","getValueOrDefault","getValueAtIndexOrDefault","effects","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","easeInSine","easeOutSine","easeInOutSine","easeInExpo","easeOutExpo","easeInOutExpo","easeInCirc","easeOutCirc","easeInOutCirc","easeInElastic","asin","easeOutElastic","easeInOutElastic","easeInBack","easeOutBack","easeInOutBack","easeInBounce","easeOutBounce","easeInOutBounce","helpers_easing","easingEffects","RAD_PER_DEG","DOUBLE_PI","HALF_PI","QUARTER_PI","TWO_THIRDS_PI","exports$1","chart","ctx","clearRect","width","height","roundedRect","radius","left","top","right","bottom","moveTo","arc","closePath","rect","drawPoint","style","rotation","xOffset","yOffset","cornerRadius","rad","save","translate","drawImage","restore","beginPath","lineTo","SQRT1_2","fill","stroke","_isPointInArea","point","area","clipArea","clip","unclipArea","flip","stepped","steppedLine","midpoint","tension","bezierCurveTo","controlPointPreviousX","controlPointNextX","controlPointPreviousY","controlPointNextY","helpers_canvas","drawRoundedRectangle","defaults","_set","defaultColor","defaultFontColor","defaultFontFamily","defaultFontSize","defaultFontStyle","defaultLineHeight","showLines","core_defaults","helpers_options","toLineHeight","matches","toPadding","_parseFont","globalDefaults","global","fontSize","font","family","fontFamily","lineHeight","fontStyle","toFontString","resolve","inputs","context","info","cacheable","exports$2","_factorize","sort","log10","exponent","log","LOG10E","powerOf10","helpers_math","helpers$1","easing","canvas","math","rtl","getRtlAdapter","rectX","_x2","setWidth","textAlign","align","xPlus","leftForLtr","itemWidth","_x3","_itemWidth","overrideTextDirection","direction","original","getPropertyValue","getPropertyPriority","setProperty","prevTextDirection","restoreTextDirection","Element","configuration","initialize","_type","hidden","pivot","_view","_model","_start","transition","ease","start","view","actual","origin","c0","c1","interpolate","tooltipPosition","hasValue","isNumber","core_element","exports$3","currentStep","numSteps","render","onAnimationProgress","onAnimationComplete","core_animation","animation","duration","onProgress","onComplete","core_animations","animations","request","addAnimation","lazy","startTime","now","animating","requestAnimationFrame","cancelAnimation","splice","requestAnimFrame","startDigest","advance","nextStep","arrayEvents","unlistenArrayEvents","listener","stub","_chartjs","DatasetController","datasetIndex","datasetElementType","dataElementType","_datasetElementOptions","_dataElementOptions","linkScales","addElements","getMeta","updateIndex","scales","dataset","getDataset","scalesOpts","xAxisID","xAxes","yAxisID","yAxes","datasets","getDatasetMeta","getScaleForId","scaleID","_getValueScaleId","_getIndexScaleId","_getValueScale","_getIndexScale","reset","_update","destroy","_data","createMetaDataset","_chart","_datasetIndex","createMetaData","_index","metaData","addElementAndReset","element","updateElement","buildOrUpdateElements","isExtensible","configurable","enumerable","method","base","res","resyncElements","_configure","_config","_cachedDataOpts","update","easingValue","elements","draw","getStyle","_resolveDatasetElementOptions","_resolveDataElementOptions","backgroundColor","borderColor","hover","readKey","datasetOpts","custom","elementOptions","cached","dataIndex","freeze","removeHoverStyle","$previousStyle","setHoverStyle","getHoverColor","borderWidth","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth","_removeDatasetHoverStyle","_setDatasetHoverStyle","hoverOptions","prev","numMeta","numData","insertElements","count","onDataPush","onDataPop","onDataShift","shift","onDataSplice","onDataUnshift","core_datasetController","TAU","clipArc","startAngle","endAngle","pixelMargin","angleMargin","outerRadius","innerRadius","drawBorder","vm","inner","borderAlign","lineWidth","lineJoin","fullCircles","drawFullCircleBorders","element_arc","inLabelRange","mouseX","hoverRadius","inRange","chartX","chartY","pointRelativePosition","getAngleFromPoint","angle","betweenAngles","withinRadius","getCenterPoint","halfAngle","halfRadius","getArea","centreAngle","rangeFromCentre","circumference","fillStyle","strokeStyle","valueOrDefault$1","line","borderCapStyle","borderDash","borderDashOffset","borderJoinStyle","capBezierPoints","element_line","currentVM","spanGaps","points","_children","globalOptionLineElements","lastDrawnIndex","_loop","previousItem","skip","lineCap","setLineDash","lineDashOffset","valueOrDefault$2","defaultColor$1","xRange","abs","hitRadius","pointStyle","element_point","mouseY","inXRange","inYRange","padding","chartArea","defaultColor$2","isVertical","getBarBounds","x1","y1","half","swap","orig","v2","parseBorderWidth","maxW","maxH","edge","borderSkipped","horizontal","parseBorderSkipped","_inRange","skipX","skipY","bounds","rectangle","element_rectangle","rects","border","outer","boundingRects","fillRect","Arc","Line","Point","Rectangle","deprecated","valueOrDefault$3","computeFitCategoryTraits","ruler","thickness","barThickness","stackCount","curr","pixels","_length","getTicks","getPixelForTick","computeMinSampleSize","categoryPercentage","barPercentage","chunk","mode","gridLines","offsetGridLines","bar","controller_bar","scaleOpts","minBarLength","maxBarThickness","_ruler","getRuler","_xScale","_yScale","datasetLabel","label","_updateElementGeometry","vscale","getBasePixel","isHorizontal","vpixels","calculateBarValuePixels","ipixels","calculateBarIndexPixels","head","center","_getStacks","last","metasets","_getMatchingVisibleMetas","stacks","getStackCount","getStackIndex","getPixelForValue","_startPixel","end","_endPixel","imeta","ivalue","stackLength","_parseValue","range","next","percent","computeFlexCategoryTraits","stackIndex","indexOpts","valueOpts","valueOrDefault$4","resolve$1","position","tooltips","callbacks","dataPoint","xLabel","yLabel","controller_bubble","xScale","yScale","dsIndex","getPixelForDecimal","_options","valueOrDefault$5","PI$1","DOUBLE_PI$1","HALF_PI$1","animateRotate","animateScale","legendCallback","listItem","list","document","createElement","setAttribute","appendChild","createTextNode","outerHTML","legend","generateLabels","controller","text","onClick","legendItem","cutoutPercentage","tooltipItem","dataLabel","controller_doughnut","getRingIndex","ringIndex","j","isDatasetVisible","maxWidth","maxHeight","opts","ratioX","ratioY","offsetX","offsetY","arcs","cutout","chartWeight","_getRingWeight","startX","startY","endX","endY","contains0","contains90","contains270","minX","minY","maxX","maxY","getMaxBorderWidth","radiusLength","_getVisibleDatasetWeightTotal","total","calculateTotal","_getRingWeightOffset","animationOpts","centerX","centerY","calculateCircumference","hoverWidth","ringWeightOffset","dataSetIndex","axis","horizontalBar","controller_horizontalBar","valueOrDefault$6","resolve$2","isPointInArea","scaleClip","halfBorderWidth","tickOpts","ticks","defaultClip","toClip","controller_line","config","showLine","_showLine","lineTension","_scale","updateBezierControlPoints","lineModel","calculatePointY","lineOptions","ds","dsMeta","stackedRightValue","rightValue","sumPos","sumNeg","getRightValue","_getSortedVisibleDatasetMetas","controlPoints","capControlPoint","pt","filter","cubicInterpolationMode","splineCurveMonotone","splineCurve","nextItem","resolve$3","angleLines","display","circular","pointLabels","beginAtZero","controller_polarArea","starts","_starts","angles","_angles","_updateRadius","countVisibleElements","_computeAngle","minSize","getVisibleDatasetCount","xCenter","yCenter","datasetStartAngle","getDistanceFromCenterForValue","resetRadius","doughnut","controller_pie","valueOrDefault$7","controller_radar","pointPosition","getPointPositionForValue","scatter","controllers","bubble","polarArea","pie","radar","getRelativePosition","parseVisibleItems","handler","metadata","jlen","getIntersectItems","getNearestItems","intersect","distanceMetric","minDistance","POSITIVE_INFINITY","nearestItems","getDistanceMetricForAxis","useX","useY","pt1","pt2","deltaX","deltaY","indexMode","items","core_interaction","modes","single","nearest","intersectsItem","filterByPosition","where","pos","sortByWeight","getCombinedMax","maxPadding","updateDims","params","layout","newWidth","newHeight","box","getPadding","boxPadding","outerWidth","outerHeight","getMargins","marginForPositions","positions","margin","fitBoxes","boxes","refit","changed","refitBoxes","fullWidth","placeBoxes","userPadding","core_layouts","addBox","_layers","removeBox","layoutItem","configure","props","layoutOptions","availableWidth","availableHeight","layoutBoxes","wrapBoxes","leftAndTop","rightAndBottom","vertical","buildLayoutBoxes","verticalBoxes","horizontalBoxes","vBoxMaxWidth","hBoxMaxHeight","layouts","setLayoutDims","updatePos","change","handleMaxPadding","stylesheet","__proto__","ANIMATION_START_EVENTS","EVENT_TYPES","touchstart","touchmove","touchend","pointerenter","pointerdown","pointermove","pointerup","pointerleave","pointerout","readUsedSize","property","eventListenerOptions","supports","addEventListener","passive","removeEventListener","createEvent","nativeEvent","createDiv","cls","el","className","addResizeListener","ticking","expando","resizer","CSS_PREFIX","expand","CSS_SIZE_MONITOR","shrink","_reset","scrollLeft","scrollTop","onScroll","bind","createResizer","container","maintainAspectRatio","parentNode","clientWidth","proxy","renderProxy","animationName","reflow","offsetParent","classList","watchForRender","insertBefore","firstChild","removeResizeListener","remove","unwatchForRender","removeChild","platform_dom$2","disableCSSInjection","_enabled","_ensureLoaded","getRootNode","rootNode","css","containsStyles","injectCSS","host","acquireContext","getElementById","getContext","renderHeight","getAttribute","renderWidth","initial","displayWidth","aspectRatio","displayHeight","initCanvas","releaseContext","removeAttribute","proxies","event","fromNativeEvent","addEvent","removeEvent","implementation","platform","plugins","core_plugins","_plugins","_cacheId","register","plugin","unregister","idx","getAll","notify","hook","descriptor","descriptors","$plugins","_invalidate","core_scaleService","constructors","registerScaleType","scaleConstructor","scaleDefaults","getScaleConstructor","getScaleDefaults","updateScaleDefaults","additions","addScalesToLayout","valueOrDefault$8","getRtlHelper","enabled","titleFontStyle","titleSpacing","titleMarginBottom","titleFontColor","titleAlign","bodySpacing","bodyFontColor","bodyAlign","footerFontStyle","footerSpacing","footerMarginTop","footerFontColor","footerAlign","yPadding","xPadding","caretPadding","caretSize","multiKeyBackground","displayColors","beforeTitle","tooltipItems","labelCount","afterTitle","beforeBody","beforeLabel","labelColor","labelTextColor","afterLabel","afterBody","beforeFooter","footer","afterFooter","positioners","average","eventPosition","nearestElement","d","distanceBetweenPoints","tp","pushOrConcat","toPush","splitNewlines","String","getBaseModel","tooltipOpts","xAlign","yAlign","textDirection","_bodyFontFamily","bodyFontFamily","_bodyFontStyle","bodyFontStyle","_bodyAlign","bodyFontSize","_titleFontFamily","titleFontFamily","_titleFontStyle","titleFontSize","_titleAlign","_footerFontFamily","footerFontFamily","_footerFontStyle","footerFontSize","_footerAlign","opacity","legendColorBackground","getAlignedX","getBeforeAfterBodyLines","exports$4","_lastActive","getTitle","lines","getBeforeBody","getBody","bodyItems","bodyItem","before","after","getAfterBody","getFooter","indexScale","valueScale","existingModel","active","_active","alignment","backgroundPoint","tooltipSize","caretX","caretY","labelColors","labelTextColors","_eventPosition","getLabelForIndex","itemSort","body","dataPoints","tooltip","combinedBodyLength","reduce","titleLineCount","footerLineCount","widthPadding","maxLineWidth","measureText","fontString","getTooltipSize","paddingAndSize","radiusAndPadding","getBackgroundPoint","lf","rf","olf","orf","yf","midX","midY","determineAlignment","drawCaret","tooltipPoint","caretPosition","getCaretPosition","x3","y3","ptX","ptY","tmp","drawTitle","rtlHelper","textBaseline","fillText","drawBody","textColor","drawColorBoxes","xLinePadding","colorX","fillLineOfText","bodyAlignForCalculation","rtlColorX","strokeRect","drawFooter","drawBackground","quadraticCurveTo","hasTooltipContent","globalAlpha","handleEvent","getElementsAtEventForMode","positioners_1","core_tooltip","valueOrDefault$9","mergeScaleConfig","slen","mergeConfig","updateConfig","newOptions","ensureScalesHaveIDs","buildOrUpdateScales","nextAvailableScaleId","axesOpts","prefix","hasId","positionIsHorizontal","compare2Level","l1","l2","events","onHover","animationDuration","responsive","responsiveAnimationDuration","Chart","construct","initConfig","_bufferedRender","instances","retinaScale","devicePixelRatio","bindEvents","resize","initToolTip","stop","silent","getMaximumWidth","getMaximumHeight","newSize","onResize","scalesOptions","scaleOptions","xAxisOptions","yAxisOptions","updated","dtype","dposition","isDefault","scaleType","scaleClass","mergeTicksOptions","hasUpdated","buildOrUpdateControllers","newControllers","destroyDatasetMeta","order","ControllerClass","resetElements","updateLayout","updateDatasets","lastActive","_bufferedRequest","_idx","updateDataset","animationOptions","animationObject","easingFunction","stepDecimal","layers","drawDatasets","_drawTooltip","_getSortedDatasetMetas","filterVisible","drawDataset","getElementAtEvent","getElementsAtEvent","getElementsAtXAxis","getDatasetAtEvent","_meta","generateLegend","unbindEvents","toBase64Image","toDataURL","_chartInstance","_listeners","eventHandler","updateHoverStyle","bufferedRequest","core_controller","_abstract","DateAdapter","Controller","types","configMerge","scaleMerge","formats","parse","format","startOf","endOf","_create","override","members","core_adapters","_date","core_ticks","formatters","tickValue","logDelta","tickString","logTick","numExponential","toExponential","numDecimal","toFixed","logarithmic","remain","valueOrDefault$a","getPixelForGridLine","validIndex","lineValue","computeLabelSizes","tickFonts","caches","tickFont","nestedLabel","widest","highest","widths","heights","offsets","major","minor","gc","valueAt","gcLen","garbageCollect","first","getTickMarkLength","drawTicks","tickMarkLength","getScaleLabelHeight","parseFontOptions","nestedOpts","fontColor","parseTickFontOptions","nonSkipped","ticksToFilter","filtered","spacing","majorStart","majorEnd","tick","ceil","drawOnChartArea","zeroLineWidth","zeroLineColor","zeroLineBorderDash","zeroLineBorderDashOffset","scaleLabel","labelString","minRotation","maxRotation","mirror","autoSkip","autoSkipPadding","labelOffset","Scale","zeroLineIndex","paddingLeft","paddingTop","paddingRight","paddingBottom","_ticks","_getLabels","xLabels","yLabels","beforeUpdate","margins","samplingEnabled","sampleSize","_labelSizes","_maxLabelLines","longestLabelWidth","longestTextCache","_gridLineItems","_labelItems","beforeSetDimensions","setDimensions","afterSetDimensions","beforeDataLimits","determineDataLimits","afterDataLimits","beforeBuildTicks","buildTicks","afterBuildTicks","_convertTicksToLabels","arr","numItems","increment","sample","beforeCalculateTickRotation","calculateTickRotation","afterCalculateTickRotation","beforeFit","fit","afterFit","_ticksToDraw","_autoSkip","afterUpdate","startPixel","endPixel","reversePixels","_reversePixels","beforeTickToLabelConversion","convertTicksToLabels","userCallback","afterTickToLabelConversion","labelSizes","maxLabelWidth","maxLabelHeight","tickWidth","maxLabelDiagonal","numTicks","labelRotation","_isVisible","_getLabelSizes","toDegrees","scaleLabelOpts","gridLineOpts","isBottom","firstLabelSize","lastLabelSize","widestLabelSize","highestLabelSize","lineSpace","tickPadding","isRotated","angleRadians","toRadians","cosRotation","sinRotation","labelHeight","offsetLeft","offsetRight","labelWidth","handleMargins","isFullWidth","rawValue","_getScaleLabel","getValueForPixel","decimal","getDecimalForPixel","pixel","getBaseValue","avgMajorSpacing","axisLength","ticksLimit","maxTicksLimit","_tickSize","majorIndices","getMajorIndices","numMajorIndices","skipMajors","factors","factor","evenMajorSpacing","getEvenSpacing","calculateSpacing","optionTicks","rot","_computeGridLineItems","borderValue","alignedLineValue","tx1","ty1","tx2","ty2","lineColor","ticksLength","tl","axisWidth","axisHalfWidth","alignPixel","_alignPixel","alignBorderValue","_computeLabelItems","lineCount","textOffset","isMirrored","fonts","_drawGrid","firstLineWidth","lastLineWidth","_drawLabels","_drawTitle","scaleLabelX","scaleLabelY","scaleLabelFontColor","scaleLabelFont","scaleLabelPadding","halfLineHeight","isLeft","tz","gz","_draw","core_scale","isNullOrUndef$1","scale_category","ticksOpts","minIndex","maxIndex","_startValue","_valueRange","valueCategory","_defaults","isNullOrUndef$2","scale_linearbase","handleTickRangeOptions","minSign","maxSign","setMin","suggestedMin","setMax","suggestedMax","getTickLimit","maxTicks","stepSize","_computeTickLimit","handleDirectionalChanges","numericGeneratorOptions","precision","fixedStepSize","generationOptions","dataRange","niceMin","niceMax","numSpaces","unit","maxNumSpaces","rmin","rmax","niceNum","_decimalPlaces","almostWhole","almostEquals","generateTicks","ticksAsNumbers","_endValue","defaultConfig$1","stackData","neg","getOrCreateStack","relativePoints","updateMinMax","scale_linear","hasStacks","NEGATIVE_INFINITY","stackValues","_defaults$1","valueOrDefault$b","defaultConfig$2","nonNegativeOrDefault","scale_logarithmic","IDMatches","minNotZero","valuesPerStack","valuesForType","minVal","maxVal","exp","significand","tickVal","endExp","endSignificand","lastTick","generateTicks$1","tickValues","_getFirstTickValue","_valueOffset","_defaults$2","valueOrDefault$c","valueAtIndexOrDefault$1","resolve$4","defaultConfig$3","animate","showLabelBackdrop","backdropColor","backdropPaddingY","backdropPaddingX","getTickBackdropHeight","determineLimits","getTextAlignForAngle","adjustPointPositionForLabelHeight","textSize","numberOrZero","param","scale_radialLinear","drawingArea","plFont","furthestLimits","furthestAngles","_pointLabelSizes","valueCount","getPointPosition","longestText","getIndexAngle","hLimits","vLimits","setReductions","fitWithPointLabels","setCenterPoint","largestPossibleRadius","radiusReductionLeft","radiusReductionRight","radiusReductionTop","radiusReductionBottom","leftMovement","rightMovement","topMovement","bottomMovement","maxRight","maxLeft","maxTop","maxBottom","scalingFactor","distanceFromCenter","thisAngle","getBasePosition","angleLineOpts","pointLabelOpts","tickBackdropHeight","outerDistance","extra","pointLabelPosition","pointLabelFontColor","drawPointLabels","drawRadiusLine","tickFontColor","_defaults$3","deprecated$1","resolve$5","valueOrDefault$d","MIN_INTEGER","MIN_SAFE_INTEGER","MAX_INTEGER","MAX_SAFE_INTEGER","INTERVALS","millisecond","common","steps","second","minute","hour","day","week","month","quarter","year","UNITS","sorter","getMin","time","getMax","interpolate$1","table","skey","tkey","mid","i0","i1","lo","lookup","span","toTimestamp","input","adapter","_adapter","parser","determineUnitForAutoTicks","minUnit","capacity","interval","ticksFromTimestamps","majorUnit","setMajorTicks","scale_time","adapters","date","displayFormats","timestamp","labelsAdded","timestamps","dataLabels","hash","out","arrayUnique","_table","_timestamps","timeOpts","getLabelCapacity","distribution","unitStepSize","weekday","isoWeekday","generate","_unit","determineUnitForFormatting","_majorUnit","determineMajorUnit","buildLookupTable","_offsets","computeOffsets","tooltipFormat","datetime","tickFormatFunction","minorFormat","majorFormat","nestedTickOpts","formatter","getPixelForOffset","_getLabelSize","tickLabelWidth","tickFontSize","getLabelWidth","exampleTime","exampleLabel","_defaults$4","displayFormat","category","radialLinear","FORMATS","_id","_format","amount","filler","propagate","mappers","boundary","decodeFill","computeBoundary","cx","cy","computeCircularBoundary","scaleBottom","scaleTop","scaleZero","computeLinearBoundary","resolveTarget","visited","visible","createMapper","isDrawable","drawArea","curve0","curve1","len0","len1","doFill","mapper","loop","p0","p1","d0","d1","loopOffset","plugin_filler","afterDatasetsUpdate","$filler","beforeDatasetsDraw","getRtlHelper$1","noop$1","valueOrDefault$e","getBoxWidth","labelOpts","usePointStyle","boxWidth","ci","onLeave","lineDash","Legend","legendHitBoxes","_hoveredItem","doughnutMode","beforeBuildLabels","buildLabels","afterBuildLabels","legendItems","labelFont","hitboxes","lineWidths","totalHeight","vPadding","columnWidths","columnHeights","totalWidth","currentColWidth","currentColHeight","lineDefault","legendHeight","legendWidth","cursor","alignmentOffset","dimension","blockSize","itemHeight","textWidth","realX","SQRT2","drawLegendBox","halfFontSize","xLeft","yMiddle","_getLegendItemAt","hitBox","lh","hoveredItem","createNewLegendAndAttach","legendOpts","plugin_legend","_element","beforeInit","afterEvent","noop$2","Title","titleX","titleY","fontOpts","createNewTitleBlockAndAttach","titleOpts","titleBlock","parseMaxStyle","styleValue","parentProperty","valueInPixels","isConstrainedValue","getConstraintDimension","domNode","maxStyle","percentageProperty","defaultView","_getParentNode","constrainedNode","getComputedStyle","constrainedContainer","hasCNode","hasCContainer","infinity","filterCallback","findNextWhere","arrayToSearch","startIndex","currentItem","findPreviousWhere","epsilon","rounded","radians","centrePoint","anglePoint","distanceFromXCenter","distanceFromYCenter","radialDistanceFromCenter","aliasPixel","pixelWidth","currentDevicePixelRatio","halfWidth","firstPoint","middlePoint","afterPoint","d01","d12","s01","s12","fa","fb","pointBefore","pointCurrent","pointAfter","alphaK","betaK","tauK","squaredMagnitude","pointsWithTangents","deltaK","mK","pointsLen","slopeDeltaX","fraction","webkitRequestAnimationFrame","mozRequestAnimationFrame","oRequestAnimationFrame","msRequestAnimationFrame","evt","originalEvent","srcElement","boundingRect","getBoundingClientRect","touches","clientX","clientY","getConstraintWidth","getConstraintHeight","_calculatePadding","parentDimension","cw","clientHeight","ch","currentStyle","forceRatio","pixelRatio","pixelSize","arrayOfThings","thing","nestedThing","longest","numberOfLabelLines","numberOfLines","CanvasGradient","colorValue","CanvasPattern","core_helpers","_adapters","Animation","animationService","Interaction","scaleService","Ticks","Tooltip","pluginService","PluginBase","canvasHelpers","layoutService","LinearScaleBase","klass","cfg","toLowerCase","factory","arrayFilter","stubArray","nativeGetSymbols","getOwnPropertySymbols","getSymbols","symbol","isMasked","toSource","reIsHostCtor","funcProto","reIsNative","RegExp","toAbsoluteIndex","toLength","aLen","endPos","getRawTag","objectToString","WeakMap","baseAssignValue","keyBy","createAggregator","isKeyable","DataView","Set","dataViewCtorString","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","getTag","ArrayBuffer","ctorString","baseForOwn","createBaseEach","_extends","_objectWithoutProperties","_classCallCheck","instance","Constructor","_possibleConstructorReturn","ReferenceError","_inherits","subClass","superClass","create","writable","setPrototypeOf","NODE_ENV","ChartComponent","_React$Component","_this","handleOnClick","chartInstance","_this$props","onElementsClick","ref","componentDidMount","renderChart","componentDidUpdate","redraw","destroyChart","updateChart","shouldComponentUpdate","nextProps","_props","nextData","transformDataProp","shadowDataProp","componentWillUnmount","memoizeDataProps","saveCurrentDatasets","checkDatasets","isDev","usingCustomKeyProvider","datasetKeyProvider","getLabelAsKey","multipleDatasets","shouldWarn","getCurrentDatasets","_this2","_this3","currentDatasets","nextDatasets","currentDatasetsIndexed","pid","otherProps","rest","_props2","defaultProps","_props3","Component","propTypes","oneOfType","isRequired","arrayOf","bool","propName","componentName","_React$Component2","Doughnut","_this5","_ref","_React$Component3","Pie","_this7","_ref2","_React$Component4","_this9","_ref3","Bar","_React$Component5","_this11","_ref4","_React$Component6","HorizontalBar","_this13","_ref5","_React$Component7","Radar","_this15","_ref6","_React$Component8","Polar","_this17","_ref7","_React$Component9","Bubble","_this19","_ref8","_React$Component10","Scatter","_this21","_ref9","DESCRIPTORS","getKeys","toIObject","isEnum","isEntries","arrayAggregator","baseAggregator","baseIteratee","initializer","overArg","listCacheClear","listCacheDelete","listCacheGet","listCacheHas","listCacheSet","webpackPolyfill","deprecate","paths","children","baseIsMatch","getMatchData","matchData","$isFrozen","baseTimes","isTypedArray","inherited","isArr","isArg","isBuff","isType","skipIndexes","baseIsTypedArray","baseUnary","nodeUtil","nodeIsTypedArray","createBaseFor","typedArrayTags","baseToString","mapCacheClear","mapCacheDelete","mapCacheGet","mapCacheHas","mapCacheSet","Stack","equalByTag","equalObjects","objectTag","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","arrayPush","keysFunc","symbolsFunc","stackClear","stackDelete","stackGet","stackHas","stackSet","baseHasIn","hasPath","$values","fails","getTime","$toISOString","lz","RangeError","getUTCFullYear","getUTCMilliseconds","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","transform","arg","eachFunc","fromRight","iterable","noCustomizer","freeProcess","require","arraySome","cacheHas","arrLength","othLength","seen","arrValue","othValue","compared","othIndex","LineChart","state","lineChartData","xAxis","yAxis","displayLegend","legendPosition","BarChart","barChartData","PerformanceCard","primary","graphData","heading","chartType","sx","boxShadow","borderRadius","marginY","marginX","flexDirection","justifyContent","alignItems","boxShadowBottom","borderBottomRightRadius","borderBottomLeftRadius","borderTop","marginBottom","marginTop","performance","barChartJDK8Startup","barChartJDK8Footprint","lineChartJK8FasterRampupInTheCloud","lineChartJK8FootprintDuringLoad","barChartJDK11Startup","barChartJDK11Footprint","lineChartJK11FasterRampupInTheCloud","lineChartJK11FootprintDuringLoad","barChartJDK11QuarkusStartup","barChartJDK11QuarkusFootprint","lineChartJK11QuarkusFasterRampupInTheCloud","barChartJK11QuarkusFootprintDuringLoad","isHome","description","paddingX","h1","h2","flexWrap","variant","textDecoration","href","rel","baseGetAllKeys","getAllKeys","objProps","objLength","skipCtor","objCtor","othCtor","baseMatches","baseMatchesProperty","identity","baseIsEqualDeep","reIsUint","hookCallback","some","hooks","isUndefined","isDate","hasOwnProp","createUTC","locale","strict","createLocalOrUTC","utc","getParsingFlags","_pf","empty","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","parsedDateParts","meridiem","rfc2822","weekdayMismatch","_isValid","flags","parsedParts","isNowValid","_d","invalidWeekday","_strict","bigHour","isFrozen","createInvalid","momentProperties","copyConfig","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","updateInProgress","Moment","updateOffset","isMoment","absFloor","toInt","argumentForCoercion","coercedNumber","compareArrays","array1","array2","dontConvert","lengthDiff","diffs","msg","suppressDeprecationWarnings","firstTime","deprecationHandler","deprecations","deprecateSimple","mergeConfigs","parentConfig","childConfig","Locale","aliases","addUnitAlias","shorthand","lowerCase","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","priorities","addUnitPriority","priority","zeroFill","targetLength","forceSign","absNumber","zerosToFill","formattingTokens","localFormattingTokens","formatFunctions","formatTokenFunctions","addFormatToken","token","padded","ordinal","localeData","formatMoment","expandFormat","mom","output","makeFormatFunction","invalidDate","replaceLongDateFormatTokens","longDateFormat","lastIndex","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchOffset","matchShortOffset","matchWord","regexes","addRegexToken","regex","strictRegex","isStrict","getParseRegexForToken","regexEscape","matched","p2","p3","p4","tokens","addParseToken","addWeekParseToken","_w","addTimeToArrayFromToken","_a","daysInYear","isLeapYear","parseTwoDigitYear","getSetYear","makeGetSet","keepTime","set$1","daysInMonth","modMonth","o","monthsShort","months","monthsShortRegex","monthsRegex","monthsParse","MONTHS_IN_FORMAT","defaultLocaleMonths","defaultLocaleMonthsShort","handleStrictParse","monthName","ii","llc","toLocaleLowerCase","_monthsParse","_longMonthsParse","_shortMonthsParse","setMonth","dayOfMonth","getSetMonth","defaultMonthsShortRegex","defaultMonthsRegex","computeMonthsParse","cmpLenRev","shortPieces","longPieces","mixedPieces","_monthsRegex","_monthsShortRegex","_monthsStrictRegex","_monthsShortStrictRegex","createDate","M","ms","getFullYear","setFullYear","createUTCDate","UTC","setUTCFullYear","firstWeekOffset","dow","doy","fwd","getUTCDay","dayOfYearFromWeeks","resYear","resDayOfYear","dayOfYear","weekOfYear","resWeek","weekOffset","weeksInYear","weekOffsetNext","shiftWeekdays","ws","weekdaysMin","weekdaysShort","weekdays","weekdaysMinRegex","weekdaysShortRegex","weekdaysRegex","weekdaysParse","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","handleStrictParse$1","weekdayName","_weekdaysParse","_shortWeekdaysParse","_minWeekdaysParse","defaultWeekdaysRegex","defaultWeekdaysShortRegex","defaultWeekdaysMinRegex","computeWeekdaysParse","minp","shortp","longp","minPieces","_weekdaysRegex","_weekdaysShortRegex","_weekdaysMinRegex","_weekdaysStrictRegex","_weekdaysShortStrictRegex","_weekdaysMinStrictRegex","hFormat","hours","lowercase","minutes","matchMeridiem","_meridiemParse","seconds","kInput","_isPm","isPM","_meridiem","pos1","pos2","globalLocale","getSetHour","baseConfig","calendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","LTS","LT","L","LL","LLL","LLLL","dayOfMonthOrdinalParse","relativeTime","future","past","ss","mm","hh","dd","MM","yy","meridiemParse","locales","localeFamilies","normalizeLocale","loadLocale","oldLocale","_abbr","getSetGlobalLocale","getLocale","defineLocale","abbr","parentLocale","names","chooseLocale","checkOverflow","_overflowDayOfYear","_overflowWeeks","_overflowWeekday","configFromArray","currentDate","expectedWeekday","yearToUse","nowValue","_useUTC","getMonth","getDate","currentDateArray","weekYear","temp","weekdayOverflow","GG","W","E","createLocal","_week","curWeek","gg","_dayOfYear","dayOfYearFromWeekInfo","_nextDay","getDay","setUTCMinutes","extendedIsoRegex","basicIsoRegex","tzRegex","isoDates","isoTimes","aspNetJsonRegex","configFromISO","allowTime","dateFormat","timeFormat","tzFormat","configFromStringAndFormat","untruncateYear","yearStr","obsOffsets","UT","GMT","EDT","EST","CDT","CST","MDT","MST","PDT","PST","configFromRFC2822","monthStr","dayStr","hourStr","minuteStr","secondStr","parsedArray","weekdayStr","parsedInput","checkWeekday","obsOffset","militaryOffset","numOffset","hm","calculateOffset","ISO_8601","RFC_2822","skipped","stringLength","totalParsedInputLength","isPm","meridiemHour","meridiemFixWrap","prepareConfig","preparse","tempConfig","bestMoment","scoreToBeat","currentScore","score","configFromStringAndArray","createFromInputFallback","configFromString","configFromObject","configFromInput","isUTC","getOwnPropertyNames","isObjectEmpty","prototypeMin","prototypeMax","pickBy","moments","ordering","Duration","years","quarters","weeks","isoWeek","days","milliseconds","unitHasDecimal","isDurationValid","_milliseconds","_days","_months","_bubble","isDuration","absRound","separator","utcOffset","offsetFromString","chunkOffset","matcher","parts","cloneWithOffset","setTime","local","getDateOffset","getTimezoneOffset","isUtc","aspNetRegex","isoRegex","createDuration","ret","diffRes","parseIso","isBefore","positiveMomentsDifference","inp","isAfter","createAdder","period","addSubtract","isAdding","invalid","subtract","monthDiff","wholeMonthDiff","anchor","newLocaleData","defaultFormat","defaultFormatUtc","lang","mod$1","dividend","divisor","localStartOfDate","utcStartOfDate","addWeekYearFormatToken","getter","getSetWeekYearHelper","weeksTarget","setWeekAll","dayOfYearData","isoWeekYear","_dayOfMonthOrdinalParse","_ordinalParse","_dayOfMonthOrdinalParseLenient","getSetDayOfMonth","getSetMinute","getSetSecond","parseMs","getSetMillisecond","proto","preParsePostFormat","sod","calendarFormat","asFloat","that","zoneDelta","startOfDate","inputString","postformat","withoutSuffix","humanize","fromNow","toNow","invalidAt","localInput","isBetween","inclusivity","localFrom","localTo","isSame","inputMs","isSameOrAfter","isSameOrBefore","parsingFlags","prioritized","unitsObj","u","getPrioritizedUnits","toArray","toDate","keepOffset","inspect","zone","isLocal","suffix","unix","creationData","isoWeeks","weekInfo","isoWeeksInYear","parseWeekday","parseIsoWeekday","keepLocalTime","keepMinutes","localAdjust","_changeInProgress","parseZone","tZone","hasAlignedHourOffset","isDST","isUtcOffset","zoneAbbr","zoneName","dates","isDSTShifted","_isDSTShifted","proto$1","get$1","field","listMonthsImpl","listWeekdaysImpl","localeSorted","_calendar","_longDateFormat","formatUpper","_invalidDate","_ordinal","isFuture","_relativeTime","pastFuture","isFormat","_monthsShort","_monthsParseExact","firstDayOfYear","firstDayOfWeek","_weekdays","_weekdaysMin","_weekdaysShort","_weekdaysParseExact","_fullWeekdaysParse","isLower","langData","mathAbs","addSubtract$1","absCeil","daysToMonths","monthsToDays","makeAs","alias","as","asMilliseconds","asSeconds","asMinutes","asHours","asDays","asWeeks","asMonths","asQuarters","asYears","makeGetter","thresholds","substituteTimeAgo","abs$1","toISOString$1","Y","D","totalSign","ymSign","daysSign","hmsSign","proto$2","monthsFromDays","