www.marketbeat.com Open in urlscan Pro
2606:4700:3108::ac42:2b0e  Public Scan

Submitted URL: https://email.analystratings.net/ls/click?upn=u001.WeKo-2BCuHku2kJmVIsYmGxteRO-2BqdkFdZns7E8OZ0trhuVzv60JIJuCmRQkqJu3kj-2BlqFESQM...
Effective URL: https://www.marketbeat.com/manage/watchlists/?AccountID=11404962&hash=54155C44E1BA582367DE39E87C49FED2667478813F80DF261F886...
Submission: On November 08 via api from BE — Scanned from DE

Form analysis 2 forms found in the DOM

GET /pages/search.aspx

<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 ui-autocomplete-input" placeholder="Search stocks, news, and tools..." style="font-size:.9em;" autocomplete="off">
  <span id="mainAutocompleteList">
    <ul id="ui-id-3" tabindex="0" class="ui-menu ui-widget ui-widget-content ui-autocomplete ui-front" unselectable="on" style="display: none;"></ul>
  </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>

POST ./?AccountID=11404962&hash=54155C44E1BA582367DE39E87C49FED2667478813F80DF261F8865C4866EA1CFAA87097611AF0C87213F14E55C1F6DD753850FFB8F73AB7F52849A0A689CBD51&utm_source=newsletter&utm_medium=email&utm_campaign=newsletterclick

<form method="post"
  action="./?AccountID=11404962&amp;hash=54155C44E1BA582367DE39E87C49FED2667478813F80DF261F8865C4866EA1CFAA87097611AF0C87213F14E55C1F6DD753850FFB8F73AB7F52849A0A689CBD51&amp;utm_source=newsletter&amp;utm_medium=email&amp;utm_campaign=newsletterclick"
  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="__LASTFOCUS" id="__LASTFOCUS" value="">
    <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE"
      value="/wEPDwULLTE0OTYzNTg0MjEPZBYCZg9kFhpmD2QWBgIYDxYCHgRUZXh0BcYCPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPk9uZVNpZ25hbC5wdXNoKGZ1bmN0aW9uICgpIHtPbmVTaWduYWwuZ2V0VXNlcklkKGZ1bmN0aW9uICh1c2VySWQpIHskLmdldCgiL3NjcmlwdHMvT25lU2lnbmFsVHJhY2tpbmcuYXNoeD9Vc2VySUQ9MTE0MDQ5NjImSGFzaD0xQzk5NDY5RjgxRDM4RjlDNEI1QjA5OUNEMkMzQUIyNDQwM0VFNTRGQUM0RURBNDQ0REM5Qjg4NDc1MzZDNEFERTUxRTc2MEJGMTgyQTk4NzM2OUQyNkMyOERBNDVEMDc2MDVERUYzNEE0MzQ1QjRGRjNEQTNFMkJEM0Q2MDAyRCZPbmVTaWduYWxJRD0iICsgdXNlcklkKTt9KTt9KTs8L3NjcmlwdD5kAhkPZBYCAgEPFgIfAAV6PHN0eWxlPkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgeyNjcGhQcmltYXJ5Q29udGVudF9wbmxVcGRhdGVTdG9ja1ByaWNlIHsgcG9zaXRpb246IGFic29sdXRlO3RvcDogMDtyaWdodDogMDsgfX0gPC9zdHlsZT5kAhoPFgIfAAXMATxtZXRhIHByb3BlcnR5PSJvZzppbWFnZSIgY29udGVudD0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vaW1hZ2VzL21hcmtldGJlYXQtbG9nby0xMjAwLTEyMDAuanBnP3Y9MSIvPjxtZXRhIHByb3BlcnR5PSJvZzppbWFnZTp3aWR0aCIgY29udGVudD0iMTIwMCIgLz48bWV0YSBwcm9wZXJ0eT0ib2c6aW1hZ2U6aGVpZ2h0IiBjb250ZW50PSIxMjAwIiAvPmQCAg8PFgIeB1Zpc2libGVnZGQCCA8WAh8ABasCPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnZhciBzY3JvbGxpbmdUaWNrZXJzRmlsZSA9ICcvU2NyaXB0cy9TY3JvbGxpbmdUaWNrZXJzLmFzaHg/YWNjb3VudGlkPTExNDA0OTYyJmhhc2g9RDNDMTZERUIxREE1MEFBRjQxOTI3QjQ3OTYyQTMwMkM0OEI5NzRGODFBNzIyNzY3OUI2MjQ5M0E1ODZENEVCRDM4NjVDQTg4NkRBMDdCMEU2MjVGMTZBRkMzODgxMDIxNjJCNDJERDkzMEZERTJFMjk4QUE4M0U5RTIzNDA4NkEmaW50ZXJ2YWw9MjQxMTA4MTIzMyZ1c2VybGV2ZWw9RnJlZVN1YnNjcmliZXInOyA8L3NjcmlwdD5kAgkPFgIfAAX0KTxsaSBjbGFzcz0iaGFzLXN1Ym1lbnUiPjxhIGhyZWY9Ii92aWRlb3MvIj5NYXJrZXRCZWF0IFRWPC9hPjx1bCBjbGFzcz0icm93IGxpbWl0ZWQtdmlkZW8tc3VibWVudSI+PGxpIGNsYXNzPSJtZWdhLW9ubHkgbWItMiBjb2wtNiBwbC0wIj48YSBocmVmPSIvdmlkZW9zL3Jldm9sdXRpb25pemluZy1sb2dpc3RpY3MtZG90LWFpLWNvcnBvcmF0aW9uLWNlby1lZC1uYWJyb3R6a3ktdGFsa3MtaXBvLWFuZC1pbm5vdmF0aW9ucy8iIGNsYXNzPSJwb3NpdGlvbi1yZWxhdGl2ZSI+PHNwYW4gY2xhc3M9ImQtZmxleCBwb3NpdGlvbi1yZWxhdGl2ZSBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciI+PHNwYW4gY2xhc3M9InBvc2l0aW9uLWFic29sdXRlIGZhLXNvbGlkIGZhLXBsYXkgYy13aGl0ZSIgYXJpYS1oaWRkZW49InRydWUiIHN0eWxlPSJvcGFjaXR5OjAuODtmb250LXNpemU6M2VtOyI+PC9zcGFuPjxpbWcgY2xhc3M9InctMTAwIiBzcmM9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2xvZ29zL3ZpZGVvcy90aHVtYl8yMDI0MTEwODEwMzc0N192aWRlbzIwMjQtMTEtZG90YWkucG5nIiBhbHQ9IlJldm9sdXRpb25pemluZyBMb2dpc3RpY3M6IERvdCBBaSBDb3Jwb3JhdGlvbiBDRU8gRWQgTmFicm90emt5IFRhbGtzIElQTyBhbmQgSW5ub3ZhdGlvbnMiIGhlaWdodD0iNzkiIHdpZHRoPSIxNDAiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyIvPjwvc3Bhbj48c3BhbiBjbGFzcz0iZC1ibG9jayBtdC0xIiBzdHlsZT0ibGluZS1oZWlnaHQ6MS4yZW07Ij5SZXZvbHV0aW9uaXppbmcgTG9naXN0aWNzOiBEb3QgQWkgQ29ycG9yYXRpb24gQ0VPIEVkIE5hYnJvdHpreSBUYWxrcyBJUE8gYW5kIElubm92YXRpb25zPC9zcGFuPjwvYT48L2xpPjxsaSBjbGFzcz0ic2lkZS1vbmx5Ij48YSBocmVmPScvdmlkZW9zL3Jldm9sdXRpb25pemluZy1sb2dpc3RpY3MtZG90LWFpLWNvcnBvcmF0aW9uLWNlby1lZC1uYWJyb3R6a3ktdGFsa3MtaXBvLWFuZC1pbm5vdmF0aW9ucy8nPlJldm9sdXRpb25pemluZyBMb2dpc3RpY3M6IERvdCBBaSBDb3Jwb3JhdGlvbiBDRU8gRWQgTmFicm90emt5IFRhbGtzIElQTyBhbmQgSW5ub3ZhdGlvbnM8L2E+PC9saT48bGkgY2xhc3M9Im1lZ2Etb25seSBtYi0yIGNvbC02IHBsLTAiPjxhIGhyZWY9Ii92aWRlb3MvbWFzc2l2ZS1tYXJrZXQtbW92ZXMtZm9sbG93aW5nLXRydW1wLXdpbi10ZXNsYS1qcC1tb3JnYW4tYW5kLWJpdGNvaW4tc29hci8iIGNsYXNzPSJwb3NpdGlvbi1yZWxhdGl2ZSI+PHNwYW4gY2xhc3M9ImQtZmxleCBwb3NpdGlvbi1yZWxhdGl2ZSBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciI+PHNwYW4gY2xhc3M9InBvc2l0aW9uLWFic29sdXRlIGZhLXNvbGlkIGZhLXBsYXkgYy13aGl0ZSIgYXJpYS1oaWRkZW49InRydWUiIHN0eWxlPSJvcGFjaXR5OjAuODtmb250LXNpemU6M2VtOyI+PC9zcGFuPjxpbWcgY2xhc3M9InctMTAwIiBzcmM9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2xvZ29zL3ZpZGVvcy90aHVtYl8yMDI0MTEwNjE4MjMxMF92aWRlb3RydW1wbWFya2V0cmVhY3Rpb24ucG5nIiBhbHQ9Ik1hc3NpdmUgTWFya2V0IE1vdmVzIEZvbGxvd2luZyBUcnVtcCBXaW46IFRlc2xhLCBKUCBNb3JnYW4sICYgQml0Y29pbiBTb2FyIiBoZWlnaHQ9Ijc4IiB3aWR0aD0iMTQwIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiLz48L3NwYW4+PHNwYW4gY2xhc3M9ImQtYmxvY2sgbXQtMSIgc3R5bGU9ImxpbmUtaGVpZ2h0OjEuMmVtOyI+TWFzc2l2ZSBNYXJrZXQgTW92ZXMgRm9sbG93aW5nIFRydW1wIFdpbjogVGVzbGEsIEpQIE1vcmdhbiwgJiBCaXRjb2luIFNvYXI8L3NwYW4+PC9hPjwvbGk+PGxpIGNsYXNzPSJzaWRlLW9ubHkiPjxhIGhyZWY9Jy92aWRlb3MvbWFzc2l2ZS1tYXJrZXQtbW92ZXMtZm9sbG93aW5nLXRydW1wLXdpbi10ZXNsYS1qcC1tb3JnYW4tYW5kLWJpdGNvaW4tc29hci8nPk1hc3NpdmUgTWFya2V0IE1vdmVzIEZvbGxvd2luZyBUcnVtcCBXaW46IFRlc2xhLCBKUCBNb3JnYW4sICYgQml0Y29pbiBTb2FyPC9hPjwvbGk+PGxpIGNsYXNzPSJtZWdhLW9ubHkgbWItMiBjb2wtNiBwbC0wIj48YSBocmVmPSIvdmlkZW9zL3RvcC0zLXN0b2Nrcy11bmRlci0yMC13aXRoLXN0cm9uZy1idXktcmF0aW5ncy1hbmQtZ3Jvd3RoLXBvdGVudGlhbC8iIGNsYXNzPSJwb3NpdGlvbi1yZWxhdGl2ZSI+PHNwYW4gY2xhc3M9ImQtZmxleCBwb3NpdGlvbi1yZWxhdGl2ZSBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciI+PHNwYW4gY2xhc3M9InBvc2l0aW9uLWFic29sdXRlIGZhLXNvbGlkIGZhLXBsYXkgYy13aGl0ZSIgYXJpYS1oaWRkZW49InRydWUiIHN0eWxlPSJvcGFjaXR5OjAuODtmb250LXNpemU6M2VtOyI+PC9zcGFuPjxpbWcgY2xhc3M9InctMTAwIiBzcmM9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2xvZ29zL3ZpZGVvcy90aHVtYl8yMDI0MTEwNTE4MTU0Ml92aWRlbzNzdHJvbmdidXlzdW5kZXIyMC5wbmciIGFsdD0iVG9wIDMgU3RvY2tzIFVuZGVyICQyMCB3aXRoIFN0cm9uZyBCdXkgUmF0aW5ncyBhbmQgR3Jvd3RoIFBvdGVudGlhbCIgaGVpZ2h0PSI3OCIgd2lkdGg9IjE0MCIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIi8+PC9zcGFuPjxzcGFuIGNsYXNzPSJkLWJsb2NrIG10LTEiIHN0eWxlPSJsaW5lLWhlaWdodDoxLjJlbTsiPlRvcCAzIFN0b2NrcyBVbmRlciAkMjAgd2l0aCBTdHJvbmcgQnV5IFJhdGluZ3MgYW5kIEdyb3d0aCBQb3RlbnRpYWw8L3NwYW4+PC9hPjwvbGk+PGxpIGNsYXNzPSJzaWRlLW9ubHkiPjxhIGhyZWY9Jy92aWRlb3MvdG9wLTMtc3RvY2tzLXVuZGVyLTIwLXdpdGgtc3Ryb25nLWJ1eS1yYXRpbmdzLWFuZC1ncm93dGgtcG90ZW50aWFsLyc+VG9wIDMgU3RvY2tzIFVuZGVyICQyMCB3aXRoIFN0cm9uZyBCdXkgUmF0aW5ncyBhbmQgR3Jvd3RoIFBvdGVudGlhbDwvYT48L2xpPjxsaSBjbGFzcz0ibWVnYS1vbmx5IG1iLTIgY29sLTYgcGwtMCI+PGEgaHJlZj0iL3ZpZGVvcy9pc3JnLXN0b2NrLXN1cmdlcy1haS1hbmQtaGVhbHRoY2FyZS1pbm5vdmF0aW9uLWF0LXRoZS1jb3JlLyIgY2xhc3M9InBvc2l0aW9uLXJlbGF0aXZlIj48c3BhbiBjbGFzcz0iZC1mbGV4IHBvc2l0aW9uLXJlbGF0aXZlIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj48c3BhbiBjbGFzcz0icG9zaXRpb24tYWJzb2x1dGUgZmEtc29saWQgZmEtcGxheSBjLXdoaXRlIiBhcmlhLWhpZGRlbj0idHJ1ZSIgc3R5bGU9Im9wYWNpdHk6MC44O2ZvbnQtc2l6ZTozZW07Ij48L3NwYW4+PGltZyBjbGFzcz0idy0xMDAiIHNyYz0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbG9nb3MvdmlkZW9zL3RodW1iXzIwMjQxMDI4MTcwODUzX3ZpZGVvaXNyZ2NsaXAucG5nIiBhbHQ9IklTUkcgU3RvY2sgU3VyZ2VzOiBBSSBhbmQgSGVhbHRoY2FyZSBJbm5vdmF0aW9uIGF0IHRoZSBDb3JlIiBoZWlnaHQ9Ijc4IiB3aWR0aD0iMTQwIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiLz48L3NwYW4+PHNwYW4gY2xhc3M9ImQtYmxvY2sgbXQtMSIgc3R5bGU9ImxpbmUtaGVpZ2h0OjEuMmVtOyI+SVNSRyBTdG9jayBTdXJnZXM6IEFJIGFuZCBIZWFsdGhjYXJlIElubm92YXRpb24gYXQgdGhlIENvcmU8L3NwYW4+PC9hPjwvbGk+PGxpIGNsYXNzPSJzaWRlLW9ubHkiPjxhIGhyZWY9Jy92aWRlb3MvaXNyZy1zdG9jay1zdXJnZXMtYWktYW5kLWhlYWx0aGNhcmUtaW5ub3ZhdGlvbi1hdC10aGUtY29yZS8nPklTUkcgU3RvY2sgU3VyZ2VzOiBBSSBhbmQgSGVhbHRoY2FyZSBJbm5vdmF0aW9uIGF0IHRoZSBDb3JlPC9hPjwvbGk+PC91bD48L2xpPjxsaSBjbGFzcz0iaGFzLXN1Ym1lbnUiPjxhIGhyZWY9Ii9vcmlnaW5hbHMvIj5GZWF0dXJlZCBBcnRpY2xlczwvYT48dWwgY2xhc3M9J2xpbWl0ZWQtd2lkdGgtc3VibWVudSc+PGxpPjxhIGhyZWY9Jy9vcmlnaW5hbHMvZG90LWFpLWlwby1jZW8tZWQtbmFicm90emt5LXNoYXJlcy12aXNpb24tZm9yLWxvZ2lzdGljcy1mdXR1cmUvJz5Eb3QgQWkgSVBPOiBDRU8gRWQgTmFicm90emt5IFNoYXJlcyBWaXNpb24gZm9yIExvZ2lzdGljcyBGdXR1cmU8L2E+PC9saT48bGk+PGEgaHJlZj0nL29yaWdpbmFscy90aGUtaG90dGVzdC1tYXJrZXRzLXRvLXdhdGNoLWFmdGVyLXRoZS1mZWRzLTI1LWJwcy1yYXRlLWN1dC8nPlRoZSBIb3R0ZXN0IE1hcmtldHMgdG8gV2F0Y2ggQWZ0ZXIgdGhlIEZlZOKAmXMgMjUgQnBzIFJhdGUgQ3V0PC9hPjwvbGk+PGxpPjxhIGhyZWY9Jy9vcmlnaW5hbHMvdGhlLXRvcC01LXBlcmZvcm1pbmctcy1hbmQtcC01MDAtc3RvY2tzLXl0ZC1pbi0yMDI0Lyc+VGhlIFRvcCA1IFBlcmZvcm1pbmcgUyZQIDUwMCBTdG9ja3MgWVREIGluIDIwMjQ8L2E+PC9saT48bGk+PGEgaHJlZj0nL29yaWdpbmFscy9sM2hhcnJpcy1wb3NpdGlvbmVkLWZvci1nYWlucy13aXRoLXRydW1wcy1kZWZlbnNlLXBvbGljaWVzLyc+TDNIYXJyaXM6IFBvc2l0aW9uZWQgZm9yIEdhaW5zIFdpdGggVHJ1bXDigJlzIERlZmVuc2UgUG9saWNpZXM8L2E+PC9saT48bGk+PGEgaHJlZj0nL29yaWdpbmFscy9pcy1maXJzdC1zb2xhcnMtZWFybmluZ3MtZHJvcC1hLWdvbGRlbi1idXlpbmctb3Bwb3J0dW5pdHkvJz5JcyBGaXJzdCBTb2xhcuKAmXMgRWFybmluZ3MgRHJvcCBhIEdvbGRlbiBCdXlpbmcgT3Bwb3J0dW5pdHk/PC9hPjwvbGk+PGxpPjxhIGhyZWY9Jy9vcmlnaW5hbHMvdGFrZS10d28taW50ZXJhY3RpdmVzLTIwMjQtY29tZWJhY2stbmV3LWhpZ2hzLWV4cGVjdGVkLWluLTIwMjUvJz5UYWtlLVR3byBJbnRlcmFjdGl2ZeKAmXMgMjAyNCBDb21lYmFjazogTmV3IEhpZ2hzIEV4cGVjdGVkIGluIDIwMjU8L2E+PC9saT48bGk+PGEgaHJlZj0nL29yaWdpbmFscy9ob3ctYWx0aW1tdW5lLWNvdWxkLWdyYWItYS1iaWctY2h1bmstb2YtdGhlLWdscC0xLW1hcmtldC8nPkhvdyBBbHRpbW11bmUgQ291bGQgR3JhYiBhIEJpZyBDaHVuayBvZiB0aGUgR0xQLTEgTWFya2V0PC9hPjwvbGk+PGxpPjxhIGhyZWY9Jy9vcmlnaW5hbHMvaGVyZXMtd2h5LWV0c3ktbWFuYWdlbWVudC1pcy1pbnZlc3RpbmctMS1iaWxsaW9uLWluLWJ1eWJhY2tzLyc+SGVyZeKAmXMgV2h5IEV0c3kgTWFuYWdlbWVudCBJcyBJbnZlc3RpbmcgJDEgQmlsbGlvbiBpbiBCdXliYWNrczwvYT48L2xpPjxsaSBjbGFzcz0icHQtMSI+PGEgaHJlZj0nL29yaWdpbmFscy8nPk1vcmUgRmVhdHVyZWQgQXJ0aWNsZXMgPHNwYW4gY2xhc3M9ImZhLXJlZ3VsYXIgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC9hPjwvbGk+PC91bD48L2xpPmQCCg8WAh8ABdQjPGxpIGNsYXNzPSJkLW5vbmUgZC1sZy1ibG9jayBtYi0yIGNvbC00IHBsLTAiPjxhIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL29yaWdpbmFscy8zLXVudXN1YWwtY2FsbC1vcHRpb24tdHJhZGVzLWludmVzdG9ycy1zaG91bGQtYmUtd2F0Y2hpbmcvIiBjbGFzcz0icG9zaXRpb24tcmVsYXRpdmUiPjxzcGFuIGNsYXNzPSJkLWZsZXggcG9zaXRpb24tcmVsYXRpdmUgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIiPjxpbWcgY2xhc3M9InctMTAwIiBzdHlsZT0iYXNwZWN0LXJhdGlvOjIvMTtvYmplY3QtZml0OmNvdmVyOyIgc3JjPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9sb2dvcy9hcnRpY2xlcy90aHVtYl8yMDI0MTEwNDExNTQ1Ml9vcHRpb25zLXRyYWRlcnMtYmV0LWJpZy1vbi10aGVzZS0zLXRlY2gtc3RvY2tzLmpwZyIgYWx0PSIiIGhlaWdodD0iODAwIiB3aWR0aD0iMTIwMCIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIi8+PC9zcGFuPjxzcGFuIGNsYXNzPSJkLWJsb2NrIG10LTEgYy1ncmF5IGZvbnQtd2VpZ2h0LW5vcm1hbCIgc3R5bGU9ImZvbnQtc2l6ZTouOTVlbTtsaW5lLWhlaWdodDoxLjJlbTtwYWRkaW5nLXJpZ2h0Oi41ZW07Ij5PcHRpb25zIFRyYWRlcnMgQmV0IEJpZyBvbiBUaGVzZSAzIFRlY2ggU3RvY2tzIDwvc3Bhbj48L2E+PC9saT48bGkgY2xhc3M9ImQtbm9uZSBkLWxnLWJsb2NrIG1iLTIgY29sLTQgcGwtMCI+PGEgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbGVhcm4vaG93LXRvLXBsYXktbmV3LW9wdGlvbnMtdHJhZGluZy13aXRoLWJpdGNvaW4tZXRmcy8iIGNsYXNzPSJwb3NpdGlvbi1yZWxhdGl2ZSI+PHNwYW4gY2xhc3M9ImQtZmxleCBwb3NpdGlvbi1yZWxhdGl2ZSBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciI+PGltZyBjbGFzcz0idy0xMDAiIHN0eWxlPSJhc3BlY3QtcmF0aW86Mi8xO29iamVjdC1maXQ6Y292ZXI7IiBzcmM9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2xvZ29zL2FydGljbGVzL3RodW1iXzIwMjQxMTAxMTUyNDMwX2hvdy10by1wbGF5LW5ldy1vcHRpb25zLXRyYWRpbmctd2l0aC1iaXRjb2luLWV0ZnMuanBnIiBhbHQ9IlNpeCBiaXRjb2luIGNvaW5zIOKAlCBTdG9jayBFZGl0b3JpYWwgUGhvdG9ncmFwaHkiIGhlaWdodD0iODAwIiB3aWR0aD0iMTIwMCIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIi8+PC9zcGFuPjxzcGFuIGNsYXNzPSJkLWJsb2NrIG10LTEgYy1ncmF5IGZvbnQtd2VpZ2h0LW5vcm1hbCIgc3R5bGU9ImZvbnQtc2l6ZTouOTVlbTtsaW5lLWhlaWdodDoxLjJlbTtwYWRkaW5nLXJpZ2h0Oi41ZW07Ij5Ib3cgdG8gUGxheSBOZXcgT3B0aW9ucyBUcmFkaW5nIFdpdGggQml0Y29pbiBFVEZzPC9zcGFuPjwvYT48L2xpPjxsaSBjbGFzcz0iZC1ub25lIGQtbGctYmxvY2sgbWItMiBjb2wtNCBwbC0wIj48YSBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9vcmlnaW5hbHMvYWxiZW1hcmxlLXN0b2NrLWNhbGwtb3B0aW9ucy1zdXJnZS13aGF0LWl0LW1lYW5zLWZvci1saXRoaXVtLyIgY2xhc3M9InBvc2l0aW9uLXJlbGF0aXZlIj48c3BhbiBjbGFzcz0iZC1mbGV4IHBvc2l0aW9uLXJlbGF0aXZlIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj48aW1nIGNsYXNzPSJ3LTEwMCIgc3R5bGU9ImFzcGVjdC1yYXRpbzoyLzE7b2JqZWN0LWZpdDpjb3ZlcjsiIHNyYz0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbG9nb3MvYXJ0aWNsZXMvdGh1bWJfMjAyNDEwMjgxMTExMzdfYWxiZW1hcmxlLXN0b2NrLWNhbGwtb3B0aW9ucy1zdXJnZS13aGF0LWl0LW1lYW5zLWYucG5nIiBhbHQ9ImFsYmVtYXJsZSBsaXRoaXVtIGlvbiBiYXR0ZXJ5IiBoZWlnaHQ9IjQ4OCIgd2lkdGg9IjEyMDAiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyIvPjwvc3Bhbj48c3BhbiBjbGFzcz0iZC1ibG9jayBtdC0xIGMtZ3JheSBmb250LXdlaWdodC1ub3JtYWwiIHN0eWxlPSJmb250LXNpemU6Ljk1ZW07bGluZS1oZWlnaHQ6MS4yZW07cGFkZGluZy1yaWdodDouNWVtOyI+QWxiZW1hcmxlIFN0b2NrIENhbGwgT3B0aW9ucyBTdXJnZTogV2hhdCBJdCBNZWFucyBmb3IgTGl0aGl1bTwvc3Bhbj48L2E+PC9saT48bGkgY2xhc3M9ImQtbm9uZSBkLWxnLWJsb2NrIG1iLTIgY29sLTQgcGwtMCI+PGEgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbGVhcm4vb3B0aW9ucy1ob3ctdG8tZXhlY3V0ZS10aGUtd2hlZWwtc3RyYXRlZ3ktZm9yLW9wdGlvbnMtaW5jb21lLyIgY2xhc3M9InBvc2l0aW9uLXJlbGF0aXZlIj48c3BhbiBjbGFzcz0iZC1mbGV4IHBvc2l0aW9uLXJlbGF0aXZlIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj48aW1nIGNsYXNzPSJ3LTEwMCIgc3R5bGU9ImFzcGVjdC1yYXRpbzoyLzE7b2JqZWN0LWZpdDpjb3ZlcjsiIHNyYz0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbG9nb3MvYXJ0aWNsZXMvdGh1bWJfMjAyNDA3MTgxNTAyMTVfaG93LXRvLWV4ZWN1dGUtdGhlLXdoZWVsLXN0cmF0ZWd5LXRvLWdlbmVyYXRlLW9wdGkuanBnIiBhbHQ9IlBob3RvIG9mIGEgYnVzaW5lc3NtYW4gcnVubmluZyBpbnNpZGUgYSBjaXJjbGUgbWFkZSBvZiBtb25leSBzeW1ib2xpYyBvZiB0aGUgd2hlZWwgb3B0aW9ucyB0cmFkaW5nIHN0cmF0ZWd5LiAiIGhlaWdodD0iOTYwIiB3aWR0aD0iMTIwMCIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIi8+PC9zcGFuPjxzcGFuIGNsYXNzPSJkLWJsb2NrIG10LTEgYy1ncmF5IGZvbnQtd2VpZ2h0LW5vcm1hbCIgc3R5bGU9ImZvbnQtc2l6ZTouOTVlbTtsaW5lLWhlaWdodDoxLjJlbTtwYWRkaW5nLXJpZ2h0Oi41ZW07Ij5Ib3cgdG8gRXhlY3V0ZSB0aGUgV2hlZWwgU3RyYXRlZ3kgdG8gR2VuZXJhdGUgT3B0aW9ucyBJbmNvbWU8L3NwYW4+PC9hPjwvbGk+PGxpIGNsYXNzPSJkLW5vbmUgZC1sZy1ibG9jayBtYi0yIGNvbC00IHBsLTAiPjxhIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2xlYXJuLzMtb3B0aW9ucy1zdHJhdGVnaWVzLXRvLXBsYXktYS1zdG9ja3MtdXB0cmVuZC1pZi1idWxsaXNoLyIgY2xhc3M9InBvc2l0aW9uLXJlbGF0aXZlIj48c3BhbiBjbGFzcz0iZC1mbGV4IHBvc2l0aW9uLXJlbGF0aXZlIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj48aW1nIGNsYXNzPSJ3LTEwMCIgc3R5bGU9ImFzcGVjdC1yYXRpbzoyLzE7b2JqZWN0LWZpdDpjb3ZlcjsiIHNyYz0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbG9nb3MvYXJ0aWNsZXMvdGh1bWJfMjAyNDA2MjYwNzU0MThfMy1vcHRpb25zLXN0cmF0ZWdpZXMtdG8tcGxheS1hLXN0b2Nrcy11cHRyZW5kLWlmLWIuanBnIiBhbHQ9IlN0b2NrIG9wdGlvbnMgc3RyYXRlZ2llcyAiIGhlaWdodD0iOTAwIiB3aWR0aD0iMTIwMCIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIi8+PC9zcGFuPjxzcGFuIGNsYXNzPSJkLWJsb2NrIG10LTEgYy1ncmF5IGZvbnQtd2VpZ2h0LW5vcm1hbCIgc3R5bGU9ImZvbnQtc2l6ZTouOTVlbTtsaW5lLWhlaWdodDoxLjJlbTtwYWRkaW5nLXJpZ2h0Oi41ZW07Ij4zIE9wdGlvbnMgU3RyYXRlZ2llcyB0byBQbGF5IGEgU3RvY2vigJlzIFVwdHJlbmQgaWYgQnVsbGlzaCA8L3NwYW4+PC9hPjwvbGk+PGxpIGNsYXNzPSJkLW5vbmUgZC1sZy1ibG9jayBtYi0yIGNvbC00IHBsLTAiPjxhIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2xlYXJuL2hvdy10by11c2UtZGVsdGEtaGVkZ2luZy10by1wcm90ZWN0LXlvdXItb3B0aW9ucy13aXRoLXN0b2NrLyIgY2xhc3M9InBvc2l0aW9uLXJlbGF0aXZlIj48c3BhbiBjbGFzcz0iZC1mbGV4IHBvc2l0aW9uLXJlbGF0aXZlIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj48aW1nIGNsYXNzPSJ3LTEwMCIgc3R5bGU9ImFzcGVjdC1yYXRpbzoyLzE7b2JqZWN0LWZpdDpjb3ZlcjsiIHNyYz0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbG9nb3MvYXJ0aWNsZXMvdGh1bWJfMjAyNDA2MTMxNDUyNDFfaG93LXRvLXVzZS1kZWx0YS1oZWRnaW5nLXRvLXByb3RlY3QteW91ci1vcHRpb25zLXcuanBnIiBhbHQ9IlBob3RvIG9mIGEgZGVzayB3aXRoIGEgY29tcHV0ZXIgc2hvd2luZyBPcHRpb25zIFRyYWRpbmcuIERlbHRhIGhlZGdpbmcgaXMgYSBkZWZlbnNpdmUgc3RyYXRlZ3kgdXNlZCB0byB0ZW1wb3JhcmlseSByZWR1Y2UgZGlyZWN0aW9uYWwgZXhwb3N1cmUuICIgaGVpZ2h0PSI4MDAiIHdpZHRoPSIxMjAwIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiLz48L3NwYW4+PHNwYW4gY2xhc3M9ImQtYmxvY2sgbXQtMSBjLWdyYXkgZm9udC13ZWlnaHQtbm9ybWFsIiBzdHlsZT0iZm9udC1zaXplOi45NWVtO2xpbmUtaGVpZ2h0OjEuMmVtO3BhZGRpbmctcmlnaHQ6LjVlbTsiPkhvdyB0byBVc2UgRGVsdGEgSGVkZ2luZyB0byBQcm90ZWN0IFlvdXIgT3B0aW9ucyB3aXRoIFN0b2NrPC9zcGFuPjwvYT48L2xpPmQCCw8WAh8ABZoEPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLCBmdW5jdGlvbigpIHsgJCgiLnRyaWdnZXItcmlnaHQiKS5vbmUoImNsaWNrIiwgZnVuY3Rpb24oZSkgeyAgJC5nZXQoJy9TY3JpcHRzL05vdGlmaWNhdGlvbnNIZWxwZXJzLmFzaHg/Y29tbWFuZD1tb2JpbGVub3RpZmljYXRpb25zJmFjY291bnRpZD0xMTQwNDk2MiZoYXNoPTg4MzY5NjdCNjQ4OTM0M0FGRkVCRTRBOUYyMDczNkNDM0U3MEMxMUVGOTE0NDAyQjEwNUQwQjE0MTFBQzIyODM0Njk3NjBBODkwRjUwMEEyMTFERDJBQTlFRkFDODQyNDBGQzFGNUI5OUFEQUYyOEVCQTVCODFDQjQ5NjVBMTBBJywgZnVuY3Rpb24oZGF0YSwgc3RhdHVzKSB7IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb25zLWFyZWEiKS5pbm5lckhUTUwgPSBkYXRhOyAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbnMtYXJlYSIpLnN0eWxlLm9wYWNpdHkgPSAxOyB9KTsgfSk7IH0pOzwvc2NyaXB0PmQCDA8PFgQeCENzc0NsYXNzBS9wYi0xIHB0LTAgcHQtc20tMSBvcmRlci1zbS0yIGNvbCBGcmVlU3Vic2NyaWJlch4EXyFTQgICZGQCDQ9kFgICAw8WAh8ABfUFPGRpdiBzdHlsZT0icGFkZGluZzo2cHg7Zm9udC1zaXplOjAuOHJlbTtsaW5lLWhlaWdodDoxLjI7IiBjbGFzcz0iYmVsb3ctaDEtdGV4dC1saW5rLWFkIGQtbWluaW1hbC1ub25lIj48YSBzdHlsZT0iZm9udC13ZWlnaHQ6NzAwOyBjb2xvcjp2YXIoLS13aGl0ZSk7IiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJzcG9uc29yZWQgbm9vcGVuZXIiIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL3NjcmlwdHMvcmVkaXJlY3QuYXNweD9UcmlnZ2VyZWRDYW1wYWlnbklEPTEwNDI3JlVzZXJJRD0xMTQwNDk2MiZQbGFjZW1lbnQ9TmF0aXZlRGlzcGxheSZTb3VyY2U9TmF0aXZlRGlzcGxheSZpbnRlcnN0aXRpYWw9MSZub3NraXA9MSI+4oaSIFVyZ2VudDogVGhpcyBlbGVjdGlvbiBpcyByaWdnZWQ8L2E+IDxzcGFuIHN0eWxlPSJjb2xvcjp2YXIoLS13aGl0ZSk7Ij4gPHNwYW4gY2xhc3M9InBsLTEgZC1ub25lIGQtc20taW5saW5lLWJsb2NrIj4oRnJvbSBQb3J0ZXIgJiBDb21wYW55KTwvc3Bhbj4gPHNwYW4gY2xhc3M9ImQtaW5saW5lIGQtc20tbm9uZSI+KEFkKTwvc3Bhbj48L3NwYW4+PGltZyBsb2FkaW5nPSdsYXp5JyBzcmM9J2h0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL3NjcmlwdHMvVHJpZ2dlcmVkQ2FtcGFpZ25QaXhlbC5hc2h4P1RyaWdnZXJlZENhbXBhaWduSUQ9MTA0MjcmUGxhY2VtZW50PU5hdGl2ZURpc3BsYXkmU291cmNlPU5hdGl2ZURpc3BsYXknIGFsdD0nJyBoZWlnaHQ9JzEnIHdpZHRoPScxJyAvPjwvZGl2PmQCDg9kFgICAQ9kFgoCBw9kFgQCBQ9kFnYCAQ8WAh8ABbgsPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPmZ1bmN0aW9uIExvYWROZXdzbGV0dGVyKCkge2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkdk5ld3NsZXR0ZXIiKS5pbm5lckhUTUwgPSAnTG9hZGluZyB5b3VyIG5ld3NsZXR0ZXImaGVsbGlwOyc7IHZhciBjaG9zZW5OZXdzbGV0dGVyID0gJCgnI2NwaFByaW1hcnlDb250ZW50X2RkbE5ld3NsZXR0ZXInKS5maW5kKCc6c2VsZWN0ZWQnKS52YWwoKTsgJC5nZXQoImh0dHBzOi8vIit3aW5kb3cubG9jYXRpb24uaG9zdCsiL1VzZXJzL1dhdGNobGlzdHNIZWxwZXJzLmFzaHg/Y29tbWFuZD1uZXdzbGV0dGVyJmNob3Nlbk5ld3NsZXR0ZXI9IiArIGNob3Nlbk5ld3NsZXR0ZXIgKyAiJmFjY291bnRpZD0xMTQwNDk2MiZoYXNoPUVENzZEQTlFOEM3MzAwODFBQUE2MzUyM0UwN0I0MzE4ODIxNkI5RTk0NUUyRTczRkMyMjBDMTk1NTY4NDg2ODAxQTcyQTEwODdCNjQ4NUYyOERCN0VCOUM0MkI1MzUyQTZDMERDRUYwNjJDMzkyQkNGMzU3RTdGQzkxRjM5NjY0IiwgZnVuY3Rpb24gKGRhdGEsIHN0YXR1cykgeyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZHZOZXdzbGV0dGVyIikuaW5uZXJIVE1MID0gZGF0YTt9KTt9ZnVuY3Rpb24gTG9hZENhbGVuZGFyKHdhdGNobGlzdGlkKSB7JC5nZXQoImh0dHBzOi8vIit3aW5kb3cubG9jYXRpb24uaG9zdCsiL1VzZXJzL1dhdGNobGlzdHNIZWxwZXJzLmFzaHg/Y29tbWFuZD1jYWxlbmRhciZ3YXRjaGxpc3RpZD0iICsgd2F0Y2hsaXN0aWQgKyAiJmFjY291bnRpZD0xMTQwNDk2MiZoYXNoPUVENzZEQTlFOEM3MzAwODFBQUE2MzUyM0UwN0I0MzE4ODIxNkI5RTk0NUUyRTczRkMyMjBDMTk1NTY4NDg2ODAxQTcyQTEwODdCNjQ4NUYyOERCN0VCOUM0MkI1MzUyQTZDMERDRUYwNjJDMzkyQkNGMzU3RTdGQzkxRjM5NjY0IiwgZnVuY3Rpb24gKGRhdGEsIHN0YXR1cykgeyB2YXIgZHZDYWxlbmRhciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkdkNhbGVuZGFyIik7IGR2Q2FsZW5kYXIuaW5uZXJIVE1MID0gZGF0YTsgc2Nyb2xsVGFibGUoJChkdkNhbGVuZGFyKS5maW5kKCd0YWJsZScpLnN0dXBpZHRhYmxlKCkpOyAkKCIjY2FsZW5kYXJGaWx0ZXIiKS5jaGFuZ2UoZnVuY3Rpb24gKCkgeyAgJCgiI2R2Q2FsZW5kYXIgdGFibGUgdGJvZHkgdHIiKS5yZW1vdmVDbGFzcygiaGlkZGVuLXRhYmxlLXJvdyBib3R0b20tc29ydCIpOyBpZiAoJCh0aGlzKS52YWwoKSAhPT0gIiIpIHsgJCgiI2R2Q2FsZW5kYXIgdGFibGUgdGJvZHkgdHI6bm90KC4iICsgJCh0aGlzKS52YWwoKSArICIpIikuYWRkQ2xhc3MoImhpZGRlbi10YWJsZS1yb3cgYm90dG9tLXNvcnQiKTsgfSBzY3JvbGxUYWJsZSgkKGR2Q2FsZW5kYXIpLmZpbmQoJ3RhYmxlJykpOyB9KTsgfSk7fWZ1bmN0aW9uIExvYWRSYXRpbmdzKHdhdGNobGlzdGlkKSB7JC5nZXQoImh0dHBzOi8vIit3aW5kb3cubG9jYXRpb24uaG9zdCsiL1VzZXJzL1dhdGNobGlzdHNIZWxwZXJzLmFzaHg/Y29tbWFuZD1yYXRpbmdzJndhdGNobGlzdGlkPSIgKyB3YXRjaGxpc3RpZCArICImYWNjb3VudGlkPTExNDA0OTYyJmhhc2g9RUQ3NkRBOUU4QzczMDA4MUFBQTYzNTIzRTA3QjQzMTg4MjE2QjlFOTQ1RTJFNzNGQzIyMEMxOTU1Njg0ODY4MDFBNzJBMTA4N0I2NDg1RjI4REI3RUI5QzQyQjUzNTJBNkMwRENFRjA2MkMzOTJCQ0YzNTdFN0ZDOTFGMzk2NjQiLCBmdW5jdGlvbiAoZGF0YSwgc3RhdHVzKSB7IHZhciByYXRpbmdzRGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImR2UmF0aW5ncyIpOyByYXRpbmdzRGl2LmlubmVySFRNTCA9IGRhdGE7IHNjcm9sbFRhYmxlKCQocmF0aW5nc0RpdikuZmluZCgndGFibGUnKS5zdHVwaWR0YWJsZSgpKTsgfSk7fWZ1bmN0aW9uIExvYWRJbnNpZGVyVHJhZGVzKHdhdGNobGlzdGlkKSB7JC5nZXQoImh0dHBzOi8vIit3aW5kb3cubG9jYXRpb24uaG9zdCsiL1VzZXJzL1dhdGNobGlzdHNIZWxwZXJzLmFzaHg/Y29tbWFuZD1pbnNpZGVydHJhZGVzJndhdGNobGlzdGlkPSIgKyB3YXRjaGxpc3RpZCArICImYWNjb3VudGlkPTExNDA0OTYyJmhhc2g9RUQ3NkRBOUU4QzczMDA4MUFBQTYzNTIzRTA3QjQzMTg4MjE2QjlFOTQ1RTJFNzNGQzIyMEMxOTU1Njg0ODY4MDFBNzJBMTA4N0I2NDg1RjI4REI3RUI5QzQyQjUzNTJBNkMwRENFRjA2MkMzOTJCQ0YzNTdFN0ZDOTFGMzk2NjQiLCBmdW5jdGlvbiAoZGF0YSwgc3RhdHVzKSB7IHZhciBkdkluc2lkZXJUcmFkZXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZHZJbnNpZGVyVHJhZGVzIik7IGR2SW5zaWRlclRyYWRlcy5pbm5lckhUTUwgPSBkYXRhOyBzY3JvbGxUYWJsZSgkKGR2SW5zaWRlclRyYWRlcykuZmluZCgndGFibGUnKS5zdHVwaWR0YWJsZSgpKTt9KTt9ZnVuY3Rpb24gTG9hZEVhcm5pbmdzKHdhdGNobGlzdGlkKSB7JC5nZXQoImh0dHBzOi8vIit3aW5kb3cubG9jYXRpb24uaG9zdCsiL1VzZXJzL1dhdGNobGlzdHNIZWxwZXJzLmFzaHg/Y29tbWFuZD1lYXJuaW5ncyZ3YXRjaGxpc3RpZD0iICsgd2F0Y2hsaXN0aWQgKyAiJmFjY291bnRpZD0xMTQwNDk2MiZoYXNoPUVENzZEQTlFOEM3MzAwODFBQUE2MzUyM0UwN0I0MzE4ODIxNkI5RTk0NUUyRTczRkMyMjBDMTk1NTY4NDg2ODAxQTcyQTEwODdCNjQ4NUYyOERCN0VCOUM0MkI1MzUyQTZDMERDRUYwNjJDMzkyQkNGMzU3RTdGQzkxRjM5NjY0IiwgZnVuY3Rpb24gKGRhdGEsIHN0YXR1cykgeyB2YXIgZHZFYXJuaW5ncyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkdkVhcm5pbmdzIik7IGR2RWFybmluZ3MuaW5uZXJIVE1MID0gZGF0YTsgc2Nyb2xsVGFibGUoJChkdkVhcm5pbmdzKS5maW5kKCd0YWJsZScpLnN0dXBpZHRhYmxlKCkpOyB9KTt9ZnVuY3Rpb24gTG9hZFBvcnRmb2xpb0lkZWFzKHdhdGNobGlzdGlkKSB7JC5nZXQoImh0dHBzOi8vIit3aW5kb3cubG9jYXRpb24uaG9zdCsiL1VzZXJzL1dhdGNobGlzdHNIZWxwZXJzLmFzaHg/Y29tbWFuZD1wb3J0Zm9saW9pZGVhcyZ3YXRjaGxpc3RpZD0iICsgd2F0Y2hsaXN0aWQgKyAiJmFjY291bnRpZD0xMTQwNDk2MiZoYXNoPUVENzZEQTlFOEM3MzAwODFBQUE2MzUyM0UwN0I0MzE4ODIxNkI5RTk0NUUyRTczRkMyMjBDMTk1NTY4NDg2ODAxQTcyQTEwODdCNjQ4NUYyOERCN0VCOUM0MkI1MzUyQTZDMERDRUYwNjJDMzkyQkNGMzU3RTdGQzkxRjM5NjY0IiwgZnVuY3Rpb24gKGRhdGEsIHN0YXR1cykgeyB2YXIgZHZQb3J0Zm9saW9JZGVhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkdlBvcnRmb2xpb0lkZWFzIik7IGR2UG9ydGZvbGlvSWRlYXMuaW5uZXJIVE1MID0gZGF0YTsgc2Nyb2xsVGFibGUoJChkdlBvcnRmb2xpb0lkZWFzKS5maW5kKCd0YWJsZScpLnN0dXBpZHRhYmxlKCkpO30pO31mdW5jdGlvbiBMb2FkTWFya2V0UmFuayh3YXRjaGxpc3RpZCkgeyQuZ2V0KCJodHRwczovLyIrd2luZG93LmxvY2F0aW9uLmhvc3QrIi9Vc2Vycy9XYXRjaGxpc3RzSGVscGVycy5hc2h4P2NvbW1hbmQ9bWFya2V0cmFuayZ3YXRjaGxpc3RpZD0iICsgd2F0Y2hsaXN0aWQgKyAiJmFjY291bnRpZD0xMTQwNDk2MiZoYXNoPUVENzZEQTlFOEM3MzAwODFBQUE2MzUyM0UwN0I0MzE4ODIxNkI5RTk0NUUyRTczRkMyMjBDMTk1NTY4NDg2ODAxQTcyQTEwODdCNjQ4NUYyOERCN0VCOUM0MkI1MzUyQTZDMERDRUYwNjJDMzkyQkNGMzU3RTdGQzkxRjM5NjY0IiwgZnVuY3Rpb24gKGRhdGEsIHN0YXR1cykgeyB2YXIgZHZNYXJrZXRSYW5rID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImR2TWFya2V0UmFuayIpOyBkdk1hcmtldFJhbmsuaW5uZXJIVE1MID0gZGF0YTsgc2Nyb2xsVGFibGUoJChkdk1hcmtldFJhbmspLmZpbmQoJ3RhYmxlJykuc3R1cGlkdGFibGUoKSk7fSk7fWZ1bmN0aW9uIExvYWRTRUNGaWxpbmdzKHdhdGNobGlzdGlkKSB7JC5nZXQoImh0dHBzOi8vIit3aW5kb3cubG9jYXRpb24uaG9zdCsiL1VzZXJzL1dhdGNobGlzdHNIZWxwZXJzLmFzaHg/Y29tbWFuZD1zZWNmaWxpbmdzJndhdGNobGlzdGlkPSIgKyB3YXRjaGxpc3RpZCArICImYWNjb3VudGlkPTExNDA0OTYyJmhhc2g9RUQ3NkRBOUU4QzczMDA4MUFBQTYzNTIzRTA3QjQzMTg4MjE2QjlFOTQ1RTJFNzNGQzIyMEMxOTU1Njg0ODY4MDFBNzJBMTA4N0I2NDg1RjI4REI3RUI5QzQyQjUzNTJBNkMwRENFRjA2MkMzOTJCQ0YzNTdFN0ZDOTFGMzk2NjQiLCBmdW5jdGlvbiAoZGF0YSwgc3RhdHVzKSB7IHZhciBkdlNFQ0ZpbGluZ3MgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZHZTRUNGaWxpbmdzIik7IGR2U0VDRmlsaW5ncy5pbm5lckhUTUwgPSBkYXRhOyBzY3JvbGxUYWJsZSgkKGR2U0VDRmlsaW5ncykuZmluZCgndGFibGUnKS5zdHVwaWR0YWJsZSgpKTsgfSk7fWZ1bmN0aW9uIExvYWRTb2NpYWwod2F0Y2hsaXN0aWQpIHsgbG9hZEFuZERyYXdNdWx0aUxpbmVHcmFwaCgiTWVkaWEgTWVudGlvbnMgYnkgV2VlayIsICJwb3J0Zm9saW9NZWRpYU1lbnRpb25zQ2hhcnQiLCAiV2VlayIsICJodHRwczovLyIrd2luZG93LmxvY2F0aW9uLmhvc3QrIi9Vc2Vycy9XYXRjaGxpc3RzSGVscGVycy5hc2h4P2NvbW1hbmQ9bWVkaWFtZW50aW9uc0NTViZ3YXRjaGxpc3RpZD0iICsgd2F0Y2hsaXN0aWQgKyAiJmFjY291bnRpZD0xMTQwNDk2MiZoYXNoPUVENzZEQTlFOEM3MzAwODFBQUE2MzUyM0UwN0I0MzE4ODIxNkI5RTk0NUUyRTczRkMyMjBDMTk1NTY4NDg2ODAxQTcyQTEwODdCNjQ4NUYyOERCN0VCOUM0MkI1MzUyQTZDMERDRUYwNjJDMzkyQkNGMzU3RTdGQzkxRjM5NjY0Iik7ICAgbG9hZEFuZERyYXdNdWx0aUxpbmVHcmFwaCgiUmVkZGl0IE1lbnRpb25zIGJ5IFdlZWsiLCAicG9ydGZvbGlvUmVkZGl0TWVudGlvbnNDaGFydCIsICJXZWVrIiwgImh0dHBzOi8vIit3aW5kb3cubG9jYXRpb24uaG9zdCsiL1VzZXJzL1dhdGNobGlzdHNIZWxwZXJzLmFzaHg/Y29tbWFuZD1yZWRkaXRtZW50aW9uc0NTViZ3YXRjaGxpc3RpZD0iICsgd2F0Y2hsaXN0aWQgKyAiJmFjY291bnRpZD0xMTQwNDk2MiZoYXNoPUVENzZEQTlFOEM3MzAwODFBQUE2MzUyM0UwN0I0MzE4ODIxNkI5RTk0NUUyRTczRkMyMjBDMTk1NTY4NDg2ODAxQTcyQTEwODdCNjQ4NUYyOERCN0VCOUM0MkI1MzUyQTZDMERDRUYwNjJDMzkyQkNGMzU3RTdGQzkxRjM5NjY0Iik7JC5nZXQoImh0dHBzOi8vIit3aW5kb3cubG9jYXRpb24uaG9zdCsiL1VzZXJzL1dhdGNobGlzdHNIZWxwZXJzLmFzaHg/Y29tbWFuZD1tZW50aW9uZWRzdG9ja3NsaXN0cyZ3YXRjaGxpc3RpZD0iICsgd2F0Y2hsaXN0aWQgKyAiJmFjY291bnRpZD0xMTQwNDk2MiZoYXNoPUVENzZEQTlFOEM3MzAwODFBQUE2MzUyM0UwN0I0MzE4ODIxNkI5RTk0NUUyRTczRkMyMjBDMTk1NTY4NDg2ODAxQTcyQTEwODdCNjQ4NUYyOERCN0VCOUM0MkI1MzUyQTZDMERDRUYwNjJDMzkyQkNGMzU3RTdGQzkxRjM5NjY0IiwgZnVuY3Rpb24gKGRhdGEsIHN0YXR1cykgeyB2YXIgZHZtZW50aW9uZWRzdG9ja3NsaXN0cyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkdm1lbnRpb25lZHN0b2Nrc2xpc3RzIik7IGlmIChkYXRhPT0nJykgeyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0ZXJkaXZtZW50aW9uZWRzdG9ja3NsaXN0cyIpLnN0eWxlLm1heEhlaWdodCA9IDA7IH0gZWxzZSB7IGR2bWVudGlvbmVkc3RvY2tzbGlzdHMuaW5uZXJIVE1MID0gZGF0YTsgfSB9KTsgTG9hZFN0b2NrdHdpdHMoKTsgIH07PC9zY3JpcHQ+ZAIFDxBkEBUDCVN0b2NrL0VURg5DcnlwdG9jdXJyZW5jeQxNYW51YWwgQXNzZXQVAwhzdG9ja2V0Zg5jcnlwdG9jdXJyZW5jeQZtYW51YWwUKwMDZ2dnZGQCFw8QZBAVARRNeSBEZWZhdWx0IFdhdGNobGlzdBUBBzI1MTkzMzAUKwMBZ2RkAhsPEA8WAh4HRW5hYmxlZGhkZGRkAh0PEA8WBB4HQ2hlY2tlZGgfBGhkZGRkAi8PEGQQFQIJU3RvY2svRVRGDkNyeXB0b2N1cnJlbmN5FQIIc3RvY2tldGYOY3J5cHRvY3VycmVuY3kUKwMCZ2dkZAI1DxBkEBUBFE15IERlZmF1bHQgV2F0Y2hsaXN0FQEHMjUxOTMzMBQrAwFnZGQCOQ8QDxYCHwRoZGRkZAI7DxAPFgQfBWgfBGhkZGRkAkQPDxYCHwFoZGQCXA8QZBAVARRNeSBEZWZhdWx0IFdhdGNobGlzdBUBBzI1MTkzMzAUKwMBZ2RkAmAPEA8WAh8EaGRkZGQCYg8QDxYEHwVoHwRoZGRkZAKOAQ8QZBAVAg5BbGwgV2F0Y2hsaXN0cxRNeSBEZWZhdWx0IFdhdGNobGlzdBUCAi0xBzI1MTkzMzAUKwMCZ2cWAWZkApABDxYCHwAFwQM8YSBocmVmPSdodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9zdWJzY3JpYmUvYWxsLWFjY2Vzcy8/VXNlcklEPTExNDA0OTYyJlJlZmVycmFsVHlwZT1XYXRjaGxpc3RzUGFnZUFkZEJ1dHRvbicgdGl0bGU9J1lvdSBoYXZlIHJlYWNoZWQgeW91ciBsaW1pdCBvZiBmaXZlIHN0b2NrcyBvbiBNYXJrZXRCZWF0JmFwb3M7c8KgZnJlZSBwbGFuLgpVcGdyYWRlIHRvIE1hcmtldEJlYXQgQWxsIEFjY2VzcyB0byBhZGQgbW9yZSBzdG9ja3MuJyBjbGFzcz0nIGJ0biBidG4tc2Vjb25kYXJ5IGQtZmxleCBkLXNtLWlubGluZS1mbGV4JyBzdHlsZT0nbGluZS1oZWlnaHQ6MS41Jz48c3BhbiBjbGFzcz0nZmxvYXQtbGVmdCBtci0yIGZhLXJlZ3VsYXIgZmEtc3F1YXJlLXBsdXMgZC1pbmxpbmUgZC1zbS1ub25lIGQteGwtaW5saW5lJz48L3NwYW4+IDxzcGFuPkFkZCBhIEhvbGRpbmc8L3NwYW4+PC9hPmQCkgEPFgIfAGVkApQBDxYCHwBlZAKaAQ8PFgIfAWdkFgICAQ8QZBAVBhRTZWxlY3QgYSBCdWxrIEFjdGlvbhVEZWxldGUgVGhlc2UgSG9sZGluZ3MmRW5hYmxlIEVtYWlsIEFsZXJ0cyBmb3IgVGhlc2UgSG9sZGluZ3MnRGlzYWJsZSBFbWFpbCBBbGVydHMgZm9yIFRoZXNlIEhvbGRpbmdzJ01vdmUgSG9sZGluZ3MgdG8gJ015IERlZmF1bHQgV2F0Y2hsaXN0JyBNb3ZlIEhvbGRpbmdzIHRvIGEgTmV3IFdhdGNobGlzdBUGATAKYnVsa0RlbGV0ZQ9idWxrRW5hYmxlRW1haWwQYnVsa0Rpc2FibGVFbWFpbA9idWxrTW92ZTI1MTkzMzALYnVsa01vdmVOZXcUKwMGZ2dnZ2dnZGQCnAEPFgIfAAUKNyBzZWxlY3RlZGQCngEPFgIfAAXm1gI8bGk+PGlucHV0IGNsYXNzPSJkLW5vbmUiIGlkPSJjb2x1bW5DaG9pY2VTdWJoZWFkZXJDbGFzc2ljQ29sdW1ucyIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJTdWJoZWFkZXJDbGFzc2ljQ29sdW1ucyI+PGxhYmVsIGNsYXNzPSJzdWJoZWFkZXIiIGZvcj0iY29sdW1uQ2hvaWNlU3ViaGVhZGVyQ2xhc3NpY0NvbHVtbnMiPiA8c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWlubmVyJz5DbGFzc2ljIENvbHVtbnM8L3NwYW4+PC9sYWJlbDwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VDdXJyZW50UHJpY2VBbmRDaGFuZ2UiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iQ3VycmVudFByaWNlQW5kQ2hhbmdlIiBjaGVja2VkPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZUN1cnJlbnRQcmljZUFuZENoYW5nZSI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+Q3VycmVudCBQcmljZSBhbmQgQ2hhbmdlPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPlRoZSBjdXJyZW50IHByaWNlIG9mIGEgbGlzdGVkIGFzc2V0IGFuZCB0aGUgYW1vdW50IHRoZSBwcmljZSBoYXMgY2hhbmdlZCBkdXJpbmcgdGhlIG1vc3QgcmVjZW50IHRyYWRpbmcgcGVyaW9kLjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZUhvbGRpbmdWYWx1ZSIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJIb2xkaW5nVmFsdWUiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZUhvbGRpbmdWYWx1ZSI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+SG9sZGluZyBWYWx1ZTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5Ib2xkaW5nIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIGN1cnJlbnQgcHJpY2Ugb2YgdGhlIGhvbGRpbmcgdGltZXMgdGhlIGhvbGRpbmcgc2l6ZS48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VDb3N0QmFzaXMiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iQ29zdEJhc2lzIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VDb3N0QmFzaXMiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPkNvc3QgQmFzaXM8L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+Q29zdCBiYXNpcyBpcyB0aGUgb3JpZ2luYWwgcHVyY2hhc2UgcHJpY2Ugb2YgZWFjaCBzaGFyZSBvZiB0aGUgYXNzZXQuPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlUk9JIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IlJPSSI+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlUk9JIj4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5ST0k8L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+UmV0dXJuIG9uIGludmVzdG1lbnQgKFJPSSkgaXMgYSBtZWFzdXJlbWVudCB0aGF0IHNob3dzIHlvdXIgcHJvZml0IG9uIGFuIGludmVzdG1lbnQgYXMgYSBwZXJjZW50YWdlIG9mIHlvdXIgaW5pdGlhbCBpbnZlc3RtZW50LiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL3JldHVybi1vbi1pbnZlc3RtZW50LXJvaS1kZWZpbmVkLyI+TGVhcm4gbW9yZTwvYT4uPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlUEVSYXRpbyIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJQRVJhdGlvIiBjaGVja2VkPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZVBFUmF0aW8iPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPlBFIFJhdGlvPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPlRoZSBwcmljZSB0byBlYXJuaW5ncyByYXRpbyAoUC9FKSBtZWFzdXJlcyBpdHMgY3VycmVudCBzaGFyZSBwcmljZSByZWxhdGl2ZSB0byBpdHMgcGVyLXNoYXJlIGVhcm5pbmdzLiBUaGUgcmF0aW8gaXMgdXNlZCBpbiB2YWx1aW5nIGNvbXBhbmllcy4gPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL21hcmtldC1kYXRhL2xvdy1wZS1zdG9ja3MvI3ByaWNlLXRvLWVhcm5pbmdzLXJhdGlvLXBlIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VCZXRhIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IkJldGEiIGNoZWNrZWQ+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlQmV0YSI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+QmV0YTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5CZXRhIGlzIHRoZSByZXN1bHQgb2YgYSBjYWxjdWxhdGlvbiB0aGF0IG1lYXN1cmVzIHRoZSByZWxhdGl2ZSB2b2xhdGlsaXR5IG9mIGEgc3RvY2sgaW4gY29ycmVsYXRpb24gdG8gYSBwYXJ0aWN1bGFyIHN0YW5kYXJkLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL3doYXQtaXMtaW4tYmV0YS1zdG9jay1zZWxlY3Rpb24vIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VBbm51YWxEaXZpZGVuZCIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJBbm51YWxEaXZpZGVuZCIgY2hlY2tlZD48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VBbm51YWxEaXZpZGVuZCI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+QW5udWFsIERpdmlkZW5kPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPlRoZSB0b3RhbCBhbW91bnQgb2YgZGl2aWRlbmQgZGlzcGVyc2VkIHBlciBzaGFyZSBwZXIgeWVhci4gPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2ZpbmFuY2lhbC10ZXJtcy9pbnZlc3RpbmctZGl2aWRlbmQtc3RvY2tzLyI+TGVhcm4gbW9yZTwvYT4uPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlQ29uc2Vuc3VzUmF0aW5nIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IkNvbnNlbnN1c1JhdGluZyIgY2hlY2tlZD48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VDb25zZW5zdXNSYXRpbmciPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPkNvbnNlbnN1cyBSYXRpbmc8L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+QW5hbHlzdCByYXRpbmdzIG9yIHN0b2NrIHJhdGluZ3MsIHN1Y2ggYXMg4oCcQnV54oCdLCDigJxTZWxs4oCdLCBhbmQg4oCcSG9sZOKAnSBhcmUgYW4gZXZhbHVhdGlvbiBvZiBhIHN0b2NrJ3MgZXhwZWN0ZWQgcGVyZm9ybWFuY2UgYW5kL29yIGl0J3MgcmlzayBsZXZlbCBhcyBkZXRlcm1pbmVkIGJ5IGEgcmF0aW5nIGFnZW5jeSBvciBicm9rZXJhZ2UgZmlybS4gIENvbnNlbnN1cyBpcyB0aGUgc3VtbWFyeS9hdmVyYWdlIG9mIHRob3NlIHJhdGluZ3MuIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9yYXRpbmdzLyNzdG9jay1yYXRpbmdzLXJlY29tbWVuZGF0aW9ucy1hbmFseXN0cy11cGdyYWRlcy1kb3duZ3JhZGVzIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VDb25zZW5zdXNQcmljZVRhcmdldCIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJDb25zZW5zdXNQcmljZVRhcmdldCIgY2hlY2tlZD48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VDb25zZW5zdXNQcmljZVRhcmdldCI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+Q29uc2Vuc3VzIFByaWNlIFRhcmdldDwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5BIHByaWNlIHRhcmdldCBpcyBhbiBpbnZlc3RtZW50IGFuYWx5c3TigJlzIG9yIGFkdmlzZXLigJlzIGVzdGltYXRlIG9mIHRoZSBmdXR1cmUgcHJpY2UgbGV2ZWwgb2YgYW4gYXNzZXQsIHN1Y2ggYXMgYSBzdG9jaywgZnV0dXJlcyBjb250cmFjdCwgY29tbW9kaXR5IG9yIGV4Y2hhbmdlLXRyYWRlZCBmdW5kIChFVEYpLiAgQ29uc2Vuc3VzIGlzIHRoZSBzdW1tYXJ5L2F2ZXJhZ2Ugb2YgdGhvc2UgZXN0aW1hdGVzLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL2hvdy1pcy1hLXByaWNlLXRhcmdldC1kZXRlcm1pbmVkLyI+TGVhcm4gbW9yZTwvYT4uPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlVXBzaWRlRG93bnNpZGUiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iVXBzaWRlRG93bnNpZGUiIGNoZWNrZWQ+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlVXBzaWRlRG93bnNpZGUiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPlVwc2lkZS9Eb3duc2lkZTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5UaGUgcG90ZW50aWFsIGNoYW5nZSBpbiBzdG9jayBwcmljZSBpZiB0aGUgc3RvY2sgd2VyZSB0byBtZWV0IGNvbnNlbnN1cyBwcmljZSB0YXJnZXQgZXN0aW1hdGVzLiBVcHNpZGUgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbnNlbnN1cyBwcmljZSB0YXJnZXQgaXMgaGlnaGVyIHRoYW4gdGhlIGN1cnJlbnQgcHJpY2UgYW5kIGRvd25zaWRlIGluZGljYXRlcyB0aGF0IHRoZSBjb25zZW5zdXMgcHJpY2UgdGFyZ2V0IGlzIGxvd2VyIHRoYW4gdGhlIGN1cnJlbnQgcHJpY2UuIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9maW5hbmNpYWwtdGVybXMvdXBzaWRlLWRvd25zaWRlLWV4cGxhaW5lZC8iPkxlYXJuIG1vcmU8L2E+LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PGlucHV0IGNsYXNzPSJkLW5vbmUiIGlkPSJjb2x1bW5DaG9pY2VTdWJoZWFkZXJCYXNpY3MiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iU3ViaGVhZGVyQmFzaWNzIj48bGFiZWwgY2xhc3M9InN1YmhlYWRlciIgZm9yPSJjb2x1bW5DaG9pY2VTdWJoZWFkZXJCYXNpY3MiPiA8c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWlubmVyJz5CYXNpY3M8L3NwYW4+PC9sYWJlbDwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VTZWN0b3IiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iU2VjdG9yIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VTZWN0b3IiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPlNlY3Rvcjwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5BIHNlY3RvciBpcyBhbiBhcmVhIG9mIHRoZSBlY29ub215IHdoZXJlIGJ1c2luZXNzZXMgc2hhcmUgdGhlIHNhbWUgb3IgcmVsYXRlZCBidXNpbmVzcyBhY3Rpdml0eSwgcHJvZHVjdCwgb3Igc2VydmljZS4gU2VjdG9ycyByZXByZXNlbnQgYSBsYXJnZSBncm91cGluZyBvZiBjb21wYW5pZXMgc2hvd2Nhc2luZyBzaW1pbGFyIGJ1c2luZXNzIGFjdGl2aXRpZXMuPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlSW5kdXN0cnkiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iSW5kdXN0cnkiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZUluZHVzdHJ5Ij4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5JbmR1c3RyeTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5JbmR1c3RyeSByZWZlcnMgdG8gYSBzcGVjaWZpYyBncm91cCBvZiBjb21wYW5pZXMgb3IgYnVzaW5lc3Nlcywgd2hpbGUgInNlY3RvciIgZGVzY3JpYmVzIGEgbGFyZ2Ugc2VnbWVudCBvZiB0aGUgZWNvbm9teS48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VTdWJpbmR1c3RyeSIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJTdWJpbmR1c3RyeSI+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlU3ViaW5kdXN0cnkiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPlN1YmluZHVzdHJ5PC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPlN1Yi1pbmR1c3RyeSBpcyBhIG1vcmUgc3BlY2lmaWMgY2xhc3NpZmljYXRpb24gd2l0aGluIGFuIGluZHVzdHJ5LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZUN1cnJlbmN5IiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IkN1cnJlbmN5Ij48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VDdXJyZW5jeSI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+Q3VycmVuY3k8L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+VGhlIGN1cnJlbmN5IHRoZSBzdG9jayB0cmFkZXMgaW4sIHN1Y2ggYXMgVS5TLiBEb2xsYXJzLjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZU1hcmtldENhcCIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJNYXJrZXRDYXAiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZU1hcmtldENhcCI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+TWFya2V0IENhcDwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5NYXJrZXQgY2FwaXRhbGl6YXRpb24gaXMgdGhlIG1hcmtldCB2YWx1ZSBvZiBhbGwgb2YgYSBjb21wYW55J3Mgb3V0c3RhbmRpbmcgc2hhcmVzIGFuZCBpcyB1c2VkIGJ5IHRoZSBpbnZlc3RtZW50IGNvbW11bml0eSBpbiByYW5raW5nIHRoZSBzaXplIG9mIGNvbXBhbmllcywgYXMgb3Bwb3NlZCB0byBzYWxlcyBvciB0b3RhbCBhc3NldCBmaWd1cmVzLjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PGlucHV0IGNsYXNzPSJkLW5vbmUiIGlkPSJjb2x1bW5DaG9pY2VTdWJoZWFkZXJWYWx1YXRpb24iIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iU3ViaGVhZGVyVmFsdWF0aW9uIj48bGFiZWwgY2xhc3M9InN1YmhlYWRlciIgZm9yPSJjb2x1bW5DaG9pY2VTdWJoZWFkZXJWYWx1YXRpb24iPiA8c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWlubmVyJz5WYWx1YXRpb248L3NwYW4+PC9sYWJlbDwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VGb3J3YXJkUEVSYXRpbyIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJGb3J3YXJkUEVSYXRpbyI+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlRm9yd2FyZFBFUmF0aW8iPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPkZvcndhcmQgUEUgUmF0aW88L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+VGhlIHByaWNlIHRvIGVhcm5pbmdzIHJhdGlvIChQL0UpIG1lYXN1cmVzIGl0cyBjdXJyZW50IHNoYXJlIHByaWNlIHJlbGF0aXZlIHRvIGl0cyBwZXItc2hhcmUgZWFybmluZ3MuIFRoZSByYXRpbyBpcyB1c2VkIGluIHZhbHVpbmcgY29tcGFuaWVzLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbWFya2V0LWRhdGEvbG93LXBlLXN0b2Nrcy8jcHJpY2UtdG8tZWFybmluZ3MtcmF0aW8tcGUiPkxlYXJuIG1vcmU8L2E+LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZVBFRyIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJQRUciPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZVBFRyI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+UC9FIEdyb3d0aDwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5UaGUgUC9FIGdyb3d0aCByYXRpbyAob3IgUEVHKSB3YXMgZGV2ZWxvcGVkIGFuZCBpcyB1c2VkIGFzIGEgcmVmaW5lbWVudCBvZiB0aGUgc3RhbmRhcmQgUC9FIHJhdGlvIHRoYXQgaXMgdXNlZCBpbiBmdW5kYW1lbnRhbCBhbmFseXNpcy4gPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL21hcmtldC1kYXRhL2xvdy1wZS1zdG9ja3MvI3ByaWNlLXRvLWVhcm5pbmdzLXJhdGlvLXBlIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VQcmljZVNhbGVzIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IlByaWNlU2FsZXMiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZVByaWNlU2FsZXMiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPlByaWNlL1NhbGVzPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPlZhbHVhdGlvbiBpcyBhIHRlcm0gaW52ZXN0b3JzIHVzZSB0byBpbmRpY2F0ZSB0aGUgZGVncmVlIHRvIHdoaWNoIGEgc3RvY2sgaXMgYWNjdXJhdGVseSBwcmljZWQuIFRoZSBwcmljZS1zYWxlcyByYXRpbyBkb2VzIHRoaXMgYnkgY29tcGFyaW5nIGEgY29tcGFueeKAmXMgc3RvY2sgcHJpY2UgdG8gaXRzIHJldmVudWVzLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL3doYXQtaXMtcHJpY2Utc2FsZXMtcmF0aW8vIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VQcmljZUJvb2siIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iUHJpY2VCb29rIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VQcmljZUJvb2siPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPlByaWNlL0Jvb2s8L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+VGhlIHByaWNlLXRvLWJvb2sgKFAvQikgcmF0aW8gb2YgYSBjb21wYW55J3Mgc3RvY2sgcHJpY2UgdG8gaXRzIGJvb2sgdmFsdWUgb24gaXRzIGJhbGFuY2Ugc2hlZXQuIFRoZSBib29rIHZhbHVlIGlzIHRoZSBhbW91bnQgb2YgbW9uZXkgYSBmaXJtIGNhbiByZWFzb25hYmx5IGV4cGVjdCBpZiBpdCBzb2xkIGFsbCBvZiBpdHMgYXNzZXRzIGF0IGN1cnJlbnQgbWFya2V0IHByaWNlcy48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VQcmljZUNhc2giIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iUHJpY2VDYXNoIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VQcmljZUNhc2giPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPlByaWNlL0Nhc2g8L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+VGhlIHByaWNlLXRvLWNhc2ggZmxvdyByYXRpbyBtZWFzdXJlcyB0aGUgY3VycmVudCBwcmljZSBvZiB0aGUgY29tcGFueSdzIHN0b2NrIHJlbGF0aXZlIHRvIHRoZSBhbW91bnQgb2YgY2FzaCBnZW5lcmF0ZWQgYnkgdGhlIGNvbXBhbnkuPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlUlNJIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IlJTSSI+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlUlNJIj4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5SU0k8L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+UmVsYXRpdmUgU3RyZW5ndGggSW5kZXggKFJTSSkgbWVhc3VyZXMgdGhlIHZlbG9jaXR5IGFuZCBtYWduaXR1ZGUgb2YgYSBzdG9jaydzIHByaWNlIG1vdmVtZW50cyBhbmQgY29tcGFyZXMgdGhlbSB3aXRoIHRoZSBtYWduaXR1ZGUgb2YgYSBzdG9jaydzIGF2ZXJhZ2UgZ2FpbnMgYW5kIGF2ZXJhZ2UgbG9zc2VzLiBBIHN0b2NrJ3MgUlNJIG9zY2lsbGF0ZXMgYmV0d2VlbiB6ZXJvIGFuZCAxMDAuIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9maW5hbmNpYWwtdGVybXMvbW9tZW50dW0taW5kaWNhdG9yLXJlbGF0aXZlLXN0cmVuZ3RoLWluZGV4LyI+TGVhcm4gbW9yZTwvYT4uPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48aW5wdXQgY2xhc3M9ImQtbm9uZSIgaWQ9ImNvbHVtbkNob2ljZVN1YmhlYWRlckVhcm5pbmdzIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IlN1YmhlYWRlckVhcm5pbmdzIj48bGFiZWwgY2xhc3M9InN1YmhlYWRlciIgZm9yPSJjb2x1bW5DaG9pY2VTdWJoZWFkZXJFYXJuaW5ncyI+IDxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0taW5uZXInPkVhcm5pbmdzPC9zcGFuPjwvbGFiZWw8L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlQW5udWFsU2FsZXMiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iQW5udWFsU2FsZXMiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZUFubnVhbFNhbGVzIj4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5Bbm51YWwgU2FsZXM8L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+QW5udWFsIFNhbGVzIGlzIGEgY29tcGFueSdzIHJldmVudWUgZnJvbSBzYWxlcyBvZiBpdHMgcHJvZHVjdHMgb3Igc2VydmljZXMgaW4gYSB5ZWFyLjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZUVQU1RyYWlsaW5nVHdlbHZlTW9udGhzIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IkVQU1RyYWlsaW5nVHdlbHZlTW9udGhzIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VFUFNUcmFpbGluZ1R3ZWx2ZU1vbnRocyI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+VHJhaWxpbmcgMTItTW9udGggRVBTPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPlRyYWlsaW5nIHR3ZWx2ZSBtb250aHMgKFRUTSkgZWFybmluZ3MgcGVyIHNoYXJlIChFUFMpIGlzIGFuIGludmVzdG1lbnQgbWV0cmljIGRldGVybWluZWQgYnkgYSBjb21wYW55J3MgZWFybmluZ3MgaW4gdGhlIHBhc3QgMTIgbW9udGhzIGRpdmlkZWQgYnkgaXRzIG51bWJlciBvZiBjb21tb24gb3V0c3RhbmRpbmcgc2hhcmVzLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL2Vhcm5pbmdzLXBlci1zaGFyZS1lcHMtZXhwbGFpbmVkLyI+TGVhcm4gbW9yZTwvYT4uPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlQ3VycmVudFllYXJFUFNFc3RpbWF0ZSIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJDdXJyZW50WWVhckVQU0VzdGltYXRlIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VDdXJyZW50WWVhckVQU0VzdGltYXRlIj4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5DdXJyZW50IFllYXIgRVBTIEVzdGltYXRlPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPkVhcm5pbmdzIHBlciBzaGFyZSAoRVBTKSBpcyBhbiBpbnZlc3RtZW50IG1ldHJpYyBkZXRlcm1pbmVkIGJ5IGEgY29tcGFueSdzIGVhcm5pbmdzIGRpdmlkZWQgYnkgaXRzIG51bWJlciBvZiBjb21tb24gb3V0c3RhbmRpbmcgc2hhcmVzLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL2Vhcm5pbmdzLXBlci1zaGFyZS1lcHMtZXhwbGFpbmVkLyI+TGVhcm4gbW9yZTwvYT4uPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlTmV4dFllYXJFUFNFc3RpbWF0ZSIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJOZXh0WWVhckVQU0VzdGltYXRlIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VOZXh0WWVhckVQU0VzdGltYXRlIj4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5OZXh0IFllYXIgRVBTIEVzdGltYXRlPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPkVhcm5pbmdzIHBlciBzaGFyZSAoRVBTKSBpcyBhbiBpbnZlc3RtZW50IG1ldHJpYyBkZXRlcm1pbmVkIGJ5IGEgY29tcGFueSdzIGVhcm5pbmdzIGRpdmlkZWQgYnkgaXRzIG51bWJlciBvZiBjb21tb24gb3V0c3RhbmRpbmcgc2hhcmVzLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL2Vhcm5pbmdzLXBlci1zaGFyZS1lcHMtZXhwbGFpbmVkLyI+TGVhcm4gbW9yZTwvYT4uPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlQm9va1ZhbHVlIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IkJvb2tWYWx1ZSI+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlQm9va1ZhbHVlIj4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5Cb29rIFZhbHVlPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPkJvb2sgdmFsdWUgcGVyIHNoYXJlIChCVlBTKSBpcyBhIHJhdGlvIHVzZWQgdG8gY29tcGFyZSBhIGZpcm0ncyBjb21tb24gc2hhcmVob2xkZXIncyBlcXVpdHkgdG8gdGhlIG51bWJlciBvZiBzaGFyZXMgb3V0c3RhbmRpbmcuIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9maW5hbmNpYWwtdGVybXMvYm9vay12YWx1ZS1lcXVpdHktcGVyLXNoYXJlLWJ2cHMvIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VDYXNoZmxvdyIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJDYXNoZmxvdyI+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlQ2FzaGZsb3ciPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPkNhc2ggRmxvdzwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5DYXNoIGZsb3cgaXMgYSBtZWFzdXJlbWVudCBvZiBob3cgbXVjaCBjYXNoIGFuZCBjYXNoIGVxdWl2YWxlbnRzIGEgY29tcGFueSBpcyByZWNlaXZpbmcgYW5kIGhvdyBtdWNoIGl0IGlzIHNlbmRpbmcgb3V0LiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL2Nhc2gtZmxvdy1hbmFseXNpcy1zdG9jay1zZWxlY3Rpb24vIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VOZXRJbmNvbWUiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iTmV0SW5jb21lIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VOZXRJbmNvbWUiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPk5ldCBJbmNvbWU8L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+TmV0IGluY29tZSBpcyB0aGUgbWVhc3VyZW1lbnQgb2Ygd2hldGhlciBvciBub3QgYSBjb21wYW55IGlzIG1ha2luZyBtb25leSBhbmQsIGlmIHNvLCBob3cgbXVjaCBwcm9maXQgdGhleSBhcmUgcmV0YWluaW5nLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL3doeS1uZXQtaW5jb21lLWltcG9ydGFudC1pbnZlc3RvcnMvIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VOZXRNYXJnaW5zIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9Ik5ldE1hcmdpbnMiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZU5ldE1hcmdpbnMiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPk5ldCBNYXJnaW5zPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPk5ldCBtYXJnaW4gKGFsc28ga25vd24gYXMgbmV0IHByb2ZpdCBtYXJnaW4pIGlzIHRoZSBhbW91bnQgb2YgcmV2ZW51ZXMgdGhhdCByZW1haW5zIGFzIHByb2ZpdCBhZnRlciBhIGdpdmVuIHBlcmlvZCBvZiB0aW1lLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL25ldC1tYXJnaW4tdW5kZXJzdGFuZGluZy1kaWZmZXJlbnQtdHlwZXMtcHJvZml0LyI+TGVhcm4gbW9yZTwvYT4uPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48aW5wdXQgY2xhc3M9ImQtbm9uZSIgaWQ9ImNvbHVtbkNob2ljZVN1YmhlYWRlclBlcmZvcm1hbmNlIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IlN1YmhlYWRlclBlcmZvcm1hbmNlIj48bGFiZWwgY2xhc3M9InN1YmhlYWRlciIgZm9yPSJjb2x1bW5DaG9pY2VTdWJoZWFkZXJQZXJmb3JtYW5jZSI+IDxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0taW5uZXInPlBlcmZvcm1hbmNlPC9zcGFuPjwvbGFiZWw8L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlUHJldmlvdXNDbG9zZSIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJQcmV2aW91c0Nsb3NlIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VQcmV2aW91c0Nsb3NlIj4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5QcmV2aW91cyBDbG9zZTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5UaGUgY2xvc2luZyBwcmljZSBvZiB0aGUgbGFzdCBtYXJrZXQgZGF5LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZU9wZW5pbmdQcmljZSIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJPcGVuaW5nUHJpY2UiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZU9wZW5pbmdQcmljZSI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+T3BlbmluZyBQcmljZTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5UaGUgb3BlbmluZyBwcmljZSBvZiB0aGUgY3VycmVudCBtYXJrZXQgZGF5LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZVRvZGF5c1BlcmZvcm1hbmNlRnJvbU9wZW4iIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iVG9kYXlzUGVyZm9ybWFuY2VGcm9tT3BlbiI+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlVG9kYXlzUGVyZm9ybWFuY2VGcm9tT3BlbiI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+Q2hhbmdlIGZyb20gT3Blbjwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5UaGUgYW1vdW50L3BlcmNlbnQgY2hhbmdlIGZyb20gdGhlIGN1cnJlbnQgbWFya2V0IGRheSdzIG9wZW5pbmcgcHJpY2UuPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlQ3J5cHRvUHJpY2VDaGFuZ2VPbmVIb3VyIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IkNyeXB0b1ByaWNlQ2hhbmdlT25lSG91ciI+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlQ3J5cHRvUHJpY2VDaGFuZ2VPbmVIb3VyIj4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5DcnlwdG8gMS1Ib3VyIENoYW5nZTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5UaGUgY2hhbmdlIGluIHByaWNlIG9mIHRoZSBsYXN0IGhvdXIgaW4gYSBtYXJrZXQgZGF5LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZVByaWNlQ2hhbmdlU2V2ZW5EYXlzIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IlByaWNlQ2hhbmdlU2V2ZW5EYXlzIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VQcmljZUNoYW5nZVNldmVuRGF5cyI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+Ny1EYXkgUHJpY2UgQ2hhbmdlPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPlRoZSA3IGRheSBwcmljZSBjaGFuZ2Ugb2YgdGhlIHN0b2NrL2Fzc2V0LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZVByaWNlQ2hhbmdlT25lWWVhciIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJQcmljZUNoYW5nZU9uZVllYXIiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZVByaWNlQ2hhbmdlT25lWWVhciI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+MS1ZZWFyIFByaWNlIENoYW5nZTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5UaGUgMS15ZWFyIHByaWNlIGNoYW5nZSBvZiB0aGUgc3RvY2svYXNzZXQuPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlRmlmdHlUd29XZWVrUmFuZ2UiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iRmlmdHlUd29XZWVrUmFuZ2UiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZUZpZnR5VHdvV2Vla1JhbmdlIj4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz41Mi1XZWVrIFJhbmdlPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPlRoZSA1Mi13ZWVrIHJhbmdlIHNob3dzIHRoZSBsb3dlc3QgYW5kIGhpZ2hlc3QgcHJpY2UgYXQgd2hpY2ggYSBzdG9jayBoYXMgdHJhZGVkIGF0IGluIHRoZSBwcmV2aW91cyA1MiB3ZWVrcy48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VUb2RheXNSYW5nZSIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJUb2RheXNSYW5nZSI+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlVG9kYXlzUmFuZ2UiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPlRvZGF5J3MgUmFuZ2U8L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+VG9kYXkncyByYW5nZSBzaG93cyB0aGUgbG93ZXN0IGFuZCBoaWdoZXN0IHByaWNlIGF0IHdoaWNoIGEgc3RvY2sgaGFzIHRyYWRlZCBhdCB0b2RheS48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VUb2RheXNWb2x1bWUiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iVG9kYXlzVm9sdW1lIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VUb2RheXNWb2x1bWUiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPlRvZGF5J3MgVm9sdW1lPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPlZvbHVtZSByZWZlcnMgdG8gdGhlIGFtb3VudCBvZiBzaGFyZXMgb3IgY29udHJhY3RzIHRyYWRlZCBpbiBhbiBhc3NldCBvciBzZWN1cml0eSBvdmVyIGEgcGVyaW9kIG9mIHRpbWUsIHVzdWFsbHkgb3ZlciB0aGUgY291cnNlIG9mIGEgdHJhZGluZyBkYXkuPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlQXZlcmFnZURhaWx5Vm9sdW1lIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IkF2ZXJhZ2VEYWlseVZvbHVtZSI+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlQXZlcmFnZURhaWx5Vm9sdW1lIj4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5BdmVyYWdlIERhaWx5IFZvbHVtZTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5Wb2x1bWUgcmVmZXJzIHRvIHRoZSBhbW91bnQgb2Ygc2hhcmVzIG9yIGNvbnRyYWN0cyB0cmFkZWQgaW4gYW4gYXNzZXQgb3Igc2VjdXJpdHkgb3ZlciBhIHBlcmlvZCBvZiB0aW1lLCB1c3VhbGx5IG92ZXIgdGhlIGNvdXJzZSBvZiBhIHRyYWRpbmcgZGF5LiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vbWFya2V0LWRhdGEvdW51c3VhbC12b2x1bWUtc3RvY2tzLyNhdmVyYWdlLWRhaWx5LXRyYWRlLXZvbHVtZS1leHBsYWluZWQiPkxlYXJuIG1vcmU8L2E+LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZVJldHVybk9uQXNzZXRzIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IlJldHVybk9uQXNzZXRzIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VSZXR1cm5PbkFzc2V0cyI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+UmV0dXJuIE9uIEFzc2V0czwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5UaGUgcmV0dXJuIG9uIGFzc2V0cyAoUk9BKSByYXRpbyBpcyBvbmUgb2Ygc2V2ZXJhbCBwcm9maXRhYmlsaXR5IG1lYXN1cmVzIHRoYXQgaW52ZXN0b3JzIHVzZSB0byBtZWFzdXJlIHRoZWlyIHJldHVybiBvbiBpbnZlc3RtZW50IChST0kpLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL3doYXQtaXMtcmV0dXJuLW9uLWFzc2V0cy8iPkxlYXJuIG1vcmU8L2E+LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZVJldHVybk9uRXF1aXR5IiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IlJldHVybk9uRXF1aXR5Ij48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VSZXR1cm5PbkVxdWl0eSI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+UmV0dXJuIE9uIEVxdWl0eTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5SZXR1cm4gb24gZXF1aXR5IGlzIGEgbWVhc3VyZW1lbnQgb2YgaG93IGVmZmljaWVudCBhIGNvbXBhbnkgaXMgaW4gdXNpbmcgaXRzIGFzc2V0cyBmcm9tIHRoZWlyIHNoYXJlaG9sZGVycyB0byBjcmVhdGUgZWFybmluZ3MuIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9maW5hbmNpYWwtdGVybXMvY2FsY3VsYXRlLXJldHVybi1vbi1lcXVpdHkvIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxpbnB1dCBjbGFzcz0iZC1ub25lIiBpZD0iY29sdW1uQ2hvaWNlU3ViaGVhZGVyRGVidCIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJTdWJoZWFkZXJEZWJ0Ij48bGFiZWwgY2xhc3M9InN1YmhlYWRlciIgZm9yPSJjb2x1bW5DaG9pY2VTdWJoZWFkZXJEZWJ0Ij4gPHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1pbm5lcic+RGVidDwvc3Bhbj48L2xhYmVsPC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZURlYnRUb0VxdWl0eVJhdGlvIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IkRlYnRUb0VxdWl0eVJhdGlvIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VEZWJ0VG9FcXVpdHlSYXRpbyI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+RGVidC9FcXVpdHkgUmF0aW88L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+QSBjb21wYW554oCZcyBkZWJ0LXRvLWVxdWl0eSByYXRpbyBpcyBhIHBlcmZvcm1hbmNlIG1ldHJpYyB0aGF0IG1lYXN1cmVzIGEgY29tcGFueeKAmXMgbGV2ZWwgb2YgZGVidCBpbiByZWxhdGlvbiB0byB0aGUgb3ZlcmFsbCB2YWx1ZSBvZiB0aGVpciBzdG9jay4gPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2ZpbmFuY2lhbC10ZXJtcy9jYWxjdXVsYXRlLWRlYnQtdG8tZXF1aXR5LXJhdGlvbi8iPkxlYXJuIG1vcmU8L2E+LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZUN1cnJlbnRSYXRpbyIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJDdXJyZW50UmF0aW8iPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZUN1cnJlbnRSYXRpbyI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+Q3VycmVudCBSYXRpbzwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5UaGUgY3VycmVudCByYXRpbyBpcyBhIGxpcXVpZGl0eSByYXRpbyB0aGF0IG1lYXN1cmVzIGEgY29tcGFueSdzIGFiaWxpdHkgdG8gcGF5IHNob3J0LXRlcm0gb2JsaWdhdGlvbnMgb3IgdGhvc2UgZHVlIHdpdGhpbiBvbmUgeWVhci4gPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2ZpbmFuY2lhbC10ZXJtcy93aGF0LWlzLWN1cnJlbnQtcmF0aW8vIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VRdWlja1JhdGlvIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IlF1aWNrUmF0aW8iPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZVF1aWNrUmF0aW8iPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPlF1aWNrIFJhdGlvPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPlRoZSBxdWljayByYXRpbyBtZWFzdXJlcyBhIGNvbXBhbnkncyBjYXBhY2l0eSB0byBwYXkgaXRzIGN1cnJlbnQgbGlhYmlsaXRpZXMgd2l0aG91dCBuZWVkaW5nIHRvIHNlbGwgaXRzIGludmVudG9yeSBvciBvYnRhaW4gYWRkaXRpb25hbCBmaW5hbmNpbmcuICA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL3doYXQtaXMtcXVpY2stcmF0aW8vIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxpbnB1dCBjbGFzcz0iZC1ub25lIiBpZD0iY29sdW1uQ2hvaWNlU3ViaGVhZGVyRGl2aWRlbmQiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iU3ViaGVhZGVyRGl2aWRlbmQiPjxsYWJlbCBjbGFzcz0ic3ViaGVhZGVyIiBmb3I9ImNvbHVtbkNob2ljZVN1YmhlYWRlckRpdmlkZW5kIj4gPHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1pbm5lcic+RGl2aWRlbmQ8L3NwYW4+PC9sYWJlbDwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VEaXZpZGVuZFlpZWxkIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IkRpdmlkZW5kWWllbGQiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZURpdmlkZW5kWWllbGQiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPkRpdmlkZW5kIFlpZWxkPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPkRpdmlkZW5kIHlpZWxkIGlzIGEgY29tcGFueeKAmXMgZGl2aWRlbmQgZXhwcmVzc2VkIGFzIGEgcGVyY2VudGFnZSBvZiBpdHMgc3RvY2sgcHJpY2UuIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9maW5hbmNpYWwtdGVybXMvd2hhdC1pcy1kaXZpZGVuZC15aWVsZC8iPkxlYXJuIG1vcmU8L2E+LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZVlpZWxkT25Db3N0IiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IllpZWxkT25Db3N0Ij48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VZaWVsZE9uQ29zdCI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+WWllbGQgb24gQ29zdDwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5ZaWVsZCBvbiBjb3N0IGlzIGEgY29tcGFueeKAmXMgZGl2aWRlbmQgZXhwcmVzc2VkIGFzIGEgcGVyY2VudGFnZSBvZiB0aGUgcHJpY2Ugb3JpZ2luYWxseSBwYWlkIGZvciB0aGUgc3RvY2suIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9kaXZpZGVuZHMvY2FsY3VsYXRvci8iPkxlYXJuIG1vcmU8L2E+LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZVRocmVlWWVhckRpdkdyb3d0aCIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJUaHJlZVllYXJEaXZHcm93dGgiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZVRocmVlWWVhckRpdkdyb3d0aCI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+My1ZZWFyIERpdmlkZW5kIEdyb3d0aDwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5Ib3cgbXVjaCB0aGUgY29tcGFueSdzIGRpdmlkZW5kIGhhcyBncm93biAob3IgZGVjbGluZWQpIG92ZXIgdGhlIHBhc3QgMyB5ZWFycy4gPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2ZpbmFuY2lhbC10ZXJtcy9pbnZlc3RpbmctZGl2aWRlbmQtc3RvY2tzLyI+TGVhcm4gbW9yZTwvYT4uPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlUGF5b3V0UmF0aW8iIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iUGF5b3V0UmF0aW8iPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZVBheW91dFJhdGlvIj4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5QYXlvdXQgUmF0aW88L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+VGhlIGRpdmlkZW5kIHBheW91dCByYXRpbyBpcyB0aGUgcmF0aW8gb2YgdGhlIHRvdGFsIGFtb3VudCBvZiBkaXZpZGVuZHMgcGFpZCBvdXQgdG8gc2hhcmVob2xkZXJzIHJlbGF0aXZlIHRvIHRoZSBuZXQgaW5jb21lIG9mIHRoZSBjb21wYW55LiBJdCBpcyB0aGUgcGVyY2VudGFnZSBvZiBlYXJuaW5ncyBwYWlkIHRvIHNoYXJlaG9sZGVycyB2aWEgZGl2aWRlbmRzLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL2ludmVzdGluZy1kaXZpZGVuZC1zdG9ja3MvIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VZZWFyc09mRGl2aWRlbmRHcm93dGgiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iWWVhcnNPZkRpdmlkZW5kR3Jvd3RoIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VZZWFyc09mRGl2aWRlbmRHcm93dGgiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPlllYXJzIG9mIERpdmlkZW5kIEdyb3d0aDwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5UaGUgbnVtYmVyIG9mIHllYXJzIHRoZSBwYWlkIGRpdmlkZW5kIGhhcyBpbmNyZWFzZWQuIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9maW5hbmNpYWwtdGVybXMvaW52ZXN0aW5nLWRpdmlkZW5kLXN0b2Nrcy8iPkxlYXJuIG1vcmU8L2E+LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZU5leHREaXZpZGVuZFBheW91dERhdGUiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iTmV4dERpdmlkZW5kUGF5b3V0RGF0ZSI+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlTmV4dERpdmlkZW5kUGF5b3V0RGF0ZSI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+TmV4dCBEaXZpZGVuZCBQYXlvdXQgRGF0ZTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5BIHBheW1lbnQgZGF0ZSwgYWxzbyBrbm93biBhcyB0aGUgcGF5IG9yIHBheWFibGUgZGF0ZSwgaXMgdGhlIGRheSBvbiB3aGljaCBhIGRlY2xhcmVkIHN0b2NrIGRpdmlkZW5kIGlzIHNjaGVkdWxlZCB0byBiZSBwYWlkIHRvIGVsaWdpYmxlIGludmVzdG9ycy4gVGhpcyBkYXRlIGNhbiBiZSB1cCB0byBhIG1vbnRoIGFmdGVyIHRoZSBleC1kaXZpZGVuZCBkYXRlLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vZmluYW5jaWFsLXRlcm1zL2ludmVzdGluZy1kaXZpZGVuZC1zdG9ja3MvIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VOZXh0RXhEaXZpZGVuZERhdGUiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iTmV4dEV4RGl2aWRlbmREYXRlIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VOZXh0RXhEaXZpZGVuZERhdGUiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPk5leHQgRXgtRGl2aWRlbmQgRGF0ZTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5UaGUgZXgtZGl2aWRlbmQgZGF0ZSBpcyB0aGUgdHJhZGluZyBkYXRlIG9uIChhbmQgYWZ0ZXIpIHdoaWNoIHRoZSBkaXZpZGVuZCBpcyBub3Qgb3dlZCB0byBhIG5ldyBidXllciBvZiB0aGUgc3RvY2suIFRoZSBleC1kYXRlIGlzIG9uZSBidXNpbmVzcyBkYXkgYmVmb3JlIHRoZSBkYXRlIG9mIHJlY29yZC4gVGhlIGRhdGUgb2YgcmVjb3JkIGlzIHRoZSBkYXkgb24gd2hpY2ggdGhlIGNvbXBhbnkgY2hlY2tzIGl0cyByZWNvcmRzIHRvIGlkZW50aWZ5IHNoYXJlaG9sZGVycyBvZiB0aGUgY29tcGFueS4gPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2RpdmlkZW5kcy9leC1kaXZpZGVuZC1jYWxlbmRhci8jZXgtZGl2aWRlbmQtaW52ZXN0aW5nIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VQYXltZW50U2NoZWR1bGUiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iUGF5bWVudFNjaGVkdWxlIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VQYXltZW50U2NoZWR1bGUiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPkRpdmlkZW5kIFBheW1lbnQgU2NoZWR1bGU8L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+VGhlIGZyZXF1ZW5jeSBpbiB3aGljaCBhIGNvbXBhbnkgYW5ub3VuY2VzIGRpdmlkZW5kcywgZXhhbXBsZXMgaW5jbHVkZSBxdWFydGVybHkgYW5kIHllYXJseS4gPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2ZpbmFuY2lhbC10ZXJtcy9pbnZlc3RpbmctZGl2aWRlbmQtc3RvY2tzLyI+TGVhcm4gbW9yZTwvYT4uPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48aW5wdXQgY2xhc3M9ImQtbm9uZSIgaWQ9ImNvbHVtbkNob2ljZVN1YmhlYWRlckFkZGl0aW9uYWxJbmRpY2F0b3JzIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IlN1YmhlYWRlckFkZGl0aW9uYWxJbmRpY2F0b3JzIj48bGFiZWwgY2xhc3M9InN1YmhlYWRlciIgZm9yPSJjb2x1bW5DaG9pY2VTdWJoZWFkZXJBZGRpdGlvbmFsSW5kaWNhdG9ycyI+IDxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0taW5uZXInPkFkZGl0aW9uYWwgSW5kaWNhdG9yczwvc3Bhbj48L2xhYmVsPC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZU1hcmtldFJhbmsiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iTWFya2V0UmFuayI+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlTWFya2V0UmFuayI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+TWFya2V0UmFua+KEojwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5PdXIgTWFya2V0UmFuazxzdXA+JnRyYWRlOzwvc3VwPiByYXRlcyBldmVyeSBzdG9jayBvbiA3IHVuaXF1ZSBjYXRlZ29yaWVzOiBBbmFseXN0J3MgT3BpbmlvbiwgU2hvcnQgSW50ZXJlc3QsIERpdmlkZW5kIFN0cmVuZ3RoLCBFU0cgU2NvcmUsIE1lZGlhIFNlbnRpbWVudCwgQ29tcGFueSBPd25lcnNoaXAsIGFuZCBFYXJuaW5ncyBhbmQgVmFsdWF0aW9uLiBNYXJrZXRSYW5rIGlzIGNhbGN1bGF0ZWQgYXMgYW4gYXZlcmFnZSBvZiBhdmFpbGFibGUgY2F0ZWdvcnkgc2NvcmVzLCB3aXRoIGV4dHJhIHdlaWdodCBnaXZlbiB0byBhbmFseXNpcyBhbmQgdmFsdWF0aW9uLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vc3RvY2tzL3RvcC1tYXJrZXRyYW5rLyI+TGVhcm4gbW9yZTwvYT4uPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlTmV3c1NlbnRpbWVudCIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJOZXdzU2VudGltZW50Ij48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VOZXdzU2VudGltZW50Ij4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5OZXdzIFNlbnRpbWVudDwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5OZXdzIHNlbnRpbWVudCBpcyBvbmUgcGFydCBvZiBmdW5kYW1lbnRhbCBhbmFseXNpcy4gQSBnb29kIHdheSB0byBsb29rIGF0IGl0IGlzIHRoYXQgdGVjaG5pY2FsIHNpZ25hbHMgd2lsbCB0ZWxsIGludmVzdG9ycyB3aGF04oCZcyBoYXBwZW5pbmcgdG8gYSBzdG9ja+KAmXMgcHJpY2UuIFVuZGVyc3RhbmRpbmcgdGhlIG5ld3MgY2FuIGhlbHAgaW52ZXN0b3JzIHVuZGVyc3RhbmQgd2h5IHRoYXQgbW92ZW1lbnQgbWF5IGJlIGhhcHBlbmluZy4gPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2ZpbmFuY2lhbC10ZXJtcy9tYXJrZXQtbmV3cy1zZW50aW1lbnQtaW4taW52ZXN0aW5nLyI+TGVhcm4gbW9yZTwvYT4uPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlSW5zaWRlck93bmVyc2hpcFBlcmNlbnRhZ2UiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iSW5zaWRlck93bmVyc2hpcFBlcmNlbnRhZ2UiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZUluc2lkZXJPd25lcnNoaXBQZXJjZW50YWdlIj4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5JbnNpZGVyIE93bmVyc2hpcCAlPC9zcGFuPjwvbGFiZWw+Jm5ic3A7PHNwYW4gY2xhc3M9J3Rvb2x0aXAtYXZhaWxhYmxlIGZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uJyBhcmlhLWhpZGRlbj0ndHJ1ZScgPjwvc3Bhbj48ZGl2IGNsYXNzPSd0b29sdGlwLWNvbnRlbnQgZC1ub25lJz48ZGl2IGNsYXNzPSdwLTIgYmctd2hpdGUgYm9yZGVyIGZsb2F0aW5nLXRvb2x0aXAgc2hhZG93IGZvbnQtc21hbGwnPlRoZSBwZXJjZW50YWdlIG9mIHRoZSBjb21wYW55IHRoYXQgY29tcGFueSBpbnNpZGVycyBvd24gaW4gc2hhcmVzLiA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vaW5zaWRlci10cmFkZXMvI2luc2lkZXItdHJhZGluZy13aGF0LXlvdS1uZWVkLXRvLWtub3ciPkxlYXJuIG1vcmU8L2E+LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZUluc3RpdHV0aW9uYWxPd25lcnNoaXBQZXJjZW50YWdlIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9Ikluc3RpdHV0aW9uYWxPd25lcnNoaXBQZXJjZW50YWdlIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VJbnN0aXR1dGlvbmFsT3duZXJzaGlwUGVyY2VudGFnZSI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+SW5zdGl0dXRpb25hbCBPd25lcnNoaXAgJTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5UaGUgcGVyY2VudGFnZSBvZiB0aGUgY29tcGFueSB0aGF0IGluc3RpdHV0aW9uYWwgb3duZXJzIG93biBpbiBzaGFyZXMuIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9maW5hbmNpYWwtdGVybXMvd2hhdC1hcmUtaW5zdGl0dXRpb25hbC1pbnZlc3RvcnMvIj5MZWFybiBtb3JlPC9hPi48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VOZXh0RWFybmluZ3NEYXRlIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9Ik5leHRFYXJuaW5nc0RhdGUiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZU5leHRFYXJuaW5nc0RhdGUiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPk5leHQgRWFybmluZ3MgRGF0ZTwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5FYXJuaW5ncyBkYXRlIGlzIHRoZSBkYXRlIG9mIHRoZSBuZXh0IHJlbGVhc2Ugb2YgYSBjb21wYW55J3MgZmluYW5jaWFsIHJlcG9ydC4gRWFybmluZ3MgcmVwb3J0IGRhdGUgaXMgdGhlIGRhdGUgb2YgYW4gb2ZmaWNpYWwgYW5ub3VuY2VtZW50IGFib3V0IGEgY29tcGFueSdzIHByb2ZpdGFiaWxpdHkgZm9yIGEgc3BlY2lmaWMgdGltZSBwZXJpb2QuIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9lYXJuaW5ncy9sYXRlc3QvI3doYXQtYXJlLWVhcm5pbmdzLXJlcG9ydHMiPkxlYXJuIG1vcmU8L2E+LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZUVtcGxveWVlcyIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJFbXBsb3llZXMiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZUVtcGxveWVlcyI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+TnVtYmVyIG9mIEVtcGxveWVlczwvc3Bhbj48L2xhYmVsPiZuYnNwOzxzcGFuIGNsYXNzPSd0b29sdGlwLWF2YWlsYWJsZSBmYS1yZWd1bGFyIGZhLWNpcmNsZS1xdWVzdGlvbicgYXJpYS1oaWRkZW49J3RydWUnID48L3NwYW4+PGRpdiBjbGFzcz0ndG9vbHRpcC1jb250ZW50IGQtbm9uZSc+PGRpdiBjbGFzcz0ncC0yIGJnLXdoaXRlIGJvcmRlciBmbG9hdGluZy10b29sdGlwIHNoYWRvdyBmb250LXNtYWxsJz5UaGUgbnVtYmVyIG9mIGVtcGxveWVlcyBpbiBhIGNvbXBhbnkuPC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLWFycm93LXJpZ2h0LWFycm93LWxlZnQnPjwvc3Bhbj48L2xpPjxsaT48c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWxlZnQnPjxpbnB1dCBpZD0iY29sdW1uQ2hvaWNlT3V0c3RhbmRpbmdTaGFyZXMiIHR5cGU9ImNoZWNrYm94IiB2YWx1ZT0iT3V0c3RhbmRpbmdTaGFyZXMiPjxsYWJlbCBmb3I9ImNvbHVtbkNob2ljZU91dHN0YW5kaW5nU2hhcmVzIj4gPHNwYW4gY2xhc3M9J2xhYmVsLWlubmVyJz5PdXRzdGFuZGluZyBTaGFyZXM8L3NwYW4+PC9sYWJlbD4mbmJzcDs8c3BhbiBjbGFzcz0ndG9vbHRpcC1hdmFpbGFibGUgZmEtcmVndWxhciBmYS1jaXJjbGUtcXVlc3Rpb24nIGFyaWEtaGlkZGVuPSd0cnVlJyA+PC9zcGFuPjxkaXYgY2xhc3M9J3Rvb2x0aXAtY29udGVudCBkLW5vbmUnPjxkaXYgY2xhc3M9J3AtMiBiZy13aGl0ZSBib3JkZXIgZmxvYXRpbmctdG9vbHRpcCBzaGFkb3cgZm9udC1zbWFsbCc+T3V0c3RhbmRpbmcgc2hhcmVzIGFyZSBhbGwgdGhlIHNoYXJlcyBvZiBhIGNvcnBvcmF0aW9uIG9yIGZpbmFuY2lhbCBhc3NldCB0aGF0IGhhdmUgYmVlbiBhdXRob3JpemVkLCBpc3N1ZWQgYW5kIHB1cmNoYXNlZCBieSBpbnZlc3RvcnMgYW5kIGFyZSBoZWxkIGJ5IHRoZW0uIFRoZXkgaGF2ZSByaWdodHMgYW5kIHJlcHJlc2VudCBvd25lcnNoaXAgaW4gdGhlIGNvcnBvcmF0aW9uIGJ5IHRoZSBwZXJzb24gd2hvIGhvbGRzIHRoZSBzaGFyZXMuIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9maW5hbmNpYWwtdGVybXMvb3V0c3RhbmRpbmctc2hhcmVzLWJ1eWluZy1zZWxsaW5nLXN0b2Nrcy8iPkxlYXJuIG1vcmU8L2E+LjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT48bGk+PGlucHV0IGNsYXNzPSJkLW5vbmUiIGlkPSJjb2x1bW5DaG9pY2VTdWJoZWFkZXJQb3J0Zm9saW9EZXRhaWxzIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IlN1YmhlYWRlclBvcnRmb2xpb0RldGFpbHMiPjxsYWJlbCBjbGFzcz0ic3ViaGVhZGVyIiBmb3I9ImNvbHVtbkNob2ljZVN1YmhlYWRlclBvcnRmb2xpb0RldGFpbHMiPiA8c3BhbiBjbGFzcz0nbGlzdC1pdGVtLWlubmVyJz5Qb3J0Zm9saW8gRGV0YWlsczwvc3Bhbj48L2xhYmVsPC9saT48bGk+PHNwYW4gY2xhc3M9J2xpc3QtaXRlbS1sZWZ0Jz48aW5wdXQgaWQ9ImNvbHVtbkNob2ljZU5vdGVzIiB0eXBlPSJjaGVja2JveCIgdmFsdWU9Ik5vdGVzIj48bGFiZWwgZm9yPSJjb2x1bW5DaG9pY2VOb3RlcyI+IDxzcGFuIGNsYXNzPSdsYWJlbC1pbm5lcic+Tm90ZXM8L3NwYW4+PC9sYWJlbD48L3NwYW4+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtYXJyb3ctcmlnaHQtYXJyb3ctbGVmdCc+PC9zcGFuPjwvbGk+PGxpPjxzcGFuIGNsYXNzPSdsaXN0LWl0ZW0tbGVmdCc+PGlucHV0IGlkPSJjb2x1bW5DaG9pY2VQcmljZUFsZXJ0cyIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSJQcmljZUFsZXJ0cyI+PGxhYmVsIGZvcj0iY29sdW1uQ2hvaWNlUHJpY2VBbGVydHMiPiA8c3BhbiBjbGFzcz0nbGFiZWwtaW5uZXInPlByaWNlIEFsZXJ0czwvc3Bhbj48L2xhYmVsPjwvc3Bhbj48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1hcnJvdy1yaWdodC1hcnJvdy1sZWZ0Jz48L3NwYW4+PC9saT5kAqABDw8WAh8EZ2RkAqIBDw8WAh8BZ2RkAqgBD2QWAmYPZBYCAgMPFgIfAAU0PGVtIGNsYXNzPSdzbWFsbCc+TGFzdCB1cGRhdGVkOiAxMS84IDE6MzMgUE0gRVQ8L2VtPmQCqgEPFgIfAAW9bDxkaXYgY2xhc3M9J2QtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBtdC0yIG1iLTEnPjxkaXYgY2xhc3M9J3dhdGNobGlzdC10aXRsZSc+PHN0cm9uZz5NeSBEZWZhdWx0IFdhdGNobGlzdDwvc3Ryb25nPjwvZGl2PjxkaXY+PGJ1dHRvbiB0eXBlPSdidXR0b24nIGRhdGEtdG9nZ2xlPSdtb2RhbCcgZGF0YS10YXJnZXQ9JyNQYW5lbDUnIHRpdGxlPSdFZGl0IFRoaXMgV2F0Y2hsaXN0JyBjbGFzcz0nYnRuIGJ0bi1zZWNvbmRhcnkgcC0xIHNldHRpbmdzLWJ1dHRvbicgb25jbGljaz0nZWRpdFdhdGNobGlzdCgiMjUxOTMzMCIsICJNeSBEZWZhdWx0IFdhdGNobGlzdCIsICIwIiknPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnIGFyaWEtaGlkZGVuPSd0cnVlJz48L3NwYW4+PC9idXR0b24+Jm5ic3A7PGJ1dHRvbiB0eXBlPSdidXR0b24nIGRhdGEtdG9nZ2xlPSdtb2RhbCcgZGF0YS10YXJnZXQ9JyNQYW5lbDcnIHRpdGxlPSdEZWxldGUgVGhpcyBXYXRjaGxpc3QnIGNsYXNzPSdidG4gYnRuLXNlY29uZGFyeSBwLTEgc2V0dGluZ3MtYnV0dG9uJyBvbmNsaWNrPSdkZWxldGVXYXRjaGxpc3QoIjI1MTkzMzAiLCAiTXkgRGVmYXVsdCBXYXRjaGxpc3QiKSc+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtdHJhc2gtY2FuJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9zcGFuPjwvYnV0dG9uPjxici8+PC9kaXY+PC9kaXY+PHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMyIgY2xhc3M9InNjcm9sbC10YWJsZSBkb250LXNjcm9sbHRhYmxlLW9uLXJlYmluZCBzb3J0LXRhYmxlIGRvbnQtc29ydC1vbi1yZWJpbmQiPjx0aGVhZD48dHI+PHRoIGRhdGEtaGlkZSBkYXRhLXNvcnQ9J3N0cmluZyc+PGRpdiBvbmNsaWNrPSdldmVudC5zdG9wUHJvcGFnYXRpb24oKTsnIGNsYXNzPSJ3bC1jaGVjayBjdXN0b20tY29udHJvbCBjdXN0b20tY2hlY2tib3giPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iYmxrQWN0aW9uU2VsZWN0QWxsSW5UYWJsZSIgYXJpYS1sYWJlbD0nc2VsZWN0IGFsbCBpbiBob2xkaW5ncyBpbiB3YXRjaGxpc3QgTXkgRGVmYXVsdCBXYXRjaGxpc3QgZm9yIGJ1bGsgYWN0aW9uJyBjbGFzcz0ic2VsZWN0QWxsSW5UYWJsZSIgaWQ9J3dhdGNobGlzdDI1MTkzMzAnPjxsYWJlbCBjbGFzcz0ic2VsZWN0QWxsSW5UYWJsZUxhYmVsIiBmb3I9IndhdGNobGlzdDI1MTkzMzAiPjxzcGFuIGNsYXNzPSdzci1vbmx5Jz5TZWxlY3QgQWxsIEhvbGRpbmdzIGluIHdhdGNobGlzdCBNeSBEZWZhdWx0IFdhdGNobGlzdDwvc3Bhbj48L2xhYmVsPjwvZGl2PjwvdGg+PHRoIGRhdGEtc29ydD0nc3RyaW5nJyBkYXRhLWNsZWFuPSdTeW1ib2x8SG9sZGluZyc+SG9sZGluZzwvdGg+PHRoIGRhdGEtc29ydD0nZmxvYXQnIGRhdGEtY2xlYW49IkN1cnJlbnQgUHJpY2V8UHJpY2UgQ2hhbmdlfFByaWNlIENoYW5nZSBQZXJjZW50YWdlIj5DdXJyZW50IFByaWNlPC90aD48dGggZGF0YS1zb3J0PSdmbG9hdCc+UEUgUmF0aW88L3RoPjx0aCBkYXRhLXNvcnQ9J2Zsb2F0Jz5CZXRhPC90aD48dGggZGF0YS1zb3J0PSdmbG9hdCc+QW5udWFsIERpdmlkZW5kPC90aD48dGggZGF0YS1zb3J0PSdmbG9hdCcgZGF0YS1jbGVhbj0nQ29uc2Vuc3VzIFJhdGluZ3xDb25zZW5zdXMgUmF0aW5nIFNjb3JlJz5Db25zZW5zdXMgUmF0aW5nPC90aD48dGggZGF0YS1zb3J0PSdmbG9hdCc+Q29uc2Vuc3VzIFByaWNlIFRhcmdldDwvdGg+PHRoIGRhdGEtc29ydD0nZmxvYXQnPlVwc2lkZS8mIzgyMDM7RG93bnNpZGU8L3RoPjx0aCBkYXRhLWhpZGU+U2V0dGluZ3M8L3RoPjwvdHI+PC90aGVhZD48dGJvZHk+PHRyPjx0ZCBkYXRhLWhpZGUgZGF0YS1zb3J0LXZhbHVlPSdBQVBMJz4gPGRpdiBjbGFzcz0id2wtY2hlY2sgY3VzdG9tLWNvbnRyb2wgY3VzdG9tLWNoZWNrYm94Ij48aW5wdXQgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJidWxrYWN0aW9uY2hlY2siIG5hbWU9ImluY2x1ZGVJbkJ1bGtBY3Rpb24iIHZhbHVlPSI4MDI2NjYzIiBpZD0iaG9sZGluZzgwMjY2NjMiIGFyaWEtbGFiZWw9ImJ1bGsgYWN0aW9uIGNoZWNrIGJveCBmb3IgQXBwbGUgSW5jLiI+PGxhYmVsICBmb3I9ImhvbGRpbmc4MDI2NjYzIj48c3BhbiBjbGFzcz0nc3Itb25seSc+QXBwbHkgQnVsayBBY3Rpb24gdG8gQXBwbGUgSW5jLjwvc3Bhbj48L2xhYmVsPjwvZGl2PjxkaXYgY2xhc3M9J3dsLXdpdGgtY2hlY2snPjxpbWcgbG9hZGluZz0nbGF6eScgaGVpZ2h0PSc1Mycgd2lkdGg9JzgwJyBzcmM9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2xvZ29zL3RodW1ibmFpbC9hcHBsZS1pbmMtbG9nby5wbmciIGFsdD0iQXBwbGUgSW5jLiBsb2dvIiAgdGl0bGU9IkFBUEwiPjwvZGl2PjwvdGQ+PHRkIGRhdGEtY2xlYW49J0FBUEx8QXBwbGUgSW5jLic+PGEgY2xhc3M9ImJvbGRzeW1ib2wiIGhyZWY9Ii9zdG9ja3MvTkFTREFRL0FBUEwvIj5BQVBMPC9hPjxhIHJlbD0ibm9mb2xsb3ciIGhyZWY9Ii9zdG9ja3MvTkFTREFRL0FBUEwvY2hhcnQvIj48aW1nIGNsYXNzPSdzcGFya2xpbmUnIGFsdD0nQUFQTCA5MC1kYXkgcGVyZm9ybWFuY2UnIHRpdGxlPSc5MC1kYXkgcGVyZm9ybWFuY2UnIHNyYz0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vU2NyaXB0cy9zcGFya2xpbmVzLmFzaHg/cHJlZml4PU5BU0RBUSZzeW1ib2w9QUFQTCI+PC9hPjxici8+QXBwbGU8L3RkPjx0ZCBjbGFzcz0nY2hhbmdlYWJsZS1jZWxsJyBzdHlsZT0nLyptaW4td2lkdGg6MTY1cHgqLycgZGF0YS1zb3J0LXZhbHVlPSctMC4wMDEyMzA4Nzc0Mzk3NzQ5MycgZGF0YS1jbGVhbj0nJDIyNy4yMHwtJDAuMjh8LTAuMTIlJz48c3Ryb25nPiQyMjcuMjA8L3N0cm9uZz48YnIvPjxzcGFuIGNsYXNzPSJjLXJlZCI+LSQwLjI4ICgtMC4xMiUpPC9zcGFuPjwvdGQ+PHRkIGRhdGEtc29ydC12YWx1ZT0nMzcuMzY4NDgyNTEzOTUxNSc+MzcuMzc8L3RkPjx0ZD4xLjI0PC90ZD48dGQgZGF0YS1zb3J0LXZhbHVlPScxLjAwJz4kMS4wMCBwZXIgc2guPC90ZD48dGQgZGF0YS1zb3J0LXZhbHVlPSIyLjYxIiBkYXRhLWNsZWFuPSJNb2RlcmF0ZSBCdXl8Mi42MSI+PHN0cm9uZz5Nb2RlcmF0ZSBCdXk8L3N0cm9uZz48YnIvPjIuNjE8L3RkPjx0ZCBzdHlsZT0nLyptaW4td2lkdGg6MTYwcHgqLycgZGF0YS1zb3J0LXZhbHVlPSIyMzUuNTEyIj4kMjM1LjUxPC90ZD48dGQgY2xhc3M9J2NoYW5nZWFibGUtY2VsbCcgZGF0YS1zb3J0LXZhbHVlPScwLjAzNjU4NDUwNzA0MjI1MzYnPjxzcGFuIGNsYXNzPSJjLWdyZWVuIj4zLjY2JSBVcHNpZGU8L3NwYW4+PC90ZD48dGQgc3R5bGU9J3RleHQtYWxpZ246cmlnaHQ7bWluLXdpZHRoOjE0NXB4O3BhZGRpbmc6NHB4IDhweCA0cHggMnB4OycgZGF0YS1oaWRlPjxkaXYgY2xhc3M9J250Zi1hcmVhJz48ZGl2IGNsYXNzPSdzZXR0aW5ncy1idXR0b24gc2hvd25vdGlmaWNhdGlvbnMgcGVuZGluZycgaWQ9IjIwMjQwNTAyMTEzMTAyMTMzX05BU0RBUV9BQVBMIj48L2Rpdj48L2Rpdj48YnV0dG9uIHR5cGU9J2J1dHRvbicgZGF0YS10b2dnbGU9J21vZGFsJyBkYXRhLXRhcmdldD0nI1BhbmVsNCcgdGl0bGU9J0VkaXQgVGhpcyBIb2xkaW5nJyBjbGFzcz0nYnRuIGJ0bi1zZWNvbmRhcnkgcC0xIHNldHRpbmdzLWJ1dHRvbicgb25jbGljaz0nZWRpdEhvbGRpbmcoIjgwMjY2NjMiICwgIk5BU0RBUSIsICJBQVBMIiAsICIwIiAsICIwLjAwIiAsICIyNTE5MzMwIiAsIGZhbHNlICwgZmFsc2UgLCB0cnVlICwgIlVTRCIsICIwLjAwIiwgIjAiICwgIjAiLCAiMCIsICIiLCAiQXBwbGUgSW5jLiIsICIyMjcuMjAiLCAiMTEvOC8yMDI0IiknPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnIGFyaWEtaGlkZGVuPSd0cnVlJz48L3NwYW4+PC9idXR0b24+IDxidXR0b24gdHlwZT0nYnV0dG9uJyBkYXRhLXRvZ2dsZT0nbW9kYWwnIGRhdGEtdGFyZ2V0PScjUGFuZWw2JyB0aXRsZT0nRGVsZXRlIFRoaXMgSG9sZGluZycgY2xhc3M9J2J0biBidG4tc2Vjb25kYXJ5IHAtMSBzZXR0aW5ncy1idXR0b24nIG9uY2xpY2s9J2RlbGV0ZVN0b2NrKCI4MDI2NjYzIiAsICJBcHBsZSBJbmMuIiknPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLXRyYXNoLWNhbicgYXJpYS1oaWRkZW49J3RydWUnPjwvc3Bhbj48L2J1dHRvbj48L3RkPjwvdHI+PHRyPjx0ZCBkYXRhLWhpZGUgZGF0YS1zb3J0LXZhbHVlPSdBTVpOJz4gPGRpdiBjbGFzcz0id2wtY2hlY2sgY3VzdG9tLWNvbnRyb2wgY3VzdG9tLWNoZWNrYm94Ij48aW5wdXQgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJidWxrYWN0aW9uY2hlY2siIG5hbWU9ImluY2x1ZGVJbkJ1bGtBY3Rpb24iIHZhbHVlPSI4MDI2NjY2IiBpZD0iaG9sZGluZzgwMjY2NjYiIGFyaWEtbGFiZWw9ImJ1bGsgYWN0aW9uIGNoZWNrIGJveCBmb3IgQW1hem9uLmNvbSwgSW5jLiI+PGxhYmVsICBmb3I9ImhvbGRpbmc4MDI2NjY2Ij48c3BhbiBjbGFzcz0nc3Itb25seSc+QXBwbHkgQnVsayBBY3Rpb24gdG8gQW1hem9uLmNvbSwgSW5jLjwvc3Bhbj48L2xhYmVsPjwvZGl2PjxkaXYgY2xhc3M9J3dsLXdpdGgtY2hlY2snPjxpbWcgbG9hZGluZz0nbGF6eScgaGVpZ2h0PScyOScgd2lkdGg9JzgwJyBzcmM9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2xvZ29zL3RodW1ibmFpbC9hbWF6b25jb20taW5jLWxvZ28uanBnIiBhbHQ9IkFtYXpvbi5jb20sIEluYy4gbG9nbyIgIHRpdGxlPSJBTVpOIj48L2Rpdj48L3RkPjx0ZCBkYXRhLWNsZWFuPSdBTVpOfEFtYXpvbi5jb20sIEluYy4nPjxhIGNsYXNzPSJib2xkc3ltYm9sIiBocmVmPSIvc3RvY2tzL05BU0RBUS9BTVpOLyI+QU1aTjwvYT48YSByZWw9Im5vZm9sbG93IiBocmVmPSIvc3RvY2tzL05BU0RBUS9BTVpOL2NoYXJ0LyI+PGltZyBjbGFzcz0nc3BhcmtsaW5lJyBhbHQ9J0FNWk4gOTAtZGF5IHBlcmZvcm1hbmNlJyB0aXRsZT0nOTAtZGF5IHBlcmZvcm1hbmNlJyBzcmM9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL1NjcmlwdHMvc3BhcmtsaW5lcy5hc2h4P3ByZWZpeD1OQVNEQVEmc3ltYm9sPUFNWk4iPjwvYT48YnIvPkFtYXpvbi5jb208L3RkPjx0ZCBjbGFzcz0nY2hhbmdlYWJsZS1jZWxsJyBzdHlsZT0nLyptaW4td2lkdGg6MTY1cHgqLycgZGF0YS1zb3J0LXZhbHVlPSctMC4wMDQ0Mjc1MTcyNTc3OTU3NicgZGF0YS1jbGVhbj0nJDIwOS4xMnwtJDAuOTN8LTAuNDQlJz48c3Ryb25nPiQyMDkuMTI8L3N0cm9uZz48YnIvPjxzcGFuIGNsYXNzPSJjLXJlZCI+LSQwLjkzICgtMC40NCUpPC9zcGFuPjwvdGQ+PHRkIGRhdGEtc29ydC12YWx1ZT0nNDQuNzc5NDQzMjU0ODE4Jz40NC43ODwvdGQ+PHRkPjEuMTQ8L3RkPjx0ZCBkYXRhLXNvcnQtdmFsdWU9JzAnPi08L3RkPjx0ZCBkYXRhLXNvcnQtdmFsdWU9IjIuOTgiIGRhdGEtY2xlYW49Ik1vZGVyYXRlIEJ1eXwyLjk4Ij48c3Ryb25nPk1vZGVyYXRlIEJ1eTwvc3Ryb25nPjxici8+Mi45ODwvdGQ+PHRkIHN0eWxlPScvKm1pbi13aWR0aDoxNjBweCovJyBkYXRhLXNvcnQtdmFsdWU9IjIzNC41NDU0NTQ1NDU0NTUiPiQyMzQuNTU8L3RkPjx0ZCBjbGFzcz0nY2hhbmdlYWJsZS1jZWxsJyBkYXRhLXNvcnQtdmFsdWU9JzAuMTIxNTgzMDg0MDkyNjQ4Jz48c3BhbiBjbGFzcz0iYy1ncmVlbiI+MTIuMTYlIFVwc2lkZTwvc3Bhbj48L3RkPjx0ZCBzdHlsZT0ndGV4dC1hbGlnbjpyaWdodDttaW4td2lkdGg6MTQ1cHg7cGFkZGluZzo0cHggOHB4IDRweCAycHg7JyBkYXRhLWhpZGU+PGRpdiBjbGFzcz0nbnRmLWFyZWEnPjxkaXYgY2xhc3M9J3NldHRpbmdzLWJ1dHRvbiBzaG93bm90aWZpY2F0aW9ucyBwZW5kaW5nJyBpZD0iMjAyNDA1MDIxMTMxMDIxMzNfTkFTREFRX0FNWk4iPjwvZGl2PjwvZGl2PjxidXR0b24gdHlwZT0nYnV0dG9uJyBkYXRhLXRvZ2dsZT0nbW9kYWwnIGRhdGEtdGFyZ2V0PScjUGFuZWw0JyB0aXRsZT0nRWRpdCBUaGlzIEhvbGRpbmcnIGNsYXNzPSdidG4gYnRuLXNlY29uZGFyeSBwLTEgc2V0dGluZ3MtYnV0dG9uJyBvbmNsaWNrPSdlZGl0SG9sZGluZygiODAyNjY2NiIgLCAiTkFTREFRIiwgIkFNWk4iICwgIjAiICwgIjAuMDAiICwgIjI1MTkzMzAiICwgZmFsc2UgLCBmYWxzZSAsIHRydWUgLCAiVVNEIiwgIjAuMDAiLCAiMCIgLCAiMCIsICIwIiwgIiIsICJBbWF6b24uY29tLCBJbmMuIiwgIjIwOS4xMiIsICIxMS84LzIwMjQiKSc+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtcGVuLXRvLXNxdWFyZScgYXJpYS1oaWRkZW49J3RydWUnPjwvc3Bhbj48L2J1dHRvbj4gPGJ1dHRvbiB0eXBlPSdidXR0b24nIGRhdGEtdG9nZ2xlPSdtb2RhbCcgZGF0YS10YXJnZXQ9JyNQYW5lbDYnIHRpdGxlPSdEZWxldGUgVGhpcyBIb2xkaW5nJyBjbGFzcz0nYnRuIGJ0bi1zZWNvbmRhcnkgcC0xIHNldHRpbmdzLWJ1dHRvbicgb25jbGljaz0nZGVsZXRlU3RvY2soIjgwMjY2NjYiICwgIkFtYXpvbi5jb20sIEluYy4iKSc+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtdHJhc2gtY2FuJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9zcGFuPjwvYnV0dG9uPjwvdGQ+PC90cj48dHI+PHRkIGRhdGEtaGlkZSBkYXRhLXNvcnQtdmFsdWU9J0dPT0dMJz4gPGRpdiBjbGFzcz0id2wtY2hlY2sgY3VzdG9tLWNvbnRyb2wgY3VzdG9tLWNoZWNrYm94Ij48aW5wdXQgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJidWxrYWN0aW9uY2hlY2siIG5hbWU9ImluY2x1ZGVJbkJ1bGtBY3Rpb24iIHZhbHVlPSI4MDI2NjYyIiBpZD0iaG9sZGluZzgwMjY2NjIiIGFyaWEtbGFiZWw9ImJ1bGsgYWN0aW9uIGNoZWNrIGJveCBmb3IgQWxwaGFiZXQgSW5jLiI+PGxhYmVsICBmb3I9ImhvbGRpbmc4MDI2NjYyIj48c3BhbiBjbGFzcz0nc3Itb25seSc+QXBwbHkgQnVsayBBY3Rpb24gdG8gQWxwaGFiZXQgSW5jLjwvc3Bhbj48L2xhYmVsPjwvZGl2PjxkaXYgY2xhc3M9J3dsLXdpdGgtY2hlY2snPjxpbWcgbG9hZGluZz0nbGF6eScgaGVpZ2h0PScyOCcgd2lkdGg9JzgwJyBzcmM9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2xvZ29zL3RodW1ibmFpbC9nb29nbGUtaW5jLWxvZ28ucG5nIiBhbHQ9IkFscGhhYmV0IEluYy4gbG9nbyIgIHRpdGxlPSJHT09HTCI+PC9kaXY+PC90ZD48dGQgZGF0YS1jbGVhbj0nR09PR0x8QWxwaGFiZXQgSW5jLic+PGEgY2xhc3M9ImJvbGRzeW1ib2wiIGhyZWY9Ii9zdG9ja3MvTkFTREFRL0dPT0dMLyI+R09PR0w8L2E+PGEgcmVsPSJub2ZvbGxvdyIgaHJlZj0iL3N0b2Nrcy9OQVNEQVEvR09PR0wvY2hhcnQvIj48aW1nIGNsYXNzPSdzcGFya2xpbmUnIGFsdD0nR09PR0wgOTAtZGF5IHBlcmZvcm1hbmNlJyB0aXRsZT0nOTAtZGF5IHBlcmZvcm1hbmNlJyBzcmM9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL1NjcmlwdHMvc3BhcmtsaW5lcy5hc2h4P3ByZWZpeD1OQVNEQVEmc3ltYm9sPUdPT0dMIj48L2E+PGJyLz5BbHBoYWJldDwvdGQ+PHRkIGNsYXNzPSdjaGFuZ2VhYmxlLWNlbGwnIHN0eWxlPScvKm1pbi13aWR0aDoxNjVweCovJyBkYXRhLXNvcnQtdmFsdWU9Jy0wLjAxMDE3OTgwNjM2MjM3OScgZGF0YS1jbGVhbj0nJDE3OC45MXwtJDEuODR8LTEuMDIlJz48c3Ryb25nPiQxNzguOTE8L3N0cm9uZz48YnIvPjxzcGFuIGNsYXNzPSJjLXJlZCI+LSQxLjg0ICgtMS4wMiUpPC9zcGFuPjwvdGQ+PHRkIGRhdGEtc29ydC12YWx1ZT0nMjMuNzI4MTQ4MTgwNTY3OSc+MjMuNzM8L3RkPjx0ZD4xLjAzPC90ZD48dGQgZGF0YS1zb3J0LXZhbHVlPScwLjgwJz4kMC44MCBwZXIgc2guPC90ZD48dGQgZGF0YS1zb3J0LXZhbHVlPSIyLjkzIiBkYXRhLWNsZWFuPSJNb2RlcmF0ZSBCdXl8Mi45MyI+PHN0cm9uZz5Nb2RlcmF0ZSBCdXk8L3N0cm9uZz48YnIvPjIuOTM8L3RkPjx0ZCBzdHlsZT0nLyptaW4td2lkdGg6MTYwcHgqLycgZGF0YS1zb3J0LXZhbHVlPSIyMDUuODk3NDM1ODk3NDM2Ij4kMjA1LjkwPC90ZD48dGQgY2xhc3M9J2NoYW5nZWFibGUtY2VsbCcgZGF0YS1zb3J0LXZhbHVlPScwLjE1MDg0MzY0MTQ4MTM5Mic+PHNwYW4gY2xhc3M9ImMtZ3JlZW4iPjE1LjA4JSBVcHNpZGU8L3NwYW4+PC90ZD48dGQgc3R5bGU9J3RleHQtYWxpZ246cmlnaHQ7bWluLXdpZHRoOjE0NXB4O3BhZGRpbmc6NHB4IDhweCA0cHggMnB4OycgZGF0YS1oaWRlPjxkaXYgY2xhc3M9J250Zi1hcmVhJz48ZGl2IGNsYXNzPSdzZXR0aW5ncy1idXR0b24gc2hvd25vdGlmaWNhdGlvbnMgcGVuZGluZycgaWQ9IjIwMjQwNTAyMTEzMTAyMTMzX05BU0RBUV9HT09HTCI+PC9kaXY+PC9kaXY+PGJ1dHRvbiB0eXBlPSdidXR0b24nIGRhdGEtdG9nZ2xlPSdtb2RhbCcgZGF0YS10YXJnZXQ9JyNQYW5lbDQnIHRpdGxlPSdFZGl0IFRoaXMgSG9sZGluZycgY2xhc3M9J2J0biBidG4tc2Vjb25kYXJ5IHAtMSBzZXR0aW5ncy1idXR0b24nIG9uY2xpY2s9J2VkaXRIb2xkaW5nKCI4MDI2NjYyIiAsICJOQVNEQVEiLCAiR09PR0wiICwgIjAiICwgIjAuMDAiICwgIjI1MTkzMzAiICwgZmFsc2UgLCBmYWxzZSAsIHRydWUgLCAiVVNEIiwgIjAuMDAiLCAiMCIgLCAiMCIsICIwIiwgIiIsICJBbHBoYWJldCBJbmMuIiwgIjE3OC45MSIsICIxMS84LzIwMjQiKSc+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtcGVuLXRvLXNxdWFyZScgYXJpYS1oaWRkZW49J3RydWUnPjwvc3Bhbj48L2J1dHRvbj4gPGJ1dHRvbiB0eXBlPSdidXR0b24nIGRhdGEtdG9nZ2xlPSdtb2RhbCcgZGF0YS10YXJnZXQ9JyNQYW5lbDYnIHRpdGxlPSdEZWxldGUgVGhpcyBIb2xkaW5nJyBjbGFzcz0nYnRuIGJ0bi1zZWNvbmRhcnkgcC0xIHNldHRpbmdzLWJ1dHRvbicgb25jbGljaz0nZGVsZXRlU3RvY2soIjgwMjY2NjIiICwgIkFscGhhYmV0IEluYy4iKSc+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtdHJhc2gtY2FuJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9zcGFuPjwvYnV0dG9uPjwvdGQ+PC90cj48dHI+PHRkIGRhdGEtaGlkZSBkYXRhLXNvcnQtdmFsdWU9J01FVEEnPiA8ZGl2IGNsYXNzPSJ3bC1jaGVjayBjdXN0b20tY29udHJvbCBjdXN0b20tY2hlY2tib3giPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgY2xhc3M9ImJ1bGthY3Rpb25jaGVjayIgbmFtZT0iaW5jbHVkZUluQnVsa0FjdGlvbiIgdmFsdWU9IjgwMjY2NjQiIGlkPSJob2xkaW5nODAyNjY2NCIgYXJpYS1sYWJlbD0iYnVsayBhY3Rpb24gY2hlY2sgYm94IGZvciBNZXRhIFBsYXRmb3JtcywgSW5jLiI+PGxhYmVsICBmb3I9ImhvbGRpbmc4MDI2NjY0Ij48c3BhbiBjbGFzcz0nc3Itb25seSc+QXBwbHkgQnVsayBBY3Rpb24gdG8gTWV0YSBQbGF0Zm9ybXMsIEluYy48L3NwYW4+PC9sYWJlbD48L2Rpdj48ZGl2IGNsYXNzPSd3bC13aXRoLWNoZWNrJz48aW1nIGxvYWRpbmc9J2xhenknIGhlaWdodD0nNzYnIHdpZHRoPSc4MCcgc3JjPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9sb2dvcy90aHVtYm5haWwvbWV0YS1wbGF0Zm9ybXMtaW5jLWxvZ28ucG5nP3Y9MjAyMjA2MDkwODQxMjYiIGFsdD0iTWV0YSBQbGF0Zm9ybXMsIEluYy4gbG9nbyIgIHRpdGxlPSJNRVRBIj48L2Rpdj48L3RkPjx0ZCBkYXRhLWNsZWFuPSdNRVRBfE1ldGEgUGxhdGZvcm1zLCBJbmMuJz48YSBjbGFzcz0iYm9sZHN5bWJvbCIgaHJlZj0iL3N0b2Nrcy9OQVNEQVEvTUVUQS8iPk1FVEE8L2E+PGEgcmVsPSJub2ZvbGxvdyIgaHJlZj0iL3N0b2Nrcy9OQVNEQVEvTUVUQS9jaGFydC8iPjxpbWcgY2xhc3M9J3NwYXJrbGluZScgYWx0PSdNRVRBIDkwLWRheSBwZXJmb3JtYW5jZScgdGl0bGU9JzkwLWRheSBwZXJmb3JtYW5jZScgc3JjPSJodHRwczovL3d3dy5tYXJrZXRiZWF0LmNvbS9TY3JpcHRzL3NwYXJrbGluZXMuYXNoeD9wcmVmaXg9TkFTREFRJnN5bWJvbD1NRVRBIj48L2E+PGJyLz5NZXRhIFBsYXRmb3JtczwvdGQ+PHRkIGNsYXNzPSdjaGFuZ2VhYmxlLWNlbGwnIHN0eWxlPScvKm1pbi13aWR0aDoxNjVweCovJyBkYXRhLXNvcnQtdmFsdWU9Jy0wLjAwODQ1MDIyODE1NjE2MDIyJyBkYXRhLWNsZWFuPSckNTg2LjcwfC0kNS4wMHwtMC44NSUnPjxzdHJvbmc+JDU4Ni43MDwvc3Ryb25nPjxici8+PHNwYW4gY2xhc3M9ImMtcmVkIj4tJDUuMDAgKC0wLjg1JSk8L3NwYW4+PC90ZD48dGQgZGF0YS1zb3J0LXZhbHVlPScyNy42MzU0MzQ1OTA0MDczJz4yNy42NDwvdGQ+PHRkPjEuMjI8L3RkPjx0ZCBkYXRhLXNvcnQtdmFsdWU9JzIuMDAnPiQyLjAwIHBlciBzaC48L3RkPjx0ZCBkYXRhLXNvcnQtdmFsdWU9IjIuODYiIGRhdGEtY2xlYW49Ik1vZGVyYXRlIEJ1eXwyLjg2Ij48c3Ryb25nPk1vZGVyYXRlIEJ1eTwvc3Ryb25nPjxici8+Mi44NjwvdGQ+PHRkIHN0eWxlPScvKm1pbi13aWR0aDoxNjBweCovJyBkYXRhLXNvcnQtdmFsdWU9IjYzNC4wOTc1NjA5NzU2MSI+JDYzNC4xMDwvdGQ+PHRkIGNsYXNzPSdjaGFuZ2VhYmxlLWNlbGwnIGRhdGEtc29ydC12YWx1ZT0nMC4wODA3ODY3MDY5NjM3MTE4Jz48c3BhbiBjbGFzcz0iYy1ncmVlbiI+OC4wOCUgVXBzaWRlPC9zcGFuPjwvdGQ+PHRkIHN0eWxlPSd0ZXh0LWFsaWduOnJpZ2h0O21pbi13aWR0aDoxNDVweDtwYWRkaW5nOjRweCA4cHggNHB4IDJweDsnIGRhdGEtaGlkZT48ZGl2IGNsYXNzPSdudGYtYXJlYSc+PGRpdiBjbGFzcz0nc2V0dGluZ3MtYnV0dG9uIHNob3dub3RpZmljYXRpb25zIHBlbmRpbmcnIGlkPSIyMDI0MDUwMjExMzEwMjEzM19OQVNEQVFfTUVUQSI+PC9kaXY+PC9kaXY+PGJ1dHRvbiB0eXBlPSdidXR0b24nIGRhdGEtdG9nZ2xlPSdtb2RhbCcgZGF0YS10YXJnZXQ9JyNQYW5lbDQnIHRpdGxlPSdFZGl0IFRoaXMgSG9sZGluZycgY2xhc3M9J2J0biBidG4tc2Vjb25kYXJ5IHAtMSBzZXR0aW5ncy1idXR0b24nIG9uY2xpY2s9J2VkaXRIb2xkaW5nKCI4MDI2NjY0IiAsICJOQVNEQVEiLCAiTUVUQSIgLCAiMCIgLCAiMC4wMCIgLCAiMjUxOTMzMCIgLCBmYWxzZSAsIGZhbHNlICwgdHJ1ZSAsICJVU0QiLCAiMC4wMCIsICIwIiAsICIwIiwgIjAiLCAiIiwgIk1ldGEgUGxhdGZvcm1zLCBJbmMuIiwgIjU4Ni43MCIsICIxMS84LzIwMjQiKSc+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtcGVuLXRvLXNxdWFyZScgYXJpYS1oaWRkZW49J3RydWUnPjwvc3Bhbj48L2J1dHRvbj4gPGJ1dHRvbiB0eXBlPSdidXR0b24nIGRhdGEtdG9nZ2xlPSdtb2RhbCcgZGF0YS10YXJnZXQ9JyNQYW5lbDYnIHRpdGxlPSdEZWxldGUgVGhpcyBIb2xkaW5nJyBjbGFzcz0nYnRuIGJ0bi1zZWNvbmRhcnkgcC0xIHNldHRpbmdzLWJ1dHRvbicgb25jbGljaz0nZGVsZXRlU3RvY2soIjgwMjY2NjQiICwgIk1ldGEgUGxhdGZvcm1zLCBJbmMuIiknPjxzcGFuIGNsYXNzPSdmYS1yZWd1bGFyIGZhLXRyYXNoLWNhbicgYXJpYS1oaWRkZW49J3RydWUnPjwvc3Bhbj48L2J1dHRvbj48L3RkPjwvdHI+PHRyPjx0ZCBkYXRhLWhpZGUgZGF0YS1zb3J0LXZhbHVlPSdNU0ZUJz4gPGRpdiBjbGFzcz0id2wtY2hlY2sgY3VzdG9tLWNvbnRyb2wgY3VzdG9tLWNoZWNrYm94Ij48aW5wdXQgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJidWxrYWN0aW9uY2hlY2siIG5hbWU9ImluY2x1ZGVJbkJ1bGtBY3Rpb24iIHZhbHVlPSI4MDI2NjY1IiBpZD0iaG9sZGluZzgwMjY2NjUiIGFyaWEtbGFiZWw9ImJ1bGsgYWN0aW9uIGNoZWNrIGJveCBmb3IgTWljcm9zb2Z0IENvLiI+PGxhYmVsICBmb3I9ImhvbGRpbmc4MDI2NjY1Ij48c3BhbiBjbGFzcz0nc3Itb25seSc+QXBwbHkgQnVsayBBY3Rpb24gdG8gTWljcm9zb2Z0IENvLjwvc3Bhbj48L2xhYmVsPjwvZGl2PjxkaXYgY2xhc3M9J3dsLXdpdGgtY2hlY2snPjxpbWcgbG9hZGluZz0nbGF6eScgaGVpZ2h0PSc0MScgd2lkdGg9JzgwJyBzcmM9Imh0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL2xvZ29zL3RodW1ibmFpbC9taWNyb3NvZnQtY29ycG9yYXRpb24tbG9nby5wbmciIGFsdD0iTWljcm9zb2Z0IENvLiBsb2dvIiAgdGl0bGU9Ik1TRlQiPjwvZGl2PjwvdGQ+PHRkIGRhdGEtY2xlYW49J01TRlR8TWljcm9zb2Z0IENvLic+PGEgY2xhc3M9ImJvbGRzeW1ib2wiIGhyZWY9Ii9zdG9ja3MvTkFTREFRL01TRlQvIj5NU0ZUPC9hPjxhIHJlbD0ibm9mb2xsb3ciIGhyZWY9Ii9zdG9ja3MvTkFTREFRL01TRlQvY2hhcnQvIj48aW1nIGNsYXNzPSdzcGFya2xpbmUnIGFsdD0nTVNGVCA5MC1kYXkgcGVyZm9ybWFuY2UnIHRpdGxlPSc5MC1kYXkgcGVyZm9ybWFuY2UnIHNyYz0iaHR0cHM6Ly93d3cubWFya2V0YmVhdC5jb20vU2NyaXB0cy9zcGFya2xpbmVzLmFzaHg/cHJlZml4PU5BU0RBUSZzeW1ib2w9TVNGVCI+PC9hPjxici8+TWljcm9zb2Z0PC90ZD48dGQgY2xhc3M9J2NoYW5nZWFibGUtY2VsbCcgc3R5bGU9Jy8qbWluLXdpZHRoOjE2NXB4Ki8nIGRhdGEtc29ydC12YWx1ZT0nLTAuMDA2NjUyMDkzMTc2MzE1NzMnIGRhdGEtY2xlYW49JyQ0MjIuNjB8LSQyLjgzfC0wLjY3JSc+PHN0cm9uZz4kNDIyLjYwPC9zdHJvbmc+PGJyLz48c3BhbiBjbGFzcz0iYy1yZWQiPi0kMi44MyAoLTAuNjclKTwvc3Bhbj48L3RkPjx0ZCBkYXRhLXNvcnQtdmFsdWU9JzM0Ljg2Nzk4Njc5ODY3OTknPjM0Ljg3PC90ZD48dGQ+MC45MTwvdGQ+PHRkIGRhdGEtc29ydC12YWx1ZT0nMy4zMic+JDMuMzIgcGVyIHNoLjwvdGQ+PHRkIGRhdGEtc29ydC12YWx1ZT0iMi44NiIgZGF0YS1jbGVhbj0iTW9kZXJhdGUgQnV5fDIuODYiPjxzdHJvbmc+TW9kZXJhdGUgQnV5PC9zdHJvbmc+PGJyLz4yLjg2PC90ZD48dGQgc3R5bGU9Jy8qbWluLXdpZHRoOjE2MHB4Ki8nIGRhdGEtc29ydC12YWx1ZT0iNTAzLjAzNDQ4Mjc1ODYyMSI+JDUwMy4wMzwvdGQ+PHRkIGNsYXNzPSdjaGFuZ2VhYmxlLWNlbGwnIGRhdGEtc29ydC12YWx1ZT0nMC4xOTAzMzI0MjQ4OTAyNTInPjxzcGFuIGNsYXNzPSJjLWdyZWVuIj4xOS4wMyUgVXBzaWRlPC9zcGFuPjwvdGQ+PHRkIHN0eWxlPSd0ZXh0LWFsaWduOnJpZ2h0O21pbi13aWR0aDoxNDVweDtwYWRkaW5nOjRweCA4cHggNHB4IDJweDsnIGRhdGEtaGlkZT48ZGl2IGNsYXNzPSdudGYtYXJlYSc+PGRpdiBjbGFzcz0nc2V0dGluZ3MtYnV0dG9uIHNob3dub3RpZmljYXRpb25zIHBlbmRpbmcnIGlkPSIyMDI0MDUwMjExMzEwMjEzM19OQVNEQVFfTVNGVCI+PC9kaXY+PC9kaXY+PGJ1dHRvbiB0eXBlPSdidXR0b24nIGRhdGEtdG9nZ2xlPSdtb2RhbCcgZGF0YS10YXJnZXQ9JyNQYW5lbDQnIHRpdGxlPSdFZGl0IFRoaXMgSG9sZGluZycgY2xhc3M9J2J0biBidG4tc2Vjb25kYXJ5IHAtMSBzZXR0aW5ncy1idXR0b24nIG9uY2xpY2s9J2VkaXRIb2xkaW5nKCI4MDI2NjY1IiAsICJOQVNEQVEiLCAiTVNGVCIgLCAiMCIgLCAiMC4wMCIgLCAiMjUxOTMzMCIgLCBmYWxzZSAsIGZhbHNlICwgdHJ1ZSAsICJVU0QiLCAiMC4wMCIsICIwIiAsICIwIiwgIjAiLCAiIiwgIk1pY3Jvc29mdCBDby4iLCAiNDIyLjYwIiwgIjExLzgvMjAyNCIpJz48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9zcGFuPjwvYnV0dG9uPiA8YnV0dG9uIHR5cGU9J2J1dHRvbicgZGF0YS10b2dnbGU9J21vZGFsJyBkYXRhLXRhcmdldD0nI1BhbmVsNicgdGl0bGU9J0RlbGV0ZSBUaGlzIEhvbGRpbmcnIGNsYXNzPSdidG4gYnRuLXNlY29uZGFyeSBwLTEgc2V0dGluZ3MtYnV0dG9uJyBvbmNsaWNrPSdkZWxldGVTdG9jaygiODAyNjY2NSIgLCAiTWljcm9zb2Z0IENvLiIpJz48c3BhbiBjbGFzcz0nZmEtcmVndWxhciBmYS10cmFzaC1jYW4nIGFyaWEtaGlkZGVuPSd0cnVlJz48L3NwYW4+PC9idXR0b24+PC90ZD48L3RyPjwvdGJvZHk+PHRmb290Pjx0cj48dGQgY29sc3Bhbj0nMTAnIGNsYXNzPSdmb290ZXItY2VsbCc+Tm8gaG9sZGluZyBzaXplcyBoYXZlIGJlZW4gYWRkZWQgdG8gdGhpcyB3YXRjaGxpc3QuIEVkaXQgaG9sZGluZ3MgYW5kIGFkZCB0aGUgbnVtYmVyIG9mIHVuaXRzIGhlbGQgaW4gb3JkZXIgdG8gc2VlIHdhdGNobGlzdCB0b3RhbHMuPC90ZD48L3RyPjwvdGZvb3Q+PC90YWJsZT5kAqwBDw8WAh8BZ2QWAgIBDxBkEBUGFFNlbGVjdCBhIEJ1bGsgQWN0aW9uFURlbGV0ZSBUaGVzZSBIb2xkaW5ncyZFbmFibGUgRW1haWwgQWxlcnRzIGZvciBUaGVzZSBIb2xkaW5ncydEaXNhYmxlIEVtYWlsIEFsZXJ0cyBmb3IgVGhlc2UgSG9sZGluZ3MnTW92ZSBIb2xkaW5ncyB0byAnTXkgRGVmYXVsdCBXYXRjaGxpc3QnIE1vdmUgSG9sZGluZ3MgdG8gYSBOZXcgV2F0Y2hsaXN0FQYBMApidWxrRGVsZXRlD2J1bGtFbmFibGVFbWFpbBBidWxrRGlzYWJsZUVtYWlsD2J1bGtNb3ZlMjUxOTMzMAtidWxrTW92ZU5ldxQrAwZnZ2dnZ2dkZAKuAQ8WAh8ABfQBPGRpdiBzdHlsZT0ncGFkZGluZzogNnB4IDEwcHggOHB4O21hcmdpbi1ib3R0b206IDEwcHg7Ym9yZGVyLXJhZGl1czogMnB4OycgY2xhc3M9J2JnLWxpZ2h0LXJlZCBjLWRhcmstcmVkJz5Gb3Igc3RhdGlzdGljcyB0byBiZSBjYWxjdWxhdGVkIGZvciB0aGlzIHBvcnRmb2xpbywgeW91IG11c3QgZWRpdCB0aGUgZGV0YWlscyBvZiB0aGUgaG9sZGluZ3MsIGFkZGluZyB0aGUgbnVtYmVyIG9mIHNoYXJlcyB5b3Ugb3duLjwvZGl2PmQCsAEPFgIfAWgWAgIHDxYCHwFnZAKyAQ9kFgICAg8WAh8ABacBPHNjcmlwdD4gdmFyIFNjcnBSZXN0cmljdCA9ICI5OEYzMjEwNkYyOTQyM0E4MTc4MzNBMjc3NDY5MENGRDVENTY2QTRENjJBRDAxMDI4MzA1REU2QjAzQzA3QzBBOUU0RkEwQzExOTc5NzFFRjRDNEMyOTNDMjE0QzFDMTY3MTk5NTQxQkMxRDJCREJEODE0MDAwMjA5REU2MzY1OSI8L3NjcmlwdD5kArQBDxYCHwAFA04vQWQCtgEPFgIfAAUDTi9BZAK4AQ8WAh8ABQNOL0FkAroBDxYCHwAFA04vQWQCvAEPFgIfAAXOAjx0cj48dGQ+TWljcm9zb2Z0ICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9NU0ZULyc+TVNGVDwvYT4pPC90ZD48dGQ+MC43OSU8L3RkPjwvdHI+PHRyPjx0ZD5BbHBoYWJldCAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvR09PR0wvJz5HT09HTDwvYT4pPC90ZD48dGQ+MC40NSU8L3RkPjwvdHI+PHRyPjx0ZD5BcHBsZSAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvQUFQTC8nPkFBUEw8L2E+KTwvdGQ+PHRkPjAuNDQlPC90ZD48L3RyPjx0cj48dGQ+TWV0YSBQbGF0Zm9ybXMgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL01FVEEvJz5NRVRBPC9hPik8L3RkPjx0ZD4wLjM0JTwvdGQ+PC90cj5kAr4BDxYCHwAF6AI8dHI+PHRkPkFwcGxlICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9BQVBMLyc+QUFQTDwvYT4pPC90ZD48dGQgZGF0YS1zb3J0LXZhbHVlPScyMDI0MTExNDAwMDAwMCc+MTEvMTQvMjAyNDwvdGQ+PC90cj48dHI+PHRkPk1pY3Jvc29mdCAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvTVNGVC8nPk1TRlQ8L2E+KTwvdGQ+PHRkIGRhdGEtc29ydC12YWx1ZT0nMjAyNDEyMTIwMDAwMDAnPjEyLzEyLzIwMjQ8L3RkPjwvdHI+PHRyPjx0ZD5BbHBoYWJldCAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvR09PR0wvJz5HT09HTDwvYT4pPC90ZD48dGQgZGF0YS1zb3J0LXZhbHVlPScyMDI0MTIxNjAwMDAwMCc+MTIvMTYvMjAyNDwvdGQ+PC90cj5kAsABDxYCHwAF9AE8ZGl2IHN0eWxlPSdwYWRkaW5nOiA2cHggMTBweCA4cHg7bWFyZ2luLWJvdHRvbTogMTBweDtib3JkZXItcmFkaXVzOiAycHg7JyBjbGFzcz0nYmctbGlnaHQtcmVkIGMtZGFyay1yZWQnPkZvciBzdGF0aXN0aWNzIHRvIGJlIGNhbGN1bGF0ZWQgZm9yIHRoaXMgcG9ydGZvbGlvLCB5b3UgbXVzdCBlZGl0IHRoZSBkZXRhaWxzIG9mIHRoZSBob2xkaW5ncywgYWRkaW5nIHRoZSBudW1iZXIgb2Ygc2hhcmVzIHlvdSBvd24uPC9kaXY+ZALCAQ8WAh8ABTQ8c2NyaXB0PnZhciBwb3J0Zm9saW9TZWN0b3JBbGxvY2F0aW9uID0gW107PC9zY3JpcHQ+ZALEAQ8WAh8ABc8HPHNjcmlwdD52YXIgbWJTZWN0b3JBbGxvY2F0aW9uID0gW3sgbmFtZTogJ0NvbXB1dGVyIGFuZCBUZWNobm9sb2d5JywgYW1vdW50OiAwLjI2MDY0ODQxMDIwNTkxOCB9LHsgbmFtZTogJ0ZpbmFuY2UnLCBhbW91bnQ6IDAuMTAxNjg3MDg1ODkyNzcyIH0seyBuYW1lOiAnTWVkaWNhbCcsIGFtb3VudDogMC4wNzk2MTcxMTkxMzk4ODIyIH0seyBuYW1lOiAnTWFudWFsIEFzc2V0JywgYW1vdW50OiAwLjA3MTk3OTgyODQwNzE4NTMgfSx7IG5hbWU6ICdSZXRhaWwvV2hvbGVzYWxlJywgYW1vdW50OiAwLjA2OTc2Nzg3MDc4NTg1NzkgfSx7IG5hbWU6ICdPaWxzL0VuZXJneScsIGFtb3VudDogMC4wNTkyNjE4MDgyNzI0MDA4IH0seyBuYW1lOiAnRVRGJywgYW1vdW50OiAwLjA1ODUzNTM2NDE4NDA0MzYgfSx7IG5hbWU6ICdDcnlwdG9jdXJyZW5jeScsIGFtb3VudDogMC4wNDM1Njk0MTMyMDcwNzc1IH0seyBuYW1lOiAnQ29uc3VtZXIgRGlzY3JldGlvbmFyeScsIGFtb3VudDogMC4wMzI1NjA0Mjg5MjI0NTU1IH0seyBuYW1lOiAnVHJhbnNwb3J0YXRpb24nLCBhbW91bnQ6IDAuMDMwNDE2ODgyNTcyMDAzOCB9LHsgbmFtZTogJ0J1c2luZXNzIFNlcnZpY2VzJywgYW1vdW50OiAwLjAyNzY3MTQ5MzUzMDk3MjYgfSx7IG5hbWU6ICdCYXNpYyBNYXRlcmlhbHMnLCBhbW91bnQ6IDAuMDI1NjE5MDAyNTQwNjk3MSB9LHsgbmFtZTogJ0NvbnN1bWVyIFN0YXBsZXMnLCBhbW91bnQ6IDAuMDIxNDcwNzU0ODU2MTM5OSB9LHsgbmFtZTogJ0F1dG8vVGlyZXMvVHJ1Y2tzJywgYW1vdW50OiAwLjAyMDk3Mzc0ODAwNDQyMjYgfSx7IG5hbWU6ICdGaW5hbmNpYWwgU2VydmljZXMnLCBhbW91bnQ6IDAuMDE3MjY2NjQ5NTA2ODg2OCB9LHsgbmFtZTogJ0luZHVzdHJpYWwgUHJvZHVjdHMnLCBhbW91bnQ6IDAuMDE1MDY0ODE0NTYwNDEwNiB9LHsgbmFtZTogJ090aGVyJywgYW1vdW50OiAwLjA2Mzg4OTMyNTQxMDg3MzQgfV07PC9zY3JpcHQ+ZALGAQ8WAh8ABTc8c2NyaXB0PnZhciBQZXJzb25hbEFzc2V0Q2xhc3NBbGxvY2F0aW9uID0gW107PC9zY3JpcHQ+ZALIAQ8WAh8ABfYBPHNjcmlwdD52YXIgbWJBc3NldENsYXNzQWxsb2NhdGlvbiA9IFt7IG5hbWU6ICdTdG9jaycsIGFtb3VudDogMC44MjU5MTUzOTQyMDE3MjEgfSx7IG5hbWU6ICdNYW51YWwgQXNzZXRzJywgYW1vdW50OiAwLjA3MTk3OTgyODQwNzE3MzkgfSx7IG5hbWU6ICdFVEYnLCBhbW91bnQ6IDAuMDU4NTM1MzY0MTg0MDM0MyB9LHsgbmFtZTogJ0NyeXB0b2N1cnJlbmN5JywgYW1vdW50OiAwLjA0MzU2OTQxMzIwNzA3MDcgfV07PC9zY3JpcHQ+ZALKAQ8WAh8ABY4DPHRyPjx0ZD5BcHBsZSAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvQUFQTC8nPkFBUEw8L2E+KTwvdGQ+PHRkPi08L3RkPjwvdHI+PHRyPjx0ZD5BbWF6b24uY29tICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9BTVpOLyc+QU1aTjwvYT4pPC90ZD48dGQ+LTwvdGQ+PC90cj48dHI+PHRkPkFscGhhYmV0ICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9HT09HTC8nPkdPT0dMPC9hPik8L3RkPjx0ZD4tPC90ZD48L3RyPjx0cj48dGQ+TWV0YSBQbGF0Zm9ybXMgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL01FVEEvJz5NRVRBPC9hPik8L3RkPjx0ZD4tPC90ZD48L3RyPjx0cj48dGQ+TWljcm9zb2Z0ICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9NU0ZULyc+TVNGVDwvYT4pPC90ZD48dGQ+LTwvdGQ+PC90cj5kAswBDxYCHwAFxgY8dHI+PHRkPkFwcGxlICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9BQVBMLyc+QUFQTDwvYT4pPC90ZD48dGQ+NS42NSU8L3RkPjwvdHI+PHRyPjx0ZD5NaWNyb3NvZnQgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL01TRlQvJz5NU0ZUPC9hPik8L3RkPjx0ZD40LjAwJTwvdGQ+PC90cj48dHI+PHRkPk1ldGEgUGxhdGZvcm1zICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9NRVRBLyc+TUVUQTwvYT4pPC90ZD48dGQ+Mi42MCU8L3RkPjwvdHI+PHRyPjx0ZD5BbWF6b24uY29tICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9BTVpOLyc+QU1aTjwvYT4pPC90ZD48dGQ+MS42OCU8L3RkPjwvdHI+PHRyPjx0ZD5OVklESUEgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL05WREEvJz5OVkRBPC9hPik8L3RkPjx0ZD4xLjU3JTwvdGQ+PC90cj48dHI+PHRkPkdlbmVyYWwgRWxlY3RyaWMgKDxhIGhyZWY9Jy9zdG9ja3MvTllTRS9HRS8nPkdFPC9hPik8L3RkPjx0ZD4xLjMwJTwvdGQ+PC90cj48dHI+PHRkPlRlc2xhICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9UU0xBLyc+VFNMQTwvYT4pPC90ZD48dGQ+MS4yOSU8L3RkPjwvdHI+PHRyPjx0ZD5BZHZhbmNlZCBNaWNybyBEZXZpY2VzICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9BTUQvJz5BTUQ8L2E+KTwvdGQ+PHRkPjEuMTElPC90ZD48L3RyPjx0cj48dGQ+QWxwaGFiZXQgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL0dPT0dMLyc+R09PR0w8L2E+KTwvdGQ+PHRkPjEuMDMlPC90ZD48L3RyPjx0cj48dGQ+SW52ZXNjbyBRUVEgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL1FRUS8nPlFRUTwvYT4pPC90ZD48dGQ+MC43MCU8L3RkPjwvdHI+ZALOAQ8WAh8ABQNOL0FkAtIBDxYCHwAFogM8dHI+PHRkPkFtYXpvbi5jb20gKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL0FNWk4vJz5BTVpOPC9hPik8L3RkPjx0ZD40NC42MjwvdGQ+PC90cj48dHI+PHRkPkFwcGxlICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9BQVBMLyc+QUFQTDwvYT4pPC90ZD48dGQ+MzcuMzg8L3RkPjwvdHI+PHRyPjx0ZD5NaWNyb3NvZnQgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL01TRlQvJz5NU0ZUPC9hPik8L3RkPjx0ZD4zNC45NTwvdGQ+PC90cj48dHI+PHRkPk1ldGEgUGxhdGZvcm1zICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9NRVRBLyc+TUVUQTwvYT4pPC90ZD48dGQ+MjcuNjI8L3RkPjwvdHI+PHRyPjx0ZD5BbHBoYWJldCAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvR09PR0wvJz5HT09HTDwvYT4pPC90ZD48dGQ+MjMuNjk8L3RkPjwvdHI+ZALUAQ8WAh8ABaIDPHRyPjx0ZD5BbHBoYWJldCAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvR09PR0wvJz5HT09HTDwvYT4pPC90ZD48dGQ+MjMuNjk8L3RkPjwvdHI+PHRyPjx0ZD5NZXRhIFBsYXRmb3JtcyAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvTUVUQS8nPk1FVEE8L2E+KTwvdGQ+PHRkPjI3LjYyPC90ZD48L3RyPjx0cj48dGQ+TWljcm9zb2Z0ICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9NU0ZULyc+TVNGVDwvYT4pPC90ZD48dGQ+MzQuOTU8L3RkPjwvdHI+PHRyPjx0ZD5BcHBsZSAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvQUFQTC8nPkFBUEw8L2E+KTwvdGQ+PHRkPjM3LjM4PC90ZD48L3RyPjx0cj48dGQ+QW1hem9uLmNvbSAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvQU1aTi8nPkFNWk48L2E+KTwvdGQ+PHRkPjQ0LjYyPC90ZD48L3RyPmQC1gEPFgIfAAUDTi9BZALaAQ8WAh8ABZ0DPHRyPjx0ZD5BcHBsZSAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvQUFQTC8nPkFBUEw8L2E+KTwvdGQ+PHRkPjEuMjQ8L3RkPjwvdHI+PHRyPjx0ZD5NZXRhIFBsYXRmb3JtcyAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvTUVUQS8nPk1FVEE8L2E+KTwvdGQ+PHRkPjEuMjI8L3RkPjwvdHI+PHRyPjx0ZD5BbWF6b24uY29tICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9BTVpOLyc+QU1aTjwvYT4pPC90ZD48dGQ+MS4xNDwvdGQ+PC90cj48dHI+PHRkPkFscGhhYmV0ICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9HT09HTC8nPkdPT0dMPC9hPik8L3RkPjx0ZD4xLjAzPC90ZD48L3RyPjx0cj48dGQ+TWljcm9zb2Z0ICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9NU0ZULyc+TVNGVDwvYT4pPC90ZD48dGQ+MC45MTwvdGQ+PC90cj5kAtwBDxYCHwAFnQM8dHI+PHRkPk1pY3Jvc29mdCAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvTVNGVC8nPk1TRlQ8L2E+KTwvdGQ+PHRkPjAuOTE8L3RkPjwvdHI+PHRyPjx0ZD5BbHBoYWJldCAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvR09PR0wvJz5HT09HTDwvYT4pPC90ZD48dGQ+MS4wMzwvdGQ+PC90cj48dHI+PHRkPkFtYXpvbi5jb20gKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL0FNWk4vJz5BTVpOPC9hPik8L3RkPjx0ZD4xLjE0PC90ZD48L3RyPjx0cj48dGQ+TWV0YSBQbGF0Zm9ybXMgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL01FVEEvJz5NRVRBPC9hPik8L3RkPjx0ZD4xLjIyPC90ZD48L3RyPjx0cj48dGQ+QXBwbGUgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL0FBUEwvJz5BQVBMPC9hPik8L3RkPjx0ZD4xLjI0PC90ZD48L3RyPmQC3gEPFgIfAAUOJDIuNDkgdHJpbGxpb25kAuABDxYCHwAFjwM8ZGl2IGNsYXNzPSJtZXRlciBtZXRlci1nb2xkIj48ZGl2PjxwIGNsYXNzPSdzdGF0LXNsaWRlci1tYXJrZXIgdG9wLXN0YXQtbWFya2VyJyBzdHlsZT0ibGVmdDogODUuOSUiPk15IEF2ZXJhZ2UgTWFya2V0IENhcDxiciAvPiYjeDI1QkM7PGJyIC8+PHNwYW4gY2xhc3M9InN0YXQtc2xpZGVyLW51bWJlciI+JDIuNDkgdHJpbGxpb248L3NwYW4+PC9wPjxwIGNsYXNzPSdzdGF0LXNsaWRlci1tYXJrZXIgYm90dG9tLXN0YXQtbWFya2VyJyBzdHlsZT0ibGVmdDogMTQuMSUiPjxzcGFuIGNsYXNzPSJzdGF0LXNsaWRlci1udW1iZXIiPiQ1ODkuODYgYmlsbGlvbjwvc3Bhbj48YnIgLz4mI3gyNUIyOzxiciAvPkF2ZXJhZ2UgTWFya2V0QmVhdDxiciAvPlVzZXIgTWFya2V0IENhcDwvcD48L2Rpdj48L2Rpdj5kAuIBDxYCHwAF6AQ8dHI+PHRkPkFwcGxlICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9BQVBMLyc+QUFQTDwvYT4pPC90ZD48dGQgZGF0YS1zb3J0LXZhbHVlPSczNDM0MzE0Ljk4Nic+ICQzLjQzIHRyaWxsaW9uPC90ZD48L3RyPjx0cj48dGQ+TWljcm9zb2Z0ICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9NU0ZULyc+TVNGVDwvYT4pPC90ZD48dGQgZGF0YS1zb3J0LXZhbHVlPSczMTQxOTgwLjcxMSc+ICQzLjE0IHRyaWxsaW9uPC90ZD48L3RyPjx0cj48dGQ+QWxwaGFiZXQgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL0dPT0dMLyc+R09PR0w8L2E+KTwvdGQ+PHRkIGRhdGEtc29ydC12YWx1ZT0nMjIwMjM4Mi4xJz4gJDIuMjAgdHJpbGxpb248L3RkPjwvdHI+PHRyPjx0ZD5BbWF6b24uY29tICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9BTVpOLyc+QU1aTjwvYT4pPC90ZD48dGQgZGF0YS1zb3J0LXZhbHVlPScyMTk4ODk4Ljg5MSc+ICQyLjIwIHRyaWxsaW9uPC90ZD48L3RyPjx0cj48dGQ+TWV0YSBQbGF0Zm9ybXMgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL01FVEEvJz5NRVRBPC9hPik8L3RkPjx0ZCBkYXRhLXNvcnQtdmFsdWU9JzE0ODQyNDUuMzk0Jz4gJDEuNDggdHJpbGxpb248L3RkPjwvdHI+ZALkAQ8WAh8ABeMEPHRyPjx0ZD5NZXRhIFBsYXRmb3JtcyAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvTUVUQS8nPk1FVEE8L2E+KTwvdGQ+PHRkIGRhdGEtc29ydC12YWx1ZT0nMTQ4NDI0NS4zOTQnPiQxLjQ4IHRyaWxsaW9uPC90ZD48L3RyPjx0cj48dGQ+QW1hem9uLmNvbSAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvQU1aTi8nPkFNWk48L2E+KTwvdGQ+PHRkIGRhdGEtc29ydC12YWx1ZT0nMjE5ODg5OC44OTEnPiQyLjIwIHRyaWxsaW9uPC90ZD48L3RyPjx0cj48dGQ+QWxwaGFiZXQgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL0dPT0dMLyc+R09PR0w8L2E+KTwvdGQ+PHRkIGRhdGEtc29ydC12YWx1ZT0nMjIwMjM4Mi4xJz4kMi4yMCB0cmlsbGlvbjwvdGQ+PC90cj48dHI+PHRkPk1pY3Jvc29mdCAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvTVNGVC8nPk1TRlQ8L2E+KTwvdGQ+PHRkIGRhdGEtc29ydC12YWx1ZT0nMzE0MTk4MC43MTEnPiQzLjE0IHRyaWxsaW9uPC90ZD48L3RyPjx0cj48dGQ+QXBwbGUgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL0FBUEwvJz5BQVBMPC9hPik8L3RkPjx0ZCBkYXRhLXNvcnQtdmFsdWU9JzM0MzQzMTQuOTg2Jz4kMy40MyB0cmlsbGlvbjwvdGQ+PC90cj5kAuYBDxYCHwAFBjEzLjc0JWQC6AEPFgIfAAWiAzxkaXYgY2xhc3M9Im1ldGVyIG1ldGVyLWdyZWVuIj48ZGl2PjxwIGNsYXNzPSdzdGF0LXNsaWRlci1tYXJrZXIgdG9wLXN0YXQtbWFya2VyJyBzdHlsZT0ibGVmdDogMTYuMyUiPk15IEF2ZXJhZ2UgRm9yZWNhc3RlZDxicj5FYXJuaW5ncyBHcm93dGg8YnIgLz4mI3gyNUJDOzxiciAvPjxzcGFuIGNsYXNzPSJzdGF0LXNsaWRlci1udW1iZXIiPjEzLjc0JTwvc3Bhbj48L3A+PHAgY2xhc3M9J3N0YXQtc2xpZGVyLW1hcmtlciBib3R0b20tc3RhdC1tYXJrZXInIHN0eWxlPSJsZWZ0OiA3NC45JSI+PHNwYW4gY2xhc3M9InN0YXQtc2xpZGVyLW51bWJlciI+MjEuMTglPC9zcGFuPjxiciAvPiYjeDI1QjI7PGJyIC8+QXZlcmFnZSBNYXJrZXRCZWF0IFVzZXI8YnIgLz5Gb3JlY2FzdGVkIEVhcm5pbmdzIEdyb3d0aDwvcD48L2Rpdj48L2Rpdj5kAuoBDxYCHwAFpwM8dHI+PHRkPkFtYXpvbi5jb20gKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL0FNWk4vJz5BTVpOPC9hPik8L3RkPjx0ZD4xOC44MCU8L3RkPjwvdHI+PHRyPjx0ZD5NaWNyb3NvZnQgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL01TRlQvJz5NU0ZUPC9hPik8L3RkPjx0ZD4xNC4yOSU8L3RkPjwvdHI+PHRyPjx0ZD5BcHBsZSAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvQUFQTC8nPkFBUEw8L2E+KTwvdGQ+PHRkPjEyLjc5JTwvdGQ+PC90cj48dHI+PHRkPkFscGhhYmV0ICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9HT09HTC8nPkdPT0dMPC9hPik8L3RkPjx0ZD4xMS41MSU8L3RkPjwvdHI+PHRyPjx0ZD5NZXRhIFBsYXRmb3JtcyAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvTUVUQS8nPk1FVEE8L2E+KTwvdGQ+PHRkPjExLjMyJTwvdGQ+PC90cj5kAuwBDxYCHwAFpwM8dHI+PHRkPk1ldGEgUGxhdGZvcm1zICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9NRVRBLyc+TUVUQTwvYT4pPC90ZD48dGQ+MTEuMzIlPC90ZD48L3RyPjx0cj48dGQ+QWxwaGFiZXQgKDxhIGhyZWY9Jy9zdG9ja3MvTkFTREFRL0dPT0dMLyc+R09PR0w8L2E+KTwvdGQ+PHRkPjExLjUxJTwvdGQ+PC90cj48dHI+PHRkPkFwcGxlICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9BQVBMLyc+QUFQTDwvYT4pPC90ZD48dGQ+MTIuNzklPC90ZD48L3RyPjx0cj48dGQ+TWljcm9zb2Z0ICg8YSBocmVmPScvc3RvY2tzL05BU0RBUS9NU0ZULyc+TVNGVDwvYT4pPC90ZD48dGQ+MTQuMjklPC90ZD48L3RyPjx0cj48dGQ+QW1hem9uLmNvbSAoPGEgaHJlZj0nL3N0b2Nrcy9OQVNEQVEvQU1aTi8nPkFNWk48L2E+KTwvdGQ+PHRkPjE4LjgwJTwvdGQ+PC90cj5kAu4BD2QWAmYPZBYCAgMPZBYEAgEPEGRkFgECAWQCBQ8WAh8BZxYCAgEPFgIfAAW+AjxkaXYgY2xhc3M9J21vcmVpbmZvIGJnLXdoaXRlJyB0YWJpbmRleD0nMCc+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtY2lyY2xlLXF1ZXN0aW9uIGMtZ3JheScgYXJpYS1oaWRkZW49J3RydWUnPjwvc3Bhbj48c3BhbiBjbGFzcz0ndG9vbHRpcHRleHQgZGFyay1tb2RlIHRvcHRpcCcgaWQ9J3Rvb2x0aXAtbWVkaWFzZW50aW1lbnQnPlNlbnRpbWVudCByZWZlcnMgdG8gdGhlIHBvc2l0aXZpdHkgb3IgbmVnYXRpdml0eSBvZiBlYWNoIGhlYWRsaW5lIGFjY29yZGluZyB0byBvdXIgbGFuZ3VhZ2UgcHJvY2Vzc2luZyBhbGdvcml0aG0uPC9zcGFuPjwvZGl2PmQC8AEPFgIfAAXkBDxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz5mdW5jdGlvbiBMb2FkU3RvY2t0d2l0cygpIHt2YXIgUGFuZWxXaWR0aCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdzdG9ja3R3aXRzLXdpZGdldC1uZXdzJykub2Zmc2V0V2lkdGg7U1RXVC5XaWRnZXQoeyBjb250YWluZXI6ICdzdG9ja3R3aXRzLXdpZGdldC1uZXdzJywgc3ltYm9sOiAnR09PR0wsQU1aTixBQVBMLE1FVEEsTVNGVCcsIHdpZHRoOiBQYW5lbFdpZHRoLCBoZWlnaHQ6ICc4MDAnLCBsaW1pdDogJzIwMCcsIHNjcm9sbGJhcnM6ICd0cnVlJywgc3RyZWFtaW5nOiAndHJ1ZScsIHRpdGxlOiAnJywgc3R5bGU6IHsgbGlua19jb2xvcjogJzQ4NzFhOCcsIGxpbmtfaG92ZXJfY29sb3I6ICc0ODcxYTgnLCBoZWFkZXJfdGV4dF9jb2xvcjogJzAwMDAwMCcsIGJvcmRlcl9jb2xvcjogJ2NlY2VjZScsIGRpdmlkZXJfY29sb3I6ICdjZWNlY2UnLCBkaXZpZGVyX2NvbG9yOiAnY2VjZWNlJywgZGl2aWRlcl90eXBlOiAnc29saWQnLCBib3hfY29sb3I6ICdmNWY1ZjUnLCBzdHJlYW1fY29sb3I6ICdmZmZmZmYnLCB0ZXh0X2NvbG9yOiAnMDAwMDAwJywgdGltZV9jb2xvcjogJzk5OTk5OScgfSB9KTt9Ozwvc2NyaXB0PmQC8gEPZBYCAgEPEGQPFghmAgECAgIDAgQCBQIGAgcWCBAFF01hcmtldEJlYXQgRGFpbHkgKEZyZWUpBQxEYWlseVJhdGluZ3NnEAUWRWFybmluZ3MzNjAgTmV3c2xldHRlcgUSRWFybmluZ3NUaHJlZVNpeHR5ZxAFGUluc2lkZXIgVHJhZGVzIE5ld3NsZXR0ZXIFDUluc2lkZXJUcmFkZXNnEAUaRGl2aWRlbmQgU3RvY2tzIE5ld3NsZXR0ZXIFD0RpdmlkZW5kQWR2aXNvcmcQBRVNYXJrZXRCZWF0IENyeXB0b0JlYXQFCkNyeXB0b0JlYXRnEAUXTWFya2V0QmVhdCBEYWlseSBDYW5hZGEFC0RhaWx5Q2FuYWRhZxAFDlRoZSBFYXJseSBCaXJkBQlFYXJseUJpcmRnEAUNVGhlIE5pZ2h0IE93bAUITmlnaHRPd2xnZGQC9AEPFgIfAAXuAjxici8+PHNwYW4gY2xhc3M9ImMtcmVkIj5Zb3UgaGF2ZSByZWFjaGVkIHRoZSBsaW1pdCBvZiBmaXZlIHN0b2NrcyBvbiB5b3VyIHdhdGNobGlzdCB3aXRoIHlvdXIgZnJlZSBzdWJzY3JpcHRpb24uIEluIG9yZGVyIHRvIGFkZCBtb3JlIHN0b2NrcyB0byB5b3VyIHdhdGNobGlzdCwgZGVsZXRlIG9uZSBvZiB5b3VyIGV4aXN0aW5nIHN0b2NrcyBvciA8YSBjbGFzcz0iYy1yZWQiIGhyZWY9J2h0dHBzOi8vd3d3Lm1hcmtldGJlYXQuY29tL3N1YnNjcmliZS9hbGwtYWNjZXNzLz9Vc2VySUQ9MTE0MDQ5NjImUmVmZXJyYWxUeXBlPVdhdGNobGlzdHNQYWdlTm90aWNlJz5VcGdyYWRlIHRvIE1hcmtldEJlYXQgQWxsIEFjY2VzczwvYT4uPC9zcGFuPmQCBw8WAh8ABYICPGEgaHJlZj0nIycgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGQtZmxleCBkLXNtLWlubGluZS1mbGV4IG1iLTEiICBvbmNsaWNrPSJlQ1NWKCdQb3J0Zm9saW9FeHBvcnQtQWxsIFdhdGNobGlzdHMtMjAyNC0xMS0wOC0xMi0zMy5jc3YnKTsgcmV0dXJuIGZhbHNlOyI+PHNwYW4gY2xhc3M9J2ZhLXJlZ3VsYXIgZmEtZmlsZS1leGNlbCBtci0yJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9zcGFuPkV4cG9ydCBQb3J0Zm9saW8ocykgKENTVi9FeGNlbCk8L2E+ZAILD2QWBGYPFgIfAAWmKzxzY3JpcHQ+dmFyIGNoYXJ0QWxyZWFkeURyYXduID0gZmFsc2U7DQp2YXIgcGVyZm9ybWFuY2VDaGFydEFscmVhZHlEcmF3biA9IGZhbHNlOw0KZnVuY3Rpb24gTG9hZERvdWdobnV0KERhdGFQb2ludHMsIFNlY3RvclRleHQpIHsNCiAgICBpZiAoIWNoYXJ0QWxyZWFkeURyYXduKSB7DQogICAgICAgIGlmIChEYXRhUG9pbnRzID09PSAnJykgew0KICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NhbnZhcycpLmhlaWdodCA9IDI1Ow0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NhbnZhcycpLmhlaWdodCA9IDI3NTsNCiAgICAgICAgICAgIHZhciBjb25maWcgPSB7DQogICAgICAgICAgICAgICAgdHlwZTogJ2RvdWdobnV0JywNCiAgICAgICAgICAgICAgICBkYXRhOiB7DQogICAgICAgICAgICAgICAgICAgIGRhdGFzZXRzOiBbew0KICAgICAgICAgICAgICAgICAgICAgICAgZGF0YTogRGF0YVBvaW50cy5zcGxpdCgnLCcpLm1hcChOdW1iZXIpLA0KICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBbJyNCMkVDRkYnLCAnIzZEREZGRicsICcjMDBCQUZGJywgJyMwMDk2REYnLCAnIzAwNzdCNCcsICcjMDA1ODgyJywgJyMwMDQ3NjgnLCAnIzAwMzQ1QScsICcjMDEyNjQxJyBdIA0KICAgICAgICAgICAgICAgICAgICB9XSwNCiAgICAgICAgICAgICAgICAgICAgbGFiZWxzOiBTZWN0b3JUZXh0DQogICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICBvcHRpb25zOiB7DQogICAgICAgICAgICAgICAgICAgIHJlc3BvbnNpdmU6IHRydWUsIGxlZ2VuZDogZmFsc2UsIGFuaW1hdGlvbjogeyBhbmltYXRlU2NhbGU6IHRydWUsIGFuaW1hdGVSb3RhdGU6IHRydWUgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH07DQogICAgICAgICAgICB2YXIgY3R4ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NhbnZhcycpLmdldENvbnRleHQoJzJkJyk7DQogICAgICAgICAgICB3aW5kb3cubXlEb3VnaG51dCA9IG5ldyBDaGFydChjdHgsIGNvbmZpZyk7DQogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnanMtbGVnZW5kJykuaW5uZXJIVE1MID0gbXlEb3VnaG51dC5nZW5lcmF0ZUxlZ2VuZCgpOw0KICAgICAgICAgICAgY2hhcnRBbHJlYWR5RHJhd24gPSB0cnVlOw0KICAgICAgICB9DQogICAgfQ0KfSANCmZ1bmN0aW9uIExvYWRQZXJmb3JtYW5jZUdyYXBoKCkgew0KICAgIGlmICghcGVyZm9ybWFuY2VDaGFydEFscmVhZHlEcmF3bikgew0KICAgICAgICAgICAgLy9pbml0aWFsIGNoYXJ0IGNvbmZpZyB3aXRoIGR1bW15IGRhdGENCiAgICAgICAgICAgIHZhciBjb25maWcgPSB7DQogICAgICAgICAgICAgICAgdHlwZTogJ2xpbmUnLA0KICAgICAgICAgICAgICAgIGRhdGE6IHsNCiAgICAgICAgICAgICAgICAgICAgZGF0YXNldHM6IFsNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YTogW3sgeDogbmV3IERhdGUoMjAxOSwgMSwgMSksIHk6IDAgfSwgeyB4OiBuZXcgRGF0ZSgyMDE5LCAyLCAxKSwgeTogMCB9XSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICdNeSBQb3J0Zm9saW8nLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogJyMwMDU4ODInLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlckNvbG9yOiAnIzAwNTg4MicsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRCb3JkZXJDb2xvcjogJyMwMDU4ODInLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50QmFja2dyb3VuZENvbG9yOiAnIzAwNTg4MicsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRIb3ZlckJhY2tncm91bmRDb2xvcjogJyMwMDU4ODInLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50SG92ZXJCb3JkZXJDb2xvcjogJyMwMDU4ODInLA0KICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhOiBbeyB4OiBuZXcgRGF0ZSgyMDE5LCAxLCAxKSwgeTogMCB9LCB7IHg6IG5ldyBEYXRlKDIwMTksIDIsIDEpLCB5OiAwIH1dLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnU3RvY2sgSW5kZXgnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogJyMxRDFFMUYnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlckNvbG9yOiAnIzFEMUUxRicsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRCb3JkZXJDb2xvcjogJyMxRDFFMUYnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50QmFja2dyb3VuZENvbG9yOiAnIzFEMUUxRicsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRIb3ZlckJhY2tncm91bmRDb2xvcjogJyMxRDFFMUYnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50SG92ZXJCb3JkZXJDb2xvcjogJyMxRDFFMUYnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgIG9wdGlvbnM6IHsNCiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgbGVnZW5kOiB7DQogICAgICAgICAgICAgICAgICAgICAgICBsYWJlbHM6IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VQb2ludFN0eWxlOiB0cnVlDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgIHRpdGxlOiB7DQogICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogJ1BlcmZvcm1hbmNlIENvbXBhcmlzb24nDQogICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgIHNjYWxlczogew0KICAgICAgICAgICAgICAgICAgICAgICAgeEF4ZXM6IFt7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3RpbWUnLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGVMYWJlbDogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbFN0cmluZzogJ0RhdGUnDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgIH1dLA0KICAgICAgICAgICAgICAgICAgICAgICAgeUF4ZXM6IFt7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZUxhYmVsOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsU3RyaW5nOiAnJSBSZXR1cm4nDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aWNrczogew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24gKGxhYmVsLCBpbmRleCwgbGFiZWxzKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gTWF0aC5yb3VuZChsYWJlbCAqIDEwMCkgKyAnJSc7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAibGVmdCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6ICJ5UmV0dXJuIiwNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgbGVnZW5kOiB0cnVlLA0KICAgICAgICAgICAgICAgICAgICB0b29sdGlwczogew0KICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2tzOiB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IGZ1bmN0aW9uICh0b29sdGlwSXRlbSwgZGF0YSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKHRvb2x0aXBJdGVtLnlMYWJlbCoxMDApLnRvRml4ZWQoMikgKyAiJSI7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogZnVuY3Rpb24gKHRvb2x0aXBJdGVtcywgZGF0YSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IERhdGUocGFyc2VGbG9hdCh0b29sdGlwSXRlbXNbMF0ueExhYmVsKSkudG9Mb2NhbGVEYXRlU3RyaW5nKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICBob3Zlcjogew0KICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJzZWN0OiBmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiB7IGFuaW1hdGVTY2FsZTogdHJ1ZSwgYW5pbWF0ZVJvdGF0ZTogdHJ1ZSB9DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfTsgIC8vY29uZmlnDQogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY2FudmFzcHAnKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOw0KICAgICAgICAgICAgdmFyIGN0eCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjYW52YXNwcCcpLmdldENvbnRleHQoJzJkJyk7DQogICAgICAgICAgICB3aW5kb3cubXlQZXJmb3JtYW5jZUNoYXJ0ID0gbmV3IENoYXJ0KGN0eCwgY29uZmlnKTsNCiAgICAgICAgICAgIHdpbmRvdy5teVBlcmZvcm1hbmNlQ2hhcnQudXBkYXRlKCk7DQogICAgICAgICAgICBwZXJmb3JtYW5jZUNoYXJ0QWxyZWFkeURyYXduID0gdHJ1ZTsNCiAgICB9DQp9IA0KDQpmdW5jdGlvbiBMb2FkR3JhcGhzKERhdGFQb2ludHMsIFNlY3RvclRleHQpIHsNCiAgICB0cnkgew0KICAgICAgICBMb2FkUGVyZm9ybWFuY2VHcmFwaCgpOw0KICAgIH0gY2F0Y2ggKGVycikgew0KICAgICAgICAvL2FsZXJ0KGVycik7DQogICAgICAgIC8vYWxlcnQoZXJyLnN0YWNrKTsNCiAgICB9IA0KDQogICAgdHJ5IHsNCiAgICAgICAgTG9hZERvdWdobnV0KERhdGFQb2ludHMsIFNlY3RvclRleHQpOw0KICAgIH0gY2F0Y2ggKGVycikgew0KICAgICAgICAvL2FsZXJ0KGVycik7DQogICAgfSANCiAgICANCiAgICANCn08L3NjcmlwdD5kAgEPFgIfAAWHCzxzY3JpcHQ+ZnVuY3Rpb24gc2hvd05vdGlmaWNhdGlvbnMoUHJlZml4LCBTeW1ib2wsIFZpZXdlZFRocm91Z2gsIGVsZW1lbnQpIHsgJC5nZXQoJy9TY3JpcHRzL05vdGlmaWNhdGlvbnNIZWxwZXJzLmFzaHg/Y29tbWFuZD13YXRjaGxpc3Rub3RpZmljYXRpb25zJmFjY291bnRpZD0xMTQwNDk2MiZoYXNoPTg4MzY5NjdCNjQ4OTM0M0FGRkVCRTRBOUYyMDczNkNDM0U3MEMxMUVGOTE0NDAyQjEwNUQwQjE0MTFBQzIyODM0Njk3NjBBODkwRjUwMEEyMTFERDJBQTlFRkFDODQyNDBGQzFGNUI5OUFEQUYyOEVCQTVCODFDQjQ5NjVBMTBBJnByZWZpeD0nICsgUHJlZml4ICsgJyZzeW1ib2w9JyArIFN5bWJvbCArICcmdmlld2VkdGhyb3VnaD0nICsgVmlld2VkVGhyb3VnaCwgZnVuY3Rpb24gKGRhdGEsIHN0YXR1cykgeyAkKGVsZW1lbnQpLmh0bWwoZGF0YSk7ICQoZWxlbWVudCkucmVtb3ZlQ2xhc3MoICdwZW5kaW5nJyApOyBpZiAoZGF0YS5sZW5ndGggPT09IDAgJiYgJChlbGVtZW50KS5oYXNDbGFzcygnbW9iaWxlLW5vdGlmaWNhdGlvbnMnKSkgeyQoZWxlbWVudCkuaHRtbCgnPGRpdiBzdHlsZT0iaGVpZ2h0OiAyMHB4OyI+PC9kaXY+PGRpdiBjbGFzcz0ibGF0ZXN0LW5vdGlmaWNhdGlvbnMiPjxkaXY+PGRpdiBjbGFzcz0ibnRmLWhlYWRlciI+Tm8gbm90aWZpY2F0aW9ucyBmb3IgdGhpcyBhc3NldC48L2Rpdj48L2Rpdj48L2Rpdj4nKTt9IH0gKSB9IGZ1bmN0aW9uIG1vdmVOb3RpZmljYXRpb25zKFZpZXdlZFRocm91Z2gsIFByZWZpeCwgU3ltYm9sLCBlbGVtZW50KSB7IHZhciBub3RpZmljYXRpb25zID0gJCgnIycgKyBWaWV3ZWRUaHJvdWdoICsgJ18nICsgUHJlZml4ICsgJ18nICsgU3ltYm9sLnJlcGxhY2UoJy4nLCdcXC4nKSkuaHRtbCgpOyBpZiAodHlwZW9mIG5vdGlmaWNhdGlvbnMgPT0gInVuZGVmaW5lZCIgfHwgbm90aWZpY2F0aW9ucyA9PT0gJycpIHsgJChlbGVtZW50KS5odG1sKCc8ZGl2IHN0eWxlPSJoZWlnaHQ6IDIwcHg7Ij48L2Rpdj48ZGl2IGNsYXNzPSJsYXRlc3Qtbm90aWZpY2F0aW9ucyI+PGRpdj48ZGl2IGNsYXNzPSJudGYtaGVhZGVyIj5ObyBub3RpZmljYXRpb25zIGZvciB0aGlzIGFzc2V0LjwvZGl2PjwvZGl2PjwvZGl2PicpO30gZWxzZSB7ICQoZWxlbWVudCkuaHRtbChub3RpZmljYXRpb25zKSB9IH0gZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignRE9NQ29udGVudExvYWRlZCcsIGZ1bmN0aW9uICgpIHsgJCggJy5zaG93bm90aWZpY2F0aW9ucycgKS5lYWNoKGZ1bmN0aW9uKCBpbmRleCApIHsgIHNob3dOb3RpZmljYXRpb25zKCQodGhpcykuYXR0cignaWQnKS5zcGxpdCgnXycpWzFdLCAkKHRoaXMpLmF0dHIoJ2lkJykuc3BsaXQoJ18nKVsyXSwgJCh0aGlzKS5hdHRyKCdpZCcpLnNwbGl0KCdfJylbMF0sICQodGhpcykpOyB9KSB9KTsgPC9zY3JpcHQ+ZAIRDw8WAh8BZ2RkAhMPZBYCAgMPDxYEHwRnHwFnZBYCAgEPFgIfAAWiFzx0YWJsZSBjbGFzcz0ndy0xMDAnPjx0cj48dGQgc3R5bGU9J3ZlcnRpY2FsLWFsaWduOnRvcDt3aWR0aDozMHB4O3BhZGRpbmc6LjJlbSAuMmVtIC40ZW0gLjJlbTsnPjxzcGFuIGNsYXNzPSJjLWdyZWVuIGZhLXJlZ3VsYXIgZmEtc3F1YXJlLWNoZWNrIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvdGQ+PHRkIHN0eWxlPSJ2ZXJ0aWNhbC1hbGlnbjp0b3A7cGFkZGluZzouMjVlbTsiPjxhIHN0eWxlPSdmb250LXNpemU6LjlyZW07JyBocmVmPScvbWFuYWdlL2Fybi1kYWlseS1wcmVtaXVtLz91dG1fc291cmNlPVdlYnNpdGVJbnRlcm5hbCZ1dG1fbWVkaXVtPW9uYm9hcmRpbmcmdXRtX2NhbXBhaWduPUZyZWVTdWJzY3JpYmVyJz5SZWFkIFlvdXIgRGFpbHkgTmV3c2xldHRlcjwvYT48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0ndmVydGljYWwtYWxpZ246dG9wO3dpZHRoOjMwcHg7cGFkZGluZzouMmVtIC4yZW0gLjRlbSAuMmVtOyc+PHNwYW4gY2xhc3M9ImMtZ3JlZW4gZmEtcmVndWxhciBmYS1zcXVhcmUtY2hlY2siIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC90ZD48dGQgc3R5bGU9InZlcnRpY2FsLWFsaWduOnRvcDtwYWRkaW5nOi4yNWVtOyI+PGEgc3R5bGU9J2ZvbnQtc2l6ZTouOXJlbTsnIGhyZWY9Jy9tYW5hZ2Uvd2F0Y2hsaXN0cy8/dXRtX3NvdXJjZT1XZWJzaXRlSW50ZXJuYWwmdXRtX21lZGl1bT1vbmJvYXJkaW5nJnV0bV9jYW1wYWlnbj1GcmVlU3Vic2NyaWJlcic+Q2hlY2sgT3V0IE15IE1hcmtldEJlYXQ8L2E+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9J3ZlcnRpY2FsLWFsaWduOnRvcDt3aWR0aDozMHB4O3BhZGRpbmc6LjJlbSAuMmVtIC40ZW0gLjJlbTsnPjxzcGFuIGNsYXNzPSJjLWdyZWVuIGZhLXJlZ3VsYXIgZmEtc3F1YXJlLWNoZWNrIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvdGQ+PHRkIHN0eWxlPSJ2ZXJ0aWNhbC1hbGlnbjp0b3A7cGFkZGluZzouMjVlbTsiPjxhIHN0eWxlPSdmb250LXNpemU6LjlyZW07JyBocmVmPScvaGVscC8/dXRtX3NvdXJjZT1XZWJzaXRlSW50ZXJuYWwmdXRtX21lZGl1bT1vbmJvYXJkaW5nJnV0bV9jYW1wYWlnbj1GcmVlU3Vic2NyaWJlcic+V2F0Y2ggT3VyIFR1dG9yaWFsIFZpZGVvczwvYT48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0ndmVydGljYWwtYWxpZ246dG9wO3dpZHRoOjMwcHg7cGFkZGluZzouMmVtIC4yZW0gLjRlbSAuMmVtOyc+PHNwYW4gY2xhc3M9ImMtcmVkIGZhLXJlZ3VsYXIgZmEtc3F1YXJlIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvdGQ+PHRkIHN0eWxlPSJ2ZXJ0aWNhbC1hbGlnbjp0b3A7cGFkZGluZzouMjVlbTsiPjxhIHN0eWxlPSdmb250LXNpemU6LjlyZW07JyBocmVmPScvbWFuYWdlL3dhdGNobGlzdHMvP3V0bV9zb3VyY2U9V2Vic2l0ZUludGVybmFsJnV0bV9tZWRpdW09b25ib2FyZGluZyZ1dG1fY2FtcGFpZ249RnJlZVN1YnNjcmliZXInPkFkZCBhIFN0b2NrIHRvIFlvdXIgV2F0Y2hsaXN0PC9hPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSd2ZXJ0aWNhbC1hbGlnbjp0b3A7d2lkdGg6MzBweDtwYWRkaW5nOi4yZW0gLjJlbSAuNGVtIC4yZW07Jz48c3BhbiBjbGFzcz0iYy1yZWQgZmEtcmVndWxhciBmYS1zcXVhcmUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC90ZD48dGQgc3R5bGU9InZlcnRpY2FsLWFsaWduOnRvcDtwYWRkaW5nOi4yNWVtOyI+PGEgc3R5bGU9J2ZvbnQtc2l6ZTouOXJlbTsnIGhyZWY9Jy9tYW5hZ2Uvd2F0Y2hsaXN0cy8/dXRtX3NvdXJjZT1XZWJzaXRlSW50ZXJuYWwmdXRtX21lZGl1bT1vbmJvYXJkaW5nJnV0bV9jYW1wYWlnbj1GcmVlU3Vic2NyaWJlcic+U2V0IFVwIGFuIEluc3RhbnQgQWxlcnQ8L2E+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9J3ZlcnRpY2FsLWFsaWduOnRvcDt3aWR0aDozMHB4O3BhZGRpbmc6LjJlbSAuMmVtIC40ZW0gLjJlbTsnPjxzcGFuIGNsYXNzPSJjLWdyZWVuIGZhLXJlZ3VsYXIgZmEtc3F1YXJlLWNoZWNrIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvdGQ+PHRkIHN0eWxlPSJ2ZXJ0aWNhbC1hbGlnbjp0b3A7cGFkZGluZzouMjVlbTsiPjxhIHN0eWxlPSdmb250LXNpemU6LjlyZW07JyBocmVmPScvc3RvY2tzLz91dG1fc291cmNlPVdlYnNpdGVJbnRlcm5hbCZ1dG1fbWVkaXVtPW9uYm9hcmRpbmcmdXRtX2NhbXBhaWduPUZyZWVTdWJzY3JpYmVyJz5WaWV3IGEgQ29tcGFueSdzIFByb2ZpbGUgUGFnZTwvYT48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0ndmVydGljYWwtYWxpZ246dG9wO3dpZHRoOjMwcHg7cGFkZGluZzouMmVtIC4yZW0gLjRlbSAuMmVtOyc+PHNwYW4gY2xhc3M9ImMtZ3JlZW4gZmEtcmVndWxhciBmYS1zcXVhcmUtY2hlY2siIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC90ZD48dGQgc3R5bGU9InZlcnRpY2FsLWFsaWduOnRvcDtwYWRkaW5nOi4yNWVtOyI+PGEgc3R5bGU9J2ZvbnQtc2l6ZTouOXJlbTsnIGhyZWY9Jy9tYXJrZXQtZGF0YS8/dXRtX3NvdXJjZT1XZWJzaXRlSW50ZXJuYWwmdXRtX21lZGl1bT1vbmJvYXJkaW5nJnV0bV9jYW1wYWlnbj1GcmVlU3Vic2NyaWJlcic+VmlldyBPdXIgRmluYW5jaWFsIENhbGVuZGFyczwvYT48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0ndmVydGljYWwtYWxpZ246dG9wO3dpZHRoOjMwcHg7cGFkZGluZzouMmVtIC4yZW0gLjRlbSAuMmVtOyc+PHNwYW4gY2xhc3M9ImMtZ3JlZW4gZmEtcmVndWxhciBmYS1zcXVhcmUtY2hlY2siIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC90ZD48dGQgc3R5bGU9InZlcnRpY2FsLWFsaWduOnRvcDtwYWRkaW5nOi4yNWVtOyI+PGEgc3R5bGU9J2ZvbnQtc2l6ZTouOXJlbTsnIGhyZWY9Jy9yYXRpbmdzL1VTQS9sYXRlc3QvP3V0bV9zb3VyY2U9V2Vic2l0ZUludGVybmFsJnV0bV9tZWRpdW09b25ib2FyZGluZyZ1dG1fY2FtcGFpZ249RnJlZVN1YnNjcmliZXInPlZpZXcgVG9kYXkncyBBbmFseXN0IFJhdGluZ3M8L2E+PC90ZD48L3RyPjwvdGFibGU+ZAIbDxYCHwFnZAIPDxYCHwAFFXZlcmRhY2h0QHNhZmVvbndlYi5iZWQCEQ8WAh8AZWQCEg8WAh8ABVE8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+c2V0Q29va2llKCJNYXJrZXRCZWF0T3B0aW5Db29raWUiLCAxLCAzKTs8L3NjcmlwdD5kAhUPDxYCHwFnZGQYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgYFImN0bDAwJGNwaFByaW1hcnlDb250ZW50JGNoa0luc3RhbnQFJmN0bDAwJGNwaFByaW1hcnlDb250ZW50JGNoa1ByaWNlQWxlcnRzBS5jdGwwMCRjcGhQcmltYXJ5Q29udGVudCRjaGtFbWFpbEFsZXJ0c011bHRpcGxlBSpjdGwwMCRjcGhQcmltYXJ5Q29udGVudCRjaGtFbWFpbEFsZXJ0c0VkaXQFKmN0bDAwJGNwaFByaW1hcnlDb250ZW50JGNoa1ByaWNlQWxlcnRzRWRpdAUnY3RsMDAkY3BoUHJpbWFyeUNvbnRlbnQkY2hrVXBkYXRlUHJpY2VzW2bHhkGI+T/xQXIsfPIrSLewhEM=">
  </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&amp;t=638610691965203766" type="text/javascript"></script>
  <script src="/ScriptResource.axd?d=nlSrOCgmHRkJKy_atxR8MlI0g5Fyrw2N4vOH-J1pSh0LNd-DEJpJJM2PqbFuXW8LCcUktIdE5I5RFTWBcrIyR03paG7H2oiMkNiPlh3szTWi9JBhKv8-Yi9ORQOMTynHqdqDPyvuvuHxpyvkgT4B1r1YoVk1&amp;t=64bd211b" type="text/javascript"></script>
  <script src="/ScriptResource.axd?d=5uHgycXeCI_2B1KxfCX0UN6zg6FdD9djh2Jah60XTTaX767t8n5jvCXuYRybH_HPVlQDavAt0ikkPNOcfyNasH5OYnS1TD65R4AbJ5dhbf_Znzg5OzEkvowWtUFJLchVbmKGCLSfl8ZdID-sIL3sTP1aJuM1&amp;t=ffffffffb201fd3f" type="text/javascript"></script>
  <script src="/ScriptResource.axd?d=LDxligUXaea7HOiymrOLbfc35UUl3oZNQV3EOXsRk5Kt-0hKzSsb9k0eT_romv_Ll5LoadWOAwUauWDpfKmeWEOLI5LOhgBPgsJW1hTy1ajIzNRgTFTmBT4Dk-RNxZUe1V4l-RYOzt9r8FfnhAK8HfJmOZHK1RuMAF6oTb2niff1rxa90&amp;t=ffffffffb201fd3f"
    type="text/javascript"></script>
  <script src="/ScriptResource.axd?d=mZAvc2rdN5UQEFLyy_VTymM1qRIFbVj3WK2kF1mmfyCNu1fpeeD44l5EIY3ay0OKhoFbS_xwXiZpWQOIRHCBCW0QJyttzo3y8WI51YB56NrZY9xaRML18LUhZXyg4JeTUhDQJpiizJVNwl2FqCLjVFL_R7E1&amp;t=ffffffffb201fd3f" type="text/javascript"></script>
  <script type="text/javascript">
    //<![CDATA[
    var PageMethods = function() {
      PageMethods.initializeBase(this);
      this._timeout = 0;
      this._userContext = null;
      this._succeeded = null;
      this._failed = null;
    }
    PageMethods.prototype = {
      _get_path: function() {
        var p = this.get_path();
        if (p) return p;
        else return PageMethods._staticInstance.get_path();
      },
      GenerateLinkToken: function(subscriberId, succeededCallback, failedCallback, userContext) {
        return this._invoke(this._get_path(), 'GenerateLinkToken', false, {
          subscriberId: subscriberId
        }, succeededCallback, failedCallback, userContext);
      },
      OnLinkSuccess: function(publicToken, metadata, subscriberId, succeededCallback, failedCallback, userContext) {
        return this._invoke(this._get_path(), 'OnLinkSuccess', false, {
          publicToken: publicToken,
          metadata: metadata,
          subscriberId: subscriberId
        }, succeededCallback, failedCallback, userContext);
      },
      UpdatePerformanceGraph: function(SubscriberId, WatchlistId, timeFrame, IndexToCompare, succeededCallback, failedCallback, userContext) {
        return this._invoke(this._get_path(), 'UpdatePerformanceGraph', false, {
          SubscriberId: SubscriberId,
          WatchlistId: WatchlistId,
          timeFrame: timeFrame,
          IndexToCompare: IndexToCompare
        }, succeededCallback, failedCallback, userContext);
      }
    }
    PageMethods.registerClass('PageMethods', Sys.Net.WebServiceProxy);
    PageMethods._staticInstance = new PageMethods();
    PageMethods.set_path = function(value) {
      PageMethods._staticInstance.set_path(value);
    }
    PageMethods.get_path = function() {
      return PageMethods._staticInstance.get_path();
    }
    PageMethods.set_timeout = function(value) {
      PageMethods._staticInstance.set_timeout(value);
    }
    PageMethods.get_timeout = function() {
      return PageMethods._staticInstance.get_timeout();
    }
    PageMethods.set_defaultUserContext = function(value) {
      PageMethods._staticInstance.set_defaultUserContext(value);
    }
    PageMethods.get_defaultUserContext = function() {
      return PageMethods._staticInstance.get_defaultUserContext();
    }
    PageMethods.set_defaultSucceededCallback = function(value) {
      PageMethods._staticInstance.set_defaultSucceededCallback(value);
    }
    PageMethods.get_defaultSucceededCallback = function() {
      return PageMethods._staticInstance.get_defaultSucceededCallback();
    }
    PageMethods.set_defaultFailedCallback = function(value) {
      PageMethods._staticInstance.set_defaultFailedCallback(value);
    }
    PageMethods.get_defaultFailedCallback = function() {
      return PageMethods._staticInstance.get_defaultFailedCallback();
    }
    PageMethods.set_enableJsonp = function(value) {
      PageMethods._staticInstance.set_enableJsonp(value);
    }
    PageMethods.get_enableJsonp = function() {
      return PageMethods._staticInstance.get_enableJsonp();
    }
    PageMethods.set_jsonpCallbackParameter = function(value) {
      PageMethods._staticInstance.set_jsonpCallbackParameter(value);
    }
    PageMethods.get_jsonpCallbackParameter = function() {
      return PageMethods._staticInstance.get_jsonpCallbackParameter();
    }
    PageMethods.set_path("./");
    PageMethods.GenerateLinkToken = function(subscriberId, onSuccess, onFailed, userContext) {
      PageMethods._staticInstance.GenerateLinkToken(subscriberId, onSuccess, onFailed, userContext);
    }
    PageMethods.OnLinkSuccess = function(publicToken, metadata, subscriberId, onSuccess, onFailed, userContext) {
      PageMethods._staticInstance.OnLinkSuccess(publicToken, metadata, subscriberId, onSuccess, onFailed, userContext);
    }
    PageMethods.UpdatePerformanceGraph = function(SubscriberId, WatchlistId, timeFrame, IndexToCompare, onSuccess, onFailed, userContext) {
      PageMethods._staticInstance.UpdatePerformanceGraph(SubscriberId, WatchlistId, timeFrame, IndexToCompare, onSuccess, onFailed, userContext);
    }
    var gtc = Sys.Net.WebServiceProxy._generateTypedConstructor;
    if (typeof(PerformanceData) === 'undefined') {
      var PerformanceData = gtc("PerformanceData");
      PerformanceData.registerClass('PerformanceData');
    }

    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="0CA0324B">
    <input type="hidden" name="__SCROLLPOSITIONX" id="__SCROLLPOSITIONX" value="0">
    <input type="hidden" name="__SCROLLPOSITIONY" id="__SCROLLPOSITIONY" value="0">
    <input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION"
      value="/wEdAGjFgIWM9QqqdkbbbpQRNlddPuCR396t6ZeTi7Z8O0Y/yWrBX+BeWzcmFbfZaHp6S/92EGvHBdimMbkuM+j+afVPhJCJ1UHDG/BmnzTYQCHWDCWmftbz967Jtiemvt6muqtcEEqnJruQoGy++1VRh+ap7kM5N+nobAiGOD/Pzq0DkNmAxJ7Mt8bHuNLVvH/tnm+ONfGLm0ab398bD5HpUYL6gYeracFtXgweP7So6j2zEkeso37ryySe106iEdsNQNoR5RbPzOB5SBqIbJsT9hJN2eV2rGXk4ZPXr2z6GwjI0FwyDaj3ZDomWqRfASpWzfu8cs6fFqmmNuGtObOEK8JwuS/Dkq1KFDMgMjXFZdp5GNrYmdqDmDpXZkluZgiSgcxo5GTfZvRE0u6+DZdiLxg5aL1Qr96Gk1AhAafGy8G9wfVP/d5S94F10uNDt1fcMv0H9/A4N/dJtEjCKQjd9izRlMQRXNrJubO9cMVTXF0P6PIMfxgtZN97SbuJ6HswmmgquEWRhmMgaowoRjuG6nv9kK/zb5x4XYyBBeGdCjHnKB3STNrqJgyXFu+1uZ4Ptg99uQSIfop+hiTkJLlCiHxk4CDhcsSIbhPzxWwBFmkhGfAq5s2jHHmg0BLY71ma6DdDPQjAI6Iix+r6m0toxNL0y5nyMPSqokaPsVN8uRD5rs63Qli02oDjcFnTCVJRvFFatgF7YMxklyptdNOloVdovHC31HHkhavjuIJ80r6EArTOPqwW0AFiz1sTB2McmW2DkvRSaDVhplu0jw8HzfhxcdoxxhXnNWq9cI6Ci0uE/udAYlIFNRkNzg1eJdVLVziKq3v3sWWobbb2zVwvR+YrmIOsK+AuK7dBQWUvo/khjtDiLGDmCfXm4LN1Hgu0PRf+bTKNs3X6h37Y+ttEhTYXRKTyrxK0MdkyreIKxFS/wAsbj6JVFvgZaloNzm2E6Lh4Dl+VvdFlIrp0utluCjtkx3IJZEVRx1qjzoOQ3T47RxCuyrKMvBChKvSkpOkoGFDoTWiCl3ehDjN7uDq0cwD7uq05UbwDQZEKr/AMjyf+M3pG2hBNl01lyXfU1BQPt4XrmcGgIRqc/aheF+Fbb/M2SOHdaQh2w8748Nav8pyUpj5fRldcmfAAPC7faS+BtbxDppIDqc4vNcTwCF9zntpkq5v/REtdd/alJuHuObQigsKPWhn62U2PHG/SjX5EkIFMVkd5t22N2biskTzgwGkGeCy3aOsYeLvpz00Vb2Al7gRbQxA027gzUYRA6Hj7GHnHcDQyeg7+j9x2vCXDUUNv3nemBW/QCss7CYj/vmtNpixLd7OPqdBPR9xvLhHf649Z5Wtyy/EI713FJ/i9chue+4qm+T7T339aC/bF72miM/ujiyD8IOEuJ3/bU7b9PE3HRY4cALpYtzZRr1JR1OW5OGIEYgk+FlBrIfsBmyPpdUCAfC+T9V2sh4dg+QRoAUiRebhlmBmldgtXuf0ss738yN/A1jwWU2tbQs7k/MOc3UKVfpcBJSpE7o3Cnc+bBYcZqM4xe7EJFj1xDlRUCGkkgoFzwtyyOhtGPD4myFK8lnJeXnIQbkln1jPs0+Causb9m4RUTCMSE+WSBpKt/J3ut+3L/HYHmGRQYt0pSXUf4LgBeTP6rA3JsugTbYhcrydzjkYv15Oh16CMk9VgGeJh8cqE/NCv17oJfRPfSNLQxW3UJkvEauGBl/VPo63yawsTKi233Y2+cxif+EeznVfXCZoensKatrZXDFT2AM9CWEFiV0yxMzDKPVavEg5LJ3IUAd/3XoCI83Y0/zAq/c08dn0RVwT4OyR8sIlMQ6l73JZDMr7C9Wl8tj66UaUex/Jcg/NqVnWsElfmOkGQqooRZgOgh0H8rdAl49YKby57oym4gyq0MlUuYLxvr7Pi0xZQr2FV1xq8YUa9sMRr67avhowmi1kHo3aTwlUSDHtKU7c/hKt59Zw8+ek+zTAWg3ntcIz8yohlRkvN3Q4bKcJ9C0dechWBb7Msq0LKGMMO7k+ION/BO+u2NhcrPVkyDYADhUbas45G5UhiRSaGK+I8FY9Zi5w+zFG/i9MWgi3/u3/O13+AK0BueTddwJNHno8iYRyunxBjd+iJ64LS9arW7QP4ovtZHfVkQ9Jmo/a6mWzkBf/AqTf4LULcoU5+pimvwCmS27YgX3NL1gmCa42zMatPI0BjwaD7I9RmMOuT3/VaYQ+rJZW+Y2nTLlLBeC351AHm">
  </div>
  <h1 id="pageTitle" class="PageTitleHOne"> My MarketBeat </h1>
  <div id="cphPrimaryContent_pnlMain">
    <script type="text/javascript">
      function LoadNewsletter() {
        document.getElementById("dvNewsletter").innerHTML = 'Loading your newsletter&hellip;';
        var chosenNewsletter = $('#cphPrimaryContent_ddlNewsletter').find(':selected').val();
        $.get("https://" + window.location.host + "/Users/WatchlistsHelpers.ashx?command=newsletter&chosenNewsletter=" + chosenNewsletter +
          "&accountid=11404962&hash=ED76DA9E8C730081AAA63523E07B43188216B9E945E2E73FC220C195568486801A72A1087B6485F28DB7EB9C42B5352A6C0DCEF062C392BCF357E7FC91F39664",
          function(data, status) {
            document.getElementById("dvNewsletter").innerHTML = data;
          });
      }

      function LoadCalendar(watchlistid) {
        $.get("https://" + window.location.host + "/Users/WatchlistsHelpers.ashx?command=calendar&watchlistid=" + watchlistid +
          "&accountid=11404962&hash=ED76DA9E8C730081AAA63523E07B43188216B9E945E2E73FC220C195568486801A72A1087B6485F28DB7EB9C42B5352A6C0DCEF062C392BCF357E7FC91F39664",
          function(data, status) {
            var dvCalendar = document.getElementById("dvCalendar");
            dvCalendar.innerHTML = data;
            scrollTable($(dvCalendar).find('table').stupidtable());
            $("#calendarFilter").change(function() {
              $("#dvCalendar table tbody tr").removeClass("hidden-table-row bottom-sort");
              if ($(this).val() !== "") {
                $("#dvCalendar table tbody tr:not(." + $(this).val() + ")").addClass("hidden-table-row bottom-sort");
              }
              scrollTable($(dvCalendar).find('table'));
            });
          });
      }

      function LoadRatings(watchlistid) {
        $.get("https://" + window.location.host + "/Users/WatchlistsHelpers.ashx?command=ratings&watchlistid=" + watchlistid +
          "&accountid=11404962&hash=ED76DA9E8C730081AAA63523E07B43188216B9E945E2E73FC220C195568486801A72A1087B6485F28DB7EB9C42B5352A6C0DCEF062C392BCF357E7FC91F39664",
          function(data, status) {
            var ratingsDiv = document.getElementById("dvRatings");
            ratingsDiv.innerHTML = data;
            scrollTable($(ratingsDiv).find('table').stupidtable());
          });
      }

      function LoadInsiderTrades(watchlistid) {
        $.get("https://" + window.location.host + "/Users/WatchlistsHelpers.ashx?command=insidertrades&watchlistid=" + watchlistid +
          "&accountid=11404962&hash=ED76DA9E8C730081AAA63523E07B43188216B9E945E2E73FC220C195568486801A72A1087B6485F28DB7EB9C42B5352A6C0DCEF062C392BCF357E7FC91F39664",
          function(data, status) {
            var dvInsiderTrades = document.getElementById("dvInsiderTrades");
            dvInsiderTrades.innerHTML = data;
            scrollTable($(dvInsiderTrades).find('table').stupidtable());
          });
      }

      function LoadEarnings(watchlistid) {
        $.get("https://" + window.location.host + "/Users/WatchlistsHelpers.ashx?command=earnings&watchlistid=" + watchlistid +
          "&accountid=11404962&hash=ED76DA9E8C730081AAA63523E07B43188216B9E945E2E73FC220C195568486801A72A1087B6485F28DB7EB9C42B5352A6C0DCEF062C392BCF357E7FC91F39664",
          function(data, status) {
            var dvEarnings = document.getElementById("dvEarnings");
            dvEarnings.innerHTML = data;
            scrollTable($(dvEarnings).find('table').stupidtable());
          });
      }

      function LoadPortfolioIdeas(watchlistid) {
        $.get("https://" + window.location.host + "/Users/WatchlistsHelpers.ashx?command=portfolioideas&watchlistid=" + watchlistid +
          "&accountid=11404962&hash=ED76DA9E8C730081AAA63523E07B43188216B9E945E2E73FC220C195568486801A72A1087B6485F28DB7EB9C42B5352A6C0DCEF062C392BCF357E7FC91F39664",
          function(data, status) {
            var dvPortfolioIdeas = document.getElementById("dvPortfolioIdeas");
            dvPortfolioIdeas.innerHTML = data;
            scrollTable($(dvPortfolioIdeas).find('table').stupidtable());
          });
      }

      function LoadMarketRank(watchlistid) {
        $.get("https://" + window.location.host + "/Users/WatchlistsHelpers.ashx?command=marketrank&watchlistid=" + watchlistid +
          "&accountid=11404962&hash=ED76DA9E8C730081AAA63523E07B43188216B9E945E2E73FC220C195568486801A72A1087B6485F28DB7EB9C42B5352A6C0DCEF062C392BCF357E7FC91F39664",
          function(data, status) {
            var dvMarketRank = document.getElementById("dvMarketRank");
            dvMarketRank.innerHTML = data;
            scrollTable($(dvMarketRank).find('table').stupidtable());
          });
      }

      function LoadSECFilings(watchlistid) {
        $.get("https://" + window.location.host + "/Users/WatchlistsHelpers.ashx?command=secfilings&watchlistid=" + watchlistid +
          "&accountid=11404962&hash=ED76DA9E8C730081AAA63523E07B43188216B9E945E2E73FC220C195568486801A72A1087B6485F28DB7EB9C42B5352A6C0DCEF062C392BCF357E7FC91F39664",
          function(data, status) {
            var dvSECFilings = document.getElementById("dvSECFilings");
            dvSECFilings.innerHTML = data;
            scrollTable($(dvSECFilings).find('table').stupidtable());
          });
      }

      function LoadSocial(watchlistid) {
        loadAndDrawMultiLineGraph("Media Mentions by Week", "portfolioMediaMentionsChart", "Week", "https://" + window.location.host + "/Users/WatchlistsHelpers.ashx?command=mediamentionsCSV&watchlistid=" + watchlistid +
          "&accountid=11404962&hash=ED76DA9E8C730081AAA63523E07B43188216B9E945E2E73FC220C195568486801A72A1087B6485F28DB7EB9C42B5352A6C0DCEF062C392BCF357E7FC91F39664");
        loadAndDrawMultiLineGraph("Reddit Mentions by Week", "portfolioRedditMentionsChart", "Week", "https://" + window.location.host + "/Users/WatchlistsHelpers.ashx?command=redditmentionsCSV&watchlistid=" + watchlistid +
          "&accountid=11404962&hash=ED76DA9E8C730081AAA63523E07B43188216B9E945E2E73FC220C195568486801A72A1087B6485F28DB7EB9C42B5352A6C0DCEF062C392BCF357E7FC91F39664");
        $.get("https://" + window.location.host + "/Users/WatchlistsHelpers.ashx?command=mentionedstockslists&watchlistid=" + watchlistid +
          "&accountid=11404962&hash=ED76DA9E8C730081AAA63523E07B43188216B9E945E2E73FC220C195568486801A72A1087B6485F28DB7EB9C42B5352A6C0DCEF062C392BCF357E7FC91F39664",
          function(data, status) {
            var dvmentionedstockslists = document.getElementById("dvmentionedstockslists");
            if (data == '') {
              document.getElementById("outerdivmentionedstockslists").style.maxHeight = 0;
            } else {
              dvmentionedstockslists.innerHTML = data;
            }
          });
        LoadStocktwits();
      };
    </script>
    <script type="text/javascript">
      //<![CDATA[
      Sys.WebForms.PageRequestManager._initialize('ctl00$cphPrimaryContent$scriptman1', 'form1', ['tctl00$cphPrimaryContent$pnlUpdateStockPrice', 'cphPrimaryContent_pnlUpdateStockPrice', 'tctl00$cphPrimaryContent$pnlFilterTable',
        'cphPrimaryContent_pnlFilterTable'
      ], ['ctl00$cphPrimaryContent$AutoMagicalTimer', 'cphPrimaryContent_AutoMagicalTimer'], [], 90, 'ctl00');
      //]]>
    </script>
    <!-- Add a Holding To Your Watchlist Modal -->
    <div id="Panel1" class="modal" tabindex="-1" role="dialog" aria-labelledby="Panel1Label" aria-modal="true">
      <div class="modal-dialog modal-dialog-centered" role="document">
        <div class="modal-content wl-modal-content">
          <div class="modal-header">
            <h2 class="modal-title p-0 h3 m-0 text-left" id="Panel1Label">Add a Holding to Your Watchlist</h2>
            <button type="button" class="close c-dark-blue" data-dismiss="modal" aria-label="Close" onclick="clearQueryString();"><span aria-hidden="true">×</span></button>
          </div>
          <div class="modal-body">
            <label class="top-label" for="cphPrimaryContent_ddlAssetType">Asset Type:</label>
            <select name="ctl00$cphPrimaryContent$ddlAssetType" id="cphPrimaryContent_ddlAssetType" class="top-labeled-input" aria-label="Asset Type">
              <option value="stocketf">Stock/ETF</option>
              <option value="cryptocurrency">Cryptocurrency</option>
              <option value="manual">Manual Asset</option>
            </select>
            <label id="searchLabel" class="top-label" for="cphPrimaryContent_txtSymbol">Search:</label>
            <input name="ctl00$cphPrimaryContent$txtSymbol" type="text" maxlength="200" id="cphPrimaryContent_txtSymbol" class="top-labeled-input autocompleteassets ui-autocomplete-input" data-lpignore="true" placeholder="Search and choose…"
              autocomplete="off">
            <input name="ctl00$cphPrimaryContent$txtAutoCompleteData" type="text" id="cphPrimaryContent_txtAutoCompleteData" aria-label="Search Options" style="display: none;">
            <div class="rfv-div-validation-triangle">
              <span id="cphPrimaryContent_rfvAutoCompleteData" style="color:#E25858;display:none;">Please choose an asset.</span>
            </div>
            <label id="amountLabel" class="top-label" for="cphPrimaryContent_txtSharesHeld">Shares Held:</label>
            <input name="ctl00$cphPrimaryContent$txtSharesHeld" id="cphPrimaryContent_txtSharesHeld" class="top-labeled-input" type="number" step="any">
            <label class="top-label" for="cphPrimaryContent_txtACPS">Avg. Cost Basis: <span id="cphPrimaryContent_spnCurrentPrice" class="modal-note"></span></label>
            <input name="ctl00$cphPrimaryContent$txtACPS" id="cphPrimaryContent_txtACPS" class="top-labeled-input" type="number" step="any">
            <div id="manualAssetOptions" style="display: none;">
              <label class="top-label" for="cphPrimaryContent_txtUnitPrice">Current Unit Value (USD):</label>
              <input name="ctl00$cphPrimaryContent$txtUnitPrice" id="cphPrimaryContent_txtUnitPrice" class="top-labeled-input" type="number" step="any">
              <label class="top-label" for="cphPrimaryContent_txtInvestmentYield">Investment Yield:</label>
              <div style="position: relative">
                <input name="ctl00$cphPrimaryContent$txtInvestmentYield" id="cphPrimaryContent_txtInvestmentYield" class="top-labeled-input" type="number" step="any"><span style="position: absolute; right: 27px; top: 4px; color: #757575;">%</span>
              </div>
            </div>
            <label class="top-label" for="cphPrimaryContent_ddlWatchlist">Watchlist:</label>
            <select name="ctl00$cphPrimaryContent$ddlWatchlist" id="cphPrimaryContent_ddlWatchlist" class="top-labeled-input" aria-label="Watchlist to add holding to">
              <option value="2519330">My Default Watchlist</option>
            </select>
            <fieldset id="instantAlerts">
              <legend class="top-label">Alerts:</legend>
              <div id="newsAlerts">
                <div class="custom-control custom-checkbox mb-1 ml-2">
                  <input id="cphPrimaryContent_chkInstant" type="checkbox" name="ctl00$cphPrimaryContent$chkInstant"><label for="cphPrimaryContent_chkInstant">Enable Email News Alerts</label>
                </div>
                <div class="custom-control custom-checkbox mb-1 ml-2">
                  <span class="aspNetDisabled"><input id="cphPrimaryContent_chkSMS" type="checkbox" name="ctl00$cphPrimaryContent$chkSMS" disabled="disabled"><label for="cphPrimaryContent_chkSMS">Enable SMS News Alerts</label></span>
                </div>
                <div class="custom-control custom-checkbox mb-1 ml-2">
                  <span class="aspNetDisabled"><input id="cphPrimaryContent_chkIncludeNewsletter" type="checkbox" name="ctl00$cphPrimaryContent$chkIncludeNewsletter" disabled="disabled"><label for="cphPrimaryContent_chkIncludeNewsletter">Include in
                      Newsletter</label></span>
                </div>
              </div>
              <div class="custom-control custom-checkbox mb-1 ml-2">
                <input id="cphPrimaryContent_chkPriceAlerts" type="checkbox" name="ctl00$cphPrimaryContent$chkPriceAlerts"><label for="cphPrimaryContent_chkPriceAlerts">Set Up Price Alerts</label>
              </div>
              <div id="priceAlerts" style="display: none; margin: 5px 16px;">
                <label for="cphPrimaryContent_txtAlertAbove">Alert above <span id="cphPrimaryContent_txtAlertAbove_CurrencyLabel" class="currency-label"></span></label>
                <input name="ctl00$cphPrimaryContent$txtAlertAbove" id="cphPrimaryContent_txtAlertAbove" type="number" step="any" style="width:100px;"><br>
                <label for="cphPrimaryContent_txtAlertBelow">Alert below <span id="cphPrimaryContent_txtAlertBelow_CurrencyLabel" class="currency-label"></span></label>
                <input name="ctl00$cphPrimaryContent$txtAlertBelow" id="cphPrimaryContent_txtAlertBelow" type="number" step="any" style="width:100px;">
              </div>
              <a href="/manage/alerts/" class="font-8" target="_blank">Manage All Alerts and Alert Types <span class="ml-1 fa-regular fa-arrow-up-right-from-square font-8"></span></a>
            </fieldset>
            <label class="top-label" for="cphPrimaryContent_txtUserNotes" style="margin-top: 10px">Notes:</label>
            <textarea name="ctl00$cphPrimaryContent$txtUserNotes" rows="2" cols="20" id="cphPrimaryContent_txtUserNotes" class="top-labeled-input"></textarea>
          </div>
          <div class="modal-footer buttons d-block">
            <button type="button" class="modal-button btn btn-secondary" data-dismiss="modal" onclick="clearQueryString();">Cancel</button> &nbsp; <input type="submit" name="ctl00$cphPrimaryContent$btnAddStock" value="Add Holding"
              onclick="addSubmittingStyle(this, 'Val2');WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$cphPrimaryContent$btnAddStock&quot;, &quot;&quot;, true, &quot;Val2&quot;, &quot;&quot;, false, false))"
              id="cphPrimaryContent_btnAddStock" class="modal-button btn btn-primary" autopostback="true" style="width:175px;">&nbsp;
          </div>
        </div>
      </div>
    </div>
    <!-- End Add a Holding To Your Watchlist Modal -->
    <!-- Add Multiple Stocks to Your Watchlist Modal -->
    <div id="Panel2" class="modal" tabindex="-1" role="dialog" aria-labeledby="Panel2Label" aria-hidden="true">
      <div class="modal-dialog modal-dialog-centered" role="document" style="max-width: 689px">
        <div class="modal-content wl-modal-content" style="width: 689px">
          <div class="modal-header">
            <h2 class="modal-title p-0 h3 m-0 text-left" id="Panel2Label">Add Multiple Holdings to Your Watchlist</h2>
            <button type="button" class="close c-dark-blue" data-dismiss="modal" aria-label="Close" onclick="clearQueryString();"><span aria-hidden="true">×</span></button>
          </div>
          <div class="modal-body">
            <div class="row narrow-gutter-row">
              <div class="col-md-3">
                <label class="top-label" for="cphPrimaryContent_ddlAssetTypeMultiple">Asset Type:</label>
                <select name="ctl00$cphPrimaryContent$ddlAssetTypeMultiple" id="cphPrimaryContent_ddlAssetTypeMultiple" class="top-labeled-input">
                  <option value="stocketf">Stock/ETF</option>
                  <option value="cryptocurrency">Cryptocurrency</option>
                </select>
              </div>
              <div class="col-md-9">
                <label id="searchLabelMultiple" class="top-label" for="cphPrimaryContent_txtSearchMultiple">Search:</label>
                <input name="ctl00$cphPrimaryContent$txtSearchMultiple" type="text" maxlength="30" id="cphPrimaryContent_txtSearchMultiple" class="top-labeled-input autocompleteassetsmultiple ui-autocomplete-input" data-lpignore="true"
                  placeholder="Search and choose…" autocomplete="off">
              </div>
              <div id="cphPrimaryContent_chosenAssets" class="col-sm-12">
                <div id="requiredMultipleAssets" class="rfv-div-validation-triangle" style="display: none; color: #e25858"> Please select some assets using the search box. </div>
              </div>
            </div>
            <label class="top-label" for="cphPrimaryContent_ddlWatchlistMultiple">Watchlist:</label>
            <select name="ctl00$cphPrimaryContent$ddlWatchlistMultiple" id="cphPrimaryContent_ddlWatchlistMultiple" class="top-labeled-input" aria-label="Watchlist to add holdings to">
              <option value="2519330">My Default Watchlist</option>
            </select>
            <fieldset id="alertsMultiple" style="display: none;font-size:.9em">
              <legend class="top-label">Alerts (applies to stocks only):</legend>
              <div class="multiple-checks">
                <div class="custom-control custom-checkbox mb-1 ml-2">
                  <input id="cphPrimaryContent_chkEmailAlertsMultiple" type="checkbox" name="ctl00$cphPrimaryContent$chkEmailAlertsMultiple"><label for="cphPrimaryContent_chkEmailAlertsMultiple">Enable Email News Alerts</label>
                </div>
                <div class="custom-control custom-checkbox mb-1 ml-2">
                  <span class="aspNetDisabled"><input id="cphPrimaryContent_chkSMSMultiple" type="checkbox" name="ctl00$cphPrimaryContent$chkSMSMultiple" disabled="disabled"><label for="cphPrimaryContent_chkSMSMultiple">Enable SMS News
                      Alerts</label></span>
                </div>
                <div class="custom-control custom-checkbox mb-1 ml-2">
                  <span class="aspNetDisabled"><input id="cphPrimaryContent_chkIncludeNewsletterMultiple" type="checkbox" name="ctl00$cphPrimaryContent$chkIncludeNewsletterMultiple" disabled="disabled"><label
                      for="cphPrimaryContent_chkIncludeNewsletterMultiple">Include in Newsletter</label></span>
                </div>
                <br>
              </div>
            </fieldset>
            <a href="/manage/alerts/" class="font-8" target="_blank">Manage All Alerts and Alert Types <span class="ml-1 fa-regular fa-arrow-up-right-from-square font-8"></span></a>
          </div>
          <div class="modal-footer buttons d-block">
            <button type="button" class="modal-button btn btn-secondary" data-dismiss="modal" onclick="clearQueryString();">Cancel</button> &nbsp; <input type="submit" name="ctl00$cphPrimaryContent$btnAddStocksMultiple" value="Add Holdings"
              onclick="return checkForMultipleAssets();" id="cphPrimaryContent_btnAddStocksMultiple" class="modal-button btn btn-primary" autopostback="true" style="width:175px;">
          </div>
        </div>
      </div>
    </div>
    <!-- End Add Multiple Stocks to Your Watchlist Modal-->
    <div id="Panel3" class="modal" tabindex="-1" role="dialog" aria-labelledby="Panel3Label" aria-modal="true">
      <div class="modal-dialog modal-dialog-centered" role="document">
        <div class="modal-content wl-modal-content">
          <div class="modal-header">
            <h2 class="modal-title p-0 h3 m-0 text-left" id="Panel3Label">Create a New Watchlist</h2>
            <button type="button" class="close c-dark-blue" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
          </div>
          <div class="modal-body">
            <label class="top-label" for="cphPrimaryContent_txtWatchlistName">Watchlist Name:</label>
            <input name="ctl00$cphPrimaryContent$txtWatchlistName" type="text" maxlength="100" id="cphPrimaryContent_txtWatchlistName" class="top-labeled-input">
            <div class="rfv-div-validation-triangle">
              <span id="cphPrimaryContent_rfvWatchlistName" style="color:Red;display:none;">Required</span>
            </div>
          </div>
          <div class="modal-footer buttons d-block">
            <button type="button" class="modal-button btn btn-secondary" data-dismiss="modal">Cancel</button> &nbsp; &nbsp;
          </div>
        </div>
      </div>
    </div>
    <!-- End Create a Watchlist Modal -->
    <!-- Edit a Watchlist Modal -->
    <div id="Panel5" class="modal" tabindex="-1" role="dialog" aria-labelledby="Panel5Label" aria-modal="true">
      <div class="modal-dialog modal-dialog-centered" role="document">
        <div class="modal-content wl-modal-content">
          <div class="modal-header">
            <h2 class="modal-title p-0 h3 m-0 text-left" id="Panel5Label">Edit Watchlist</h2>
            <button type="button" class="close c-dark-blue" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
          </div>
          <div class="modal-body">
            <input type="hidden" name="ctl00$cphPrimaryContent$hdnEditWatchlistId" id="cphPrimaryContent_hdnEditWatchlistId">
            <label for="cphPrimaryContent_txtWatchListEditName" class="top-label">Watchlist Name:</label>
            <input name="ctl00$cphPrimaryContent$txtWatchListEditName" type="text" maxlength="100" id="cphPrimaryContent_txtWatchListEditName" class="top-labeled-input">
            <div class="rfv-div-validation-triangle">
              <span id="cphPrimaryContent_rfvWatchListEditName" style="color:Red;display:none;">Required</span>
            </div>
            <div id="displayPriority">
              <label for="cphPrimaryContent_ddlWatchListDisplayPriorityEdit" class="top-label">Display Priority:</label>
              <select name="ctl00$cphPrimaryContent$ddlWatchListDisplayPriorityEdit" id="cphPrimaryContent_ddlWatchListDisplayPriorityEdit" class="top-labeled-input">
                <option value="10">10 (Highest)</option>
                <option value="9">9</option>
                <option value="8">8</option>
                <option value="7">7</option>
                <option value="6">6</option>
                <option value="5">5</option>
                <option value="4">4</option>
                <option value="3">3</option>
                <option value="2">2</option>
                <option value="1">1 (Lowest)</option>
              </select>
            </div>
          </div>
          <div class="modal-footer buttons d-block">
            <button type="button" class="modal-button btn btn-secondary" data-dismiss="modal">Cancel</button> &nbsp; <input type="submit" name="ctl00$cphPrimaryContent$btnWatchlistSave" value="Save Watchlist"
              onclick="addSubmittingStyle(this, 'Val5');WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$cphPrimaryContent$btnWatchlistSave&quot;, &quot;&quot;, true, &quot;Val5&quot;, &quot;&quot;, false, false))"
              id="cphPrimaryContent_btnWatchlistSave" class="modal-button btn btn-primary" autopostback="true">
          </div>
        </div>
      </div>
    </div>
    <!-- End Edit a Watchlist Modal -->
    <!-- Edit Stock Details Modal  -->
    <div id="Panel4" class="modal" tabindex="-1" role="dialog" aria-labelledby="Panel4Label" aria-modal="true">
      <div class="modal-dialog modal-dialog-centered" role="document">
        <div class="modal-content wl-modal-content">
          <div class="modal-header">
            <h2 class="modal-title p-0 h3 m-0 text-left" id="Panel4Label">Edit Details for <span id="stockSymbol"></span></h2>
            <button type="button" class="close c-dark-blue" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
          </div>
          <div class="modal-body">
            <input type="hidden" name="ctl00$cphPrimaryContent$hdnEditStockId" id="cphPrimaryContent_hdnEditStockId">
            <div id="EditStockBasics">
              <label class="top-label" id="amountLabelEdit" for="cphPrimaryContent_txtSharesHeldEdit">Shares Held:</label>
              <input name="ctl00$cphPrimaryContent$txtSharesHeldEdit" id="cphPrimaryContent_txtSharesHeldEdit" class="top-labeled-input" type="number" step="any">
              <label class="top-label" for="cphPrimaryContent_txtACPSEdit">Avg. Cost Basis: <span id="edit-current-price" class="modal-note"></span></label>
              <input name="ctl00$cphPrimaryContent$txtACPSEdit" id="cphPrimaryContent_txtACPSEdit" class="top-labeled-input" type="number" step="any">
              <div id="manualAssetOptionsEdit" style="display: none;">
                <label class="top-label" for="cphPrimaryContent_txtUnitPriceEdit">Current Unit Value:</label>
                <input name="ctl00$cphPrimaryContent$txtUnitPriceEdit" id="cphPrimaryContent_txtUnitPriceEdit" class="top-labeled-input" type="number" step="any">
                <label class="top-label" for="cphPrimaryContent_txtInvestmentYieldEdit">Investment Yield:</label>
                <div style="position: relative">
                  <input name="ctl00$cphPrimaryContent$txtInvestmentYieldEdit" id="cphPrimaryContent_txtInvestmentYieldEdit" class="top-labeled-input" type="number" step="any"><span
                    style="position: absolute; right: 27px; top: 4px; color: #757575;">%</span>
                </div>
              </div>
              <label class="top-label" for="cphPrimaryContent_ddlWatchlistEdit">Watchlist:</label>
              <select name="ctl00$cphPrimaryContent$ddlWatchlistEdit" id="cphPrimaryContent_ddlWatchlistEdit" class="top-labeled-input">
                <option value="2519330">My Default Watchlist</option>
              </select>
            </div>
            <fieldset id="instantAlertsEdit">
              <legend class="top-label">Alerts:</legend>
              <div id="newsAlertsEdit">
                <div class="custom-control custom-checkbox mb-1 ml-2 stocketf-alert-option">
                  <input id="cphPrimaryContent_chkEmailAlertsEdit" type="checkbox" name="ctl00$cphPrimaryContent$chkEmailAlertsEdit"><label for="cphPrimaryContent_chkEmailAlertsEdit">Enable Email News Alerts</label>
                </div>
                <div class="custom-control custom-checkbox mb-1 ml-2 stocketf-alert-option">
                  <span class="aspNetDisabled"><input id="cphPrimaryContent_chkSMSAlertsEdit" type="checkbox" name="ctl00$cphPrimaryContent$chkSMSAlertsEdit" disabled="disabled"><label for="cphPrimaryContent_chkSMSAlertsEdit">Enable SMS News
                      Alerts</label></span>
                </div>
                <div class="custom-control custom-checkbox mb-1 ml-2">
                  <span class="aspNetDisabled"><input id="cphPrimaryContent_chkNewsletterEdit" type="checkbox" name="ctl00$cphPrimaryContent$chkNewsletterEdit" disabled="disabled"><label for="cphPrimaryContent_chkNewsletterEdit">Include In
                      Newsletter</label></span>
                </div>
              </div>
              <div class="custom-checkbox custom-control mb-1 ml-2">
                <input id="cphPrimaryContent_chkPriceAlertsEdit" type="checkbox" name="ctl00$cphPrimaryContent$chkPriceAlertsEdit"><label for="cphPrimaryContent_chkPriceAlertsEdit">Set Up Price Alerts</label>
              </div>
              <div id="priceAlertsEdit" style="display: none; margin: 5px 16px;">
                <label for="cphPrimaryContent_txtAlertAboveEdit">Alert above <span class="currency-label"></span></label>
                <input name="ctl00$cphPrimaryContent$txtAlertAboveEdit" id="cphPrimaryContent_txtAlertAboveEdit" type="number" step="any" style="width:100px;"><br>
                <label for="cphPrimaryContent_txtAlertBelowEdit">Alert below <span class="currency-label"></span></label>
                <input name="ctl00$cphPrimaryContent$txtAlertBelowEdit" id="cphPrimaryContent_txtAlertBelowEdit" type="number" step="any" style="width:100px;">
              </div>
              <a href="/manage/alerts/" class="font-8" target="_blank">Manage All Alerts and Alert Types <span class="ml-1 fa-regular fa-arrow-up-right-from-square font-8"></span></a>
            </fieldset>
            <label class="top-label" style="margin-top: 10px" for="cphPrimaryContent_txtUserNotesEdit">Notes:</label>
            <textarea name="ctl00$cphPrimaryContent$txtUserNotesEdit" rows="4" cols="20" id="cphPrimaryContent_txtUserNotesEdit" class="top-labeled-input"></textarea>
          </div>
          <div class="modal-footer buttons d-block">
            <button type="button" class="modal-button btn btn-secondary" data-dismiss="modal">Cancel</button> &nbsp; <input type="submit" name="ctl00$cphPrimaryContent$btnUpdate" value="Update Holding" onclick="addSubmittingStyle(this, 'Val6');"
              id="cphPrimaryContent_btnUpdate" class="modal-button btn btn-primary" autopostback="true">&nbsp;
          </div>
        </div>
      </div>
    </div>
    <!-- End Edit Stock Details Modal -->
    <!-- Delete Stock Modal -->
    <div id="Panel6" class="modal" tabindex="-1" role="dialog" aria-labelledby="Panel6Label" aria-modal="true">
      <div class="modal-dialog modal-dialog-centered" role="document">
        <div class="modal-content wl-modal-content">
          <div class="modal-header">
            <h2 class="modal-title p-0 h3 m-0 text-left" id="Panel6Label">Delete Holding from Watchlist</h2>
            <button type="button" class="close c-dark-blue" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
          </div>
          <div class="modal-body">
            <input type="hidden" name="ctl00$cphPrimaryContent$hdnDeleteStockId" id="cphPrimaryContent_hdnDeleteStockId">
            <p>Are you sure you want to delete <span id="deleteStockSymbol"></span> from this watchlist?</p>
          </div>
          <div class="modal-footer buttons d-block">
            <button type="button" class="modal-button btn btn-secondary" data-dismiss="modal">Cancel</button> &nbsp; <input type="submit" name="ctl00$cphPrimaryContent$btnDelete" value="Delete Holding" onclick="addSubmittingStyle(this, 'none');"
              id="cphPrimaryContent_btnDelete" class="modal-button btn btn-primary" autopostback="true">&nbsp;
          </div>
        </div>
      </div>
    </div>
    <!-- End Delete Stock Modal -->
    <!-- Delete Watchlist Modal -->
    <div id="Panel7" class="modal" tabindex="-1" role="dialog" aria-labelledby="Panel7Label" aria-modal="true">
      <div class="modal-dialog modal-dialog-centered" role="document">
        <div class="modal-content wl-modal-content">
          <div class="modal-header">
            <h2 class="modal-title p-0 h3 m-0 text-left" id="Panel7Label">Delete Watchlist</h2>
            <button type="button" class="close c-dark-blue" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
          </div>
          <div class="modal-body">
            <input type="hidden" name="ctl00$cphPrimaryContent$hdnDeleteWatchlistId" id="cphPrimaryContent_hdnDeleteWatchlistId">
            <p>Are you sure you want to delete your watchlist "<span id="deleteWatchlistName"></span>"?</p>
            <label class="d-block bold c-red mb-1" for="cphPrimaryContent_txtConfirmDelete">Type “DELETE ALL” to confirm that you want to delete this watchlist and ALL your holdings on this watchlist:</label>
            <input name="ctl00$cphPrimaryContent$txtConfirmDelete" type="text" id="cphPrimaryContent_txtConfirmDelete" class="top-labeled-input">
            <div class="rfv-div-validation-triangle">
              <span id="cphPrimaryContent_rfvConfirmDelete" style="color:#E25858;display:none;">Type “DELETE ALL” to confirm</span>
              <span id="cphPrimaryContent_rgxConfirmDelete" validateemptytext="true" style="color:#E25858;display:none;">Type “DELETE ALL” to confirm</span>
            </div>
          </div>
          <div class="modal-footer buttons d-block">
            <button type="button" class="modal-button btn btn-secondary" data-dismiss="modal">Cancel</button> &nbsp; <input type="submit" name="ctl00$cphPrimaryContent$btnDeleteWatchlist" value="Delete Watchlist"
              onclick="addSubmittingStyle(this, 'ValDeleteWatchlist');WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$cphPrimaryContent$btnDeleteWatchlist&quot;, &quot;&quot;, true, &quot;ValDeleteWatchlist&quot;, &quot;&quot;, false, false))"
              id="cphPrimaryContent_btnDeleteWatchlist" class="modal-button btn btn-primary" autopostback="true">&nbsp;
          </div>
        </div>
      </div>
    </div>
    <!-- End Delete Watchlist Modal -->
    <!-- Modal for Most Bulk Actions -->
    <div id="Panel8" class="modal" tabindex="-1" role="dialog" aria-labelledby="Panel8Label" aria-modal="true">
      <div class="modal-dialog modal-dialog-centered" role="document">
        <div class="modal-content wl-modal-content">
          <div class="modal-header">
            <h2 class="bulkActionName modal-title p-0 h3 m-0 text-left" id="Panel8Label">Bulk Action</h2>
          </div>
          <div class="modal-body">
            <input type="hidden" name="ctl00$cphPrimaryContent$hdnBulkStocksList" id="cphPrimaryContent_hdnBulkStocksList">
            <input type="hidden" name="ctl00$cphPrimaryContent$hdnBulkAction" id="cphPrimaryContent_hdnBulkAction">
            <p>Are you sure you want to <span class="bulkActionName"></span>?</p>
          </div>
          <div class="modal-footer buttons d-block">
            <button type="button" class="modal-button btn btn-secondary" data-dismiss="modal">Cancel</button> &nbsp; <input type="submit" name="ctl00$cphPrimaryContent$btnBulkAction" value="OK" onclick="addSubmittingStyle(this, 'none');"
              id="cphPrimaryContent_btnBulkAction" class="modal-button btn btn-primary" autopostback="true">&nbsp;
          </div>
        </div>
      </div>
    </div>
    <!-- End Modal for Most Bulk Actions -->
    <!-- Modal for Bulk Move to New Watchlist -->
    <div id="Panel9" class="modal" tabindex="-1" role="dialog" aria-labelledby="Panel9Label" aria-modal="true">
      <div class="modal-dialog modal-dialog-centered" role="document">
        <div class="modal-content wl-modal-content">
          <div class="modal-header">
            <h2 class="modal-title p-0 h3 m-0 text-left" id="Panel9Label">Move Holdings to a New Watchlist</h2>
          </div>
          <div class="modal-body">
            <input type="hidden" name="ctl00$cphPrimaryContent$hdnBulkStocksListNew" id="cphPrimaryContent_hdnBulkStocksListNew">
            <p>Create a new watchlist to move these holdings to:</p>
            <label class="top-label" for="cphPrimaryContent_txtBulkWatchlistNew">Watchlist Name:</label>
            <input name="ctl00$cphPrimaryContent$txtBulkWatchlistNew" type="text" maxlength="100" id="cphPrimaryContent_txtBulkWatchlistNew" class="top-labeled-input">
            <div class="rfv-div-validation-triangle">
              <span id="cphPrimaryContent_RequiredFieldValidator2" style="color:#E25858;display:none;">Required</span>
            </div>
          </div>
          <div class="modal-footer buttons d-block">
            <button type="button" class="modal-button btn btn-secondary" data-dismiss="modal">Cancel</button> &nbsp; <input type="submit" name="ctl00$cphPrimaryContent$btnBulkWatchlistNew" value="Create and Move"
              onclick="addSubmittingStyle(this, 'Val9');WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$cphPrimaryContent$btnBulkWatchlistNew&quot;, &quot;&quot;, true, &quot;Val9&quot;, &quot;&quot;, false, false))"
              id="cphPrimaryContent_btnBulkWatchlistNew" class="modal-button btn btn-primary" autopostback="true">&nbsp;
          </div>
        </div>
      </div>
    </div>
    <!-- End Modal for Bulk Move to New Watchlist -->
    <!-- Buttons -->
    <div class="row narrow-gutter-row">
      <div class="col-md-2 watchlist-div">
        <div class="top-label-wrapper">
          <select name="ctl00$cphPrimaryContent$ddlSelectAWatchList" onchange="javascript:setTimeout('__doPostBack(\'ctl00$cphPrimaryContent$ddlSelectAWatchList\',\'\')', 0)" id="cphPrimaryContent_ddlSelectAWatchList"
            class="watchlist-select top-labeled-input mb-1" aria-label="Select Watchlist to View">
            <option selected="selected" value="-1">All Watchlists</option>
            <option value="2519330">My Default Watchlist</option>
          </select>
          <label class="top-label mb-0"><strong>Watchlist</strong></label>
        </div>
      </div>
      <div class="col-md-10 addbuttons">
        <a href="https://www.marketbeat.com/subscribe/all-access/?UserID=11404962&amp;ReferralType=WatchlistsPageAddButton" title="You have reached your limit of five stocks on MarketBeat's&nbsp;free plan.
Upgrade to MarketBeat All Access to add more stocks." class=" btn btn-secondary d-flex d-sm-inline-flex" style="line-height:1.5"><span class="float-left mr-2 fa-regular fa-square-plus d-inline d-sm-none d-xl-inline"></span> <span>Add a Holding</span></a>
      </div>
    </div>
    <!-- End Buttons -->
    <!-- Tabs -->
    <div class="scroll-nav-tabs">
      <div class="nav nav-tabs my-marketbeat-tabs" role="tablist" aria-label="My MarketBeat Options" style="transform: translateX(0px);">
        <a id="portfoliotab" class="nav-link active" href="#pan1" data-toggle="tab" role="tab" aria-selected="true" aria-controls="pan1" style="pointer-events: auto; cursor: pointer;">Portfolio Overview</a>
        <a id="performancetab" class="nav-link" href="#pan2" data-toggle="tab" onclick="LoadPerformanceGraph(); UpdatePerformanceGraph();" role="tab" aria-selected="false" tabindex="-1" aria-controls="pan2" style="pointer-events: auto; cursor: pointer;">Performance</a>
        <a id="insightstab" class="nav-link" href="#pan2b" data-toggle="tab" role="tab" aria-selected="false" tabindex="-1" aria-controls="pan2b" style="pointer-events: auto; cursor: pointer;">Insights</a>
        <a id="headlinestab" class="nav-link" href="#pan3" data-toggle="tab" role="tab" aria-selected="false" tabindex="-1" aria-controls="pan3" onclick="$('#cphPrimaryContent_btnDrawHeadlines').click(); this.onclick=null;" style="pointer-events: auto; cursor: pointer;">Headlines</a>
        <a id="calendartab" class="nav-link" href="#pan5" data-toggle="tab" onclick="LoadCalendar($('.watchlist-select option:selected').val()); this.onclick=null;" role="tab" aria-selected="false" tabindex="-1" aria-controls="pan5" style="pointer-events: auto; cursor: pointer;">Calendar</a>
        <a id="ratingstab" class="nav-link" href="#pan4" data-toggle="tab" onclick="LoadRatings($('.watchlist-select option:selected').val()); this.onclick=null;" role="tab" aria-selected="false" tabindex="-1" aria-controls="pan4" style="pointer-events: auto; cursor: pointer;">Ratings</a>
        <a id="insidertradestab" class="nav-link" href="#pan6" data-toggle="tab" onclick="LoadInsiderTrades($('.watchlist-select option:selected').val()); this.onclick=null;" role="tab" aria-selected="false" tabindex="-1" aria-controls="pan6" style="pointer-events: auto; cursor: pointer;">Insider Trades</a>
        <a id="earningstab" class="nav-link" href="#pan7" data-toggle="tab" onclick="LoadEarnings($('.watchlist-select option:selected').val()); this.onclick=null;" role="tab" aria-selected="false" tabindex="-1" aria-controls="pan7" style="pointer-events: auto; cursor: pointer;">Earnings</a>
        <a id="secfilingstab" class="nav-link" href="#pan8" data-toggle="tab" onclick="LoadSECFilings($('.watchlist-select option:selected').val()); this.onclick=null;" role="tab" aria-selected="false" tabindex="-1" aria-controls="pan8" style="pointer-events: auto; cursor: pointer;">SEC Filings</a>
        <a id="socialtab" class="nav-link" href="#pan9" data-toggle="tab" onclick="LoadSocial($('.watchlist-select option:selected').val()); this.onclick=null; " role="tab" aria-selected="false" tabindex="-1" aria-controls="pan9" style="pointer-events: auto; cursor: pointer;">Social</a>
        <a id="newslettertab" class="nav-link" href="#pan10" data-toggle="tab" onclick="LoadNewsletter(); this.onclick=null;" role="tab" aria-selected="false" tabindex="-1" aria-controls="pan10" style="pointer-events: auto; cursor: pointer;">Newsletter</a>
        <a id="ideastab" class="nav-link" href="#pan11" data-toggle="tab" onclick="LoadPortfolioIdeas($('.watchlist-select option:selected').val()); this.onclick=null;" role="tab" aria-selected="false" tabindex="-1" aria-controls="pan11" style="pointer-events: auto; cursor: pointer;">Portfolio Ideas</a>
        <a id="marketranktab" class="nav-link" href="#pan12" data-toggle="tab" onclick="LoadMarketRank($('.watchlist-select option:selected').val()); this.onclick=null;" role="tab" aria-selected="false" tabindex="-1" aria-controls="pan12" style="pointer-events: auto; cursor: pointer;">MarketRank™</a>
      </div>
      <div class="left-button"><span class="fa-regular fa-angle-right font-8"></span></div>
      <div class="right-button"><span class="fa-regular fa-angle-right font-8"></span></div>
    </div>
    <!-- End Tabs -->
    <div class="tab-content start-gray-bg">
      <!-- My Portfolio -->
      <div id="pan1" class="tab-pane active position-relative" role="tabpanel" aria-labelledby="portfoliotab" tabindex="0">
        <h2 class="sr-only">My Portfolio</h2>
        <div class="row narrow-gutter-row">
          <div id="cphPrimaryContent_pnlBulkActionTop" class="col col-sm-6 col-lg-4">
            <div class="top-label-wrapper">
              <div class="input-group">
                <select name="ctl00$cphPrimaryContent$ddlBulkActionsTop" id="cphPrimaryContent_ddlBulkActionsTop" class="bulkActionSelect m-0 top-labeled-input" aria-label="Bulk Actions" style="width: calc(100% - 100px);">
                  <option value="0">Select a Bulk Action</option>
                  <option value="bulkDelete">Delete These Holdings</option>
                  <option value="bulkEnableEmail">Enable Email Alerts for These Holdings</option>
                  <option value="bulkDisableEmail">Disable Email Alerts for These Holdings</option>
                  <option value="bulkMove2519330">Move Holdings to 'My Default Watchlist'</option>
                  <option value="bulkMoveNew">Move Holdings to a New Watchlist</option>
                </select>
                <div class="input-group-append">
                  <button type="button" onclick="bulkActionModalShow('cphPrimaryContent_pnlBulkActionTop');" class="btn btn-primary btn-inline-input" style="padding:9px">Apply<span class="fa-regular fa-square-check ml-2"></span></button>
                </div>
              </div>
              <span class="top-label">Bulk Actions</span>
            </div>
            <p class="bulkActionWarning font-8 pt-1"></p>
          </div>
          <div class="col-12 col-sm-6 col-lg-4 position-relative" style="z-index: 100;">
            <div class="btn-group w-100" role="group">
              <div class="top-label-wrapper input-group dropdown" id="customizeColumnsGroup">
                <div class="moreinfo bg-white" tabindex="0" style="right: 2.5px;">
                  <span class="c-gray fa-regular fa-circle-question" aria-hidden="true"></span>
                  <span class="tooltiptext dark-mode toptip" id="tooltip-columns">Customize your watchlist columns by checking the ones you want to include and dragging them into the order you prefer.</span>
                </div>
                <button class="btn dropdown-toggle top-labeled-input" style="padding-left: .7rem;" type="button" id="dropdownColumns" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" data-display="static"
                  aria-describedby="tooltip-columns">
                  <span class="top-label">Select and Rearrange Columns</span>
                  <span class="top-label-selected"> 7 selected</span>
                </button>
                <ul id="columnChoiceList" style="display: none; margin-top: -1px;" class="custom-control custom-checkbox sortable dropdown-menu allow-focus nice-scroll position-absolute ui-sortable" aria-labelledby="dropdownColumns">
                  <li class="ui-sortable-handle"><input class="d-none" id="columnChoiceSubheaderClassicColumns" type="checkbox" value="SubheaderClassicColumns"><label class="subheader" for="columnChoiceSubheaderClassicColumns"> <span
                        class="list-item-inner">Classic Columns</span></label></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceCurrentPriceAndChange" type="checkbox" value="CurrentPriceAndChange" checked=""><label for="columnChoiceCurrentPriceAndChange"> <span
                          class="label-inner">Current Price and Change</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The current price of a listed asset and the amount the price has changed during the most recent trading period.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceHoldingValue" type="checkbox" value="HoldingValue"><label for="columnChoiceHoldingValue"> <span class="label-inner">Holding
                          Value</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Holding value is calculated as the current price of the holding times the holding size.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceCostBasis" type="checkbox" value="CostBasis"><label for="columnChoiceCostBasis"> <span class="label-inner">Cost Basis</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Cost basis is the original purchase price of each share of the asset.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceROI" type="checkbox" value="ROI"><label for="columnChoiceROI"> <span class="label-inner">ROI</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Return on investment (ROI) is a measurement that shows your profit on an investment as a percentage of your initial investment.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/return-on-investment-roi-defined/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoicePERatio" type="checkbox" value="PERatio" checked=""><label for="columnChoicePERatio"> <span class="label-inner">PE Ratio</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The price to earnings ratio (P/E) measures its current share price relative to its per-share earnings. The ratio is used in valuing companies.
                          <a target="_blank" href="https://www.marketbeat.com/market-data/low-pe-stocks/#price-to-earnings-ratio-pe">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceBeta" type="checkbox" value="Beta" checked=""><label for="columnChoiceBeta"> <span class="label-inner">Beta</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Beta is the result of a calculation that measures the relative volatility of a stock in correlation to a particular standard.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/what-is-in-beta-stock-selection/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceAnnualDividend" type="checkbox" value="AnnualDividend" checked=""><label for="columnChoiceAnnualDividend"> <span class="label-inner">Annual
                          Dividend</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The total amount of dividend dispersed per share per year.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/investing-dividend-stocks/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceConsensusRating" type="checkbox" value="ConsensusRating" checked=""><label for="columnChoiceConsensusRating"> <span class="label-inner">Consensus
                          Rating</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Analyst ratings or stock ratings, such as “Buy”, “Sell”, and “Hold” are an evaluation of a stock's expected performance and/or it's risk level as determined
                          by a rating agency or brokerage firm. Consensus is the summary/average of those ratings.
                          <a target="_blank" href="https://www.marketbeat.com/ratings/#stock-ratings-recommendations-analysts-upgrades-downgrades">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceConsensusPriceTarget" type="checkbox" value="ConsensusPriceTarget" checked=""><label for="columnChoiceConsensusPriceTarget"> <span
                          class="label-inner">Consensus Price Target</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">A price target is an investment analyst’s or adviser’s estimate of the future price level of an asset, such as a stock, futures contract, commodity or
                          exchange-traded fund (ETF). Consensus is the summary/average of those estimates. <a target="_blank" href="https://www.marketbeat.com/financial-terms/how-is-a-price-target-determined/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceUpsideDownside" type="checkbox" value="UpsideDownside" checked=""><label for="columnChoiceUpsideDownside"> <span
                          class="label-inner">Upside/Downside</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The potential change in stock price if the stock were to meet consensus price target estimates. Upside indicates that the consensus price target is higher
                          than the current price and downside indicates that the consensus price target is lower than the current price. <a target="_blank" href="https://www.marketbeat.com/financial-terms/upside-downside-explained/">Learn more</a>.
                        </div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><input class="d-none" id="columnChoiceSubheaderBasics" type="checkbox" value="SubheaderBasics"><label class="subheader" for="columnChoiceSubheaderBasics"> <span
                        class="list-item-inner">Basics</span></label></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceSector" type="checkbox" value="Sector"><label for="columnChoiceSector"> <span class="label-inner">Sector</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">A sector is an area of the economy where businesses share the same or related business activity, product, or service. Sectors represent a large grouping of
                          companies showcasing similar business activities.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceIndustry" type="checkbox" value="Industry"><label for="columnChoiceIndustry"> <span class="label-inner">Industry</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Industry refers to a specific group of companies or businesses, while "sector" describes a large segment of the economy.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceSubindustry" type="checkbox" value="Subindustry"><label for="columnChoiceSubindustry"> <span
                          class="label-inner">Subindustry</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Sub-industry is a more specific classification within an industry.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceCurrency" type="checkbox" value="Currency"><label for="columnChoiceCurrency"> <span class="label-inner">Currency</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The currency the stock trades in, such as U.S. Dollars.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceMarketCap" type="checkbox" value="MarketCap"><label for="columnChoiceMarketCap"> <span class="label-inner">Market Cap</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Market capitalization is the market value of all of a company's outstanding shares and is used by the investment community in ranking the size of companies,
                          as opposed to sales or total asset figures.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><input class="d-none" id="columnChoiceSubheaderValuation" type="checkbox" value="SubheaderValuation"><label class="subheader" for="columnChoiceSubheaderValuation"> <span
                        class="list-item-inner">Valuation</span></label></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceForwardPERatio" type="checkbox" value="ForwardPERatio"><label for="columnChoiceForwardPERatio"> <span class="label-inner">Forward PE
                          Ratio</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The price to earnings ratio (P/E) measures its current share price relative to its per-share earnings. The ratio is used in valuing companies.
                          <a target="_blank" href="https://www.marketbeat.com/market-data/low-pe-stocks/#price-to-earnings-ratio-pe">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoicePEG" type="checkbox" value="PEG"><label for="columnChoicePEG"> <span class="label-inner">P/E Growth</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The P/E growth ratio (or PEG) was developed and is used as a refinement of the standard P/E ratio that is used in fundamental analysis.
                          <a target="_blank" href="https://www.marketbeat.com/market-data/low-pe-stocks/#price-to-earnings-ratio-pe">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoicePriceSales" type="checkbox" value="PriceSales"><label for="columnChoicePriceSales"> <span class="label-inner">Price/Sales</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Valuation is a term investors use to indicate the degree to which a stock is accurately priced. The price-sales ratio does this by comparing a company’s stock
                          price to its revenues. <a target="_blank" href="https://www.marketbeat.com/financial-terms/what-is-price-sales-ratio/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoicePriceBook" type="checkbox" value="PriceBook"><label for="columnChoicePriceBook"> <span class="label-inner">Price/Book</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The price-to-book (P/B) ratio of a company's stock price to its book value on its balance sheet. The book value is the amount of money a firm can reasonably
                          expect if it sold all of its assets at current market prices.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoicePriceCash" type="checkbox" value="PriceCash"><label for="columnChoicePriceCash"> <span class="label-inner">Price/Cash</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The price-to-cash flow ratio measures the current price of the company's stock relative to the amount of cash generated by the company.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceRSI" type="checkbox" value="RSI"><label for="columnChoiceRSI"> <span class="label-inner">RSI</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Relative Strength Index (RSI) measures the velocity and magnitude of a stock's price movements and compares them with the magnitude of a stock's average gains
                          and average losses. A stock's RSI oscillates between zero and 100. <a target="_blank" href="https://www.marketbeat.com/financial-terms/momentum-indicator-relative-strength-index/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><input class="d-none" id="columnChoiceSubheaderEarnings" type="checkbox" value="SubheaderEarnings"><label class="subheader" for="columnChoiceSubheaderEarnings"> <span
                        class="list-item-inner">Earnings</span></label></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceAnnualSales" type="checkbox" value="AnnualSales"><label for="columnChoiceAnnualSales"> <span class="label-inner">Annual
                          Sales</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Annual Sales is a company's revenue from sales of its products or services in a year.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceEPSTrailingTwelveMonths" type="checkbox" value="EPSTrailingTwelveMonths"><label for="columnChoiceEPSTrailingTwelveMonths"> <span
                          class="label-inner">Trailing 12-Month EPS</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Trailing twelve months (TTM) earnings per share (EPS) is an investment metric determined by a company's earnings in the past 12 months divided by its number
                          of common outstanding shares. <a target="_blank" href="https://www.marketbeat.com/financial-terms/earnings-per-share-eps-explained/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceCurrentYearEPSEstimate" type="checkbox" value="CurrentYearEPSEstimate"><label for="columnChoiceCurrentYearEPSEstimate"> <span
                          class="label-inner">Current Year EPS Estimate</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Earnings per share (EPS) is an investment metric determined by a company's earnings divided by its number of common outstanding shares.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/earnings-per-share-eps-explained/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceNextYearEPSEstimate" type="checkbox" value="NextYearEPSEstimate"><label for="columnChoiceNextYearEPSEstimate"> <span class="label-inner">Next Year
                          EPS Estimate</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Earnings per share (EPS) is an investment metric determined by a company's earnings divided by its number of common outstanding shares.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/earnings-per-share-eps-explained/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceBookValue" type="checkbox" value="BookValue"><label for="columnChoiceBookValue"> <span class="label-inner">Book Value</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Book value per share (BVPS) is a ratio used to compare a firm's common shareholder's equity to the number of shares outstanding.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/book-value-equity-per-share-bvps/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceCashflow" type="checkbox" value="Cashflow"><label for="columnChoiceCashflow"> <span class="label-inner">Cash Flow</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Cash flow is a measurement of how much cash and cash equivalents a company is receiving and how much it is sending out.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/cash-flow-analysis-stock-selection/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceNetIncome" type="checkbox" value="NetIncome"><label for="columnChoiceNetIncome"> <span class="label-inner">Net Income</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Net income is the measurement of whether or not a company is making money and, if so, how much profit they are retaining.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/why-net-income-important-investors/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceNetMargins" type="checkbox" value="NetMargins"><label for="columnChoiceNetMargins"> <span class="label-inner">Net Margins</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Net margin (also known as net profit margin) is the amount of revenues that remains as profit after a given period of time.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/net-margin-understanding-different-types-profit/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><input class="d-none" id="columnChoiceSubheaderPerformance" type="checkbox" value="SubheaderPerformance"><label class="subheader" for="columnChoiceSubheaderPerformance"> <span
                        class="list-item-inner">Performance</span></label></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoicePreviousClose" type="checkbox" value="PreviousClose"><label for="columnChoicePreviousClose"> <span class="label-inner">Previous
                          Close</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The closing price of the last market day.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceOpeningPrice" type="checkbox" value="OpeningPrice"><label for="columnChoiceOpeningPrice"> <span class="label-inner">Opening
                          Price</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The opening price of the current market day.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceTodaysPerformanceFromOpen" type="checkbox" value="TodaysPerformanceFromOpen"><label for="columnChoiceTodaysPerformanceFromOpen"> <span
                          class="label-inner">Change from Open</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The amount/percent change from the current market day's opening price.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceCryptoPriceChangeOneHour" type="checkbox" value="CryptoPriceChangeOneHour"><label for="columnChoiceCryptoPriceChangeOneHour"> <span
                          class="label-inner">Crypto 1-Hour Change</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The change in price of the last hour in a market day.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoicePriceChangeSevenDays" type="checkbox" value="PriceChangeSevenDays"><label for="columnChoicePriceChangeSevenDays"> <span class="label-inner">7-Day
                          Price Change</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The 7 day price change of the stock/asset.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoicePriceChangeOneYear" type="checkbox" value="PriceChangeOneYear"><label for="columnChoicePriceChangeOneYear"> <span class="label-inner">1-Year Price
                          Change</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The 1-year price change of the stock/asset.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceFiftyTwoWeekRange" type="checkbox" value="FiftyTwoWeekRange"><label for="columnChoiceFiftyTwoWeekRange"> <span class="label-inner">52-Week
                          Range</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The 52-week range shows the lowest and highest price at which a stock has traded at in the previous 52 weeks.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceTodaysRange" type="checkbox" value="TodaysRange"><label for="columnChoiceTodaysRange"> <span class="label-inner">Today's
                          Range</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Today's range shows the lowest and highest price at which a stock has traded at today.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceTodaysVolume" type="checkbox" value="TodaysVolume"><label for="columnChoiceTodaysVolume"> <span class="label-inner">Today's
                          Volume</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Volume refers to the amount of shares or contracts traded in an asset or security over a period of time, usually over the course of a trading day.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceAverageDailyVolume" type="checkbox" value="AverageDailyVolume"><label for="columnChoiceAverageDailyVolume"> <span class="label-inner">Average Daily
                          Volume</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Volume refers to the amount of shares or contracts traded in an asset or security over a period of time, usually over the course of a trading day.
                          <a target="_blank" href="https://www.marketbeat.com/market-data/unusual-volume-stocks/#average-daily-trade-volume-explained">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceReturnOnAssets" type="checkbox" value="ReturnOnAssets"><label for="columnChoiceReturnOnAssets"> <span class="label-inner">Return On
                          Assets</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The return on assets (ROA) ratio is one of several profitability measures that investors use to measure their return on investment (ROI).
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/what-is-return-on-assets/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceReturnOnEquity" type="checkbox" value="ReturnOnEquity"><label for="columnChoiceReturnOnEquity"> <span class="label-inner">Return On
                          Equity</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Return on equity is a measurement of how efficient a company is in using its assets from their shareholders to create earnings.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/calculate-return-on-equity/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><input class="d-none" id="columnChoiceSubheaderDebt" type="checkbox" value="SubheaderDebt"><label class="subheader" for="columnChoiceSubheaderDebt"> <span class="list-item-inner">Debt</span></label>
                  </li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceDebtToEquityRatio" type="checkbox" value="DebtToEquityRatio"><label for="columnChoiceDebtToEquityRatio"> <span class="label-inner">Debt/Equity
                          Ratio</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">A company’s debt-to-equity ratio is a performance metric that measures a company’s level of debt in relation to the overall value of their stock.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/calcuulate-debt-to-equity-ration/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceCurrentRatio" type="checkbox" value="CurrentRatio"><label for="columnChoiceCurrentRatio"> <span class="label-inner">Current
                          Ratio</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The current ratio is a liquidity ratio that measures a company's ability to pay short-term obligations or those due within one year.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/what-is-current-ratio/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceQuickRatio" type="checkbox" value="QuickRatio"><label for="columnChoiceQuickRatio"> <span class="label-inner">Quick Ratio</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The quick ratio measures a company's capacity to pay its current liabilities without needing to sell its inventory or obtain additional financing.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/what-is-quick-ratio/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><input class="d-none" id="columnChoiceSubheaderDividend" type="checkbox" value="SubheaderDividend"><label class="subheader" for="columnChoiceSubheaderDividend"> <span
                        class="list-item-inner">Dividend</span></label></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceDividendYield" type="checkbox" value="DividendYield"><label for="columnChoiceDividendYield"> <span class="label-inner">Dividend
                          Yield</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Dividend yield is a company’s dividend expressed as a percentage of its stock price.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/what-is-dividend-yield/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceYieldOnCost" type="checkbox" value="YieldOnCost"><label for="columnChoiceYieldOnCost"> <span class="label-inner">Yield on
                          Cost</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Yield on cost is a company’s dividend expressed as a percentage of the price originally paid for the stock.
                          <a target="_blank" href="https://www.marketbeat.com/dividends/calculator/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceThreeYearDivGrowth" type="checkbox" value="ThreeYearDivGrowth"><label for="columnChoiceThreeYearDivGrowth"> <span class="label-inner">3-Year Dividend
                          Growth</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">How much the company's dividend has grown (or declined) over the past 3 years.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/investing-dividend-stocks/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoicePayoutRatio" type="checkbox" value="PayoutRatio"><label for="columnChoicePayoutRatio"> <span class="label-inner">Payout
                          Ratio</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The dividend payout ratio is the ratio of the total amount of dividends paid out to shareholders relative to the net income of the company. It is the
                          percentage of earnings paid to shareholders via dividends. <a target="_blank" href="https://www.marketbeat.com/financial-terms/investing-dividend-stocks/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceYearsOfDividendGrowth" type="checkbox" value="YearsOfDividendGrowth"><label for="columnChoiceYearsOfDividendGrowth"> <span class="label-inner">Years
                          of Dividend Growth</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The number of years the paid dividend has increased.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/investing-dividend-stocks/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceNextDividendPayoutDate" type="checkbox" value="NextDividendPayoutDate"><label for="columnChoiceNextDividendPayoutDate"> <span
                          class="label-inner">Next Dividend Payout Date</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">A payment date, also known as the pay or payable date, is the day on which a declared stock dividend is scheduled to be paid to eligible investors. This date
                          can be up to a month after the ex-dividend date. <a target="_blank" href="https://www.marketbeat.com/financial-terms/investing-dividend-stocks/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceNextExDividendDate" type="checkbox" value="NextExDividendDate"><label for="columnChoiceNextExDividendDate"> <span class="label-inner">Next
                          Ex-Dividend Date</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The ex-dividend date is the trading date on (and after) which the dividend is not owed to a new buyer of the stock. The ex-date is one business day before the
                          date of record. The date of record is the day on which the company checks its records to identify shareholders of the company.
                          <a target="_blank" href="https://www.marketbeat.com/dividends/ex-dividend-calendar/#ex-dividend-investing">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoicePaymentSchedule" type="checkbox" value="PaymentSchedule"><label for="columnChoicePaymentSchedule"> <span class="label-inner">Dividend Payment
                          Schedule</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The frequency in which a company announces dividends, examples include quarterly and yearly.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/investing-dividend-stocks/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><input class="d-none" id="columnChoiceSubheaderAdditionalIndicators" type="checkbox" value="SubheaderAdditionalIndicators"><label class="subheader" for="columnChoiceSubheaderAdditionalIndicators">
                      <span class="list-item-inner">Additional Indicators</span></label></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceMarketRank" type="checkbox" value="MarketRank"><label for="columnChoiceMarketRank"> <span class="label-inner">MarketRank™</span></label>&nbsp;<span
                        class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Our MarketRank<sup>™</sup> rates every stock on 7 unique categories: Analyst's Opinion, Short Interest, Dividend Strength, ESG Score, Media Sentiment, Company
                          Ownership, and Earnings and Valuation. MarketRank is calculated as an average of available category scores, with extra weight given to analysis and valuation.
                          <a target="_blank" href="https://www.marketbeat.com/stocks/top-marketrank/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceNewsSentiment" type="checkbox" value="NewsSentiment"><label for="columnChoiceNewsSentiment"> <span class="label-inner">News
                          Sentiment</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">News sentiment is one part of fundamental analysis. A good way to look at it is that technical signals will tell investors what’s happening to a stock’s
                          price. Understanding the news can help investors understand why that movement may be happening. <a target="_blank" href="https://www.marketbeat.com/financial-terms/market-news-sentiment-in-investing/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceInsiderOwnershipPercentage" type="checkbox" value="InsiderOwnershipPercentage"><label for="columnChoiceInsiderOwnershipPercentage"> <span
                          class="label-inner">Insider Ownership %</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The percentage of the company that company insiders own in shares.
                          <a target="_blank" href="https://www.marketbeat.com/insider-trades/#insider-trading-what-you-need-to-know">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceInstitutionalOwnershipPercentage" type="checkbox" value="InstitutionalOwnershipPercentage"><label for="columnChoiceInstitutionalOwnershipPercentage">
                        <span class="label-inner">Institutional Ownership %</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The percentage of the company that institutional owners own in shares.
                          <a target="_blank" href="https://www.marketbeat.com/financial-terms/what-are-institutional-investors/">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceNextEarningsDate" type="checkbox" value="NextEarningsDate"><label for="columnChoiceNextEarningsDate"> <span class="label-inner">Next Earnings
                          Date</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Earnings date is the date of the next release of a company's financial report. Earnings report date is the date of an official announcement about a company's
                          profitability for a specific time period. <a target="_blank" href="https://www.marketbeat.com/earnings/latest/#what-are-earnings-reports">Learn more</a>.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceEmployees" type="checkbox" value="Employees"><label for="columnChoiceEmployees"> <span class="label-inner">Number of
                          Employees</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">The number of employees in a company.</div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceOutstandingShares" type="checkbox" value="OutstandingShares"><label for="columnChoiceOutstandingShares"> <span class="label-inner">Outstanding
                          Shares</span></label>&nbsp;<span class="tooltip-available fa-regular fa-circle-question" aria-hidden="true"></span>
                      <div class="tooltip-content d-none">
                        <div class="p-2 bg-white border floating-tooltip shadow font-small">Outstanding shares are all the shares of a corporation or financial asset that have been authorized, issued and purchased by investors and are held by them.
                          They have rights and represent ownership in the corporation by the person who holds the shares. <a target="_blank" href="https://www.marketbeat.com/financial-terms/outstanding-shares-buying-selling-stocks/">Learn more</a>.
                        </div>
                      </div>
                    </span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><input class="d-none" id="columnChoiceSubheaderPortfolioDetails" type="checkbox" value="SubheaderPortfolioDetails"><label class="subheader" for="columnChoiceSubheaderPortfolioDetails"> <span
                        class="list-item-inner">Portfolio Details</span></label></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoiceNotes" type="checkbox" value="Notes"><label for="columnChoiceNotes"> <span class="label-inner">Notes</span></label></span><span
                      class="fa-regular fa-arrow-right-arrow-left"></span></li>
                  <li class="ui-sortable-handle"><span class="list-item-left"><input id="columnChoicePriceAlerts" type="checkbox" value="PriceAlerts"><label for="columnChoicePriceAlerts"> <span class="label-inner">Price
                          Alerts</span></label></span><span class="fa-regular fa-arrow-right-arrow-left"></span></li>
                </ul>
              </div>
              <div class="btn-group" role="group">
                <a onclick="return ColumnChecksChanged;" id="cphPrimaryContent_btnApplyColumns" class="btn btn-primary btn-inline-input w-100  d-flex align-items-center" title="Customize Columns" href="javascript:__doPostBack('ctl00$cphPrimaryContent$btnApplyColumns','')" style="border-radius:5px;padding:9px;"><span class="fa-regular fa-circle-check"></span></a>
                <a id="cphPrimaryContent_btnResetColumns" class="btn btn-secondary w-100 ml-2 d-flex align-items-center" title="Reset Columns" href="javascript:__doPostBack('ctl00$cphPrimaryContent$btnResetColumns','')" style="border-radius:5px;padding:9px;"><span class="fa-regular fa-rotate-right"></span></a>
              </div>
            </div>
            <input type="hidden" name="ctl00$cphPrimaryContent$hdnColumns" id="cphPrimaryContent_hdnColumns">
          </div>
        </div>
        <span id="cphPrimaryContent_AutoMagicalTimer" style="visibility:hidden;display:none;"></span>
        <div id="cphPrimaryContent_pnlUpdateStockPrice">
          <div class="text-right ml-auto pt-2 pt-sm-0" style="max-width: 255px;">
            <span class="small checkbox-line custom-control custom-checkbox pt-1" style="margin-bottom: -7px">
              <input id="cphPrimaryContent_chkUpdatePrices" type="checkbox" name="ctl00$cphPrimaryContent$chkUpdatePrices" onclick="javascript:setTimeout('__doPostBack(\'ctl00$cphPrimaryContent$chkUpdatePrices\',\'\')', 0)"><label
                for="cphPrimaryContent_chkUpdatePrices">Refresh price data every 60 seconds</label></span>
            <em class="small">Last updated: 11/8 1:33 PM ET</em>
          </div>
          <div style="display: none;">
          </div>
        </div>
        <div id="visibleWatchlists">
          <div class="d-flex justify-content-between mt-2 mb-1">
            <div class="watchlist-title"><strong>My Default Watchlist</strong></div>
            <div><button type="button" data-toggle="modal" data-target="#Panel5" title="Edit This Watchlist" class="btn btn-secondary p-1 settings-button"
                onclick="editWatchlist(&quot;2519330&quot;, &quot;My Default Watchlist&quot;, &quot;0&quot;)"><span class="fa-regular fa-pen-to-square" aria-hidden="true"></span></button>&nbsp;<button type="button" data-toggle="modal"
                data-target="#Panel7" title="Delete This Watchlist" class="btn btn-secondary p-1 settings-button" onclick="deleteWatchlist(&quot;2519330&quot;, &quot;My Default Watchlist&quot;)"><span class="fa-regular fa-trash-can"
                  aria-hidden="true"></span></button><br></div>
          </div>
          <div class="scroll-table-wrapper-wrapper">
            <div class="scroll-table-wrapper" style="padding-top: 67.8438px;">
              <table cellspacing="0" cellpadding="3" class="scroll-table dont-scrolltable-on-rebind sort-table dont-sort-on-rebind fixed-header">
                <thead class="hide-scrollbar" style="width: 1418px; position: absolute; top: 0px;">
                  <tr>
                    <th data-hide="" data-sort="string" style="min-width: 102.938px; max-width: 102.938px;">
                      <div onclick="event.stopPropagation();" class="wl-check custom-control custom-checkbox"><input type="checkbox" name="blkActionSelectAllInTable"
                          aria-label="select all in holdings in watchlist My Default Watchlist for bulk action" class="selectAllInTable" id="watchlist2519330"><label class="selectAllInTableLabel" for="watchlist2519330"><span class="sr-only">Select
                            All Holdings in watchlist My Default Watchlist</span></label></div>
                    </th>
                    <th data-sort="string" data-clean="Symbol|Holding" style="min-width: 184.125px; max-width: 184.125px;">Holding</th>
                    <th data-sort="float" data-clean="Current Price|Price Change|Price Change Percentage" style="min-width: 177.422px; max-width: 177.422px;">Current Price</th>
                    <th data-sort="float" style="min-width: 94.1406px; max-width: 94.1406px;">PE Ratio</th>
                    <th data-sort="float" style="min-width: 94.1406px; max-width: 94.1406px;">Beta</th>
                    <th data-sort="float" style="min-width: 151.812px; max-width: 151.812px;">Annual Dividend</th>
                    <th data-sort="float" data-clean="Consensus Rating|Consensus Rating Score" style="min-width: 159.703px; max-width: 159.703px;">Consensus Rating</th>
                    <th data-sort="float" style="min-width: 105.047px; max-width: 105.047px;">Consensus Price Target</th>
                    <th data-sort="float" style="min-width: 166.516px; max-width: 166.516px;">Upside/​Downside</th>
                    <th data-hide="" style="min-width: 182.156px; max-width: 182.156px;">Settings</th>
                  </tr>
                </thead>
                <tbody>
                  <tr>
                    <td data-hide="" data-sort-value="AAPL">
                      <div class="wl-check custom-control custom-checkbox"><input type="checkbox" class="bulkactioncheck" name="includeInBulkAction" value="8026663" id="holding8026663" aria-label="bulk action check box for Apple Inc."><label
                          for="holding8026663"><span class="sr-only">Apply Bulk Action to Apple Inc.</span></label></div>
                      <div class="wl-with-check"><img loading="lazy" height="53" width="80" src="https://www.marketbeat.com/logos/thumbnail/apple-inc-logo.png" alt="Apple Inc. logo" title="AAPL"></div>
                    </td>
                    <td data-clean="AAPL|Apple Inc.">
                      <a class="boldsymbol" href="/stocks/NASDAQ/AAPL/">AAPL</a><a rel="nofollow" href="/stocks/NASDAQ/AAPL/chart/"><img class="sparkline" alt="AAPL 90-day performance" title="90-day performance" src="https://www.marketbeat.com/Scripts/sparklines.ashx?prefix=NASDAQ&amp;symbol=AAPL"></a><br>Apple
                    </td>
                    <td class="changeable-cell" style="/*min-width:165px*/" data-sort-value="-0.00123087743977493" data-clean="$227.20|-$0.28|-0.12%"><strong>$227.20</strong><br><span class="c-red">-$0.28 (-0.12%)</span></td>
                    <td data-sort-value="37.3684825139515">37.37</td>
                    <td>1.24</td>
                    <td data-sort-value="1.00">$1.00 per sh.</td>
                    <td data-sort-value="2.61" data-clean="Moderate Buy|2.61"><strong>Moderate Buy</strong><br>2.61</td>
                    <td style="/*min-width:160px*/" data-sort-value="235.512">$235.51</td>
                    <td class="changeable-cell" data-sort-value="0.0365845070422536"><span class="c-green">3.66% Upside</span></td>
                    <td style="text-align:right;min-width:145px;padding:4px 8px 4px 2px;" data-hide="">
                      <div class="ntf-area">
                        <div class="settings-button shownotifications" id="20240502113102133_NASDAQ_AAPL"><button tabindex="0" onfocus="positionNotifications(this)" onmouseover="positionNotifications(this)"
                            class="btn btn-tertiary p-1 fa-regular fa-bell"><span class="sr-only">View notifications for this stock</span></button><span class="ntf-number plus">9+</span>
                          <div class="latest-notifications">
                            <div>
                              <div class="ntf-header gradient-blue font-8"><strong>Apple</strong><span
                                  class="float-right"><a onclick="var e = $('div[id$=' + $(this).closest('.shownotifications').attr('id').split('_')[1] + '_'+ $(this).closest('.shownotifications').attr('id').split('_')[2]); $.get('/Scripts/NotificationsHelpers.ashx?command=markasread&amp;prefix=NASDAQ&amp;symbol=AAPL&amp;accountid=11404962&amp;hash=8836967B6489343AFFEBE4A9F20736CC3E70C11EF914402B105D0B1411AC2283469760A890F500A211DD2AA9EFAC84240FC1F5B99ADAF28EBA5B81CB4965A10A&amp;viewedthrough=20241108092141287', function (data, status) { $(e).find('.ntf-number').hide(); $(e).find('.new-notification').removeClass('new-notification'); }); this.blur();" style="cursor:pointer;color:#fff;">Mark as Read</a></span>
                                <div class="clearfix"></div>
                              </div>
                              <ul>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.msn.com/en-us/money/savingandinvesting/apple-inc-aapl-potential-earnings-impact-from-new-tariffs/ar-AA1tJT27"><img src="/images/news-sites/msn.jpg" alt="msn.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 9:21 AM - msn.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.msn.com/en-us/money/savingandinvesting/apple-inc-aapl-potential-earnings-impact-from-new-tariffs/ar-AA1tJT27">Apple Inc. (AAPL): Potential Earnings Impact from New Tariffs</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://seekingalpha.com/article/4734915-qualcomm-q4-exciting-developments-but-apple-discount-remains-downgrade"><img src="/images/news-sites/seekingalpha.jpg" alt="seekingalpha.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 9:08 AM - seekingalpha.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://seekingalpha.com/article/4734915-qualcomm-q4-exciting-developments-but-apple-discount-remains-downgrade">Qualcomm Q4: Exciting Developments, But Apple Discount Remains (Downgrade)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.ft.com/content/4ebb68c0-b568-414e-9c70-89b7cd1508c9"><img src="/images/news-sites/financialtimes.jpg" alt="ft.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 9:07 AM - ft.com</div>
                                    <p class="c-black"><a rel="nofollow noopener" target="_blank" href="https://www.ft.com/content/4ebb68c0-b568-414e-9c70-89b7cd1508c9">Buffett’s Apple sales and cash pile spark intrigue over motives </a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/3-huge-warning-signs-for-apple-investors/"><img src="/images/news-sites/motleyfool.jpg" alt="fool.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 6:15 AM - fool.com</div>
                                    <p class="c-black"><a rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/3-huge-warning-signs-for-apple-investors/">3 Huge Warning Signs for Apple Investors</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/investing-2000-in-each-of-these-3-growth-stocks-20/"><img src="/images/news-sites/motleyfool.jpg" alt="fool.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 5:08 AM - fool.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/investing-2000-in-each-of-these-3-growth-stocks-20/">Investing $2,000 in Each of These 3 Growth Stocks 20 Years Ago Would Have Made You $3.8 Million</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/rep-josh-gottheimer-buys-apple-inc-nasdaqaapl-shares-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 5:04 AM - marketbeat.com</div>
                                    <p class="c-black"><a href="https://www.marketbeat.com/instant-alerts/rep-josh-gottheimer-buys-apple-inc-nasdaqaapl-shares-2024-11-08/">Rep. Josh Gottheimer Buys Apple Inc. (NASDAQ:AAPL) Shares</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/meet-the-3-supercharged-growth-stocks-that-will-be/"><img src="/images/news-sites/motleyfool.jpg" alt="fool.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 3:02 AM - fool.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/meet-the-3-supercharged-growth-stocks-that-will-be/">Meet the 3 Supercharged Growth Stocks That Will Be Worth $4 Trillion by 2025, According to a Certain Wall Street Analyst</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/bridges-investment-management-inc-has-37877-million-stock-position-in-apple-inc-nasdaqaapl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/bridges-investment-management-inc-has-37877-million-stock-position-in-apple-inc-nasdaqaapl-2024-11-08/">Bridges Investment Management Inc. Has $378.77 Million Stock Position in Apple Inc. (NASDAQ:AAPL)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/callan-capital-llc-grows-holdings-in-apple-inc-nasdaqaapl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black"><a href="https://www.marketbeat.com/instant-alerts/callan-capital-llc-grows-holdings-in-apple-inc-nasdaqaapl-2024-11-08/">Callan Capital LLC Grows Holdings in Apple Inc. (NASDAQ:AAPL)</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/promethos-capital-llc-makes-new-investment-in-apple-inc-nasdaqaapl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/promethos-capital-llc-makes-new-investment-in-apple-inc-nasdaqaapl-2024-11-08/">Promethos Capital LLC Makes New Investment in Apple Inc. (NASDAQ:AAPL)</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/apple-inc-nasdaqaapl-shares-sold-by-intech-investment-management-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/apple-inc-nasdaqaapl-shares-sold-by-intech-investment-management-llc-2024-11-08/">Apple Inc. (NASDAQ:AAPL) Shares Sold by Intech Investment Management LLC</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/cowa-llc-grows-stake-in-apple-inc-nasdaqaapl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black"><a href="https://www.marketbeat.com/instant-alerts/cowa-llc-grows-stake-in-apple-inc-nasdaqaapl-2024-11-08/">Cowa LLC Grows Stake in Apple Inc. (NASDAQ:AAPL)</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/granite-investment-partners-llc-buys-7606-shares-of-apple-inc-nasdaqaapl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/granite-investment-partners-llc-buys-7606-shares-of-apple-inc-nasdaqaapl-2024-11-08/">Granite Investment Partners LLC Buys 7,606 Shares of Apple Inc. (NASDAQ:AAPL)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/benjamin-edwards-inc-acquires-7025-shares-of-apple-inc-nasdaqaapl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/benjamin-edwards-inc-acquires-7025-shares-of-apple-inc-nasdaqaapl-2024-11-08/">Benjamin Edwards Inc. Acquires 7,025 Shares of Apple Inc. (NASDAQ:AAPL)</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/apple-inc-nasdaqaapl-is-ar-asset-management-incs-largest-position-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/apple-inc-nasdaqaapl-is-ar-asset-management-incs-largest-position-2024-11-08/">Apple Inc. (NASDAQ:AAPL) is AR Asset Management Inc.'s Largest Position</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/apple-inc-nasdaqaapl-shares-sold-by-public-employees-retirement-association-of-colorado-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/apple-inc-nasdaqaapl-shares-sold-by-public-employees-retirement-association-of-colorado-2024-11-08/">Apple Inc. (NASDAQ:AAPL) Shares Sold by Public Employees Retirement Association of Colorado</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/apple-inc-nasdaqaapl-stock-position-increased-by-benjamin-f-edwards-company-inc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/apple-inc-nasdaqaapl-stock-position-increased-by-benjamin-f-edwards-company-inc-2024-11-08/">Apple Inc. (NASDAQ:AAPL) Stock Position Increased by Benjamin F. Edwards &amp; Company Inc.</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/gm-advisory-group-llc-has-4340-million-position-in-apple-inc-nasdaqaapl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/gm-advisory-group-llc-has-4340-million-position-in-apple-inc-nasdaqaapl-2024-11-08/">GM Advisory Group LLC Has $43.40 Million Position in Apple Inc. (NASDAQ:AAPL)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/yost-capital-management-lp-reduces-stake-in-apple-inc-nasdaqaapl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/yost-capital-management-lp-reduces-stake-in-apple-inc-nasdaqaapl-2024-11-08/">Yost Capital Management LP Reduces Stake in Apple Inc. (NASDAQ:AAPL)</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/brighton-jones-llc-has-11011-million-position-in-apple-inc-nasdaqaapl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AAPL/">NASDAQ:AAPL</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/brighton-jones-llc-has-11011-million-position-in-apple-inc-nasdaqaapl-2024-11-08/">Brighton Jones LLC Has $110.11 Million Position in Apple Inc. (NASDAQ:AAPL)</a>
                                    </p>
                                  </div>
                                </li>
                              </ul>
                              <div class="ntf-footer font-8"><a href="/notifications/NASDAQ/AAPL/">View All Notifications for Apple</a></div>
                            </div>
                          </div>
                        </div>
                      </div><button type="button" data-toggle="modal" data-target="#Panel4" title="Edit This Holding" class="btn btn-secondary p-1 settings-button"
                        onclick="editHolding(&quot;8026663&quot; , &quot;NASDAQ&quot;, &quot;AAPL&quot; , &quot;0&quot; , &quot;0.00&quot; , &quot;2519330&quot; , false , false , true , &quot;USD&quot;, &quot;0.00&quot;, &quot;0&quot; , &quot;0&quot;, &quot;0&quot;, &quot;&quot;, &quot;Apple Inc.&quot;, &quot;227.20&quot;, &quot;11/8/2024&quot;)"><span
                          class="fa-regular fa-pen-to-square" aria-hidden="true"></span></button> <button type="button" data-toggle="modal" data-target="#Panel6" title="Delete This Holding" class="btn btn-secondary p-1 settings-button"
                        onclick="deleteStock(&quot;8026663&quot; , &quot;Apple Inc.&quot;)"><span class="fa-regular fa-trash-can" aria-hidden="true"></span></button>
                    </td>
                  </tr>
                  <tr>
                    <td data-hide="" data-sort-value="AMZN">
                      <div class="wl-check custom-control custom-checkbox"><input type="checkbox" class="bulkactioncheck" name="includeInBulkAction" value="8026666" id="holding8026666" aria-label="bulk action check box for Amazon.com, Inc."><label
                          for="holding8026666"><span class="sr-only">Apply Bulk Action to Amazon.com, Inc.</span></label></div>
                      <div class="wl-with-check"><img loading="lazy" height="29" width="80" src="https://www.marketbeat.com/logos/thumbnail/amazoncom-inc-logo.jpg" alt="Amazon.com, Inc. logo" title="AMZN"></div>
                    </td>
                    <td data-clean="AMZN|Amazon.com, Inc.">
                      <a class="boldsymbol" href="/stocks/NASDAQ/AMZN/">AMZN</a><a rel="nofollow" href="/stocks/NASDAQ/AMZN/chart/"><img class="sparkline" alt="AMZN 90-day performance" title="90-day performance" src="https://www.marketbeat.com/Scripts/sparklines.ashx?prefix=NASDAQ&amp;symbol=AMZN"></a><br>Amazon.com
                    </td>
                    <td class="changeable-cell" style="/*min-width:165px*/" data-sort-value="-0.00442751725779576" data-clean="$209.12|-$0.93|-0.44%"><strong>$209.12</strong><br><span class="c-red">-$0.93 (-0.44%)</span></td>
                    <td data-sort-value="44.779443254818">44.78</td>
                    <td>1.14</td>
                    <td data-sort-value="0">-</td>
                    <td data-sort-value="2.98" data-clean="Moderate Buy|2.98"><strong>Moderate Buy</strong><br>2.98</td>
                    <td style="/*min-width:160px*/" data-sort-value="234.545454545455">$234.55</td>
                    <td class="changeable-cell" data-sort-value="0.121583084092648"><span class="c-green">12.16% Upside</span></td>
                    <td style="text-align:right;min-width:145px;padding:4px 8px 4px 2px;" data-hide="">
                      <div class="ntf-area">
                        <div class="settings-button shownotifications" id="20240502113102133_NASDAQ_AMZN"><button tabindex="0" onfocus="positionNotifications(this)" onmouseover="positionNotifications(this)"
                            class="btn btn-tertiary p-1 fa-regular fa-bell"><span class="sr-only">View notifications for this stock</span></button><span class="ntf-number plus">9+</span>
                          <div class="latest-notifications">
                            <div>
                              <div class="ntf-header gradient-blue font-8"><strong>Amazon.com</strong><span
                                  class="float-right"><a onclick="var e = $('div[id$=' + $(this).closest('.shownotifications').attr('id').split('_')[1] + '_'+ $(this).closest('.shownotifications').attr('id').split('_')[2]); $.get('/Scripts/NotificationsHelpers.ashx?command=markasread&amp;prefix=NASDAQ&amp;symbol=AMZN&amp;accountid=11404962&amp;hash=8836967B6489343AFFEBE4A9F20736CC3E70C11EF914402B105D0B1411AC2283469760A890F500A211DD2AA9EFAC84240FC1F5B99ADAF28EBA5B81CB4965A10A&amp;viewedthrough=2024110811062169', function (data, status) { $(e).find('.ntf-number').hide(); $(e).find('.new-notification').removeClass('new-notification'); }); this.blur();" style="cursor:pointer;color:#fff;">Mark as Read</a></span>
                                <div class="clearfix"></div>
                              </div>
                              <ul>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.gurufocus.com/news/2592051/amazon-eyes-multibillion-dollar-investment-in-anthropic-with-ai-chip-conditions"><img src="/images/news-sites/gurufocus.jpg" alt="gurufocus.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 11:06 AM - gurufocus.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.gurufocus.com/news/2592051/amazon-eyes-multibillion-dollar-investment-in-anthropic-with-ai-chip-conditions">Amazon Eyes Multi-Billion Dollar Investment in Anthropic with AI Chip Conditions</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.gurufocus.com/news/2592955/amazon-eyes-another-multibilliondollar-stake-in-anthropic-rival-to-openai"><img src="/images/news-sites/gurufocus.jpg" alt="gurufocus.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 11:06 AM - gurufocus.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.gurufocus.com/news/2592955/amazon-eyes-another-multibilliondollar-stake-in-anthropic-rival-to-openai">Amazon Eyes Another Multibillion-Dollar Stake in Anthropic, Rival to OpenAI</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/amazon-stock-investors-should-know-this/"><img src="/images/news-sites/motleyfool.jpg" alt="fool.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 9:59 AM - fool.com</div>
                                    <p class="c-black"><a rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/amazon-stock-investors-should-know-this/">Amazon Stock Investors Should Know This</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.msn.com/en-us/money/savingandinvesting/amazoncom-inc-amzn-expanding-ai-reach-with-defense-partnerships/ar-AA1tJRnR"><img src="/images/news-sites/msn.jpg" alt="msn.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 7:49 AM - msn.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.msn.com/en-us/money/savingandinvesting/amazoncom-inc-amzn-expanding-ai-reach-with-defense-partnerships/ar-AA1tJRnR">Amazon.com, Inc. (AMZN): Expanding AI Reach with Defense Partnerships</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.reuters.com/business/retail-consumer/walmart-offer-independent-drivers-new-holiday-bonuses-battle-with-amazon-2024-11-08/"><img src="/images/news-sites/reuters.jpg" alt="reuters.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 5:05 AM - reuters.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.reuters.com/business/retail-consumer/walmart-offer-independent-drivers-new-holiday-bonuses-battle-with-amazon-2024-11-08/">Walmart to offer independent drivers new holiday bonuses in battle with Amazon</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.pymnts.com/news/retail/2024/new-data-amazon-expands-grocery-reach-but-walmart-maintains-delivery-edge/?utm_source=snapi"><img src="/images/news-sites/pymnts.jpg" alt="pymnts.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 3:01 AM - pymnts.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.pymnts.com/news/retail/2024/new-data-amazon-expands-grocery-reach-but-walmart-maintains-delivery-edge/?utm_source=snapi">New Data: Amazon Expands Grocery Reach, but Walmart Maintains Delivery Edge</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.msn.com/en-us/money/topstocks/jim-cramer-amazoncom-amzn-is-spending-like-mad-to-dominate/ar-AA1tIrvl"><img src="/images/news-sites/msn.jpg" alt="msn.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:48 AM - msn.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.msn.com/en-us/money/topstocks/jim-cramer-amazoncom-amzn-is-spending-like-mad-to-dominate/ar-AA1tIrvl">Jim Cramer: Amazon.com (AMZN) is Spending ‘Like Mad’ to Dominate</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/amazoncom-inc-nasdaqamzn-shares-purchased-by-dlk-investment-management-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/amazoncom-inc-nasdaqamzn-shares-purchased-by-dlk-investment-management-llc-2024-11-08/">Amazon.com, Inc. (NASDAQ:AMZN) Shares Purchased by DLK Investment Management LLC</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/castle-rock-wealth-management-llc-buys-6591-shares-of-amazoncom-inc-nasdaqamzn-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/castle-rock-wealth-management-llc-buys-6591-shares-of-amazoncom-inc-nasdaqamzn-2024-11-08/">Castle Rock Wealth Management LLC Buys 6,591 Shares of Amazon.com, Inc. (NASDAQ:AMZN)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/amazoncom-inc-nasdaqamzn-shares-purchased-by-lvw-advisors-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/amazoncom-inc-nasdaqamzn-shares-purchased-by-lvw-advisors-llc-2024-11-08/">Amazon.com, Inc. (NASDAQ:AMZN) Shares Purchased by LVW Advisors LLC</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/charles-schwab-trust-co-has-274-million-stock-position-in-amazoncom-inc-nasdaqamzn-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/charles-schwab-trust-co-has-274-million-stock-position-in-amazoncom-inc-nasdaqamzn-2024-11-08/">Charles Schwab Trust Co Has $2.74 Million Stock Position in Amazon.com, Inc. (NASDAQ:AMZN)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/pinnacle-bancorp-inc-increases-stock-holdings-in-amazoncom-inc-nasdaqamzn-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/pinnacle-bancorp-inc-increases-stock-holdings-in-amazoncom-inc-nasdaqamzn-2024-11-08/">Pinnacle Bancorp Inc. Increases Stock Holdings in Amazon.com, Inc. (NASDAQ:AMZN)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/amazoncom-inc-nasdaqamzn-is-jessup-wealth-management-incs-largest-position-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/amazoncom-inc-nasdaqamzn-is-jessup-wealth-management-incs-largest-position-2024-11-08/">Amazon.com, Inc. (NASDAQ:AMZN) is Jessup Wealth Management Inc's Largest Position</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/amazoncom-inc-nasdaqamzn-is-sarasin-partners-llps-3rd-largest-position-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/amazoncom-inc-nasdaqamzn-is-sarasin-partners-llps-3rd-largest-position-2024-11-08/">Amazon.com, Inc. (NASDAQ:AMZN) is Sarasin &amp; Partners LLP's 3rd Largest Position</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/independence-bank-of-kentucky-increases-stake-in-amazoncom-inc-nasdaqamzn-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/independence-bank-of-kentucky-increases-stake-in-amazoncom-inc-nasdaqamzn-2024-11-08/">Independence Bank of Kentucky Increases Stake in Amazon.com, Inc. (NASDAQ:AMZN)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/franklin-street-advisors-inc-nc-acquires-3523-shares-of-amazoncom-inc-nasdaqamzn-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/franklin-street-advisors-inc-nc-acquires-3523-shares-of-amazoncom-inc-nasdaqamzn-2024-11-08/">Franklin Street Advisors Inc. NC Acquires 3,523 Shares of Amazon.com, Inc. (NASDAQ:AMZN)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/clarius-group-llc-has-5834-million-stock-position-in-amazoncom-inc-nasdaqamzn-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/clarius-group-llc-has-5834-million-stock-position-in-amazoncom-inc-nasdaqamzn-2024-11-08/">Clarius Group LLC Has $58.34 Million Stock Position in Amazon.com, Inc. (NASDAQ:AMZN)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/san-luis-wealth-advisors-llc-purchases-4041-shares-of-amazoncom-inc-nasdaqamzn-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/san-luis-wealth-advisors-llc-purchases-4041-shares-of-amazoncom-inc-nasdaqamzn-2024-11-08/">San Luis Wealth Advisors LLC Purchases 4,041 Shares of Amazon.com, Inc. (NASDAQ:AMZN)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/amazoncom-inc-nasdaqamzn-stake-lessened-by-beaumont-financial-advisors-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/amazoncom-inc-nasdaqamzn-stake-lessened-by-beaumont-financial-advisors-llc-2024-11-08/">Amazon.com, Inc. (NASDAQ:AMZN) Stake Lessened by Beaumont Financial Advisors LLC</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/amazoncom-inc-nasdaqamzn-shares-purchased-by-albion-financial-group-ut-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/AMZN/">NASDAQ:AMZN</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/amazoncom-inc-nasdaqamzn-shares-purchased-by-albion-financial-group-ut-2024-11-08/">Amazon.com, Inc. (NASDAQ:AMZN) Shares Purchased by Albion Financial Group UT</a>
                                    </p>
                                  </div>
                                </li>
                              </ul>
                              <div class="ntf-footer font-8"><a href="/notifications/NASDAQ/AMZN/">View All Notifications for Amazon.com</a></div>
                            </div>
                          </div>
                        </div>
                      </div><button type="button" data-toggle="modal" data-target="#Panel4" title="Edit This Holding" class="btn btn-secondary p-1 settings-button"
                        onclick="editHolding(&quot;8026666&quot; , &quot;NASDAQ&quot;, &quot;AMZN&quot; , &quot;0&quot; , &quot;0.00&quot; , &quot;2519330&quot; , false , false , true , &quot;USD&quot;, &quot;0.00&quot;, &quot;0&quot; , &quot;0&quot;, &quot;0&quot;, &quot;&quot;, &quot;Amazon.com, Inc.&quot;, &quot;209.12&quot;, &quot;11/8/2024&quot;)"><span
                          class="fa-regular fa-pen-to-square" aria-hidden="true"></span></button> <button type="button" data-toggle="modal" data-target="#Panel6" title="Delete This Holding" class="btn btn-secondary p-1 settings-button"
                        onclick="deleteStock(&quot;8026666&quot; , &quot;Amazon.com, Inc.&quot;)"><span class="fa-regular fa-trash-can" aria-hidden="true"></span></button>
                    </td>
                  </tr>
                  <tr>
                    <td data-hide="" data-sort-value="GOOGL">
                      <div class="wl-check custom-control custom-checkbox"><input type="checkbox" class="bulkactioncheck" name="includeInBulkAction" value="8026662" id="holding8026662" aria-label="bulk action check box for Alphabet Inc."><label
                          for="holding8026662"><span class="sr-only">Apply Bulk Action to Alphabet Inc.</span></label></div>
                      <div class="wl-with-check"><img loading="lazy" height="28" width="80" src="https://www.marketbeat.com/logos/thumbnail/google-inc-logo.png" alt="Alphabet Inc. logo" title="GOOGL"></div>
                    </td>
                    <td data-clean="GOOGL|Alphabet Inc.">
                      <a class="boldsymbol" href="/stocks/NASDAQ/GOOGL/">GOOGL</a><a rel="nofollow" href="/stocks/NASDAQ/GOOGL/chart/"><img class="sparkline" alt="GOOGL 90-day performance" title="90-day performance" src="https://www.marketbeat.com/Scripts/sparklines.ashx?prefix=NASDAQ&amp;symbol=GOOGL"></a><br>Alphabet
                    </td>
                    <td class="changeable-cell" style="/*min-width:165px*/" data-sort-value="-0.010179806362379" data-clean="$178.91|-$1.84|-1.02%"><strong>$178.91</strong><br><span class="c-red">-$1.84 (-1.02%)</span></td>
                    <td data-sort-value="23.7281481805679">23.73</td>
                    <td>1.03</td>
                    <td data-sort-value="0.80">$0.80 per sh.</td>
                    <td data-sort-value="2.93" data-clean="Moderate Buy|2.93"><strong>Moderate Buy</strong><br>2.93</td>
                    <td style="/*min-width:160px*/" data-sort-value="205.897435897436">$205.90</td>
                    <td class="changeable-cell" data-sort-value="0.150843641481392"><span class="c-green">15.08% Upside</span></td>
                    <td style="text-align:right;min-width:145px;padding:4px 8px 4px 2px;" data-hide="">
                      <div class="ntf-area">
                        <div class="settings-button shownotifications" id="20240502113102133_NASDAQ_GOOGL"><button tabindex="0" onfocus="positionNotifications(this)" onmouseover="positionNotifications(this)"
                            class="btn btn-tertiary p-1 fa-regular fa-bell"><span class="sr-only">View notifications for this stock</span></button><span class="ntf-number plus">9+</span>
                          <div class="latest-notifications">
                            <div>
                              <div class="ntf-header gradient-blue font-8"><strong>Alphabet</strong><span
                                  class="float-right"><a onclick="var e = $('div[id$=' + $(this).closest('.shownotifications').attr('id').split('_')[1] + '_'+ $(this).closest('.shownotifications').attr('id').split('_')[2]); $.get('/Scripts/NotificationsHelpers.ashx?command=markasread&amp;prefix=NASDAQ&amp;symbol=GOOGL&amp;accountid=11404962&amp;hash=8836967B6489343AFFEBE4A9F20736CC3E70C11EF914402B105D0B1411AC2283469760A890F500A211DD2AA9EFAC84240FC1F5B99ADAF28EBA5B81CB4965A10A&amp;viewedthrough=20241108102148647', function (data, status) { $(e).find('.ntf-number').hide(); $(e).find('.new-notification').removeClass('new-notification'); }); this.blur();" style="cursor:pointer;color:#fff;">Mark as Read</a></span>
                                <div class="clearfix"></div>
                              </div>
                              <ul>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/alphabet-nasdaqgoogl-trading-down-12-after-insider-selling-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 10:21 AM - marketbeat.com</div>
                                    <p class="c-black"><a href="https://www.marketbeat.com/instant-alerts/alphabet-nasdaqgoogl-trading-down-12-after-insider-selling-2024-11-08/">Alphabet (NASDAQ:GOOGL) Trading Down 1.2% After Insider Selling</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.insidertrades.com/alerts/nasdaq-googl-insider-buying-and-selling-2024-11-08/"><img src="/images/news-sites/insidertrades.svg" alt="insidertrades.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 6:36 AM - insidertrades.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.insidertrades.com/alerts/nasdaq-googl-insider-buying-and-selling-2024-11-08/">Alphabet Inc. (NASDAQ:GOOGL) Director Sells $1,862,805.00 in Stock</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/earnings/transcripts/112143/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 6:11 AM - marketbeat.com</div>
                                    <p class="c-black"><a href="https://www.marketbeat.com/earnings/transcripts/112143/">Alphabet Q3 Earnings Transcript</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/alphabets-secret-weapon-in-the-global-artificial/"><img src="/images/news-sites/motleyfool.jpg" alt="fool.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 5:15 AM - fool.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/alphabets-secret-weapon-in-the-global-artificial/">Alphabet's Secret Weapon in the Global Artificial Intelligence (AI) Race</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/nvidia-intel-dow-jones-meta-alphabet-disney-stock/"><img src="/images/news-sites/motleyfool.jpg" alt="fool.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 3:10 AM - fool.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/nvidia-intel-dow-jones-meta-alphabet-disney-stock/">With Nvidia Kicking Intel Out of the Dow Jones, Will Meta Platforms or Alphabet Eventually Replace Walt Disney Stock?</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/essex-financial-services-inc-sells-9456-shares-of-alphabet-inc-nasdaqgoogl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:25 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/essex-financial-services-inc-sells-9456-shares-of-alphabet-inc-nasdaqgoogl-2024-11-08/">Essex Financial Services Inc. Sells 9,456 Shares of Alphabet Inc. (NASDAQ:GOOGL)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-is-fortune-financial-advisors-llcs-5th-largest-position-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:25 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-is-fortune-financial-advisors-llcs-5th-largest-position-2024-11-08/">Alphabet Inc. (NASDAQ:GOOGL) is Fortune Financial Advisors LLC's 5th Largest Position</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-holdings-decreased-by-valley-national-advisers-inc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:17 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-holdings-decreased-by-valley-national-advisers-inc-2024-11-08/">Alphabet Inc. (NASDAQ:GOOGL) Holdings Decreased by Valley National Advisers Inc.</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-shares-sold-by-state-of-alaska-department-of-revenue-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:17 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-shares-sold-by-state-of-alaska-department-of-revenue-2024-11-08/">Alphabet Inc. (NASDAQ:GOOGL) Shares Sold by State of Alaska Department of Revenue</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/covenant-partners-llc-has-721000-stock-position-in-alphabet-inc-nasdaqgoogl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:17 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/covenant-partners-llc-has-721000-stock-position-in-alphabet-inc-nasdaqgoogl-2024-11-08/">Covenant Partners LLC Has $721,000 Stock Position in Alphabet Inc. (NASDAQ:GOOGL)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-is-boston-trust-walden-corps-3rd-largest-position-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:17 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-is-boston-trust-walden-corps-3rd-largest-position-2024-11-08/">Alphabet Inc. (NASDAQ:GOOGL) is Boston Trust Walden Corp's 3rd Largest Position</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-shares-acquired-by-bristlecone-advisors-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:17 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-shares-acquired-by-bristlecone-advisors-llc-2024-11-08/">Alphabet Inc. (NASDAQ:GOOGL) Shares Acquired by Bristlecone Advisors LLC</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/smith-salley-wealth-management-boosts-position-in-alphabet-inc-nasdaqgoogl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:17 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/smith-salley-wealth-management-boosts-position-in-alphabet-inc-nasdaqgoogl-2024-11-08/">Smith Salley Wealth Management Boosts Position in Alphabet Inc. (NASDAQ:GOOGL)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-stake-decreased-by-frank-rimerman-advisors-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:17 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-stake-decreased-by-frank-rimerman-advisors-llc-2024-11-08/">Alphabet Inc. (NASDAQ:GOOGL) Stake Decreased by Frank Rimerman Advisors LLC</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/mcrae-capital-management-inc-acquires-22812-shares-of-alphabet-inc-nasdaqgoogl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:17 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/mcrae-capital-management-inc-acquires-22812-shares-of-alphabet-inc-nasdaqgoogl-2024-11-08/">Mcrae Capital Management Inc. Acquires 22,812 Shares of Alphabet Inc. (NASDAQ:GOOGL)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-shares-acquired-by-pfg-investments-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:17 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-shares-acquired-by-pfg-investments-llc-2024-11-08/">Alphabet Inc. (NASDAQ:GOOGL) Shares Acquired by PFG Investments LLC</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-holdings-boosted-by-northcrest-asset-manangement-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:17 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/alphabet-inc-nasdaqgoogl-holdings-boosted-by-northcrest-asset-manangement-llc-2024-11-08/">Alphabet Inc. (NASDAQ:GOOGL) Holdings Boosted by NorthCrest Asset Manangement LLC</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/consolidated-portfolio-review-corp-sells-14347-shares-of-alphabet-inc-nasdaqgoogl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:17 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/consolidated-portfolio-review-corp-sells-14347-shares-of-alphabet-inc-nasdaqgoogl-2024-11-08/">Consolidated Portfolio Review Corp Sells 14,347 Shares of Alphabet Inc. (NASDAQ:GOOGL)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/pathway-financial-advisers-llc-acquires-712841-shares-of-alphabet-inc-nasdaqgoogl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:17 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/pathway-financial-advisers-llc-acquires-712841-shares-of-alphabet-inc-nasdaqgoogl-2024-11-08/">Pathway Financial Advisers LLC Acquires 712,841 Shares of Alphabet Inc. (NASDAQ:GOOGL)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/forsta-ap-fonden-boosts-stock-holdings-in-alphabet-inc-nasdaqgoogl-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/GOOGL/">NASDAQ:GOOGL</a>Today, 2:17 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/forsta-ap-fonden-boosts-stock-holdings-in-alphabet-inc-nasdaqgoogl-2024-11-08/">Forsta AP Fonden Boosts Stock Holdings in Alphabet Inc. (NASDAQ:GOOGL)</a></p>
                                  </div>
                                </li>
                              </ul>
                              <div class="ntf-footer font-8"><a href="/notifications/NASDAQ/GOOGL/">View All Notifications for Alphabet</a></div>
                            </div>
                          </div>
                        </div>
                      </div><button type="button" data-toggle="modal" data-target="#Panel4" title="Edit This Holding" class="btn btn-secondary p-1 settings-button"
                        onclick="editHolding(&quot;8026662&quot; , &quot;NASDAQ&quot;, &quot;GOOGL&quot; , &quot;0&quot; , &quot;0.00&quot; , &quot;2519330&quot; , false , false , true , &quot;USD&quot;, &quot;0.00&quot;, &quot;0&quot; , &quot;0&quot;, &quot;0&quot;, &quot;&quot;, &quot;Alphabet Inc.&quot;, &quot;178.91&quot;, &quot;11/8/2024&quot;)"><span
                          class="fa-regular fa-pen-to-square" aria-hidden="true"></span></button> <button type="button" data-toggle="modal" data-target="#Panel6" title="Delete This Holding" class="btn btn-secondary p-1 settings-button"
                        onclick="deleteStock(&quot;8026662&quot; , &quot;Alphabet Inc.&quot;)"><span class="fa-regular fa-trash-can" aria-hidden="true"></span></button>
                    </td>
                  </tr>
                  <tr>
                    <td data-hide="" data-sort-value="META">
                      <div class="wl-check custom-control custom-checkbox"><input type="checkbox" class="bulkactioncheck" name="includeInBulkAction" value="8026664" id="holding8026664"
                          aria-label="bulk action check box for Meta Platforms, Inc."><label for="holding8026664"><span class="sr-only">Apply Bulk Action to Meta Platforms, Inc.</span></label></div>
                      <div class="wl-with-check"><img loading="lazy" height="76" width="80" src="https://www.marketbeat.com/logos/thumbnail/meta-platforms-inc-logo.png?v=20220609084126" alt="Meta Platforms, Inc. logo" title="META"></div>
                    </td>
                    <td data-clean="META|Meta Platforms, Inc.">
                      <a class="boldsymbol" href="/stocks/NASDAQ/META/">META</a><a rel="nofollow" href="/stocks/NASDAQ/META/chart/"><img class="sparkline" alt="META 90-day performance" title="90-day performance" src="https://www.marketbeat.com/Scripts/sparklines.ashx?prefix=NASDAQ&amp;symbol=META"></a><br>Meta
                      Platforms</td>
                    <td class="changeable-cell" style="/*min-width:165px*/" data-sort-value="-0.00845022815616022" data-clean="$586.70|-$5.00|-0.85%"><strong>$586.70</strong><br><span class="c-red">-$5.00 (-0.85%)</span></td>
                    <td data-sort-value="27.6354345904073">27.64</td>
                    <td>1.22</td>
                    <td data-sort-value="2.00">$2.00 per sh.</td>
                    <td data-sort-value="2.86" data-clean="Moderate Buy|2.86"><strong>Moderate Buy</strong><br>2.86</td>
                    <td style="/*min-width:160px*/" data-sort-value="634.09756097561">$634.10</td>
                    <td class="changeable-cell" data-sort-value="0.0807867069637118"><span class="c-green">8.08% Upside</span></td>
                    <td style="text-align:right;min-width:145px;padding:4px 8px 4px 2px;" data-hide="">
                      <div class="ntf-area">
                        <div class="settings-button shownotifications" id="20240502113102133_NASDAQ_META"><button tabindex="0" onfocus="positionNotifications(this)" onmouseover="positionNotifications(this)"
                            class="btn btn-tertiary p-1 fa-regular fa-bell"><span class="sr-only">View notifications for this stock</span></button><span class="ntf-number plus">9+</span>
                          <div class="latest-notifications">
                            <div>
                              <div class="ntf-header gradient-blue font-8"><strong>Meta Platforms</strong><span
                                  class="float-right"><a onclick="var e = $('div[id$=' + $(this).closest('.shownotifications').attr('id').split('_')[1] + '_'+ $(this).closest('.shownotifications').attr('id').split('_')[2]); $.get('/Scripts/NotificationsHelpers.ashx?command=markasread&amp;prefix=NASDAQ&amp;symbol=META&amp;accountid=11404962&amp;hash=8836967B6489343AFFEBE4A9F20736CC3E70C11EF914402B105D0B1411AC2283469760A890F500A211DD2AA9EFAC84240FC1F5B99ADAF28EBA5B81CB4965A10A&amp;viewedthrough=20241108093024', function (data, status) { $(e).find('.ntf-number').hide(); $(e).find('.new-notification').removeClass('new-notification'); }); this.blur();" style="cursor:pointer;color:#fff;">Mark as Read</a></span>
                                <div class="clearfix"></div>
                              </div>
                              <ul>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://247wallst.com/investing/2024/11/08/prediction-meta-platforms-will-be-a-top-5-stock-by-market-capitalization-by-2026/?utm_source=snapi"><img src="/images/news-sites/247wallst.jpg" alt="247wallst.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 9:30 AM - 247wallst.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://247wallst.com/investing/2024/11/08/prediction-meta-platforms-will-be-a-top-5-stock-by-market-capitalization-by-2026/?utm_source=snapi">Prediction: Meta Platforms Will Be a Top 5 Stock By Market Capitalization By 2026</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.msn.com/en-us/money/markets/jim-cramer-says-market-is-underestimating-meta-platforms-meta-s-ability-to-dominante-ads-market/ar-AA1tIHPj"><img src="/images/news-sites/msn.jpg" alt="msn.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 7:33 AM - msn.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.msn.com/en-us/money/markets/jim-cramer-says-market-is-underestimating-meta-platforms-meta-s-ability-to-dominante-ads-market/ar-AA1tIHPj">Jim Cramer Says Market is ‘Underestimating’ Meta Platforms (META)’s Ability to Dominante Ads Market</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.insidertrades.com/alerts/nasdaq-meta-insider-buying-and-selling-2024-11-08/"><img src="/images/news-sites/insidertrades.svg" alt="insidertrades.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 6:56 AM - insidertrades.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.insidertrades.com/alerts/nasdaq-meta-insider-buying-and-selling-2024-11-08/">Meta Platforms, Inc. (NASDAQ:META) Insider Jennifer Newstead Sells 901 Shares</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.msn.com/en-us/money/topstocks/is-meta-platforms-a-top-artificial-intelligence-ai-stock-to-buy-now/ar-AA1tJD7t"><img src="/images/news-sites/msn.jpg" alt="msn.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 4:41 AM - msn.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.msn.com/en-us/money/topstocks/is-meta-platforms-a-top-artificial-intelligence-ai-stock-to-buy-now/ar-AA1tJD7t">Is Meta Platforms a Top Artificial Intelligence (AI) Stock to Buy Now?</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/is-meta-platforms-a-top-artificial-intelligence-ai/"><img src="/images/news-sites/motleyfool.jpg" alt="fool.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 4:30 AM - fool.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/is-meta-platforms-a-top-artificial-intelligence-ai/">Is Meta Platforms a Top Artificial Intelligence (AI) Stock to Buy Now?</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/meta-platforms-inc-nasdaqmeta-shares-bought-by-amalgamated-bank-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 3:16 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/meta-platforms-inc-nasdaqmeta-shares-bought-by-amalgamated-bank-2024-11-08/">Meta Platforms, Inc. (NASDAQ:META) Shares Bought by Amalgamated Bank</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/meta-platforms-inc-nasdaqmeta-shares-bought-by-united-advisor-group-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 3:16 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/meta-platforms-inc-nasdaqmeta-shares-bought-by-united-advisor-group-llc-2024-11-08/">Meta Platforms, Inc. (NASDAQ:META) Shares Bought by United Advisor Group LLC</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/central-bank-trust-co-sells-1892-shares-of-meta-platforms-inc-nasdaqmeta-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 3:16 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/central-bank-trust-co-sells-1892-shares-of-meta-platforms-inc-nasdaqmeta-2024-11-08/">Central Bank &amp; Trust Co. Sells 1,892 Shares of Meta Platforms, Inc. (NASDAQ:META)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/meta-platforms-inc-nasdaqmeta-shares-sold-by-stoneridge-investment-partners-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 3:16 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/meta-platforms-inc-nasdaqmeta-shares-sold-by-stoneridge-investment-partners-llc-2024-11-08/">Meta Platforms, Inc. (NASDAQ:META) Shares Sold by Stoneridge Investment Partners LLC</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/meta-platforms-inc-nasdaqmeta-shares-sold-by-gulf-international-bank-uk-ltd-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 3:16 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/meta-platforms-inc-nasdaqmeta-shares-sold-by-gulf-international-bank-uk-ltd-2024-11-08/">Meta Platforms, Inc. (NASDAQ:META) Shares Sold by Gulf International Bank UK Ltd</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/catalyst-capital-advisors-llc-buys-1708-shares-of-meta-platforms-inc-nasdaqmeta-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 3:16 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/catalyst-capital-advisors-llc-buys-1708-shares-of-meta-platforms-inc-nasdaqmeta-2024-11-08/">Catalyst Capital Advisors LLC Buys 1,708 Shares of Meta Platforms, Inc. (NASDAQ:META)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/rational-advisors-llc-acquires-1339-shares-of-meta-platforms-inc-nasdaqmeta-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 3:15 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/rational-advisors-llc-acquires-1339-shares-of-meta-platforms-inc-nasdaqmeta-2024-11-08/">Rational Advisors LLC Acquires 1,339 Shares of Meta Platforms, Inc. (NASDAQ:META)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/quintet-private-bank-europe-sa-has-504-million-position-in-meta-platforms-inc-nasdaqmeta-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 3:15 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/quintet-private-bank-europe-sa-has-504-million-position-in-meta-platforms-inc-nasdaqmeta-2024-11-08/">Quintet Private Bank Europe S.A. Has $5.04 Million Position in Meta Platforms, Inc. (NASDAQ:META)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/first-national-bank-of-mount-dora-trust-investment-services-acquires-5312-shares-of-meta-platforms-inc-nasdaqmeta-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 3:15 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/first-national-bank-of-mount-dora-trust-investment-services-acquires-5312-shares-of-meta-platforms-inc-nasdaqmeta-2024-11-08/">First National Bank of Mount Dora Trust Investment Services Acquires 5,312 Shares of Meta Platforms, Inc. (NASDAQ:META)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/world-equity-group-inc-has-337-million-position-in-meta-platforms-inc-nasdaqmeta-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 3:15 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/world-equity-group-inc-has-337-million-position-in-meta-platforms-inc-nasdaqmeta-2024-11-08/">World Equity Group Inc. Has $3.37 Million Position in Meta Platforms, Inc. (NASDAQ:META)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/nvidia-intel-dow-jones-meta-alphabet-disney-stock/"><img src="/images/news-sites/motleyfool.jpg" alt="fool.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 3:10 AM - fool.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/nvidia-intel-dow-jones-meta-alphabet-disney-stock/">With Nvidia Kicking Intel Out of the Dow Jones, Will Meta Platforms or Alphabet Eventually Replace Walt Disney Stock?</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/qrg-capital-management-inc-has-23872-million-stake-in-meta-platforms-inc-nasdaqmeta-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 2:59 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/qrg-capital-management-inc-has-23872-million-stake-in-meta-platforms-inc-nasdaqmeta-2024-11-08/">QRG Capital Management Inc. Has $238.72 Million Stake in Meta Platforms, Inc. (NASDAQ:META)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/meta-platforms-inc-nasdaqmeta-is-national-pension-services-6th-largest-position-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 2:59 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/meta-platforms-inc-nasdaqmeta-is-national-pension-services-6th-largest-position-2024-11-08/">Meta Platforms, Inc. (NASDAQ:META) is National Pension Service's 6th Largest Position</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/asset-management-one-co-ltd-sells-5276-shares-of-meta-platforms-inc-nasdaqmeta-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 2:59 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/asset-management-one-co-ltd-sells-5276-shares-of-meta-platforms-inc-nasdaqmeta-2024-11-08/">Asset Management One Co. Ltd. Sells 5,276 Shares of Meta Platforms, Inc. (NASDAQ:META)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/rep-josh-gottheimer-sells-off-shares-of-meta-platforms-inc-nasdaqmeta-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/META/">NASDAQ:META</a>Today, 2:02 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/rep-josh-gottheimer-sells-off-shares-of-meta-platforms-inc-nasdaqmeta-2024-11-08/">Rep. Josh Gottheimer Sells Off Shares of Meta Platforms, Inc. (NASDAQ:META)</a>
                                    </p>
                                  </div>
                                </li>
                              </ul>
                              <div class="ntf-footer font-8"><a href="/notifications/NASDAQ/META/">View All Notifications for Meta Platforms</a></div>
                            </div>
                          </div>
                        </div>
                      </div><button type="button" data-toggle="modal" data-target="#Panel4" title="Edit This Holding" class="btn btn-secondary p-1 settings-button"
                        onclick="editHolding(&quot;8026664&quot; , &quot;NASDAQ&quot;, &quot;META&quot; , &quot;0&quot; , &quot;0.00&quot; , &quot;2519330&quot; , false , false , true , &quot;USD&quot;, &quot;0.00&quot;, &quot;0&quot; , &quot;0&quot;, &quot;0&quot;, &quot;&quot;, &quot;Meta Platforms, Inc.&quot;, &quot;586.70&quot;, &quot;11/8/2024&quot;)"><span
                          class="fa-regular fa-pen-to-square" aria-hidden="true"></span></button> <button type="button" data-toggle="modal" data-target="#Panel6" title="Delete This Holding" class="btn btn-secondary p-1 settings-button"
                        onclick="deleteStock(&quot;8026664&quot; , &quot;Meta Platforms, Inc.&quot;)"><span class="fa-regular fa-trash-can" aria-hidden="true"></span></button>
                    </td>
                  </tr>
                  <tr>
                    <td data-hide="" data-sort-value="MSFT">
                      <div class="wl-check custom-control custom-checkbox"><input type="checkbox" class="bulkactioncheck" name="includeInBulkAction" value="8026665" id="holding8026665" aria-label="bulk action check box for Microsoft Co."><label
                          for="holding8026665"><span class="sr-only">Apply Bulk Action to Microsoft Co.</span></label></div>
                      <div class="wl-with-check"><img loading="lazy" height="41" width="80" src="https://www.marketbeat.com/logos/thumbnail/microsoft-corporation-logo.png" alt="Microsoft Co. logo" title="MSFT"></div>
                    </td>
                    <td data-clean="MSFT|Microsoft Co.">
                      <a class="boldsymbol" href="/stocks/NASDAQ/MSFT/">MSFT</a><a rel="nofollow" href="/stocks/NASDAQ/MSFT/chart/"><img class="sparkline" alt="MSFT 90-day performance" title="90-day performance" src="https://www.marketbeat.com/Scripts/sparklines.ashx?prefix=NASDAQ&amp;symbol=MSFT"></a><br>Microsoft
                    </td>
                    <td class="changeable-cell" style="/*min-width:165px*/" data-sort-value="-0.00665209317631573" data-clean="$422.60|-$2.83|-0.67%"><strong>$422.60</strong><br><span class="c-red">-$2.83 (-0.67%)</span></td>
                    <td data-sort-value="34.8679867986799">34.87</td>
                    <td>0.91</td>
                    <td data-sort-value="3.32">$3.32 per sh.</td>
                    <td data-sort-value="2.86" data-clean="Moderate Buy|2.86"><strong>Moderate Buy</strong><br>2.86</td>
                    <td style="/*min-width:160px*/" data-sort-value="503.034482758621">$503.03</td>
                    <td class="changeable-cell" data-sort-value="0.190332424890252"><span class="c-green">19.03% Upside</span></td>
                    <td style="text-align:right;min-width:145px;padding:4px 8px 4px 2px;" data-hide="">
                      <div class="ntf-area">
                        <div class="settings-button shownotifications" id="20240502113102133_NASDAQ_MSFT"><button tabindex="0" onfocus="positionNotifications(this)" onmouseover="positionNotifications(this)"
                            class="btn btn-tertiary p-1 fa-regular fa-bell"><span class="sr-only">View notifications for this stock</span></button><span class="ntf-number plus">9+</span>
                          <div class="latest-notifications">
                            <div>
                              <div class="ntf-header gradient-blue font-8"><strong>Microsoft</strong><span
                                  class="float-right"><a onclick="var e = $('div[id$=' + $(this).closest('.shownotifications').attr('id').split('_')[1] + '_'+ $(this).closest('.shownotifications').attr('id').split('_')[2]); $.get('/Scripts/NotificationsHelpers.ashx?command=markasread&amp;prefix=NASDAQ&amp;symbol=MSFT&amp;accountid=11404962&amp;hash=8836967B6489343AFFEBE4A9F20736CC3E70C11EF914402B105D0B1411AC2283469760A890F500A211DD2AA9EFAC84240FC1F5B99ADAF28EBA5B81CB4965A10A&amp;viewedthrough=20241108081715237', function (data, status) { $(e).find('.ntf-number').hide(); $(e).find('.new-notification').removeClass('new-notification'); }); this.blur();" style="cursor:pointer;color:#fff;">Mark as Read</a></span>
                                <div class="clearfix"></div>
                              </div>
                              <ul>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.msn.com/en-us/money/other/microsoft-corporation-msft-ai-powered-updates-for-windows-apps/ar-AA1tJJPE"><img src="/images/news-sites/msn.jpg" alt="msn.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 8:17 AM - msn.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.msn.com/en-us/money/other/microsoft-corporation-msft-ai-powered-updates-for-windows-apps/ar-AA1tJJPE">Microsoft Corporation (MSFT): AI-Powered Updates for Windows Apps</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/microsoft-nasdaqmsft-shares-unloaded-rep-josh-gottheimer-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 5:04 AM - marketbeat.com</div>
                                    <p class="c-black"><a href="https://www.marketbeat.com/instant-alerts/microsoft-nasdaqmsft-shares-unloaded-rep-josh-gottheimer-2024-11-08/">Microsoft (NASDAQ:MSFT) Shares Unloaded Rep. Josh Gottheimer</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/rep-josh-gottheimer-sells-off-shares-of-microsoft-co-nasdaqmsft-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 5:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/rep-josh-gottheimer-sells-off-shares-of-microsoft-co-nasdaqmsft-2024-11-08/">Rep. Josh Gottheimer Sells Off Shares of Microsoft Co. (NASDAQ:MSFT)</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/meet-the-3-supercharged-growth-stocks-that-will-be/"><img src="/images/news-sites/motleyfool.jpg" alt="fool.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 3:02 AM - fool.com</div>
                                    <p class="c-black">
                                      <a rel="nofollow noopener" target="_blank" href="https://www.fool.com/investing/2024/11/08/meet-the-3-supercharged-growth-stocks-that-will-be/">Meet the 3 Supercharged Growth Stocks That Will Be Worth $4 Trillion by 2025, According to a Certain Wall Street Analyst</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/microsoft-co-nasdaqmsft-holdings-decreased-by-huber-capital-management-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/microsoft-co-nasdaqmsft-holdings-decreased-by-huber-capital-management-llc-2024-11-08/">Microsoft Co. (NASDAQ:MSFT) Holdings Decreased by Huber Capital Management LLC</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/microsoft-co-nasdaqmsft-position-decreased-by-bulltick-wealth-management-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/microsoft-co-nasdaqmsft-position-decreased-by-bulltick-wealth-management-llc-2024-11-08/">Microsoft Co. (NASDAQ:MSFT) Position Decreased by Bulltick Wealth Management LLC</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/merriman-wealth-management-llc-sells-1351-shares-of-microsoft-co-nasdaqmsft-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/merriman-wealth-management-llc-sells-1351-shares-of-microsoft-co-nasdaqmsft-2024-11-08/">Merriman Wealth Management LLC Sells 1,351 Shares of Microsoft Co. (NASDAQ:MSFT)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/microsoft-co-nasdaqmsft-is-auxier-asset-managements-largest-position-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/microsoft-co-nasdaqmsft-is-auxier-asset-managements-largest-position-2024-11-08/">Microsoft Co. (NASDAQ:MSFT) is Auxier Asset Management's Largest Position</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/ensign-peak-advisors-inc-has-341-billion-stock-holdings-in-microsoft-co-nasdaqmsft-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/ensign-peak-advisors-inc-has-341-billion-stock-holdings-in-microsoft-co-nasdaqmsft-2024-11-08/">Ensign Peak Advisors Inc Has $3.41 Billion Stock Holdings in Microsoft Co. (NASDAQ:MSFT)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/westwood-holdings-group-inc-decreases-stock-holdings-in-microsoft-co-nasdaqmsft-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/westwood-holdings-group-inc-decreases-stock-holdings-in-microsoft-co-nasdaqmsft-2024-11-08/">Westwood Holdings Group Inc. Decreases Stock Holdings in Microsoft Co. (NASDAQ:MSFT)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/arista-wealth-management-llc-buys-4081-shares-of-microsoft-co-nasdaqmsft-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/arista-wealth-management-llc-buys-4081-shares-of-microsoft-co-nasdaqmsft-2024-11-08/">Arista Wealth Management LLC Buys 4,081 Shares of Microsoft Co. (NASDAQ:MSFT)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/sompo-asset-management-co-ltd-has-3284-million-stock-holdings-in-microsoft-co-nasdaqmsft-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/sompo-asset-management-co-ltd-has-3284-million-stock-holdings-in-microsoft-co-nasdaqmsft-2024-11-08/">Sompo Asset Management Co. Ltd. Has $32.84 Million Stock Holdings in Microsoft Co. (NASDAQ:MSFT)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/8283-shares-in-microsoft-co-nasdaqmsft-acquired-by-tpg-advisors-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/8283-shares-in-microsoft-co-nasdaqmsft-acquired-by-tpg-advisors-llc-2024-11-08/">8,283 Shares in Microsoft Co. (NASDAQ:MSFT) Acquired by TPG Advisors LLC</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/summit-trail-advisors-llc-raises-holdings-in-microsoft-co-nasdaqmsft-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:05 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/summit-trail-advisors-llc-raises-holdings-in-microsoft-co-nasdaqmsft-2024-11-08/">Summit Trail Advisors LLC Raises Holdings in Microsoft Co. (NASDAQ:MSFT)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/microsoft-co-nasdaqmsft-shares-purchased-by-center-lake-capital-management-llc-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/microsoft-co-nasdaqmsft-shares-purchased-by-center-lake-capital-management-llc-2024-11-08/">Microsoft Co. (NASDAQ:MSFT) Shares Purchased by Center Lake Capital Management LLC</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/ameritas-investment-partners-inc-decreases-stake-in-microsoft-co-nasdaqmsft-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/ameritas-investment-partners-inc-decreases-stake-in-microsoft-co-nasdaqmsft-2024-11-08/">Ameritas Investment Partners Inc. Decreases Stake in Microsoft Co. (NASDAQ:MSFT)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/thrivent-financial-for-lutherans-raises-stake-in-microsoft-co-nasdaqmsft-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/thrivent-financial-for-lutherans-raises-stake-in-microsoft-co-nasdaqmsft-2024-11-08/">Thrivent Financial for Lutherans Raises Stake in Microsoft Co. (NASDAQ:MSFT)</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/microsoft-co-nasdaqmsft-is-sei-investments-cos-largest-position-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/microsoft-co-nasdaqmsft-is-sei-investments-cos-largest-position-2024-11-08/">Microsoft Co. (NASDAQ:MSFT) is Sei Investments Co.'s Largest Position</a></p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/microsoft-co-nasdaqmsft-shares-sold-by-longview-partners-guernsey-ltd-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/microsoft-co-nasdaqmsft-shares-sold-by-longview-partners-guernsey-ltd-2024-11-08/">Microsoft Co. (NASDAQ:MSFT) Shares Sold by Longview Partners Guernsey LTD</a>
                                    </p>
                                  </div>
                                </li>
                                <li class="one-notification new-notification">
                                  <div class="li-inner">
                                    <a class="ntf-image-link" href="https://www.marketbeat.com/instant-alerts/pacer-advisors-inc-has-32442-million-stock-holdings-in-microsoft-co-nasdaqmsft-2024-11-08/"><img src="/images/news-sites/marketbeat.png" alt="marketbeat.com logo" height="100" width="100" style="object-fit:contain" loading="lazy"></a>
                                    <div class="ntf-heading c-black"><a href="/stocks/NASDAQ/MSFT/">NASDAQ:MSFT</a>Today, 2:04 AM - marketbeat.com</div>
                                    <p class="c-black">
                                      <a href="https://www.marketbeat.com/instant-alerts/pacer-advisors-inc-has-32442-million-stock-holdings-in-microsoft-co-nasdaqmsft-2024-11-08/">Pacer Advisors Inc. Has $324.42 Million Stock Holdings in Microsoft Co. (NASDAQ:MSFT)</a>
                                    </p>
                                  </div>
                                </li>
                              </ul>
                              <div class="ntf-footer font-8"><a href="/notifications/NASDAQ/MSFT/">View All Notifications for Microsoft</a></div>
                            </div>
                          </div>
                        </div>
                      </div><button type="button" data-toggle="modal" data-target="#Panel4" title="Edit This Holding" class="btn btn-secondary p-1 settings-button"
                        onclick="editHolding(&quot;8026665&quot; , &quot;NASDAQ&quot;, &quot;MSFT&quot; , &quot;0&quot; , &quot;0.00&quot; , &quot;2519330&quot; , false , false , true , &quot;USD&quot;, &quot;0.00&quot;, &quot;0&quot; , &quot;0&quot;, &quot;0&quot;, &quot;&quot;, &quot;Microsoft Co.&quot;, &quot;422.60&quot;, &quot;11/8/2024&quot;)"><span
                          class="fa-regular fa-pen-to-square" aria-hidden="true"></span></button> <button type="button" data-toggle="modal" data-target="#Panel6" title="Delete This Holding" class="btn btn-secondary p-1 settings-button"
                        onclick="deleteStock(&quot;8026665&quot; , &quot;Microsoft Co.&quot;)"><span class="fa-regular fa-trash-can" aria-hidden="true"></span></button>
                    </td>
                  </tr>
                </tbody>
                <tfoot>
                  <tr>
                    <td colspan="10" class="footer-cell">No holding sizes have been added to this watchlist. Edit holdings and add the number of units held in order to see watchlist totals.</td>
                  </tr>
                </tfoot>
              </table>
            </div>
          </div>
        </div>
        <div id="boundlessTooltip" style="width: 260px; display: none; z-index: 101; padding: 5px;">
        </div>
        <br>
        <div id="cphPrimaryContent_BulkActions" class="top-label-wrapper" style="max-width: 400px;">
          <div class="input-group">
            <select name="ctl00$cphPrimaryContent$ddlBulkActions" id="cphPrimaryContent_ddlBulkActions" class="bulkActionSelect m-0 top-labeled-input" aria-label="Bulk Actions" style="width: calc(100% - 93px);">
              <option value="0">Select a Bulk Action</option>
              <option value="bulkDelete">Delete These Holdings</option>
              <option value="bulkEnableEmail">Enable Email Alerts for These Holdings</option>
              <option value="bulkDisableEmail">Disable Email Alerts for These Holdings</option>
              <option value="bulkMove2519330">Move Holdings to 'My Default Watchlist'</option>
              <option value="bulkMoveNew">Move Holdings to a New Watchlist</option>
            </select>
            <div class="input-group-append">
              <button type="button" onclick="bulkActionModalShow('cphPrimaryContent_BulkActions');" class="btn btn-primary btn-inline-input" style="padding:9px">Apply<span class="fa-regular fa-square-check ml-2"></span></button>
            </div>
          </div>
          <span class="top-label">Bulk Actions</span>
          <p class="bulkActionWarning font-8 pt-1"></p>
        </div>
      </div>
      <!-- Performance-->
      <div id="pan2" class="tab-pane is-hidden" role="tabpanel" aria-labelledby="performancetab" tabindex="0">
        <h2 class="sr-only">Portfolio Performance</h2>
        <div style="padding: 6px 10px 8px;margin-bottom: 10px;border-radius: 2px;" class="bg-light-red c-dark-red">For statistics to be calculated for this portfolio, you must edit the details of the holdings, adding the number of shares you own.
        </div>
        <div class="statistics">
          <div id="cphPrimaryContent_divPP" class="pp">
            <h3 class="block-header">Portfolio Performance <button type="button" class="moreinfo" aria-label="Portfolio Performance Explanation"><span class="fa-regular fa-circle-question"></span><span class="tooltiptext">View your portfolio's
                  performance compared to an index over time.</span></button></h3>
            <input type="hidden" name="ctl00$cphPrimaryContent$hdnSubscriberId" id="cphPrimaryContent_hdnSubscriberId" value="11404962">
            <div class="stat">
              <div style="float: left; margin-right: 10px;"> Compare Against&nbsp; <select id="selCompareWatchlistIndex" aria-label="Index to compare to">
                  <option value="DIA">Dow Jones</option>
                  <option value="QQQ">NASDAQ</option>
                  <option value="SPY">S&amp;P 500</option>
                </select>
                <select id="selCompareWatchlistTime" aria-label="Timeframe for Comparison">
                  <option value="14D">14 Days</option>
                  <option value="30D" selected="">30 Days</option>
                  <option value="60D">60 Days</option>
                  <option value="90D">90 Days</option>
                  <option value="YTD">Year-to-Date</option>
                  <option value="1Y">1 Year</option>
                  <option value="3Y">3 Years</option>
                  <option value="5Y">5 Years</option>
                  <option value="10Y">10 Years</option>
                </select>
              </div>
              <script defer="" src="https://www.marketbeat.com/Scripts/libraries/d3.min.js" charset="utf-8"></script>
              <script>
                var ScrpRestrict = "98F32106F29423A817833A2774690CFD5D566A4D62AD01028305DE6B03C07C0A9E4FA0C1197971EF4C4C293C214C1C167199541BC1D2BDBD814000209DE63659"
              </script>
              <script defer="" src="/Scripts/charts/dv-charts.js?v=20241101" charset="utf-8" type="text/javascript"></script>
              <script defer="">
                function loadAndDrawComparisonToIndexChart(yLabel, divID, dataPointTimespan, stocksList, IndexName, StocksListName, filename, IndexSymbol = 'SPY', NumberOfYears = 1) {
                  if (stocksList.length > 0) {
                    $("#" + divID).removeClass("unavailable-message");
                    csvFilePath = "/Scripts/charts/" + filename + "&StocksListName=Top%20Rated&StocksList=" + stocksList + "&IndexSymbol=" + IndexSymbol + "&NumberOfYears=" + NumberOfYears + "";
                    d3.csv(csvFilePath, ready);

                    function ready(err, data) {
                      if (err) throw "error loading data";
                      if (data.length > 0) {
                        //FORMAT data
                        data.forEach(function(d) {
                          d.PortfolioGrowth = +d.PortfolioGrowth;
                          d.IndexGrowth = +d.IndexGrowth;
                          d.Date = parseTime(d.Date);
                        });
                        //Organizes the data	
                        data.sort(function(a, b) {
                          return a.QuarterNumber - b.QuarterNumber;
                        });
                        var minY = d3.min(data, function(d) {
                          if (d.PortfolioGrowth < 0) {
                            return d.PortfolioGrowth * 1.4;
                          } else {
                            return d.PortfolioGrowth * .6;
                          }
                        });
                        var yetAnotherMinY = d3.min(data, function(d) {
                          if (d.IndexGrowth < 0) {
                            return d.IndexGrowth * 1.4;
                          } else {
                            return d.IndexGrowth * .6;
                          }
                        });
                        minY = Math.min(minY, yetAnotherMinY);
                        var maxY = d3.max(data, function(d) {
                          if (d.PortfolioGrowth < 0) {
                            return d.PortfolioGrowth * .6;
                          } else {
                            return d.PortfolioGrowth * 1.6;
                          }
                        });
                        var otherMaxY = d3.max(data, function(d) {
                          if (d.IndexGrowth < 0) {
                            return d.IndexGrowth * .6;
                          } else {
                            return d.IndexGrowth * 1.6;
                          }
                        });
                        maxY = Math.max(maxY, otherMaxY);
                        var largestYAxisLabel = d3.format(".0%")(maxY);
                        var largestYAxisLabelWidth = largestYAxisLabel.length * 9 + 12;
                        var maxX = data.length - 1;
                        var LatestPrice = d3.max(data.map(function(d) {
                          return d.Date;
                        }));
                        LatestPrice.setDate(LatestPrice.getDate());
                        var originalStart = data[0].Date;
                        var originalEnd = data[maxX].Date;
                        var daysOnOriginalScale = Math.max(Date.daysBetween(originalStart, originalEnd), 2);
                        var pastPercentage = 1;
                        var offsetAmount = Math.min(25, daysOnOriginalScale / 2);
                        var start = d3.timeDay.offset(originalStart, -offsetAmount);
                        var end = d3.timeDay.offset(originalEnd, offsetAmount);
                        var daysOnScale = Date.daysBetween(start, end);
                        var longDateFormat = d3.timeFormat("%m/%d/%Y");
                        var getMiddleDates = function(start, end) {
                          var middleDates = [];
                          var dateArray = d3.scaleTime().domain([start, end]).ticks(d3.timeDay, 1);
                          if (start.getFullYear() === end.getFullYear()) {
                            middledate = new Date((start.getTime() + end.getTime()) / 2);
                            middledate = new Date(middledate.getFullYear(), middledate.getMonth(), middledate.getDate());
                            middleDates.push(middledate);
                            middledate = d3.timeDay.offset(middledate, 15);
                          } else {
                            for (let i = 0; i < dateArray.length - 1; i++) {
                              if (i === 0) {
                                thisdate = dateArray[i];
                                endofthisyear = new Date(thisdate.getFullYear(), 11, 1); // we're cutting the year span lines off on dec 1 for this chart
                                middledate = new Date((thisdate.getTime() + endofthisyear.getTime()) / 2);
                                middledate = new Date(middledate.getFullYear(), middledate.getMonth(), middledate.getDate());
                                middleDates.push(middledate);
                              } else if (dateArray[i].getMonth() === 0 && dateArray[i].getDate() === 1) {
                                thisdate = dateArray[i];
                                endofthisyear = new Date(thisdate.getFullYear(), 11, 1); // we're cutting the year span lines off on dec 1 for this chart
                                endofthisyear = Math.min(endofthisyear.getTime(), end.getTime());
                                endofthisyear = new Date(endofthisyear);
                                middledate = new Date((thisdate.getTime() + endofthisyear.getTime()) / 2);
                                middledate = new Date(middledate.getFullYear(), middledate.getMonth(), middledate.getDate());
                                middleDates.push(middledate);
                              }
                            }
                          }
                          return middleDates;
                        };
                        var middleDatesArray = getMiddleDates(start, end);
                        var drawChart = function() {
                          //Margin conventions
                          var margin = {
                            top: 20,
                            right: 15,
                            bottom: 100,
                            left: largestYAxisLabelWidth
                          };
                          var widther = d3.select("#" + divID).node().clientWidth;
                          var width = widther - margin.left - margin.right;
                          var height = 300 - margin.top - margin.bottom;
                          var rangeWidth = width;
                          var xScale = d3.scaleTime().range([0, width]).domain([start, end]);
                          if (widther < 600) {
                            rangeWidth = 900;
                            extraMobileWidth = rangeWidth - width;
                            xScale = d3.scaleTime().range([(extraMobileWidth * -pastPercentage) + 15, width + (extraMobileWidth * (1 - pastPercentage)) - 15]).domain([start, end]);
                          }
                          var quarterDistance = (90 / daysOnScale) * rangeWidth;
                          var comparisonChartBase = {
                            svg: null,
                            underGroup: null,
                            shadowGroup: null,
                            mainGroup: null,
                            bottomGroup: null,
                            yTextGroup: null,
                            overGroup: null,
                            clip: null
                          }
                          $("#" + divID).removeClass("loading-message");
                          comparisonChartBase.svg = d3.select("#" + divID).append("svg").attr("id", "svg" + divID).attr("width", width + margin.left + margin.right).attr("height", height + margin.top + margin.bottom).attr("aria-label",
                            "This chart shows this company's average share price and price target history by month.").attr("data-pastPercentage", pastPercentage).attr("data-marginTop", margin.top).attr("data-marginLeft", margin.left);
                          appendLayers(comparisonChartBase, margin, width, height);
                          appendFilters(comparisonChartBase, margin, width, height);
                          var yScale = d3.scaleLinear().range([height, 0]).domain([minY, maxY]);
                          //Defines the y axis styles
                          var yAxisLines = d3.axisLeft(yScale).tickSize(-width).tickPadding(margin.left).ticks(4).tickFormat("");
                          var yAxisText = d3.axisLeft(yScale).tickSize(-width).tickPadding(12).ticks(4).tickFormat(function(d) {
                            return d3.format(".0%")(d);
                          });
                          //line function convention (feeds an array)
                          var portfolioGrowthLine = function(currentXScale) {
                            return d3.line().curve(d3.curveMonotoneX).x(function(d) {
                              return currentXScale(d.Date);
                            }).y(function(d) {
                              return yScale(d.PortfolioGrowth);
                            }).defined(function(d) {
                              return d.Date;
                            });
                          };
                          var IndexGrowthLine = function(currentXScale) {
                            return d3.line().curve(d3.curveMonotoneX).x(function(d) {
                              return currentXScale(d.Date);
                            }).y(function(d) {
                              return yScale(d.IndexGrowth);
                            }).defined(function(d) {
                              return d.Date;
                            });
                          };
                          var IndexGrowthSegmentDrawer = d3.line().curve(d3.curveMonotoneX).x(function(d) {
                            return xScale(d.Date);
                          }).y(function(d) {
                            return yScale(d.IndexGrowth);
                          });
                          var invisibleIndexGrowthSegment = comparisonChartBase.mainGroup.append("path").datum(data).attr("class", "invisible-line").attr("d", IndexGrowthSegmentDrawer);
                          var portfolioSegmentDrawer = d3.line().curve(d3.curveMonotoneX).x(function(d) {
                            return xScale(d.Date);
                          }).y(function(d) {
                            return yScale(d.PortfolioGrowth);
                          });
                          var invisiblePortfolioSegment = comparisonChartBase.mainGroup.append("path").datum(data).attr("class", "invisible-line").attr("d", IndexGrowthSegmentDrawer);
                          var xAxisYearSpanLines = function(currentXScale) {
                            return d3.axisBottom(currentXScale).tickPadding(8).ticks(d3.timeDay, 1).tickSize(2).tickFormat('');
                          };
                          //Appends the y axis
                          var yAxisGroupLines = comparisonChartBase.underGroup.append("g").attr("class", "y axis").attr("transform", "translate(" + margin.left + "," + margin.top + ")").call(yAxisLines).selectAll("g").classed("g-baseline",
                            function(d) {
                              return d === 0
                            });
                          var yAxisGroupText = comparisonChartBase.yTextGroup.append("g").attr("class", "y axis top").attr("transform", "translate(" + margin.left + "," + margin.top + ")").call(yAxisText).selectAll("g").classed("g-baseline",
                            function(d) {
                              return d === 0
                            });
                          var footnote = comparisonChartBase.yTextGroup.append("g").attr("class", "footnote").attr("transform", "translate(" + (margin.left + width - 300) + "," + (margin.top + height + margin.bottom - 12) + ")");
                          if (widther < 350) {
                            footnote.attr("transform", "translate(" + (margin.left + width - 280) + "," + (margin.top + height + margin.bottom - 12) + ") scale(.8)")
                          }
                          footnote.append("rect").attr("height", 5).attr("width", 40).attr("fill", "#005882").attr("x", 0);
                          footnote.append("text").attr("height", 30).attr("width", 95).attr("fill", "#005882").attr("x", 47).attr("y", 8).text(StocksListName);
                          footnote.append("rect").attr("height", 5).attr("width", 40).attr("fill", "#75a0bb").attr("opacity", .7).attr("x", 180);
                          footnote.append("text").attr("height", 30).attr("width", 95).attr("fill", "#005882").attr("x", 227).attr("y", 8).text(IndexName);
                          var xAxisQuarterLabels = function(currentXScale) {
                            return d3.axisBottom(currentXScale).tickPadding(8).ticks(d3.timeMonth, 1).tickSize(2).tickFormat(function(d) {
                              if (d.getMonth() === 0 || d.getMonth() === 3 || d.getMonth() === 6 || d.getMonth() === 9) {
                                return d.toLocaleString('en-us', {
                                  month: 'short'
                                });
                              }
                            });
                          };
                          var quarterLabels = comparisonChartBase.mainGroup.append("g").attr("class", "x axis quarter-labels").attr("transform", "translate(" + (quarterDistance / 7) + "," + height + ")").call(xAxisQuarterLabels(xScale));
                          // all the infoSlider stuff
                          distancePanned = 0;
                          var firstX = function(scale) {
                            return scale(LatestPrice);
                          };
                          var firstI = 0;
                          var adjusting = false;

                          function adjustInfoSlider(currentXScale, theEvent) {
                            if (!adjusting) {
                              adjusting = true;
                              var startingX = firstX(currentXScale);
                              try {
                                startingX = d3.mouse(theEvent)[0] - distancePanned;
                              } catch (err) {
                                // this must not originate from a mousemove
                              }
                              var x0 = currentXScale.invert(startingX),
                                i = bisectDate(data, x0, 1),
                                d0 = data[i - 1],
                                d1 = i < data.length ? data[i] : data[i - 1],
                                d = x0 - d0.Date > d1.Date - x0 ? d1 : d0,
                                nextI = x0 - d0.Date > d1.Date - x0 ? i : i - 1;
                              if (firstI === nextI) {
                                adjusting = false;
                              } else {
                                IndexGrowthSegmentDrawer.defined((d, i) => i <= firstI && i >= nextI || i <= nextI && i >= firstI);
                                portfolioSegmentDrawer.defined((d, i) => i <= firstI && i >= nextI || i <= nextI && i >= firstI);
                                // Update paths
                                invisibleIndexGrowthSegment.attr('d', IndexGrowthSegmentDrawer);
                                invisiblePortfolioSegment.attr('d', portfolioSegmentDrawer);
                                var transitionTime = 150;
                                infoSlider.transition().duration(transitionTime).ease(d3.easeLinear).attrTween('transform', nextI > firstI ? translateRight(invisibleIndexGrowthSegment.node()) : translateLeft(invisibleIndexGrowthSegment.node())).on(
                                  "end", () => {
                                    adjusting = false;
                                  });
                                infoSliderTop.transition().duration(transitionTime).ease(d3.easeLinear).attrTween('transform', nextI > firstI ? translateRight(invisibleIndexGrowthSegment.node()) : translateLeft(invisibleIndexGrowthSegment.node()));
                                IndexGrowthCircle.transition().duration(transitionTime).ease(d3.easeLinear).attrTween('cy', nextI > firstI ? translateRightY(invisibleIndexGrowthSegment.node()) : translateLeftY(invisibleIndexGrowthSegment.node()))
                                  .on("end", () => {
                                    firstI = nextI;
                                  });
                                portfolioCircle.transition().duration(transitionTime).ease(d3.easeLinear).attrTween('cy', nextI > firstI ? translateRightY(invisiblePortfolioSegment.node()) : translateLeftY(invisiblePortfolioSegment.node()));
                                if (d.IndexGrowth >= d.PortfolioGrowth) {
                                  infoSliderText.attr("fill", "#005882");
                                  infoSliderTopNumber.text(function() {
                                    labelString = d3.format(".2%")(d.IndexGrowth);
                                    return labelString;
                                  });
                                  infoSliderTextTwo.attr("fill", "#00345A");
                                  infoSliderBottomNumber.text(function() {
                                    return d3.format(".2%")(d.PortfolioGrowth)
                                  });
                                } else {
                                  infoSliderText.attr("fill", "#00345A");
                                  infoSliderTopNumber.text(function() {
                                    labelString = d3.format(".2%")(d.PortfolioGrowth);
                                    return labelString;
                                  });
                                  infoSliderTextTwo.attr("fill", "#005882");
                                  infoSliderBottomNumber.text(function() {
                                    return d3.format(".2%")(d.IndexGrowth)
                                  });
                                }
                                infoSliderDateText.text(function() {
                                  return d3.timeFormat("%b %-d")(d.Date);
                                });
                                infoSlider.select(".x-hover-line").attr("y2", yScale(Math.max(d.IndexGrowth, d.PortfolioGrowth)) - 20);
                                infoSlider.select(".y-hover-line").attr("x2", width + width);
                              }
                            }
                          }
                          var infoSlider = comparisonChartBase.mainGroup.append("g").attr("class", "info-slider");
                          var infoSliderWidth = Math.max((quarterDistance / 3), 80);
                          var infoSliderRectShadow = infoSlider.append("rect").attr("class", "info-slider-rect-shadow").attr("width", infoSliderWidth).attr("height", height + 50).style("filter", "url(#" + divID + "glowshadow)").attr("transform",
                            "translate(" + infoSliderWidth * -.5 + ",-10)");
                          var infoSliderRect = infoSlider.append("rect").attr("class", "info-slider-rect").attr("width", infoSliderWidth).attr("height", height + 52).attr("transform", "translate(" + infoSliderWidth * -.5 + ",-10)");
                          infoSlider.append("line").attr("class", "x-hover-line hover-line").attr("y1", 25).attr("y2", height);
                          infoSlider.append("line").attr("class", "y-hover-line hover-line").attr("x1", width).attr("x2", width);
                          var infoSliderText = infoSlider.append("text").attr("class", "bold").attr("y", 7).attr("transform", "translate(0,0)").attr("text-anchor", "middle").attr("dy", ".31em");
                          //infoSliderText.append("tspan")
                          //    .attr("class", "tspan1")
                          //    .attr("baseline-shift", "super")
                          //    .text(currencySymbol);
                          var infoSliderTopNumber = infoSliderText.append("tspan").attr("class", "tspan2");
                          var infoSliderTextTwo = infoSlider.append("text").attr("class", "bold").attr("y", 32).attr("transform", "translate(0,0)").attr("text-anchor", "middle").attr("dy", ".31em");
                          //infoSliderTextTwo.append("tspan")
                          //    .attr("class", "tspan1")
                          //    .attr("baseline-shift", "super")
                          //    .text(currencySymbol);
                          var infoSliderBottomNumber = infoSliderTextTwo.append("tspan").attr("class", "tspan2");
                          var infoSliderDateText = infoSlider.append("text").attr("class", "infoSlider-text").attr("y", height + 15).attr("text-anchor", "middle").attr("dy", ".31em");
                          var infoSliderTop = comparisonChartBase.overGroup.append("g").attr("class", "info-slider-top");
                          var portfolioCircle = infoSliderTop.append("circle").attr("r", 5).attr("fill", "#00345A");
                          var IndexGrowthCircle = infoSliderTop.append("circle").attr("r", 5).attr("fill", "#005882");
                          infoSlider.attr("transform", "translate(" + xScale(originalStart) + ",0)");
                          infoSliderTop.attr("transform", "translate(" + xScale(originalStart) + ",0)");
                          adjustInfoSlider(xScale);
                          var yearLabels = comparisonChartBase.mainGroup.append("g").attr("class", "x axis year-labels").attr("transform", "translate(0," + (height + 43) + ")");
                          middleDatesArray.forEach(function(item, index) {
                            yearLabels.append("g").attr("class", "tick").attr("transform", "translate(" + xScale(item) + ",22)").attr("text-anchor", "middle").append("text").text(function() {
                              return item.getFullYear();
                            }).attr("class", "past");
                          });
                          var xAxisYearSpanLinesGroup = comparisonChartBase.mainGroup.append("g").attr("class", "x axis year-lines").attr("transform", "translate(0," + (height + 42) + ")").call(xAxisYearSpanLines(xScale));
                          var lines = d3.selectAll("#" + divID + " g.year-lines.axis g.tick line");
                          lines.style("stroke-width", Math.max((quarterDistance / 45), 2));

                          function makeGapsBetweenYears() {
                            lines.attr("y2", function(d, i) {
                              if ((d.getMonth() === 11 && d.getDate() < 20) || i === (lines.nodes().length - 1)) {
                                return 0;
                              } else {
                                return 2;
                              }
                            }).attr("class", "past");
                          }
                          if (start.getFullYear() !== end.getFullYear()) {
                            makeGapsBetweenYears();
                          }
                          //Area in between
                          //var drawarea = comparisonChartBase.mainGroup.append("path")
                          //    .datum(data)
                          //    .attr("class", "area chart-line")
                          //    .style("filter", "url(#" + divID + "innerShadow)")
                          //    .attr("d", area(xScale));
                          //Data join for paths 
                          var drawportfolioGrowthLine = comparisonChartBase.mainGroup.append("path").datum(data).attr("class", "portfolioGrowthLine dark-line chart-line").attr("d", portfolioGrowthLine(xScale));
                          //Data join for paths 
                          var drawIndexGrowthLine = comparisonChartBase.mainGroup.append("path").datum(data).attr("class", "IndexGrowthLine medium-line chart-line").attr("stroke-width", 3).attr("fill", "none").attr("stroke", "url(#" + divID +
                            "pastFutureGradient)").attr("d", IndexGrowthLine(xScale));
                          var fade = comparisonChartBase.mainGroup.append("g").attr("class", "fade-edges").append("rect").attr("transform", "translate(-16,-20)").attr("width", (width + 34)).attr("height", height + margin.top + margin.bottom).style(
                            "fill", "#fff").attr("mask", "url(#" + divID + "mask)");
                          var overlay = comparisonChartBase.mainGroup.append("rect").attr("transform", "translate(0,0)").attr("class", "overlay").attr("width", width).attr("height", height + 45);
                          debounce(overlay.on("mousemove", function() {
                            adjustInfoSlider(xScale, this);
                          }), 150);
                          if (widther < 600) {
                            overlay.attr("width", width * 2);
                          }
                          if (widther < 600 && maxX !== 0) {
                            comparisonChartBase.svg.call(pan);
                          }
                        };
                        drawChart();
                        //RESPONSIVENESS
                        var resized = function() {
                          document.getElementById(divID).innerHTML = "";
                          drawChart();
                        };
                        debounce(d3.select(window).on("resize.comparison" + divID, resized), 150);
                      }
                    }
                  } else {
                    $("#" + divID).addClass("loading-message unavailable-message");
                    var resized = function() {
                      document.getElementById(divID).innerHTML = "";
                    };
                    debounce(d3.select(window).on("resize.comparison" + divID, resized), 150);
                  }
                }
              </script>
              <script type="text/javascript" defer="">
                function UpdatePerformanceGraph() {
                  //show animated wait image
                  var divtoshow = document.getElementById('imgAjax');
                  divtoshow.style.display = 'block';
                  PageMethods.set_path('https://' + window.location.host + '/Users/watchlists.aspx');
                  PageMethods.UpdatePerformanceGraph(document.getElementById('cphPrimaryContent_hdnSubscriberId').value, document.getElementById('cphPrimaryContent_ddlSelectAWatchList').value, document.getElementById('selCompareWatchlistTime').value,
                    document.getElementById('selCompareWatchlistIndex').value, OnSuccess);
                  //also load d3 chart for testing
                  //loadthischartThree(); // we will switch to this chart at a later date
                }

                function OnSuccess(response, userContext, methodName) {
                  // console.log("onsuccess");
                  try {
                    //console.log(JSON.stringify(response));
                    var datapoints = response.datapoints;
                    // console.log(datapoints);
                    var portfoliovalues = [];
                    var stockindexvalues = [];
                    //parse response.datapoints and convert to format for chartjs
                    var arrayLength = datapoints.length;
                    for (var i = 0; i < arrayLength; i++) {
                      var d = Date.parse(datapoints[i].periodlabel);
                      portfoliovalues.push({
                        x: d,
                        y: datapoints[i].portfoliovalue
                      });
                      stockindexvalues.push({
                        x: d,
                        y: datapoints[i].stockindexvalue
                      });
                    }
                    var chartdata = {
                      datasets: [{
                        data: portfoliovalues,
                        label: 'My Portfolio',
                        backgroundColor: "#005882",
                        borderColor: "#005882",
                        pointBorderColor: '#005882',
                        pointBackgroundColor: '#005882',
                        pointHoverBackgroundColor: '#005882',
                        pointHoverBorderColor: '#005882',
                        fill: false
                      }, {
                        data: stockindexvalues,
                        label: response.indexName,
                        backgroundColor: "#1D1E1F",
                        borderColor: "#1D1E1F",
                        pointBorderColor: '#1D1E1F',
                        pointBackgroundColor: '#1D1E1F',
                        pointHoverBackgroundColor: '#1D1E1F',
                        pointHoverBorderColor: '#1D1E1F',
                        fill: false
                      }]
                    };
                    if (window.myPerformanceChart) {
                      window.myPerformanceChart.config.data = chartdata;
                      window.myPerformanceChart.update();
                      document.getElementById('js-legendpp').innerHTML = window.myPerformanceChart.generateLegend();
                      //remove animated wait image
                      var divtohide = document.getElementById('imgAjax');
                      divtohide.style.display = 'none';
                      //show graph
                      document.getElementById('canvaspp').style.display = 'block';
                    }
                    var warning = "";
                    if (response.unavailableSymbols) {
                      var symbolsLength = response.unavailableSymbols.length;
                      if (symbolsLength > 0) {
                        warning = "The data for these holdings was unavailable: "
                        for (var i = 0; i < symbolsLength; i++) {
                          if (i > 0) {
                            warning = warning + ", ";
                          }
                          warning = warning + response.unavailableSymbols[i];
                        }
                      }
                    }
                    $('p#performanceChartWarning').html(warning);
                  } catch (err) {
                    //  console.log(err);
                    // console.log(err.stack);
                  }
                }

                function loadthischartThree() {
                  if (document.getElementById("MyPortfolioComparisonChart")) {
                    $("#MyPortfolioComparisonChart").html("");
                    $("#MyPortfolioComparisonChart").removeClass("unavailable-message");
                    loadAndDrawComparisonToIndexChart("My Portfolio vs This Index", "MyPortfolioComparisonChart", "Month", $("#cphPrimaryContent_hdnStocksListForChart").val(), $("#selCompareWatchlistIndex option:selected").text(), "My Portfolio",
                      "PerformanceComparisonCSV.ashx?scrp=" + ScrpRestrict, $("#selCompareWatchlistIndex").val() + "", $("#selCompareWatchlistTime").val() + "");
                  }
                }
                //document.addEventListener("DOMContentLoaded", function () {
                //    loadthischartThree();
                //    // console.log(StocksListForChart);
                //    //Re-bind for callbacks
                //    try {
                //        var prm2 = Sys.WebForms.PageRequestManager.getInstance();
                //        prm2.add_endRequest(function () {
                //            $("#MyPortfolioComparisonChart").html("");
                //            $("#MyPortfolioComparisonChart").addClass("loading-message");
                //            loadthischartThree();
                //        });
                //    }
                //    catch (err) { }
                //});
              </script>
              <script defer="">
                document.addEventListener("DOMContentLoaded", function() {
                  loadAndDrawPieChart("", "assetAllocationPieChart", portfolioSectorAllocation, '#00345A', '#e4f0f2');
                  loadAndDrawPieChart("", "MBAssetAllocationPieChart", mbSectorAllocation, '#00345A', '#e4f0f2');
                  loadAndDrawPieChart("", "PersonalAssetClassAllocationPieChart", PersonalAssetClassAllocation, '#115F44', '#E1F1E7');
                  loadAndDrawPieChart("", "MBAssetClassAllocationPieChart", mbAssetClassAllocation, '#115F44', '#E1F1E7');
                });
              </script>
              <input type="submit" name="ctl00$cphPrimaryContent$btnCompareWatchlist" value="Compare" onclick="UpdatePerformanceGraph(); return false;" id="cphPrimaryContent_btnCompareWatchlist" class="sbbutton" autopostback="false"
                style="width:175px;">&nbsp;
            </div>
            <div id="imgAjax" style="display: none; text-align: center; color: black;">
              <img src="/images/ajax2.gif" alt="Your chart is being prepared." title="Your chart is being prepared.">
            </div>
            <div class="xcanvas-wrap" style="width: 100%; padding: 0 15px;">
              <canvas id="canvaspp"></canvas>
              <div id="js-legendpp" class="chart-legend"></div>
              <p style="padding: 5px 15px 15px; font-size: 13px;" id="performanceChartWarning">
              </p>
            </div>
            <div class="col">
              <input type="hidden" name="ctl00$cphPrimaryContent$hdnStocksListForChart" id="cphPrimaryContent_hdnStocksListForChart" value="NASDAQ:MSFT:0:USD|NASDAQ:META:0:USD|NASDAQ:GOOGL:0:USD|NASDAQ:AMZN:0:USD|NASDAQ:AAPL:0:USD|">
            </div>
          </div>
          <div class="dividends">
            <h3 class="block-header">Portfolio Dividends <button type="button" class="moreinfo" aria-label="more info"><span class="fa-regular fa-circle-question"></span><span class="tooltiptext">View your portfolio's overall dividend yield, the
                  total of annual dividends you should receive each year and your upcoming dividend payments.</span></button></h3>
            <div class="stat">
              <div class="row">
                <div class="col-sm-6 col-md-3 mb-2">
                  <div class="light-shadow p-3 pb-2 text-center h-100">
                    <span class="font-small text-uppercase font-weight-normal mb-2">My Dividend Yield</span>
                    <div class="m-0">
                      <div class="key-stat c-green">
                        <strong> N/A </strong>
                      </div>
                    </div>
                  </div>
                </div>
                <div class="col-sm-6 col-md-3 mb-2">
                  <div class="light-shadow p-3 pb-2 text-center h-100">
                    <span class="font-small text-uppercase font-weight-normal mb-2">My Payout Ratio</span>
                    <div class="m-0">
                      <div class="key-stat c-green">
                        <strong> N/A </strong>
                      </div>
                    </div>
                  </div>
                </div>
                <div class="col-sm-6 col-md-3 mb-2">
                  <div class="light-shadow p-3 pb-2 text-center h-100">
                    <span class="font-small text-uppercase font-weight-normal mb-2">My Average Dividend Growth</span>
                    <div class="m-0">
                      <div class="key-stat c-green">
                        <strong> N/A </strong>
                      </div>
                    </div>
                  </div>
                </div>
                <div class="col-sm-6 col-md-3 mb-2">
                  <div class="light-shadow p-3 pb-2 text-center h-100">
                    <span class="font-small text-uppercase font-weight-normal mb-2">My Annual Dividend Payout</span>
                    <div class="m-0">
                      <div class="key-stat c-green">
                        <strong> N/A </strong>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
              <div class="row">
                <div class="col-md-6">
                  <table class="s-table sort-table dont-sort-on-rebind w-100">
                    <thead>
                      <tr>
                        <th data-sort="string">My Top Yielding Stocks</th>
                        <th data-sort="float">Yield</th>
                      </tr>
                    </thead>
                    <tbody>
                      <tr>
                        <td>Microsoft (<a href="/stocks/NASDAQ/MSFT/">MSFT</a>)</td>
                        <td>0.79%</td>
                      </tr>
                      <tr>
                        <td>Alphabet (<a href="/stocks/NASDAQ/GOOGL/">GOOGL</a>)</td>
                        <td>0.45%</td>
                      </tr>
                      <tr>
                        <td>Apple (<a href="/stocks/NASDAQ/AAPL/">AAPL</a>)</td>
                        <td>0.44%</td>
                      </tr>
                      <tr>
                        <td>Meta Platforms (<a href="/stocks/NASDAQ/META/">META</a>)</td>
                        <td>0.34%</td>
                      </tr>
                    </tbody>
                  </table>
                </div>
                <div class="col-md-6">
                  <table class="s-table sort-table dont-sort-on-rebind w-100">
                    <thead>
                      <tr>
                        <th data-sort="string">Upcoming Dividend Payments</th>
                        <th data-sort="int">Date</th>
                      </tr>
                    </thead>
                    <tbody>
                      <tr>
                        <td>Apple (<a href="/stocks/NASDAQ/AAPL/">AAPL</a>)</td>
                        <td data-sort-value="20241114000000">11/14/2024</td>
                      </tr>
                      <tr>
                        <td>Microsoft (<a href="/stocks/NASDAQ/MSFT/">MSFT</a>)</td>
                        <td data-sort-value="20241212000000">12/12/2024</td>
                      </tr>
                      <tr>
                        <td>Alphabet (<a href="/stocks/NASDAQ/GOOGL/">GOOGL</a>)</td>
                        <td data-sort-value="20241216000000">12/16/2024</td>
                      </tr>
                    </tbody>
                  </table>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
      <div id="pan2b" class="tab-pane" role="tabpanel" aria-labelledby="insightstab" tabindex="0">
        <h2 class="sr-only">Portfolio Insights</h2>
        <div style="padding: 6px 10px 8px;margin-bottom: 10px;border-radius: 2px;" class="bg-light-red c-dark-red">For statistics to be calculated for this portfolio, you must edit the details of the holdings, adding the number of shares you own.
        </div>
        <div class="statistics">
          <h3 class="block-header">Asset Allocation by Sector <button type="button" class="moreinfo" aria-label="more info"><span class="fa-regular fa-circle-question"></span><span class="tooltiptext">View the asset allocation of your holdings by
                sector vs. the MarketBeat community's asset allocation by sector. </span></button>
          </h3>
          <div class="p-3">
            <div class="row">
              <div class="col-lg-6">
                <h4 class="large mb-1">My Portfolio</h4>
                <div class="dv-charts" id="assetAllocationPieChart" style="height: 310px;">
                  <div class="h4 pie-tip"></div><svg width="676" height="300" aria-label="This chart shows the ETF's  of forth.">
                    <g class="labels" transform="translate(338,150)"></g>
                    <g class="lines"></g>
                  </svg>
                </div>
                <script>
                  var portfolioSectorAllocation = [];
                </script>
              </div>
              <div class="col-lg-6">
                <h4 class="large mb-1">MarketBeat Users</h4>
                <div class="dv-charts" id="MBAssetAllocationPieChart" style="height: 310px;">
                  <div class="h4 pie-tip"></div><svg width="676" height="300" aria-label="This chart shows the ETF's  of forth.">
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(0, 43, 82)" d="M-84.85281374238569,-84.8528137423857A120,120,0,0,1,90.33588904606498,-78.99004462751643L56.45993065379061,-49.36877789219777A75,75,0,0,0,-53.03300858899106,-53.033008588991066Z" class="pie-slice">
                      </path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(0, 52, 90)" d="M90.33588904606498,-78.99004462751643A120,120,0,0,1,119.62028462797487,-9.538737103111716L74.76267789248429,-5.961710689444823A75,75,0,0,0,56.45993065379061,-49.36877789219777Z" class="pie-slice">
                      </path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(14, 61, 98)" d="M119.62028462797487,-9.538737103111716A120,120,0,0,1,109.53758554924359,49.00527881812472L68.46099096827724,30.62829926132795A75,75,0,0,0,74.76267789248429,-5.961710689444823Z" class="pie-slice">
                      </path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(27, 70, 105)" d="M109.53758554924359,49.00527881812472A120,120,0,0,1,77.10935374789378,91.94643856388446L48.193346092433615,57.46652410242779A75,75,0,0,0,68.46099096827724,30.62829926132795Z" class="pie-slice">
                      </path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(38, 79, 113)" d="M77.10935374789378,91.94643856388446A120,120,0,0,1,30.79093408452485,115.98240546825387L19.24433380282803,72.48900341765867A75,75,0,0,0,48.193346092433615,57.46652410242779Z" class="pie-slice">
                      </path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(48, 89, 120)" d="M30.79093408452485,115.98240546825387A120,120,0,0,1,-13.514389446565948,119.23657692959215L-8.446493404103718,74.52286058099509A75,75,0,0,0,19.24433380282803,72.48900341765867Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(59, 98, 128)" d="M-13.514389446565948,119.23657692959215A120,120,0,0,1,-55.48244998406526,106.40346678452586L-34.67653124004079,66.50216674032866A75,75,0,0,0,-8.446493404103718,74.52286058099509Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(69, 108, 135)" d="M-55.48244998406526,106.40346678452586A120,120,0,0,1,-82.18241571208475,87.44169799201114L-51.36400982005297,54.651061245006964A75,75,0,0,0,-34.67653124004079,66.50216674032866Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(80, 118, 143)" d="M-82.18241571208475,87.44169799201114A120,120,0,0,1,-98.2331373649479,68.92206267545451L-61.39571085309243,43.07628917215907A75,75,0,0,0,-51.36400982005297,54.651061245006964Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(91, 128, 150)" d="M-98.2331373649479,68.92206267545451A120,120,0,0,1,-109.53660847852086,49.00746272786658L-68.46038029907554,30.629664204916615A75,75,0,0,0,-61.39571085309243,43.07628917215907Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(102, 138, 158)" d="M-109.53660847852086,49.00746272786658A120,120,0,0,1,-116.36300393541833,29.319810966747664L-72.72687745963646,18.32488185421729A75,75,0,0,0,-68.46038029907554,30.629664204916615Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(114, 148, 166)" d="M-116.36300393541833,29.319810966747664A120,120,0,0,1,-119.5579391897223,10.290732564140612L-74.72371199357644,6.431707852587882A75,75,0,0,0,-72.72687745963646,18.32488185421729Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(125, 158, 173)" d="M-119.5579391897223,10.290732564140612A120,120,0,0,1,-119.85571498724481,-5.8828211681421205L-74.909821867028,-3.676763230088825A75,75,0,0,0,-74.72371199357644,6.431707852587882Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(137, 168, 181)" d="M-119.85571498724481,-5.8828211681421205A120,120,0,0,1,-118.04347659886412,-21.58095531836858L-73.77717287429007,-13.488097073980363A75,75,0,0,0,-74.909821867028,-3.676763230088825Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(150, 178, 189)" d="M-118.04347659886412,-21.58095531836858A120,120,0,0,1,-115.01275461167533,-34.23545350414616L-71.88297163229709,-21.39715844009135A75,75,0,0,0,-73.77717287429007,-13.488097073980363Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(162, 188, 198)" d="M-115.01275461167533,-34.23545350414616A120,120,0,0,1,-111.26218584179756,-44.952486045882985L-69.53886615112347,-28.09530377867687A75,75,0,0,0,-71.88297163229709,-21.39715844009135Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(175, 199, 206)" d="M-111.26218584179756,-44.952486045882985A120,120,0,0,1,-84.85281374238572,-84.85281374238569L-53.03300858899107,-53.03300858899106A75,75,0,0,0,-69.53886615112347,-28.09530377867687Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="labels" transform="translate(338,150)">
                      <foreignObject transform="translate(-330.5,-81.5113386351683)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">Other</div>
                      </foreignObject>
                      <foreignObject transform="translate(-330.5,-51.593148622364446)" class="pie-text pie-text-small" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">Industrial Products</div>
                      </foreignObject>
                      <foreignObject transform="translate(-330.5,-38.4429790415613)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">Financial Services</div>
                      </foreignObject>
                      <foreignObject transform="translate(-330.5,-22.481970534436435)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">Auto/Tires/Trucks</div>
                      </foreignObject>
                      <foreignObject transform="translate(-330.5,-4.514898598848303)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">Consumer Staples</div>
                      </foreignObject>
                      <foreignObject transform="translate(-330.5,15.353291177683253)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">Basic Materials</div>
                      </foreignObject>
                      <foreignObject transform="translate(-330.5,37.22610052989438)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">Business Services</div>
                      </foreignObject>
                      <foreignObject transform="translate(-330.5,59.639376237024976)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">Transportation</div>
                      </foreignObject>
                      <foreignObject transform="translate(-330.5,81.41678990210195)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">Consumer Discretionary</div>
                      </foreignObject>
                      <foreignObject transform="translate(-330.5,103.06737500288772)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">Cryptocurrency</div>
                      </foreignObject>
                      <foreignObject transform="translate(-330.5,122.09926144189356)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">ETF</div>
                      </foreignObject>
                      <foreignObject transform="translate(142.5,127.63732303818242)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: start; text-align: left;">Oils/Energy</div>
                      </foreignObject>
                      <foreignObject transform="translate(142.5,112.82675995331687)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: start; text-align: left;">Retail/Wholesale</div>
                      </foreignObject>
                      <foreignObject transform="translate(142.5,74.3565917376506)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: start; text-align: left;">Manual Asset</div>
                      </foreignObject>
                      <foreignObject transform="translate(142.5,15.912943904938857)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: start; text-align: left;">Medical</div>
                      </foreignObject>
                      <foreignObject transform="translate(142.5,-59.45119020351302)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: start; text-align: left;">Finance</div>
                      </foreignObject>
                      <foreignObject transform="translate(142.5,-141.92446772559674)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: start; text-align: left;">Computer and Technology</div>
                      </foreignObject>
                    </g>
                    <g class="lines">
                      <polyline stroke="black" stroke-width="1" points="3.261055988074632,-97.44544891293098,4.5153082911802604,-134.92446772559674,135,-134.92446772559674" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="89.8401268168185,-37.881415146981624,124.39402174636407,-52.45119020351302,135,-52.45119020351302" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="96.08540910789692,16.548237264678065,133.04133568785727,22.912943904938857,135,22.912943904938857" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="77.80618016649635,58.7575384771921,107.73163407668724,81.3565917376506,135,81.3565917376506" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="44.90891138457548,86.5415488551733,62.18156960941221,119.82675995331687,135,119.82675995331687" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="7.142016267848169,97.2380666386873,9.888945601635927,134.63732303818242,135,134.63732303818242" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-28.51068337134953,93.23835548581202,-39.47633082186858,129.09926144189356,-135,129.09926144189356" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-56.45437440638152,79.49310416875224,-78.16759533191288,110.06737500288772,-135,110.06737500288772" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-73.67895497299894,63.8565704848514,-102.01701457799852,88.41678990210195,-135,88.41678990210195" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-84.79329818925571,48.128438393406924,-117.40610518512328,66.63937623702498,-135,66.63937623702498" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-92.11958467582771,31.94107260492372,-127.55019416653067,44.22610052989438,-135,44.22610052989438" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-96.15414632415329,16.144043628326795,-133.1365102949815,22.353291177683253,-135,22.353291177683253" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-97.48347916067488,1.794795456387337,-134.97712499170368,2.4851014011516974,-135,2.4851014011516974" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-96.85672808862036,-11.181423163759646,-134.1093158150128,-15.481970534436433,-135,-15.481970534436433" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-94.81856134802928,-22.70881819668316,-131.287238789579,-31.4429790415613,-135,-31.4429790415613" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-92.02724092164044,-32.20616289392988,-127.42233358380984,-44.593148622364446,-135,-44.593148622364446" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-81.30394145040947,-53.81374456984377,-112.57468816210542,-74.5113386351683,-135,-74.5113386351683" transform="translate(338,150)" style="fill: none;"></polyline>
                    </g>
                  </svg>
                </div>
                <script>
                  var mbSectorAllocation = [{
                    name: 'Computer and Technology',
                    amount: 0.260648410205918
                  }, {
                    name: 'Finance',
                    amount: 0.101687085892772
                  }, {
                    name: 'Medical',
                    amount: 0.0796171191398822
                  }, {
                    name: 'Manual Asset',
                    amount: 0.0719798284071853
                  }, {
                    name: 'Retail/Wholesale',
                    amount: 0.0697678707858579
                  }, {
                    name: 'Oils/Energy',
                    amount: 0.0592618082724008
                  }, {
                    name: 'ETF',
                    amount: 0.0585353641840436
                  }, {
                    name: 'Cryptocurrency',
                    amount: 0.0435694132070775
                  }, {
                    name: 'Consumer Discretionary',
                    amount: 0.0325604289224555
                  }, {
                    name: 'Transportation',
                    amount: 0.0304168825720038
                  }, {
                    name: 'Business Services',
                    amount: 0.0276714935309726
                  }, {
                    name: 'Basic Materials',
                    amount: 0.0256190025406971
                  }, {
                    name: 'Consumer Staples',
                    amount: 0.0214707548561399
                  }, {
                    name: 'Auto/Tires/Trucks',
                    amount: 0.0209737480044226
                  }, {
                    name: 'Financial Services',
                    amount: 0.0172666495068868
                  }, {
                    name: 'Industrial Products',
                    amount: 0.0150648145604106
                  }, {
                    name: 'Other',
                    amount: 0.0638893254108734
                  }];
                </script>
              </div>
            </div>
          </div>
          <h3 class="block-header">Asset Allocation by Asset Class <button type="button" class="moreinfo" aria-label="more info"><span class="fa-regular fa-circle-question"></span><span class="tooltiptext">View the asset allocation of your holdings
                by asset class vs. the MarketBeat community's asset allocation by asset class. </span></button>
          </h3>
          <div class="p-3">
            <div class="row">
              <div class="col-lg-6">
                <h4 class="large mb-1">My Portfolio</h4>
                <div class="dv-charts" id="PersonalAssetClassAllocationPieChart" style="height: 310px;">
                  <div class="h4 pie-tip"></div><svg width="676" height="300" aria-label="This chart shows the ETF's  of forth.">
                    <g class="labels" transform="translate(338,150)"></g>
                    <g class="lines"></g>
                  </svg>
                </div>
                <script>
                  var PersonalAssetClassAllocation = [];
                </script>
              </div>
              <div class="col-lg-6">
                <h4 class="large mb-1">MarketBeat Users</h4>
                <div class="dv-charts" id="MBAssetClassAllocationPieChart" style="height: 310px;">
                  <div class="h4 pie-tip"></div><svg width="676" height="300" aria-label="This chart shows the ETF's  of forth.">
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(0, 88, 61)" d="M-84.85281374238569,-84.8528137423857A120,120,0,1,1,-114.33817382029893,36.42501897650991L-71.46135863768684,22.765636860318693A75,75,0,1,0,-53.03300858899106,-53.033008588991066Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(17, 95, 68)" d="M-114.33817382029893,36.42501897650991A120,120,0,0,1,-118.76048539203704,-17.20311336496273L-74.22530337002314,-10.751945853101704A75,75,0,0,0,-71.46135863768684,22.765636860318693Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(33, 102, 75)" d="M-118.76048539203704,-17.20311336496273A120,120,0,0,1,-104.63292317111463,-58.753309597567565L-65.39557698194663,-36.72081849847973A75,75,0,0,0,-74.22530337002314,-10.751945853101704Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="arc" transform="translate(338,150)">
                      <path fill="rgb(45, 109, 83)" d="M-104.63292317111463,-58.753309597567565A120,120,0,0,1,-84.85281374238572,-84.85281374238569L-53.03300858899107,-53.03300858899106A75,75,0,0,0,-65.39557698194663,-36.72081849847973Z"
                        class="pie-slice"></path>
                    </g>
                    <g class="labels" transform="translate(338,150)">
                      <foreignObject transform="translate(-330.5,-88.54110549309267)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">Cryptocurrency</div>
                      </foreignObject>
                      <foreignObject transform="translate(-330.5,-50.458235270751)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">ETF</div>
                      </foreignObject>
                      <foreignObject transform="translate(-330.5,4.094783066885132)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: end; text-align: right;">Manual Assets</div>
                      </foreignObject>
                      <foreignObject transform="translate(142.5,24.89249880884077)" class="pie-text" dy=".35em" height="15px" width="188" style="color: rgb(0, 0, 0);">
                        <div style="text-anchor: start; text-align: left;">Stock</div>
                      </foreignObject>
                    </g>
                    <g class="lines">
                      <polyline stroke="black" stroke-width="1" points="94.74021953224863,23.033471361940556,131.17876550619042,31.89249880884077,135,31.89249880884077" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-97.17017778882894,8.012898881639263,-134.54332309222468,11.094783066885132,-135,11.094783066885132" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-92.31000711552794,-31.386503251097942,-127.8138560061156,-43.458235270751,-135,-43.458235270751" transform="translate(338,150)" style="fill: none;"></polyline>
                      <polyline stroke="black" stroke-width="1" points="-77.70536572486547,-58.890798411678034,-107.59204484981373,-81.54110549309267,-135,-81.54110549309267" transform="translate(338,150)" style="fill: none;"></polyline>
                    </g>
                  </svg>
                </div>
                <script>
                  var mbAssetClassAllocation = [{
                    name: 'Stock',
                    amount: 0.825915394201721
                  }, {
                    name: 'Manual Assets',
                    amount: 0.0719798284071739
                  }, {
                    name: 'ETF',
                    amount: 0.0585353641840343
                  }, {
                    name: 'Cryptocurrency',
                    amount: 0.0435694132070707
                  }];
                </script>
              </div>
            </div>
          </div>
          <div class="myportfolio">
            <h3 class="block-header">Largest Holdings <button type="button" class="moreinfo" aria-label="more info"><span class="fa-regular fa-circle-question"></span><span class="tooltiptext">View the largest investment holdings inside your
                  portfolio.</span></button></h3>
            <div class="stat">
              <table class="s-table sort-table dont-sort-on-rebind">
                <thead>
                  <tr>
                    <th data-sort="string">Holding</th>
                    <th data-sort="float">% of Portfolio</th>
                  </tr>
                </thead>
                <tbody>
                  <tr>
                    <td>Apple (<a href="/stocks/NASDAQ/AAPL/">AAPL</a>)</td>
                    <td>-</td>
                  </tr>
                  <tr>
                    <td>Amazon.com (<a href="/stocks/NASDAQ/AMZN/">AMZN</a>)</td>
                    <td>-</td>
                  </tr>
                  <tr>
                    <td>Alphabet (<a href="/stocks/NASDAQ/GOOGL/">GOOGL</a>)</td>
                    <td>-</td>
                  </tr>
                  <tr>
                    <td>Meta Platforms (<a href="/stocks/NASDAQ/META/">META</a>)</td>
                    <td>-</td>
                  </tr>
                  <tr>
                    <td>Microsoft (<a href="/stocks/NASDAQ/MSFT/">MSFT</a>)</td>
                    <td>-</td>
                  </tr>
                </tbody>
              </table>
            </div>
          </div>
          <div class="myportfolio">
            <h3 class="block-header">MarketBeat Users' Largest Holdings <button type="button" class="moreinfo" aria-label="more info"><span class="fa-regular fa-circle-question"></span><span class="tooltiptext">View the largest holdings of average
                  MarketBeat users.</span></button></h3>
            <div class="stat">
              <table class="s-table sort-table dont-sort-on-rebind">
                <thead>
                  <tr>
                    <th data-sort="string">Holding</th>
                    <th data-sort="float">% of Portfolio</th>
                  </tr>
                </thead>
                <tbody>
                  <tr>
                    <td>Apple (<a href="/stocks/NASDAQ/AAPL/">AAPL</a>)</td>
                    <td>5.65%</td>
                  </tr>
                  <tr>
                    <td>Microsoft (<a href="/stocks/NASDAQ/MSFT/">MSFT</a>)</td>
                    <td>4.00%</td>
                  </tr>
                  <tr>
                    <td>Meta Platforms (<a href="/stocks/NASDAQ/META/">META</a>)</td>
                    <td>2.60%</td>
                  </tr>
                  <tr>
                    <td>Amazon.com (<a href="/stocks/NASDAQ/AMZN/">AMZN</a>)</td>
                    <td>1.68%</td>
                  </tr>
                  <tr>
                    <td>NVIDIA (<a href="/stocks/NASDAQ/NVDA/">NVDA</a>)</td>
                    <td>1.57%</td>
                  </tr>
                  <tr>
                    <td>General Electric (<a href="/stocks/NYSE/GE/">GE</a>)</td>
                    <td>1.30%</td>
                  </tr>
                  <tr>
                    <td>Tesla (<a href="/stocks/NASDAQ/TSLA/">TSLA</a>)</td>
                    <td>1.29%</td>
                  </tr>
                  <tr>
                    <td>Advanced Micro Devices (<a href="/stocks/NASDAQ/AMD/">AMD</a>)</td>
                    <td>1.11%</td>
                  </tr>
                  <tr>
                    <td>Alphabet (<a href="/stocks/NASDAQ/GOOGL/">GOOGL</a>)</td>
                    <td>1.03%</td>
                  </tr>
                  <tr>
                    <td>Invesco QQQ (<a href="/stocks/NASDAQ/QQQ/">QQQ</a>)</td>
                    <td>0.70%</td>
                  </tr>
                </tbody>
              </table>
            </div>
          </div>
          <div class="pe">
            <h3 class="block-header">Portfolio P/E Ratio <button type="button" class="moreinfo" aria-label="more info"><span class="fa-regular fa-circle-question"></span><span class="tooltiptext">View your portfolio's price-to-earnings ratio, which
                  is a measure of the company's share price relative to its earnings per share.</span></button></h3>
            <div class="stat">
              <h4 class="large">My portfolio P/E: <strong id="mppe"> N/A</strong></h4>
              <div class="row">
                <div class="col-md-6">
                  <table class="s-table sort-table dont-sort-on-rebind">
                    <thead>
                      <tr>
                        <th data-sort="string">My Highest P/E Stocks</th>
                        <th data-sort="float">P/E&nbsp;Ratio</th>
                      </tr>
                    </thead>
                    <tbody>
                      <tr>
                        <td>Amazon.com (<a href="/stocks/NASDAQ/AMZN/">AMZN</a>)</td>
                        <td>44.62</td>
                      </tr>
                      <tr>
                        <td>Apple (<a href="/stocks/NASDAQ/AAPL/">AAPL</a>)</td>
                        <td>37.38</td>
                      </tr>
                      <tr>
                        <td>Microsoft (<a href="/stocks/NASDAQ/MSFT/">MSFT</a>)</td>
                        <td>34.95</td>
                      </tr>
                      <tr>
                        <td>Meta Platforms (<a href="/stocks/NASDAQ/META/">META</a>)</td>
                        <td>27.62</td>
                      </tr>
                      <tr>
                        <td>Alphabet (<a href="/stocks/NASDAQ/GOOGL/">GOOGL</a>)</td>
                        <td>23.69</td>
                      </tr>
                    </tbody>
                  </table>
                </div>
                <div class="col-md-6">
                  <table class="s-table sort-table dont-sort-on-rebind">
                    <thead>
                      <tr>
                        <th data-sort="string">My Lowest P/E Stocks</th>
                        <th data-sort="float">P/E&nbsp;Ratio</th>
                      </tr>
                    </thead>
                    <tbody>
                      <tr>
                        <td>Alphabet (<a href="/stocks/NASDAQ/GOOGL/">GOOGL</a>)</td>
                        <td>23.69</td>
                      </tr>
                      <tr>
                        <td>Meta Platforms (<a href="/stocks/NASDAQ/META/">META</a>)</td>
                        <td>27.62</td>
                      </tr>
                      <tr>
                        <td>Microsoft (<a href="/stocks/NASDAQ/MSFT/">MSFT</a>)</td>
                        <td>34.95</td>
                      </tr>
                      <tr>
                        <td>Apple (<a href="/stocks/NASDAQ/AAPL/">AAPL</a>)</td>
                        <td>37.38</td>
                      </tr>
                      <tr>
                        <td>Amazon.com (<a href="/stocks/NASDAQ/AMZN/">AMZN</a>)</td>
                        <td>44.62</td>
                      </tr>
                    </tbody>
                  </table>
                </div>
              </div>
            </div>
          </div>
          <div class="volatility">
            <h3 class="block-header">Portfolio Volatility (Beta) <button type="button" class="moreinfo" aria-label="more info"><span class="fa-regular fa-circle-question"></span><span class="tooltiptext">View your portfolio's beta, which is a
                  measurement of how closely correlated the volatility of your holdings are to the broader market.</span></button></h3>
            <div class="stat">
              <h4 class="large">My Beta: <strong id="mprisk"> N/A</strong></h4>
              <div class="row">
                <div class="col-md-6">
                  <table class="s-table sort-table dont-sort-on-rebind">
                    <thead>
                      <tr>
                        <th data-sort="string">Most Volatile Stocks In Portfolio:</th>
                        <th data-sort="float">Beta</th>
                      </tr>
                    </thead>
                    <tbody>
                      <tr>
                        <td>Apple (<a href="/stocks/NASDAQ/AAPL/">AAPL</a>)</td>
                        <td>1.24</td>
                      </tr>
                      <tr>
                        <td>Meta Platforms (<a href="/stocks/NASDAQ/META/">META</a>)</td>
                        <td>1.22</td>
                      </tr>
                      <tr>
                        <td>Amazon.com (<a href="/stocks/NASDAQ/AMZN/">AMZN</a>)</td>
                        <td>1.14</td>
                      </tr>
                      <tr>
                        <td>Alphabet (<a href="/stocks/NASDAQ/GOOGL/">GOOGL</a>)</td>
                        <td>1.03</td>
                      </tr>
                      <tr>
                        <td>Microsoft (<a href="/stocks/NASDAQ/MSFT/">MSFT</a>)</td>
                        <td>0.91</td>
                      </tr>
                    </tbody>
                  </table>
                </div>
                <div class="col-md-6">
                  <table class="s-table sort-table dont-sort-on-rebind">
                    <thead>
                      <tr>
                        <th data-sort="string">Least Volatile Stocks In Portfolio:</th>
                        <th data-sort="float">Beta</th>
                      </tr>
                    </thead>
                    <tbody>
                      <tr>
                        <td>Microsoft (<a href="/stocks/NASDAQ/MSFT/">MSFT</a>)</td>
                        <td>0.91</td>
                      </tr>
                      <tr>
                        <td>Alphabet (<a href="/stocks/NASDAQ/GOOGL/">GOOGL</a>)</td>
                        <td>1.03</td>
                      </tr>
                      <tr>
                        <td>Amazon.com (<a href="/stocks/NASDAQ/AMZN/">AMZN</a>)</td>
                        <td>1.14</td>
                      </tr>
                      <tr>
                        <td>Meta Platforms (<a href="/stocks/NASDAQ/META/">META</a>)</td>
                        <td>1.22</td>
                      </tr>
                      <tr>
                        <td>Apple (<a href="/stocks/NASDAQ/AAPL/">AAPL</a>)</td>
                        <td>1.24</td>
                      </tr>
                    </tbody>
                  </table>
                </div>
              </div>
            </div>
          </div>
          <div class="averagemarketcap">
            <h3 class="block-header">Average Market Cap <button type="button" class="moreinfo" aria-label="more info"><span class="fa-regular fa-circle-question"></span><span class="tooltiptext">View your portfolio's market cap allocation vs other
                  users' market cap allocations.</span></button></h3>
            <div class="stat">
              <h4 class="large">My Average Market Cap: <strong id="mpamp"> $2.49 trillion</strong></h4>
              <div class="meter meter-gold">
                <div>
                  <p class="stat-slider-marker top-stat-marker" style="left: 85.9%">My Average Market Cap<br>▼<br><span class="stat-slider-number">$2.49 trillion</span></p>
                  <p class="stat-slider-marker bottom-stat-marker" style="left: 14.1%"><span class="stat-slider-number">$589.86 billion</span><br>▲<br>Average MarketBeat<br>User Market Cap</p>
                </div>
              </div>
              <div class="row">
                <div class="col-md-6">
                  <table class="s-table sort-table dont-sort-on-rebind">
                    <thead>
                      <tr>
                        <th data-sort="string">Highest Market Cap Stocks In Portfolio:</th>
                        <th data-sort="float">Market Cap</th>
                      </tr>
                    </thead>
                    <tbody>
                      <tr>
                        <td>Apple (<a href="/stocks/NASDAQ/AAPL/">AAPL</a>)</td>
                        <td data-sort-value="3434314.986"> $3.43 trillion</td>
                      </tr>
                      <tr>
                        <td>Microsoft (<a href="/stocks/NASDAQ/MSFT/">MSFT</a>)</td>
                        <td data-sort-value="3141980.711"> $3.14 trillion</td>
                      </tr>
                      <tr>
                        <td>Alphabet (<a href="/stocks/NASDAQ/GOOGL/">GOOGL</a>)</td>
                        <td data-sort-value="2202382.1"> $2.20 trillion</td>
                      </tr>
                      <tr>
                        <td>Amazon.com (<a href="/stocks/NASDAQ/AMZN/">AMZN</a>)</td>
                        <td data-sort-value="2198898.891"> $2.20 trillion</td>
                      </tr>
                      <tr>
                        <td>Meta Platforms (<a href="/stocks/NASDAQ/META/">META</a>)</td>
                        <td data-sort-value="1484245.394"> $1.48 trillion</td>
                      </tr>
                    </tbody>
                  </table>
                </div>
                <div class="col-md-6">
                  <table class="s-table sort-table dont-sort-on-rebind">
                    <thead>
                      <tr>
                        <th data-sort="string">Lowest Market Cap Stocks In Portfolio:</th>
                        <th data-sort="float">Market Cap</th>
                      </tr>
                    </thead>
                    <tbody>
                      <tr>
                        <td>Meta Platforms (<a href="/stocks/NASDAQ/META/">META</a>)</td>
                        <td data-sort-value="1484245.394">$1.48 trillion</td>
                      </tr>
                      <tr>
                        <td>Amazon.com (<a href="/stocks/NASDAQ/AMZN/">AMZN</a>)</td>
                        <td data-sort-value="2198898.891">$2.20 trillion</td>
                      </tr>
                      <tr>
                        <td>Alphabet (<a href="/stocks/NASDAQ/GOOGL/">GOOGL</a>)</td>
                        <td data-sort-value="2202382.1">$2.20 trillion</td>
                      </tr>
                      <tr>
                        <td>Microsoft (<a href="/stocks/NASDAQ/MSFT/">MSFT</a>)</td>
                        <td data-sort-value="3141980.711">$3.14 trillion</td>
                      </tr>
                      <tr>
                        <td>Apple (<a href="/stocks/NASDAQ/AAPL/">AAPL</a>)</td>
                        <td data-sort-value="3434314.986">$3.43 trillion</td>
                      </tr>
                    </tbody>
                  </table>
                </div>
              </div>
            </div>
          </div>
          <div class="feg">
            <h3 class="block-header">Forecasted Earnings Growth <button type="button" class="moreinfo" aria-label="more info"><span class="fa-regular fa-circle-question"></span><span class="tooltiptext">View your portfolio's forecasted earnings
                  growth vs other users' forecasted earnings growth.</span></button></h3>
            <div class="stat">
              <h4 class="large">My Forecasted Earnings Growth: <strong id="fegamp"> 13.74%</strong></h4>
              <div class="meter meter-green">
                <div>
                  <p class="stat-slider-marker top-stat-marker" style="left: 16.3%">My Average Forecasted<br>Earnings Growth<br>▼<br><span class="stat-slider-number">13.74%</span></p>
                  <p class="stat-slider-marker bottom-stat-marker" style="left: 74.9%"><span class="stat-slider-number">21.18%</span><br>▲<br>Average MarketBeat User<br>Forecasted Earnings Growth</p>
                </div>
              </div>
              <div class="row">
                <div class="col-md-6">
                  <table class="s-table sort-table dont-sort-on-rebind">
                    <thead>
                      <tr>
                        <th data-sort="string">Highest Forecasted Earnings Growth In Portfolio:</th>
                        <th data-sort="float">Forecasted Earnings Growth</th>
                      </tr>
                    </thead>
                    <tbody>
                      <tr>
                        <td>Amazon.com (<a href="/stocks/NASDAQ/AMZN/">AMZN</a>)</td>
                        <td>18.80%</td>
                      </tr>
                      <tr>
                        <td>Microsoft (<a href="/stocks/NASDAQ/MSFT/">MSFT</a>)</td>
                        <td>14.29%</td>
                      </tr>
                      <tr>
                        <td>Apple (<a href="/stocks/NASDAQ/AAPL/">AAPL</a>)</td>
                        <td>12.79%</td>
                      </tr>
                      <tr>
                        <td>Alphabet (<a href="/stocks/NASDAQ/GOOGL/">GOOGL</a>)</td>
                        <td>11.51%</td>
                      </tr>
                      <tr>
                        <td>Meta Platforms (<a href="/stocks/NASDAQ/META/">META</a>)</td>
                        <td>11.32%</td>
                      </tr>
                    </tbody>
                  </table>
                </div>
                <div class="col-md-6">
                  <table class="s-table sort-table dont-sort-on-rebind">
                    <thead>
                      <tr>
                        <th data-sort="string">Lowest Forecasted Earnings Growth In Portfolio:</th>
                        <th data-sort="float">Forecasted Earnings Growth</th>
                      </tr>
                    </thead>
                    <tbody>
                      <tr>
                        <td>Meta Platforms (<a href="/stocks/NASDAQ/META/">META</a>)</td>
                        <td>11.32%</td>
                      </tr>
                      <tr>
                        <td>Alphabet (<a href="/stocks/NASDAQ/GOOGL/">GOOGL</a>)</td>
                        <td>11.51%</td>
                      </tr>
                      <tr>
                        <td>Apple (<a href="/stocks/NASDAQ/AAPL/">AAPL</a>)</td>
                        <td>12.79%</td>
                      </tr>
                      <tr>
                        <td>Microsoft (<a href="/stocks/NASDAQ/MSFT/">MSFT</a>)</td>
                        <td>14.29%</td>
                      </tr>
                      <tr>
                        <td>Amazon.com (<a href="/stocks/NASDAQ/AMZN/">AMZN</a>)</td>
                        <td>18.80%</td>
                      </tr>
                    </tbody>
                  </table>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
      <!-- Statistics -->
      <div id="panX" class="tab-pane is-hidden">
        <h2 class="sr-only">Portfolio Statistics</h2>
        <div class="statistics">
          <div class="distribution">
            <div class="stat">
              <div class="canvas-wrap">
                <canvas id="canvas" width="275" height="275"></canvas>
              </div>
              <div id="js-legend" class="chart-legend"></div>
            </div>
          </div>
        </div>
      </div>
      <!-- Headlines -->
      <div id="pan3" class="tab-pane is-hidden" role="tabpanel" aria-labelledby="headlinestab" tabindex="0">
        <h2 class="sr-only">My Headlines</h2>
        <div id="cphPrimaryContent_pnlFilterTable">
          <div class="d-none">
            <input type="submit" name="ctl00$cphPrimaryContent$btnDrawHeadlines" value="Draw Headlines" id="cphPrimaryContent_btnDrawHeadlines">
          </div>
          <div class="text-center">
            <div id="cphPrimaryContent_Progress1" style="display:none;" role="status" aria-hidden="true">
              <img src="/images/loading-gif-small.gif" loading="lazy" alt="The Page is Updating" class="pt-0 pt-xl-1" width="24" height="24">
            </div>
          </div>
        </div>
      </div>
      <!-- Calendar -->
      <div id="pan5" class="tab-pane is-hidden" role="tabpanel" aria-labelledby="calendartab" tabindex="0">
        <h2 class="sr-only">My Calendar</h2>
        <div id="dvCalendar">This page is loading your portfolio's calendar. Please wait…</div>
      </div>
      <!-- Ratings -->
      <div id="pan4" class="tab-pane is-hidden" role="tabpanel" aria-labelledby="ratingstab" tabindex="0">
        <h2 class="sr-only">My Ratings</h2>
        <div id="dvRatings">This page is loading your portfolio's ratings. Please wait…</div>
      </div>
      <!-- Insider Trades -->
      <div id="pan6" class="tab-pane is-hidden" role="tabpanel" aria-labelledby="insidertradestab" tabindex="0">
        <h2 class="sr-only">My Insider Trades</h2>
        <div id="dvInsiderTrades">This page is loading your portfolio's insider trades. Please wait…</div>
      </div>
      <!-- Earnings -->
      <div id="pan7" class="tab-pane is-hidden" role="tabpanel" aria-labelledby="earningstab" tabindex="0">
        <h2 class="sr-only">My Earnings</h2>
        <div id="dvEarnings">This page is loading your portfolio's earnings announcements. Please wait…</div>
      </div>
      <!-- SEC Filings -->
      <div id="pan8" class="tab-pane is-hidden" role="tabpanel" aria-labelledby="secfilingstab" tabindex="0">
        <h2 class="sr-only">My SEC Filings</h2>
        <div id="dvSECFilings">This page is loading your portfolio's SEC Filings. Please wait…</div>
      </div>
      <!-- Social Media -->
      <div id="pan9" class="tab-pane is-hidden" role="tabpanel" aria-labelledby="socialtab" tabindex="0">
        <h2 class="sr-only">Social Mentions</h2>
        <div id="outerdivmentionedstockslists">
          <h2 class="block-header py-2 px-3 m-0 h3">Portfolio Media Mentions</h2>
          <div class="shadow pt-2 px-3 mb-3">
            <div class="row">
              <div class="col-md-4">
                <div id="dvmentionedstockslists" class="mb-3" style="min-height: 150px"></div>
              </div>
              <div class="col-md-8 p-0">
                <div id="portfolioMediaMentionsChart" class="dv-chart loading-message h-100 mb-2" style="min-height: 275px;"></div>
              </div>
            </div>
          </div>
        </div>
        <div class="row">
          <div class="col-md-6">
            <h2 class="block-header py-2 px-3 m-0 h3">Recent Stocktwits Mentions</h2>
            <div id="stocktwits-widget-news" class="shadow mb-3"></div>
            <script type="text/javascript">
              function LoadStocktwits() {
                var PanelWidth = document.getElementById('stocktwits-widget-news').offsetWidth;
                STWT.Widget({
                  container: 'stocktwits-widget-news',
                  symbol: 'GOOGL,AMZN,AAPL,META,MSFT',
                  width: PanelWidth,
                  height: '800',
                  limit: '200',
                  scrollbars: 'true',
                  streaming: 'true',
                  title: '',
                  style: {
                    link_color: '4871a8',
                    link_hover_color: '4871a8',
                    header_text_color: '000000',
                    border_color: 'cecece',
                    divider_color: 'cecece',
                    divider_color: 'cecece',
                    divider_type: 'solid',
                    box_color: 'f5f5f5',
                    stream_color: 'ffffff',
                    text_color: '000000',
                    time_color: '999999'
                  }
                });
              };
            </script>
            <script async="" type="text/javascript" src="https://api.stocktwits.com/addon/widget/2/widget-loader.min.js"></script>
          </div>
        </div>
      </div>
      <!-- My Newsletter -->
      <div id="pan10" class="tab-pane is-hidden" role="tabpanel" aria-labelledby="newslettertab" tabindex="0">
        <h2 class="sr-only">My Newsletter</h2>
        <div id="cphPrimaryContent_pnlNewsletterChoice">
          <div class="top-label-wrapper mb-2" style="max-width: 300px;">
            <select name="ctl00$cphPrimaryContent$ddlNewsletter" id="cphPrimaryContent_ddlNewsletter" class="top-labeled-input" onchange="LoadNewsletter();">
              <option selected="selected" value="DailyRatings">MarketBeat Daily (Free)</option>
              <option value="EarningsThreeSixty">Earnings360 Newsletter</option>
              <option value="InsiderTrades">Insider Trades Newsletter</option>
              <option value="DividendAdvisor">Dividend Stocks Newsletter</option>
              <option value="CryptoBeat">MarketBeat CryptoBeat</option>
              <option value="DailyCanada">MarketBeat Daily Canada</option>
              <option value="EarlyBird">The Early Bird</option>
              <option value="NightOwl">The Night Owl</option>
            </select>
            <label for="cphPrimaryContent_ddlNewsletter" class="top-label mb-0"><strong>Newsletter</strong></label>
          </div>
        </div>
        <div id="dvNewsletter" style="font-size: 10pt; overflow-x: auto;"> Loading your newsletter… </div>
      </div>
      <!-- Portfolio Ideas -->
      <div id="pan11" class="tab-pane is-hidden" role="tabpanel" aria-labelledby="ideastab" tabindex="0">
        <h2 class="sr-only">My Portfolio Ideas</h2>
        <p>These stock suggestions are generated by identifying the holdings that are most frequently included with other MarketBeat user's watchlists that contain similar holdings to your watchlist(s), but are not yet included in your watchlist.
          Remember that these stock suggestions are just ideas. Never purchase a stock or any other security without doing your own independent research and consulting a qualified financial professional.</p>
        <div id="dvPortfolioIdeas">This page is loading your portfolio ideas. Please wait…</div>
      </div>
      <!-- MarketRank -->
      <div id="pan12" class="tab-pane is-hidden" role="tabpanel" aria-labelledby="ideastab" tabindex="0">
        <h2 class="sr-only">My MarketRank</h2>
        <p>Get an overview of the strength of your portfolio by reviewing the MarketRank™ of each of your stock holdings. Learn more about MarketRank on our <a href="/stocks/top-marketrank/">Top MarketRank Stocks</a> page.</p>
        <div id="dvMarketRank">This page is loading your MarketRank™ data. Please wait…</div>
      </div>
      <div class="clearfix"></div>
    </div>
    <!-- Notice for Free Subscribers -->
    <br><span class="c-red">You have reached the limit of five stocks on your watchlist with your free subscription. In order to add more stocks to your watchlist, delete one of your existing stocks or
      <a class="c-red" href="https://www.marketbeat.com/subscribe/all-access/?UserID=11404962&amp;ReferralType=WatchlistsPageNotice">Upgrade to MarketBeat All Access</a>.</span>
  </div>
  <br>
  <a href="#" class="btn btn-secondary d-flex d-sm-inline-flex mb-1" onclick="eCSV('PortfolioExport-All Watchlists-2024-11-08-12-33.csv'); return false;"><span class="fa-regular fa-file-excel mr-2" aria-hidden="true"></span>Export Portfolio(s) (CSV/Excel)</a>
  <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.1.6/Chart.bundle.min.js"></script>
  <script>
    var chartAlreadyDrawn = false;
    var performanceChartAlreadyDrawn = false;

    function LoadDoughnut(DataPoints, SectorText) {
      if (!chartAlreadyDrawn) {
        if (DataPoints === '') {
          document.getElementById('canvas').height = 25;
        } else {
          document.getElementById('canvas').height = 275;
          var config = {
            type: 'doughnut',
            data: {
              datasets: [{
                data: DataPoints.split(',').map(Number),
                backgroundColor: ['#B2ECFF', '#6DDFFF', '#00BAFF', '#0096DF', '#0077B4', '#005882', '#004768', '#00345A', '#012641']
              }],
              labels: SectorText
            },
            options: {
              responsive: true,
              legend: false,
              animation: {
                animateScale: true,
                animateRotate: true
              }
            }
          };
          var ctx = document.getElementById('canvas').getContext('2d');
          window.myDoughnut = new Chart(ctx, config);
          document.getElementById('js-legend').innerHTML = myDoughnut.generateLegend();
          chartAlreadyDrawn = true;
        }
      }
    }

    function LoadPerformanceGraph() {
      if (!performanceChartAlreadyDrawn) {
        //initial chart config with dummy data
        var config = {
          type: 'line',
          data: {
            datasets: [{
              data: [{
                x: new Date(2019, 1, 1),
                y: 0
              }, {
                x: new Date(2019, 2, 1),
                y: 0
              }],
              label: 'My Portfolio',
              backgroundColor: '#005882',
              borderColor: '#005882',
              pointBorderColor: '#005882',
              pointBackgroundColor: '#005882',
              pointHoverBackgroundColor: '#005882',
              pointHoverBorderColor: '#005882',
              fill: false
            }, {
              data: [{
                x: new Date(2019, 1, 1),
                y: 0
              }, {
                x: new Date(2019, 2, 1),
                y: 0
              }],
              label: 'Stock Index',
              backgroundColor: '#1D1E1F',
              borderColor: '#1D1E1F',
              pointBorderColor: '#1D1E1F',
              pointBackgroundColor: '#1D1E1F',
              pointHoverBackgroundColor: '#1D1E1F',
              pointHoverBorderColor: '#1D1E1F',
              fill: false
            }]
          },
          options: {
            responsive: true,
            legend: {
              labels: {
                usePointStyle: true
              }
            },
            title: {
              display: true,
              text: 'Performance Comparison'
            },
            scales: {
              xAxes: [{
                type: 'time',
                display: true,
                scaleLabel: {
                  display: true,
                  labelString: 'Date'
                },
              }],
              yAxes: [{
                display: true,
                scaleLabel: {
                  display: true,
                  labelString: '% Return'
                },
                ticks: {
                  callback: function(label, index, labels) {
                    return Math.round(label * 100) + '%';
                  }
                },
                position: "left",
                id: "yReturn",
              }]
            },
            legend: true,
            tooltips: {
              callbacks: {
                label: function(tooltipItem, data) {
                  return (tooltipItem.yLabel * 100).toFixed(2) + "%";
                },
                title: function(tooltipItems, data) {
                  return new Date(parseFloat(tooltipItems[0].xLabel)).toLocaleDateString();
                }
              }
            },
            hover: {
              intersect: false,
            },
            animation: {
              animateScale: true,
              animateRotate: true
            }
          }
        }; //config
        document.getElementById('canvaspp').style.display = 'none';
        var ctx = document.getElementById('canvaspp').getContext('2d');
        window.myPerformanceChart = new Chart(ctx, config);
        window.myPerformanceChart.update();
        performanceChartAlreadyDrawn = true;
      }
    }

    function LoadGraphs(DataPoints, SectorText) {
      try {
        LoadPerformanceGraph();
      } catch (err) {
        //alert(err);
        //alert(err.stack);
      }
      try {
        LoadDoughnut(DataPoints, SectorText);
      } catch (err) {
        //alert(err);
      }
    }
  </script>
  <script type="text/javascript" src="https://cdn.plaid.com/link/v2/stable/link-initialize.js"></script>
  <script type="text/javascript">
    function dCSV(csv, fn) {
      var cF = new Blob(["\ufeff", csv], {
        type: "text/csv"
      });
      var dL = document.createElement("a");
      dL.download = fn;
      dL.href = window.URL.createObjectURL(cF);
      dL.style.display = "none";
      document.body.appendChild(dL);
      dL.click();
    }

    function eCSV(fn) {
      var csv = []
      var head = document.querySelector("#visibleWatchlists table.scroll-table thead tr");
      var r = eRow(head);
      csv.push('\"' + r.join('\",\"') + '\"');
      var rs = document.querySelectorAll("#visibleWatchlists table.scroll-table tbody tr");
      for (var i = 0; i < rs.length; i++) {
        r = eRow(rs[i]);
        csv.push('\"' + r.join('\",\"') + '\"');
      }
      dCSV(csv.join("\n"), fn);
    }

    function eRow(row) {
      var r = [],
        cols = row.querySelectorAll("td, th");
      for (var j = 0; j < cols.length; j++) {
        if (cols[j].dataset.hide != null) {
          continue;
        }
        if (cols[j].dataset.clean != null) {
          r.push(cols[j].dataset.clean.replace(/\|/g, '\",\"'));
        } else {
          r.push(cols[j].innerText.replace(/(\r\n|\n|\r)/gm, "-").replace(/(<([^>]+)>)/ig, "\\").replace(/\"/g, "\\"));
        }
      }
      return r;
    }

    function linkBrokerageAccountOnSuccess(response, userContext, methodName) {
      window.location.replace('https://' + window.location.host + '/manage/watchlists/');
    }

    function generateLinkTokenOnSuccess(response, userContext, methodName) {
      try {
        PageMethods.set_path('https://' + window.location.host + '/Users/Watchlists.aspx');
        var datapoints = response.datapoints;
        const handler = Plaid.create({
          token: response,
          onSuccess: (public_token, metadata) => {
            PageMethods.OnLinkSuccess(public_token, JSON.stringify(metadata), '11404962', linkBrokerageAccountOnSuccess);
          },
          onLoad: () => {},
          onExit: (err, metadata) => {
            $("#cphPrimaryContent_btnImportBrokerage").prop("disabled", false);
            $("#cphPrimaryContent_btnImportBrokerage").val("Import Portfolio From Brokerage").removeClass("active-loading");
            $("#cphPrimaryContent_btnImportBrokerageTop").prop("disabled", false);
            $("#cphPrimaryContent_btnImportBrokerageTop").html("<span class='float-left mr-2 d-inline d-sm-none d-xl-inline fa-kit fa-regular-circle-dollar-rotate font-weight-normal'></span> Import Portfolio From Brokerage").removeClass(
              "active-loading");
            $("#cphPrimaryContent_btnImportBrokeragePopup").prop("disabled", false);
            $("#cphPrimaryContent_btnImportBrokeragePopup").html(
              "<span class='float-left mr-2 d-inline d-sm-none d-xl-inline fa-kit fa-regular-circle-dollar-rotate font-weight-normal'></span> Import Portfolio From Brokerage<span class='load loading'></span>").removeClass("active-loading");
          },
          onEvent: (eventName, metadata) => {},
          receivedRedirectUri: null,
        });
        handler.open();
      } catch (err) {
        $("#cphPrimaryContent_btnImportBrokerage").prop("disabled", false);
        $("#cphPrimaryContent_btnImportBrokerage").val("Import From Brokerage Failed").removeClass("active-loading");
        $("#cphPrimaryContent_btnImportBrokerageTop").prop("disabled", false);
        $("#cphPrimaryContent_btnImportBrokerageTop").html("<span class='float-left mr-2 d-inline d-sm-none d-xl-inline fa-kit fa-regular-circle-dollar-rotate font-weight-normal'></span> Import From Brokerage Failed").removeClass("active-loading");
        $("#cphPrimaryContent_btnImportBrokeragePopup").prop("disabled", false);
        $("#cphPrimaryContent_btnImportBrokeragePopup").html(
          "<span class='float-left mr-2 d-inline d-sm-none d-xl-inline fa-kit fa-regular-circle-dollar-rotate font-weight-normal'></span> Import From Brokerage Failed<span class='load loading'></span>").removeClass("active-loading");
        //  console.log(err);
        // console.log(err.stack);
      }
    }

    function linkBrokerageAccount() {
      $("#cphPrimaryContent_btnImportBrokerage").prop("disabled", true);
      $("#cphPrimaryContent_btnImportBrokerage").val("Loading Portfolio Import Tool…").addClass("active-loading");
      $("#cphPrimaryContent_btnImportBrokerageTop").prop("disabled", true);
      $("#cphPrimaryContent_btnImportBrokerageTop").html("<span class='float-left mr-2 d-inline d-sm-none d-xl-inline fa-kit fa-regular-circle-dollar-rotate font-weight-normal'></span> Loading Portfolio Import Tool…").addClass("active-loading");
      $("#cphPrimaryContent_btnImportBrokeragePopup").prop("disabled", true);
      $("#cphPrimaryContent_btnImportBrokeragePopup").html(
        "<span class='float-left mr-2 d-inline d-sm-none d-xl-inline fa-kit fa-regular-circle-dollar-rotate font-weight-normal'></span> Loading Portfolio Import Tool…<span class='load loading'></span>").addClass("active-loading");
      PageMethods.set_path('https://' + window.location.host + '/Users/Watchlists.aspx');
      PageMethods.GenerateLinkToken('11404962', generateLinkTokenOnSuccess);
    };
    var boundlessToolTipIsOpen = false;
    var clickingBoundlessTooltip = false;

    function PageBindControlEvents(isRebind) {
      //$("#calendarFilter").change(function () {
      //    $("#dvCalendar").removeClass().addClass($(this).val());
      //    scrollTable($(dvCalendar).find('table').stupidtable());
      //});
      var ctx = document.getElementById("canvas").getContext("2d");
      var url = window.location.href;
      if (!isRebind) {
        if (url.indexOf("#") > 0) {
          var activeTab = url.substring(url.indexOf("#") + 1);
          $('.nav.my-marketbeat-tabs a#' + activeTab + 'tab').click();
        }
      }
      $(".wl-tab-change").click(function(event) {
        url = this.href;
        if (url.indexOf("#") > 0) {
          activeTab = url.substring(url.indexOf("#") + 1);
          $('.nav.my-marketbeat-tabs a#' + activeTab + 'tab').click();
        }
        $('#header-holder').removeClass("mega-showing");
        $('#header-holder').addClass("mega-not-showing");
        handleScrollableNavTabs(true);
      });
      var flag = false;
      $("#left-side-menu").on('click', ".wl-tab-change", function(event) {
        url = this.href;
        if (url.indexOf("#") > 0) {
          activeTab = url.substring(url.indexOf("#") + 1);
          $('.nav.my-marketbeat-tabs a#' + activeTab + 'tab').click();
        }
        if (!flag) {
          flag = true;
          bmeout(function() {
            flag = false;
            handleScrollableNavTabs(true);
          }, 500);
          var scroll = $(".page-wrap").css("top").replace("-", "").replace("px", "");
          $("#left-side-menu, .menu-closer, .page-wrap, body, html").removeClass('left-showing');
          $("#right-side-menu, .menu-closer, .page-wrap, body, html").removeClass('right-showing');
          $(".ui-autocomplete").css("display", "none");
          $('.page-wrap').css({
            "position": "relative",
            "top": "0"
          });
          $(window).scrollTop(55);
          if (scroll > $("#scrollingTickers").height()) {
            $('#mb-header').addClass("sticking");
          }
        }
        return false;
      });
      $('.selectAllInTable').change(function() {
        event.stopPropagation();
        var $otherCheckboxes = $(this).closest("table").find('.bulkactioncheck');
        if ($(this).is(':checked')) {
          $($otherCheckboxes).prop('checked', true);
        } else {
          $($otherCheckboxes).prop('checked', false);
        }
      });
      //$('.selectAllInTableLabel').click(function () {
      //    event.stopPropagation();
      //    var $otherCheckboxes = $(this).closest("table").find('.bulkactioncheck');
      //    if ($(this).siblings("input").is(':checked')) {
      //        $($otherCheckboxes).prop('checked', true);
      //    } else {
      //        $($otherCheckboxes).prop('checked', false);
      //    }
      //});
      //modal open and close for add a stock, add multiple, and add a watchlist
      //$('.addbutton').on('click', function (e) {
      //    e.preventDefault();
      //    $('#' + $(this).attr('id').replace('cphPrimaryContent_', '').replace(/\s*btnShow\s*/, 'Panel')).css('display', 'block');
      //    $("body").addClass("modal-open");
      //});
      //$('.closebutton').on('click', function (e) {
      //    e.preventDefault();
      //    $('#' + $(this).attr('id').replace('cphPrimaryContent_', '').replace('btnClose', 'Panel')).css('display', 'none');
      //    $("body").removeClass("modal-open");
      //});
      // create array of stocks selected for bulk action and process
      bulkActionModalShow = function(bulkActionPanelID) {
        var bulkStockArray = [];
        $(".bulkactioncheck:checked").each(function() {
          bulkStockArray.push($(this).val());
        });
        var bulkAction = $('#' + bulkActionPanelID + ' .bulkActionSelect').val();
        if (bulkStockArray.length === 0) {
          $('#' + bulkActionPanelID + ' .bulkActionWarning').html("Please select holdings by checking the box in the table next to their name.");
        } else if ($('#' + bulkActionPanelID + ' .bulkActionSelect').val() == '0') {
          $('#' + bulkActionPanelID + ' .bulkActionWarning').html("Please select a bulk action to apply to these holdings.");
        } else if ($('#' + bulkActionPanelID + ' .bulkActionSelect').val() == "bulkMoveNew") {
          //$('#Panel9').css('display', 'block');
          $('#Panel9').find('input[id$="hdnBulkStocksListNew"]').val(bulkStockArray);
          $('#Panel9').find('input[id$="txtBulkWatchlistNew"]').val("");
          $('#' + bulkActionPanelID + ' .bulkActionSelect').val('0');
          $('#Panel9').modal('show');
        } else {
          $('#Panel8').css('display', 'block');
          var bulkActionName = $('#' + bulkActionPanelID + ' .bulkActionSelect option:selected').text();
          $('#Panel8').css('display', 'block');
          $('#Panel8').find('input[id$="hdnBulkStocksList"]').val(bulkStockArray);
          $('#Panel8').find('input[id$="hdnBulkAction"]').val(bulkAction);
          $('#Panel8').find('h2.bulkActionName').html(bulkActionName);
          if (bulkAction.match("^bulkMove")) {
            $('#Panel8').find('span[class="bulkActionName"]').html("move these stocks");
          } else {
            $('#Panel8').find('span[class="bulkActionName"]').html(bulkActionName.toLowerCase().replace("sms", "SMS"));
          }
          $('#Panel8').modal('show');
          setTimeout(function() {
            $('#' + bulkActionPanelID + ' .bulkActionSelect').val('0');
          }, 400);
        }
      }
      assetType = $('#cphPrimaryContent_ddlAssetType').val();
      assetTypeMultiple = $('#cphPrimaryContent_ddlAssetTypeMultiple').val();
      $('#cphPrimaryContent_ddlAssetTypeMultiple').on('change', function() {
        assetTypeMultiple = $('#cphPrimaryContent_ddlAssetTypeMultiple').val();
      });
      $('#cphPrimaryContent_chkPriceAlerts').change(function() {
        if (this.checked) {
          $('#priceAlerts').css("display", "block");
        } else {
          $('#priceAlerts').css("display", "none");
        }
      });
      $('#cphPrimaryContent_chkPriceAlertsEdit').change(function() {
        if (this.checked) {
          $('#priceAlertsEdit').css("display", "block");
        } else {
          $('#priceAlertsEdit').css("display", "none");
        }
      });
      //reset form when asset type is changed or the form is opened
      function adjustAddStockModal() {
        assetType = $('#cphPrimaryContent_ddlAssetType').val();
        $('#cphPrimaryContent_txtAutoCompleteData').val("");
        $('#cphPrimaryContent_txtSharesHeld').val("");
        $('#cphPrimaryContent_txtACPS').val("");
        $('#cphPrimaryContent_spnCurrentPrice').text("");
        $(".autocompleteassets").val("");
        $(".autocompleteassets").attr("placeholder", "Search and choose\u2026");
        $(".autocompleteassets").attr("maxlength", "200");
        $('#manualAssetOptions').css("display", "none");
        $('#instantAlerts').css("display", "block");
        $('#cphPrimaryContent_txtInvestmentYield').text("");
        $(".autocompleteassets").removeClass("manual");
        $("#cphPrimaryContent_txtUnitPrice").val("");
        $('#cphPrimaryContent_chkInstant').prop('checked', false);
        $('#cphPrimaryContent_chkSMS').prop('checked', false);
        $('#priceAlerts').css("display", "none");
        $('#cphPrimaryContent_txtAlertAbove').val("");
        $('#cphPrimaryContent_txtAlertBelow').val("");
        $('.currency-label').text("");
        $('#cphPrimaryContent_chkIncludeNewsletter').prop('checked', false);
        $('#cphPrimaryContent_chkPriceAlerts').prop('checked', false);
        $('#cphPrimaryContent_rfvAutoCompleteData').css("display", "none");
        $('#cphPrimaryContent_rfvAutoCompleteData').text("Please choose an asset.");
        if (assetType === "manual") {
          $('#manualAssetOptions').css("display", "block");
          $('#instantAlerts').css("display", "none");
          $('#searchLabel').text("Name:");
          $('#amountLabel').text("Units Held:");
          $("#selectedAsset").css("display", "none");
          $('#cphPrimaryContent_rfvAutoCompleteData').text("Required");
          $(".autocompleteassets").attr("placeholder", "Enter asset name\u2026");
          $(".autocompleteassets").attr("maxlength", "60");
        } else if (assetType === "cryptocurrency") {
          $('#searchLabel').text("Cryptocurrency:");
          $('#amountLabel').text("Coins Held:");
          $('#newsAlerts').css("display", "none");
          $('#cphPrimaryContent_chkIncludeNewsletter:not([disabled])').prop('checked', true);
        } else if (assetType === "mutualfund") {
          $('#searchLabel').text("Fund:");
          $('#instantAlerts').css("display", "block");
          $('#newsAlerts').css("display", "none");
          $('#amountLabel').text("Shares Held:");
        }
        //back to stock/etf setup
        else {
          $('#searchLabel').text("Stock/ETF:");
          $('#amountLabel').text("Shares Held:");
          $('#newsAlerts').css("display", "block");
          $('#cphPrimaryContent_chkIncludeNewsletter:not([disabled])').prop('checked', true);
        }
      }
      $('#cphPrimaryContent_ddlAssetType').on('change', adjustAddStockModal);
      $("#btnShow1").click(adjustAddStockModal);
      //autocomplete
      $(".autocompleteassets").autocomplete({
        source: function(request, response) {
          $.ajax({
            type: 'GET',
            url: "https://www.marketbeat.com/scripts/MultipleAssetTypeAutoComplete.ashx",
            dataType: 'text',
            data: {
              'searchquery': request.term,
              'assettype': assetType
            },
            success: function(data) {
              response(JSON.parse(data));
            }
          });
        },
        minLength: 2,
        change: function(event, ui) {
          if (assetType != "manual") {
            if (ui.item == null) {
              $('.autocompleteassets').val("");
              $('#cphPrimaryContent_txtAutoCompleteData').val("");
            } else {
              $('#cphPrimaryContent_txtAutoCompleteData').val(ui.item.data);
              $('#cphPrimaryContent_rfvAutoCompleteData').css("display", "none");
            }
          } else {
            //if ($(this).val().length > 0) {
            $('#cphPrimaryContent_txtAutoCompleteData').val($('.autocompleteassets').val()); //puts something for this required field  
            //}
            //else {
            //    $('#cphPrimaryContent_txtAutoCompleteData').val(""); //puts something for this required field  
            //}
          }
        },
        select: function(event, ui) {
          if (assetType != "manual") {
            $('.autocompleteassets').val("");
            $('.currency-label').text(ui.item.currency + " ");
            $('#cphPrimaryContent_txtAutoCompleteData').val(ui.item.data);
            //$('#AutoCompleteChosen').text(ui.item.value);
            $('#cphPrimaryContent_txtACPS').val(ui.item.currentprice);
            $('#cphPrimaryContent_spnCurrentPrice').text("(Price as of " + ui.item.lastupdated + " is " + ui.item.currentprice + " " + ui.item.currency + ")");
          }
        }
      });
      //autocomplete multiple
      $(".autocompleteassetsmultiple").autocomplete({
        source: function(request, response) {
          $.ajax({
            type: 'GET',
            url: "https://www.marketbeat.com/scripts/MultipleAssetTypeAutoComplete.ashx",
            dataType: 'text',
            data: {
              'searchquery': request.term,
              'assettype': assetTypeMultiple
            },
            success: function(data) {
              response(JSON.parse(data));
            }
          });
        },
        minLength: 2,
        change: function(event, ui) {
          if (ui.item == null) {
            $('.autocompleteassetsmultiple').val("");
          }
        },
        select: function(event, ui) {
          var chosenAssetNode = "<label><input checked type='checkbox' name='multiadd[]' value='" + assetTypeMultiple + "|" + ui.item.data + "'/>" + ui.item.value +
            "<a onclick=\"$(this).closest('label').remove();  if ($(&quot;input[name='multiadd[]'][value^='stocketf']&quot;).length === 0 ) { $('#alertsMultiple').css('display','none')};\" class='removeAsset'>&times;</a></label>";
          $(chosenAssetNode).prependTo('#cphPrimaryContent_chosenAssets');
          $("#requiredMultipleAssets").css("display", "none");
          if (assetTypeMultiple === "stocketf") {
            $("#alertsMultiple").css("display", "block")
          }
          $(this).val('');
          return false;
        }
      });
      tooltipScrollHandler = function() {
        yPosition = $('.tooltip-available.active').offset().top - $(window).scrollTop() + 15;
        if ($(window).innerWidth() > 650) {
          yPosition = $('.tooltip-available.active').offset().top - $(window).scrollTop() - 1;
        }
        $("#boundlessTooltip").css("top", yPosition + "px");
      };
      debouncedTooltipScrollHandler = debounce(tooltipScrollHandler, 1000);
      var openBoundlessToolTip = function(tooltipIcon) {
        // move the chart div to the floating toolip
        tooltipIcon.addClass("active");
        var yPosition = $('.tooltip-available.active').offset().top - $(window).scrollTop() + 15;
        var xPosition = tooltipIcon.offset().left - 127;
        xPosition = Math.max(5, xPosition);
        if ($(window).innerWidth() > 650) {
          yPosition = $('.tooltip-available.active').offset().top + $('.tooltip-available.active').height() - $(window).scrollTop() - 1; // need slight overlap to be able to mouse in to the tooltip without it closing
          xPosition = tooltipIcon.offset().left + $('.tooltip-available.active').width() - 250;
          xPosition = Math.max(10, xPosition);
        }
        $("#boundlessTooltip").css({
          "display": "block",
          "position": "fixed",
          "top": yPosition + "px",
          "left": xPosition + "px"
        })
        $("#boundlessTooltip").html(tooltipIcon.closest("td, th, li").find(".tooltip-content").html());
        window.addEventListener('scroll', tooltipScrollHandler, false);
        setTimeout(function() {
          boundlessToolTipIsOpen = true;
        }, 1);
      }
      $("#boundlessTooltip").click(function() {
        clickingBoundlessTooltip = true;
        setTimeout(function() {
          clickingBoundlessTooltip = false;
        }, 10);
      });
      $('.tooltip-available').mouseenter(function() {
        openBoundlessToolTip($(this));
      });
      $(".tooltip-available").focusin(function() {
        openBoundlessToolTip($(this));
      });
      $(".tooltip-available").focusout(function() {
        if (typeof usingTouchScreen === undefined || !usingTouchScreen) {
          closeBoundlessTooltip();
        }
      });
      var closeBoundlessTooltip = function() {
        $(".tooltip-available.active").removeClass("active");
        $("#boundlessTooltip").css("display", "none");
        // #boundlessTooltip will not disappear until it is also not being hovered because of an !important css rule
        window.removeEventListener('scroll', tooltipScrollHandler, false);
        setTimeout(function() {
          boundlessToolTipIsOpen = false;
        }, 1);
      }
      $('.tooltip-available').mouseleave(function() {
        //usingTouchScreen comes from masterscripts
        if (typeof usingTouchScreen === undefined || !usingTouchScreen) {
          closeBoundlessTooltip();
        }
      });
      $(window).on('touchstart', function(e) {
        var container = document.getElementById('boundlessTooltip');
        if (boundlessToolTipIsOpen && !container.contains(e.target)) {
          if ((e.target).classList.contains("tooltip-available")) {
            $(".tooltip-available.active").removeClass("active");
          } else {
            closeBoundlessTooltip();
          }
        }
      });
    };
    // end pagebindcontrolevents
    var UpdateHdnColumns = function() {
      var ColumnsAndChoices = "";
      $("#columnChoiceList li input").each(function() {
        ColumnsAndChoices = ColumnsAndChoices + $(this).val() + "-";
        if (this.checked) {
          ColumnsAndChoices += "1";
        } else {
          ColumnsAndChoices += "0";
        }
        ColumnsAndChoices += ",";
      })
      $("#cphPrimaryContent_hdnColumns").val(ColumnsAndChoices);
      //$("#hdnColumnsVisible").html(ColumnsAndChoices.replace(/,/g, ",<br>"));
    }
    var UpdateChangedTableCells = function() {
      var ColumnsNumber = $("#visibleWatchlists .scroll-table").first().find("tr").first().find("th").length;
      $("#visibleWatchlists .bulkactioncheck, #visibleWatchlists .watchlist-total").each(function(index) {
        var rowIdentifier = $(this).attr('id');
        var thisRow = $(this).closest("tr");
        var correspondingRow = $("#UPDATEDTABLE" + rowIdentifier).closest("tr");
        for (let i = 0; i < ColumnsNumber; i++) {
          var ExistingTableCell = thisRow.find('td:eq(' + i + ')');
          if (ExistingTableCell.hasClass("changeable-cell")) {
            var ReplacementTableCell = correspondingRow.find('td:eq(' + i + ')');
            if (ExistingTableCell.text() != ReplacementTableCell.text()) {
              ExistingTableCell.addClass("highlight-price-change")
              ExistingTableCell.html(ReplacementTableCell.html());
              if (ReplacementTableCell.attr('data-sort-value') !== undefined) {
                ExistingTableCell.updateSortVal(ReplacementTableCell.attr('data-sort-value'));
              } else {
                ExistingTableCell.updateSortVal(ReplacementTableCell.text());
              }
            }
          }
        }
        //$('.sort-table').stupidtable_build();
        setTimeout(function() {
          $('.highlight-price-change').removeClass('highlight-price-change');
        }, 2000)
      });
    };
    var ColumnChecksChanged = false;
    //Initial bind
    document.addEventListener("DOMContentLoaded", function() {
      if (document.getElementById("cphPrimaryContent_pnlPlaidPopup") != null) {
        if (getCookie("plaidPopupSeen") == null) {
          $("#cphPrimaryContent_pnlPlaidPopup").modal('show');
          setCookie("plaidPopupSeen", "1", 15)
        }
      }
      $(".sortable").sortable({
        update: function(event, ui) {
          ColumnChecksChanged = true;
        }
      });
      $("#customizeColumnsGroup input").change(function() {
        ColumnChecksChanged = true;
      });
      $("#customizeColumnsGroup").on("hide.bs.dropdown", function(event) {
        if (clickingBoundlessTooltip) {
          event.preventDefault();
        } else if (ColumnChecksChanged) {
          var myControl = document.getElementById('cphPrimaryContent_btnApplyColumns');
          UpdateHdnColumns();
          setTimeout(function() {
            myControl.focus();
            myControl.click();
          }, 1);
        }
      });
      $(".shownotifications").hover(function() {
        $(this).addClass("hovered");
      }, function() {
        $(this).removeClass("hovered");
      });
      $(".shownotifications").focus(function() {
        $(this).addClass("hovered");
      }, function() {
        $(this).removeClass("hovered");
      });
      PageBindControlEvents(false);
      //Re-bind for callbacks
      try {
        var prm = Sys.WebForms.PageRequestManager.getInstance();
        prm.add_endRequest(function() {
          PageBindControlEvents(true);
          UpdateChangedTableCells();
        });
      } catch (err) {}
    });
    //adds the button style that indicates to the user that it is processing. Safari stops the animation on submit unfortunately
    function addSubmittingStyle(el, thisValidationGroup) {
      if (thisValidationGroup === 'none') {
        $(el).addClass("pending");
      } else if (Page_ClientValidate(thisValidationGroup) == true) {
        $(el).addClass("pending");
      }
    };

    function checkForMultipleAssets() {
      if ($("input[name='multiadd[]']").length > 0) {
        $("#requiredMultipleAssets").css("display", "none");
        addSubmittingStyle(this, 'none');
        return true;
      } else {
        $("#requiredMultipleAssets").css("display", "block");
        return false;
      };
    };

    function editHolding(holdingId, holdingPrefix, holdingSymbol, holdingAmount, holdingCostPerShare, holdingWatchlist, holdingAlerts, holdingSMSAlerts, holdingIncluded, holdingCurrency, holdingManualPrice, holdingYield, holdingAlertAbove,
      holdingAlertBelow, holdingUserNotes, holdingManualTitle, holdingCurrentPrice, holdingPriceAsOf, holdingIsSynced = false) {
      $("#EditStockBasics").css("display", "block");
      //customize for asset
      $('#Panel4').find('input[id$="EditStockId"]').val(holdingId);
      $('#Panel4').find('input[id$="txtSharesHeldEdit"]').val(holdingAmount);
      $('#Panel4').find('textarea[id$="txtUserNotesEdit"]').val(holdingUserNotes);
      $('#Panel4').find('input[id$="txtACPSEdit"]').val(holdingCostPerShare);
      $('#Panel4').find('select[id$="ddlWatchlistEdit"]').val(holdingWatchlist);
      $('#Panel4').find('input[id$="chkEmailAlertsEdit"]').prop('checked', holdingAlerts);
      $('#Panel4').find('input[id$="chkSMSAlertsEdit"]').prop('checked', holdingSMSAlerts);
      $('#Panel4').find('input[id$="chkNewsletterEdit"]').prop('checked', holdingIncluded);
      $('#cphPrimaryContent_chkPriceAlertsEdit').prop('checked', false);
      $('#priceAlertsEdit').css("display", "none");
      $('.currency-label').text(holdingCurrency + " ");
      $('#instantAlertsEdit').css("display", "block");
      $('.stocketf-alert-option').css("display", "block");
      $('#newsAlertsEdit').css("display", "none");
      $('#cphPrimaryContent_txtAlertAboveEdit').val("");
      $('#cphPrimaryContent_txtAlertBelowEdit').val("");
      $('#edit-current-price').text("");
      if (holdingAlertAbove != 0) {
        $('#cphPrimaryContent_txtAlertAboveEdit').val(holdingAlertAbove);
        $('#cphPrimaryContent_chkPriceAlertsEdit').prop('checked', true);
        $('#priceAlertsEdit').css("display", "block");
      }
      if (holdingAlertBelow != 0) {
        $('#cphPrimaryContent_txtAlertBelowEdit').val(holdingAlertBelow);
        $('#cphPrimaryContent_chkPriceAlertsEdit').prop('checked', true);
        $('#priceAlertsEdit').css("display", "block");
      }
      $('#manualAssetOptionsEdit').css("display", "none");
      $('#Panel4').find('#cphPrimaryContent_txtUnitPriceEdit').val("");
      $('#Panel4').find('#cphPrimaryContent_txtInvestmentYieldEdit').val("");
      //adjust for asset type
      if (holdingPrefix === "MANUAL") {
        $('#instantAlertsEdit').css("display", "none");
        $('#amountLabelEdit').text("Units Held:");
        $('#manualAssetOptionsEdit').css("display", "block");
        $('#Panel4').find('#cphPrimaryContent_txtUnitPriceEdit').val(holdingManualPrice);
        $('#Panel4').find('#cphPrimaryContent_txtInvestmentYieldEdit').val(holdingYield);
        $('#instantAlertsEdit').css("display", "none");
        $('#Panel4').find('span[id="stockSymbol"]').html(holdingManualTitle);
      } else if (holdingPrefix === "CRYPTO") {
        $('#amountLabelEdit').text("Coins Held:");
        $('#Panel4').find('span[id="stockSymbol"]').html(holdingSymbol);
        $('#edit-current-price').text("(Price as of " + holdingPriceAsOf + " is " + holdingCurrentPrice + " " + holdingCurrency + ")");
        $('#newsAlertsEdit').css("display", "block");
        $('.stocketf-alert-option').css("display", "none");
      } else if (holdingPrefix === "FUND") {
        $('#instantAlertsEdit').css("display", "block");
        $('#amountLabelEdit').text("Shares Held:");
        $('#Panel4').find('span[id="stockSymbol"]').html(holdingSymbol);
        $('#edit-current-price').text("(Price as of " + holdingPriceAsOf + " is " + holdingCurrentPrice + " " + holdingCurrency + ")");
      }
      //back to stock/etf setup
      else {
        $('#amountLabelEdit').text("Shares Held:");
        $('#newsAlertsEdit').css("display", "block");
        $('#Panel4').find('span[id="stockSymbol"]').html(holdingPrefix + ":" + holdingSymbol);
        $('#edit-current-price').text("(Price as of " + holdingPriceAsOf + " is " + holdingCurrentPrice + " " + holdingCurrency + ")");
      }
      // hide certain fields if it is a synced asset because we don't want them to edit things that are just going to get overwritten
      if (holdingIsSynced) {
        $("#EditStockBasics").css("display", "none");
      }
      // display 
      $('#Panel4').css('display', 'block');
      $("body").addClass("modal-open");
    }

    function deleteStock(holdingId, title) {
      $('#Panel6').css('display', 'block');
      $("body").addClass("modal-open");
      $('#Panel6').find('input[id$="DeleteStockId"]').val(holdingId);
      $('#Panel6').find('span[id="deleteStockSymbol"]').html(title);
    }

    function editWatchlist(watchlistId, watchlistName, watchlistPriority) {
      $('#Panel5').css('display', 'block');
      $('#displayPriority').css('display', 'block');
      $("body").addClass("modal-open");
      $('#Panel5').find('input[id$="EditWatchlistId"]').val(watchlistId);
      $('#Panel5').find('input[id$="txtWatchListEditName"]').val(watchlistName);
      $('#Panel5').find('select[id$="ddlWatchListDisplayPriorityEdit"]').val(watchlistPriority);
    }

    function editDefaultWatchlist(watchlistId, watchlistName, watchlistPriority) {
      $('#Panel5').css('display', 'block');
      $('#displayPriority').css('display', 'none');
      $("body").addClass("modal-open");
      $('#Panel5').find('input[id$="EditWatchlistId"]').val(watchlistId);
      $('#Panel5').find('input[id$="txtWatchListEditName"]').val(watchlistName);
      $('#Panel5').find('select[id$="ddlWatchListDisplayPriorityEdit"]').val(watchlistPriority);
    }

    function deleteWatchlist(watchlistId, watchlistName) {
      $('#Panel7').css('display', 'block');
      $("body").addClass("modal-open");
      $('#Panel7').find('input[id$="DeleteWatchlistId"]').val(watchlistId);
      $('#Panel7').find('span[id="deleteWatchlistName"]').html(watchlistName);
    }

    function positionNotifications(element) {
      //console.log("positioning notifications");
      $(element).siblings('.latest-notifications').find("a").css("pointer-events", "none");
      var buttonTop = $(element).offset().top - $(element).closest(".scroll-table-wrapper-wrapper").offset().top;
      //console.log("BUTTON TOP " + buttonTop);
      var boxBottom = $(element).offset().top + $(element).siblings('.latest-notifications').outerHeight();
      // console.log("BUTTON BOTTOM " + buttonTop);
      var screenBottom = $(window).scrollTop() + window.innerHeight;
      if (boxBottom > screenBottom && $(window).innerWidth() > 650) {
        $(element).siblings('.latest-notifications').css({
          transform: 'translateY(' + ((buttonTop) - (boxBottom - screenBottom)) + 'px)'
        });
      } else {
        $(element).siblings('.latest-notifications').css({
          transform: 'translateY(' + buttonTop + 'px)'
        });
      }
      setTimeout(function() {
        $(element).siblings('.latest-notifications').find("a").css("pointer-events", "auto");
      }, 10)
    }
  </script>
  <script>
    function showNotifications(Prefix, Symbol, ViewedThrough, element) {
      $.get('/Scripts/NotificationsHelpers.ashx?command=watchlistnotifications&accountid=11404962&hash=8836967B6489343AFFEBE4A9F20736CC3E70C11EF914402B105D0B1411AC2283469760A890F500A211DD2AA9EFAC84240FC1F5B99ADAF28EBA5B81CB4965A10A&prefix=' +
        Prefix + '&symbol=' + Symbol + '&viewedthrough=' + ViewedThrough,
        function(data, status) {
          $(element).html(data);
          $(element).removeClass('pending');
          if (data.length === 0 && $(element).hasClass('mobile-notifications')) {
            $(element).html('<div style="height: 20px;"></div><div class="latest-notifications"><div><div class="ntf-header">No notifications for this asset.</div></div></div>');
          }
        })
    }

    function moveNotifications(ViewedThrough, Prefix, Symbol, element) {
      var notifications = $('#' + ViewedThrough + '_' + Prefix + '_' + Symbol.replace('.', '\\.')).html();
      if (typeof notifications == "undefined" || notifications === '') {
        $(element).html('<div style="height: 20px;"></div><div class="latest-notifications"><div><div class="ntf-header">No notifications for this asset.</div></div></div>');
      } else {
        $(element).html(notifications)
      }
    }
    document.addEventListener('DOMContentLoaded', function() {
      $('.shownotifications').each(function(index) {
        showNotifications($(this).attr('id').split('_')[1], $(this).attr('id').split('_')[2], $(this).attr('id').split('_')[0], $(this));
      })
    });
  </script>
  <!-- Default Statcounter code for Marketbeat.com - Tools and Reports https://www.marketbeat.com/ -->
  <script type="text/javascript">
    var sc_project = 11738637;
    var sc_invisible = 1;
    var sc_security = "2f65063a";
    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/11738637/0/2f65063a/1/" alt="Web Analytics"></a>
    </div>
  </noscript>
  <!-- End of Statcounter Code -->
  <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: 1; transition: opacity 0.5s; position: relative; z-index: 1001;">
    <div id="showHelpers" class="multi-collapse-outer collapse gradient-blue-medium c-white shadow navbar-collapse b-white border font-8 rounded-top" role="button" data-toggle="collapse" data-target=".multi-collapse-outer"
      aria-controls="showHelpers pnlHelpers" style="position: fixed; right: 25px; bottom: -1px; z-index: 401; cursor: pointer; padding: 9px 10px;">Get Started</div>
    <div id="pnlHelpers" class="multi-collapse-outer shadow collapse show" style="position: fixed; right: 10px; bottom: 10px; width: 310px; background-color: var(--white); z-index: 400;">
      <div id="pnlOnboarding">
        <div id="divOnboarding">
          <div class="gradient-blue-medium c-white px-2 pt-2 pb-1 position-relative rounded-top" id="hdGetStarted">
            <span style="cursor: pointer;" role="button" data-toggle="collapse" data-target=".multi-collapse" aria-expanded="true" aria-controls="dvGetStarted">Get Started with MarketBeat <span class="fa-regular fa-angle-right font-12 panel-toggle"
                style="transform: rotate(90deg) translateX(-2px); display: none;"></span></span>
            <span style="cursor: pointer; padding: 2px 0px;" role="button" id="altCloseHelpers" class="float-right fa-regular fa-xmark font-8" data-toggle="collapse" data-target="#pnlHelpers" aria-expanded="true" aria-controls="pnlHelpers"
              title="Hide This"></span>
            <span style="cursor: pointer; padding: 6px 4px; font-size: 0.7em; font-weight: 600;" role="button" id="altMinimizeHelpers" class="float-right" data-toggle="collapse" data-target=".multi-collapse-outer" aria-expanded="true"
              aria-controls="showHelpers pnlHelpers" title="Minimize This">—</span>
          </div>
          <div id="dvGetStarted" class="collapse show bg-white shadow">
            <div class="p-2">
              <table class="w-100">
                <tbody>
                  <tr>
                    <td style="vertical-align:top;width:30px;padding:.2em .2em .4em .2em;"><span class="c-green fa-regular fa-square-check" aria-hidden="true"></span></td>
                    <td style="vertical-align:top;padding:.25em;"><a style="font-size:.9rem;" href="/manage/arn-daily-premium/?utm_source=WebsiteInternal&amp;utm_medium=onboarding&amp;utm_campaign=FreeSubscriber">Read Your Daily Newsletter</a></td>
                  </tr>
                  <tr>
                    <td style="vertical-align:top;width:30px;padding:.2em .2em .4em .2em;"><span class="c-green fa-regular fa-square-check" aria-hidden="true"></span></td>
                    <td style="vertical-align:top;padding:.25em;"><a style="font-size:.9rem;" href="/manage/watchlists/?utm_source=WebsiteInternal&amp;utm_medium=onboarding&amp;utm_campaign=FreeSubscriber">Check Out My MarketBeat</a></td>
                  </tr>
                  <tr>
                    <td style="vertical-align:top;width:30px;padding:.2em .2em .4em .2em;"><span class="c-green fa-regular fa-square-check" aria-hidden="true"></span></td>
                    <td style="vertical-align:top;padding:.25em;"><a style="font-size:.9rem;" href="/help/?utm_source=WebsiteInternal&amp;utm_medium=onboarding&amp;utm_campaign=FreeSubscriber">Watch Our Tutorial Videos</a></td>
                  </tr>
                  <tr>
                    <td style="vertical-align:top;width:30px;padding:.2em .2em .4em .2em;"><span class="c-red fa-regular fa-square" aria-hidden="true"></span></td>
                    <td style="vertical-align:top;padding:.25em;"><a style="font-size:.9rem;" href="/manage/watchlists/?utm_source=WebsiteInternal&amp;utm_medium=onboarding&amp;utm_campaign=FreeSubscriber">Add a Stock to Your Watchlist</a></td>
                  </tr>
                  <tr>
                    <td style="vertical-align:top;width:30px;padding:.2em .2em .4em .2em;"><span class="c-red fa-regular fa-square" aria-hidden="true"></span></td>
                    <td style="vertical-align:top;padding:.25em;"><a style="font-size:.9rem;" href="/manage/watchlists/?utm_source=WebsiteInternal&amp;utm_medium=onboarding&amp;utm_campaign=FreeSubscriber">Set Up an Instant Alert</a></td>
                  </tr>
                  <tr>
                    <td style="vertical-align:top;width:30px;padding:.2em .2em .4em .2em;"><span class="c-green fa-regular fa-square-check" aria-hidden="true"></span></td>
                    <td style="vertical-align:top;padding:.25em;"><a style="font-size:.9rem;" href="/stocks/?utm_source=WebsiteInternal&amp;utm_medium=onboarding&amp;utm_campaign=FreeSubscriber">View a Company's Profile Page</a></td>
                  </tr>
                  <tr>
                    <td style="vertical-align:top;width:30px;padding:.2em .2em .4em .2em;"><span class="c-green fa-regular fa-square-check" aria-hidden="true"></span></td>
                    <td style="vertical-align:top;padding:.25em;"><a style="font-size:.9rem;" href="/market-data/?utm_source=WebsiteInternal&amp;utm_medium=onboarding&amp;utm_campaign=FreeSubscriber">View Our Financial Calendars</a></td>
                  </tr>
                  <tr>
                    <td style="vertical-align:top;width:30px;padding:.2em .2em .4em .2em;"><span class="c-green fa-regular fa-square-check" aria-hidden="true"></span></td>
                    <td style="vertical-align:top;padding:.25em;"><a style="font-size:.9rem;" href="/ratings/USA/latest/?utm_source=WebsiteInternal&amp;utm_medium=onboarding&amp;utm_campaign=FreeSubscriber">View Today's Analyst Ratings</a></td>
                  </tr>
                </tbody>
              </table>
              <div style="display: none; padding: 0px 10px 8px; text-align: center; background: #F6F8F7;">
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
  <script>
    document.addEventListener("DOMContentLoaded", function() {
      $("#HelpersArea").delay(800).queue(function(next) {
        $(this).css("opacity", "1");
        next();
      });
      $(".panel-toggle").hide();
      $("#altCloseHelpers").show();
      $("#altMinimizeHelpers").show();
      $('.multi-collapse').removeClass("multi-collapse");
      $("#dvGetStarted").addClass("show");
      $("#showHelpers").text("Get Started");
      if ($(window).width() > 700) {
        $("#pnlHelpers").addClass("show");
        $("#showHelpers").removeClass("show").text("Get Started");
      }
      $("#altCloseHelpers").click(function() {
        setCookie("HideOnboarding", "Hide", 7);
      });
    });
  </script>
  <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');" style="pointer-events: auto; cursor: pointer;">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');" style="pointer-events: auto; cursor: pointer;">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; pointer-events: auto; cursor: pointer;" 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(&quot;ctl00$btnLoginOnModal&quot;, &quot;&quot;, true, &quot;Login&quot;, &quot;&quot;, 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(&quot;ctl00$btnOnEnterCreateOnModal&quot;, &quot;&quot;, true, &quot;Signup&quot;, &quot;&quot;, 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(&quot;ctl00$btnCreateOnModal&quot;, &quot;&quot;, true, &quot;Signup&quot;, &quot;&quot;, 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("cphPrimaryContent_rfvAutoCompleteData"), document.getElementById("cphPrimaryContent_rfvWatchlistName"), document.getElementById("cphPrimaryContent_rfvWatchListEditName"), document
      .getElementById("cphPrimaryContent_rfvConfirmDelete"), document.getElementById("cphPrimaryContent_rgxConfirmDelete"), document.getElementById("cphPrimaryContent_RequiredFieldValidator2"), 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 cphPrimaryContent_rfvAutoCompleteData = document.all ? document.all["cphPrimaryContent_rfvAutoCompleteData"] : document.getElementById("cphPrimaryContent_rfvAutoCompleteData");
    cphPrimaryContent_rfvAutoCompleteData.controltovalidate = "cphPrimaryContent_txtAutoCompleteData";
    cphPrimaryContent_rfvAutoCompleteData.errormessage = "Please choose an asset.";
    cphPrimaryContent_rfvAutoCompleteData.display = "Dynamic";
    cphPrimaryContent_rfvAutoCompleteData.validationGroup = "Val2";
    cphPrimaryContent_rfvAutoCompleteData.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid";
    cphPrimaryContent_rfvAutoCompleteData.initialvalue = "";
    var cphPrimaryContent_rfvWatchlistName = document.all ? document.all["cphPrimaryContent_rfvWatchlistName"] : document.getElementById("cphPrimaryContent_rfvWatchlistName");
    cphPrimaryContent_rfvWatchlistName.controltovalidate = "cphPrimaryContent_txtWatchlistName";
    cphPrimaryContent_rfvWatchlistName.errormessage = "Required";
    cphPrimaryContent_rfvWatchlistName.display = "Dynamic";
    cphPrimaryContent_rfvWatchlistName.validationGroup = "Val4";
    cphPrimaryContent_rfvWatchlistName.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid";
    cphPrimaryContent_rfvWatchlistName.initialvalue = "";
    var cphPrimaryContent_rfvWatchListEditName = document.all ? document.all["cphPrimaryContent_rfvWatchListEditName"] : document.getElementById("cphPrimaryContent_rfvWatchListEditName");
    cphPrimaryContent_rfvWatchListEditName.controltovalidate = "cphPrimaryContent_txtWatchListEditName";
    cphPrimaryContent_rfvWatchListEditName.errormessage = "Required";
    cphPrimaryContent_rfvWatchListEditName.display = "Dynamic";
    cphPrimaryContent_rfvWatchListEditName.validationGroup = "Val5";
    cphPrimaryContent_rfvWatchListEditName.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid";
    cphPrimaryContent_rfvWatchListEditName.initialvalue = "";
    var cphPrimaryContent_rfvConfirmDelete = document.all ? document.all["cphPrimaryContent_rfvConfirmDelete"] : document.getElementById("cphPrimaryContent_rfvConfirmDelete");
    cphPrimaryContent_rfvConfirmDelete.controltovalidate = "cphPrimaryContent_txtConfirmDelete";
    cphPrimaryContent_rfvConfirmDelete.errormessage = "Type “DELETE ALL” to confirm";
    cphPrimaryContent_rfvConfirmDelete.display = "Dynamic";
    cphPrimaryContent_rfvConfirmDelete.validationGroup = "ValDeleteWatchlist";
    cphPrimaryContent_rfvConfirmDelete.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid";
    cphPrimaryContent_rfvConfirmDelete.initialvalue = "";
    var cphPrimaryContent_rgxConfirmDelete = document.all ? document.all["cphPrimaryContent_rgxConfirmDelete"] : document.getElementById("cphPrimaryContent_rgxConfirmDelete");
    cphPrimaryContent_rgxConfirmDelete.controltovalidate = "cphPrimaryContent_txtConfirmDelete";
    cphPrimaryContent_rgxConfirmDelete.errormessage = "Type “DELETE ALL” to confirm";
    cphPrimaryContent_rgxConfirmDelete.display = "Dynamic";
    cphPrimaryContent_rgxConfirmDelete.validationGroup = "ValDeleteWatchlist";
    cphPrimaryContent_rgxConfirmDelete.evaluationfunction = "RegularExpressionValidatorEvaluateIsValid";
    cphPrimaryContent_rgxConfirmDelete.validationexpression = "^([dD][eE][lL][eE][tT][eE][ ][aA][lL][lL])$";
    var cphPrimaryContent_RequiredFieldValidator2 = document.all ? document.all["cphPrimaryContent_RequiredFieldValidator2"] : document.getElementById("cphPrimaryContent_RequiredFieldValidator2");
    cphPrimaryContent_RequiredFieldValidator2.controltovalidate = "cphPrimaryContent_txtBulkWatchlistNew";
    cphPrimaryContent_RequiredFieldValidator2.errormessage = "Required";
    cphPrimaryContent_RequiredFieldValidator2.display = "Dynamic";
    cphPrimaryContent_RequiredFieldValidator2.validationGroup = "Val9";
    cphPrimaryContent_RequiredFieldValidator2.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid";
    cphPrimaryContent_RequiredFieldValidator2.initialvalue = "";
    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;
      }
    }
    theForm.oldSubmit = theForm.submit;
    theForm.submit = WebForm_SaveScrollPositionSubmit;
    theForm.oldOnSubmit = theForm.onsubmit;
    theForm.onsubmit = WebForm_SaveScrollPositionOnSubmit;
    document.getElementById('cphPrimaryContent_rfvAutoCompleteData').dispose = function() {
      Array.remove(Page_Validators, document.getElementById('cphPrimaryContent_rfvAutoCompleteData'));
    }
    document.getElementById('cphPrimaryContent_rfvWatchlistName').dispose = function() {
      Array.remove(Page_Validators, document.getElementById('cphPrimaryContent_rfvWatchlistName'));
    }
    document.getElementById('cphPrimaryContent_rfvWatchListEditName').dispose = function() {
      Array.remove(Page_Validators, document.getElementById('cphPrimaryContent_rfvWatchListEditName'));
    }
    document.getElementById('cphPrimaryContent_rfvConfirmDelete').dispose = function() {
      Array.remove(Page_Validators, document.getElementById('cphPrimaryContent_rfvConfirmDelete'));
    }
    document.getElementById('cphPrimaryContent_rgxConfirmDelete').dispose = function() {
      Array.remove(Page_Validators, document.getElementById('cphPrimaryContent_rgxConfirmDelete'));
    }
    document.getElementById('cphPrimaryContent_RequiredFieldValidator2').dispose = function() {
      Array.remove(Page_Validators, document.getElementById('cphPrimaryContent_RequiredFieldValidator2'));
    }
    Sys.Application.add_init(function() {
      $create(Sys.UI._Timer, {
        "enabled": false,
        "interval": 60000,
        "uniqueID": "ctl00$cphPrimaryContent$AutoMagicalTimer"
      }, null, null, $get("cphPrimaryContent_AutoMagicalTimer"));
    });
    Sys.Application.add_init(function() {
      $create(Sys.UI._UpdateProgress, {
        "associatedUpdatePanelId": null,
        "displayAfter": 500,
        "dynamicLayout": true
      }, null, null, $get("cphPrimaryContent_Progress1"));
    });
    document.getElementById('rfvEmail').dispose = function() {
      Array.remove(Page_Validators, document.getElementById('rfvEmail'));
    }
    document.getElementById('RequiredFieldValidator1').dispose = function() {
      Array.remove(Page_Validators, document.getElementById('RequiredFieldValidator1'));
    }
    document.getElementById('RequiredFieldValidator2').dispose = function() {
      Array.remove(Page_Validators, document.getElementById('RequiredFieldValidator2'));
    }
    document.getElementById('rgxEmail').dispose = function() {
      Array.remove(Page_Validators, document.getElementById('rgxEmail'));
    }
    document.getElementById('RequiredFieldValidator3').dispose = function() {
      Array.remove(Page_Validators, document.getElementById('RequiredFieldValidator3'));
    }
    document.getElementById('Regex1').dispose = function() {
      Array.remove(Page_Validators, document.getElementById('Regex1'));
    }
    //]]>
  </script>
</form>

Text Content

Skip to main content
Gift Opening
$200 Off MarketBeat All Access
Thanks for being one of our best subscribers! You are eligible for a
limited-time discount.
 * 1days
 * 23Hours
 * 59Minutes
 * 55Seconds

Claim Your Discount
×
QQQ   513.92   (+0.07%)
AAPL   227.20   (-0.12%)
AMZN   209.12   (-0.44%)
GOOGL   178.91   (-1.02%)
META   586.70   (-0.85%)
MSFT   422.60   (-0.67%)
AAPL   227.20   (-0.12%)
MSFT   422.60   (-0.67%)
META   586.70   (-0.85%)
GOOGL   178.91   (-1.02%)
AMZN   209.12   (-0.44%)
NVDA   147.46   (-0.95%)
TSLA   317.58   (+6.96%)
AMD   148.07   (-1.17%)
NIO   5.05   (-4.90%)
BABA   93.93   (-6.20%)
F   10.91   (-0.46%)
T   22.31   (+1.23%)
MU   112.37   (-0.92%)
GE   184.58   (+3.20%)
CGC   4.16   (-8.57%)
DIS   98.73   (-0.20%)
PFE   26.92   (-1.97%)
PYPL   82.65   (+1.60%)
AMC   4.22   (-1.86%)
XOM   120.76   (-0.32%)
QQQ   513.92   (+0.07%)
AAPL   227.20   (-0.12%)
AMZN   209.12   (-0.44%)
GOOGL   178.91   (-1.02%)
META   586.70   (-0.85%)
MSFT   422.60   (-0.67%)
AAPL   227.20   (-0.12%)
MSFT   422.60   (-0.67%)
META   586.70   (-0.85%)
GOOGL   178.91   (-1.02%)
AMZN   209.12   (-0.44%)
NVDA   147.46   (-0.95%)
TSLA   317.58   (+6.96%)
AMD   148.07   (-1.17%)
NIO   5.05   (-4.90%)
BABA   93.93   (-6.20%)
F   10.91   (-0.46%)
T   22.31   (+1.23%)
MU   112.37   (-0.92%)
GE   184.58   (+3.20%)
CGC   4.16   (-8.57%)
DIS   98.73   (-0.20%)
PFE   26.92   (-1.97%)
PYPL   82.65   (+1.60%)
AMC   4.22   (-1.86%)
XOM   120.76   (-0.32%)
 * Research Tools
   * All Access Research Tools
     * Live News Feed
     * Momentum Alerts
     * Idea Engine
     * Export Data (CSV)
     * See All Research Tools
   * My MarketBeat
     * My Portfolio
     * My Newsletter
     * My Account
   * Calculators
     * Dividend Calculator
     * Dividend Yield Calculator
     * Market Cap Calculator
     * Options Profit Calculator
     * Stock Average Calculator
     * Stock Split Calculator
     * Stock Profit Calculator
   * Stock Screeners
     * Stock Screener
     * ETF Screener
   * Trending Stocks
     * Trending MarketBeat Stocks
     * Trending Media Mentions
     * High Media Sentiment Stocks
     * Trending WallStreetBets Stocks
   * Premium Reports
     * All Reports
     * 7 Election Stocks to Own
     * 7 Magnificent Stocks in 2024
     * 10 Best AI Stocks
     * Best Stocks for 2025 Report
     * Guide To High Short Interest Stocks
     * Elon Musk's Next Move
     * Next 7 Blockbuster Stocks
     * Stock Picks from Top Analysts
 * Financial Calendars
   * Calendars and Market Data
 * Market Data
   * All Market Data and Financial Calendars
   * Analyst Ratings
     * Recent Analyst Ratings
     * Stock Ratings Screener
     * Top-Rated Stocks
     * Lowest-Rated Stocks
     * Top-Rated Analysts
     * Top-Rated Brokerages
     * Most-Upgraded Stocks
     * Free Ratings Newsletter
   * Congressional Data
     * Recent Trades
     * Most Bought Stocks
     * Members of Congress
   * Corporate Events
     * Corporate Buybacks
     * Economic Reports
     * Initial Public Offerings (IPOs)
     * IPO Lockup Expirations
     * SEC Filings
     * Stock Splits
   * Dividends
     * Today's Announcements
     * Ex-Dividend Calendar
     * Dividend Increases
     * Dividend Achievers
     * Dividend Aristocrats
     * Best Dividend Stocks
     * High-Yield Dividend Stocks
     * Top-Rated Dividend Stocks
     * Dividend Screener
     * Free Dividend Newsletter
   * Earnings
     * Today's Announcements
     * Tomorrow's Announcements
     * Next Week's Announcements
     * Upcoming Earnings Calls
     * Earnings Call Transcripts
     * Earnings Screener
   * Insider Trades
     * Today's Insider Trades
     * Top Insider Buying Stocks
     * Top Insider Selling Stocks
     * Insider Trades Screener
     * Insider Trades Newsletter
   * Stock Market Holidays
   * Cryptocurrencies
     * All Cryptocurrencies
     * Cryptocurrency Headlines
     * Cryptocurrency Newsletter
   * Gainers & Decliners
     * Percentage Gainers
     * Percentage Decliners
     * Breakout Stocks
   * High & Low PE
     * High PE Stocks
     * Low PE Stocks
   * Highs & Lows
     * 52-Week Highs
     * 52-Week Lows
   * Most Active
     * Most Active Stocks
     * Most Volatile Stocks
     * Unusual Trading Volume
     * Trading Halts
   * Options
     * Unusual Call Volume
     * Unusual Put Volume
   * Sector Performance
   * Short Interest
     * Largest Short Positions
     * Short Interest Increases
     * Short Interest Decreases
 * Stock Lists
   * All Stock Lists
   * Stocks by Interest
     * 5G Stocks
     * Blue Chip Stocks
     * Biotech Stocks
     * FAANG Stocks
     * Gold Stocks
     * Large Cap Stocks
     * Marijuana Stocks
     * Oil Stocks
     * REITs
     * Russell 2000 Stocks
     * Small Cap Stocks
     * Warren Buffett Stocks
   * Low Priced Stocks
     * Stocks Under $0.50
     * Stocks Under $1
     * Stocks Under $2
     * Stocks Under $5
   * Penny Stocks
     * Most Active Penny Stocks
     * Most Popular Penny Stocks
     * Top Penny Stocks Today
   * Stocks by Exchange
     * NYSE Stocks
     * NASDAQ Stocks
     * OTCMKTS Stocks
     * TSX Stocks
     * LSE Stocks
   * Stocks by Sector
     * Automotive Stocks
     * Aerospace Stocks
     * Basic Materials Stocks
     * Business Services Stocks
     * Consumer Discretionary Stocks
     * Consumer Staples Stocks
     * Construction Stocks
     * Energy Stocks
     * Finance Stocks
     * Industrial Stocks
     * Manufacturing Stocks
     * Medical Stocks
     * Real Estate Stocks
     * Retail Stocks
     * Technology Stocks
     * Transportation Stocks
     * Utilities Stocks
   * Technical Indicators
     * Death Cross Stocks
     * Golden Cross Stocks
     * RSI Overbought Stocks
     * RSI Oversold Stocks
   * Stock Comparisons
   * Premium Stock Lists
     * Top MarketRank™ Stocks
     * Top ESG Stocks
     * Top-Rated Stocks
     * Top-Rated Dividend Stocks
     * Top-Rated Small-Cap Stocks
     * Top-Rated Tech Stocks
 * Headlines
   * MarketBeat TV
     * Revolutionizing Logistics: Dot Ai Corporation CEO Ed Nabrotzky Talks IPO
       and Innovations
     * Revolutionizing Logistics: Dot Ai Corporation CEO Ed Nabrotzky Talks IPO
       and Innovations
     * Massive Market Moves Following Trump Win: Tesla, JP Morgan, & Bitcoin
       Soar
     * Massive Market Moves Following Trump Win: Tesla, JP Morgan, & Bitcoin
       Soar
     * Top 3 Stocks Under $20 with Strong Buy Ratings and Growth Potential
     * Top 3 Stocks Under $20 with Strong Buy Ratings and Growth Potential
     * ISRG Stock Surges: AI and Healthcare Innovation at the Core
     * ISRG Stock Surges: AI and Healthcare Innovation at the Core
   * Featured Articles
     * Dot Ai IPO: CEO Ed Nabrotzky Shares Vision for Logistics Future
     * The Hottest Markets to Watch After the Fed’s 25 Bps Rate Cut
     * The Top 5 Performing S&P 500 Stocks YTD in 2024
     * L3Harris: Positioned for Gains With Trump’s Defense Policies
     * Is First Solar’s Earnings Drop a Golden Buying Opportunity?
     * Take-Two Interactive’s 2024 Comeback: New Highs Expected in 2025
     * How Altimmune Could Grab a Big Chunk of the GLP-1 Market
     * Here’s Why Etsy Management Is Investing $1 Billion in Buybacks
     * More Featured Articles
   * News
     * All Headlines
     * Instant News Alerts
     * Research Surveys
     * Real-Time News Feed
     * Investing Slideshows
 * Education
   * Featured Topic: Options Trading
      * Options Traders Bet Big on These 3 Tech Stocks
      * How to Play New Options Trading With Bitcoin ETFs
      * Albemarle Stock Call Options Surge: What It Means for Lithium
      * How to Execute the Wheel Strategy to Generate Options Income
      * 3 Options Strategies to Play a Stock’s Uptrend if Bullish
      * How to Use Delta Hedging to Protect Your Options with Stock
   
   * Learn
     Read investment guides, how-to articles, and explainers.
   * Stock Ideas
     Looking for ideas for stocks to invest in? These stocks are poised to move.
   * Financial Terms
     Learn the language of investment with our glossary of over 200 financial
     terms.
   * Help
     View our library of help videos to learn how to use the tools on the
     MarketBeat website.

My Account Free Trial
Search
→ Urgent: This election is rigged (From Porter & Company) (Ad)


MY MARKETBEAT


ADD A HOLDING TO YOUR WATCHLIST

×
Asset Type: Stock/ETF Cryptocurrency Manual Asset Search:
Please choose an asset.
Shares Held: Avg. Cost Basis:
Current Unit Value (USD): Investment Yield:
%
Watchlist: My Default Watchlist Alerts:
Enable Email News Alerts
Enable SMS News Alerts
Include in Newsletter
Set Up Price Alerts
Alert above
Alert below
Manage All Alerts and Alert Types Notes:
Cancel    


ADD MULTIPLE HOLDINGS TO YOUR WATCHLIST

×
Asset Type: Stock/ETF Cryptocurrency
Search:
Please select some assets using the search box.
Watchlist: My Default Watchlist Alerts (applies to stocks only):
Enable Email News Alerts
Enable SMS News Alerts
Include in Newsletter

Manage All Alerts and Alert Types
Cancel  


CREATE A NEW WATCHLIST

×
Watchlist Name:
Required
Cancel    


EDIT WATCHLIST

×
Watchlist Name:
Required
Display Priority: 10 (Highest) 9 8 7 6 5 4 3 2 1 (Lowest)
Cancel  


EDIT DETAILS FOR

×
Shares Held: Avg. Cost Basis:
Current Unit Value: Investment Yield:
%
Watchlist: My Default Watchlist
Alerts:
Enable Email News Alerts
Enable SMS News Alerts
Include In Newsletter
Set Up Price Alerts
Alert above
Alert below
Manage All Alerts and Alert Types Notes:
Cancel    


DELETE HOLDING FROM WATCHLIST

×

Are you sure you want to delete from this watchlist?

Cancel    


DELETE WATCHLIST

×

Are you sure you want to delete your watchlist ""?

Type “DELETE ALL” to confirm that you want to delete this watchlist and ALL your
holdings on this watchlist:
Type “DELETE ALL” to confirm Type “DELETE ALL” to confirm
Cancel    


BULK ACTION

Are you sure you want to ?

Cancel    


MOVE HOLDINGS TO A NEW WATCHLIST

Create a new watchlist to move these holdings to:

Watchlist Name:
Required
Cancel    
All Watchlists My Default Watchlist Watchlist
Add a Holding
Portfolio Overview Performance Insights Headlines Calendar Ratings Insider
Trades Earnings SEC Filings Social Newsletter Portfolio Ideas MarketRank™




MY PORTFOLIO

Select a Bulk Action Delete These Holdings Enable Email Alerts for These
Holdings Disable Email Alerts for These Holdings Move Holdings to 'My Default
Watchlist' Move Holdings to a New Watchlist
Apply
Bulk Actions



Customize your watchlist columns by checking the ones you want to include and
dragging them into the order you prefer.
Select and Rearrange Columns 7 selected
 * Classic Columns
 * Current Price and Change 
   The current price of a listed asset and the amount the price has changed
   during the most recent trading period.
 * Holding Value 
   Holding value is calculated as the current price of the holding times the
   holding size.
 * Cost Basis 
   Cost basis is the original purchase price of each share of the asset.
 * ROI 
   Return on investment (ROI) is a measurement that shows your profit on an
   investment as a percentage of your initial investment. Learn more.
 * PE Ratio 
   The price to earnings ratio (P/E) measures its current share price relative
   to its per-share earnings. The ratio is used in valuing companies. Learn
   more.
 * Beta 
   Beta is the result of a calculation that measures the relative volatility of
   a stock in correlation to a particular standard. Learn more.
 * Annual Dividend 
   The total amount of dividend dispersed per share per year. Learn more.
 * Consensus Rating 
   Analyst ratings or stock ratings, such as “Buy”, “Sell”, and “Hold” are an
   evaluation of a stock's expected performance and/or it's risk level as
   determined by a rating agency or brokerage firm. Consensus is the
   summary/average of those ratings. Learn more.
 * Consensus Price Target 
   A price target is an investment analyst’s or adviser’s estimate of the future
   price level of an asset, such as a stock, futures contract, commodity or
   exchange-traded fund (ETF). Consensus is the summary/average of those
   estimates. Learn more.
 * Upside/Downside 
   The potential change in stock price if the stock were to meet consensus price
   target estimates. Upside indicates that the consensus price target is higher
   than the current price and downside indicates that the consensus price target
   is lower than the current price. Learn more.
 * Basics
 * Sector 
   A sector is an area of the economy where businesses share the same or related
   business activity, product, or service. Sectors represent a large grouping of
   companies showcasing similar business activities.
 * Industry 
   Industry refers to a specific group of companies or businesses, while
   "sector" describes a large segment of the economy.
 * Subindustry 
   Sub-industry is a more specific classification within an industry.
 * Currency 
   The currency the stock trades in, such as U.S. Dollars.
 * Market Cap 
   Market capitalization is the market value of all of a company's outstanding
   shares and is used by the investment community in ranking the size of
   companies, as opposed to sales or total asset figures.
 * Valuation
 * Forward PE Ratio 
   The price to earnings ratio (P/E) measures its current share price relative
   to its per-share earnings. The ratio is used in valuing companies. Learn
   more.
 * P/E Growth 
   The P/E growth ratio (or PEG) was developed and is used as a refinement of
   the standard P/E ratio that is used in fundamental analysis. Learn more.
 * Price/Sales 
   Valuation is a term investors use to indicate the degree to which a stock is
   accurately priced. The price-sales ratio does this by comparing a company’s
   stock price to its revenues. Learn more.
 * Price/Book 
   The price-to-book (P/B) ratio of a company's stock price to its book value on
   its balance sheet. The book value is the amount of money a firm can
   reasonably expect if it sold all of its assets at current market prices.
 * Price/Cash 
   The price-to-cash flow ratio measures the current price of the company's
   stock relative to the amount of cash generated by the company.
 * RSI 
   Relative Strength Index (RSI) measures the velocity and magnitude of a
   stock's price movements and compares them with the magnitude of a stock's
   average gains and average losses. A stock's RSI oscillates between zero and
   100. Learn more.
 * Earnings
 * Annual Sales 
   Annual Sales is a company's revenue from sales of its products or services in
   a year.
 * Trailing 12-Month EPS 
   Trailing twelve months (TTM) earnings per share (EPS) is an investment metric
   determined by a company's earnings in the past 12 months divided by its
   number of common outstanding shares. Learn more.
 * Current Year EPS Estimate 
   Earnings per share (EPS) is an investment metric determined by a company's
   earnings divided by its number of common outstanding shares. Learn more.
 * Next Year EPS Estimate 
   Earnings per share (EPS) is an investment metric determined by a company's
   earnings divided by its number of common outstanding shares. Learn more.
 * Book Value 
   Book value per share (BVPS) is a ratio used to compare a firm's common
   shareholder's equity to the number of shares outstanding. Learn more.
 * Cash Flow 
   Cash flow is a measurement of how much cash and cash equivalents a company is
   receiving and how much it is sending out. Learn more.
 * Net Income 
   Net income is the measurement of whether or not a company is making money
   and, if so, how much profit they are retaining. Learn more.
 * Net Margins 
   Net margin (also known as net profit margin) is the amount of revenues that
   remains as profit after a given period of time. Learn more.
 * Performance
 * Previous Close 
   The closing price of the last market day.
 * Opening Price 
   The opening price of the current market day.
 * Change from Open 
   The amount/percent change from the current market day's opening price.
 * Crypto 1-Hour Change 
   The change in price of the last hour in a market day.
 * 7-Day Price Change 
   The 7 day price change of the stock/asset.
 * 1-Year Price Change 
   The 1-year price change of the stock/asset.
 * 52-Week Range 
   The 52-week range shows the lowest and highest price at which a stock has
   traded at in the previous 52 weeks.
 * Today's Range 
   Today's range shows the lowest and highest price at which a stock has traded
   at today.
 * Today's Volume 
   Volume refers to the amount of shares or contracts traded in an asset or
   security over a period of time, usually over the course of a trading day.
 * Average Daily Volume 
   Volume refers to the amount of shares or contracts traded in an asset or
   security over a period of time, usually over the course of a trading day.
   Learn more.
 * Return On Assets 
   The return on assets (ROA) ratio is one of several profitability measures
   that investors use to measure their return on investment (ROI). Learn more.
 * Return On Equity 
   Return on equity is a measurement of how efficient a company is in using its
   assets from their shareholders to create earnings. Learn more.
 * Debt
 * Debt/Equity Ratio 
   A company’s debt-to-equity ratio is a performance metric that measures a
   company’s level of debt in relation to the overall value of their stock.
   Learn more.
 * Current Ratio 
   The current ratio is a liquidity ratio that measures a company's ability to
   pay short-term obligations or those due within one year. Learn more.
 * Quick Ratio 
   The quick ratio measures a company's capacity to pay its current liabilities
   without needing to sell its inventory or obtain additional financing. Learn
   more.
 * Dividend
 * Dividend Yield 
   Dividend yield is a company’s dividend expressed as a percentage of its stock
   price. Learn more.
 * Yield on Cost 
   Yield on cost is a company’s dividend expressed as a percentage of the price
   originally paid for the stock. Learn more.
 * 3-Year Dividend Growth 
   How much the company's dividend has grown (or declined) over the past 3
   years. Learn more.
 * Payout Ratio 
   The dividend payout ratio is the ratio of the total amount of dividends paid
   out to shareholders relative to the net income of the company. It is the
   percentage of earnings paid to shareholders via dividends. Learn more.
 * Years of Dividend Growth 
   The number of years the paid dividend has increased. Learn more.
 * Next Dividend Payout Date 
   A payment date, also known as the pay or payable date, is the day on which a
   declared stock dividend is scheduled to be paid to eligible investors. This
   date can be up to a month after the ex-dividend date. Learn more.
 * Next Ex-Dividend Date 
   The ex-dividend date is the trading date on (and after) which the dividend is
   not owed to a new buyer of the stock. The ex-date is one business day before
   the date of record. The date of record is the day on which the company checks
   its records to identify shareholders of the company. Learn more.
 * Dividend Payment Schedule 
   The frequency in which a company announces dividends, examples include
   quarterly and yearly. Learn more.
 * Additional Indicators
 * MarketRank™ 
   Our MarketRank™ rates every stock on 7 unique categories: Analyst's Opinion,
   Short Interest, Dividend Strength, ESG Score, Media Sentiment, Company
   Ownership, and Earnings and Valuation. MarketRank is calculated as an average
   of available category scores, with extra weight given to analysis and
   valuation. Learn more.
 * News Sentiment 
   News sentiment is one part of fundamental analysis. A good way to look at it
   is that technical signals will tell investors what’s happening to a stock’s
   price. Understanding the news can help investors understand why that movement
   may be happening. Learn more.
 * Insider Ownership % 
   The percentage of the company that company insiders own in shares. Learn
   more.
 * Institutional Ownership % 
   The percentage of the company that institutional owners own in shares. Learn
   more.
 * Next Earnings Date 
   Earnings date is the date of the next release of a company's financial
   report. Earnings report date is the date of an official announcement about a
   company's profitability for a specific time period. Learn more.
 * Number of Employees 
   The number of employees in a company.
 * Outstanding Shares 
   Outstanding shares are all the shares of a corporation or financial asset
   that have been authorized, issued and purchased by investors and are held by
   them. They have rights and represent ownership in the corporation by the
   person who holds the shares. Learn more.
 * Portfolio Details
 * Notes
 * Price Alerts


Refresh price data every 60 seconds Last updated: 11/8 1:33 PM ET

My Default Watchlist
 

Select All Holdings in watchlist My Default Watchlist
HoldingCurrent PricePE RatioBetaAnnual DividendConsensus RatingConsensus Price
TargetUpside/ DownsideSettings
Apply Bulk Action to Apple Inc.

AAPL
Apple$227.20
-$0.28 (-0.12%)37.371.24$1.00 per sh.Moderate Buy
2.61$235.513.66% Upside
View notifications for this stock9+
AppleMark as Read

 * NASDAQ:AAPLToday, 9:21 AM - msn.com
   
   Apple Inc. (AAPL): Potential Earnings Impact from New Tariffs

 * NASDAQ:AAPLToday, 9:08 AM - seekingalpha.com
   
   Qualcomm Q4: Exciting Developments, But Apple Discount Remains (Downgrade)

 * NASDAQ:AAPLToday, 9:07 AM - ft.com
   
   Buffett’s Apple sales and cash pile spark intrigue over motives

 * NASDAQ:AAPLToday, 6:15 AM - fool.com
   
   3 Huge Warning Signs for Apple Investors

 * NASDAQ:AAPLToday, 5:08 AM - fool.com
   
   Investing $2,000 in Each of These 3 Growth Stocks 20 Years Ago Would Have
   Made You $3.8 Million

 * NASDAQ:AAPLToday, 5:04 AM - marketbeat.com
   
   Rep. Josh Gottheimer Buys Apple Inc. (NASDAQ:AAPL) Shares

 * NASDAQ:AAPLToday, 3:02 AM - fool.com
   
   Meet the 3 Supercharged Growth Stocks That Will Be Worth $4 Trillion by 2025,
   According to a Certain Wall Street Analyst

 * NASDAQ:AAPLToday, 2:04 AM - marketbeat.com
   
   Bridges Investment Management Inc. Has $378.77 Million Stock Position in
   Apple Inc. (NASDAQ:AAPL)

 * NASDAQ:AAPLToday, 2:04 AM - marketbeat.com
   
   Callan Capital LLC Grows Holdings in Apple Inc. (NASDAQ:AAPL)

 * NASDAQ:AAPLToday, 2:04 AM - marketbeat.com
   
   Promethos Capital LLC Makes New Investment in Apple Inc. (NASDAQ:AAPL)

 * NASDAQ:AAPLToday, 2:04 AM - marketbeat.com
   
   Apple Inc. (NASDAQ:AAPL) Shares Sold by Intech Investment Management LLC

 * NASDAQ:AAPLToday, 2:04 AM - marketbeat.com
   
   Cowa LLC Grows Stake in Apple Inc. (NASDAQ:AAPL)

 * NASDAQ:AAPLToday, 2:04 AM - marketbeat.com
   
   Granite Investment Partners LLC Buys 7,606 Shares of Apple Inc. (NASDAQ:AAPL)

 * NASDAQ:AAPLToday, 2:04 AM - marketbeat.com
   
   Benjamin Edwards Inc. Acquires 7,025 Shares of Apple Inc. (NASDAQ:AAPL)

 * NASDAQ:AAPLToday, 2:04 AM - marketbeat.com
   
   Apple Inc. (NASDAQ:AAPL) is AR Asset Management Inc.'s Largest Position

 * NASDAQ:AAPLToday, 2:04 AM - marketbeat.com
   
   Apple Inc. (NASDAQ:AAPL) Shares Sold by Public Employees Retirement
   Association of Colorado

 * NASDAQ:AAPLToday, 2:04 AM - marketbeat.com
   
   Apple Inc. (NASDAQ:AAPL) Stock Position Increased by Benjamin F. Edwards &
   Company Inc.

 * NASDAQ:AAPLToday, 2:04 AM - marketbeat.com
   
   GM Advisory Group LLC Has $43.40 Million Position in Apple Inc. (NASDAQ:AAPL)

 * NASDAQ:AAPLToday, 2:04 AM - marketbeat.com
   
   Yost Capital Management LP Reduces Stake in Apple Inc. (NASDAQ:AAPL)

 * NASDAQ:AAPLToday, 2:04 AM - marketbeat.com
   
   Brighton Jones LLC Has $110.11 Million Position in Apple Inc. (NASDAQ:AAPL)

View All Notifications for Apple
Apply Bulk Action to Amazon.com, Inc.

AMZN
Amazon.com$209.12
-$0.93 (-0.44%)44.781.14-Moderate Buy
2.98$234.5512.16% Upside
View notifications for this stock9+
Amazon.comMark as Read

 * NASDAQ:AMZNToday, 11:06 AM - gurufocus.com
   
   Amazon Eyes Multi-Billion Dollar Investment in Anthropic with AI Chip
   Conditions

 * NASDAQ:AMZNToday, 11:06 AM - gurufocus.com
   
   Amazon Eyes Another Multibillion-Dollar Stake in Anthropic, Rival to OpenAI

 * NASDAQ:AMZNToday, 9:59 AM - fool.com
   
   Amazon Stock Investors Should Know This

 * NASDAQ:AMZNToday, 7:49 AM - msn.com
   
   Amazon.com, Inc. (AMZN): Expanding AI Reach with Defense Partnerships

 * NASDAQ:AMZNToday, 5:05 AM - reuters.com
   
   Walmart to offer independent drivers new holiday bonuses in battle with
   Amazon

 * NASDAQ:AMZNToday, 3:01 AM - pymnts.com
   
   New Data: Amazon Expands Grocery Reach, but Walmart Maintains Delivery Edge

 * NASDAQ:AMZNToday, 2:48 AM - msn.com
   
   Jim Cramer: Amazon.com (AMZN) is Spending ‘Like Mad’ to Dominate

 * NASDAQ:AMZNToday, 2:05 AM - marketbeat.com
   
   Amazon.com, Inc. (NASDAQ:AMZN) Shares Purchased by DLK Investment Management
   LLC

 * NASDAQ:AMZNToday, 2:05 AM - marketbeat.com
   
   Castle Rock Wealth Management LLC Buys 6,591 Shares of Amazon.com, Inc.
   (NASDAQ:AMZN)

 * NASDAQ:AMZNToday, 2:05 AM - marketbeat.com
   
   Amazon.com, Inc. (NASDAQ:AMZN) Shares Purchased by LVW Advisors LLC

 * NASDAQ:AMZNToday, 2:05 AM - marketbeat.com
   
   Charles Schwab Trust Co Has $2.74 Million Stock Position in Amazon.com, Inc.
   (NASDAQ:AMZN)

 * NASDAQ:AMZNToday, 2:05 AM - marketbeat.com
   
   Pinnacle Bancorp Inc. Increases Stock Holdings in Amazon.com, Inc.
   (NASDAQ:AMZN)

 * NASDAQ:AMZNToday, 2:05 AM - marketbeat.com
   
   Amazon.com, Inc. (NASDAQ:AMZN) is Jessup Wealth Management Inc's Largest
   Position

 * NASDAQ:AMZNToday, 2:05 AM - marketbeat.com
   
   Amazon.com, Inc. (NASDAQ:AMZN) is Sarasin & Partners LLP's 3rd Largest
   Position

 * NASDAQ:AMZNToday, 2:05 AM - marketbeat.com
   
   Independence Bank of Kentucky Increases Stake in Amazon.com, Inc.
   (NASDAQ:AMZN)

 * NASDAQ:AMZNToday, 2:05 AM - marketbeat.com
   
   Franklin Street Advisors Inc. NC Acquires 3,523 Shares of Amazon.com, Inc.
   (NASDAQ:AMZN)

 * NASDAQ:AMZNToday, 2:05 AM - marketbeat.com
   
   Clarius Group LLC Has $58.34 Million Stock Position in Amazon.com, Inc.
   (NASDAQ:AMZN)

 * NASDAQ:AMZNToday, 2:05 AM - marketbeat.com
   
   San Luis Wealth Advisors LLC Purchases 4,041 Shares of Amazon.com, Inc.
   (NASDAQ:AMZN)

 * NASDAQ:AMZNToday, 2:05 AM - marketbeat.com
   
   Amazon.com, Inc. (NASDAQ:AMZN) Stake Lessened by Beaumont Financial Advisors
   LLC

 * NASDAQ:AMZNToday, 2:05 AM - marketbeat.com
   
   Amazon.com, Inc. (NASDAQ:AMZN) Shares Purchased by Albion Financial Group UT

View All Notifications for Amazon.com
Apply Bulk Action to Alphabet Inc.

GOOGL
Alphabet$178.91
-$1.84 (-1.02%)23.731.03$0.80 per sh.Moderate Buy
2.93$205.9015.08% Upside
View notifications for this stock9+
AlphabetMark as Read

 * NASDAQ:GOOGLToday, 10:21 AM - marketbeat.com
   
   Alphabet (NASDAQ:GOOGL) Trading Down 1.2% After Insider Selling

 * NASDAQ:GOOGLToday, 6:36 AM - insidertrades.com
   
   Alphabet Inc. (NASDAQ:GOOGL) Director Sells $1,862,805.00 in Stock

 * NASDAQ:GOOGLToday, 6:11 AM - marketbeat.com
   
   Alphabet Q3 Earnings Transcript

 * NASDAQ:GOOGLToday, 5:15 AM - fool.com
   
   Alphabet's Secret Weapon in the Global Artificial Intelligence (AI) Race

 * NASDAQ:GOOGLToday, 3:10 AM - fool.com
   
   With Nvidia Kicking Intel Out of the Dow Jones, Will Meta Platforms or
   Alphabet Eventually Replace Walt Disney Stock?

 * NASDAQ:GOOGLToday, 2:25 AM - marketbeat.com
   
   Essex Financial Services Inc. Sells 9,456 Shares of Alphabet Inc.
   (NASDAQ:GOOGL)

 * NASDAQ:GOOGLToday, 2:25 AM - marketbeat.com
   
   Alphabet Inc. (NASDAQ:GOOGL) is Fortune Financial Advisors LLC's 5th Largest
   Position

 * NASDAQ:GOOGLToday, 2:17 AM - marketbeat.com
   
   Alphabet Inc. (NASDAQ:GOOGL) Holdings Decreased by Valley National Advisers
   Inc.

 * NASDAQ:GOOGLToday, 2:17 AM - marketbeat.com
   
   Alphabet Inc. (NASDAQ:GOOGL) Shares Sold by State of Alaska Department of
   Revenue

 * NASDAQ:GOOGLToday, 2:17 AM - marketbeat.com
   
   Covenant Partners LLC Has $721,000 Stock Position in Alphabet Inc.
   (NASDAQ:GOOGL)

 * NASDAQ:GOOGLToday, 2:17 AM - marketbeat.com
   
   Alphabet Inc. (NASDAQ:GOOGL) is Boston Trust Walden Corp's 3rd Largest
   Position

 * NASDAQ:GOOGLToday, 2:17 AM - marketbeat.com
   
   Alphabet Inc. (NASDAQ:GOOGL) Shares Acquired by Bristlecone Advisors LLC

 * NASDAQ:GOOGLToday, 2:17 AM - marketbeat.com
   
   Smith Salley Wealth Management Boosts Position in Alphabet Inc.
   (NASDAQ:GOOGL)

 * NASDAQ:GOOGLToday, 2:17 AM - marketbeat.com
   
   Alphabet Inc. (NASDAQ:GOOGL) Stake Decreased by Frank Rimerman Advisors LLC

 * NASDAQ:GOOGLToday, 2:17 AM - marketbeat.com
   
   Mcrae Capital Management Inc. Acquires 22,812 Shares of Alphabet Inc.
   (NASDAQ:GOOGL)

 * NASDAQ:GOOGLToday, 2:17 AM - marketbeat.com
   
   Alphabet Inc. (NASDAQ:GOOGL) Shares Acquired by PFG Investments LLC

 * NASDAQ:GOOGLToday, 2:17 AM - marketbeat.com
   
   Alphabet Inc. (NASDAQ:GOOGL) Holdings Boosted by NorthCrest Asset Manangement
   LLC

 * NASDAQ:GOOGLToday, 2:17 AM - marketbeat.com
   
   Consolidated Portfolio Review Corp Sells 14,347 Shares of Alphabet Inc.
   (NASDAQ:GOOGL)

 * NASDAQ:GOOGLToday, 2:17 AM - marketbeat.com
   
   Pathway Financial Advisers LLC Acquires 712,841 Shares of Alphabet Inc.
   (NASDAQ:GOOGL)

 * NASDAQ:GOOGLToday, 2:17 AM - marketbeat.com
   
   Forsta AP Fonden Boosts Stock Holdings in Alphabet Inc. (NASDAQ:GOOGL)

View All Notifications for Alphabet
Apply Bulk Action to Meta Platforms, Inc.

META
Meta Platforms$586.70
-$5.00 (-0.85%)27.641.22$2.00 per sh.Moderate Buy
2.86$634.108.08% Upside
View notifications for this stock9+
Meta PlatformsMark as Read

 * NASDAQ:METAToday, 9:30 AM - 247wallst.com
   
   Prediction: Meta Platforms Will Be a Top 5 Stock By Market Capitalization By
   2026

 * NASDAQ:METAToday, 7:33 AM - msn.com
   
   Jim Cramer Says Market is ‘Underestimating’ Meta Platforms (META)’s Ability
   to Dominante Ads Market

 * NASDAQ:METAToday, 6:56 AM - insidertrades.com
   
   Meta Platforms, Inc. (NASDAQ:META) Insider Jennifer Newstead Sells 901 Shares

 * NASDAQ:METAToday, 4:41 AM - msn.com
   
   Is Meta Platforms a Top Artificial Intelligence (AI) Stock to Buy Now?

 * NASDAQ:METAToday, 4:30 AM - fool.com
   
   Is Meta Platforms a Top Artificial Intelligence (AI) Stock to Buy Now?

 * NASDAQ:METAToday, 3:16 AM - marketbeat.com
   
   Meta Platforms, Inc. (NASDAQ:META) Shares Bought by Amalgamated Bank

 * NASDAQ:METAToday, 3:16 AM - marketbeat.com
   
   Meta Platforms, Inc. (NASDAQ:META) Shares Bought by United Advisor Group LLC

 * NASDAQ:METAToday, 3:16 AM - marketbeat.com
   
   Central Bank & Trust Co. Sells 1,892 Shares of Meta Platforms, Inc.
   (NASDAQ:META)

 * NASDAQ:METAToday, 3:16 AM - marketbeat.com
   
   Meta Platforms, Inc. (NASDAQ:META) Shares Sold by Stoneridge Investment
   Partners LLC

 * NASDAQ:METAToday, 3:16 AM - marketbeat.com
   
   Meta Platforms, Inc. (NASDAQ:META) Shares Sold by Gulf International Bank UK
   Ltd

 * NASDAQ:METAToday, 3:16 AM - marketbeat.com
   
   Catalyst Capital Advisors LLC Buys 1,708 Shares of Meta Platforms, Inc.
   (NASDAQ:META)

 * NASDAQ:METAToday, 3:15 AM - marketbeat.com
   
   Rational Advisors LLC Acquires 1,339 Shares of Meta Platforms, Inc.
   (NASDAQ:META)

 * NASDAQ:METAToday, 3:15 AM - marketbeat.com
   
   Quintet Private Bank Europe S.A. Has $5.04 Million Position in Meta
   Platforms, Inc. (NASDAQ:META)

 * NASDAQ:METAToday, 3:15 AM - marketbeat.com
   
   First National Bank of Mount Dora Trust Investment Services Acquires 5,312
   Shares of Meta Platforms, Inc. (NASDAQ:META)

 * NASDAQ:METAToday, 3:15 AM - marketbeat.com
   
   World Equity Group Inc. Has $3.37 Million Position in Meta Platforms, Inc.
   (NASDAQ:META)

 * NASDAQ:METAToday, 3:10 AM - fool.com
   
   With Nvidia Kicking Intel Out of the Dow Jones, Will Meta Platforms or
   Alphabet Eventually Replace Walt Disney Stock?

 * NASDAQ:METAToday, 2:59 AM - marketbeat.com
   
   QRG Capital Management Inc. Has $238.72 Million Stake in Meta Platforms, Inc.
   (NASDAQ:META)

 * NASDAQ:METAToday, 2:59 AM - marketbeat.com
   
   Meta Platforms, Inc. (NASDAQ:META) is National Pension Service's 6th Largest
   Position

 * NASDAQ:METAToday, 2:59 AM - marketbeat.com
   
   Asset Management One Co. Ltd. Sells 5,276 Shares of Meta Platforms, Inc.
   (NASDAQ:META)

 * NASDAQ:METAToday, 2:02 AM - marketbeat.com
   
   Rep. Josh Gottheimer Sells Off Shares of Meta Platforms, Inc. (NASDAQ:META)

View All Notifications for Meta Platforms
Apply Bulk Action to Microsoft Co.

MSFT
Microsoft$422.60
-$2.83 (-0.67%)34.870.91$3.32 per sh.Moderate Buy
2.86$503.0319.03% Upside
View notifications for this stock9+
MicrosoftMark as Read

 * NASDAQ:MSFTToday, 8:17 AM - msn.com
   
   Microsoft Corporation (MSFT): AI-Powered Updates for Windows Apps

 * NASDAQ:MSFTToday, 5:04 AM - marketbeat.com
   
   Microsoft (NASDAQ:MSFT) Shares Unloaded Rep. Josh Gottheimer

 * NASDAQ:MSFTToday, 5:04 AM - marketbeat.com
   
   Rep. Josh Gottheimer Sells Off Shares of Microsoft Co. (NASDAQ:MSFT)

 * NASDAQ:MSFTToday, 3:02 AM - fool.com
   
   Meet the 3 Supercharged Growth Stocks That Will Be Worth $4 Trillion by 2025,
   According to a Certain Wall Street Analyst

 * NASDAQ:MSFTToday, 2:05 AM - marketbeat.com
   
   Microsoft Co. (NASDAQ:MSFT) Holdings Decreased by Huber Capital Management
   LLC

 * NASDAQ:MSFTToday, 2:05 AM - marketbeat.com
   
   Microsoft Co. (NASDAQ:MSFT) Position Decreased by Bulltick Wealth Management
   LLC

 * NASDAQ:MSFTToday, 2:05 AM - marketbeat.com
   
   Merriman Wealth Management LLC Sells 1,351 Shares of Microsoft Co.
   (NASDAQ:MSFT)

 * NASDAQ:MSFTToday, 2:05 AM - marketbeat.com
   
   Microsoft Co. (NASDAQ:MSFT) is Auxier Asset Management's Largest Position

 * NASDAQ:MSFTToday, 2:05 AM - marketbeat.com
   
   Ensign Peak Advisors Inc Has $3.41 Billion Stock Holdings in Microsoft Co.
   (NASDAQ:MSFT)

 * NASDAQ:MSFTToday, 2:05 AM - marketbeat.com
   
   Westwood Holdings Group Inc. Decreases Stock Holdings in Microsoft Co.
   (NASDAQ:MSFT)

 * NASDAQ:MSFTToday, 2:05 AM - marketbeat.com
   
   Arista Wealth Management LLC Buys 4,081 Shares of Microsoft Co. (NASDAQ:MSFT)

 * NASDAQ:MSFTToday, 2:05 AM - marketbeat.com
   
   Sompo Asset Management Co. Ltd. Has $32.84 Million Stock Holdings in
   Microsoft Co. (NASDAQ:MSFT)

 * NASDAQ:MSFTToday, 2:05 AM - marketbeat.com
   
   8,283 Shares in Microsoft Co. (NASDAQ:MSFT) Acquired by TPG Advisors LLC

 * NASDAQ:MSFTToday, 2:05 AM - marketbeat.com
   
   Summit Trail Advisors LLC Raises Holdings in Microsoft Co. (NASDAQ:MSFT)

 * NASDAQ:MSFTToday, 2:04 AM - marketbeat.com
   
   Microsoft Co. (NASDAQ:MSFT) Shares Purchased by Center Lake Capital
   Management LLC

 * NASDAQ:MSFTToday, 2:04 AM - marketbeat.com
   
   Ameritas Investment Partners Inc. Decreases Stake in Microsoft Co.
   (NASDAQ:MSFT)

 * NASDAQ:MSFTToday, 2:04 AM - marketbeat.com
   
   Thrivent Financial for Lutherans Raises Stake in Microsoft Co. (NASDAQ:MSFT)

 * NASDAQ:MSFTToday, 2:04 AM - marketbeat.com
   
   Microsoft Co. (NASDAQ:MSFT) is Sei Investments Co.'s Largest Position

 * NASDAQ:MSFTToday, 2:04 AM - marketbeat.com
   
   Microsoft Co. (NASDAQ:MSFT) Shares Sold by Longview Partners Guernsey LTD

 * NASDAQ:MSFTToday, 2:04 AM - marketbeat.com
   
   Pacer Advisors Inc. Has $324.42 Million Stock Holdings in Microsoft Co.
   (NASDAQ:MSFT)

View All Notifications for Microsoft
No holding sizes have been added to this watchlist. Edit holdings and add the
number of units held in order to see watchlist totals.



Select a Bulk Action Delete These Holdings Enable Email Alerts for These
Holdings Disable Email Alerts for These Holdings Move Holdings to 'My Default
Watchlist' Move Holdings to a New Watchlist
Apply
Bulk Actions




PORTFOLIO PERFORMANCE

For statistics to be calculated for this portfolio, you must edit the details of
the holdings, adding the number of shares you own.


PORTFOLIO PERFORMANCE VIEW YOUR PORTFOLIO'S PERFORMANCE COMPARED TO AN INDEX
OVER TIME.

Compare Against  Dow Jones NASDAQ S&P 500 14 Days 30 Days 60 Days 90 Days
Year-to-Date 1 Year 3 Years 5 Years 10 Years
 







PORTFOLIO DIVIDENDS VIEW YOUR PORTFOLIO'S OVERALL DIVIDEND YIELD, THE TOTAL OF
ANNUAL DIVIDENDS YOU SHOULD RECEIVE EACH YEAR AND YOUR UPCOMING DIVIDEND
PAYMENTS.

My Dividend Yield
N/A
My Payout Ratio
N/A
My Average Dividend Growth
N/A
My Annual Dividend Payout
N/A

My Top Yielding Stocks Yield Microsoft (MSFT)0.79%Alphabet (GOOGL)0.45%Apple
(AAPL)0.44%Meta Platforms (META)0.34%

Upcoming Dividend Payments Date Apple (AAPL)11/14/2024Microsoft
(MSFT)12/12/2024Alphabet (GOOGL)12/16/2024


PORTFOLIO INSIGHTS

For statistics to be calculated for this portfolio, you must edit the details of
the holdings, adding the number of shares you own.


ASSET ALLOCATION BY SECTOR VIEW THE ASSET ALLOCATION OF YOUR HOLDINGS BY SECTOR
VS. THE MARKETBEAT COMMUNITY'S ASSET ALLOCATION BY SECTOR.

MY PORTFOLIO



MARKETBEAT USERS

Other
Industrial Products
Financial Services
Auto/Tires/Trucks
Consumer Staples
Basic Materials
Business Services
Transportation
Consumer Discretionary
Cryptocurrency
ETF
Oils/Energy
Retail/Wholesale
Manual Asset
Medical
Finance
Computer and Technology


ASSET ALLOCATION BY ASSET CLASS VIEW THE ASSET ALLOCATION OF YOUR HOLDINGS BY
ASSET CLASS VS. THE MARKETBEAT COMMUNITY'S ASSET ALLOCATION BY ASSET CLASS.

MY PORTFOLIO



MARKETBEAT USERS

Cryptocurrency
ETF
Manual Assets
Stock


LARGEST HOLDINGS VIEW THE LARGEST INVESTMENT HOLDINGS INSIDE YOUR PORTFOLIO.

Holding % of Portfolio Apple (AAPL)-Amazon.com (AMZN)-Alphabet (GOOGL)-Meta
Platforms (META)-Microsoft (MSFT)-


MARKETBEAT USERS' LARGEST HOLDINGS VIEW THE LARGEST HOLDINGS OF AVERAGE
MARKETBEAT USERS.

Holding % of Portfolio Apple (AAPL)5.65%Microsoft (MSFT)4.00%Meta Platforms
(META)2.60%Amazon.com (AMZN)1.68%NVIDIA (NVDA)1.57%General Electric
(GE)1.30%Tesla (TSLA)1.29%Advanced Micro Devices (AMD)1.11%Alphabet
(GOOGL)1.03%Invesco QQQ (QQQ)0.70%


PORTFOLIO P/E RATIO VIEW YOUR PORTFOLIO'S PRICE-TO-EARNINGS RATIO, WHICH IS A
MEASURE OF THE COMPANY'S SHARE PRICE RELATIVE TO ITS EARNINGS PER SHARE.

MY PORTFOLIO P/E: N/A

My Highest P/E Stocks P/E Ratio Amazon.com (AMZN)44.62Apple (AAPL)37.38Microsoft
(MSFT)34.95Meta Platforms (META)27.62Alphabet (GOOGL)23.69

My Lowest P/E Stocks P/E Ratio Alphabet (GOOGL)23.69Meta Platforms
(META)27.62Microsoft (MSFT)34.95Apple (AAPL)37.38Amazon.com (AMZN)44.62


PORTFOLIO VOLATILITY (BETA) VIEW YOUR PORTFOLIO'S BETA, WHICH IS A MEASUREMENT
OF HOW CLOSELY CORRELATED THE VOLATILITY OF YOUR HOLDINGS ARE TO THE BROADER
MARKET.

MY BETA: N/A

Most Volatile Stocks In Portfolio: Beta Apple (AAPL)1.24Meta Platforms
(META)1.22Amazon.com (AMZN)1.14Alphabet (GOOGL)1.03Microsoft (MSFT)0.91

Least Volatile Stocks In Portfolio: Beta Microsoft (MSFT)0.91Alphabet
(GOOGL)1.03Amazon.com (AMZN)1.14Meta Platforms (META)1.22Apple (AAPL)1.24


AVERAGE MARKET CAP VIEW YOUR PORTFOLIO'S MARKET CAP ALLOCATION VS OTHER USERS'
MARKET CAP ALLOCATIONS.

MY AVERAGE MARKET CAP: $2.49 TRILLION

My Average Market Cap
▼
$2.49 trillion

$589.86 billion
▲
Average MarketBeat
User Market Cap

Highest Market Cap Stocks In Portfolio: Market Cap Apple (AAPL) $3.43
trillionMicrosoft (MSFT) $3.14 trillionAlphabet (GOOGL) $2.20 trillionAmazon.com
(AMZN) $2.20 trillionMeta Platforms (META) $1.48 trillion

Lowest Market Cap Stocks In Portfolio: Market Cap Meta Platforms (META)$1.48
trillionAmazon.com (AMZN)$2.20 trillionAlphabet (GOOGL)$2.20 trillionMicrosoft
(MSFT)$3.14 trillionApple (AAPL)$3.43 trillion


FORECASTED EARNINGS GROWTH VIEW YOUR PORTFOLIO'S FORECASTED EARNINGS GROWTH VS
OTHER USERS' FORECASTED EARNINGS GROWTH.

MY FORECASTED EARNINGS GROWTH: 13.74%

My Average Forecasted
Earnings Growth
▼
13.74%

21.18%
▲
Average MarketBeat User
Forecasted Earnings Growth

Highest Forecasted Earnings Growth In Portfolio: Forecasted Earnings Growth
Amazon.com (AMZN)18.80%Microsoft (MSFT)14.29%Apple (AAPL)12.79%Alphabet
(GOOGL)11.51%Meta Platforms (META)11.32%

Lowest Forecasted Earnings Growth In Portfolio: Forecasted Earnings Growth Meta
Platforms (META)11.32%Alphabet (GOOGL)11.51%Apple (AAPL)12.79%Microsoft
(MSFT)14.29%Amazon.com (AMZN)18.80%


PORTFOLIO STATISTICS




MY HEADLINES




MY CALENDAR

This page is loading your portfolio's calendar. Please wait…


MY RATINGS

This page is loading your portfolio's ratings. Please wait…


MY INSIDER TRADES

This page is loading your portfolio's insider trades. Please wait…


MY EARNINGS

This page is loading your portfolio's earnings announcements. Please wait…


MY SEC FILINGS

This page is loading your portfolio's SEC Filings. Please wait…


SOCIAL MENTIONS


PORTFOLIO MEDIA MENTIONS




RECENT STOCKTWITS MENTIONS




MY NEWSLETTER

MarketBeat Daily (Free) Earnings360 Newsletter Insider Trades Newsletter
Dividend Stocks Newsletter MarketBeat CryptoBeat MarketBeat Daily Canada The
Early Bird The Night Owl Newsletter
Loading your newsletter…


MY PORTFOLIO IDEAS

These stock suggestions are generated by identifying the holdings that are most
frequently included with other MarketBeat user's watchlists that contain similar
holdings to your watchlist(s), but are not yet included in your watchlist.
Remember that these stock suggestions are just ideas. Never purchase a stock or
any other security without doing your own independent research and consulting a
qualified financial professional.

This page is loading your portfolio ideas. Please wait…


MY MARKETRANK

Get an overview of the strength of your portfolio by reviewing the MarketRank™
of each of your stock holdings. Learn more about MarketRank on our Top
MarketRank Stocks page.

This page is loading your MarketRank™ data. Please wait…


You have reached the limit of five stocks on your watchlist with your free
subscription. In order to add more stocks to your watchlist, delete one of your
existing stocks or Upgrade to MarketBeat All Access.

Export Portfolio(s) (CSV/Excel)

Get 30 Days of MarketBeat All Access for Free

Sign up for MarketBeat All Access to gain access to MarketBeat's full suite of
research tools.

Start Your 30-Day Trial


MARKETBEAT ALL ACCESS FEATURES


BEST-IN-CLASS PORTFOLIO MONITORING

 * Get personalized stock ideas.
 * Compare portfolio to indices.
 * Check stock news, ratings, SEC filings, and more.


STOCK IDEAS AND RECOMMENDATIONS

 * See daily stock ideas from top analysts.
 * Receive short-term trading ideas from MarketBeat.
 * Identify trending stocks on social media.


ADVANCED STOCK SCREENERS AND RESEARCH TOOLS

 * Use our seven stock screeners to find suitable stocks.
 * Stay informed with MarketBeat's real-time news.
 * Export data to Excel for personal analysis.

Get Started
Get Started with MarketBeat —

Read Your Daily NewsletterCheck Out My MarketBeatWatch Our Tutorial VideosAdd a
Stock to Your WatchlistSet Up an Instant AlertView a Company's Profile PageView
Our Financial CalendarsView Today's Analyst Ratings


Sign in to your free account to enjoy these benefits
 * In-depth profiles and analysis for 20,000 public companies.
 * Real-time analyst ratings, insider transactions, earnings data, and more.
 * Our daily ratings and market update email newsletter.

Sign in to your free account to enjoy all that MarketBeat has to offer.
 * Sign In
 * Create Account
 * 

Your Email Address:
Email Address Required
Your Password:
Password Required
Log In


--------------------------------------------------------------------------------

or
Sign in with Facebook Sign in with Google
Forgot your password?
Your Email Address:
Please enter your email address.
Please enter a valid email address
Choose a Password:
Please enter your password.
Your password must be at least 8 characters long and contain at least 1 number,
1 letter, and 1 special character.
Create My Account (Free)



--------------------------------------------------------------------------------

or
Sign in with Facebook Sign in with Google
By creating a free account, you agree to our terms of service. This site is
protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Featured By


Empowering Individual Investors

345 N Reid Place, Suite 620, Sioux Falls, SD 57103
contact@marketbeat.com
(844) 978-6257

 * Twitter
 * Facebook
 * YouTube
 * LinkedIn


ABOUT MARKETBEAT

 * About
 * Editorial Guidelines
 * Authors
 * Press Room
 * Careers
 * Contact
 * FAQ
 * Help


MARKETBEAT PRODUCTS

 * Compare Products
 * MarketBeat All Access
 * Customer Reviews
 * MarketBeat Daily Ratings
 * MarketBeat Daily Canada
 * MarketBeat CryptoBeat
 * MarketBeat Mobile App


POPULAR TOOLS

 * Stock Lists
 * Compare Stocks
 * Dividend Calculator
 * My MarketBeat
 * Stock Screener


FINANCIAL CALENDARS

 * Analyst Ratings
 * Dividends
 * Earnings
 * Insider Trades
 * Stock Market Holidays


TERMS & INFO

 * Advertising
 * Accessibility Statement
 * Do Not Sell My Information
 * Privacy Policy
 * RSS Feeds
 * Terms of Service
 * Sitemap

© MarketBeat Media, LLC 2010-2024. All rights reserved.

© 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 Barchart's disclaimer.





My Account - verdacht@safeonweb.be

 * My MarketBeat
 * My Newsletter
 * My Alerts
 * My Subscriptions
 * My Account Settings
 * My Payment Settings
 * Log Out


×






[625,000% Gain] – Are You Ready for the Next Altcoin Boom? (ad)All of our key
indicators are flashing the same signal: an altcoin season is fast approaching.
And if you know anything about crypto, you know that altcoin seasons are where
som...Click Here For More on Register for the FREE Workshop Now & get $10 in
Bitcoin

Welcome to marketbeat.com


MARKETBEAT.COM ASKS FOR YOUR CONSENT TO USE YOUR PERSONAL DATA TO:

 * 
   Personalised advertising and content, advertising and content measurement,
   audience research and services development
 * 
   Store and/or access information on a device


Learn more
 * 
   How can I change my choice?
 * 
   What if I don't consent?
 * 
   How does legitimate interest work?
 * 
   Do I have to consent to everything?

Your personal data will be processed and information from your device (cookies,
unique identifiers, and other device data) may be stored by, accessed by and
shared with 134 TCF vendor(s) and 63 ad partner(s), or used specifically by this
site or app.

Some vendors may process your personal data on the basis of legitimate interest,
which you can object to by managing your options below. Look for a link at the
bottom of this page to manage or withdraw consent in privacy and cookie
settings.

Consent



Manage options

Data preferences





MANAGE YOUR DATA

You can choose how your personal data is used. Vendors want your permission to
do the following:

TCF vendors


STORE AND/OR ACCESS INFORMATION ON A DEVICE

Cookies, device or similar online identifiers (e.g. login-based identifiers,
randomly assigned identifiers, network based identifiers) together with other
information (e.g. browser type and information, language, screen size, supported
technologies etc.) can be stored or read on your device to recognise it each
time it connects to an app or to a website, for one or several of the purposes
presented here.

View details
Consent (119 vendors)


USE LIMITED DATA TO SELECT ADVERTISING

Advertising presented to you on this service can be based on limited data, such
as the website or app you are using, your non-precise location, your device type
or which content you are (or have been) interacting with (for example, to limit
the number of times an ad is presented to you).

View details
Consent (70 vendors)Legitimate interest (32 vendors)


CREATE PROFILES FOR PERSONALISED ADVERTISING

Information about your activity on this service (such as forms you submit,
content you look at) can be stored and combined with other information about you
(for example, information from your previous activity on this service and other
websites or apps) or similar users. This is then used to build or improve a
profile about you (that might include possible interests and personal aspects).
Your profile can be used (also later) to present advertising that appears more
relevant based on your possible interests by this and other entities.

View details
Consent (96 vendors)


USE PROFILES TO SELECT PERSONALISED ADVERTISING

Advertising presented to you on this service can be based on your advertising
profiles, which can reflect your activity on this service or other websites or
apps (like the forms you submit, content you look at), possible interests and
personal aspects.

View details
Consent (91 vendors)


CREATE PROFILES TO PERSONALISE CONTENT

Information about your activity on this service (for instance, forms you submit,
non-advertising content you look at) can be stored and combined with other
information about you (such as your previous activity on this service or other
websites or apps) or similar users. This is then used to build or improve a
profile about you (which might for example include possible interests and
personal aspects). Your profile can be used (also later) to present content that
appears more relevant based on your possible interests, such as by adapting the
order in which content is shown to you, so that it is even easier for you to
find content that matches your interests.

View details
Consent (28 vendors)


USE PROFILES TO SELECT PERSONALISED CONTENT

Content presented to you on this service can be based on your content
personalisation profiles, which can reflect your activity on this or other
services (for instance, the forms you submit, content you look at), possible
interests and personal aspects. This can for example be used to adapt the order
in which content is shown to you, so that it is even easier for you to find
(non-advertising) content that matches your interests.

View details
Consent (24 vendors)


MEASURE ADVERTISING PERFORMANCE

Information regarding which advertising is presented to you and how you interact
with it can be used to determine how well an advert has worked for you or other
users and whether the goals of the advertising were reached. For instance,
whether you saw an ad, whether you clicked on it, whether it led you to buy a
product or visit a website, etc. This is very helpful to understand the
relevance of advertising campaigns.

View details
Consent (76 vendors)Legitimate interest (47 vendors)


MEASURE CONTENT PERFORMANCE

Information regarding which content is presented to you and how you interact
with it can be used to determine whether the (non-advertising) content e.g.
reached its intended audience and matched your interests. For instance, whether
you read an article, watch a video, listen to a podcast or look at a product
description, how long you spent on this service and the web pages you visit etc.
This is very helpful to understand the relevance of (non-advertising) content
that is shown to you.

View details
Consent (32 vendors)Legitimate interest (14 vendors)


UNDERSTAND AUDIENCES THROUGH STATISTICS OR COMBINATIONS OF DATA FROM DIFFERENT
SOURCES

Reports can be generated based on the combination of data sets (like user
profiles, statistics, market research, analytics data) regarding your
interactions and those of other users with advertising or (non-advertising)
content to identify common characteristics (for instance, to determine which
target audiences are more receptive to an ad campaign or to certain contents).

View details
Consent (57 vendors)Legitimate interest (22 vendors)


DEVELOP AND IMPROVE SERVICES

Information about your activity on this service, such as your interaction with
ads or content, can be very helpful to improve products and services and to
build new products and services based on user interactions, the type of
audience, etc. This specific purpose does not include the development or
improvement of user profiles and identifiers.

View details
Consent (67 vendors)Legitimate interest (37 vendors)


USE LIMITED DATA TO SELECT CONTENT

Content presented to you on this service can be based on limited data, such as
the website or app you are using, your non-precise location, your device type,
or which content you are (or have been) interacting with (for example, to limit
the number of times a video or an article is presented to you).

View details
Consent (12 vendors)Legitimate interest (3 vendors)


ENSURE SECURITY, PREVENT AND DETECT FRAUD, AND FIX ERRORS

Your data can be used to monitor for and prevent unusual and possibly fraudulent
activity (for example, regarding advertising, ad clicks by bots), and ensure
systems and processes work properly and securely. It can also be used to correct
any problems you, the publisher or the advertiser may encounter in the delivery
of content and ads and in your interaction with them.

View details


DELIVER AND PRESENT ADVERTISING AND CONTENT

Certain information (like an IP address or device capabilities) is used to
ensure the technical compatibility of the content or advertising, and to
facilitate the transmission of the content or ad to your device.

View details


SAVE AND COMMUNICATE PRIVACY CHOICES

The choices you make regarding the purposes and entities listed in this notice
are saved and made available to those entities in the form of digital signals
(such as a string of characters). This is necessary in order to enable both this
service and those entities to respect such choices.

View details


MATCH AND COMBINE DATA FROM OTHER DATA SOURCES

Information about your activity on this service may be matched and combined with
other information relating to you and originating from various sources (for
instance your activity on a separate online service, your use of a loyalty card
in-store, or your answers to a survey), in support of the purposes explained in
this notice.

View details


LINK DIFFERENT DEVICES

In support of the purposes explained in this notice, your device might be
considered as likely linked to other devices that belong to you or your
household (for instance because you are logged in to the same service on both
your phone and your computer, or because you may use the same Internet
connection on both devices).

View details


IDENTIFY DEVICES BASED ON INFORMATION TRANSMITTED AUTOMATICALLY

Your device might be distinguished from other devices based on information it
automatically sends when accessing the Internet (for instance, the IP address of
your Internet connection or the type of browser you are using) in support of the
purposes exposed in this notice.

View details


USE PRECISE GEOLOCATION DATA

With your acceptance, your precise location (within a radius of less than 500
metres) may be used in support of the purposes explained in this notice.

View details
Consent

How this consent management platform (CMP) works:

CMP privacy choices


STORAGE, DURATION, AND USAGE DETAILS

The choices you make with this CMP regarding the purposes and entities will
affect how personalized advertising is presented to you. We need to store these
choices to respect them on future visits, and they are stored differently based
on the type of site or app you're using:
 * For sites, your choices are saved in a cookie named “FCCDCF” for a maximum
   duration of 390 days.
 * For apps, your choices are saved in device storage prefixed by “IABTCF_”.
   Your choices will be invalidated after 390 days and overwritten once you make
   new privacy choices on this app.
 * For accelerated mobile page (AMP) sites, your choices are saved in local
   storage prefixed by “amp-store”. Your choices will be invalidated after 390
   days and overwritten once you make new privacy choices on this site.

Vendor preferences

Accept all



Confirm choices

Vendor preferences





CONFIRM OUR VENDORS

Vendors can use your data to provide services. Declining a vendor can stop them
from using the data you shared.

TCF vendors


EXPONENTIAL INTERACTIVE, INC D/B/A VDX.TV

Cookie duration: 90 (days).

Data collected and processed: Device identifiers, Probabilistic identifiers,
Non-precise location data, IP addresses, Users’ profiles, Privacy choices,
Browsing and interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


ROQ.AD GMBH

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


ADMAXIM LIMITED

Cookie duration: 30 (days).

Data collected and processed: Probabilistic identifiers, IP addresses, Browsing
and interaction data

more

Cookie duration resets each session.


View details | Privacy policy
Consent


INDEX EXCHANGE INC.

Cookie duration: 395 (days).

Data collected and processed: Device identifiers, Device characteristics,
Precise location data, Non-precise location data, IP addresses, Privacy choices

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


QUANTCAST

Cookie duration: 396 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Non-precise
location data, IP addresses, User-provided data, Users’ profiles, Privacy
choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


BEESWAXIO CORPORATION

Cookie duration: 395 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


SOVRN, INC.

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, Device characteristics,
Non-precise location data, IP addresses, Users’ profiles, Privacy choices,
Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
Consent


ADIKTEEV

Doesn't use cookies.

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Non-precise
location data, IP addresses, Users’ profiles

more

Uses other forms of storage.


View details | Privacy policy
ConsentLegitimate interest


RTB HOUSE S.A.

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, Device characteristics,
Non-precise location data, IP addresses, Users’ profiles, Privacy choices,
Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


THE UK TRADE DESK LTD

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, Users’ profiles, Privacy choices,
Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


NEXXEN INC.

Cookie duration: 180 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Non-precise location data, IP addresses, Users’
profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


EPSILON

Cookie duration: 184 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Non-precise
location data, IP addresses, User-provided data, Users’ profiles, Privacy
choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
Consent


YAHOO EMEA LIMITED

Cookie duration: 397 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, Users’ profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


ADVENTORI SAS

Cookie duration: 90 (days).

Data collected and processed: Device identifiers, Probabilistic identifiers,
Non-precise location data, IP addresses, User-provided data, Privacy choices,
Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
Consent


TRIPLE LIFT, INC.

Cookie duration: 90 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Precise location data, Non-precise location
data, IP addresses, Users’ profiles, Privacy choices, Browsing and interaction
data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
ConsentLegitimate interest


XANDR, INC.

Cookie duration: 90 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Precise location data, Non-precise location
data, IP addresses, Users’ profiles, Privacy choices, Browsing and interaction
data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


NEORY GMBH

Cookie duration: 90 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Non-precise
location data, IP addresses, User-provided data, Users’ profiles, Privacy
choices, Browsing and interaction data

more

Cookie duration resets each session.


View details | Privacy policy
Consent


NEXXEN GROUP LLC

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Non-precise location data, IP addresses, Users’
profiles, Privacy choices

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
ConsentLegitimate interest


NEURAL.ONE

Cookie duration: 365 (days).

Data collected and processed: Device characteristics, Probabilistic identifiers,
Non-precise location data, IP addresses, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
Consent


ADITION (VIRTUAL MINDS GMBH)

Cookie duration: 90 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, User-provided data, Users’ profiles, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


ACTIVE AGENT (VIRTUAL MINDS GMBH)

Cookie duration: 90 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, User-provided data, Users’ profiles, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


TABOOLA EUROPE LIMITED

Cookie duration: 366 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Non-precise location data, IP addresses, Users’
profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


EQUATIV

Cookie duration: 396 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, Users’ profiles, Privacy choices,
Browsing and interaction data

more

Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


ADFORM A/S

Cookie duration: 3650 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Non-precise
location data, IP addresses, User-provided data, Users’ profiles, Privacy
choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


MAGNITE, INC.

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


RATEGAIN ADARA INC

Cookie duration: 730 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Non-precise location data, IP addresses,
User-provided data, Users’ profiles, Privacy choices, Browsing and interaction
data

more




View details | Storage details | Privacy policy
Consent


SIFT MEDIA, INC

Doesn't use cookies.

Data collected and processed: Device identifiers, Device characteristics,
Precise location data, Non-precise location data, IP addresses

more




View details | Privacy policy
Consent


RAKUTEN MARKETING LLC

Cookie duration: 730 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Non-precise
location data, IP addresses, User-provided data, Users’ profiles, Privacy
choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
ConsentLegitimate interest


LUMEN RESEARCH LIMITED

Doesn't use cookies.

Data collected and processed: Device characteristics, Non-precise location data,
IP addresses, Browsing and interaction data

more




View details | Privacy policy
Legitimate interest


AMAZON AD SERVER

Cookie duration: 396 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Non-precise location data, IP addresses,
Users’ profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


OPENX

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, Device characteristics,
Non-precise location data, IP addresses, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


YIELDLAB (VIRTUAL MINDS GMBH)

Cookie duration: 90 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, User-provided data, Users’ profiles, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


ROKU ADVERTISING SERVICES

Cookie duration: 396 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, User-provided data, Users’
profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


NANO INTERACTIVE GROUP LTD.

Doesn't use cookies.

Data collected and processed: Device characteristics, Non-precise location data,
Browsing and interaction data

more




View details | Privacy policy
Consent


SIMPLIFI HOLDINGS LLC

Cookie duration: 366 (days).

Data collected and processed: Device identifiers, Precise location data, IP
addresses

more

Uses other forms of storage.


View details | Privacy policy
Consent


PUBMATIC, INC

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, User-provided data, Users’
profiles, Privacy choices, Browsing and interaction data

more

Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


COMSCORE B.V.

Cookie duration: 720 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, IP addresses,
User-provided data, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
Consent


FLASHTALKING

Cookie duration: 730 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Non-precise
location data, IP addresses, Users’ profiles, Privacy choices, Browsing and
interaction data

more




View details | Privacy policy
Consent


PULSEPOINT, INC.

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, Device characteristics, IP
addresses

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
Consent


SMAATO, INC.

Cookie duration: 21 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Precise location data, Non-precise location
data, IP addresses, User-provided data, Users’ profiles, Privacy choices,
Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


SEMASIO GMBH

Cookie duration: 366 (days).

Data collected and processed: Device identifiers, IP addresses, Privacy choices,
Browsing and interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


CRIMTAN HOLDINGS LIMITED

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, User-provided data, Users’
profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session.


View details | Privacy policy
ConsentLegitimate interest


GENIUS SPORTS UK LIMITED

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Non-precise
location data, IP addresses, Users’ profiles, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


CRITEO SA

Cookie duration: 390 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Non-precise
location data, IP addresses, Users’ profiles, Privacy choices, Browsing and
interaction data

more

Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


ADLOOX SA

Doesn't use cookies.

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Non-precise location data, IP addresses, Browsing and
interaction data

more

Uses other forms of storage.


View details | Privacy policy
ConsentLegitimate interest


BLIS GLOBAL LIMITED

Cookie duration: 400 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, User-provided data, Users’
profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


LOTAME SOLUTIONS, INC

Cookie duration: 274 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, IP addresses,
User-provided data, Users’ profiles, Privacy choices, Browsing and interaction
data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
Consent


LIVERAMP

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Non-precise location data, IP addresses,
Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


GROUPM UK LIMITED

Cookie duration: 395 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
ConsentLegitimate interest


LOOPME LIMITED

Cookie duration: 90 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, User-provided data, Users’ profiles, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


DYNATA LLC

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Non-precise location data, IP addresses,
User-provided data, Users’ profiles, Privacy choices, Browsing and interaction
data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


ASK LOCALA

Doesn't use cookies.

Data collected and processed: Device identifiers, Device characteristics,
Precise location data, Non-precise location data, IP addresses, Privacy choices

more

Uses other forms of storage.


View details | Privacy policy
Consent


AZIRA

Doesn't use cookies.

Data collected and processed: Device identifiers, Device characteristics,
Precise location data, Non-precise location data, IP addresses, Users’ profiles,
Privacy choices, Browsing and interaction data

more

Uses other forms of storage.


View details | Privacy policy
ConsentLegitimate interest


DOUBLEVERIFY INC.

Doesn't use cookies.

Data collected and processed: Device characteristics, Probabilistic identifiers,
Non-precise location data, IP addresses, Privacy choices, Browsing and
interaction data

more




View details | Privacy policy
Legitimate interest


BIDSWITCH GMBH

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
Consent


IPONWEB GMBH

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Non-precise location data, IP addresses,
User-provided data, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


NEXTROLL, INC.

Cookie duration: 183 (days).

Data collected and processed: Device identifiers, Device characteristics,
Non-precise location data, IP addresses, User-provided data, Users’ profiles,
Privacy choices, Browsing and interaction data

more

Cookie duration resets each session.


View details | Privacy policy
Consent


TEADS FRANCE SAS

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, Device characteristics,
Non-precise location data, IP addresses, Users’ profiles, Privacy choices,
Browsing and interaction data

more

Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


STRÖER SSP GMBH (SSP)

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Non-precise location data, IP addresses, Users’
profiles, Privacy choices, Browsing and interaction data

more

Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


OS DATA SOLUTIONS GMBH

Cookie duration: 90 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Non-precise location data, IP addresses,
User-provided data, Users’ profiles, Privacy choices, Browsing and interaction
data

more

Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


PERMODO GMBH

Doesn't use cookies.

Data collected and processed: Device identifiers, Device characteristics,
Non-precise location data, IP addresses, Users’ profiles, Privacy choices,
Browsing and interaction data

more

Uses other forms of storage.


View details | Privacy policy
Consent


PLATFORM161 B.V.

Cookie duration: 396 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, Users’ profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


BASIS GLOBAL TECHNOLOGIES, INC.

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Precise location data, Non-precise location
data, IP addresses, Users’ profiles, Privacy choices, Browsing and interaction
data

more

Cookie duration resets each session.


View details | Privacy policy
ConsentLegitimate interest


SMADEX, S.L.U.

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Non-precise location data, IP addresses,
User-provided data, Users’ profiles, Privacy choices

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


BOMBORA INC.

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Non-precise location data, IP addresses,
Users’ profiles, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


EASYMEDIA GMBH

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, Users’ profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


REMERGE GMBH

Doesn't use cookies.

Data collected and processed: Device identifiers, Device characteristics,
Non-precise location data, IP addresses, Browsing and interaction data

more

Uses other forms of storage.


View details | Privacy policy
ConsentLegitimate interest


ADVANCED STORE GMBH

Cookie duration: 365 (days).

Data collected and processed: Device identifiers

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


MAGNITE CTV, INC.

Cookie duration: 366 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


DELTA PROJECTS AB

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, User-provided data, Users’
profiles, Privacy choices, Browsing and interaction data

more




View details | Storage details | Privacy policy
ConsentLegitimate interest


USEMAX ADVERTISEMENT (EMEGO GMBH)

Cookie duration: 365 (days).

Data collected and processed: IP addresses, Users’ profiles

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


EMETRIQ GMBH

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Non-precise
location data, IP addresses, User-provided data, Users’ profiles, Privacy
choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


PUBLICIS MEDIA GMBH

Cookie duration: 1825 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Non-precise
location data, IP addresses, User-provided data, Users’ profiles, Privacy
choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
Consent


M.D. PRIMIS TECHNOLOGIES LTD.

Cookie duration: 25 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Non-precise location data, IP addresses,
User-provided data, Privacy choices, Browsing and interaction data

more




View details | Storage details | Privacy policy
ConsentLegitimate interest


ONETAG LIMITED

Cookie duration: 396 (days).

Data collected and processed: Device identifiers, Device characteristics,
Non-precise location data, IP addresses, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


CLOUD TECHNOLOGIES S.A.

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Non-precise location data, IP addresses,
Users’ profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session.


View details | Privacy policy
Consent


SMARTOLOGY LIMITED

Doesn't use cookies.

Data collected and processed: IP addresses

more

Uses other forms of storage.


View details | Privacy policy
ConsentLegitimate interest


IMPROVE DIGITAL

Cookie duration: 90 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, User-provided data, Users’
profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
ConsentLegitimate interest


ADOBE ADVERTISING CLOUD

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, IP addresses, Privacy choices

more




View details | Storage details | Privacy policy
ConsentLegitimate interest


BANNERFLOW AB

Cookie duration: 366 (days).

Data collected and processed: Device characteristics, Non-precise location data,
IP addresses, Privacy choices

more

Cookie duration resets each session.


View details | Privacy policy
ConsentLegitimate interest


TABMO SAS

Doesn't use cookies.

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, User-provided data, Users’ profiles, Privacy choices, Browsing and
interaction data

more

Uses other forms of storage.


View details | Privacy policy
Consent


INTEGRAL AD SCIENCE (INCORPORATING ADMANTX)

Doesn't use cookies.

Data collected and processed: Device characteristics, Non-precise location data,
IP addresses, Privacy choices, Browsing and interaction data

more




View details | Privacy policy
Legitimate interest


WIZALY

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
characteristics, Non-precise location data, IP addresses, Privacy choices,
Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


WEBORAMA

Cookie duration: 393 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, User-provided data, Users’
profiles, Privacy choices, Browsing and interaction data

more

Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


JIVOX CORPORATION

Cookie duration: 30 (days).

Data collected and processed: Device identifiers, Precise location data,
Non-precise location data, IP addresses, Users’ profiles, Privacy choices,
Browsing and interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


VISTAR MEDIA EMEA BV

Doesn't use cookies.

Data collected and processed: Non-precise location data

more




View details | Privacy policy
Consent


ON DEVICE RESEARCH LIMITED

Cookie duration: 30 (days).

Data collected and processed: Device identifiers, Device characteristics,
Precise location data, Non-precise location data, IP addresses, User-provided
data, Browsing and interaction data

more




View details | Storage details | Privacy policy
Consent


ROCKABOX MEDIA LTD

Doesn't use cookies.

Data collected and processed: Device characteristics, Non-precise location data,
IP addresses, Browsing and interaction data

more




View details | Storage details | Privacy policy
Legitimate interest


EXACTAG GMBH

Cookie duration: 180 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, IP addresses, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session.


View details | Privacy policy
Consent


CELTRA INC.

Doesn't use cookies.

Data collected and processed: Device identifiers, Device characteristics,
Precise location data, IP addresses

more

Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


MAINADV SRL

Cookie duration: 30 (days).

Data collected and processed: Device identifiers, Device characteristics,
Non-precise location data, IP addresses, User-provided data, Privacy choices,
Browsing and interaction data

more

Uses other forms of storage.


View details | Privacy policy
Consent


GEMIUS SA

Cookie duration: 1825 (days).

Data collected and processed: Device identifiers, Device characteristics, IP
addresses, Users’ profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


THE KANTAR GROUP LIMITED

Cookie duration: 914 (days).

Data collected and processed: Device identifiers, Device characteristics,
Non-precise location data, IP addresses, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
Consent


NIELSEN MEDIA RESEARCH LTD.

Cookie duration: 120 (days).

Data collected and processed: Device identifiers, Device characteristics, IP
addresses, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


SOLOCAL SA

Cookie duration: 396 (days).

Data collected and processed: Device identifiers, Device characteristics,
Precise location data, Non-precise location data, IP addresses, User-provided
data, Users’ profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


PIXALATE, INC.

Doesn't use cookies.

Data collected and processed: Device identifiers, Device characteristics,
Non-precise location data, IP addresses, Browsing and interaction data

more




View details | Storage details | Privacy policy
Consent


NUMBERLY

Cookie duration: 180 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Non-precise location data, IP addresses,
User-provided data, Users’ profiles, Privacy choices, Browsing and interaction
data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


AUDIENCEPROJECT A/S

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Non-precise
location data, IP addresses, User-provided data, Users’ profiles, Privacy
choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


DEMANDBASE, INC.

Cookie duration: 730 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, User-provided data, Users’ profiles, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


EFFILIATION / EFFINITY

Cookie duration: 30 (days).

Data collected and processed: Device characteristics

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


ARRIVALIST CO.

Cookie duration: 365 (days).

Data collected and processed: Non-precise location data, IP addresses

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


SEENTHIS AB

Doesn't use cookies.

Data collected and processed: Device characteristics, IP addresses

more




View details | Privacy policy


COMMANDERS ACT

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, IP addresses

more




View details | Storage details | Privacy policy
Consent


TRAVEL AUDIENCE GMBH

Cookie duration: 397 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, Users’ profiles, Browsing and
interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
Consent


HUMAN

Doesn't use cookies.

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Non-precise location data, IP addresses

more




View details | Privacy policy
Legitimate interest


BLENDEE SRL

Cookie duration: 366 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Non-precise location data, IP addresses,
User-provided data, Users’ profiles, Privacy choices, Browsing and interaction
data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


INNOVID LLC

Cookie duration: 90 (days).

Data collected and processed: Device identifiers, Device characteristics,
Non-precise location data, IP addresses, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
ConsentLegitimate interest


PAPIRFLY AS

Doesn't use cookies.

Data collected and processed: Device characteristics

more




View details | Privacy policy
Legitimate interest


NEUSTAR, INC., A TRANSUNION COMPANY

Cookie duration: 365 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Non-precise
location data, IP addresses, User-provided data, Users’ profiles, Privacy
choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
ConsentLegitimate interest


VERVE GROUP EUROPE GMBH

Doesn't use cookies.

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Precise location data, Non-precise location
data, IP addresses, User-provided data, Users’ profiles, Privacy choices,
Browsing and interaction data

more

Uses other forms of storage.


View details | Privacy policy
Consent


OTTO (GMBH & CO KG)

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, IP addresses, User-provided
data, Users’ profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


ADOBE AUDIENCE MANAGER, ADOBE EXPERIENCE PLATFORM

Cookie duration: 180 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, User-provided data, Users’
profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


LOCALSENSOR B.V.

Doesn't use cookies.

Data collected and processed: Device identifiers, Device characteristics,
Precise location data, Non-precise location data, IP addresses, Privacy choices

more

Uses other forms of storage.


View details | Privacy policy
Consent


ONLINE SOLUTION

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, User-provided data, Users’ profiles, Privacy choices, Browsing and
interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
Consent


RELAY42 NETHERLANDS B.V.

Cookie duration: 730 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, IP addresses, User-provided data, Users’ profiles,
Privacy choices, Browsing and interaction data

more




View details | Storage details | Privacy policy
Consent


GP ONE GMBH

Cookie duration: Uses session cookies.

Data collected and processed: Device characteristics, Non-precise location data,
IP addresses, User-provided data, Privacy choices, Browsing and interaction data

more

Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


LIFTOFF MONETIZE AND VUNGLE EXCHANGE

Doesn't use cookies.

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, User-provided data, Users’
profiles, Privacy choices, Browsing and interaction data

more

Uses other forms of storage.


View details | Privacy policy
ConsentLegitimate interest


THE MEDIAGRID INC.

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Precise location data, Non-precise location data, IP
addresses, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


REPPUBLIKA RESEARCH & ANALYTICS AUSTRIA GMBH

Cookie duration: 180 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, IP addresses, Users’ profiles, Browsing and
interaction data

more

Uses other forms of storage.


View details | Privacy policy
Consent


CINT AB

Cookie duration: 730 (days).

Data collected and processed: Device identifiers, Device characteristics, IP
addresses, Privacy choices, Browsing and interaction data

more

Uses other forms of storage.


View details | Privacy policy
Consent


GOOGLE ADVERTISING PRODUCTS

Cookie duration: 396 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Non-precise location data, IP addresses,
User-provided data, Users’ profiles, Privacy choices, Browsing and interaction
data

more

Uses other forms of storage.


View details | Storage details | Privacy policy
ConsentLegitimate interest


GFK GMBH

Cookie duration: 730 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Non-precise location data, IP addresses,
User-provided data, Users’ profiles, Privacy choices, Browsing and interaction
data

more

Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


REVJET

Cookie duration: 365 (days).

Data collected and processed: Device identifiers, Non-precise location data, IP
addresses, Users’ profiles, Privacy choices

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


PROTECTED MEDIA LTD

Doesn't use cookies.

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, IP addresses, Browsing and interaction data

more




View details | Privacy policy
Legitimate interest


CLINCH LABS LTD

Cookie duration: 730 (days).

Data collected and processed: Device identifiers, Device characteristics,
Probabilistic identifiers, Non-precise location data, IP addresses, Users’
profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
ConsentLegitimate interest


ORACLE DATA CLOUD - MOAT

Doesn't use cookies.

Data collected and processed: Non-precise location data, IP addresses

more




View details | Privacy policy
Legitimate interest


HEARTS AND SCIENCE MÜNCHEN GMBH

Cookie duration: 60 (days).

Data collected and processed: IP addresses

more

Cookie duration resets each session.


View details | Privacy policy
Consent


AMAZON ADVERTISING

Cookie duration: 396 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Non-precise location data, IP addresses,
Users’ profiles, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session. Uses other forms of storage.


View details | Storage details | Privacy policy
Consent


MOLOCO, INC.

Cookie duration: 730 (days).

Data collected and processed: Device identifiers, Device characteristics,
Non-precise location data, IP addresses

more

Cookie duration resets each session. Uses other forms of storage.


View details | Privacy policy
ConsentLegitimate interest


ADTRIBA GMBH

Cookie duration: 730 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Non-precise location data, IP addresses,
Privacy choices, Browsing and interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent


ENSIGHTEN

Cookie duration: 1825 (days).

Data collected and processed: Device identifiers, Device characteristics, IP
addresses, Privacy choices, Browsing and interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Legitimate interest


EBAY INC

Cookie duration: 90 (days).

Data collected and processed: Device characteristics, IP addresses, Privacy
choices

more




View details | Storage details | Privacy policy
Consent


METRIXLAB NEDERLAND B.V.

Cookie duration: 730 (days).

Data collected and processed: Device identifiers, Device characteristics, IP
addresses, User-provided data, Browsing and interaction data

more

Uses other forms of storage.


View details | Privacy policy
Consent


HURRA COMMUNICATIONS GMBH

Cookie duration: 366 (days).

Data collected and processed: Authentication-derived identifiers, Device
identifiers, Device characteristics, Probabilistic identifiers, Precise location
data, Non-precise location data, IP addresses, Browsing and interaction data

more

Cookie duration resets each session.


View details | Storage details | Privacy policy
Consent

Ad partners


AKAMAI

Privacy policy
Consent


META

Privacy policy
Consent


AUNICA

Privacy policy
Consent


BOOKING.COM

Privacy policy
Consent


C3 METRICS

Privacy policy
Consent


IBM

Privacy policy
Consent


EVIDON

Privacy policy
Consent


ADACADO

Privacy policy
Consent


INTELLIAD

Privacy policy
Consent


DSTILLERY

Privacy policy
Consent


MEDIAMATH

Privacy policy
Consent


ZMS

Privacy policy
Consent


OMNICOM MEDIA GROUP

Privacy policy
Consent


RESONATE

Privacy policy
Consent


SOJERN

Privacy policy
Consent


TRADEDOUBLER AB

Privacy policy
Consent


TRUSTARC

Privacy policy
Consent


TRUEFFECT

Privacy policy
Consent


TRAVEL DATA COLLECTIVE

Privacy policy
Consent


ADVOLUTION.CONTROL

Privacy policy
Consent


LIFESTREET

Privacy policy
Consent


BATCH MEDIA

Privacy policy
Consent


VODAFONE GMBH

Privacy policy
Consent


MAGNITE

Privacy policy
Consent


SCENESTEALER

Privacy policy
Consent


NETQUEST

Privacy policy
Consent


MANAGE.COM

Privacy policy
Consent


CLOUDFLARE

Privacy policy
Consent


SALESFORCE DMP

Privacy policy
Consent


NETFLIX

Privacy policy
Consent


EBUILDERS

Privacy policy
Consent


APPLOVIN CORP.

Privacy policy
Consent


FRACTIONAL MEDIA

Privacy policy
Consent


RACKSPACE

Privacy policy
Consent


MSI-ACI

Privacy policy
Consent


ADMETRICS

Privacy policy
Consent


NAVEGG

Privacy policy
Consent


ADMEDO

Privacy policy
Consent


KOCHAVA

Privacy policy
Consent


MOBITRANS

Privacy policy
Consent


ADEX

Privacy policy
Consent


IMPACT

Privacy policy
Consent


SPOTAD

Privacy policy
Consent


AARKI

Privacy policy
Consent


SFR

Privacy policy
Consent


CABLATO

Privacy policy
Consent


WAYSTACK

Privacy policy
Consent


TRESENSA

Privacy policy
Consent


ADLUDIO

Privacy policy
Consent


GSKINNER

Privacy policy
Consent


CUBED

Privacy policy
Consent


OPTOMATON

Privacy policy
Consent


DENTSU AEGIS NETWORK

Privacy policy
Consent


DIGISEG

Privacy policy
Consent


HAENSEL AMS

Privacy policy
Consent


BDSK HANDELS GMBH & CO. KG

Privacy policy
Consent


OBJECTIVE PARTNERS

Privacy policy
Consent


MARKETING SCIENCE CONSULTING GROUP, INC.

Privacy policy
Consent


DENTSU

Privacy policy
Consent


KOBLER

Privacy policy
Consent


WIDESPACE

Privacy policy
Consent


VIMEO

Privacy policy
Consent


ORACLE DATA CLOUD

Privacy policy
Consent

Accept all



Confirm choices

Close