CINXE.COM
66: Inside Bento - Serverless Jupyter Notebooks at Meta - Meta Tech Podcast | Podcast on Spotify
<!doctype html><html class="mobile-web-player" lang="en" dir="ltr"><head><meta charSet="utf-8"/><title>66: Inside Bento - Serverless Jupyter Notebooks at Meta - Meta Tech Podcast | Podcast on Spotify</title><meta property="og:site_name" content="Spotify"/><meta property="fb:app_id" content="174829003346"/><link rel="icon" sizes="32x32" type="image/png" href="https://open.spotifycdn.com/cdn/images/favicon32.b64ecc03.png"/><link rel="icon" sizes="16x16" type="image/png" href="https://open.spotifycdn.com/cdn/images/favicon16.1c487bff.png"/><link rel="icon" href="https://open.spotifycdn.com/cdn/images/favicon.0f31d2ea.ico"/><meta http-equiv="X-UA-Compatible" content="IE=9"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="https://encore.scdn.co/fonts/SpotifyMixUI-Regular-cc3b1de388efa4cbca6c75cebc24585e.woff2" as="font" type="font/woff2" crossorigin="anonymous"/><link rel="preload" href="https://encore.scdn.co/fonts/SpotifyMixUITitleVariable-8769ccfde3379b7ebcadd9529b49d0cc.woff2" as="font" type="font/woff2" crossorigin="anonymous"/><link rel="preload" href="https://encore.scdn.co/fonts/SpotifyMixUITitle-Bold-37290f1de77f297fcc26d71e9afcf43f.woff2" as="font" type="font/woff2" crossorigin="anonymous"/><link rel="preload" href="https://encore.scdn.co/fonts/SpotifyMixUI-Bold-4264b799009b1db5c491778b1bc8e5b7.woff2" as="font" type="font/woff2" crossorigin="anonymous"/><link rel="preload" href="https://encore.scdn.co/fonts/SpotifyMixUITitleVariable-8769ccfde3379b7ebcadd9529b49d0cc.woff2" as="font" type="font/woff2" crossorigin="anonymous"/><link rel="preload" href="https://encore.scdn.co/fonts/SpotifyMixUITitle-Extrabold-ba6c73cd7f82c81e49cf2204017803ed.woff2" as="font" type="font/woff2" crossorigin="anonymous"/><meta name="description" content="Listen to this episode from Meta Tech Podcast on Spotify. Bento is Meta’s internal distribution of Jupyter Notebooks, an open-source web-based computing platform. Host Pascal is joined by Steve who worked with his team on building many features on top of Jupyter, including scheduled notebooks, sharing with colleagues and running notebooks without a remote server component by leveraging Webassembly in the browser. Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/. Links Scheduling Jupyter Notebooks at Meta: https://engineering.fb.com/2023/08/29/security/scheduling-jupyter-notebooks-meta/ Serverless Jupyter Notebooks at Meta: https://engineering.fb.com/2024/06/10/data-infrastructure/serverless-jupyter-notebooks-bento-meta/ Jupyter Notebooks: https://jupyter.org/ Timestamps Intro 0:06 Who is Steve? 1:49 What are Jupyter and Bento? 2:48 Who is Bento for? 3:40 Internal-only Bento features 4:42 Scheduled notebooks 11:39 Integrating with existing batch jobs 17:10 The case for serverless notebooks 20:59 Enter wasm 24:29 Upgrade paths from serverless to server 26:29 Bringing more Python libraries to the browser 30:21 Adding magick(s) 31:52 DataFrame magic and AI 36:41 What's next? 38:29 Outro 43:17 "/><meta name="google" content="notranslate"/><meta name="music:duration" content="2661"/><meta name="music:album" content="https://open.spotify.com/show/1NlTm7OkZmcrOPfvlqlBMz"/><meta name="music:release_date" content="2024-08-30T13:40:00Z"/><meta name="al:android:app_name" content="Spotify"/><meta name="al:android:package" content="com.spotify.music"/><meta name="al:android:url" content="spotify://episode/0RvTSFzjAlqJzW9tuJwokl"/><meta name="al:ios:app_name" content="Spotify"/><meta name="al:ios:app_store_id" content="324684580"/><meta name="al:ios:url" content="spotify://episode/0RvTSFzjAlqJzW9tuJwokl"/><meta property="og:title" content="66: Inside Bento - Serverless Jupyter Notebooks at Meta"/><meta property="og:description" content="Meta Tech Podcast · Episode"/><meta property="og:url" content="https://open.spotify.com/episode/0RvTSFzjAlqJzW9tuJwokl"/><meta property="og:type" content="music.song"/><meta property="og:site_name" content="Spotify"/><meta property="og:restrictions:country:allowed" content="AD"/><meta property="og:restrictions:country:allowed" content="AE"/><meta property="og:restrictions:country:allowed" content="AG"/><meta property="og:restrictions:country:allowed" content="AL"/><meta property="og:restrictions:country:allowed" content="AM"/><meta property="og:restrictions:country:allowed" content="AO"/><meta property="og:restrictions:country:allowed" content="AR"/><meta property="og:restrictions:country:allowed" content="AT"/><meta property="og:restrictions:country:allowed" content="AU"/><meta property="og:restrictions:country:allowed" content="AZ"/><meta property="og:restrictions:country:allowed" content="BA"/><meta property="og:restrictions:country:allowed" content="BB"/><meta property="og:restrictions:country:allowed" content="BE"/><meta property="og:restrictions:country:allowed" content="BF"/><meta property="og:restrictions:country:allowed" content="BG"/><meta property="og:restrictions:country:allowed" content="BH"/><meta property="og:restrictions:country:allowed" content="BI"/><meta property="og:restrictions:country:allowed" content="BJ"/><meta property="og:restrictions:country:allowed" content="BN"/><meta property="og:restrictions:country:allowed" content="BO"/><meta property="og:restrictions:country:allowed" content="BR"/><meta property="og:restrictions:country:allowed" content="BS"/><meta property="og:restrictions:country:allowed" content="BT"/><meta property="og:restrictions:country:allowed" content="BW"/><meta property="og:restrictions:country:allowed" content="BZ"/><meta property="og:restrictions:country:allowed" content="CA"/><meta property="og:restrictions:country:allowed" content="CH"/><meta property="og:restrictions:country:allowed" content="CI"/><meta property="og:restrictions:country:allowed" content="CL"/><meta property="og:restrictions:country:allowed" content="CM"/><meta property="og:restrictions:country:allowed" content="CO"/><meta property="og:restrictions:country:allowed" content="CR"/><meta property="og:restrictions:country:allowed" content="CV"/><meta property="og:restrictions:country:allowed" content="CW"/><meta property="og:restrictions:country:allowed" content="CY"/><meta property="og:restrictions:country:allowed" content="CZ"/><meta property="og:restrictions:country:allowed" content="DE"/><meta property="og:restrictions:country:allowed" content="DJ"/><meta property="og:restrictions:country:allowed" content="DK"/><meta property="og:restrictions:country:allowed" content="DM"/><meta property="og:restrictions:country:allowed" content="DO"/><meta property="og:restrictions:country:allowed" content="DZ"/><meta property="og:restrictions:country:allowed" content="EC"/><meta property="og:restrictions:country:allowed" content="EE"/><meta property="og:restrictions:country:allowed" content="EG"/><meta property="og:restrictions:country:allowed" content="ES"/><meta property="og:restrictions:country:allowed" content="FI"/><meta property="og:restrictions:country:allowed" content="FJ"/><meta property="og:restrictions:country:allowed" content="FM"/><meta property="og:restrictions:country:allowed" content="FR"/><meta property="og:restrictions:country:allowed" content="GA"/><meta property="og:restrictions:country:allowed" content="GB"/><meta property="og:restrictions:country:allowed" content="GD"/><meta property="og:restrictions:country:allowed" content="GE"/><meta property="og:restrictions:country:allowed" content="GH"/><meta property="og:restrictions:country:allowed" content="GM"/><meta property="og:restrictions:country:allowed" content="GN"/><meta property="og:restrictions:country:allowed" content="GQ"/><meta property="og:restrictions:country:allowed" content="GR"/><meta property="og:restrictions:country:allowed" content="GT"/><meta property="og:restrictions:country:allowed" content="GW"/><meta property="og:restrictions:country:allowed" content="GY"/><meta property="og:restrictions:country:allowed" content="HK"/><meta property="og:restrictions:country:allowed" content="HN"/><meta property="og:restrictions:country:allowed" content="HR"/><meta property="og:restrictions:country:allowed" content="HT"/><meta property="og:restrictions:country:allowed" content="HU"/><meta property="og:restrictions:country:allowed" content="ID"/><meta property="og:restrictions:country:allowed" content="IE"/><meta property="og:restrictions:country:allowed" content="IL"/><meta property="og:restrictions:country:allowed" content="IN"/><meta property="og:restrictions:country:allowed" content="IS"/><meta property="og:restrictions:country:allowed" content="IT"/><meta property="og:restrictions:country:allowed" content="JM"/><meta property="og:restrictions:country:allowed" content="JO"/><meta property="og:restrictions:country:allowed" content="JP"/><meta property="og:restrictions:country:allowed" content="KE"/><meta property="og:restrictions:country:allowed" content="KH"/><meta property="og:restrictions:country:allowed" content="KI"/><meta property="og:restrictions:country:allowed" content="KM"/><meta property="og:restrictions:country:allowed" content="KN"/><meta property="og:restrictions:country:allowed" content="KR"/><meta property="og:restrictions:country:allowed" content="KW"/><meta property="og:restrictions:country:allowed" content="LA"/><meta property="og:restrictions:country:allowed" content="LB"/><meta property="og:restrictions:country:allowed" content="LC"/><meta property="og:restrictions:country:allowed" content="LI"/><meta property="og:restrictions:country:allowed" content="LR"/><meta property="og:restrictions:country:allowed" content="LS"/><meta property="og:restrictions:country:allowed" content="LT"/><meta property="og:restrictions:country:allowed" content="LU"/><meta property="og:restrictions:country:allowed" content="LV"/><meta property="og:restrictions:country:allowed" content="MA"/><meta property="og:restrictions:country:allowed" content="MC"/><meta property="og:restrictions:country:allowed" content="ME"/><meta property="og:restrictions:country:allowed" content="MG"/><meta property="og:restrictions:country:allowed" content="MH"/><meta property="og:restrictions:country:allowed" content="MK"/><meta property="og:restrictions:country:allowed" content="ML"/><meta property="og:restrictions:country:allowed" content="MN"/><meta property="og:restrictions:country:allowed" content="MO"/><meta property="og:restrictions:country:allowed" content="MR"/><meta property="og:restrictions:country:allowed" content="MT"/><meta property="og:restrictions:country:allowed" content="MU"/><meta property="og:restrictions:country:allowed" content="MV"/><meta property="og:restrictions:country:allowed" content="MW"/><meta property="og:restrictions:country:allowed" content="MX"/><meta property="og:restrictions:country:allowed" content="MY"/><meta property="og:restrictions:country:allowed" content="MZ"/><meta property="og:restrictions:country:allowed" content="NA"/><meta property="og:restrictions:country:allowed" content="NE"/><meta property="og:restrictions:country:allowed" content="NG"/><meta property="og:restrictions:country:allowed" content="NI"/><meta property="og:restrictions:country:allowed" content="NL"/><meta property="og:restrictions:country:allowed" content="NO"/><meta property="og:restrictions:country:allowed" content="NP"/><meta property="og:restrictions:country:allowed" content="NR"/><meta property="og:restrictions:country:allowed" content="NZ"/><meta property="og:restrictions:country:allowed" content="OM"/><meta property="og:restrictions:country:allowed" content="PA"/><meta property="og:restrictions:country:allowed" content="PE"/><meta property="og:restrictions:country:allowed" content="PG"/><meta property="og:restrictions:country:allowed" content="PH"/><meta property="og:restrictions:country:allowed" content="PL"/><meta property="og:restrictions:country:allowed" content="PR"/><meta property="og:restrictions:country:allowed" content="PS"/><meta property="og:restrictions:country:allowed" content="PT"/><meta property="og:restrictions:country:allowed" content="PW"/><meta property="og:restrictions:country:allowed" content="PY"/><meta property="og:restrictions:country:allowed" content="QA"/><meta property="og:restrictions:country:allowed" content="RO"/><meta property="og:restrictions:country:allowed" content="RS"/><meta property="og:restrictions:country:allowed" content="RW"/><meta property="og:restrictions:country:allowed" content="SA"/><meta property="og:restrictions:country:allowed" content="SB"/><meta property="og:restrictions:country:allowed" content="SC"/><meta property="og:restrictions:country:allowed" content="SE"/><meta property="og:restrictions:country:allowed" content="SG"/><meta property="og:restrictions:country:allowed" content="SI"/><meta property="og:restrictions:country:allowed" content="SK"/><meta property="og:restrictions:country:allowed" content="SL"/><meta property="og:restrictions:country:allowed" content="SM"/><meta property="og:restrictions:country:allowed" content="SN"/><meta property="og:restrictions:country:allowed" content="SR"/><meta property="og:restrictions:country:allowed" content="ST"/><meta property="og:restrictions:country:allowed" content="SV"/><meta property="og:restrictions:country:allowed" content="SZ"/><meta property="og:restrictions:country:allowed" content="TD"/><meta property="og:restrictions:country:allowed" content="TG"/><meta property="og:restrictions:country:allowed" content="TH"/><meta property="og:restrictions:country:allowed" content="TL"/><meta property="og:restrictions:country:allowed" content="TN"/><meta property="og:restrictions:country:allowed" content="TO"/><meta property="og:restrictions:country:allowed" content="TR"/><meta property="og:restrictions:country:allowed" content="TT"/><meta property="og:restrictions:country:allowed" content="TV"/><meta property="og:restrictions:country:allowed" content="TW"/><meta property="og:restrictions:country:allowed" content="TZ"/><meta property="og:restrictions:country:allowed" content="UA"/><meta property="og:restrictions:country:allowed" content="US"/><meta property="og:restrictions:country:allowed" content="UY"/><meta property="og:restrictions:country:allowed" content="UZ"/><meta property="og:restrictions:country:allowed" content="VC"/><meta property="og:restrictions:country:allowed" content="VN"/><meta property="og:restrictions:country:allowed" content="VU"/><meta property="og:restrictions:country:allowed" content="WS"/><meta property="og:restrictions:country:allowed" content="XK"/><meta property="og:restrictions:country:allowed" content="ZA"/><meta property="og:restrictions:country:allowed" content="ZM"/><meta property="og:restrictions:country:allowed" content="ZW"/><meta property="og:audio" content="https://podz-content.spotifycdn.com/audio/clips/1OoFlJy8s7eZ33SAACDniI/clip_1090450_1153700.mp3"/><meta property="og:audio:type" content="audio/mpeg"/><meta property="og:image" content="https://i.scdn.co/image/ab6765630000ba8a4462d22f4818e3051da7ce74"/><meta name="twitter:site" content="@spotify"/><meta name="twitter:title" content="66: Inside Bento - Serverless Jupyter Notebooks at Meta"/><meta name="twitter:description" content="Meta Tech Podcast · Episode"/><meta name="twitter:image" content="https://i.scdn.co/image/ab6765630000ba8a4462d22f4818e3051da7ce74"/><meta name="twitter:card" content="summary"/><link rel="canonical" href="https://open.spotify.com/episode/0RvTSFzjAlqJzW9tuJwokl"/><link rel="alternate" type="application/json+oembed" href="https://open.spotify.com/oembed?url=https%3A%2F%2Fopen.spotify.com%2Fepisode%2F0RvTSFzjAlqJzW9tuJwokl"/><link rel="alternate" href="https://open.spotify.com/episode/0RvTSFzjAlqJzW9tuJwokl" hrefLang="x-default"/><link rel="alternate" href="https://open.spotify.com/episode/0RvTSFzjAlqJzW9tuJwokl" hrefLang="en"/><link rel="alternate" href="android-app://com.spotify.music/spotify/episode/0RvTSFzjAlqJzW9tuJwokl"/><script type="application/ld+json">{"@context":"http://schema.googleapis.com/","@type":"MusicGroup","@id":"https://open.spotify.com/episode/0RvTSFzjAlqJzW9tuJwokl","url":"https://open.spotify.com/episode/0RvTSFzjAlqJzW9tuJwokl","name":"66: Inside Bento - Serverless Jupyter Notebooks at Meta","description":"Listen to this episode from Meta Tech Podcast on Spotify. Bento is Meta\u2019s internal distribution of Jupyter Notebooks, an open-source web-based computing platform. Host Pascal is joined by Steve who worked with his team on building many features on top of Jupyter, including scheduled notebooks, sharing with colleagues and running notebooks without a remote server component by leveraging Webassembly in the browser. Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don\u2019t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/. Links Scheduling Jupyter Notebooks at Meta: https://engineering.fb.com/2023/08/29/security/scheduling-jupyter-notebooks-meta/ Serverless Jupyter Notebooks at Meta: https://engineering.fb.com/2024/06/10/data-infrastructure/serverless-jupyter-notebooks-bento-meta/ Jupyter Notebooks: https://jupyter.org/\u00A0 Timestamps Intro 0:06 Who is Steve? 1:49 What are Jupyter and Bento? 2:48 Who is Bento for? 3:40 Internal-only Bento features 4:42 Scheduled notebooks 11:39 Integrating with existing batch jobs 17:10 The case for serverless notebooks 20:59 Enter wasm 24:29 Upgrade paths from serverless to server 26:29 Bringing more Python libraries to the browser 30:21 Adding magick(s) 31:52 DataFrame magic and AI 36:41 What's next? 38:29 Outro 43:17 ","datePublished":"2024-08-30","potentialAction":{"@type":"ListenAction","target":[{"@type":"EntryPoint","urlTemplate":"https://open.spotify.com/episode/0RvTSFzjAlqJzW9tuJwokl?autoplay=true","actionPlatform":["http://schema.org/DesktopWebPlatform","http://schema.org/IOSPlatform","http://schema.googleapis.com/GoogleAudioCast","http://schema.googleapis.com/GoogleVideoCast"]},"android-app://com.spotify.music/spotify/episode/0RvTSFzjAlqJzW9tuJwokl/play"],"expectsAcceptanceOf":{"@type":"Offer","category":"free","eligibleRegion":[{"@type":"Country","name":"AD"},{"@type":"Country","name":"AE"},{"@type":"Country","name":"AG"},{"@type":"Country","name":"AL"},{"@type":"Country","name":"AM"},{"@type":"Country","name":"AO"},{"@type":"Country","name":"AR"},{"@type":"Country","name":"AT"},{"@type":"Country","name":"AU"},{"@type":"Country","name":"AZ"},{"@type":"Country","name":"BA"},{"@type":"Country","name":"BB"},{"@type":"Country","name":"BE"},{"@type":"Country","name":"BF"},{"@type":"Country","name":"BG"},{"@type":"Country","name":"BH"},{"@type":"Country","name":"BI"},{"@type":"Country","name":"BJ"},{"@type":"Country","name":"BN"},{"@type":"Country","name":"BO"},{"@type":"Country","name":"BR"},{"@type":"Country","name":"BS"},{"@type":"Country","name":"BT"},{"@type":"Country","name":"BW"},{"@type":"Country","name":"BZ"},{"@type":"Country","name":"CA"},{"@type":"Country","name":"CH"},{"@type":"Country","name":"CI"},{"@type":"Country","name":"CL"},{"@type":"Country","name":"CM"},{"@type":"Country","name":"CO"},{"@type":"Country","name":"CR"},{"@type":"Country","name":"CV"},{"@type":"Country","name":"CW"},{"@type":"Country","name":"CY"},{"@type":"Country","name":"CZ"},{"@type":"Country","name":"DE"},{"@type":"Country","name":"DJ"},{"@type":"Country","name":"DK"},{"@type":"Country","name":"DM"},{"@type":"Country","name":"DO"},{"@type":"Country","name":"DZ"},{"@type":"Country","name":"EC"},{"@type":"Country","name":"EE"},{"@type":"Country","name":"EG"},{"@type":"Country","name":"ES"},{"@type":"Country","name":"FI"},{"@type":"Country","name":"FJ"},{"@type":"Country","name":"FM"},{"@type":"Country","name":"FR"},{"@type":"Country","name":"GA"},{"@type":"Country","name":"GB"},{"@type":"Country","name":"GD"},{"@type":"Country","name":"GE"},{"@type":"Country","name":"GH"},{"@type":"Country","name":"GM"},{"@type":"Country","name":"GN"},{"@type":"Country","name":"GQ"},{"@type":"Country","name":"GR"},{"@type":"Country","name":"GT"},{"@type":"Country","name":"GW"},{"@type":"Country","name":"GY"},{"@type":"Country","name":"HK"},{"@type":"Country","name":"HN"},{"@type":"Country","name":"HR"},{"@type":"Country","name":"HT"},{"@type":"Country","name":"HU"},{"@type":"Country","name":"ID"},{"@type":"Country","name":"IE"},{"@type":"Country","name":"IL"},{"@type":"Country","name":"IN"},{"@type":"Country","name":"IS"},{"@type":"Country","name":"IT"},{"@type":"Country","name":"JM"},{"@type":"Country","name":"JO"},{"@type":"Country","name":"JP"},{"@type":"Country","name":"KE"},{"@type":"Country","name":"KH"},{"@type":"Country","name":"KI"},{"@type":"Country","name":"KM"},{"@type":"Country","name":"KN"},{"@type":"Country","name":"KR"},{"@type":"Country","name":"KW"},{"@type":"Country","name":"LA"},{"@type":"Country","name":"LB"},{"@type":"Country","name":"LC"},{"@type":"Country","name":"LI"},{"@type":"Country","name":"LR"},{"@type":"Country","name":"LS"},{"@type":"Country","name":"LT"},{"@type":"Country","name":"LU"},{"@type":"Country","name":"LV"},{"@type":"Country","name":"MA"},{"@type":"Country","name":"MC"},{"@type":"Country","name":"ME"},{"@type":"Country","name":"MG"},{"@type":"Country","name":"MH"},{"@type":"Country","name":"MK"},{"@type":"Country","name":"ML"},{"@type":"Country","name":"MN"},{"@type":"Country","name":"MO"},{"@type":"Country","name":"MR"},{"@type":"Country","name":"MT"},{"@type":"Country","name":"MU"},{"@type":"Country","name":"MV"},{"@type":"Country","name":"MW"},{"@type":"Country","name":"MX"},{"@type":"Country","name":"MY"},{"@type":"Country","name":"MZ"},{"@type":"Country","name":"NA"},{"@type":"Country","name":"NE"},{"@type":"Country","name":"NG"},{"@type":"Country","name":"NI"},{"@type":"Country","name":"NL"},{"@type":"Country","name":"NO"},{"@type":"Country","name":"NP"},{"@type":"Country","name":"NR"},{"@type":"Country","name":"NZ"},{"@type":"Country","name":"OM"},{"@type":"Country","name":"PA"},{"@type":"Country","name":"PE"},{"@type":"Country","name":"PG"},{"@type":"Country","name":"PH"},{"@type":"Country","name":"PL"},{"@type":"Country","name":"PR"},{"@type":"Country","name":"PS"},{"@type":"Country","name":"PT"},{"@type":"Country","name":"PW"},{"@type":"Country","name":"PY"},{"@type":"Country","name":"QA"},{"@type":"Country","name":"RO"},{"@type":"Country","name":"RS"},{"@type":"Country","name":"RW"},{"@type":"Country","name":"SA"},{"@type":"Country","name":"SB"},{"@type":"Country","name":"SC"},{"@type":"Country","name":"SE"},{"@type":"Country","name":"SG"},{"@type":"Country","name":"SI"},{"@type":"Country","name":"SK"},{"@type":"Country","name":"SL"},{"@type":"Country","name":"SM"},{"@type":"Country","name":"SN"},{"@type":"Country","name":"SR"},{"@type":"Country","name":"ST"},{"@type":"Country","name":"SV"},{"@type":"Country","name":"SZ"},{"@type":"Country","name":"TD"},{"@type":"Country","name":"TG"},{"@type":"Country","name":"TH"},{"@type":"Country","name":"TL"},{"@type":"Country","name":"TN"},{"@type":"Country","name":"TO"},{"@type":"Country","name":"TR"},{"@type":"Country","name":"TT"},{"@type":"Country","name":"TV"},{"@type":"Country","name":"TW"},{"@type":"Country","name":"TZ"},{"@type":"Country","name":"UA"},{"@type":"Country","name":"US"},{"@type":"Country","name":"UY"},{"@type":"Country","name":"UZ"},{"@type":"Country","name":"VC"},{"@type":"Country","name":"VN"},{"@type":"Country","name":"VU"},{"@type":"Country","name":"WS"},{"@type":"Country","name":"XK"},{"@type":"Country","name":"ZA"},{"@type":"Country","name":"ZM"},{"@type":"Country","name":"ZW"}]}}}</script><link rel="manifest" href="https://open.spotifycdn.com/cdn/generated/manifest-mobile-web-player.a1ddf51c.json"/><style data-styled="active"></style><style data-styled="" data-styled-version="5.3.11">.bksmLQ{box-sizing:border-box;-webkit-tap-highlight-color:transparent;background-color:transparent;border:0;border-radius:var(--encore-button-corner-radius,9999px);cursor:pointer;display:inline-block;position:relative;text-align:center;-webkit-text-decoration:none;text-decoration:none;text-transform:none;touch-action:manipulation;-webkit-transition-duration:33ms;transition-duration:33ms;-webkit-transition-property:background-color,border-color,color,box-shadow,filter,-webkit-transform;-webkit-transition-property:background-color,border-color,color,box-shadow,filter,transform;transition-property:background-color,border-color,color,box-shadow,filter,transform;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle;-webkit-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0);color:var(--text-subdued,#656565);min-inline-size:0;min-block-size:var(--encore-control-size-base,48px);padding-block:var(--encore-spacing-tighter,12px);padding-inline:var(--encore-spacing-tighter,12px);display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}/*!sc*/ @supports (overflow-wrap:anywhere){.bksmLQ{overflow-wrap:anywhere;}}/*!sc*/ @supports not (overflow-wrap:anywhere){.bksmLQ{word-break:break-word;}}/*!sc*/ .bksmLQ:hover{-webkit-transform:scale(1.04);-ms-transform:scale(1.04);transform:scale(1.04);color:var(--text-base,#000000);}/*!sc*/ .bksmLQ:active{opacity:0.7;outline:none;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);color:var(--text-subdued,#656565);}/*!sc*/ .bksmLQ::after{inline-size:24px;}/*!sc*/ .bksmLQ[disabled],.bksmLQ[aria-disabled='true'],fieldset[disabled] .bksmLQ{cursor:not-allowed;opacity:0.3;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);color:var(--text-subdued,#656565);}/*!sc*/ .bksmLQ[disabled]::before,.bksmLQ[aria-disabled='true']::before,fieldset[disabled] .bksmLQ::before{background-color:transparent;}/*!sc*/ .bksmLQ[disabled]::after,.bksmLQ[aria-disabled='true']::after,fieldset[disabled] .bksmLQ::after{border-color:transparent;}/*!sc*/ .kTFJuL{box-sizing:border-box;-webkit-tap-highlight-color:transparent;background-color:transparent;border:0;border-radius:var(--encore-button-corner-radius,9999px);cursor:pointer;display:inline-block;position:relative;text-align:center;-webkit-text-decoration:none;text-decoration:none;text-transform:none;touch-action:manipulation;-webkit-transition-duration:33ms;transition-duration:33ms;-webkit-transition-property:background-color,border-color,color,box-shadow,filter,-webkit-transform;-webkit-transition-property:background-color,border-color,color,box-shadow,filter,transform;transition-property:background-color,border-color,color,box-shadow,filter,transform;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle;-webkit-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0);color:var(--text-base,#000000);min-inline-size:0;padding:0;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}/*!sc*/ @supports (overflow-wrap:anywhere){.kTFJuL{overflow-wrap:anywhere;}}/*!sc*/ @supports not (overflow-wrap:anywhere){.kTFJuL{word-break:break-word;}}/*!sc*/ .kTFJuL:hover{-webkit-transform:scale(1.04);-ms-transform:scale(1.04);transform:scale(1.04);}/*!sc*/ .kTFJuL:active{opacity:0.7;outline:none;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);color:var(--text-base,#000000);}/*!sc*/ .kTFJuL::after{inline-size:100%;}/*!sc*/ .kTFJuL[disabled],.kTFJuL[aria-disabled='true'],fieldset[disabled] .kTFJuL{cursor:not-allowed;opacity:0.3;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);color:var(--text-base,#000000);}/*!sc*/ .kTFJuL[disabled]::before,.kTFJuL[aria-disabled='true']::before,fieldset[disabled] .kTFJuL::before{background-color:transparent;}/*!sc*/ .kTFJuL[disabled]::after,.kTFJuL[aria-disabled='true']::after,fieldset[disabled] .kTFJuL::after{border-color:transparent;}/*!sc*/ .hRqQQR{box-sizing:border-box;-webkit-tap-highlight-color:transparent;background-color:transparent;border:0;border-radius:var(--encore-button-corner-radius,9999px);cursor:pointer;display:inline-block;position:relative;text-align:center;-webkit-text-decoration:none;text-decoration:none;text-transform:none;touch-action:manipulation;-webkit-transition-duration:33ms;transition-duration:33ms;-webkit-transition-property:background-color,border-color,color,box-shadow,filter,-webkit-transform;-webkit-transition-property:background-color,border-color,color,box-shadow,filter,transform;transition-property:background-color,border-color,color,box-shadow,filter,transform;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle;-webkit-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0);color:var(--text-base,#000000);min-inline-size:0;min-block-size:var(--encore-control-size-base,48px);padding-block:calc(var(--encore-spacing-tighter-2,8px) - 2px);padding-inline:0;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}/*!sc*/ @supports (overflow-wrap:anywhere){.hRqQQR{overflow-wrap:anywhere;}}/*!sc*/ @supports not (overflow-wrap:anywhere){.hRqQQR{word-break:break-word;}}/*!sc*/ .hRqQQR:hover{-webkit-transform:scale(1.04);-ms-transform:scale(1.04);transform:scale(1.04);}/*!sc*/ .hRqQQR:active{opacity:0.7;outline:none;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);color:var(--text-base,#000000);}/*!sc*/ .hRqQQR::after{inline-size:100%;}/*!sc*/ .hRqQQR[disabled],.hRqQQR[aria-disabled='true'],fieldset[disabled] .hRqQQR{cursor:not-allowed;opacity:0.3;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);color:var(--text-base,#000000);}/*!sc*/ .hRqQQR[disabled]::before,.hRqQQR[aria-disabled='true']::before,fieldset[disabled] .hRqQQR::before{background-color:transparent;}/*!sc*/ .hRqQQR[disabled]::after,.hRqQQR[aria-disabled='true']::after,fieldset[disabled] .hRqQQR::after{border-color:transparent;}/*!sc*/ data-styled.g2[id="Button-sc-1dqy6lx-0"]{content:"bksmLQ,kTFJuL,hRqQQR,"}/*!sc*/ .hYdsxw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}/*!sc*/ .kUVYXR{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-inline-start:12px;}/*!sc*/ data-styled.g3[id="IconWrapper__Wrapper-sc-16usrgb-0"]{content:"hYdsxw,kUVYXR,"}/*!sc*/ .bneLcE{fill:currentcolor;width:var(--encore-graphic-size-decorative-base,24px);height:var(--encore-graphic-size-decorative-base,24px);}/*!sc*/ .bneLcE *{vector-effect:non-scaling-stroke;}/*!sc*/ .zsGU{fill:currentcolor;width:var(--encore-graphic-size-decorative-base,24px);height:var(--encore-graphic-size-decorative-base,24px);}/*!sc*/ .zsGU *{vector-effect:non-scaling-stroke;}/*!sc*/ [dir='rtl'] .zsGU.zsGU{-webkit-transform:scaleX(-1);-ms-transform:scaleX(-1);transform:scaleX(-1);}/*!sc*/ data-styled.g4[id="Svg-sc-ytk21e-0"]{content:"bneLcE,zsGU,"}/*!sc*/ .hKFGwn{box-sizing:border-box;-webkit-tap-highlight-color:transparent;position:relative;background-color:var(--background-base,#1ed760);color:var(--text-base,#000000);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;border-radius:var(--encore-button-corner-radius,9999px);font-size:inherit;min-block-size:var(--encore-control-size-larger,56px);-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;inline-size:var(--encore-control-size-larger,56px);-webkit-block-size:var(--encore-control-size-larger,56px);-ms-flex-block-size:var(--encore-control-size-larger,56px);block-size:var(--encore-control-size-larger,56px);-webkit-transition-property:background-color,-webkit-transform;-webkit-transition-property:background-color,transform;transition-property:background-color,transform;-webkit-transition-duration:33ms;transition-duration:33ms;}/*!sc*/ @supports (overflow-wrap:anywhere){.hKFGwn{overflow-wrap:anywhere;}}/*!sc*/ @supports not (overflow-wrap:anywhere){.hKFGwn{word-break:break-word;}}/*!sc*/ data-styled.g6[id="ButtonInner-sc-14ud5tc-0"]{content:"hKFGwn,"}/*!sc*/ .dlTJiR{box-sizing:border-box;-webkit-tap-highlight-color:transparent;background-color:transparent;border:0;border-radius:var(--encore-button-corner-radius,9999px);cursor:pointer;display:inline-block;position:relative;text-align:center;-webkit-text-decoration:none;text-decoration:none;text-transform:none;touch-action:manipulation;-webkit-transition-duration:33ms;transition-duration:33ms;-webkit-transition-property:background-color,border-color,color,box-shadow,filter,-webkit-transform;-webkit-transition-property:background-color,border-color,color,box-shadow,filter,transform;transition-property:background-color,border-color,color,box-shadow,filter,transform;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle;-webkit-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0);padding:0;min-inline-size:0;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;}/*!sc*/ .dlTJiR:hover .ButtonInner-sc-14ud5tc-0,.dlTJiR:hover .ButtonFocus-sc-2hq6ey-0{-webkit-transform:scale(1.04);-ms-transform:scale(1.04);transform:scale(1.04);}/*!sc*/ .dlTJiR:hover .ButtonInner-sc-14ud5tc-0{background-color:var(--background-highlight,#3be477);}/*!sc*/ .dlTJiR:active .ButtonInner-sc-14ud5tc-0{background-color:var(--background-press,#1abc54);box-shadow:none;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);}/*!sc*/ .dlTJiR:active .ButtonFocus-sc-2hq6ey-0{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);}/*!sc*/ .dlTJiR:focus .ButtonFocus-sc-2hq6ey-0{border-color:var(--parents-essential-base,var(--essential-base,#000000));}/*!sc*/ .dlTJiR[disabled] .ButtonInner-sc-14ud5tc-0,.dlTJiR[aria-disabled='true'] .ButtonInner-sc-14ud5tc-0,fieldset[disabled] .dlTJiR .ButtonInner-sc-14ud5tc-0{cursor:not-allowed;opacity:0.3;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);background-color:var(--background-base,#1ed760);color:var(--text-base,#000000);}/*!sc*/ .dlTJiR[disabled] .ButtonFocus-sc-2hq6ey-0,.dlTJiR[aria-disabled='true'] .ButtonFocus-sc-2hq6ey-0,fieldset[disabled] .dlTJiR .ButtonFocus-sc-2hq6ey-0{border-color:transparent;}/*!sc*/ data-styled.g7[id="Button-sc-qlcn5g-0"]{content:"dlTJiR,"}/*!sc*/ .ivomLs{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:absolute;inset-block-start:calc((var(--encore-control-size-larger,56px) - var(--encore-graphic-size-decorative-base,24px)) / 2);inset-inline-start:calc((var(--encore-control-size-larger,56px) - var(--encore-graphic-size-decorative-base,24px)) / 2);}/*!sc*/ data-styled.g8[id="IconWrapper__Wrapper-sc-1hf1hjl-0"]{content:"ivomLs,"}/*!sc*/ .kOChlU{inline-size:100%;border-radius:var(--encore-corner-radius-base,4px);}/*!sc*/ data-styled.g15[id="Image-sc-1u215sg-3"]{content:"kOChlU,"}/*!sc*/ .lmgIvZ{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}/*!sc*/ data-styled.g19[id="ListRowTitle__LineClamp-sc-1xe2if1-0"]{content:"lmgIvZ,"}/*!sc*/ .eFGzcP{outline:none;-webkit-text-decoration:none;text-decoration:none;}/*!sc*/ @supports (overflow-wrap:anywhere){.eFGzcP{overflow-wrap:anywhere;}}/*!sc*/ @supports not (overflow-wrap:anywhere){.eFGzcP{word-break:break-word;}}/*!sc*/ data-styled.g20[id="ListRowTitle__ListRowText-sc-1xe2if1-1"]{content:"eFGzcP,"}/*!sc*/ .wLcyr{box-sizing:border-box;-webkit-tap-highlight-color:transparent;position:relative;border-radius:var(--encore-corner-radius-larger,6px);min-block-size:48px;z-index:0;color:var(--text-base,#000000);padding-block-start:8px;padding-block-end:8px;padding-inline-start:8px;padding-inline-end:8px;--animation-speed:300ms;--animation-ease:ease;--bg-inset-change-press:-4px;cursor:pointer;}/*!sc*/ .wLcyr::after{content:'';position:absolute;border-radius:var(--encore-corner-radius-larger,6px);z-index:-1;-webkit-transition:background-color var(--animation-speed) var(--animation-ease),top var(--animation-speed) var(--animation-ease),left var(--animation-speed) var(--animation-ease),right var(--animation-speed) var(--animation-ease),bottom var(--animation-speed) var(--animation-ease);transition:background-color var(--animation-speed) var(--animation-ease),top var(--animation-speed) var(--animation-ease),left var(--animation-speed) var(--animation-ease),right var(--animation-speed) var(--animation-ease),bottom var(--animation-speed) var(--animation-ease);inset:0;inset:8px 8px 8px 8px;}/*!sc*/ .wLcyr[disabled],.wLcyr[aria-disabled='true'],fieldset[disabled] .wLcyr{cursor:not-allowed;opacity:0.3;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);}/*!sc*/ .wLcyr:hover::after{background-color:var(--background-highlight,#f5f5f5);inset:0;}/*!sc*/ .wLcyr[disabled]:hover::after,.wLcyr[aria-disabled='true']:hover::after{background-color:unset;}/*!sc*/ .wLcyr[disabled]:active::after,.wLcyr[aria-disabled='true']:active::after{background-color:unset;inset:unset;}/*!sc*/ data-styled.g29[id="Box__BoxComponent-sc-y4nds-0"]{content:"wLcyr,"}/*!sc*/ .MWEhk button,.MWEhk a,.MWEhk [role='button'],.MWEhk [role='link']{position:relative;z-index:1;}/*!sc*/ data-styled.g37[id="Areas__InteractiveArea-sc-1tea2mc-0"]{content:"MWEhk,"}/*!sc*/ .kLALqL{-webkit-column-gap:var(--encore-spacing-tighter,12px);column-gap:var(--encore-spacing-tighter,12px);-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}/*!sc*/ data-styled.g38[id="Areas__MainArea-sc-1tea2mc-1"]{content:"kLALqL,"}/*!sc*/ .cuoMqc{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:2px;-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;}/*!sc*/ data-styled.g39[id="Areas__Column-sc-1tea2mc-2"]{content:"cuoMqc,"}/*!sc*/ .hscyXl{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;row-gap:var(--encore-spacing-tighter-2,8px);}/*!sc*/ .hscyXl[disabled]{opacity:0.7;}/*!sc*/ data-styled.g41[id="Box-sc-1njtxi4-0"]{content:"hscyXl,"}/*!sc*/ .DjiIj{position:absolute;z-index:0;inset:0;cursor:pointer;}/*!sc*/ data-styled.g43[id="CardLink-sc-1ut6cns-0"]{content:"DjiIj,"}/*!sc*/ .gPhSUm{box-sizing:border-box;-webkit-tap-highlight-color:transparent;border:0;border-block-start:1px solid var(--decorative-subdued,#dedede);margin-block:var(--encore-spacing-looser,24px);}/*!sc*/ data-styled.g48[id="HorizontalRule__HorizontalRuleElement-sc-198gjx4-0"]{content:"gPhSUm,"}/*!sc*/ </style><link rel="stylesheet" href="https://open.spotifycdn.com/cdn/build/mobile-web-player/mwp-dialog-container.2094d032.css"/><link rel="stylesheet" href="https://open.spotifycdn.com/cdn/build/mobile-web-player/mwp-context-menu-container.feb66d55.css"/><link rel="stylesheet" href="https://open.spotifycdn.com/cdn/build/mobile-web-player/mwp-connect-view-container.f39a1c58.css"/><link rel="stylesheet" href="https://open.spotifycdn.com/cdn/build/mobile-web-player/mwp-now-playing-view.16ce6954.css"/><link rel="stylesheet" href="https://open.spotifycdn.com/cdn/build/mobile-web-player/mwp-home-page.916b3f8e.css"/><link rel="stylesheet" href="https://open.spotifycdn.com/cdn/build/mobile-web-player/mwp-artist-page.4a8c2112.css"/><link rel="stylesheet" href="https://open.spotifycdn.com/cdn/build/mobile-web-player/mobile-web-player.96045797.css"/><link rel="preconnect" href="https://apresolve.spotify.com" crossorigin="anonymous"/><link rel="preconnect" href="https://clienttoken.spotify.com" crossorigin="anonymous"/><link rel="preconnect" href="https://api-partner.spotify.com" crossorigin="anonymous"/><link rel="preconnect" href="https://spclient.wg.spotify.com" crossorigin="anonymous"/><link rel="preconnect" href="https://api.spotify.com" crossorigin="anonymous"/><link rel="preconnect" href="https://daily-mix.scdn.co" crossorigin="anonymous"/><link rel="preconnect" href="https://exp.wg.spotify.com" crossorigin="anonymous"/><link rel="preconnect" href="https://i.scdn.co" crossorigin="anonymous"/><link rel="preconnect" href="https://lineup-images.scdn.co" crossorigin="anonymous"/><link rel="preconnect" href="https://mosaic.scdn.co" crossorigin="anonymous"/><link rel="preconnect" href="https://open.spotifycdn.com" crossorigin="anonymous"/><link rel="preconnect" href="https://pixel-static.spotify.com" crossorigin="anonymous"/><link rel="preconnect" href="https://pixel.spotify.com" crossorigin="anonymous"/><link rel="preconnect" href="https://pl.scdn.co" crossorigin="anonymous"/><link rel="preconnect" href="https://open.spotifycdn.com" crossorigin="anonymous"/><link rel="preconnect" href="https://gae2-dealer.spotify.com" crossorigin="anonymous"/><link rel="preconnect" href="https://gae2-spclient.spotify.com" crossorigin="anonymous"/><link rel="preload" href="https://open.spotifycdn.com/cdn/generated-locales/mobile-web-player/en.ff9e13f7.json" data-translations-url-for-locale="en" as="fetch" crossorigin="anonymous" type="application/json"/><link rel="search" type="application/opensearchdescription+xml" title="Spotify" href="https://open.spotifycdn.com/cdn/generated/opensearch.4cd8879e.xml"/><script defer="" src="https://www.googleoptimize.com/optimize.js?id=GTM-W53X654"></script><script defer="" src="https://open.spotifycdn.com/cdn/js/gtm.ea4c34bc.js"></script><script defer="" src="https://open.spotifycdn.com/cdn/js/retargeting-pixels.5ab9cdc0.js"></script></head><body class="mobile-web-player"><script id="config" data-testid="config" type="application/json">{"appName":"web_player_prototype","market":"SG","locale":{"locale":"en","rtl":false,"textDirection":"ltr"},"isPremium":false,"correlationId":"5da1aea7c8b65026a3cc181a41ead5a7","isAnonymous":true,"gtmId":"GTM-PZHN3VD","optimizeId":"GTM-W53X654","pipResources":{"scripts":["https://open.spotifycdn.com/cdn/build/web-player/vendor~web-player.f97f7070.js","https://open.spotifycdn.com/cdn/build/web-player/pip-mini-player.82e7e6d1.js"],"styles":["https://open.spotifycdn.com/cdn/build/web-player/pip-mini-player.1db08a40.css"]},"retargetingPixels":null,"recaptchaWebPlayerFraudSiteKey":"6LfCVLAUAAAAALFwwRnnCJ12DalriUGbj8FW_J39"}</script><script id="session" data-testid="session" type="application/json">{"accessToken":"BQD8RKb1Pj_BlDPB_1rK0p_5fB1t0aCHU0qwIWjGQ1YTzLSef5uaxrK1O08Pxr8fQffnG42PUJAueT370rWk-AuqE20c_6RiyzWfuurl2AhORpA96E8","accessTokenExpirationTimestampMs":1732439106953,"isAnonymous":true,"clientId":"f6a40776580943a7bc5173125a1e8832"}</script><div id="main" data-ssr="1"><div class="encore-layout-themes"><div class="ufy3rNNsNBx6IOixSXEG"><div class="encore-dark-theme xXxkvFpB54Fne7ykRnXa" data-main-scrollable-node="true"><div class="Cv2QMWaKhio30Ly6ooMy"><div class="SAvutxFsWpINsq8pSOqb" style="--bottomMargin:0px"><!--$--><div data-testid="podcast-entity-view" class="E34FrewmewkuBM1IDQsg"><div class="M2zTPqWSULZAGKARgjXG" style="background:linear-gradient(#E0E8E8 0%, transparent 100%)"><div class="LTYHCckz80h0rAHEj0aQ OgFUAo4HM9zkORh6yYKs lBPLQvOs6NEAQQaTuYm9" data-testid="entity-header-top-section"><div class="cfggPp9bWTWmJHtaMuwE"><div data-testid="entity-image" style="opacity:1;width:56px;height:56px" class="_9oqBtpu3TVycIiibYRVw"><img aria-hidden="false" draggable="false" loading="eager" src="https://lite-images-i.scdn.co/image/ab67656300005f1f4462d22f4818e3051da7ce74" data-testid="entity-header-entity-image" alt="" class="mMx2LUixlnN_Fu45JpFB"/></div></div><div class="cfggPp9bWTWmJHtaMuwE"><div class="zJT83mTjBmPlNfEnuNYs" data-testid="entity-header-title-and-subtitle-section"><h1 class="encore-text encore-text-title-medium gj6rSoF7K4FohS2DJDEm" data-encore-id="text" data-testid="showTitle">66: Inside Bento - Serverless Jupyter Notebooks at Meta</h1><div class="encore-text encore-text-body-small sMT6JaxLhI2QLVSevX_3 fjP8GyQyM5IWQvTxWk6W" data-encore-id="text" data-testid="entity-header-entity-subtitle">Meta Tech Podcast</div></div></div></div><div class="kVj4O1X1hlTwIyajGjJb" data-testid="entity-bottom-section"><span><div class="qfYkuLpETFW3axnfMntO"><p class="encore-text encore-text-body-small _q93agegdE655O5zPz6l" data-encore-id="text">Aug 30</p><p class="encore-text encore-text-body-small _q93agegdE655O5zPz6l" data-encore-id="text" data-testid="episode-progress-not-played"><span class="UyzJidwrGk3awngSGIwv">44 min 20 sec</span></p></div></span><div class="encore-text encore-text-body-small jXbmfyIkvfBoDgVxAaDD" data-encore-id="text"><button class="Button-sc-1dqy6lx-0 bksmLQ" aria-label="Save to Your Library" data-encore-id="buttonTertiary"><span aria-hidden="true" class="IconWrapper__Wrapper-sc-16usrgb-0 hYdsxw"><svg data-encore-id="icon" role="img" aria-hidden="true" viewBox="0 0 24 24" class="Svg-sc-ytk21e-0 bneLcE"><path d='M11.999 3a9 9 0 1 0 0 18 9 9 0 0 0 0-18zm-11 9c0-6.075 4.925-11 11-11s11 4.925 11 11-4.925 11-11 11-11-4.925-11-11z'/><path d='M17.999 12a1 1 0 0 1-1 1h-4v4a1 1 0 1 1-2 0v-4h-4a1 1 0 1 1 0-2h4V7a1 1 0 1 1 2 0v4h4a1 1 0 0 1 1 1z'/></svg></span></button><button data-testid="entity-share-button" class="Button-sc-1dqy6lx-0 bksmLQ" aria-label="Share" data-encore-id="buttonTertiary"><span aria-hidden="true" class="IconWrapper__Wrapper-sc-16usrgb-0 hYdsxw"><svg data-encore-id="icon" role="img" aria-hidden="true" viewBox="0 0 24 24" class="Svg-sc-ytk21e-0 bneLcE"><path d='M18.5 4a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3zM15 5.5a3.5 3.5 0 1 1 1.006 2.455L9 12l7.006 4.045a3.5 3.5 0 1 1-.938 1.768l-6.67-3.85a3.5 3.5 0 1 1 0-3.924l6.67-3.852A3.513 3.513 0 0 1 15 5.5zm-9.5 5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3zm13 6.5a1.5 1.5 0 1 0-.001 3 1.5 1.5 0 0 0 .001-3z'/></svg></span></button><button data-testid="context-menu-action" class="Button-sc-1dqy6lx-0 bksmLQ" aria-label="More" data-encore-id="buttonTertiary"><span aria-hidden="true" class="IconWrapper__Wrapper-sc-16usrgb-0 hYdsxw"><svg data-encore-id="icon" role="img" aria-hidden="true" viewBox="0 0 24 24" class="Svg-sc-ytk21e-0 bneLcE"><path d='M10.5 4.5a1.5 1.5 0 1 0 3 0 1.5 1.5 0 0 0-3 0zm0 15a1.5 1.5 0 1 0 3 0 1.5 1.5 0 0 0-3 0zm0-7.5a1.5 1.5 0 1 0 3 0 1.5 1.5 0 0 0-3 0z'/></svg></span></button></div><div class="PbbAKgDSKqb_aeaogoiN"><div class="ilFQxSwAuKW7R9upfQxi"><button data-testid="play-button" aria-label="Play" data-encore-id="buttonPrimary" data-is-icon-only="true" class="Button-sc-qlcn5g-0 dlTJiR"><span class="ButtonInner-sc-14ud5tc-0 hKFGwn encore-bright-accent-set"><span aria-hidden="true" class="IconWrapper__Wrapper-sc-1hf1hjl-0 ivomLs"><svg data-encore-id="icon" role="img" aria-hidden="true" viewBox="0 0 24 24" class="Svg-sc-ytk21e-0 bneLcE"><path d='m7.05 3.606 13.49 7.788a.7.7 0 0 1 0 1.212L7.05 20.394A.7.7 0 0 1 6 19.788V4.212a.7.7 0 0 1 1.05-.606z'/></svg></span></span></button></div></div></div></div><div class="AXLhOsSjT3bowfjf42kK"><div><div data-testid="expandable-description"><div class="buqVKMpwHgGMDJFSl54R"><div class="encore-text encore-text-body-small Zbad_ytC5aqG3ZISd4Gw" data-encore-id="text"><span class="encore-text encore-text-body-small encore-internal-color-text-subdued G_f5DJd2sgHWeto5cwbi" data-encore-id="text">Bento is Meta’s internal distribution of Jupyter Notebooks, an open-source web-based computing platform. Host Pascal is joined by Steve who worked with his team on building many features on top of Jupyter, including scheduled notebooks, sharing with colleagues and running notebooks without a remote server component by leveraging Webassembly in the browser. Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/. Links</span></div> <div class="encore-text encore-text-body-small Zbad_ytC5aqG3ZISd4Gw" data-encore-id="text"><span class="encore-text encore-text-body-small encore-internal-color-text-subdued G_f5DJd2sgHWeto5cwbi" data-encore-id="text">Scheduling Jupyter Notebooks at Meta:</span><button class="Button-sc-1dqy6lx-0 kTFJuL encore-text-body-medium-bold" data-encore-id="buttonTertiary"><span class="encore-text encore-text-body-small-bold" data-encore-id="text">… <!-- -->see more</span></button></div></div></div><img class="kjxUv_MHNgEH5IARHdA0" src="https://lite-images-i.scdn.co/image/ab67656300005f1f4462d22f4818e3051da7ce74" alt="Podcast Episode" loading="lazy"/><a href="/show/1NlTm7OkZmcrOPfvlqlBMz"><button class="Button-sc-1dqy6lx-0 hRqQQR encore-text-body-medium-bold" data-encore-id="buttonTertiary">See all episodes<span aria-hidden="true" class="IconWrapper__Wrapper-sc-16usrgb-0 kUVYXR"><svg data-encore-id="icon" role="img" aria-hidden="true" viewBox="0 0 24 24" class="Svg-sc-ytk21e-0 zsGU"><path d='M8.043 2.793a1 1 0 0 0 0 1.414L15.836 12l-7.793 7.793a1 1 0 1 0 1.414 1.414L18.664 12 9.457 2.793a1 1 0 0 0-1.414 0z'/></svg></span></button></a><div data-testid="internal-link-recommender-shelf"><div class="JMgUTIyId0RuU9k6aQaz"><h2 class="encore-text encore-text-title-small" data-encore-id="text" dir="auto">More episodes like this</h2></div><div class="qirFczpKFgQDsNuuzLHP" data-testid="carousel-mwp"><div class="Box__BoxComponent-sc-y4nds-0 wLcyr Box-sc-1njtxi4-0 hscyXl" data-encore-id="card" role="group" aria-labelledby="card-title-6Q3jRmGVPQC7fWQxVuaFvP"><div class="CardLink-sc-1ut6cns-0 DjiIj"></div><div style="display:none" id="onClickHint6Q3jRmGVPQC7fWQxVuaFvP"></div><a draggable="false" href="/episode/6Q3jRmGVPQC7fWQxVuaFvP"><img alt="" style="min-inline-size:152px" data-encore-id="image" src="https://i.scdn.co/image/ab67656300005f1fda4bfc6d17ba4b7f66e6012a" class="Image-sc-1u215sg-3 kOChlU"/></a><div class="Areas__InteractiveArea-sc-1tea2mc-0 Areas__MainArea-sc-1tea2mc-1 MWEhk kLALqL"><div class="Areas__InteractiveArea-sc-1tea2mc-0 Areas__Column-sc-1tea2mc-2 MWEhk cuoMqc"><a draggable="false" href="/episode/6Q3jRmGVPQC7fWQxVuaFvP"><p class="encore-text encore-text-body-medium ListRowTitle__ListRowText-sc-1xe2if1-1 eFGzcP" data-encore-id="listRowTitle"><span class="ListRowTitle__LineClamp-sc-1xe2if1-0 lmgIvZ">839: Prisma ORM: Local First, Typed SQL Queries and Serverless with Søren Bramer Schmidt</span></p></a></div></div></div><div class="Box__BoxComponent-sc-y4nds-0 wLcyr Box-sc-1njtxi4-0 hscyXl" data-encore-id="card" role="group" aria-labelledby="card-title-0MYQDb8LSJFU31TfujiJ0y"><div class="CardLink-sc-1ut6cns-0 DjiIj"></div><div style="display:none" id="onClickHint0MYQDb8LSJFU31TfujiJ0y"></div><a draggable="false" href="/episode/0MYQDb8LSJFU31TfujiJ0y"><img alt="" style="min-inline-size:152px" data-encore-id="image" src="https://i.scdn.co/image/ab67656300005f1fda4bfc6d17ba4b7f66e6012a" class="Image-sc-1u215sg-3 kOChlU"/></a><div class="Areas__InteractiveArea-sc-1tea2mc-0 Areas__MainArea-sc-1tea2mc-1 MWEhk kLALqL"><div class="Areas__InteractiveArea-sc-1tea2mc-0 Areas__Column-sc-1tea2mc-2 MWEhk cuoMqc"><a draggable="false" href="/episode/0MYQDb8LSJFU31TfujiJ0y"><p class="encore-text encore-text-body-medium ListRowTitle__ListRowText-sc-1xe2if1-1 eFGzcP" data-encore-id="listRowTitle"><span class="ListRowTitle__LineClamp-sc-1xe2if1-0 lmgIvZ">833: Next Gen Fullstack React with TanStack</span></p></a></div></div></div><div class="Box__BoxComponent-sc-y4nds-0 wLcyr Box-sc-1njtxi4-0 hscyXl" data-encore-id="card" role="group" aria-labelledby="card-title-4c5aVB0r1DCd2ivMQjDckr"><div class="CardLink-sc-1ut6cns-0 DjiIj"></div><div style="display:none" id="onClickHint4c5aVB0r1DCd2ivMQjDckr"></div><a draggable="false" href="/episode/4c5aVB0r1DCd2ivMQjDckr"><img alt="" style="min-inline-size:152px" data-encore-id="image" src="https://i.scdn.co/image/ab67656300005f1fda4bfc6d17ba4b7f66e6012a" class="Image-sc-1u215sg-3 kOChlU"/></a><div class="Areas__InteractiveArea-sc-1tea2mc-0 Areas__MainArea-sc-1tea2mc-1 MWEhk kLALqL"><div class="Areas__InteractiveArea-sc-1tea2mc-0 Areas__Column-sc-1tea2mc-2 MWEhk cuoMqc"><a draggable="false" href="/episode/4c5aVB0r1DCd2ivMQjDckr"><p class="encore-text encore-text-body-medium ListRowTitle__ListRowText-sc-1xe2if1-1 eFGzcP" data-encore-id="listRowTitle"><span class="ListRowTitle__LineClamp-sc-1xe2if1-0 lmgIvZ">825: Syntax Assistant Desktop App</span></p></a></div></div></div><div class="Box__BoxComponent-sc-y4nds-0 wLcyr Box-sc-1njtxi4-0 hscyXl" data-encore-id="card" role="group" aria-labelledby="card-title-2et6OZGUs7JUunuyTjEibf"><div class="CardLink-sc-1ut6cns-0 DjiIj"></div><div style="display:none" id="onClickHint2et6OZGUs7JUunuyTjEibf"></div><a draggable="false" href="/episode/2et6OZGUs7JUunuyTjEibf"><img alt="" style="min-inline-size:152px" data-encore-id="image" src="https://i.scdn.co/image/ab67656300005f1f1fc31f4db2f49f5e65f2cbbd" class="Image-sc-1u215sg-3 kOChlU"/></a><div class="Areas__InteractiveArea-sc-1tea2mc-0 Areas__MainArea-sc-1tea2mc-1 MWEhk kLALqL"><div class="Areas__InteractiveArea-sc-1tea2mc-0 Areas__Column-sc-1tea2mc-2 MWEhk cuoMqc"><a draggable="false" href="/episode/2et6OZGUs7JUunuyTjEibf"><p class="encore-text encore-text-body-medium ListRowTitle__ListRowText-sc-1xe2if1-1 eFGzcP" data-encore-id="listRowTitle"><span class="ListRowTitle__LineClamp-sc-1xe2if1-0 lmgIvZ">Powering Up with Erik Jensen: An Introduction to EF Core Power Tools</span></p></a></div></div></div><div class="Box__BoxComponent-sc-y4nds-0 wLcyr Box-sc-1njtxi4-0 hscyXl" data-encore-id="card" role="group" aria-labelledby="card-title-5Q1MgJTa5u5zE4W2ptfUhU"><div class="CardLink-sc-1ut6cns-0 DjiIj"></div><div style="display:none" id="onClickHint5Q1MgJTa5u5zE4W2ptfUhU"></div><a draggable="false" href="/episode/5Q1MgJTa5u5zE4W2ptfUhU"><img alt="" style="min-inline-size:152px" data-encore-id="image" src="https://i.scdn.co/image/ab67656300005f1f918a699e5ba874506950674a" class="Image-sc-1u215sg-3 kOChlU"/></a><div class="Areas__InteractiveArea-sc-1tea2mc-0 Areas__MainArea-sc-1tea2mc-1 MWEhk kLALqL"><div class="Areas__InteractiveArea-sc-1tea2mc-0 Areas__Column-sc-1tea2mc-2 MWEhk cuoMqc"><a draggable="false" href="/episode/5Q1MgJTa5u5zE4W2ptfUhU"><p class="encore-text encore-text-body-medium ListRowTitle__ListRowText-sc-1xe2if1-1 eFGzcP" data-encore-id="listRowTitle"><span class="ListRowTitle__LineClamp-sc-1xe2if1-0 lmgIvZ">Inertia.js (with Joe Tannenbaum)</span></p></a></div></div></div><div class="Box__BoxComponent-sc-y4nds-0 wLcyr Box-sc-1njtxi4-0 hscyXl" data-encore-id="card" role="group" aria-labelledby="card-title-4pn3DcmsVQ4NrcQy7ZMSVN"><div class="CardLink-sc-1ut6cns-0 DjiIj"></div><div style="display:none" id="onClickHint4pn3DcmsVQ4NrcQy7ZMSVN"></div><a draggable="false" href="/episode/4pn3DcmsVQ4NrcQy7ZMSVN"><img alt="" style="min-inline-size:152px" data-encore-id="image" src="https://i.scdn.co/image/ab67656300005f1f55a0e3a8d814b243ca085913" class="Image-sc-1u215sg-3 kOChlU"/></a><div class="Areas__InteractiveArea-sc-1tea2mc-0 Areas__MainArea-sc-1tea2mc-1 MWEhk kLALqL"><div class="Areas__InteractiveArea-sc-1tea2mc-0 Areas__Column-sc-1tea2mc-2 MWEhk cuoMqc"><a draggable="false" href="/episode/4pn3DcmsVQ4NrcQy7ZMSVN"><p class="encore-text encore-text-body-medium ListRowTitle__ListRowText-sc-1xe2if1-1 eFGzcP" data-encore-id="listRowTitle"><span class="ListRowTitle__LineClamp-sc-1xe2if1-0 lmgIvZ">Building AI Systems on Postgres: An Inside Look at pgai Vectorizer</span></p></a></div></div></div></div></div></div></div><div class="iQxdxLc2HsEnJMZt0Us4"><hr class="HorizontalRule__HorizontalRuleElement-sc-198gjx4-0 gPhSUm bHqWsu7YPnOhoFVoWo1o" data-encore-id="horizontalRule"/></div></div><!--/$--></div><div class="LQ6Ss79CdgHw2ScSPflQ"></div></div></div></div><aside class="encore-dark-theme Yg_FlRTSnjxmfwyAvnFJ"><div></div></aside></div></div><script id="initial-state" type="text/plain">eyJzZXNzaW9uIjp7Im1lIjpudWxsLCJwcm9kdWN0Ijp7ImNvdW50cnkiOiJTRyIsImNhdGFsb2d1ZSI6InByZW1pdW0iLCJwcm9kdWN0IjoiUFJFTUlVTSIsIm9uLWRlbWFuZCI6IjEifSwibG9jYWxlIjoiZW4iLCJ0ZXh0RGlyZWN0aW9uYWxpdHkiOiJsdHIiLCJpc0Fub255bW91cyI6dHJ1ZSwiZmVhdHVyZXMiOnsiZW5hYmxlU2hvd3MiOnRydWUsImlzVHJhY2luZ0VuYWJsZWQiOmZhbHNlLCJ1cGdyYWRlQnV0dG9uIjoiY29udHJvbCIsIm13cCI6dHJ1ZSwiaXNNV1BFcnJvckNvZGVFbmFibGVkIjpmYWxzZSwiaXNNd3BSYWRpb0VudGl0eSI6dHJ1ZSwiaXNNV1BBbmRQbGF5YmFja0NhcGFibGUiOmZhbHNlLCJwcmVhdXRoUmVjYXB0Y2hhIjpmYWxzZSwiaXNFcXVhbGl6ZXJBQkVuYWJsZWQiOmZhbHNlLCJpc1BvZGNhc3RFbmFibGVkIjp0cnVlLCJlbmFibGVJMThuTG9jYWxlcyI6dHJ1ZSwiaXNJMThuQWRkaXRpb25hbFBhZ2VzRW5hYmxlZCI6ZmFsc2UsImlzSW50ZXJhY3Rpb25Mb2dnZXJFbmFibGVkIjp0cnVlLCJpc1JlaW52ZW50RnJlZUVuYWJsZWQiOmZhbHNlLCJpc0VudGl0eVJlcG9ydEVuYWJsZWQiOnRydWUsImlzQWxidW1SZXBvcnRFbmFibGVkIjpmYWxzZSwiaXNUcmFja1JlcG9ydEVuYWJsZWQiOmZhbHNlLCJpc1BvZGNhc3RTaG93UmVwb3J0RW5hYmxlZCI6ZmFsc2UsImlzUG9kY2FzdEVwaXNvZGVSZXBvcnRFbmFibGVkIjpmYWxzZX0sImNvdW50cnkiOiJTRyIsImJyb3dzZXJPUyI6ImFuZHJvaWQiLCJjYW5Hb0JhY2siOmZhbHNlLCJjYW5Hb0ZvcndhcmQiOmZhbHNlfSwiY29ubmVjdCI6eyJkZXZpY2UiOm51bGwsImRldmljZXMiOltdLCJtYW51YWxUcmFuc2ZlckRldmljZUlkIjpudWxsfSwiZW50aXRpZXMiOnsiaXRlbXMiOnsic3BvdGlmeTplcGlzb2RlOjBSdlRTRnpqQWxxSnpXOXR1Sndva2wiOnsiX190eXBlbmFtZSI6IkVwaXNvZGUiLCJhdWRpbyI6eyJpdGVtcyI6W3siZmlsZUlkIjoiMzQ5YzY2MGNjMmRmMTQ3NzAzZWY1ODZhYzdhYTM1N2FlYWRmMWJkMiIsImZvcm1hdCI6Ik1QNF8xMjhfRFVBTCIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3LzM0OWM2NjBjYzJkZjE0NzcwM2VmNTg2YWM3YWEzNTdhZWFkZjFiZDIifSx7ImZpbGVJZCI6IjBiNGY0NTdjMzM3YzEwNDUzNTA5MDhlYzkzMDllZjY5NWI0ZGNhMjEiLCJmb3JtYXQiOiJNUDRfMTI4IiwidXJsIjoiaHR0cHM6Ly9wLnNjZG4uY28vbXAzLXByZXZpZXcvMGI0ZjQ1N2MzMzdjMTA0NTM1MDkwOGVjOTMwOWVmNjk1YjRkY2EyMSJ9LHsiZmlsZUlkIjoiYjY2MzZkYmUwZjE1NzFkZDAyMTJjMDJmODAzNGUzYjEzZWJkNDY5MiIsImZvcm1hdCI6Ik9HR19WT1JCSVNfOTYiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy9iNjYzNmRiZTBmMTU3MWRkMDIxMmMwMmY4MDM0ZTNiMTNlYmQ0NjkyIn0seyJmaWxlSWQiOiJmY2ExZTNiNzU1MzM3MWE5ZDIzMTM1OWY1MWI0MGIzMDEzMmIzMTZlIiwiZm9ybWF0IjoiQUFDXzI0IiwidXJsIjoiaHR0cHM6Ly9wLnNjZG4uY28vbXAzLXByZXZpZXcvZmNhMWUzYjc1NTMzNzFhOWQyMzEzNTlmNTFiNDBiMzAxMzJiMzE2ZSJ9LHsiZmlsZUlkIjoiODk0MjQxNzc4YzQwMGJjOTJiNzIyMDBhMmU1ZTJiOTNhOTg1OGVmZCIsImZvcm1hdCI6Ik1QNF8xMjhfQ0JDUyIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3Lzg5NDI0MTc3OGM0MDBiYzkyYjcyMjAwYTJlNWUyYjkzYTk4NThlZmQifV19LCJhdWRpb1ByZXZpZXciOnsiZm9ybWF0IjoiTVAzXzk2IiwidXJsIjoiaHR0cHM6Ly9wb2R6LWNvbnRlbnQuc3BvdGlmeWNkbi5jb20vYXVkaW8vY2xpcHMvMU9vRmxKeThzN2VaMzNTQUFDRG5pSS9jbGlwXzEwOTA0NTBfMTE1MzcwMC5tcDMifSwiYXZhaWxhYmxlTWFya2V0cyI6eyJpdGVtcyI6W3siY291bnRyeUNvZGUiOiJBRCJ9LHsiY291bnRyeUNvZGUiOiJBRSJ9LHsiY291bnRyeUNvZGUiOiJBRyJ9LHsiY291bnRyeUNvZGUiOiJBTCJ9LHsiY291bnRyeUNvZGUiOiJBTSJ9LHsiY291bnRyeUNvZGUiOiJBTyJ9LHsiY291bnRyeUNvZGUiOiJBUiJ9LHsiY291bnRyeUNvZGUiOiJBVCJ9LHsiY291bnRyeUNvZGUiOiJBVSJ9LHsiY291bnRyeUNvZGUiOiJBWiJ9LHsiY291bnRyeUNvZGUiOiJCQSJ9LHsiY291bnRyeUNvZGUiOiJCQiJ9LHsiY291bnRyeUNvZGUiOiJCRSJ9LHsiY291bnRyeUNvZGUiOiJCRiJ9LHsiY291bnRyeUNvZGUiOiJCRyJ9LHsiY291bnRyeUNvZGUiOiJCSCJ9LHsiY291bnRyeUNvZGUiOiJCSSJ9LHsiY291bnRyeUNvZGUiOiJCSiJ9LHsiY291bnRyeUNvZGUiOiJCTiJ9LHsiY291bnRyeUNvZGUiOiJCTyJ9LHsiY291bnRyeUNvZGUiOiJCUiJ9LHsiY291bnRyeUNvZGUiOiJCUyJ9LHsiY291bnRyeUNvZGUiOiJCVCJ9LHsiY291bnRyeUNvZGUiOiJCVyJ9LHsiY291bnRyeUNvZGUiOiJCWiJ9LHsiY291bnRyeUNvZGUiOiJDQSJ9LHsiY291bnRyeUNvZGUiOiJDSCJ9LHsiY291bnRyeUNvZGUiOiJDSSJ9LHsiY291bnRyeUNvZGUiOiJDTCJ9LHsiY291bnRyeUNvZGUiOiJDTSJ9LHsiY291bnRyeUNvZGUiOiJDTyJ9LHsiY291bnRyeUNvZGUiOiJDUiJ9LHsiY291bnRyeUNvZGUiOiJDViJ9LHsiY291bnRyeUNvZGUiOiJDVyJ9LHsiY291bnRyeUNvZGUiOiJDWSJ9LHsiY291bnRyeUNvZGUiOiJDWiJ9LHsiY291bnRyeUNvZGUiOiJERSJ9LHsiY291bnRyeUNvZGUiOiJESiJ9LHsiY291bnRyeUNvZGUiOiJESyJ9LHsiY291bnRyeUNvZGUiOiJETSJ9LHsiY291bnRyeUNvZGUiOiJETyJ9LHsiY291bnRyeUNvZGUiOiJEWiJ9LHsiY291bnRyeUNvZGUiOiJFQyJ9LHsiY291bnRyeUNvZGUiOiJFRSJ9LHsiY291bnRyeUNvZGUiOiJFRyJ9LHsiY291bnRyeUNvZGUiOiJFUyJ9LHsiY291bnRyeUNvZGUiOiJGSSJ9LHsiY291bnRyeUNvZGUiOiJGSiJ9LHsiY291bnRyeUNvZGUiOiJGTSJ9LHsiY291bnRyeUNvZGUiOiJGUiJ9LHsiY291bnRyeUNvZGUiOiJHQSJ9LHsiY291bnRyeUNvZGUiOiJHQiJ9LHsiY291bnRyeUNvZGUiOiJHRCJ9LHsiY291bnRyeUNvZGUiOiJHRSJ9LHsiY291bnRyeUNvZGUiOiJHSCJ9LHsiY291bnRyeUNvZGUiOiJHTSJ9LHsiY291bnRyeUNvZGUiOiJHTiJ9LHsiY291bnRyeUNvZGUiOiJHUSJ9LHsiY291bnRyeUNvZGUiOiJHUiJ9LHsiY291bnRyeUNvZGUiOiJHVCJ9LHsiY291bnRyeUNvZGUiOiJHVyJ9LHsiY291bnRyeUNvZGUiOiJHWSJ9LHsiY291bnRyeUNvZGUiOiJISyJ9LHsiY291bnRyeUNvZGUiOiJITiJ9LHsiY291bnRyeUNvZGUiOiJIUiJ9LHsiY291bnRyeUNvZGUiOiJIVCJ9LHsiY291bnRyeUNvZGUiOiJIVSJ9LHsiY291bnRyeUNvZGUiOiJJRCJ9LHsiY291bnRyeUNvZGUiOiJJRSJ9LHsiY291bnRyeUNvZGUiOiJJTCJ9LHsiY291bnRyeUNvZGUiOiJJTiJ9LHsiY291bnRyeUNvZGUiOiJJUyJ9LHsiY291bnRyeUNvZGUiOiJJVCJ9LHsiY291bnRyeUNvZGUiOiJKTSJ9LHsiY291bnRyeUNvZGUiOiJKTyJ9LHsiY291bnRyeUNvZGUiOiJKUCJ9LHsiY291bnRyeUNvZGUiOiJLRSJ9LHsiY291bnRyeUNvZGUiOiJLSCJ9LHsiY291bnRyeUNvZGUiOiJLSSJ9LHsiY291bnRyeUNvZGUiOiJLTSJ9LHsiY291bnRyeUNvZGUiOiJLTiJ9LHsiY291bnRyeUNvZGUiOiJLUiJ9LHsiY291bnRyeUNvZGUiOiJLVyJ9LHsiY291bnRyeUNvZGUiOiJMQSJ9LHsiY291bnRyeUNvZGUiOiJMQiJ9LHsiY291bnRyeUNvZGUiOiJMQyJ9LHsiY291bnRyeUNvZGUiOiJMSSJ9LHsiY291bnRyeUNvZGUiOiJMUiJ9LHsiY291bnRyeUNvZGUiOiJMUyJ9LHsiY291bnRyeUNvZGUiOiJMVCJ9LHsiY291bnRyeUNvZGUiOiJMVSJ9LHsiY291bnRyeUNvZGUiOiJMViJ9LHsiY291bnRyeUNvZGUiOiJNQSJ9LHsiY291bnRyeUNvZGUiOiJNQyJ9LHsiY291bnRyeUNvZGUiOiJNRSJ9LHsiY291bnRyeUNvZGUiOiJNRyJ9LHsiY291bnRyeUNvZGUiOiJNSCJ9LHsiY291bnRyeUNvZGUiOiJNSyJ9LHsiY291bnRyeUNvZGUiOiJNTCJ9LHsiY291bnRyeUNvZGUiOiJNTiJ9LHsiY291bnRyeUNvZGUiOiJNTyJ9LHsiY291bnRyeUNvZGUiOiJNUiJ9LHsiY291bnRyeUNvZGUiOiJNVCJ9LHsiY291bnRyeUNvZGUiOiJNVSJ9LHsiY291bnRyeUNvZGUiOiJNViJ9LHsiY291bnRyeUNvZGUiOiJNVyJ9LHsiY291bnRyeUNvZGUiOiJNWCJ9LHsiY291bnRyeUNvZGUiOiJNWSJ9LHsiY291bnRyeUNvZGUiOiJNWiJ9LHsiY291bnRyeUNvZGUiOiJOQSJ9LHsiY291bnRyeUNvZGUiOiJORSJ9LHsiY291bnRyeUNvZGUiOiJORyJ9LHsiY291bnRyeUNvZGUiOiJOSSJ9LHsiY291bnRyeUNvZGUiOiJOTCJ9LHsiY291bnRyeUNvZGUiOiJOTyJ9LHsiY291bnRyeUNvZGUiOiJOUCJ9LHsiY291bnRyeUNvZGUiOiJOUiJ9LHsiY291bnRyeUNvZGUiOiJOWiJ9LHsiY291bnRyeUNvZGUiOiJPTSJ9LHsiY291bnRyeUNvZGUiOiJQQSJ9LHsiY291bnRyeUNvZGUiOiJQRSJ9LHsiY291bnRyeUNvZGUiOiJQRyJ9LHsiY291bnRyeUNvZGUiOiJQSCJ9LHsiY291bnRyeUNvZGUiOiJQTCJ9LHsiY291bnRyeUNvZGUiOiJQUiJ9LHsiY291bnRyeUNvZGUiOiJQUyJ9LHsiY291bnRyeUNvZGUiOiJQVCJ9LHsiY291bnRyeUNvZGUiOiJQVyJ9LHsiY291bnRyeUNvZGUiOiJQWSJ9LHsiY291bnRyeUNvZGUiOiJRQSJ9LHsiY291bnRyeUNvZGUiOiJSTyJ9LHsiY291bnRyeUNvZGUiOiJSUyJ9LHsiY291bnRyeUNvZGUiOiJSVyJ9LHsiY291bnRyeUNvZGUiOiJTQSJ9LHsiY291bnRyeUNvZGUiOiJTQiJ9LHsiY291bnRyeUNvZGUiOiJTQyJ9LHsiY291bnRyeUNvZGUiOiJTRSJ9LHsiY291bnRyeUNvZGUiOiJTRyJ9LHsiY291bnRyeUNvZGUiOiJTSSJ9LHsiY291bnRyeUNvZGUiOiJTSyJ9LHsiY291bnRyeUNvZGUiOiJTTCJ9LHsiY291bnRyeUNvZGUiOiJTTSJ9LHsiY291bnRyeUNvZGUiOiJTTiJ9LHsiY291bnRyeUNvZGUiOiJTUiJ9LHsiY291bnRyeUNvZGUiOiJTVCJ9LHsiY291bnRyeUNvZGUiOiJTViJ9LHsiY291bnRyeUNvZGUiOiJTWiJ9LHsiY291bnRyeUNvZGUiOiJURCJ9LHsiY291bnRyeUNvZGUiOiJURyJ9LHsiY291bnRyeUNvZGUiOiJUSCJ9LHsiY291bnRyeUNvZGUiOiJUTCJ9LHsiY291bnRyeUNvZGUiOiJUTiJ9LHsiY291bnRyeUNvZGUiOiJUTyJ9LHsiY291bnRyeUNvZGUiOiJUUiJ9LHsiY291bnRyeUNvZGUiOiJUVCJ9LHsiY291bnRyeUNvZGUiOiJUViJ9LHsiY291bnRyeUNvZGUiOiJUVyJ9LHsiY291bnRyeUNvZGUiOiJUWiJ9LHsiY291bnRyeUNvZGUiOiJVQSJ9LHsiY291bnRyeUNvZGUiOiJVUyJ9LHsiY291bnRyeUNvZGUiOiJVWSJ9LHsiY291bnRyeUNvZGUiOiJVWiJ9LHsiY291bnRyeUNvZGUiOiJWQyJ9LHsiY291bnRyeUNvZGUiOiJWTiJ9LHsiY291bnRyeUNvZGUiOiJWVSJ9LHsiY291bnRyeUNvZGUiOiJXUyJ9LHsiY291bnRyeUNvZGUiOiJYSyJ9LHsiY291bnRyeUNvZGUiOiJaQSJ9LHsiY291bnRyeUNvZGUiOiJaTSJ9LHsiY291bnRyeUNvZGUiOiJaVyJ9XX0sImNvbnRlbnRJbmZvcm1hdGlvbiI6bnVsbCwiY29udGVudFJhdGluZyI6eyJsYWJlbCI6Ik5PTkUifSwiY292ZXJBcnQiOnsiZXh0cmFjdGVkQ29sb3JzIjp7ImNvbG9yTGlnaHQiOnsiYmx1ZSI6MjMyLCJncmVlbiI6MjMyLCJoZXgiOiIjRTBFOEU4IiwicmVkIjoyMjR9fSwic291cmNlcyI6W3siaGVpZ2h0Ijo2NCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwZjY4ZDQ0NjJkMjJmNDgxOGUzMDUxZGE3Y2U3NCIsIndpZHRoIjo2NH0seyJoZWlnaHQiOjMwMCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwNWYxZjQ0NjJkMjJmNDgxOGUzMDUxZGE3Y2U3NCIsIndpZHRoIjozMDB9LHsiaGVpZ2h0Ijo2NDAsInVybCI6Imh0dHBzOi8vaS5zY2RuLmNvL2ltYWdlL2FiNjc2NTYzMDAwMGJhOGE0NDYyZDIyZjQ4MThlMzA1MWRhN2NlNzQiLCJ3aWR0aCI6NjQwfV19LCJkZXNjcmlwdGlvbiI6IkJlbnRvIGlzIE1ldGHigJlzIGludGVybmFsIGRpc3RyaWJ1dGlvbiBvZiBKdXB5dGVyIE5vdGVib29rcywgYW4gb3Blbi1zb3VyY2Ugd2ViLWJhc2VkIGNvbXB1dGluZyBwbGF0Zm9ybS4gSG9zdCBQYXNjYWwgaXMgam9pbmVkIGJ5IFN0ZXZlIHdobyB3b3JrZWQgd2l0aCBoaXMgdGVhbSBvbiBidWlsZGluZyBtYW55IGZlYXR1cmVzIG9uIHRvcCBvZiBKdXB5dGVyLCBpbmNsdWRpbmcgc2NoZWR1bGVkIG5vdGVib29rcywgc2hhcmluZyB3aXRoIGNvbGxlYWd1ZXMgYW5kIHJ1bm5pbmcgbm90ZWJvb2tzIHdpdGhvdXQgYSByZW1vdGUgc2VydmVyIGNvbXBvbmVudCBieSBsZXZlcmFnaW5nIFdlYmFzc2VtYmx5IGluIHRoZSBicm93c2VyLiBHb3QgZmVlZGJhY2s/IFNlbmQgaXQgdG8gdXMgb24gVGhyZWFkcyAoaHR0cHM6Ly90aHJlYWRzLm5ldC9AbWV0YXRlY2hwb2QpLCBUd2l0dGVyIChodHRwczovL3R3aXR0ZXIuY29tL21ldGF0ZWNocG9kKSwgSW5zdGFncmFtIChodHRwczovL2luc3RhZ3JhbS5jb20vbWV0YXRlY2hwb2QpIGFuZCBkb27igJl0IGZvcmdldCB0byBmb2xsb3cgb3VyIGhvc3QgQHBhc3N5IChodHRwczovL3R3aXR0ZXIuY29tL3Bhc3N5LCBodHRwczovL21hc3RvZG9uLnNvY2lhbC9AcGFzc3ksIGFuZCBodHRwczovL3RocmVhZHMubmV0L0BwYXNzeV8pLiBGYW5jeSB3b3JraW5nIHdpdGggdXM/IENoZWNrIG91dCBodHRwczovL3d3dy5tZXRhY2FyZWVycy5jb20vLiBMaW5rcyAgIFNjaGVkdWxpbmcgSnVweXRlciBOb3RlYm9va3MgYXQgTWV0YTogIGh0dHBzOi8vZW5naW5lZXJpbmcuZmIuY29tLzIwMjMvMDgvMjkvc2VjdXJpdHkvc2NoZWR1bGluZy1qdXB5dGVyLW5vdGVib29rcy1tZXRhLyAgIFNlcnZlcmxlc3MgSnVweXRlciBOb3RlYm9va3MgYXQgTWV0YTogIGh0dHBzOi8vZW5naW5lZXJpbmcuZmIuY29tLzIwMjQvMDYvMTAvZGF0YS1pbmZyYXN0cnVjdHVyZS9zZXJ2ZXJsZXNzLWp1cHl0ZXItbm90ZWJvb2tzLWJlbnRvLW1ldGEvICAgSnVweXRlciBOb3RlYm9va3M6IGh0dHBzOi8vanVweXRlci5vcmcvwqAgICBUaW1lc3RhbXBzICAgSW50cm8gMDowNiAgIFdobyBpcyBTdGV2ZT8gMTo0OSAgIFdoYXQgYXJlIEp1cHl0ZXIgYW5kIEJlbnRvPyAyOjQ4ICAgV2hvIGlzIEJlbnRvIGZvcj8gMzo0MCAgIEludGVybmFsLW9ubHkgQmVudG8gZmVhdHVyZXMgNDo0MiAgIFNjaGVkdWxlZCBub3RlYm9va3MgMTE6MzkgICBJbnRlZ3JhdGluZyB3aXRoIGV4aXN0aW5nIGJhdGNoIGpvYnMgMTc6MTAgICBUaGUgY2FzZSBmb3Igc2VydmVybGVzcyBub3RlYm9va3MgMjA6NTkgICBFbnRlciB3YXNtIDI0OjI5ICAgVXBncmFkZSBwYXRocyBmcm9tIHNlcnZlcmxlc3MgdG8gc2VydmVyIDI2OjI5ICAgQnJpbmdpbmcgbW9yZSBQeXRob24gbGlicmFyaWVzIHRvIHRoZSBicm93c2VyIDMwOjIxICAgQWRkaW5nIG1hZ2ljayhzKSAzMTo1MiAgIERhdGFGcmFtZSBtYWdpYyBhbmQgQUkgMzY6NDEgICBXaGF0J3MgbmV4dD8gMzg6MjkgICBPdXRybyA0MzoxNyAgIiwiZHVyYXRpb24iOnsidG90YWxNaWxsaXNlY29uZHMiOjI2NjA3MDJ9LCJodG1sRGVzY3JpcHRpb24iOiI8cD5CZW50byBpcyBNZXRh4oCZcyBpbnRlcm5hbCBkaXN0cmlidXRpb24gb2YgSnVweXRlciBOb3RlYm9va3MsIGFuIG9wZW4tc291cmNlIHdlYi1iYXNlZCBjb21wdXRpbmcgcGxhdGZvcm0uIEhvc3QgUGFzY2FsIGlzIGpvaW5lZCBieSBTdGV2ZSB3aG8gd29ya2VkIHdpdGggaGlzIHRlYW0gb24gYnVpbGRpbmcgbWFueSBmZWF0dXJlcyBvbiB0b3Agb2YgSnVweXRlciwgaW5jbHVkaW5nIHNjaGVkdWxlZCBub3RlYm9va3MsIHNoYXJpbmcgd2l0aCBjb2xsZWFndWVzIGFuZCBydW5uaW5nIG5vdGVib29rcyB3aXRob3V0IGEgcmVtb3RlIHNlcnZlciBjb21wb25lbnQgYnkgbGV2ZXJhZ2luZyBXZWJhc3NlbWJseSBpbiB0aGUgYnJvd3Nlci48L3A+IDxwPkdvdCBmZWVkYmFjaz8gU2VuZCBpdCB0byB1cyBvbiBUaHJlYWRzICg8YSBocmVmPVwiaHR0cHM6Ly90aHJlYWRzLm5ldC8mIzY0O21ldGF0ZWNocG9kXCIgcmVsPVwibm9mb2xsb3dcIj5odHRwczovL3RocmVhZHMubmV0LyYjNjQ7bWV0YXRlY2hwb2Q8L2E+KSwgVHdpdHRlciAoPGEgaHJlZj1cImh0dHBzOi8vdHdpdHRlci5jb20vbWV0YXRlY2hwb2RcIiByZWw9XCJub2ZvbGxvd1wiPmh0dHBzOi8vdHdpdHRlci5jb20vbWV0YXRlY2hwb2Q8L2E+KSwgSW5zdGFncmFtICg8YSBocmVmPVwiaHR0cHM6Ly9pbnN0YWdyYW0uY29tL21ldGF0ZWNocG9kXCIgcmVsPVwibm9mb2xsb3dcIj5odHRwczovL2luc3RhZ3JhbS5jb20vbWV0YXRlY2hwb2Q8L2E+KSBhbmQgZG9u4oCZdCBmb3JnZXQgdG8gZm9sbG93IG91ciBob3N0ICYjNjQ7cGFzc3kgKDxhIGhyZWY9XCJodHRwczovL3R3aXR0ZXIuY29tL3Bhc3N5XCIgcmVsPVwibm9mb2xsb3dcIj5odHRwczovL3R3aXR0ZXIuY29tL3Bhc3N5PC9hPiwgPGEgaHJlZj1cImh0dHBzOi8vbWFzdG9kb24uc29jaWFsLyYjNjQ7cGFzc3lcIiByZWw9XCJub2ZvbGxvd1wiPmh0dHBzOi8vbWFzdG9kb24uc29jaWFsLyYjNjQ7cGFzc3k8L2E+LCBhbmQgPGEgaHJlZj1cImh0dHBzOi8vdGhyZWFkcy5uZXQvJiM2NDtwYXNzeV9cIiByZWw9XCJub2ZvbGxvd1wiPmh0dHBzOi8vdGhyZWFkcy5uZXQvJiM2NDtwYXNzeV88L2E+KS4gRmFuY3kgd29ya2luZyB3aXRoIHVzPyBDaGVjayBvdXQgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm1ldGFjYXJlZXJzLmNvbS9cIiByZWw9XCJub2ZvbGxvd1wiPmh0dHBzOi8vd3d3Lm1ldGFjYXJlZXJzLmNvbS88L2E+LjwvcD4gPHA+TGlua3M8L3A+IDx1bD48bGk+IDxwPlNjaGVkdWxpbmcgSnVweXRlciBOb3RlYm9va3MgYXQgTWV0YTogPGEgaHJlZj1cImh0dHBzOi8vZW5naW5lZXJpbmcuZmIuY29tLzIwMjMvMDgvMjkvc2VjdXJpdHkvc2NoZWR1bGluZy1qdXB5dGVyLW5vdGVib29rcy1tZXRhL1wiIHJlbD1cIm5vZm9sbG93XCI+IGh0dHBzOi8vZW5naW5lZXJpbmcuZmIuY29tLzIwMjMvMDgvMjkvc2VjdXJpdHkvc2NoZWR1bGluZy1qdXB5dGVyLW5vdGVib29rcy1tZXRhLzwvYT48L3A+IDwvbGk+PGxpPiA8cD5TZXJ2ZXJsZXNzIEp1cHl0ZXIgTm90ZWJvb2tzIGF0IE1ldGE6IDxhIGhyZWY9XCJodHRwczovL2VuZ2luZWVyaW5nLmZiLmNvbS8yMDI0LzA2LzEwL2RhdGEtaW5mcmFzdHJ1Y3R1cmUvc2VydmVybGVzcy1qdXB5dGVyLW5vdGVib29rcy1iZW50by1tZXRhL1wiIHJlbD1cIm5vZm9sbG93XCI+IGh0dHBzOi8vZW5naW5lZXJpbmcuZmIuY29tLzIwMjQvMDYvMTAvZGF0YS1pbmZyYXN0cnVjdHVyZS9zZXJ2ZXJsZXNzLWp1cHl0ZXItbm90ZWJvb2tzLWJlbnRvLW1ldGEvPC9hPjwvcD4gPC9saT48bGk+IDxwPkp1cHl0ZXIgTm90ZWJvb2tzOiA8YSBocmVmPVwiaHR0cHM6Ly9qdXB5dGVyLm9yZy9cIiByZWw9XCJub2ZvbGxvd1wiPmh0dHBzOi8vanVweXRlci5vcmcvPC9hPsKgPC9wPiA8L2xpPjwvdWw+IDxwPlRpbWVzdGFtcHM8L3A+IDx1bD48bGk+IDxwPkludHJvIDA6MDY8L3A+IDwvbGk+PGxpPiA8cD5XaG8gaXMgU3RldmU/IDE6NDk8L3A+IDwvbGk+PGxpPiA8cD5XaGF0IGFyZSBKdXB5dGVyIGFuZCBCZW50bz8gMjo0ODwvcD4gPC9saT48bGk+IDxwPldobyBpcyBCZW50byBmb3I/IDM6NDA8L3A+IDwvbGk+PGxpPiA8cD5JbnRlcm5hbC1vbmx5IEJlbnRvIGZlYXR1cmVzIDQ6NDI8L3A+IDwvbGk+PGxpPiA8cD5TY2hlZHVsZWQgbm90ZWJvb2tzIDExOjM5PC9wPiA8L2xpPjxsaT4gPHA+SW50ZWdyYXRpbmcgd2l0aCBleGlzdGluZyBiYXRjaCBqb2JzIDE3OjEwPC9wPiA8L2xpPjxsaT4gPHA+VGhlIGNhc2UgZm9yIHNlcnZlcmxlc3Mgbm90ZWJvb2tzIDIwOjU5PC9wPiA8L2xpPjxsaT4gPHA+RW50ZXIgd2FzbSAyNDoyOTwvcD4gPC9saT48bGk+IDxwPlVwZ3JhZGUgcGF0aHMgZnJvbSBzZXJ2ZXJsZXNzIHRvIHNlcnZlciAyNjoyOTwvcD4gPC9saT48bGk+IDxwPkJyaW5naW5nIG1vcmUgUHl0aG9uIGxpYnJhcmllcyB0byB0aGUgYnJvd3NlciAzMDoyMTwvcD4gPC9saT48bGk+IDxwPkFkZGluZyBtYWdpY2socykgMzE6NTI8L3A+IDwvbGk+PGxpPiA8cD5EYXRhRnJhbWUgbWFnaWMgYW5kIEFJIDM2OjQxPC9wPiA8L2xpPjxsaT4gPHA+V2hhdCYjMzk7cyBuZXh0PyAzODoyOTwvcD4gPC9saT48bGk+IDxwPk91dHJvIDQzOjE3PC9wPiA8L2xpPjwvdWw+IiwiaWQiOiIwUnZUU0Z6akFscUp6Vzl0dUp3b2tsIiwibGFuZ3VhZ2UiOnsiY29kZSI6ImVuIn0sIm1lZGlhVHlwZXMiOlsiQVVESU8iXSwibmFtZSI6IjY2OiBJbnNpZGUgQmVudG8gLSBTZXJ2ZXJsZXNzIEp1cHl0ZXIgTm90ZWJvb2tzIGF0IE1ldGEiLCJwbGF5YWJpbGl0eSI6eyJwbGF5YWJsZSI6dHJ1ZSwicmVhc29uIjoiUExBWUFCTEUifSwicGxheWVkU3RhdGUiOnsicGxheVBvc2l0aW9uTWlsbGlzZWNvbmRzIjowLCJzdGF0ZSI6Ik5PVF9TVEFSVEVEIn0sInNob3dPckF1ZGlvYm9vayI6eyJfX3R5cGVuYW1lIjoiUG9kY2FzdFJlc3BvbnNlV3JhcHBlciIsImRhdGEiOnsiX190eXBlbmFtZSI6IlBvZGNhc3QiLCJhY2Nlc3NJbmZvIjpudWxsLCJjb250ZW50UmF0aW5nIjp7ImxhYmVsIjoiRVhQTElDSVQifSwiY292ZXJBcnQiOnsic291cmNlcyI6W3siaGVpZ2h0Ijo2NCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwZjY4ZDUxMGMwMTc2YWRjNGYxNTRhYWMxNDY3YyIsIndpZHRoIjo2NH0seyJoZWlnaHQiOjMwMCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwNWYxZjUxMGMwMTc2YWRjNGYxNTRhYWMxNDY3YyIsIndpZHRoIjozMDB9LHsiaGVpZ2h0Ijo2NDAsInVybCI6Imh0dHBzOi8vaS5zY2RuLmNvL2ltYWdlL2FiNjc2NTYzMDAwMGJhOGE1MTBjMDE3NmFkYzRmMTU0YWFjMTQ2N2MiLCJ3aWR0aCI6NjQwfV19LCJkZXNjcmlwdGlvbiI6IkluIGFkZGl0aW9uIHRvIHJlbWFpbmluZyBhY3RpdmUgaW4gdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBhbmQgY29uZmVyZW5jZSBjaXJjdWl0LCB0aGlzIHBvZGNhc3Qgb2ZmZXJzIGFub3RoZXIgY2hhbm5lbCB0aGF0IGFsbG93cyB1cyB0byBoaWdobGlnaHQgdGhlIHRlY2huaWNhbCB3b3JrIG9mIG91ciBlbmdpbmVlcnMgd2hvIHdpbGwgZGlzY3VzcyBldmVyeXRoaW5nIGZyb20gbG93LWxldmVsIGZyYW1ld29ya3MgdG8gZW5kLXVzZXIgZmVhdHVyZXMuIFRocm91Z2hvdXQgdGhlIHBvZGNhc3QsIHR3byBGYWNlYm9vayBlbmdpbmVlcnMsIEVtaWwgYW5kIFBhc2NhbCwgd2lsbCBpbnRlcnZpZXcgbW9iaWxlIGRldmVsb3BlcnMgaW4gdGhlIGNvbXBhbnkuIiwiaWQiOiIxTmxUbTdPa1ptY3JPUGZ2bHFsQk16IiwibWVkaWFUeXBlIjoiQVVESU8iLCJuYW1lIjoiTWV0YSBUZWNoIFBvZGNhc3QiLCJwbGF5YWJpbGl0eSI6eyJwbGF5YWJsZSI6dHJ1ZSwicmVhc29uIjoiUExBWUFCTEUifSwicHVibGlzaGVyIjp7Im5hbWUiOiJNZXRhIn0sInNhdmVkIjpmYWxzZSwic2hvd1R5cGVzIjpbXSwidHJhaWxlclYyIjp7ImRhdGEiOnsiYXVkaW8iOnsiaXRlbXMiOlt7InVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3L2E3NzU5OTVjZWQ2ZDUyOWM1MmE3NThhM2JhNTA1NzVkMmUwOTQ3OWEifSx7InVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3LzUyNWU5M2ViYTlhYTNlM2MyMjNkMGNhNTgwOTdjYTFlOWI4NGI1MDEifSx7InVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3LzAzMjVkYzMwZTczZWY4ZjExNzcyYTM5ZjAxM2ViMTc4MmE1ODNiOTAifSx7InVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3LzZkMWMzOWJmYTRiZTc0NWNhMmIzM2Y3M2RhMzMyYzQyOWRlYTdlOTIifSx7InVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3LzcxM2ExZWI3ZDg5MWFhOWVlODcwMWI1NmI4ZWJkZGM0Yjk2NzRiNDMifV19LCJhdWRpb1ByZXZpZXciOnsidXJsIjoiaHR0cHM6Ly9wb2R6LWNvbnRlbnQuc3BvdGlmeWNkbi5jb20vYXVkaW8vY2xpcHMvN0dTVzJGeXRsN1o3NnM5OHl0aHBFRi9jbGlwXzI2MTUyXzc1MDU3Lm1wMyJ9LCJjb250ZW50UmF0aW5nIjp7ImxhYmVsIjoiTk9ORSJ9LCJkdXJhdGlvbiI6eyJ0b3RhbE1pbGxpc2Vjb25kcyI6MzIwMDI2fSwibmFtZSI6IjA6IEludHJvIiwicGxheWFiaWxpdHkiOnsicGxheWFibGUiOnRydWUsInJlYXNvbiI6IlBMQVlBQkxFIn0sInJlbGVhc2VEYXRlIjp7Imlzb1N0cmluZyI6IjIwMTgtMDQtMTFUMTE6MDk6MDBaIn0sInVyaSI6InNwb3RpZnk6ZXBpc29kZTo0MXNzN3JpVnB1cDBnbXlGUVJLR2daIn19LCJ1cmkiOiJzcG90aWZ5OnNob3c6MU5sVG03T2tabWNyT1BmdmxxbEJNeiJ9fSwicHJldmlldyI6eyJhdWRpbyI6eyJ1cmwiOiJodHRwczovL3BvZHotY29udGVudC5zcG90aWZ5Y2RuLmNvbS9hdWRpby9jbGlwcy8xT29GbEp5OHM3ZVozM1NBQUNEbmlJL2NsaXBfMTA5MDQ1MF8xMTUzNzAwLm1wMyJ9LCJzaGFyZWFibGUiOnRydWUsInZpZGVvIjp7InVybCI6IiJ9fSwicmVsZWFzZURhdGUiOnsiZGF5IjozMCwiaXNvU3RyaW5nIjoiMjAyNC0wOC0zMFQxMzo0MDowMFoiLCJtb250aCI6OCwicHJlY2lzaW9uIjoiTUlOVVRFIiwieWVhciI6MjAyNH0sInR5cGUiOiJQT0RDQVNUX0VQSVNPREUiLCJ1cmkiOiJzcG90aWZ5OmVwaXNvZGU6MFJ2VFNGempBbHFKelc5dHVKd29rbCJ9fSwicmVjb21tZW5kYXRpb25zIjp7fSwic2F2ZWQiOnt9fSwicGxheWJhY2siOnsiY3VycmVudCI6bnVsbCwiaGFzU2tpcHBlZFRoaXNTZXNzaW9uIjpmYWxzZSwiaXNCdWZmZXJpbmciOmZhbHNlLCJoZWFyZEF1ZGlvIjpmYWxzZSwiaW5pdGlhdGVkUGxheWJhY2siOmZhbHNlfSwicmVxdWVzdCI6eyJoYXNQcmV2aW91c0xpa2VzIjpmYWxzZSwiaXNCYW5uZWQiOmZhbHNlLCJlbnRpdHlWaWV3IjpudWxsLCJhbGJ1bVVyaSI6IiJ9LCJzZWFyY2giOnsiaXNGZXRjaGluZyI6ZmFsc2UsInJlc3VsdHMiOm51bGwsInF1ZXJ5IjpudWxsLCJlcnJvciI6bnVsbCwicmVjZW50U2VhcmNoZXMiOltdfSwidG9hc3QiOnsibWVzc2FnZSI6bnVsbCwidHlwZSI6ImRlZmF1bHQiLCJhY3Rpb24iOm51bGx9LCJ1aSI6eyJtb2RhbCI6Im5vd19wbGF5aW5nX2JhciIsIm5vd1BsYXlpbmdWaWV3IjpmYWxzZSwiZGlhbG9nIjpudWxsLCJlcnJvclZpZXciOmZhbHNlfSwiaG9tZSI6eyJpc0xvYWRpbmciOmZhbHNlLCJoYXNFcnJvciI6ZmFsc2UsImRhdGEiOm51bGx9LCJvbkRlbWFuZFBsYXlsaXN0cyI6eyJmZXRjaGVkIjpmYWxzZSwiaXRlbXMiOltdfSwiY29udGV4dE1lbnUiOnsiaXNWaXNpYmxlIjpmYWxzZX0sImNvbG9yRXh0cmFjdGlvbiI6eyJjb2xvcnMiOnt9fSwibHlyaWNzIjp7InN0YXR1cyI6IlVOQVZBSUxBQkxFIn0sInJpY2hFbnRpdGllcyI6eyJzZW9FeHBlcmltZW50Ijp7ImVwaXNvZGUiOnt9fX0sImJyb3dzZSI6eyJncmlkIjp7ImlzTG9hZGluZyI6ZmFsc2UsInNlY3Rpb25zIjpudWxsLCJoYXNGYWlsZWRBdHRlbXB0cyI6ZmFsc2V9LCJwYWdlcyI6e319LCJpbnRlcm5hbExpbmtSZWNvbW1lbmRlciI6eyJ0cmFja3MiOnsic3RhdHVzIjoiVU5BVkFJTEFCTEUifSwic2hvd3MiOnsic3RhdHVzIjoiVU5BVkFJTEFCTEUifSwiZXBpc29kZXMiOnsiZGF0YSI6W3siX190eXBlbmFtZSI6IkVwaXNvZGUiLCJhdWRpbyI6eyJpdGVtcyI6W3siZmlsZUlkIjoiMDc4MjZmZjg0ZTc3MTM4MzA0MWRmYmU4MWVhNzg1NmU4ZDY0NDllZSIsImZvcm1hdCI6Ik9HR19WT1JCSVNfOTYiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy8wNzgyNmZmODRlNzcxMzgzMDQxZGZiZTgxZWE3ODU2ZThkNjQ0OWVlIn0seyJmaWxlSWQiOiI5NTQzN2Y4NjBjZTg2NGEzYTMyOGNmZTcyOTExMjE5Njk5NzMyYTg3IiwiZm9ybWF0IjoiTVA0XzEyOCIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3Lzk1NDM3Zjg2MGNlODY0YTNhMzI4Y2ZlNzI5MTEyMTk2OTk3MzJhODcifSx7ImZpbGVJZCI6IjRkNDJjZjdkY2ZjNWEyNmM4YTgxZTY3MTRkOGQyMDJmNjJkMGJlY2YiLCJmb3JtYXQiOiJNUDRfMTI4X0NCQ1MiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy80ZDQyY2Y3ZGNmYzVhMjZjOGE4MWU2NzE0ZDhkMjAyZjYyZDBiZWNmIn0seyJmaWxlSWQiOiJiNmUxYWI0ODlkYWIzMDgzYzExZDQyYzc2NGFlMTg1MDY5N2ViYTNkIiwiZm9ybWF0IjoiQUFDXzI0IiwidXJsIjoiaHR0cHM6Ly9wLnNjZG4uY28vbXAzLXByZXZpZXcvYjZlMWFiNDg5ZGFiMzA4M2MxMWQ0MmM3NjRhZTE4NTA2OTdlYmEzZCJ9LHsiZmlsZUlkIjoiZjcyNTRjZTE5ZTVjMTlkNmVmZGUwZjAzYmUzNjFhYjA4MzczOTBmMiIsImZvcm1hdCI6Ik1QNF8xMjhfRFVBTCIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3L2Y3MjU0Y2UxOWU1YzE5ZDZlZmRlMGYwM2JlMzYxYWIwODM3MzkwZjIifV19LCJjb250ZW50UmF0aW5nIjp7ImxhYmVsIjoiTk9ORSJ9LCJjb3ZlckFydCI6eyJzb3VyY2VzIjpbeyJoZWlnaHQiOjY0LCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDBmNjhkZGE0YmZjNmQxN2JhNGI3ZjY2ZTYwMTJhIiwid2lkdGgiOjY0fSx7ImhlaWdodCI6MzAwLCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDA1ZjFmZGE0YmZjNmQxN2JhNGI3ZjY2ZTYwMTJhIiwid2lkdGgiOjMwMH0seyJoZWlnaHQiOjY0MCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwYmE4YWRhNGJmYzZkMTdiYTRiN2Y2NmU2MDEyYSIsIndpZHRoIjo2NDB9XX0sImRlc2NyaXB0aW9uIjoiIFNjb3R0IGFuZCBXZXMgdGFsayB3aXRoIFPDuHJlbiBCcmFtZXIgU2NobWlkdCwgRm91bmRlciBhbmQgQ0VPIG9mIFByaXNtYSwgYWJvdXQgZGF0YWJhc2UgYmVzdCBwcmFjdGljZXMsIGluY2x1ZGluZyB0aGUgbGF0ZXN0IGRldmVsb3BtZW50cyBpbiBzZXJ2ZXJsZXNzLCBsb2NhbC1maXJzdCwgYW5kIHR5cGVkIFNRTCBzb2x1dGlvbnMuIFNob3cgTm90ZXMgICAwMDowMCBXZWxjb21lIHRvIFN5bnRheCEgIDAyOjU1IFPDuHJlbuKAmXMgdGhvdWdodHMgb24gR3JhcGhRTCAgMDM6NTMgQnJvdWdodCB0byB5b3UgYnkgU2VudHJ5LmlvICAwNjo1NyBDb21tb24gZGF0YWJhc2UgbWlzdGFrZXMgIDA4OjUyIFByaXNtYeKAmXMgc3RhYmlsaXR5IGFuZCB1c2VyIGV4cGVyaWVuY2UgIDEwOjQyIFR5cGVkIFNRTCBhbmQgYWR2YW5jZWQgcXVlcnlpbmcgICAgQW5ub3VuY2luZyBUeXBlZFNRTDogTWFrZSB5b3VyIHJhdyBTUUwgcXVlcmllcyB0eXBlLXNhZmUgd2l0aCBQcmlzbWEgT1JNICBQcmlzbWEgT3B0aW1pemUgICAgMjA6NDcgU2VydmVybGVzcyBjaGFsbGVuZ2VzIGFuZCBzb2x1dGlvbnMgICBQcmlzbWEgQWNjZWxlcmF0ZSAgICAyNzoxMSBDbG91ZGZsYXJl4oCZcyBwb3RlbnRpYWwgdG8gZGV0aHJvbmUgQVdTICAyOToxMyBQcmlzbWEgYW5kIGxvY2FsLWZpcnN0IGRldmVsb3BtZW50ICAgUHJpc21hICYgRXhwbzogQSBCZXR0ZXIgUGF0aCB0byBMb2NhbC1GaXJzdCBBcHBzIHwgQXBwLmpzIENvbmYgMjAyNCAgICAzNTozMCBNYWtpbmcgbG9jYWwtZmlyc3QgZGV2ZWxvcG1lbnQgbWFpbnN0cmVhbSAgNDA6MTAgQ2hhbGxlbmdlcyB3aXRoIGFzeW5jICA0Mjo0MyBTw7hyZW7igJlzIHRob3VnaHRzIG9uIERyaXp6bGUgIDQzOjQxIFPDuHJlbuKAmXMgZmF2b3JpdGUgZGF0YWJhc2UgIDQ3OjIxIFRoZSByZWFkIHlvdXIgd3JpdGVzIHByb2JsZW0gIDQ4OjU4IFByaXNtYSBob3N0ZWQgUG9zdGdyZXMgIDUxOjQ0IFNpY2sgUGlja3MgJiBTaGFtZWxlc3MgUGx1Z3MgICBTaWNrIFBpY2tzICAgU8O4cmVuOiBDdXJzb3IgICBTaGFtZWxlc3MgUGx1Z3MgICBTw7hyZW46ICAgMTogUHJpc21hIE9wdGltaXplICAyOiBQcmlzbWEgUG9zdGdyZXMgKGNvbWluZyBzb29uKSAgICAgSGl0IHVzIHVwIG9uIFNvY2lhbHMhICBTeW50YXg6IFggSW5zdGFncmFtIFRpa3RvayBMaW5rZWRJbiBUaHJlYWRzICBXZXM6IFggSW5zdGFncmFtIFRpa3RvayBMaW5rZWRJbiBUaHJlYWRzICBTY290dDogWCBJbnN0YWdyYW0gVGlrdG9rIExpbmtlZEluIFRocmVhZHMgIFJhbmR5OiBYIEluc3RhZ3JhbSBZb3VUdWJlIFRocmVhZHMiLCJkdXJhdGlvbiI6eyJ0b3RhbE1pbGxpc2Vjb25kcyI6MzI5MTI0MX0sImlkIjoiNlEzalJtR1ZQUUM3ZldReFZ1YUZ2UCIsIm1lZGlhVHlwZXMiOlsiVklERU8iLCJBVURJTyJdLCJuYW1lIjoiODM5OiBQcmlzbWEgT1JNOiBMb2NhbCBGaXJzdCwgVHlwZWQgU1FMIFF1ZXJpZXMgYW5kIFNlcnZlcmxlc3Mgd2l0aCBTw7hyZW4gQnJhbWVyIFNjaG1pZHQiLCJwbGF5YWJpbGl0eSI6eyJwbGF5YWJsZSI6dHJ1ZSwicmVhc29uIjoiUExBWUFCTEUifSwicGxheWVkU3RhdGUiOnsicGxheVBvc2l0aW9uTWlsbGlzZWNvbmRzIjowLCJzdGF0ZSI6Ik5PVF9TVEFSVEVEIn0sInBvZGNhc3RWMiI6eyJfX3R5cGVuYW1lIjoiUG9kY2FzdFJlc3BvbnNlV3JhcHBlciIsImRhdGEiOnsiX190eXBlbmFtZSI6IlBvZGNhc3QiLCJjb3ZlckFydCI6eyJzb3VyY2VzIjpbeyJoZWlnaHQiOjY0LCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDBmNjhkZGE0YmZjNmQxN2JhNGI3ZjY2ZTYwMTJhIiwid2lkdGgiOjY0fSx7ImhlaWdodCI6MzAwLCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDA1ZjFmZGE0YmZjNmQxN2JhNGI3ZjY2ZTYwMTJhIiwid2lkdGgiOjMwMH0seyJoZWlnaHQiOjY0MCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwYmE4YWRhNGJmYzZkMTdiYTRiN2Y2NmU2MDEyYSIsIndpZHRoIjo2NDB9XX0sIm5hbWUiOiJTeW50YXggLSBUYXN0eSBXZWIgRGV2ZWxvcG1lbnQgVHJlYXRzIiwic2hvd1R5cGVzIjpbXSwidXJpIjoic3BvdGlmeTpzaG93OjRrWUNSWUozeUs1RFFiUDV0YmZaYnkifX0sInJlbGVhc2VEYXRlIjp7Imlzb1N0cmluZyI6IjIwMjQtMTAtMjVUMTE6MDA6MDBaIn0sInJlc3RyaWN0aW9ucyI6eyJwYXl3YWxsQ29udGVudCI6ZmFsc2V9LCJ1cmkiOiJzcG90aWZ5OmVwaXNvZGU6NlEzalJtR1ZQUUM3ZldReFZ1YUZ2UCJ9LHsiX190eXBlbmFtZSI6IkVwaXNvZGUiLCJhdWRpbyI6eyJpdGVtcyI6W3siZmlsZUlkIjoiY2Q0ZWUyNmQ5NDVkMGIwZGIyZTZiMDU2OWUxZGQwMDEwYWRlNGRmMiIsImZvcm1hdCI6Ik1QNF8xMjgiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy9jZDRlZTI2ZDk0NWQwYjBkYjJlNmIwNTY5ZTFkZDAwMTBhZGU0ZGYyIn0seyJmaWxlSWQiOiIxYmZlOGVmNjlkMzQxMzQ1MWNiZjJkYjI4NTIwNjNhZGJiZDQ1M2JjIiwiZm9ybWF0IjoiQUFDXzI0IiwidXJsIjoiaHR0cHM6Ly9wLnNjZG4uY28vbXAzLXByZXZpZXcvMWJmZThlZjY5ZDM0MTM0NTFjYmYyZGIyODUyMDYzYWRiYmQ0NTNiYyJ9LHsiZmlsZUlkIjoiMTI3NDE4ZWQyMGY0ZTU3MDFmZmU3Zjg3MTczYjFhZDg3ZGY5MmFkNyIsImZvcm1hdCI6Ik1QNF8xMjhfRFVBTCIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3LzEyNzQxOGVkMjBmNGU1NzAxZmZlN2Y4NzE3M2IxYWQ4N2RmOTJhZDcifSx7ImZpbGVJZCI6ImNjZmY2OWRlYmRlMjM2NjBlMTViMzI2OTE4YzcyN2E4ODAwOThmZDAiLCJmb3JtYXQiOiJNUDRfMTI4X0NCQ1MiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy9jY2ZmNjlkZWJkZTIzNjYwZTE1YjMyNjkxOGM3MjdhODgwMDk4ZmQwIn0seyJmaWxlSWQiOiI1YzRiNjc3ODkzMjQzOWFiMDZkOTZiOWUxNDAzYThiZDk0N2MzZTZkIiwiZm9ybWF0IjoiT0dHX1ZPUkJJU185NiIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3LzVjNGI2Nzc4OTMyNDM5YWIwNmQ5NmI5ZTE0MDNhOGJkOTQ3YzNlNmQifV19LCJjb250ZW50UmF0aW5nIjp7ImxhYmVsIjoiTk9ORSJ9LCJjb3ZlckFydCI6eyJzb3VyY2VzIjpbeyJoZWlnaHQiOjY0LCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDBmNjhkZGE0YmZjNmQxN2JhNGI3ZjY2ZTYwMTJhIiwid2lkdGgiOjY0fSx7ImhlaWdodCI6MzAwLCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDA1ZjFmZGE0YmZjNmQxN2JhNGI3ZjY2ZTYwMTJhIiwid2lkdGgiOjMwMH0seyJoZWlnaHQiOjY0MCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwYmE4YWRhNGJmYzZkMTdiYTRiN2Y2NmU2MDEyYSIsIndpZHRoIjo2NDB9XX0sImRlc2NyaXB0aW9uIjoiIFNjb3R0IGFuZCBXZXMgdGFsayB3aXRoIFRhbm5lciBMaW5zbGV5LCBjcmVhdG9yIG9mIFRhblN0YWNrLCBhYm91dCB0aGUgUmVhY3QgZWNvc3lzdGVtLCBhbmQgdGhlIGV2b2x1dGlvbiBhbmQgZnV0dWUgb2YgVGFuU3RhY2vigJlzIHN1aXRlIG9mIHRvb2xzLCBpbmNsdWRpbmcgVGFuU3RhY2sgUm91dGVyIGFuZCBUYW5TdGFjayBTdGFydC4gU2hvdyBOb3RlcyAgIDAwOjAwIFdlbGNvbWUgdG8gU3ludGF4ISAgMDI6NTkgV2hhdCBpcyBUYW5TdGFjayBTdGFydD8gICBVbkpTICBOaXRybyAgVmlueGkgICAgMDY6MTcgV2hhdCBpcyB0aGUgVml0ZSBFbnZpcm9ubWVudCBBUEk/ICAwNzoyMSBXYXMgaXQgYWx3YXlzIHRoZSBwbGFuIHRvIHVzZSBWaXRlPyAgMDg6MDIgVGFuU3RhY2sgUm91dGVyIGFuZCBjbGllbnQtc2lkZSB2cyBzZXJ2ZXItc2lkZSAgMTY6MTggSG93IFRhblN0YWNrIFN0YXJ0IHdpbGwgd29yayAgMjc6MjYgTW92aW5nIGZyb20gQ3JlYXRlIFJlYWN0IEFwcCB0byBUYW5TdGFjayAgMzA6NDIgQnJvdWdodCB0byB5b3UgYnkgU2VudHJ5LmlvICAzMToxNSBXaWxsIFRhblN0YWNrIFJvdXRlciBldmVyIHN1cHBvcnQgb3RoZXIgZnJhbWV3b3Jrcz8gIDMzOjU0IEhvdyB3aWxsIFRhblN0YWNrIFN0YXJ0IGhhbmRsZSBmb3Jtcz8gIDM2OjEzIFRhblN0YWNrIFZpcnR1YWwgIDM5OjQxIFdoYXQgaXMgdGhlIGZ1dHVyZSBvZiBUYW5TdGFjaz8gICBDb252ZXggICAgNDI6NDkgSG93IFRhbm5lciB3cml0ZXMgZG9jdW1lbnRhdGlvbiAgNDc6NTUgU2VydmVyIGZ1bmN0aW9ucyBhbmQgbWlkZGxld2FyZSAgNTQ6NDEgV2hlbiB3aWxsIFRhblN0YWNrIFN0YXJ0IGJlIGluIGJldGE/ICA1NzowMCBTaWNrIFBpY2tzICsgU2hhbWVsZXNzIFBsdWdzICAgU2ljayBQaWNrcyAgIFRhbm5lcjogICAgTEcgQzQgICBVbHRyYSBTbGltIEZpdCBUViBXYWxsIE1vdW50ICAgICBTaGFtZWxlc3MgUGx1Z3MgICBUYW5uZXI6ICAgVGFuU3RhY2sgQmxvZyAgQFRLRG9kbyAgICAgSGl0IHVzIHVwIG9uIFNvY2lhbHMhICBTeW50YXg6IFggSW5zdGFncmFtIFRpa3RvayBMaW5rZWRJbiBUaHJlYWRzICBXZXM6IFggSW5zdGFncmFtIFRpa3RvayBMaW5rZWRJbiBUaHJlYWRzICBTY290dDogWCBJbnN0YWdyYW0gVGlrdG9rIExpbmtlZEluIFRocmVhZHMgIFJhbmR5OiBYIEluc3RhZ3JhbSBZb3VUdWJlIFRocmVhZHMiLCJkdXJhdGlvbiI6eyJ0b3RhbE1pbGxpc2Vjb25kcyI6Mzc1MjkwMH0sImlkIjoiME1ZUURiOExTSkZVMzFUZnVqaUoweSIsIm1lZGlhVHlwZXMiOlsiVklERU8iLCJBVURJTyJdLCJuYW1lIjoiODMzOiBOZXh0IEdlbiBGdWxsc3RhY2sgUmVhY3Qgd2l0aCBUYW5TdGFjayIsInBsYXlhYmlsaXR5Ijp7InBsYXlhYmxlIjp0cnVlLCJyZWFzb24iOiJQTEFZQUJMRSJ9LCJwbGF5ZWRTdGF0ZSI6eyJwbGF5UG9zaXRpb25NaWxsaXNlY29uZHMiOjAsInN0YXRlIjoiTk9UX1NUQVJURUQifSwicG9kY2FzdFYyIjp7Il9fdHlwZW5hbWUiOiJQb2RjYXN0UmVzcG9uc2VXcmFwcGVyIiwiZGF0YSI6eyJfX3R5cGVuYW1lIjoiUG9kY2FzdCIsImNvdmVyQXJ0Ijp7InNvdXJjZXMiOlt7ImhlaWdodCI6NjQsInVybCI6Imh0dHBzOi8vaS5zY2RuLmNvL2ltYWdlL2FiNjc2NTYzMDAwMGY2OGRkYTRiZmM2ZDE3YmE0YjdmNjZlNjAxMmEiLCJ3aWR0aCI6NjR9LHsiaGVpZ2h0IjozMDAsInVybCI6Imh0dHBzOi8vaS5zY2RuLmNvL2ltYWdlL2FiNjc2NTYzMDAwMDVmMWZkYTRiZmM2ZDE3YmE0YjdmNjZlNjAxMmEiLCJ3aWR0aCI6MzAwfSx7ImhlaWdodCI6NjQwLCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDBiYThhZGE0YmZjNmQxN2JhNGI3ZjY2ZTYwMTJhIiwid2lkdGgiOjY0MH1dfSwibmFtZSI6IlN5bnRheCAtIFRhc3R5IFdlYiBEZXZlbG9wbWVudCBUcmVhdHMiLCJzaG93VHlwZXMiOltdLCJ1cmkiOiJzcG90aWZ5OnNob3c6NGtZQ1JZSjN5SzVEUWJQNXRiZlpieSJ9fSwicmVsZWFzZURhdGUiOnsiaXNvU3RyaW5nIjoiMjAyNC0xMC0xMVQxMTowMDowMFoifSwicmVzdHJpY3Rpb25zIjp7InBheXdhbGxDb250ZW50IjpmYWxzZX0sInVyaSI6InNwb3RpZnk6ZXBpc29kZTowTVlRRGI4TFNKRlUzMVRmdWppSjB5In0seyJfX3R5cGVuYW1lIjoiRXBpc29kZSIsImF1ZGlvIjp7Iml0ZW1zIjpbeyJmaWxlSWQiOiJmM2NlMGM4MDQ1M2QyOTkyYmU3NTBiZmRlMzlkOGRiZWRlNzAzNTgxIiwiZm9ybWF0IjoiTVA0XzEyOCIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3L2YzY2UwYzgwNDUzZDI5OTJiZTc1MGJmZGUzOWQ4ZGJlZGU3MDM1ODEifSx7ImZpbGVJZCI6ImI2YTA3NGFjOWRhNmExZWU5ZTVjNzJjNGFjMzcyODBiMzE0NGM1NDUiLCJmb3JtYXQiOiJBQUNfMjQiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy9iNmEwNzRhYzlkYTZhMWVlOWU1YzcyYzRhYzM3MjgwYjMxNDRjNTQ1In0seyJmaWxlSWQiOiJhYjdiMjJiMTZiYzQzZDZlY2MxOWFkNjM0YWEzN2U2NzdjM2NjZTc5IiwiZm9ybWF0IjoiT0dHX1ZPUkJJU185NiIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3L2FiN2IyMmIxNmJjNDNkNmVjYzE5YWQ2MzRhYTM3ZTY3N2MzY2NlNzkifSx7ImZpbGVJZCI6IjBjOTY1N2U1YzZiMThkYTQ2YTkzYjJiMjhkMjAwYjc3OGU0MzRlMmQiLCJmb3JtYXQiOiJNUDRfMTI4X0NCQ1MiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy8wYzk2NTdlNWM2YjE4ZGE0NmE5M2IyYjI4ZDIwMGI3NzhlNDM0ZTJkIn0seyJmaWxlSWQiOiI4NTZjZDkyZTRiNmVlMjAyODY3MWVlNDE1NTI4ZDQ5NDU1NjRjNmQ2IiwiZm9ybWF0IjoiTVA0XzEyOF9EVUFMIiwidXJsIjoiaHR0cHM6Ly9wLnNjZG4uY28vbXAzLXByZXZpZXcvODU2Y2Q5MmU0YjZlZTIwMjg2NzFlZTQxNTUyOGQ0OTQ1NTY0YzZkNiJ9XX0sImNvbnRlbnRSYXRpbmciOnsibGFiZWwiOiJOT05FIn0sImNvdmVyQXJ0Ijp7InNvdXJjZXMiOlt7ImhlaWdodCI6NjQsInVybCI6Imh0dHBzOi8vaS5zY2RuLmNvL2ltYWdlL2FiNjc2NTYzMDAwMGY2OGRkYTRiZmM2ZDE3YmE0YjdmNjZlNjAxMmEiLCJ3aWR0aCI6NjR9LHsiaGVpZ2h0IjozMDAsInVybCI6Imh0dHBzOi8vaS5zY2RuLmNvL2ltYWdlL2FiNjc2NTYzMDAwMDVmMWZkYTRiZmM2ZDE3YmE0YjdmNjZlNjAxMmEiLCJ3aWR0aCI6MzAwfSx7ImhlaWdodCI6NjQwLCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDBiYThhZGE0YmZjNmQxN2JhNGI3ZjY2ZTYwMTJhIiwid2lkdGgiOjY0MH1dfSwiZGVzY3JpcHRpb24iOiIgU2NvdHQgd2Fsa3MgV2VzIHRocm91Z2ggdGhlIG5ldyBTeW50YXggUHJvZHVjdGlvbiBBc3Npc3RhbnQgRGVza3RvcCBBcHAsIGRlc2lnbmVkIHRvIHN0cmVhbWxpbmUgYW5kIGF1dG9tYXRlIHRoZWlyIGNvbXBsZXggcHVibGlzaGluZyBwcm9jZXNzLiBGcm9tIHRlY2ggc3RhY2sgY2hvaWNlcyBsaWtlIFN2ZWx0ZTUgYW5kIFJ1c3QgdG8gQUktZHJpdmVuIGZlYXR1cmVzLCB0aGV5IGRpdmUgaW50byBob3cgdGhpcyB0b29sIGtlZXBzIGV2ZXJ5dGhpbmcgY29uc2lzdGVudC4gU2hvdyBOb3RlcyAgIDAwOjAwIFdlbGNvbWUgdG8gU3ludGF4ISAgMDA6NDQgQnJvdWdodCB0byB5b3UgYnkgU2VudHJ5LmlvLiAgMDE6MzcgV2hhdCB3YXMgdGhlIGlkZWE/ICAwNTo0MiBUaGUgdGVjaC4gICBTdmVsdGU1LCBUYXVyaSwgUnVzdCwgRkZNUEVHLiAgICAwODozMiBNYXJrZG93biBlZGl0b3IuICAgaW5rLW1kZSwgRGlsbGluZ2VyLiAgICAwOTozMiBFcG9jaCB0aW1lc3RhbXBzLiAgIEVwb2NoLnZlcmNlbC4gICAgMTA6MDEgVXBkYXRpbmcgZnJvbnQtbWF0dGVyLiAgMTA6MTAgRGV4aWUuanMgZnVuY3Rpb24uICAxMToyNSBCYWNraW5nIHVwIGRhdGEuICAxMTo1OCBSdXN0IGZ1bmN0aW9ucy4gIDEyOjU4IFdoeSBhIGRlc2t0b3AgYXBwIGFuZCBub3QgYSB3ZWJzaXRlPyAgMTQ6MzggU29tZSBzbWFsbCBBSSBmZWF0dXJlcy4gIDE2OjI2IENoYWxsZW5nZXMgd2l0aCBPQXV0aC4gIDIwOjAzIFB1Ymxpc2hpbmcgY2hhbGxlbmdlcy4gIDIzOjI5IENvdWxkIHRoaXMgd29yayBvbiBXaW5kb3dzPyAgMjM6NTQgRGVidWdnaW5nLiAgMjY6MjMgRGVjaXBoZXJpbmcgQXBwbGUgbG9ncy4gICBIaXQgdXMgdXAgb24gU29jaWFscyEgIFN5bnRheDogWCBJbnN0YWdyYW0gVGlrdG9rIExpbmtlZEluIFRocmVhZHMgIFdlczogWCBJbnN0YWdyYW0gVGlrdG9rIExpbmtlZEluIFRocmVhZHMgIFNjb3R0OiBYIEluc3RhZ3JhbSBUaWt0b2sgTGlua2VkSW4gVGhyZWFkcyAgUmFuZHk6IFggSW5zdGFncmFtIFlvdVR1YmUgVGhyZWFkcyIsImR1cmF0aW9uIjp7InRvdGFsTWlsbGlzZWNvbmRzIjoxNzEzNzkwfSwiaWQiOiI0YzVhVkIwcjFEQ2QyaXZNUWpEY2tyIiwibWVkaWFUeXBlcyI6WyJWSURFTyIsIkFVRElPIl0sIm5hbWUiOiI4MjU6IFN5bnRheCBBc3Npc3RhbnQgRGVza3RvcCBBcHAiLCJwbGF5YWJpbGl0eSI6eyJwbGF5YWJsZSI6dHJ1ZSwicmVhc29uIjoiUExBWUFCTEUifSwicGxheWVkU3RhdGUiOnsicGxheVBvc2l0aW9uTWlsbGlzZWNvbmRzIjowLCJzdGF0ZSI6Ik5PVF9TVEFSVEVEIn0sInBvZGNhc3RWMiI6eyJfX3R5cGVuYW1lIjoiUG9kY2FzdFJlc3BvbnNlV3JhcHBlciIsImRhdGEiOnsiX190eXBlbmFtZSI6IlBvZGNhc3QiLCJjb3ZlckFydCI6eyJzb3VyY2VzIjpbeyJoZWlnaHQiOjY0LCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDBmNjhkZGE0YmZjNmQxN2JhNGI3ZjY2ZTYwMTJhIiwid2lkdGgiOjY0fSx7ImhlaWdodCI6MzAwLCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDA1ZjFmZGE0YmZjNmQxN2JhNGI3ZjY2ZTYwMTJhIiwid2lkdGgiOjMwMH0seyJoZWlnaHQiOjY0MCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwYmE4YWRhNGJmYzZkMTdiYTRiN2Y2NmU2MDEyYSIsIndpZHRoIjo2NDB9XX0sIm5hbWUiOiJTeW50YXggLSBUYXN0eSBXZWIgRGV2ZWxvcG1lbnQgVHJlYXRzIiwic2hvd1R5cGVzIjpbXSwidXJpIjoic3BvdGlmeTpzaG93OjRrWUNSWUozeUs1RFFiUDV0YmZaYnkifX0sInJlbGVhc2VEYXRlIjp7Imlzb1N0cmluZyI6IjIwMjQtMDktMjNUMTE6MDA6MDBaIn0sInJlc3RyaWN0aW9ucyI6eyJwYXl3YWxsQ29udGVudCI6ZmFsc2V9LCJ1cmkiOiJzcG90aWZ5OmVwaXNvZGU6NGM1YVZCMHIxRENkMml2TVFqRGNrciJ9LHsiX190eXBlbmFtZSI6IkVwaXNvZGUiLCJhdWRpbyI6eyJpdGVtcyI6W3siZmlsZUlkIjoiYTUwODRiYTU2YmI3Y2JjY2EyOTFiNDI1YjNhNWFlMjMxNzM5NDJhMyIsImZvcm1hdCI6Ik9HR19WT1JCSVNfOTYiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy9hNTA4NGJhNTZiYjdjYmNjYTI5MWI0MjViM2E1YWUyMzE3Mzk0MmEzIn0seyJmaWxlSWQiOiJkYTU2YjIyZjY3NjdkNTQ3MmNkNGEzMmZkNjViMTUyYzRlZDUyMTQyIiwiZm9ybWF0IjoiTVA0XzEyOF9EVUFMIiwidXJsIjoiaHR0cHM6Ly9wLnNjZG4uY28vbXAzLXByZXZpZXcvZGE1NmIyMmY2NzY3ZDU0NzJjZDRhMzJmZDY1YjE1MmM0ZWQ1MjE0MiJ9LHsiZmlsZUlkIjoiNmYxYWNmYzQ4NjRiOGIwNzU4YjI0NTE3MWE2YTkwMzFhOGMxZmZjZiIsImZvcm1hdCI6Ik1QNF8xMjhfQ0JDUyIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3LzZmMWFjZmM0ODY0YjhiMDc1OGIyNDUxNzFhNmE5MDMxYThjMWZmY2YifSx7ImZpbGVJZCI6ImMyZDg2MWMwNTE5ZWM4ZTE3YjY5ZWNjMTRmNGFmNzI2YmE4NTFlOTIiLCJmb3JtYXQiOiJBQUNfMjQiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy9jMmQ4NjFjMDUxOWVjOGUxN2I2OWVjYzE0ZjRhZjcyNmJhODUxZTkyIn0seyJmaWxlSWQiOiJjODdiZGZkZmU3NGU1NTQ4MjM2MmY1MjhmYjliMjM1MzQ2NWNkOTBhIiwiZm9ybWF0IjoiTVA0XzEyOCIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3L2M4N2JkZmRmZTc0ZTU1NDgyMzYyZjUyOGZiOWIyMzUzNDY1Y2Q5MGEifV19LCJjb250ZW50UmF0aW5nIjp7ImxhYmVsIjoiTk9ORSJ9LCJjb3ZlckFydCI6eyJzb3VyY2VzIjpbeyJoZWlnaHQiOjY0LCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDBmNjhkMWZjMzFmNGRiMmY0OWY1ZTY1ZjJjYmJkIiwid2lkdGgiOjY0fSx7ImhlaWdodCI6MzAwLCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDA1ZjFmMWZjMzFmNGRiMmY0OWY1ZTY1ZjJjYmJkIiwid2lkdGgiOjMwMH0seyJoZWlnaHQiOjY0MCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwYmE4YTFmYzMxZjRkYjJmNDlmNWU2NWYyY2JiZCIsIndpZHRoIjo2NDB9XX0sImRlc2NyaXB0aW9uIjoiTWV0YWxhbWEgVGhpcyBlcGlzb2RlIG9mIFRoZSBNb2Rlcm4gLk5FVCBTaG93IGlzIHN1cHBvcnRlZCwgaW4gcGFydCwgYnkgTWV0YWxhbWEsIHJlZHVjZSB5b3VyIGJvaWxlcnBsYXRlIGNvZGUgYnkgdXAgdG8gMTUlIHdpdGggTWV0YWxhbWEncyBDIy10by1DIyB0ZW1wbGF0ZSBlbmdpbmUgYW5kIHJlZHVjZSB5b3VyIGNvZGUgY29tcGxleGl0eSB0b2RheSEgU2hvdyBOb3RlcyBIaSBldmVyeW9uZSwgSnVzdCBhIHF1aWNrIHRoaW5nIGJlZm9yZSB3ZSBzdGFydDogdGhpcyBlcGlzb2RlIHdhcyByZWNvcmRlZCBpbiB0aGUgbWlkZGxlIG9mIHN1bW1lciwgd2hpY2ggbWVhbnQgdGhhdCBFcmlrIG5lZWRlZCB0byBoYXZlIGhpcyBvZmZpY2Ugd2luZG93IG9wZW4uIEl0J3MgcG9zc2libGUgdG8gaGVhciB0aGUgb3V0c2lkZSB0cmFmZmljIHRocm91Z2hvdXQsIGJ1dCByZXN0IGFzc3VyZWQgdGhhdCBvdXIgZWRpdGluZyB0ZWFtIGhhdmUgZG9uZSB3aGF0IHRoZXkgY2FuIHRvIHJlZHVjZSBpdCdzIHByZXNlbmNlLiBJdCdzIG5vdCB0aGF0IG5vdGljYWJsZSBhbmQgc2hvdWxkbid0IGFmZmVjdCB5b3VyIGVuam95bWVudCBvZiB0aGUgc2hvdywgYnV0IEkgd2FudGVkIHRvIGdpdmUgeW91IGEgaGVhZHMtdXAuIEFsc28sIGRvIHJlbWVtYmVyIHRoYXQgdGhlcmUncyBhIGZ1bGwgdHJhbnNjcmlwdGlvbiBhdmFpbGFibGUgYXQgdGhlIHNob3cncyB3ZWJzaXRlOyBzbyBjaGVjayB0aGF0IG91dCwgdG9vLiBBbnl3YXksIGxldCdzIGdldCB0byBpdC4gXCJTbywgSSB0aGluayBteSBtYW50cmEgZm9yIGNyZWF0aW5nIHRoaW5ncyBsaWtlIHRoZXNlIHRvb2xzIGlzLCBcInNob3VsZCBiZSBlYXN5IHRvIGdldCBzdGFydGVkIGFuZCB0aGVyZSBzaG91bGQgYmUgYSBsaWtlIGFuIGVhc3kgaGFwcHkgcGF0aCBidXQgdGhlbiBpZiB5b3Ugd2FudCB0byBkZWVwIGRpdmUgYW5kIGRvIGEgbG90IG9mIG9wdGlvbnMgb3IgZXZlbiBhIHQ0IHRlbXBsYXRlcyB5b3UgY2FuIGFsc28gZG8gdGhhdCxcIiBidXQgdGhlcmUgc2hvdWxkIGJlIGEgc2ltcGxlIGhhcHB5IHBhdGggd2l0aCBnb29kIGVycm9yIHJlcG9ydGluZyBpZiBzb21ldGhpbmcgZmFpbHMuXCLigJQgRXJpayBKZW5zZW4gV2VsY29tZSBmcmllbmRzIHRvIFRoZSBNb2Rlcm4gLk5FVCBTaG93OyB0aGUgcHJlbWllciAuTkVUIHBvZGNhc3QsIGZvY3Vzc2luZyBlbnRpcmVseSBvbiB0aGUga25vd2xlZGdlLCB0b29scywgYW5kIGZyYW1ld29ya3MgdGhhdCBhbGwgLk5FVCBkZXZlbG9wZXJzIHNob3VsZCBoYXZlIGluIHRoZWlyIHRvb2xib3guIFdlIGFyZSB0aGUgZ28tdG8gcG9kY2FzdCBmb3IgLk5FVCBkZXZlbG9wZXJzIHdvcmxkd2lkZSwgYW5kIEkgYW0geW91ciBob3N0OiBKYW1pZSBcIkdhUHJvZ01hblwiIFRheWxvci4gSW4gdGhpcyBlcGlzb2RlLCBFcmlrIEplbnNlbiBqb2luZWQgdXMgdG8gdGFsayBhYm91dCBFRiBDb3JlIFBvd2VyIFRvb2xzLCBhbmQgaG93IHlvdSBjYW4gdXNlIGhpcyBwcm9qZWN0IHRvIGluY3JlYXNlIHlvdXIgcHJvZHVjdGl2aXR5IHdpdGggRUYgQ29yZS1iYXNlZCBkYXRhYmFzZXMsIHJlZ2FyZGxlc3Mgb2YgdGhlIGRhdGFiYXNlIHRlY2hub2xvZ3kgdXNlZDsgaWYgaXQncyBzdXBwb3J0ZWQgYnkgRUYgQ29yZSwgdGhlbiB0aGUgUG93ZXIgVG9vbHMgZXh0ZW5zaW9uIHN1cHBvcnRzIGl0IHRvLiBcIlRoZSBvbmUgdGhhdCdzIGRlZmluaXRlbHkgdXNlZCB0aGUgbW9zdCBpcyB3aGF0IGluIGEgdG9vbCBpcyByZWZlcnJlZCB0byBhcyByZXZlcnNlIGVuZ2luZWVyaW5nLiBXaGVyZSB5b3UgcG9pbnQgdG8gYW4gZXhpc3RpbmcgZGF0YWJhc2UsIHdoaWNoIGNhbiBiZSBzb21lIG9mIHRoZSBkYXRhYmFzZSB0eXBlcyBJIG1lbnRpb25lZCBwcmV2aW91c2x5LiBMaWtlIFNRTCBTZXJ2ZXIsIGFzIGEgU1FMIGRhdGFiYXNlLCBQb3N0Z3JlcywgT3JhY2xlLCBNeVNRTCwgYW5kIEZpcmViaXJkLiBBbmQgdGhlbiB0aGUgdG9vbCBhc2tzIHlvdSBmb3IgYSBudW1iZXIgb2Ygb3B0aW9ucywgbGlrZSB5b3UgY2FuIHNwZWNpZnkgd2hhdCBuYW1lc3BhY2VzIHlvdSdyZSB1c2luZywgYW5kIHdoZXJlIHRoZSBmaWxlcyBhcmUgbGFpZCBpbiB5b3VyIHByb2plY3QsIGFuZCBtYW55LCBtYW55IG90aGVyIG9wdGlvbnMuIEFuZCB0aGVuIHdoZW4geW91IHByZXNzIE9LIGF0IHRoYXQgcG9pbnQsIGFzIHlvdSBzYWlkLCBKYW1pZSwgdGhlIHRvb2wgZ2VuZXJhdGVzIGEgREIgY29udGV4dCBhbmQgc29tZSBjbGFzc2VzIHRoYXQgcmVwcmVzZW50IHlvdXIgdGFibGVzIHdpdGggbmF2aWdhdGlvbnMgYmV0d2VlbiB0aGUgdGFibGVzIGJhc2VkIG9uIGRpc2NvdmVyeSBvZiBmb3JlaWduIGtleSByZWxhdGlvbnNoaXBzLlwi4oCUIEVyaWsgSmVuc2VuIFdlIGFsc28gYnJpZWZseSB0b3VjaGVkIG9uIHRoZSBNU0J1aWxkLlNkay5TcWxQcm9qIHByb2plY3QgYW5kIGl0cyBnb2FsIG9mIGdpdmluZyBjcm9zcy1wbGF0Zm9ybSAuTkVUIGRldmVsb3BlcnMgYSB3YXkgdG8gYm90aCBkZXNjcmliZSBhbmQgYnVpbGQgdGhlaXIgaWRlYWwgZGF0YWJhc2Ugc2NoZW1hIGluIGNvZGUuIFdlIGFsc28gY292ZXJlZCBFcmlrJ3MgcGVyc29uYWwgcHJvY2VzcyBmb3IgZGVhbGluZyB3aXRoIGZlYXR1cmUgcmVxdWVzdHMsIGFuZCBob3cgZGV2ZWxvcGVycyBjYW4gZW5zdXJlIHRoYXQgdGhhdCBhcmUgcHJvdmlkaW5nIHZhbHVlYWJsZSBmZWVkYmFjayB0byBvcGVuLXNvdXJjZSBwcm9qZWN0czsgYSBzdWJqZWN0IHRoYXQgd2lsbCBjb21lIHVwIGFnYWluIHNvb24gd2l0aCBmdXR1cmUgZ3Vlc3QgU2NvdHQgSGFyZGVuLiBBbnl3YXksIHdpdGhvdXQgZnVydGhlciBhZG8sIGxldCdzIHNpdCBiYWNrLCBvcGVuIHVwIGEgdGVybWluYWwsIHR5cGUgaW4gYGRvdG5ldCBuZXcgcG9kY2FzdGAgYW5kIHdlJ2xsIGRpdmUgaW50byB0aGUgY29yZSBvZiBNb2Rlcm4gLk5FVC4gU3VwcG9ydGluZyB0aGUgU2hvdyBJZiB5b3UgZmluZCB0aGlzIGVwaXNvZGUgdXNlZnVsIGluIGFueSB3YXksIHBsZWFzZSBjb25zaWRlciBzdXBwb3J0aW5nIHRoZSBzaG93IGJ5IGVpdGhlciBsZWF2aW5nIGEgcmV2aWV3IChjaGVjayBvdXLCoHJldmlldyBwYWdlIGZvciB3YXlzIHRvIGRvIHRoYXQpLCBzaGFyaW5nIHRoZSBlcGlzb2RlIHdpdGggYSBmcmllbmQgb3LCoGNvbGxlYWd1ZSwgYnV5aW5nIHRoZSBob3N0IGEgY29mZmVlLCBvciBjb25zaWRlcmluZyBiZWNvbWluZyBhIFBhdHJvbiBvZiB0aGUgc2hvdy4gRnVsbCBTaG93IE5vdGVzIFRoZSBmdWxsIHNob3cgbm90ZXMsIGluY2x1ZGluZyBsaW5rcyB0byBzb21lIG9mIHRoZSB0aGluZ3Mgd2UgZGlzY3Vzc2VkIGFuZCBhIGZ1bGwgdHJhbnNjcmlwdGlvbiBvZiB0aGlzIGVwaXNvZGUsIGNhbiBiZSBmb3VuZCBhdDogIGh0dHBzOi8vZG90bmV0Y29yZS5zaG93L3NlYXNvbi03L3Bvd2VyaW5nLXVwLXdpdGgtZXJpay1qZW5zZW4tYW4taW50cm9kdWN0aW9uLXRvLWVmLWNvcmUtcG93ZXItdG9vbHMvIEVGIENvcmUgUG93ZXIgVG9vbHMgQ29udHJpYnV0b3JzIFRoZSBmb2xsb3dpbmcgbGlzdCBpcyBjb3JyZWN0IGFzIG9mIE9jdCA0dGgsIDIwMjQsIGFuZCBhaW1zIHRvIHNob3cgdGhhdCBpdCB0YWtlcyBhIHZpbGxhZ2UgdG8gY3JlYXRlIGEgdG9vbCBhcyB1YmlxdWl0b3VzIGFzIEVGIENvcmUgUG93ZXIgVG9vbHMuIEl0IGNvbnRhaW5zIHRoZSB0b3AgMTAgKGFycmFuZ2VkIGJ5IG51bWJlciBvZiBjb250cmlidXRpb25zKSBkZXZzIHdobyBoYXZlIHdvcmtlZCBvbiBFRiBDb3JlIFBvd2VyIFRvb2xzLiAgRXJpayBFamxza292IEplbnNlbiBTdGVwaGFuIE92ZXIgVmFyb3JiYyBXaWxsIOS/neWTpSBQZWRybyBSb2NoYSBQLiBMZcOzbiBQcmF0aWsgUG90ZSBFbWFudWVsZSBDdXJhdGkgSm9uYXRob24gV3l6YSAgVXNlZnVsIExpbmtzICBFRiBDb3JlIFBvd2VyIFRvb2xzIHdpa2kgRUYgQ29yZSBQb3dlciBUb29scyBvbiBHaXRIdWIgIEluc3RhbGwgRUYgQ29yZSBQb3dlciBUb29scyBhcyBhIC5ORVQgZ2xvYmFsIHRvb2wgWEtDRDogRGVwZW5kZW5jeSBEYWNGeCBNU0J1aWxkLlNkay5TcWxQcm9qICBFcGlzb2RlIDE5IC0gVGhlIC5ORVQgRm91bmRhdGlvbiB3aXRoIEpvbiBHYWxsb3dheSBDb25uZWN0IHdpdGggRXJpa8Kgb24gR2l0SHViIENvbm5lY3Qgd2l0aCBFcmlrwqBvbiBYIEVyaWsncyBibG9nIE11c2ljIGNyZWF0ZWQgYnnCoE1vbm8gTWVtb3J5IE11c2ljLCBsaWNlbnNlZCB0byBSSkogU29mdHdhcmUgZm9yIHVzZSBpbiBUaGUgTW9kZXJuIC5ORVQgU2hvdyAgU3VwcG9ydGluZyB0aGUgc2hvdzogIExlYXZlIGEgcmF0aW5nIG9yIHJldmlldyBCdXkgdGhlIHNob3cgYSBjb2ZmZWUgQmVjb21lIGEgcGF0cm9uICBHZXR0aW5nIGluIFRvdWNoOiAgVmlhIHRoZSBjb250YWN0IHBhZ2UgSm9pbmluZyB0aGUgRGlzY29yZCAgUmVtZW1iZXIgdG8gcmF0ZSBhbmQgcmV2aWV3IHRoZSBzaG93IG9uICBBcHBsZSBQb2RjYXN0cywgUG9kY2hhc2VyLCBvciB3aGVyZXZlciB5b3UgZmluZCB5b3VyIHBvZGNhc3RzLCB0aGlzIHdpbGwgaGVscCB0aGUgc2hvdydzIGF1ZGllbmNlIGdyb3cuIE9yIHlvdSBjYW4ganVzdCBzaGFyZSB0aGUgc2hvdyB3aXRoIGEgZnJpZW5kLiBBbmQgZG9uJ3QgZm9yZ2V0IHRvIHJlYWNoIG91dCB2aWEgb3VyIENvbnRhY3QgcGFnZS4gV2UncmUgdmVyeSBpbnRlcmVzdGVkIGluIHlvdXIgb3BpbmlvbiBvZiB0aGUgc2hvdywgc28gcGxlYXNlIGdldCBpbiB0b3VjaC4gWW91IGNhbiBzdXBwb3J0IHRoZSBzaG93IGJ5IG1ha2luZyBhIG1vbnRobHkgZG9uYXRpb24gb24gdGhlIHNob3cncyBQYXRyZW9uIHBhZ2UgYXQ6IGh0dHBzOi8vd3d3LnBhdHJlb24uY29tL1RoZURvdE5ldENvcmVQb2RjYXN0LiIsImR1cmF0aW9uIjp7InRvdGFsTWlsbGlzZWNvbmRzIjo0MTI3MjkzfSwiaWQiOiIyZXQ2T1pHVXM3SlV1bnV5VGpFaWJmIiwibWVkaWFUeXBlcyI6WyJBVURJTyJdLCJuYW1lIjoiUG93ZXJpbmcgVXAgd2l0aCBFcmlrIEplbnNlbjogQW4gSW50cm9kdWN0aW9uIHRvIEVGIENvcmUgUG93ZXIgVG9vbHMiLCJwbGF5YWJpbGl0eSI6eyJwbGF5YWJsZSI6dHJ1ZSwicmVhc29uIjoiUExBWUFCTEUifSwicGxheWVkU3RhdGUiOnsicGxheVBvc2l0aW9uTWlsbGlzZWNvbmRzIjowLCJzdGF0ZSI6Ik5PVF9TVEFSVEVEIn0sInBvZGNhc3RWMiI6eyJfX3R5cGVuYW1lIjoiUG9kY2FzdFJlc3BvbnNlV3JhcHBlciIsImRhdGEiOnsiX190eXBlbmFtZSI6IlBvZGNhc3QiLCJjb3ZlckFydCI6eyJzb3VyY2VzIjpbeyJoZWlnaHQiOjY0LCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDBmNjhkYjRhMWYwOTExMTFkMmRlN2YxOWZiOWRiIiwid2lkdGgiOjY0fSx7ImhlaWdodCI6MzAwLCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDA1ZjFmYjRhMWYwOTExMTFkMmRlN2YxOWZiOWRiIiwid2lkdGgiOjMwMH0seyJoZWlnaHQiOjY0MCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwYmE4YWI0YTFmMDkxMTExZDJkZTdmMTlmYjlkYiIsIndpZHRoIjo2NDB9XX0sIm5hbWUiOiJUaGUgTW9kZXJuIC5ORVQgU2hvdyIsInNob3dUeXBlcyI6W10sInVyaSI6InNwb3RpZnk6c2hvdzo2RklNMThaSXFRdnVYN2QxVEE5cmJaIn19LCJyZWxlYXNlRGF0ZSI6eyJpc29TdHJpbmciOiIyMDI0LTEwLTI1VDA2OjMwOjAwWiJ9LCJyZXN0cmljdGlvbnMiOnsicGF5d2FsbENvbnRlbnQiOmZhbHNlfSwidXJpIjoic3BvdGlmeTplcGlzb2RlOjJldDZPWkdVczdKVXVudXlUakVpYmYifSx7Il9fdHlwZW5hbWUiOiJFcGlzb2RlIiwiYXVkaW8iOnsiaXRlbXMiOlt7ImZpbGVJZCI6IjQ2NTIxY2Y3OTg3ZmY2ZmYxZmU1ZDNkNGQzYzNmNjdmMjcwMWQ5MzkiLCJmb3JtYXQiOiJNUDRfMTI4X0NCQ1MiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy80NjUyMWNmNzk4N2ZmNmZmMWZlNWQzZDRkM2MzZjY3ZjI3MDFkOTM5In0seyJmaWxlSWQiOiI2N2U4YmU2YzBiNGYzYzM0NzhiMjgwZWRlYzQzMmUwOTEyMmQwMDQzIiwiZm9ybWF0IjoiQUFDXzI0IiwidXJsIjoiaHR0cHM6Ly9wLnNjZG4uY28vbXAzLXByZXZpZXcvNjdlOGJlNmMwYjRmM2MzNDc4YjI4MGVkZWM0MzJlMDkxMjJkMDA0MyJ9LHsiZmlsZUlkIjoiOGFjNDllNDBhNGRmMWY2YmM3ODkxNDEyNjM1ZjNmZjZhNDI1NWY3NCIsImZvcm1hdCI6Ik9HR19WT1JCSVNfOTYiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy84YWM0OWU0MGE0ZGYxZjZiYzc4OTE0MTI2MzVmM2ZmNmE0MjU1Zjc0In0seyJmaWxlSWQiOiJmOGMyYmI4OTVhZTdmOWJhNzQzODhlNDcyNjVkNDBmZjlmODIzMDIxIiwiZm9ybWF0IjoiTVA0XzEyOCIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3L2Y4YzJiYjg5NWFlN2Y5YmE3NDM4OGU0NzI2NWQ0MGZmOWY4MjMwMjEifSx7ImZpbGVJZCI6Ijk0ZDU3MWE4MzMwYTRiMThlMDdiMDgzZjZmNWUxMmQ4MzQ4YmExZjYiLCJmb3JtYXQiOiJNUDRfMTI4X0RVQUwiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy85NGQ1NzFhODMzMGE0YjE4ZTA3YjA4M2Y2ZjVlMTJkODM0OGJhMWY2In1dfSwiY29udGVudFJhdGluZyI6eyJsYWJlbCI6Ik5PTkUifSwiY292ZXJBcnQiOnsic291cmNlcyI6W3siaGVpZ2h0Ijo2NCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwZjY4ZDkxOGE2OTllNWJhODc0NTA2OTUwNjc0YSIsIndpZHRoIjo2NH0seyJoZWlnaHQiOjMwMCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwNWYxZjkxOGE2OTllNWJhODc0NTA2OTUwNjc0YSIsIndpZHRoIjozMDB9LHsiaGVpZ2h0Ijo2NDAsInVybCI6Imh0dHBzOi8vaS5zY2RuLmNvL2ltYWdlL2FiNjc2NTYzMDAwMGJhOGE5MThhNjk5ZTViYTg3NDUwNjk1MDY3NGEiLCJ3aWR0aCI6NjQwfV19LCJkZXNjcmlwdGlvbiI6IlZ1ZS5qcyBjYW4gYmUgdXNlZCBpbiBtYW55IGRpZmZlcmVudCB3YXlzIC0gd2l0aCBhIG1ldGEgZnJhbWV3b3JrLCBhcyBhIHBsYWluIFNQQSwgdmlhIHRoZSBzY3JpcHQgdGFnIGFuZCBhbHNvIHdpdGggSW5lcnRpYSEgQ3JlYXRlZCBpbiB0aGUgTGFyYXZlbCBlY29zeXN0ZW0gd2l0aCBhZGFwdGVycyBmb3IgdmFyaW91cyBiYWNrLSBlbmQgZnJvbnQtZW5kIGZyYW1ld29ya3MsIEFsZXggYW5kIE1pY2hhZWwgZ290IGEgc3BlY2lhbCBndWVzdCBvbiB0aGUgZXBpc29kZSB3aG8gY291bGRuJ3QgZml0IGJldHRlciB0byBpbGx1c3RyYXRlIHdoYXQgSW5lcnRpYSBpcyBjYXBhYmxlIG9mLkpvZSBUYW5uZW5iYXVtLCBTb2Z0d2FyZSBFbmdpbmVlciBhdCBMYXJhdmVsIGFuZCBJbmVydGlhIGNvbnRyaWJ1dG9yIGdvZXMgYWxsIGluLWRlcHRoIG9uIHRoZSBjYXBhYmlsaXRpZXMgb2YgdGhlIGxpYnJhcnksIGFzIHdlbGwgYXMgc3dlZXQgZmVhdHVyZXMgYW5kIGNoYW5nZXMgY29taW5nIHVwIGZvciB0aGUgZnV0dXJlIEluZXJ0aWEgdjIgcmVsZWFzZS5Mb29raW5nIGZvciBhbiBlYXN5IHdheSB0byB3cml0ZSBhcHBsaWNhdGlvbnM/IEFmdGVyIHRoaXMgZXBpc29kZSwgeW91IG1pZ2h0IGhhdmUgZm91bmQgaXQuRW5qb3kgdGhlIGVwaXNvZGUhT3VyIEd1ZXN0Sm9lIFRhbm5lbmJhdW1XZWJzaXRlVHdpdHRlckNoYXB0ZXJzKDAwOjAwKSAtIFdlbGNvbWUgdG8gRGVqYVZ1ZSAgKDAwOjU2KSAtIFdoYXQgaXMgTGFyYXZlbCBhbmQgd2hlbiBkaWQgeW91IGdvdCBpbnRvIGl0PyAgKDA1OjQwKSAtIERvZXMgTGFyYXZlbCBoYXMgc3RhcnRlciBraXRzPyAgKDA3OjQxKSAtIExhcmF2ZWwgQ2xvdWQsIGZ1bmRpbmcgYW5kIGdyb3d0aCAgKDEzOjIyKSAtIFdoYXQgYXJlIFRVSXM/ICAoMTY6MzcpIC0gV2hhdCBpcyBJbmVydGlhPyAgKDIyOjE1KSAtIEhvdyB3b3VsZCBBdXRoZW50aWNhdGlvbiB3b3JrIHdpdGggSW5lcnRpYT8gICgyNDowMSkgLSBBZGFwdGVycyBmb3IgUGhvZW5peCBhbmQgUmFpbHMgICgyNTowOCkgLSBGZWF0dXJlIGluIEluZXJ0aWEgdmVyc2lvbiAyICAoMzI6NTMpIC0gQnJlYWtpbmcgY2hhbmdlcyBmb3IgdjIgICgzMzo1NikgLSBDb21wb3NpdGlvbiBBUEkgb3IgT3B0aW9ucyBBUEk/ICAoMzc6MjcpIC0gV2hhdCBwYXJ0IGlzIHRoZSByb3V0aW5nIGxheWVyPyAgKDM4OjQ4KSAtIEZ1cnRoZXIgSW5lcnRpYSBIZWxwZXJzICAoNDE6MTQpIC0gSW5lcnRpYSdzIFNTUiBzdG9yeSAgKDQ1OjE3KSAtIERhdGEgZmV0Y2hpbmcgICg0Njo0OCkgLSBXaGVuIG5vdCB0byBJbmVydGlhPyAgKDQ3OjQ1KSAtIEhvdyBtdWNoIGRvIHlvdSB0aGluayBhYm91dCBJbmVydGlhIHdoZW4gY29kaW5nPyAgKDUwOjA5KSAtIFRvbyBtYW55IGFtYXppbmcgdGhpbmdzIHRvIHVzZSAgKDUyOjIwKSAtIFdhc24ndCBJbmVydGlhIFwiZG9uZVwiPyAgKDU0OjIzKSAtIFdyYXBwaW5nIHVwIExpbmtzIGFuZCBSZXNvdXJjZXNHZXQgMTUlIE9GRiBmb3IgeW91ciBWdWUgVG9yb250byB0aWNrZXQgd2l0aCBjb2RlIERFSkFWVUUgKkplc3MgQXJjaGVyIC0gXCJVbnZlaWxpbmcgTGFyYXZlbCBQcm9tcHRzXCJKb2UgVGFubmVuYmF1bSAtIFwiVGVybWluYWwgVUlzXCLCoEluZXJ0aWEuanNMYXJhdmVsTGl2ZXdpcmVZb3VyIEhvc3RzQWxleGFuZGVyIExpY2h0ZXJUd2l0dGVyWW91VHViZVdlYnNpdGVNaWNoYWVsIFRoaWVzc2VuVHdpdHRlcllvdVR1YmVXZWJzaXRlLS0tTGlua3MgbWFya2VkIHdpdGggKiBhcmUgYWZmaWxpYXRlIGxpbmtzLiBXZSBnZXQgYSBzbWFsbCBjb21taXNzaW9uIHdoZW4geW91IHJlZ2lzdGVyIGZvciB0aGUgc2VydmljZSB0aHJvdWdoIG91ciBsaW5rLiBUaGlzIGhlbHBzIHVzIHRvIGtlZXAgdGhlIHBvZGNhc3QgcnVubmluZy4gV2Ugb25seSBpbmNsdWRlIGFmZmlsaWF0ZSBsaW5rcyBmb3Igc2VydmljZXMgbWVudGlvbmVkIGluIHRoZSBlcGlzb2RlIG9yIHRoYXQgd2UgdXNlIG91cnNlbHZlcy4iLCJkdXJhdGlvbiI6eyJ0b3RhbE1pbGxpc2Vjb25kcyI6MzM5Mzg4Mn0sImlkIjoiNVExTWdKVGE1dTV6RTRXMnB0ZlVoVSIsIm1lZGlhVHlwZXMiOlsiQVVESU8iXSwibmFtZSI6IkluZXJ0aWEuanMgKHdpdGggSm9lIFRhbm5lbmJhdW0pIiwicGxheWFiaWxpdHkiOnsicGxheWFibGUiOnRydWUsInJlYXNvbiI6IlBMQVlBQkxFIn0sInBsYXllZFN0YXRlIjp7InBsYXlQb3NpdGlvbk1pbGxpc2Vjb25kcyI6MCwic3RhdGUiOiJOT1RfU1RBUlRFRCJ9LCJwb2RjYXN0VjIiOnsiX190eXBlbmFtZSI6IlBvZGNhc3RSZXNwb25zZVdyYXBwZXIiLCJkYXRhIjp7Il9fdHlwZW5hbWUiOiJQb2RjYXN0IiwiY292ZXJBcnQiOnsic291cmNlcyI6W3siaGVpZ2h0Ijo2NCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwZjY4ZDM2ZDVjZTVlZjVhNDc0MDZlZjk4NGFiZCIsIndpZHRoIjo2NH0seyJoZWlnaHQiOjMwMCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwNWYxZjM2ZDVjZTVlZjVhNDc0MDZlZjk4NGFiZCIsIndpZHRoIjozMDB9LHsiaGVpZ2h0Ijo2NDAsInVybCI6Imh0dHBzOi8vaS5zY2RuLmNvL2ltYWdlL2FiNjc2NTYzMDAwMGJhOGEzNmQ1Y2U1ZWY1YTQ3NDA2ZWY5ODRhYmQiLCJ3aWR0aCI6NjQwfV19LCJuYW1lIjoiRGVqYVZ1ZSIsInNob3dUeXBlcyI6W10sInVyaSI6InNwb3RpZnk6c2hvdzo1VlExNVFIa0M3SFNtd1RZUjd2Q1BGIn19LCJyZWxlYXNlRGF0ZSI6eyJpc29TdHJpbmciOiIyMDI0LTEwLTEwVDE4OjA4OjAwWiJ9LCJyZXN0cmljdGlvbnMiOnsicGF5d2FsbENvbnRlbnQiOmZhbHNlfSwidXJpIjoic3BvdGlmeTplcGlzb2RlOjVRMU1nSlRhNXU1ekU0VzJwdGZVaFUifSx7Il9fdHlwZW5hbWUiOiJFcGlzb2RlIiwiYXVkaW8iOnsiaXRlbXMiOlt7ImZpbGVJZCI6ImY3YmEzMWJhMjI3NzRlNGY3MTFhMzU2OTczYTVmODRiNWY3MjE5MTgiLCJmb3JtYXQiOiJPR0dfVk9SQklTXzk2IiwidXJsIjoiaHR0cHM6Ly9wLnNjZG4uY28vbXAzLXByZXZpZXcvZjdiYTMxYmEyMjc3NGU0ZjcxMWEzNTY5NzNhNWY4NGI1ZjcyMTkxOCJ9LHsiZmlsZUlkIjoiOTVmMDFiOWJiM2UyM2QzY2E3Y2RjZjUwNmQ3NzU0N2UzNzFiNGVmMiIsImZvcm1hdCI6Ik1QNF8xMjgiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy85NWYwMWI5YmIzZTIzZDNjYTdjZGNmNTA2ZDc3NTQ3ZTM3MWI0ZWYyIn0seyJmaWxlSWQiOiJhMjEwMjE2MGNhMjYzZDViOWEyMzFlOGI2MDY1YjYwZmFmYmMyNTU3IiwiZm9ybWF0IjoiQUFDXzI0IiwidXJsIjoiaHR0cHM6Ly9wLnNjZG4uY28vbXAzLXByZXZpZXcvYTIxMDIxNjBjYTI2M2Q1YjlhMjMxZThiNjA2NWI2MGZhZmJjMjU1NyJ9LHsiZmlsZUlkIjoiNzY2ZGNlOWRjNDE0YjcwOGU5ZjE3NmZjMDE2NTBlNDM5ZmI3YWI4NSIsImZvcm1hdCI6Ik1QNF8xMjhfQ0JDUyIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3Lzc2NmRjZTlkYzQxNGI3MDhlOWYxNzZmYzAxNjUwZTQzOWZiN2FiODUifSx7ImZpbGVJZCI6IjkyMmFiMThiYWE5ZTRhODUwMTcxYjRhMmExY2I5MTE3Mzk5OGM2YjMiLCJmb3JtYXQiOiJNUDRfMTI4X0RVQUwiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy85MjJhYjE4YmFhOWU0YTg1MDE3MWI0YTJhMWNiOTExNzM5OThjNmIzIn1dfSwiY29udGVudFJhdGluZyI6eyJsYWJlbCI6Ik5PTkUifSwiY292ZXJBcnQiOnsic291cmNlcyI6W3siaGVpZ2h0Ijo2NCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwZjY4ZDU1YTBlM2E4ZDgxNGIyNDNjYTA4NTkxMyIsIndpZHRoIjo2NH0seyJoZWlnaHQiOjMwMCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwNWYxZjU1YTBlM2E4ZDgxNGIyNDNjYTA4NTkxMyIsIndpZHRoIjozMDB9LHsiaGVpZ2h0Ijo2NDAsInVybCI6Imh0dHBzOi8vaS5zY2RuLmNvL2ltYWdlL2FiNjc2NTYzMDAwMGJhOGE1NWEwZTNhOGQ4MTRiMjQzY2EwODU5MTMiLCJ3aWR0aCI6NjQwfV19LCJkZXNjcmlwdGlvbiI6IlN1bW1hcnlXaXRoIHRoZSBncm93dGggb2YgdmVjdG9yIGRhdGEgYXMgYSBjb3JlIGVsZW1lbnQgb2YgYW55IEFJIGFwcGxpY2F0aW9uIGNvbWVzIHRoZSBuZWVkIHRvIGtlZXAgdGhvc2UgdmVjdG9ycyB1cCB0byBkYXRlLiBXaGVuIHlvdSBnbyBiZXlvbmQgcHJvdG90eXBlcyBhbmQgaW50byBwcm9kdWN0aW9uIHlvdSB3aWxsIG5lZWQgYSB3YXkgdG8gY29udGludWUgZXhwZXJpbWVudGluZyB3aXRoIG5ldyBlbWJlZGRpbmcgbW9kZWxzLCBjaHVua2luZyBzdHJhdGVnaWVzLCBldGMuIFlvdSB3aWxsIGFsc28gbmVlZCBhIHdheSB0byBrZWVwIHRoZSBlbWJlZGRpbmdzIHVwIHRvIGRhdGUgYXMgeW91ciBkYXRhIGNoYW5nZXMuIFRoZSB0ZWFtIGF0IFRpbWVzY2FsZSBjcmVhdGVkIHRoZSBwZ2FpIFZlY3Rvcml6ZXIgdG9vbGNoYWluIHRvIGxldCB5b3UgbWFuYWdlIHRoYXQgd29yayBpbiB5b3VyIFBvc3RncmVzIGRhdGFiYXNlLiBJbiB0aGlzIGVwaXNvZGUgQXZ0aGFyIFNld3JhdGhhbiBleHBsYWlucyBob3cgaXQgd29ya3MgYW5kIGhvdyB5b3UgY2FuIHN0YXJ0IHVzaW5nIGl0IHRvZGF5LkFubm91bmNlbWVudHNIZWxsbyBhbmQgd2VsY29tZSB0byB0aGUgQUkgRW5naW5lZXJpbmcgUG9kY2FzdCwgeW91ciBndWlkZSB0byB0aGUgZmFzdC1tb3Zpbmcgd29ybGQgb2YgYnVpbGRpbmcgc2NhbGFibGUgYW5kIG1haW50YWluYWJsZSBBSSBzeXN0ZW1zWW91ciBob3N0IGlzIFRvYmlhcyBNYWNleSBhbmQgdG9kYXkgSSdtIGludGVydmlld2luZyBBdnRoYXIgU2V3cmF0aGFuIGFib3V0IHRoZSBwZ2FpIGV4dGVuc2lvbiBmb3IgUG9zdGdyZXMgYW5kIGhvdyB0byBydW4geW91ciBBSSB3b3JrZmxvd3MgaW4geW91ciBkYXRhYmFzZUludGVydmlld0ludHJvZHVjdGlvbkhvdyBkaWQgeW91IGdldCBpbnZvbHZlZCBpbiBtYWNoaW5lIGxlYXJuaW5nP0NhbiB5b3UgZGVzY3JpYmUgd2hhdCBwZ2FpIFZlY3Rvcml6ZXIgaXMgYW5kIHRoZSBzdG9yeSBiZWhpbmQgaXQ/V2hhdCBhcmUgdGhlIGJlbmVmaXRzIG9mIHVzaW5nIHRoZSBkYXRhYmFzZSBlbmdpbmUgdG8gZXhlY3V0ZSBBSSB3b3JrZmxvd3M/V2hhdCB0eXBlcyBvZiBvcGVyYXRpb25zIGRvZXMgcGdhaSBWZWN0b3JpemVyIGVuYWJsZT9XaGF0IGFyZSBzb21lIGNvbW1vbiBnZW5lcmF0aXZlIEFJIHBhdHRlcm5zIHRoYXQgY2FuJ3QgYmUgZG9uZSB3aXRoIHBnYWk/QUkgYXBwbGljYXRpb25zIHJlcXVpcmUgYSBsYXJnZSBhbmQgY29tcGxleCBzZXQgb2YgZGVwZW5kZW5jaWVzLiBIb3cgZG9lcyB0aGF0IHdvcmsgd2l0aCBwZ2FpIFZlY3Rvcml6ZXIgYW5kIHRoZSBQeXRob24gcnVudGltZSBpbiBQb3N0Z3Jlcz9XaGF0IGFyZSBzb21lIG9mIHRoZSBvdGhlciBjaGFsbGVuZ2VzIG9yIHN5c3RlbSBwcmVzc3VyZXMgdGhhdCBhcmUgaW50cm9kdWNlZCBieSBydW5uaW5nIHRoZXNlIEFJIHdvcmtmbG93cyBpbiB0aGUgZGF0YWJhc2UgY29udGV4dD9DYW4geW91IGRlc2NyaWJlIGhvdyB0aGUgcGdhaSBleHRlbnNpb24gaXMgaW1wbGVtZW50ZWQ/V2l0aCB0aGUgcmFwaWQgcGFjZSBvZiBjaGFuZ2UgaW4gdGhlIEFJIGVjb3N5c3RlbSwgaG93IGhhcyB0aGF0IGluZm9ybWVkIHRoZSBzZXQgb2YgZmVhdHVyZXMgdGhhdCBtYWtlIHNlbnNlIGluIHBnYWkgVmVjdG9yaXplciBhbmQgd29uJ3QgcmVxdWlyZSByZWJ1aWxkaW5nIGluIDYgbW9udGhzP0NhbiB5b3UgZGVzY3JpYmUgdGhlIHdvcmtmbG93IG9mIHVzaW5nIHBnYWkgVmVjdG9yaXplciB0byBidWlsZCBhbmQgbWFpbnRhaW4gYSBzZXQgb2YgZW1iZWRkaW5ncyBpbiB0aGVpciBkYXRhYmFzZT9Ib3cgY2FuIHBnYWkgVmVjdG9yaXplciBoZWxwIHdpdGggdGhlIHNpdHVhdGlvbiBvZiBtaWdyYXRpbmcgdG8gYSBuZXcgZW1iZWRkaW5nIG1vZGVsIGFuZCBoYXZpbmcgdG8gcmVpbmRleCBhbGwgb2YgdGhlIGNvbnRlbnQ/SG93IGRvIHlvdSB0aGluayBhYm91dCB0aGUgZGV2ZWxvcGVyIGV4cGVyaWVuY2UgZm9yIHBlb3BsZSB3aG8gYXJlIHdvcmtpbmcgd2l0aCBwZ2FpIFZlY3Rvcml6ZXIsIGFzIGNvbXBhcmVkIHRvIHVzaW5nIGUuZy4gTGFuZ0NoYWluLCBMbGFtYUluZGV4LCBldGMuP1doYXQgYXJlIHRoZSBtb3N0IGludGVyZXN0aW5nLCBpbm5vdmF0aXZlLCBvciB1bmV4cGVjdGVkIHdheXMgdGhhdCB5b3UgaGF2ZSBzZWVuIHBnYWkgVmVjdG9yaXplciB1c2VkP1doYXQgYXJlIHRoZSBtb3N0IGludGVyZXN0aW5nLCB1bmV4cGVjdGVkLCBvciBjaGFsbGVuZ2luZyBsZXNzb25zIHRoYXQgeW91IGhhdmUgbGVhcm5lZCB3aGlsZSB3b3JraW5nIG9uIHBnYWkgVmVjdG9yaXplcj9XaGVuIGlzIHBnYWkgVmVjdG9yaXplciB0aGUgd3JvbmcgY2hvaWNlP1doYXQgZG8geW91IGhhdmUgcGxhbm5lZCBmb3IgdGhlIGZ1dHVyZSBvZiBwZ2FpIFZlY3Rvcml6ZXI/Q29udGFjdCBJbmZvTGlua2VkSW5XZWJzaXRlUGFydGluZyBRdWVzdGlvbkZyb20geW91ciBwZXJzcGVjdGl2ZSwgd2hhdCBhcmUgdGhlIGJpZ2dlc3QgZ2FwcyBpbiB0b29saW5nLCB0ZWNobm9sb2d5LCBvciB0cmFpbmluZyBmb3IgQUkgc3lzdGVtcyB0b2RheT9DbG9zaW5nIEFubm91bmNlbWVudHNUaGFuayB5b3UgZm9yIGxpc3RlbmluZyEgRG9uJ3QgZm9yZ2V0IHRvIGNoZWNrIG91dCBvdXIgb3RoZXIgc2hvd3MuIFRoZSBEYXRhIEVuZ2luZWVyaW5nIFBvZGNhc3QgY292ZXJzIHRoZSBsYXRlc3Qgb24gbW9kZXJuIGRhdGEgbWFuYWdlbWVudC4gUG9kY2FzdC5fX2luaXRfXyBjb3ZlcnMgdGhlIFB5dGhvbiBsYW5ndWFnZSwgaXRzIGNvbW11bml0eSwgYW5kIHRoZSBpbm5vdmF0aXZlIHdheXMgaXQgaXMgYmVpbmcgdXNlZC5WaXNpdCB0aGUgc2l0ZSB0byBzdWJzY3JpYmUgdG8gdGhlIHNob3csIHNpZ24gdXAgZm9yIHRoZSBtYWlsaW5nIGxpc3QsIGFuZCByZWFkIHRoZSBzaG93IG5vdGVzLklmIHlvdSd2ZSBsZWFybmVkIHNvbWV0aGluZyBvciB0cmllZCBvdXQgYSBwcm9qZWN0IGZyb20gdGhlIHNob3cgdGhlbiB0ZWxsIHVzIGFib3V0IGl0ISBFbWFpbCBob3N0c0BhaWVuZ2luZWVyaW5ncG9kY2FzdC5jb20gd2l0aCB5b3VyIHN0b3J5LlRvIGhlbHAgb3RoZXIgcGVvcGxlIGZpbmQgdGhlIHNob3cgcGxlYXNlIGxlYXZlIGEgcmV2aWV3IG9uIGlUdW5lcyBhbmQgdGVsbCB5b3VyIGZyaWVuZHMgYW5kIGNvLXdvcmtlcnMuTGlua3NUaW1lc2NhbGVwZ2FpVHJhbnNmb3JtZXIgYXJjaGl0ZWN0dXJlIGZvciBkZWVwIGxlYXJuaW5nTmV1cmFsIE5ldHdvcmtzcGd2ZWN0b3JwZ3ZlY3RvcnNjYWxlTW9kYWxSQUcgPT0gUmV0cmlldmFsIEF1Z21lbnRlZCBHZW5lcmF0aW9uU2VtYW50aWMgU2VhcmNoT2xsYW1hR3JhcGhSQUdhZ2Vuc2dyYXBoTGFuZ0NoYWluTGxhbWFJbmRleEhheXN0YWNrSVZGRmxhdEhOU1dEaXNrQU5OUmVwbC5pdCBBZ2VudEJNMjVUU1ZlY3RvclBhcmFkZURCVGhlIGludHJvIGFuZCBvdXRybyBtdXNpYyBpcyBmcm9tIEhpdG1hbidzIExvdmVzb25nIGZlYXQuIFBhb2xhIEdyYXppYW5vIGJ5IFRoZSBGcmVhayBGYW5kYW5nbyBPcmNoZXN0cmEvQ0MgQlktU0EgMy4wIiwiZHVyYXRpb24iOnsidG90YWxNaWxsaXNlY29uZHMiOjMyMzAwNTR9LCJpZCI6IjRwbjNEY21zVlE0TnJjUXk3Wk1TVk4iLCJtZWRpYVR5cGVzIjpbIkFVRElPIl0sIm5hbWUiOiJCdWlsZGluZyBBSSBTeXN0ZW1zIG9uIFBvc3RncmVzOiBBbiBJbnNpZGUgTG9vayBhdCBwZ2FpIFZlY3Rvcml6ZXIiLCJwbGF5YWJpbGl0eSI6eyJwbGF5YWJsZSI6dHJ1ZSwicmVhc29uIjoiUExBWUFCTEUifSwicGxheWVkU3RhdGUiOnsicGxheVBvc2l0aW9uTWlsbGlzZWNvbmRzIjowLCJzdGF0ZSI6Ik5PVF9TVEFSVEVEIn0sInBvZGNhc3RWMiI6eyJfX3R5cGVuYW1lIjoiUG9kY2FzdFJlc3BvbnNlV3JhcHBlciIsImRhdGEiOnsiX190eXBlbmFtZSI6IlBvZGNhc3QiLCJjb3ZlckFydCI6eyJzb3VyY2VzIjpbeyJoZWlnaHQiOjY0LCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDBmNjhkNTVhMGUzYThkODE0YjI0M2NhMDg1OTEzIiwid2lkdGgiOjY0fSx7ImhlaWdodCI6MzAwLCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDA1ZjFmNTVhMGUzYThkODE0YjI0M2NhMDg1OTEzIiwid2lkdGgiOjMwMH0seyJoZWlnaHQiOjY0MCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwYmE4YTU1YTBlM2E4ZDgxNGIyNDNjYTA4NTkxMyIsIndpZHRoIjo2NDB9XX0sIm5hbWUiOiJBSSBFbmdpbmVlcmluZyBQb2RjYXN0Iiwic2hvd1R5cGVzIjpbXSwidXJpIjoic3BvdGlmeTpzaG93OjE5S1NZVFRCNURURWIyejVRM3FpVGgifX0sInJlbGVhc2VEYXRlIjp7Imlzb1N0cmluZyI6IjIwMjQtMTEtMTFUMDA6NDI6MDBaIn0sInJlc3RyaWN0aW9ucyI6eyJwYXl3YWxsQ29udGVudCI6ZmFsc2V9LCJ1cmkiOiJzcG90aWZ5OmVwaXNvZGU6NHBuM0RjbXNWUTROcmNReTdaTVNWTiJ9LHsiX190eXBlbmFtZSI6IkVwaXNvZGUiLCJhdWRpbyI6eyJpdGVtcyI6W3siZmlsZUlkIjoiMDdhM2VlZmQ1NjgxNWYyNzdjMzY5OWVmOTQ0MzhhNDI1MDZjYTJkOCIsImZvcm1hdCI6Ik1QNF8xMjhfRFVBTCIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3LzA3YTNlZWZkNTY4MTVmMjc3YzM2OTllZjk0NDM4YTQyNTA2Y2EyZDgifSx7ImZpbGVJZCI6IjlkYzhiYzJhYjBhZWZlY2ZmN2M5NDNkMGU5OGRlMGYzOTc0NjE0ZDUiLCJmb3JtYXQiOiJPR0dfVk9SQklTXzk2IiwidXJsIjoiaHR0cHM6Ly9wLnNjZG4uY28vbXAzLXByZXZpZXcvOWRjOGJjMmFiMGFlZmVjZmY3Yzk0M2QwZTk4ZGUwZjM5NzQ2MTRkNSJ9LHsiZmlsZUlkIjoiZjVkOTBlZTM4NTA2MTkyZTZhYWVlMzljM2E3YzA2MmExYmI1MDk3MSIsImZvcm1hdCI6IkFBQ18yNCIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3L2Y1ZDkwZWUzODUwNjE5MmU2YWFlZTM5YzNhN2MwNjJhMWJiNTA5NzEifSx7ImZpbGVJZCI6IjZkODM4MGNkMTBjOGYxMTNhY2E0ZWNkNDE5OWJjZWNiNGM0MWI1ZjQiLCJmb3JtYXQiOiJNUDRfMTI4X0NCQ1MiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy82ZDgzODBjZDEwYzhmMTEzYWNhNGVjZDQxOTliY2VjYjRjNDFiNWY0In0seyJmaWxlSWQiOiI1ZjcxNmZjYWUxZDJiN2Y3MDE2MjQwZmExNWQwNDA0NThkN2M5NDVkIiwiZm9ybWF0IjoiTVA0XzEyOCIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3LzVmNzE2ZmNhZTFkMmI3ZjcwMTYyNDBmYTE1ZDA0MDQ1OGQ3Yzk0NWQifV19LCJjb250ZW50UmF0aW5nIjp7ImxhYmVsIjoiTk9ORSJ9LCJjb3ZlckFydCI6eyJzb3VyY2VzIjpbeyJoZWlnaHQiOjY0LCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDBmNjhkMmMzY2E5YzZiZjExODk2NWNkZDM3ZDBiIiwid2lkdGgiOjY0fSx7ImhlaWdodCI6MzAwLCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDA1ZjFmMmMzY2E5YzZiZjExODk2NWNkZDM3ZDBiIiwid2lkdGgiOjMwMH0seyJoZWlnaHQiOjY0MCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwYmE4YTJjM2NhOWM2YmYxMTg5NjVjZGQzN2QwYiIsIndpZHRoIjo2NDB9XX0sImRlc2NyaXB0aW9uIjoiQW4gYWlyaGFja3MuZm0gY29udmVyc2F0aW9uIHdpdGggR2Vvcmdpb3MgQW5kcmlhbmFraXMgIChAZ2VvYW5kODYpIGFib3V0OiAgICAgICAgIGRpc2N1c3Npb24gb24gaW50ZWdyYXRpbmcgbGFuZ2NoYWluNGogd2l0aCBxdWFya3VzIGZvciBlbnRlcnByaXNlIEFJIGFwcGxpY2F0aW9ucywgc2ltaWxhcml0aWVzIGJldHdlZW4gTExNIGludGVncmF0aW9uIGFuZCBtaWNyb3NlcnZpY2UgYXJjaGl0ZWN0dXJlLCBiZW5lZml0cyBvZiB1c2luZyBKYXZhIGFuZCBNaWNyb1Byb2ZpbGUgZm9yIEFJIGRldmVsb3BtZW50LCBleHBsYW5hdGlvbiBvZiBBSSBzZXJ2aWNlcywgY2hhdCBtZW1vcnksIGFuZCB0b29scyBpbiBMYW5nQ2hhaW40SiwgaW1wb3J0YW5jZSBvZiBzZXNzaW9uIG1hbmFnZW1lbnQgYW5kIGZhdWx0IHRvbGVyYW5jZSBpbiBMTE0gYXBwbGljYXRpb25zLCB2ZWN0b3IgZGF0YWJhc2VzIGFuZCBlbWJlZGRpbmdzIGZvciBlZmZpY2llbnQgaW5mb3JtYXRpb24gcmV0cmlldmFsLCBSQUcgKFJldHJpZXZlIEF1Z21lbnRlZCBHZW5lcmF0aW9uKSBpbXBsZW1lbnRhdGlvbiBpbiBlbnRlcnByaXNlIHNldHRpbmdzLCBRdWFya3VzIGRldiBtb2RlIGZlYXR1cmVzIGZvciBMTE0gZXhwZXJpbWVudGF0aW9uLCBuYXRpdmUgaW1hZ2Ugc3VwcG9ydCB3aXRoIEdyYWFsVk0sIGxvY2FsIGluZmVyZW5jZSBwb3NzaWJpbGl0aWVzIHdpdGggSmF2YSAyMSdzIFZlY3RvciBBUEkgYW5kIHF1YW50aXplZCBtb2RlbHMsIGNoYWxsZW5nZXMgaW4gcHJvbXB0IGVuZ2luZWVyaW5nIGFuZCBtb2RlbCBzZWxlY3Rpb24sIHVwY29taW5nIGZlYXR1cmVzIGluIExhbmdDaGFpbjRKIGluY2x1ZGluZyBPbGxhbWEgdG9vbCBzdXBwb3J0IGFuZCBpbXByb3ZlZCByZXN1bHQgc3RyZWFtaW5nLCBmdXR1cmUgZGV2ZWxvcG1lbnRzIGluIEphdmEgZm9yIEFJIGFuZCBHUFUgc3VwcG9ydCB3aXRoIFByb2plY3QgQmFieWxvbiwgaW1wb3J0YW5jZSBvZiBlbnRlcnByaXNlLWdyYWRlIGZlYXR1cmVzIGxpa2UgQ0kvQ0QsIHRlc3RpbmcsIGFuZCBjbG91ZCBkZXBsb3ltZW50IGZvciBMTE0gYXBwbGljYXRpb25zICAgICAgR2Vvcmdpb3MgQW5kcmlhbmFraXMgb24gdHdpdHRlcjogQGdlb2FuZDg2IiwiZHVyYXRpb24iOnsidG90YWxNaWxsaXNlY29uZHMiOjM3NjUzOTR9LCJpZCI6IjJOWUFMcjc1WnVLaTZVT2s2a25lOEwiLCJtZWRpYVR5cGVzIjpbIkFVRElPIl0sIm5hbWUiOiJRdWFya3VzIGFuZCBMYW5nQ2hhaW40SiAtIEEgTWF0Y2ggTWFkZSBpbiBIZWF2ZW4iLCJwbGF5YWJpbGl0eSI6eyJwbGF5YWJsZSI6dHJ1ZSwicmVhc29uIjoiUExBWUFCTEUifSwicGxheWVkU3RhdGUiOnsicGxheVBvc2l0aW9uTWlsbGlzZWNvbmRzIjowLCJzdGF0ZSI6Ik5PVF9TVEFSVEVEIn0sInBvZGNhc3RWMiI6eyJfX3R5cGVuYW1lIjoiUG9kY2FzdFJlc3BvbnNlV3JhcHBlciIsImRhdGEiOnsiX190eXBlbmFtZSI6IlBvZGNhc3QiLCJjb3ZlckFydCI6eyJzb3VyY2VzIjpbeyJoZWlnaHQiOjY0LCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDBmNjhkMmMzY2E5YzZiZjExODk2NWNkZDM3ZDBiIiwid2lkdGgiOjY0fSx7ImhlaWdodCI6MzAwLCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDA1ZjFmMmMzY2E5YzZiZjExODk2NWNkZDM3ZDBiIiwid2lkdGgiOjMwMH0seyJoZWlnaHQiOjY0MCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwYmE4YTJjM2NhOWM2YmYxMTg5NjVjZGQzN2QwYiIsIndpZHRoIjo2NDB9XX0sIm5hbWUiOiJhaXJoYWNrcy5mbSBwb2RjYXN0IHdpdGggYWRhbSBiaWVuIiwic2hvd1R5cGVzIjpbXSwidXJpIjoic3BvdGlmeTpzaG93OjZuT1RRTGEydVp4ZXlHcE1XOGVwcFMifX0sInJlbGVhc2VEYXRlIjp7Imlzb1N0cmluZyI6IjIwMjQtMTAtMjBUMDk6MzM6MDBaIn0sInJlc3RyaWN0aW9ucyI6eyJwYXl3YWxsQ29udGVudCI6ZmFsc2V9LCJ1cmkiOiJzcG90aWZ5OmVwaXNvZGU6Mk5ZQUxyNzVadUtpNlVPazZrbmU4TCJ9LHsiX190eXBlbmFtZSI6IkVwaXNvZGUiLCJhdWRpbyI6eyJpdGVtcyI6W3siZmlsZUlkIjoiYTRkYmQ1Y2MxZjEyNTNiYzdkZWVmODZlZmFlMTMzMTcxMzk5ZTM5NiIsImZvcm1hdCI6Ik1QNF8xMjgiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy9hNGRiZDVjYzFmMTI1M2JjN2RlZWY4NmVmYWUxMzMxNzEzOTllMzk2In0seyJmaWxlSWQiOiJmM2I3ZDNkOWU3YWY5MGU4YjQwM2ExNjRkYmU4OGNmOTlhZTA4NzM5IiwiZm9ybWF0IjoiT0dHX1ZPUkJJU185NiIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3L2YzYjdkM2Q5ZTdhZjkwZThiNDAzYTE2NGRiZTg4Y2Y5OWFlMDg3MzkifSx7ImZpbGVJZCI6ImMxZGRjNzkyNzQ5ZTVhN2NhOWU1MjdjZWZjMmQ3ODk3M2E4NWU5OTYiLCJmb3JtYXQiOiJNUDRfMTI4X0RVQUwiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy9jMWRkYzc5Mjc0OWU1YTdjYTllNTI3Y2VmYzJkNzg5NzNhODVlOTk2In0seyJmaWxlSWQiOiIxMjk3OTdjMjI1NWQzYTNlZjFmZGM2MzhkYjM2OGEwYjFlNDZmZmMwIiwiZm9ybWF0IjoiTVA0XzEyOF9DQkNTIiwidXJsIjoiaHR0cHM6Ly9wLnNjZG4uY28vbXAzLXByZXZpZXcvMTI5Nzk3YzIyNTVkM2EzZWYxZmRjNjM4ZGIzNjhhMGIxZTQ2ZmZjMCJ9LHsiZmlsZUlkIjoiMDRiYjBlM2VhNTA1NWY4MjhmODk3ZmEwYTBiMThmMzNjMmQ2ZTY0YiIsImZvcm1hdCI6IkFBQ18yNCIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3LzA0YmIwZTNlYTUwNTVmODI4Zjg5N2ZhMGEwYjE4ZjMzYzJkNmU2NGIifV19LCJjb250ZW50UmF0aW5nIjp7ImxhYmVsIjoiTk9ORSJ9LCJjb3ZlckFydCI6eyJzb3VyY2VzIjpbeyJoZWlnaHQiOjY0LCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDBmNjhkOTg0YzdmZGU3NmQ0OTdhMDJlM2UyNzYwIiwid2lkdGgiOjY0fSx7ImhlaWdodCI6MzAwLCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDA1ZjFmOTg0YzdmZGU3NmQ0OTdhMDJlM2UyNzYwIiwid2lkdGgiOjMwMH0seyJoZWlnaHQiOjY0MCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwYmE4YTk4NGM3ZmRlNzZkNDk3YTAyZTNlMjc2MCIsIndpZHRoIjo2NDB9XX0sImRlc2NyaXB0aW9uIjoiSm9uYXRoYW4gU2NobmVpZGVyLCB0aGUgY29mb3VuZGVyIG9mIE1vZGVybmUgYW5kIHRoZSBjcmVhdG9yIG9mIE9wZW5SZXdyaXRlLCB0YWxrcyB3aXRoIFNFIFJhZGlvJ3MgR3JlZ29yeSBLYXBmaGFtbWVyIGFib3V0IGF1dG9tYXRlZCBzb2Z0d2FyZSBtYWludGVuYW5jZS4gSW4gYWRkaXRpb24gdG8gZXhwbG9yaW5nIHRoZSBkZXNpZ24gYW5kIGltcGxlbWVudGF0aW9uIG9mIE9wZW5SZXdyaXRlLCBTY2huZWlkZXIgZXhwbGFpbnMgaG93IHRoZSB0b29sIGNhbiBhdXRvbWF0aWNhbGx5IHN1cHBvcnQgc29mdHdhcmUgbWFpbnRlbmFuY2UgdGFza3Mgc3VjaCBhcyBmcmFtZXdvcmsgbWlncmF0aW9uIGFuZCBzZWN1cml0eSBmaXhlcyBmb3IgcHJvZ3JhbXMgaW1wbGVtZW50ZWQgaW4gbGFuZ3VhZ2VzIGxpa2UgSmF2YS4gVGhlIGVwaXNvZGUgYWxzbyBleHBsb3JlcyBob3cgT3BlblJld3JpdGUgdXNlcyB0aGUgbG9zc2xlc3Mgc2VtYW50aWMgdHJlZSB0byBzdXBwb3J0IGF1dG9tYXRlZCByZWZhY3RvcmluZyB0aG91Z2ggdGhlIHVzZSBvZiByZWNpcGVzLiBCcm91Z2h0IHRvIHlvdSBieSBJRUVFIENvbXB1dGVyIFNvY2lldHnCoGFuZMKgSUVFRSBTb2Z0d2FyZSBtYWdhemluZS4iLCJkdXJhdGlvbiI6eyJ0b3RhbE1pbGxpc2Vjb25kcyI6MzE2ODk0MH0sImlkIjoiMTRWYjNzUnZFTWJmQzFrOGRyaW5tbiIsIm1lZGlhVHlwZXMiOlsiQVVESU8iXSwibmFtZSI6IlNFIFJhZGlvIDYyNTogSm9uYXRoYW4gU2NobmVpZGVyIG9uIEF1dG9tYXRlZCBSZWZhY3RvcmluZyB3aXRoIE9wZW5SZXdyaXRlIiwicGxheWFiaWxpdHkiOnsicGxheWFibGUiOnRydWUsInJlYXNvbiI6IlBMQVlBQkxFIn0sInBsYXllZFN0YXRlIjp7InBsYXlQb3NpdGlvbk1pbGxpc2Vjb25kcyI6MCwic3RhdGUiOiJOT1RfU1RBUlRFRCJ9LCJwb2RjYXN0VjIiOnsiX190eXBlbmFtZSI6IlBvZGNhc3RSZXNwb25zZVdyYXBwZXIiLCJkYXRhIjp7Il9fdHlwZW5hbWUiOiJQb2RjYXN0IiwiY292ZXJBcnQiOnsic291cmNlcyI6W3siaGVpZ2h0Ijo2NCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwZjY4ZDk4NGM3ZmRlNzZkNDk3YTAyZTNlMjc2MCIsIndpZHRoIjo2NH0seyJoZWlnaHQiOjMwMCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwNWYxZjk4NGM3ZmRlNzZkNDk3YTAyZTNlMjc2MCIsIndpZHRoIjozMDB9LHsiaGVpZ2h0Ijo2NDAsInVybCI6Imh0dHBzOi8vaS5zY2RuLmNvL2ltYWdlL2FiNjc2NTYzMDAwMGJhOGE5ODRjN2ZkZTc2ZDQ5N2EwMmUzZTI3NjAiLCJ3aWR0aCI6NjQwfV19LCJuYW1lIjoiU29mdHdhcmUgRW5naW5lZXJpbmcgUmFkaW8gLSB0aGUgcG9kY2FzdCBmb3IgcHJvZmVzc2lvbmFsIHNvZnR3YXJlIGRldmVsb3BlcnMiLCJzaG93VHlwZXMiOltdLCJ1cmkiOiJzcG90aWZ5OnNob3c6NlVPM1hRY2xTdU5uR3hCMzlRZEFuTCJ9fSwicmVsZWFzZURhdGUiOnsiaXNvU3RyaW5nIjoiMjAyNC0wNy0xNlQyMzoxNzowMFoifSwicmVzdHJpY3Rpb25zIjp7InBheXdhbGxDb250ZW50IjpmYWxzZX0sInVyaSI6InNwb3RpZnk6ZXBpc29kZToxNFZiM3NSdkVNYmZDMWs4ZHJpbm1uIn0seyJfX3R5cGVuYW1lIjoiRXBpc29kZSIsImF1ZGlvIjp7Iml0ZW1zIjpbeyJmaWxlSWQiOiJiNjNiOTY4YTAwMWZhZDM3MmQ3N2RlZTMwNjg1YmNlNTM0ZDY2YzFmIiwiZm9ybWF0IjoiT0dHX1ZPUkJJU185NiIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3L2I2M2I5NjhhMDAxZmFkMzcyZDc3ZGVlMzA2ODViY2U1MzRkNjZjMWYifSx7ImZpbGVJZCI6IjFkMzlkMThhNTAzZTI2ZjcyMTk0MzRlMjM0YzM1Y2MzZjQ1NmJjNTEiLCJmb3JtYXQiOiJNUDRfMTI4X0NCQ1MiLCJ1cmwiOiJodHRwczovL3Auc2Nkbi5jby9tcDMtcHJldmlldy8xZDM5ZDE4YTUwM2UyNmY3MjE5NDM0ZTIzNGMzNWNjM2Y0NTZiYzUxIn0seyJmaWxlSWQiOiI1MjAyNDdhNGU2N2JmYWQzNTExOTljODI4MDg4YjZiOWE2MTc3NTQ5IiwiZm9ybWF0IjoiTVA0XzEyOF9EVUFMIiwidXJsIjoiaHR0cHM6Ly9wLnNjZG4uY28vbXAzLXByZXZpZXcvNTIwMjQ3YTRlNjdiZmFkMzUxMTk5YzgyODA4OGI2YjlhNjE3NzU0OSJ9LHsiZmlsZUlkIjoiMWUyYTY1N2M3MGNjODJmY2ZkYmJlN2FmZmMwZDZkNTAzOGYxNDExMiIsImZvcm1hdCI6IkFBQ18yNCIsInVybCI6Imh0dHBzOi8vcC5zY2RuLmNvL21wMy1wcmV2aWV3LzFlMmE2NTdjNzBjYzgyZmNmZGJiZTdhZmZjMGQ2ZDUwMzhmMTQxMTIifSx7ImZpbGVJZCI6ImExYzcxYTIwYWM4NTFiOGNhZmRhZWNjMWIzY2NiNDJjOTZmMDIwYjIiLCJmb3JtYXQiOiJNUDRfMTI4IiwidXJsIjoiaHR0cHM6Ly9wLnNjZG4uY28vbXAzLXByZXZpZXcvYTFjNzFhMjBhYzg1MWI4Y2FmZGFlY2MxYjNjY2I0MmM5NmYwMjBiMiJ9XX0sImNvbnRlbnRSYXRpbmciOnsibGFiZWwiOiJOT05FIn0sImNvdmVyQXJ0Ijp7InNvdXJjZXMiOlt7ImhlaWdodCI6NjQsInVybCI6Imh0dHBzOi8vaS5zY2RuLmNvL2ltYWdlL2FiNjc2NTYzMDAwMGY2OGQ5ZmEwNTg4MTNjODJkNGRhYTkzNDVlOTYiLCJ3aWR0aCI6NjR9LHsiaGVpZ2h0IjozMDAsInVybCI6Imh0dHBzOi8vaS5zY2RuLmNvL2ltYWdlL2FiNjc2NTYzMDAwMDVmMWY5ZmEwNTg4MTNjODJkNGRhYTkzNDVlOTYiLCJ3aWR0aCI6MzAwfSx7ImhlaWdodCI6NjQwLCJ1cmwiOiJodHRwczovL2kuc2Nkbi5jby9pbWFnZS9hYjY3NjU2MzAwMDBiYThhOWZhMDU4ODEzYzgyZDRkYWE5MzQ1ZTk2Iiwid2lkdGgiOjY0MH1dfSwiZGVzY3JpcHRpb24iOiJJbnRlZ3JhdGlvbiBpcyBwcm9iYWJseSB0aGUgbGFzdCwgaGFyZGVzdCwgYW5kIGxlYXN0IHdlbGwgdGhvdWdodC1vdXQgcGFydCBvZiBhbnkgbGFyZ2Ugc29mdHdhcmUgcHJvamVjdC4gU28gYW55dGhpbmcgdGhhdCBtYWtlcyB0aGUgZGF0YS1zdHJlYW1pbmcgam9iIGVhc2llciBpcyB3b3J0aCBrbm93aW5nIGFib3V0LiBTbyB0aGlzIHdlZWsgd2UgdHVybiBvdXIgYXR0ZW50aW9uIHRvIEFwYWNoZSBGbGluaywgYSBmbGV4aWJsZSBzeXN0ZW0gZm9yIGdyYWJiaW5nLCB0cmFuc2Zvcm1pbmcgYW5kIHNoaXBwaW5nIGRhdGEgYmV0d2VlbiBzeXN0ZW1zIHVzaW5nIEphdmEsIFB5dGhvbiBvciBnb29kIG9s4oCZIFNRTC4gU28gdGhpcyB3ZWVrIFJvYmVydCBNZXR6Z2Vy4oCUQXBhY2hlIEZsaW5rIGV4cGVydCBhbmQgUE1DIG1lbWJlcuKAlGpvaW5zIHVzIHRvIGV4cGxhaW4gd2hhdCBwcm9ibGVtcyBGbGluayBzb2x2ZXMgYW5kIGhvdyBpdCBzb2x2ZXMgdGhlbSByZWxpYWJseS4gV2UgY292ZXIgdGhlIHJhbmdlIGZyb20gc2ltcGxlIHVzZSBjYXNlcyB0byByZWFsdGltZSBhZ2dyZWdhdGlvbnMgJiBqb2lucyB0byBpdHMgaGlnaCBhdmFpbGFiaWxpdHkgc3RyYXRlZ3kuSWYgeW914oCZcmUgd29ya2luZyBvbiBzeXN0ZW1zIHRoYXQgaW5jbHVkZSBtb3JlIHRoYW4gb25lIGRhdGFiYXNlLCB0aGVuIHlvdeKAmXJlIGRlZmluaXRlbHkgZ29pbmcgdG8gZmFjZSB0aGUga2luZHMgb2YgcHJvYmxlbXMgdGhhdCBGbGluayB0YWNrbGVzLi0tQXBhY2hlIEZsaW5rOiBodHRwczovL2ZsaW5rLmFwYWNoZS5vcmcvUm9iZXJ0IG9uIFR3aXR0ZXI6IGh0dHBzOi8vdHdpdHRlci5jb20vcm1ldHpnZXJfUm9iZXJ0IG9uIExpbmtlZEluOiBodHRwczovL3d3dy5saW5rZWRpbi5jb20vaW4vbWV0emdlcnJvYmVydC9LcmlzIG9uIFR3aXR0ZXI6IGh0dHBzOi8vdHdpdHRlci5jb20va3Jpc2FqZW5raW5zS3JpcyBvbiBMaW5rZWRJbjogaHR0cHM6Ly93d3cubGlua2VkaW4uY29tL2luL2tyaXNqZW5raW5zL+KAkyNzb2Z0d2FyZSAjcHJvZ3JhbW1pbmcgI3BvZGNhc3QgI2ZsaW5rICNhcGFjaGVmbGluayAjZGF0YWludGVncmF0aW9uIiwiZHVyYXRpb24iOnsidG90YWxNaWxsaXNlY29uZHMiOjM4NjY0MDB9LCJpZCI6IjZReGtiNWZkb2Z0cjJEMXV4NkVGVEUiLCJtZWRpYVR5cGVzIjpbIkFVRElPIl0sIm5hbWUiOiJJcyBGbGluayB0aGUgYW5zd2VyIHRvIHRoZSBFVEwgcHJvYmxlbT8gKHdpdGggUm9iZXJ0IE1ldHpnZXIpIiwicGxheWFiaWxpdHkiOnsicGxheWFibGUiOnRydWUsInJlYXNvbiI6IlBMQVlBQkxFIn0sInBsYXllZFN0YXRlIjp7InBsYXlQb3NpdGlvbk1pbGxpc2Vjb25kcyI6MCwic3RhdGUiOiJOT1RfU1RBUlRFRCJ9LCJwb2RjYXN0VjIiOnsiX190eXBlbmFtZSI6IlBvZGNhc3RSZXNwb25zZVdyYXBwZXIiLCJkYXRhIjp7Il9fdHlwZW5hbWUiOiJQb2RjYXN0IiwiY292ZXJBcnQiOnsic291cmNlcyI6W3siaGVpZ2h0Ijo2NCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwZjY4ZDY4ZTA3NjQyY2ZjN2MzNDhkYzNmNDYxMiIsIndpZHRoIjo2NH0seyJoZWlnaHQiOjMwMCwidXJsIjoiaHR0cHM6Ly9pLnNjZG4uY28vaW1hZ2UvYWI2NzY1NjMwMDAwNWYxZjY4ZTA3NjQyY2ZjN2MzNDhkYzNmNDYxMiIsIndpZHRoIjozMDB9LHsiaGVpZ2h0Ijo2NDAsInVybCI6Imh0dHBzOi8vaS5zY2RuLmNvL2ltYWdlL2FiNjc2NTYzMDAwMGJhOGE2OGUwNzY0MmNmYzdjMzQ4ZGMzZjQ2MTIiLCJ3aWR0aCI6NjQwfV19LCJuYW1lIjoiRGV2ZWxvcGVyIFZvaWNlcyIsInNob3dUeXBlcyI6W10sInVyaSI6InNwb3RpZnk6c2hvdzoyZ1hod3owQVFSdjJjdnc2MWtvYkU1In19LCJyZWxlYXNlRGF0ZSI6eyJpc29TdHJpbmciOiIyMDIzLTExLTIyVDE3OjAwOjAwWiJ9LCJyZXN0cmljdGlvbnMiOnsicGF5d2FsbENvbnRlbnQiOmZhbHNlfSwidXJpIjoic3BvdGlmeTplcGlzb2RlOjZReGtiNWZkb2Z0cjJEMXV4NkVGVEUifV0sInVyaSI6InNwb3RpZnk6ZXBpc29kZTowUnZUU0Z6akFscUp6Vzl0dUp3b2tsIiwic3RhdHVzIjoiTE9BREVEIn0sInNpbWlsYXJQbGF5bGlzdHMiOnsic3RhdHVzIjoiVU5BVkFJTEFCTEUifSwic2ltaWxhckFsYnVtcyI6eyJzdGF0dXMiOiJVTkFWQUlMQUJMRSJ9LCJwb3B1bGFyRXBpc29kZXMiOnsic3RhdHVzIjoiVU5BVkFJTEFCTEUifX0sInBsYXlsaXN0UmVjb21tZW5kZWRUcmFja3MiOnsicGxheWxpc3QiOnsic3RhdHVzIjoiVU5BVkFJTEFCTEUifX0sImNvbmNlcnRIdWIiOnsiY29uY2VydEZlZWQiOm51bGwsImxvY2F0aW9uIjpudWxsfSwibWFzdGhlYWQiOnsiaXNDcmF3bGVyQm90IjpmYWxzZX19</script><script id="remote-configuration" type="text/plain">eyIjdiI6IjEiLCJlbmFibGVJMThuUm91dGVzIjoidmFyaWFudCIsImRpc2FibGVVbmF1dGhMeXJpY3NDVEEiOnRydWUsIiNjb25maWd1cmF0aW9uQXNzaWdubWVudElkIjoiOWI4ZTc3ZDctMzdkMi0xMWY4LThlYjMtYTkzNWY4ZGMzMzM2OjAiLCIjZ3JvdXBJZHMiOnsiZW5hYmxlSTE4blJvdXRlcyI6MTEwMjY2MSwiZGlzYWJsZVVuYXV0aEx5cmljc0NUQSI6MTE4NjU0MX0sIiNmZXRjaFRpbWVNaWxsaXMiOjE3MzI0MzU4MzcyNDYsIiNjb250ZXh0SGFzaCI6IjEwNjVjNWJlZGNhMTliZDUifQ==</script><script src="https://open.spotifycdn.com/cdn/build/mobile-web-player/mobile-web-player.a59f708f.js"></script><script src="https://open.spotifycdn.com/cdn/build/mobile-web-player/vendor~mobile-web-player.13b4135a.js"></script></body></html>