{"id":6187,"date":"2026-03-30T02:21:55","date_gmt":"2026-03-30T06:21:55","guid":{"rendered":"https:\/\/www.visionpros.com\/pro\/?p=6187"},"modified":"2026-03-30T21:18:41","modified_gmt":"2026-03-31T01:18:41","slug":"which-affordable-sunglasses-fit-my-budget-take-this-quiz","status":"publish","type":"post","link":"https:\/\/www.visionpros.com\/pro\/which-affordable-sunglasses-fit-my-budget-take-this-quiz\/","title":{"rendered":"Which Affordable Sunglasses Fit My Budget? Take This Quiz"},"content":{"rendered":"\n<div style=\"max-width: 1200px; margin: 0 auto; padding: 0 24px;\">\n\n\n\n<p class=\"wp-block-paragraph\">Shopping for sunglasses should be simple, but it rarely feels that way. You find a pair you like, then start second-guessing the price, the comfort, the lens features, and whether there might be a better option for less.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Well, there is! Here at <a href=\"https:\/\/www.visionpros.com\/\">VisionPros<\/a>, we know that a good pair is more than just the looks. We\u2019ll help you sort through the options, compare what matters, and figure out which sunglasses fit both your style and your budget.<\/p>\n\n\n\n<div style=\"height:63px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Take the Quiz and Find Your Best Affordable Sunglasses Budget Match<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A higher price does not always mean a better pair. It\u2019s all about preference and it often depends on how you wear them, what you need them for, and which features matter the most to you in your daily use.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Take this quick quiz to find out which budget range makes the most sense for your next pair.<\/p>\n\n\n\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Playfair+Display:wght@400;600;700&#038;family=DM+Sans:wght@300;400;500;600&#038;display=swap\" rel=\"stylesheet\">\n<style>\n  \/* \u2500\u2500 Reset & base \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\n\n  :root {\n    --gold:       #3176b4;\n    --gold-light: #7ba9d1;\n    --gold-dim:   #0e4773;\n    --ink:        #0e4773;\n    --ink-mid:    #1a3d5c;\n    --ink-soft:   #5a85a8;\n    --cream:      #ebf4fd;\n    --cream-dark: #d4e8f8;\n    --white:      #ffffff;\n    --border:     #b8d6ee;\n    --radius:     12px;\n    --shadow:     0 4px 24px rgba(14,71,115,0.10);\n    --shadow-lg:  0 8px 48px rgba(14,71,115,0.14);\n  }\n\n  body {\n    font-family: 'DM Sans', sans-serif;\n    -webkit-font-smoothing: antialiased;\n  }\n\n  \/* \u2500\u2500 Quiz shell \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  #vp-quiz {\n    max-width: 720px;\n    margin: 0 auto;\n    padding: 16px;\n    color: var(--ink);\n    line-height: 1.6;\n    background: transparent;\n  }\n\n  \/* \u2500\u2500 Screens \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  .vp-screen { display: none; }\n  .vp-screen.active { display: block; }\n\n  \/* \u2500\u2500 Intro screen \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  .vp-intro {\n    background: var(--white);\n    border-radius: var(--radius);\n    box-shadow: var(--shadow-lg);\n    overflow: hidden;\n  }\n\n  .vp-intro-banner {\n    background: var(--ink);\n    padding: 48px 40px 40px;\n    text-align: center;\n    position: relative;\n  }\n\n  .vp-intro-banner::before {\n    content: '';\n    position: absolute;\n    inset: 0;\n    background: repeating-linear-gradient(\n      45deg,\n      transparent,\n      transparent 40px,\n      rgba(201,168,76,0.04) 40px,\n      rgba(201,168,76,0.04) 80px\n    );\n  }\n\n  .vp-eyebrow {\n    font-family: 'DM Sans', sans-serif;\n    font-size: 11px;\n    font-weight: 600;\n    letter-spacing: 0.2em;\n    text-transform: uppercase;\n    color: var(--gold);\n    margin-bottom: 16px;\n    position: relative;\n  }\n\n  .vp-intro-title {\n    font-family: 'Playfair Display', serif;\n    font-size: clamp(26px, 5vw, 38px);\n    font-weight: 700;\n    color: var(--white);\n    line-height: 1.25;\n    margin-bottom: 12px;\n    position: relative;\n  }\n\n  .vp-intro-sub {\n    font-size: 15px;\n    color: rgba(255,255,255,0.65);\n    max-width: 480px;\n    margin: 0 auto;\n    position: relative;\n  }\n\n  .vp-intro-body {\n    padding: 40px;\n  }\n\n  .vp-intro-meta {\n    display: flex;\n    gap: 32px;\n    margin-bottom: 32px;\n    padding-bottom: 28px;\n    border-bottom: 1px solid var(--border);\n  }\n\n  .vp-meta-item {\n    display: flex;\n    align-items: center;\n    gap: 10px;\n    font-size: 14px;\n    color: var(--ink-soft);\n  }\n\n  .vp-meta-icon {\n    width: 36px;\n    height: 36px;\n    background: var(--cream-dark);\n    border-radius: 50%;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    flex-shrink: 0;\n    font-size: 16px;\n  }\n\n  .vp-intro-desc {\n    font-size: 15px;\n    color: var(--ink-mid);\n    margin-bottom: 32px;\n    line-height: 1.7;\n  }\n\n  \/* \u2500\u2500 Buttons \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  .vp-btn-primary {\n    display: inline-flex;\n    align-items: center;\n    gap: 10px;\n    background: var(--gold);\n    color: var(--white);\n    font-family: 'DM Sans', sans-serif;\n    font-size: 15px;\n    font-weight: 600;\n    padding: 15px 32px;\n    border-radius: 8px;\n    border: none;\n    cursor: pointer;\n    text-decoration: none;\n    transition: background 0.2s, transform 0.15s;\n    letter-spacing: 0.01em;\n  }\n\n  .vp-btn-primary:hover {\n    background: #2563a0;\n    transform: translateY(-1px);\n  }\n\n  .vp-btn-ghost {\n    display: inline-flex;\n    align-items: center;\n    gap: 8px;\n    background: transparent;\n    color: var(--ink-soft);\n    font-family: 'DM Sans', sans-serif;\n    font-size: 14px;\n    font-weight: 500;\n    padding: 10px 20px;\n    border-radius: 8px;\n    border: 1px solid var(--border);\n    cursor: pointer;\n    transition: all 0.2s;\n  }\n\n  .vp-btn-ghost:hover {\n    border-color: var(--gold);\n    color: var(--gold-dim);\n  }\n\n  \/* \u2500\u2500 Question screen \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  .vp-question-wrap {\n    background: var(--white);\n    border-radius: var(--radius);\n    box-shadow: var(--shadow-lg);\n    overflow: hidden;\n  }\n\n  \/* Progress bar *\/\n  .vp-progress-track {\n    height: 4px;\n    background: var(--cream-dark);\n    position: relative;\n  }\n\n  .vp-progress-fill {\n    height: 100%;\n    background: var(--gold);\n    transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);\n    border-radius: 0 4px 4px 0;\n  }\n\n  .vp-progress-label {\n    font-size: 12px;\n    color: var(--ink-soft);\n    text-align: right;\n    padding: 10px 24px 0;\n    font-weight: 500;\n    letter-spacing: 0.05em;\n  }\n\n  .vp-question-body {\n    padding: 36px 40px 40px;\n  }\n\n  .vp-q-number {\n    font-size: 11px;\n    font-weight: 600;\n    letter-spacing: 0.18em;\n    text-transform: uppercase;\n    color: var(--gold);\n    margin-bottom: 12px;\n  }\n\n  .vp-q-text {\n    font-family: 'Playfair Display', serif;\n    font-size: clamp(20px, 3.5vw, 26px);\n    font-weight: 600;\n    color: var(--ink);\n    margin-bottom: 32px;\n    line-height: 1.35;\n  }\n\n  \/* Answer options *\/\n  .vp-options {\n    display: grid;\n    gap: 12px;\n  }\n\n  .vp-option {\n    display: flex;\n    align-items: center;\n    gap: 16px;\n    padding: 16px 20px;\n    border: 2px solid var(--border);\n    border-radius: 10px;\n    cursor: pointer;\n    transition: all 0.2s;\n    background: var(--cream);\n    text-align: left;\n    width: 100%;\n    font-family: 'DM Sans', sans-serif;\n  }\n\n  .vp-option:hover {\n    border-color: var(--gold);\n    background: #e3f0fb;\n  }\n\n  .vp-option.selected {\n    border-color: var(--gold);\n    background: #e3f0fb;\n    box-shadow: 0 0 0 3px rgba(49,118,180,0.15);\n  }\n\n  .vp-option-letter {\n    width: 34px;\n    height: 34px;\n    border-radius: 50%;\n    background: var(--white);\n    border: 2px solid var(--border);\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-size: 13px;\n    font-weight: 600;\n    color: var(--ink-soft);\n    flex-shrink: 0;\n    transition: all 0.2s;\n  }\n\n  .vp-option.selected .vp-option-letter {\n    background: var(--gold);\n    border-color: var(--gold);\n    color: var(--white);\n  }\n\n  .vp-option-text {\n    font-size: 15px;\n    color: var(--ink-mid);\n    font-weight: 400;\n    line-height: 1.4;\n  }\n\n  .vp-option.selected .vp-option-text {\n    color: var(--ink);\n    font-weight: 500;\n  }\n\n  \/* Nav row *\/\n  .vp-nav {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    margin-top: 32px;\n    padding-top: 24px;\n    border-top: 1px solid var(--border);\n  }\n\n  \/* \u2500\u2500 Loading screen \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  .vp-loading {\n    background: var(--white);\n    border-radius: var(--radius);\n    box-shadow: var(--shadow-lg);\n    padding: 80px 40px;\n    text-align: center;\n  }\n\n  .vp-spinner {\n    width: 52px;\n    height: 52px;\n    border: 3px solid var(--cream-dark);\n    border-top-color: var(--gold);\n    border-radius: 50%;\n    margin: 0 auto 28px;\n    animation: vp-spin 0.8s linear infinite;\n  }\n\n  @keyframes vp-spin {\n    to { transform: rotate(360deg); }\n  }\n\n  .vp-loading-title {\n    font-family: 'Playfair Display', serif;\n    font-size: 22px;\n    color: var(--ink);\n    margin-bottom: 8px;\n  }\n\n  .vp-loading-sub {\n    font-size: 14px;\n    color: var(--ink-soft);\n  }\n\n  \/* \u2500\u2500 Result screen \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  .vp-result-wrap {\n    background: var(--white);\n    border-radius: var(--radius);\n    box-shadow: var(--shadow-lg);\n    overflow: hidden;\n  }\n\n  .vp-result-header {\n    background: var(--ink);\n    padding: 44px 40px 36px;\n    position: relative;\n  }\n\n  .vp-result-header::before {\n    content: '';\n    position: absolute;\n    inset: 0;\n    background: repeating-linear-gradient(\n      -45deg,\n      transparent,\n      transparent 40px,\n      rgba(201,168,76,0.04) 40px,\n      rgba(201,168,76,0.04) 80px\n    );\n  }\n\n  .vp-result-label {\n    font-size: 11px;\n    font-weight: 600;\n    letter-spacing: 0.2em;\n    text-transform: uppercase;\n    color: var(--gold);\n    margin-bottom: 8px;\n    position: relative;\n  }\n\n  .vp-result-title {\n    font-family: 'Playfair Display', serif;\n    font-size: clamp(24px, 4vw, 34px);\n    color: var(--white);\n    font-weight: 700;\n    margin-bottom: 16px;\n    position: relative;\n  }\n\n  .vp-result-desc {\n    font-size: 15px;\n    color: rgba(255,255,255,0.7);\n    line-height: 1.7;\n    max-width: 560px;\n    position: relative;\n  }\n\n  .vp-result-body {\n    padding: 36px 40px;\n  }\n\n  .vp-result-tips {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 20px;\n    margin-bottom: 36px;\n  }\n\n  @media (max-width: 580px) {\n    .vp-result-tips { grid-template-columns: 1fr; }\n    .vp-intro-meta { flex-direction: column; gap: 16px; }\n    .vp-intro-body { padding: 28px 24px; }\n    .vp-intro-banner { padding: 36px 24px 28px; }\n    .vp-question-body { padding: 28px 24px 32px; }\n    .vp-result-header { padding: 36px 24px 28px; }\n    .vp-result-body { padding: 28px 24px; }\n  }\n\n  .vp-tip-card {\n    background: var(--cream);\n    border-radius: 10px;\n    padding: 20px;\n    border: 1px solid var(--border);\n  }\n\n  .vp-tip-label {\n    font-size: 11px;\n    font-weight: 600;\n    letter-spacing: 0.15em;\n    text-transform: uppercase;\n    margin-bottom: 8px;\n  }\n\n  .vp-tip-label.prioritize { color: var(--gold-dim); }\n  .vp-tip-label.skip { color: var(--ink-soft); }\n\n  .vp-tip-text {\n    font-size: 14px;\n    color: var(--ink-mid);\n    line-height: 1.6;\n  }\n\n  .vp-uv-note {\n    background: #ebf4fd;\n    border: 1px solid #7ba9d1;\n    border-radius: 10px;\n    padding: 16px 20px;\n    font-size: 14px;\n    color: var(--ink-mid);\n    margin-bottom: 36px;\n    display: flex;\n    gap: 12px;\n    align-items: flex-start;\n    line-height: 1.6;\n  }\n\n  .vp-uv-icon { font-size: 18px; flex-shrink: 0; margin-top: 1px; }\n\n  \/* Product grid *\/\n  .vp-products-heading {\n    font-family: 'Playfair Display', serif;\n    font-size: 20px;\n    color: var(--ink);\n    margin-bottom: 20px;\n    font-weight: 600;\n  }\n\n  .vp-products-grid {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 16px;\n    margin-bottom: 36px;\n  }\n\n  @media (max-width: 480px) {\n    .vp-products-grid { grid-template-columns: 1fr; }\n  }\n\n  .vp-product-card {\n    border: 1px solid var(--border);\n    border-radius: 10px;\n    overflow: hidden;\n    background: var(--cream);\n    transition: box-shadow 0.2s, transform 0.15s;\n    text-decoration: none;\n    display: block;\n    color: inherit;\n  }\n\n  .vp-product-card:hover {\n    box-shadow: var(--shadow);\n    transform: translateY(-2px);\n  }\n\n  .vp-product-img-wrap {\n    background: var(--white);\n    aspect-ratio: 4\/3;\n    overflow: hidden;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    padding: 12px;\n  }\n\n  .vp-product-img-wrap img {\n    max-width: 100%;\n    max-height: 100%;\n    object-fit: contain;\n    transition: transform 0.3s;\n  }\n\n  .vp-product-card:hover .vp-product-img-wrap img {\n    transform: scale(1.04);\n  }\n\n  .vp-product-info {\n    padding: 14px 16px;\n  }\n\n  .vp-product-brand {\n    font-size: 10px;\n    font-weight: 600;\n    letter-spacing: 0.15em;\n    text-transform: uppercase;\n    color: var(--gold-dim);\n    margin-bottom: 4px;\n  }\n\n  .vp-product-name {\n    font-size: 14px;\n    font-weight: 500;\n    color: var(--ink);\n    margin-bottom: 8px;\n    line-height: 1.3;\n  }\n\n  .vp-product-price {\n    font-size: 15px;\n    font-weight: 600;\n    color: var(--ink);\n  }\n\n  .vp-product-cta {\n    display: inline-flex;\n    align-items: center;\n    gap: 4px;\n    font-size: 12px;\n    font-weight: 600;\n    color: var(--gold-dim);\n    margin-top: 6px;\n    letter-spacing: 0.03em;\n  }\n\n  \/* Result footer *\/\n  .vp-result-footer {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    padding-top: 24px;\n    border-top: 1px solid var(--border);\n    flex-wrap: wrap;\n    gap: 12px;\n  }\n\n  .vp-retake-note {\n    font-size: 13px;\n    color: var(--ink-soft);\n  }\n<\/style>\n<\/head>\n<body>\n<div id=\"vp-quiz\">\n\n  <!-- \u2500\u2500 SCREEN 0 \u00b7 Intro \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n  <div class=\"vp-screen active\" id=\"screen-intro\">\n    <div class=\"vp-intro\">\n      <div class=\"vp-intro-banner\">\n        <div class=\"vp-eyebrow\">VisionPros \u00b7 Budget Match Quiz<\/div>\n        <h2 class=\"vp-intro-title\">Which Sunglasses Fit Your Budget?<\/h2>\n        <p class=\"vp-intro-sub\">Answer 6 quick questions and we&#8217;ll match you to the right price range \u2014 and real pairs worth considering.<\/p>\n      <\/div>\n      <div class=\"vp-intro-body\">\n        <div class=\"vp-intro-meta\">\n          <div class=\"vp-meta-item\">\n            <div class=\"vp-meta-icon\">\u23f1<\/div>\n            <span>About 2 minutes<\/span>\n          <\/div>\n          <div class=\"vp-meta-item\">\n            <div class=\"vp-meta-icon\">\ud83d\udca1<\/div>\n            <span>6 questions<\/span>\n          <\/div>\n          <div class=\"vp-meta-item\">\n            <div class=\"vp-meta-icon\">\ud83d\udd76\ufe0f<\/div>\n            <span>4 budget tiers<\/span>\n          <\/div>\n        <\/div>\n        <p class=\"vp-intro-desc\">A higher price doesn&#8217;t always mean a better pair. This quiz helps you figure out which budget range actually makes sense for how you wear sunglasses \u2014 and shows you matching options from VisionPros.<\/p>\n        <button class=\"vp-btn-primary\" onclick=\"vpStart()\">\n          Start the Quiz <span>\u2192<\/span>\n        <\/button>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- \u2500\u2500 SCREEN 1 \u00b7 Questions \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n  <div class=\"vp-screen\" id=\"screen-questions\">\n    <div class=\"vp-question-wrap\">\n      <div class=\"vp-progress-track\">\n        <div class=\"vp-progress-fill\" id=\"vp-progress-fill\"><\/div>\n      <\/div>\n      <div class=\"vp-progress-label\" id=\"vp-progress-label\">Question 1 of 6<\/div>\n      <div class=\"vp-question-body\">\n        <div class=\"vp-q-number\" id=\"vp-q-number\">Question 1<\/div>\n        <div class=\"vp-q-text\" id=\"vp-q-text\"><\/div>\n        <div class=\"vp-options\" id=\"vp-options\"><\/div>\n        <div class=\"vp-nav\">\n          <button class=\"vp-btn-ghost\" id=\"vp-btn-back\" onclick=\"vpBack()\">\u2190 Back<\/button>\n          <button class=\"vp-btn-primary\" id=\"vp-btn-next\" onclick=\"vpNext()\" disabled>Next \u2192<\/button>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- \u2500\u2500 SCREEN 2 \u00b7 Loading \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n  <div class=\"vp-screen\" id=\"screen-loading\">\n    <div class=\"vp-loading\">\n      <div class=\"vp-spinner\"><\/div>\n      <div class=\"vp-loading-title\">Finding your match\u2026<\/div>\n      <div class=\"vp-loading-sub\">Comparing your answers to our full catalogue<\/div>\n    <\/div>\n  <\/div>\n\n  <!-- \u2500\u2500 SCREEN 3 \u00b7 Result \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n  <div class=\"vp-screen\" id=\"screen-result\">\n    <div class=\"vp-result-wrap\">\n      <div class=\"vp-result-header\">\n        <div class=\"vp-result-label\">Your Match<\/div>\n        <div class=\"vp-result-title\" id=\"res-title\"><\/div>\n        <div class=\"vp-result-desc\" id=\"res-desc\"><\/div>\n      <\/div>\n      <div class=\"vp-result-body\">\n        <div class=\"vp-result-tips\">\n          <div class=\"vp-tip-card\">\n            <div class=\"vp-tip-label prioritize\">\u2713 What to prioritize<\/div>\n            <div class=\"vp-tip-text\" id=\"res-prioritize\"><\/div>\n          <\/div>\n          <div class=\"vp-tip-card\">\n            <div class=\"vp-tip-label skip\">\u2715 What you can skip<\/div>\n            <div class=\"vp-tip-text\" id=\"res-skip\"><\/div>\n          <\/div>\n        <\/div>\n        <div class=\"vp-uv-note\">\n          <span class=\"vp-uv-icon\">\u2600\ufe0f<\/span>\n          <span id=\"res-uv\"><\/span>\n        <\/div>\n        <div class=\"vp-products-heading\">Matching picks for you<\/div>\n        <div class=\"vp-products-grid\" id=\"res-products\"><\/div>\n        <div class=\"vp-result-footer\">\n          <span class=\"vp-retake-note\">Not quite right?<\/span>\n          <button class=\"vp-btn-ghost\" onclick=\"vpRetake()\">\u21ba Retake the Quiz<\/button>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n<\/div><!-- #vp-quiz -->\n\n<script>\n(function(){\n  var s = document.createElement(\"script\");\n  s.textContent = atob(\"Lyog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQCiAgIFBST0RVQ1QgQ0FUQUxPR1VFCiAgIFRpZXIgdGFncyBkZXJpdmVkIGZyb20gcHJpY2U6CiAgICAgYnVkZ2V0LWJhc2ljcyAgICAgICAgPSB1bmRlciAkMTAwCiAgICAgc21hcnQtZXZlcnlkYXktdmFsdWUgPSAkMTAwIHRvICQxNDkKICAgICBmZWF0dXJlLWZvY3VzZWQtcGljayA9ICQxNTAgdG8gJDE5OQogICAgIHByZW1pdW0tc3R5bGUtaW52ZXN0bWVudCA9ICQyMDArCiAgIEJyYW5kLWJhc2VkIGluZmVyZW5jZXMgZm9yIHN0eWxlL3VzZSB0YWdzLgrilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgKi8KdmFyIFZQX1BST0RVQ1RTID0gWwogIHsgbmFtZToiUkI0MTcxIEVyaWthIiwgYnJhbmQ6IlJheS1CYW4iLCBwcmljZTo5OCwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL3JheS1iYW4tcmI0MTcxLWVyaWthLTUwMjcvYnVyZ3VuZHktMTM5Nzc4OC8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzgzNDg4OC1hbmdsZS5qcGciLCBzdHlsZTpbInJvdW5kIiwiY2FzdWFsIl0sIHVzZTpbInN0eWxlIiwiY2FzdWFsIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiUkI0MjQ2IENsdWJyb3VuZCIsIGJyYW5kOiJSYXktQmFuIiwgcHJpY2U6MTU5LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvcmF5LWJhbi1yYjQyNDYtY2x1YnJvdW5kLTEzNDgxNi9ibGFjay05MDEtMjE5MTI0NS8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzY3NTY4OC1hbmdsZS5qcGciLCBzdHlsZTpbInJvdW5kIiwiY2xhc3NpYyJdLCB1c2U6WyJzdHlsZSIsImNhc3VhbCIsImRyaXZpbmciXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OnRydWUgfSwKICB7IG5hbWU6IlJCMzM2MiBDb2NrcGl0IiwgYnJhbmQ6IlJheS1CYW4iLCBwcmljZToxMzksIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9yYXktYmFuLXJiMzM2Mi1jb2NrcGl0LTI0ODc5L2d1bm1ldGFsLTAwNC01Ni0yMTc1NDQ5LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvNjUxMTI4LWFuZ2xlLmpwZyIsIHN0eWxlOlsiYXZpYXRvciIsImNsYXNzaWMiXSwgdXNlOlsiZHJpdmluZyIsImNhc3VhbCJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6Ik9POTE4OCIsIGJyYW5kOiJPYWtsZXkiLCBwcmljZToxNjkuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9vYWtsZXktb285MTg4LTEzNTQ4MC9ibGFjay1ydWJ5LWZhZGUtMTM5MDA0Ny8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzc2MDIyMC1hbmdsZS5qcGciLCBzdHlsZTpbInNwb3J0IiwicmVjdGFuZ2xlIl0sIHVzZTpbImFjdGl2ZSIsIm91dGRvb3IiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJSQjQyMDIgQW5keSIsIGJyYW5kOiJSYXktQmFuIiwgcHJpY2U6MTI0LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvcmF5LWJhbi1yYjQyMDItYW5keS0yNDkxMy9ibGFjay02MDY5NzEtMjE3NTIwMC8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzc1NTUxMC1mcm9udC5qcGciLCBzdHlsZTpbInNxdWFyZSIsImNsYXNzaWMiXSwgdXNlOlsiY2FzdWFsIiwic3R5bGUiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJSQjM1MzgiLCBicmFuZDoiUmF5LUJhbiIsIHByaWNlOjE0OSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL3JheS1iYW4tcmIzNTM4LTEzNDg3My90b3AtYnJvd24tb24tZ3VubWV0YWwtMjE5MTU2My8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzY3NjE3Ni1hbmdsZS5qcGciLCBzdHlsZTpbInJlY3RhbmdsZSIsImNsYXNzaWMiXSwgdXNlOlsiZHJpdmluZyIsImNhc3VhbCJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlJCMjQ0NyIsIGJyYW5kOiJSYXktQmFuIiwgcHJpY2U6MTQ5LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvcmF5LWJhbi1yYjI0NDctNjY3NzEvYmxhY2stMjE3NTUyMi8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzY1MTEzNC1hbmdsZS5qcGciLCBzdHlsZTpbInJvdW5kIiwiY2xhc3NpYyJdLCB1c2U6WyJzdHlsZSIsImNhc3VhbCJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6dHJ1ZSB9LAogIHsgbmFtZToiT085MDEzIEZyb2dza2lucyIsIGJyYW5kOiJPYWtsZXkiLCBwcmljZTo5OC45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL29ha2xleS1vbzkwMTMtMTM1ODM4L2Zyb2dza2luLXJlZC05MDEzYTctMTM5MDAzMi8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzc4NjkwNi1mcm9udC5qcGciLCBzdHlsZTpbInNxdWFyZSIsInNwb3J0Il0sIHVzZTpbImFjdGl2ZSIsImNhc3VhbCJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlJCNDIyNiIsIGJyYW5kOiJSYXktQmFuIiwgcHJpY2U6MTI5LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvcmF5LWJhbi1yYjQyMjYtNjY3MjMvYmxhY2stMjE3OTI1MC8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzY1NjYzNi1mcm9udC5qcGciLCBzdHlsZTpbInNxdWFyZSIsImNsYXNzaWMiXSwgdXNlOlsiY2FzdWFsIiwiZHJpdmluZyJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6Ik9PNDEyNCIsIGJyYW5kOiJPYWtsZXkiLCBwcmljZToxNDkuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9vYWtsZXktb280MTI0LTE0NjU3OS9tYXR0ZS1sZWFkLTEzOTAwMjgvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy83NTk5ODUtZnJvbnQuanBnIiwgc3R5bGU6WyJyZWN0YW5nbGUiLCJzcG9ydCJdLCB1c2U6WyJhY3RpdmUiLCJvdXRkb29yIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiVkUyMTgxIiwgYnJhbmQ6IlZlcnNhY2UiLCBwcmljZToxOTguOTksIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy92ZXJzYWNlLXZlMjE4MS0xNDcxMTgvcGFsZS1nb2xkLW9yYW5nZS0xMjUyNzMtMTQwOTc2Mi8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzc3MjYzMS1mcm9udC5qcGciLCBzdHlsZTpbImNhdC1leWUiLCJib2xkIl0sIHVzZTpbInN0eWxlIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiVjYwMSBQb2xhcml6ZWQiLCBicmFuZDoiSm9obiBWYXJ2YXRvcyIsIHByaWNlOjE0Ny45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2pvaG4tdmFydmF0b3MtdjYwMS11Zi1wb2xhcml6ZWQtNTQ2ODcvYmxhY2stMjAwOTczMy8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzMyNzkzMC1hbmdsZS5qcGciLCBzdHlsZTpbImF2aWF0b3IiLCJjbGFzc2ljIl0sIHVzZTpbImRyaXZpbmciLCJvdXRkb29yIl0sIHBvbGFyaXplZDp0cnVlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJIQzgxNTgiLCBicmFuZDoiQ29hY2giLCBwcmljZTo4OS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2NvYWNoL2hjODE1OC0xNjYzODYvb2xpdmUtZGFyay10b3J0b2lzZXNoZWxsLTUzOTUyLTMwMDE1NTQvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84NjExNDItYW5nbGUuanBnIiwgc3R5bGU6WyJzcXVhcmUiLCJjbGFzc2ljIl0sIHVzZTpbImNhc3VhbCIsInN0eWxlIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiSEM4MTkwIiwgYnJhbmQ6IkNvYWNoIiwgcHJpY2U6ODkuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9jb2FjaC9oYzgxOTAtMTY2Mzg3L2JsYWNrLTU0MjAxMS0zMDAxNTU1LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvODYxMTQzLWFuZ2xlLmpwZyIsIHN0eWxlOlsicmVjdGFuZ2xlIiwiY2xhc3NpYyJdLCB1c2U6WyJjYXN1YWwiLCJkcml2aW5nIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiSEM4MjEzIiwgYnJhbmQ6IkNvYWNoIiwgcHJpY2U6ODkuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9jb2FjaC9oYzgyMTMtMTY2Mzg5L29yYW5nZS01NDcxODctMzAwMTU1OS8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzg2MTE0Ny1hbmdsZS5qcGciLCBzdHlsZTpbInNxdWFyZSIsImJvbGQiXSwgdXNlOlsic3R5bGUiLCJjYXN1YWwiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJIQzgyMTQiLCBicmFuZDoiQ29hY2giLCBwcmljZTo4OS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2NvYWNoL2hjODIxNC0xNjYzOTAvYmxhY2stNTQ4Mjg3LTMwMDE1NjAvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84NjExNDgtYW5nbGUuanBnIiwgc3R5bGU6WyJyZWN0YW5nbGUiLCJjbGFzc2ljIl0sIHVzZTpbImNhc3VhbCJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IkhDODIxNiIsIGJyYW5kOiJDb2FjaCIsIHByaWNlOjk4Ljk1LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvY29hY2gvaGM4MjE2LTE2NjM5Mi90b3J0b2lzZXNoZWxsLTU0NzY4Ny0zMDAxNTY1LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvODYxMTUzLWFuZ2xlLmpwZyIsIHN0eWxlOlsicm91bmQiLCJjbGFzc2ljIl0sIHVzZTpbInN0eWxlIiwiY2FzdWFsIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiSEM4MjE5IiwgYnJhbmQ6IkNvYWNoIiwgcHJpY2U6NzkuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9jb2FjaC9oYzgyMTktMTY2Mzk0L2dyYXktNTEyMDEzLTMwMDE1NzAvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84NjExNTgtYW5nbGUuanBnIiwgc3R5bGU6WyJzcXVhcmUiLCJjbGFzc2ljIl0sIHVzZTpbImNhc3VhbCJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlBTMDVSUyIsIGJyYW5kOiJQcmFkYSIsIHByaWNlOjE4OS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL3ByYWRhL3BzMDVycy0xNjY0NDgvYnJvd24tcnViYmVyLXViMDV4MS0zMDAxNjg5LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvODYxMjgyLWZyb250LmpwZyIsIHN0eWxlOlsic3F1YXJlIiwiYm9sZCJdLCB1c2U6WyJzdHlsZSIsIm91dGRvb3IiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJQUzA2U1MiLCBicmFuZDoiUHJhZGEiLCBwcmljZToxODkuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9wcmFkYS9wczA2c3MtMTY2NDQ5L2JsYWNrLTFibzV4MS0zMDAxNjkwLyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvODYxMjgzLWFuZ2xlLmpwZyIsIHN0eWxlOlsiY2F0LWV5ZSIsImJvbGQiXSwgdXNlOlsic3R5bGUiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJQUzUzUFMiLCBicmFuZDoiUHJhZGEiLCBwcmljZToxNzkuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9wcmFkYS9wczUzcHMtMTY2NDUwL2d1bm1ldGFsLXJ1YmJlci1kZzE1bDItMzAwMTY5My8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzg2MTI4Ni1mcm9udC5qcGciLCBzdHlsZTpbImdlb21ldHJpYyIsImJvbGQiXSwgdXNlOlsic3R5bGUiLCJvdXRkb29yIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiUFM1NlNTIiwgYnJhbmQ6IlByYWRhIiwgcHJpY2U6MTc5Ljk1LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvcHJhZGEvcHM1NnNzLTE2NjQ1MS9nb2xkLXp2bjFjMC0zMDAxNjk2LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvODYxMjg5LWFuZ2xlLmpwZyIsIHN0eWxlOlsiY2F0LWV5ZSIsImJvbGQiXSwgdXNlOlsic3R5bGUiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJQUiAxMlFTIiwgYnJhbmQ6IlByYWRhIiwgcHJpY2U6MTg5Ljk1LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvcHJhZGEvcHIrMTJxcy00ODkyL2Jyb3duLWhhdmFuYS1yb3owYTYtMjAxNTk0MC8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzMzNDc0NC1mcm9udC5qcGciLCBzdHlsZTpbInJlY3RhbmdsZSIsImNsYXNzaWMiXSwgdXNlOlsic3R5bGUiLCJkcml2aW5nIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTp0cnVlIH0sCiAgeyBuYW1lOiJQUiA1M1NTIiwgYnJhbmQ6IlByYWRhIiwgcHJpY2U6MjE5Ljk1LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvcHJhZGEvcHIrNTNzcy0xNDEyMjEvaGF2YW5hLWJyb3duLWdyYWRpZW50LTJhdTNkMC0yMjIyNzU5L2hhdmFuYS0yYXUzZDAtMjIyMjc1OS8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzcyMzg1OC1mcm9udC5qcGciLCBzdHlsZTpbImNhdC1leWUiLCJib2xkIl0sIHVzZTpbInN0eWxlIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiVkU0MzM3IiwgYnJhbmQ6IlZlcnNhY2UiLCBwcmljZToxNTksIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy92ZXJzYWNlL3ZlNDMzNy0xNDY5OTEvYmxhY2stc2lsdmVyLTEzOTYwNjIvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy83NzI4NDgtYW5nbGUuanBnIiwgc3R5bGU6WyJzcXVhcmUiLCJib2xkIl0sIHVzZTpbInN0eWxlIiwiZHJpdmluZyJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlZFNDMzNSIsIGJyYW5kOiJWZXJzYWNlIiwgcHJpY2U6MTM5LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvdmVyc2FjZS92ZTQzMzUtMTQ3MTI5L21hdHRlLXRyYW5zcGFyZW50LWdyZWVuLTE0MDk5MDcvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy83NzI3MzYtYW5nbGUuanBnIiwgc3R5bGU6WyJyb3VuZCIsImJvbGQiXSwgdXNlOlsic3R5bGUiLCJjYXN1YWwiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJWRTQzMzgiLCBicmFuZDoiVmVyc2FjZSIsIHByaWNlOjEzOSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL3ZlcnNhY2UvdmU0MzM4LTE0NzEzMS90b3J0b2lzZXNoZWxsLTE0MDk5MjIvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy83NzI2MjMtYW5nbGUuanBnIiwgc3R5bGU6WyJzcXVhcmUiLCJjbGFzc2ljIl0sIHVzZTpbInN0eWxlIiwiY2FzdWFsIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiUFIgNjVUUyIsIGJyYW5kOiJQcmFkYSIsIHByaWNlOjE3OS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL3ByYWRhL3ByKzY1dHMtMTQ3NTY2L3NpbHZlci0xYmMyYjAtMjI0MjM3NC8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzc2NDQzNy1hbmdsZS5qcGciLCBzdHlsZTpbInJlY3RhbmdsZSIsImNsYXNzaWMiXSwgdXNlOlsic3R5bGUiLCJkcml2aW5nIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTp0cnVlIH0sCiAgeyBuYW1lOiJQUiA2N1RTIiwgYnJhbmQ6IlByYWRhIiwgcHJpY2U6MTk5Ljk1LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvcHJhZGEvcHIrNjd0cy0xNDc1NzMvbWF0dGUtYnJvd24tdml4M28xLTIyNDIzNTUvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy83NjQ0NTYtYW5nbGUuanBnIiwgc3R5bGU6WyJzcXVhcmUiLCJjbGFzc2ljIl0sIHVzZTpbInN0eWxlIiwiZHJpdmluZyJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6dHJ1ZSB9LAogIHsgbmFtZToiUFIgNjNUUyIsIGJyYW5kOiJQcmFkYSIsIHByaWNlOjIxOS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL3ByYWRhL3ByKzYzdHMtMTQ3NTc0L2JsYWNrLTFhYjJiMC0yMjQyMzgwLyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvNzY0NDI5LWFuZ2xlLmpwZyIsIHN0eWxlOlsicmVjdGFuZ2xlIiwiYm9sZCJdLCB1c2U6WyJzdHlsZSJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6Ik9POTI2NCIsIGJyYW5kOiJPYWtsZXkiLCBwcmljZToxNjkuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9vYWtsZXkvb285MjY0LTkyNjQyNS0xNjY0NTMvbWF0dGUtYmxhY2stMzAwMTY5OC8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzg2MTI5MS1hbmdsZS5qcGciLCBzdHlsZTpbInJlY3RhbmdsZSIsInNwb3J0Il0sIHVzZTpbImFjdGl2ZSIsIm91dGRvb3IiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJTQ0gxNTIiLCBicmFuZDoiQ2hvcGFyZCIsIHByaWNlOjI1MCwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2Nob3BhcmQvc2NoMTUyLTE2NjM2NS90b3J0b2lzZXNoZWxsLTcyMnAtMzAwMTUwNy8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzg2MTA5NS1zaWRlLmpwZyIsIHN0eWxlOlsic3F1YXJlIiwiY2xhc3NpYyJdLCB1c2U6WyJzdHlsZSJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlNDSDE1Nk0iLCBicmFuZDoiQ2hvcGFyZCIsIHByaWNlOjI1MCwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2Nob3BhcmQvc2NoMTU2bS0xNjYzNjYvYmxhY2stNzAzcC0zMDAxNTA4LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvODYxMDk2LWFuZ2xlLmpwZyIsIHN0eWxlOlsicmVjdGFuZ2xlIiwiYm9sZCJdLCB1c2U6WyJzdHlsZSJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlNDSDE2M0ciLCBicmFuZDoiQ2hvcGFyZCIsIHByaWNlOjI1MCwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2Nob3BhcmQvc2NoMTYzZy0xNjYzNjgvYmx1ZS0wd3RnLTMwMDE3MDMvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84NjEyOTYtYW5nbGUuanBnIiwgc3R5bGU6WyJjYXQtZXllIiwiYm9sZCJdLCB1c2U6WyJzdHlsZSJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlRBSUxXSU5EIFNXSUZUIEVWMDk4MyIsIGJyYW5kOiJOaWtlIiwgcHJpY2U6OTguOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9uaWtlL3RhaWx3aW5kK3N3aWZ0K2V2MDk4My0xNjY0NTIvd2hpdGUtMDcwLTMwMDE2OTcvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84NjEyOTAtYW5nbGUuanBnIiwgc3R5bGU6WyJzcG9ydCIsInJlY3RhbmdsZSJdLCB1c2U6WyJhY3RpdmUiLCJvdXRkb29yIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiU0NPMDQ2IiwgYnJhbmQ6IkNvbnZlcnNlIiwgcHJpY2U6NDIuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9jb252ZXJzZS9zY28wNDYtMTY2Mzk1L2JsYWNrLXJlZC01My0wejQyLTMwMDE1NzIvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84NjExNjAtYW5nbGUuanBnIiwgc3R5bGU6WyJzcXVhcmUiLCJjYXN1YWwiXSwgdXNlOlsiY2FzdWFsIiwic3R5bGUiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJTQ08wNDgiLCBicmFuZDoiQ29udmVyc2UiLCBwcmljZTo0Ny45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2NvbnZlcnNlL3NjbzA0OC0xNjYzOTcvYmxhY2stcmVkLTUyLTZ0eXctMzAwMTU3Ni8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzg2MTE2NC1hbmdsZS5qcGciLCBzdHlsZTpbInNxdWFyZSIsImNhc3VhbCJdLCB1c2U6WyJjYXN1YWwiLCJzdHlsZSJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlNDTzA1MCIsIGJyYW5kOiJDb252ZXJzZSIsIHByaWNlOjQ3Ljk1LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvY29udmVyc2Uvc2NvMDUwLTE2NjM5OS9ibGFjay1wdXJwbGUtNTgtZzc1cC0zMDAxNTgyLyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvODYxMTcwLWFuZ2xlLmpwZyIsIHN0eWxlOlsic3F1YXJlIiwiYm9sZCJdLCB1c2U6WyJjYXN1YWwiLCJzdHlsZSJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlY1MjgiLCBicmFuZDoiSm9obiBWYXJ2YXRvcyIsIHByaWNlOjEzOS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2pvaG4rdmFydmF0b3MvdjUyOC0xNjY0MDcvYmxhY2stdG9ydG9pc2UtMzAwMTYwMS8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzg2MTE4OS1hbmdsZS5qcGciLCBzdHlsZTpbInNxdWFyZSIsImNsYXNzaWMiXSwgdXNlOlsiY2FzdWFsIiwiZHJpdmluZyJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlY1MjkiLCBicmFuZDoiSm9obiBWYXJ2YXRvcyIsIHByaWNlOjEzOS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2pvaG4rdmFydmF0b3MvdjUyOS0xNjY0MDgvdG9ydG9pc2UtMzAwMTYwNi8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzg2MTE5NC1hbmdsZS5qcGciLCBzdHlsZTpbInNxdWFyZSIsImNsYXNzaWMiXSwgdXNlOlsiY2FzdWFsIiwiZHJpdmluZyJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlY1MzAiLCBicmFuZDoiSm9obiBWYXJ2YXRvcyIsIHByaWNlOjE0Ny45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2pvaG4rdmFydmF0b3MvdjUzMC0xNjY0MDkvYmxhY2stMzAwMTYwNy8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzg2MTE5NS1hbmdsZS5qcGciLCBzdHlsZTpbInJlY3RhbmdsZSIsImNsYXNzaWMiXSwgdXNlOlsiY2FzdWFsIiwiZHJpdmluZyJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IkF1dHVtbi9TIiwgYnJhbmQ6IkthdGUgU3BhZGUiLCBwcmljZTo5NC45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2thdGUrc3BhZGUvYXV0dW1ucy0xNjY0MTUvZ3JheS1kZXYteTYtMzAwMTYyNC8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzg2MTIxNy1hbmdsZS5qcGciLCBzdHlsZTpbInJvdW5kIiwiY2xhc3NpYyJdLCB1c2U6WyJzdHlsZSIsImNhc3VhbCJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlNlbG1hL0YvUyIsIGJyYW5kOiJLYXRlIFNwYWRlIiwgcHJpY2U6OTQuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9rYXRlK3NwYWRlL3NlbG1hZnMtMTY2NDE2L2JsYWNrLXMzMGhkLTMwMDE2MjUvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84NjEyMTgtYW5nbGUuanBnIiwgc3R5bGU6WyJjYXQtZXllIiwiYm9sZCJdLCB1c2U6WyJzdHlsZSJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IkFsZXhhbmRlciIsIGJyYW5kOiJMdWNreSBCcmFuZCIsIHByaWNlOjI5Ljk1LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvbHVja3krYnJhbmQvYWxleGFuZGVyLTE2NjQxNy9tYXR0ZS1ncmF5LTMwMDE2MjYvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84NjEyMTktYW5nbGUuanBnIiwgc3R5bGU6WyJzcXVhcmUiLCJjbGFzc2ljIl0sIHVzZTpbImNhc3VhbCJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IkJhbGR3aW4iLCBicmFuZDoiTHVja3kgQnJhbmQiLCBwcmljZToyOS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2x1Y2t5K2JyYW5kL2JhbGR3aW4tMTY2NDE4L2JsYWNrLTMwMDE2MjcveWVsbG93LWNyeXN0YWwtMzAwMTcwNi8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzg2MTI5OS1hbmdsZS5qcGciLCBzdHlsZTpbInNxdWFyZSIsImNhc3VhbCJdLCB1c2U6WyJjYXN1YWwiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJDb2x0b24iLCBicmFuZDoiTHVja3kgQnJhbmQiLCBwcmljZTo0OS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2x1Y2t5K2JyYW5kL2NvbHRvbi0xNjY0MjIvZ29sZC0zMDAxNjMyLyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvODYxMjI1LWFuZ2xlLmpwZyIsIHN0eWxlOlsiYXZpYXRvciIsImNsYXNzaWMiXSwgdXNlOlsiY2FzdWFsIiwiZHJpdmluZyJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlNQTDQ3NCIsIGJyYW5kOiJQb2xpY2UiLCBwcmljZTo5OC45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL3BvbGljZS9zcGw0NzQtMTY2NDI5L2JsYWNrLTcwMGYtMzAwMTY0NC8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzg2MTIzNy1hbmdsZS5qcGciLCBzdHlsZTpbInNxdWFyZSIsImNsYXNzaWMiXSwgdXNlOlsiY2FzdWFsIiwiZHJpdmluZyJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlNQTDU2OSIsIGJyYW5kOiJQb2xpY2UiLCBwcmljZToxMjkuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9wb2xpY2Uvc3BsNTY5LTE2NjQzMC9kYXJrLWJsdWUtNTY4Yi0zMDAxNjQ2LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvODYxMjM5LWFuZ2xlLmpwZyIsIHN0eWxlOlsic3F1YXJlIiwiY2xhc3NpYyJdLCB1c2U6WyJjYXN1YWwiLCJkcml2aW5nIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiU1BMNTcyTiIsIGJyYW5kOiJQb2xpY2UiLCBwcmljZTo5OC45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL3BvbGljZS9zcGw1NzJuLTE2NjQzMi90b3J0b2lzZXNoZWxsLTFnenYtMzAwMTY0OS8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzg2MTI0Mi1hbmdsZS5qcGciLCBzdHlsZTpbInNxdWFyZSIsImNsYXNzaWMiXSwgdXNlOlsiY2FzdWFsIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiU1BMNTc1IiwgYnJhbmQ6IlBvbGljZSIsIHByaWNlOjEyOS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL3BvbGljZS9zcGw1NzUtMTY2NDM0L2dvbGQtYnJvd24tMDhmZi0zMDAxNjU2LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvODYxMjQ5LWFuZ2xlLmpwZyIsIHN0eWxlOlsiYXZpYXRvciIsImNsYXNzaWMiXSwgdXNlOlsiZHJpdmluZyIsImNhc3VhbCJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlNQTDcyNSIsIGJyYW5kOiJQb2xpY2UiLCBwcmljZToxMzkuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9wb2xpY2Uvc3BsNzI1LTE2NjQ0NC9ibGFjay0wMWVwLTMwMDE2ODIvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84NjEyNzUtYW5nbGUuanBnIiwgc3R5bGU6WyJyZWN0YW5nbGUiLCJjbGFzc2ljIl0sIHVzZTpbImNhc3VhbCIsImRyaXZpbmciXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJNZXJjdXJpYWwgOC4wIFIgRVYwNzgzIiwgYnJhbmQ6Ik5pa2UiLCBwcmljZTo4OS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL25pa2UvbWVyY3VyaWFsKzgwK3IrZXYwNzgzLTQwOTk1L2Jyb3duLTIzMy0yMDI2MTI4LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvMzE0MjQ4LWFuZ2xlLmpwZyIsIHN0eWxlOlsic3BvcnQiLCJyZWN0YW5nbGUiXSwgdXNlOlsiYWN0aXZlIiwib3V0ZG9vciJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6Ik1lcmN1cmlhbCA4LjAgRVYwNzgxIiwgYnJhbmQ6Ik5pa2UiLCBwcmljZTo4OS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL25pa2UvbWVyY3VyaWFsKzgwK2V2MDc4MS00NzQ0OS9ibGFjay0yODktMjE3Mjg4NS8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzY0NjkxMy1hbmdsZS5qcGciLCBzdHlsZTpbInNwb3J0IiwicmVjdGFuZ2xlIl0sIHVzZTpbImFjdGl2ZSIsIm91dGRvb3IiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJFeGhhbGUgRSBFVjA4MTYiLCBicmFuZDoiTmlrZSIsIHByaWNlOjk0Ljk1LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvbmlrZS9leGhhbGUrZStldjA4MTYtNDc1NjYvYW50aHJhY2l0ZS0wNTYtMjAyMTM1Ny8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzMwMzA1OC1hbmdsZS5qcGciLCBzdHlsZTpbInNwb3J0IiwicmVjdGFuZ2xlIl0sIHVzZTpbImFjdGl2ZSIsIm91dGRvb3IiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJWNzk5IiwgYnJhbmQ6IkpvaG4gVmFydmF0b3MiLCBwcmljZTo5OC40OSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2pvaG4rdmFydmF0b3Mvdjc5OS02NTU3OS9icm93bi0yMTcwNzg4LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvNjQ0MjM4LWFuZ2xlLmpwZyIsIHN0eWxlOlsic3F1YXJlIiwiY2xhc3NpYyJdLCB1c2U6WyJjYXN1YWwiLCJkcml2aW5nIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiQ0ExMDA4IiwgYnJhbmQ6IkNhbmRpZXMiLCBwcmljZTo1NS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2NhbmRpZXMvY2ExMDA4LTEzMzY2Ni9zaGlueS1ibGFjay1ncmFkaWVudC1zbW9rZS0wMWItYi0yMTg0NjUxL3NoaW55LWJsYWNrLTAxYi0tLWItMjE4NDY1MS8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzY2NTQyNS1hbmdsZS5qcGciLCBzdHlsZTpbImNhdC1leWUiLCJib2xkIl0sIHVzZTpbInN0eWxlIiwiY2FzdWFsIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiQ0ExMDA2IiwgYnJhbmQ6IkNhbmRpZXMiLCBwcmljZTo1NS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2NhbmRpZXMvY2ExMDA2LTEzMzY3Ny9zaGlueS1yb3NlLWdvbGQtMjhjLWMtMjE4NDY1OC9zaGlueS1yb3NlLWdvbGQtMjhjLS0tYy0yMTg0NjU4LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvNjY1NDIxLWFuZ2xlLmpwZyIsIHN0eWxlOlsiY2F0LWV5ZSIsImJvbGQiXSwgdXNlOlsic3R5bGUiLCJjYXN1YWwiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJDQTEwMTAiLCBicmFuZDoiQ2FuZGllcyIsIHByaWNlOjU1Ljk1LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvY2FuZGllcy9jYTEwMTAtMTM2ODE5L2JsYWNrLWNyeXN0YWwtMDNiLTIyMDQ5NDEvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy82OTQ4MDQtYW5nbGUuanBnIiwgc3R5bGU6WyJjYXQtZXllIiwiYm9sZCJdLCB1c2U6WyJzdHlsZSIsImNhc3VhbCJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlY1MTYiLCBicmFuZDoiSm9obiBWYXJ2YXRvcyIsIHByaWNlOjEyNC45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2pvaG4rdmFydmF0b3MvdjUxNi0xNDI3NjMvYmxhY2stdG9ydG9pc2UtMjIyODgzNC8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzczMzQ3OS1hbmdsZS5qcGciLCBzdHlsZTpbInNxdWFyZSIsImNsYXNzaWMiXSwgdXNlOlsiY2FzdWFsIiwiZHJpdmluZyJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlY1MTQiLCBicmFuZDoiSm9obiBWYXJ2YXRvcyIsIHByaWNlOjk4LjQ5LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvam9obit2YXJ2YXRvcy92NTE0LTE0Mjc2NS9ndW5tZXRhbC0yMjI4ODM2LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvNzMzNDc0LWFuZ2xlLmpwZyIsIHN0eWxlOlsicmVjdGFuZ2xlIiwiY2xhc3NpYyJdLCB1c2U6WyJjYXN1YWwiXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJKT05FTEwvUyIsIGJyYW5kOiJLYXRlIFNwYWRlIiwgcHJpY2U6OTQuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9rYXRlK3NwYWRlL2pvbmVsbHMtMTU0NDM4L2JsdWUtaGF2YW5hLTEzNTM5NjkvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84MDY0NzMtYW5nbGUuanBnIiwgc3R5bGU6WyJjYXQtZXllIiwiYm9sZCJdLCB1c2U6WyJzdHlsZSJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IktBVEVMRUUvUyIsIGJyYW5kOiJLYXRlIFNwYWRlIiwgcHJpY2U6OTQuOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9rYXRlK3NwYWRlL2thdGVsZWVzLTE1NDQ0Ni9ibGFjay1zaWx2ZXItZ2xpdHRlci0xMzQwODg5LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvODA2Mzg3LWFuZ2xlLmpwZyIsIHN0eWxlOlsicm91bmQiLCJib2xkIl0sIHVzZTpbInN0eWxlIiwiY2FzdWFsIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiSlVEWUFOTi9QL1MiLCBicmFuZDoiS2F0ZSBTcGFkZSIsIHByaWNlOjExOC45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2thdGUrc3BhZGUvanVkeWFubnBzLTE1NDQ3Ni9pdm9yeS1oYXZhbmEtYm9hLW05LTEzNzQwMTIvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84MDY3NzctYW5nbGUuanBnIiwgc3R5bGU6WyJjYXQtZXllIiwiYm9sZCJdLCB1c2U6WyJzdHlsZSJdLCBwb2xhcml6ZWQ6dHJ1ZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiU0hFMTAzIiwgYnJhbmQ6IkNhcm9saW5hIEhlcnJlcmEiLCBwcmljZTo5OC45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2Nhcm9saW5hK2hlcnJlcmEvc2hlMTAzLTE2NjM1OC9zaWx2ZXItOGZleC0zMDAxNDk2LyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvODYxMDg0LWFuZ2xlLmpwZyIsIHN0eWxlOlsic3F1YXJlIiwiY2xhc3NpYyJdLCB1c2U6WyJzdHlsZSIsImNhc3VhbCJdLCBwb2xhcml6ZWQ6ZmFsc2UsIHJ4UmVhZHk6ZmFsc2UgfSwKICB7IG5hbWU6IlNIRTY0OCIsIGJyYW5kOiJDYXJvbGluYSBIZXJyZXJhIiwgcHJpY2U6OTguOTUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9jYXJvbGluYStoZXJyZXJhL3NoZTY0OC0xNjYzNjAvYmxhY2stNTUtMHQyOS0zMDAxNTAwLyIsIGltZzoiaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vdmlzaW9ucHJvcy92My9wcm9kdWN0cy9mcmFtZXMvODYxMDg4LWFuZ2xlLmpwZyIsIHN0eWxlOlsicmVjdGFuZ2xlIiwiY2xhc3NpYyJdLCB1c2U6WyJzdHlsZSIsImRyaXZpbmciXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0sCiAgeyBuYW1lOiJTQ0gyNTgiLCBicmFuZDoiQ2hvcGFyZCIsIHByaWNlOjM5NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2Nob3BhcmQvc2NoMjU4LTE2NjM3Mi9ibGFjay03MDBwLTMwMDE1MTkvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84NjExMDctYW5nbGUuanBnIiwgc3R5bGU6WyJzcXVhcmUiLCJib2xkIl0sIHVzZTpbInN0eWxlIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiU0NIQzIyIiwgYnJhbmQ6IkNob3BhcmQiLCBwcmljZTozNzUsIHVybDoiaHR0cHM6Ly93d3cudmlzaW9ucHJvcy5jb20vc3VuZ2xhc3Nlcy9jaG9wYXJkL3NjaGMyMi0xNjYzNzYvYmxhY2stZ29sZC01NC0wMzAwLTMwMDE1MjgvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84NjExMTYtc2lkZS5qcGciLCBzdHlsZTpbImNhdC1leWUiLCJib2xkIl0sIHVzZTpbInN0eWxlIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiTHVja3kgQnJhbmQgTmV3YmVycnkiLCBicmFuZDoiTHVja3kgQnJhbmQiLCBwcmljZToyOS45NSwgdXJsOiJodHRwczovL3d3dy52aXNpb25wcm9zLmNvbS9zdW5nbGFzc2VzL2x1Y2t5K2JyYW5kL25ld2JlcnJ5LTE2NjQyNy9ncmF5LTMwMDE2NDAvIiwgaW1nOiJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS92aXNpb25wcm9zL3YzL3Byb2R1Y3RzL2ZyYW1lcy84NjEyMzMtYW5nbGUuanBnIiwgc3R5bGU6WyJzcXVhcmUiLCJjYXN1YWwiXSwgdXNlOlsiY2FzdWFsIl0sIHBvbGFyaXplZDpmYWxzZSwgcnhSZWFkeTpmYWxzZSB9LAogIHsgbmFtZToiVHJpbml0eSIsIGJyYW5kOiJMdWNreSBCcmFuZCIsIHByaWNlOjQ5Ljk1LCB1cmw6Imh0dHBzOi8vd3d3LnZpc2lvbnByb3MuY29tL3N1bmdsYXNzZXMvbHVja3krYnJhbmQvdHJpbml0eS0xNjY0MjgvYmxhY2stMzAwMTY0MS8iLCBpbWc6Imh0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL3Zpc2lvbnByb3MvdjMvcHJvZHVjdHMvZnJhbWVzLzg2MTIzNC1hbmdsZS5qcGciLCBzdHlsZTpbImF2aWF0b3IiLCJjbGFzc2ljIl0sIHVzZTpbImNhc3VhbCIsImRyaXZpbmciXSwgcG9sYXJpemVkOmZhbHNlLCByeFJlYWR5OmZhbHNlIH0KXTsKCi8qIFByaWNlIOKGkiB0aWVyICovCmZ1bmN0aW9uIGdldFRpZXIocHJpY2UpIHsKICBpZiAocHJpY2UgPCAxMDApICByZXR1cm4gImJ1ZGdldC1iYXNpY3MiOwogIGlmIChwcmljZSA8PSAxNDkpIHJldHVybiAic21hcnQtZXZlcnlkYXktdmFsdWUiOwogIGlmIChwcmljZSA8PSAxOTkpIHJldHVybiAiZmVhdHVyZS1mb2N1c2VkLXBpY2siOwogIHJldHVybiAicHJlbWl1bS1zdHlsZS1pbnZlc3RtZW50IjsKfQoKLyog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQCiAgIFFVRVNUSU9OUwrilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgKi8KdmFyIFZQX1FVRVNUSU9OUyA9IFsKICB7CiAgICB0ZXh0OiAiV2hhdCBidWRnZXQgZmVlbHMgcmlnaHQgZm9yIHlvdXIgbmV4dCBwYWlyIG9mIHN1bmdsYXNzZXM\/IiwKICAgIG9wdGlvbnM6IFsKICAgICAgeyBsYWJlbDogIlVuZGVyICQxMDAiLCAgICAgc2NvcmVzOiB7ICJidWRnZXQtYmFzaWNzIjogNCB9IH0sCiAgICAgIHsgbGFiZWw6ICIkMTAwIHRvICQxNDkiLCAgIHNjb3JlczogeyAic21hcnQtZXZlcnlkYXktdmFsdWUiOiA0IH0gfSwKICAgICAgeyBsYWJlbDogIiQxNTAgdG8gJDE5OSIsICAgc2NvcmVzOiB7ICJmZWF0dXJlLWZvY3VzZWQtcGljayI6IDQgfSB9LAogICAgICB7IGxhYmVsOiAiJDIwMCBhbmQgdXAiLCAgICBzY29yZXM6IHsgInByZW1pdW0tc3R5bGUtaW52ZXN0bWVudCI6IDQgfSB9CiAgICBdCiAgfSwKICB7CiAgICB0ZXh0OiAiSG93IG9mdGVuIGRvIHlvdSB3ZWFyIHN1bmdsYXNzZXM\/IiwKICAgIG9wdGlvbnM6IFsKICAgICAgeyBsYWJlbDogIk9ubHkgb25jZSBpbiBhIHdoaWxlIiwgICAgICAgc2NvcmVzOiB7ICJidWRnZXQtYmFzaWNzIjogMiB9IH0sCiAgICAgIHsgbGFiZWw6ICJBIGZldyB0aW1lcyBhIHdlZWsiLCAgICAgICAgIHNjb3JlczogeyAic21hcnQtZXZlcnlkYXktdmFsdWUiOiAyIH0gfSwKICAgICAgeyBsYWJlbDogIkFsbW9zdCBldmVyeSBkYXkiLCAgICAgICAgICAgc2NvcmVzOiB7ICJmZWF0dXJlLWZvY3VzZWQtcGljayI6IDIgfSB9LAogICAgICB7IGxhYmVsOiAiRXZlcnkgZGF5IGZvciBsb25nIGhvdXJzIiwgICBzY29yZXM6IHsgInByZW1pdW0tc3R5bGUtaW52ZXN0bWVudCI6IDIgfSB9CiAgICBdCiAgfSwKICB7CiAgICB0ZXh0OiAiV2hhdCBkbyB5b3UgbmVlZCB5b3VyIHN1bmdsYXNzZXMgZm9yIG1vc3Q\/IiwKICAgIG9wdGlvbnM6IFsKICAgICAgeyBsYWJlbDogIk1vc3RseSBzdHlsZSBhbmQgY2FzdWFsIHdlYXIiLCAgICAgICBzY29yZXM6IHsgInByZW1pdW0tc3R5bGUtaW52ZXN0bWVudCI6IDIgfSwgdXNlVGFnczogWyJzdHlsZSIsImNhc3VhbCJdIH0sCiAgICAgIHsgbGFiZWw6ICJEcml2aW5nIGFuZCBlcnJhbmRzIiwgICAgICAgICAgICAgICAgc2NvcmVzOiB7ICJzbWFydC1ldmVyeWRheS12YWx1ZSI6IDIgfSwgICAgICB1c2VUYWdzOiBbImRyaXZpbmciXSB9LAogICAgICB7IGxhYmVsOiAiVHJhdmVsIGFuZCBhbGwtZGF5IG91dGRvb3Igd2VhciIsICAgIHNjb3JlczogeyAiZmVhdHVyZS1mb2N1c2VkLXBpY2siOiAyIH0sICAgICAgdXNlVGFnczogWyJvdXRkb29yIl0gfSwKICAgICAgeyBsYWJlbDogIlNwb3J0cyBhbmQgYWN0aXZlIHVzZSIsICAgICAgICAgICAgICBzY29yZXM6IHsgImZlYXR1cmUtZm9jdXNlZC1waWNrIjogMiB9LCAgICAgIHVzZVRhZ3M6IFsiYWN0aXZlIl0gfQogICAgXQogIH0sCiAgewogICAgdGV4dDogIldoYXQgbWF0dGVycyBtb3N0IHRvIHlvdSB3aGVuIGNob29zaW5nIHN1bmdsYXNzZXM\/IiwKICAgIG9wdGlvbnM6IFsKICAgICAgeyBsYWJlbDogIlNwZW5kaW5nIGxlc3MiLCAgICAgICAgICAgICAgICAgICAgICAgICBzY29yZXM6IHsgImJ1ZGdldC1iYXNpY3MiOiAzIH0gfSwKICAgICAgeyBsYWJlbDogIkEgZ29vZCBtaXggb2YgcHJpY2UgYW5kIHF1YWxpdHkiLCAgICAgICBzY29yZXM6IHsgInNtYXJ0LWV2ZXJ5ZGF5LXZhbHVlIjogMyB9IH0sCiAgICAgIHsgbGFiZWw6ICJCZXR0ZXIgbGVucyBwZXJmb3JtYW5jZSBhbmQgY29tZm9ydCIsICAgc2NvcmVzOiB7ICJmZWF0dXJlLWZvY3VzZWQtcGljayI6IDMgfSB9LAogICAgICB7IGxhYmVsOiAiRmluZGluZyBhIHBhaXIgdGhhdCBzdGFuZHMgb3V0IiwgICAgICAgIHNjb3JlczogeyAicHJlbWl1bS1zdHlsZS1pbnZlc3RtZW50IjogMyB9IH0KICAgIF0KICB9LAogIHsKICAgIHRleHQ6ICJXaGljaCBmZWF0dXJlIHdvdWxkIHlvdSBtb3N0IGxpa2UgdG8gaGF2ZT8iLAogICAgb3B0aW9uczogWwogICAgICB7IGxhYmVsOiAiUG9sYXJpemVkIGxlbnNlcyIsICAgICAgICAgICAgc2NvcmVzOiB7ICJmZWF0dXJlLWZvY3VzZWQtcGljayI6IDEgfSwgZmVhdHVyZVRhZ3M6IFsicG9sYXJpemVkIl0gfSwKICAgICAgeyBsYWJlbDogIlByZXNjcmlwdGlvbi1yZWFkeSBmcmFtZXMiLCAgIHNjb3JlczogeyAiZmVhdHVyZS1mb2N1c2VkLXBpY2siOiAxIH0sIGZlYXR1cmVUYWdzOiBbInJ4LXJlYWR5Il0gfSwKICAgICAgeyBsYWJlbDogIkxpZ2h0d2VpZ2h0IGNvbWZvcnQiLCAgICAgICAgIHNjb3JlczogeyAic21hcnQtZXZlcnlkYXktdmFsdWUiOiAxIH0sIGZlYXR1cmVUYWdzOiBbImxpZ2h0d2VpZ2h0Il0gfSwKICAgICAgeyBsYWJlbDogIkEgY2xhc3NpYyBzaGFwZSBJIGNhbiB3ZWFyIG9mdGVuIiwgc2NvcmVzOiB7ICJzbWFydC1ldmVyeWRheS12YWx1ZSI6IDEgfSwgZmVhdHVyZVRhZ3M6IFsiY2xhc3NpYyJdIH0KICAgIF0KICB9LAogIHsKICAgIHRleHQ6ICJXaGljaCBsb29rIHNvdW5kcyBtb3N0IGxpa2UgeW91PyIsCiAgICBvcHRpb25zOiBbCiAgICAgIHsgbGFiZWw6ICJDbGFzc2ljIGFuZCBlYXN5IHRvIHdlYXIiLCAgIHNjb3JlczogeyAic21hcnQtZXZlcnlkYXktdmFsdWUiOiAxIH0sIHN0eWxlVGFnczogWyJjbGFzc2ljIiwiYXZpYXRvciIsInJvdW5kIiwic3F1YXJlIiwicmVjdGFuZ2xlIl0gfSwKICAgICAgeyBsYWJlbDogIkJvbGQgYW5kIGZhc2hpb24tZm9yd2FyZCIsICAgc2NvcmVzOiB7ICJwcmVtaXVtLXN0eWxlLWludmVzdG1lbnQiOiAxIH0sIHN0eWxlVGFnczogWyJib2xkIiwiY2F0LWV5ZSIsImdlb21ldHJpYyIsIm92ZXJzaXplIl0gfSwKICAgICAgeyBsYWJlbDogIlNwb3J0eSBhbmQgYWN0aXZlIiwgICAgICAgICAgc2NvcmVzOiB7ICJmZWF0dXJlLWZvY3VzZWQtcGljayI6IDEgfSwgc3R5bGVUYWdzOiBbInNwb3J0IiwicmVjdGFuZ2xlIl0gfSwKICAgICAgeyBsYWJlbDogIkNsZWFuIGFuZCBzdHJ1Y3R1cmVkIiwgICAgICAgc2NvcmVzOiB7ICJzbWFydC1ldmVyeWRheS12YWx1ZSI6IDEgfSwgc3R5bGVUYWdzOiBbInNxdWFyZSIsInJlY3RhbmdsZSIsImdlb21ldHJpYyJdIH0KICAgIF0KICB9Cl07CgovKiDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAKICAgUkVTVUxUUwrilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgKi8KdmFyIFZQX1JFU1VMVFMgPSB7CiAgImJ1ZGdldC1iYXNpY3MiOiB7CiAgICB0aXRsZTogIkJ1ZGdldCBCYXNpY3MiLAogICAgZGVzYzogIllvdSB3YW50IGEgcGFpciB0aGF0IGxvb2tzIGdvb2QsIGZlZWxzIGRlY2VudCwgYW5kIHN0YXlzIHdpdGhpbiBhIGxvd2VyIHByaWNlIHJhbmdlLiBUaGF0IG1ha2VzIHNlbnNlIGlmIHlvdSBvbmx5IHdlYXIgc3VuZ2xhc3NlcyBub3cgYW5kIHRoZW4sIHdhbnQgYSBiYWNrdXAgcGFpciwgb3IgbGlrZSBzd2l0Y2hpbmcgdXAgeW91ciBsb29rIHdpdGhvdXQgc3BlbmRpbmcgdG9vIG11Y2guIiwKICAgIHByaW9yaXRpemU6ICJVViBwcm90ZWN0aW9uLCBhIHNoYXBlIHlvdSB3aWxsIGFjdHVhbGx5IHdlYXIsIGFuZCBhIGNvbWZvcnRhYmxlIGZpdC4iLAogICAgc2tpcDogIkV4dHJhIGRldGFpbHMgdGhhdCByYWlzZSB0aGUgcHJpY2Ugd2l0aG91dCBpbXByb3ZpbmcgZXZlcnlkYXkgdXNlLiIsCiAgICB1djogIkEgbG93IHByaWNlIGRvZXMgbm90IGF1dG9tYXRpY2FsbHkgbWVhbiBwb29yIHByb3RlY3Rpb24uIEFsd2F5cyBsb29rIGZvciA5OSUgdG8gMTAwJSBVVkEvVVZCIHByb3RlY3Rpb24gb3IgVVY0MDAgZmlyc3QuIgogIH0sCiAgInNtYXJ0LWV2ZXJ5ZGF5LXZhbHVlIjogewogICAgdGl0bGU6ICJTbWFydCBFdmVyeWRheSBWYWx1ZSIsCiAgICBkZXNjOiAiWW91IGFyZSBsb29raW5nIGZvciB0aGUgc3dlZXQgc3BvdC4gWW91IHdhbnQgc3VuZ2xhc3NlcyB0aGF0IGZlZWwgbW9yZSBkZXBlbmRhYmxlIHRoYW4gYW4gZW50cnktbGV2ZWwgcGFpciwgYnV0IHlvdSBhcmUgc3RpbGwgd2F0Y2hpbmcgeW91ciBidWRnZXQuIFRoaXMgcmFuZ2Ugb2Z0ZW4gd29ya3Mgd2VsbCBmb3IgcmVndWxhciB3ZWFyZXJzIHdobyB3YW50IGNvbWZvcnQsIHZlcnNhdGlsaXR5LCBhbmQgYSBsaXR0bGUgbW9yZSBwb2xpc2guIiwKICAgIHByaW9yaXRpemU6ICJDb21mb3J0LCBzb2xpZCBsZW5zIHF1YWxpdHksIGFuZCBhIHNoYXBlIHRoYXQgd29ya3MgZm9yIGRhaWx5IHdlYXIuIiwKICAgIHNraXA6ICJQYXlpbmcgbW9yZSBqdXN0IGZvciBsb29rcyBpZiB0aGUgZml0IGFuZCBmZWF0dXJlcyBhcmUgbm90IGJldHRlci4iLAogICAgdXY6ICJUaGUgYmVzdCBwYWlyIGZvciB5b3UgaXMgbm90IGFsd2F5cyB0aGUgbW9zdCBleHBlbnNpdmUgb25lLiBGb2N1cyBvbiBVViBwcm90ZWN0aW9uLCBmaXQsIGFuZCB0aGUgZmVhdHVyZXMgeW91IHdpbGwgdXNlLiIKICB9LAogICJmZWF0dXJlLWZvY3VzZWQtcGljayI6IHsKICAgIHRpdGxlOiAiRmVhdHVyZS1Gb2N1c2VkIFBpY2siLAogICAgZGVzYzogIllvdSBjYXJlIG1vcmUgYWJvdXQgcGVyZm9ybWFuY2UgdGhhbiBqdXN0IHByaWNlIGFsb25lLiBZb3UgYXJlIGxpa2VseSB0aGUgdHlwZSBvZiBzaG9wcGVyIHdobyBub3RpY2VzIGdsYXJlLCBjb21mb3J0LCBsZW5zIHF1YWxpdHksIG9yIGhvdyBhIHBhaXIgZmVlbHMgYWZ0ZXIgaG91cnMgb2Ygd2Vhci4gVGhpcyByYW5nZSBtYWtlcyBzZW5zZSBpZiB5b3Ugd2FudCBhIHBhaXIgdGhhdCB3b3JrcyBoYXJkZXIgZm9yIGV2ZXJ5ZGF5IHVzZS4iLAogICAgcHJpb3JpdGl6ZTogIlBvbGFyaXplZCBsZW5zZXMgaWYgbmVlZGVkLCBwcmVzY3JpcHRpb24tcmVhZHkgb3B0aW9ucyBpZiByZWxldmFudCwgYW5kIGFsbC1kYXkgY29tZm9ydC4iLAogICAgc2tpcDogIlN0eWxlIGV4dHJhcyB0aGF0IGRvIG5vdCBpbXByb3ZlIGhvdyB0aGUgc3VuZ2xhc3NlcyBhY3R1YWxseSB3ZWFyLiIsCiAgICB1djogIk5vIG1hdHRlciB5b3VyIGJ1ZGdldCwgYWx3YXlzIGNoZWNrIGZvciA5OSUgdG8gMTAwJSBVVkEvVVZCIHByb3RlY3Rpb24gb3IgVVY0MDAuIgogIH0sCiAgInByZW1pdW0tc3R5bGUtaW52ZXN0bWVudCI6IHsKICAgIHRpdGxlOiAiUHJlbWl1bSBTdHlsZSBJbnZlc3RtZW50IiwKICAgIGRlc2M6ICJZb3Ugd2FudCBhIHBhaXIgdGhhdCBmZWVscyBpbnRlbnRpb25hbC4gWW91IGxpa2VseSB3ZWFyIHN1bmdsYXNzZXMgb2Z0ZW4sIGNhcmUgYWJvdXQgZGVzaWduLCBhbmQgYXJlIHdpbGxpbmcgdG8gc3BlbmQgbW9yZSBvbiBzb21ldGhpbmcgdGhhdCBsb29rcyBwb2xpc2hlZCBhbmQgZmVlbHMgcmlnaHQuIEZvciB5b3UsIHRoaXMgaXMgbm90IGp1c3QgYSBiYWNrdXAgaXRlbSDigJQgaXQgaXMgcGFydCBvZiB5b3VyIGV2ZXJ5ZGF5IHN0eWxlLiIsCiAgICBwcmlvcml0aXplOiAiRml0LCBmaW5pc2gsIGNvbWZvcnQsIGFuZCB0aGUgb3ZlcmFsbCBsb29rIHlvdSB3aWxsIGtlZXAgcmVhY2hpbmcgZm9yLiIsCiAgICBza2lwOiAiRmVhdHVyZXMgeW91IGRvIG5vdCBhY3R1YWxseSBuZWVkIGlmIHRoZXkgb25seSBwdXNoIHRoZSBwcmljZSBoaWdoZXIuIiwKICAgIHV2OiAiQSBoaWdoZXIgcHJpY2UgZG9lcyBub3QgYXV0b21hdGljYWxseSBtZWFuIGJldHRlciBleWUgcHJvdGVjdGlvbi4gQWx3YXlzIGNoZWNrIGZvciBwcm9wZXIgVVZBL1VWQiBwcm90ZWN0aW9uIG9yIFVWNDAwLiIKICB9Cn07CgovKiDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAKICAgU1RBVEUK4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQICovCnZhciB2cEN1cnJlbnQgPSAwOwp2YXIgdnBBbnN3ZXJzID0gW107ICAgLy8gaW5kZXggb2Ygc2VsZWN0ZWQgb3B0aW9uIHBlciBxdWVzdGlvbgp2YXIgdnBTY29yZXMgID0ge307CnZhciB2cFVzZVRhZ3MgPSBbXTsKdmFyIHZwRmVhdHVyZVRhZ3MgPSBbXTsKdmFyIHZwU3R5bGVUYWdzID0gW107CgovKiDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAKICAgU0NPUklORyAmIFJFU1VMVArilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgKi8KZnVuY3Rpb24gdnBDYWxjUmVzdWx0KCkgewogIHZhciBzY29yZXMgPSB7ICJidWRnZXQtYmFzaWNzIjowLCAic21hcnQtZXZlcnlkYXktdmFsdWUiOjAsICJmZWF0dXJlLWZvY3VzZWQtcGljayI6MCwgInByZW1pdW0tc3R5bGUtaW52ZXN0bWVudCI6MCB9OwogIHZwVXNlVGFncyA9IFtdOyB2cEZlYXR1cmVUYWdzID0gW107IHZwU3R5bGVUYWdzID0gW107CgogIGZvciAodmFyIHEgPSAwOyBxIDwgVlBfUVVFU1RJT05TLmxlbmd0aDsgcSsrKSB7CiAgICB2YXIgb3B0ID0gVlBfUVVFU1RJT05TW3FdLm9wdGlvbnNbdnBBbnN3ZXJzW3FdXTsKICAgIGlmICghb3B0KSBjb250aW51ZTsKICAgIGZvciAodmFyIHRpZXIgaW4gb3B0LnNjb3Jlcykgc2NvcmVzW3RpZXJdICs9IG9wdC5zY29yZXNbdGllcl07CiAgICBpZiAob3B0LnVzZVRhZ3MpICAgICB2cFVzZVRhZ3MgICAgID0gdnBVc2VUYWdzLmNvbmNhdChvcHQudXNlVGFncyk7CiAgICBpZiAob3B0LmZlYXR1cmVUYWdzKSB2cEZlYXR1cmVUYWdzID0gdnBGZWF0dXJlVGFncy5jb25jYXQob3B0LmZlYXR1cmVUYWdzKTsKICAgIGlmIChvcHQuc3R5bGVUYWdzKSAgIHZwU3R5bGVUYWdzICAgPSB2cFN0eWxlVGFncy5jb25jYXQob3B0LnN0eWxlVGFncyk7CiAgfQoKICAvKiBmaW5kIHdpbm5lciAqLwogIHZhciB0aWVycyA9IE9iamVjdC5rZXlzKHNjb3Jlcyk7CiAgdmFyIGJlc3QgPSB0aWVycy5yZWR1Y2UoZnVuY3Rpb24oYSwgYil7IHJldHVybiBzY29yZXNbYV0gPj0gc2NvcmVzW2JdID8gYSA6IGI7IH0pOwoKICAvKiB0aWUtYnJlYWtlcjogY2hlY2sgaWYgYW55IG90aGVyIHRpZXIgbWF0Y2hlcyB0b3Agc2NvcmUgKi8KICB2YXIgdG9wU2NvcmUgPSBzY29yZXNbYmVzdF07CiAgdmFyIHRpZWQgPSB0aWVycy5maWx0ZXIoZnVuY3Rpb24odCl7IHJldHVybiBzY29yZXNbdF0gPT09IHRvcFNjb3JlOyB9KTsKICBpZiAodGllZC5sZW5ndGggPiAxKSB7CiAgICAvKiB1c2UgUTEgYW5zd2VyIGZpcnN0ICovCiAgICB2YXIgcTFUaWVyID0gT2JqZWN0LmtleXMoVlBfUVVFU1RJT05TWzBdLm9wdGlvbnNbdnBBbnN3ZXJzWzBdXS5zY29yZXMpWzBdOwogICAgaWYgKHRpZWQuaW5kZXhPZihxMVRpZXIpICE9PSAtMSkgeyBiZXN0ID0gcTFUaWVyOyB9CiAgICBlbHNlIHsKICAgICAgLyogUTQgKi8KICAgICAgdmFyIHE0VGllciA9IE9iamVjdC5rZXlzKFZQX1FVRVNUSU9OU1szXS5vcHRpb25zW3ZwQW5zd2Vyc1szXV0uc2NvcmVzKVswXTsKICAgICAgaWYgKHRpZWQuaW5kZXhPZihxNFRpZXIpICE9PSAtMSkgeyBiZXN0ID0gcTRUaWVyOyB9CiAgICAgIGVsc2UgewogICAgICAgIC8qIGRlZmF1bHQgbG93ZXIgdGllciAqLwogICAgICAgIHZhciBvcmRlciA9IFsiYnVkZ2V0LWJhc2ljcyIsInNtYXJ0LWV2ZXJ5ZGF5LXZhbHVlIiwiZmVhdHVyZS1mb2N1c2VkLXBpY2siLCJwcmVtaXVtLXN0eWxlLWludmVzdG1lbnQiXTsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IG9yZGVyLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICBpZiAodGllZC5pbmRleE9mKG9yZGVyW2ldKSAhPT0gLTEpIHsgYmVzdCA9IG9yZGVyW2ldOyBicmVhazsgfQogICAgICAgIH0KICAgICAgfQogICAgfQogIH0KICByZXR1cm4gYmVzdDsKfQoKLyogUTEgYnVkZ2V0IGFuc3dlciDihpIgaGFyZCBwcmljZSBjZWlsaW5nIGluIGRvbGxhcnMgKi8KdmFyIFZQX0JVREdFVF9DRUlMSU5HID0geyAwOiA5OS45OSwgMTogMTQ5Ljk5LCAyOiAxOTkuOTksIDM6IEluZmluaXR5IH07CgpmdW5jdGlvbiB2cEdldFByb2R1Y3RzKHRpZXIpIHsKICB2YXIgd2FudFBvbGFyaXplZCA9IHZwRmVhdHVyZVRhZ3MuaW5kZXhPZigicG9sYXJpemVkIikgIT09IC0xOwogIHZhciB3YW50UnggPSB2cEZlYXR1cmVUYWdzLmluZGV4T2YoInJ4LXJlYWR5IikgIT09IC0xOwoKICAvKiBIYXJkIGNlaWxpbmcgZnJvbSBRMSDigJQgcHJvZHVjdHMgbXVzdCBuZXZlciBleGNlZWQgdGhlIHN0YXRlZCBidWRnZXQgKi8KICB2YXIgbWF4UHJpY2UgPSBWUF9CVURHRVRfQ0VJTElOR1t2cEFuc3dlcnNbMF1dOwoKICAvKiBzY29yZSBlYWNoIHByb2R1Y3QgKi8KICBmdW5jdGlvbiBzY29yZVByb2R1Y3QocCkgewogICAgdmFyIHMgPSAwOwogICAgdnBVc2VUYWdzLmZvckVhY2goZnVuY3Rpb24odCl7IGlmIChwLnVzZS5pbmRleE9mKHQpICE9PSAtMSkgcyArPSAyOyB9KTsKICAgIGlmICh3YW50UG9sYXJpemVkICYmIHAucG9sYXJpemVkKSBzICs9IDM7CiAgICBpZiAod2FudFJ4ICYmIHAucnhSZWFkeSkgcyArPSAzOwogICAgdnBTdHlsZVRhZ3MuZm9yRWFjaChmdW5jdGlvbih0KXsgaWYgKHAuc3R5bGUuaW5kZXhPZih0KSAhPT0gLTEpIHMgKz0gMTsgfSk7CiAgICByZXR1cm4gczsKICB9CgogIC8qIFByaW1hcnkgcG9vbDogc2NvcmVkIHRpZXIgQU5EIHdpdGhpbiBidWRnZXQgY2VpbGluZyAqLwogIHZhciBwb29sID0gVlBfUFJPRFVDVFMuZmlsdGVyKGZ1bmN0aW9uKHApewogICAgcmV0dXJuIGdldFRpZXIocC5wcmljZSkgPT09IHRpZXIgJiYgcC5wcmljZSA8PSBtYXhQcmljZTsKICB9KTsKCiAgcG9vbC5zb3J0KGZ1bmN0aW9uKGEsIGIpeyByZXR1cm4gc2NvcmVQcm9kdWN0KGIpIC0gc2NvcmVQcm9kdWN0KGEpOyB9KTsKCiAgLyogRmFsbGJhY2s6IGlmIHBvb2wgPCA0LCBwdWxsIGZyb20gYW55IHRpZXIgdGhhdCBzdGlsbCBmaXRzIHdpdGhpbiB0aGUgYnVkZ2V0IGNlaWxpbmcgKi8KICBpZiAocG9vbC5sZW5ndGggPCA0KSB7CiAgICB2YXIgZXh0cmEgPSBWUF9QUk9EVUNUUy5maWx0ZXIoZnVuY3Rpb24ocCl7CiAgICAgIHJldHVybiBnZXRUaWVyKHAucHJpY2UpICE9PSB0aWVyICYmIHAucHJpY2UgPD0gbWF4UHJpY2U7CiAgICB9KTsKICAgIGV4dHJhLnNvcnQoZnVuY3Rpb24oYSwgYil7IHJldHVybiBzY29yZVByb2R1Y3QoYikgLSBzY29yZVByb2R1Y3QoYSk7IH0pOwogICAgcG9vbCA9IHBvb2wuY29uY2F0KGV4dHJhLnNsaWNlKDAsIDQgLSBwb29sLmxlbmd0aCkpOwogIH0KCiAgcmV0dXJuIHBvb2wuc2xpY2UoMCwgNCk7Cn0KCi8qIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkAogICBVSSBIRUxQRVJTCuKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkCAqLwpmdW5jdGlvbiB2cFNob3dTY3JlZW4oaWQpIHsKICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcudnAtc2NyZWVuJykuZm9yRWFjaChmdW5jdGlvbihzKXsgcy5jbGFzc0xpc3QucmVtb3ZlKCdhY3RpdmUnKTsgfSk7CiAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpLmNsYXNzTGlzdC5hZGQoJ2FjdGl2ZScpOwp9CgpmdW5jdGlvbiB2cFJlbmRlclF1ZXN0aW9uKCkgewogIHZhciBxID0gVlBfUVVFU1RJT05TW3ZwQ3VycmVudF07CiAgdmFyIHRvdGFsID0gVlBfUVVFU1RJT05TLmxlbmd0aDsKICB2YXIgcGN0ID0gTWF0aC5yb3VuZCgodnBDdXJyZW50IC8gdG90YWwpICogMTAwKTsKCiAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3ZwLXByb2dyZXNzLWZpbGwnKS5zdHlsZS53aWR0aCA9IHBjdCArICclJzsKICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndnAtcHJvZ3Jlc3MtbGFiZWwnKS50ZXh0Q29udGVudCA9ICdRdWVzdGlvbiAnICsgKHZwQ3VycmVudCsxKSArICcgb2YgJyArIHRvdGFsOwogIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd2cC1xLW51bWJlcicpLnRleHRDb250ZW50ID0gJ1F1ZXN0aW9uICcgKyAodnBDdXJyZW50KzEpOwogIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd2cC1xLXRleHQnKS50ZXh0Q29udGVudCA9IHEudGV4dDsKCiAgdmFyIGxldHRlcnMgPSBbJ0EnLCdCJywnQycsJ0QnXTsKICB2YXIgaHRtbCA9ICcnOwogIHEub3B0aW9ucy5mb3JFYWNoKGZ1bmN0aW9uKG9wdCwgaSl7CiAgICB2YXIgc2VsID0gdnBBbnN3ZXJzW3ZwQ3VycmVudF0gPT09IGkgPyAnIHNlbGVjdGVkJyA6ICcnOwogICAgaHRtbCArPSAnPGJ1dHRvbiBjbGFzcz0idnAtb3B0aW9uJyArIHNlbCArICciIG9uY2xpY2s9InZwU2VsZWN0KCcgKyBpICsgJykiPicKICAgICAgKyAnPHNwYW4gY2xhc3M9InZwLW9wdGlvbi1sZXR0ZXIiPicgKyBsZXR0ZXJzW2ldICsgJzwvc3Bhbj4nCiAgICAgICsgJzxzcGFuIGNsYXNzPSJ2cC1vcHRpb24tdGV4dCI+JyArIG9wdC5sYWJlbCArICc8L3NwYW4+JwogICAgICArICc8L2J1dHRvbj4nOwogIH0pOwogIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd2cC1vcHRpb25zJykuaW5uZXJIVE1MID0gaHRtbDsKCiAgLyogYmFjayBidXR0b24gdmlzaWJpbGl0eSAqLwogIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd2cC1idG4tYmFjaycpLnN0eWxlLnZpc2liaWxpdHkgPSB2cEN1cnJlbnQgPT09IDAgPyAnaGlkZGVuJyA6ICd2aXNpYmxlJzsKCiAgLyogbmV4dCBidXR0b24gc3RhdGUgKi8KICB2YXIgbmV4dEJ0biA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd2cC1idG4tbmV4dCcpOwogIG5leHRCdG4uZGlzYWJsZWQgPSB2cEFuc3dlcnNbdnBDdXJyZW50XSA9PT0gdW5kZWZpbmVkOwogIG5leHRCdG4udGV4dENvbnRlbnQgPSB2cEN1cnJlbnQgPT09IHRvdGFsIC0gMSA\/ICdTZWUgTXkgUmVzdWx0IFx1MjE5MicgOiAnTmV4dCBcdTIxOTInOwp9CgpmdW5jdGlvbiB2cFNlbGVjdChpZHgpIHsKICB2cEFuc3dlcnNbdnBDdXJyZW50XSA9IGlkeDsKICB2cFJlbmRlclF1ZXN0aW9uKCk7Cn0KCmZ1bmN0aW9uIHZwU3RhcnQoKSB7CiAgdnBDdXJyZW50ID0gMDsgdnBBbnN3ZXJzID0gW107CiAgdnBTaG93U2NyZWVuKCdzY3JlZW4tcXVlc3Rpb25zJyk7CiAgdnBSZW5kZXJRdWVzdGlvbigpOwp9CgpmdW5jdGlvbiB2cEJhY2soKSB7CiAgaWYgKHZwQ3VycmVudCA+IDApIHsgdnBDdXJyZW50LS07IHZwUmVuZGVyUXVlc3Rpb24oKTsgfQp9CgpmdW5jdGlvbiB2cE5leHQoKSB7CiAgaWYgKHZwQW5zd2Vyc1t2cEN1cnJlbnRdID09PSB1bmRlZmluZWQpIHJldHVybjsKICBpZiAodnBDdXJyZW50IDwgVlBfUVVFU1RJT05TLmxlbmd0aCAtIDEpIHsKICAgIHZwQ3VycmVudCsrOwogICAgdnBSZW5kZXJRdWVzdGlvbigpOwogIH0gZWxzZSB7CiAgICB2cFNob3dSZXN1bHQoKTsKICB9Cn0KCmZ1bmN0aW9uIHZwU2hvd1Jlc3VsdCgpIHsKICB2cFNob3dTY3JlZW4oJ3NjcmVlbi1sb2FkaW5nJyk7CiAgc2V0VGltZW91dChmdW5jdGlvbigpewogICAgdmFyIHRpZXIgPSB2cENhbGNSZXN1bHQoKTsKICAgIHZhciByZXN1bHQgPSBWUF9SRVNVTFRTW3RpZXJdOwogICAgdmFyIHByb2R1Y3RzID0gdnBHZXRQcm9kdWN0cyh0aWVyKTsKCiAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzLXRpdGxlJykudGV4dENvbnRlbnQgPSByZXN1bHQudGl0bGU7CiAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzLWRlc2MnKS50ZXh0Q29udGVudCAgPSByZXN1bHQuZGVzYzsKICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXMtcHJpb3JpdGl6ZScpLnRleHRDb250ZW50ID0gcmVzdWx0LnByaW9yaXRpemU7CiAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzLXNraXAnKS50ZXh0Q29udGVudCAgPSByZXN1bHQuc2tpcDsKICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXMtdXYnKS50ZXh0Q29udGVudCAgICA9IHJlc3VsdC51djsKCiAgICB2YXIgcEh0bWwgPSAnJzsKICAgIHByb2R1Y3RzLmZvckVhY2goZnVuY3Rpb24ocCl7CiAgICAgIHBIdG1sICs9ICc8YSBjbGFzcz0idnAtcHJvZHVjdC1jYXJkIiBocmVmPSInICsgcC51cmwgKyAnIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciI+JwogICAgICAgICsgJzxkaXYgY2xhc3M9InZwLXByb2R1Y3QtaW1nLXdyYXAiPjxpbWcgc3JjPSInICsgcC5pbWcgKyAnIiBhbHQ9IicgKyBwLmJyYW5kICsgJyAnICsgcC5uYW1lICsgJyIgbG9hZGluZz0ibGF6eSI+PC9kaXY+JwogICAgICAgICsgJzxkaXYgY2xhc3M9InZwLXByb2R1Y3QtaW5mbyI+JwogICAgICAgICsgJzxkaXYgY2xhc3M9InZwLXByb2R1Y3QtYnJhbmQiPicgKyBwLmJyYW5kICsgJzwvZGl2PicKICAgICAgICArICc8ZGl2IGNsYXNzPSJ2cC1wcm9kdWN0LW5hbWUiPicgKyBwLm5hbWUgKyAnPC9kaXY+JwogICAgICAgICsgJzxkaXYgY2xhc3M9InZwLXByb2R1Y3QtcHJpY2UiPiQnICsgcC5wcmljZS50b0ZpeGVkKDIpICsgJzwvZGl2PicKICAgICAgICArICc8ZGl2IGNsYXNzPSJ2cC1wcm9kdWN0LWN0YSI+U2hvcCBub3cgXHUyMTk3PC9kaXY+JwogICAgICAgICsgJzwvZGl2PjwvYT4nOwogICAgfSk7CiAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzLXByb2R1Y3RzJykuaW5uZXJIVE1MID0gcEh0bWw7CgogICAgdnBTaG93U2NyZWVuKCdzY3JlZW4tcmVzdWx0Jyk7CiAgfSwgMTgwMCk7Cn0KCmZ1bmN0aW9uIHZwUmV0YWtlKCkgewogIHZwQ3VycmVudCA9IDA7IHZwQW5zd2VycyA9IFtdOwogIHZwU2hvd1NjcmVlbignc2NyZWVuLWludHJvJyk7Cn0=\");\n  document.head.appendChild(s);\n})();\n<\/script>\n\n\n\n<div style=\"height:63px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>What Do You Get As The Price Goes Up<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Not all sunglasses improve as the price goes up. Sometimes you are paying for better comfort, clearer lenses, and a frame that feels more solid in your hand. Other times, you are mostly paying for the name, the finish, or a more fashion-driven look.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The trick is to know which upgrades matter to you and which ones you can skip.<\/p>\n\n\n\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Playfair+Display:wght@400;600;700&#038;family=DM+Sans:wght@300;400;500;600&#038;display=swap\" rel=\"stylesheet\">\n\n<style>\n  \/* \u2500\u2500 Scoped to widget only \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  #vp-tabs-widget {\n    font-family: 'DM Sans', sans-serif;\n    max-width: 720px;\n    margin: 0 auto;\n    color: #0e4773;\n    line-height: 1.6;\n    -webkit-font-smoothing: antialiased;\n  }\n\n  \/* \u2500\u2500 Tab nav \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  #vp-tabs-widget .vpt-nav {\n    display: grid;\n    grid-template-columns: repeat(4, 1fr);\n    border-radius: 12px 12px 0 0;\n    overflow: hidden;\n    border: 2px solid #b8d6ee;\n    border-bottom: none;\n  }\n\n  #vp-tabs-widget .vpt-tab-btn {\n    background: #ebf4fd;\n    border: none;\n    border-right: 2px solid #b8d6ee;\n    padding: 16px 10px;\n    cursor: pointer;\n    font-family: 'DM Sans', sans-serif;\n    font-size: 13px;\n    font-weight: 600;\n    color: #5a85a8;\n    text-align: center;\n    transition: background 0.2s, color 0.2s;\n    line-height: 1.3;\n    position: relative;\n  }\n\n  #vp-tabs-widget .vpt-tab-btn:last-child {\n    border-right: none;\n  }\n\n  #vp-tabs-widget .vpt-tab-btn:hover {\n    background: #d4e8f8;\n    color: #0e4773;\n  }\n\n  #vp-tabs-widget .vpt-tab-btn.active {\n    background: #3176b4;\n    color: #ffffff;\n  }\n\n  #vp-tabs-widget .vpt-tab-btn .vpt-tab-label {\n    display: block;\n    font-size: 11px;\n    font-weight: 500;\n    opacity: 0.75;\n    margin-bottom: 3px;\n    letter-spacing: 0.04em;\n    text-transform: uppercase;\n  }\n\n  #vp-tabs-widget .vpt-tab-btn.active .vpt-tab-label {\n    opacity: 0.8;\n  }\n\n  #vp-tabs-widget .vpt-tab-btn .vpt-tab-price {\n    font-size: 14px;\n    font-weight: 700;\n    display: block;\n  }\n\n  \/* \u2500\u2500 Tab panel \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  #vp-tabs-widget .vpt-panels {\n    border: 2px solid #b8d6ee;\n    border-radius: 0 0 12px 12px;\n    background: #ffffff;\n    overflow: hidden;\n  }\n\n  #vp-tabs-widget .vpt-panel {\n    display: none;\n    padding: 36px 40px;\n    animation: vpt-fade 0.25s ease;\n  }\n\n  #vp-tabs-widget .vpt-panel.active {\n    display: block;\n  }\n\n  @keyframes vpt-fade {\n    from { opacity: 0; transform: translateY(6px); }\n    to   { opacity: 1; transform: translateY(0); }\n  }\n\n  \/* \u2500\u2500 Panel header \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  #vp-tabs-widget .vpt-panel-eyebrow {\n    font-size: 11px;\n    font-weight: 600;\n    letter-spacing: 0.18em;\n    text-transform: uppercase;\n    color: #3176b4;\n    margin-bottom: 8px;\n  }\n\n  #vp-tabs-widget .vpt-panel-title {\n    font-family: 'Playfair Display', serif;\n    font-size: clamp(20px, 3vw, 26px);\n    font-weight: 700;\n    color: #0e4773;\n    margin-bottom: 16px;\n    line-height: 1.3;\n  }\n\n  #vp-tabs-widget .vpt-panel-desc {\n    font-size: 15px;\n    color: #1a3d5c;\n    line-height: 1.75;\n    margin-bottom: 24px;\n    border-bottom: 1px solid #b8d6ee;\n    padding-bottom: 24px;\n  }\n\n  \/* \u2500\u2500 Best for \/ Watch for cards \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  #vp-tabs-widget .vpt-cards {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 16px;\n    margin-bottom: 24px;\n  }\n\n  @media (max-width: 540px) {\n    #vp-tabs-widget .vpt-nav {\n      grid-template-columns: repeat(2, 1fr);\n    }\n    #vp-tabs-widget .vpt-tab-btn:nth-child(2) {\n      border-right: none;\n    }\n    #vp-tabs-widget .vpt-tab-btn:nth-child(3) {\n      border-right: 2px solid #b8d6ee;\n      border-top: 2px solid #b8d6ee;\n    }\n    #vp-tabs-widget .vpt-tab-btn:nth-child(4) {\n      border-right: none;\n      border-top: 2px solid #b8d6ee;\n    }\n    #vp-tabs-widget .vpt-cards { grid-template-columns: 1fr; }\n    #vp-tabs-widget .vpt-panel { padding: 28px 20px; }\n  }\n\n  #vp-tabs-widget .vpt-card {\n    border-radius: 10px;\n    padding: 18px 20px;\n    border: 1px solid #b8d6ee;\n  }\n\n  #vp-tabs-widget .vpt-card-label {\n    font-size: 11px;\n    font-weight: 700;\n    letter-spacing: 0.14em;\n    text-transform: uppercase;\n    margin-bottom: 10px;\n    display: flex;\n    align-items: center;\n    gap: 7px;\n  }\n\n  #vp-tabs-widget .vpt-card.best-for {\n    background: #ebf4fd;\n  }\n\n  #vp-tabs-widget .vpt-card.best-for .vpt-card-label {\n    color: #0e4773;\n  }\n\n  #vp-tabs-widget .vpt-card.watch-for {\n    background: #f7fbff;\n  }\n\n  #vp-tabs-widget .vpt-card.watch-for .vpt-card-label {\n    color: #5a85a8;\n  }\n\n  #vp-tabs-widget .vpt-card-icon {\n    width: 22px;\n    height: 22px;\n    border-radius: 50%;\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    font-size: 12px;\n    flex-shrink: 0;\n  }\n\n  #vp-tabs-widget .vpt-card.best-for .vpt-card-icon {\n    background: #3176b4;\n  }\n\n  #vp-tabs-widget .vpt-card.watch-for .vpt-card-icon {\n    background: #d4e8f8;\n  }\n\n  #vp-tabs-widget .vpt-card ul {\n    list-style: none;\n    padding: 0;\n    margin: 0;\n  }\n\n  #vp-tabs-widget .vpt-card ul li {\n    font-size: 14px;\n    color: #1a3d5c;\n    padding: 5px 0;\n    display: flex;\n    align-items: flex-start;\n    gap: 8px;\n    border-bottom: 1px solid rgba(184,214,238,0.5);\n    line-height: 1.4;\n  }\n\n  #vp-tabs-widget .vpt-card ul li:last-child {\n    border-bottom: none;\n    padding-bottom: 0;\n  }\n\n  #vp-tabs-widget .vpt-card ul li::before {\n    content: '\u2014';\n    color: #7ba9d1;\n    font-size: 12px;\n    flex-shrink: 0;\n    margin-top: 2px;\n  }\n\n  \/* \u2500\u2500 UV tip strip \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  #vp-tabs-widget .vpt-tip {\n    background: #ebf4fd;\n    border: 1px solid #7ba9d1;\n    border-radius: 10px;\n    padding: 14px 18px;\n    font-size: 14px;\n    color: #1a3d5c;\n    display: flex;\n    gap: 10px;\n    align-items: flex-start;\n    line-height: 1.6;\n  }\n\n  #vp-tabs-widget .vpt-tip-icon {\n    font-size: 17px;\n    flex-shrink: 0;\n    margin-top: 1px;\n  }\n\n  \/* \u2500\u2500 Mobile dot indicators \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n  #vp-tabs-widget .vpt-dots {\n    display: none;\n    justify-content: center;\n    gap: 8px;\n    margin-top: 16px;\n  }\n\n  @media (max-width: 540px) {\n    #vp-tabs-widget .vpt-dots { display: flex; }\n  }\n\n  #vp-tabs-widget .vpt-dot {\n    width: 8px;\n    height: 8px;\n    border-radius: 50%;\n    background: #b8d6ee;\n    transition: background 0.2s;\n    border: none;\n    cursor: pointer;\n    padding: 0;\n  }\n\n  #vp-tabs-widget .vpt-dot.active {\n    background: #3176b4;\n  }\n<\/style>\n\n<div id=\"vp-tabs-widget\">\n\n  <!-- Tab nav -->\n  <div class=\"vpt-nav\" role=\"tablist\">\n    <button class=\"vpt-tab-btn active\" role=\"tab\" aria-selected=\"true\"  aria-controls=\"vpt-panel-1\" onclick=\"vptSwitch(0)\">\n      <span class=\"vpt-tab-label\">Tier 1<\/span>\n      <span class=\"vpt-tab-price\">Under $100<\/span>\n    <\/button>\n    <button class=\"vpt-tab-btn\" role=\"tab\" aria-selected=\"false\" aria-controls=\"vpt-panel-2\" onclick=\"vptSwitch(1)\">\n      <span class=\"vpt-tab-label\">Tier 2<\/span>\n      <span class=\"vpt-tab-price\">$100 \u2013 $149<\/span>\n    <\/button>\n    <button class=\"vpt-tab-btn\" role=\"tab\" aria-selected=\"false\" aria-controls=\"vpt-panel-3\" onclick=\"vptSwitch(2)\">\n      <span class=\"vpt-tab-label\">Tier 3<\/span>\n      <span class=\"vpt-tab-price\">$150 \u2013 $199<\/span>\n    <\/button>\n    <button class=\"vpt-tab-btn\" role=\"tab\" aria-selected=\"false\" aria-controls=\"vpt-panel-4\" onclick=\"vptSwitch(3)\">\n      <span class=\"vpt-tab-label\">Tier 4<\/span>\n      <span class=\"vpt-tab-price\">$200 &#038; Up<\/span>\n    <\/button>\n  <\/div>\n\n  <!-- Tab panels -->\n  <div class=\"vpt-panels\">\n\n    <!-- Panel 1: Under $100 -->\n    <div class=\"vpt-panel active\" id=\"vpt-panel-1\" role=\"tabpanel\">\n      <div class=\"vpt-panel-eyebrow\">Tier 1 \u00b7 Entry Level<\/div>\n      <div class=\"vpt-panel-title\">Under $100<\/div>\n      <p class=\"vpt-panel-desc\">\n        This range can work well if you only wear sunglasses once in a while, want a backup pair, or like switching styles more often. You can still find pairs that look good and feel decent for casual wear, especially if your main goal is everyday sun protection without spending too much.\n      <\/p>\n      <div class=\"vpt-cards\">\n        <div class=\"vpt-card best-for\">\n          <div class=\"vpt-card-label\">\n            <span class=\"vpt-card-icon\">\u2713<\/span> Best for\n          <\/div>\n          <ul>\n            <li>Occasional or seasonal wear<\/li>\n            <li>Backup or travel pairs<\/li>\n            <li>Switching up your look often<\/li>\n            <li>Casual, everyday sun protection<\/li>\n          <\/ul>\n        <\/div>\n        <div class=\"vpt-card watch-for\">\n          <div class=\"vpt-card-label\">\n            <span class=\"vpt-card-icon\">!<\/span> Watch for\n          <\/div>\n          <ul>\n            <li>More quality variation in this range<\/li>\n            <li>Frames may feel lighter or less sturdy<\/li>\n            <li>Fit may not feel as refined<\/li>\n            <li>Always verify UV protection specs<\/li>\n          <\/ul>\n        <\/div>\n      <\/div>\n      <div class=\"vpt-tip\">\n        <span class=\"vpt-tip-icon\">\u2600\ufe0f<\/span>\n        <span>Shopping in this range? The smartest move is to check for <strong>99% to 100% UVA\/UVB protection or UV400<\/strong> first, then focus on comfort and a shape you will actually enjoy wearing.<\/span>\n      <\/div>\n    <\/div>\n\n    <!-- Panel 2: $100\u2013$149 -->\n    <div class=\"vpt-panel\" id=\"vpt-panel-2\" role=\"tabpanel\">\n      <div class=\"vpt-panel-eyebrow\">Tier 2 \u00b7 Sweet Spot<\/div>\n      <div class=\"vpt-panel-title\">$100 to $149<\/div>\n      <p class=\"vpt-panel-desc\">\n        This is often a comfortable middle ground for many shoppers. At this price, you are more likely to find sunglasses that feel better made, sit more comfortably on the face, and work well for regular wear. If you wear sunglasses a few times a week, this range can make a lot of sense.\n      <\/p>\n      <div class=\"vpt-cards\">\n        <div class=\"vpt-card best-for\">\n          <div class=\"vpt-card-label\">\n            <span class=\"vpt-card-icon\">\u2713<\/span> Best for\n          <\/div>\n          <ul>\n            <li>Regular, a few-times-a-week wear<\/li>\n            <li>Better comfort and build quality<\/li>\n            <li>More polished frame details<\/li>\n            <li>Dependable everyday pairs<\/li>\n          <\/ul>\n        <\/div>\n        <div class=\"vpt-card watch-for\">\n          <div class=\"vpt-card-label\">\n            <span class=\"vpt-card-icon\">!<\/span> Watch for\n          <\/div>\n          <ul>\n            <li>Paying for looks over function<\/li>\n            <li>Features you won&#8217;t actually use<\/li>\n            <li>Brand markup vs. real quality gains<\/li>\n            <li>Still check UV protection first<\/li>\n          <\/ul>\n        <\/div>\n      <\/div>\n      <div class=\"vpt-tip\">\n        <span class=\"vpt-tip-icon\">\ud83d\udca1<\/span>\n        <span>For many shoppers, <strong>this range hits the sweet spot<\/strong> between cost and day-to-day wear. You get more finish and reliability without going too high in price.<\/span>\n      <\/div>\n    <\/div>\n\n    <!-- Panel 3: $150\u2013$199 -->\n    <div class=\"vpt-panel\" id=\"vpt-panel-3\" role=\"tabpanel\">\n      <div class=\"vpt-panel-eyebrow\">Tier 3 \u00b7 Feature-Focused<\/div>\n      <div class=\"vpt-panel-title\">$150 to $199<\/div>\n      <p class=\"vpt-panel-desc\">\n        This range tends to make more sense for people who wear sunglasses often and want more than just the basics. You may notice better overall balance, a more comfortable fit over longer periods, and lenses that feel more refined in bright conditions.\n      <\/p>\n      <div class=\"vpt-cards\">\n        <div class=\"vpt-card best-for\">\n          <div class=\"vpt-card-label\">\n            <span class=\"vpt-card-icon\">\u2713<\/span> Best for\n          <\/div>\n          <ul>\n            <li>Daily or near-daily wear<\/li>\n            <li>Polarized lens options<\/li>\n            <li>Prescription-ready frames<\/li>\n            <li>Lighter materials for long wear<\/li>\n          <\/ul>\n        <\/div>\n        <div class=\"vpt-card watch-for\">\n          <div class=\"vpt-card-label\">\n            <span class=\"vpt-card-icon\">!<\/span> Watch for\n          <\/div>\n          <ul>\n            <li>Style extras that don&#8217;t improve wear<\/li>\n            <li>Paying for features you won&#8217;t use<\/li>\n            <li>Assuming price means better UV protection<\/li>\n            <li>Fit still matters more than price<\/li>\n          <\/ul>\n        <\/div>\n      <\/div>\n      <div class=\"vpt-tip\">\n        <span class=\"vpt-tip-icon\">\ud83d\udd0d<\/span>\n        <span>If sunglasses are <strong>part of your daily routine<\/strong>, spending a little more here can feel worthwhile \u2014 especially if you want polarized lenses or prescription-ready options.<\/span>\n      <\/div>\n    <\/div>\n\n    <!-- Panel 4: $200 & Up -->\n    <div class=\"vpt-panel\" id=\"vpt-panel-4\" role=\"tabpanel\">\n      <div class=\"vpt-panel-eyebrow\">Tier 4 \u00b7 Premium<\/div>\n      <div class=\"vpt-panel-title\">$200 and Up<\/div>\n      <p class=\"vpt-panel-desc\">\n        Once you move into this range, the difference is often less about basic protection and more about feel, finish, and preference. The frame may feel more polished, the fit more intentional, and the overall look may better match what you want from an everyday pair.\n      <\/p>\n      <div class=\"vpt-cards\">\n        <div class=\"vpt-card best-for\">\n          <div class=\"vpt-card-label\">\n            <span class=\"vpt-card-icon\">\u2713<\/span> Best for\n          <\/div>\n          <ul>\n            <li>Frequent wearers who care about design<\/li>\n            <li>Pairs you plan to keep and reach for daily<\/li>\n            <li>More intentional fit and finish<\/li>\n            <li>Statement style and elevated look<\/li>\n          <\/ul>\n        <\/div>\n        <div class=\"vpt-card watch-for\">\n          <div class=\"vpt-card-label\">\n            <span class=\"vpt-card-icon\">!<\/span> Watch for\n          <\/div>\n          <ul>\n            <li>Assuming premium price = better UV<\/li>\n            <li>Paying for logo over lens quality<\/li>\n            <li>Features you don&#8217;t actually need<\/li>\n            <li>Style-driven buys you won&#8217;t wear often<\/li>\n          <\/ul>\n        <\/div>\n      <\/div>\n      <div class=\"vpt-tip\">\n        <span class=\"vpt-tip-icon\">\u2600\ufe0f<\/span>\n        <span>A higher price does <strong>not automatically mean better eye protection<\/strong>. No matter what you spend, proper UVA and UVB protection should still be one of the first things you check.<\/span>\n      <\/div>\n    <\/div>\n\n  <\/div><!-- .vpt-panels -->\n\n  <!-- Mobile dots -->\n  <div class=\"vpt-dots\" aria-hidden=\"true\">\n    <button class=\"vpt-dot active\" onclick=\"vptSwitch(0)\"><\/button>\n    <button class=\"vpt-dot\" onclick=\"vptSwitch(1)\"><\/button>\n    <button class=\"vpt-dot\" onclick=\"vptSwitch(2)\"><\/button>\n    <button class=\"vpt-dot\" onclick=\"vptSwitch(3)\"><\/button>\n  <\/div>\n\n<\/div><!-- #vp-tabs-widget -->\n\n<script>\n(function() {\n  var tabs    = document.querySelectorAll('#vp-tabs-widget .vpt-tab-btn');\n  var panels  = document.querySelectorAll('#vp-tabs-widget .vpt-panel');\n  var dots    = document.querySelectorAll('#vp-tabs-widget .vpt-dot');\n\n  window.vptSwitch = function(idx) {\n    tabs.forEach(function(t, i) {\n      t.classList.toggle('active', i === idx);\n      t.setAttribute('aria-selected', i === idx ? 'true' : 'false');\n    });\n    panels.forEach(function(p, i) {\n      p.classList.toggle('active', i === idx);\n    });\n    dots.forEach(function(d, i) {\n      d.classList.toggle('active', i === idx);\n    });\n  };\n})();\n<\/script>\n\n\n\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Playfair+Display:wght@400;600;700&#038;family=DM+Sans:wght@300;400;500;600&#038;display=swap\" rel=\"stylesheet\">\n\n<style>\n  #vp-callout {\n    font-family: 'DM Sans', sans-serif;\n    max-width: 720px;\n    margin: 0 auto;\n    -webkit-font-smoothing: antialiased;\n  }\n\n  #vp-callout .vpc-box {\n    background: #ebf4fd;\n    border: 1px solid #7ba9d1;\n    border-left: 5px solid #3176b4;\n    border-radius: 10px;\n    padding: 24px 28px;\n    display: flex;\n    gap: 18px;\n    align-items: flex-start;\n  }\n\n  #vp-callout .vpc-icon-wrap {\n    width: 42px;\n    height: 42px;\n    background: #3176b4;\n    border-radius: 50%;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-size: 20px;\n    flex-shrink: 0;\n    margin-top: 2px;\n  }\n\n  #vp-callout .vpc-content {\n    flex: 1;\n  }\n\n  #vp-callout .vpc-label {\n    font-size: 11px;\n    font-weight: 700;\n    letter-spacing: 0.18em;\n    text-transform: uppercase;\n    color: #3176b4;\n    margin-bottom: 6px;\n  }\n\n  #vp-callout .vpc-title {\n    font-family: 'Playfair Display', serif;\n    font-size: 18px;\n    font-weight: 700;\n    color: #0e4773;\n    margin-bottom: 8px;\n    line-height: 1.3;\n  }\n\n  #vp-callout .vpc-text {\n    font-size: 15px;\n    color: #1a3d5c;\n    line-height: 1.75;\n    margin: 0;\n  }\n\n  #vp-callout .vpc-text strong {\n    color: #0e4773;\n    font-weight: 600;\n  }\n\n  @media (max-width: 480px) {\n    #vp-callout .vpc-box { padding: 20px; gap: 14px; }\n    #vp-callout .vpc-icon-wrap { width: 36px; height: 36px; font-size: 17px; }\n    #vp-callout .vpc-title { font-size: 16px; }\n    #vp-callout .vpc-text { font-size: 14px; }\n  }\n<\/style>\n\n<div id=\"vp-callout\">\n  <div class=\"vpc-box\">\n    <div class=\"vpc-icon-wrap\">\ud83d\udca1<\/div>\n    <div class=\"vpc-content\">\n      <div class=\"vpc-label\">Keep in Mind<\/div>\n      <div class=\"vpc-title\">What Matters Most at Any Price<\/div>\n      <p class=\"vpc-text\">\n        The best pair is not always the most expensive one. A lower-priced pair can still be a smart pick if it fits well, feels comfortable, and gives you proper UV protection. A pricier pair can be worth it too, but <strong>only if the added comfort, features, or look actually match how you plan to wear it.<\/strong>\n      <\/p>\n    <\/div>\n  <\/div>\n<\/div>\n\n\n\n<div style=\"height:63px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>What\u2019s Worth Paying For and What\u2019s Just Nice to Have<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Not every higher-priced detail is worth chasing. Some features can make a real difference in comfort, vision, and day-to-day wear. Others are more about style, extras, or personal preference. Here are some of the things you need to know so you can shop with more confidence and avoid spending money on things you do not really need.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" style=\"font-size:22px\"><strong>Worth Paying For<\/strong><\/h3>\n\n\n\n<div style=\"height:14px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">100% UV Protection<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">This should be near the top of your list no matter your budget. Look for sunglasses labeled <a href=\"https:\/\/www.aao.org\/eye-health\/glasses-contacts\/sunglasses-3?utm_source=chatgpt.com#:~:text=100%25%20UV%20protection,is%20also%20acceptable.\">100% UV protection or UV400<\/a>. Darker lenses do not automatically mean better protection, and a higher price does not guarantee better UV blocking either.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">A Comfortable Fit<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">A pair can look great and still end up sitting in a case if it pinches, slips, or feels heavy after an hour. If you wear sunglasses often, comfort is one of the smartest things to pay for because it affects how much use you actually get out of them.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Lenses That Match Your Routine<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Think about how you really use sunglasses. If you spend a lot of time driving or around bright reflective surfaces, polarized lenses can be worth the extra cost because they help cut glare. If you mostly wear sunglasses for short errands or casual outdoor time, you may not need as many feature upgrades.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">A Reliable Build<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">You do not need the most expensive pair on the page, but it helps to have frames that feel solid and hold up to regular use. Better hinges, a steadier fit, and materials that feel less flimsy can make a pair easier to live with over time.<\/p>\n\n\n\n<div style=\"height:24px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" style=\"font-size:22px\"><strong>Nice to Have<\/strong><\/h3>\n\n\n\n<div style=\"height:14px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">Fancy case extras<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">A sleek case or cleaning kit can be nice, but it should not be the reason a pair makes the cut. These extras can add polish to the purchase, though they usually do not change how the sunglasses actually wear.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Trend-driven details<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Statement shapes, seasonal color choices, and fashion-led finishes can be fun if that is what you want. Still, they are not always the best reason to spend more, especially if you are looking for an everyday pair you plan to wear often.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Logo-heavy styling<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Some shoppers love visible logos and some do not care at all. This comes down to taste more than function, so it is worth asking yourself whether that detail matters to you or just pushes the price higher.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Multiple tint options when you only need one good pair<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Different lens tints can be useful in some cases, but many shoppers only need one pair that works well in daily sun. If that sounds like you, it usually makes more sense to focus on fit, protection, and comfort first.<\/p>\n\n\n\n<div style=\"height:63px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Before You Buy Your Next Pair Ask Yourself These 5 Questions<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Buying sunglasses gets a lot easier when you stop looking at everything at once. A few simple questions can help you narrow the field and spend your money more wisely.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li class=\"has-lato-font-family\"><strong>How often will I actually wear them?<\/strong><br>This is a good place to start because it shapes how much you should spend. If you only wear sunglasses on beach trips or the occasional sunny weekend, a more basic pair may be enough. If you wear them for driving, walking, commuting, or outdoor time several days a week, it can make sense to put more money toward comfort and build.<br><\/li>\n\n\n\n<li class=\"has-lato-font-family\"><strong>What do I need them to do for me?<\/strong><br>Not everyone needs the same kind of sunglasses. Some people want a pair mainly for style. Others want better glare control for driving, all-day comfort for outdoor wear, or a pair that works with a prescription. When you know your main goal, it becomes easier to focus on the features that matter instead of getting distracted by everything else.<br><\/li>\n\n\n\n<li class=\"has-lato-font-family\"><strong>Do they have proper UV protection?<\/strong><br>This is one of the most important things to check, no matter the price. Look for sunglasses labeled 99% to 100% UVA and UVB protection or UV400. Lens darkness alone does not tell you how much UV protection you are getting, so it is always worth checking the product details before you buy.<br><\/li>\n\n\n\n<li class=\"has-lato-font-family\"><strong>Do they feel good enough to wear for more than a few minutes?<\/strong><br>A pair that looks great but feels awkward on your face will not get much use. Pay attention to how the sunglasses sit on your nose, how they feel behind your ears, and whether the frame feels too heavy, too loose, or too tight. A comfortable fit often makes a bigger difference than people expect.<br><\/li>\n\n\n\n<li class=\"has-lato-font-family\"><strong>Am I paying for function, style, or just the name?<\/strong><br>There is nothing wrong with wanting a pair that looks polished or feels more fashion-forward. Still, it helps to be honest about what you are paying for. In some cases, the extra cost goes toward better comfort, lens features, or build quality. In others, the jump in price is more about looks and personal preference. Knowing that difference can help you shop with fewer regrets.<\/li>\n<\/ol>\n\n\n\n<div style=\"height:63px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Ready to Shop Smarter at VisionPros?<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If you already have a better idea of what fits your budget, your next step is to find a pair that checks the right boxes. VisionPros makes that part easier with a <a href=\"https:\/\/www.visionpros.com\/sunglasses\/\">wide selection of sunglasses<\/a> at different price points, including styles from names like Ray-Ban, Kate Spade, and Prada.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you want an everyday pair, something more polished, or a lower-cost option that still looks good, it helps to start with a store that gives you room to compare.<\/p>\n\n\n\n<\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div id=\"wp-block-themeisle-blocks-advanced-columns-678cc482\" class=\"wp-block-themeisle-blocks-advanced-columns alignfull has-1-columns has-desktop-equal-layout has-tablet-equal-layout has-mobile-collapsedRows-layout has-reverse-columns-mobile has-vertical-bottom ticss-c00aadba\"><div class=\"wp-block-themeisle-blocks-advanced-columns-overlay\"><\/div><div class=\"innerblocks-wrap\">\n<div id=\"wp-block-themeisle-blocks-advanced-column-4d412c51\" class=\"wp-block-themeisle-blocks-advanced-column\">\n<h2 id=\"wp-block-themeisle-blocks-advanced-heading-fb3c7a39\" class=\"wp-block-themeisle-blocks-advanced-heading wp-block-themeisle-blocks-advanced-heading-fb3c7a39\">Get Sunglasses at Discount Price!<\/h2>\n\n\n\n<p class=\"has-text-align-center has-text-color wp-block-paragraph\" style=\"color:#fefefe\">VisionPros has the best affordable frames on selected brands such as Ray-Ban, Kate Spade, and Prada. <\/p>\n\n\n\n<p class=\"has-text-align-center has-text-color wp-block-paragraph\" style=\"color:#fefefe\">Get the right one for you right here!<\/p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button is-style-primary\"><a class=\"wp-block-button__link has-white-color has-vivid-cyan-blue-background-color has-text-color has-background has-link-color wp-element-button\" href=\"https:\/\/www.visionpros.com\/sunglasses\/\">Shop Affordable Sunglasses<\/a><\/div>\n<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Frequently Asked Questions About Affordable Sunglasses For Your Budget<\/h2>\n\n\n\n<!-- WRAPPER TO SCOPE STYLES -->\n<div id=\"vp-faq-about-affordable-sunglasses-fit-for-your-budget\">\n\n  <style>\n  #vp-faq-about-affordable-sunglasses-fit-for-your-budget{\n    font:20px\/1.8 Arial, Helvetica, sans-serif;\n    color:#333;\n    margin:2rem 0;\n  }\n  #vp-faq-about-affordable-sunglasses-fit-for-your-budget details{\n    background:#fff;\n    border:1px solid #e3e8ee;\n    border-radius:8px;\n    margin-bottom:1rem;\n    box-shadow:0 1px 3px rgba(0,0,0,0.06);\n    transition:background .2s ease;\n  }\n  #vp-faq-about-affordable-sunglasses-fit-for-your-budget details:hover{\n    background:#f8fafc;\n  }\n  #vp-faq-about-affordable-sunglasses-fit-for-your-budget summary{\n    cursor:pointer;\n    font-weight:600;\n    color:#264e8c;\n    padding:1.1rem 1.3rem;\n    list-style:none;\n  }\n  #vp-faq-about-affordable-sunglasses-fit-for-your-budget summary::-webkit-details-marker{\n    display:none;\n  }\n  #vp-faq-about-affordable-sunglasses-fit-for-your-budget details[open] summary{\n    border-bottom:1px solid #e3e8ee;\n  }\n  #vp-faq-about-affordable-sunglasses-fit-for-your-budget p{\n    margin:0;\n    padding:1rem 1.3rem 1.3rem;\n    color:#444;\n  }\n  <\/style>\n\n  <details>\n    <summary>1. Are more expensive sunglasses always better?<\/summary>\n    <p>Not always. A higher price can mean better comfort, materials, lens options, or overall finish, but it does not automatically mean the pair is better for you. The smarter buy is the one that fits well, suits your routine, and gives you proper UV protection.<\/p>\n  <\/details>\n\n  <details>\n    <summary>2. Can cheap sunglasses still protect my eyes?<\/summary>\n    <p>Yes, they can. What matters is whether the sunglasses are labeled with 100% UV protection, 100% UVA\/UVB protection, or UV400. Price alone does not tell you how well a pair blocks harmful rays.<\/p>\n  <\/details>\n\n  <details>\n    <summary>3. Is polarized always worth it?<\/summary>\n    <p>Not for everyone. Polarized lenses can be very helpful if you spend a lot of time driving, near water, or in other bright conditions where glare is a problem. If you mostly wear sunglasses for short errands or casual style, you may not need to prioritize polarization.<\/p>\n  <\/details>\n\n  <details>\n    <summary>4. What should I check first when buying sunglasses?<\/summary>\n    <p>Start with UV protection, then look at fit, comfort, and how you plan to use them. A pair that looks good but feels awkward or does not match your routine is less likely to be worth the money.<\/p>\n  <\/details>\n\n  <details>\n    <summary>5. How do I know if I\u2019m overspending?<\/summary>\n    <p>A good way to tell is to ask what you are really paying for. If the extra cost goes toward comfort, lens performance, fit, or features you will actually use, it may be worth it. If it is mostly about appearance or extras you do not care about, you can probably spend less and still be happy with your pair.<\/p>\n  <\/details>\n\n  <details>\n    <summary>6. How many pairs of sunglasses do most people really need?<\/summary>\n    <p>That depends on how often you wear them. Some people are happy with one reliable everyday pair. Others like having a second pair for travel, driving, or style variety. If you are on a budget, one comfortable pair with proper UV protection usually makes more sense than several pairs you barely wear.<\/p>\n  <\/details>\n\n<\/div>\n\n\n\n<div data-wp-context=\"{ &quot;autoclose&quot;: false, &quot;accordionItems&quot;: [] }\" data-wp-interactive=\"core\/accordion\" role=\"group\" class=\"wp-block-accordion is-layout-flow wp-block-accordion-is-layout-flow\">\n<div data-wp-class--is-open=\"state.isOpen\" data-wp-context=\"{ &quot;id&quot;: &quot;accordion-item-1&quot;, &quot;openByDefault&quot;: false }\" data-wp-init=\"callbacks.initAccordionItems\" data-wp-on-window--hashchange=\"callbacks.hashChange\" class=\"wp-block-accordion-item is-layout-flow wp-block-accordion-item-is-layout-flow\">\n<h3 class=\"wp-block-accordion-heading\"><button aria-expanded=\"false\" aria-controls=\"accordion-item-1-panel\" data-wp-bind--aria-expanded=\"state.isOpen\" data-wp-on--click=\"actions.toggle\" data-wp-on--keydown=\"actions.handleKeyDown\" id=\"accordion-item-1\" type=\"button\" class=\"wp-block-accordion-heading__toggle\"><span class=\"wp-block-accordion-heading__toggle-title\">References<\/span><span class=\"wp-block-accordion-heading__toggle-icon\" aria-hidden=\"true\">+<\/span><\/button><\/h3>\n\n\n\n<div inert aria-labelledby=\"accordion-item-1\" data-wp-bind--inert=\"!state.isOpen\" id=\"accordion-item-1-panel\" role=\"region\" class=\"wp-block-accordion-panel is-layout-flow wp-block-accordion-panel-is-layout-flow\">\n<ol class=\"wp-block-list\">\n<li>How to Choose the Best Sunglasses to Avoid Sun Damage. American Academy of Ophthalmology. https:\/\/www.aao.org\/eye-health\/glasses-contacts\/sunglasses-3. Date Accessed March 30, 2026.<\/li>\n\n\n\n<li>What Are Polarized Lenses For? American Academy of Ophthalmology. https:\/\/www.aao.org\/eye-health\/glasses-contacts\/polarized-lenses. Date Accessed March 30, 2026.<\/li>\n\n\n\n<li>Protecting your eyes from the sun\u2019s UV light. National Eye Institute. https:\/\/www.nei.nih.gov\/research-and-training\/research-news\/protecting-your-eyes-suns-uv-light. Date Accessed March 30, 2026.<\/li>\n\n\n\n<li>Tips to Stay Safe in the Sun: From Sunscreen to Sunglasses. U.S. Food and Drug Administration. https:\/\/www.fda.gov\/consumers\/consumer-updates\/tips-stay-safe-sun-sunscreen-sunglasses. Date Accessed March 30, 2026.<\/li>\n\n\n\n<li>8 Things You Can Do Right Now to Protect Your Vision. National Eye Institute. https:\/\/www.nei.nih.gov\/eye-health-information\/healthy-vision\/8-things-you-can-do-right-now-protect-your-vision. Date Accessed March 30, 2026.<\/li>\n<\/ol>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Shopping for sunglasses should be simple, but it rarely feels that way. You find a pair you like, then start second-guessing the price, the comfort, the lens features, and whether there might be a better option for less. Well, there is! Here at VisionPros, we know that a good pair is more than just the [&hellip;]<\/p>\n","protected":false},"author":12,"featured_media":6188,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"_themeisle_gutenberg_block_has_review":false,"footnotes":""},"categories":[380],"tags":[381],"semantictags":[],"class_list":["post-6187","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cheaper-alternatives","tag-best-affordable-sunglasses"],"_links":{"self":[{"href":"https:\/\/www.visionpros.com\/pro\/wp-json\/wp\/v2\/posts\/6187","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.visionpros.com\/pro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.visionpros.com\/pro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.visionpros.com\/pro\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/www.visionpros.com\/pro\/wp-json\/wp\/v2\/comments?post=6187"}],"version-history":[{"count":21,"href":"https:\/\/www.visionpros.com\/pro\/wp-json\/wp\/v2\/posts\/6187\/revisions"}],"predecessor-version":[{"id":6262,"href":"https:\/\/www.visionpros.com\/pro\/wp-json\/wp\/v2\/posts\/6187\/revisions\/6262"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.visionpros.com\/pro\/wp-json\/wp\/v2\/media\/6188"}],"wp:attachment":[{"href":"https:\/\/www.visionpros.com\/pro\/wp-json\/wp\/v2\/media?parent=6187"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.visionpros.com\/pro\/wp-json\/wp\/v2\/categories?post=6187"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.visionpros.com\/pro\/wp-json\/wp\/v2\/tags?post=6187"},{"taxonomy":"semantictags","embeddable":true,"href":"https:\/\/www.visionpros.com\/pro\/wp-json\/wp\/v2\/semantictags?post=6187"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}