CINXE.COM
Free Stock Market Heat Map | S&P 500 Performance via Heat Map
<!DOCTYPE html> <html lang="en"> <head> <!-- Meta Data --> <title> Free Stock Market Heat Map | S&P 500 Performance via Heat Map </title><meta charset="utf-8" /><meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0" /> <!--[if IE]> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <![endif]--> <!-- Validation --> <meta name="google-site-verification" content="21tyd2NTsebvto7W56gttKaElQtkak0Ld32xGvr_COs" /><meta name="msvalidate.01" content="43C334F81BEB9DE14F872D6C91B4FC29" /><meta name="y_key" content="63e01d3704030089" /><meta property="fb:pages" content="1450892295227696" /><meta name="theme-color" content="#005882" /><meta name="apple-itunes-app" content="app-id=917482225" /><meta name="robots" content="max-image-preview:large" /><link rel="sitemap" type="application/xml" title="Sitemap" href="https://www.marketbeat.com/Sitemap.ashx" /><link rel="alternate" type="application/rss+xml" title="MarketBeat Headlines RSS" href="https://www.marketbeat.com/rss.ashx?type=headlines" /> <!-- ICONS --> <link rel="shortcut icon" href="/favicon.ico"> <link rel="apple-touch-icon" href="/apple-touch-icon-180x180.png"><link rel="sitemap" href="https://www.marketbeat.com/Sitemap.ashx" /> <!-- STYLESHEETS--> <link rel="stylesheet" href="/Scripts/libraries/bootstrap.min.css"><link rel="preload" href="/Style/fonts/Barlow-400.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="/Style/fonts/Barlow-500.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="/Style/fonts/Barlow-600.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="/Style/fonts/Barlow-700.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="/Style/fonts/Barlow-Condensed-500.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="/Style/fonts/Barlow-Condensed-600.woff2" as="font" type="font/woff2" crossorigin> <link rel="preload" href="/Style/fontawesome/webfonts/fa-regular-400.woff2" as="font" type="font/woff2" crossorigin /> <link rel="preload" href="/Style/fontawesome/webfonts/fa-solid-900.woff2" as="font" type="font/woff2" crossorigin /> <link rel="preload" href="/Style/fontawesome/webfonts/fa-brands-400.woff2" as="font" type="font/woff2" crossorigin /> <link rel="preload" href="/Style/fontawesome/webfonts/custom-icons.woff2" as="font" type="font/woff2" crossorigin /> <link href="/Style/fonts/fonts.css?v=20240710" rel="stylesheet" /> <link href="/Style/fontawesome/css/all.min.css?v=20240710" rel="stylesheet" /> <link href="/Style/allstyles10.css?v=20241119" rel="stylesheet" /> <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> <!--[if lt IE 9]> <link rel="stylesheet" href="/Style/olderbrowsers/css/bootstrap.min.css" media="all" /> <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <![endif]--> <!--[if IE]> <style> #left-side-menu.left-showing, #right-side-menu.right-showing { z-index: 30; color: white; } </style> <![endif]--> <!--[if lt IE 9]> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> <![endif]--> <!--[if (gte IE 9) | (!IE)]><!--> <script defer src="/Scripts/libraries/jquery.min.js"></script> <!--<![endif]--> <script src="https://accounts.google.com/gsi/client" async defer></script> <!--<script type="text/javascript" src="/newsletter/PopUnder.js"></script>--> <link rel="manifest" href="/manifest.json" /><link rel="preconnect" href="https://cdn.onesignal.com" /> <script src="https://cdn.onesignal.com/sdks/OneSignalSDK.js"></script> <script src="/scripts/modal/mb-modernpopup.js?v=20240830" type="text/javascript"></script><link rel="preconnect" href="https://www.google-analytics.com/" /><link rel="preconnect" href="https://www.googletagmanager.com/" /> <script> var OneSignalAuthCode = '88nnd4crj7'; function registerUserChange(action) { OneSignal.getUserId(function (userId) { OneSignalIdString = userId; var Domain = 'marketbeat.com'; var url = "https://www.marketbeat.com/scripts/OneSignalTracking.ashx?OneSignalID=" + OneSignalIdString + "&domain=" + Domain + "&action=" + action; var xhr = new XMLHttpRequest(); xhr.open('GET', url); xhr.onload = function () { if (xhr.status !== 200) { console.log('GET failed. Returned status of ' + xhr.status); } else { console.log('GET succeeded (' + url + '). Returned status of ' + xhr.status); } }; xhr.send(); }); } var OneSignal = OneSignal || []; OneSignal.push( function () { OneSignal.init({ appId: "92d0557c-79b3-4742-9ab4-9155a42d6a49", safari_web_id: 'web.onesignal.auto.24c5a223-602c-4339-a230-554aefc554b5', autoRegister: false, autoResubscribe: true, notifyButton: { enable: false }, welcomeNotification: { "title": "Join Wall Street's Brightest Minds.", "message": "Receive research in your inbox from top analysts, before the market opens. Click here to learn how.", "url": "https://www.marketbeat.com/subscribe/all-access/?ReferralType=OneSignalThankYou" }, }); OneSignal.once('subscriptionChange', function (isSubscribed) { if (isSubscribed) { registerUserChange("subscribe"); } else { registerUserChange("unsubscribe"); } }); var pageViews = parseFloat(getCookie('MarketBeatOptinCookie')); if ((navigator.userAgent.toLowerCase().indexOf('firefox') > -1) || ((navigator.userAgent.toLowerCase().indexOf('safari') > -1) && (!(navigator.userAgent.toLowerCase().indexOf('chrome') > -1)))) { OneSignal.showSlidedownPrompt(); } else if (navigator.userAgent.toLowerCase().indexOf(' edg') > -1) { OneSignal.showSlidedownPrompt(); } else { OneSignal.showNativePrompt(); } }); </script> <script type='text/javascript'>OneSignal.push(function () {OneSignal.getUserId(function (userId) {$.get("/scripts/OneSignalTracking.ashx?OneSignalNLI=" + userId);});});</script> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "WebPage", "mainEntityOfPage": { "@type": "WebPage", "@id": "https://google.com/webpage" }, "headline": "What is the S\u0026P 500 and How It is Distinct from Other Indexes", "image": { "@type": "ImageObject", "url": "https://www.marketbeat.com/logos/articles/med_stock-image_260261342_S.jpg", "height": "400", "width": "400" }, "datePublished": "2022-08-15", "dateModified": "2024-11-29", "author": { "@type": "Person", "name": "MarketBeat Staff" }, "publisher": {"@context":"https://schema.org", "@type":"Organization", "name":"MarketBeat", "url":"https://www.marketbeat.com/", "logo":{"@context":"https://schema.org", "@type":"ImageObject", "url":"https://www.marketbeat.com/images/master/marketbeat-logo-gray-blue-1200.png", "height":"306", "width":"1200"}, "email":"contact@marketbeat.com", "description":"MarketBeat empowers retail investors to make better trading decisions by providing real-time financial data and objective market research.", "address":{"@context":"https://schema.org", "@type":"PostalAddress", "streetAddress":"345 N Reid Place, Suite 620", "addressLocality":"Sioux Falls", "addressRegion":"SD", "postalCode":"57103", "addressCountry":"US"}, "contactPoint":{"@context":"https://schema.org", "@type":"ContactPoint", "telephone":"+1-844-978-6257", "email":"contact@marketbeat.com", "contactType":"Customer Support"}, "sameAs":["https://twitter.com/MarketBeatCom/", "https://www.facebook.com/marketbeatcom/", "https://www.youtube.com/marketbeatcom", "https://en.wikipedia.org/wiki/MarketBeat", "https://www.linkedin.com/company/marketbeat"], "publishingPrinciples":"https://www.marketbeat.com/editorial-guidelines/"}, "description": "The Standard and Poor’s (S\u0026P) 500 index is a widely used stock market index. The index tracks the stock price performance of 500 companies" } </script><meta name="twitter:card" content="summary"/><meta name ="twitter:site" content="@MarketBeatCom" /><meta name ="twitter:creator" content="@MarketBeatCom" /><meta name ="twitter:title" content="What is the S&P 500 and How It is Distinct from Other Indexes"/><meta name ="twitter:description" content="The Standard and Poor’s (S&P) 500 index is a widely used stock market index. The index tracks the stock price performance of 500 companies" /><meta name ="twitter:image" content="https://www.marketbeat.com/logos/articles/med_stock-image_260261342_S.jpg" /><meta property="og:title" content="What is the S&P 500 and How It is Distinct from Other Indexes" /><meta property="og:type" content="article" /><meta property="og:url" content="https://www.marketbeat.com/market-data/sector-performance/" /><meta property="og:image" content="https://www.marketbeat.com/logos/articles/med_stock-image_260261342_S.jpg" /><meta property="og:description" content="The Standard and Poor’s (S&P) 500 index is a widely used stock market index. The index tracks the stock price performance of 500 companies" /><meta property="og:site_name" content="MarketBeat" /><meta property="og:locale" content="en_US" /> <link rel="canonical" href="https://www.marketbeat.com/market-data/sector-performance/" /> <link rel="stylesheet" type="text/css" href="/Style/sectormapstyles.css?v=202406" /> <style> .container.mb-4 > .bg-white.shadow { background: var(--black) !important; color: #fff; box-shadow: none; margin: 0 -18px; } /* share button is special because there is also a share image button */ @media (max-width: 576px) { .share-button-wrapper, .share-button { width: initial; min-width: initial; } } /*header and footer bars*/ .page-wrap { /* background: var(--black);*/ } .d-print-none.py-2.bg-light-gray.text-center { /*background: var(--black);*/ } #chart { position: relative; min-height:615px; } .loading-message:before { content: 'Loading chart…'; font-family: var(--font-family-alternative); text-align: center; background: radial-gradient(transparent,#5a5a5a99); padding: 5px; color: rgb(255 255 255 / 58%); position: absolute; left: 0; top: 0; width: 100%; height: 95%; opacity: .6; display: flex; vertical-align: bottom; align-items: center; justify-content: center; } .see-also ul{ background: #fff; } </style> <meta name="twitter:card" content="summary_large_image"> <meta name="twitter:site" content="@site_username"> <meta name="twitter:title" content="Free Stock Market Heat Map | S&P 500 Performance via Heat Map"><meta name="twitter:description" content="View a free visual heat map of the price performance of S&P 500 companies, grouped by industry and sector. Easily track S&P 500 performance with a heatmap.."> <meta name="twitter:creator" content="@MarketBeatCom"> <meta name="twitter: image" content="https://www.marketbeat.com/scripts/temp/sector-performance-map-SP500-wide.png?t=202411300530"> <meta name="twitter:domain" content="marketbeat.com"> <meta property="og:image" content="https://www.marketbeat.com/scripts/temp/sector-performance-map-SP500-wide.png?t=202411300530"/><meta property="og:image:width" content="1200" /><meta property="og:image:height" content="628" /> <!-- Global site tag (gtag.js) - Google Analytics - New MB GA 4 Tag --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-DXW4L2BDZK"></script> <script> window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'G-DXW4L2BDZK'); </script> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9373162611283935" crossorigin="anonymous"></script> <!-- Lower Right Ad --> <script type="text/javascript" src="/Scripts/lowerrightad-min.js?v=20241007"></script> <meta name="description" content="View a free visual heat map of the price performance of S&P 500 companies, grouped by industry and sector. Easily track S&P 500 performance with a heatmap." /></head> <body> <a class="skip-link bg-light-blue border c-dark-blue b-dark-blue" href="#main">Skip to main content</a> <div id='g_id_onload' data-client_id='178542853386-sfq8ta0q9in407qnaud00o1o7a6thlsi.apps.googleusercontent.com' data-login_uri='https://www.marketbeat.com/users/OneTapVerifyRedirect.aspx' data-prompt_parent_id='g_id_onload' data-auto_select='true' data-cancel_on_tap_outside='true' data-use_fedcm_for_prompt='true' data-state_cookie_domain='marketbeat.com'></div> <div class="page-wrap"> <script type="text/javascript">var scrollingTickersFile = '/Scripts/ScrollingTickers.ashx?accountid=0&interval=2411300530&userlevel=NotLoggedIn'; </script> <div id="scrollingTickers" class="d-print-none" style="height: 32px; width: 100%; overflow: hidden; background-color: var(--blue-14);transition: background-color .3s;"> </div> <div id="header-holder" class="mega-not-showing"> <div id="mb-header" class="bg-blue-13 w-100"> <header id="logobar" class="logo-bar container d-flex flex-wrap "> <div class="row narrow-gutter-row align-items-center py-1 py-sm-0 position-relative" style="width: calc(100% + 10px)"> <div class="col-auto header-left align-items-center order-sm-1"> <div class="d-flex align-items-center"> <span class="trigger-left menu-button-wrapper"><span class="c-white fa-regular fa-bars"></span></span> <a title="MarketBeat" href="https://www.marketbeat.com" id="header-logo-link"> <img class="header-logo" src="/images/master/MarketBeat-logo-r-white.svg?v=2019" alt="MarketBeat home page" width="300" height="76"> </a> </div> </div> <div class="d-none d-lg-block col-lg-9 mx-auto col-xxl-5 order-lg-4 order-xxl-2 position-static"> <div class="main-menu-bar"> <nav id="mega-menu" class="d-none d-lg-flex navbar navbar-expand-lg p-0 nounderline position-static" aria-label="Primary Menu"> <ul class="d-flex navbar-nav justify-content-between align-items-center w-100 px-xxl-3"> <li class="has-submenu"> <a href="/all-access/" id="navResearchTools" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Research Tools</a> <ul class="purple-menu shortest-list dropdown-menu" aria-labelledby="navResearchTools"> <li class="has-submenu"><a href="/all-access/">All Access Research Tools</a> <ul> <li><a href="/all-access/live-news/">Live News Feed <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/manage/momentum-alerts/">Momentum Alerts <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/all-access/idea-engine/">Idea Engine <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/all-access/export-data/">Export Data (CSV) <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/all-access/">See All Research Tools</a></li> </ul> </li> <li class="has-submenu separate-on-side"><a href="/manage/watchlists/">My MarketBeat</a> <ul> <li><a href="/manage/watchlists/">My Portfolio</a></li> <li><a class='wl-tab-change' href="/manage/watchlists/#newsletter">My Newsletter</a></li> <li><a href="/manage/">My Account</a></li> </ul> </li> <li class="has-submenu"> <a href="/calculators/">Calculators</a> <ul> <li><a href="/dividends/calculator/">Dividend Calculator</a></li> <li><a href="/dividends/yield-calculator/">Dividend Yield Calculator</a></li> <li><a href="/calculators/market-cap-calculator/">Market Cap Calculator</a></li> <li><a href="/calculators/options-profit-calculator/">Options Profit Calculator</a></li> <li><a href="/calculators/stock-average-calculator/">Stock Average Calculator</a></li> <li><a href="/stock-splits/calculator/">Stock Split Calculator</a></li> <li><a href="/calculators/stock-profit-calculator/">Stock Profit Calculator</a></li> </ul> </li> <li class="has-submenu"> <a href="/stock-screener/">Stock Screeners</a> <ul> <li><a href="/stock-screener/">Stock Screener</a></li> <li><a href="/all-access/etf-screener/">ETF Screener <span class="fa-solid fa-dynamic-lock"></span></a></li> </ul> </li> <li class="has-submenu"><a href="/stocks/trending/">Trending Stocks</a> <ul> <li><a href="/stocks/trending/">Trending MarketBeat Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/stocks/trending/media/">Trending Media Mentions <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/stocks/trending/media-sentiment/">High Media Sentiment Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/stocks/trending/wallstreetbets/">Trending WallStreetBets Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> </ul> </li> <li class="has-submenu"><a href="/all-access/reports/">Premium Reports</a> <ul> <li><a href="/all-access/reports/">All Reports <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/all-access/reports/?report=7stockstoownbeforethe2024election">7 Election Stocks to Own <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/all-access/reports/?report=these7stockswillbemagnificentin2024">7 Magnificent Stocks in 2024 <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/all-access/reports/?report=the10bestaistockstoownin2024">10 Best AI Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/all-access/reports/?report=newyear">Best Stocks for 2025 Report <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/all-access/reports/?report=shortinterest">Guide To High Short Interest Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/all-access/reports/?report=elonmusk">Elon Musk's Next Move <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/all-access/reports/?report=7stocksthatcouldbebiggerthantesla-nvidia-andgoogle">Next 7 Blockbuster Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/ratings/stock-picks-from-top-rated-analysts/">Stock Picks from Top Analysts <span class="fa-solid fa-dynamic-lock"></span></a></li> </ul> </li> </ul> </li> <li class="has-submenu d-none"> <a href="/market-data/" id="navFinancialCalendars" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Financial Calendars</a> <ul class="blue-menu shorter-list dropdown-menu" aria-labelledby="navFinancialCalendars"> <li class="mega-only"><a href="/market-data/">Calendars and Market Data</a></li> </ul> </li> <li class="has-submenu"> <a href="/market-data/" id="navMarketData" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Market Data</a> <ul class="green-menu mediumtall-list dropdown-menu" aria-labelledby="navMarketData"> <li class="mega-only"><a href="/market-data/">All Market Data and Financial Calendars</a></li> <li class="has-submenu"> <a href="/ratings/">Analyst Ratings</a> <ul> <li><a href="/ratings/">Recent Analyst Ratings</a></li> <li><a href="/all-access/ratings-screener/">Stock Ratings Screener <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/stocks/top-rated/">Top-Rated Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/stocks/lowest-rated/">Lowest-Rated Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/all-access/analyst-rankings/">Top-Rated Analysts <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/all-access/brokerage-rankings/">Top-Rated Brokerages <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/stocks/most-upgraded/">Most-Upgraded Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/ratings/newsletter/">Free Ratings Newsletter</a></li> </ul> </li> <li class="has-submenu"> <a href="/congress-stock-trades/">Congressional Data</a> <ul> <li><a href="/congress-stock-trades/">Recent Trades</a></li> <li><a href="/congress-stock-trades/most-purchased-stocks/">Most Bought Stocks</a></li> <li><a href="/congress-stock-trades/profiles/">Members of Congress</a></li> </ul> </li> <li class="has-submenu"> <a href="/market-data/">Corporate Events</a> <ul> <li><a href="/stock-buybacks/">Corporate Buybacks</a></li> <li><a href="/economic-reports/upcoming/">Economic Reports</a></li> <li><a href="/ipos/">Initial Public Offerings (IPOs)</a></li> <li><a href="/ipos/lockup-expirations/">IPO Lockup Expirations</a></li> <li><a href="/market-data/sec-filings/">SEC Filings</a></li> <li><a href="/stock-splits/">Stock Splits</a></li> </ul> </li> <li class="has-submenu"> <a href="/dividends/">Dividends</a> <ul> <li><a href="/dividends/announcements/">Today's Announcements</a></li> <li><a href="/dividends/ex-dividend-calendar/">Ex-Dividend Calendar</a></li> <li><a href="/dividends/increases/">Dividend Increases</a></li> <li><a href="/dividends/achievers/">Dividend Achievers</a></li> <li><a href="/dividends/aristocrats/">Dividend Aristocrats</a></li> <li><a href="/dividends/best-dividend-stocks/">Best Dividend Stocks</a></li> <li><a href="/dividends/high-yield/">High-Yield Dividend Stocks</a></li> <li><a href="/dividends/top-rated-dividend-stocks/">Top-Rated Dividend Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/dividends/screener/">Dividend Screener</a></li> <li><a href="/dividends/subscribe/">Free Dividend Newsletter</a></li> </ul> </li> <li class="has-submenu"> <a href="/earnings/">Earnings</a> <ul> <li><a href="/earnings/latest/">Today's Announcements</a></li> <li><a href="/earnings/tomorrow/">Tomorrow's Announcements</a></li> <li><a href="/earnings/next-week/">Next Week's Announcements</a></li> <li><a href="/earnings/conference-calls/">Upcoming Earnings Calls</a></li> <li><a href="/earnings/transcripts/">Earnings Call Transcripts</a></li> <li><a href="/all-access/earnings-screener/">Earnings Screener <span class="fa-solid fa-dynamic-lock"></span></a></li> </ul> </li> <li class="has-submenu"> <a href="/insider-trades/">Insider Trades</a> <ul> <li><a href="/insider-trades/">Today's Insider Trades</a></li> <li><a href="/insider-trades/insider-buying-stocks/">Top Insider Buying Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/insider-trades/insider-selling-stocks/">Top Insider Selling Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/all-access/insider-trades-screener/">Insider Trades Screener <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/insider-trades/subscribe/">Insider Trades Newsletter</a></li> </ul> </li> <li> <a href="/stock-market-holidays/">Stock Market Holidays</a> </li> <li class="has-submenu"><a href="/cryptocurrencies/">Cryptocurrencies</a> <ul> <li><a href="/cryptocurrencies/">All Cryptocurrencies</a></li> <li><a href="/cryptocurrencies/news/">Cryptocurrency Headlines</a></li> <li><a href="/cryptocurrencies/newsletter/">Cryptocurrency Newsletter</a></li> </ul> </li> <li class="has-submenu"><a href="/market-data/biggest-percentage-gainers/">Gainers & Decliners</a> <ul> <li><a href="/market-data/biggest-percentage-gainers/">Percentage Gainers</a></li> <li><a href="/market-data/biggest-percentage-decliners/">Percentage Decliners</a></li> <li><a href="/market-data/breakout-stocks/">Breakout Stocks</a></li> </ul> </li> <li class="has-submenu"><a href="/market-data/low-pe-stocks/">High & Low PE</a> <ul> <li><a href="https://www.marketbeat.com/market-data/high-pe-stocks/">High PE Stocks</a></li> <li><a href="https://www.marketbeat.com/market-data/low-pe-stocks/">Low PE Stocks</a></li> </ul> </li> <li class="has-submenu"><a href="/market-data/52-week-highs/">Highs & Lows</a> <ul> <li><a href="/market-data/52-week-highs/">52-Week Highs</a></li> <li><a href="/market-data/52-week-lows/">52-Week Lows</a></li> </ul> </li> <li class="has-submenu"><a href="/market-data/most-active-stocks/">Most Active</a> <ul> <li><a href="/market-data/most-active-stocks/">Most Active Stocks</a></li> <li><a href="/market-data/most-volatile-stocks/">Most Volatile Stocks</a></li> <li><a href="/market-data/unusual-volume-stocks/">Unusual Trading Volume</a></li> <li><a href="/market-data/trading-halts/">Trading Halts</a></li> </ul> </li> <li class="has-submenu"><a href="/market-data/unusual-call-options-volume/">Options</a> <ul> <li><a href="/market-data/unusual-call-options-volume/">Unusual Call Volume</a></li> <li><a href="/market-data/unusual-put-options-volume/">Unusual Put Volume</a></li> </ul> </li> <li><a href="/market-data/sector-performance/">Sector Performance</a> </li> <li class="has-submenu"><a href="/short-interest/">Short Interest</a> <ul> <li><a href="/short-interest/">Largest Short Positions</a></li> <li><a href="/short-interest/short-interest-increases/">Short Interest Increases</a></li> <li><a href="/short-interest/short-interest-decreases/">Short Interest Decreases</a></li> </ul> </ul> </li> <li class="has-submenu"> <a href="/stocks/" id="navStockLists" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Stock Lists</a> <ul class="gold-menu medium-list dropdown-menu" aria-labelledby="navStockLists"> <li class="mega-only"><a href="/stocks/">All Stock Lists</a></li> <li class="has-submenu"><a href="/types-of-stock/">Stocks by Interest</a> <ul> <li><a href="/types-of-stock/5g-stocks/">5G Stocks</a></li> <li><a href="/types-of-stock/blue-chip-stocks/">Blue Chip Stocks</a></li> <li><a href="/types-of-stock/biotech-stocks/">Biotech Stocks</a></li> <li><a href="/types-of-stock/faang-stocks/">FAANG Stocks</a></li> <li><a href="/types-of-stock/gold-stocks/">Gold Stocks</a></li> <li><a href="/types-of-stock/large-cap-stocks/">Large Cap Stocks</a></li> <li><a href="/types-of-stock/marijuana-stocks/">Marijuana Stocks</a></li> <li><a href="/types-of-stock/oil-stocks/">Oil Stocks</a></li> <li><a href="/types-of-stock/real-estate-investment-trusts-reits/">REITs</a></li> <li><a href="/types-of-stock/russell-2000-stocks/">Russell 2000 Stocks</a></li> <li><a href="/types-of-stock/small-cap-stocks/">Small Cap Stocks</a></li> <li><a href="/types-of-stock/warren-buffett-stocks/">Warren Buffett Stocks</a></li> </ul> </li> <li class="has-submenu"><a href="/market-data/low-priced-stocks/">Low Priced Stocks</a> <ul> <li><a href="/market-data/low-priced-stocks/stocks-under-50-cents/">Stocks Under $0.50</a></li> <li><a href="/market-data/low-priced-stocks/stocks-under-1/">Stocks Under $1</a></li> <li><a href="/market-data/low-priced-stocks/stocks-under-2/">Stocks Under $2</a></li> <li><a href="/market-data/low-priced-stocks/stocks-under-5/">Stocks Under $5</a></li> </ul> </li> <li class="has-submenu"><a href="/types-of-stock/penny-stocks/">Penny Stocks</a> <ul> <li><a href="/market-data/most-active-penny-stocks/">Most Active Penny Stocks</a></li> <li><a href="/types-of-stock/penny-stocks/most-popular/">Most Popular Penny Stocks</a></li> <li><a href="/types-of-stock/penny-stocks/top-penny-stocks-today/">Top Penny Stocks Today</a></li> </ul> </li> <li class="has-submenu"><a href="/stocks/">Stocks by Exchange</a> <ul> <li><a href="/stocks/NYSE/">NYSE Stocks</a></li> <li><a href="/stocks/NASDAQ/">NASDAQ Stocks</a></li> <li><a href="/stocks/OTCMKTS/">OTCMKTS Stocks</a></li> <li><a href="/stocks/TSE/">TSX Stocks</a></li> <li><a href="/stocks/LON/">LSE Stocks</a></li> </ul> </li> <li class="has-submenu"><a href="/stocks/sectors/">Stocks by Sector</a> <ul> <li><a href="/stocks/sectors/auto-tires-trucks/">Automotive Stocks</a></li> <li><a href="/stocks/sectors/aerospace/">Aerospace Stocks</a></li> <li><a href="/stocks/sectors/basic-materials/">Basic Materials Stocks</a></li> <li><a href="/stocks/sectors/business-services/">Business Services Stocks</a></li> <li><a href="/stocks/sectors/consumer-discretionary/">Consumer Discretionary Stocks</a></li> <li><a href="/stocks/sectors/consumer-staples/">Consumer Staples Stocks</a></li> <li><a href="/stocks/sectors/construction/">Construction Stocks</a></li> <li><a href="/stocks/sectors/oils-energy/">Energy Stocks</a></li> <li><a href="/stocks/sectors/finance/">Finance Stocks</a></li> <li><a href="/stocks/sectors/industrial-products/">Industrial Stocks</a></li> <li><a href="/stocks/sectors/manufacturing/">Manufacturing Stocks</a></li> <li><a href="/stocks/sectors/medical/">Medical Stocks</a></li> <li><a href="/stocks/sectors/real-estate/">Real Estate Stocks</a></li> <li><a href="/stocks/sectors/retail-wholesale/">Retail Stocks</a></li> <li><a href="/stocks/sectors/computer-and-technology/">Technology Stocks</a></li> <li><a href="/stocks/sectors/transportation/">Transportation Stocks</a></li> <li><a href="/stocks/sectors/utilities/">Utilities Stocks</a></li> </ul> </li> <li class="has-submenu"><a href="/stocks/">Technical Indicators</a> <ul> <li><a href="/stocks/death-cross-stocks/">Death Cross Stocks</a></li> <li><a href="/stocks/golden-cross-stocks/">Golden Cross Stocks</a></li> <li><a href="/market-data/overbought-stocks-rsi/">RSI Overbought Stocks</a></li> <li><a href="/market-data/oversold-stocks-rsi/">RSI Oversold Stocks</a></li> </ul> </li> <li><a href="/compare-stocks/">Stock Comparisons</a></li> <li class="has-submenu"><a href="/stocks/top-rated/">Premium Stock Lists</a> <ul> <li><a href="/stocks/top-marketrank/">Top MarketRank™ Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/stocks/top-esg-stocks/">Top ESG Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/stocks/top-rated/">Top-Rated Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/dividends/top-rated-dividend-stocks/">Top-Rated Dividend Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/stocks/top-rated-small-cap-stocks/">Top-Rated Small-Cap Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/stocks/top-rated-tech-stocks/">Top-Rated Tech Stocks <span class="fa-solid fa-dynamic-lock"></span></a></li> </ul> </li> </ul> </li> <li class="has-submenu"> <a href="/headlines/" id="navHeadlines" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Headlines</a> <ul class="red-menu shorter-list dropdown-menu" aria-labelledby="navHeadlines"> <li class="has-submenu"><a href="/videos/">MarketBeat TV</a><ul class="row limited-video-submenu"><li class="mega-only mb-2 col-6 pl-0"><a href="/videos/why-amazons-ai-power-and-holiday-boost-make-this-stock-a-2025-winner/" class="position-relative"><span class="d-flex position-relative align-items-center justify-content-center"><span class="position-absolute fa-solid fa-play c-white" aria-hidden="true" style="opacity:0.8;font-size:3em;"></span><img class="w-100" src="https://www.marketbeat.com/logos/videos/thumb_20241129172224_videoamazonclip.png" alt="Why Amazon’s AI Power and Holiday Boost Make This Stock a 2025 Winner" height="78" width="140" loading="lazy" decoding="async"/></span><span class="d-block mt-1" style="line-height:1.2em;">Why Amazon’s AI Power and Holiday Boost Make This Stock a 2025 Winner</span></a></li><li class="side-only"><a href='/videos/why-amazons-ai-power-and-holiday-boost-make-this-stock-a-2025-winner/'>Why Amazon’s AI Power and Holiday Boost Make This Stock a 2025 Winner</a></li><li class="mega-only mb-2 col-6 pl-0"><a href="/videos/small-caps-financials-and-bitcoin-lead-the-rising-bull-market-chris-rowes-top-picks/" class="position-relative"><span class="d-flex position-relative align-items-center justify-content-center"><span class="position-absolute fa-solid fa-play c-white" aria-hidden="true" style="opacity:0.8;font-size:3em;"></span><img class="w-100" src="https://www.marketbeat.com/logos/videos/thumb_20241127151937_videochrisrowebullmarket.png" alt="Small Caps, Financials & Bitcoin Lead the Rising Bull Market: Chris Rowe’s Top Picks" height="78" width="140" loading="lazy" decoding="async"/></span><span class="d-block mt-1" style="line-height:1.2em;">Small Caps, Financials & Bitcoin Lead the Rising Bull Market: Chris Rowe’s Top Picks</span></a></li><li class="side-only"><a href='/videos/small-caps-financials-and-bitcoin-lead-the-rising-bull-market-chris-rowes-top-picks/'>Small Caps, Financials & Bitcoin Lead the Rising Bull Market: Chris Rowe’s Top Picks</a></li><li class="mega-only mb-2 col-6 pl-0"><a href="/videos/microstrategy-stock-riding-bitcoins-wave-to-new-highs/" class="position-relative"><span class="d-flex position-relative align-items-center justify-content-center"><span class="position-absolute fa-solid fa-play c-white" aria-hidden="true" style="opacity:0.8;font-size:3em;"></span><img class="w-100" src="https://www.marketbeat.com/logos/videos/thumb_20241126173244_videothomasbitcoin.png" alt="MicroStrategy Stock: Riding Bitcoin’s Wave to New Highs" height="78" width="140" loading="lazy" decoding="async"/></span><span class="d-block mt-1" style="line-height:1.2em;">MicroStrategy Stock: Riding Bitcoin’s Wave to New Highs</span></a></li><li class="side-only"><a href='/videos/microstrategy-stock-riding-bitcoins-wave-to-new-highs/'>MicroStrategy Stock: Riding Bitcoin’s Wave to New Highs</a></li><li class="mega-only mb-2 col-6 pl-0"><a href="/videos/how-abacus-life-is-transforming-life-insurance-into-assets-marketbeat-ceo-series/" class="position-relative"><span class="d-flex position-relative align-items-center justify-content-center"><span class="position-absolute fa-solid fa-play c-white" aria-hidden="true" style="opacity:0.8;font-size:3em;"></span><img class="w-100" src="https://www.marketbeat.com/logos/videos/thumb_20241125134134_videowithlogo.jpg" alt="How Abacus Life is Transforming Life Insurance into Assets | MarketBeat CEO Series" height="78" width="140" loading="lazy" decoding="async"/></span><span class="d-block mt-1" style="line-height:1.2em;">How Abacus Life is Transforming Life Insurance into Assets | MarketBeat CEO Series</span></a></li><li class="side-only"><a href='/videos/how-abacus-life-is-transforming-life-insurance-into-assets-marketbeat-ceo-series/'>How Abacus Life is Transforming Life Insurance into Assets | MarketBeat CEO Series</a></li></ul></li><li class="has-submenu"><a href="/originals/">Featured Articles</a><ul class='limited-width-submenu'><li><a href='/originals/the-latest-13f-filings-are-in-see-where-big-money-is-flowing/'>The Latest 13F Filings Are In: See Where Big Money Is Flowing</a></li><li><a href='/originals/3-penny-stocks-ready-to-break-out-in-2025/'>3 Penny Stocks Ready to Break Out in 2025</a></li><li><a href='/originals/fmc-mosaic-nutrien-top-agricultural-stocks-with-big-potential/'>FMC, Mosaic, Nutrien: Top Agricultural Stocks With Big Potential</a></li><li><a href='/originals/3-stocks-that-never-lived-up-to-the-hype/'>3 Stocks That Never Lived Up to the Hype</a></li><li><a href='/originals/3-stocks-to-ride-the-manufacturing-sectors-big-comeback/'>3 Stocks to Ride the Manufacturing Sector's Big Comeback</a></li><li><a href='/originals/eli-lilly-pfizer-and-astrazeneca-2025-vaccine-makers-to-watch/'>Eli Lilly, Pfizer, and AstraZeneca: 2025 Vaccine Makers to Watch</a></li><li><a href='/originals/dicks-sporting-goods-the-under-the-radar-buy-and-hold-winner/'>DICK'S Sporting Goods: The Under-the-Radar Buy-and-Hold Winner</a></li><li><a href='/originals/2-cheap-quantum-computing-stocks-to-buy-instead-of-chasing-ionq/'>2 Cheap Quantum Computing Stocks to Buy Instead of Chasing IonQ </a></li><li class="pt-1"><a href='/originals/'>More Featured Articles <span class="fa-regular fa-angle-right" aria-hidden="true"></span></a></li></ul></li> <li class="has-submenu"><a href="/headlines/">News</a> <ul> <li><a href="/headlines/">All Headlines</a></li> <li><a href="/instant-alerts/">Instant News Alerts</a></li> <li><a href="/surveys/">Research Surveys</a></li> <li><a href="/all-access/live-news/">Real-Time News Feed <span class="fa-solid fa-dynamic-lock"></span></a></li> <li><a href="/slideshows/">Investing Slideshows</a></li> </ul> </li> </ul> </li> <li class="has-submenu"> <a href="/learn/" id="navLearn" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Education</a> <ul class="blue-menu shorter-list dropdown-menu" aria-labelledby="navLearn"> <li class="menu-ad mega-only"> <div class="position-relative mb-3"> <div class="bold mb-2 c-gray">Featured Topic: Options Trading</div> <ul class="row"> <li class="d-none d-lg-block mb-2 col-4 pl-0"><a href="https://www.marketbeat.com/originals/3-unusual-call-option-trades-investors-should-be-watching/" class="position-relative"><span class="d-flex position-relative align-items-center justify-content-center"><img class="w-100" style="aspect-ratio:2/1;object-fit:cover;" src="https://www.marketbeat.com/logos/articles/thumb_20241104115452_options-traders-bet-big-on-these-3-tech-stocks.jpg" alt="" height="800" width="1200" loading="lazy" decoding="async"/></span><span class="d-block mt-1 c-gray font-weight-normal" style="font-size:.95em;line-height:1.2em;padding-right:.5em;">Options Traders Bet Big on These 3 Tech Stocks </span></a></li><li class="d-none d-lg-block mb-2 col-4 pl-0"><a href="https://www.marketbeat.com/learn/how-to-play-new-options-trading-with-bitcoin-etfs/" class="position-relative"><span class="d-flex position-relative align-items-center justify-content-center"><img class="w-100" style="aspect-ratio:2/1;object-fit:cover;" src="https://www.marketbeat.com/logos/articles/thumb_20241101152430_how-to-play-new-options-trading-with-bitcoin-etfs.jpg" alt="Six bitcoin coins — Stock Editorial Photography" height="800" width="1200" loading="lazy" decoding="async"/></span><span class="d-block mt-1 c-gray font-weight-normal" style="font-size:.95em;line-height:1.2em;padding-right:.5em;">How to Play New Options Trading With Bitcoin ETFs</span></a></li><li class="d-none d-lg-block mb-2 col-4 pl-0"><a href="https://www.marketbeat.com/originals/albemarle-stock-call-options-surge-what-it-means-for-lithium/" class="position-relative"><span class="d-flex position-relative align-items-center justify-content-center"><img class="w-100" style="aspect-ratio:2/1;object-fit:cover;" src="https://www.marketbeat.com/logos/articles/thumb_20241028111137_albemarle-stock-call-options-surge-what-it-means-f.png" alt="albemarle lithium ion battery" height="488" width="1200" loading="lazy" decoding="async"/></span><span class="d-block mt-1 c-gray font-weight-normal" style="font-size:.95em;line-height:1.2em;padding-right:.5em;">Albemarle Stock Call Options Surge: What It Means for Lithium</span></a></li><li class="d-none d-lg-block mb-2 col-4 pl-0"><a href="https://www.marketbeat.com/learn/options-how-to-execute-the-wheel-strategy-for-options-income/" class="position-relative"><span class="d-flex position-relative align-items-center justify-content-center"><img class="w-100" style="aspect-ratio:2/1;object-fit:cover;" src="https://www.marketbeat.com/logos/articles/thumb_20240718150215_how-to-execute-the-wheel-strategy-to-generate-opti.jpg" alt="Photo of a businessman running inside a circle made of money symbolic of the wheel options trading strategy. " height="960" width="1200" loading="lazy" decoding="async"/></span><span class="d-block mt-1 c-gray font-weight-normal" style="font-size:.95em;line-height:1.2em;padding-right:.5em;">How to Execute the Wheel Strategy to Generate Options Income</span></a></li><li class="d-none d-lg-block mb-2 col-4 pl-0"><a href="https://www.marketbeat.com/learn/3-options-strategies-to-play-a-stocks-uptrend-if-bullish/" class="position-relative"><span class="d-flex position-relative align-items-center justify-content-center"><img class="w-100" style="aspect-ratio:2/1;object-fit:cover;" src="https://www.marketbeat.com/logos/articles/thumb_20240626075418_3-options-strategies-to-play-a-stocks-uptrend-if-b.jpg" alt="Stock options strategies " height="900" width="1200" loading="lazy" decoding="async"/></span><span class="d-block mt-1 c-gray font-weight-normal" style="font-size:.95em;line-height:1.2em;padding-right:.5em;">3 Options Strategies to Play a Stock’s Uptrend if Bullish </span></a></li><li class="d-none d-lg-block mb-2 col-4 pl-0"><a href="https://www.marketbeat.com/learn/how-to-use-delta-hedging-to-protect-your-options-with-stock/" class="position-relative"><span class="d-flex position-relative align-items-center justify-content-center"><img class="w-100" style="aspect-ratio:2/1;object-fit:cover;" src="https://www.marketbeat.com/logos/articles/thumb_20240613145241_how-to-use-delta-hedging-to-protect-your-options-w.jpg" alt="Photo of a desk with a computer showing Options Trading. Delta hedging is a defensive strategy used to temporarily reduce directional exposure. " height="800" width="1200" loading="lazy" decoding="async"/></span><span class="d-block mt-1 c-gray font-weight-normal" style="font-size:.95em;line-height:1.2em;padding-right:.5em;">How to Use Delta Hedging to Protect Your Options with Stock</span></a></li> </ul> </div> </li> <li> <a href="/learn/">Learn</a> <div style="max-width: 200px;" class="mega-only">Read investment guides, how-to articles, and explainers.</div> </li> <li> <a href="/stock-ideas/">Stock Ideas</a> <div style="max-width: 200px;" class="mega-only">Looking for ideas for stocks to invest in? These stocks are poised to move.</div> </li> <li> <a href="/financial-terms/">Financial Terms</a> <div style="max-width: 200px;" class="mega-only">Learn the language of investment with our glossary of over 200 financial terms.</div> </li> <li> <a href="/help/">Help</a> <div style="max-width: 200px;" class="mega-only">View our library of help videos to learn how to use the tools on the MarketBeat website.</div> </li> </ul> </li> </ul> </nav> <!-- end main menu--> </div> </div> <div id="headeright" class="col-auto order-sm-3 text-right header-right"> <button class="btn btn-primary login-modal-button" data-target="#pnlLoginCreateModal" data-toggle="modal" aria-label="Log in" onclick="trapFocusInModal('#pnlLoginCreateModal', 'txtLoginOnModalEmail', 'LoginOnModalTab', 'LastLinkOnLoginTab');"><span class="fa-regular fa-user mx-1"></span><span class="px-1 d-none d-lg-inline-block">Log in </span></button> <a href="https://marketbeat.com/subscribe/all-access/?ReferralType=HeaderButton" class="btn btn-featured ml-1" aria-label="Free Trial" id="header-btn-featured"><span class="fa-regular fa-dollar-sign mx-1"></span><span class="px-1 d-none d-lg-inline">Free Trial </span></a> </div> <div id="pnlMainHeaderSearch" class="pb-1 pt-0 pt-sm-1 order-sm-2 col NotLoggedIn"> <form id="headerSearchForm" class="input-group dark-bkg ml-lg-2 mr-md-2" method="get" action="/pages/search.aspx" role="search" aria-label="Site search"> <input aria-label="Search" id="headerSearch" type="text" name="query" class="autocomplete form-control" placeholder="Search stocks, news, and tools..." style="font-size:.9em;"/> <span id="mainAutocompleteList"></span> <span class="input-group-append position-relative"> <span id="headerSearchLoading" style="width: 20px; height: 20px; position: absolute; left: -1.7em; top: 0.4em; display: none;"> <img style="filter: brightness(1.5);" src="/images/loading-gif.gif?v=2" alt="" loading="lazy" width="20" height="20"></span> <button class="clear-button" type="submit" aria-label="Search" style="color: var(--white); text-transform: uppercase;"><span class="fa-regular fa-magnifying-glass"></span><span class="sr-only">Search</span></button> </span> </form> </div> </div> </header> </div> </div> <main> <div class="d-print-none py-1 bg-blue text-center d-minimal-none"> <div style="max-width: 1140px; margin: 0 auto;"> <div style="padding:6px;font-size:0.8rem;line-height:1.2;" class="below-h1-text-link-ad d-minimal-none"><a style="font-weight:700; color:var(--white);" target="_blank" rel="sponsored noopener" href="https://www.marketbeat.com/scripts/redirect.aspx?TriggeredCampaignID=10774&UserID=0&Placement=NativeDisplay&Source=NativeDisplay&interstitial=1&noskip=1">→ ***TODAY ONLY*** The winner of the next crypto bull run?</a> <span style="color:var(--white);"> <span class="pl-1 d-none d-sm-inline-block">(From Weiss Ratings)</span> <span class="d-inline d-sm-none">(Ad)</span></span><img loading='lazy' src='https://www.marketbeat.com/scripts/TriggeredCampaignPixel.ashx?TriggeredCampaignID=10774&Placement=NativeDisplay&Source=NativeDisplay' alt='' height='1' width='1' /></div> </div> </div> <div id="main" class="container main-container"> <article id="article"> <form method="post" action="./" onsubmit="javascript:return WebForm_OnSubmit();" id="form1"> <div class="aspNetHidden"> <input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" /> <input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" /> <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTIwNzU5NjM3OTQPZBYCZg9kFhRmD2QWBAIYDxYCHgRUZXh0BbEBPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPk9uZVNpZ25hbC5wdXNoKGZ1bmN0aW9uICgpIHtPbmVTaWduYWwuZ2V0VXNlcklkKGZ1bmN0aW9uICh1c2VySWQpIHskLmdldCgiL3NjcmlwdHMvT25lU2lnbmFsVHJhY2tpbmcuYXNoeD9PbmVTaWduYWxOTEk9IiArIHVzZXJJZCk7fSk7fSk7PC9zY3JpcHQ+ZAIZD2QWCgIBDxYCHwAFkBg8c2NyaXB0IHR5cGU9ImFwcGxpY2F0aW9uL2xkK2pzb24iPiB7ICJAY29udGV4dCI6ICJodHRwOi8vc2NoZW1hLm9yZyIsICJAdHlwZSI6ICJXZWJQYWdlIiwgIm1haW5FbnRpdHlPZlBhZ2UiOiB7ICJAdHlwZSI6ICJXZWJQYWdlIiwgIkBpZCI6ICJodHRwczovL2dvb2dsZS5jb20vd2VicGFnZSIgfSwgImhlYWRsaW5lIjogIldoYXQgaXMgdGhlIFNcdTAwMjZQIDUwMCBhbmQgSG93IEl0IGlzIERpc3RpbmN0IGZyb20gT3RoZXIgSW5kZXhlcyIsICJpbWFnZSI6IHsgIkB0eXBlIjogIkltYWdlT2JqZWN0IiwgInVybCI6ICJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9sb2dvcy9hcnRpY2xlcy9tZWRfc3RvY2staW1hZ2VfMjYwMjYxMzQyX1MuanBnIiwgImhlaWdodCI6ICI0MDAiLCAid2lkdGgiOiAiNDAwIiB9LCAiZGF0ZVB1Ymxpc2hlZCI6ICIyMDIyLTA4LTE1IiwgImRhdGVNb2RpZmllZCI6ICIyMDI0LTExLTI5IiwgImF1dGhvciI6IHsgIkB0eXBlIjogIlBlcnNvbiIsICJuYW1lIjogIk1hcmtldEJlYXQgU3RhZmYiIH0sICJwdWJsaXNoZXIiOiB7IkBjb250ZXh0IjoiaHR0cHM6Ly9zY2hlbWEub3JnIiwgIkB0eXBlIjoiT3JnYW5pemF0aW9uIiwgIm5hbWUiOiJNYXJrZXRCZWF0IiwgInVybCI6Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tLyIsICJsb2dvIjp7IkBjb250ZXh0IjoiaHR0cHM6Ly9zY2hlbWEub3JnIiwgIkB0eXBlIjoiSW1hZ2VPYmplY3QiLCAidXJsIjoiaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vaW1hZ2VzL21hc3Rlci9tYXJrZXRiZWF0LWxvZ28tZ3JheS1ibHVlLTEyMDAucG5nIiwgImhlaWdodCI6IjMwNiIsICJ3aWR0aCI6IjEyMDAifSwgImVtYWlsIjoiY29udGFjdEBtYXJrZXRiZWF0LmNvbSIsICJkZXNjcmlwdGlvbiI6Ik1hcmtldEJlYXQgZW1wb3dlcnMgcmV0YWlsIGludmVzdG9ycyB0byBtYWtlIGJldHRlciB0cmFkaW5nIGRlY2lzaW9ucyBieSBwcm92aWRpbmcgcmVhbC10aW1lIGZpbmFuY2lhbCBkYXRhIGFuZCBvYmplY3RpdmUgbWFya2V0IHJlc2VhcmNoLiIsICJhZGRyZXNzIjp7IkBjb250ZXh0IjoiaHR0cHM6Ly9zY2hlbWEub3JnIiwgIkB0eXBlIjoiUG9zdGFsQWRkcmVzcyIsICJzdHJlZXRBZGRyZXNzIjoiMzQ1IE4gUmVpZCBQbGFjZSwgU3VpdGUgNjIwIiwgImFkZHJlc3NMb2NhbGl0eSI6IlNpb3V4IEZhbGxzIiwgImFkZHJlc3NSZWdpb24iOiJTRCIsICJwb3N0YWxDb2RlIjoiNTcxMDMiLCAiYWRkcmVzc0NvdW50cnkiOiJVUyJ9LCAiY29udGFjdFBvaW50Ijp7IkBjb250ZXh0IjoiaHR0cHM6Ly9zY2hlbWEub3JnIiwgIkB0eXBlIjoiQ29udGFjdFBvaW50IiwgInRlbGVwaG9uZSI6IisxLTg0NC05NzgtNjI1NyIsICJlbWFpbCI6ImNvbnRhY3RAbWFya2V0YmVhdC5jb20iLCAiY29udGFjdFR5cGUiOiJDdXN0b21lciBTdXBwb3J0In0sICJzYW1lQXMiOlsiaHR0cHM6Ly90d2l0dGVyLmNvbS9NYXJrZXRCZWF0Q29tLyIsICJodHRwczovL3d3dy5mYWNlYm9vay5jb20vbWFya2V0YmVhdGNvbS8iLCAiaHR0cHM6Ly93d3cueW91dHViZS5jb20vbWFya2V0YmVhdGNvbSIsICJodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9NYXJrZXRCZWF0IiwgImh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jb21wYW55L21hcmtldGJlYXQiXSwgInB1Ymxpc2hpbmdQcmluY2lwbGVzIjoiaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZWRpdG9yaWFsLWd1aWRlbGluZXMvIn0sICJkZXNjcmlwdGlvbiI6ICJUaGUgU3RhbmRhcmQgYW5kIFBvb3LigJlzIChTXHUwMDI2UCkgNTAwIGluZGV4IGlzIGEgd2lkZWx5IHVzZWQgc3RvY2sgbWFya2V0IGluZGV4LiBUaGUgaW5kZXggdHJhY2tzIHRoZSBzdG9jayBwcmljZSBwZXJmb3JtYW5jZSBvZiA1MDAgY29tcGFuaWVzIiB9IDwvc2NyaXB0PjxtZXRhIG5hbWU9InR3aXR0ZXI6Y2FyZCIgY29udGVudD0ic3VtbWFyeSIvPjxtZXRhIG5hbWUgPSJ0d2l0dGVyOnNpdGUiIGNvbnRlbnQ9IkBNYXJrZXRCZWF0Q29tIiAvPjxtZXRhIG5hbWUgPSJ0d2l0dGVyOmNyZWF0b3IiIGNvbnRlbnQ9IkBNYXJrZXRCZWF0Q29tIiAvPjxtZXRhIG5hbWUgPSJ0d2l0dGVyOnRpdGxlIiBjb250ZW50PSJXaGF0IGlzIHRoZSBTJlAgNTAwIGFuZCBIb3cgSXQgaXMgRGlzdGluY3QgZnJvbSBPdGhlciBJbmRleGVzIi8+PG1ldGEgbmFtZSA9InR3aXR0ZXI6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRoZSBTdGFuZGFyZCBhbmQgUG9vcuKAmXMgKFMmUCkgNTAwIGluZGV4IGlzIGEgd2lkZWx5IHVzZWQgc3RvY2sgbWFya2V0IGluZGV4LiBUaGUgaW5kZXggdHJhY2tzIHRoZSBzdG9jayBwcmljZSBwZXJmb3JtYW5jZSBvZiA1MDAgY29tcGFuaWVzIiAvPjxtZXRhIG5hbWUgPSJ0d2l0dGVyOmltYWdlIiBjb250ZW50PSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9sb2dvcy9hcnRpY2xlcy9tZWRfc3RvY2staW1hZ2VfMjYwMjYxMzQyX1MuanBnIiAvPjxtZXRhIHByb3BlcnR5PSJvZzp0aXRsZSIgY29udGVudD0iV2hhdCBpcyB0aGUgUyZQIDUwMCBhbmQgSG93IEl0IGlzIERpc3RpbmN0IGZyb20gT3RoZXIgSW5kZXhlcyIgLz48bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0iYXJ0aWNsZSIgLz48bWV0YSBwcm9wZXJ0eT0ib2c6dXJsIiBjb250ZW50PSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9tYXJrZXQtZGF0YS9zZWN0b3ItcGVyZm9ybWFuY2UvIiAvPjxtZXRhIHByb3BlcnR5PSJvZzppbWFnZSIgY29udGVudD0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbG9nb3MvYXJ0aWNsZXMvbWVkX3N0b2NrLWltYWdlXzI2MDI2MTM0Ml9TLmpwZyIgLz48bWV0YSBwcm9wZXJ0eT0ib2c6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRoZSBTdGFuZGFyZCBhbmQgUG9vcuKAmXMgKFMmUCkgNTAwIGluZGV4IGlzIGEgd2lkZWx5IHVzZWQgc3RvY2sgbWFya2V0IGluZGV4LiBUaGUgaW5kZXggdHJhY2tzIHRoZSBzdG9jayBwcmljZSBwZXJmb3JtYW5jZSBvZiA1MDAgY29tcGFuaWVzIiAvPjxtZXRhIHByb3BlcnR5PSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9Ik1hcmtldEJlYXQiIC8+PG1ldGEgcHJvcGVydHk9Im9nOmxvY2FsZSIgY29udGVudD0iZW5fVVMiIC8+ZAIDDxYCHwAFWjxsaW5rIHJlbD0iY2Fub25pY2FsIiBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9tYXJrZXQtZGF0YS9zZWN0b3ItcGVyZm9ybWFuY2UvIiAvPmQCBQ8WAh8ABasCPG1ldGEgbmFtZT0idHdpdHRlcjp0aXRsZSIgY29udGVudD0iRnJlZSBTdG9jayBNYXJrZXQgSGVhdCBNYXAgfCBTJlAgNTAwIFBlcmZvcm1hbmNlIHZpYSBIZWF0IE1hcCI+PG1ldGEgbmFtZT0idHdpdHRlcjpkZXNjcmlwdGlvbiIgY29udGVudD0iVmlldyBhIGZyZWUgdmlzdWFsIGhlYXQgbWFwIG9mIHRoZSBwcmljZSBwZXJmb3JtYW5jZSBvZiBTJlAgNTAwIGNvbXBhbmllcywgZ3JvdXBlZCBieSBpbmR1c3RyeSBhbmQgc2VjdG9yLiBFYXNpbHkgdHJhY2sgUyZQIDUwMCBwZXJmb3JtYW5jZSB3aXRoIGEgaGVhdG1hcC4uIj5kAgcPFgIfAAWDATxtZXRhIG5hbWU9InR3aXR0ZXI6IGltYWdlIiBjb250ZW50PSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9zY3JpcHRzL3RlbXAvc2VjdG9yLXBlcmZvcm1hbmNlLW1hcC1TUDUwMC13aWRlLnBuZz90PTIwMjQxMTMwMDUzMCI+ZAIJDxYCHwAF5AE8bWV0YSBwcm9wZXJ0eT0ib2c6aW1hZ2UiIGNvbnRlbnQ9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL3NjcmlwdHMvdGVtcC9zZWN0b3ItcGVyZm9ybWFuY2UtbWFwLVNQNTAwLXdpZGUucG5nP3Q9MjAyNDExMzAwNTMwIi8+PG1ldGEgcHJvcGVydHk9Im9nOmltYWdlOndpZHRoIiBjb250ZW50PSIxMjAwIiAvPjxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTpoZWlnaHQiIGNvbnRlbnQ9IjYyOCIgLz5kAgEPFgIfAAXrAjxkaXYgaWQ9J2dfaWRfb25sb2FkJyBkYXRhLWNsaWVudF9pZD0nMTc4NTQyODUzMzg2LXNmcTh0YTBxOWluNDA3cW5hdWQwMG8xbzdhNnRobHNpLmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tJyBkYXRhLWxvZ2luX3VyaT0naHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vdXNlcnMvT25lVGFwVmVyaWZ5UmVkaXJlY3QuYXNweCcgZGF0YS1wcm9tcHRfcGFyZW50X2lkPSdnX2lkX29ubG9hZCcgZGF0YS1hdXRvX3NlbGVjdD0ndHJ1ZScgZGF0YS1jYW5jZWxfb25fdGFwX291dHNpZGU9J3RydWUnIGRhdGEtdXNlX2ZlZGNtX2Zvcl9wcm9tcHQ9J3RydWUnIGRhdGEtc3RhdGVfY29va2llX2RvbWFpbj0nbWFya2V0YmVhdC5jb20nPjwvZGl2PmQCCA8WAh8ABZsBPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnZhciBzY3JvbGxpbmdUaWNrZXJzRmlsZSA9ICcvU2NyaXB0cy9TY3JvbGxpbmdUaWNrZXJzLmFzaHg/YWNjb3VudGlkPTAmaW50ZXJ2YWw9MjQxMTMwMDUzMCZ1c2VybGV2ZWw9Tm90TG9nZ2VkSW4nOyA8L3NjcmlwdD5kAgkPFgIfAAXPKTxsaSBjbGFzcz0iaGFzLXN1Ym1lbnUiPjxhIGhyZWY9Ii92aWRlb3MvIj5NYXJrZXRCZWF0IFRWPC9hPjx1bCBjbGFzcz0icm93IGxpbWl0ZWQtdmlkZW8tc3VibWVudSI+PGxpIGNsYXNzPSJtZWdhLW9ubHkgbWItMiBjb2wtNiBwbC0wIj48YSBocmVmPSIvdmlkZW9zL3doeS1hbWF6b25zLWFpLXBvd2VyLWFuZC1ob2xpZGF5LWJvb3N0LW1ha2UtdGhpcy1zdG9jay1hLTIwMjUtd2lubmVyLyIgY2xhc3M9InBvc2l0aW9uLXJlbGF0aXZlIj48c3BhbiBjbGFzcz0iZC1mbGV4IHBvc2l0aW9uLXJlbGF0aXZlIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj48c3BhbiBjbGFzcz0icG9zaXRpb24tYWJzb2x1dGUgZmEtc29saWQgZmEtcGxheSBjLXdoaXRlIiBhcmlhLWhpZGRlbj0idHJ1ZSIgc3R5bGU9Im9wYWNpdHk6MC44O2ZvbnQtc2l6ZTozZW07Ij48L3NwYW4+PGltZyBjbGFzcz0idy0xMDAiIHNyYz0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbG9nb3MvdmlkZW9zL3RodW1iXzIwMjQxMTI5MTcyMjI0X3ZpZGVvYW1hem9uY2xpcC5wbmciIGFsdD0iV2h5IEFtYXpvbuKAmXMgQUkgUG93ZXIgYW5kIEhvbGlkYXkgQm9vc3QgTWFrZSBUaGlzIFN0b2NrIGEgMjAyNSBXaW5uZXIiIGhlaWdodD0iNzgiIHdpZHRoPSIxNDAiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyIvPjwvc3Bhbj48c3BhbiBjbGFzcz0iZC1ibG9jayBtdC0xIiBzdHlsZT0ibGluZS1oZWlnaHQ6MS4yZW07Ij5XaHkgQW1hem9u4oCZcyBBSSBQb3dlciBhbmQgSG9saWRheSBCb29zdCBNYWtlIFRoaXMgU3RvY2sgYSAyMDI1IFdpbm5lcjwvc3Bhbj48L2E+PC9saT48bGkgY2xhc3M9InNpZGUtb25seSI+PGEgaHJlZj0nL3ZpZGVvcy93aHktYW1hem9ucy1haS1wb3dlci1hbmQtaG9saWRheS1ib29zdC1tYWtlLXRoaXMtc3RvY2stYS0yMDI1LXdpbm5lci8nPldoeSBBbWF6b27igJlzIEFJIFBvd2VyIGFuZCBIb2xpZGF5IEJvb3N0IE1ha2UgVGhpcyBTdG9jayBhIDIwMjUgV2lubmVyPC9hPjwvbGk+PGxpIGNsYXNzPSJtZWdhLW9ubHkgbWItMiBjb2wtNiBwbC0wIj48YSBocmVmPSIvdmlkZW9zL3NtYWxsLWNhcHMtZmluYW5jaWFscy1hbmQtYml0Y29pbi1sZWFkLXRoZS1yaXNpbmctYnVsbC1tYXJrZXQtY2hyaXMtcm93ZXMtdG9wLXBpY2tzLyIgY2xhc3M9InBvc2l0aW9uLXJlbGF0aXZlIj48c3BhbiBjbGFzcz0iZC1mbGV4IHBvc2l0aW9uLXJlbGF0aXZlIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj48c3BhbiBjbGFzcz0icG9zaXRpb24tYWJzb2x1dGUgZmEtc29saWQgZmEtcGxheSBjLXdoaXRlIiBhcmlhLWhpZGRlbj0idHJ1ZSIgc3R5bGU9Im9wYWNpdHk6MC44O2ZvbnQtc2l6ZTozZW07Ij48L3NwYW4+PGltZyBjbGFzcz0idy0xMDAiIHNyYz0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbG9nb3MvdmlkZW9zL3RodW1iXzIwMjQxMTI3MTUxOTM3X3ZpZGVvY2hyaXNyb3dlYnVsbG1hcmtldC5wbmciIGFsdD0iU21hbGwgQ2FwcywgRmluYW5jaWFscyAmIEJpdGNvaW4gTGVhZCB0aGUgUmlzaW5nIEJ1bGwgTWFya2V0OiBDaHJpcyBSb3dl4oCZcyBUb3AgUGlja3MiIGhlaWdodD0iNzgiIHdpZHRoPSIxNDAiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyIvPjwvc3Bhbj48c3BhbiBjbGFzcz0iZC1ibG9jayBtdC0xIiBzdHlsZT0ibGluZS1oZWlnaHQ6MS4yZW07Ij5TbWFsbCBDYXBzLCBGaW5hbmNpYWxzICYgQml0Y29pbiBMZWFkIHRoZSBSaXNpbmcgQnVsbCBNYXJrZXQ6IENocmlzIFJvd2XigJlzIFRvcCBQaWNrczwvc3Bhbj48L2E+PC9saT48bGkgY2xhc3M9InNpZGUtb25seSI+PGEgaHJlZj0nL3ZpZGVvcy9zbWFsbC1jYXBzLWZpbmFuY2lhbHMtYW5kLWJpdGNvaW4tbGVhZC10aGUtcmlzaW5nLWJ1bGwtbWFya2V0LWNocmlzLXJvd2VzLXRvcC1waWNrcy8nPlNtYWxsIENhcHMsIEZpbmFuY2lhbHMgJiBCaXRjb2luIExlYWQgdGhlIFJpc2luZyBCdWxsIE1hcmtldDogQ2hyaXMgUm93ZeKAmXMgVG9wIFBpY2tzPC9hPjwvbGk+PGxpIGNsYXNzPSJtZWdhLW9ubHkgbWItMiBjb2wtNiBwbC0wIj48YSBocmVmPSIvdmlkZW9zL21pY3Jvc3RyYXRlZ3ktc3RvY2stcmlkaW5nLWJpdGNvaW5zLXdhdmUtdG8tbmV3LWhpZ2hzLyIgY2xhc3M9InBvc2l0aW9uLXJlbGF0aXZlIj48c3BhbiBjbGFzcz0iZC1mbGV4IHBvc2l0aW9uLXJlbGF0aXZlIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj48c3BhbiBjbGFzcz0icG9zaXRpb24tYWJzb2x1dGUgZmEtc29saWQgZmEtcGxheSBjLXdoaXRlIiBhcmlhLWhpZGRlbj0idHJ1ZSIgc3R5bGU9Im9wYWNpdHk6MC44O2ZvbnQtc2l6ZTozZW07Ij48L3NwYW4+PGltZyBjbGFzcz0idy0xMDAiIHNyYz0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbG9nb3MvdmlkZW9zL3RodW1iXzIwMjQxMTI2MTczMjQ0X3ZpZGVvdGhvbWFzYml0Y29pbi5wbmciIGFsdD0iTWljcm9TdHJhdGVneSBTdG9jazogUmlkaW5nIEJpdGNvaW7igJlzIFdhdmUgdG8gTmV3IEhpZ2hzIiBoZWlnaHQ9Ijc4IiB3aWR0aD0iMTQwIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiLz48L3NwYW4+PHNwYW4gY2xhc3M9ImQtYmxvY2sgbXQtMSIgc3R5bGU9ImxpbmUtaGVpZ2h0OjEuMmVtOyI+TWljcm9TdHJhdGVneSBTdG9jazogUmlkaW5nIEJpdGNvaW7igJlzIFdhdmUgdG8gTmV3IEhpZ2hzPC9zcGFuPjwvYT48L2xpPjxsaSBjbGFzcz0ic2lkZS1vbmx5Ij48YSBocmVmPScvdmlkZW9zL21pY3Jvc3RyYXRlZ3ktc3RvY2stcmlkaW5nLWJpdGNvaW5zLXdhdmUtdG8tbmV3LWhpZ2hzLyc+TWljcm9TdHJhdGVneSBTdG9jazogUmlkaW5nIEJpdGNvaW7igJlzIFdhdmUgdG8gTmV3IEhpZ2hzPC9hPjwvbGk+PGxpIGNsYXNzPSJtZWdhLW9ubHkgbWItMiBjb2wtNiBwbC0wIj48YSBocmVmPSIvdmlkZW9zL2hvdy1hYmFjdXMtbGlmZS1pcy10cmFuc2Zvcm1pbmctbGlmZS1pbnN1cmFuY2UtaW50by1hc3NldHMtbWFya2V0YmVhdC1jZW8tc2VyaWVzLyIgY2xhc3M9InBvc2l0aW9uLXJlbGF0aXZlIj48c3BhbiBjbGFzcz0iZC1mbGV4IHBvc2l0aW9uLXJlbGF0aXZlIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj48c3BhbiBjbGFzcz0icG9zaXRpb24tYWJzb2x1dGUgZmEtc29saWQgZmEtcGxheSBjLXdoaXRlIiBhcmlhLWhpZGRlbj0idHJ1ZSIgc3R5bGU9Im9wYWNpdHk6MC44O2ZvbnQtc2l6ZTozZW07Ij48L3NwYW4+PGltZyBjbGFzcz0idy0xMDAiIHNyYz0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbG9nb3MvdmlkZW9zL3RodW1iXzIwMjQxMTI1MTM0MTM0X3ZpZGVvd2l0aGxvZ28uanBnIiBhbHQ9IkhvdyBBYmFjdXMgTGlmZSBpcyBUcmFuc2Zvcm1pbmcgTGlmZSBJbnN1cmFuY2UgaW50byBBc3NldHMgfCBNYXJrZXRCZWF0IENFTyBTZXJpZXMiIGhlaWdodD0iNzgiIHdpZHRoPSIxNDAiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyIvPjwvc3Bhbj48c3BhbiBjbGFzcz0iZC1ibG9jayBtdC0xIiBzdHlsZT0ibGluZS1oZWlnaHQ6MS4yZW07Ij5Ib3cgQWJhY3VzIExpZmUgaXMgVHJhbnNmb3JtaW5nIExpZmUgSW5zdXJhbmNlIGludG8gQXNzZXRzIHwgTWFya2V0QmVhdCBDRU8gU2VyaWVzPC9zcGFuPjwvYT48L2xpPjxsaSBjbGFzcz0ic2lkZS1vbmx5Ij48YSBocmVmPScvdmlkZW9zL2hvdy1hYmFjdXMtbGlmZS1pcy10cmFuc2Zvcm1pbmctbGlmZS1pbnN1cmFuY2UtaW50by1hc3NldHMtbWFya2V0YmVhdC1jZW8tc2VyaWVzLyc+SG93IEFiYWN1cyBMaWZlIGlzIFRyYW5zZm9ybWluZyBMaWZlIEluc3VyYW5jZSBpbnRvIEFzc2V0cyB8IE1hcmtldEJlYXQgQ0VPIFNlcmllczwvYT48L2xpPjwvdWw+PC9saT48bGkgY2xhc3M9Imhhcy1zdWJtZW51Ij48YSBocmVmPSIvb3JpZ2luYWxzLyI+RmVhdHVyZWQgQXJ0aWNsZXM8L2E+PHVsIGNsYXNzPSdsaW1pdGVkLXdpZHRoLXN1Ym1lbnUnPjxsaT48YSBocmVmPScvb3JpZ2luYWxzL3RoZS1sYXRlc3QtMTNmLWZpbGluZ3MtYXJlLWluLXNlZS13aGVyZS1iaWctbW9uZXktaXMtZmxvd2luZy8nPlRoZSBMYXRlc3QgMTNGIEZpbGluZ3MgQXJlIEluOiBTZWUgV2hlcmUgQmlnIE1vbmV5IElzIEZsb3dpbmc8L2E+PC9saT48bGk+PGEgaHJlZj0nL29yaWdpbmFscy8zLXBlbm55LXN0b2Nrcy1yZWFkeS10by1icmVhay1vdXQtaW4tMjAyNS8nPjMgUGVubnkgU3RvY2tzIFJlYWR5IHRvIEJyZWFrIE91dCBpbiAyMDI1PC9hPjwvbGk+PGxpPjxhIGhyZWY9Jy9vcmlnaW5hbHMvZm1jLW1vc2FpYy1udXRyaWVuLXRvcC1hZ3JpY3VsdHVyYWwtc3RvY2tzLXdpdGgtYmlnLXBvdGVudGlhbC8nPkZNQywgTW9zYWljLCBOdXRyaWVuOiBUb3AgQWdyaWN1bHR1cmFsIFN0b2NrcyBXaXRoIEJpZyBQb3RlbnRpYWw8L2E+PC9saT48bGk+PGEgaHJlZj0nL29yaWdpbmFscy8zLXN0b2Nrcy10aGF0LW5ldmVyLWxpdmVkLXVwLXRvLXRoZS1oeXBlLyc+MyBTdG9ja3MgVGhhdCBOZXZlciBMaXZlZCBVcCB0byB0aGUgSHlwZTwvYT48L2xpPjxsaT48YSBocmVmPScvb3JpZ2luYWxzLzMtc3RvY2tzLXRvLXJpZGUtdGhlLW1hbnVmYWN0dXJpbmctc2VjdG9ycy1iaWctY29tZWJhY2svJz4zIFN0b2NrcyB0byBSaWRlIHRoZSBNYW51ZmFjdHVyaW5nIFNlY3RvcidzIEJpZyBDb21lYmFjazwvYT48L2xpPjxsaT48YSBocmVmPScvb3JpZ2luYWxzL2VsaS1saWxseS1wZml6ZXItYW5kLWFzdHJhemVuZWNhLTIwMjUtdmFjY2luZS1tYWtlcnMtdG8td2F0Y2gvJz5FbGkgTGlsbHksIFBmaXplciwgYW5kIEFzdHJhWmVuZWNhOiAyMDI1IFZhY2NpbmUgTWFrZXJzIHRvIFdhdGNoPC9hPjwvbGk+PGxpPjxhIGhyZWY9Jy9vcmlnaW5hbHMvZGlja3Mtc3BvcnRpbmctZ29vZHMtdGhlLXVuZGVyLXRoZS1yYWRhci1idXktYW5kLWhvbGQtd2lubmVyLyc+RElDSydTIFNwb3J0aW5nIEdvb2RzOiBUaGUgVW5kZXItdGhlLVJhZGFyIEJ1eS1hbmQtSG9sZCBXaW5uZXI8L2E+PC9saT48bGk+PGEgaHJlZj0nL29yaWdpbmFscy8yLWNoZWFwLXF1YW50dW0tY29tcHV0aW5nLXN0b2Nrcy10by1idXktaW5zdGVhZC1vZi1jaGFzaW5nLWlvbnEvJz4yIENoZWFwIFF1YW50dW0gQ29tcHV0aW5nIFN0b2NrcyB0byBCdXkgSW5zdGVhZCBvZiBDaGFzaW5nIElvblEgPC9hPjwvbGk+PGxpIGNsYXNzPSJwdC0xIj48YSBocmVmPScvb3JpZ2luYWxzLyc+TW9yZSBGZWF0dXJlZCBBcnRpY2xlcyA8c3BhbiBjbGFzcz0iZmEtcmVndWxhciBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L2E+PC9saT48L3VsPjwvbGk+ZAIKDxYCHwAF1CM8bGkgY2xhc3M9ImQtbm9uZSBkLWxnLWJsb2NrIG1iLTIgY29sLTQgcGwtMCI+PGEgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vb3JpZ2luYWxzLzMtdW51c3VhbC1jYWxsLW9wdGlvbi10cmFkZXMtaW52ZXN0b3JzLXNob3VsZC1iZS13YXRjaGluZy8iIGNsYXNzPSJwb3NpdGlvbi1yZWxhdGl2ZSI+PHNwYW4gY2xhc3M9ImQtZmxleCBwb3NpdGlvbi1yZWxhdGl2ZSBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciI+PGltZyBjbGFzcz0idy0xMDAiIHN0eWxlPSJhc3BlY3QtcmF0aW86Mi8xO29iamVjdC1maXQ6Y292ZXI7IiBzcmM9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2xvZ29zL2FydGljbGVzL3RodW1iXzIwMjQxMTA0MTE1NDUyX29wdGlvbnMtdHJhZGVycy1iZXQtYmlnLW9uLXRoZXNlLTMtdGVjaC1zdG9ja3MuanBnIiBhbHQ9IiIgaGVpZ2h0PSI4MDAiIHdpZHRoPSIxMjAwIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiLz48L3NwYW4+PHNwYW4gY2xhc3M9ImQtYmxvY2sgbXQtMSBjLWdyYXkgZm9udC13ZWlnaHQtbm9ybWFsIiBzdHlsZT0iZm9udC1zaXplOi45NWVtO2xpbmUtaGVpZ2h0OjEuMmVtO3BhZGRpbmctcmlnaHQ6LjVlbTsiPk9wdGlvbnMgVHJhZGVycyBCZXQgQmlnIG9uIFRoZXNlIDMgVGVjaCBTdG9ja3MgPC9zcGFuPjwvYT48L2xpPjxsaSBjbGFzcz0iZC1ub25lIGQtbGctYmxvY2sgbWItMiBjb2wtNCBwbC0wIj48YSBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9sZWFybi9ob3ctdG8tcGxheS1uZXctb3B0aW9ucy10cmFkaW5nLXdpdGgtYml0Y29pbi1ldGZzLyIgY2xhc3M9InBvc2l0aW9uLXJlbGF0aXZlIj48c3BhbiBjbGFzcz0iZC1mbGV4IHBvc2l0aW9uLXJlbGF0aXZlIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj48aW1nIGNsYXNzPSJ3LTEwMCIgc3R5bGU9ImFzcGVjdC1yYXRpbzoyLzE7b2JqZWN0LWZpdDpjb3ZlcjsiIHNyYz0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbG9nb3MvYXJ0aWNsZXMvdGh1bWJfMjAyNDExMDExNTI0MzBfaG93LXRvLXBsYXktbmV3LW9wdGlvbnMtdHJhZGluZy13aXRoLWJpdGNvaW4tZXRmcy5qcGciIGFsdD0iU2l4IGJpdGNvaW4gY29pbnMg4oCUIFN0b2NrIEVkaXRvcmlhbCBQaG90b2dyYXBoeSIgaGVpZ2h0PSI4MDAiIHdpZHRoPSIxMjAwIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiLz48L3NwYW4+PHNwYW4gY2xhc3M9ImQtYmxvY2sgbXQtMSBjLWdyYXkgZm9udC13ZWlnaHQtbm9ybWFsIiBzdHlsZT0iZm9udC1zaXplOi45NWVtO2xpbmUtaGVpZ2h0OjEuMmVtO3BhZGRpbmctcmlnaHQ6LjVlbTsiPkhvdyB0byBQbGF5IE5ldyBPcHRpb25zIFRyYWRpbmcgV2l0aCBCaXRjb2luIEVURnM8L3NwYW4+PC9hPjwvbGk+PGxpIGNsYXNzPSJkLW5vbmUgZC1sZy1ibG9jayBtYi0yIGNvbC00IHBsLTAiPjxhIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL29yaWdpbmFscy9hbGJlbWFybGUtc3RvY2stY2FsbC1vcHRpb25zLXN1cmdlLXdoYXQtaXQtbWVhbnMtZm9yLWxpdGhpdW0vIiBjbGFzcz0icG9zaXRpb24tcmVsYXRpdmUiPjxzcGFuIGNsYXNzPSJkLWZsZXggcG9zaXRpb24tcmVsYXRpdmUgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIiPjxpbWcgY2xhc3M9InctMTAwIiBzdHlsZT0iYXNwZWN0LXJhdGlvOjIvMTtvYmplY3QtZml0OmNvdmVyOyIgc3JjPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9sb2dvcy9hcnRpY2xlcy90aHVtYl8yMDI0MTAyODExMTEzN19hbGJlbWFybGUtc3RvY2stY2FsbC1vcHRpb25zLXN1cmdlLXdoYXQtaXQtbWVhbnMtZi5wbmciIGFsdD0iYWxiZW1hcmxlIGxpdGhpdW0gaW9uIGJhdHRlcnkiIGhlaWdodD0iNDg4IiB3aWR0aD0iMTIwMCIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIi8+PC9zcGFuPjxzcGFuIGNsYXNzPSJkLWJsb2NrIG10LTEgYy1ncmF5IGZvbnQtd2VpZ2h0LW5vcm1hbCIgc3R5bGU9ImZvbnQtc2l6ZTouOTVlbTtsaW5lLWhlaWdodDoxLjJlbTtwYWRkaW5nLXJpZ2h0Oi41ZW07Ij5BbGJlbWFybGUgU3RvY2sgQ2FsbCBPcHRpb25zIFN1cmdlOiBXaGF0IEl0IE1lYW5zIGZvciBMaXRoaXVtPC9zcGFuPjwvYT48L2xpPjxsaSBjbGFzcz0iZC1ub25lIGQtbGctYmxvY2sgbWItMiBjb2wtNCBwbC0wIj48YSBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9sZWFybi9vcHRpb25zLWhvdy10by1leGVjdXRlLXRoZS13aGVlbC1zdHJhdGVneS1mb3Itb3B0aW9ucy1pbmNvbWUvIiBjbGFzcz0icG9zaXRpb24tcmVsYXRpdmUiPjxzcGFuIGNsYXNzPSJkLWZsZXggcG9zaXRpb24tcmVsYXRpdmUgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIiPjxpbWcgY2xhc3M9InctMTAwIiBzdHlsZT0iYXNwZWN0LXJhdGlvOjIvMTtvYmplY3QtZml0OmNvdmVyOyIgc3JjPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9sb2dvcy9hcnRpY2xlcy90aHVtYl8yMDI0MDcxODE1MDIxNV9ob3ctdG8tZXhlY3V0ZS10aGUtd2hlZWwtc3RyYXRlZ3ktdG8tZ2VuZXJhdGUtb3B0aS5qcGciIGFsdD0iUGhvdG8gb2YgYSBidXNpbmVzc21hbiBydW5uaW5nIGluc2lkZSBhIGNpcmNsZSBtYWRlIG9mIG1vbmV5IHN5bWJvbGljIG9mIHRoZSB3aGVlbCBvcHRpb25zIHRyYWRpbmcgc3RyYXRlZ3kuICIgaGVpZ2h0PSI5NjAiIHdpZHRoPSIxMjAwIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiLz48L3NwYW4+PHNwYW4gY2xhc3M9ImQtYmxvY2sgbXQtMSBjLWdyYXkgZm9udC13ZWlnaHQtbm9ybWFsIiBzdHlsZT0iZm9udC1zaXplOi45NWVtO2xpbmUtaGVpZ2h0OjEuMmVtO3BhZGRpbmctcmlnaHQ6LjVlbTsiPkhvdyB0byBFeGVjdXRlIHRoZSBXaGVlbCBTdHJhdGVneSB0byBHZW5lcmF0ZSBPcHRpb25zIEluY29tZTwvc3Bhbj48L2E+PC9saT48bGkgY2xhc3M9ImQtbm9uZSBkLWxnLWJsb2NrIG1iLTIgY29sLTQgcGwtMCI+PGEgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbGVhcm4vMy1vcHRpb25zLXN0cmF0ZWdpZXMtdG8tcGxheS1hLXN0b2Nrcy11cHRyZW5kLWlmLWJ1bGxpc2gvIiBjbGFzcz0icG9zaXRpb24tcmVsYXRpdmUiPjxzcGFuIGNsYXNzPSJkLWZsZXggcG9zaXRpb24tcmVsYXRpdmUgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIiPjxpbWcgY2xhc3M9InctMTAwIiBzdHlsZT0iYXNwZWN0LXJhdGlvOjIvMTtvYmplY3QtZml0OmNvdmVyOyIgc3JjPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9sb2dvcy9hcnRpY2xlcy90aHVtYl8yMDI0MDYyNjA3NTQxOF8zLW9wdGlvbnMtc3RyYXRlZ2llcy10by1wbGF5LWEtc3RvY2tzLXVwdHJlbmQtaWYtYi5qcGciIGFsdD0iU3RvY2sgb3B0aW9ucyBzdHJhdGVnaWVzICIgaGVpZ2h0PSI5MDAiIHdpZHRoPSIxMjAwIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiLz48L3NwYW4+PHNwYW4gY2xhc3M9ImQtYmxvY2sgbXQtMSBjLWdyYXkgZm9udC13ZWlnaHQtbm9ybWFsIiBzdHlsZT0iZm9udC1zaXplOi45NWVtO2xpbmUtaGVpZ2h0OjEuMmVtO3BhZGRpbmctcmlnaHQ6LjVlbTsiPjMgT3B0aW9ucyBTdHJhdGVnaWVzIHRvIFBsYXkgYSBTdG9ja+KAmXMgVXB0cmVuZCBpZiBCdWxsaXNoIDwvc3Bhbj48L2E+PC9saT48bGkgY2xhc3M9ImQtbm9uZSBkLWxnLWJsb2NrIG1iLTIgY29sLTQgcGwtMCI+PGEgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbGVhcm4vaG93LXRvLXVzZS1kZWx0YS1oZWRnaW5nLXRvLXByb3RlY3QteW91ci1vcHRpb25zLXdpdGgtc3RvY2svIiBjbGFzcz0icG9zaXRpb24tcmVsYXRpdmUiPjxzcGFuIGNsYXNzPSJkLWZsZXggcG9zaXRpb24tcmVsYXRpdmUgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIiPjxpbWcgY2xhc3M9InctMTAwIiBzdHlsZT0iYXNwZWN0LXJhdGlvOjIvMTtvYmplY3QtZml0OmNvdmVyOyIgc3JjPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9sb2dvcy9hcnRpY2xlcy90aHVtYl8yMDI0MDYxMzE0NTI0MV9ob3ctdG8tdXNlLWRlbHRhLWhlZGdpbmctdG8tcHJvdGVjdC15b3VyLW9wdGlvbnMtdy5qcGciIGFsdD0iUGhvdG8gb2YgYSBkZXNrIHdpdGggYSBjb21wdXRlciBzaG93aW5nIE9wdGlvbnMgVHJhZGluZy4gRGVsdGEgaGVkZ2luZyBpcyBhIGRlZmVuc2l2ZSBzdHJhdGVneSB1c2VkIHRvIHRlbXBvcmFyaWx5IHJlZHVjZSBkaXJlY3Rpb25hbCBleHBvc3VyZS4gIiBoZWlnaHQ9IjgwMCIgd2lkdGg9IjEyMDAiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyIvPjwvc3Bhbj48c3BhbiBjbGFzcz0iZC1ibG9jayBtdC0xIGMtZ3JheSBmb250LXdlaWdodC1ub3JtYWwiIHN0eWxlPSJmb250LXNpemU6Ljk1ZW07bGluZS1oZWlnaHQ6MS4yZW07cGFkZGluZy1yaWdodDouNWVtOyI+SG93IHRvIFVzZSBEZWx0YSBIZWRnaW5nIHRvIFByb3RlY3QgWW91ciBPcHRpb25zIHdpdGggU3RvY2s8L3NwYW4+PC9hPjwvbGk+ZAIMDw8WBB4IQ3NzQ2xhc3MFLHBiLTEgcHQtMCBwdC1zbS0xIG9yZGVyLXNtLTIgY29sIE5vdExvZ2dlZEluHgRfIVNCAgJkZAIND2QWAgIDDxYCHwAFhAY8ZGl2IHN0eWxlPSJwYWRkaW5nOjZweDtmb250LXNpemU6MC44cmVtO2xpbmUtaGVpZ2h0OjEuMjsiIGNsYXNzPSJiZWxvdy1oMS10ZXh0LWxpbmstYWQgZC1taW5pbWFsLW5vbmUiPjxhIHN0eWxlPSJmb250LXdlaWdodDo3MDA7IGNvbG9yOnZhcigtLXdoaXRlKTsiIHRhcmdldD0iX2JsYW5rIiByZWw9InNwb25zb3JlZCBub29wZW5lciIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vc2NyaXB0cy9yZWRpcmVjdC5hc3B4P1RyaWdnZXJlZENhbXBhaWduSUQ9MTA3NzQmVXNlcklEPTAmUGxhY2VtZW50PU5hdGl2ZURpc3BsYXkmU291cmNlPU5hdGl2ZURpc3BsYXkmaW50ZXJzdGl0aWFsPTEmbm9za2lwPTEiPuKGkiAqKipUT0RBWSBPTkxZKioqIFRoZSB3aW5uZXIgb2YgdGhlIG5leHQgY3J5cHRvIGJ1bGwgcnVuPzwvYT4gPHNwYW4gc3R5bGU9ImNvbG9yOnZhcigtLXdoaXRlKTsiPiA8c3BhbiBjbGFzcz0icGwtMSBkLW5vbmUgZC1zbS1pbmxpbmUtYmxvY2siPihGcm9tIFdlaXNzIFJhdGluZ3MpPC9zcGFuPiA8c3BhbiBjbGFzcz0iZC1pbmxpbmUgZC1zbS1ub25lIj4oQWQpPC9zcGFuPjwvc3Bhbj48aW1nIGxvYWRpbmc9J2xhenknIHNyYz0naHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vc2NyaXB0cy9UcmlnZ2VyZWRDYW1wYWlnblBpeGVsLmFzaHg/VHJpZ2dlcmVkQ2FtcGFpZ25JRD0xMDc3NCZQbGFjZW1lbnQ9TmF0aXZlRGlzcGxheSZTb3VyY2U9TmF0aXZlRGlzcGxheScgYWx0PScnIGhlaWdodD0nMScgd2lkdGg9JzEnIC8+PC9kaXY+ZAIOD2QWAgIBD2QWBgIDD2QWAgIBD2QWAgIBDxYCHwAFEFMmUCA1MDAgSGVhdCBNYXBkAgcPZBYKAgEPFgIfAAXMFDxkaXYgY2xhc3M9ImNvbC1hdXRvIG9yZGVyLTAgbXQtMyBtdC1sZy0wIG9yZGVyLWxnLTEiPjxkaXYgY2xhc3M9InNoYXJlLWJ1dHRvbi13cmFwcGVyIGQtaW5saW5lLWZsZXggZC1tZC1ub25lIGFsaWduLWl0ZW1zLXN0cmV0Y2ggcHktMCIgaWQ9IndlYlNoYXJlQnV0dG9uV3JhcHBlciI+PGJ1dHRvbiBpZD0id2ViU2hhcmVCdXR0b24iIGNsYXNzPSJ3ZWItc2hhcmUtYnV0dG9uIGJ0biBidG4tc2Vjb25kYXJ5IGQtYmxvY2sgdGV4dC1jZW50ZXIgdGV4dC1zbS1sZWZ0IiB0eXBlPSJidXR0b24iIGRpc2FibGVkIHRpdGxlPSJTaGFyZSBGcmVlIFN0b2NrIE1hcmtldCBIZWF0IE1hcCB8IFMmUCA1MDAgUGVyZm9ybWFuY2UgdmlhIEhlYXQgTWFwIj48c3BhbiBjbGFzcz0iZmEtcmVndWxhciBmYS1zaGFyZS1ub2RlcyI+PC9zcGFuPjxzcGFuIGNsYXNzPSJzaGFyZS10aXRsZSI+IFNoYXJlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQ+Y29uc3Qgc2hhcmVPcHRzID0ge3RpdGxlOidGcmVlIFN0b2NrIE1hcmtldCBIZWF0IE1hcCB8IFNcdTAwMjZQIDUwMCBQZXJmb3JtYW5jZSB2aWEgSGVhdCBNYXAnLHRleHQ6JycsdXJsOidodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9tYXJrZXQtZGF0YS9zZWN0b3ItcGVyZm9ybWFuY2UvP3Y9MjAyNDExMzAwNTMwJ307PC9zY3JpcHQ+PC9kaXY+PGRpdiBjbGFzcz0ic2hhcmUtYnV0dG9uLXdyYXBwZXIgZC1ub25lIGQtbWQtaW5saW5lLWZsZXggYWxpZ24taXRlbXMtc3RyZXRjaCBweS0wIiBpZD0ic2hhcmVCdXR0b25XcmFwcGVyIj48ZGl2IGlkPSJzaGFyZUJ1dHRvbkRpdiIgY2xhc3M9InNoYXJlLWJ1dHRvbiBwb3NpdGlvbi1yZWxhdGl2ZSI+PGJ1dHRvbiBpZD0ic2hhcmVCdXR0b24iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBzaGFyZS1idXR0b24gbWItMSBtYi1zbS0wIG1yLTIgIGQtYmxvY2sgdGV4dC1jZW50ZXIiIHR5cGU9ImJ1dHRvbiIgdGl0bGU9IlNoYXJlIEZyZWUgU3RvY2sgTWFya2V0IEhlYXQgTWFwIHwgUyZQIDUwMCBQZXJmb3JtYW5jZSB2aWEgSGVhdCBNYXAiIGRhdGEtdG9nZ2xlPSJtb2RhbCIgZGF0YS10YXJnZXQ9IiNQYW5lbFNoYXJlIj48c3BhbiBjbGFzcz0iZmEtcmVndWxhciBmYS1zaGFyZS1ub2RlcyI+PC9zcGFuPjxzcGFuIGNsYXNzPSJzaGFyZS10aXRsZSI+IFNoYXJlPC9zcGFuPjwvYnV0dG9uPjwvZGl2PjwvZGl2PjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgbWwtMSBhbGlnbi10b3AiIGRhdGEtdG9nZ2xlPSJtb2RhbCIgZGF0YS10YXJnZXQ9IiNQYW5lbFNoYXJlSW1hZ2UiPjxzcGFuIGNsYXNzPSJmYS1yZWd1bGFyIGZhLXJlY3RhbmdsZS1oaXN0b3J5LWNpcmNsZS1wbHVzIG1yLTIiPjwvc3Bhbj5TaGFyZSBJbWFnZTwvYnV0dG9uPjxiciAvPjwvZGl2PjxkaXYgaWQ9IlBhbmVsU2hhcmVJbWFnZSIgY2xhc3M9Im1vZGFsIiB0YWJpbmRleD0iLTEiIHJvbGU9ImRpYWxvZyIgPjxkaXYgY2xhc3M9Im1vZGFsLWRpYWxvZyBtb2RhbC1kaWFsb2ctY2VudGVyZWQiIHJvbGU9ImRvY3VtZW50Ij48ZGl2IGNsYXNzPSJtb2RhbC1jb250ZW50Ij48ZGl2IGNsYXNzPSJtb2RhbC10aXRsZSBwLTMgaDMgbS0wIHRleHQtY2VudGVyIj5TaGFyZSBUaGlzIEZyZWUgU3RvY2sgTWFya2V0IEhlYXQgTWFwIHwgUyZQIDUwMCBQZXJmb3JtYW5jZSB2aWEgSGVhdCBNYXA8L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij48aW1nIGFsdD0iRnJlZSBTdG9jayBNYXJrZXQgSGVhdCBNYXAgfCBTJlAgNTAwIFBlcmZvcm1hbmNlIHZpYSBIZWF0IE1hcCBmcm9tIE1hcmtldEJlYXQgb24gMTEvMzAvMjAyNCIgc3JjPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9zY3JpcHRzL3RlbXAvc2VjdG9yLXBlcmZvcm1hbmNlLW1hcC1TUDUwMC13aWRlLnBuZz90PTIwMjQxMTMwMDUzMCIgZGVjb2Rpbmc9ImFzeW5jIiBsb2FkaW5nPSJsYXp5Ij48cCBzdHlsZT0ibWFyZ2luOiAxMHB4IDAgNXB4IDA7IiBvbmNsaWNrPSJjb3B5VGV4dFRvQ2xpcGJvYXJkKCZhcG9zO2h0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL3NjcmlwdHMvdGVtcC9zZWN0b3ItcGVyZm9ybWFuY2UtbWFwLVNQNTAwLXdpZGUucG5nP3Q9MjAyNDExMzAwNTMwJmFwb3M7KSI+Q29weSB0aGlzIGxpbmsgdG8gc2hhcmU6PC9wPjxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0ianMtY29weXRleHRhcmVhIiBzdHlsZT0iZm9udC1zaXplOjEycHgiIHZhbHVlPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9zY3JpcHRzL3RlbXAvc2VjdG9yLXBlcmZvcm1hbmNlLW1hcC1TUDUwMC13aWRlLnBuZz90PTIwMjQxMTMwMDUzMCIgYXJpYS1sYWJlbD0iQ29weSB0aGlzIGxpbmsgdG8gc2hhcmUiLz48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1mb290ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciI+PGlucHV0IHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSIgaWQ9ImNsaWNrdG9jb3B5YnV0dG9uIiBvbmNsaWNrPSJjbGlja3RvY29weSgpOyIgdmFsdWU9IkNsaWNrIHRvIENvcHkiLz48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9Im1vZGFsLWJ1dHRvbiBidG4gYnRuLXNlY29uZGFyeSIgZGF0YS1kaXNtaXNzPSJtb2RhbCI+Q2FuY2VsPC9idXR0b24+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+ZAIDDxYCHwAFwAU8ZGl2IGNsYXNzPSJzZWN0aW9uLWhlYWRpbmciPjxoMiBjbGFzcz0iZm9udC13ZWlnaHQtYm9sZCI+TW9yZSBQZXJmb3JtYW5jZSBNYXBzPC9oMj48L2Rpdj48dWwgY2xhc3M9ImxpbmstY2xvdWQgbWItMyBweC0wIGxpc3Qtc3R5bGUtbm9uZSI+PGxpIGNsYXNzPSJkLWlubGluZS1ibG9jayI+PGEgaHJlZj0iL21hcmtldC1kYXRhL3NlY3Rvci1wZXJmb3JtYW5jZS8iIGNsYXNzPSJidG4gYnRuLXByaW1hcnkiPlUuUy4gU2VjdG9yIFBlcmZvcm1hbmNlIE1hcDwvYT48L2xpPjxsaSBjbGFzcz0iZC1pbmxpbmUtYmxvY2siPjxhIGhyZWY9Ii9tYXJrZXQtZGF0YS9zZWN0b3ItcGVyZm9ybWFuY2UvY2FuYWRhLyIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5Ij5DYW5hZGlhbiBTZWN0b3IgUGVyZm9ybWFuY2UgTWFwPC9hPjwvbGk+PGxpIGNsYXNzPSJkLWlubGluZS1ibG9jayI+PGEgaHJlZj0iL21hcmtldC1kYXRhL3NlY3Rvci1wZXJmb3JtYW5jZS91ay8iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSI+VS5LLiBTZWN0b3IgUGVyZm9ybWFuY2UgTWFwPC9hPjwvbGk+PGxpIGNsYXNzPSJkLWlubGluZS1ibG9jayI+PGEgaHJlZj0iL21hcmtldC1kYXRhL3NlY3Rvci1wZXJmb3JtYW5jZS9jcnlwdG9jdXJyZW5jaWVzLyIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5Ij5DcnlwdG9jdXJyZW5jeSBQZXJmb3JtYW5jZSBNYXA8L2E+PC9saT48L3VsPmQCBQ8WAh8ABZ+XATxkaXYgY2xhc3M9IiI+PGJyLz48ZGl2IHN0eWxlPSJoZWlnaHQ6OTBweDt3aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbjsiPjxpbnMgY2xhc3M9ImFkc2J5Z29vZ2xlIiBzdHlsZT0iZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTAwJTtoZWlnaHQ6OTBweCIgZGF0YS1hZC1jbGllbnQ9ImNhLXB1Yi05MzczMTYyNjExMjgzOTM1IiBkYXRhLWFkLXNsb3Q9Ijk3OTk3NzAxMDgiPjwvaW5zPjxzY3JpcHQ+KGFkc2J5Z29vZ2xlID0gd2luZG93LmFkc2J5Z29vZ2xlIHx8IFtdKS5wdXNoKHt9KTs8L3NjcmlwdD48L2Rpdj48ZGl2IHN0eWxlPSJib3JkZXItdG9wOjFweCBzb2xpZCAjMzMzO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICMzMzM7cGFkZGluZy10b3A6MjVweDtwYWRkaW5nLWJvdHRvbToyNXB4O21hcmdpbi10b3A6MzBweDsiPjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5kb2N1bWVudC53cml0ZSgnPGEgc3R5bGU9InRleHQtZGVjb3JhdGlvbjpub25lO2ZvbnQtd2VpZ2h0OmJvbGQ7Y29sb3I6IzQ0NDtmb250LXNpemU6MThwdDsiIHRhcmdldD0iX2JsYW5rIiByZWw9InNwb25zb3JlZCBub29wZW5lciIgaHJlZj0iaHR0cHM6Ly93d3cubWFyJyArICdrZXRiZWF0LmNvbS9zY3JpcHRzL3JlZGlyZWN0LmFzcHg/VHJpZ2dlcmVkQ2FtcGFpZ25JRD0xMDc3NCZVc2VySUQ9MCZQbGFjZW1lbnQ9TmF0aXZlRGlzcGxheSZTb3VyY2U9TmF0aXZlRGlzcGxheSZpbnRlcnN0aXRpYWw9MSZub3NraXA9MSI+KioqVE9EQVkgT05MWSoqKiBUaGUgd2lubmVyIG9mIHRoZSBuZXh0IGNyeXB0byBidWxsIHJ1bj88L2E+Jyk7PC9zY3JpcHQ+IDxzcGFuIHN0eWxlPSJmb250LXNpemU6MTBwdDtmb250LXdlaWdodDpub3JtYWw7Y29sb3I6IzQ0NDsiPihBZCk8L3NwYW4+PGJyLz48cCBzdHlsZT0idGV4dC1hbGlnbjpsZWZ0Ij48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+ZG9jdW1lbnQud3JpdGUoJzxhIHN0eWxlPSJ0ZXh0LWRlY29yYXRpb246bm9uZTtmb250LXdlaWdodDpub3JtYWw7Y29sb3I6IzY5Njk2OTsiIHRhcmdldD0iX2JsYW5rIiByZWw9InNwb25zb3JlZCBub29wZW5lciIgaHJlZj0iaHR0cHM6Ly93d3cubWFyJyArICdrZXRiZWF0LmNvbS9zY3JpcHRzL3JlZGlyZWN0LmFzcHg/VHJpZ2dlcmVkQ2FtcGFpZ25JRD0xMDc3NCZVc2VySUQ9MCZQbGFjZW1lbnQ9TmF0aXZlRGlzcGxheSZTb3VyY2U9TmF0aXZlRGlzcGxheSZpbnRlcnN0aXRpYWw9MSZub3NraXA9MSI+Jyk7PC9zY3JpcHQ+RG9uYWxkIFRydW1wIGlzIGFib3V0IHRvIHNlbmQgY3J5cHRvICJ0byB0aGUgbW9vbi4iDQoNCkNyeXB0byBleHBlcnQgSnVhbiBWaWxsYXZlcmRlIHNheXMgdGhpcyBjb3VsZCBiZSB0aGUgc3RhcnQgb2YgdGhlIGdyZWF0ZXN0IGJ1bGwgbWFya2V0IGluIGNyeXB0byBoaXN0b3J5Lg0KDQpOb3cgeW91IGNhbiBsZWFybiBob3cgdG8gcGxheSBpdCB3aXRoIHRoaXMgZXhjbHVzaXZlIG9mZmVyLiBBbmQgaXQgaXNuJ3QgQml0Y29pbi48L2E+PC9wPjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5kb2N1bWVudC53cml0ZSgnPGEgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ic3BvbnNvcmVkIG5vb3BlbmVyIiBzdHlsZT0iZm9udC13ZWlnaHQ6bm9ybWFsOyIgaHJlZj0iaHR0cHM6Ly93d3cubWFyJyArICdrZXRiZWF0LmNvbS9zY3JpcHRzL3JlZGlyZWN0LmFzcHg/VHJpZ2dlcmVkQ2FtcGFpZ25JRD0xMDc3NCZVc2VySUQ9MCZQbGFjZW1lbnQ9TmF0aXZlRGlzcGxheSZTb3VyY2U9TmF0aXZlRGlzcGxheSZpbnRlcnN0aXRpYWw9MSZub3NraXA9MSI+Tm93IHlvdSBjYW4gbGVhcm4gd2hhdCBpdCBpcyB2aWEgdGhpcyBleGNsdXNpdmUsIGxpbWl0ZWQgdGltZSBvZmZlci48L2E+Jyk7PC9zY3JpcHQ+PGltZyBsb2FkaW5nPSdsYXp5JyBzcmM9J2h0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL3NjcmlwdHMvVHJpZ2dlcmVkQ2FtcGFpZ25QaXhlbC5hc2h4P1RyaWdnZXJlZENhbXBhaWduSUQ9MTA3NzQmUGxhY2VtZW50PU5hdGl2ZURpc3BsYXkmU291cmNlPU5hdGl2ZURpc3BsYXknIGFsdD0nJyBoZWlnaHQ9JzEnIHdpZHRoPScxJyAvPjwvZGl2PjxkaXYgY2xhc3M9ImFuY2hvci1saW5rLXRhcmdldC13aXRoLWFkIHctMTAwIiBpZD0id2hhdC1pcy10aGUtcy1hbmQtcC01MDAtYW5kLWhvdy1pdC1pcy1kaXN0aW5jdC1mcm9tLW90aGVyLWluZGV4ZXMiPjxkaXYgY2xhc3M9InJvdyBkLWJsb2NrIGQtbGctZmxleCBtdC0xIiBpZD0icGxhY2VkLWFydGljbGUiIHN0eWxlPSJoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsiID48ZGl2IGNsYXNzPSJjb2wtMTIgcGxhY2VkLWFydGljbGUiPjxoMiBjbGFzcz0iYy1kYXJrLWJsdWUiPldoYXQgaXMgdGhlIFMmUCA1MDAgYW5kIEhvdyBJdCBpcyBEaXN0aW5jdCBmcm9tIE90aGVyIEluZGV4ZXM8L2gyPjxkaXYgc3R5bGU9InBhZGRpbmc6OHB4O2ZvbnQtc2l6ZToxLjEzcmVtO2xpbmUtaGVpZ2h0OjEuMmVtOyI+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPmRvY3VtZW50LndyaXRlKCc8YSBzdHlsZT0idGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtmb250LXdlaWdodDpub3JtYWw7IGNvbG9yOiB2YXIoLS1ibHVlLTgpOyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ic3BvbnNvcmVkIG5vb3BlbmVyIiBocmVmPSJodHRwczovL3d3dy5tYXInICsgJ2tldGJlYXQuY29tL3NjcmlwdHMvcmVkaXJlY3QuYXNweD9UcmlnZ2VyZWRDYW1wYWlnbklEPTEwNzc0JlVzZXJJRD0wJlBsYWNlbWVudD1OYXRpdmVEaXNwbGF5JlNvdXJjZT1OYXRpdmVEaXNwbGF5JmludGVyc3RpdGlhbD0xJm5vc2tpcD0xIj7ihpIgKioqVE9EQVkgT05MWSoqKiBUaGUgd2lubmVyIG9mIHRoZSBuZXh0IGNyeXB0byBidWxsIHJ1bj88L2E+IDxzcGFuIHN0eWxlPSJjb2xvcjp2YXIoLS1ncmF5LTgpO2ZvbnQtc2l6ZTowLjc4cmVtOyI+KEFkKTwvc3Bhbj4nKTs8L3NjcmlwdD48aW1nIGxvYWRpbmc9J2xhenknIHNyYz0naHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vc2NyaXB0cy9UcmlnZ2VyZWRDYW1wYWlnblBpeGVsLmFzaHg/VHJpZ2dlcmVkQ2FtcGFpZ25JRD0xMDc3NCZQbGFjZW1lbnQ9TmF0aXZlRGlzcGxheSZTb3VyY2U9TmF0aXZlRGlzcGxheScgYWx0PScnIGhlaWdodD0nMScgd2lkdGg9JzEnIC8+PC9kaXY+PGRpdiBjbGFzcz0iYnlsaW5lLXJvdyB3LTEwMCBtdC0yIG10LW1kLTAgbWItMiI+PGRpdiBjbGFzcz0iYnlsaW5lLXJvdy13cmFwIGQtZmxleCBmbGV4LXdyYXAganVzdGlmeS1jb250ZW50LWJldHdlZW4ganVzdGlmeS1jb250ZW50LXNtLXN0YXJ0IGFsaWduLWl0ZW1zLWNlbnRlciI+PGRpdiBjbGFzcz0iYnlsaW5lLXRleHQgZmxleC1ncm93LTEgZC1mbGV4IGZsZXgtd3JhcCBhbGlnbi1pdGVtcy1jZW50ZXIgIj48ZGl2IHN0eWxlPSJsaW5lLWhlaWdodDoxZW07Ij48ZGl2IGNsYXNzPSJmb250LXNtYWxsIGZvbnQtd2VpZ2h0LWJvbGQiPldyaXR0ZW4gYnkgPGEgaHJlZj0iL2F1dGhvcnMvIj5NYXJrZXRCZWF0IFN0YWZmPC9hPjwvZGl2PjxkaXYgY2xhc3M9ImQtYmxvY2sgYy1ncmF5LTggZm9udC1zbWFsbGVyIj5VcGRhdGVkIEF1Z3VzdCAxNiwgMjAyMjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImFydGljbGUtaW1hZ2UgbWItMyBib3JkZXIiPjxpbWcgIHNyYz0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbG9nb3MvYXJ0aWNsZXMvc3RvY2staW1hZ2VfMjYwMjYxMzQyX1MuanBnIiBhbHQ9IldoYXQgaXMgdGhlIFMmYW1wO1AgNTAwIGFuZCBIb3cgSXQgaXMgRGlzdGluY3QgZnJvbSBPdGhlciBJbmRleGVzIiBkZWNvZGluZz0iYXN5bmMiIGxvYWRpbmc9ImxhenkiIGhlaWdodD0iOTAwIiB3aWR0aD0iMTIwMCIgY2xhc3M9ImFydGljbGUtaW1hZ2Utb25lIiAvPjwvZGl2PjxkaXYgaWQ9ImFydGljbGUtd3JhcHBlciI+PGRpdiBjbGFzcz0iYXJ0aWNsZS1wYWdlIGJvZHktY29weSBsaC1sb29zZSI+PHVsIGlkPSJhcnRpY2xlLWNvbnRlbnRzIiBjbGFzcz0iYmctbGlnaHQtZ3JheSI+PGxpIGNsYXNzPSJtYi0xIj48YSBjbGFzcz0ibm91bmRlcmxpbmUiIGhyZWY9IiN3aHktaXMtdGhlLXNhbXBwLTUwMC1pbmRleC1pbXBvcnRhbnQiPldoeSBpcyB0aGUgUyZhbXA7UCA1MDAgSW5kZXggSW1wb3J0YW50PzwvYT48L2xpPjxsaSBjbGFzcz0ibWItMSI+PGEgY2xhc3M9Im5vdW5kZXJsaW5lIiBocmVmPSIjaG93LWFyZS10aGUtY29tcGFuaWVzLWluLXRoZS1zYW1wcC01MDAtc2VsZWN0Ij5Ib3cgQXJlIHRoZSBDb21wYW5pZXMgaW4gdGhlIFMmYW1wO1AgNTAwIFNlbGVjdGVkPzwvYT48L2xpPjxsaSBjbGFzcz0ibWItMSI+PGEgY2xhc3M9Im5vdW5kZXJsaW5lIiBocmVmPSIjd2hhdC1zZWN0b3JzLWFyZS1pbmNsdWRlZC1pbi10aGUtc2FtcHAtNTAwLWluIj5XaGF0IFNlY3RvcnMgYXJlIEluY2x1ZGVkIGluIHRoZSBTJmFtcDtQIDUwMCBJbmRleDwvYT48L2xpPjxsaSBjbGFzcz0ibWItMSI+PGEgY2xhc3M9Im5vdW5kZXJsaW5lIiBocmVmPSIjd2h5LXNlY3Rvci13ZWlnaHRpbmctbWF0dGVycyI+V2h5IFNlY3RvciBXZWlnaHRpbmcgTWF0dGVyczwvYT48L2xpPjxsaSBjbGFzcz0ibWItMSI+PGEgY2xhc3M9Im5vdW5kZXJsaW5lIiBocmVmPSIjaG93LWlzLXRoZS1zYW1wcC01MDAtZGlmZmVyZW50LWZyb20tdGhlLWRvdy1qIj5Ib3cgaXMgdGhlIFMmYW1wO1AgNTAwIERpZmZlcmVudCBmcm9tIHRoZSBEb3cgSm9uZXMgSW5kdXN0cmlhbCBJbmRleD88L2E+PC9saT48bGkgY2xhc3M9Im1iLTEiPjxhIGNsYXNzPSJub3VuZGVybGluZSIgaHJlZj0iI2hvdy1pcy10aGUtc2FtcHAtNTAwLWRpZmZlcmVudC1mcm9tLXRoZS1uYXNkYSI+SG93IGlzIHRoZSBTJmFtcDtQIDUwMCBEaWZmZXJlbnQgZnJvbSB0aGUgTkFTREFRIEluZGV4PzwvYT48L2xpPjxsaSBjbGFzcz0ibWItMSI+PGEgY2xhc3M9Im5vdW5kZXJsaW5lIiBocmVmPSIjaG93LXRvLXVzZS10aGUtc2FtcHAtNTAwLWhlYXQtbWFwIj5Ib3cgdG8gVXNlIHRoZSBTJmFtcDtQIDUwMCBIZWF0IE1hcDwvYT48L2xpPjwvdWw+PHAgY2xhc3M9Im10LTAiPlRoZSBTdGFuZGFyZCBhbmQgUG9vciZyc3F1bztzIChTJmFtcDtQKSA1MDAgaW5kZXggaXMgYSB3aWRlbHkgdXNlZCBzdG9jayBtYXJrZXQgaW5kZXguIFRoZSBpbmRleCB0cmFja3MgdGhlIHN0b2NrIHByaWNlIHBlcmZvcm1hbmNlIG9mIDUwMCBjb21wYW5pZXMgd2l0aCBhIG1hcmtldCBjYXBpdGFsaXphdGlvbiBvZiBvdmVyICQxMCBiaWxsaW9uIChpLmUuIHRoZXkgYXJlIGxhcmdlIGNhcCBjb21wYW5pZXMpLjwvcD48ZGl2IGl0ZW1zY29wZT0iIiBpdGVtdHlwZT0iaHR0cHM6Ly9zY2hlbWEub3JnL0ZBUVBhZ2UiPg0KDQo8cD5UaGUgUyZhbXA7UCA1MDAgSW5kZXggaXMgb25lIG9mIHRoZSAmbGRxdW87YmlnIHRocmVlJnJkcXVvOyBpbmRpY2VzIGFsb25nIHdpdGggdGhlIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL21hcmtldC1pbmRleGVzL0RKSS8iPkRvdyBKb25lcyBJbmR1c3RyaWFsIEF2ZXJhZ2UgKERKSUEpPC9hPiBhbmQgdGhlIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL21hcmtldC1pbmRleGVzL1FRUS8iPk5BU0RBUTwvYT4uIEhvd2V2ZXIsIHRoZSBTJmFtcDtQIDUwMCBpbmRleCBpcyBvZnRlbiBmb3VuZCB0byBiZSBhIG1vcmUgcmVsaWFibGUgaW5kaWNhdG9yIGJlY2F1c2UgaXQgaXMgYW4gYWN0aXZlbHkgbWFuYWdlZCBpbmRleC4gVGhpcyBtZWFucyB0aGF0IHRoZSBjb21taXR0ZWUgdGhhdCBzZWxlY3RzIHRoZSBzdG9ja3MgZm9yIGluY2x1c2lvbiBpbiB0aGUgUyZhbXA7UCA1MDAgY2FuLCBhbmQgaGFzLCBhZGRlZCBhbmQgcmVtb3ZlZCBzdG9ja3MgZnJvbSB0aGUgaW5kZXggYmFzZWQgb24gdGhlIGNvbXBhbnkmcnNxdW87cyBwZXJmb3JtYW5jZS4mbmJzcDs8L3A+DQo8cD5UaGlzIGFydGljbGUgcHJvdmlkZXMgYSBicm9hZCBvdmVydmlldyBvZiB0aGUgUyZhbXA7UCA1MDAgSW5kZXguIFRoZSB0b3BpY3MgaXQgY292ZXJzIGluY2x1ZGVzIGhvdyB0aGUgY29tcG9uZW50cyBvZiB0aGUgUyZhbXA7UCA1MDAgYXJlIHNlbGVjdGVkIGFuZCB3aGF0IHNlY3RvcnMgbWFrZSB1cCB0aGUgaW5kZXguIFRoZSBhcnRpY2xlIGFsc28gaG93IHRoZSBTJmFtcDtQIDUwMCBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgRG93IEpvbmVzIEluZHVzdHJpYWwgQXZlcmFnZSAoREpJQSksIHRoZSBOQVNEQVEsIGFuZCB0aGUgUnVzc2VsbCBpbmRleGVzLiBBdCB0aGUgZW5kIG9mIHRoZSBhcnRpY2xlLCB3ZSZyc3F1bztsbCBleHBsYWluIGhvdyBpbnZlc3RvcnMgY2FuIHVzZSB0aGUgUyZhbXA7UCA1MDAgSGVhdCBNYXAgYXMgcGFydCBvZiB0aGVpciBkdWUgZGlsaWdlbmNlLjwvcD4NCjxkaXYgaXRlbXNjb3BlIGl0ZW1wcm9wPSJtYWluRW50aXR5IiBpdGVtdHlwZT0iaHR0cHM6Ly9zY2hlbWEub3JnL1F1ZXN0aW9uIj48aDMgaWQ9IndoeS1pcy10aGUtc2FtcHAtNTAwLWluZGV4LWltcG9ydGFudCIgaXRlbXByb3A9Im5hbWUgdGV4dCI+V2h5IGlzIHRoZSBTJmFtcDtQIDUwMCBJbmRleCBJbXBvcnRhbnQ/PC9oMz48ZGl2IGl0ZW1wcm9wPSJhY2NlcHRlZEFuc3dlciIgaXRlbXNjb3BlIGl0ZW10eXBlPSJodHRwczovL3NjaGVtYS5vcmcvQW5zd2VyIj48ZGl2IGl0ZW1wcm9wPSJ0ZXh0Ij4NCjxwPlRoZSBTJmFtcDtQIDUwMCBJbmRleCAoU1BYKSBpcyB3aWRlbHkgcmVnYXJkZWQgYW1vbmcgaW5zdGl0dXRpb25hbCBpbnZlc3RvcnMgYXMgYSBsZWFkaW5nIGluZGljYXRvciBmb3IgdHJhY2tpbmcgY2hhbmdlcyBpbiB0aGUgZWNvbm9teS4gSXQgaXMgYWxzbyBhIHJlY29nbml6ZWQgd2F5IGZvciBpbnZlc3RvcnMgdG8gZ2V0IGV4cG9zdXJlIHRvIGEgYnJvYWQgY3Jvc3Mtc2VjdGlvbiBvZiB0aGUgVS5TLiBlY29ub215LiBUaGUgaW5kZXggd2FzIGNyZWF0ZWQgaW4gMTk1NyBhbmQgZXZlciBzaW5jZSBoYXMgc2hvd24gdG8gY29uc2lzdGVudGx5IG91dHBlcmZvcm0gb3RoZXIgYXNzZXQgY2xhc3Nlcy48L3A+DQo8cD5BcyBvZiBBdWd1c3QgMjAyMiwgdGhlIGNvbWJpbmVkIG1hcmtldCBjYXAgb2YgYWxsIHRoZSBjb21wYW5pZXMgaW4gdGhlIFMmYW1wO1AgNTAwIGluZGV4IHRvdGFscyBvdmVyICQzNiB0cmlsbGlvbi4gVGhlIHRvdGFsIG1hcmtldCBjYXAgaXMgYXJyaXZlZCBhdCBieSBzaW1wbHkgdG90YWxpbmcgdGhlIG1hcmtldCBjYXAgb2YgZXZlcnkgaW5kaXZpZHVhbCBjb21wb25lbnQgb2YgdGhlIGluZGV4LjwvcD4NCjxwPlRoZSBTJmFtcDtQIDUwMCBpbmRleCBjb3ZlcnMgYWxsIG1ham9yIHNlY3RvcnMgb2YgVS5TLiBjb21wYW5pZXMsIGl0IGlzIGdlbmVyYWxseSBjb25zaWRlcmVkIHRvIGJlIHRoZSBiZW5jaG1hcmsgdGhhdCBtb3N0IGVxdWl0eSBtYW5hZ2VycyBhcmUgbWVhc3VyZWQgYWdhaW5zdC4gQWx0aG91Z2ggZXZlcnkgY29tcGFueSBpbiB0aGUgUyZhbXA7UCA1MDAgaXMgaGVhZHF1YXJ0ZXJlZCBpbiB0aGUgVW5pdGVkIFN0YXRlcywgdGhlIGNvbXBhbmllcyBhcmUgaW50ZXJuYXRpb25hbCBjb21wYW5pZXMgd2l0aCByZXZlbnVlIGNvbWluZyBpbiBmcm9tIGFsbCBvdmVyIHRoZSB3b3JsZC4gVGhpcyBhZGRzIHRvIHRoZSBkaXZlcnNpZmljYXRpb24gb2YgdGhlIGluZGV4LjwvcD4NCjxwPkhvd2V2ZXIsIHVubGlrZSBvdGhlciBzdG9jayBpbmRleGVzIHRoYXQgYmFzZSB0aGVpciBzZWxlY3Rpb24gb2YgY29tcG9zaXRlIGNvbXBhbmllcyBleGNsdXNpdmVseSBvbiBhIGRlZmluZWQgc2V0IG9mIHJ1bGVzLCB0aGUgUyZhbXA7UCBpbmRleCBpcyBhY3RpdmVseSBtYW5hZ2VkLCBtZWFuaW5nIHRoYXQgdGhlIGNvbW1pdHRlZSBoYXMgc29tZSBkaXNjcmV0aW9uIGluIHRoZSBzdG9ja3MgdGhleSBzZWxlY3QuIFRoaXMgYWxsb3dzIHRoZSBjb21taXR0ZWUgdG8gcmVzcG9uZCwgYXMgbmVlZGVkLCB0byBtYXJrZXQgZXZlbnRzLjwvcD4NCjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgaXRlbXNjb3BlIGl0ZW1wcm9wPSJtYWluRW50aXR5IiBpdGVtdHlwZT0iaHR0cHM6Ly9zY2hlbWEub3JnL1F1ZXN0aW9uIj48aDMgaWQ9Imhvdy1hcmUtdGhlLWNvbXBhbmllcy1pbi10aGUtc2FtcHAtNTAwLXNlbGVjdCIgaXRlbXByb3A9Im5hbWUgdGV4dCI+SG93IEFyZSB0aGUgQ29tcGFuaWVzIGluIHRoZSBTJmFtcDtQIDUwMCBTZWxlY3RlZD88L2gzPjxkaXYgaXRlbXByb3A9ImFjY2VwdGVkQW5zd2VyIiBpdGVtc2NvcGUgaXRlbXR5cGU9Imh0dHBzOi8vc2NoZW1hLm9yZy9BbnN3ZXIiPjxkaXYgaXRlbXByb3A9InRleHQiPg0KPHA+VGhlIGNvbXBhbmllcyB0aGF0IG1ha2UgdXAgdGhlIFMmYW1wO1AgNTAwIGluZGV4IGFyZSBzZWxlY3RlZCBieSBhIHNlbGVjdCBncm91cCBvZiBtYXJrZXQgcHJvZmVzc2lvbmFscyBrbm93biBhcyB0aGUgSW5kZXggQ29tbWl0dGVlLiBBbHRob3VnaCBjb21tb25seSBzZWVuIGFzIGEgbWVhc3VyZSBvZiBtYXJrZXQgcGVyZm9ybWFuY2UsIHRoZSBvYmplY3RpdmUgb2YgdGhlIGluZGV4IGlzIHRvIHByb3ZpZGUgYW4gYWNjdXJhdGUgcGljdHVyZSBvZiB3aGF0IGlzIGdvaW5nIG9uIGluIHRoZSBtYXJrZXQuPC9wPg0KPHA+SW4gYWRkaXRpb24gdG8gY2hvb3NpbmcgbGFyZ2UgY2FwIHN0b2NrcywgY29tcGFuaWVzIG11c3QgbWVldCBjZXJ0YWluIHNlbGVjdGlvbiBjcml0ZXJpYSBpbmNsdWRpbmc6PC9wPg0KPHVsPg0KPGxpPkEgbWluaW11bSBtYXJrZXQgY2FwaXRhbGl6YXRpb24gKCQxMy4xIGJpbGxpb24gYXMgb2YgQXVndXN0IDIwMjIpPC9saT4NCjxsaT5BIHB1YmxpYyBmbG9hdCBvZiBhdCBsZWFzdCA1MCUuIFRoaXMgbWVhbnMgdGhhdCBhdCBsZWFzdCA1MCUgb2YgYSBjb21wYW55JnJzcXVvO3Mgc3RvY2sgaXMgYXZhaWxhYmxlIHRvIHRoZSBwdWJsaWMgYW5kIGl0IGhhcyBhIHN0b2NrIHByaWNlIG9mIGF0IGxlYXN0ICQxIHBlciBzaGFyZS48L2xpPg0KPGxpPlRoZXkgbXVzdCBmaWxlIGEgMTAtSyBhbm51YWwgcmVwb3J0PC9saT4NCjxsaT5BdCBsZWFzdCA1MCUgb2YgdGhlaXIgZml4ZWQgYXNzZXRzIGFuZCByZXZlbnVlcyBtdXN0IGJlIGluIHRoZSBVbml0ZWQgU3RhdGVzPC9saT4NCjxsaT5UaGV5IG11c3QgaGF2ZSByZXBvcnRlZCBwb3NpdGl2ZSBlYXJuaW5ncyBmb3IgdGhlIG1vc3QgcmVjZW50IGZvdXIgcXVhcnRlcnM8L2xpPg0KPGxpPlRoZXkgbXVzdCBoYXZlIGFkZXF1YXRlIGxpcXVpZGl0eSBhcyBtZWFzdXJlZCBieSBwcmljZSBhbmQgdm9sdW1lPC9saT4NCjwvdWw+DQo8cD5UaGUgY29tbWl0dGVlIHJlYmFsYW5jZXMgdGhlIGluZGV4IGV2ZXJ5IHF1YXJ0ZXIgKE1hcmNoLCBKdW5lLCBTZXB0ZW1iZXIsIGFuZCBEZWNlbWJlcikuPC9wPg0KPC9kaXY+PC9kaXY+PC9kaXY+PGgzIGlkPSJ3aGF0LXNlY3RvcnMtYXJlLWluY2x1ZGVkLWluLXRoZS1zYW1wcC01MDAtaW4iPldoYXQgU2VjdG9ycyBhcmUgSW5jbHVkZWQgaW4gdGhlIFMmYW1wO1AgNTAwIEluZGV4PC9oMz4NCjxwPlRoZSBTJmFtcDtQIDUwMCBjb25zaXN0cyBvZiB0aGUgbGFyZ2VzdCBzZWN0b3JzIGluIHRoZSBicm9hZGVyIG1hcmtldC4gRWFjaCBzZWN0b3IgY29uc2lzdHMgb2YgbXVsdGlwbGUgaW5kdXN0cmllcyBhbmQgd2l0aGluIHRob3NlIGluZHVzdHJpZXMgdGhlcmUgYXJlIGV2ZW4gbW9yZSBzcGVjaWZpYyBzdWItc2VjdG9ycy4mbmJzcDsgVGhlIGZvbGxvd2luZyBsaXN0IGlzIGFjY3VyYXRlIGFzIG9mIEF1Z3VzdCAyMDIyLjwvcD4NCjx1bD4NCjxsaT48c3Ryb25nPkNvbW11bmljYXRpb24gU2VydmljZXM8L3N0cm9uZz4gLSBUaGlzIHNlY3RvciBtYWtlcyB1cCBhcHByb3hpbWF0ZWx5IDExJSBvZiB0aGUgaW5kZXggYW5kIGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcgaW5kdXN0cmllczogZGl2ZXJzaWZpZWQgdGVsZWNvbW11bmljYXRpb24gc2VydmljZXM7IHdpcmVsZXNzIHRlbGVjb21tdW5pY2F0aW9uIHNlcnZpY2VzOyBlbnRlcnRhaW5tZW50OyBtZWRpYTsgYW5kIGludGVyYWN0aXZlIG1lZGlhICZhbXA7IHNlcnZpY2VzLjwvbGk+DQo8bGk+PHN0cm9uZz5Db25zdW1lciBEaXNjcmV0aW9uYXJ5IDwvc3Ryb25nPi0gVGhpcyBzZWN0b3IgbWFrZXMgdXAgYXBwcm94aW1hdGVseSAxMSUgb2YgdGhlIGluZGV4IGFuZCBpbmNsdWRlcyBpbnRvIHRoZSBmb2xsb3dpbmcgaW5kdXN0cmllczogYXV0b21vYmlsZSBjb21wb25lbnRzOyBhdXRvbW9iaWxlczsgZGlzdHJpYnV0b3JzOyBkaXZlcnNpZmllZCBjb25zdW1lciBzZXJ2aWNlczsgaG90ZWxzLCByZXN0YXVyYW50cyAmYW1wOyBsZWlzdXJlOyBob3VzZWhvbGQgZHVyYWJsZXM7IGxlaXN1cmUgcHJvZHVjdHM7IG11bHRpbGluZSByZXRhaWw7IHNwZWNpYWx0eSByZXRhaWw7IHRleHRpbGUsIGFwcGFyZWwgJmFtcDsgbHV4dXJ5IGdvb2RzOyBhbmQgaW50ZXJuZXQgYW5kIGRpcmVjdCBtYXJrZXRpbmcuPC9saT4NCjxsaT48c3Ryb25nPkNvbnN1bWVyIFN0YXBsZXMgPC9zdHJvbmc+Jm5kYXNoOyBUaGlzIHNlY3RvciBtYWtlcyB1cCBhcHByb3hpbWF0ZWx5IDclIG9mIHRoZSBpbmRleCBhbmQgaW5jbHVkZXMgZm9sbG93aW5nIGluZHVzdHJpZXM6IGJldmVyYWdlczsgZm9vZCAmYW1wOyBzdGFwbGVzIHJldGFpbGluZzsgZm9vZCBwcm9kdWN0czsgaG91c2Vob2xkIHByb2R1Y3RzOyBwZXJzb25hbCBwcm9kdWN0czsgYW5kIHRvYmFjY28uPC9saT4NCjxsaT48c3Ryb25nPkVuZXJneSA8L3N0cm9uZz4mbmRhc2g7IFRoaXMgc2VjdG9yIG1ha2VzIHVwIGFwcHJveGltYXRlbHkgMi41JSBvZiB0aGUgaW5kZXggYW5kIGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcgaW5kdXN0cmllczogZW5lcmd5IGVxdWlwbWVudCAmYW1wOyBzZXJ2aWNlczsgb2lsLCBnYXMgJmFtcDsgY29uc3VtYWJsZSBmdWVscy48L2xpPg0KPGxpPjxzdHJvbmc+RmluYW5jaWFscyA8L3N0cm9uZz4mbmRhc2g7IFRoaXMgc2VjdG9yIG1ha2VzIHVwIGFwcHJveGltYXRlbHkgMTAlIG9mIHRoZSBpbmRleCBhbmQgaW5jbHVkZXMgdGhlIGZvbGxvd2luZyBpbmR1c3RyaWVzOiBiYW5raW5nOyBjYXBpdGFsIG1hcmtldHM7IGNvbnN1bWVyIGZpbmFuY2U7IGRpdmVyc2lmaWVkIGZpbmFuY2lhbCBzZXJ2aWNlczsgaW5zdXJhbmNlOyBtb3J0Z2FnZSByZWFsIGVzdGF0ZSBpbnZlc3RtZW50IHRydXN0cyAoUkVJVHMpOyBhbmQgdGhyaWZ0cyAmYW1wOyBtb3J0Z2FnZSBmaW5hbmNlLjwvbGk+DQo8bGk+PHN0cm9uZz5IZWFsdGggQ2FyZSA8L3N0cm9uZz4mbmRhc2g7IFRoaXMgc2VjdG9yIG1ha2VzIHVwIGFwcHJveGltYXRlbHkgMTQuNSUgb2YgdGhlIGluZGV4IGFuZCBpbmNsdWRlcyB0aGUgZm9sbG93aW5nIGluZHVzdHJpZXM6IGJpb3RlY2hub2xvZ3k7IGhlYWx0aCBjYXJlIGVxdWlwbWVudCAmYW1wOyBzZXJ2aWNlczsgaGVhbHRoIGNhcmUgcHJvdmlkZXJzICZhbXA7IHNlcnZpY2VzOyBoZWFsdGggY2FyZSB0ZWNobm9sb2d5OyBsaWZlIHNjaWVuY2VzIHRvb2xzICZhbXA7IHNlcnZpY2VzOyBhbmQgcGhhcm1hY2V1dGljYWxzLjwvbGk+DQo8bGk+PHN0cm9uZz5JbmR1c3RyaWFscyA8L3N0cm9uZz4mbmRhc2g7IFRoaXMgc2VjdG9yIG1ha2VzIHVwIGFwcHJveGltYXRlbHkgOCUgb2YgdGhlIGluZGV4IGFuZCBpbmNsdWRlcyB0aGUgZm9sbG93aW5nIGluZHVzdHJpZXM6IGFlcm9zcGFjZSAmYW1wOyBkZWZlbnNlOyBhaXIgZnJlaWdodCAmYW1wOyBsb2dpc3RpY3M7IGFpcmxpbmVzOyBidWlsZGluZyBwcm9kdWN0czsgY29tbWVyY2lhbCBzZXJ2aWNlcyAmYW1wOyBzdXBwbGllczsgY29uc3RydWN0aW9uICZhbXA7IGVuZ2luZWVyaW5nOyBlbGVjdHJpY2FsIGVxdWlwbWVudDsgaW5kdXN0cmlhbCBjb25nbG9tZXJhdGVzOyBtYWNoaW5lcnk7IG1hcmluZTsgcHJvZmVzc2lvbmFsIHNlcnZpY2VzOyByb2FkICZhbXA7IHJhaWw7IHRyYWRpbmcgY29tcGFuaWVzICZhbXA7IGRpc3RyaWJ1dG9yczsgYW5kIHRyYW5zcG9ydGF0aW9uIGluZnJhc3RydWN0dXJlLjwvbGk+DQo8bGk+PHN0cm9uZz5JbmZvcm1hdGlvbiBUZWNobm9sb2d5IDwvc3Ryb25nPiZuZGFzaDsgVGhpcyBzZWN0b3IgbWFrZXMgdXAgYXBwcm94aW1hdGVseSAyNyUgb2YgdGhlIGluZGV4IG1ha2luZyBpdCB0aGUgbGFyZ2VzdCBzZWN0b3IuIFRoZSBzZWN0b3IgaW5jbHVkZXMgdGhlIGZvbGxvd2luZyBpbmR1c3RyaWVzOiBjb21tdW5pY2F0aW9ucyBlcXVpcG1lbnQ7IGVsZWN0cm9uaWMgZXF1aXBtZW50LCBpbnN0cnVtZW50cyAmYW1wOyBjb21wb25lbnRzOyBJVCBzZXJ2aWNlczsgc2VtaWNvbmR1Y3RvcnMgJmFtcDsgc2VtaWNvbmR1Y3RvciBlcXVpcG1lbnQ7IHNvZnR3YXJlOyBhbmQgdGVjaG5vbG9neSBoYXJkd2FyZSwgc3RvcmFnZSAmYW1wOyBwZXJpcGhlcmFscy48L2xpPg0KPGxpPjxzdHJvbmc+TWF0ZXJpYWxzIDwvc3Ryb25nPiZuZGFzaDsgVGhpcyBzZWN0b3IgbWFrZXMgdXAgYXBwcm94aW1hdGVseSAyLjUlIG9mIHRoZSBpbmRleCBhbmQgaW5jbHVkZXMgdGhlIGZvbGxvd2luZyBpbmR1c3RyaWVzOiBjaGVtaWNhbHM7IGNvbnN0cnVjdGlvbiBtYXRlcmlhbHM7IGNvbnRhaW5lcnMgJmFtcDsgcGFja2FnaW5nOyBtZXRhbHMgJmFtcDsgbWluaW5nOyBhbmQgcGFwZXIgJmFtcDsgZm9yZXN0IHByb2R1Y3RzLjwvbGk+DQo8bGk+PHN0cm9uZz5SZWFsIEVzdGF0ZSA8L3N0cm9uZz4mbmRhc2g7IFRoaXMgc2VjdG9yIG1ha2VzIHVwIGFwcHJveGltYXRlbHkgMi44JSBvZiB0aGUgaW5kZXggYW5kIGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcgaW5kdXN0cmllczogZXF1aXR5IHJlYWwgZXN0YXRlIGludmVzdG1lbnQgdHJ1c3RzOyBhbmQgcmVhbCBlc3RhdGUgbWFuYWdlbWVudCAmYW1wOyBkZXZlbG9wbWVudC48L2xpPg0KPGxpPjxzdHJvbmc+VXRpbGl0aWVzIDwvc3Ryb25nPiZuZGFzaDsgVGhpcyBzZWN0b3IgbWFrZXMgdXAgYXBwcm94aW1hdGVseSAzJSBvZiB0aGUgaW5kZXggYW5kIGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcgaW5kdXN0cmllczogZWxlY3RyaWMgdXRpbGl0aWVzOyBnYXMgdXRpbGl0aWVzOyBpbmRlcGVuZGVudCBwb3dlciBhbmQgcmVuZXdhYmxlIGVsZWN0cmljaXR5IHByb2R1Y2VyczsgbXVsdGktdXRpbGl0aWVzOyBhbmQgd2F0ZXIgdXRpbGl0aWVzLjwvbGk+DQo8L3VsPg0KPGgzIGlkPSJ3aHktc2VjdG9yLXdlaWdodGluZy1tYXR0ZXJzIj5XaHkgU2VjdG9yIFdlaWdodGluZyBNYXR0ZXJzPC9oMz4NCjxwPkFzIHdlIHBvaW50ZWQgb3V0IGFib3ZlLCB0aGUgUyZhbXA7UCA1MDAgaXMgY29tbW9ubHkgdmlld2VkIGFzIGEgbWVhc3VyZSBvZiBtYXJrZXQgcGVyZm9ybWFuY2UuIEhvd2V2ZXIsIHRoZSB3ZWlnaHRpbmcgaXMgc3VnZ2VzdGluZyB3aGVyZSBpbnZlc3RvciBkb2xsYXJzIGFyZSBnb2luZy4gVGhhdCZyc3F1bztzIHdoeSwgYXMgb2YgQXVndXN0IDIwMjIsIGEgY29tcGFueSBsaWtlIEFwcGxlIGlzIG9uZSBvZiB0aGUgdG9wIGNvbXBvbmVudHMgb2YgdGhlIFMmYW1wO1AgNTAwLiBOZWFybHkgZXZlcnkgbXV0dWFsIGZ1bmQgYW5kIGV4Y2hhbmdlLXRyYWRlZCBmdW5kIChFVEYpIHdpdGggZXhwb3N1cmUgdG8gdGVjaG5vbG9neSB3aWxsIGluY2x1ZGUgQUFQTCBzdG9jayBhcyBvbmUgb2YgaXRzIGhvbGRpbmdzLjwvcD4NCjxwPkhvd2V2ZXIsIHRoZSB0ZWNoIHNlY3RvciBkb2VzIG5vdCBhbHdheXMgb3V0cGVyZm9ybSB0aGUgbWFya2V0LiBGb3IgZXhhbXBsZSwgaW4gbGF0ZSAyMDIxIGFuZCB0aGUgZmlyc3QgaGFsZiBvZiAyMDIyLCBlbmVyZ3kgc3RvY2tzIG91dHBlcmZvcm1lZCB0ZWNobm9sb2d5IHN0b2Nrcy4gTm90IHN1cnByaXNpbmdseSwgdGhlIFMmYW1wO1AgZGlwcGVkIGludG8gYmVhciBtYXJrZXQgdGVycml0b3J5LiBIb3dldmVyLCB0aGUgZW5lcmd5IGNvbXBvbmVudHMgb2YgdGhlIGluZGV4IHBlcmZvcm1lZCBxdWl0ZSB3ZWxsLjwvcD4NCjxwPkxpa2V3aXNlIHRoZSBzZWN0b3JzIG9mIHRoZSBpbmRleCBjYW4gYmUgaW1wYWN0ZWQgYnkgbW9uZXRhcnkgcG9saWN5LiBGb3IgZXhhbXBsZSwgcmlzaW5nIGludGVyZXN0IHJhdGVzIGFyZSBnZW5lcmFsbHkgYSBnb29kIHNpZ24gZm9yIGZpbmFuY2lhbHMuIEhvd2V2ZXIsIGZhbGxpbmcgaW50ZXJlc3QgcmF0ZXMgbWF5IGJlIGJldHRlciBmb3IgZ3Jvd3RoIHN0b2NrcyBhcyB0aGUgY29zdCBvZiBib3Jyb3dpbmcgZWFzZXMuPC9wPg0KPGRpdiBpdGVtc2NvcGUgaXRlbXByb3A9Im1haW5FbnRpdHkiIGl0ZW10eXBlPSJodHRwczovL3NjaGVtYS5vcmcvUXVlc3Rpb24iPjxoMyBpZD0iaG93LWlzLXRoZS1zYW1wcC01MDAtZGlmZmVyZW50LWZyb20tdGhlLWRvdy1qIiBpdGVtcHJvcD0ibmFtZSB0ZXh0Ij5Ib3cgaXMgdGhlIFMmYW1wO1AgNTAwIERpZmZlcmVudCBmcm9tIHRoZSBEb3cgSm9uZXMgSW5kdXN0cmlhbCBJbmRleD88L2gzPjxkaXYgaXRlbXByb3A9ImFjY2VwdGVkQW5zd2VyIiBpdGVtc2NvcGUgaXRlbXR5cGU9Imh0dHBzOi8vc2NoZW1hLm9yZy9BbnN3ZXIiPjxkaXYgaXRlbXByb3A9InRleHQiPg0KPHA+VGhlcmUgYXJlIHNldmVyYWwga2V5IGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIFMmYW1wO1AgNTAwIGFuZCB0aGUgRG93IEpvbmVzIEluZHVzdHJpYWwgQXZlcmFnZSAoREpJQSkuIFRvIGJlZ2luIHdpdGgsIHRoZSBTJmFtcDtQIDUwMCBpcyB3ZWlnaHRlZCBieSBtYXJrZXQgY2FwIHdoZXJlYXMgdGhlIERKSUEgaXMgd2VpZ2h0ZWQgYnkgc3RvY2sgcHJpY2UuIEJlY2F1c2UgdGhlIFMmYW1wO1AmcnNxdW87cyB3ZWlnaHRpbmcgaXMgYmFzZWQgb24gbWFya2V0IGNhcGl0YWxpemF0aW9uIGluc3RpdHV0aW9uYWwgaW52ZXN0b3JzIHZpZXcgaXQgYXMgYSBtb3JlIHJlbGlhYmxlIGluZGV4IGZvciBhc3Nlc3NpbmcgbWFya2V0IHRyZW5kcy48L3A+DQo8cD5Gb3IgZXhhbXBsZSwgaWYgYSBsYXJnZSBjYXAgY29tcGFueSBpc3N1ZXMgYSBzdG9jayBzcGxpdCwgaXQgd291bGQgaGF2ZSBhIGRpc3Byb3BvcnRpb25hdGUgZWZmZWN0IG9uIHRoZSBEb3cuIEJ5IGNvbnRyYXN0LCB0aGUgUyZhbXA7UCA1MDAgbG9va3Mgb25seSBhdCB0aGUgbWFya2V0IGNhcGl0YWxpemF0aW9uIGFuZCB0aHVzIHdvdWxkIGJlIGxlc3MgYWZmZWN0ZWQuPC9wPg0KPHA+U2Vjb25kLCB0aGUgUyZhbXA7UCA1MDAgaXMgbW9yZSBkaXZlcnNlLiBJdCZyc3F1bztzIGNvbXByaXNlZCBvZiA1MDAgc3RvY2tzIHRoYXQgcmVwcmVzZW50IGEgdmFyaWV0eSBvZiBzZWN0b3JzIG9mIHRoZSBVLlMuIGVjb25vbXkuIFRoZSBESklBIGlzIGNvbXBvc2VkIG9mIGp1c3QgMzAgY29tcG9uZW50cyAoY29tcGFuaWVzKSBtYWtpbmcgaXQgbXVjaCBsZXNzIGRpdmVyc2UuPC9wPg0KPHA+VGhlIHRoaXJkIGRpZmZlcmVuY2UgaXMgaW4gdGhlIHdheSB0aGUgY29tcG9uZW50cyBjaGFuZ2UuIFRoZSBjb21wb25lbnRzIG9mIHRoZSBESklBIGNoYW5nZSBmcm9tIHRpbWUgdG8gdGltZS4gSG93ZXZlciwgdGhlIGNoYW5nZXMgYXJlIGZhaXJseSByYXJlIGFuZCBhbnkgY2hhbmdlcyB0ZW5kIHRvIGZvbGxvdyBhIGZvcm11bGEuPC9wPg0KPHA+QXMgcG9pbnRlZCBvdXQgYWJvdmUsIHRoZSBTJmFtcDtQIDUwMCBpbmRleCBpcyBhY3RpdmVseSBtYW5hZ2VkLiBUaGlzIGFsbG93cyB0aGUgY29tbWl0dGVlIHRoYXQgZGVjaWRlcyBvbiB0aGUgY29tcG9uZW50cyBhIGdyZWF0IGRlYWwgb2YgZmxleGliaWxpdHkgcmVnYXJkaW5nIHRoZSBTJmFtcDtQIDUwMCBndWlkZWxpbmVzLiBGb3IgZXhhbXBsZSwgd2hlbiB0aGUgaW5zdXJhbmNlIGdpYW50IEFJRyB3YXMgYmFpbGVkIG91dCBhZnRlciB0aGUgY29sbGFwc2Ugb2YgTGVobWFuIEJyb3RoZXJzIHRoZSBTJmFtcDtQIDUwMCBjb21taXR0ZWUga2VwdCB0aGUgY29tcGFueSBpbiB0aGUgaW5kZXggZXZlbiB0aG91Z2gsIGFjY29yZGluZyB0byBpdHMgZ3VpZGVsaW5lcywgYSBjb21wYW55IG11c3QgaGF2ZSBhIHB1YmxpYyBmbG9hdCBvZiBvdmVyIDUwJS48L3A+DQo8cD5BIHNlY29uZCBleGFtcGxlLCBvbiBhIHNtYWxsZXIgc2NhbGUsIHRvb2sgcGxhY2Ugd2hlbiBHb29nbGUgaXNzdWVkIGEgc3RvY2sgc3BsaXQgYW5kIGlzc3VlZCBub24tdm90aW5nIHN0b2NrLCB0aGUgY29tbWl0dGVlIHJlY29nbml6ZWQgdGhhdCBzb21lIG9mIHRoZSBydWxlcyB3b3VsZCBoYXZlIHRvIGJlIHJldmlzZWQgYW5kIHRoZW4gcmV2aXNlZCB0aGVtIGFnYWluIGluIHJlc3BvbnNlIHRvIG1ham9yIGludmVzdG9ycyB3aG8gZXhwcmVzc2VkIGNvbmNlcm5zIGJhc2VkIG9uIHRoZSBoZWF2eSB2b2x1bWUgb2YgdHJhZGluZyB0aGF0IHdvdWxkIGJlIHJlcXVpcmVkIHVudGlsIHRoZSBzY2hlZHVsZSB3YXMgcHVibGlzaGVkLjwvcD4NCjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgaXRlbXNjb3BlIGl0ZW1wcm9wPSJtYWluRW50aXR5IiBpdGVtdHlwZT0iaHR0cHM6Ly9zY2hlbWEub3JnL1F1ZXN0aW9uIj48aDMgaWQ9Imhvdy1pcy10aGUtc2FtcHAtNTAwLWRpZmZlcmVudC1mcm9tLXRoZS1uYXNkYSIgaXRlbXByb3A9Im5hbWUgdGV4dCI+SG93IGlzIHRoZSBTJmFtcDtQIDUwMCBEaWZmZXJlbnQgZnJvbSB0aGUgTkFTREFRIEluZGV4PzwvaDM+PGRpdiBpdGVtcHJvcD0iYWNjZXB0ZWRBbnN3ZXIiIGl0ZW1zY29wZSBpdGVtdHlwZT0iaHR0cHM6Ly9zY2hlbWEub3JnL0Fuc3dlciI+PGRpdiBpdGVtcHJvcD0idGV4dCI+DQo8cD5UaGUgcHJpbWFyeSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIHR3byBpbmRleGVzIGlzIGluIGhvdyB0aGUgc2VjdG9ycyBhcmUgd2VpZ2h0ZWQuIFNwZWNpZmljYWxseSwgdGhlIFMmYW1wO1AgNTAwIGlzIG1vcmUgZGl2ZXJzZSBpbiB0aGUgd2F5IHRoZSBzZWN0b3JzIGFyZSB3ZWlnaHRlZC4gQnkgY29udHJhc3QsIG92ZXIgNTAlIG9mIHRoZSB3ZWlnaHRpbmcgaW4gdGhlIE5BU0RBUSAxMDAgaXMgaW4gdGhlIHRlY2hub2xvZ3kgc2VjdG9yLjwvcD4NCjxwPkhvdyBpcyB0aGUgUyZhbXA7UCA1MDAgSW5kZXggRGlmZmVyZW50IGZyb20gdGhlIFJ1c3NlbGwgSW5kZXg/PC9wPg0KPHA+VGhlcmUgYXJlIHR3byBrZXkgZGlmZmVyZW5jZXMgYmV0d2VlbiBob3cgdGhlIHR3byBpbmRpY2VzIGFyZSBjb25zdHJ1Y3RlZC4gRmlyc3QsIHRoZSBTJmFtcDtQIDUwMCB1c2VzIGEgY29tbWl0dGVkIHRvIHNlbGVjdCB0aGUgc3RvY2tzIHRoYXQgbWFrZSB1cCB0aGUgaW5kZXguIFRoZSBSdXNzZWxsIGluZGV4IHVzZXMgYSBmb3JtdWxhIHRoYXQgY2hvb3NlcyB0aGUgc3RvY2tzIHRoYXQgYXJlIGluY2x1ZGVkLjwvcD4NCjxwPkFuZCBzZWNvbmQsIHRoZSBTJmFtcDtQIDUwMCBkb2VzIG5vdCBpbmNsdWRlIHRoZSBzYW1lIGNvbXBhbnkgaW4gZGlmZmVyZW50IHN0eWxlIG9mIGluZGljZXMuIFRoaXMgbWVhbnMgdGhhdCBhIGNvbXBhbnkgdGhhdCBhcHBlYXJzIGluIHRoZWlyIGdyb3d0aCBpbmRleCB3b3VsZCBub3QgYmUgbGlzdGVkIGluIHRoZWlyIHZhbHVlIGluZGV4LiBUaGUgUnVzc2VsbCBpbmRleCBkb2VzIG5vdCBtYWtlIHRoZXNlIGRpc3RpbmN0aW9ucy48L3A+DQo8L2Rpdj48L2Rpdj48L2Rpdj48aDMgaWQ9Imhvdy10by11c2UtdGhlLXNhbXBwLTUwMC1oZWF0LW1hcCI+SG93IHRvIFVzZSB0aGUgUyZhbXA7UCA1MDAgSGVhdCBNYXA8L2gzPg0KPHA+VGhlIFMmYW1wO1AgNTAwIEhlYXQgTWFwIGlzIGEgdmlzdWFsIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBwZXJmb3JtYW5jZSBmb3Igc3RvY2tzIGluIHRoZSBTJmFtcDtQIDUwMCBpbmRleC4gR3JlZW4gcmVmbGVjdHMgZ2FpbnMgYW5kIHJlZCBpbmRpY2F0ZXMgbG9zc2VzLiBUaGUgc3RvY2tzIGFyZSByZXByZXNlbnRlZCBpbiBib3hlcyBvZiBkaWZmZXJlbnQgc2l6ZXMgKG9yIHNjYWxlKSB0aGF0IHJlcHJlc2VudHMgdGhlIHByb3BvcnRpb24gb2YgdGhlIGluZGV4IHRoYXQgdGhlIHN0b2NrIHRha2VzIHVwIGJ5IG1hcmtldCBjYXAuIFRoYXQmcnNxdW87cyB3aHkgY29tcGFuaWVzIHdpdGggdHJpbGxpb24tZG9sbGFyIG1hcmtldCBjYXBzIHN1Y2ggYXMgPHN0cm9uZz5BcHBsZSAoPC9zdHJvbmc+PGEgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vc3RvY2tzL05BU0RBUS9BQVBMLyI+PHN0cm9uZz5OQVNEQVE6IEFBUEw8L3N0cm9uZz48L2E+PHN0cm9uZz4pPC9zdHJvbmc+LCA8c3Ryb25nPk1pY3Jvc29mdCAoPC9zdHJvbmc+PGEgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vc3RvY2tzL05BU0RBUS9NU0ZULyI+PHN0cm9uZz5OQVNEQVE6IE1TRlQ8L3N0cm9uZz48L2E+PHN0cm9uZz4pPC9zdHJvbmc+LCBhbmQgPHN0cm9uZz5BbHBoYWJldCAoPC9zdHJvbmc+PGEgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vc3RvY2tzL05BU0RBUS9HT09HTC8iPjxzdHJvbmc+TkFTREFROiBHT09HTDwvc3Ryb25nPjwvYT48c3Ryb25nPik8L3N0cm9uZz4gYXJlIHRoZSBsYXJnZXN0IHNxdWFyZXMgb24gdGhlIGhlYXQgbWFwLjwvcD4NCjxwPlRoZSBzdG9ja3MgYXJlIGFsc28gZ3JvdXBlZCBieSBzZWN0b3IuIFRvIGdldCBhIGNsb3NlciBsb29rIGF0IGEgc3BlY2lmaWMgc2VjdG9yLCBjbGljayBhbnl3aGVyZSBvbiB0aGUgYm94IGZvciB0aGF0IHNlY3Rvci4gQXQgdGhpcyBwb2ludCwgdGhlIHNlY3RvcnMgYXJlIGdyb3VwZWQgaW50byBzdWJzZWN0b3JzLiBGb3IgZXhhbXBsZSwgd2hlbiBpbnZlc3RvcnMgY2xpY2sgb24gdGhlICZsZHF1bztNZWRpY2FsJnJkcXVvOyBzZWN0b3IsIHRoZXkmcnNxdW87bGwgc2VlIG1hbnkgc3Vic2VjdG9ycyBpbmNsdWRpbmcgJmxkcXVvO1BoYXJtYWNldXRpY2FsIHByZXBhcmF0aW9ucywmcmRxdW87ICZsZHF1bztTdXJnaWNhbCAmYW1wOyBtZWRpY2FsIGluc3RydW1lbnRzLCZyZHF1bzsgYW5kICZsZHF1bztIb3NwaXRhbCAmYW1wOyBtZWRpY2FsIHNlcnZpY2UgcGxhbnMuJnJkcXVvOyBUaGlzIGFsbG93cyBpbnZlc3RvcnMgdG8gZXZhbHVhdGUgYW5kIGNvbXBhcmUgc3RvY2tzIGJhc2VkIG9uIGNvbXBhbmllcyB0aGF0IGFyZSBtb3JlIGxpa2UgdGhlbS48L3A+DQo8cD5BbmQgb25jZSBpbnZlc3RvcnMgYXJlIHZpZXdpbmcgYSBwYXJ0aWN1bGFyIHN1YnNlY3RvciwgdGhleSBjYW4gY2xpY2sgb24gYW4gaW5kaXZpZHVhbCBjb21wYW55IGFuZCBiZSB0YWtlbiB0byB0aGF0IGNvbXBhbnkmcnNxdW87cyBwcm9maWxlIHBhZ2Ugb24gdGhlIE1hcmtldEJlYXQgc2l0ZS48L3A+PC9kaXY+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPmRvY3VtZW50LndyaXRlKCc8aW1nIHNyYz0iaHR0cHM6Ly93d3cuYW1lcmljYW5jb25zdW1lcicgKyAnbmV3cy5uZXQvc2NyaXB0cy9zdGFuZGFsb25lL1ZpZXdDb3VudC5hc2h4P3R5cGU9aiZpZD01MzQxMjg5ICZyZWZlcnJlcj0nICsgZW5jb2RlVVJJQ29tcG9uZW50KGRvY3VtZW50LnJlZmVycmVyKSArICciIGFsdD0iIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiAvPicpOzwvc2NyaXB0PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PmQCBw8WAh8ABRBTJlAgNTAwIEhlYXQgTWFwZAIJDxYCHwAFqA88YSB0aXRsZT0iU2hhcmUgb24gRmFjZWJvb2siIGhyZWY9Imh0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9zaGFyZXIvc2hhcmVyLnBocD91PWh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL21hcmtldC1kYXRhL3NlY3Rvci1wZXJmb3JtYW5jZS8/dj0yMDI0MTEzMDA1MzAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93IG5vb3BlbmVyIiBjbGFzcz0iYnRuIGJ0bi1zaGFyZSI+PHNwYW4gY2xhc3M9ImZhLWJyYW5kcyBmYS1mYWNlYm9vay1mIj48L3NwYW4+PC9hPjxhIHRpdGxlPSJTaGFyZSBvbiBUd2l0dGVyIiBocmVmPSJodHRwczovL3R3aXR0ZXIuY29tL2ludGVudC90d2VldD90ZXh0PUZyZWUrU3RvY2srTWFya2V0K0hlYXQrTWFwKyU3YytTJTI2UCs1MDArUGVyZm9ybWFuY2UrdmlhK0hlYXQrTWFwJTIwaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbWFya2V0LWRhdGEvc2VjdG9yLXBlcmZvcm1hbmNlLz92PTIwMjQxMTMwMDUzMCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3cgbm9vcGVuZXIiIGNsYXNzPSJidG4gYnRuLXNoYXJlIj48c3BhbiBjbGFzcz0iZmEtYnJhbmRzIGZhLXgtdHdpdHRlciI+PC9zcGFuPjwvYT48YSB0aXRsZT0iU2hhcmUgb24gTGlua2VkSW4iIG9uY2xpY2s9IndpbmRvdy5vcGVuKCdodHRwczovL3d3dy5saW5rZWRpbi5jb20vY3dzL3NoYXJlP21pbmk9dHJ1ZSZhbXA7dXJsPWh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL21hcmtldC1kYXRhL3NlY3Rvci1wZXJmb3JtYW5jZS8/dj0yMDI0MTEzMDA1MzAnLCAnbmFtZScsJ3dpZHRoPTYwMCxoZWlnaHQ9NjAwJykiIGhyZWY9Imh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jd3Mvc2hhcmU/bWluaT10cnVlJmFtcDt1cmw9aHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbWFya2V0LWRhdGEvc2VjdG9yLXBlcmZvcm1hbmNlLz92PTIwMjQxMTMwMDUzMCIgdGFyZ2V0PSJwb3B1cCIgcmVsPSJub2ZvbGxvdyBub29wZW5lciIgY2xhc3M9ImJ0biBidG4tc2hhcmUiPjxzcGFuIGNsYXNzPSJmYS1icmFuZHMgZmEtbGlua2VkaW4taW4iPjwvc3Bhbj48L2E+PGEgdGl0bGU9IlByaW50IHRoaXMgcGFnZSIgaHJlZiA9ImphdmFzY3JpcHQ6d2luZG93LnByaW50KCkiIGNsYXNzPSJidG4gYnRuLXNoYXJlIj48c3BhbiBjbGFzcz0iZmEtcmVndWxhciBmYS1wcmludCI+PC9zcGFuPjwvYT48YSB0aXRsZT0iRW1haWwgdGhpcyBwYWdlIiBocmVmPSJtYWlsdG86P3N1YmplY3Q9RnJlZSUyMFN0b2NrJTIwTWFya2V0JTIwSGVhdCUyME1hcCUyMCU3YyUyMFMlMjZQJTIwNTAwJTIwUGVyZm9ybWFuY2UlMjB2aWElMjBIZWF0JTIwTWFwJmFtcDtib2R5PUNoZWNrJTIwb3V0JTIwdGhpcyUyMHN0b2NrJTNBJTIwaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbWFya2V0LWRhdGEvc2VjdG9yLXBlcmZvcm1hbmNlLz92PTIwMjQxMTMwMDUzMCUwRCUwQSUwRCUwQUZvciUyMHJlYWwtdGltZSUyMGZpbmFuY2lhbCUyMG5ld3MlMjBhbmQlMjBhbmFseXNpcyUyQyUyMHZpc2l0JTIwaHR0cHMlM0ElMkYlMkZ3d3cubWFya2V0YmVhdC5jb20lMkYlMjAuIiBjbGFzcz0iYnRuIGJ0bi1zaGFyZSI+PHNwYW4gY2xhc3M9ImZhLXJlZ3VsYXIgZmEtZW52ZWxvcGUiPjwvc3Bhbj48L2E+PGEgdGl0bGU9IkNvcHkgdGhlIFVSTCBvZiB0aGlzIHBhZ2UgdG8gdGhlIGNsaXBib2FyZCIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbWFya2V0LWRhdGEvc2VjdG9yLXBlcmZvcm1hbmNlLz92PTIwMjQxMTMwMDUzMCIgY2xhc3M9ImJ0biBidG4tc2hhcmUgc2hhcmVDb3B5Ij48c3BhbiBjbGFzcz0iZmEtcmVndWxhciBmYS1saW5rIj48L3NwYW4+PC9hPjxkaXYgY2xhc3M9ImZpeGVkLW5vdGlmaWNhdGlvbiBhbGVydCBhbGVydC1zdWNjZXNzIiBhcmlhLWxpdmU9InBvbGl0ZSIgYXJpYS1hdG9taWM9InRydWUiIHJvbGU9ImFsZXJ0Ij5MaW5rIGNvcGllZCB0byBjbGlwYm9hcmQuPC9kaXY+ZAILD2QWBAIBDxYCHwAFpwE8c2NyaXB0PiB2YXIgU2NycFJlc3RyaWN0ID0gIjdGMTg3M0I1QjRFMDM0N0Y4MTVBN0RDQjdFOUVEQjNGQkYwNTlDRTk2QkZEMzY4MDA1ODMyN0ZFMTgxMUIwNjk5NkE2NTlDNzI1RkM2RkNFREZFRDMwNjg5MjlDNTAwNTE2NUQ3QThGMTkwRTI2Qjc5NDE5MDA4NUEwRkEzRDZEIjwvc2NyaXB0PmQCAw8WAh8ABSc8c2NyaXB0PiB2YXIgVmVyc2lvbiA9ICJTUDUwMCI8L3NjcmlwdD5kAhEPFgIfAAVXPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPkxvYWRQb3B1cFJhdGluZ3MoJ01CLVBvcHVwJywnbWFya2V0YmVhdC5jb20nKTsgPC9zY3JpcHQ+ZAISDxYCHwAFUTxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz5zZXRDb29raWUoIk1hcmtldEJlYXRPcHRpbkNvb2tpZSIsIDEsIDMpOzwvc2NyaXB0PmRkKY9W6B32ULKhPd24KKIPdbOx5A4=" /> </div> <script type="text/javascript"> //<![CDATA[ var theForm = document.forms['form1']; if (!theForm) { theForm = document.form1; } function __doPostBack(eventTarget, eventArgument) { if (!theForm.onsubmit || (theForm.onsubmit() != false)) { theForm.__EVENTTARGET.value = eventTarget; theForm.__EVENTARGUMENT.value = eventArgument; theForm.submit(); } } //]]> </script> <script src="/WebResource.axd?d=TGE6mH29_tpsdHwhewvfnZZ1XtMYSVXLm0Jql1RT8Gt0UJpBTCqqFxYSJ6nYrV4lmQxbdhmD7ckA_eQodaniwZjAfL41&t=638610691965203766" type="text/javascript"></script> <script src="/WebResource.axd?d=4lMJGuquWOjOpKNx9jHWfLxmhW6qp2tPeqMu9eSv61Q3BBcp_u6tm-OawELVd8SzmA8FxOpK8saMz-cLgDs6BCGGHE41&t=638610691965203766" type="text/javascript"></script> <script type="text/javascript"> //<![CDATA[ function WebForm_OnSubmit() { if (typeof(ValidatorOnSubmit) == "function" && ValidatorOnSubmit() == false) return false; return true; } //]]> </script> <div class="aspNetHidden"> <input type="hidden" name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" value="D564B710" /> <input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEdAAgUBf4EC9vZQI6Axzvvs0/cFY9Zi5w+zFG/i9MWgi3/u3/O13+AK0BueTddwJNHno8iYRyunxBjd+iJ64LS9arW7QP4ovtZHfVkQ9Jmo/a6mWzkBf/AqTf4LULcoU5+pimvwCmS27YgX3NL1gmCa42zMatPI0BjwaD7I9RmMOuT33jkw2OXMQsJWGcBuLQ/sP2w24bh" /> </div> <h1 id="pageTitle" class="PageTitleHOne"> S&P 500 Heat Map </h1> <div class="row justify-content-between align-items-top" style="min-height:54px;"> <div class="order-1 order-lg-0 my-2 d-none col-auto" id="timePeriodCompany"> <span class="barlow-condensed mr-2 opacity-6 d-inline-block" style="vertical-align: middle;">Price-Change Time Period: </span> <span onclick="reloadChart(1, this);" class="time-frame-button btn btn-primary p-1">1-Day</span> <span onclick="reloadChart(7, this);" class="time-frame-button btn btn-secondary p-1">7-Day</span> <span onclick="reloadChart(30, this);" class="time-frame-button btn btn-secondary p-1">30-Day</span> <span onclick="reloadChart(180, this);" class="time-frame-button btn btn-secondary p-1">180-Day</span> <span onclick="reloadChart(365, this);" class="time-frame-button btn btn-secondary p-1">1-Year</span> </div> <div class="order-1 order-lg-0 my-2 d-none col-auto" id="timePeriodCryptocurrency"> <span class="barlow-condensed mr-2 opacity-6 d-inline-block" style="vertical-align: middle;">Price-Change Time Period: </span> <span onclick="reloadChart(0, this);" class="time-frame-button btn btn-secondary p-1">1-Hour</span> <span onclick="reloadChart(1, this);" class="time-frame-button btn btn-secondary p-1">1-Day</span> <span onclick="reloadChart(7, this);" class="time-frame-button btn btn-secondary p-1">7-Day</span> <span onclick="reloadChart(30, this);" class="time-frame-button btn btn-secondary p-1">30-Day</span> </div> <div class="col-auto order-0 mt-3 mt-lg-0 order-lg-1"><div class="share-button-wrapper d-inline-flex d-md-none align-items-stretch py-0" id="webShareButtonWrapper"><button id="webShareButton" class="web-share-button btn btn-secondary d-block text-center text-sm-left" type="button" disabled title="Share Free Stock Market Heat Map | S&P 500 Performance via Heat Map"><span class="fa-regular fa-share-nodes"></span><span class="share-title"> Share</span></button><script>const shareOpts = {title:'Free Stock Market Heat Map | S\u0026P 500 Performance via Heat Map',text:'',url:'https://www.marketbeat.com/market-data/sector-performance/?v=202411300530'};</script></div><div class="share-button-wrapper d-none d-md-inline-flex align-items-stretch py-0" id="shareButtonWrapper"><div id="shareButtonDiv" class="share-button position-relative"><button id="shareButton" class="btn btn-secondary share-button mb-1 mb-sm-0 mr-2 d-block text-center" type="button" title="Share Free Stock Market Heat Map | S&P 500 Performance via Heat Map" data-toggle="modal" data-target="#PanelShare"><span class="fa-regular fa-share-nodes"></span><span class="share-title"> Share</span></button></div></div><button type="button" class="btn btn-secondary ml-1 align-top" data-toggle="modal" data-target="#PanelShareImage"><span class="fa-regular fa-rectangle-history-circle-plus mr-2"></span>Share Image</button><br /></div><div id="PanelShareImage" class="modal" tabindex="-1" role="dialog" ><div class="modal-dialog modal-dialog-centered" role="document"><div class="modal-content"><div class="modal-title p-3 h3 m-0 text-center">Share This Free Stock Market Heat Map | S&P 500 Performance via Heat Map</div><div class="modal-body"><img alt="Free Stock Market Heat Map | S&P 500 Performance via Heat Map from MarketBeat on 11/30/2024" src="https://www.marketbeat.com/scripts/temp/sector-performance-map-SP500-wide.png?t=202411300530" decoding="async" loading="lazy"><p style="margin: 10px 0 5px 0;" onclick="copyTextToClipboard('https://www.marketbeat.com/scripts/temp/sector-performance-map-SP500-wide.png?t=202411300530')">Copy this link to share:</p><input type="text" id="js-copytextarea" style="font-size:12px" value="https://www.marketbeat.com/scripts/temp/sector-performance-map-SP500-wide.png?t=202411300530" aria-label="Copy this link to share"/></div><div class="modal-footer justify-content-center"><input type="button" class="btn btn-primary" id="clicktocopybutton" onclick="clicktocopy();" value="Click to Copy"/><button type="button" class="modal-button btn btn-secondary" data-dismiss="modal">Cancel</button></div></div></div></div> </div> <script> document.addEventListener("DOMContentLoaded", function () { if (window.location.href.indexOf("crypto") > -1) { $("#timePeriodCryptocurrency").removeClass("d-none"); } else { $("#timePeriodCompany").removeClass("d-none"); } }); var reloadChart = function (Timeframe, element) { $(".time-frame-button").removeClass("btn-primary").addClass("btn-secondary"); $(element).removeClass("btn-secondary").addClass("btn-primary"); $("#chart").html(""); $("#chart").addClass("loading-message"); loadAndDrawSectorPerformanceChart(Timeframe); return false; } </script> <div> <div class="mx-n3 mx-md-0"> <div id="chart" class="nice-scroll loading-message"></div> <div class="row"> <div class="col-md-7"> <div id="tooltip" style="min-height:52px;"> <br> </div> </div> <div class="col-md-5"> <div id="sectorMapKey"> <div class="down-3">-3%</div> <div class="down-2">-2%</div> <div class="down-1">-1%</div> <div class="neutral">0%</div> <div class="up-1">+1%</div> <div class="up-2">+2%</div> <div class="up-3">+3%</div> </div> </div> </div> </div> <div class="section-heading"><h2 class="font-weight-bold">More Performance Maps</h2></div><ul class="link-cloud mb-3 px-0 list-style-none"><li class="d-inline-block"><a href="/market-data/sector-performance/" class="btn btn-primary">U.S. Sector Performance Map</a></li><li class="d-inline-block"><a href="/market-data/sector-performance/canada/" class="btn btn-secondary">Canadian Sector Performance Map</a></li><li class="d-inline-block"><a href="/market-data/sector-performance/uk/" class="btn btn-secondary">U.K. Sector Performance Map</a></li><li class="d-inline-block"><a href="/market-data/sector-performance/cryptocurrencies/" class="btn btn-secondary">Cryptocurrency Performance Map</a></li></ul> <br /> <div class=""><br/><div style="height:90px;width:100%;overflow:hidden;"><ins class="adsbygoogle" style="display:inline-block;width:100%;height:90px" data-ad-client="ca-pub-9373162611283935" data-ad-slot="9799770108"></ins><script>(adsbygoogle = window.adsbygoogle || []).push({});</script></div><div style="border-top:1px solid #333;border-bottom:1px solid #333;padding-top:25px;padding-bottom:25px;margin-top:30px;"><script type="text/javascript">document.write('<a style="text-decoration:none;font-weight:bold;color:#444;font-size:18pt;" target="_blank" rel="sponsored noopener" href="https://www.mar' + 'ketbeat.com/scripts/redirect.aspx?TriggeredCampaignID=10774&UserID=0&Placement=NativeDisplay&Source=NativeDisplay&interstitial=1&noskip=1">***TODAY ONLY*** The winner of the next crypto bull run?</a>');</script> <span style="font-size:10pt;font-weight:normal;color:#444;">(Ad)</span><br/><p style="text-align:left"><script type="text/javascript">document.write('<a style="text-decoration:none;font-weight:normal;color:#696969;" target="_blank" rel="sponsored noopener" href="https://www.mar' + 'ketbeat.com/scripts/redirect.aspx?TriggeredCampaignID=10774&UserID=0&Placement=NativeDisplay&Source=NativeDisplay&interstitial=1&noskip=1">');</script>Donald Trump is about to send crypto "to the moon." Crypto expert Juan Villaverde says this could be the start of the greatest bull market in crypto history. Now you can learn how to play it with this exclusive offer. And it isn't Bitcoin.</a></p><script type="text/javascript">document.write('<a target="_blank" rel="sponsored noopener" style="font-weight:normal;" href="https://www.mar' + 'ketbeat.com/scripts/redirect.aspx?TriggeredCampaignID=10774&UserID=0&Placement=NativeDisplay&Source=NativeDisplay&interstitial=1&noskip=1">Now you can learn what it is via this exclusive, limited time offer.</a>');</script><img loading='lazy' src='https://www.marketbeat.com/scripts/TriggeredCampaignPixel.ashx?TriggeredCampaignID=10774&Placement=NativeDisplay&Source=NativeDisplay' alt='' height='1' width='1' /></div><div class="anchor-link-target-with-ad w-100" id="what-is-the-s-and-p-500-and-how-it-is-distinct-from-other-indexes"><div class="row d-block d-lg-flex mt-1" id="placed-article" style="height: auto !important;" ><div class="col-12 placed-article"><h2 class="c-dark-blue">What is the S&P 500 and How It is Distinct from Other Indexes</h2><div style="padding:8px;font-size:1.13rem;line-height:1.2em;"><script type="text/javascript">document.write('<a style="text-decoration:underline;font-weight:normal; color: var(--blue-8);" target="_blank" rel="sponsored noopener" href="https://www.mar' + 'ketbeat.com/scripts/redirect.aspx?TriggeredCampaignID=10774&UserID=0&Placement=NativeDisplay&Source=NativeDisplay&interstitial=1&noskip=1">→ ***TODAY ONLY*** The winner of the next crypto bull run?</a> <span style="color:var(--gray-8);font-size:0.78rem;">(Ad)</span>');</script><img loading='lazy' src='https://www.marketbeat.com/scripts/TriggeredCampaignPixel.ashx?TriggeredCampaignID=10774&Placement=NativeDisplay&Source=NativeDisplay' alt='' height='1' width='1' /></div><div class="byline-row w-100 mt-2 mt-md-0 mb-2"><div class="byline-row-wrap d-flex flex-wrap justify-content-between justify-content-sm-start align-items-center"><div class="byline-text flex-grow-1 d-flex flex-wrap align-items-center "><div style="line-height:1em;"><div class="font-small font-weight-bold">Written by <a href="/authors/">MarketBeat Staff</a></div><div class="d-block c-gray-8 font-smaller">Updated August 16, 2022</div></div></div></div></div><div class="article-image mb-3 border"><img src="https://www.marketbeat.com/logos/articles/stock-image_260261342_S.jpg" alt="What is the S&P 500 and How It is Distinct from Other Indexes" decoding="async" loading="lazy" height="900" width="1200" class="article-image-one" /></div><div id="article-wrapper"><div class="article-page body-copy lh-loose"><ul id="article-contents" class="bg-light-gray"><li class="mb-1"><a class="nounderline" href="#why-is-the-sampp-500-index-important">Why is the S&P 500 Index Important?</a></li><li class="mb-1"><a class="nounderline" href="#how-are-the-companies-in-the-sampp-500-select">How Are the Companies in the S&P 500 Selected?</a></li><li class="mb-1"><a class="nounderline" href="#what-sectors-are-included-in-the-sampp-500-in">What Sectors are Included in the S&P 500 Index</a></li><li class="mb-1"><a class="nounderline" href="#why-sector-weighting-matters">Why Sector Weighting Matters</a></li><li class="mb-1"><a class="nounderline" href="#how-is-the-sampp-500-different-from-the-dow-j">How is the S&P 500 Different from the Dow Jones Industrial Index?</a></li><li class="mb-1"><a class="nounderline" href="#how-is-the-sampp-500-different-from-the-nasda">How is the S&P 500 Different from the NASDAQ Index?</a></li><li class="mb-1"><a class="nounderline" href="#how-to-use-the-sampp-500-heat-map">How to Use the S&P 500 Heat Map</a></li></ul><p class="mt-0">The Standard and Poor’s (S&P) 500 index is a widely used stock market index. The index tracks the stock price performance of 500 companies with a market capitalization of over $10 billion (i.e. they are large cap companies).</p><div itemscope="" itemtype="https://schema.org/FAQPage"> <p>The S&P 500 Index is one of the “big three” indices along with the <a href="https://www.marketbeat.com/market-indexes/DJI/">Dow Jones Industrial Average (DJIA)</a> and the <a href="https://www.marketbeat.com/market-indexes/QQQ/">NASDAQ</a>. However, the S&P 500 index is often found to be a more reliable indicator because it is an actively managed index. This means that the committee that selects the stocks for inclusion in the S&P 500 can, and has, added and removed stocks from the index based on the company’s performance. </p> <p>This article provides a broad overview of the S&P 500 Index. The topics it covers includes how the components of the S&P 500 are selected and what sectors make up the index. The article also how the S&P 500 is different from the Dow Jones Industrial Average (DJIA), the NASDAQ, and the Russell indexes. At the end of the article, we’ll explain how investors can use the S&P 500 Heat Map as part of their due diligence.</p> <div itemscope itemprop="mainEntity" itemtype="https://schema.org/Question"><h3 id="why-is-the-sampp-500-index-important" itemprop="name text">Why is the S&P 500 Index Important?</h3><div itemprop="acceptedAnswer" itemscope itemtype="https://schema.org/Answer"><div itemprop="text"> <p>The S&P 500 Index (SPX) is widely regarded among institutional investors as a leading indicator for tracking changes in the economy. It is also a recognized way for investors to get exposure to a broad cross-section of the U.S. economy. The index was created in 1957 and ever since has shown to consistently outperform other asset classes.</p> <p>As of August 2022, the combined market cap of all the companies in the S&P 500 index totals over $36 trillion. The total market cap is arrived at by simply totaling the market cap of every individual component of the index.</p> <p>The S&P 500 index covers all major sectors of U.S. companies, it is generally considered to be the benchmark that most equity managers are measured against. Although every company in the S&P 500 is headquartered in the United States, the companies are international companies with revenue coming in from all over the world. This adds to the diversification of the index.</p> <p>However, unlike other stock indexes that base their selection of composite companies exclusively on a defined set of rules, the S&P index is actively managed, meaning that the committee has some discretion in the stocks they select. This allows the committee to respond, as needed, to market events.</p> </div></div></div><div itemscope itemprop="mainEntity" itemtype="https://schema.org/Question"><h3 id="how-are-the-companies-in-the-sampp-500-select" itemprop="name text">How Are the Companies in the S&P 500 Selected?</h3><div itemprop="acceptedAnswer" itemscope itemtype="https://schema.org/Answer"><div itemprop="text"> <p>The companies that make up the S&P 500 index are selected by a select group of market professionals known as the Index Committee. Although commonly seen as a measure of market performance, the objective of the index is to provide an accurate picture of what is going on in the market.</p> <p>In addition to choosing large cap stocks, companies must meet certain selection criteria including:</p> <ul> <li>A minimum market capitalization ($13.1 billion as of August 2022)</li> <li>A public float of at least 50%. This means that at least 50% of a company’s stock is available to the public and it has a stock price of at least $1 per share.</li> <li>They must file a 10-K annual report</li> <li>At least 50% of their fixed assets and revenues must be in the United States</li> <li>They must have reported positive earnings for the most recent four quarters</li> <li>They must have adequate liquidity as measured by price and volume</li> </ul> <p>The committee rebalances the index every quarter (March, June, September, and December).</p> </div></div></div><h3 id="what-sectors-are-included-in-the-sampp-500-in">What Sectors are Included in the S&P 500 Index</h3> <p>The S&P 500 consists of the largest sectors in the broader market. Each sector consists of multiple industries and within those industries there are even more specific sub-sectors. The following list is accurate as of August 2022.</p> <ul> <li><strong>Communication Services</strong> - This sector makes up approximately 11% of the index and includes the following industries: diversified telecommunication services; wireless telecommunication services; entertainment; media; and interactive media & services.</li> <li><strong>Consumer Discretionary </strong>- This sector makes up approximately 11% of the index and includes into the following industries: automobile components; automobiles; distributors; diversified consumer services; hotels, restaurants & leisure; household durables; leisure products; multiline retail; specialty retail; textile, apparel & luxury goods; and internet and direct marketing.</li> <li><strong>Consumer Staples </strong>– This sector makes up approximately 7% of the index and includes following industries: beverages; food & staples retailing; food products; household products; personal products; and tobacco.</li> <li><strong>Energy </strong>– This sector makes up approximately 2.5% of the index and includes the following industries: energy equipment & services; oil, gas & consumable fuels.</li> <li><strong>Financials </strong>– This sector makes up approximately 10% of the index and includes the following industries: banking; capital markets; consumer finance; diversified financial services; insurance; mortgage real estate investment trusts (REITs); and thrifts & mortgage finance.</li> <li><strong>Health Care </strong>– This sector makes up approximately 14.5% of the index and includes the following industries: biotechnology; health care equipment & services; health care providers & services; health care technology; life sciences tools & services; and pharmaceuticals.</li> <li><strong>Industrials </strong>– This sector makes up approximately 8% of the index and includes the following industries: aerospace & defense; air freight & logistics; airlines; building products; commercial services & supplies; construction & engineering; electrical equipment; industrial conglomerates; machinery; marine; professional services; road & rail; trading companies & distributors; and transportation infrastructure.</li> <li><strong>Information Technology </strong>– This sector makes up approximately 27% of the index making it the largest sector. The sector includes the following industries: communications equipment; electronic equipment, instruments & components; IT services; semiconductors & semiconductor equipment; software; and technology hardware, storage & peripherals.</li> <li><strong>Materials </strong>– This sector makes up approximately 2.5% of the index and includes the following industries: chemicals; construction materials; containers & packaging; metals & mining; and paper & forest products.</li> <li><strong>Real Estate </strong>– This sector makes up approximately 2.8% of the index and includes the following industries: equity real estate investment trusts; and real estate management & development.</li> <li><strong>Utilities </strong>– This sector makes up approximately 3% of the index and includes the following industries: electric utilities; gas utilities; independent power and renewable electricity producers; multi-utilities; and water utilities.</li> </ul> <h3 id="why-sector-weighting-matters">Why Sector Weighting Matters</h3> <p>As we pointed out above, the S&P 500 is commonly viewed as a measure of market performance. However, the weighting is suggesting where investor dollars are going. That’s why, as of August 2022, a company like Apple is one of the top components of the S&P 500. Nearly every mutual fund and exchange-traded fund (ETF) with exposure to technology will include AAPL stock as one of its holdings.</p> <p>However, the tech sector does not always outperform the market. For example, in late 2021 and the first half of 2022, energy stocks outperformed technology stocks. Not surprisingly, the S&P dipped into bear market territory. However, the energy components of the index performed quite well.</p> <p>Likewise the sectors of the index can be impacted by monetary policy. For example, rising interest rates are generally a good sign for financials. However, falling interest rates may be better for growth stocks as the cost of borrowing eases.</p> <div itemscope itemprop="mainEntity" itemtype="https://schema.org/Question"><h3 id="how-is-the-sampp-500-different-from-the-dow-j" itemprop="name text">How is the S&P 500 Different from the Dow Jones Industrial Index?</h3><div itemprop="acceptedAnswer" itemscope itemtype="https://schema.org/Answer"><div itemprop="text"> <p>There are several key differences between the S&P 500 and the Dow Jones Industrial Average (DJIA). To begin with, the S&P 500 is weighted by market cap whereas the DJIA is weighted by stock price. Because the S&P’s weighting is based on market capitalization institutional investors view it as a more reliable index for assessing market trends.</p> <p>For example, if a large cap company issues a stock split, it would have a disproportionate effect on the Dow. By contrast, the S&P 500 looks only at the market capitalization and thus would be less affected.</p> <p>Second, the S&P 500 is more diverse. It’s comprised of 500 stocks that represent a variety of sectors of the U.S. economy. The DJIA is composed of just 30 components (companies) making it much less diverse.</p> <p>The third difference is in the way the components change. The components of the DJIA change from time to time. However, the changes are fairly rare and any changes tend to follow a formula.</p> <p>As pointed out above, the S&P 500 index is actively managed. This allows the committee that decides on the components a great deal of flexibility regarding the S&P 500 guidelines. For example, when the insurance giant AIG was bailed out after the collapse of Lehman Brothers the S&P 500 committee kept the company in the index even though, according to its guidelines, a company must have a public float of over 50%.</p> <p>A second example, on a smaller scale, took place when Google issued a stock split and issued non-voting stock, the committee recognized that some of the rules would have to be revised and then revised them again in response to major investors who expressed concerns based on the heavy volume of trading that would be required until the schedule was published.</p> </div></div></div><div itemscope itemprop="mainEntity" itemtype="https://schema.org/Question"><h3 id="how-is-the-sampp-500-different-from-the-nasda" itemprop="name text">How is the S&P 500 Different from the NASDAQ Index?</h3><div itemprop="acceptedAnswer" itemscope itemtype="https://schema.org/Answer"><div itemprop="text"> <p>The primary difference between the two indexes is in how the sectors are weighted. Specifically, the S&P 500 is more diverse in the way the sectors are weighted. By contrast, over 50% of the weighting in the NASDAQ 100 is in the technology sector.</p> <p>How is the S&P 500 Index Different from the Russell Index?</p> <p>There are two key differences between how the two indices are constructed. First, the S&P 500 uses a committed to select the stocks that make up the index. The Russell index uses a formula that chooses the stocks that are included.</p> <p>And second, the S&P 500 does not include the same company in different style of indices. This means that a company that appears in their growth index would not be listed in their value index. The Russell index does not make these distinctions.</p> </div></div></div><h3 id="how-to-use-the-sampp-500-heat-map">How to Use the S&P 500 Heat Map</h3> <p>The S&P 500 Heat Map is a visual representation of the performance for stocks in the S&P 500 index. Green reflects gains and red indicates losses. The stocks are represented in boxes of different sizes (or scale) that represents the proportion of the index that the stock takes up by market cap. That’s why companies with trillion-dollar market caps such as <strong>Apple (</strong><a href="https://www.marketbeat.com/stocks/NASDAQ/AAPL/"><strong>NASDAQ: AAPL</strong></a><strong>)</strong>, <strong>Microsoft (</strong><a href="https://www.marketbeat.com/stocks/NASDAQ/MSFT/"><strong>NASDAQ: MSFT</strong></a><strong>)</strong>, and <strong>Alphabet (</strong><a href="https://www.marketbeat.com/stocks/NASDAQ/GOOGL/"><strong>NASDAQ: GOOGL</strong></a><strong>)</strong> are the largest squares on the heat map.</p> <p>The stocks are also grouped by sector. To get a closer look at a specific sector, click anywhere on the box for that sector. At this point, the sectors are grouped into subsectors. For example, when investors click on the “Medical” sector, they’ll see many subsectors including “Pharmaceutical preparations,” “Surgical & medical instruments,” and “Hospital & medical service plans.” This allows investors to evaluate and compare stocks based on companies that are more like them.</p> <p>And once investors are viewing a particular subsector, they can click on an individual company and be taken to that company’s profile page on the MarketBeat site.</p></div><script type="text/javascript">document.write('<img src="https://www.americanconsumer' + 'news.net/scripts/standalone/ViewCount.ashx?type=j&id=5341289 &referrer=' + encodeURIComponent(document.referrer) + '" alt="" width="1" height="1" />');</script></div></div></div></div></div></div> </div> <div id="PanelShare" class="modal" tabindex="-1" role="dialog"> <div class="modal-dialog modal-dialog-centered" role="document"> <div class="modal-content"> <div class="modal-title p-3 h3 m-0 text-center"> Share S&P 500 Heat Map With A Colleague </div> <div class="modal-body"> <div class="mb-4 article-share text-center"> <a title="Share on Facebook" href="https://www.facebook.com/sharer/sharer.php?u=https://www.marketbeat.com/market-data/sector-performance/?v=202411300530" target="_blank" rel="nofollow noopener" class="btn btn-share"><span class="fa-brands fa-facebook-f"></span></a><a title="Share on Twitter" href="https://twitter.com/intent/tweet?text=Free+Stock+Market+Heat+Map+%7c+S%26P+500+Performance+via+Heat+Map%20https://www.marketbeat.com/market-data/sector-performance/?v=202411300530" target="_blank" rel="nofollow noopener" class="btn btn-share"><span class="fa-brands fa-x-twitter"></span></a><a title="Share on LinkedIn" onclick="window.open('https://www.linkedin.com/cws/share?mini=true&url=https://www.marketbeat.com/market-data/sector-performance/?v=202411300530', 'name','width=600,height=600')" href="https://www.linkedin.com/cws/share?mini=true&url=https://www.marketbeat.com/market-data/sector-performance/?v=202411300530" target="popup" rel="nofollow noopener" class="btn btn-share"><span class="fa-brands fa-linkedin-in"></span></a><a title="Print this page" href ="javascript:window.print()" class="btn btn-share"><span class="fa-regular fa-print"></span></a><a title="Email this page" href="mailto:?subject=Free%20Stock%20Market%20Heat%20Map%20%7c%20S%26P%20500%20Performance%20via%20Heat%20Map&body=Check%20out%20this%20stock%3A%20https://www.marketbeat.com/market-data/sector-performance/?v=202411300530%0D%0A%0D%0AFor%20real-time%20financial%20news%20and%20analysis%2C%20visit%20https%3A%2F%2Fwww.marketbeat.com%2F%20." class="btn btn-share"><span class="fa-regular fa-envelope"></span></a><a title="Copy the URL of this page to the clipboard" href="https://www.marketbeat.com/market-data/sector-performance/?v=202411300530" class="btn btn-share shareCopy"><span class="fa-regular fa-link"></span></a><div class="fixed-notification alert alert-success" aria-live="polite" aria-atomic="true" role="alert">Link copied to clipboard.</div> </div> </div> <div class="modal-footer justify-content-center"> <button type="button" class="btn btn-secondary mb-0" data-dismiss="modal"> Close </button> </div> </div> </div> </div> <script src="https://cdnjs.cloudflare.com/ajax/libs/d3/4.13.0/d3.min.js"></script> <!-- Default Statcounter code for Marketbeat.com - Calendars https://www.marketbeat.com/ --> <script type="text/javascript"> var sc_project = 11737877; var sc_invisible = 1; var sc_security = "e541fd51"; var sc_https = 1; </script> <script type="text/javascript" src="https://www.statcounter.com/counter/counter.js"></script> <noscript> <div class="statcounter"><a title="Web Analytics" href="https://statcounter.com/" target="_blank"> <img class="statcounter" src="//c.statcounter.com/11737877/0/e541fd51/1/" alt="Web Analytics"></a></div> </noscript> <!-- End of Statcounter Code --> <script> var ScrpRestrict = "7F1873B5B4E0347F815A7DCB7E9EDB3FBF059CE96BFD3680058327FE1811B06996A659C725FC6FCEDFED3068929C5005165D7A8F190E26B794190085A0FA3D6D"</script> <script> var Version = "SP500"</script> <script src="/Scripts/sectorscript.js?v=202407"></script> <div id="pnlAllAccessTrial" class="inverse-on-homepage py-3 mb-4"> <div class="container p-0 "> <div class="bg-dark-blue-accent p-3 rounded pb-5 pb-xl-4"> <div class="row mx-0"> <div class="col-md-7 col-xl-4 my-3 mx-auto c-white mb-5"> <div class="h2 blue-accent-under">Get 30 Days of <span class="d-block" style="font-weight: 800">MarketBeat All Access</span> for Free</div> <p>Sign up for MarketBeat All Access to gain access to MarketBeat's full suite of research tools.</p> <a href="/subscribe/all-access/?referraltype=masterfooter" class="btn btn-featured c-white mt-3 mt-md-0 px-5">Start Your 30-Day Trial</a> </div> <div class="col-xl-8"> <h2 class="sr-only">MarketBeat All Access Features</h2> <div class="row narrow-gutter-row"> <div class="col-md-4 my-2"> <a href="/subscribe/all-access/?referraltype=masterfooter" class="card hover-card-blue p-4 h-100"> <div class="feature-icon"> <span class="fa-kit fa-best" style="line-height: 60px;"></span> </div> <h3>Best-in-Class Portfolio Monitoring</h3> <ul> <li>Get personalized stock ideas.</li> <li>Compare portfolio to indices.</li> <li>Check stock news, ratings, SEC filings, and more.</li> </ul> </a> </div> <div class="col-md-4 my-2"> <a class="card hover-card-blue p-4 h-100" href="/subscribe/all-access/?referraltype=masterfooter"> <div class="feature-icon"> <span class="fa-kit fa-stock-ideas"></span> </div> <h3>Stock Ideas and Recommendations</h3> <ul> <li>See daily stock ideas from top analysts.</li> <li>Receive short-term trading ideas from MarketBeat.</li> <li>Identify trending stocks on social media.</li> </ul> </a> </div> <div class="col-md-4 my-2"> <a class="card hover-card-blue p-4 h-100" href="/subscribe/all-access/?referraltype=masterfooter"> <div class="feature-icon"> <span class="fa-kit fa-research-tools"></span> </div> <h3>Advanced Stock Screeners and Research Tools</h3> <ul> <li>Use our seven stock screeners to find suitable stocks.</li> <li>Stay informed with MarketBeat's real-time news.</li> <li>Export data to Excel for personal analysis.</li> </ul> </a> </div> </div> </div> </div> </div> </div> </div> <div id="HelpersArea" style="opacity: 0; transition: opacity .5s; position: relative; z-index: 1001;"> <div id="pnlHelpers" class="multi-collapse-outer shadow collapse" style="position: fixed; right: 10px; bottom: 10px; width: 310px; background-color: var(--white); z-index: 400;"> </div> </div> <div id="pnlLoginCreateModal" class="modal fade show"> <div class="modal-dialog modal-dialog-centered" style="max-width: 650px;"> <div class="modal-content"> <div class="modal-body p-0" style="max-height: 95vh;"> <div class="row m-0"> <div class="col-sm-5 p-0 gradient-blue c-white p-3 p-sm-4" style="font-size: 1.05em;"> <div class="d-none d-sm-block"> <div class="font-12 mb-3">Sign in to your <span class="free">free</span> account to enjoy these benefits</div> <ul class="checkmark-list"> <li>In-depth profiles and analysis for 20,000 public companies.</li> <li>Real-time analyst ratings, insider transactions, earnings data, and more.</li> <li>Our daily ratings and market update email newsletter.</li> </ul> </div> <div class="d-sm-none"> <div class="font-12 lh-medium">Sign in to your <span class="free">free</span> account to enjoy all that MarketBeat has to offer.</div> </div> </div> <div class="col-sm-7 p-0 bg-white"> <div class="m-0"> <ul class="nav nav-tabs pl-2" role="tablist" aria-label="Log in or create account"> <li class="nav-item"> <a id="LoginOnModalTab" class="nav-link active" href="#pnlLoginOnModal" role="tab" aria-selected="true" tabindex="0" aria-controls="pnlLoginOnModal" data-toggle="tab" onclick="trapFocusInModal('#pnlLoginCreateModal', 'txtLoginOnModalEmail', 'LoginOnModalTab', 'LastLinkOnLoginTab');">Sign In</a> </li> <li class="nav-item"> <a id="CreateOnModalTab" class="nav-link" href="#pnlCreate" role="tab" aria-selected="false" tabindex="-1" aria-controls="pnlCreate" data-toggle="tab" onclick="trapFocusInModal('#pnlLoginCreateModal', 'txtCreateOnModalEmail', 'CreateOnModalTab', 'LastLinkOnCreateTab');">Create Account</a> </li> <li class="nav-item ml-auto"> <a id="CloseModal" class="nav-link special-purpose-nav-link font-15" href="#pnlCreate" role="tab" aria-selected="false" tabindex="-1" data-dismiss="modal" style="padding: 0.7rem; font-size: 1rem;" title="Close Login Modal"><i class="fa-regular fa-xmark"></i></a> </li> </ul> <div class="tab-content m-0 p-0" style="box-shadow: none !important;"> <div id="pnlLoginOnModal" class="tab-pane active" role="tabpanel" tabindex="0" aria-labelledby="LoginOnModalTab"> <div class="p-3"> <div id="pnlLoginOnModalInner" onkeypress="javascript:return WebForm_FireDefaultButton(event, 'btnLoginOnModal')"> <label class="bold m-0" for="txtLoginOnModalEmail">Your Email Address:</label> <input name="ctl00$txtLoginOnModalEmail" type="text" maxlength="300" id="txtLoginOnModalEmail" class="top-labeled-input" autofocus="" style="width:100%;" /> <div class="rfv-div-validation-triangle"> <span id="rfvEmail" style="color:#D2333D;display:none;">Email Address Required</span> </div> <label class="bold m-0" for="txtLoginOnModalPassword">Your Password:</label> <input name="ctl00$txtLoginOnModalPassword" type="password" maxlength="300" id="txtLoginOnModalPassword" class="top-labeled-input mb-3" style="width:100%;" /> <div class="rfv-div-validation-triangle"> <span id="RequiredFieldValidator1" style="color:#D2333D;display:none;">Password Required</span> </div> <a onclick="LoginOnModalSubmit();return false;" id="btnLoginOnModal" class="btn btn-primary allow-loading" UseSubmitBehavior="false" href="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$btnLoginOnModal", "", true, "Login", "", false, true))" style="display:inline-block;width:100%;">Log In<span class='load loading'></span></a> <div id="loginOnModalWarning"></div> </div> <div style="font-size: 18px; padding-bottom: 13px; text-align: center"> <hr style="margin: 0; position: relative; top: .65em; color: #555;" /> <span style="background: var(--white); padding: 0 10px; position: relative; color: #6a6a6a;">or</span> </div> <div class="d-flex flex-wrap" style="margin: 0 -2px;"> <a href="#" onclick="helloinit();hello('facebook').login({scope : 'email',force : true}); return false;" class="facebook-login-button zocial facebook"> <img src="/images/facebook-logo-2.png" width="22" height="22" loading="lazy" alt="Facebook icon" style="vertical-align: middle; vertical-align: middle; width: 22px; float: left; margin: 4px;" />Sign in with Facebook</a> <a href="#" onclick="helloinit();hello('google').login({scope : 'email',force : true}); return false;" class="zocial google"> <img src="/images/google-g-logo.png" width="20" height="20" loading="lazy" alt="Google icon" style="vertical-align: middle; width: 20px; float: left; margin: 5px;" />Sign in with Google</a> </div> <div style="padding-top: 18px; font-size: 14px;"><a id="LastLinkOnLoginTab" href="/forgot-password/">Forgot your password?</a></div> </div> </div> <div id="pnlCreate" class="tab-pane bg-light-gray" role="tabpanel" aria-labelledby="CreateOnModalTab"> <div class="p-3"> <div id="pnlCreateInner" onkeypress="javascript:return WebForm_FireDefaultButton(event, 'btnOnEnterCreateOnModal')"> <label class="bold m-0" for="txtCreateOnModalEmail">Your Email Address:</label> <input name="ctl00$txtCreateOnModalEmail" type="text" maxlength="300" id="txtCreateOnModalEmail" class="top-labeled-input" style="width:100%;" /> <div class="rfv-div-validation-triangle"> <span id="RequiredFieldValidator2" style="color:#D2333D;display:none;">Please enter your email address.</span> </div> <div class="rfv-div-validation-triangle"> <span id="rgxEmail" style="color:#D2333D;display:none;">Please enter a valid email address</span> </div> <label class="bold m-0" for="txtCreateOnModalPassword" title="Your password must be at least 8 characters long and contain at least 1 number, 1 letter, and 1 special character.">Choose a Password:</label> <input name="ctl00$txtCreateOnModalPassword" type="password" maxlength="300" id="txtCreateOnModalPassword" class="top-labeled-input mb-3" style="width:100%;" /> <div class="rfv-div-validation-triangle"> <span id="RequiredFieldValidator3" style="color:#D2333D;display:none;">Please enter your password.</span> </div> <div class="rfv-div-validation-triangle" style="line-height: 1; padding-top: 5px;"> <span id="Regex1" style="color:#D2333D;display:none;">Your password must be at least 8 characters long and contain at least 1 number, 1 letter, and 1 special character.</span> </div> <button id="createOnModalVisibleButton" class="btn btn-primary w-100 g-recaptcha allow-loading" data-sitekey="6Lddn5keAAAAAPlD91bDkOh-lnZZxsz5b4ddp3Mw" data-callback='CreateOnModalSubmit' data-action='submit'>Create My Account (Free)<span class='load loading'></span></button> <div id="createOnModalWarning" class="mb-2" style="display: none;"></div> <div class="d-none"> <input type="submit" name="ctl00$btnOnEnterCreateOnModal" value="Submit the Form" onclick="$('#createOnModalVisibleButton').click();WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$btnOnEnterCreateOnModal", "", true, "Signup", "", false, false))" id="btnOnEnterCreateOnModal" style="width:100%;" /> <input type="submit" name="ctl00$btnCreateOnModal" value="Create My Account (Free)" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$btnCreateOnModal", "", true, "Signup", "", false, false))" id="btnCreateOnModal" style="width:100%;" /> </div> </div> <div style="padding-top: 15px; font-size: 18px; padding-bottom: 13px; text-align: center"> <hr style="margin: 0; position: relative; top: .65em; color: #555;" /> <span style="padding: 0 10px; position: relative; color: #6a6a6a;" class="bg-light-gray">or</span> </div> <div class="d-flex flex-wrap" style="margin: 0 -2px;"> <a href="#" onclick="helloinit();hello('facebook').login({scope : 'email',force : true}); return false;" class="facebook-login-button zocial facebook"> <img src="/images/facebook-logo-2.png" width="22" height="22" loading="lazy" alt="Facebook icon" style="vertical-align: middle; vertical-align: middle; width: 22px; float: left; margin: 4px;" />Sign in with Facebook</a> <a href="#" onclick="helloinit();hello('google').login({scope : 'email',force : true}); return false;" class="zocial google"> <img src="/images/google-g-logo.png" width="20" height="20" loading="lazy" alt="Google icon" style="vertical-align: middle; vertical-align: middle; width: 20px; float: left; margin: 5px;" />Sign in with Google</a> </div> <div style="padding-top: 18px; font-size: 13px;">By creating a free account, you agree to our <a href="/terms/" target="_blank">terms of service.</a> This site is protected by reCAPTCHA and the Google <a rel="nofollow" href="https://policies.google.com/privacy">Privacy Policy</a> and <a rel="nofollow" id="LastLinkOnCreateTab" href="https://policies.google.com/terms">Terms of Service</a> apply.</div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> <script type="text/javascript"> //<![CDATA[ var Page_Validators = new Array(document.getElementById("rfvEmail"), document.getElementById("RequiredFieldValidator1"), document.getElementById("RequiredFieldValidator2"), document.getElementById("rgxEmail"), document.getElementById("RequiredFieldValidator3"), document.getElementById("Regex1")); //]]> </script> <script type="text/javascript"> //<![CDATA[ var rfvEmail = document.all ? document.all["rfvEmail"] : document.getElementById("rfvEmail"); rfvEmail.controltovalidate = "txtLoginOnModalEmail"; rfvEmail.errormessage = "Email Address Required"; rfvEmail.display = "Dynamic"; rfvEmail.validationGroup = "Login"; rfvEmail.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid"; rfvEmail.initialvalue = ""; var RequiredFieldValidator1 = document.all ? document.all["RequiredFieldValidator1"] : document.getElementById("RequiredFieldValidator1"); RequiredFieldValidator1.controltovalidate = "txtLoginOnModalPassword"; RequiredFieldValidator1.errormessage = "Password Required"; RequiredFieldValidator1.display = "Dynamic"; RequiredFieldValidator1.validationGroup = "Login"; RequiredFieldValidator1.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid"; RequiredFieldValidator1.initialvalue = ""; var RequiredFieldValidator2 = document.all ? document.all["RequiredFieldValidator2"] : document.getElementById("RequiredFieldValidator2"); RequiredFieldValidator2.controltovalidate = "txtCreateOnModalEmail"; RequiredFieldValidator2.errormessage = "Please enter your email address."; RequiredFieldValidator2.display = "Dynamic"; RequiredFieldValidator2.validationGroup = "Signup"; RequiredFieldValidator2.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid"; RequiredFieldValidator2.initialvalue = ""; var rgxEmail = document.all ? document.all["rgxEmail"] : document.getElementById("rgxEmail"); rgxEmail.controltovalidate = "txtCreateOnModalEmail"; rgxEmail.errormessage = "Please enter a valid email address"; rgxEmail.display = "Dynamic"; rgxEmail.validationGroup = "Signup"; rgxEmail.evaluationfunction = "RegularExpressionValidatorEvaluateIsValid"; rgxEmail.validationexpression = "\\w+([-+.\']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*"; var RequiredFieldValidator3 = document.all ? document.all["RequiredFieldValidator3"] : document.getElementById("RequiredFieldValidator3"); RequiredFieldValidator3.controltovalidate = "txtCreateOnModalPassword"; RequiredFieldValidator3.errormessage = "Please enter your password."; RequiredFieldValidator3.display = "Dynamic"; RequiredFieldValidator3.validationGroup = "Signup"; RequiredFieldValidator3.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid"; RequiredFieldValidator3.initialvalue = ""; var Regex1 = document.all ? document.all["Regex1"] : document.getElementById("Regex1"); Regex1.controltovalidate = "txtCreateOnModalPassword"; Regex1.errormessage = "Your password must be at least 8 characters long and contain at least 1 number, 1 letter, and 1 special character."; Regex1.display = "Dynamic"; Regex1.validationGroup = "Signup"; Regex1.evaluationfunction = "RegularExpressionValidatorEvaluateIsValid"; Regex1.validationexpression = "^(?=.*[A-Za-z])(?=.*\\d)(?=.*[$@$!%*#?&])[A-Za-z\\d$@$!%*#?&-]{8,}$"; //]]> </script> <script type="text/javascript"> //<![CDATA[ var Page_ValidationActive = false; if (typeof(ValidatorOnLoad) == "function") { ValidatorOnLoad(); } function ValidatorOnSubmit() { if (Page_ValidationActive) { return ValidatorCommonOnSubmit(); } else { return true; } } //]]> </script> </form> </article> </div> </main> <footer> <div class="bg-blue c-white position-relative"> <div class="featured-in container"> <p class="pt-4 m-0 text-center font-weight-medium text-uppercase font-smaller" style="letter-spacing: 1px;">Featured By</p> <div class="d-lg-flex justify-content-center align-items-center py-2"> <div class="text-center px-3"> <span class="fa-kit fa-barrons" role="img" aria-label="Barron's"></span> <span class="fa-kit fa-entrepreneur" role="img" aria-label="Entrepreneur Magazine"></span> <span class="fa-kit fa-forbes" role="img" aria-label="Forbes"></span> <span class="fa-kit fa-inc" role="img" aria-label="Inc. Magazine"></span> <span class="fa-kit fa-investing" role="img" aria-label="Investing.com"></span> <span class="fa-kit fa-nasdaq" role="img" aria-label="NASDAQ"></span> <span class="fa-kit fa-prairiebusiness" role="img" aria-label="Prairie Business"></span> <span class="fa-kit fa-seeking-alpha" role="img" aria-label="Seeking Alpha"></span> </div> </div> </div> </div> <div class="bg-blue-13 c-white position-relative" style="background:var(--blue-14);font-size: .9em;"> <div class="container"> <div class="row pt-4 pb-2 justify-content-between"> <div class="col-12 col-lg-4 col-xl-3"> <div class="row justify-content-between align-items-start align-items-lg-center"> <div class="col-12 col-sm-3 col-md-4 col-lg-12 text-center text-md-left"> <img class="h-auto mb-lg-1 mt-lg-2" id="footer-logo" src="/images/master/MarketBeat-logo-r-white.svg?v=2019" alt="MarketBeat - Stock Market News and Research Tools" loading="lazy" width="256" height="65"> </div> <div class="col-12 col-sm-5 col-md-4 col-lg-12 text-center text-sm-left"> <div class="font-weight-bold mt-2 mt-sm-0 mt-lg-3">Empowering Individual Investors</div> <p class="small my-2"> 345 N Reid Place, Suite 620, Sioux Falls, SD 57103 <br /> contact@marketbeat.com <br /> (844) 978-6257 </p> </div> <div class="col-12 col-sm-4 col-lg-12 text-center text-sm-left mt-1 mt-lg-4"> <ul class="footer-follow nounderline my-0 p-0"> <li class="d-inline-block mr-md-1"> <a href="https://twitter.com/MarketBeatCom" target="_blank" rel="noopener"> <span class="fa-brands fa-x-twitter c-white mr-sm-1"></span> <span class="sr-only">Twitter</span> </a> </li> <li class="d-inline-block mr-md-1"> <a href="https://www.facebook.com/marketbeatcom/" target="_blank" rel="noopener"> <span class="fa-brands fa-facebook-f c-white mr-sm-1"></span> <span class="sr-only">Facebook</span> </a> </li> <li class="d-inline-block mr-md-1"> <a href="https://www.youtube.com/marketbeatcom?sub_confirmation=1" target="_blank" rel="noopener"> <span class="fa-brands fa-youtube c-white mr-sm-1"></span> <span class="sr-only">YouTube</span> </a> </li> <li class="d-inline-block mr-md-1"> <a href="https://www.linkedin.com/company/marketbeat" title="Follow MarketBeat on LinkedIn" target="_blank" rel="noopener"> <span class="fa-brands fa-linkedin-in c-white mr-sm-1"></span> <span class="sr-only">LinkedIn</span> </a> </li> </ul> </div> </div> </div> <div class="col-12 col-lg-8 col-xl-9 border-top mt-3 pt-3" style="border-color: #F6F8F724 !important"> <div class="row"> <div class="col-6 col-sm-4 col-lg-auto pr-xl-4 pb-3"> <h2 class="mt-1 mb-2 barlow-condensed" style="font-size: 1em;">About MarketBeat</h2> <ul class="mx-0 my-1 p-0 list-unstyled" style="font-size: 0.9em;"> <li class="my-2"><a class="font-weight-normal" href="/about/">About</a> </li> <li class="my-2"><a class="font-weight-normal" href="/editorial-guidelines/">Editorial Guidelines</a></li> <li class="my-2"><a class="font-weight-normal" href="/authors/">Authors</a></li> <li class="my-2"><a class="font-weight-normal" href="/press-room/">Press Room</a></li> <li class="my-2"><a class="font-weight-normal" href="/careers/">Careers</a></li> <li class="my-2"><a class="font-weight-normal" href="/contact/">Contact</a></li> <li class="d-inline-block mb-2 pr-2 mr-1 border-right"><a class="font-weight-normal" href="/faq/">FAQ</a></li> <li class="d-inline-block mb-2"><a class="font-weight-normal" href="/help/">Help</a></li> </ul> </div> <div class="col-6 col-sm-4 col-lg-auto pr-xl-4 pb-3"> <h2 class="mt-1 mb-2 barlow-condensed" style="font-size: 1em;">MarketBeat Products</h2> <ul class="mx-0 my-1 p-0 list-unstyled" style="font-size: 0.9em;"> <li class="my-2"><a class="font-weight-normal" href="/compare-products/">Compare Products</a></li> <li class="my-2"><a class="font-weight-normal" href="https://www.marketbeat.com/subscribe/all-access/?ProductCode=aap1997t&ReferralType=WebNavigation">MarketBeat All Access</a></li> <li class="my-2"><a class="font-weight-normal" href="/reviews/">Customer Reviews</a></li> <li class="my-2"><a class="font-weight-normal" href="/ratings/newsletter/">MarketBeat Daily Ratings</a></li> <li class="my-2"><a class="font-weight-normal" href="/ratings/newsletter-canada/">MarketBeat Daily Canada</a></li> <li class="my-2"><a class="font-weight-normal" href="/cryptocurrencies/newsletter/">MarketBeat CryptoBeat</a></li> <li class="my-2"><a class="font-weight-normal" href="/mobileapp/">MarketBeat Mobile App</a></li> </ul> </div> <div class="col-6 col-sm-4 col-lg-auto pr-xl-4 pb-3"> <h2 class="mt-1 mb-2 barlow-condensed" style="font-size: 1em;">Popular Tools</h2> <ul class="mx-0 my-1 p-0 list-unstyled" style="font-size: 0.9em;"> <li class="my-2"><a class="font-weight-normal" href="/stocks/">Stock Lists</a></li> <li class="my-2"><a class="font-weight-normal" href="/compare-stocks/">Compare Stocks</a></li> <li class="my-2"><a class="font-weight-normal" href="/dividends/calculator/">Dividend Calculator</a></li> <li class="my-2"><a class="font-weight-normal" href="/manage/watchlists/">My MarketBeat</a></li> <li class="my-2"><a class="font-weight-normal" href="/stock-screener/">Stock Screener</a></li> </ul> </div> <div class="col-6 col-sm-4 col-lg-auto pr-xl-4 pb-3"> <h2 class="mt-1 mb-2 barlow-condensed" style="font-size: 1em;">Financial Calendars</h2> <ul class="mx-0 my-1 p-0 list-unstyled" style="font-size: 0.9em;"> <li class="my-2"><a class="font-weight-normal" href="/ratings/">Analyst Ratings</a></li> <li class="my-2"><a class="font-weight-normal" href="/dividends/">Dividends</a></li> <li class="my-2"><a class="font-weight-normal" href="/earnings/latest/">Earnings</a></li> <li class="my-2"><a class="font-weight-normal" href="/insider-trades/">Insider Trades</a></li> <li class="my-2"><a class="font-weight-normal" href="/stock-market-holidays/">Stock Market Holidays</a></li> </ul> </div> <div class="col-6 col-sm-4 col-lg-auto pr-xl-4 pb-3"> <h2 class="mt-1 mb-2 barlow-condensed" style="font-size: 1em;">Terms & Info</h2> <ul class="mx-0 my-1 p-0 list-unstyled" style="font-size: 0.9em;"> <li class="my-2"><a class="font-weight-normal" href="/advertising/">Advertising</a></li> <li class="my-2"><a class="font-weight-normal" href="/accessibility/">Accessibility Statement</a></li> <li class="my-2"><a class="font-weight-normal" href="/do-not-sell-my-information/">Do Not Sell My Information</a></li> <li class="my-2"><a class="font-weight-normal" href="/terms/#privacy-policy">Privacy Policy</a></li> <li class="my-2"><a class="font-weight-normal" href="/rss-feeds/">RSS Feeds</a></li> <li class="my-2"><a class="font-weight-normal" href="/terms/">Terms of Service</a></li> <li class="my-2"><a class="font-weight-normal" href="/sitemap/">Sitemap</a></li> </ul> </div> </div> </div> <div class="col-12 mt-3"> <p class="small my-0 py-3">© MarketBeat Media, LLC 2010-2024. All rights reserved.</p> <p class="small my-0 py-3"> © 2024 Market data provided is at least 10-minutes delayed and hosted by Barchart Solutions. Information is provided 'as-is' and solely for informational purposes, not for trading purposes or advice, and is delayed. To see all exchange delays and terms of use please see <a href="https://www.barchartmarketdata.com/terms" rel="nofollow">Barchart's disclaimer</a>. <span id="keep-for-checking-size" class="d-none d-sm-inline-block"></span> </p> </div> </div> </div> </div> </footer> <div class="menu-closer"></div> </div> <nav id="left-side-menu" class="bg-blue-11" aria-label="Primary Mobile Menu"> </nav> <nav id="right-side-menu" class="bg-blue-11 d-none" aria-label="User Menu & Notifications"> <div style="margin: 0 5px; height: 374px;"> <p class="side-menu-title mt-2 ml-1"><a href="/manage/" style="font-weight: normal;">My Account - <span class="d-inline-block lh-loose" style="white-space: nowrap;"> </span></a></p> <ul class="side-menu-list"> <li><a class='wl-tab-change' href="/manage/watchlists/#portfolio"><span class="fa-kit fa-marketbeat-m mr-2"></span>My MarketBeat</a></li> <li><a class='wl-tab-change' href="/manage/watchlists/#newsletter"><span class="fa-regular fa-envelope-open-text mr-2"></span>My Newsletter</a></li> <li><a href="/manage/alerts/"><span class="fa-regular fa-bell mr-2"></span>My Alerts</a></li> <li><a href="/manage/subscriptions/"><span class="fa-regular fa-rectangle-vertical-history mr-2"></span>My Subscriptions</a></li> <li><a href="/manage/"><span class="fa-regular fa-gear mr-2"></span>My Account Settings</a></li> <li><a href="/manage/payments/"><span class="fa-regular fa-credit-card mr-2"></span>My Payment Settings</a></li> <li><a class="g_id_signout" href="/login/?cmd=logout"><span class="fa-regular fa-right-from-bracket mr-2"></span>Log Out</a></li> </ul> </div> <div id="notifications-area" class="pt-3 position-relative" style="opacity: 0; transition: opacity .7s;"> </div> </nav> <div id="video-modal-global" class="d-none"> <div id="video-modal" class="modal" tabindex="-1" role="dialog"> <div class="modal-dialog modal-dialog-centered" role="document"> <div class="modal-content"> <button type="button" class="close clear-button" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> <div class="modal-body row m-0 p-0" style="max-height: none;"> <div class="video-column bg-black col-12 px-0"> <div class="videowrapper"> <iframe id="video-iframe" allow="accelerometer; autoplay;" style="border: 0;" allowfullscreen></iframe> </div> </div> <div id="video-description" class="bg-light-gray box-shadow d-none"></div> </div> </div> </div> </div> </div> <!-- more scripts --> <script> function CreateOnModalSubmit(token) { console.log(token); if (CheckCreateOnModal("txtCreateOnModalEmail", "createOnModalWarning", "createOnModalVisibleButton")) { console.log("passed CheckCreateOnModal"); $("#btnCreateOnModal").click(); } } function LoginOnModalSubmit() { CheckLoginOnModal("txtLoginOnModalEmail", "txtLoginOnModalPassword", "loginOnModalWarning", "btnLoginOnModal"); return false; } function setPremiumPageWording() { $('.free').addClass("d-none"); } </script> <script defer src="/Scripts/libraries/hello.all.js"></script> <script defer src="/Scripts/libraries/popper.min.js"></script> <script defer src="/Scripts/libraries/bootstrap.min.js"></script> <script defer src="/Scripts/libraries/jquery-ui.min.js"></script> <script defer type="text/javascript" src="/scripts/masterscripts9.js?v=20241122"></script> <!-- Popup --> <script type="text/javascript">var ShowExitPopup = true;</script> <script type="text/javascript">LoadPopupRatings('MB-Popup','marketbeat.com'); </script> <script type='text/javascript'>setCookie("MarketBeatOptinCookie", 1, 3);</script> <script>var getNewsletterButton = "<a id=\"mmsubbutton\" href=\"https://www.marketbeat.com/subscribe/all-access/?ReferralType=HeaderButtonMobile\" class=\"btn btn-featured m-3 d-block p-2\" style='width:calc(100% - 3rem); color: var(--black);' aria-label=\"Sign Up\"><span class=\"fa-regular fa-dollar-sign\"></span><span class=\"px-1 d-lg-inline-block\"> Free Trial </span></a>";</script> <!-- Yahoo Gemini --> <!-- Primary MarketBeat StatCounter Project --> <script type="text/javascript"> var sc_project = 7602069; var sc_invisible = 1; var sc_security = "74cbf3e8"; var sc_https = 1; </script> <script type="text/javascript" src="https://www.statcounter.com/counter/counter.js"></script> <noscript> <div class="statcounter"> <img class="statcounter" src="//c.statcounter.com/7602069/0/74cbf3e8/1/" alt="Web Analytics"></div> </noscript> <!-- End of Primary StatCounter Code --> <script type="text/javascript"> (function () { const second = 1000, minute = second * 60, hour = minute * 60, day = hour * 24; let today = new Date(), eventDate = new Date(Date.UTC(2023, 06, 29, 05, 59, 00, 00)); // must be 5 hours 59 minutes after you want it to end because of time zones and the month is zero indexed //end const countDown = new Date(eventDate).getTime(), x = setInterval(function () { if (document.getElementById("countdown") != null) { const now = new Date().getTime(), distance = countDown - now; document.getElementById("days").innerText = Math.floor(distance / (day)), document.getElementById("hours").innerText = Math.floor((distance % (day)) / (hour)), document.getElementById("minutes").innerText = Math.floor((distance % (hour)) / (minute)), document.getElementById("seconds").innerText = Math.floor((distance % (minute)) / second); //do something later when date is reached if (distance <= 0) { document.getElementById("days").innerText = 0, document.getElementById("hours").innerText = 0, document.getElementById("minutes").innerText = 0, document.getElementById("seconds").innerText = 0; clearInterval(x); } //seconds } }, 200) }()); (function () { if (document.getElementById("countdownIndividual") != null) { const second = 1000, minute = second * 60, hour = minute * 60, day = hour * 24; var daysToOffer = 2; let expirationDate = new Date(new Date().getTime() + (daysToOffer * 24 * 60 * 60 * 1000)); if (getCookie("HIExpiration")) { expirationDate = new Date(getCookie("HIExpiration")); } else { setCookie("HIExpiration", expirationDate.toJSON(), 16) } //end const countDown = new Date(expirationDate).getTime(), x = setInterval(function () { const now = new Date().getTime(), distance = countDown - now; document.getElementById("days").innerText = Math.floor(distance / (day)), document.getElementById("hours").innerText = Math.floor((distance % (day)) / (hour)), document.getElementById("minutes").innerText = Math.floor((distance % (hour)) / (minute)), document.getElementById("seconds").innerText = Math.floor((distance % (minute)) / second); //do something later when date is reached if (distance <= 0) { document.getElementById("days").innerText = 0, document.getElementById("hours").innerText = 0, document.getElementById("minutes").innerText = 0, document.getElementById("seconds").innerText = 0; clearInterval(x); } //seconds }, 200) } }()); </script> </body> </html>