Menu:

Webpage Performance Test Result

  • Settings: DesktopChromev138CableVirginia
    More
Screenshot

Requests Details

Use this page to explore the metric timings and request waterfall for any run of your test.

Page Performance Metrics (Run 1)

View run details: Run 1 (Repeat View)

TTFB Start Render FCP Speed Index LCP CLS TBT DC Time DC Requests DC Bytes Total Time Total Requests Page Weight
.238S .200S .477S .700S .551S 0 .000S .512S 13 186KB 1.392S 16 186KB

Visual Page Loading Process (Explore)

Custom Metrics Navigation Timings
Colordepth Dpi Images Resolution a11y ads almanac aurora avg_dom_depth cms cookies crawl_links css css-variables doctype document_height document_width ecommerce element_count event-names fugu-apis generated-content has_shadow_root img-loading-attr inline_style_bytes javascript lib-detector-version llms_txt_validation localstorage_size markup media meta_viewport num_iframes num_scripts num_scripts_async num_scripts_sync origin-trials parsed_css performance privacy privacy-sandbox pwa quirks_mode responsive_images robots_meta robots_txt sass security sessionstorage_size structured-data test_result third-parties usertiming valid-head well-known wpt_bodies domContentLoadedEvent loadEvent
24 {"dppx":1,"dpcm":37.79527559055118,"dpi":96} [{"url":"https://contribute.freecodecamp.org/_astro/primary_logo.-jEg6IuN.svg","width":2100,"height":240,"naturalWidth":2100,"naturalHeight":240,"loading":null,"decoding":null,"fetchpriority":null,"inViewport":true},{"url":"https://contribute.freecodecamp.org/_astro/secondary_logo.BMqpsykx.svg","width":350,"height":40,"naturalWidth":2100,"naturalHeight":240,"loading":null,"decoding":null,"fetchpriority":null,"inViewport":true},{"url":"https://contribute.freecodecamp.org/images/branding/banner.png","width":384,"height":384,"naturalWidth":500,"naturalHeight":500,"loading":null,"decoding":null,"fetchpriority":null,"inViewport":true}] {"absolute":{"height":1200,"width":1920},"available":{"height":1200,"width":1920}} {"tables":{"total":0,"total_with_caption":0,"total_with_presentational":0,"total_with_figcaption":0},"file_extension_alts":{"total_elements_with_alt":3,"total_elements_with_non_empty_alt":1,"total_with_file_extension":0,"file_extensions":{}},"title_and_alt":{"total_alt":3,"total_title":0,"total_both":0,"total_alt_same_as_title":0},"th_with_scope_attribute":{"total_th":0,"total_with_scope":0,"scopes":{}},"td_with_headers_attribute":{"total_tds":0,"total_with_headers":0},"total_anchors_with_role_button":0,"total_role_tab_with_selected_and_controls":0,"placeholder_but_no_label":{"total_placeholder":1,"total_no_label":1},"divs_or_spans_as_button_or_link":{"total_role_button":0,"total_role_link":0,"total_either":0},"screen_reader_classes":true,"form_control_a11y_tree":[{"type":"button","attributes":{"aria-label":"Search","aria-keyshortcuts":"Control+K"},"properties":{"invalid":"false","focusable":true,"keyshortcuts":"Control+K"},"accessible_name":"Search","accessible_name_sources":[{"type":"attribute","value":"Search","attribute":"aria-label"},{"type":"contents","value":"Ctrl K"}],"role":"button"},{"type":"select","attributes":{"autocomplete":"off"},"properties":{"invalid":"false","focusable":true,"hasPopup":"menu","expanded":false},"accessible_name":"Select theme","accessible_name_sources":[{"type":"relatedElement","value":"Select theme"}],"role":"combobox"}],"fieldset_radio_checkbox":{"total_radio":0,"total_checkbox":0,"total_radio_in_fieldset":0,"total_checkbox_in_fieldset":0,"fieldsets":[]},"required_form_controls":[]} {"ads":{"present":false,"status":404,"redirected":false},"app_ads":{"present":false,"status":404,"redirected":false},"sellers":{"present":false,"redirected":false,"status":404}} {"01.12":1,"01.13":0,"link-nodes":{"total":5,"nodes":[{"tagName":"link","rel":"canonical","href":"https://contribute.freecodecamp.org/intro/"},{"tagName":"link","rel":"sitemap","href":"/sitemap-index.xml"},{"tagName":"link","rel":"shortcut icon","href":"/favicon.ico","type":"image/x-icon"},{"tagName":"link","rel":"stylesheet","href":"/_astro/print.DNXP8c50.css","media":"print"},{"tagName":"link","rel":"stylesheet","href":"/_astro/index.D3GIIj4y.css"}],"attribute_usage_count":{"rel":5,"href":5,"type":1,"media":1}},"priority-hints":{"total":0,"nodes":[],"attribute_usage_count":{}},"meta-nodes":{"total":13,"nodes":[{"tagName":"meta","charset":"utf-8"},{"tagName":"meta","name":"viewport","content":"width=device-width, initial-scale=1"},{"tagName":"meta","name":"generator","content":"Astro v5.11.0"},{"tagName":"meta","name":"generator","content":"Starlight v0.34.4"},{"tagName":"meta","property":"og:title","content":"Contribute to the freeCodeCamp Community"},{"tagName":"meta","property":"og:type","content":"article"},{"tagName":"meta","property":"og:url","content":"https://contribute.freecodecamp.org/intro/"},{"tagName":"meta","property":"og:locale","content":"en"},{"tagName":"meta","property":"og:description","content":"Help us make freeCodeCamp better for everyone."},{"tagName":"meta","property":"og:site_name","content":"Contribute | freeCodeCamp.org"},{"tagName":"meta","name":"twitter:card","content":"summary_large_image"},{"tagName":"meta","name":"description","content":"Help us make freeCodeCamp better for everyone."},{"tagName":"meta","name":"twitter:site","content":"@freeCodeCamp"}],"attribute_usage_count":{"charset":1,"name":6,"content":12,"property":6}},"10.5":[],"seo-anchor-elements":{"internal":6,"external":7,"hash":2,"navigateHash":0,"earlyHash":1},"seo-titles":{"titleWords":7,"titleElements":2},"seo-words":{"wordsCount":43,"wordElements":8},"input_elements":{"total":2,"nodes":[{"tagName":"input","type":"text","placeholder":"Search"},{"tagName":"select","autocomplete":"off"}],"attribute_usage_count":{"class":2,"type":1,"placeholder":1,"autocapitalize":1,"enterkeyhint":1,"value":1,"autocomplete":1}},"link_protocols_used":{"https":13},"06.47":0,"08.39":{"link":0,"script":1},"09.27":{"total":0,"nodes":[],"attribute_usage_count":{}},"icon_only_clickables":1,"inline_svg_stats":{"total":15,"content_lengths":[305,678,689,951,391,323,381,456,545,587,314,919,2316,498,236],"attribute_usage_count":{"aria-hidden":13,"class":13,"width":15,"height":15,"viewbox":15,"fill":14,"style":13,"xmlns":1,"stroke":1,"stroke-width":1,"stroke-linecap":1,"stroke-linejoin":1}},"images":{"pictures":{"total":0,"nodes":[],"attribute_usage_count":{}},"imgs":{"total":3,"nodes":[{"tagName":"img"},{"tagName":"img"},{"tagName":"img"}],"attribute_usage_count":{"class":3,"alt":3,"src":3,"width":2,"height":2}},"sources":{"total":0,"nodes":[],"attribute_usage_count":{}},"total_with_srcset":0,"total_with_sizes":0,"total_pictures_with_img":0,"sizes_values":[],"loading_values":[],"alt_lengths":[0,0,26]},"videos":{"total":0,"nodes":[],"attribute_usage_count":{},"total_with_track":0,"tracks":{"total":0,"nodes":[],"attribute_usage_count":{}}},"audios":{"total":0,"nodes":[],"attribute_usage_count":{},"total_with_track":0,"tracks":{"total":0,"nodes":[],"attribute_usage_count":{}}},"iframes":{"iframes":{"total":0,"nodes":[],"attribute_usage_count":{}},"loading_values":[]},"scripts":{"total":9,"nodes":[{"tagName":"script"},{"tagName":"script","type":"module","src":"/_astro/page.B88YLdSP.js"},{"tagName":"script"},{"tagName":"script","type":"module","src":"/_astro/Search.astro_astro_type_script_index_0_lang.DMZ5WJ-J.js"},{"tagName":"script"},{"tagName":"script","type":"module"},{"tagName":"script","type":"module"},{"tagName":"script","type":"module"},{"tagName":"script","defer":"","src":"https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015","integrity":"sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==","data-cf-beacon":"","crossorigin":"anonymous"}],"attribute_usage_count":{"type":5,"src":3,"defer":1,"integrity":1,"data-cf-beacon":1,"crossorigin":1}},"nodes_using_role":{"total":1,"usage_and_count":{"search":1}},"headings_order":[1,2],"shortcuts_stats":{"total_with_aria_shortcut":1,"total_with_accesskey":0,"aria_shortcut_values":["control+k"],"accesskey_values":[]},"attributes_used_on_elements":{"lang":2,"dir":3,"data-theme":1,"data-has-hero":1,"class":98,"charset":1,"name":6,"content":12,"rel":8,"href":18,"type":7,"property":6,"id":5,"media":1,"src":6,"alt":3,"width":17,"height":17,"translate":1,"data-translations":1,"data-open-modal":1,"aria-label":4,"aria-keyshortcuts":1,"aria-hidden":15,"viewBox":15,"fill":15,"style":17,"d":15,"data-close-modal":1,"role":1,"action":1,"placeholder":1,"autocapitalize":1,"enterkeyhint":1,"value":4,"autocomplete":1,"selected":1,"data-pagefind-body":1,"data-page-title":1,"fill-rule":1,"clip-rule":1,"defer":1,"integrity":1,"data-cf-beacon":1,"crossorigin":1,"xmlns":1,"stroke":1,"stroke-width":1,"stroke-linecap":1,"stroke-linejoin":1},"body_node":{"tagName":"body","class":"astro-n7hj6ltz"},"html_node":{"tagName":"html","lang":"en","dir":"ltr","data-theme":"light","data-has-hero":"","class":"astro-n7hj6ltz"},"document_title":{"value":"Contribute to the freeCodeCamp Community | Contribute | freeCodeCamp.org","length":72},"length_of_h1s":[40]} {"ng_version":null,"ng_img_user":null,"ng_priority_img_count":null,"ng_server_context":null,"nuxt_version":null,"nuxt_vue_version":null,"next_version":null,"next_is_script_user":null,"next_is_third_parties_user":null,"next_script_before_interactive_count":null,"next_script_after_interactive_count":null,"next_script_lazy_on_load_count":null,"next_script_worker_count":null,"react_version":null,"svelte_version":null,"feature_flags":[]} 9 {"wordpress":{"theme":{"theme":null,"child_theme":null},"block_theme":false,"has_embed_block":false,"embed_block_count":{"total":0,"total_by_type":[]},"scripts":[],"content_type":{"template":"unknown","post_type":"","taxonomy":""},"uses_interactivity_api":false,"interactivity_api_usage":{"total_regions":0,"total_regions_by_namespace":[]}}} [] ["https:\/\/contribute.freecodecamp.org\/","https:\/\/contribute.freecodecamp.org\/getting-started\/"] {"css_in_js":[],"prefersColorScheme":false,"externalCssInHead":2,"externalCssInBody":0,"inlineCssInHead":2,"inlineCssInBody":0} {"summary":{"--sl-color-white":{"get":[{"usedIn":"--sl-color-banner-text","value":"var(--sl-color-white)","selector":".sl-banner","condition":[{"type":"media","test":"print"}]},{"usedIn":"color","value":"var(--sl-color-white)","selector":".sl-badge","condition":[{"type":"media","test":"print"}]},{"usedIn":"color","value":"var(--sl-color-white)","selector":".sl-link-button.primary","condition":[{"type":"media","test":"print"}]}],"set":[{"value":"hsl(224, 10%, 10%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-1":{"set":[{"value":"hsl(224, 14%, 16%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-2":{"set":[{"value":"hsl(224, 10%, 23%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-3":{"set":[{"value":"hsl(224, 7%, 36%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-4":{"set":[{"value":"hsl(224, 6%, 56%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-5":{"get":[{"usedIn":"box-shadow","value":"inset 99rem 99rem var(--sl-color-gray-5)","selector":".expressive-code .frame.is-terminal .header::before","condition":[{"type":"media","test":"print"}]}],"set":[{"value":"hsl(224, 6%, 77%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-6":{"get":[{"usedIn":"--sl-color-bg-inline-code","value":"var(--sl-color-gray-6)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-hairline-light","value":"var(--sl-color-gray-6)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-hairline-shade","value":"var(--sl-color-gray-6)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"background-color","value":"var(--sl-color-gray-6)","selector":".scroll-to-top-btn-tooltip"}],"set":[{"value":"hsl(224, 20%, 94%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-7":{"get":[{"usedIn":"--sl-color-bg-nav","value":"var(--sl-color-gray-7)","selector":":root","condition":[{"type":"media","test":"print"}]}],"set":[{"value":"hsl(224, 19%, 97%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-black":{"get":[{"usedIn":"--sl-color-text-invert","value":"var(--sl-color-black)","selector":":root","condition":[{"type":"media","test":"print"}]}],"set":[{"value":"hsl(0, 0%, 100%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-hue-orange":{"get":[{"usedIn":"--sl-color-orange-high","value":"hsl(var(--sl-hue-orange), 80%, 25%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-orange","value":"hsl(var(--sl-hue-orange), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-orange-low","value":"hsl(var(--sl-hue-orange), 90%, 88%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-orange-high":{"set":[{"value":"hsl(var(--sl-hue-orange), 80%, 25%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-orange":{"set":[{"value":"hsl(var(--sl-hue-orange), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-orange-low":{"set":[{"value":"hsl(var(--sl-hue-orange), 90%, 88%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-hue-green":{"get":[{"usedIn":"--sl-color-green-high","value":"hsl(var(--sl-hue-green), 80%, 22%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-green","value":"hsl(var(--sl-hue-green), 90%, 46%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-green-low","value":"hsl(var(--sl-hue-green), 85%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-green-high":{"set":[{"value":"hsl(var(--sl-hue-green), 80%, 22%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-green":{"set":[{"value":"hsl(var(--sl-hue-green), 90%, 46%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-green-low":{"set":[{"value":"hsl(var(--sl-hue-green), 85%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-hue-blue":{"get":[{"usedIn":"--sl-color-blue-high","value":"hsl(var(--sl-hue-blue), 80%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-blue","value":"hsl(var(--sl-hue-blue), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-blue-low","value":"hsl(var(--sl-hue-blue), 88%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-blue-high":{"set":[{"value":"hsl(var(--sl-hue-blue), 80%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-blue":{"set":[{"value":"hsl(var(--sl-hue-blue), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-blue-low":{"set":[{"value":"hsl(var(--sl-hue-blue), 88%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-hue-purple":{"get":[{"usedIn":"--sl-color-purple-high","value":"hsl(var(--sl-hue-purple), 90%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-purple","value":"hsl(var(--sl-hue-purple), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-purple-low","value":"hsl(var(--sl-hue-purple), 80%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-purple-high":{"set":[{"value":"hsl(var(--sl-hue-purple), 90%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-purple":{"set":[{"value":"hsl(var(--sl-hue-purple), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-purple-low":{"set":[{"value":"hsl(var(--sl-hue-purple), 80%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-hue-red":{"get":[{"usedIn":"--sl-color-red-high","value":"hsl(var(--sl-hue-red), 80%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-red","value":"hsl(var(--sl-hue-red), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-red-low","value":"hsl(var(--sl-hue-red), 80%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-red-high":{"set":[{"value":"hsl(var(--sl-hue-red), 80%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-red":{"set":[{"value":"hsl(var(--sl-hue-red), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-red-low":{"set":[{"value":"hsl(var(--sl-hue-red), 80%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-accent-high":{"set":[{"value":"hsl(234, 80%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-accent":{"get":[{"usedIn":"--sl-color-text-accent","value":"var(--sl-color-accent)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-bg-accent","value":"var(--sl-color-accent)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"background-color","value":"var(--sl-color-accent)","selector":".scroll-to-top-button:hover"}],"set":[{"value":"hsl(234, 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-accent-low":{"set":[{"value":"hsl(234, 88%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-text-accent":{"set":[{"value":"var(--sl-color-accent)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-text-invert":{"set":[{"value":"var(--sl-color-black)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-bg-nav":{"set":[{"value":"var(--sl-color-gray-7)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-bg":{"get":[{"usedIn":"--sl-color-bg-sidebar","value":"var(--sl-color-bg)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-bg-sidebar":{"get":[{"usedIn":"background-color","value":"var(--sl-color-bg-sidebar)","selector":".scroll-to-top-button"},{"usedIn":"background-color","value":"var(--sl-color-bg-sidebar)","selector":".scroll-to-top-button:not(:hover):not(:active)"}],"set":[{"value":"var(--sl-color-bg)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-bg-inline-code":{"set":[{"value":"var(--sl-color-gray-6)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-bg-accent":{"set":[{"value":"var(--sl-color-accent)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-hairline-light":{"get":[{"usedIn":"box-shadow","value":"inset 99rem 99rem var(--sl-color-hairline-light)","selector":".sl-steps > li::after","condition":[{"type":"media","test":"print"}]}],"set":[{"value":"var(--sl-color-gray-6)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-hairline-shade":{"set":[{"value":"var(--sl-color-gray-6)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-backdrop-overlay":{"set":[{"value":"hsla(225, 9%, 36%, .66)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-shadow-sm":{"set":[{"value":"none","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-shadow-md":{"set":[{"value":"none","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-shadow-lg":{"set":[{"value":"none","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-sidebar-width":{"get":[{"usedIn":"--sl-content-inline-start","value":"var(--sl-sidebar-width)","selector":":where(.astro-n7hj6ltz)[data-has-sidebar]","condition":[{"type":"media","test":"(min-width: 50em)"}]}],"set":[{"value":"0px","selector":".main-pane","condition":[{"type":"media","test":"print"}]}]},"--sl-content-width":{"set":[{"value":"100%","selector":".main-pane","condition":[{"type":"media","test":"print"}]},{"value":"67.5rem","selector":"html:not([data-has-sidebar])"}]},"--sl-color-banner-text":{"set":[{"value":"var(--sl-color-white)","selector":".sl-banner","condition":[{"type":"media","test":"print"}]}]},"--sl-color-text":{"get":[{"usedIn":"color","value":"var(--sl-color-text)","selector":"starlight-file-tree .highlight","condition":[{"type":"media","test":"print"}]},{"usedIn":"color","value":"var(--sl-color-text)","selector":".scroll-to-top-btn-tooltip"}]},"--color-accent-200":{"set":[{"value":"#cec3db","selector":":root, :host"}]},"--color-accent-600":{"set":[{"value":"#7b5a9a","selector":":root, :host"}]},"--color-accent-900":{"set":[{"value":"#392b47","selector":":root, :host"}]},"--color-accent-950":{"set":[{"value":"#281f31","selector":":root, :host"}]},"--color-gray-100":{"set":[{"value":"#f5f6fd","selector":":root, :host"}]},"--color-gray-200":{"set":[{"value":"#eaedfc","selector":":root, :host"}]},"--color-gray-300":{"set":[{"value":"#bec1d3","selector":":root, :host"}]},"--color-gray-400":{"set":[{"value":"#8489ab","selector":":root, :host"}]},"--color-gray-500":{"set":[{"value":"#525574","selector":":root, :host"}]},"--color-zinc-600":{"get":[{"usedIn":"--color-gray-600","value":"var(--color-zinc-600)","selector":":root, :host"}],"set":[{"value":"oklch(44.2% .017 285.786)","selector":":root, :host"}]},"--color-gray-600":{"set":[{"value":"var(--color-zinc-600)","selector":":root, :host"}]},"--color-gray-700":{"set":[{"value":"#323552","selector":":root, :host"}]},"--color-gray-800":{"set":[{"value":"#22243f","selector":":root, :host"}]},"--color-gray-900":{"set":[{"value":"#161724","selector":":root, :host"}]},"--font-sans":{"set":[{"value":"ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\"","selector":":root, :host"}]},"--font-mono":{"set":[{"value":"ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace","selector":":root, :host"}]},"--color-white":{"set":[{"value":"#fff","selector":":root, :host"}]},"--spacing":{"set":[{"value":".25rem","selector":":root, :host"}]},"--default-transition-duration":{"set":[{"value":".15s","selector":":root, :host"}]},"--default-transition-timing-function":{"set":[{"value":"cubic-bezier(.4,0,.2,1)","selector":":root, :host"}]},"--sl-mobile-toc-height":{"get":[{"usedIn":"scroll-padding-top","value":"calc(1.5rem + var(--sl-nav-height) + var(--sl-mobile-toc-height))","selector":"html"}],"set":[{"value":"0rem","selector":"html:not([data-has-toc])"}]},"--sl-nav-height":{"get":[{"usedIn":"scroll-padding-top","value":"calc(1.5rem + var(--sl-nav-height) + var(--sl-mobile-toc-height))","selector":"html"},{"usedIn":"scroll-padding-top","value":"calc(1.5rem + var(--sl-nav-height))","selector":"html","condition":[{"type":"media","test":"(min-width: 72em)"}]}]},"--sl-content-inline-start":{"set":[{"value":"var(--sl-sidebar-width)","selector":":where(.astro-n7hj6ltz)[data-has-sidebar]","condition":[{"type":"media","test":"(min-width: 50em)"}]}]},"--sl-color-accent-dark":{"get":[{"usedIn":"background-color","value":"var(--sl-color-accent-dark)","selector":".scroll-to-top-button:active"}]},"--sl-text-white":{"get":[{"usedIn":"color","value":"var(--sl-text-white)","selector":".scroll-to-top-button:active"}]},"--sl-icon-size":{"set":[{"value":"1em","selector":""},{"value":"1em","selector":""},{"value":"1em","selector":""},{"value":"1em","selector":""},{"value":"1em","selector":""},{"value":"1em","selector":""},{"value":"1.5rem","selector":""},{"value":"1.5rem","selector":""},{"value":"1.333em","selector":""},{"value":"1.333em","selector":""},{"value":"1.333em","selector":""},{"value":"1.333em","selector":""},{"value":"1.2em","selector":""}]},"--sl-select-width":{"set":[{"value":"6.25em","selector":""}]}},"computed":[{"element":"HTML.astro-n7hj6ltz","children":[{"element":{},"declarations":{"--sl-icon-size":{"value":"1em"}},"times":4},{"element":"LABEL.astro-lneirf33","children":[{"element":{},"declarations":{"--sl-icon-size":{"value":"1em"}},"times":2}],"declarations":{"--sl-caret-size":{"value":"1.25rem"},"--sl-inline-padding":{"value":"0.5rem"},"--sl-label-icon-size":{"value":"0.875rem"},"--sl-select-width":{"value":"6.25em"}}},{"element":"DIV.main-pane.astro-sxb7xv7b","children":[{"element":"A.sl-link-button.not-content.primary.astro-rvdbmh3f.astro-fnfbevnj","children":[{"element":{},"declarations":{"--sl-icon-size":{"value":"1.5rem"}}}]},{"element":{},"declarations":{"--sl-icon-size":{"value":"1.5rem"}}},{"element":{},"declarations":{"--sl-icon-size":{"value":"1.333em"}},"times":4},{"element":{},"declarations":{"--sl-icon-size":{"value":"1.2em"}}}]},{"element":"BUTTON.scroll-to-top-button#scroll-to-top-button","declarations":{"background-color":{"value":"var(--sl-color-bg-sidebar)","references":["--sl-color-bg-sidebar"],"computed":"rgb(255, 255, 255)"}}}],"declarations":{"--color-gray-600":{"value":"var(--color-zinc-600)","references":["--color-zinc-600"],"computed":"oklch(44.2% 0.017 285.786)"},"scroll-padding-top":{"value":"calc(1.5rem + var(--sl-nav-height))","references":["--sl-nav-height"],"computed":"88px"},"--__sl-font":{"value":"ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\""},"--__sl-font-mono":{"value":"ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace"},"--__toc-width":{"value":"0rem"},"--color-accent-200":{"value":"#cec3db"},"--color-accent-600":{"value":"#7b5a9a"},"--color-accent-900":{"value":"#392b47"},"--color-accent-950":{"value":"#281f31"},"--color-gray-100":{"value":"#f5f6fd"},"--color-gray-200":{"value":"#eaedfc"},"--color-gray-300":{"value":"#bec1d3"},"--color-gray-400":{"value":"#8489ab"},"--color-gray-500":{"value":"#525574"},"--color-gray-700":{"value":"#323552"},"--color-gray-800":{"value":"#22243f"},"--color-gray-900":{"value":"#161724"},"--color-white":{"value":"#fff"},"--color-zinc-600":{"value":"oklch(44.2% 0.017 285.786)"},"--default-transition-duration":{"value":"0.15s"},"--default-transition-timing-function":{"value":"cubic-bezier(0.4,0,0.2,1)"},"--font-mono":{"value":"ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace"},"--font-sans":{"value":"ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\""},"--pagefind-ui-background":{"value":"#ffffff"},"--pagefind-ui-border":{"value":"#eeeeee"},"--pagefind-ui-border-radius":{"value":"8px"},"--pagefind-ui-border-width":{"value":"2px"},"--pagefind-ui-font":{"value":"system, -apple-system, \"BlinkMacSystemFont\", \".SFNSText-Regular\", \"San Francisco\", \"Roboto\", \"Segoe UI\", \"Helvetica Neue\", \"Lucida Grande\", \"Ubuntu\", \"arial\", sans-serif"},"--pagefind-ui-image-border-radius":{"value":"8px"},"--pagefind-ui-image-box-ratio":{"value":"3 / 2"},"--pagefind-ui-primary":{"value":"#393939"},"--pagefind-ui-scale":{"value":"0.8"},"--pagefind-ui-tag":{"value":"#eeeeee"},"--pagefind-ui-text":{"value":"#393939"},"--sl-badge-caution-bg":{"value":"hsl(41, 80%, 25%)"},"--sl-badge-caution-border":{"value":"hsl(41, 90%, 60%)"},"--sl-badge-caution-text":{"value":"#fff"},"--sl-badge-danger-bg":{"value":"hsl(339, 80%, 30%)"},"--sl-badge-danger-border":{"value":"hsl(339, 90%, 60%)"},"--sl-badge-danger-text":{"value":"#fff"},"--sl-badge-default-bg":{"value":"#392b47"},"--sl-badge-default-border":{"value":"#7b5a9a"},"--sl-badge-default-text":{"value":"#fff"},"--sl-badge-note-bg":{"value":"hsl(234, 80%, 30%)"},"--sl-badge-note-border":{"value":"hsl(234, 90%, 60%)"},"--sl-badge-note-text":{"value":"#fff"},"--sl-badge-success-bg":{"value":"hsl(101, 80%, 22%)"},"--sl-badge-success-border":{"value":"hsl(101, 90%, 46%)"},"--sl-badge-success-text":{"value":"#fff"},"--sl-badge-tip-bg":{"value":"hsl(281, 90%, 30%)"},"--sl-badge-tip-border":{"value":"hsl(281, 90%, 60%)"},"--sl-badge-tip-text":{"value":"#fff"},"--sl-color-accent":{"value":"#7b5a9a"},"--sl-color-accent-high":{"value":"#392b47"},"--sl-color-accent-low":{"value":"#cec3db"},"--sl-color-backdrop-overlay":{"value":"hsla(225, 9%, 36%, 0.66)"},"--sl-color-bg":{"value":"#fff"},"--sl-color-bg-accent":{"value":"#7b5a9a"},"--sl-color-bg-inline-code":{"value":"#eaedfc"},"--sl-color-bg-nav":{"value":"#f5f6fd"},"--sl-color-bg-sidebar":{"value":"#fff"},"--sl-color-black":{"value":"#fff"},"--sl-color-blue":{"value":"hsl(234, 90%, 60%)"},"--sl-color-blue-high":{"value":"hsl(234, 80%, 30%)"},"--sl-color-blue-low":{"value":"hsl(234, 88%, 90%)"},"--sl-color-gray-1":{"value":"#22243f"},"--sl-color-gray-2":{"value":"#323552"},"--sl-color-gray-3":{"value":"#525574"},"--sl-color-gray-4":{"value":"#8489ab"},"--sl-color-gray-5":{"value":"#bec1d3"},"--sl-color-gray-6":{"value":"#eaedfc"},"--sl-color-gray-7":{"value":"#f5f6fd"},"--sl-color-green":{"value":"hsl(101, 90%, 46%)"},"--sl-color-green-high":{"value":"hsl(101, 80%, 22%)"},"--sl-color-green-low":{"value":"hsl(101, 85%, 90%)"},"--sl-color-hairline":{"value":"#eaedfc"},"--sl-color-hairline-light":{"value":"#eaedfc"},"--sl-color-hairline-shade":{"value":"#eaedfc"},"--sl-color-orange":{"value":"hsl(41, 90%, 60%)"},"--sl-color-orange-high":{"value":"hsl(41, 80%, 25%)"},"--sl-color-orange-low":{"value":"hsl(41, 90%, 88%)"},"--sl-color-purple":{"value":"hsl(281, 90%, 60%)"},"--sl-color-purple-high":{"value":"hsl(281, 90%, 30%)"},"--sl-color-purple-low":{"value":"hsl(281, 80%, 90%)"},"--sl-color-red":{"value":"hsl(339, 90%, 60%)"},"--sl-color-red-high":{"value":"hsl(339, 80%, 30%)"},"--sl-color-red-low":{"value":"hsl(339, 80%, 90%)"},"--sl-color-text":{"value":"#323552"},"--sl-color-text-accent":{"value":"#7b5a9a"},"--sl-color-text-invert":{"value":"#fff"},"--sl-color-white":{"value":"#161724"},"--sl-content-pad-x":{"value":"1.5rem"},"--sl-content-width":{"value":"67.5rem"},"--sl-font":{"value":"ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\""},"--sl-font-mono":{"value":"ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace"},"--sl-font-system":{"value":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\""},"--sl-font-system-mono":{"value":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace"},"--sl-hue-blue":{"value":"234"},"--sl-hue-green":{"value":"101"},"--sl-hue-orange":{"value":"41"},"--sl-hue-purple":{"value":"281"},"--sl-hue-red":{"value":"339"},"--sl-line-height":{"value":"1.75"},"--sl-line-height-headings":{"value":"1.2"},"--sl-menu-button-size":{"value":"2rem"},"--sl-mobile-toc-height":{"value":"0rem"},"--sl-nav-gap":{"value":"1.5rem"},"--sl-nav-height":{"value":"4rem"},"--sl-nav-pad-x":{"value":"1.5rem"},"--sl-nav-pad-y":{"value":"0.75rem"},"--sl-outline-offset-inside":{"value":"-0.1875rem"},"--sl-shadow-lg":{"value":"0px 25px 7px rgba(0, 0, 0, 0.01), 0px 16px 6px hsla(0, 0%, 0%, 0.03), 0px 9px 5px hsla(223, 13%, 10%, 0.08), 0px 4px 4px hsla(0, 0%, 0%, 0.16), 0px 4px 2px hsla(0, 0%, 0%, 0.04)"},"--sl-shadow-md":{"value":"0px 8px 4px hsla(0, 0%, 0%, 0.03), 0px 5px 2px hsla(0, 0%, 0%, 0.03), 0px 3px 2px hsla(0, 0%, 0%, 0.06), 0px 1px 1px hsla(0, 0%, 0%, 0.06)"},"--sl-shadow-sm":{"value":"0px 1px 1px hsla(0, 0%, 0%, 0.06), 0px 2px 1px hsla(0, 0%, 0%, 0.06)"},"--sl-sidebar-pad-x":{"value":"1rem"},"--sl-sidebar-width":{"value":"18.75rem"},"--sl-text-2xl":{"value":"1.5rem"},"--sl-text-2xs":{"value":"0.75rem"},"--sl-text-3xl":{"value":"1.8125rem"},"--sl-text-4xl":{"value":"2.1875rem"},"--sl-text-5xl":{"value":"2.625rem"},"--sl-text-6xl":{"value":"4rem"},"--sl-text-base":{"value":"1rem"},"--sl-text-body":{"value":"1rem"},"--sl-text-body-sm":{"value":"0.8125rem"},"--sl-text-code":{"value":"0.875rem"},"--sl-text-code-sm":{"value":"0.8125rem"},"--sl-text-h1":{"value":"2.625rem"},"--sl-text-h2":{"value":"2.1875rem"},"--sl-text-h3":{"value":"1.8125rem"},"--sl-text-h4":{"value":"1.5rem"},"--sl-text-h5":{"value":"1.125rem"},"--sl-text-lg":{"value":"1.125rem"},"--sl-text-sm":{"value":"0.875rem"},"--sl-text-xl":{"value":"1.25rem"},"--sl-text-xs":{"value":"0.8125rem"},"--sl-z-index-menu":{"value":"5"},"--sl-z-index-navbar":{"value":"10"},"--sl-z-index-skiplink":{"value":"20"},"--sl-z-index-toc":{"value":"4"},"--spacing":{"value":"0.25rem"},"--tw-border-style":{"value":"solid"},"--tw-drop-shadow-alpha":{"value":"100%","type":"CSSUnitValue"},"--tw-outline-style":{"value":"solid"}}}]} html 1279 1351 {"AndroidAppLinks":0,"iOSUniveralLinks":0} {"html":1,"head":1,"meta":13,"title":1,"link":5,"script":9,"template":1,"style":2,"body":1,"a":13,"div":31,"header":1,"img":3,"span":12,"site-search":1,"button":4,"svg":15,"path":15,"kbd":3,"dialog":1,"form":1,"input":1,"starlight-theme-select":1,"label":1,"select":1,"option":3,"main":1,"h1":1,"h2":1,"article":4,"p":8,"footer":1} {"https:\/\/contribute.freecodecamp.org\/intro\/":["change","change","change","pageshow","click","visibilitychange","pageHide"],"https:\/\/contribute.freecodecamp.org\/_astro\/page.B88YLdSP.js":["focusin","focusout","mouseenter","mouseleave","astro","DOMContentLoaded","mouseenter","mouseleave","keydown","mousedown","keydown","focus","blur","touchstart","touchend","click","scroll","resize"],"https:\/\/contribute.freecodecamp.org\/_astro\/Search.astro_astro_type_script_index_0_lang.DMZ5WJ-J.js":["load","error","click","click","click","close","keydown","DOMContentLoaded"],"https:\/\/static.cloudflareinsights.com\/beacon.min.js\/vcd15cbe7772f49c399c6a5babf22c1241717689176015":["visibilitychange","load","popstate","pageshow","visibilitychange","pagehide","visibilitychange","prerenderingchange","prerenderingchange","pointerup","pointercancel","load"]} [] {"percent":"0.0965","sizeInKB":"3.40"} false [] 12792 {"ajax_requests":{"xmlhttprequest":1,"fetch":3,"beacon":0,"total":4},"beacon_ajax_usage":0,"iframe":0,"requests_protocol":{"ajax_h1":0,"resources_h1":0,"ajax_h2":0,"resources_h2":0,"ajax_h3":4,"resources_h3":10},"web_component_specs":{"custom_elements":["site-search","starlight-theme-select"],"shadow_roots":[],"template":[]},"script_tags":{"total":9,"async":0,"defer":1,"crossorigin":0,"integrity":1,"nomodule":0,"nonce":0,"referrerpolicy":0,"src":3,"inline":6,"type_module":5,"async_and_defer":0,"defer_without_src":0,"charset":0,"language":0},"noscript_tags":{"total":0},"sourceMaps":{"count":0,"ext":{}},"bundler":[],"document":{"length":32560,"elements":147,"links":5,"stylesheets":2,"inlineStyles":1,"scripts":3,"inlineScripts":6}} 6.1.0 {"valid":false,"message":404,"error":"Non OK status code"} 15 {"favicon":true,"rel_alternate_mobile":false,"compatMode":"CSS1Compat","noscripts":{"iframe_googletagmanager_count":0,"total":0},"buttons":{"types":{},"total":4},"form":{"target":{},"method":{},"elements":[{"tagNames":{"input":1,"button":1},"types":{"text":1},"total":2}],"total":1},"dirs":{"html_dir":"ltr","body_nodes_dir":{"values":{"ltr":2},"total":2}},"inputs":{"types":{"text":1},"total":1},"audios":{"autoplay":{},"total":0},"classes":{"unique_names_total":80,"references_total":221},"ids":{"ids_total":5,"duplicate_ids_total":0,"unique_ids_total":5},"images":{"picture":{"total":0},"source":{"total":0,"src_total":0,"srcset_total":0,"media_total":0,"type_total":0},"img":{"total":3,"src_total":3,"srcset_total":0,"alt":{"missing":0,"blank":2,"present":1},"loading":{"auto":0,"lazy":0,"eager":0,"invalid":0,"missing":3,"blank":0},"dimensions":{"missing_width":1,"missing_height":1}}},"iframes":{"total":0,"loading":{"auto":0,"lazy":0,"eager":0,"invalid":0,"missing":0,"blank":0}},"amp":{"html_amp_attribute_present":false,"html_amp_emoji_attribute_present":false,"amp_page":false,"rel_amphtml":null},"data_nosnippet":{"valid":0,"wrong_tag_type":0},"obsolete_elements":{},"svgs":{"svg_element_total":15,"svg_img_total":2,"svg_object_total":0,"svg_embed_total":0,"svg_iframe_total":0,"svg_total":17},"app":{"app_id_present":false,"meta_theme_color":null},"anchors":{"hrefs_without_special_scheme":[]},"dom-shape":{"bodyNodesCount":130,"bodyLeafNodesCount":54,"depth":{"mean":8.944444444444445,"median":8,"mode":8,"stddev":3.3356473449506843,"skew":0.28313677879470434,"range":{"min":1,"max":13}},"bodyNonLeafNodesCount":76,"branchFactor":{"mean":3.3552631578947367,"median":3,"mode":1,"stddev":2.234325209380729,"skew":1.0541272810270657,"range":{"min":1,"max":11}},"branchFactorByDepth":[{"depth":0,"count":1,"mean":8,"stddev":0,"skew":null,"median":8,"mode":8,"range":{"min":8,"max":8}},{"depth":1,"count":2,"mean":4,"stddev":1,"skew":1,"median":4,"mode":3,"range":{"min":3,"max":5}},{"depth":2,"count":3,"mean":3.3333333333333335,"stddev":1.247219128924647,"skew":1.0690449676496978,"median":3,"mode":2,"range":{"min":2,"max":5}},{"depth":3,"count":2,"mean":5,"stddev":2,"skew":1,"median":5,"mode":3,"range":{"min":3,"max":7}},{"depth":4,"count":4,"mean":6,"stddev":3.3166247903554,"skew":0.9045340337332909,"median":5,"mode":3,"range":{"min":3,"max":11}},{"depth":5,"count":5,"mean":4.6,"stddev":1.4966629547095764,"skew":1.0690449676496974,"median":5,"mode":3,"range":{"min":3,"max":7}},{"depth":6,"count":7,"mean":4,"stddev":2.6186146828319083,"skew":0.7637626158259734,"median":3,"mode":2,"range":{"min":2,"max":9}},{"depth":7,"count":10,"mean":2.7,"stddev":2.1931712199461306,"skew":0.7751332793988406,"median":1,"mode":1,"range":{"min":1,"max":7}},{"depth":8,"count":4,"mean":4.5,"stddev":0.8660254037844386,"skew":-0.5773502691896258,"median":5,"mode":5,"range":{"min":3,"max":5}},{"depth":9,"count":6,"mean":3.3333333333333335,"stddev":2.494438257849294,"skew":0.9354143466934854,"median":2.5,"mode":1,"range":{"min":1,"max":8}},{"depth":10,"count":9,"mean":3.888888888888889,"stddev":1.5947444549341474,"skew":-0.6967330142916176,"median":5,"mode":5,"range":{"min":1,"max":5}},{"depth":11,"count":13,"mean":2.8461538461538463,"stddev":1.8332885058173825,"skew":1.007017629956027,"median":3,"mode":1,"range":{"min":1,"max":5}},{"depth":12,"count":11,"mean":1.3636363636363635,"stddev":0.48104569292083466,"skew":0.7559289460184543,"median":1,"mode":1,"range":{"min":1,"max":2}}]}} {"num_picture_img":0,"num_image_sizes":0,"num_srcset_all":0,"num_srcset_sizes":0,"num_srcset_descriptor_x":0,"num_srcset_descriptor_w":0,"num_srcset_candidates":0,"picture_formats":[],"num_video_nodes":0,"video_durations":[],"video_attributes_values_counts":[],"video_display_style":[],"video_using_source_media_count":0,"video_source_media_values":[],"video_source_format_count":[],"video_source_format_type":[],"num_picture_using_min_resolution":0,"num_picture_using_orientation":0,"num_img_not_in_picture_srcset_candidates":0} width=device-width, initial-scale=1 0 9 0 3 [] [{"url":"https:\/\/contribute.freecodecamp.org\/_astro\/index.D3GIIj4y.css","ast":{"type":"stylesheet","stylesheet":{"rules":[{"type":"rule","selectors":["@layer properties"]},{"type":"supports","supports":"(((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b))))","rules":[{"type":"rule","selectors":["*",":before",":after","::backdrop"],"declarations":[{"type":"declaration","property":"--tw-rotate-x","value":"initial"},{"type":"declaration","property":"--tw-rotate-y","value":"initial"},{"type":"declaration","property":"--tw-rotate-z","value":"initial"},{"type":"declaration","property":"--tw-skew-x","value":"initial"},{"type":"declaration","property":"--tw-skew-y","value":"initial"},{"type":"declaration","property":"--tw-border-style","value":"solid"},{"type":"declaration","property":"--tw-outline-style","value":"solid"},{"type":"declaration","property":"--tw-blur","value":"initial"},{"type":"declaration","property":"--tw-brightness","value":"initial"},{"type":"declaration","property":"--tw-contrast","value":"initial"},{"type":"declaration","property":"--tw-grayscale","value":"initial"},{"type":"declaration","property":"--tw-hue-rotate","value":"initial"},{"type":"declaration","property":"--tw-invert","value":"initial"},{"type":"declaration","property":"--tw-opacity","value":"initial"},{"type":"declaration","property":"--tw-saturate","value":"initial"},{"type":"declaration","property":"--tw-sepia","value":"initial"},{"type":"declaration","property":"--tw-drop-shadow","value":"initial"},{"type":"declaration","property":"--tw-drop-shadow-color","value":"initial"},{"type":"declaration","property":"--tw-drop-shadow-alpha","value":"100%"},{"type":"declaration","property":"--tw-drop-shadow-size","value":"initial"}]}]}],"parsingErrors":[{"reason":"missing '}'","line":1,"column":85,"source":"@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer base{*,:after,:before{border:0 solid}html,:host{font-family:var(--font-sans)}code,kbd,samp,pre{font-family:var(--font-mono)}}@layer starlight,theme;@layer components{.sl-link-button.primary{color:#0a0a23!important;background-color:#feac32!important;background-image:linear-gradient(#fecc4c,#ffac33)!important;border:3px solid #feac32!important}.sl-link-button.primary:hover,.sl-link-button.primary:focus{color:#0a0a23!important;background-color:#fecc4c!important;background-image:none!important;border:3px solid #f1a02a!important}.sl-link-button.secondary{border:3px solid silver!important}.sl-link-button.secondary:hover,.sl-link-button.secondary:focus{color:#161724!important;background-color:#d0d0d0!important;border:3px solid #b0b0b0!important}}@layer utilities{:root{--sl-font:var(--font-sans);--sl-font-mono:var(--font-mono);--sl-color-white:var(--color-white);--sl-color-gray-1:var(--color-gray-200);--sl-color-gray-2:var(--color-gray-300);--sl-color-gray-3:var(--color-gray-400);--sl-color-gray-4:var(--color-gray-600);--sl-color-gray-5:var(--color-gray-700);--sl-color-gray-6:var(--color-gray-800);--sl-color-black:var(--color-gray-900);--sl-color-accent-low:var(--color-accent-950,var(--color-accent-900,#1e1b4b));--sl-color-accent:var(--color-accent-600,#4f46e5);--sl-color-accent-high:var(--color-accent-200,#c7d2fe)}:root[data-theme=light]{--sl-color-white:var(--color-gray-900);--sl-color-gray-1:var(--color-gray-800);--sl-color-gray-2:var(--color-gray-700);--sl-color-gray-3:var(--color-gray-500);--sl-color-gray-4:var(--color-gray-400);--sl-color-gray-5:var(--color-gray-300);--sl-color-gray-6:var(--color-gray-200);--sl-color-gray-7:var(--color-gray-100);--sl-color-black:var(--color-white);--sl-color-accent-low:var(--color-accent-200,#c7d2fe);--sl-color-accent:var(--color-accent-600,#4f46e5);--sl-color-accent-high:var(--color-accent-900,#312e81)}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.isolate{isolation:isolate}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.hidden{display:none}.table{display:table}.w-96{width:calc(var(--spacing)*96)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.overflow-clip{overflow:clip}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,visibility,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (min-width:48rem){.md\\:block{display:block}}}:root,:host{--color-accent-200:#cec3db;--color-accent-600:#7b5a9a;--color-accent-900:#392b47;--color-accent-950:#281f31;--color-gray-100:#f5f6fd;--color-gray-200:#eaedfc;--color-gray-300:#bec1d3;--color-gray-400:#8489ab;--color-gray-500:#525574;--color-gray-600:var(--color-zinc-600);--color-gray-700:#323552;--color-gray-800:#22243f;--color-gray-900:#161724;--font-sans:ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--color-zinc-600:oklch(44.2% .017 285.786);--color-white:#fff;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1)}@property --tw-rotate-x{syntax:\"*\";inherits:false}@property --tw-rotate-y{syntax:\"*\";inherits:false}@property --tw-rotate-z{syntax:\"*\";inherits:false}@property --tw-skew-x{syntax:\"*\";inherits:false}@property --tw-skew-y{syntax:\"*\";inherits:false}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-blur{syntax:\"*\";inherits:false}@property --tw-brightness{syntax:\"*\";inherits:false}@property --tw-contrast{syntax:\"*\";inherits:false}@property --tw-grayscale{syntax:\"*\";inherits:false}@property --tw-hue-rotate{syntax:\"*\";inherits:false}@property --tw-invert{syntax:\"*\";inherits:false}@property --tw-opacity{syntax:\"*\";inherits:false}@property --tw-saturate{syntax:\"*\";inherits:false}@property --tw-sepia{syntax:\"*\";inherits:false}@property --tw-drop-shadow{syntax:\"*\";inherits:false}@property --tw-drop-shadow-color{syntax:\"*\";inherits:false}@property --tw-drop-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:\"*\";inherits:false}@layer starlight.base,starlight.reset,starlight.core,starlight.content,starlight.components,starlight.utils;@layer starlight.base{:root,::backdrop{--sl-color-white: hsl(0, 0%, 100%);--sl-color-gray-1: hsl(224, 20%, 94%);--sl-color-gray-2: hsl(224, 6%, 77%);--sl-color-gray-3: hsl(224, 6%, 56%);--sl-color-gray-4: hsl(224, 7%, 36%);--sl-color-gray-5: hsl(224, 10%, 23%);--sl-color-gray-6: hsl(224, 14%, 16%);--sl-color-black: hsl(224, 10%, 10%);--sl-hue-orange: 41;--sl-color-orange-low: hsl(var(--sl-hue-orange), 39%, 22%);--sl-color-orange: hsl(var(--sl-hue-orange), 82%, 63%);--sl-color-orange-high: hsl(var(--sl-hue-orange), 82%, 87%);--sl-hue-green: 101;--sl-color-green-low: hsl(var(--sl-hue-green), 39%, 22%);--sl-color-green: hsl(var(--sl-hue-green), 82%, 63%);--sl-color-green-high: hsl(var(--sl-hue-green), 82%, 80%);--sl-hue-blue: 234;--sl-color-blue-low: hsl(var(--sl-hue-blue), 54%, 20%);--sl-color-blue: hsl(var(--sl-hue-blue), 100%, 60%);--sl-color-blue-high: hsl(var(--sl-hue-blue), 100%, 87%);--sl-hue-purple: 281;--sl-color-purple-low: hsl(var(--sl-hue-purple), 39%, 22%);--sl-color-purple: hsl(var(--sl-hue-purple), 82%, 63%);--sl-color-purple-high: hsl(var(--sl-hue-purple), 82%, 89%);--sl-hue-red: 339;--sl-color-red-low: hsl(var(--sl-hue-red), 39%, 22%);--sl-color-red: hsl(var(--sl-hue-red), 82%, 63%);--sl-color-red-high: hsl(var(--sl-hue-red), 82%, 87%);--sl-color-accent-low: hsl(224, 54%, 20%);--sl-color-accent: hsl(224, 100%, 60%);--sl-color-accent-high: hsl(224, 100%, 85%);--sl-color-text: var(--sl-color-gray-2);--sl-color-text-accent: var(--sl-color-accent-high);--sl-color-text-invert: var(--sl-color-accent-low);--sl-color-bg: var(--sl-color-black);--sl-color-bg-nav: var(--sl-color-gray-6);--sl-color-bg-sidebar: var(--sl-color-gray-6);--sl-color-bg-inline-code: var(--sl-color-gray-5);--sl-color-bg-accent: var(--sl-color-accent-high);--sl-color-hairline-light: var(--sl-color-gray-5);--sl-color-hairline: var(--sl-color-gray-6);--sl-color-hairline-shade: var(--sl-color-black);--sl-color-backdrop-overlay: hsla(223, 13%, 10%, .66);--sl-shadow-sm: 0px 1px 1px hsla(0, 0%, 0%, .12), 0px 2px 1px hsla(0, 0%, 0%, .24);--sl-shadow-md: 0px 8px 4px hsla(0, 0%, 0%, .08), 0px 5px 2px hsla(0, 0%, 0%, .08), 0px 3px 2px hsla(0, 0%, 0%, .12), 0px 1px 1px hsla(0, 0%, 0%, .15);--sl-shadow-lg: 0px 25px 7px hsla(0, 0%, 0%, .03), 0px 16px 6px hsla(0, 0%, 0%, .1), 0px 9px 5px hsla(223, 13%, 10%, .33), 0px 4px 4px hsla(0, 0%, 0%, .75), 0px 4px 2px hsla(0, 0%, 0%, .25);--sl-text-2xs: .75rem;--sl-text-xs: .8125rem;--sl-text-sm: .875rem;--sl-text-base: 1rem;--sl-text-lg: 1.125rem;--sl-text-xl: 1.25rem;--sl-text-2xl: 1.5rem;--sl-text-3xl: 1.8125rem;--sl-text-4xl: 2.1875rem;--sl-text-5xl: 2.625rem;--sl-text-6xl: 4rem;--sl-text-body: var(--sl-text-base);--sl-text-body-sm: var(--sl-text-xs);--sl-text-code: var(--sl-text-sm);--sl-text-code-sm: var(--sl-text-xs);--sl-text-h1: var(--sl-text-4xl);--sl-text-h2: var(--sl-text-3xl);--sl-text-h3: var(--sl-text-2xl);--sl-text-h4: var(--sl-text-xl);--sl-text-h5: var(--sl-text-lg);--sl-line-height: 1.75;--sl-line-height-headings: 1.2;--sl-font-system: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";--sl-font-system-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;--__sl-font: var(--sl-font, var(--sl-font-system)), var(--sl-font-system);--__sl-font-mono: var(--sl-font-mono, var(--sl-font-system-mono)), var(--sl-font-system-mono);--sl-nav-height: 3.5rem;--sl-nav-pad-x: 1rem;--sl-nav-pad-y: .75rem;--sl-mobile-toc-height: 3rem;--sl-sidebar-width: 18.75rem;--sl-sidebar-pad-x: 1rem;--sl-content-width: 45rem;--sl-content-pad-x: 1rem;--sl-menu-button-size: 2rem;--sl-nav-gap: var(--sl-content-pad-x);--sl-outline-offset-inside: -.1875rem;--sl-z-index-toc: 4;--sl-z-index-menu: 5;--sl-z-index-navbar: 10;--sl-z-index-skiplink: 20}:root[data-theme=light],[data-theme=light] ::backdrop{--sl-color-white: hsl(224, 10%, 10%);--sl-color-gray-1: hsl(224, 14%, 16%);--sl-color-gray-2: hsl(224, 10%, 23%);--sl-color-gray-3: hsl(224, 7%, 36%);--sl-color-gray-4: hsl(224, 6%, 56%);--sl-color-gray-5: hsl(224, 6%, 77%);--sl-color-gray-6: hsl(224, 20%, 94%);--sl-color-gray-7: hsl(224, 19%, 97%);--sl-color-black: hsl(0, 0%, 100%);--sl-color-orange-high: hsl(var(--sl-hue-orange), 80%, 25%);--sl-color-orange: hsl(var(--sl-hue-orange), 90%, 60%);--sl-color-orange-low: hsl(var(--sl-hue-orange), 90%, 88%);--sl-color-green-high: hsl(var(--sl-hue-green), 80%, 22%);--sl-color-green: hsl(var(--sl-hue-green), 90%, 46%);--sl-color-green-low: hsl(var(--sl-hue-green), 85%, 90%);--sl-color-blue-high: hsl(var(--sl-hue-blue), 80%, 30%);--sl-color-blue: hsl(var(--sl-hue-blue), 90%, 60%);--sl-color-blue-low: hsl(var(--sl-hue-blue), 88%, 90%);--sl-color-purple-high: hsl(var(--sl-hue-purple), 90%, 30%);--sl-color-purple: hsl(var(--sl-hue-purple), 90%, 60%);--sl-color-purple-low: hsl(var(--sl-hue-purple), 80%, 90%);--sl-color-red-high: hsl(var(--sl-hue-red), 80%, 30%);--sl-color-red: hsl(var(--sl-hue-red), 90%, 60%);--sl-color-red-low: hsl(var(--sl-hue-red), 80%, 90%);--sl-color-accent-high: hsl(234, 80%, 30%);--sl-color-accent: hsl(234, 90%, 60%);--sl-color-accent-low: hsl(234, 88%, 90%);--sl-color-text-accent: var(--sl-color-accent);--sl-color-text-invert: var(--sl-color-black);--sl-color-bg-nav: var(--sl-color-gray-7);--sl-color-bg-sidebar: var(--sl-color-bg);--sl-color-bg-inline-code: var(--sl-color-gray-6);--sl-color-bg-accent: var(--sl-color-accent);--sl-color-hairline-light: var(--sl-color-gray-6);--sl-color-hairline-shade: var(--sl-color-gray-6);--sl-color-backdrop-overlay: hsla(225, 9%, 36%, .66);--sl-shadow-sm: 0px 1px 1px hsla(0, 0%, 0%, .06), 0px 2px 1px hsla(0, 0%, 0%, .06);--sl-shadow-md: 0px 8px 4px hsla(0, 0%, 0%, .03), 0px 5px 2px hsla(0, 0%, 0%, .03), 0px 3px 2px hsla(0, 0%, 0%, .06), 0px 1px 1px hsla(0, 0%, 0%, .06);--sl-shadow-lg: 0px 25px 7px rgba(0, 0, 0, .01), 0px 16px 6px hsla(0, 0%, 0%, .03), 0px 9px 5px hsla(223, 13%, 10%, .08), 0px 4px 4px hsla(0, 0%, 0%, .16), 0px 4px 2px hsla(0, 0%, 0%, .04)}@media (min-width: 50em){:root{--sl-nav-height: 4rem;--sl-nav-pad-x: 1.5rem;--sl-text-h1: var(--sl-text-5xl);--sl-text-h2: var(--sl-text-4xl);--sl-text-h3: var(--sl-text-3xl);--sl-text-h4: var(--sl-text-2xl)}}@media (min-width: 72rem){:root{--sl-content-pad-x: 1.5rem;--sl-mobile-toc-height: 0rem}}}@layer starlight.reset{*,*:before,*:after{box-sizing:border-box}*{margin:0}html{color-scheme:dark;accent-color:var(--sl-color-accent)}html[data-theme=light]{color-scheme:light}body{font-family:var(--__sl-font);line-height:var(--sl-line-height);-webkit-font-smoothing:antialiased;color:var(--sl-color-text);background-color:var(--sl-color-bg)}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6,code{overflow-wrap:anywhere}code{font-family:var(--__sl-font-mono)}}@layer starlight.components{.starlight-aside{padding:1rem;border-inline-start:.25rem solid var(--sl-color-asides-border);color:var(--sl-color-white)}.starlight-aside--note{--sl-color-asides-text-accent: var(--sl-color-blue-high);--sl-color-asides-border: var(--sl-color-blue);background-color:var(--sl-color-blue-low)}.starlight-aside--tip{--sl-color-asides-text-accent: var(--sl-color-purple-high);--sl-color-asides-border: var(--sl-color-purple);background-color:var(--sl-color-purple-low)}.starlight-aside--caution{--sl-color-asides-text-accent: var(--sl-color-orange-high);--sl-color-asides-border: var(--sl-color-orange);background-color:var(--sl-color-orange-low)}.starlight-aside--danger{--sl-color-asides-text-accent: var(--sl-color-red-high);--sl-color-asides-border: var(--sl-color-red);background-color:var(--sl-color-red-low)}.starlight-aside__title{display:flex;gap:.5rem;align-items:center;font-size:var(--sl-text-h5);font-weight:600;line-height:var(--sl-line-height-headings);color:var(--sl-color-asides-text-accent)}.starlight-aside__icon{font-size:1.333em;width:1em;height:1em}.starlight-aside__title+.starlight-aside__content{margin-top:.5rem}.starlight-aside__content a{color:var(--sl-color-asides-text-accent)}}@layer starlight.utils{.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sl-hidden{display:none}.sl-flex{display:flex}.sl-block{display:block}@media (min-width: 50rem){.md\\:sl-hidden{display:none}.md\\:sl-flex{display:flex}.md\\:sl-block{display:block}}@media (min-width: 72rem){.lg\\:sl-hidden{display:none}.lg\\:sl-flex{display:flex}.lg\\:sl-block{display:block}}[data-theme=light] .light\\:sl-hidden,[data-theme=dark] .dark\\:sl-hidden{display:none}[dir=rtl] .rtl\\:flip:not(:where([dir=rtl] [dir=ltr] *)){transform:scaleX(-1)}}@layer starlight.content{.sl-markdown-content .sl-heading-wrapper{--sl-anchor-icon-size: .8275em;--sl-anchor-icon-gap: .25em;--sl-anchor-icon-space: calc(var(--sl-anchor-icon-size) + var(--sl-anchor-icon-gap));line-height:var(--sl-line-height-headings)}.sl-markdown-content :not(h1,h2,h3,h4,h5,h6,.sl-heading-wrapper)+:is(.sl-heading-wrapper){margin-top:1.5em}.sl-markdown-content .sl-heading-wrapper.level-h1{font-size:var(--sl-text-h1)}.sl-markdown-content .sl-heading-wrapper.level-h2{font-size:var(--sl-text-h2)}.sl-markdown-content .sl-heading-wrapper.level-h3{font-size:var(--sl-text-h3)}.sl-markdown-content .sl-heading-wrapper.level-h4{font-size:var(--sl-text-h4)}.sl-markdown-content .sl-heading-wrapper.level-h5{font-size:var(--sl-text-h5)}.sl-markdown-content .sl-heading-wrapper.level-h6{font-size:var(--sl-text-h6)}.sl-markdown-content .sl-heading-wrapper>:first-child{display:inline;padding-inline-end:var(--sl-anchor-icon-space)}.sl-markdown-content .sl-anchor-link{position:relative;margin-inline-start:calc(-1 * var(--sl-anchor-icon-size));-webkit-user-select:none;user-select:none;display:inline-flex}.sl-markdown-content .sl-anchor-link:after{content:\"\";position:absolute;inset:-.25rem -.5rem}.sl-markdown-content .sl-anchor-icon>svg{display:inline;width:var(--sl-anchor-icon-size);vertical-align:top;transform:translateY(calc((var(--sl-line-height-headings) * 1em - var(--sl-anchor-icon-size)) \/ 2))}@media (hover: hover){.sl-markdown-content .sl-anchor-link{opacity:0}.sl-markdown-content .sl-anchor-link:focus,.sl-markdown-content .sl-heading-wrapper:hover .sl-anchor-link{opacity:1}}}@layer starlight.core{.sl-banner:where(.astro-nrr65xn3){--__sl-banner-text: var(--sl-color-banner-text, var(--sl-color-text-invert));padding:var(--sl-nav-pad-y) var(--sl-nav-pad-x);background-color:var(--sl-color-banner-bg, var(--sl-color-bg-accent));color:var(--__sl-banner-text);line-height:var(--sl-line-height-headings);text-align:center;text-wrap:balance;box-shadow:var(--sl-shadow-sm)}.sl-banner:where(.astro-nrr65xn3) a{color:var(--__sl-banner-text)}}@layer starlight.core{.content-panel:where(.astro-dzf643rx){padding:1.5rem var(--sl-content-pad-x)}.content-panel:where(.astro-dzf643rx)+.content-panel:where(.astro-dzf643rx){border-top:1px solid var(--sl-color-hairline)}.sl-container:where(.astro-dzf643rx){max-width:var(--sl-content-width)}.sl-container:where(.astro-dzf643rx)>*+*{margin-top:1.5rem}@media (min-width: 72rem){.sl-container:where(.astro-dzf643rx){margin-inline:var(--sl-content-margin-inline, auto)}}}@layer starlight.core{p:where(.astro-dhw4sgoj){border:1px solid var(--sl-color-orange);padding:.75em 1em;background-color:var(--sl-color-orange-low);color:var(--sl-color-orange-high);width:max-content;max-width:100%;align-items:center;gap:.75em;font-size:var(--sl-text-body-sm);line-height:var(--sl-line-height-headings)}}@layer starlight.core{a:where(.astro-o35pfnhe){gap:.5rem;align-items:center;text-decoration:none;color:var(--sl-color-gray-3)}a:where(.astro-o35pfnhe):hover{color:var(--sl-color-white)}}@layer starlight.core{.pagination-links:where(.astro-sdcwcxqp){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));gap:1rem}a:where(.astro-sdcwcxqp){display:flex;align-items:center;justify-content:flex-start;gap:.5rem;width:100%;flex-basis:calc(50% - .5rem);flex-grow:1;border:1px solid var(--sl-color-gray-5);border-radius:.5rem;padding:1rem;text-decoration:none;color:var(--sl-color-gray-2);box-shadow:var(--sl-shadow-md);overflow-wrap:anywhere}:where(.astro-sdcwcxqp)[rel=next]{justify-content:end;text-align:end;flex-direction:row-reverse}a:where(.astro-sdcwcxqp):hover{border-color:var(--sl-color-gray-2)}.link-title:where(.astro-sdcwcxqp){color:var(--sl-color-white);font-size:var(--sl-text-2xl);line-height:var(--sl-line-height-headings)}svg:where(.astro-sdcwcxqp){flex-shrink:0}}@layer starlight.core{footer:where(.astro-g2huq5qe){flex-direction:column;gap:1.5rem}.meta:where(.astro-g2huq5qe){gap:.75rem 3rem;justify-content:space-between;flex-wrap:wrap;margin-top:3rem;font-size:var(--sl-text-sm);color:var(--sl-color-gray-3)}.meta:where(.astro-g2huq5qe)>p:only-child{margin-inline-start:auto}.kudos:where(.astro-g2huq5qe){align-items:center;gap:.5em;margin:1.5rem auto;font-size:var(--sl-text-xs);text-decoration:none;color:var(--sl-color-gray-3)}.kudos:where(.astro-g2huq5qe):hover{color:var(--sl-color-white)}}@layer starlight.components{.kudos:where(.astro-g2huq5qe) svg{color:var(--sl-color-orange)}}@layer starlight.core{label:where(.astro-lneirf33){--sl-label-icon-size: .875rem;--sl-caret-size: 1.25rem;--sl-inline-padding: .5rem;position:relative;display:flex;align-items:center;gap:.25rem;color:var(--sl-color-gray-1)}label:where(.astro-lneirf33):hover{color:var(--sl-color-gray-2)}.icon:where(.astro-lneirf33){position:absolute;top:50%;transform:translateY(-50%);pointer-events:none}select:where(.astro-lneirf33){border:0;padding-block:.625rem;padding-inline:calc(var(--sl-label-icon-size) + var(--sl-inline-padding) + .25rem) calc(var(--sl-caret-size) + var(--sl-inline-padding) + .25rem);margin-inline:calc(var(--sl-inline-padding) * -1);width:calc(var(--sl-select-width) + var(--sl-inline-padding) * 2);background-color:transparent;text-overflow:ellipsis;color:inherit;cursor:pointer;appearance:none}option:where(.astro-lneirf33){background-color:var(--sl-color-bg-nav);color:var(--sl-color-gray-1)}@media (min-width: 50rem){select:where(.astro-lneirf33){font-size:var(--sl-text-sm)}}}@layer starlight.components{.label-icon:where(.astro-lneirf33){font-size:var(--sl-label-icon-size);inset-inline-start:0}.caret:where(.astro-lneirf33){font-size:var(--sl-caret-size);inset-inline-end:0}}@layer starlight.core{.pagefind-ui__result.svelte-j9e30.svelte-j9e30{list-style-type:none;display:flex;align-items:flex-start;gap:min(calc(40px * var(--pagefind-ui-scale)),3%);padding:calc(30px * var(--pagefind-ui-scale)) 0 calc(40px * var(--pagefind-ui-scale));border-top:solid var(--pagefind-ui-border-width) var(--pagefind-ui-border)}.pagefind-ui__result.svelte-j9e30.svelte-j9e30:last-of-type{border-bottom:solid var(--pagefind-ui-border-width) var(--pagefind-ui-border)}.pagefind-ui__result-thumb.svelte-j9e30.svelte-j9e30{width:min(30%,calc((30% - (100px * var(--pagefind-ui-scale))) * 100000));max-width:calc(120px * var(--pagefind-ui-scale));margin-top:calc(10px * var(--pagefind-ui-scale));aspect-ratio:var(--pagefind-ui-image-box-ratio);position:relative}.pagefind-ui__result-image.svelte-j9e30.svelte-j9e30{display:block;position:absolute;left:50%;transform:translate(-50%);font-size:0;width:auto;height:auto;max-width:100%;max-height:100%;border-radius:var(--pagefind-ui-image-border-radius)}.pagefind-ui__result-inner.svelte-j9e30.svelte-j9e30{flex:1;display:flex;flex-direction:column;align-items:flex-start;margin-top:calc(10px * var(--pagefind-ui-scale))}.pagefind-ui__result-title.svelte-j9e30.svelte-j9e30{display:inline-block;font-weight:700;font-size:calc(21px * var(--pagefind-ui-scale));margin-top:0;margin-bottom:0}.pagefind-ui__result-title.svelte-j9e30 .pagefind-ui__result-link.svelte-j9e30{color:var(--pagefind-ui-text);text-decoration:none}.pagefind-ui__result-title.svelte-j9e30 .pagefind-ui__result-link.svelte-j9e30:hover{text-decoration:underline}.pagefind-ui__result-excerpt.svelte-j9e30.svelte-j9e30{display:inline-block;font-weight:400;font-size:calc(16px * var(--pagefind-ui-scale));margin-top:calc(4px * var(--pagefind-ui-scale));margin-bottom:0;min-width:calc(250px * var(--pagefind-ui-scale))}.pagefind-ui__loading.svelte-j9e30.svelte-j9e30{color:var(--pagefind-ui-text);background-color:var(--pagefind-ui-text);border-radius:var(--pagefind-ui-border-radius);opacity:.1;pointer-events:none}.pagefind-ui__result-tags.svelte-j9e30.svelte-j9e30{list-style-type:none;padding:0;display:flex;gap:calc(20px * var(--pagefind-ui-scale));flex-wrap:wrap;margin-top:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__result-tag.svelte-j9e30.svelte-j9e30{padding:calc(4px * var(--pagefind-ui-scale)) calc(8px * var(--pagefind-ui-scale));font-size:calc(14px * var(--pagefind-ui-scale));border-radius:var(--pagefind-ui-border-radius);background-color:var(--pagefind-ui-tag)}.pagefind-ui__result.svelte-4xnkmf.svelte-4xnkmf{list-style-type:none;display:flex;align-items:flex-start;gap:min(calc(40px * var(--pagefind-ui-scale)),3%);padding:calc(30px * var(--pagefind-ui-scale)) 0 calc(40px * var(--pagefind-ui-scale));border-top:solid var(--pagefind-ui-border-width) var(--pagefind-ui-border)}.pagefind-ui__result.svelte-4xnkmf.svelte-4xnkmf:last-of-type{border-bottom:solid var(--pagefind-ui-border-width) var(--pagefind-ui-border)}.pagefind-ui__result-nested.svelte-4xnkmf.svelte-4xnkmf{display:flex;flex-direction:column;padding-left:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__result-nested.svelte-4xnkmf.svelte-4xnkmf:first-of-type{padding-top:calc(10px * var(--pagefind-ui-scale))}.pagefind-ui__result-nested.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf{font-size:.9em;position:relative}.pagefind-ui__result-nested.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf:before{content:\"\u2937 \";position:absolute;top:0;right:calc(100% + .1em)}.pagefind-ui__result-thumb.svelte-4xnkmf.svelte-4xnkmf{width:min(30%,calc((30% - (100px * var(--pagefind-ui-scale))) * 100000));max-width:calc(120px * var(--pagefind-ui-scale));margin-top:calc(10px * var(--pagefind-ui-scale));aspect-ratio:var(--pagefind-ui-image-box-ratio);position:relative}.pagefind-ui__result-image.svelte-4xnkmf.svelte-4xnkmf{display:block;position:absolute;left:50%;transform:translate(-50%);font-size:0;width:auto;height:auto;max-width:100%;max-height:100%;border-radius:var(--pagefind-ui-image-border-radius)}.pagefind-ui__result-inner.svelte-4xnkmf.svelte-4xnkmf{flex:1;display:flex;flex-direction:column;align-items:flex-start;margin-top:calc(10px * var(--pagefind-ui-scale))}.pagefind-ui__result-title.svelte-4xnkmf.svelte-4xnkmf{display:inline-block;font-weight:700;font-size:calc(21px * var(--pagefind-ui-scale));margin-top:0;margin-bottom:0}.pagefind-ui__result-title.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf{color:var(--pagefind-ui-text);text-decoration:none}.pagefind-ui__result-title.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf:hover{text-decoration:underline}.pagefind-ui__result-excerpt.svelte-4xnkmf.svelte-4xnkmf{display:inline-block;font-weight:400;font-size:calc(16px * var(--pagefind-ui-scale));margin-top:calc(4px * var(--pagefind-ui-scale));margin-bottom:0;min-width:calc(250px * var(--pagefind-ui-scale))}.pagefind-ui__loading.svelte-4xnkmf.svelte-4xnkmf{color:var(--pagefind-ui-text);background-color:var(--pagefind-ui-text);border-radius:var(--pagefind-ui-border-radius);opacity:.1;pointer-events:none}.pagefind-ui__result-tags.svelte-4xnkmf.svelte-4xnkmf{list-style-type:none;padding:0;display:flex;gap:calc(20px * var(--pagefind-ui-scale));flex-wrap:wrap;margin-top:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__result-tag.svelte-4xnkmf.svelte-4xnkmf{padding:calc(4px * var(--pagefind-ui-scale)) calc(8px * var(--pagefind-ui-scale));font-size:calc(14px * var(--pagefind-ui-scale));border-radius:var(--pagefind-ui-border-radius);background-color:var(--pagefind-ui-tag)}legend.svelte-1v2r7ls.svelte-1v2r7ls{position:absolute;clip:rect(0 0 0 0)}.pagefind-ui__filter-panel.svelte-1v2r7ls.svelte-1v2r7ls{min-width:min(calc(260px * var(--pagefind-ui-scale)),100%);flex:1;display:flex;flex-direction:column;margin-top:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__filter-group.svelte-1v2r7ls.svelte-1v2r7ls{border:0;padding:0}.pagefind-ui__filter-block.svelte-1v2r7ls.svelte-1v2r7ls{padding:0;display:block;border-bottom:solid calc(2px * var(--pagefind-ui-scale)) var(--pagefind-ui-border);padding:calc(20px * var(--pagefind-ui-scale)) 0}.pagefind-ui__filter-name.svelte-1v2r7ls.svelte-1v2r7ls{font-size:calc(16px * var(--pagefind-ui-scale));position:relative;display:flex;align-items:center;list-style:none;font-weight:700;cursor:pointer;height:calc(24px * var(--pagefind-ui-scale))}.pagefind-ui__filter-name.svelte-1v2r7ls.svelte-1v2r7ls::-webkit-details-marker{display:none}.pagefind-ui__filter-name.svelte-1v2r7ls.svelte-1v2r7ls:after{position:absolute;content:\"\";right:calc(6px * var(--pagefind-ui-scale));top:50%;width:calc(8px * var(--pagefind-ui-scale));height:calc(8px * var(--pagefind-ui-scale));border:solid calc(2px * var(--pagefind-ui-scale)) currentColor;border-right:0;border-top:0;transform:translateY(-70%) rotate(-45deg)}.pagefind-ui__filter-block[open].svelte-1v2r7ls .pagefind-ui__filter-name.svelte-1v2r7ls:after{transform:translateY(-70%) rotate(-225deg)}.pagefind-ui__filter-group.svelte-1v2r7ls.svelte-1v2r7ls{display:flex;flex-direction:column;gap:calc(20px * var(--pagefind-ui-scale));padding-top:calc(30px * var(--pagefind-ui-scale))}.pagefind-ui__filter-value.svelte-1v2r7ls.svelte-1v2r7ls{position:relative;display:flex;align-items:center;gap:calc(8px * var(--pagefind-ui-scale))}.pagefind-ui__filter-value.svelte-1v2r7ls.svelte-1v2r7ls:before{position:absolute;content:\"\";top:50%;left:calc(8px * var(--pagefind-ui-scale));width:0px;height:0px;border:solid 1px #fff;opacity:0;transform:translate(calc(4.5px * var(--pagefind-ui-scale) * -1),calc(.8px * var(--pagefind-ui-scale))) skew(-5deg) rotate(-45deg);transform-origin:top left;border-top:0;border-right:0;pointer-events:none}.pagefind-ui__filter-value.pagefind-ui__filter-value--checked.svelte-1v2r7ls.svelte-1v2r7ls:before{opacity:1;width:calc(9px * var(--pagefind-ui-scale));height:calc(4px * var(--pagefind-ui-scale));transition:width .1s ease-out .1s,height .1s ease-in}.pagefind-ui__filter-checkbox.svelte-1v2r7ls.svelte-1v2r7ls{margin:0;width:calc(16px * var(--pagefind-ui-scale));height:calc(16px * var(--pagefind-ui-scale));border:solid 1px var(--pagefind-ui-border);appearance:none;-webkit-appearance:none;border-radius:calc(var(--pagefind-ui-border-radius) \/ 2);background-color:var(--pagefind-ui-background);cursor:pointer}.pagefind-ui__filter-checkbox.svelte-1v2r7ls.svelte-1v2r7ls:checked{background-color:var(--pagefind-ui-primary);border:solid 1px var(--pagefind-ui-primary)}.pagefind-ui__filter-label.svelte-1v2r7ls.svelte-1v2r7ls{cursor:pointer;font-size:calc(16px * var(--pagefind-ui-scale));font-weight:400}.pagefind-ui--reset *:where(:not(html,iframe,canvas,img,svg,video):not(svg *,symbol *)){all:unset;display:revert;outline:revert}.pagefind-ui--reset *,.pagefind-ui--reset *:before,.pagefind-ui--reset *:after{box-sizing:border-box}.pagefind-ui--reset a,.pagefind-ui--reset button{cursor:revert}.pagefind-ui--reset ol,.pagefind-ui--reset ul,.pagefind-ui--reset menu{list-style:none}.pagefind-ui--reset img{max-width:100%}.pagefind-ui--reset table{border-collapse:collapse}.pagefind-ui--reset input,.pagefind-ui--reset textarea{-webkit-user-select:auto}.pagefind-ui--reset textarea{white-space:revert}.pagefind-ui--reset meter{-webkit-appearance:revert;appearance:revert}.pagefind-ui--reset ::placeholder{color:unset}.pagefind-ui--reset :where([hidden]){display:none}.pagefind-ui--reset :where([contenteditable]:not([contenteditable=false])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}.pagefind-ui--reset :where([draggable=true]){-webkit-user-drag:element}.pagefind-ui--reset mark{all:revert}:root{--pagefind-ui-scale:.8;--pagefind-ui-primary:#393939;--pagefind-ui-text:#393939;--pagefind-ui-background:#ffffff;--pagefind-ui-border:#eeeeee;--pagefind-ui-tag:#eeeeee;--pagefind-ui-border-width:2px;--pagefind-ui-border-radius:8px;--pagefind-ui-image-border-radius:8px;--pagefind-ui-image-box-ratio:3 \/ 2;--pagefind-ui-font:system, -apple-system, \"BlinkMacSystemFont\", \".SFNSText-Regular\", \"San Francisco\", \"Roboto\", \"Segoe UI\", \"Helvetica Neue\", \"Lucida Grande\", \"Ubuntu\", \"arial\", sans-serif}.pagefind-ui.svelte-e9gkc3{width:100%;color:var(--pagefind-ui-text);font-family:var(--pagefind-ui-font)}.pagefind-ui__hidden.svelte-e9gkc3{display:none!important}.pagefind-ui__suppressed.svelte-e9gkc3{opacity:0;pointer-events:none}.pagefind-ui__form.svelte-e9gkc3{position:relative}.pagefind-ui__form.svelte-e9gkc3:before{background-color:var(--pagefind-ui-text);width:calc(18px * var(--pagefind-ui-scale));height:calc(18px * var(--pagefind-ui-scale));top:calc(23px * var(--pagefind-ui-scale));left:calc(20px * var(--pagefind-ui-scale));content:\"\";position:absolute;display:block;opacity:.7;-webkit-mask-image:url(\"data:image\/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M12.7549 11.255H11.9649L11.6849 10.985C12.6649 9.845 13.2549 8.365 13.2549 6.755C13.2549 3.165 10.3449 0.255005 6.75488 0.255005C3.16488 0.255005 0.254883 3.165 0.254883 6.755C0.254883 10.345 3.16488 13.255 6.75488 13.255C8.36488 13.255 9.84488 12.665 10.9849 11.685L11.2549 11.965V12.755L16.2549 17.745L17.7449 16.255L12.7549 11.255ZM6.75488 11.255C4.26488 11.255 2.25488 9.245 2.25488 6.755C2.25488 4.26501 4.26488 2.255 6.75488 2.255C9.24488 2.255 11.2549 4.26501 11.2549 6.755C11.2549 9.245 9.24488 11.255 6.75488 11.255Z' fill='%23000000'\/%3E%3C\/svg%3E%0A\");mask-image:url(\"data:image\/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M12.7549 11.255H11.9649L11.6849 10.985C12.6649 9.845 13.2549 8.365 13.2549 6.755C13.2549 3.165 10.3449 0.255005 6.75488 0.255005C3.16488 0.255005 0.254883 3.165 0.254883 6.755C0.254883 10.345 3.16488 13.255 6.75488 13.255C8.36488 13.255 9.84488 12.665 10.9849 11.685L11.2549 11.965V12.755L16.2549 17.745L17.7449 16.255L12.7549 11.255ZM6.75488 11.255C4.26488 11.255 2.25488 9.245 2.25488 6.755C2.25488 4.26501 4.26488 2.255 6.75488 2.255C9.24488 2.255 11.2549 4.26501 11.2549 6.755C11.2549 9.245 9.24488 11.255 6.75488 11.255Z' fill='%23000000'\/%3E%3C\/svg%3E%0A\");-webkit-mask-size:100%;mask-size:100%;z-index:9;pointer-events:none}.pagefind-ui__search-input.svelte-e9gkc3{height:calc(64px * var(--pagefind-ui-scale));padding:0 calc(70px * var(--pagefind-ui-scale)) 0 calc(54px * var(--pagefind-ui-scale));background-color:var(--pagefind-ui-background);border:var(--pagefind-ui-border-width) solid var(--pagefind-ui-border);border-radius:var(--pagefind-ui-border-radius);font-size:calc(21px * var(--pagefind-ui-scale));position:relative;appearance:none;-webkit-appearance:none;display:flex;width:100%;box-sizing:border-box;font-weight:700}.pagefind-ui__search-input.svelte-e9gkc3::placeholder{opacity:.2}.pagefind-ui__search-clear.svelte-e9gkc3{position:absolute;top:calc(3px * var(--pagefind-ui-scale));right:calc(3px * var(--pagefind-ui-scale));height:calc(58px * var(--pagefind-ui-scale));padding:0 calc(15px * var(--pagefind-ui-scale)) 0 calc(2px * var(--pagefind-ui-scale));color:var(--pagefind-ui-text);font-size:calc(14px * var(--pagefind-ui-scale));cursor:pointer;background-color:var(--pagefind-ui-background);border-radius:var(--pagefind-ui-border-radius)}.pagefind-ui__drawer.svelte-e9gkc3{gap:calc(60px * var(--pagefind-ui-scale));display:flex;flex-direction:row;flex-wrap:wrap}.pagefind-ui__results-area.svelte-e9gkc3{min-width:min(calc(400px * var(--pagefind-ui-scale)),100%);flex:1000;margin-top:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__results.svelte-e9gkc3{padding:0}.pagefind-ui__message.svelte-e9gkc3{box-sizing:content-box;font-size:calc(16px * var(--pagefind-ui-scale));height:calc(24px * var(--pagefind-ui-scale));padding:calc(20px * var(--pagefind-ui-scale)) 0;display:flex;align-items:center;font-weight:700;margin-top:0}.pagefind-ui__button.svelte-e9gkc3{margin-top:calc(40px * var(--pagefind-ui-scale));border:var(--pagefind-ui-border-width) solid var(--pagefind-ui-border);border-radius:var(--pagefind-ui-border-radius);height:calc(48px * var(--pagefind-ui-scale));padding:0 calc(12px * var(--pagefind-ui-scale));font-size:calc(16px * var(--pagefind-ui-scale));color:var(--pagefind-ui-primary);background:var(--pagefind-ui-background);width:100%;text-align:center;font-weight:700;cursor:pointer}.pagefind-ui__button.svelte-e9gkc3:hover{border-color:var(--pagefind-ui-primary);color:var(--pagefind-ui-primary);background:var(--pagefind-ui-background)}}@layer starlight.core{[data-search-modal-open]{overflow:hidden}#starlight__search{--sl-search-result-spacing: calc(1.25rem * var(--pagefind-ui-scale));--sl-search-result-pad-inline-start: calc(3.75rem * var(--pagefind-ui-scale));--sl-search-result-pad-inline-end: calc(1.25rem * var(--pagefind-ui-scale));--sl-search-result-pad-block: calc(.9375rem * var(--pagefind-ui-scale));--sl-search-result-nested-pad-block: calc(.625rem * var(--pagefind-ui-scale));--sl-search-corners: calc(.3125rem * var(--pagefind-ui-scale));--sl-search-page-icon-size: calc(1.875rem * var(--pagefind-ui-scale));--sl-search-page-icon-inline-start: calc( (var(--sl-search-result-pad-inline-start) - var(--sl-search-page-icon-size)) \/ 2 );--sl-search-tree-diagram-size: calc(2.5rem * var(--pagefind-ui-scale));--sl-search-tree-diagram-inline-start: calc( (var(--sl-search-result-pad-inline-start) - var(--sl-search-tree-diagram-size)) \/ 2 )}#starlight__search .pagefind-ui__form:before{--pagefind-ui-text: var(--sl-color-gray-1);opacity:1}#starlight__search .pagefind-ui__search-input{color:var(--sl-color-white);font-weight:400;width:calc(100% - var(--sl-search-cancel-space))}#starlight__search input:focus{--pagefind-ui-border: var(--sl-color-accent)}#starlight__search .pagefind-ui__search-clear{inset-inline-end:var(--sl-search-cancel-space);width:calc(60px * var(--pagefind-ui-scale));padding:0;background-color:transparent;overflow:hidden}#starlight__search .pagefind-ui__search-clear:focus{outline:1px solid var(--sl-color-accent)}#starlight__search .pagefind-ui__search-clear:before{content:\"\";-webkit-mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='m13.41 12 6.3-6.29a1 1 0 1 0-1.42-1.42L12 10.59l-6.29-6.3a1 1 0 0 0-1.42 1.42l6.3 6.29-6.3 6.29a1 1 0 0 0 .33 1.64 1 1 0 0 0 1.09-.22l6.29-6.3 6.29 6.3a1 1 0 0 0 1.64-.33 1 1 0 0 0-.22-1.09L13.41 12Z'\/%3E%3C\/svg%3E\") center \/ 50% no-repeat;mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='m13.41 12 6.3-6.29a1 1 0 1 0-1.42-1.42L12 10.59l-6.29-6.3a1 1 0 0 0-1.42 1.42l6.3 6.29-6.3 6.29a1 1 0 0 0 .33 1.64 1 1 0 0 0 1.09-.22l6.29-6.3 6.29 6.3a1 1 0 0 0 1.64-.33 1 1 0 0 0-.22-1.09L13.41 12Z'\/%3E%3C\/svg%3E\") center \/ 50% no-repeat;background-color:var(--sl-color-text-accent);display:block;width:100%;height:100%}#starlight__search .pagefind-ui__results>*+*{margin-top:var(--sl-search-result-spacing)}#starlight__search .pagefind-ui__result{border:0;padding:0}#starlight__search .pagefind-ui__result-nested{position:relative;padding:var(--sl-search-result-nested-pad-block) var(--sl-search-result-pad-inline-end);padding-inline-start:var(--sl-search-result-pad-inline-start)}#starlight__search .pagefind-ui__result-title:not(:where(.pagefind-ui__result-nested *)),#starlight__search .pagefind-ui__result-nested{position:relative;background-color:var(--sl-color-black)}#starlight__search .pagefind-ui__result-title:not(:where(.pagefind-ui__result-nested *)):hover,#starlight__search .pagefind-ui__result-title:not(:where(.pagefind-ui__result-nested *)):focus-within,#starlight__search .pagefind-ui__result-nested:hover,#starlight__search .pagefind-ui__result-nested:focus-within{outline:1px solid var(--sl-color-accent-high)}#starlight__search .pagefind-ui__result-title:not(:where(.pagefind-ui__result-nested *)):focus-within,#starlight__search .pagefind-ui__result-nested:focus-within{background-color:var(--sl-color-accent-low)}#starlight__search .pagefind-ui__result-thumb,#starlight__search .pagefind-ui__result-inner{margin-top:0}#starlight__search .pagefind-ui__result-inner>:first-child{border-radius:var(--sl-search-corners) var(--sl-search-corners) 0 0}#starlight__search .pagefind-ui__result-inner>:last-child{border-radius:0 0 var(--sl-search-corners) var(--sl-search-corners)}#starlight__search .pagefind-ui__result-inner>.pagefind-ui__result-title{padding:var(--sl-search-result-pad-block) var(--sl-search-result-pad-inline-end);padding-inline-start:var(--sl-search-result-pad-inline-start)}#starlight__search .pagefind-ui__result-inner>.pagefind-ui__result-title:before{content:\"\";position:absolute;inset-block:0;inset-inline-start:var(--sl-search-page-icon-inline-start);width:var(--sl-search-page-icon-size);background:var(--sl-color-gray-3);-webkit-mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' fill='currentColor' viewBox='0 0 24 24'%3E%3Cpath d='M9 10h1a1 1 0 1 0 0-2H9a1 1 0 0 0 0 2Zm0 2a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2H9Zm11-3V8l-6-6a1 1 0 0 0-1 0H7a3 3 0 0 0-3 3v14a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V9Zm-6-4 3 3h-2a1 1 0 0 1-1-1V5Zm4 14a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h5v3a3 3 0 0 0 3 3h3v9Zm-3-3H9a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2Z'\/%3E%3C\/svg%3E\") center no-repeat;mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' fill='currentColor' viewBox='0 0 24 24'%3E%3Cpath d='M9 10h1a1 1 0 1 0 0-2H9a1 1 0 0 0 0 2Zm0 2a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2H9Zm11-3V8l-6-6a1 1 0 0 0-1 0H7a3 3 0 0 0-3 3v14a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V9Zm-6-4 3 3h-2a1 1 0 0 1-1-1V5Zm4 14a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h5v3a3 3 0 0 0 3 3h3v9Zm-3-3H9a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2Z'\/%3E%3C\/svg%3E\") center no-repeat}#starlight__search .pagefind-ui__result-inner{align-items:stretch;gap:1px}#starlight__search .pagefind-ui__result-link{position:unset;--pagefind-ui-text: var(--sl-color-white);font-weight:600}#starlight__search .pagefind-ui__result-link:hover{text-decoration:none}#starlight__search .pagefind-ui__result-nested .pagefind-ui__result-link:before{content:unset}#starlight__search .pagefind-ui__result-nested:before{content:\"\";position:absolute;inset-block:0;inset-inline-start:var(--sl-search-tree-diagram-inline-start);width:var(--sl-search-tree-diagram-size);background:var(--sl-color-gray-4);-webkit-mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' fill='none' stroke='currentColor' stroke-linecap='round' viewBox='0 0 16 1000' preserveAspectRatio='xMinYMin slice'%3E%3Cpath d='M8 0v1000m6-988H8'\/%3E%3C\/svg%3E\") 0% 0% \/ 100% no-repeat;mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' fill='none' stroke='currentColor' stroke-linecap='round' viewBox='0 0 16 1000' preserveAspectRatio='xMinYMin slice'%3E%3Cpath d='M8 0v1000m6-988H8'\/%3E%3C\/svg%3E\") 0% 0% \/ 100% no-repeat}#starlight__search .pagefind-ui__result-nested:last-of-type:before{-webkit-mask-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 16 16'%3E%3Cpath d='M8 0v12m6 0H8'\/%3E%3C\/svg%3E\");mask-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 16 16'%3E%3Cpath d='M8 0v12m6 0H8'\/%3E%3C\/svg%3E\")}[dir=rtl] .pagefind-ui__result-title:before,[dir=rtl] .pagefind-ui__result-nested:before{transform:scaleX(-1)}#starlight__search .pagefind-ui__result-link:after{content:\"\";position:absolute;inset:0}#starlight__search .pagefind-ui__result-excerpt{font-size:calc(1rem * var(--pagefind-ui-scale));overflow-wrap:anywhere}#starlight__search mark{color:var(--sl-color-gray-2);background-color:transparent;font-weight:600}#starlight__search .pagefind-ui__filter-value:before{border-color:var(--sl-color-text-invert)}#starlight__search .pagefind-ui__result-tags{background-color:var(--sl-color-black);margin-top:0;padding:var(--sl-search-result-nested-pad-block) var(--sl-search-result-pad-inline-end)}}@layer starlight.core{site-search:where(.astro-alqa3iwr){display:contents}button:where(.astro-alqa3iwr)[data-open-modal]{display:flex;align-items:center;gap:.5rem;border:0;background-color:transparent;color:var(--sl-color-gray-1);cursor:pointer;height:2.5rem;font-size:var(--sl-text-xl)}@media (min-width: 50rem){button:where(.astro-alqa3iwr)[data-open-modal]{border:1px solid var(--sl-color-gray-5);border-radius:.5rem;padding-inline-start:.75rem;padding-inline-end:.5rem;background-color:var(--sl-color-black);color:var(--sl-color-gray-2);font-size:var(--sl-text-sm);width:100%;max-width:22rem}button:where(.astro-alqa3iwr)[data-open-modal]:hover{border-color:var(--sl-color-gray-2);color:var(--sl-color-white)}button:where(.astro-alqa3iwr)[data-open-modal]>:last-child:where(.astro-alqa3iwr){margin-inline-start:auto}}button:where(.astro-alqa3iwr)>kbd:where(.astro-alqa3iwr){border-radius:.25rem;font-size:var(--sl-text-2xs);gap:.25em;padding-inline:.375rem;background-color:var(--sl-color-gray-6)}kbd:where(.astro-alqa3iwr){font-family:var(--__sl-font)}dialog:where(.astro-alqa3iwr){margin:0;background-color:var(--sl-color-gray-6);border:1px solid var(--sl-color-gray-5);width:100%;max-width:100%;height:100%;max-height:100%;box-shadow:var(--sl-shadow-lg)}dialog:where(.astro-alqa3iwr)[open]{display:flex}dialog:where(.astro-alqa3iwr)::backdrop{background-color:var(--sl-color-backdrop-overlay);-webkit-backdrop-filter:blur(.25rem);backdrop-filter:blur(.25rem)}.dialog-frame:where(.astro-alqa3iwr){position:relative;overflow:auto;flex-direction:column;flex-grow:1;gap:1rem;padding:1rem}button:where(.astro-alqa3iwr)[data-close-modal]{position:absolute;z-index:1;align-items:center;align-self:flex-end;height:calc(64px * var(--pagefind-ui-scale));padding:.25rem;border:0;background:transparent;cursor:pointer;color:var(--sl-color-text-accent)}#starlight__search:where(.astro-alqa3iwr){--pagefind-ui-primary: var(--sl-color-text);--pagefind-ui-text: var(--sl-color-gray-2);--pagefind-ui-font: var(--__sl-font);--pagefind-ui-background: var(--sl-color-black);--pagefind-ui-border: var(--sl-color-gray-5);--pagefind-ui-border-width: 1px;--pagefind-ui-tag: var(--sl-color-gray-5);--sl-search-cancel-space: 5rem}:root[data-theme=light] #starlight__search:where(.astro-alqa3iwr){--pagefind-ui-tag: var(--sl-color-gray-6)}@media (min-width: 50rem){#starlight__search:where(.astro-alqa3iwr){--sl-search-cancel-space: 0px}dialog:where(.astro-alqa3iwr){margin:4rem auto auto;border-radius:.5rem;width:90%;max-width:40rem;height:max-content;min-height:15rem;max-height:calc(100% - 8rem)}.dialog-frame:where(.astro-alqa3iwr){padding:1.5rem}}}@layer starlight.core{.site-title:where(.astro-2iiz2v5s){align-items:center;gap:var(--sl-nav-gap);font-size:var(--sl-text-h4);font-weight:600;color:var(--sl-color-text-accent);text-decoration:none;white-space:nowrap;min-width:0}span:where(.astro-2iiz2v5s){overflow:hidden}img:where(.astro-2iiz2v5s){height:calc(var(--sl-nav-height) - 2 * var(--sl-nav-pad-y));width:auto;max-width:100%;object-fit:contain;object-position:0 50%}}@layer starlight.core{a:where(.astro-kopmcwwf){color:var(--sl-color-text-accent);padding:.5em;margin:-.5em}a:where(.astro-kopmcwwf):hover{opacity:.66}}@layer starlight.core{.header:where(.astro-yhkywj6c){display:flex;gap:var(--sl-nav-gap);justify-content:space-between;align-items:center;height:100%}.title-wrapper:where(.astro-yhkywj6c){overflow:clip;padding:.25rem;margin:-.25rem;min-width:0}.right-group:where(.astro-yhkywj6c),.social-icons:where(.astro-yhkywj6c){gap:1rem;align-items:center}.social-icons:where(.astro-yhkywj6c):after{content:\"\";height:2rem;border-inline-end:1px solid var(--sl-color-gray-5)}@media (min-width: 50rem){:root[data-has-sidebar]{--__sidebar-pad: calc(2 * var(--sl-nav-pad-x))}:root:not([data-has-toc]){--__toc-width: 0rem}.header:where(.astro-yhkywj6c){--__sidebar-width: max(0rem, var(--sl-content-inline-start, 0rem) - var(--sl-nav-pad-x));--__main-column-fr: calc( ( 100% + var(--__sidebar-pad, 0rem) - var(--__toc-width, var(--sl-sidebar-width)) - (2 * var(--__toc-width, var(--sl-nav-pad-x))) - var(--sl-content-inline-start, 0rem) - var(--sl-content-width) ) \/ 2 );display:grid;grid-template-columns:minmax(calc(var(--__sidebar-width) + max(0rem,var(--__main-column-fr) - var(--sl-nav-gap))),auto) 1fr auto;align-content:center}}}@layer starlight.core{.hero:where(.astro-rvdbmh3f){display:grid;align-items:center;gap:1rem;padding-bottom:1rem}.hero:where(.astro-rvdbmh3f)>img:where(.astro-rvdbmh3f),.hero:where(.astro-rvdbmh3f)>.hero-html:where(.astro-rvdbmh3f){object-fit:contain;width:min(70%,20rem);height:auto;margin-inline:auto}.stack:where(.astro-rvdbmh3f){flex-direction:column;gap:clamp(1.5rem,calc(1.5rem + 1vw),2rem);text-align:center}.copy:where(.astro-rvdbmh3f){flex-direction:column;gap:1rem;align-items:center}.copy:where(.astro-rvdbmh3f)>:where(.astro-rvdbmh3f){max-width:50ch}h1:where(.astro-rvdbmh3f){font-size:clamp(var(--sl-text-3xl),calc(.25rem + 5vw),var(--sl-text-6xl));line-height:var(--sl-line-height-headings);font-weight:600;color:var(--sl-color-white)}.tagline:where(.astro-rvdbmh3f){font-size:clamp(var(--sl-text-base),calc(.0625rem + 2vw),var(--sl-text-xl));color:var(--sl-color-gray-2)}.actions:where(.astro-rvdbmh3f){gap:1rem 2rem;flex-wrap:wrap;justify-content:center}@media (min-width: 50rem){.hero:where(.astro-rvdbmh3f){grid-template-columns:7fr 4fr;gap:3%;padding-block:clamp(2.5rem,calc(1rem + 10vmin),10rem)}.hero:where(.astro-rvdbmh3f)>img:where(.astro-rvdbmh3f),.hero:where(.astro-rvdbmh3f)>.hero-html:where(.astro-rvdbmh3f){order:2;width:min(100%,25rem)}.stack:where(.astro-rvdbmh3f){text-align:start}.copy:where(.astro-rvdbmh3f){align-items:flex-start}.actions:where(.astro-rvdbmh3f){justify-content:flex-start}}}@layer starlight.content{.sl-markdown-content :not(a,strong,em,del,span,input,code,br)+:not(a,strong,em,del,span,input,code,br,:where(.not-content *)){margin-top:1rem}.sl-markdown-content :not(h1,h2,h3,h4,h5,h6)+:is(h1,h2,h3,h4,h5,h6):not(:where(.not-content *)){margin-top:1.5em}.sl-markdown-content li+li:not(:where(.not-content *)),.sl-markdown-content dt+dt:not(:where(.not-content *)),.sl-markdown-content dt+dd:not(:where(.not-content *)),.sl-markdown-content dd+dd:not(:where(.not-content *)){margin-top:.25rem}.sl-markdown-content li:not(:where(.not-content *)){overflow-wrap:anywhere}.sl-markdown-content li>:is(:last-child:not(li,ul,ol,a,strong,em,del,span,input,code,br,script,:where(.not-content *)),:not(script):has(~script:last-child):not(:has(~:not(script)))){margin-bottom:1.25rem}.sl-markdown-content dt:not(:where(.not-content *)){font-weight:700}.sl-markdown-content dd:not(:where(.not-content *)){padding-inline-start:1rem}.sl-markdown-content :is(h1,h2,h3,h4,h5,h6):not(:where(.not-content *)){color:var(--sl-color-white);line-height:var(--sl-line-height-headings);font-weight:600}.sl-markdown-content :is(img,picture,video,canvas,svg,iframe):not(:where(.not-content *)){display:block;max-width:100%;height:auto}.sl-markdown-content h1:not(:where(.not-content *)){font-size:var(--sl-text-h1)}.sl-markdown-content h2:not(:where(.not-content *)){font-size:var(--sl-text-h2)}.sl-markdown-content h3:not(:where(.not-content *)){font-size:var(--sl-text-h3)}.sl-markdown-content h4:not(:where(.not-content *)){font-size:var(--sl-text-h4)}.sl-markdown-content h5:not(:where(.not-content *)){font-size:var(--sl-text-h5)}.sl-markdown-content h6:not(:where(.not-content *)){font-size:var(--sl-text-h6)}.sl-markdown-content a:not(:where(.not-content *)){color:var(--sl-color-text-accent)}.sl-markdown-content a:hover:not(:where(.not-content *)){color:var(--sl-color-white)}.sl-markdown-content code:not(:where(.not-content *)){background-color:var(--sl-color-bg-inline-code);margin-block:-.125rem;padding:.125rem .375rem;font-size:var(--sl-text-code-sm)}.sl-markdown-content :is(h1,h2,h3,h4,h5,h6) code{font-size:inherit}.sl-markdown-content pre:not(:where(.not-content *)){border:1px solid var(--sl-color-gray-5);padding:.75rem 1rem;font-size:var(--sl-text-code);tab-size:2}.sl-markdown-content pre code:not(:where(.not-content *)){all:unset;font-family:var(--__sl-font-mono)}.sl-markdown-content blockquote:not(:where(.not-content *)){border-inline-start:1px solid var(--sl-color-gray-5);padding-inline-start:1rem}.sl-markdown-content table:not(:where(.not-content *)){display:block;overflow:auto;border-spacing:0}.sl-markdown-content :is(th,td):not(:where(.not-content *)){border-bottom:1px solid var(--sl-color-gray-5);padding:.5rem 1rem;vertical-align:baseline}.sl-markdown-content :is(th:first-child,td:first-child):not(:where(.not-content *)){padding-inline-start:0}.sl-markdown-content :is(th:last-child,td:last-child):not(:where(.not-content *)){padding-inline-end:0}.sl-markdown-content th:not(:where(.not-content *)){color:var(--sl-color-white);font-weight:600}.sl-markdown-content th:not([align]):not(:where(.not-content *)){text-align:start}.sl-markdown-content .starlight-aside :is(th,td,hr,blockquote):not(:where(.not-content *)){border-color:var(--sl-color-gray-4)}@supports (border-color: color-mix(in srgb,var(--sl-color-asides-text-accent) 30%,transparent)){.sl-markdown-content .starlight-aside :is(th,td,hr,blockquote):not(:where(.not-content *)){border-color:color-mix(in srgb,var(--sl-color-asides-text-accent) 30%,transparent)}}@supports (border-color: color-mix(in srgb,var(--sl-color-asides-text-accent) 12%,transparent)){.sl-markdown-content .starlight-aside code:not(:where(.not-content *)){background-color:color-mix(in srgb,var(--sl-color-asides-text-accent) 12%,transparent)}}.sl-markdown-content hr:not(:where(.not-content *)){border:0;border-bottom:1px solid var(--sl-color-hairline)}.sl-markdown-content details:not(:where(.not-content *)){--sl-details-border-color: var(--sl-color-gray-5);--sl-details-border-color--hover: var(--sl-color-text-accent);border-inline-start:2px solid var(--sl-details-border-color);padding-inline-start:1rem}.sl-markdown-content details:not([open]):hover:not(:where(.not-content *)),.sl-markdown-content details:has(>summary:hover):not(:where(.not-content *)){border-color:var(--sl-details-border-color--hover)}.sl-markdown-content summary:not(:where(.not-content *)){color:var(--sl-color-white);cursor:pointer;display:block;font-weight:600;margin-inline-start:-.5rem;padding-inline-start:.5rem}.sl-markdown-content details[open]>summary:not(:where(.not-content *)){margin-bottom:1rem}.sl-markdown-content summary:not(:where(.not-content *))::marker,.sl-markdown-content summary:not(:where(.not-content *))::-webkit-details-marker{display:none}.sl-markdown-content summary:not(:where(.not-content *)):before{--sl-details-marker-size: 1.25rem;background-color:currentColor;content:\"\";display:inline-block;height:var(--sl-details-marker-size);width:var(--sl-details-marker-size);margin-inline:calc((var(--sl-details-marker-size) \/ 4) * -1) .25rem;vertical-align:middle;-webkit-mask-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14.8 11.3 10.6 7a1 1 0 1 0-1.4 1.5l3.5 3.5-3.5 3.5a1 1 0 0 0 0 1.4 1 1 0 0 0 .7.3 1 1 0 0 0 .7-.3l4.2-4.2a1 1 0 0 0 0-1.4Z'\/%3E%3C\/svg%3E%0A\");mask-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14.8 11.3 10.6 7a1 1 0 1 0-1.4 1.5l3.5 3.5-3.5 3.5a1 1 0 0 0 0 1.4 1 1 0 0 0 .7.3 1 1 0 0 0 .7-.3l4.2-4.2a1 1 0 0 0 0-1.4Z'\/%3E%3C\/svg%3E%0A\");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}@media (prefers-reduced-motion: no-preference){.sl-markdown-content summary:not(:where(.not-content *)):before{transition:transform .2s ease-in-out}}.sl-markdown-content details[open]>summary:not(:where(.not-content *)):before{transform:rotate(90deg)}[dir=rtl] .sl-markdown-content summary:not(:where(.not-content *)):before,.sl-markdown-content [dir=rtl] summary:not(:where(.not-content *)):before{transform:rotate(180deg)}.sl-markdown-content summary:not(:where(.not-content *)) p:only-child{display:inline}.sl-markdown-content .starlight-aside details:not(:where(.not-content *)){--sl-details-border-color: var(--sl-color-asides-border);--sl-details-border-color--hover: var(--sl-color-asides-text-accent)}}@layer starlight.core{[data-mobile-menu-expanded]{overflow:hidden}@media (min-width: 50rem){[data-mobile-menu-expanded]{overflow:auto}}}@layer starlight.core{button:where(.astro-o7d4zodq){position:fixed;top:calc((var(--sl-nav-height) - var(--sl-menu-button-size)) \/ 2);inset-inline-end:var(--sl-nav-pad-x);z-index:var(--sl-z-index-navbar);border:0;border-radius:50%;width:var(--sl-menu-button-size);height:var(--sl-menu-button-size);padding:.5rem;background-color:var(--sl-color-white);color:var(--sl-color-black);box-shadow:var(--sl-shadow-md);cursor:pointer}:where(.astro-o7d4zodq)[aria-expanded=true] button:where(.astro-o7d4zodq){background-color:var(--sl-color-gray-2);box-shadow:none}:where(.astro-o7d4zodq)[aria-expanded=true] button:where(.astro-o7d4zodq) .open-menu:where(.astro-o7d4zodq){display:none}:not([aria-expanded=true]):where(.astro-o7d4zodq) button:where(.astro-o7d4zodq) .close-menu:where(.astro-o7d4zodq){display:none}[data-theme=light] button:where(.astro-o7d4zodq){background-color:var(--sl-color-black);color:var(--sl-color-white)}[data-theme=light] :where(.astro-o7d4zodq)[aria-expanded=true] button:where(.astro-o7d4zodq){background-color:var(--sl-color-gray-5)}}@layer starlight.core{.page:where(.astro-w2cw6nby){flex-direction:column;min-height:100vh}.header:where(.astro-w2cw6nby){z-index:var(--sl-z-index-navbar);position:fixed;inset-inline-start:0;inset-block-start:0;width:100%;height:var(--sl-nav-height);border-bottom:1px solid var(--sl-color-hairline-shade);padding:var(--sl-nav-pad-y) var(--sl-nav-pad-x);padding-inline-end:var(--sl-nav-pad-x);background-color:var(--sl-color-bg-nav)}[data-has-sidebar] .header:where(.astro-w2cw6nby){padding-inline-end:calc(var(--sl-nav-gap) + var(--sl-nav-pad-x) + var(--sl-menu-button-size))}.sidebar-pane:where(.astro-w2cw6nby){visibility:var(--sl-sidebar-visibility, hidden);position:fixed;z-index:var(--sl-z-index-menu);inset-block:var(--sl-nav-height) 0;inset-inline-start:0;width:100%;background-color:var(--sl-color-black);overflow-y:auto}[aria-expanded=true]~.sidebar-pane:where(.astro-w2cw6nby){--sl-sidebar-visibility: visible}.sidebar-content:where(.astro-w2cw6nby){height:100%;min-height:max-content;padding:1rem var(--sl-sidebar-pad-x) 0;flex-direction:column;gap:1rem}@media (min-width: 50rem){.sidebar-content:where(.astro-w2cw6nby):after{content:\"\";padding-bottom:1px}}.main-frame:where(.astro-w2cw6nby){padding-top:calc(var(--sl-nav-height) + var(--sl-mobile-toc-height));padding-inline-start:var(--sl-content-inline-start)}@media (min-width: 50rem){[data-has-sidebar] .header:where(.astro-w2cw6nby){padding-inline-end:var(--sl-nav-pad-x)}.sidebar-pane:where(.astro-w2cw6nby){--sl-sidebar-visibility: visible;width:var(--sl-sidebar-width);background-color:var(--sl-color-bg-sidebar);border-inline-end:1px solid var(--sl-color-hairline-shade)}}}@layer starlight.core{ul:where(.astro-dxct6eet){padding:0;list-style:none}a:where(.astro-dxct6eet){--pad-inline: .5rem;display:block;border-radius:.25rem;padding-block:.25rem;padding-inline:calc(1rem * var(--depth) + var(--pad-inline)) var(--pad-inline);line-height:1.25}a:where(.astro-dxct6eet)[aria-current=true]{color:var(--sl-color-text-accent)}.isMobile:where(.astro-dxct6eet) a:where(.astro-dxct6eet){--pad-inline: 1rem;display:flex;justify-content:space-between;gap:var(--pad-inline);border-top:1px solid var(--sl-color-gray-6);border-radius:0;padding-block:.5rem;color:var(--sl-color-text);font-size:var(--sl-text-sm);text-decoration:none;outline-offset:var(--sl-outline-offset-inside)}.isMobile:where(.astro-dxct6eet):first-child>li:where(.astro-dxct6eet):first-child>a:where(.astro-dxct6eet){border-top:0}.isMobile:where(.astro-dxct6eet) a:where(.astro-dxct6eet)[aria-current=true],.isMobile:where(.astro-dxct6eet) a:where(.astro-dxct6eet)[aria-current=true]:hover,.isMobile:where(.astro-dxct6eet) a:where(.astro-dxct6eet)[aria-current=true]:focus{color:var(--sl-color-white);background-color:unset}.isMobile:where(.astro-dxct6eet) a:where(.astro-dxct6eet)[aria-current=true]:after{content:\"\";width:1rem;background-color:var(--sl-color-text-accent);-webkit-mask-image:url(data:image\/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNCAxNCc+PHBhdGggZD0nTTEwLjkxNCA0LjIwNmEuNTgzLjU4MyAwIDAgMC0uODI4IDBMNS43NCA4LjU1NyAzLjkxNCA2LjcyNmEuNTk2LjU5NiAwIDAgMC0uODI4Ljg1N2wyLjI0IDIuMjRhLjU4My41ODMgMCAwIDAgLjgyOCAwbDQuNzYtNC43NmEuNTgzLjU4MyAwIDAgMCAwLS44NTdaJy8+PC9zdmc+Cg==);mask-image:url(data:image\/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNCAxNCc+PHBhdGggZD0nTTEwLjkxNCA0LjIwNmEuNTgzLjU4MyAwIDAgMC0uODI4IDBMNS43NCA4LjU1NyAzLjkxNCA2LjcyNmEuNTk2LjU5NiAwIDAgMC0uODI4Ljg1N2wyLjI0IDIuMjRhLjU4My41ODMgMCAwIDAgLjgyOCAwbDQuNzYtNC43NmEuNTgzLjU4MyAwIDAgMCAwLS44NTdaJy8+PC9zdmc+Cg==);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;flex-shrink:0}}@layer starlight.core{nav:where(.astro-xsfthomx){position:fixed;z-index:var(--sl-z-index-toc);top:calc(var(--sl-nav-height) - 1px);inset-inline:0;border-top:1px solid var(--sl-color-gray-5);background-color:var(--sl-color-bg-nav)}@media (min-width: 50rem){nav:where(.astro-xsfthomx){inset-inline-start:var(--sl-content-inline-start, 0)}}summary:where(.astro-xsfthomx){gap:.5rem;align-items:center;height:var(--sl-mobile-toc-height);border-bottom:1px solid var(--sl-color-hairline-shade);padding:.5rem 1rem;font-size:var(--sl-text-xs);outline-offset:var(--sl-outline-offset-inside)}summary:where(.astro-xsfthomx)::marker,summary:where(.astro-xsfthomx)::-webkit-details-marker{display:none}.toggle:where(.astro-xsfthomx){flex-shrink:0;gap:1rem;align-items:center;justify-content:space-between;border:1px solid var(--sl-color-gray-5);border-radius:.5rem;padding-block:.5rem;padding-inline-start:.75rem;padding-inline-end:.5rem;line-height:1;background-color:var(--sl-color-black);user-select:none;cursor:pointer}details:where(.astro-xsfthomx)[open] .toggle:where(.astro-xsfthomx){color:var(--sl-color-white);border-color:var(--sl-color-accent)}details:where(.astro-xsfthomx) .toggle:where(.astro-xsfthomx):hover{color:var(--sl-color-white);border-color:var(--sl-color-gray-2)}[dir=rtl] .caret:where(.astro-xsfthomx){transform:rotate(180deg)}details:where(.astro-xsfthomx)[open] .caret:where(.astro-xsfthomx){transform:rotate(90deg)}.display-current:where(.astro-xsfthomx){white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:var(--sl-color-white)}.dropdown:where(.astro-xsfthomx){--border-top: 1px;margin-top:calc(-1 * var(--border-top));border:var(--border-top) solid var(--sl-color-gray-6);border-top-color:var(--sl-color-hairline-shade);max-height:calc(85vh - var(--sl-nav-height) - var(--sl-mobile-toc-height));overflow-y:auto;background-color:var(--sl-color-black);box-shadow:var(--sl-shadow-md);overscroll-behavior:contain}}@layer starlight.core{.right-sidebar-panel:where(.astro-3pxen2na){padding:1rem var(--sl-sidebar-pad-x)}.sl-container:where(.astro-3pxen2na){width:calc(var(--sl-sidebar-width) - 2 * var(--sl-sidebar-pad-x))}.right-sidebar-panel:where(.astro-3pxen2na) h2{color:var(--sl-color-white);font-size:var(--sl-text-h5);font-weight:600;line-height:var(--sl-line-height-headings);margin-bottom:.5rem}.right-sidebar-panel:where(.astro-3pxen2na) :where(a){display:block;font-size:var(--sl-text-xs);text-decoration:none;color:var(--sl-color-gray-3);overflow-wrap:anywhere}.right-sidebar-panel:where(.astro-3pxen2na) :where(a):hover{color:var(--sl-color-white)}@media (min-width: 72rem){.sl-container:where(.astro-3pxen2na){max-width:calc(((100vw - var(--sl-sidebar-width) - 2 * var(--sl-content-pad-x) - 2 * var(--sl-sidebar-pad-x)) * .25))}}}@layer starlight.core{h1:where(.astro-66r2nm36){margin-top:1rem;font-size:var(--sl-text-h1);line-height:var(--sl-line-height-headings);font-weight:600;color:var(--sl-color-white)}}@layer starlight.core{.social-icons:where(.astro-xuq6p55k){display:flex;margin-inline-end:auto;gap:1rem;align-items:center;padding-block:1rem}.social-icons:where(.astro-xuq6p55k):empty{display:none}.mobile-preferences:where(.astro-xuq6p55k){justify-content:space-between;flex-wrap:wrap;border-top:1px solid var(--sl-color-gray-6);column-gap:1rem;padding:.5rem 0}}@layer starlight.core{sl-sidebar-state-persist:where(.astro-zy2jkij7){display:contents}}@layer starlight.core{ul:where(.astro-kjjqd5fy){--sl-sidebar-item-padding-inline: .5rem;list-style:none;padding:0}li:where(.astro-kjjqd5fy){overflow-wrap:anywhere}ul:where(.astro-kjjqd5fy) ul:where(.astro-kjjqd5fy) li:where(.astro-kjjqd5fy){margin-inline-start:var(--sl-sidebar-item-padding-inline);border-inline-start:1px solid var(--sl-color-hairline-light);padding-inline-start:var(--sl-sidebar-item-padding-inline)}.large:where(.astro-kjjqd5fy){font-size:var(--sl-text-lg);font-weight:600;color:var(--sl-color-white)}.top-level:where(.astro-kjjqd5fy)>li:where(.astro-kjjqd5fy)+li:where(.astro-kjjqd5fy){margin-top:.75rem}summary:where(.astro-kjjqd5fy){display:flex;align-items:center;justify-content:space-between;padding:.2em var(--sl-sidebar-item-padding-inline);line-height:1.4;cursor:pointer;user-select:none}summary:where(.astro-kjjqd5fy)::marker,summary:where(.astro-kjjqd5fy)::-webkit-details-marker{display:none}.caret:where(.astro-kjjqd5fy){transition:transform .2s ease-in-out;flex-shrink:0}[dir=rtl] .caret:where(.astro-kjjqd5fy){transform:rotate(180deg)}:where(.astro-kjjqd5fy)[open]>summary:where(.astro-kjjqd5fy) .caret:where(.astro-kjjqd5fy){transform:rotate(90deg)}a:where(.astro-kjjqd5fy){display:block;border-radius:.25rem;text-decoration:none;color:var(--sl-color-gray-2);padding:.3em var(--sl-sidebar-item-padding-inline);line-height:1.4}a:where(.astro-kjjqd5fy):hover,a:where(.astro-kjjqd5fy):focus{color:var(--sl-color-white)}:where(.astro-kjjqd5fy)[aria-current=page],:where(.astro-kjjqd5fy)[aria-current=page]:hover,:where(.astro-kjjqd5fy)[aria-current=page]:focus{font-weight:600;color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent)}a:where(.astro-kjjqd5fy)>:where(.astro-kjjqd5fy):not(:last-child),.group-label:where(.astro-kjjqd5fy)>:where(.astro-kjjqd5fy):not(:last-child){margin-inline-end:.25em}@media (min-width: 50rem){.top-level:where(.astro-kjjqd5fy)>li:where(.astro-kjjqd5fy)+li:where(.astro-kjjqd5fy){margin-top:.5rem}.large:where(.astro-kjjqd5fy){font-size:var(--sl-text-base)}a:where(.astro-kjjqd5fy){font-size:var(--sl-text-sm)}}}@layer starlight.core{a:where(.astro-25y2pg4e){clip:rect(0,0,0,0);position:fixed;top:.75rem;inset-inline-start:.75rem}a:where(.astro-25y2pg4e):focus{clip:unset;z-index:var(--sl-z-index-skiplink);display:block;padding:.5rem 1rem;text-decoration:none;color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent);box-shadow:var(--sl-shadow-lg)}}@layer starlight.core{.main-pane:where(.astro-sxb7xv7b){isolation:isolate}@media (min-width: 72rem){.right-sidebar-container:where(.astro-sxb7xv7b){order:2;position:relative;width:calc(var(--sl-sidebar-width) + (100% - var(--sl-content-width) - var(--sl-sidebar-width)) \/ 2)}.right-sidebar:where(.astro-sxb7xv7b){position:fixed;top:0;border-inline-start:1px solid var(--sl-color-hairline);padding-top:var(--sl-nav-height);width:100%;height:100vh;overflow-y:auto;scrollbar-width:none}.main-pane:where(.astro-sxb7xv7b){width:100%}[data-has-sidebar][data-has-toc] .main-pane:where(.astro-sxb7xv7b){--sl-content-margin-inline: auto 0;order:1;width:calc(var(--sl-content-width) + (100% - var(--sl-content-width) - var(--sl-sidebar-width)) \/ 2)}}}html:not([data-has-toc]){--sl-mobile-toc-height: 0rem}html:not([data-has-sidebar]){--sl-content-width: 67.5rem}html{scroll-padding-top:calc(1.5rem + var(--sl-nav-height) + var(--sl-mobile-toc-height))}main:where(.astro-n7hj6ltz){padding-bottom:3vh}@media (min-width: 50em){:where(.astro-n7hj6ltz)[data-has-sidebar]{--sl-content-inline-start: var(--sl-sidebar-width)}}@media (min-width: 72em){html{scroll-padding-top:calc(1.5rem + var(--sl-nav-height))}}"}]}}},{"url":"https:\/\/contribute.freecodecamp.org\/_astro\/print.DNXP8c50.css","ast":{"type":"stylesheet","stylesheet":{"rules":[{"type":"media","media":"print","rules":[{"type":"rule","selectors":[":root"],"declarations":[{"type":"declaration","property":"--sl-color-white","value":"hsl(224, 10%, 10%)"},{"type":"declaration","property":"--sl-color-gray-1","value":"hsl(224, 14%, 16%)"},{"type":"declaration","property":"--sl-color-gray-2","value":"hsl(224, 10%, 23%)"},{"type":"declaration","property":"--sl-color-gray-3","value":"hsl(224, 7%, 36%)"},{"type":"declaration","property":"--sl-color-gray-4","value":"hsl(224, 6%, 56%)"},{"type":"declaration","property":"--sl-color-gray-5","value":"hsl(224, 6%, 77%)"},{"type":"declaration","property":"--sl-color-gray-6","value":"hsl(224, 20%, 94%)"},{"type":"declaration","property":"--sl-color-gray-7","value":"hsl(224, 19%, 97%)"},{"type":"declaration","property":"--sl-color-black","value":"hsl(0, 0%, 100%)"},{"type":"declaration","property":"--sl-color-orange-high","value":"hsl(var(--sl-hue-orange), 80%, 25%)"},{"type":"declaration","property":"--sl-color-orange","value":"hsl(var(--sl-hue-orange), 90%, 60%)"},{"type":"declaration","property":"--sl-color-orange-low","value":"hsl(var(--sl-hue-orange), 90%, 88%)"},{"type":"declaration","property":"--sl-color-green-high","value":"hsl(var(--sl-hue-green), 80%, 22%)"},{"type":"declaration","property":"--sl-color-green","value":"hsl(var(--sl-hue-green), 90%, 46%)"},{"type":"declaration","property":"--sl-color-green-low","value":"hsl(var(--sl-hue-green), 85%, 90%)"},{"type":"declaration","property":"--sl-color-blue-high","value":"hsl(var(--sl-hue-blue), 80%, 30%)"},{"type":"declaration","property":"--sl-color-blue","value":"hsl(var(--sl-hue-blue), 90%, 60%)"},{"type":"declaration","property":"--sl-color-blue-low","value":"hsl(var(--sl-hue-blue), 88%, 90%)"},{"type":"declaration","property":"--sl-color-purple-high","value":"hsl(var(--sl-hue-purple), 90%, 30%)"},{"type":"declaration","property":"--sl-color-purple","value":"hsl(var(--sl-hue-purple), 90%, 60%)"},{"type":"declaration","property":"--sl-color-purple-low","value":"hsl(var(--sl-hue-purple), 80%, 90%)"},{"type":"declaration","property":"--sl-color-red-high","value":"hsl(var(--sl-hue-red), 80%, 30%)"},{"type":"declaration","property":"--sl-color-red","value":"hsl(var(--sl-hue-red), 90%, 60%)"},{"type":"declaration","property":"--sl-color-red-low","value":"hsl(var(--sl-hue-red), 80%, 90%)"},{"type":"declaration","property":"--sl-color-accent-high","value":"hsl(234, 80%, 30%)"},{"type":"declaration","property":"--sl-color-accent","value":"hsl(234, 90%, 60%)"},{"type":"declaration","property":"--sl-color-accent-low","value":"hsl(234, 88%, 90%)"},{"type":"declaration","property":"--sl-color-text-accent","value":"var(--sl-color-accent)"},{"type":"declaration","property":"--sl-color-text-invert","value":"var(--sl-color-black)"},{"type":"declaration","property":"--sl-color-bg-nav","value":"var(--sl-color-gray-7)"},{"type":"declaration","property":"--sl-color-bg-sidebar","value":"var(--sl-color-bg)"},{"type":"declaration","property":"--sl-color-bg-inline-code","value":"var(--sl-color-gray-6)"},{"type":"declaration","property":"--sl-color-bg-accent","value":"var(--sl-color-accent)"},{"type":"declaration","property":"--sl-color-hairline-light","value":"var(--sl-color-gray-6)"},{"type":"declaration","property":"--sl-color-hairline-shade","value":"var(--sl-color-gray-6)"},{"type":"declaration","property":"--sl-color-backdrop-overlay","value":"hsla(225, 9%, 36%, .66)"},{"type":"declaration","property":"--sl-shadow-sm","value":"none"},{"type":"declaration","property":"--sl-shadow-md","value":"none"},{"type":"declaration","property":"--sl-shadow-lg","value":"none"}]},{"type":"rule","selectors":[".print\\:hidden"],"declarations":[{"type":"declaration","property":"display","value":"none"}]},{"type":"rule","selectors":[".print\\:flex"],"declarations":[{"type":"declaration","property":"display","value":"flex"}]},{"type":"rule","selectors":[".print\\:block"],"declarations":[{"type":"declaration","property":"display","value":"block"}]},{"type":"rule","selectors":["main"],"declarations":[{"type":"declaration","property":"padding-bottom","value":"0"}]},{"type":"rule","selectors":["main>.content-panel"],"declarations":[{"type":"declaration","property":"padding-block-start","value":"0"}]},{"type":"rule","selectors":[".content-panel+.content-panel"],"declarations":[{"type":"declaration","property":"border","value":"0"}]},{"type":"rule","selectors":[".page>header"],"declarations":[{"type":"declaration","property":"position","value":"relative"}]},{"type":"rule","selectors":[".page>.main-frame"],"declarations":[{"type":"declaration","property":"padding-top","value":"0"},{"type":"declaration","property":"padding-inline-start","value":"0"}]},{"type":"rule","selectors":[".main-pane"],"declarations":[{"type":"declaration","property":"--sl-sidebar-width","value":"0px"},{"type":"declaration","property":"--sl-content-width","value":"100%"}]},{"type":"rule","selectors":[".sl-banner"],"declarations":[{"type":"declaration","property":"--sl-color-banner-text","value":"var(--sl-color-white)"},{"type":"declaration","property":"background-color","value":"transparent"}]},{"type":"rule","selectors":[".sl-markdown-content :is(h1,h2,h3,h4,h5,h6)"],"declarations":[{"type":"declaration","property":"break-after","value":"avoid"}]},{"type":"rule","selectors":[".sl-markdown-content :is(p,li)"],"declarations":[{"type":"declaration","property":"orphans","value":"2"},{"type":"declaration","property":"widows","value":"2"}]},{"type":"rule","selectors":[".sl-markdown-content pre"],"declarations":[{"type":"declaration","property":"overflow-x","value":"hidden"},{"type":"declaration","property":"white-space","value":"pre-wrap"}]},{"type":"rule","selectors":[".sl-markdown-content .expressive-code",".sl-markdown-content figure",".sl-markdown-content pre"],"declarations":[{"type":"declaration","property":"break-inside","value":"avoid"}]},{"type":"rule","selectors":[".expressive-code .frame.is-terminal .header:before"],"declarations":[{"type":"declaration","property":"box-shadow","value":"inset 99rem 99rem var(--sl-color-gray-5)"}]},{"type":"rule","selectors":[".expressive-code .frame.has-title:not(.is-terminal) .header"],"declarations":[{"type":"declaration","property":"background","value":"transparent"},{"type":"declaration","property":"border-bottom","value":"1px solid var(--sl-color-gray-6)"}]},{"type":"rule","selectors":[".expressive-code .frame.has-title:not(.is-terminal) .title"],"declarations":[{"type":"declaration","property":"background","value":"transparent"}]},{"type":"rule","selectors":[".expressive-code .frame.has-title:not(.is-terminal) .title:after"],"declarations":[{"type":"declaration","property":"border-top","value":"0"}]},{"type":"rule","selectors":[".expressive-code .copy"],"declarations":[{"type":"declaration","property":"display","value":"none"}]},{"type":"rule","selectors":[".sl-markdown-content code:not(:where(.not-content *))"],"declarations":[{"type":"declaration","property":"background-color","value":"transparent"},{"type":"declaration","property":"padding","value":"0"},{"type":"declaration","property":"margin-block","value":"unset"},{"type":"declaration","property":"font-size","value":".9375em"}]},{"type":"rule","selectors":[".sl-badge"],"declarations":[{"type":"declaration","property":"background","value":"transparent"},{"type":"declaration","property":"color","value":"var(--sl-color-white)"}]},{"type":"rule","selectors":["starlight-file-tree"],"declarations":[{"type":"declaration","property":"break-inside","value":"avoid"}]},{"type":"rule","selectors":["starlight-file-tree .highlight"],"declarations":[{"type":"declaration","property":"outline","value":"3px solid var(--sl-color-accent-low)"},{"type":"declaration","property":"color","value":"var(--sl-color-text)"},{"type":"declaration","property":"background-color","value":"transparent"}]},{"type":"rule","selectors":[".starlight-aside"],"declarations":[{"type":"declaration","property":"break-inside","value":"avoid"}]},{"type":"rule","selectors":[".sl-link-button.primary"],"declarations":[{"type":"declaration","property":"background","value":"transparent"},{"type":"declaration","property":"border-color","value":"var(--sl-color-white)"},{"type":"declaration","property":"color","value":"var(--sl-color-white)"}]},{"type":"rule","selectors":["starlight-tabs"],"declarations":[{"type":"declaration","property":"break-inside","value":"avoid"}]},{"type":"rule","selectors":[".sl-steps>li:after"],"declarations":[{"type":"declaration","property":"box-shadow","value":"inset 99rem 99rem var(--sl-color-hairline-light)"}]}]}],"parsingErrors":[]}}},{"url":"block","ast":{"type":"stylesheet","stylesheet":{"rules":[{"type":"rule","selectors":["@layer starlight.components"]},{"type":"rule","selectors":[":root"],"declarations":[{"type":"declaration","property":"--sl-badge-default-border","value":"var(--sl-color-accent)"},{"type":"declaration","property":"--sl-badge-default-bg","value":"var(--sl-color-accent-low)"},{"type":"declaration","property":"--sl-badge-default-text","value":"#fff"},{"type":"declaration","property":"--sl-badge-note-border","value":"var(--sl-color-blue)"},{"type":"declaration","property":"--sl-badge-note-bg","value":"var(--sl-color-blue-low)"},{"type":"declaration","property":"--sl-badge-note-text","value":"#fff"},{"type":"declaration","property":"--sl-badge-danger-border","value":"var(--sl-color-red)"},{"type":"declaration","property":"--sl-badge-danger-bg","value":"var(--sl-color-red-low)"},{"type":"declaration","property":"--sl-badge-danger-text","value":"#fff"},{"type":"declaration","property":"--sl-badge-success-border","value":"var(--sl-color-green)"},{"type":"declaration","property":"--sl-badge-success-bg","value":"var(--sl-color-green-low)"},{"type":"declaration","property":"--sl-badge-success-text","value":"#fff"},{"type":"declaration","property":"--sl-badge-caution-border","value":"var(--sl-color-orange)"},{"type":"declaration","property":"--sl-badge-caution-bg","value":"var(--sl-color-orange-low)"},{"type":"declaration","property":"--sl-badge-caution-text","value":"#fff"},{"type":"declaration","property":"--sl-badge-tip-border","value":"var(--sl-color-purple)"},{"type":"declaration","property":"--sl-badge-tip-bg","value":"var(--sl-color-purple-low)"},{"type":"declaration","property":"--sl-badge-tip-text","value":"#fff"}]},{"type":"rule","selectors":["[data-theme=light]:root"],"declarations":[{"type":"declaration","property":"--sl-badge-default-bg","value":"var(--sl-color-accent-high)"},{"type":"declaration","property":"--sl-badge-note-bg","value":"var(--sl-color-blue-high)"},{"type":"declaration","property":"--sl-badge-danger-bg","value":"var(--sl-color-red-high)"},{"type":"declaration","property":"--sl-badge-success-bg","value":"var(--sl-color-green-high)"},{"type":"declaration","property":"--sl-badge-caution-bg","value":"var(--sl-color-orange-high)"},{"type":"declaration","property":"--sl-badge-tip-bg","value":"var(--sl-color-purple-high)"}]},{"type":"rule","selectors":[".sl-badge:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"display","value":"inline-block"},{"type":"declaration","property":"border","value":"1px solid var(--sl-color-border-badge)"},{"type":"declaration","property":"border-radius","value":".25rem"},{"type":"declaration","property":"font-family","value":"var(--sl-font-system-mono)"},{"type":"declaration","property":"line-height","value":"normal"},{"type":"declaration","property":"color","value":"var(--sl-color-text-badge)"},{"type":"declaration","property":"background-color","value":"var(--sl-color-bg-badge)"},{"type":"declaration","property":"overflow-wrap","value":"anywhere"}]},{"type":"rule","selectors":[".sidebar-content .sl-badge:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"line-height","value":"1"},{"type":"declaration","property":"font-size","value":"var(--sl-text-xs)"},{"type":"declaration","property":"padding","value":".125rem .375rem"}]},{"type":"rule","selectors":[".sidebar-content a[aria-current=page]>.sl-badge:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"transparent"},{"type":"declaration","property":"--sl-color-border-badge","value":"currentColor"},{"type":"declaration","property":"color","value":"inherit"}]},{"type":"rule","selectors":[".default:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"var(--sl-badge-default-bg)"},{"type":"declaration","property":"--sl-color-border-badge","value":"var(--sl-badge-default-border)"},{"type":"declaration","property":"--sl-color-text-badge","value":"var(--sl-badge-default-text)"}]},{"type":"rule","selectors":[".note:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"var(--sl-badge-note-bg)"},{"type":"declaration","property":"--sl-color-border-badge","value":"var(--sl-badge-note-border)"},{"type":"declaration","property":"--sl-color-text-badge","value":"var(--sl-badge-note-text)"}]},{"type":"rule","selectors":[".danger:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"var(--sl-badge-danger-bg)"},{"type":"declaration","property":"--sl-color-border-badge","value":"var(--sl-badge-danger-border)"},{"type":"declaration","property":"--sl-color-text-badge","value":"var(--sl-badge-danger-text)"}]},{"type":"rule","selectors":[".success:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"var(--sl-badge-success-bg)"},{"type":"declaration","property":"--sl-color-border-badge","value":"var(--sl-badge-success-border)"},{"type":"declaration","property":"--sl-color-text-badge","value":"var(--sl-badge-success-text)"}]},{"type":"rule","selectors":[".tip:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"var(--sl-badge-tip-bg)"},{"type":"declaration","property":"--sl-color-border-badge","value":"var(--sl-badge-tip-border)"},{"type":"declaration","property":"--sl-color-text-badge","value":"var(--sl-badge-tip-text)"}]},{"type":"rule","selectors":[".caution:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"var(--sl-badge-caution-bg)"},{"type":"declaration","property":"--sl-color-border-badge","value":"var(--sl-badge-caution-border)"},{"type":"declaration","property":"--sl-color-text-badge","value":"var(--sl-badge-caution-text)"}]},{"type":"rule","selectors":[".small:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"font-size","value":"var(--sl-text-xs)"},{"type":"declaration","property":"padding","value":".125rem .25rem"}]},{"type":"rule","selectors":[".medium:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"font-size","value":"var(--sl-text-sm)"},{"type":"declaration","property":"padding","value":".175rem .35rem"}]},{"type":"rule","selectors":[".large:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"font-size","value":"var(--sl-text-base)"},{"type":"declaration","property":"padding","value":".225rem .45rem"}]},{"type":"rule","selectors":[".sl-markdown-content :is(h1,h2,h3,h4,h5,h6) .sl-badge:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"vertical-align","value":"middle"}]}],"parsingErrors":[{"reason":"missing '}'","line":1,"column":29,"source":":root{--sl-badge-default-border: var(--sl-color-accent);--sl-badge-default-bg: var(--sl-color-accent-low);--sl-badge-default-text: #fff;--sl-badge-note-border: var(--sl-color-blue);--sl-badge-note-bg: var(--sl-color-blue-low);--sl-badge-note-text: #fff;--sl-badge-danger-border: var(--sl-color-red);--sl-badge-danger-bg: var(--sl-color-red-low);--sl-badge-danger-text: #fff;--sl-badge-success-border: var(--sl-color-green);--sl-badge-success-bg: var(--sl-color-green-low);--sl-badge-success-text: #fff;--sl-badge-caution-border: var(--sl-color-orange);--sl-badge-caution-bg: var(--sl-color-orange-low);--sl-badge-caution-text: #fff;--sl-badge-tip-border: var(--sl-color-purple);--sl-badge-tip-bg: var(--sl-color-purple-low);--sl-badge-tip-text: #fff}[data-theme=light]:root{--sl-badge-default-bg: var(--sl-color-accent-high);--sl-badge-note-bg: var(--sl-color-blue-high);--sl-badge-danger-bg: var(--sl-color-red-high);--sl-badge-success-bg: var(--sl-color-green-high);--sl-badge-caution-bg: var(--sl-color-orange-high);--sl-badge-tip-bg: var(--sl-color-purple-high)}.sl-badge:where(.astro-apfhek72){display:inline-block;border:1px solid var(--sl-color-border-badge);border-radius:.25rem;font-family:var(--sl-font-system-mono);line-height:normal;color:var(--sl-color-text-badge);background-color:var(--sl-color-bg-badge);overflow-wrap:anywhere}.sidebar-content .sl-badge:where(.astro-apfhek72){line-height:1;font-size:var(--sl-text-xs);padding:.125rem .375rem}.sidebar-content a[aria-current=page]>.sl-badge:where(.astro-apfhek72){--sl-color-bg-badge: transparent;--sl-color-border-badge: currentColor;color:inherit}.default:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-default-bg);--sl-color-border-badge: var(--sl-badge-default-border);--sl-color-text-badge: var(--sl-badge-default-text)}.note:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-note-bg);--sl-color-border-badge: var(--sl-badge-note-border);--sl-color-text-badge: var(--sl-badge-note-text)}.danger:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-danger-bg);--sl-color-border-badge: var(--sl-badge-danger-border);--sl-color-text-badge: var(--sl-badge-danger-text)}.success:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-success-bg);--sl-color-border-badge: var(--sl-badge-success-border);--sl-color-text-badge: var(--sl-badge-success-text)}.tip:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-tip-bg);--sl-color-border-badge: var(--sl-badge-tip-border);--sl-color-text-badge: var(--sl-badge-tip-text)}.caution:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-caution-bg);--sl-color-border-badge: var(--sl-badge-caution-border);--sl-color-text-badge: var(--sl-badge-caution-text)}.small:where(.astro-apfhek72){font-size:var(--sl-text-xs);padding:.125rem .25rem}.medium:where(.astro-apfhek72){font-size:var(--sl-text-sm);padding:.175rem .35rem}.large:where(.astro-apfhek72){font-size:var(--sl-text-base);padding:.225rem .45rem}.sl-markdown-content :is(h1,h2,h3,h4,h5,h6) .sl-badge:where(.astro-apfhek72){vertical-align:middle}} @layer starlight.components{.card-grid:where(.astro-j2evhyfc){display:grid;grid-template-columns:100%;gap:1rem}.card-grid:where(.astro-j2evhyfc)>*{margin-top:0!important}@media (min-width: 50rem){.card-grid:where(.astro-j2evhyfc){grid-template-columns:1fr 1fr;gap:1.5rem}.stagger:where(.astro-j2evhyfc){--stagger-height: 5rem;padding-bottom:var(--stagger-height)}.stagger:where(.astro-j2evhyfc)>*:nth-child(2n){transform:translateY(var(--stagger-height))}}} @layer starlight.components{.card:where(.astro-xkz2rg4l){--sl-card-border: var(--sl-color-purple);--sl-card-bg: var(--sl-color-purple-low);border:1px solid var(--sl-color-gray-5);background-color:var(--sl-color-black);padding:clamp(1rem,calc(.125rem + 3vw),2.5rem);flex-direction:column;gap:clamp(.5rem,calc(.125rem + 1vw),1rem)}.card:where(.astro-xkz2rg4l):nth-child(4n+1){--sl-card-border: var(--sl-color-orange);--sl-card-bg: var(--sl-color-orange-low)}.card:where(.astro-xkz2rg4l):nth-child(4n+3){--sl-card-border: var(--sl-color-green);--sl-card-bg: var(--sl-color-green-low)}.card:where(.astro-xkz2rg4l):nth-child(4n+4){--sl-card-border: var(--sl-color-red);--sl-card-bg: var(--sl-color-red-low)}.card:where(.astro-xkz2rg4l):nth-child(4n+5){--sl-card-border: var(--sl-color-blue);--sl-card-bg: var(--sl-color-blue-low)}.title:where(.astro-xkz2rg4l){font-weight:600;font-size:var(--sl-text-h4);color:var(--sl-color-white);line-height:var(--sl-line-height-headings);gap:1rem;align-items:center}.card:where(.astro-xkz2rg4l) .icon:where(.astro-xkz2rg4l){border:1px solid var(--sl-card-border);background-color:var(--sl-card-bg);padding:.2em;border-radius:.25rem;flex-shrink:0}.card:where(.astro-xkz2rg4l) .body:where(.astro-xkz2rg4l){margin:0;font-size:clamp(var(--sl-text-sm),calc(.5rem + 1vw),var(--sl-text-body))}} @layer starlight.components{svg:where(.astro-xaj4nzjw){color:var(--sl-icon-color);font-size:var(--sl-icon-size, 1em);width:1em;height:1em}} @layer starlight.components{.sl-steps{--bullet-size: calc(var(--sl-line-height) * 1rem);--bullet-margin: .375rem;list-style:none;counter-reset:steps-counter var(--sl-steps-start, 0);padding-inline-start:0}.sl-steps>li{counter-increment:steps-counter;position:relative;padding-inline-start:calc(var(--bullet-size) + 1rem);padding-bottom:1px;min-height:calc(var(--bullet-size) + var(--bullet-margin))}.sl-steps>li+li{margin-top:0}.sl-steps>li:before{content:counter(steps-counter);position:absolute;top:0;inset-inline-start:0;width:var(--bullet-size);height:var(--bullet-size);line-height:var(--bullet-size);font-size:var(--sl-text-xs);font-weight:600;text-align:center;color:var(--sl-color-white);background-color:var(--sl-color-gray-6);border-radius:99rem;box-shadow:inset 0 0 0 1px var(--sl-color-gray-5)}.sl-steps>li:after{--guide-width: 1px;content:\"\";position:absolute;top:calc(var(--bullet-size) + var(--bullet-margin));bottom:var(--bullet-margin);inset-inline-start:calc((var(--bullet-size) - var(--guide-width)) \/ 2);width:var(--guide-width);background-color:var(--sl-color-hairline-light)}}@layer starlight.content{.sl-steps>li>:first-child{--lh: calc(1em * var(--sl-line-height));--shift-y: calc(.5 * (var(--bullet-size) - var(--lh)));transform:translateY(var(--shift-y));margin-bottom:var(--shift-y)}.sl-steps>li>:first-child:where(h1,h2,h3,h4,h5,h6){--lh: calc(1em * var(--sl-line-height-headings))}@supports (--prop: 1lh){.sl-steps>li>:first-child{--lh: 1lh}}} @layer starlight.components{starlight-file-tree:where(.astro-t72hyuag){--x-space: 1.5rem;--y-space: .125rem;--y-pad: 0;display:block;border:1px solid var(--sl-color-gray-5);padding:1rem;background-color:var(--sl-color-gray-6);font-size:var(--sl-text-xs);font-family:var(--__sl-font-mono);overflow-x:auto}starlight-file-tree:where(.astro-t72hyuag) .directory>details{border:0;padding:0;padding-inline-start:var(--x-space);background:transparent}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary{margin-inline-start:calc(-1 * var(--x-space));border:0;padding:var(--y-pad) .625rem;font-weight:400;color:var(--sl-color-white);max-width:100%}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary::marker,starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary::-webkit-details-marker{color:var(--sl-color-gray-3)}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary:hover,starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary:hover .tree-icon{cursor:pointer;color:var(--sl-color-text-accent);fill:currentColor}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary:hover~ul{border-color:var(--sl-color-gray-4)}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary:hover .highlight .tree-icon{color:var(--sl-color-text-invert);fill:currentColor}starlight-file-tree:where(.astro-t72hyuag) ul{margin-inline-start:.5rem;border-inline-start:1px solid var(--sl-color-gray-5);padding:0;padding-inline-start:.125rem;list-style:none}starlight-file-tree:where(.astro-t72hyuag)>ul{margin:0;border:0;padding:0}starlight-file-tree:where(.astro-t72hyuag) li{margin:var(--y-space) 0;padding:var(--y-pad) 0}starlight-file-tree:where(.astro-t72hyuag) .file{margin-inline-start:calc(var(--x-space) - .125rem);color:var(--sl-color-white)}starlight-file-tree:where(.astro-t72hyuag) .tree-entry{display:inline-flex;align-items:flex-start;flex-wrap:wrap;max-width:calc(100% - 1rem)}@media (min-width: 30em){starlight-file-tree:where(.astro-t72hyuag) .tree-entry{flex-wrap:nowrap}}starlight-file-tree:where(.astro-t72hyuag) .tree-entry>:first-child{flex-shrink:0}starlight-file-tree:where(.astro-t72hyuag) .empty{color:var(--sl-color-gray-3);padding-inline-start:.375rem}starlight-file-tree:where(.astro-t72hyuag) .comment{color:var(--sl-color-gray-3);padding-inline-start:1.625rem;max-width:24rem;min-width:12rem}starlight-file-tree:where(.astro-t72hyuag) .highlight{display:inline-block;border-radius:.25rem;padding-inline-end:.5rem;color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent)}starlight-file-tree:where(.astro-t72hyuag) svg{display:inline;fill:var(--sl-color-gray-3);vertical-align:middle;margin-inline:.25rem .375rem;width:.875rem;height:.875rem}starlight-file-tree:where(.astro-t72hyuag) .highlight svg.tree-icon{fill:currentColor}} @layer starlight.components{.sl-link-button:where(.astro-fnfbevnj){align-items:center;border:1px solid transparent;border-radius:999rem;display:inline-flex;font-size:var(--sl-text-sm);gap:.5em;line-height:1.1875;outline-offset:.25rem;padding:.4375rem 1.125rem;text-decoration:none}.sl-link-button:where(.astro-fnfbevnj).primary{background:var(--sl-color-text-accent);border-color:var(--sl-color-text-accent);color:var(--sl-color-black)}.sl-link-button:where(.astro-fnfbevnj).primary:hover{color:var(--sl-color-black)}.sl-link-button:where(.astro-fnfbevnj).secondary{border-color:inherit;color:var(--sl-color-white)}.sl-link-button:where(.astro-fnfbevnj).minimal{color:var(--sl-color-white);padding-inline:0}.sl-link-button:where(.astro-fnfbevnj) svg{flex-shrink:0}@media (min-width: 50rem){.sl-link-button:where(.astro-fnfbevnj){font-size:var(--sl-text-base);padding:.9375rem 1.25rem}}.sl-markdown-content .sl-link-button:where(.astro-fnfbevnj){margin-inline-end:1rem}.sl-markdown-content .sl-link-button:where(.astro-fnfbevnj):not(:where(p *)){margin-block:1rem}}"}]}}},{"url":"block","ast":{"type":"stylesheet","stylesheet":{"rules":[{"type":"rule","selectors":[".scroll-to-top-button"],"declarations":[{"type":"declaration","property":"position","value":"fixed"},{"type":"declaration","property":"bottom","value":"40px"},{"type":"declaration","property":"width","value":"47px"},{"type":"declaration","property":"height","value":"47px"},{"type":"declaration","property":"right","value":"35px"},{"type":"declaration","property":"border-radius","value":"15%"},{"type":"declaration","property":"background-color","value":"var(--sl-color-bg-sidebar)"},{"type":"declaration","property":"cursor","value":"pointer"},{"type":"declaration","property":"display","value":"flex"},{"type":"declaration","property":"align-items","value":"center"},{"type":"declaration","property":"justify-content","value":"center"},{"type":"declaration","property":"opacity","value":"0"},{"type":"declaration","property":"visibility","value":"hidden"},{"type":"declaration","property":"transition","value":"opacity 0.3s ease, visibility 0.3s ease, background-color 0.3s ease, transform 0.3s ease"},{"type":"declaration","property":"z-index","value":"100"},{"type":"declaration","property":"border","value":"none"},{"type":"declaration","property":"transform-origin","value":"center"},{"type":"declaration","property":"-webkit-tap-highlight-color","value":"transparent"},{"type":"declaration","property":"touch-action","value":"manipulation"}]},{"type":"rule","selectors":[".scroll-to-top-button:active"],"declarations":[{"type":"declaration","property":"background-color","value":"var(--sl-color-accent-dark)"},{"type":"declaration","property":"color","value":"var(--sl-text-white)"},{"type":"declaration","property":"transition","value":"background-color 0.1s ease, transform 0.1s ease"}]},{"type":"rule","selectors":[".scroll-to-top-button:not(:hover):not(:active)"],"declarations":[{"type":"declaration","property":"background-color","value":"var(--sl-color-bg-sidebar)"},{"type":"declaration","property":"border","value":"1px solid var(--sl-color-gray-5)"},{"type":"declaration","property":"box-shadow","value":"0 0 0 1px rgba(0,0,0,0.04),0 4px 8px 0 rgba(0,0,0,0.2)"}]},{"type":"rule","selectors":[".scroll-to-top-button.visible"],"declarations":[{"type":"declaration","property":"opacity","value":"1"},{"type":"declaration","property":"visibility","value":"visible"}]},{"type":"rule","selectors":[":root[\"theme-dark\"] .scroll-to-top-button"],"declarations":[{"type":"declaration","property":"border","value":"1px solid yellow"}]},{"type":"rule","selectors":[".scroll-to-top-button:hover"],"declarations":[{"type":"declaration","property":"background-color","value":"var(--sl-color-accent)"},{"type":"declaration","property":"box-shadow","value":"0 0 0 1px rgba(0,0,0,0.04),0 4px 8px 0 rgba(0,0,0,0.2)"},{"type":"declaration","property":"color","value":"white"},{"type":"declaration","property":"border","value":"none"}]},{"type":"rule","selectors":[".scroll-to-top-button.keyboard-focus"],"declarations":[{"type":"declaration","property":"outline","value":"2px solid var(--sl-color-text)"},{"type":"declaration","property":"outline-offset","value":"2px"}]},{"type":"rule","selectors":[".scroll-to-top-btn-tooltip"],"declarations":[{"type":"declaration","property":"position","value":"absolute"},{"type":"declaration","property":"right","value":"-22px"},{"type":"declaration","property":"top","value":"-47px"},{"type":"declaration","property":"background-color","value":"var(--sl-color-gray-6)"},{"type":"declaration","property":"color","value":"var(--sl-color-text)"},{"type":"declaration","property":"padding","value":"5px 10px"},{"type":"declaration","property":"border-radius","value":"4px"},{"type":"declaration","property":"font-weight","value":"400"},{"type":"declaration","property":"font-size","value":"14px"},{"type":"declaration","property":"white-space","value":"nowrap"},{"type":"declaration","property":"opacity","value":"0"},{"type":"declaration","property":"visibility","value":"hidden"},{"type":"declaration","property":"transition","value":"opacity 0.2s, visibility 0.3s"},{"type":"declaration","property":"pointer-events","value":"none"}]},{"type":"rule","selectors":[".scroll-to-top-btn-tooltip.visible"],"declarations":[{"type":"declaration","property":"opacity","value":"1"},{"type":"declaration","property":"visibility","value":"visible"}]}],"parsingErrors":[]}}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1em"}]}},{"url":"inline","ast":{"declarations":[]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"padding","value":"0"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-select-width","value":"6.25em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.5rem"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.5rem"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.333em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.333em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.333em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.333em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.2em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"display","value":"flex"}]}}] {"lcp_elem_stats":{"startTime":532,"nodeName":"IMG","url":"https:\/\/contribute.freecodecamp.org\/images\/branding\/banner.png","size":147156,"loadTime":483.1000000014901,"renderTime":532,"attributes":[{"name":"src","value":"\/images\/branding\/banner.png"},{"name":"class","value":"hidden md:block w-96 rounded-full overflow-clip"},{"name":"alt","value":"Contribute to freeCodeCamp"}],"boundingClientRect":{"x":831.5,"y":184.28125,"width":384,"height":384,"top":184.28125,"right":1215.5,"bottom":568.28125,"left":831.5},"naturalWidth":500,"naturalHeight":500,"styles":{"background-image":"none","pointer-events":"auto","position":"static","width":"384px","height":"384px"},"percentOfViewport":"0.159","cover90viewport":false},"raw_lcp_element":{"nodeName":"IMG","attributes":[{"name":"src","value":"\/images\/branding\/banner.png"},{"name":"class","value":"hidden md:block w-96 rounded-full overflow-clip"},{"name":"alt","value":"Contribute to freeCodeCamp"}]},"lcp_resource":{"id":"26114.8","sequence":8,"body":"\/home\/pmeenan\/wptagent\/work\/wptagent-v6-manual-20241002-10.20.0.3\/250710_FA_R.1.0\/bodies\/26114.8","url":"https:\/\/contribute.freecodecamp.org\/images\/branding\/banner.png","status":200,"connectionId":123,"protocol":"h3","connectionReused":true,"fromServiceWorker":false,"timing":{"requestTime":55007.981714,"proxyStart":-1,"proxyEnd":-1,"dnsStart":-1,"dnsEnd":-1,"connectStart":-1,"connectEnd":-1,"sslStart":-1,"sslEnd":-1,"workerStart":-1,"workerReady":-1,"workerFetchStart":-1,"workerRespondWithSettled":-1,"sendStart":1.66,"sendEnd":2.638,"pushStart":0,"pushEnd":0,"receiveHeadersStart":111.991,"receiveHeadersEnd":112.207},"fromDiskCache":false,"remoteIPAddress":"[2606:4700:20::ac43:4695]","remotePort":443,"securityState":"secure","securityDetails":{"protocol":"QUIC","keyExchange":"","keyExchangeGroup":"X25519MLKEM768","cipher":"AES_128_GCM","certificateId":0,"subjectName":"contribute.freecodecamp.org","sanList":["contribute.freecodecamp.org"],"issuer":"WE1","validFrom":1747070097,"validTo":1754849693,"signedCertificateTimestampList":[{"status":"Verified","origin":"Embedded in certificate","logDescription":"Google 'Argon2025h2' log","logId":"12F14E34BD53724C840619C38F3F7A13F8E7B56287889C6D300584EBE586263A","timestamp":1747073697808,"hashAlgorithm":"SHA-256","signatureAlgorithm":"ECDSA","signatureData":"3046022100D4242BC1F88EB78B949EA703E9481B35751B0CBBE7EBDFE737EC6BB05573037202210092A964DE0319F9BC839F4BD65B99C1CE37EC0D1323551F12313ED5812DAD1094"},{"status":"Verified","origin":"Embedded in certificate","logDescription":"DigiCert Yeti2025 Log","logId":"7D591E12E1782A7B1C61677C5EFDF8D0875C14A04E959EB9032FD90E8C2E79B8","timestamp":1747073697838,"hashAlgorithm":"SHA-256","signatureAlgorithm":"ECDSA","signatureData":"304502207EC06EC9B7A3681030A5D02B395C8D9335549F79F2318D6E6619615BED93018B022100CDCA2367EA6631A8E6D29D1761809060B79B81C70257702407DFED272E251A28"}],"certificateTransparencyCompliance":"compliant","serverSignatureAlgorithm":1027,"encryptedClientHello":false},"fromPrefetchCache":false,"response_headers":{"accept-ranges":"bytes","access-control-allow-origin":"*","alt-svc":"h3=\":443\"; ma=86400","cache-control":"public, max-age=86400, must-revalidate","cf-cache-status":"REVALIDATED","cf-ray":"95d0638b2fb83910-IAD","content-length":"89967","content-type":"image\/png","date":"Thu, 10 Jul 2025 13:25:44 GMT","etag":"\"ea33c4c0972d45ba622940116b39e415\"","nel":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}","priority":"u=2,i","referrer-policy":"strict-origin-when-cross-origin","report-to":"{\"endpoints\":[{\"url\":\"https:\\\/\\\/a.nel.cloudflare.com\\\/report\\\/v4?s=iW%2BY9tapxNtwVx8KxFxQOrHIa1gyEngN8g7HBskqTN0TqYJHmuMajhGj6d6J9g%2BnaqwFqpgOeq7CMzbDmnngHGO7OMV6g0laFyBl8FcZ39oUlhB0FaPW3Wriwlu3%2FZm7O7quk3H6lUv63mdYpr6L3G7pGnMk1QsCrKo%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}","server":"cloudflare","server-timing":"cfL4;desc=\"?proto=QUIC&rtt=27985&min_rtt=17029&rtt_var=6089&sent=42&recv=24&lost=0&retrans=0&sent_bytes=27984&recv_bytes=8659&delivery_rate=446107&cwnd=12000&unsent_bytes=0&cid=a17711335fd5173c&ts=298&x=1\"\ncfExtPri\ncfHdrFlush;dur=10","speculation-rules":"\"\/cdn-cgi\/speculation\"","vary":"Accept-Encoding","x-content-type-options":"nosniff"},"request_headers":{":authority":"contribute.freecodecamp.org",":method":"GET",":path":"\/images\/branding\/banner.png",":scheme":"https","accept":"image\/avif,image\/webp,image\/apng,image\/svg+xml,image\/*,*\/*;q=0.8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","priority":"u=2, i","referer":"https:\/\/contribute.freecodecamp.org\/intro\/","sec-ch-ua":"\" Not A;Brand\";v=\"99\", \"Chromium\";v=\"138\", \"Google Chrome\";v=\"138\"","sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"\"Unknown\"","sec-fetch-dest":"image","sec-fetch-mode":"no-cors","sec-fetch-site":"same-origin","user-agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/138.0.0.0 Safari\/537.36 PTST\/250708.192815"},"initiator":{"type":"parser","url":"https:\/\/contribute.freecodecamp.org\/intro\/","lineNumber":48,"columnNumber":2618},"documentURL":"https:\/\/contribute.freecodecamp.org\/intro\/","timestamp":55007.958568,"frameId":"F7552AB836B5A2EB0404D9A18E9314EB","hasUserGesture":false,"type":"Image","wallTime":1752153944.767302,"initialPriority":"Medium","priority":"Medium","transfer_size":90847},"is_lcp_statically_discoverable":true,"is_lcp_preloaded":false,"lcp_preload":[],"web_vitals_js":["https:\/\/static.cloudflareinsights.com\/beacon.min.js\/vcd15cbe7772f49c399c6a5babf22c1241717689176015"],"gaming_metrics":[],"speculation_rules":{"htmlRules":[],"httpHeaderRules":[{"url":"https:\/\/contribute.freecodecamp.org\/cdn-cgi\/speculation","rule":{"prefetch":[{"eagerness":"conservative","source":"document","where":{"and":[{"href_matches":"\/*","relative_to":"document"}]}}]}}]}} {"iab_tcf_v1":{"present":false},"iab_tcf_v2":{"present":false},"iab_gpp":{"present":false},"iab_usp":{"present":false},"navigator_doNotTrack":false,"navigator_globalPrivacyControl":false,"document_permissionsPolicy":false,"document_featurePolicy":false,"referrerPolicy":{"entire_document_policy":null,"individual_requests":null,"link_relations":null},"request_hostnames_with_cname":{},"ccpa_link":{"hasCCPALink":false},"iab_ddr":{"present":false,"status":404}} {"featuresDisabled":[{"top-level-storage-access":[]}],"privacySandBoxAPIUsage":{"android.clients.google.com":["accept-ch|Sec-CH-UA-Arch, Sec-CH-UA-Bitness, Sec-CH-UA-Full-Version, Sec-CH-UA-Full-Version-List, Sec-CH-UA-Model, Sec-CH-UA-WoW64, Sec-CH-UA-Form-Factors, Sec-CH-UA-Platform, Sec-CH-UA-Platform-Version"]}} {"serviceWorkers":[],"manifests":[],"serviceWorkerInitiated":[],"workboxInfo":[],"importScriptsInfo":[],"swEventListenersInfo":[],"swPropertiesInfo":[],"swMethodsInfo":[],"swObjectsInfo":[],"swRegistrationPropertiesInfo":[],"windowEventListenersInfo":[],"windowPropertiesInfo":[],"serviceWorkerRegistrationInfo":[],"serviceWorkerHeuristic":false} {"responsive-images":[{"hasSrc":true,"hasAlt":true,"isInPicture":false,"hasCustomDataAttributes":false,"hasWidth":true,"hasHeight":true,"url":"https://contribute.freecodecamp.org/_astro/primary_logo.-jEg6IuN.svg","totalCandidates":1,"heightAttribute":"240","widthAttribute":"2100","altAttribute":"","clientWidth":0,"clientHeight":0,"naturalWidth":2100,"naturalHeight":240,"hasSrcset":false,"hasSizes":false,"currentSrcDensity":1,"approximateResourceWidth":2100,"approximateResourceHeight":240,"byteSize":38414,"bitsPerPixel":0.6097460317460317,"mimeType":"image/svg+xml","computedSizingStyles":{"width":"auto","height":"40px","maxWidth":"100%","maxHeight":"none","minWidth":"auto","minHeight":"auto"},"intrinsicOrExtrinsicSizing":{"width":"both","height":"extrinsic"},"reservedLayoutDimensions":false},{"hasSrc":true,"hasAlt":true,"isInPicture":false,"hasCustomDataAttributes":false,"hasWidth":true,"hasHeight":true,"url":"https://contribute.freecodecamp.org/_astro/secondary_logo.BMqpsykx.svg","totalCandidates":1,"heightAttribute":"240","widthAttribute":"2100","altAttribute":"","clientWidth":350,"clientHeight":40,"naturalWidth":2100,"naturalHeight":240,"hasSrcset":false,"hasSizes":false,"currentSrcDensity":1,"approximateResourceWidth":2100,"approximateResourceHeight":240,"byteSize":38457,"bitsPerPixel":0.6104285714285714,"mimeType":"image/svg+xml","computedSizingStyles":{"width":"auto","height":"40px","maxWidth":"100%","maxHeight":"none","minWidth":"auto","minHeight":"auto"},"intrinsicOrExtrinsicSizing":{"width":"both","height":"extrinsic"},"reservedLayoutDimensions":false},{"hasSrc":true,"hasAlt":true,"isInPicture":false,"hasCustomDataAttributes":false,"hasWidth":false,"hasHeight":false,"url":"https://contribute.freecodecamp.org/images/branding/banner.png","totalCandidates":1,"altAttribute":"Contribute to freeCodeCamp","clientWidth":384,"clientHeight":384,"naturalWidth":500,"naturalHeight":500,"hasSrcset":false,"hasSizes":false,"currentSrcDensity":1,"approximateResourceWidth":500,"approximateResourceHeight":500,"byteSize":89967,"bitsPerPixel":2.878944,"mimeType":"image/png","computedSizingStyles":{"width":"384px","height":"auto","maxWidth":"none","maxHeight":"none","minWidth":"auto","minHeight":"auto"},"intrinsicOrExtrinsicSizing":{"width":"extrinsic","height":"intrinsic"},"reservedLayoutDimensions":false}]} {"main_frame_robots_rendered":[],"main_frame_robots_raw":[],"main_frame_robots_headers":[],"iframe_robots_raw":[],"iframe_robots_headers":[],"main_frame_crawl_data":{"rendered":[],"raw":[],"headers":[],"all":[]}} {"message":"Failed to fetch","error":{}} {"stylesheets":{"remote":2,"inline":2},"sourcemaps":{"count":0,"ext":{}}} {"iframe-allow-sandbox":[],"sri-integrity":[{"integrity":"sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==","src":"https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015","tagname":"script"}],"visibility-observer":false} 0 {"structured_data":{"rendered":{"jsonld_scripts":[],"present":{"json_ld":false,"microdata":false,"rdfa":true,"microformats2":false,"microformats_classic":false,"dublin_core":false,"twitter":true,"facebook":false,"opengraph":true},"microdata_itemtypes":[],"rdfa_vocabs":[],"rdfa_prefixes":[],"rdfa_typeofs":[],"microformats2_types":[],"microformats_classic_types":[],"dublin_core":[],"twitter":[{"name":"twitter:card","content":"summary_large_image"},{"name":"twitter:site","content":"@freeCodeCamp"}],"facebook":[],"opengraph":[{"property":"og:title","content":"Contribute to the freeCodeCamp Community"},{"property":"og:type","content":"article"},{"property":"og:url","content":"https://contribute.freecodecamp.org/intro/"},{"property":"og:locale","content":"en"},{"property":"og:description","content":"Help us make freeCodeCamp better for everyone."},{"property":"og:site_name","content":"Contribute | freeCodeCamp.org"}]},"raw":{"jsonld_scripts":[],"present":{"json_ld":false,"microdata":false,"rdfa":true,"microformats2":false,"microformats_classic":false,"dublin_core":false,"twitter":true,"facebook":false,"opengraph":true},"microdata_itemtypes":[],"rdfa_vocabs":[],"rdfa_prefixes":[],"rdfa_typeofs":[],"microformats2_types":[],"microformats_classic_types":[],"dublin_core":[],"twitter":[{"name":"twitter:card","content":"summary_large_image"},{"name":"twitter:site","content":"@freeCodeCamp"}],"facebook":[],"opengraph":[{"property":"og:title","content":"Contribute to the freeCodeCamp Community"},{"property":"og:type","content":"article"},{"property":"og:url","content":"https://contribute.freecodecamp.org/intro/"},{"property":"og:locale","content":"en"},{"property":"og:description","content":"Help us make freeCodeCamp better for everyone."},{"property":"og:site_name","content":"Contribute | freeCodeCamp.org"}]}}} 0 [{"name":"Workbox","version":null}] 0 {"invalidElements":[],"invalidHead":false} {"/.well-known/assetlinks.json":{"found":false},"/.well-known/apple-app-site-association":{"found":false},"/.well-known/related-website-set.json":{"found":false},"/.well-known/privacy-sandbox-attestations.json":{"found":false},"/.well-known/gpc.json":{"found":false},"/.well-known/web-identity":{"found":false},"/.well-known/passkey-endpoints":{"found":false},"/.well-known/webauthn":{"found":false},"/robots.txt":{"error":"Failed to fetch"},"/.well-known/security.txt":{"found":true,"data":{"status":200,"redirected":false,"url":"https://contribute.freecodecamp.org/.well-known/security.txt","content_type":"text/plain; charset=utf-8","signed":false,"contact":["https://contribute.freecodecamp.org/security"],"expires":["2025-12-31T23:59:00Z"],"encryption":["https://flowcrypt.com/me/freecodecamp","https://flowcrypt.com/pub/freecodecamp?show=pubkey"],"acknowledgments":["https://contribute.freecodecamp.org/security-hall-of-fame"],"preferred_languages":["en"],"policy":["https://contribute.freecodecamp.org/security"],"all_required_exist":true,"only_one_requirement_broken":false,"valid":true}},"/.well-known/change-password":{"found":false,"data":{"status":404,"redirected":false,"url":"https://contribute.freecodecamp.org/.well-known/change-password"}},"/.well-known/resource-that-should-not-exist-whose-status-code-should-not-be-200/":{"found":false,"data":{"status":404,"redirected":false,"url":"https://contribute.freecodecamp.org/.well-known/resource-that-should-not-exist-whose-status-code-should-not-be-200/"}}} {"anchors":{"rendered":{"crawlable":{"follow":11,"nofollow":0},"hash_link":4,"hash_only_link":0,"javascript_void_links":0,"same_page":{"total":2,"jumpto":{"total":2,"early":1,"other":1,"using_id":2,"using_name":0},"dynamic":{"total":0,"onclick_attributes":{"total":0,"window_location":0,"window_open":0,"unknown_action":0},"href_javascript":0,"hash_link":0},"other":{"total":0,"hash_link":0}},"same_site":4,"same_property":0,"other_property":7,"rel_attributes":{"dofollow":0,"follow":0,"nofollow":0,"ugc":0,"sponsored":0,"noopener":0,"noreferrer":0},"image_links":0,"invisible_links":0,"text_links":13,"target_blank":{"total":0,"noopener_noreferrer":0,"noopener":0,"noreferrer":0,"neither":0},"targets":{},"protocols":{"https":13}},"raw":{"crawlable":{"follow":11,"nofollow":0},"hash_link":4,"hash_only_link":0,"javascript_void_links":0,"same_page":{"total":2,"jumpto":{"total":2,"early":1,"other":1,"using_id":2,"using_name":0},"dynamic":{"total":0,"onclick_attributes":{"total":0,"window_location":0,"window_open":0,"unknown_action":0},"href_javascript":0,"hash_link":0},"other":{"total":0,"hash_link":0}},"same_site":4,"same_property":0,"other_property":7,"rel_attributes":{"dofollow":0,"follow":0,"nofollow":0,"ugc":0,"sponsored":0,"noopener":0,"noreferrer":0},"image_links":0,"invisible_links":0,"text_links":13,"target_blank":{"total":0,"noopener_noreferrer":0,"noopener":0,"noreferrer":0,"neither":0},"targets":{},"protocols":{"about":2,"https":11}}},"title":{"rendered":{"primary":{"characters":72,"words":9,"text":"Contribute to the freeCodeCamp Community | Contribute | freeCodeCamp.org"},"total":1},"raw":{"primary":{"characters":72,"words":9,"text":"Contribute to the freeCodeCamp Community | Contribute | freeCodeCamp.org"},"total":1},"title_changed_on_render":false},"meta_description":{"rendered":{"all":{"text":"Help us make freeCodeCamp better for everyone.","words":7,"characters":46},"primary":{"characters":46,"words":7,"text":"Help us make freeCodeCamp better for everyone."},"total":1},"raw":{"all":{"text":"Help us make freeCodeCamp better for everyone.","words":7,"characters":46},"primary":{"characters":46,"words":7,"text":"Help us make freeCodeCamp better for everyone."},"total":1}},"hreflangs":{"http_header":{"values":[]},"rendered":{"values":[]},"raw":{"values":[]}},"headings":{"rendered":{"first_non_empty_heading_hidden":false,"primary":{"words":5,"characters":40,"matches_title":false,"text":"Contribute to the freeCodeCamp Community","level":1},"h1":{"total":1,"non_empty_total":1,"characters":40,"words":5},"h2":{"total":1,"non_empty_total":1,"characters":13,"words":2},"h3":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h4":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h5":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h6":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h7":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h8":{"total":0,"non_empty_total":0,"characters":0,"words":0}},"raw":{"first_non_empty_heading_hidden":false,"primary":{"words":5,"characters":40,"matches_title":false,"text":"Contribute to the freeCodeCamp Community","level":1},"h1":{"total":1,"non_empty_total":1,"characters":40,"words":5},"h2":{"total":1,"non_empty_total":1,"characters":13,"words":2},"h3":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h4":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h5":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h6":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h7":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h8":{"total":0,"non_empty_total":0,"characters":0,"words":0}}},"structured_data":{"rendered":{"jsonld_and_microdata_types":[],"jsonldIds":0,"jsonldReferencedIds":0,"microdataIds":0,"microdataReferencedIds":0,"jsonlsMicrodataCommonIds":0,"logo":false,"sitelinks_search_box":false,"same_as_values":[],"items_by_format":{"microformats2":0,"microdata":0,"jsonld":0,"rdfa":0},"context_hostnames":[],"jsonld_scripts":{"count":0,"errors":0},"microformats2_types":[]},"raw":{"jsonld_and_microdata_types":[],"jsonldIds":0,"jsonldReferencedIds":0,"microdataIds":0,"microdataReferencedIds":0,"jsonlsMicrodataCommonIds":0,"logo":false,"sitelinks_search_box":false,"same_as_values":[],"items_by_format":{"microformats2":0,"microdata":0,"jsonld":0,"rdfa":0},"context_hostnames":[],"jsonld_scripts":{"count":0,"errors":0},"microformats2_types":[]}},"raw_html":{"body":true,"html":true,"head":true,"size":32560,"head_size":14306,"body_size":18149},"canonicals":{"rendered":{"html_link_canoncials":["https://contribute.freecodecamp.org/intro/"]},"raw":{"html_link_canoncials":["https://contribute.freecodecamp.org/intro/"]},"self_canonical":true,"other_canonical":false,"canonicals":["https://contribute.freecodecamp.org/intro/"],"url":"https://contribute.freecodecamp.org/intro/","http_header_link_canoncials":[],"canonical_missmatch":false},"robots":{"has_robots_meta_tag":false,"has_x_robots_tag":false,"rendered":{"otherbot":{"status_index":true,"status_follow":true,"via_meta_tag":false,"via_x_robots_tag":false},"googlebot":{"status_index":true,"status_follow":true,"via_meta_tag":false,"via_x_robots_tag":false},"googlebot_news":{"status_index":true,"status_follow":true,"via_meta_tag":false,"via_x_robots_tag":false},"google":{}},"raw":{"otherbot":{"status_index":true,"status_follow":true,"via_meta_tag":false,"via_x_robots_tag":false},"googlebot":{"status_index":true,"status_follow":true,"via_meta_tag":false,"via_x_robots_tag":false},"googlebot_news":{"status_index":true,"status_follow":true,"via_meta_tag":false,"via_x_robots_tag":false},"google":{}}},"visible_words":{"rendered":83,"raw":81},"web_components":{"rendered":{"customElements":{"names":["site-search","starlight-theme-select"],"shadowRoots":[],"templates":[],"slots":[0,0]},"hyphenatedElements":{"names":["site-search","starlight-theme-select"],"shadowRoots":[],"templates":[],"slots":[0,0]}},"raw":{"customElements":{"names":["site-search","starlight-theme-select"],"shadowRoots":[],"templates":[],"slots":[0,0]},"hyphenatedElements":{"names":["site-search","starlight-theme-select"],"shadowRoots":[],"templates":[],"slots":[0,0]}}}} 0.476s - 0.489s (0.013s) 0.492s - 0.492s (0s)
Custom Metrics Data
00_reset
null
Colordepth
24
Dpi
{"dppx":1,"dpcm":37.79527559055118,"dpi":96}
Images
[{"url":"https://contribute.freecodecamp.org/_astro/primary_logo.-jEg6IuN.svg","width":2100,"height":240,"naturalWidth":2100,"naturalHeight":240,"loading":null,"decoding":null,"fetchpriority":null,"inViewport":true},{"url":"https://contribute.freecodecamp.org/_astro/secondary_logo.BMqpsykx.svg","width":350,"height":40,"naturalWidth":2100,"naturalHeight":240,"loading":null,"decoding":null,"fetchpriority":null,"inViewport":true},{"url":"https://contribute.freecodecamp.org/images/branding/banner.png","width":384,"height":384,"naturalWidth":500,"naturalHeight":500,"loading":null,"decoding":null,"fetchpriority":null,"inViewport":true}]
Resolution
{"absolute":{"height":1200,"width":1920},"available":{"height":1200,"width":1920}}
a11y
{"tables":{"total":0,"total_with_caption":0,"total_with_presentational":0,"total_with_figcaption":0},"file_extension_alts":{"total_elements_with_alt":3,"total_elements_with_non_empty_alt":1,"total_with_file_extension":0,"file_extensions":{}},"title_and_alt":{"total_alt":3,"total_title":0,"total_both":0,"total_alt_same_as_title":0},"th_with_scope_attribute":{"total_th":0,"total_with_scope":0,"scopes":{}},"td_with_headers_attribute":{"total_tds":0,"total_with_headers":0},"total_anchors_with_role_button":0,"total_role_tab_with_selected_and_controls":0,"placeholder_but_no_label":{"total_placeholder":1,"total_no_label":1},"divs_or_spans_as_button_or_link":{"total_role_button":0,"total_role_link":0,"total_either":0},"screen_reader_classes":true,"form_control_a11y_tree":[{"type":"button","attributes":{"aria-label":"Search","aria-keyshortcuts":"Control+K"},"properties":{"invalid":"false","focusable":true,"keyshortcuts":"Control+K"},"accessible_name":"Search","accessible_name_sources":[{"type":"attribute","value":"Search","attribute":"aria-label"},{"type":"contents","value":"Ctrl K"}],"role":"button"},{"type":"select","attributes":{"autocomplete":"off"},"properties":{"invalid":"false","focusable":true,"hasPopup":"menu","expanded":false},"accessible_name":"Select theme","accessible_name_sources":[{"type":"relatedElement","value":"Select theme"}],"role":"combobox"}],"fieldset_radio_checkbox":{"total_radio":0,"total_checkbox":0,"total_radio_in_fieldset":0,"total_checkbox_in_fieldset":0,"fieldsets":[]},"required_form_controls":[]}
ads
{"ads":{"present":false,"status":404,"redirected":false},"app_ads":{"present":false,"status":404,"redirected":false},"sellers":{"present":false,"redirected":false,"status":404}}
almanac
{"01.12":1,"01.13":0,"link-nodes":{"total":5,"nodes":[{"tagName":"link","rel":"canonical","href":"https://contribute.freecodecamp.org/intro/"},{"tagName":"link","rel":"sitemap","href":"/sitemap-index.xml"},{"tagName":"link","rel":"shortcut icon","href":"/favicon.ico","type":"image/x-icon"},{"tagName":"link","rel":"stylesheet","href":"/_astro/print.DNXP8c50.css","media":"print"},{"tagName":"link","rel":"stylesheet","href":"/_astro/index.D3GIIj4y.css"}],"attribute_usage_count":{"rel":5,"href":5,"type":1,"media":1}},"priority-hints":{"total":0,"nodes":[],"attribute_usage_count":{}},"meta-nodes":{"total":13,"nodes":[{"tagName":"meta","charset":"utf-8"},{"tagName":"meta","name":"viewport","content":"width=device-width, initial-scale=1"},{"tagName":"meta","name":"generator","content":"Astro v5.11.0"},{"tagName":"meta","name":"generator","content":"Starlight v0.34.4"},{"tagName":"meta","property":"og:title","content":"Contribute to the freeCodeCamp Community"},{"tagName":"meta","property":"og:type","content":"article"},{"tagName":"meta","property":"og:url","content":"https://contribute.freecodecamp.org/intro/"},{"tagName":"meta","property":"og:locale","content":"en"},{"tagName":"meta","property":"og:description","content":"Help us make freeCodeCamp better for everyone."},{"tagName":"meta","property":"og:site_name","content":"Contribute | freeCodeCamp.org"},{"tagName":"meta","name":"twitter:card","content":"summary_large_image"},{"tagName":"meta","name":"description","content":"Help us make freeCodeCamp better for everyone."},{"tagName":"meta","name":"twitter:site","content":"@freeCodeCamp"}],"attribute_usage_count":{"charset":1,"name":6,"content":12,"property":6}},"10.5":[],"seo-anchor-elements":{"internal":6,"external":7,"hash":2,"navigateHash":0,"earlyHash":1},"seo-titles":{"titleWords":7,"titleElements":2},"seo-words":{"wordsCount":43,"wordElements":8},"input_elements":{"total":2,"nodes":[{"tagName":"input","type":"text","placeholder":"Search"},{"tagName":"select","autocomplete":"off"}],"attribute_usage_count":{"class":2,"type":1,"placeholder":1,"autocapitalize":1,"enterkeyhint":1,"value":1,"autocomplete":1}},"link_protocols_used":{"https":13},"06.47":0,"08.39":{"link":0,"script":1},"09.27":{"total":0,"nodes":[],"attribute_usage_count":{}},"icon_only_clickables":1,"inline_svg_stats":{"total":15,"content_lengths":[305,678,689,951,391,323,381,456,545,587,314,919,2316,498,236],"attribute_usage_count":{"aria-hidden":13,"class":13,"width":15,"height":15,"viewbox":15,"fill":14,"style":13,"xmlns":1,"stroke":1,"stroke-width":1,"stroke-linecap":1,"stroke-linejoin":1}},"images":{"pictures":{"total":0,"nodes":[],"attribute_usage_count":{}},"imgs":{"total":3,"nodes":[{"tagName":"img"},{"tagName":"img"},{"tagName":"img"}],"attribute_usage_count":{"class":3,"alt":3,"src":3,"width":2,"height":2}},"sources":{"total":0,"nodes":[],"attribute_usage_count":{}},"total_with_srcset":0,"total_with_sizes":0,"total_pictures_with_img":0,"sizes_values":[],"loading_values":[],"alt_lengths":[0,0,26]},"videos":{"total":0,"nodes":[],"attribute_usage_count":{},"total_with_track":0,"tracks":{"total":0,"nodes":[],"attribute_usage_count":{}}},"audios":{"total":0,"nodes":[],"attribute_usage_count":{},"total_with_track":0,"tracks":{"total":0,"nodes":[],"attribute_usage_count":{}}},"iframes":{"iframes":{"total":0,"nodes":[],"attribute_usage_count":{}},"loading_values":[]},"scripts":{"total":9,"nodes":[{"tagName":"script"},{"tagName":"script","type":"module","src":"/_astro/page.B88YLdSP.js"},{"tagName":"script"},{"tagName":"script","type":"module","src":"/_astro/Search.astro_astro_type_script_index_0_lang.DMZ5WJ-J.js"},{"tagName":"script"},{"tagName":"script","type":"module"},{"tagName":"script","type":"module"},{"tagName":"script","type":"module"},{"tagName":"script","defer":"","src":"https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015","integrity":"sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==","data-cf-beacon":"","crossorigin":"anonymous"}],"attribute_usage_count":{"type":5,"src":3,"defer":1,"integrity":1,"data-cf-beacon":1,"crossorigin":1}},"nodes_using_role":{"total":1,"usage_and_count":{"search":1}},"headings_order":[1,2],"shortcuts_stats":{"total_with_aria_shortcut":1,"total_with_accesskey":0,"aria_shortcut_values":["control+k"],"accesskey_values":[]},"attributes_used_on_elements":{"lang":2,"dir":3,"data-theme":1,"data-has-hero":1,"class":98,"charset":1,"name":6,"content":12,"rel":8,"href":18,"type":7,"property":6,"id":5,"media":1,"src":6,"alt":3,"width":17,"height":17,"translate":1,"data-translations":1,"data-open-modal":1,"aria-label":4,"aria-keyshortcuts":1,"aria-hidden":15,"viewBox":15,"fill":15,"style":17,"d":15,"data-close-modal":1,"role":1,"action":1,"placeholder":1,"autocapitalize":1,"enterkeyhint":1,"value":4,"autocomplete":1,"selected":1,"data-pagefind-body":1,"data-page-title":1,"fill-rule":1,"clip-rule":1,"defer":1,"integrity":1,"data-cf-beacon":1,"crossorigin":1,"xmlns":1,"stroke":1,"stroke-width":1,"stroke-linecap":1,"stroke-linejoin":1},"body_node":{"tagName":"body","class":"astro-n7hj6ltz"},"html_node":{"tagName":"html","lang":"en","dir":"ltr","data-theme":"light","data-has-hero":"","class":"astro-n7hj6ltz"},"document_title":{"value":"Contribute to the freeCodeCamp Community | Contribute | freeCodeCamp.org","length":72},"length_of_h1s":[40]}
aurora
{"ng_version":null,"ng_img_user":null,"ng_priority_img_count":null,"ng_server_context":null,"nuxt_version":null,"nuxt_vue_version":null,"next_version":null,"next_is_script_user":null,"next_is_third_parties_user":null,"next_script_before_interactive_count":null,"next_script_after_interactive_count":null,"next_script_lazy_on_load_count":null,"next_script_worker_count":null,"react_version":null,"svelte_version":null,"feature_flags":[]}
avg_dom_depth
9
cms
{"wordpress":{"theme":{"theme":null,"child_theme":null},"block_theme":false,"has_embed_block":false,"embed_block_count":{"total":0,"total_by_type":[]},"scripts":[],"content_type":{"template":"unknown","post_type":"","taxonomy":""},"uses_interactivity_api":false,"interactivity_api_usage":{"total_regions":0,"total_regions_by_namespace":[]}}}
cookies
[]
crawl_links
["https:\/\/contribute.freecodecamp.org\/","https:\/\/contribute.freecodecamp.org\/getting-started\/"]
css
{"css_in_js":[],"prefersColorScheme":false,"externalCssInHead":2,"externalCssInBody":0,"inlineCssInHead":2,"inlineCssInBody":0}
css-variables
{"summary":{"--sl-color-white":{"get":[{"usedIn":"--sl-color-banner-text","value":"var(--sl-color-white)","selector":".sl-banner","condition":[{"type":"media","test":"print"}]},{"usedIn":"color","value":"var(--sl-color-white)","selector":".sl-badge","condition":[{"type":"media","test":"print"}]},{"usedIn":"color","value":"var(--sl-color-white)","selector":".sl-link-button.primary","condition":[{"type":"media","test":"print"}]}],"set":[{"value":"hsl(224, 10%, 10%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-1":{"set":[{"value":"hsl(224, 14%, 16%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-2":{"set":[{"value":"hsl(224, 10%, 23%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-3":{"set":[{"value":"hsl(224, 7%, 36%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-4":{"set":[{"value":"hsl(224, 6%, 56%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-5":{"get":[{"usedIn":"box-shadow","value":"inset 99rem 99rem var(--sl-color-gray-5)","selector":".expressive-code .frame.is-terminal .header::before","condition":[{"type":"media","test":"print"}]}],"set":[{"value":"hsl(224, 6%, 77%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-6":{"get":[{"usedIn":"--sl-color-bg-inline-code","value":"var(--sl-color-gray-6)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-hairline-light","value":"var(--sl-color-gray-6)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-hairline-shade","value":"var(--sl-color-gray-6)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"background-color","value":"var(--sl-color-gray-6)","selector":".scroll-to-top-btn-tooltip"}],"set":[{"value":"hsl(224, 20%, 94%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-gray-7":{"get":[{"usedIn":"--sl-color-bg-nav","value":"var(--sl-color-gray-7)","selector":":root","condition":[{"type":"media","test":"print"}]}],"set":[{"value":"hsl(224, 19%, 97%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-black":{"get":[{"usedIn":"--sl-color-text-invert","value":"var(--sl-color-black)","selector":":root","condition":[{"type":"media","test":"print"}]}],"set":[{"value":"hsl(0, 0%, 100%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-hue-orange":{"get":[{"usedIn":"--sl-color-orange-high","value":"hsl(var(--sl-hue-orange), 80%, 25%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-orange","value":"hsl(var(--sl-hue-orange), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-orange-low","value":"hsl(var(--sl-hue-orange), 90%, 88%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-orange-high":{"set":[{"value":"hsl(var(--sl-hue-orange), 80%, 25%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-orange":{"set":[{"value":"hsl(var(--sl-hue-orange), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-orange-low":{"set":[{"value":"hsl(var(--sl-hue-orange), 90%, 88%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-hue-green":{"get":[{"usedIn":"--sl-color-green-high","value":"hsl(var(--sl-hue-green), 80%, 22%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-green","value":"hsl(var(--sl-hue-green), 90%, 46%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-green-low","value":"hsl(var(--sl-hue-green), 85%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-green-high":{"set":[{"value":"hsl(var(--sl-hue-green), 80%, 22%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-green":{"set":[{"value":"hsl(var(--sl-hue-green), 90%, 46%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-green-low":{"set":[{"value":"hsl(var(--sl-hue-green), 85%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-hue-blue":{"get":[{"usedIn":"--sl-color-blue-high","value":"hsl(var(--sl-hue-blue), 80%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-blue","value":"hsl(var(--sl-hue-blue), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-blue-low","value":"hsl(var(--sl-hue-blue), 88%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-blue-high":{"set":[{"value":"hsl(var(--sl-hue-blue), 80%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-blue":{"set":[{"value":"hsl(var(--sl-hue-blue), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-blue-low":{"set":[{"value":"hsl(var(--sl-hue-blue), 88%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-hue-purple":{"get":[{"usedIn":"--sl-color-purple-high","value":"hsl(var(--sl-hue-purple), 90%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-purple","value":"hsl(var(--sl-hue-purple), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-purple-low","value":"hsl(var(--sl-hue-purple), 80%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-purple-high":{"set":[{"value":"hsl(var(--sl-hue-purple), 90%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-purple":{"set":[{"value":"hsl(var(--sl-hue-purple), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-purple-low":{"set":[{"value":"hsl(var(--sl-hue-purple), 80%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-hue-red":{"get":[{"usedIn":"--sl-color-red-high","value":"hsl(var(--sl-hue-red), 80%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-red","value":"hsl(var(--sl-hue-red), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-red-low","value":"hsl(var(--sl-hue-red), 80%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-red-high":{"set":[{"value":"hsl(var(--sl-hue-red), 80%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-red":{"set":[{"value":"hsl(var(--sl-hue-red), 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-red-low":{"set":[{"value":"hsl(var(--sl-hue-red), 80%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-accent-high":{"set":[{"value":"hsl(234, 80%, 30%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-accent":{"get":[{"usedIn":"--sl-color-text-accent","value":"var(--sl-color-accent)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"--sl-color-bg-accent","value":"var(--sl-color-accent)","selector":":root","condition":[{"type":"media","test":"print"}]},{"usedIn":"background-color","value":"var(--sl-color-accent)","selector":".scroll-to-top-button:hover"}],"set":[{"value":"hsl(234, 90%, 60%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-accent-low":{"set":[{"value":"hsl(234, 88%, 90%)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-text-accent":{"set":[{"value":"var(--sl-color-accent)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-text-invert":{"set":[{"value":"var(--sl-color-black)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-bg-nav":{"set":[{"value":"var(--sl-color-gray-7)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-bg":{"get":[{"usedIn":"--sl-color-bg-sidebar","value":"var(--sl-color-bg)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-bg-sidebar":{"get":[{"usedIn":"background-color","value":"var(--sl-color-bg-sidebar)","selector":".scroll-to-top-button"},{"usedIn":"background-color","value":"var(--sl-color-bg-sidebar)","selector":".scroll-to-top-button:not(:hover):not(:active)"}],"set":[{"value":"var(--sl-color-bg)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-bg-inline-code":{"set":[{"value":"var(--sl-color-gray-6)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-bg-accent":{"set":[{"value":"var(--sl-color-accent)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-hairline-light":{"get":[{"usedIn":"box-shadow","value":"inset 99rem 99rem var(--sl-color-hairline-light)","selector":".sl-steps > li::after","condition":[{"type":"media","test":"print"}]}],"set":[{"value":"var(--sl-color-gray-6)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-hairline-shade":{"set":[{"value":"var(--sl-color-gray-6)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-color-backdrop-overlay":{"set":[{"value":"hsla(225, 9%, 36%, .66)","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-shadow-sm":{"set":[{"value":"none","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-shadow-md":{"set":[{"value":"none","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-shadow-lg":{"set":[{"value":"none","selector":":root","condition":[{"type":"media","test":"print"}]}]},"--sl-sidebar-width":{"get":[{"usedIn":"--sl-content-inline-start","value":"var(--sl-sidebar-width)","selector":":where(.astro-n7hj6ltz)[data-has-sidebar]","condition":[{"type":"media","test":"(min-width: 50em)"}]}],"set":[{"value":"0px","selector":".main-pane","condition":[{"type":"media","test":"print"}]}]},"--sl-content-width":{"set":[{"value":"100%","selector":".main-pane","condition":[{"type":"media","test":"print"}]},{"value":"67.5rem","selector":"html:not([data-has-sidebar])"}]},"--sl-color-banner-text":{"set":[{"value":"var(--sl-color-white)","selector":".sl-banner","condition":[{"type":"media","test":"print"}]}]},"--sl-color-text":{"get":[{"usedIn":"color","value":"var(--sl-color-text)","selector":"starlight-file-tree .highlight","condition":[{"type":"media","test":"print"}]},{"usedIn":"color","value":"var(--sl-color-text)","selector":".scroll-to-top-btn-tooltip"}]},"--color-accent-200":{"set":[{"value":"#cec3db","selector":":root, :host"}]},"--color-accent-600":{"set":[{"value":"#7b5a9a","selector":":root, :host"}]},"--color-accent-900":{"set":[{"value":"#392b47","selector":":root, :host"}]},"--color-accent-950":{"set":[{"value":"#281f31","selector":":root, :host"}]},"--color-gray-100":{"set":[{"value":"#f5f6fd","selector":":root, :host"}]},"--color-gray-200":{"set":[{"value":"#eaedfc","selector":":root, :host"}]},"--color-gray-300":{"set":[{"value":"#bec1d3","selector":":root, :host"}]},"--color-gray-400":{"set":[{"value":"#8489ab","selector":":root, :host"}]},"--color-gray-500":{"set":[{"value":"#525574","selector":":root, :host"}]},"--color-zinc-600":{"get":[{"usedIn":"--color-gray-600","value":"var(--color-zinc-600)","selector":":root, :host"}],"set":[{"value":"oklch(44.2% .017 285.786)","selector":":root, :host"}]},"--color-gray-600":{"set":[{"value":"var(--color-zinc-600)","selector":":root, :host"}]},"--color-gray-700":{"set":[{"value":"#323552","selector":":root, :host"}]},"--color-gray-800":{"set":[{"value":"#22243f","selector":":root, :host"}]},"--color-gray-900":{"set":[{"value":"#161724","selector":":root, :host"}]},"--font-sans":{"set":[{"value":"ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\"","selector":":root, :host"}]},"--font-mono":{"set":[{"value":"ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace","selector":":root, :host"}]},"--color-white":{"set":[{"value":"#fff","selector":":root, :host"}]},"--spacing":{"set":[{"value":".25rem","selector":":root, :host"}]},"--default-transition-duration":{"set":[{"value":".15s","selector":":root, :host"}]},"--default-transition-timing-function":{"set":[{"value":"cubic-bezier(.4,0,.2,1)","selector":":root, :host"}]},"--sl-mobile-toc-height":{"get":[{"usedIn":"scroll-padding-top","value":"calc(1.5rem + var(--sl-nav-height) + var(--sl-mobile-toc-height))","selector":"html"}],"set":[{"value":"0rem","selector":"html:not([data-has-toc])"}]},"--sl-nav-height":{"get":[{"usedIn":"scroll-padding-top","value":"calc(1.5rem + var(--sl-nav-height) + var(--sl-mobile-toc-height))","selector":"html"},{"usedIn":"scroll-padding-top","value":"calc(1.5rem + var(--sl-nav-height))","selector":"html","condition":[{"type":"media","test":"(min-width: 72em)"}]}]},"--sl-content-inline-start":{"set":[{"value":"var(--sl-sidebar-width)","selector":":where(.astro-n7hj6ltz)[data-has-sidebar]","condition":[{"type":"media","test":"(min-width: 50em)"}]}]},"--sl-color-accent-dark":{"get":[{"usedIn":"background-color","value":"var(--sl-color-accent-dark)","selector":".scroll-to-top-button:active"}]},"--sl-text-white":{"get":[{"usedIn":"color","value":"var(--sl-text-white)","selector":".scroll-to-top-button:active"}]},"--sl-icon-size":{"set":[{"value":"1em","selector":""},{"value":"1em","selector":""},{"value":"1em","selector":""},{"value":"1em","selector":""},{"value":"1em","selector":""},{"value":"1em","selector":""},{"value":"1.5rem","selector":""},{"value":"1.5rem","selector":""},{"value":"1.333em","selector":""},{"value":"1.333em","selector":""},{"value":"1.333em","selector":""},{"value":"1.333em","selector":""},{"value":"1.2em","selector":""}]},"--sl-select-width":{"set":[{"value":"6.25em","selector":""}]}},"computed":[{"element":"HTML.astro-n7hj6ltz","children":[{"element":{},"declarations":{"--sl-icon-size":{"value":"1em"}},"times":4},{"element":"LABEL.astro-lneirf33","children":[{"element":{},"declarations":{"--sl-icon-size":{"value":"1em"}},"times":2}],"declarations":{"--sl-caret-size":{"value":"1.25rem"},"--sl-inline-padding":{"value":"0.5rem"},"--sl-label-icon-size":{"value":"0.875rem"},"--sl-select-width":{"value":"6.25em"}}},{"element":"DIV.main-pane.astro-sxb7xv7b","children":[{"element":"A.sl-link-button.not-content.primary.astro-rvdbmh3f.astro-fnfbevnj","children":[{"element":{},"declarations":{"--sl-icon-size":{"value":"1.5rem"}}}]},{"element":{},"declarations":{"--sl-icon-size":{"value":"1.5rem"}}},{"element":{},"declarations":{"--sl-icon-size":{"value":"1.333em"}},"times":4},{"element":{},"declarations":{"--sl-icon-size":{"value":"1.2em"}}}]},{"element":"BUTTON.scroll-to-top-button#scroll-to-top-button","declarations":{"background-color":{"value":"var(--sl-color-bg-sidebar)","references":["--sl-color-bg-sidebar"],"computed":"rgb(255, 255, 255)"}}}],"declarations":{"--color-gray-600":{"value":"var(--color-zinc-600)","references":["--color-zinc-600"],"computed":"oklch(44.2% 0.017 285.786)"},"scroll-padding-top":{"value":"calc(1.5rem + var(--sl-nav-height))","references":["--sl-nav-height"],"computed":"88px"},"--__sl-font":{"value":"ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\""},"--__sl-font-mono":{"value":"ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace"},"--__toc-width":{"value":"0rem"},"--color-accent-200":{"value":"#cec3db"},"--color-accent-600":{"value":"#7b5a9a"},"--color-accent-900":{"value":"#392b47"},"--color-accent-950":{"value":"#281f31"},"--color-gray-100":{"value":"#f5f6fd"},"--color-gray-200":{"value":"#eaedfc"},"--color-gray-300":{"value":"#bec1d3"},"--color-gray-400":{"value":"#8489ab"},"--color-gray-500":{"value":"#525574"},"--color-gray-700":{"value":"#323552"},"--color-gray-800":{"value":"#22243f"},"--color-gray-900":{"value":"#161724"},"--color-white":{"value":"#fff"},"--color-zinc-600":{"value":"oklch(44.2% 0.017 285.786)"},"--default-transition-duration":{"value":"0.15s"},"--default-transition-timing-function":{"value":"cubic-bezier(0.4,0,0.2,1)"},"--font-mono":{"value":"ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace"},"--font-sans":{"value":"ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\""},"--pagefind-ui-background":{"value":"#ffffff"},"--pagefind-ui-border":{"value":"#eeeeee"},"--pagefind-ui-border-radius":{"value":"8px"},"--pagefind-ui-border-width":{"value":"2px"},"--pagefind-ui-font":{"value":"system, -apple-system, \"BlinkMacSystemFont\", \".SFNSText-Regular\", \"San Francisco\", \"Roboto\", \"Segoe UI\", \"Helvetica Neue\", \"Lucida Grande\", \"Ubuntu\", \"arial\", sans-serif"},"--pagefind-ui-image-border-radius":{"value":"8px"},"--pagefind-ui-image-box-ratio":{"value":"3 / 2"},"--pagefind-ui-primary":{"value":"#393939"},"--pagefind-ui-scale":{"value":"0.8"},"--pagefind-ui-tag":{"value":"#eeeeee"},"--pagefind-ui-text":{"value":"#393939"},"--sl-badge-caution-bg":{"value":"hsl(41, 80%, 25%)"},"--sl-badge-caution-border":{"value":"hsl(41, 90%, 60%)"},"--sl-badge-caution-text":{"value":"#fff"},"--sl-badge-danger-bg":{"value":"hsl(339, 80%, 30%)"},"--sl-badge-danger-border":{"value":"hsl(339, 90%, 60%)"},"--sl-badge-danger-text":{"value":"#fff"},"--sl-badge-default-bg":{"value":"#392b47"},"--sl-badge-default-border":{"value":"#7b5a9a"},"--sl-badge-default-text":{"value":"#fff"},"--sl-badge-note-bg":{"value":"hsl(234, 80%, 30%)"},"--sl-badge-note-border":{"value":"hsl(234, 90%, 60%)"},"--sl-badge-note-text":{"value":"#fff"},"--sl-badge-success-bg":{"value":"hsl(101, 80%, 22%)"},"--sl-badge-success-border":{"value":"hsl(101, 90%, 46%)"},"--sl-badge-success-text":{"value":"#fff"},"--sl-badge-tip-bg":{"value":"hsl(281, 90%, 30%)"},"--sl-badge-tip-border":{"value":"hsl(281, 90%, 60%)"},"--sl-badge-tip-text":{"value":"#fff"},"--sl-color-accent":{"value":"#7b5a9a"},"--sl-color-accent-high":{"value":"#392b47"},"--sl-color-accent-low":{"value":"#cec3db"},"--sl-color-backdrop-overlay":{"value":"hsla(225, 9%, 36%, 0.66)"},"--sl-color-bg":{"value":"#fff"},"--sl-color-bg-accent":{"value":"#7b5a9a"},"--sl-color-bg-inline-code":{"value":"#eaedfc"},"--sl-color-bg-nav":{"value":"#f5f6fd"},"--sl-color-bg-sidebar":{"value":"#fff"},"--sl-color-black":{"value":"#fff"},"--sl-color-blue":{"value":"hsl(234, 90%, 60%)"},"--sl-color-blue-high":{"value":"hsl(234, 80%, 30%)"},"--sl-color-blue-low":{"value":"hsl(234, 88%, 90%)"},"--sl-color-gray-1":{"value":"#22243f"},"--sl-color-gray-2":{"value":"#323552"},"--sl-color-gray-3":{"value":"#525574"},"--sl-color-gray-4":{"value":"#8489ab"},"--sl-color-gray-5":{"value":"#bec1d3"},"--sl-color-gray-6":{"value":"#eaedfc"},"--sl-color-gray-7":{"value":"#f5f6fd"},"--sl-color-green":{"value":"hsl(101, 90%, 46%)"},"--sl-color-green-high":{"value":"hsl(101, 80%, 22%)"},"--sl-color-green-low":{"value":"hsl(101, 85%, 90%)"},"--sl-color-hairline":{"value":"#eaedfc"},"--sl-color-hairline-light":{"value":"#eaedfc"},"--sl-color-hairline-shade":{"value":"#eaedfc"},"--sl-color-orange":{"value":"hsl(41, 90%, 60%)"},"--sl-color-orange-high":{"value":"hsl(41, 80%, 25%)"},"--sl-color-orange-low":{"value":"hsl(41, 90%, 88%)"},"--sl-color-purple":{"value":"hsl(281, 90%, 60%)"},"--sl-color-purple-high":{"value":"hsl(281, 90%, 30%)"},"--sl-color-purple-low":{"value":"hsl(281, 80%, 90%)"},"--sl-color-red":{"value":"hsl(339, 90%, 60%)"},"--sl-color-red-high":{"value":"hsl(339, 80%, 30%)"},"--sl-color-red-low":{"value":"hsl(339, 80%, 90%)"},"--sl-color-text":{"value":"#323552"},"--sl-color-text-accent":{"value":"#7b5a9a"},"--sl-color-text-invert":{"value":"#fff"},"--sl-color-white":{"value":"#161724"},"--sl-content-pad-x":{"value":"1.5rem"},"--sl-content-width":{"value":"67.5rem"},"--sl-font":{"value":"ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\""},"--sl-font-mono":{"value":"ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace"},"--sl-font-system":{"value":"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\""},"--sl-font-system-mono":{"value":"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace"},"--sl-hue-blue":{"value":"234"},"--sl-hue-green":{"value":"101"},"--sl-hue-orange":{"value":"41"},"--sl-hue-purple":{"value":"281"},"--sl-hue-red":{"value":"339"},"--sl-line-height":{"value":"1.75"},"--sl-line-height-headings":{"value":"1.2"},"--sl-menu-button-size":{"value":"2rem"},"--sl-mobile-toc-height":{"value":"0rem"},"--sl-nav-gap":{"value":"1.5rem"},"--sl-nav-height":{"value":"4rem"},"--sl-nav-pad-x":{"value":"1.5rem"},"--sl-nav-pad-y":{"value":"0.75rem"},"--sl-outline-offset-inside":{"value":"-0.1875rem"},"--sl-shadow-lg":{"value":"0px 25px 7px rgba(0, 0, 0, 0.01), 0px 16px 6px hsla(0, 0%, 0%, 0.03), 0px 9px 5px hsla(223, 13%, 10%, 0.08), 0px 4px 4px hsla(0, 0%, 0%, 0.16), 0px 4px 2px hsla(0, 0%, 0%, 0.04)"},"--sl-shadow-md":{"value":"0px 8px 4px hsla(0, 0%, 0%, 0.03), 0px 5px 2px hsla(0, 0%, 0%, 0.03), 0px 3px 2px hsla(0, 0%, 0%, 0.06), 0px 1px 1px hsla(0, 0%, 0%, 0.06)"},"--sl-shadow-sm":{"value":"0px 1px 1px hsla(0, 0%, 0%, 0.06), 0px 2px 1px hsla(0, 0%, 0%, 0.06)"},"--sl-sidebar-pad-x":{"value":"1rem"},"--sl-sidebar-width":{"value":"18.75rem"},"--sl-text-2xl":{"value":"1.5rem"},"--sl-text-2xs":{"value":"0.75rem"},"--sl-text-3xl":{"value":"1.8125rem"},"--sl-text-4xl":{"value":"2.1875rem"},"--sl-text-5xl":{"value":"2.625rem"},"--sl-text-6xl":{"value":"4rem"},"--sl-text-base":{"value":"1rem"},"--sl-text-body":{"value":"1rem"},"--sl-text-body-sm":{"value":"0.8125rem"},"--sl-text-code":{"value":"0.875rem"},"--sl-text-code-sm":{"value":"0.8125rem"},"--sl-text-h1":{"value":"2.625rem"},"--sl-text-h2":{"value":"2.1875rem"},"--sl-text-h3":{"value":"1.8125rem"},"--sl-text-h4":{"value":"1.5rem"},"--sl-text-h5":{"value":"1.125rem"},"--sl-text-lg":{"value":"1.125rem"},"--sl-text-sm":{"value":"0.875rem"},"--sl-text-xl":{"value":"1.25rem"},"--sl-text-xs":{"value":"0.8125rem"},"--sl-z-index-menu":{"value":"5"},"--sl-z-index-navbar":{"value":"10"},"--sl-z-index-skiplink":{"value":"20"},"--sl-z-index-toc":{"value":"4"},"--spacing":{"value":"0.25rem"},"--tw-border-style":{"value":"solid"},"--tw-drop-shadow-alpha":{"value":"100%","type":"CSSUnitValue"},"--tw-outline-style":{"value":"solid"}}}]}
doctype
html
document_height
1279
document_width
1351
ecommerce
{"AndroidAppLinks":0,"iOSUniveralLinks":0}
element_count
{"html":1,"head":1,"meta":13,"title":1,"link":5,"script":9,"template":1,"style":2,"body":1,"a":13,"div":31,"header":1,"img":3,"span":12,"site-search":1,"button":4,"svg":15,"path":15,"kbd":3,"dialog":1,"form":1,"input":1,"starlight-theme-select":1,"label":1,"select":1,"option":3,"main":1,"h1":1,"h2":1,"article":4,"p":8,"footer":1}
event-names
{"https:\/\/contribute.freecodecamp.org\/intro\/":["change","change","change","pageshow","click","visibilitychange","pageHide"],"https:\/\/contribute.freecodecamp.org\/_astro\/page.B88YLdSP.js":["focusin","focusout","mouseenter","mouseleave","astro","DOMContentLoaded","mouseenter","mouseleave","keydown","mousedown","keydown","focus","blur","touchstart","touchend","click","scroll","resize"],"https:\/\/contribute.freecodecamp.org\/_astro\/Search.astro_astro_type_script_index_0_lang.DMZ5WJ-J.js":["load","error","click","click","click","close","keydown","DOMContentLoaded"],"https:\/\/static.cloudflareinsights.com\/beacon.min.js\/vcd15cbe7772f49c399c6a5babf22c1241717689176015":["visibilitychange","load","popstate","pageshow","visibilitychange","pagehide","visibilitychange","prerenderingchange","prerenderingchange","pointerup","pointercancel","load"]}
fugu-apis
[]
generated-content
{"percent":"0.0965","sizeInKB":"3.40"}
generated-html
<!DOCTYPE html> <html lang="en" dir="ltr" data-theme="light" data-has-hero="" class="astro-n7hj6ltz"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><title>Contribute to the freeCodeCamp Community | Contribute | freeCodeCamp.org</title><link rel="canonical" href="https://contribute.freecodecamp.org/intro/"><link rel="sitemap" href="/sitemap-index.xml"><link rel="shortcut icon" href="/favicon.ico" type="image/x-icon"><meta name="generator" content="Astro v5.11.0"><meta name="generator" content="Starlight v0.34.4"><meta property="og:title" content="Contribute to the freeCodeCamp Community"><meta property="og:type" content="article"><meta property="og:url" content="https://contribute.freecodecamp.org/intro/"><meta property="og:locale" content="en"><meta property="og:description" content="Help us make freeCodeCamp better for everyone."><meta property="og:site_name" content="Contribute | freeCodeCamp.org"><meta name="twitter:card" content="summary_large_image"><meta name="description" content="Help us make freeCodeCamp better for everyone."><meta name="twitter:site" content="@freeCodeCamp"><script> window.StarlightThemeProvider = (() => { const storedTheme = typeof localStorage !== 'undefined' && localStorage.getItem('starlight-theme'); const theme = storedTheme || (window.matchMedia('(prefers-color-scheme: light)').matches ? 'light' : 'dark'); document.documentElement.dataset.theme = theme === 'light' ? 'light' : 'dark'; return { updatePickers(theme = storedTheme || 'auto') { document.querySelectorAll('starlight-theme-select').forEach((picker) => { const select = picker.querySelector('select'); if (select) select.value = theme; /** @type {HTMLTemplateElement | null} */ const tmpl = document.querySelector(`#theme-icons`); const newIcon = tmpl && tmpl.content.querySelector('.' + theme); if (newIcon) { const oldIcon = picker.querySelector('svg.label-icon'); if (oldIcon) { oldIcon.replaceChildren(...newIcon.cloneNode(true).childNodes); } } }); }, }; })(); </script><template id="theme-icons"><svg aria-hidden="true" class="light astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M5 12a1 1 0 0 0-1-1H3a1 1 0 0 0 0 2h1a1 1 0 0 0 1-1Zm.64 5-.71.71a1 1 0 0 0 0 1.41 1 1 0 0 0 1.41 0l.71-.71A1 1 0 0 0 5.64 17ZM12 5a1 1 0 0 0 1-1V3a1 1 0 0 0-2 0v1a1 1 0 0 0 1 1Zm5.66 2.34a1 1 0 0 0 .7-.29l.71-.71a1 1 0 1 0-1.41-1.41l-.66.71a1 1 0 0 0 0 1.41 1 1 0 0 0 .66.29Zm-12-.29a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.71-.71a1.004 1.004 0 1 0-1.43 1.41l.73.71ZM21 11h-1a1 1 0 0 0 0 2h1a1 1 0 0 0 0-2Zm-2.64 6A1 1 0 0 0 17 18.36l.71.71a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.76-.66ZM12 6.5a5.5 5.5 0 1 0 5.5 5.5A5.51 5.51 0 0 0 12 6.5Zm0 9a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Zm0 3.5a1 1 0 0 0-1 1v1a1 1 0 0 0 2 0v-1a1 1 0 0 0-1-1Z"></path></svg><svg aria-hidden="true" class="dark astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.64 13a1 1 0 0 0-1.05-.14 8.049 8.049 0 0 1-3.37.73 8.15 8.15 0 0 1-8.14-8.1 8.59 8.59 0 0 1 .25-2A1 1 0 0 0 8 2.36a10.14 10.14 0 1 0 14 11.69 1 1 0 0 0-.36-1.05Zm-9.5 6.69A8.14 8.14 0 0 1 7.08 5.22v.27a10.15 10.15 0 0 0 10.14 10.14 9.784 9.784 0 0 0 2.1-.22 8.11 8.11 0 0 1-7.18 4.32v-.04Z"></path></svg><svg aria-hidden="true" class="auto astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"></path></svg></template><link rel="stylesheet" href="/_astro/print.DNXP8c50.css" media="print"><link rel="stylesheet" href="/_astro/index.D3GIIj4y.css"> <style>@layer starlight.components{:root{--sl-badge-default-border: var(--sl-color-accent);--sl-badge-default-bg: var(--sl-color-accent-low);--sl-badge-default-text: #fff;--sl-badge-note-border: var(--sl-color-blue);--sl-badge-note-bg: var(--sl-color-blue-low);--sl-badge-note-text: #fff;--sl-badge-danger-border: var(--sl-color-red);--sl-badge-danger-bg: var(--sl-color-red-low);--sl-badge-danger-text: #fff;--sl-badge-success-border: var(--sl-color-green);--sl-badge-success-bg: var(--sl-color-green-low);--sl-badge-success-text: #fff;--sl-badge-caution-border: var(--sl-color-orange);--sl-badge-caution-bg: var(--sl-color-orange-low);--sl-badge-caution-text: #fff;--sl-badge-tip-border: var(--sl-color-purple);--sl-badge-tip-bg: var(--sl-color-purple-low);--sl-badge-tip-text: #fff}[data-theme=light]:root{--sl-badge-default-bg: var(--sl-color-accent-high);--sl-badge-note-bg: var(--sl-color-blue-high);--sl-badge-danger-bg: var(--sl-color-red-high);--sl-badge-success-bg: var(--sl-color-green-high);--sl-badge-caution-bg: var(--sl-color-orange-high);--sl-badge-tip-bg: var(--sl-color-purple-high)}.sl-badge:where(.astro-apfhek72){display:inline-block;border:1px solid var(--sl-color-border-badge);border-radius:.25rem;font-family:var(--sl-font-system-mono);line-height:normal;color:var(--sl-color-text-badge);background-color:var(--sl-color-bg-badge);overflow-wrap:anywhere}.sidebar-content .sl-badge:where(.astro-apfhek72){line-height:1;font-size:var(--sl-text-xs);padding:.125rem .375rem}.sidebar-content a[aria-current=page]>.sl-badge:where(.astro-apfhek72){--sl-color-bg-badge: transparent;--sl-color-border-badge: currentColor;color:inherit}.default:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-default-bg);--sl-color-border-badge: var(--sl-badge-default-border);--sl-color-text-badge: var(--sl-badge-default-text)}.note:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-note-bg);--sl-color-border-badge: var(--sl-badge-note-border);--sl-color-text-badge: var(--sl-badge-note-text)}.danger:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-danger-bg);--sl-color-border-badge: var(--sl-badge-danger-border);--sl-color-text-badge: var(--sl-badge-danger-text)}.success:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-success-bg);--sl-color-border-badge: var(--sl-badge-success-border);--sl-color-text-badge: var(--sl-badge-success-text)}.tip:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-tip-bg);--sl-color-border-badge: var(--sl-badge-tip-border);--sl-color-text-badge: var(--sl-badge-tip-text)}.caution:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-caution-bg);--sl-color-border-badge: var(--sl-badge-caution-border);--sl-color-text-badge: var(--sl-badge-caution-text)}.small:where(.astro-apfhek72){font-size:var(--sl-text-xs);padding:.125rem .25rem}.medium:where(.astro-apfhek72){font-size:var(--sl-text-sm);padding:.175rem .35rem}.large:where(.astro-apfhek72){font-size:var(--sl-text-base);padding:.225rem .45rem}.sl-markdown-content :is(h1,h2,h3,h4,h5,h6) .sl-badge:where(.astro-apfhek72){vertical-align:middle}} @layer starlight.components{.card-grid:where(.astro-j2evhyfc){display:grid;grid-template-columns:100%;gap:1rem}.card-grid:where(.astro-j2evhyfc)>*{margin-top:0!important}@media (min-width: 50rem){.card-grid:where(.astro-j2evhyfc){grid-template-columns:1fr 1fr;gap:1.5rem}.stagger:where(.astro-j2evhyfc){--stagger-height: 5rem;padding-bottom:var(--stagger-height)}.stagger:where(.astro-j2evhyfc)>*:nth-child(2n){transform:translateY(var(--stagger-height))}}} @layer starlight.components{.card:where(.astro-xkz2rg4l){--sl-card-border: var(--sl-color-purple);--sl-card-bg: var(--sl-color-purple-low);border:1px solid var(--sl-color-gray-5);background-color:var(--sl-color-black);padding:clamp(1rem,calc(.125rem + 3vw),2.5rem);flex-direction:column;gap:clamp(.5rem,calc(.125rem + 1vw),1rem)}.card:where(.astro-xkz2rg4l):nth-child(4n+1){--sl-card-border: var(--sl-color-orange);--sl-card-bg: var(--sl-color-orange-low)}.card:where(.astro-xkz2rg4l):nth-child(4n+3){--sl-card-border: var(--sl-color-green);--sl-card-bg: var(--sl-color-green-low)}.card:where(.astro-xkz2rg4l):nth-child(4n+4){--sl-card-border: var(--sl-color-red);--sl-card-bg: var(--sl-color-red-low)}.card:where(.astro-xkz2rg4l):nth-child(4n+5){--sl-card-border: var(--sl-color-blue);--sl-card-bg: var(--sl-color-blue-low)}.title:where(.astro-xkz2rg4l){font-weight:600;font-size:var(--sl-text-h4);color:var(--sl-color-white);line-height:var(--sl-line-height-headings);gap:1rem;align-items:center}.card:where(.astro-xkz2rg4l) .icon:where(.astro-xkz2rg4l){border:1px solid var(--sl-card-border);background-color:var(--sl-card-bg);padding:.2em;border-radius:.25rem;flex-shrink:0}.card:where(.astro-xkz2rg4l) .body:where(.astro-xkz2rg4l){margin:0;font-size:clamp(var(--sl-text-sm),calc(.5rem + 1vw),var(--sl-text-body))}} @layer starlight.components{svg:where(.astro-xaj4nzjw){color:var(--sl-icon-color);font-size:var(--sl-icon-size, 1em);width:1em;height:1em}} @layer starlight.components{.sl-steps{--bullet-size: calc(var(--sl-line-height) * 1rem);--bullet-margin: .375rem;list-style:none;counter-reset:steps-counter var(--sl-steps-start, 0);padding-inline-start:0}.sl-steps>li{counter-increment:steps-counter;position:relative;padding-inline-start:calc(var(--bullet-size) + 1rem);padding-bottom:1px;min-height:calc(var(--bullet-size) + var(--bullet-margin))}.sl-steps>li+li{margin-top:0}.sl-steps>li:before{content:counter(steps-counter);position:absolute;top:0;inset-inline-start:0;width:var(--bullet-size);height:var(--bullet-size);line-height:var(--bullet-size);font-size:var(--sl-text-xs);font-weight:600;text-align:center;color:var(--sl-color-white);background-color:var(--sl-color-gray-6);border-radius:99rem;box-shadow:inset 0 0 0 1px var(--sl-color-gray-5)}.sl-steps>li:after{--guide-width: 1px;content:"";position:absolute;top:calc(var(--bullet-size) + var(--bullet-margin));bottom:var(--bullet-margin);inset-inline-start:calc((var(--bullet-size) - var(--guide-width)) / 2);width:var(--guide-width);background-color:var(--sl-color-hairline-light)}}@layer starlight.content{.sl-steps>li>:first-child{--lh: calc(1em * var(--sl-line-height));--shift-y: calc(.5 * (var(--bullet-size) - var(--lh)));transform:translateY(var(--shift-y));margin-bottom:var(--shift-y)}.sl-steps>li>:first-child:where(h1,h2,h3,h4,h5,h6){--lh: calc(1em * var(--sl-line-height-headings))}@supports (--prop: 1lh){.sl-steps>li>:first-child{--lh: 1lh}}} @layer starlight.components{starlight-file-tree:where(.astro-t72hyuag){--x-space: 1.5rem;--y-space: .125rem;--y-pad: 0;display:block;border:1px solid var(--sl-color-gray-5);padding:1rem;background-color:var(--sl-color-gray-6);font-size:var(--sl-text-xs);font-family:var(--__sl-font-mono);overflow-x:auto}starlight-file-tree:where(.astro-t72hyuag) .directory>details{border:0;padding:0;padding-inline-start:var(--x-space);background:transparent}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary{margin-inline-start:calc(-1 * var(--x-space));border:0;padding:var(--y-pad) .625rem;font-weight:400;color:var(--sl-color-white);max-width:100%}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary::marker,starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary::-webkit-details-marker{color:var(--sl-color-gray-3)}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary:hover,starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary:hover .tree-icon{cursor:pointer;color:var(--sl-color-text-accent);fill:currentColor}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary:hover~ul{border-color:var(--sl-color-gray-4)}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary:hover .highlight .tree-icon{color:var(--sl-color-text-invert);fill:currentColor}starlight-file-tree:where(.astro-t72hyuag) ul{margin-inline-start:.5rem;border-inline-start:1px solid var(--sl-color-gray-5);padding:0;padding-inline-start:.125rem;list-style:none}starlight-file-tree:where(.astro-t72hyuag)>ul{margin:0;border:0;padding:0}starlight-file-tree:where(.astro-t72hyuag) li{margin:var(--y-space) 0;padding:var(--y-pad) 0}starlight-file-tree:where(.astro-t72hyuag) .file{margin-inline-start:calc(var(--x-space) - .125rem);color:var(--sl-color-white)}starlight-file-tree:where(.astro-t72hyuag) .tree-entry{display:inline-flex;align-items:flex-start;flex-wrap:wrap;max-width:calc(100% - 1rem)}@media (min-width: 30em){starlight-file-tree:where(.astro-t72hyuag) .tree-entry{flex-wrap:nowrap}}starlight-file-tree:where(.astro-t72hyuag) .tree-entry>:first-child{flex-shrink:0}starlight-file-tree:where(.astro-t72hyuag) .empty{color:var(--sl-color-gray-3);padding-inline-start:.375rem}starlight-file-tree:where(.astro-t72hyuag) .comment{color:var(--sl-color-gray-3);padding-inline-start:1.625rem;max-width:24rem;min-width:12rem}starlight-file-tree:where(.astro-t72hyuag) .highlight{display:inline-block;border-radius:.25rem;padding-inline-end:.5rem;color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent)}starlight-file-tree:where(.astro-t72hyuag) svg{display:inline;fill:var(--sl-color-gray-3);vertical-align:middle;margin-inline:.25rem .375rem;width:.875rem;height:.875rem}starlight-file-tree:where(.astro-t72hyuag) .highlight svg.tree-icon{fill:currentColor}} @layer starlight.components{.sl-link-button:where(.astro-fnfbevnj){align-items:center;border:1px solid transparent;border-radius:999rem;display:inline-flex;font-size:var(--sl-text-sm);gap:.5em;line-height:1.1875;outline-offset:.25rem;padding:.4375rem 1.125rem;text-decoration:none}.sl-link-button:where(.astro-fnfbevnj).primary{background:var(--sl-color-text-accent);border-color:var(--sl-color-text-accent);color:var(--sl-color-black)}.sl-link-button:where(.astro-fnfbevnj).primary:hover{color:var(--sl-color-black)}.sl-link-button:where(.astro-fnfbevnj).secondary{border-color:inherit;color:var(--sl-color-white)}.sl-link-button:where(.astro-fnfbevnj).minimal{color:var(--sl-color-white);padding-inline:0}.sl-link-button:where(.astro-fnfbevnj) svg{flex-shrink:0}@media (min-width: 50rem){.sl-link-button:where(.astro-fnfbevnj){font-size:var(--sl-text-base);padding:.9375rem 1.25rem}}.sl-markdown-content .sl-link-button:where(.astro-fnfbevnj){margin-inline-end:1rem}.sl-markdown-content .sl-link-button:where(.astro-fnfbevnj):not(:where(p *)){margin-block:1rem}} </style><script type="module" src="/_astro/page.B88YLdSP.js"></script><style>/* inner styles set by WPT to match CSSOM */ .scroll-to-top-button { position: fixed; bottom: 40px; width: 47px; height: 47px; right: 35px; border-radius: 15%; background-color: var(--sl-color-bg-sidebar); cursor: pointer; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: opacity 0.3s, visibility 0.3s, background-color 0.3s, transform 0.3s; z-index: 100; border: none; transform-origin: center center; -webkit-tap-highlight-color: transparent; touch-action: manipulation; } .scroll-to-top-button:active { background-color: var(--sl-color-accent-dark); color: var(--sl-text-white); transition: background-color 0.1s, transform 0.1s; } .scroll-to-top-button:not(:hover):not(:active) { background-color: var(--sl-color-bg-sidebar); border: 1px solid var(--sl-color-gray-5); box-shadow: rgba(0, 0, 0, 0.04) 0px 0px 0px 1px, rgba(0, 0, 0, 0.2) 0px 4px 8px 0px; } .scroll-to-top-button.visible { opacity: 1; visibility: visible; } .scroll-to-top-button:hover { background-color: var(--sl-color-accent); box-shadow: rgba(0, 0, 0, 0.04) 0px 0px 0px 1px, rgba(0, 0, 0, 0.2) 0px 4px 8px 0px; color: white; border: none; } .scroll-to-top-button.keyboard-focus { outline: 2px solid var(--sl-color-text); outline-offset: 2px; } .scroll-to-top-btn-tooltip { position: absolute; right: -22px; top: -47px; background-color: var(--sl-color-gray-6); color: var(--sl-color-text); padding: 5px 10px; border-radius: 4px; font-weight: 400; font-size: 14px; white-space: nowrap; opacity: 0; visibility: hidden; transition: opacity 0.2s, visibility 0.3s; pointer-events: none; } .scroll-to-top-btn-tooltip.visible { opacity: 1; visibility: visible; } </style></head> <body class="astro-n7hj6ltz"> <a href="#_top" class="astro-25y2pg4e">Skip to content</a> <div class="page sl-flex astro-w2cw6nby"> <header class="header astro-w2cw6nby"><div class="header astro-yhkywj6c"> <div class="title-wrapper sl-flex astro-yhkywj6c"> <a href="/" class="site-title sl-flex astro-2iiz2v5s"> <img class="light:sl-hidden print:hidden astro-2iiz2v5s" alt="" src="/_astro/primary_logo.-jEg6IuN.svg" width="2100" height="240"> <img class="dark:sl-hidden print:block astro-2iiz2v5s" alt="" src="/_astro/secondary_logo.BMqpsykx.svg" width="2100" height="240"> <span class="sr-only astro-2iiz2v5s" translate="no"> Contribute | freeCodeCamp.org </span> </a> </div> <div class="sl-flex print:hidden astro-yhkywj6c"> <site-search class="astro-yhkywj6c astro-alqa3iwr" data-translations="{&quot;placeholder&quot;:&quot;Search&quot;}"> <button data-open-modal="" aria-label="Search" aria-keyshortcuts="Control+K" class="astro-alqa3iwr"> <svg aria-hidden="true" class="astro-alqa3iwr astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.71 20.29 18 16.61A9 9 0 1 0 16.61 18l3.68 3.68a.999.999 0 0 0 1.42 0 1 1 0 0 0 0-1.39ZM11 18a7 7 0 1 1 0-14 7 7 0 0 1 0 14Z"></path></svg> <span class="sl-hidden md:sl-block astro-alqa3iwr" aria-hidden="true">Search</span> <kbd class="sl-hidden md:sl-flex astro-alqa3iwr" style=""> <kbd class="astro-alqa3iwr">Ctrl</kbd><kbd class="astro-alqa3iwr">K</kbd> </kbd> </button> <dialog style="padding:0" aria-label="Search" class="astro-alqa3iwr"> <div class="dialog-frame sl-flex astro-alqa3iwr"> <button data-close-modal="" class="sl-flex md:sl-hidden astro-alqa3iwr"> Cancel </button> <div class="search-container astro-alqa3iwr"> <div id="starlight__search" class="astro-alqa3iwr"><div class="pagefind-ui svelte-e9gkc3 pagefind-ui--reset"><form class="pagefind-ui__form svelte-e9gkc3" role="search" aria-label="Search this site" action="javascript:void(0);"><input class="pagefind-ui__search-input svelte-e9gkc3" type="text" placeholder="Search" autocapitalize="none" enterkeyhint="search"> <button class="pagefind-ui__search-clear svelte-e9gkc3 pagefind-ui__suppressed">Clear</button> <div class="pagefind-ui__drawer svelte-e9gkc3 pagefind-ui__hidden"> </div></form></div></div> </div> </div> </dialog> </site-search> <script> (() => { const openBtn = document.querySelector('button[data-open-modal]'); const shortcut = openBtn?.querySelector('kbd'); if (!openBtn || !(shortcut instanceof HTMLElement)) return; const platformKey = shortcut.querySelector('kbd'); if (platformKey && /(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)) { platformKey.textContent = '⌘'; openBtn.setAttribute('aria-keyshortcuts', 'Meta+K'); } shortcut.style.display = ''; })(); </script> <script type="module" src="/_astro/Search.astro_astro_type_script_index_0_lang.DMZ5WJ-J.js"></script> </div> <div class="sl-hidden md:sl-flex print:hidden right-group astro-yhkywj6c"> <div class="sl-flex social-icons astro-yhkywj6c"> <a href="https://github.com/freeCodeCamp" rel="me" class="sl-flex astro-kopmcwwf"><span class="sr-only astro-kopmcwwf">GitHub</span><svg aria-hidden="true" class="astro-kopmcwwf astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M12 .3a12 12 0 0 0-3.8 23.38c.6.12.83-.26.83-.57L9 21.07c-3.34.72-4.04-1.61-4.04-1.61-.55-1.39-1.34-1.76-1.34-1.76-1.08-.74.09-.73.09-.73 1.2.09 1.83 1.24 1.83 1.24 1.08 1.83 2.81 1.3 3.5 1 .1-.78.42-1.31.76-1.61-2.67-.3-5.47-1.33-5.47-5.93 0-1.31.47-2.38 1.24-3.22-.14-.3-.54-1.52.1-3.18 0 0 1-.32 3.3 1.23a11.5 11.5 0 0 1 6 0c2.28-1.55 3.29-1.23 3.29-1.23.64 1.66.24 2.88.12 3.18a4.65 4.65 0 0 1 1.23 3.22c0 4.61-2.8 5.63-5.48 5.92.42.36.81 1.1.81 2.22l-.01 3.29c0 .31.2.69.82.57A12 12 0 0 0 12 .3Z"></path></svg></a><a href="https://twitter.com/freeCodeCamp" rel="me" class="sl-flex astro-kopmcwwf"><span class="sr-only astro-kopmcwwf">Twitter</span><svg aria-hidden="true" class="astro-kopmcwwf astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M24 4.4a10 10 0 0 1-2.83.78 5.05 5.05 0 0 0 2.17-2.79 9.7 9.7 0 0 1-3.13 1.23 4.89 4.89 0 0 0-5.94-1.03 5 5 0 0 0-2.17 2.38 5.15 5.15 0 0 0-.3 3.25c-1.95-.1-3.86-.63-5.61-1.53a14.04 14.04 0 0 1-4.52-3.74 5.2 5.2 0 0 0-.09 4.91c.39.74.94 1.35 1.61 1.82a4.77 4.77 0 0 1-2.23-.63v.06c0 1.16.4 2.29 1.12 3.18a4.9 4.9 0 0 0 2.84 1.74c-.73.22-1.5.26-2.24.12a4.89 4.89 0 0 0 4.59 3.49A9.78 9.78 0 0 1 0 19.73 13.65 13.65 0 0 0 7.55 22a13.63 13.63 0 0 0 9.96-4.16A14.26 14.26 0 0 0 21.6 7.65V7c.94-.72 1.75-1.6 2.4-2.6Z"></path></svg></a><a href="https://chat.freecodecamp.org" rel="me" class="sl-flex astro-kopmcwwf"><span class="sr-only astro-kopmcwwf">Discord</span><svg aria-hidden="true" class="astro-kopmcwwf astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M20.32 4.37a19.8 19.8 0 0 0-4.93-1.51 13.78 13.78 0 0 0-.64 1.28 18.27 18.27 0 0 0-5.5 0 12.64 12.64 0 0 0-.64-1.28h-.05A19.74 19.74 0 0 0 3.64 4.4 20.26 20.26 0 0 0 .11 18.09l.02.02a19.9 19.9 0 0 0 6.04 3.03l.04-.02a14.24 14.24 0 0 0 1.23-2.03.08.08 0 0 0-.05-.07 13.1 13.1 0 0 1-1.9-.92.08.08 0 0 1 .02-.1 10.2 10.2 0 0 0 .41-.31h.04a14.2 14.2 0 0 0 12.1 0l.04.01a9.63 9.63 0 0 0 .4.32.08.08 0 0 1-.03.1 12.29 12.29 0 0 1-1.9.91.08.08 0 0 0-.02.1 15.97 15.97 0 0 0 1.27 2.01h.04a19.84 19.84 0 0 0 6.03-3.05v-.03a20.12 20.12 0 0 0-3.57-13.69ZM8.02 15.33c-1.18 0-2.16-1.08-2.16-2.42 0-1.33.96-2.42 2.16-2.42 1.21 0 2.18 1.1 2.16 2.42 0 1.34-.96 2.42-2.16 2.42Zm7.97 0c-1.18 0-2.15-1.08-2.15-2.42 0-1.33.95-2.42 2.15-2.42 1.22 0 2.18 1.1 2.16 2.42 0 1.34-.94 2.42-2.16 2.42Z"></path></svg></a> </div> <starlight-theme-select> <label style="--sl-select-width: 6.25em" class="astro-lneirf33"> <span class="sr-only astro-lneirf33">Select theme</span> <svg aria-hidden="true" class="icon label-icon astro-lneirf33 astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"></path></svg> <select value="auto" autocomplete="off" class="astro-lneirf33"> <option value="dark" class="astro-lneirf33">Dark</option><option value="light" class="astro-lneirf33">Light</option><option value="auto" selected="" class="astro-lneirf33">Auto</option> </select> <svg aria-hidden="true" class="icon caret astro-lneirf33 astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"></path></svg> </label> </starlight-theme-select> <script> StarlightThemeProvider.updatePickers(); </script> <script type="module">const r="starlight-theme",o=e=>e==="auto"||e==="dark"||e==="light"?e:"auto",c=()=>o(typeof localStorage<"u"&&localStorage.getItem(r));function n(e){typeof localStorage<"u"&&localStorage.setItem(r,e==="light"||e==="dark"?e:"")}const l=()=>matchMedia("(prefers-color-scheme: light)").matches?"light":"dark";function t(e){StarlightThemeProvider.updatePickers(e),document.documentElement.dataset.theme=e==="auto"?l():e,n(e)}matchMedia("(prefers-color-scheme: light)").addEventListener("change",()=>{c()==="auto"&&t("auto")});class s extends HTMLElement{constructor(){super(),t(c()),this.querySelector("select")?.addEventListener("change",a=>{a.currentTarget instanceof HTMLSelectElement&&t(o(a.currentTarget.value))})}}customElements.define("starlight-theme-select",s);</script> <script type="module">class s extends HTMLElement{constructor(){super();const e=this.querySelector("select");e&&(e.addEventListener("change",t=>{t.currentTarget instanceof HTMLSelectElement&&(window.location.pathname=t.currentTarget.value)}),window.addEventListener("pageshow",t=>{if(!t.persisted)return;const n=e.querySelector("option[selected]")?.index;n!==e.selectedIndex&&(e.selectedIndex=n??0)}))}}customElements.define("starlight-lang-select",s);</script> </div> </div> </header> <div class="main-frame astro-w2cw6nby"> <script type="module">const a=document.getElementById("starlight__sidebar"),n=a?.querySelector("sl-sidebar-state-persist"),o="sl-sidebar-state",i=()=>{let t=[];const e=n?.dataset.hash||"";try{const s=sessionStorage.getItem(o),r=JSON.parse(s||"{}");Array.isArray(r.open)&&r.hash===e&&(t=r.open)}catch{}return{hash:e,open:t,scroll:a?.scrollTop||0}},c=t=>{try{sessionStorage.setItem(o,JSON.stringify(t))}catch{}},d=()=>c(i()),l=(t,e)=>{const s=i();s.open[e]=t,c(s)};n?.addEventListener("click",t=>{if(!(t.target instanceof Element))return;const e=t.target.closest("summary")?.closest("details");if(!e)return;const s=e.querySelector("sl-sidebar-restore"),r=parseInt(s?.dataset.index||"");isNaN(r)||l(!e.open,r)});addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&d()});addEventListener("pageHide",d);</script> <div class="lg:sl-flex astro-sxb7xv7b"> <div class="main-pane astro-sxb7xv7b"> <main data-pagefind-body="" class="astro-n7hj6ltz" lang="en" dir="ltr"> <div class="content-panel astro-dzf643rx"> <div class="sl-container astro-dzf643rx"> <div class="hero astro-rvdbmh3f"> <div class="hero-html sl-flex astro-rvdbmh3f"><img src="/images/branding/banner.png" class="hidden md:block w-96 rounded-full overflow-clip" alt="Contribute to freeCodeCamp"></div> <div class="sl-flex stack astro-rvdbmh3f"> <div class="sl-flex copy astro-rvdbmh3f"> <h1 id="_top" data-page-title="" class="astro-rvdbmh3f">Contribute to the freeCodeCamp Community</h1> <div class="tagline astro-rvdbmh3f">This community is possible thanks to thousands of kind volunteers like you.</div> </div> <div class="sl-flex actions astro-rvdbmh3f"> <a class="sl-link-button not-content primary astro-rvdbmh3f astro-fnfbevnj" href="/getting-started/"> Get Started <svg aria-hidden="true" class="astro-fnfbevnj astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.5rem;"><path d="M17.92 11.62a1.001 1.001 0 0 0-.21-.33l-5-5a1.003 1.003 0 1 0-1.42 1.42l3.3 3.29H7a1 1 0 0 0 0 2h7.59l-3.3 3.29a1.002 1.002 0 0 0 .325 1.639 1 1 0 0 0 1.095-.219l5-5a1 1 0 0 0 .21-.33 1 1 0 0 0 0-.76Z"></path></svg> </a> <a class="sl-link-button not-content secondary astro-rvdbmh3f astro-fnfbevnj" href="https://www.freecodecamp.org/donate"> Donate to our charity <svg aria-hidden="true" class="astro-fnfbevnj astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.5rem;"><path d="M20.16 5A6.29 6.29 0 0 0 12 4.36a6.27 6.27 0 0 0-8.16 9.48l6.21 6.22a2.78 2.78 0 0 0 3.9 0l6.21-6.22a6.27 6.27 0 0 0 0-8.84m-1.41 7.46-6.21 6.21a.76.76 0 0 1-1.08 0l-6.21-6.24a4.29 4.29 0 0 1 0-6 4.27 4.27 0 0 1 6 0 1 1 0 0 0 1.42 0 4.27 4.27 0 0 1 6 0 4.29 4.29 0 0 1 .08 6Z"></path></svg> </a> </div> </div> </div> <div class="sl-markdown-content"> <div class="sl-heading-wrapper level-h2"><h2 id="get-involved">Get Involved:</h2><a class="sl-anchor-link" href="#get-involved"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only">Section titled “Get Involved:”</span></a></div> <div class="card-grid astro-j2evhyfc"><article class="card sl-flex astro-xkz2rg4l"> <p class="title sl-flex astro-xkz2rg4l"> <svg aria-hidden="true" class="icon astro-xkz2rg4l astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.333em;"><path d="M21 12a1 1 0 0 0-1 1v6a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h6a1 1 0 1 0 0-2H5a3 3 0 0 0-3 3v14a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-6a1 1 0 0 0-1-1Zm-15 .76V17a1 1 0 0 0 1 1h4.24a1 1 0 0 0 .71-.29l6.92-6.93L21.71 8a1 1 0 0 0 0-1.42l-4.24-4.29a1 1 0 0 0-1.42 0l-2.82 2.83-6.94 6.93a1 1 0 0 0-.29.71Zm10.76-8.35 2.83 2.83-1.42 1.42-2.83-2.83 1.42-1.42ZM8 13.17l5.93-5.93 2.83 2.83L10.83 16H8v-2.83Z"></path></svg> <span class="astro-xkz2rg4l">Help Others</span> </p> <div class="body astro-xkz2rg4l"><p><a href="https://forum.freecodecamp.org">Help by answering coding questions</a> on our community forum.</p></div> </article> <article class="card sl-flex astro-xkz2rg4l"> <p class="title sl-flex astro-xkz2rg4l"> <svg aria-hidden="true" class="icon astro-xkz2rg4l astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.333em;"><path d="M21.71 20.29 18 16.61A9 9 0 1 0 16.61 18l3.68 3.68a.999.999 0 0 0 1.42 0 1 1 0 0 0 0-1.39ZM11 18a7 7 0 1 1 0-14 7 7 0 0 1 0 14Z"></path></svg> <span class="astro-xkz2rg4l">Feedback</span> </p> <div class="body astro-xkz2rg4l"><p><a href="https://forum.freecodecamp.org/c/project-feedback?max_posts=1">Give feedback on coding projects</a> built by campers.</p></div> </article> <article class="card sl-flex astro-xkz2rg4l"> <p class="title sl-flex astro-xkz2rg4l"> <svg aria-hidden="true" class="icon astro-xkz2rg4l astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.333em;"><path fill-rule="evenodd" d="M8.516 3a.94.94 0 0 0-.941.94v1.15H2.94a.94.94 0 1 0 0 1.882h7.362a7.422 7.422 0 0 1-1.787 3.958 7.42 7.42 0 0 1-1.422-2.425.94.94 0 1 0-1.774.627 9.303 9.303 0 0 0 1.785 3.043 7.422 7.422 0 0 1-4.164 1.278.94.94 0 1 0 0 1.881 9.303 9.303 0 0 0 5.575-1.855 9.303 9.303 0 0 0 4.11 1.74l-.763 1.525a.968.968 0 0 0-.016.034l-1.385 2.77a.94.94 0 1 0 1.683.841l1.133-2.267h5.806l1.134 2.267a.94.94 0 0 0 1.683-.841l-1.385-2.769a.95.95 0 0 0-.018-.036l-3.476-6.951a.94.94 0 0 0-1.682 0l-1.82 3.639a7.423 7.423 0 0 1-3.593-1.256 9.303 9.303 0 0 0 2.27-5.203h1.894a.94.94 0 0 0 0-1.881H9.456V3.94A.94.94 0 0 0 8.516 3Zm6.426 11.794a1.068 1.068 0 0 1-.02.039l-.703 1.407h3.924l-1.962-3.924-1.24 2.478Z" clip-rule="evenodd"></path></svg> <span class="astro-xkz2rg4l">Translations</span> </p> <div class="body astro-xkz2rg4l"><p><a href="/getting-started/#translations">Help us translate</a> freeCodeCamp.org’s resources.</p></div> </article> <article class="card sl-flex astro-xkz2rg4l"> <p class="title sl-flex astro-xkz2rg4l"> <svg aria-hidden="true" class="icon astro-xkz2rg4l astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.333em;"><path d="M0.734 13.269L0.562 10.732Q1.938 10.732 2.497 10.087L2.497 10.087Q2.884 9.614 2.884 8.711L2.884 8.711Q2.884 8.324 2.798 7.571Q2.712 6.819 2.712 6.410Q2.712 6.002 2.669 5.185L2.669 5.185Q2.583 4.454 2.583 4.153L2.583 4.153Q2.583 2.089 3.787 1.099Q4.991 0.111 7.184 0.111L7.184 0.111L8.259 0.111L8.259 2.648L7.700 2.648Q6.754 2.648 6.345 3.185Q5.937 3.723 5.937 4.798L5.937 4.798Q5.937 5.056 6.023 5.572L6.023 5.572Q6.109 6.217 6.109 6.561L6.109 6.561Q6.109 6.819 6.152 7.378L6.152 7.378Q6.238 8.152 6.238 8.582L6.238 8.582Q6.238 10.216 5.550 11.033L5.550 11.033Q4.948 11.764 3.658 12.065L3.658 12.065Q4.948 12.409 5.550 13.097L5.550 13.097Q6.238 13.957 6.238 15.548L6.238 15.548Q6.238 16.021 6.152 16.795L6.152 16.795Q6.066 17.354 6.088 17.612Q6.109 17.870 6.023 18.515L6.023 18.515Q5.937 18.988 5.937 19.203L5.937 19.203Q5.937 20.278 6.345 20.815Q6.754 21.353 7.700 21.353L7.700 21.353L8.259 21.353L8.259 23.890L7.184 23.890Q2.712 23.890 2.712 19.848L2.712 19.848Q2.712 18.386 2.862 17.590Q3.013 16.795 3.013 15.290L3.013 15.290Q3.013 13.269 0.734 13.269L0.734 13.269ZM23.438 10.732L23.438 13.011Q21.159 13.011 21.159 15.032L21.159 15.032Q21.159 15.419 21.224 16.171Q21.288 16.924 21.288 17.311L21.288 17.311Q21.417 18.128 21.417 19.590L21.417 19.590Q21.417 23.632 16.859 23.632L16.859 23.632L15.784 23.632L15.784 21.353L16.300 21.353Q17.246 21.353 17.654 20.815Q18.063 20.278 18.063 19.203Q18.063 18.128 17.934 17.569L17.934 17.569Q17.934 17.225 17.848 16.558Q17.762 15.892 17.762 15.548L17.762 15.548Q17.762 13.957 18.450 13.097L18.450 13.097Q19.052 12.409 20.342 12.065L20.342 12.065Q19.052 11.764 18.450 11.033L18.450 11.033Q17.762 10.216 17.762 8.582L17.762 8.582Q17.762 8.152 17.848 7.378L17.848 7.378Q17.934 6.819 17.934 6.561L17.934 6.561Q18.063 5.873 18.063 4.841Q18.063 3.809 17.633 3.293Q17.203 2.777 16.300 2.648L16.300 2.648L15.784 2.648L15.784 0.111L16.859 0.111Q19.009 0.111 20.213 1.099Q21.417 2.089 21.417 4.153L21.417 4.153Q21.417 4.540 21.352 5.292Q21.288 6.045 21.288 6.432L21.288 6.432Q21.159 7.249 21.116 8.711L21.116 8.711Q21.159 9.614 21.503 10.087L21.503 10.087Q22.062 10.732 23.438 10.732L23.438 10.732Z"></path></svg> <span class="astro-xkz2rg4l">Write Code</span> </p> <div class="body astro-xkz2rg4l"><p><a href="/getting-started/#learning-platform">Contribute with code</a> to our open-source codebases.</p></div> </article> </div> </div> <footer class="sl-flex astro-g2huq5qe"> <div class="meta sl-flex astro-g2huq5qe"> <a href="https://github.com/freeCodeCamp/contribute/edit/main/src/content/docs/intro.mdx" class="sl-flex print:hidden astro-o35pfnhe"><svg aria-hidden="true" class="astro-o35pfnhe astro-xaj4nzjw" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.2em;"><path d="M22 7.24a1 1 0 0 0-.29-.71l-4.24-4.24a1 1 0 0 0-1.1-.22 1 1 0 0 0-.32.22l-2.83 2.83L2.29 16.05a1 1 0 0 0-.29.71V21a1 1 0 0 0 1 1h4.24a1 1 0 0 0 .76-.29l10.87-10.93L21.71 8c.1-.1.17-.2.22-.33a1 1 0 0 0 0-.24v-.14l.07-.05ZM6.83 20H4v-2.83l9.93-9.93 2.83 2.83L6.83 20ZM18.17 8.66l-2.83-2.83 1.42-1.41 2.82 2.82-1.41 1.42Z"></path></svg>Edit page</a> </div> <div class="pagination-links print:hidden astro-sdcwcxqp" dir="ltr"> </div> </footer> </div> </div> </main> </div> </div> </div> </div> <script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon="{&quot;rayId&quot;:&quot;95d0638a0e523910&quot;,&quot;serverTiming&quot;:{&quot;name&quot;:{&quot;cfExtPri&quot;:true,&quot;cfEdge&quot;:true,&quot;cfOrigin&quot;:true,&quot;cfL4&quot;:true,&quot;cfSpeedBrain&quot;:true,&quot;cfCacheStatus&quot;:true}},&quot;version&quot;:&quot;2025.6.2&quot;,&quot;token&quot;:&quot;bdb993c6dde44e178aabd9555e75e4f4&quot;}" crossorigin="anonymous"></script> <button id="scroll-to-top-button" aria-label="Scroll to top" class="scroll-to-top-button" style="display: flex;"> <svg xmlns="http://www.w3.org/2000/svg" width="35" height="35" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> <path d="M18 15l-6-6-6 6"></path> </svg> </button></body></html>
has_shadow_root
false
img-loading-attr
[]
initiators
null
inline_style_bytes
12792
javascript
{"ajax_requests":{"xmlhttprequest":1,"fetch":3,"beacon":0,"total":4},"beacon_ajax_usage":0,"iframe":0,"requests_protocol":{"ajax_h1":0,"resources_h1":0,"ajax_h2":0,"resources_h2":0,"ajax_h3":4,"resources_h3":10},"web_component_specs":{"custom_elements":["site-search","starlight-theme-select"],"shadow_roots":[],"template":[]},"script_tags":{"total":9,"async":0,"defer":1,"crossorigin":0,"integrity":1,"nomodule":0,"nonce":0,"referrerpolicy":0,"src":3,"inline":6,"type_module":5,"async_and_defer":0,"defer_without_src":0,"charset":0,"language":0},"noscript_tags":{"total":0},"sourceMaps":{"count":0,"ext":{}},"bundler":[],"document":{"length":32560,"elements":147,"links":5,"stylesheets":2,"inlineStyles":1,"scripts":3,"inlineScripts":6}}
lib-detector-version
6.1.0
llms_txt_validation
{"valid":false,"message":404,"error":"Non OK status code"}
localstorage_size
15
markup
{"favicon":true,"rel_alternate_mobile":false,"compatMode":"CSS1Compat","noscripts":{"iframe_googletagmanager_count":0,"total":0},"buttons":{"types":{},"total":4},"form":{"target":{},"method":{},"elements":[{"tagNames":{"input":1,"button":1},"types":{"text":1},"total":2}],"total":1},"dirs":{"html_dir":"ltr","body_nodes_dir":{"values":{"ltr":2},"total":2}},"inputs":{"types":{"text":1},"total":1},"audios":{"autoplay":{},"total":0},"classes":{"unique_names_total":80,"references_total":221},"ids":{"ids_total":5,"duplicate_ids_total":0,"unique_ids_total":5},"images":{"picture":{"total":0},"source":{"total":0,"src_total":0,"srcset_total":0,"media_total":0,"type_total":0},"img":{"total":3,"src_total":3,"srcset_total":0,"alt":{"missing":0,"blank":2,"present":1},"loading":{"auto":0,"lazy":0,"eager":0,"invalid":0,"missing":3,"blank":0},"dimensions":{"missing_width":1,"missing_height":1}}},"iframes":{"total":0,"loading":{"auto":0,"lazy":0,"eager":0,"invalid":0,"missing":0,"blank":0}},"amp":{"html_amp_attribute_present":false,"html_amp_emoji_attribute_present":false,"amp_page":false,"rel_amphtml":null},"data_nosnippet":{"valid":0,"wrong_tag_type":0},"obsolete_elements":{},"svgs":{"svg_element_total":15,"svg_img_total":2,"svg_object_total":0,"svg_embed_total":0,"svg_iframe_total":0,"svg_total":17},"app":{"app_id_present":false,"meta_theme_color":null},"anchors":{"hrefs_without_special_scheme":[]},"dom-shape":{"bodyNodesCount":130,"bodyLeafNodesCount":54,"depth":{"mean":8.944444444444445,"median":8,"mode":8,"stddev":3.3356473449506843,"skew":0.28313677879470434,"range":{"min":1,"max":13}},"bodyNonLeafNodesCount":76,"branchFactor":{"mean":3.3552631578947367,"median":3,"mode":1,"stddev":2.234325209380729,"skew":1.0541272810270657,"range":{"min":1,"max":11}},"branchFactorByDepth":[{"depth":0,"count":1,"mean":8,"stddev":0,"skew":null,"median":8,"mode":8,"range":{"min":8,"max":8}},{"depth":1,"count":2,"mean":4,"stddev":1,"skew":1,"median":4,"mode":3,"range":{"min":3,"max":5}},{"depth":2,"count":3,"mean":3.3333333333333335,"stddev":1.247219128924647,"skew":1.0690449676496978,"median":3,"mode":2,"range":{"min":2,"max":5}},{"depth":3,"count":2,"mean":5,"stddev":2,"skew":1,"median":5,"mode":3,"range":{"min":3,"max":7}},{"depth":4,"count":4,"mean":6,"stddev":3.3166247903554,"skew":0.9045340337332909,"median":5,"mode":3,"range":{"min":3,"max":11}},{"depth":5,"count":5,"mean":4.6,"stddev":1.4966629547095764,"skew":1.0690449676496974,"median":5,"mode":3,"range":{"min":3,"max":7}},{"depth":6,"count":7,"mean":4,"stddev":2.6186146828319083,"skew":0.7637626158259734,"median":3,"mode":2,"range":{"min":2,"max":9}},{"depth":7,"count":10,"mean":2.7,"stddev":2.1931712199461306,"skew":0.7751332793988406,"median":1,"mode":1,"range":{"min":1,"max":7}},{"depth":8,"count":4,"mean":4.5,"stddev":0.8660254037844386,"skew":-0.5773502691896258,"median":5,"mode":5,"range":{"min":3,"max":5}},{"depth":9,"count":6,"mean":3.3333333333333335,"stddev":2.494438257849294,"skew":0.9354143466934854,"median":2.5,"mode":1,"range":{"min":1,"max":8}},{"depth":10,"count":9,"mean":3.888888888888889,"stddev":1.5947444549341474,"skew":-0.6967330142916176,"median":5,"mode":5,"range":{"min":1,"max":5}},{"depth":11,"count":13,"mean":2.8461538461538463,"stddev":1.8332885058173825,"skew":1.007017629956027,"median":3,"mode":1,"range":{"min":1,"max":5}},{"depth":12,"count":11,"mean":1.3636363636363635,"stddev":0.48104569292083466,"skew":0.7559289460184543,"median":1,"mode":1,"range":{"min":1,"max":2}}]}}
media
{"num_picture_img":0,"num_image_sizes":0,"num_srcset_all":0,"num_srcset_sizes":0,"num_srcset_descriptor_x":0,"num_srcset_descriptor_w":0,"num_srcset_candidates":0,"picture_formats":[],"num_video_nodes":0,"video_durations":[],"video_attributes_values_counts":[],"video_display_style":[],"video_using_source_media_count":0,"video_source_media_values":[],"video_source_format_count":[],"video_source_format_type":[],"num_picture_using_min_resolution":0,"num_picture_using_orientation":0,"num_img_not_in_picture_srcset_candidates":0}
meta_viewport
width=device-width, initial-scale=1
num_iframes
0
num_scripts
9
num_scripts_async
0
num_scripts_sync
3
observers
null
origin-trials
[]
parsed_css
[{"url":"https:\/\/contribute.freecodecamp.org\/_astro\/index.D3GIIj4y.css","ast":{"type":"stylesheet","stylesheet":{"rules":[{"type":"rule","selectors":["@layer properties"]},{"type":"supports","supports":"(((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b))))","rules":[{"type":"rule","selectors":["*",":before",":after","::backdrop"],"declarations":[{"type":"declaration","property":"--tw-rotate-x","value":"initial"},{"type":"declaration","property":"--tw-rotate-y","value":"initial"},{"type":"declaration","property":"--tw-rotate-z","value":"initial"},{"type":"declaration","property":"--tw-skew-x","value":"initial"},{"type":"declaration","property":"--tw-skew-y","value":"initial"},{"type":"declaration","property":"--tw-border-style","value":"solid"},{"type":"declaration","property":"--tw-outline-style","value":"solid"},{"type":"declaration","property":"--tw-blur","value":"initial"},{"type":"declaration","property":"--tw-brightness","value":"initial"},{"type":"declaration","property":"--tw-contrast","value":"initial"},{"type":"declaration","property":"--tw-grayscale","value":"initial"},{"type":"declaration","property":"--tw-hue-rotate","value":"initial"},{"type":"declaration","property":"--tw-invert","value":"initial"},{"type":"declaration","property":"--tw-opacity","value":"initial"},{"type":"declaration","property":"--tw-saturate","value":"initial"},{"type":"declaration","property":"--tw-sepia","value":"initial"},{"type":"declaration","property":"--tw-drop-shadow","value":"initial"},{"type":"declaration","property":"--tw-drop-shadow-color","value":"initial"},{"type":"declaration","property":"--tw-drop-shadow-alpha","value":"100%"},{"type":"declaration","property":"--tw-drop-shadow-size","value":"initial"}]}]}],"parsingErrors":[{"reason":"missing '}'","line":1,"column":85,"source":"@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer base{*,:after,:before{border:0 solid}html,:host{font-family:var(--font-sans)}code,kbd,samp,pre{font-family:var(--font-mono)}}@layer starlight,theme;@layer components{.sl-link-button.primary{color:#0a0a23!important;background-color:#feac32!important;background-image:linear-gradient(#fecc4c,#ffac33)!important;border:3px solid #feac32!important}.sl-link-button.primary:hover,.sl-link-button.primary:focus{color:#0a0a23!important;background-color:#fecc4c!important;background-image:none!important;border:3px solid #f1a02a!important}.sl-link-button.secondary{border:3px solid silver!important}.sl-link-button.secondary:hover,.sl-link-button.secondary:focus{color:#161724!important;background-color:#d0d0d0!important;border:3px solid #b0b0b0!important}}@layer utilities{:root{--sl-font:var(--font-sans);--sl-font-mono:var(--font-mono);--sl-color-white:var(--color-white);--sl-color-gray-1:var(--color-gray-200);--sl-color-gray-2:var(--color-gray-300);--sl-color-gray-3:var(--color-gray-400);--sl-color-gray-4:var(--color-gray-600);--sl-color-gray-5:var(--color-gray-700);--sl-color-gray-6:var(--color-gray-800);--sl-color-black:var(--color-gray-900);--sl-color-accent-low:var(--color-accent-950,var(--color-accent-900,#1e1b4b));--sl-color-accent:var(--color-accent-600,#4f46e5);--sl-color-accent-high:var(--color-accent-200,#c7d2fe)}:root[data-theme=light]{--sl-color-white:var(--color-gray-900);--sl-color-gray-1:var(--color-gray-800);--sl-color-gray-2:var(--color-gray-700);--sl-color-gray-3:var(--color-gray-500);--sl-color-gray-4:var(--color-gray-400);--sl-color-gray-5:var(--color-gray-300);--sl-color-gray-6:var(--color-gray-200);--sl-color-gray-7:var(--color-gray-100);--sl-color-black:var(--color-white);--sl-color-accent-low:var(--color-accent-200,#c7d2fe);--sl-color-accent:var(--color-accent-600,#4f46e5);--sl-color-accent-high:var(--color-accent-900,#312e81)}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.isolate{isolation:isolate}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.hidden{display:none}.table{display:table}.w-96{width:calc(var(--spacing)*96)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.overflow-clip{overflow:clip}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,visibility,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (min-width:48rem){.md\\:block{display:block}}}:root,:host{--color-accent-200:#cec3db;--color-accent-600:#7b5a9a;--color-accent-900:#392b47;--color-accent-950:#281f31;--color-gray-100:#f5f6fd;--color-gray-200:#eaedfc;--color-gray-300:#bec1d3;--color-gray-400:#8489ab;--color-gray-500:#525574;--color-gray-600:var(--color-zinc-600);--color-gray-700:#323552;--color-gray-800:#22243f;--color-gray-900:#161724;--font-sans:ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--color-zinc-600:oklch(44.2% .017 285.786);--color-white:#fff;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1)}@property --tw-rotate-x{syntax:\"*\";inherits:false}@property --tw-rotate-y{syntax:\"*\";inherits:false}@property --tw-rotate-z{syntax:\"*\";inherits:false}@property --tw-skew-x{syntax:\"*\";inherits:false}@property --tw-skew-y{syntax:\"*\";inherits:false}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-blur{syntax:\"*\";inherits:false}@property --tw-brightness{syntax:\"*\";inherits:false}@property --tw-contrast{syntax:\"*\";inherits:false}@property --tw-grayscale{syntax:\"*\";inherits:false}@property --tw-hue-rotate{syntax:\"*\";inherits:false}@property --tw-invert{syntax:\"*\";inherits:false}@property --tw-opacity{syntax:\"*\";inherits:false}@property --tw-saturate{syntax:\"*\";inherits:false}@property --tw-sepia{syntax:\"*\";inherits:false}@property --tw-drop-shadow{syntax:\"*\";inherits:false}@property --tw-drop-shadow-color{syntax:\"*\";inherits:false}@property --tw-drop-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:\"*\";inherits:false}@layer starlight.base,starlight.reset,starlight.core,starlight.content,starlight.components,starlight.utils;@layer starlight.base{:root,::backdrop{--sl-color-white: hsl(0, 0%, 100%);--sl-color-gray-1: hsl(224, 20%, 94%);--sl-color-gray-2: hsl(224, 6%, 77%);--sl-color-gray-3: hsl(224, 6%, 56%);--sl-color-gray-4: hsl(224, 7%, 36%);--sl-color-gray-5: hsl(224, 10%, 23%);--sl-color-gray-6: hsl(224, 14%, 16%);--sl-color-black: hsl(224, 10%, 10%);--sl-hue-orange: 41;--sl-color-orange-low: hsl(var(--sl-hue-orange), 39%, 22%);--sl-color-orange: hsl(var(--sl-hue-orange), 82%, 63%);--sl-color-orange-high: hsl(var(--sl-hue-orange), 82%, 87%);--sl-hue-green: 101;--sl-color-green-low: hsl(var(--sl-hue-green), 39%, 22%);--sl-color-green: hsl(var(--sl-hue-green), 82%, 63%);--sl-color-green-high: hsl(var(--sl-hue-green), 82%, 80%);--sl-hue-blue: 234;--sl-color-blue-low: hsl(var(--sl-hue-blue), 54%, 20%);--sl-color-blue: hsl(var(--sl-hue-blue), 100%, 60%);--sl-color-blue-high: hsl(var(--sl-hue-blue), 100%, 87%);--sl-hue-purple: 281;--sl-color-purple-low: hsl(var(--sl-hue-purple), 39%, 22%);--sl-color-purple: hsl(var(--sl-hue-purple), 82%, 63%);--sl-color-purple-high: hsl(var(--sl-hue-purple), 82%, 89%);--sl-hue-red: 339;--sl-color-red-low: hsl(var(--sl-hue-red), 39%, 22%);--sl-color-red: hsl(var(--sl-hue-red), 82%, 63%);--sl-color-red-high: hsl(var(--sl-hue-red), 82%, 87%);--sl-color-accent-low: hsl(224, 54%, 20%);--sl-color-accent: hsl(224, 100%, 60%);--sl-color-accent-high: hsl(224, 100%, 85%);--sl-color-text: var(--sl-color-gray-2);--sl-color-text-accent: var(--sl-color-accent-high);--sl-color-text-invert: var(--sl-color-accent-low);--sl-color-bg: var(--sl-color-black);--sl-color-bg-nav: var(--sl-color-gray-6);--sl-color-bg-sidebar: var(--sl-color-gray-6);--sl-color-bg-inline-code: var(--sl-color-gray-5);--sl-color-bg-accent: var(--sl-color-accent-high);--sl-color-hairline-light: var(--sl-color-gray-5);--sl-color-hairline: var(--sl-color-gray-6);--sl-color-hairline-shade: var(--sl-color-black);--sl-color-backdrop-overlay: hsla(223, 13%, 10%, .66);--sl-shadow-sm: 0px 1px 1px hsla(0, 0%, 0%, .12), 0px 2px 1px hsla(0, 0%, 0%, .24);--sl-shadow-md: 0px 8px 4px hsla(0, 0%, 0%, .08), 0px 5px 2px hsla(0, 0%, 0%, .08), 0px 3px 2px hsla(0, 0%, 0%, .12), 0px 1px 1px hsla(0, 0%, 0%, .15);--sl-shadow-lg: 0px 25px 7px hsla(0, 0%, 0%, .03), 0px 16px 6px hsla(0, 0%, 0%, .1), 0px 9px 5px hsla(223, 13%, 10%, .33), 0px 4px 4px hsla(0, 0%, 0%, .75), 0px 4px 2px hsla(0, 0%, 0%, .25);--sl-text-2xs: .75rem;--sl-text-xs: .8125rem;--sl-text-sm: .875rem;--sl-text-base: 1rem;--sl-text-lg: 1.125rem;--sl-text-xl: 1.25rem;--sl-text-2xl: 1.5rem;--sl-text-3xl: 1.8125rem;--sl-text-4xl: 2.1875rem;--sl-text-5xl: 2.625rem;--sl-text-6xl: 4rem;--sl-text-body: var(--sl-text-base);--sl-text-body-sm: var(--sl-text-xs);--sl-text-code: var(--sl-text-sm);--sl-text-code-sm: var(--sl-text-xs);--sl-text-h1: var(--sl-text-4xl);--sl-text-h2: var(--sl-text-3xl);--sl-text-h3: var(--sl-text-2xl);--sl-text-h4: var(--sl-text-xl);--sl-text-h5: var(--sl-text-lg);--sl-line-height: 1.75;--sl-line-height-headings: 1.2;--sl-font-system: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";--sl-font-system-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;--__sl-font: var(--sl-font, var(--sl-font-system)), var(--sl-font-system);--__sl-font-mono: var(--sl-font-mono, var(--sl-font-system-mono)), var(--sl-font-system-mono);--sl-nav-height: 3.5rem;--sl-nav-pad-x: 1rem;--sl-nav-pad-y: .75rem;--sl-mobile-toc-height: 3rem;--sl-sidebar-width: 18.75rem;--sl-sidebar-pad-x: 1rem;--sl-content-width: 45rem;--sl-content-pad-x: 1rem;--sl-menu-button-size: 2rem;--sl-nav-gap: var(--sl-content-pad-x);--sl-outline-offset-inside: -.1875rem;--sl-z-index-toc: 4;--sl-z-index-menu: 5;--sl-z-index-navbar: 10;--sl-z-index-skiplink: 20}:root[data-theme=light],[data-theme=light] ::backdrop{--sl-color-white: hsl(224, 10%, 10%);--sl-color-gray-1: hsl(224, 14%, 16%);--sl-color-gray-2: hsl(224, 10%, 23%);--sl-color-gray-3: hsl(224, 7%, 36%);--sl-color-gray-4: hsl(224, 6%, 56%);--sl-color-gray-5: hsl(224, 6%, 77%);--sl-color-gray-6: hsl(224, 20%, 94%);--sl-color-gray-7: hsl(224, 19%, 97%);--sl-color-black: hsl(0, 0%, 100%);--sl-color-orange-high: hsl(var(--sl-hue-orange), 80%, 25%);--sl-color-orange: hsl(var(--sl-hue-orange), 90%, 60%);--sl-color-orange-low: hsl(var(--sl-hue-orange), 90%, 88%);--sl-color-green-high: hsl(var(--sl-hue-green), 80%, 22%);--sl-color-green: hsl(var(--sl-hue-green), 90%, 46%);--sl-color-green-low: hsl(var(--sl-hue-green), 85%, 90%);--sl-color-blue-high: hsl(var(--sl-hue-blue), 80%, 30%);--sl-color-blue: hsl(var(--sl-hue-blue), 90%, 60%);--sl-color-blue-low: hsl(var(--sl-hue-blue), 88%, 90%);--sl-color-purple-high: hsl(var(--sl-hue-purple), 90%, 30%);--sl-color-purple: hsl(var(--sl-hue-purple), 90%, 60%);--sl-color-purple-low: hsl(var(--sl-hue-purple), 80%, 90%);--sl-color-red-high: hsl(var(--sl-hue-red), 80%, 30%);--sl-color-red: hsl(var(--sl-hue-red), 90%, 60%);--sl-color-red-low: hsl(var(--sl-hue-red), 80%, 90%);--sl-color-accent-high: hsl(234, 80%, 30%);--sl-color-accent: hsl(234, 90%, 60%);--sl-color-accent-low: hsl(234, 88%, 90%);--sl-color-text-accent: var(--sl-color-accent);--sl-color-text-invert: var(--sl-color-black);--sl-color-bg-nav: var(--sl-color-gray-7);--sl-color-bg-sidebar: var(--sl-color-bg);--sl-color-bg-inline-code: var(--sl-color-gray-6);--sl-color-bg-accent: var(--sl-color-accent);--sl-color-hairline-light: var(--sl-color-gray-6);--sl-color-hairline-shade: var(--sl-color-gray-6);--sl-color-backdrop-overlay: hsla(225, 9%, 36%, .66);--sl-shadow-sm: 0px 1px 1px hsla(0, 0%, 0%, .06), 0px 2px 1px hsla(0, 0%, 0%, .06);--sl-shadow-md: 0px 8px 4px hsla(0, 0%, 0%, .03), 0px 5px 2px hsla(0, 0%, 0%, .03), 0px 3px 2px hsla(0, 0%, 0%, .06), 0px 1px 1px hsla(0, 0%, 0%, .06);--sl-shadow-lg: 0px 25px 7px rgba(0, 0, 0, .01), 0px 16px 6px hsla(0, 0%, 0%, .03), 0px 9px 5px hsla(223, 13%, 10%, .08), 0px 4px 4px hsla(0, 0%, 0%, .16), 0px 4px 2px hsla(0, 0%, 0%, .04)}@media (min-width: 50em){:root{--sl-nav-height: 4rem;--sl-nav-pad-x: 1.5rem;--sl-text-h1: var(--sl-text-5xl);--sl-text-h2: var(--sl-text-4xl);--sl-text-h3: var(--sl-text-3xl);--sl-text-h4: var(--sl-text-2xl)}}@media (min-width: 72rem){:root{--sl-content-pad-x: 1.5rem;--sl-mobile-toc-height: 0rem}}}@layer starlight.reset{*,*:before,*:after{box-sizing:border-box}*{margin:0}html{color-scheme:dark;accent-color:var(--sl-color-accent)}html[data-theme=light]{color-scheme:light}body{font-family:var(--__sl-font);line-height:var(--sl-line-height);-webkit-font-smoothing:antialiased;color:var(--sl-color-text);background-color:var(--sl-color-bg)}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6,code{overflow-wrap:anywhere}code{font-family:var(--__sl-font-mono)}}@layer starlight.components{.starlight-aside{padding:1rem;border-inline-start:.25rem solid var(--sl-color-asides-border);color:var(--sl-color-white)}.starlight-aside--note{--sl-color-asides-text-accent: var(--sl-color-blue-high);--sl-color-asides-border: var(--sl-color-blue);background-color:var(--sl-color-blue-low)}.starlight-aside--tip{--sl-color-asides-text-accent: var(--sl-color-purple-high);--sl-color-asides-border: var(--sl-color-purple);background-color:var(--sl-color-purple-low)}.starlight-aside--caution{--sl-color-asides-text-accent: var(--sl-color-orange-high);--sl-color-asides-border: var(--sl-color-orange);background-color:var(--sl-color-orange-low)}.starlight-aside--danger{--sl-color-asides-text-accent: var(--sl-color-red-high);--sl-color-asides-border: var(--sl-color-red);background-color:var(--sl-color-red-low)}.starlight-aside__title{display:flex;gap:.5rem;align-items:center;font-size:var(--sl-text-h5);font-weight:600;line-height:var(--sl-line-height-headings);color:var(--sl-color-asides-text-accent)}.starlight-aside__icon{font-size:1.333em;width:1em;height:1em}.starlight-aside__title+.starlight-aside__content{margin-top:.5rem}.starlight-aside__content a{color:var(--sl-color-asides-text-accent)}}@layer starlight.utils{.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sl-hidden{display:none}.sl-flex{display:flex}.sl-block{display:block}@media (min-width: 50rem){.md\\:sl-hidden{display:none}.md\\:sl-flex{display:flex}.md\\:sl-block{display:block}}@media (min-width: 72rem){.lg\\:sl-hidden{display:none}.lg\\:sl-flex{display:flex}.lg\\:sl-block{display:block}}[data-theme=light] .light\\:sl-hidden,[data-theme=dark] .dark\\:sl-hidden{display:none}[dir=rtl] .rtl\\:flip:not(:where([dir=rtl] [dir=ltr] *)){transform:scaleX(-1)}}@layer starlight.content{.sl-markdown-content .sl-heading-wrapper{--sl-anchor-icon-size: .8275em;--sl-anchor-icon-gap: .25em;--sl-anchor-icon-space: calc(var(--sl-anchor-icon-size) + var(--sl-anchor-icon-gap));line-height:var(--sl-line-height-headings)}.sl-markdown-content :not(h1,h2,h3,h4,h5,h6,.sl-heading-wrapper)+:is(.sl-heading-wrapper){margin-top:1.5em}.sl-markdown-content .sl-heading-wrapper.level-h1{font-size:var(--sl-text-h1)}.sl-markdown-content .sl-heading-wrapper.level-h2{font-size:var(--sl-text-h2)}.sl-markdown-content .sl-heading-wrapper.level-h3{font-size:var(--sl-text-h3)}.sl-markdown-content .sl-heading-wrapper.level-h4{font-size:var(--sl-text-h4)}.sl-markdown-content .sl-heading-wrapper.level-h5{font-size:var(--sl-text-h5)}.sl-markdown-content .sl-heading-wrapper.level-h6{font-size:var(--sl-text-h6)}.sl-markdown-content .sl-heading-wrapper>:first-child{display:inline;padding-inline-end:var(--sl-anchor-icon-space)}.sl-markdown-content .sl-anchor-link{position:relative;margin-inline-start:calc(-1 * var(--sl-anchor-icon-size));-webkit-user-select:none;user-select:none;display:inline-flex}.sl-markdown-content .sl-anchor-link:after{content:\"\";position:absolute;inset:-.25rem -.5rem}.sl-markdown-content .sl-anchor-icon>svg{display:inline;width:var(--sl-anchor-icon-size);vertical-align:top;transform:translateY(calc((var(--sl-line-height-headings) * 1em - var(--sl-anchor-icon-size)) \/ 2))}@media (hover: hover){.sl-markdown-content .sl-anchor-link{opacity:0}.sl-markdown-content .sl-anchor-link:focus,.sl-markdown-content .sl-heading-wrapper:hover .sl-anchor-link{opacity:1}}}@layer starlight.core{.sl-banner:where(.astro-nrr65xn3){--__sl-banner-text: var(--sl-color-banner-text, var(--sl-color-text-invert));padding:var(--sl-nav-pad-y) var(--sl-nav-pad-x);background-color:var(--sl-color-banner-bg, var(--sl-color-bg-accent));color:var(--__sl-banner-text);line-height:var(--sl-line-height-headings);text-align:center;text-wrap:balance;box-shadow:var(--sl-shadow-sm)}.sl-banner:where(.astro-nrr65xn3) a{color:var(--__sl-banner-text)}}@layer starlight.core{.content-panel:where(.astro-dzf643rx){padding:1.5rem var(--sl-content-pad-x)}.content-panel:where(.astro-dzf643rx)+.content-panel:where(.astro-dzf643rx){border-top:1px solid var(--sl-color-hairline)}.sl-container:where(.astro-dzf643rx){max-width:var(--sl-content-width)}.sl-container:where(.astro-dzf643rx)>*+*{margin-top:1.5rem}@media (min-width: 72rem){.sl-container:where(.astro-dzf643rx){margin-inline:var(--sl-content-margin-inline, auto)}}}@layer starlight.core{p:where(.astro-dhw4sgoj){border:1px solid var(--sl-color-orange);padding:.75em 1em;background-color:var(--sl-color-orange-low);color:var(--sl-color-orange-high);width:max-content;max-width:100%;align-items:center;gap:.75em;font-size:var(--sl-text-body-sm);line-height:var(--sl-line-height-headings)}}@layer starlight.core{a:where(.astro-o35pfnhe){gap:.5rem;align-items:center;text-decoration:none;color:var(--sl-color-gray-3)}a:where(.astro-o35pfnhe):hover{color:var(--sl-color-white)}}@layer starlight.core{.pagination-links:where(.astro-sdcwcxqp){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));gap:1rem}a:where(.astro-sdcwcxqp){display:flex;align-items:center;justify-content:flex-start;gap:.5rem;width:100%;flex-basis:calc(50% - .5rem);flex-grow:1;border:1px solid var(--sl-color-gray-5);border-radius:.5rem;padding:1rem;text-decoration:none;color:var(--sl-color-gray-2);box-shadow:var(--sl-shadow-md);overflow-wrap:anywhere}:where(.astro-sdcwcxqp)[rel=next]{justify-content:end;text-align:end;flex-direction:row-reverse}a:where(.astro-sdcwcxqp):hover{border-color:var(--sl-color-gray-2)}.link-title:where(.astro-sdcwcxqp){color:var(--sl-color-white);font-size:var(--sl-text-2xl);line-height:var(--sl-line-height-headings)}svg:where(.astro-sdcwcxqp){flex-shrink:0}}@layer starlight.core{footer:where(.astro-g2huq5qe){flex-direction:column;gap:1.5rem}.meta:where(.astro-g2huq5qe){gap:.75rem 3rem;justify-content:space-between;flex-wrap:wrap;margin-top:3rem;font-size:var(--sl-text-sm);color:var(--sl-color-gray-3)}.meta:where(.astro-g2huq5qe)>p:only-child{margin-inline-start:auto}.kudos:where(.astro-g2huq5qe){align-items:center;gap:.5em;margin:1.5rem auto;font-size:var(--sl-text-xs);text-decoration:none;color:var(--sl-color-gray-3)}.kudos:where(.astro-g2huq5qe):hover{color:var(--sl-color-white)}}@layer starlight.components{.kudos:where(.astro-g2huq5qe) svg{color:var(--sl-color-orange)}}@layer starlight.core{label:where(.astro-lneirf33){--sl-label-icon-size: .875rem;--sl-caret-size: 1.25rem;--sl-inline-padding: .5rem;position:relative;display:flex;align-items:center;gap:.25rem;color:var(--sl-color-gray-1)}label:where(.astro-lneirf33):hover{color:var(--sl-color-gray-2)}.icon:where(.astro-lneirf33){position:absolute;top:50%;transform:translateY(-50%);pointer-events:none}select:where(.astro-lneirf33){border:0;padding-block:.625rem;padding-inline:calc(var(--sl-label-icon-size) + var(--sl-inline-padding) + .25rem) calc(var(--sl-caret-size) + var(--sl-inline-padding) + .25rem);margin-inline:calc(var(--sl-inline-padding) * -1);width:calc(var(--sl-select-width) + var(--sl-inline-padding) * 2);background-color:transparent;text-overflow:ellipsis;color:inherit;cursor:pointer;appearance:none}option:where(.astro-lneirf33){background-color:var(--sl-color-bg-nav);color:var(--sl-color-gray-1)}@media (min-width: 50rem){select:where(.astro-lneirf33){font-size:var(--sl-text-sm)}}}@layer starlight.components{.label-icon:where(.astro-lneirf33){font-size:var(--sl-label-icon-size);inset-inline-start:0}.caret:where(.astro-lneirf33){font-size:var(--sl-caret-size);inset-inline-end:0}}@layer starlight.core{.pagefind-ui__result.svelte-j9e30.svelte-j9e30{list-style-type:none;display:flex;align-items:flex-start;gap:min(calc(40px * var(--pagefind-ui-scale)),3%);padding:calc(30px * var(--pagefind-ui-scale)) 0 calc(40px * var(--pagefind-ui-scale));border-top:solid var(--pagefind-ui-border-width) var(--pagefind-ui-border)}.pagefind-ui__result.svelte-j9e30.svelte-j9e30:last-of-type{border-bottom:solid var(--pagefind-ui-border-width) var(--pagefind-ui-border)}.pagefind-ui__result-thumb.svelte-j9e30.svelte-j9e30{width:min(30%,calc((30% - (100px * var(--pagefind-ui-scale))) * 100000));max-width:calc(120px * var(--pagefind-ui-scale));margin-top:calc(10px * var(--pagefind-ui-scale));aspect-ratio:var(--pagefind-ui-image-box-ratio);position:relative}.pagefind-ui__result-image.svelte-j9e30.svelte-j9e30{display:block;position:absolute;left:50%;transform:translate(-50%);font-size:0;width:auto;height:auto;max-width:100%;max-height:100%;border-radius:var(--pagefind-ui-image-border-radius)}.pagefind-ui__result-inner.svelte-j9e30.svelte-j9e30{flex:1;display:flex;flex-direction:column;align-items:flex-start;margin-top:calc(10px * var(--pagefind-ui-scale))}.pagefind-ui__result-title.svelte-j9e30.svelte-j9e30{display:inline-block;font-weight:700;font-size:calc(21px * var(--pagefind-ui-scale));margin-top:0;margin-bottom:0}.pagefind-ui__result-title.svelte-j9e30 .pagefind-ui__result-link.svelte-j9e30{color:var(--pagefind-ui-text);text-decoration:none}.pagefind-ui__result-title.svelte-j9e30 .pagefind-ui__result-link.svelte-j9e30:hover{text-decoration:underline}.pagefind-ui__result-excerpt.svelte-j9e30.svelte-j9e30{display:inline-block;font-weight:400;font-size:calc(16px * var(--pagefind-ui-scale));margin-top:calc(4px * var(--pagefind-ui-scale));margin-bottom:0;min-width:calc(250px * var(--pagefind-ui-scale))}.pagefind-ui__loading.svelte-j9e30.svelte-j9e30{color:var(--pagefind-ui-text);background-color:var(--pagefind-ui-text);border-radius:var(--pagefind-ui-border-radius);opacity:.1;pointer-events:none}.pagefind-ui__result-tags.svelte-j9e30.svelte-j9e30{list-style-type:none;padding:0;display:flex;gap:calc(20px * var(--pagefind-ui-scale));flex-wrap:wrap;margin-top:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__result-tag.svelte-j9e30.svelte-j9e30{padding:calc(4px * var(--pagefind-ui-scale)) calc(8px * var(--pagefind-ui-scale));font-size:calc(14px * var(--pagefind-ui-scale));border-radius:var(--pagefind-ui-border-radius);background-color:var(--pagefind-ui-tag)}.pagefind-ui__result.svelte-4xnkmf.svelte-4xnkmf{list-style-type:none;display:flex;align-items:flex-start;gap:min(calc(40px * var(--pagefind-ui-scale)),3%);padding:calc(30px * var(--pagefind-ui-scale)) 0 calc(40px * var(--pagefind-ui-scale));border-top:solid var(--pagefind-ui-border-width) var(--pagefind-ui-border)}.pagefind-ui__result.svelte-4xnkmf.svelte-4xnkmf:last-of-type{border-bottom:solid var(--pagefind-ui-border-width) var(--pagefind-ui-border)}.pagefind-ui__result-nested.svelte-4xnkmf.svelte-4xnkmf{display:flex;flex-direction:column;padding-left:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__result-nested.svelte-4xnkmf.svelte-4xnkmf:first-of-type{padding-top:calc(10px * var(--pagefind-ui-scale))}.pagefind-ui__result-nested.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf{font-size:.9em;position:relative}.pagefind-ui__result-nested.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf:before{content:\"\u2937 \";position:absolute;top:0;right:calc(100% + .1em)}.pagefind-ui__result-thumb.svelte-4xnkmf.svelte-4xnkmf{width:min(30%,calc((30% - (100px * var(--pagefind-ui-scale))) * 100000));max-width:calc(120px * var(--pagefind-ui-scale));margin-top:calc(10px * var(--pagefind-ui-scale));aspect-ratio:var(--pagefind-ui-image-box-ratio);position:relative}.pagefind-ui__result-image.svelte-4xnkmf.svelte-4xnkmf{display:block;position:absolute;left:50%;transform:translate(-50%);font-size:0;width:auto;height:auto;max-width:100%;max-height:100%;border-radius:var(--pagefind-ui-image-border-radius)}.pagefind-ui__result-inner.svelte-4xnkmf.svelte-4xnkmf{flex:1;display:flex;flex-direction:column;align-items:flex-start;margin-top:calc(10px * var(--pagefind-ui-scale))}.pagefind-ui__result-title.svelte-4xnkmf.svelte-4xnkmf{display:inline-block;font-weight:700;font-size:calc(21px * var(--pagefind-ui-scale));margin-top:0;margin-bottom:0}.pagefind-ui__result-title.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf{color:var(--pagefind-ui-text);text-decoration:none}.pagefind-ui__result-title.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf:hover{text-decoration:underline}.pagefind-ui__result-excerpt.svelte-4xnkmf.svelte-4xnkmf{display:inline-block;font-weight:400;font-size:calc(16px * var(--pagefind-ui-scale));margin-top:calc(4px * var(--pagefind-ui-scale));margin-bottom:0;min-width:calc(250px * var(--pagefind-ui-scale))}.pagefind-ui__loading.svelte-4xnkmf.svelte-4xnkmf{color:var(--pagefind-ui-text);background-color:var(--pagefind-ui-text);border-radius:var(--pagefind-ui-border-radius);opacity:.1;pointer-events:none}.pagefind-ui__result-tags.svelte-4xnkmf.svelte-4xnkmf{list-style-type:none;padding:0;display:flex;gap:calc(20px * var(--pagefind-ui-scale));flex-wrap:wrap;margin-top:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__result-tag.svelte-4xnkmf.svelte-4xnkmf{padding:calc(4px * var(--pagefind-ui-scale)) calc(8px * var(--pagefind-ui-scale));font-size:calc(14px * var(--pagefind-ui-scale));border-radius:var(--pagefind-ui-border-radius);background-color:var(--pagefind-ui-tag)}legend.svelte-1v2r7ls.svelte-1v2r7ls{position:absolute;clip:rect(0 0 0 0)}.pagefind-ui__filter-panel.svelte-1v2r7ls.svelte-1v2r7ls{min-width:min(calc(260px * var(--pagefind-ui-scale)),100%);flex:1;display:flex;flex-direction:column;margin-top:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__filter-group.svelte-1v2r7ls.svelte-1v2r7ls{border:0;padding:0}.pagefind-ui__filter-block.svelte-1v2r7ls.svelte-1v2r7ls{padding:0;display:block;border-bottom:solid calc(2px * var(--pagefind-ui-scale)) var(--pagefind-ui-border);padding:calc(20px * var(--pagefind-ui-scale)) 0}.pagefind-ui__filter-name.svelte-1v2r7ls.svelte-1v2r7ls{font-size:calc(16px * var(--pagefind-ui-scale));position:relative;display:flex;align-items:center;list-style:none;font-weight:700;cursor:pointer;height:calc(24px * var(--pagefind-ui-scale))}.pagefind-ui__filter-name.svelte-1v2r7ls.svelte-1v2r7ls::-webkit-details-marker{display:none}.pagefind-ui__filter-name.svelte-1v2r7ls.svelte-1v2r7ls:after{position:absolute;content:\"\";right:calc(6px * var(--pagefind-ui-scale));top:50%;width:calc(8px * var(--pagefind-ui-scale));height:calc(8px * var(--pagefind-ui-scale));border:solid calc(2px * var(--pagefind-ui-scale)) currentColor;border-right:0;border-top:0;transform:translateY(-70%) rotate(-45deg)}.pagefind-ui__filter-block[open].svelte-1v2r7ls .pagefind-ui__filter-name.svelte-1v2r7ls:after{transform:translateY(-70%) rotate(-225deg)}.pagefind-ui__filter-group.svelte-1v2r7ls.svelte-1v2r7ls{display:flex;flex-direction:column;gap:calc(20px * var(--pagefind-ui-scale));padding-top:calc(30px * var(--pagefind-ui-scale))}.pagefind-ui__filter-value.svelte-1v2r7ls.svelte-1v2r7ls{position:relative;display:flex;align-items:center;gap:calc(8px * var(--pagefind-ui-scale))}.pagefind-ui__filter-value.svelte-1v2r7ls.svelte-1v2r7ls:before{position:absolute;content:\"\";top:50%;left:calc(8px * var(--pagefind-ui-scale));width:0px;height:0px;border:solid 1px #fff;opacity:0;transform:translate(calc(4.5px * var(--pagefind-ui-scale) * -1),calc(.8px * var(--pagefind-ui-scale))) skew(-5deg) rotate(-45deg);transform-origin:top left;border-top:0;border-right:0;pointer-events:none}.pagefind-ui__filter-value.pagefind-ui__filter-value--checked.svelte-1v2r7ls.svelte-1v2r7ls:before{opacity:1;width:calc(9px * var(--pagefind-ui-scale));height:calc(4px * var(--pagefind-ui-scale));transition:width .1s ease-out .1s,height .1s ease-in}.pagefind-ui__filter-checkbox.svelte-1v2r7ls.svelte-1v2r7ls{margin:0;width:calc(16px * var(--pagefind-ui-scale));height:calc(16px * var(--pagefind-ui-scale));border:solid 1px var(--pagefind-ui-border);appearance:none;-webkit-appearance:none;border-radius:calc(var(--pagefind-ui-border-radius) \/ 2);background-color:var(--pagefind-ui-background);cursor:pointer}.pagefind-ui__filter-checkbox.svelte-1v2r7ls.svelte-1v2r7ls:checked{background-color:var(--pagefind-ui-primary);border:solid 1px var(--pagefind-ui-primary)}.pagefind-ui__filter-label.svelte-1v2r7ls.svelte-1v2r7ls{cursor:pointer;font-size:calc(16px * var(--pagefind-ui-scale));font-weight:400}.pagefind-ui--reset *:where(:not(html,iframe,canvas,img,svg,video):not(svg *,symbol *)){all:unset;display:revert;outline:revert}.pagefind-ui--reset *,.pagefind-ui--reset *:before,.pagefind-ui--reset *:after{box-sizing:border-box}.pagefind-ui--reset a,.pagefind-ui--reset button{cursor:revert}.pagefind-ui--reset ol,.pagefind-ui--reset ul,.pagefind-ui--reset menu{list-style:none}.pagefind-ui--reset img{max-width:100%}.pagefind-ui--reset table{border-collapse:collapse}.pagefind-ui--reset input,.pagefind-ui--reset textarea{-webkit-user-select:auto}.pagefind-ui--reset textarea{white-space:revert}.pagefind-ui--reset meter{-webkit-appearance:revert;appearance:revert}.pagefind-ui--reset ::placeholder{color:unset}.pagefind-ui--reset :where([hidden]){display:none}.pagefind-ui--reset :where([contenteditable]:not([contenteditable=false])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}.pagefind-ui--reset :where([draggable=true]){-webkit-user-drag:element}.pagefind-ui--reset mark{all:revert}:root{--pagefind-ui-scale:.8;--pagefind-ui-primary:#393939;--pagefind-ui-text:#393939;--pagefind-ui-background:#ffffff;--pagefind-ui-border:#eeeeee;--pagefind-ui-tag:#eeeeee;--pagefind-ui-border-width:2px;--pagefind-ui-border-radius:8px;--pagefind-ui-image-border-radius:8px;--pagefind-ui-image-box-ratio:3 \/ 2;--pagefind-ui-font:system, -apple-system, \"BlinkMacSystemFont\", \".SFNSText-Regular\", \"San Francisco\", \"Roboto\", \"Segoe UI\", \"Helvetica Neue\", \"Lucida Grande\", \"Ubuntu\", \"arial\", sans-serif}.pagefind-ui.svelte-e9gkc3{width:100%;color:var(--pagefind-ui-text);font-family:var(--pagefind-ui-font)}.pagefind-ui__hidden.svelte-e9gkc3{display:none!important}.pagefind-ui__suppressed.svelte-e9gkc3{opacity:0;pointer-events:none}.pagefind-ui__form.svelte-e9gkc3{position:relative}.pagefind-ui__form.svelte-e9gkc3:before{background-color:var(--pagefind-ui-text);width:calc(18px * var(--pagefind-ui-scale));height:calc(18px * var(--pagefind-ui-scale));top:calc(23px * var(--pagefind-ui-scale));left:calc(20px * var(--pagefind-ui-scale));content:\"\";position:absolute;display:block;opacity:.7;-webkit-mask-image:url(\"data:image\/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M12.7549 11.255H11.9649L11.6849 10.985C12.6649 9.845 13.2549 8.365 13.2549 6.755C13.2549 3.165 10.3449 0.255005 6.75488 0.255005C3.16488 0.255005 0.254883 3.165 0.254883 6.755C0.254883 10.345 3.16488 13.255 6.75488 13.255C8.36488 13.255 9.84488 12.665 10.9849 11.685L11.2549 11.965V12.755L16.2549 17.745L17.7449 16.255L12.7549 11.255ZM6.75488 11.255C4.26488 11.255 2.25488 9.245 2.25488 6.755C2.25488 4.26501 4.26488 2.255 6.75488 2.255C9.24488 2.255 11.2549 4.26501 11.2549 6.755C11.2549 9.245 9.24488 11.255 6.75488 11.255Z' fill='%23000000'\/%3E%3C\/svg%3E%0A\");mask-image:url(\"data:image\/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M12.7549 11.255H11.9649L11.6849 10.985C12.6649 9.845 13.2549 8.365 13.2549 6.755C13.2549 3.165 10.3449 0.255005 6.75488 0.255005C3.16488 0.255005 0.254883 3.165 0.254883 6.755C0.254883 10.345 3.16488 13.255 6.75488 13.255C8.36488 13.255 9.84488 12.665 10.9849 11.685L11.2549 11.965V12.755L16.2549 17.745L17.7449 16.255L12.7549 11.255ZM6.75488 11.255C4.26488 11.255 2.25488 9.245 2.25488 6.755C2.25488 4.26501 4.26488 2.255 6.75488 2.255C9.24488 2.255 11.2549 4.26501 11.2549 6.755C11.2549 9.245 9.24488 11.255 6.75488 11.255Z' fill='%23000000'\/%3E%3C\/svg%3E%0A\");-webkit-mask-size:100%;mask-size:100%;z-index:9;pointer-events:none}.pagefind-ui__search-input.svelte-e9gkc3{height:calc(64px * var(--pagefind-ui-scale));padding:0 calc(70px * var(--pagefind-ui-scale)) 0 calc(54px * var(--pagefind-ui-scale));background-color:var(--pagefind-ui-background);border:var(--pagefind-ui-border-width) solid var(--pagefind-ui-border);border-radius:var(--pagefind-ui-border-radius);font-size:calc(21px * var(--pagefind-ui-scale));position:relative;appearance:none;-webkit-appearance:none;display:flex;width:100%;box-sizing:border-box;font-weight:700}.pagefind-ui__search-input.svelte-e9gkc3::placeholder{opacity:.2}.pagefind-ui__search-clear.svelte-e9gkc3{position:absolute;top:calc(3px * var(--pagefind-ui-scale));right:calc(3px * var(--pagefind-ui-scale));height:calc(58px * var(--pagefind-ui-scale));padding:0 calc(15px * var(--pagefind-ui-scale)) 0 calc(2px * var(--pagefind-ui-scale));color:var(--pagefind-ui-text);font-size:calc(14px * var(--pagefind-ui-scale));cursor:pointer;background-color:var(--pagefind-ui-background);border-radius:var(--pagefind-ui-border-radius)}.pagefind-ui__drawer.svelte-e9gkc3{gap:calc(60px * var(--pagefind-ui-scale));display:flex;flex-direction:row;flex-wrap:wrap}.pagefind-ui__results-area.svelte-e9gkc3{min-width:min(calc(400px * var(--pagefind-ui-scale)),100%);flex:1000;margin-top:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__results.svelte-e9gkc3{padding:0}.pagefind-ui__message.svelte-e9gkc3{box-sizing:content-box;font-size:calc(16px * var(--pagefind-ui-scale));height:calc(24px * var(--pagefind-ui-scale));padding:calc(20px * var(--pagefind-ui-scale)) 0;display:flex;align-items:center;font-weight:700;margin-top:0}.pagefind-ui__button.svelte-e9gkc3{margin-top:calc(40px * var(--pagefind-ui-scale));border:var(--pagefind-ui-border-width) solid var(--pagefind-ui-border);border-radius:var(--pagefind-ui-border-radius);height:calc(48px * var(--pagefind-ui-scale));padding:0 calc(12px * var(--pagefind-ui-scale));font-size:calc(16px * var(--pagefind-ui-scale));color:var(--pagefind-ui-primary);background:var(--pagefind-ui-background);width:100%;text-align:center;font-weight:700;cursor:pointer}.pagefind-ui__button.svelte-e9gkc3:hover{border-color:var(--pagefind-ui-primary);color:var(--pagefind-ui-primary);background:var(--pagefind-ui-background)}}@layer starlight.core{[data-search-modal-open]{overflow:hidden}#starlight__search{--sl-search-result-spacing: calc(1.25rem * var(--pagefind-ui-scale));--sl-search-result-pad-inline-start: calc(3.75rem * var(--pagefind-ui-scale));--sl-search-result-pad-inline-end: calc(1.25rem * var(--pagefind-ui-scale));--sl-search-result-pad-block: calc(.9375rem * var(--pagefind-ui-scale));--sl-search-result-nested-pad-block: calc(.625rem * var(--pagefind-ui-scale));--sl-search-corners: calc(.3125rem * var(--pagefind-ui-scale));--sl-search-page-icon-size: calc(1.875rem * var(--pagefind-ui-scale));--sl-search-page-icon-inline-start: calc( (var(--sl-search-result-pad-inline-start) - var(--sl-search-page-icon-size)) \/ 2 );--sl-search-tree-diagram-size: calc(2.5rem * var(--pagefind-ui-scale));--sl-search-tree-diagram-inline-start: calc( (var(--sl-search-result-pad-inline-start) - var(--sl-search-tree-diagram-size)) \/ 2 )}#starlight__search .pagefind-ui__form:before{--pagefind-ui-text: var(--sl-color-gray-1);opacity:1}#starlight__search .pagefind-ui__search-input{color:var(--sl-color-white);font-weight:400;width:calc(100% - var(--sl-search-cancel-space))}#starlight__search input:focus{--pagefind-ui-border: var(--sl-color-accent)}#starlight__search .pagefind-ui__search-clear{inset-inline-end:var(--sl-search-cancel-space);width:calc(60px * var(--pagefind-ui-scale));padding:0;background-color:transparent;overflow:hidden}#starlight__search .pagefind-ui__search-clear:focus{outline:1px solid var(--sl-color-accent)}#starlight__search .pagefind-ui__search-clear:before{content:\"\";-webkit-mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='m13.41 12 6.3-6.29a1 1 0 1 0-1.42-1.42L12 10.59l-6.29-6.3a1 1 0 0 0-1.42 1.42l6.3 6.29-6.3 6.29a1 1 0 0 0 .33 1.64 1 1 0 0 0 1.09-.22l6.29-6.3 6.29 6.3a1 1 0 0 0 1.64-.33 1 1 0 0 0-.22-1.09L13.41 12Z'\/%3E%3C\/svg%3E\") center \/ 50% no-repeat;mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='m13.41 12 6.3-6.29a1 1 0 1 0-1.42-1.42L12 10.59l-6.29-6.3a1 1 0 0 0-1.42 1.42l6.3 6.29-6.3 6.29a1 1 0 0 0 .33 1.64 1 1 0 0 0 1.09-.22l6.29-6.3 6.29 6.3a1 1 0 0 0 1.64-.33 1 1 0 0 0-.22-1.09L13.41 12Z'\/%3E%3C\/svg%3E\") center \/ 50% no-repeat;background-color:var(--sl-color-text-accent);display:block;width:100%;height:100%}#starlight__search .pagefind-ui__results>*+*{margin-top:var(--sl-search-result-spacing)}#starlight__search .pagefind-ui__result{border:0;padding:0}#starlight__search .pagefind-ui__result-nested{position:relative;padding:var(--sl-search-result-nested-pad-block) var(--sl-search-result-pad-inline-end);padding-inline-start:var(--sl-search-result-pad-inline-start)}#starlight__search .pagefind-ui__result-title:not(:where(.pagefind-ui__result-nested *)),#starlight__search .pagefind-ui__result-nested{position:relative;background-color:var(--sl-color-black)}#starlight__search .pagefind-ui__result-title:not(:where(.pagefind-ui__result-nested *)):hover,#starlight__search .pagefind-ui__result-title:not(:where(.pagefind-ui__result-nested *)):focus-within,#starlight__search .pagefind-ui__result-nested:hover,#starlight__search .pagefind-ui__result-nested:focus-within{outline:1px solid var(--sl-color-accent-high)}#starlight__search .pagefind-ui__result-title:not(:where(.pagefind-ui__result-nested *)):focus-within,#starlight__search .pagefind-ui__result-nested:focus-within{background-color:var(--sl-color-accent-low)}#starlight__search .pagefind-ui__result-thumb,#starlight__search .pagefind-ui__result-inner{margin-top:0}#starlight__search .pagefind-ui__result-inner>:first-child{border-radius:var(--sl-search-corners) var(--sl-search-corners) 0 0}#starlight__search .pagefind-ui__result-inner>:last-child{border-radius:0 0 var(--sl-search-corners) var(--sl-search-corners)}#starlight__search .pagefind-ui__result-inner>.pagefind-ui__result-title{padding:var(--sl-search-result-pad-block) var(--sl-search-result-pad-inline-end);padding-inline-start:var(--sl-search-result-pad-inline-start)}#starlight__search .pagefind-ui__result-inner>.pagefind-ui__result-title:before{content:\"\";position:absolute;inset-block:0;inset-inline-start:var(--sl-search-page-icon-inline-start);width:var(--sl-search-page-icon-size);background:var(--sl-color-gray-3);-webkit-mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' fill='currentColor' viewBox='0 0 24 24'%3E%3Cpath d='M9 10h1a1 1 0 1 0 0-2H9a1 1 0 0 0 0 2Zm0 2a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2H9Zm11-3V8l-6-6a1 1 0 0 0-1 0H7a3 3 0 0 0-3 3v14a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V9Zm-6-4 3 3h-2a1 1 0 0 1-1-1V5Zm4 14a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h5v3a3 3 0 0 0 3 3h3v9Zm-3-3H9a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2Z'\/%3E%3C\/svg%3E\") center no-repeat;mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' fill='currentColor' viewBox='0 0 24 24'%3E%3Cpath d='M9 10h1a1 1 0 1 0 0-2H9a1 1 0 0 0 0 2Zm0 2a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2H9Zm11-3V8l-6-6a1 1 0 0 0-1 0H7a3 3 0 0 0-3 3v14a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V9Zm-6-4 3 3h-2a1 1 0 0 1-1-1V5Zm4 14a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h5v3a3 3 0 0 0 3 3h3v9Zm-3-3H9a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2Z'\/%3E%3C\/svg%3E\") center no-repeat}#starlight__search .pagefind-ui__result-inner{align-items:stretch;gap:1px}#starlight__search .pagefind-ui__result-link{position:unset;--pagefind-ui-text: var(--sl-color-white);font-weight:600}#starlight__search .pagefind-ui__result-link:hover{text-decoration:none}#starlight__search .pagefind-ui__result-nested .pagefind-ui__result-link:before{content:unset}#starlight__search .pagefind-ui__result-nested:before{content:\"\";position:absolute;inset-block:0;inset-inline-start:var(--sl-search-tree-diagram-inline-start);width:var(--sl-search-tree-diagram-size);background:var(--sl-color-gray-4);-webkit-mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' fill='none' stroke='currentColor' stroke-linecap='round' viewBox='0 0 16 1000' preserveAspectRatio='xMinYMin slice'%3E%3Cpath d='M8 0v1000m6-988H8'\/%3E%3C\/svg%3E\") 0% 0% \/ 100% no-repeat;mask:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' fill='none' stroke='currentColor' stroke-linecap='round' viewBox='0 0 16 1000' preserveAspectRatio='xMinYMin slice'%3E%3Cpath d='M8 0v1000m6-988H8'\/%3E%3C\/svg%3E\") 0% 0% \/ 100% no-repeat}#starlight__search .pagefind-ui__result-nested:last-of-type:before{-webkit-mask-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 16 16'%3E%3Cpath d='M8 0v12m6 0H8'\/%3E%3C\/svg%3E\");mask-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 16 16'%3E%3Cpath d='M8 0v12m6 0H8'\/%3E%3C\/svg%3E\")}[dir=rtl] .pagefind-ui__result-title:before,[dir=rtl] .pagefind-ui__result-nested:before{transform:scaleX(-1)}#starlight__search .pagefind-ui__result-link:after{content:\"\";position:absolute;inset:0}#starlight__search .pagefind-ui__result-excerpt{font-size:calc(1rem * var(--pagefind-ui-scale));overflow-wrap:anywhere}#starlight__search mark{color:var(--sl-color-gray-2);background-color:transparent;font-weight:600}#starlight__search .pagefind-ui__filter-value:before{border-color:var(--sl-color-text-invert)}#starlight__search .pagefind-ui__result-tags{background-color:var(--sl-color-black);margin-top:0;padding:var(--sl-search-result-nested-pad-block) var(--sl-search-result-pad-inline-end)}}@layer starlight.core{site-search:where(.astro-alqa3iwr){display:contents}button:where(.astro-alqa3iwr)[data-open-modal]{display:flex;align-items:center;gap:.5rem;border:0;background-color:transparent;color:var(--sl-color-gray-1);cursor:pointer;height:2.5rem;font-size:var(--sl-text-xl)}@media (min-width: 50rem){button:where(.astro-alqa3iwr)[data-open-modal]{border:1px solid var(--sl-color-gray-5);border-radius:.5rem;padding-inline-start:.75rem;padding-inline-end:.5rem;background-color:var(--sl-color-black);color:var(--sl-color-gray-2);font-size:var(--sl-text-sm);width:100%;max-width:22rem}button:where(.astro-alqa3iwr)[data-open-modal]:hover{border-color:var(--sl-color-gray-2);color:var(--sl-color-white)}button:where(.astro-alqa3iwr)[data-open-modal]>:last-child:where(.astro-alqa3iwr){margin-inline-start:auto}}button:where(.astro-alqa3iwr)>kbd:where(.astro-alqa3iwr){border-radius:.25rem;font-size:var(--sl-text-2xs);gap:.25em;padding-inline:.375rem;background-color:var(--sl-color-gray-6)}kbd:where(.astro-alqa3iwr){font-family:var(--__sl-font)}dialog:where(.astro-alqa3iwr){margin:0;background-color:var(--sl-color-gray-6);border:1px solid var(--sl-color-gray-5);width:100%;max-width:100%;height:100%;max-height:100%;box-shadow:var(--sl-shadow-lg)}dialog:where(.astro-alqa3iwr)[open]{display:flex}dialog:where(.astro-alqa3iwr)::backdrop{background-color:var(--sl-color-backdrop-overlay);-webkit-backdrop-filter:blur(.25rem);backdrop-filter:blur(.25rem)}.dialog-frame:where(.astro-alqa3iwr){position:relative;overflow:auto;flex-direction:column;flex-grow:1;gap:1rem;padding:1rem}button:where(.astro-alqa3iwr)[data-close-modal]{position:absolute;z-index:1;align-items:center;align-self:flex-end;height:calc(64px * var(--pagefind-ui-scale));padding:.25rem;border:0;background:transparent;cursor:pointer;color:var(--sl-color-text-accent)}#starlight__search:where(.astro-alqa3iwr){--pagefind-ui-primary: var(--sl-color-text);--pagefind-ui-text: var(--sl-color-gray-2);--pagefind-ui-font: var(--__sl-font);--pagefind-ui-background: var(--sl-color-black);--pagefind-ui-border: var(--sl-color-gray-5);--pagefind-ui-border-width: 1px;--pagefind-ui-tag: var(--sl-color-gray-5);--sl-search-cancel-space: 5rem}:root[data-theme=light] #starlight__search:where(.astro-alqa3iwr){--pagefind-ui-tag: var(--sl-color-gray-6)}@media (min-width: 50rem){#starlight__search:where(.astro-alqa3iwr){--sl-search-cancel-space: 0px}dialog:where(.astro-alqa3iwr){margin:4rem auto auto;border-radius:.5rem;width:90%;max-width:40rem;height:max-content;min-height:15rem;max-height:calc(100% - 8rem)}.dialog-frame:where(.astro-alqa3iwr){padding:1.5rem}}}@layer starlight.core{.site-title:where(.astro-2iiz2v5s){align-items:center;gap:var(--sl-nav-gap);font-size:var(--sl-text-h4);font-weight:600;color:var(--sl-color-text-accent);text-decoration:none;white-space:nowrap;min-width:0}span:where(.astro-2iiz2v5s){overflow:hidden}img:where(.astro-2iiz2v5s){height:calc(var(--sl-nav-height) - 2 * var(--sl-nav-pad-y));width:auto;max-width:100%;object-fit:contain;object-position:0 50%}}@layer starlight.core{a:where(.astro-kopmcwwf){color:var(--sl-color-text-accent);padding:.5em;margin:-.5em}a:where(.astro-kopmcwwf):hover{opacity:.66}}@layer starlight.core{.header:where(.astro-yhkywj6c){display:flex;gap:var(--sl-nav-gap);justify-content:space-between;align-items:center;height:100%}.title-wrapper:where(.astro-yhkywj6c){overflow:clip;padding:.25rem;margin:-.25rem;min-width:0}.right-group:where(.astro-yhkywj6c),.social-icons:where(.astro-yhkywj6c){gap:1rem;align-items:center}.social-icons:where(.astro-yhkywj6c):after{content:\"\";height:2rem;border-inline-end:1px solid var(--sl-color-gray-5)}@media (min-width: 50rem){:root[data-has-sidebar]{--__sidebar-pad: calc(2 * var(--sl-nav-pad-x))}:root:not([data-has-toc]){--__toc-width: 0rem}.header:where(.astro-yhkywj6c){--__sidebar-width: max(0rem, var(--sl-content-inline-start, 0rem) - var(--sl-nav-pad-x));--__main-column-fr: calc( ( 100% + var(--__sidebar-pad, 0rem) - var(--__toc-width, var(--sl-sidebar-width)) - (2 * var(--__toc-width, var(--sl-nav-pad-x))) - var(--sl-content-inline-start, 0rem) - var(--sl-content-width) ) \/ 2 );display:grid;grid-template-columns:minmax(calc(var(--__sidebar-width) + max(0rem,var(--__main-column-fr) - var(--sl-nav-gap))),auto) 1fr auto;align-content:center}}}@layer starlight.core{.hero:where(.astro-rvdbmh3f){display:grid;align-items:center;gap:1rem;padding-bottom:1rem}.hero:where(.astro-rvdbmh3f)>img:where(.astro-rvdbmh3f),.hero:where(.astro-rvdbmh3f)>.hero-html:where(.astro-rvdbmh3f){object-fit:contain;width:min(70%,20rem);height:auto;margin-inline:auto}.stack:where(.astro-rvdbmh3f){flex-direction:column;gap:clamp(1.5rem,calc(1.5rem + 1vw),2rem);text-align:center}.copy:where(.astro-rvdbmh3f){flex-direction:column;gap:1rem;align-items:center}.copy:where(.astro-rvdbmh3f)>:where(.astro-rvdbmh3f){max-width:50ch}h1:where(.astro-rvdbmh3f){font-size:clamp(var(--sl-text-3xl),calc(.25rem + 5vw),var(--sl-text-6xl));line-height:var(--sl-line-height-headings);font-weight:600;color:var(--sl-color-white)}.tagline:where(.astro-rvdbmh3f){font-size:clamp(var(--sl-text-base),calc(.0625rem + 2vw),var(--sl-text-xl));color:var(--sl-color-gray-2)}.actions:where(.astro-rvdbmh3f){gap:1rem 2rem;flex-wrap:wrap;justify-content:center}@media (min-width: 50rem){.hero:where(.astro-rvdbmh3f){grid-template-columns:7fr 4fr;gap:3%;padding-block:clamp(2.5rem,calc(1rem + 10vmin),10rem)}.hero:where(.astro-rvdbmh3f)>img:where(.astro-rvdbmh3f),.hero:where(.astro-rvdbmh3f)>.hero-html:where(.astro-rvdbmh3f){order:2;width:min(100%,25rem)}.stack:where(.astro-rvdbmh3f){text-align:start}.copy:where(.astro-rvdbmh3f){align-items:flex-start}.actions:where(.astro-rvdbmh3f){justify-content:flex-start}}}@layer starlight.content{.sl-markdown-content :not(a,strong,em,del,span,input,code,br)+:not(a,strong,em,del,span,input,code,br,:where(.not-content *)){margin-top:1rem}.sl-markdown-content :not(h1,h2,h3,h4,h5,h6)+:is(h1,h2,h3,h4,h5,h6):not(:where(.not-content *)){margin-top:1.5em}.sl-markdown-content li+li:not(:where(.not-content *)),.sl-markdown-content dt+dt:not(:where(.not-content *)),.sl-markdown-content dt+dd:not(:where(.not-content *)),.sl-markdown-content dd+dd:not(:where(.not-content *)){margin-top:.25rem}.sl-markdown-content li:not(:where(.not-content *)){overflow-wrap:anywhere}.sl-markdown-content li>:is(:last-child:not(li,ul,ol,a,strong,em,del,span,input,code,br,script,:where(.not-content *)),:not(script):has(~script:last-child):not(:has(~:not(script)))){margin-bottom:1.25rem}.sl-markdown-content dt:not(:where(.not-content *)){font-weight:700}.sl-markdown-content dd:not(:where(.not-content *)){padding-inline-start:1rem}.sl-markdown-content :is(h1,h2,h3,h4,h5,h6):not(:where(.not-content *)){color:var(--sl-color-white);line-height:var(--sl-line-height-headings);font-weight:600}.sl-markdown-content :is(img,picture,video,canvas,svg,iframe):not(:where(.not-content *)){display:block;max-width:100%;height:auto}.sl-markdown-content h1:not(:where(.not-content *)){font-size:var(--sl-text-h1)}.sl-markdown-content h2:not(:where(.not-content *)){font-size:var(--sl-text-h2)}.sl-markdown-content h3:not(:where(.not-content *)){font-size:var(--sl-text-h3)}.sl-markdown-content h4:not(:where(.not-content *)){font-size:var(--sl-text-h4)}.sl-markdown-content h5:not(:where(.not-content *)){font-size:var(--sl-text-h5)}.sl-markdown-content h6:not(:where(.not-content *)){font-size:var(--sl-text-h6)}.sl-markdown-content a:not(:where(.not-content *)){color:var(--sl-color-text-accent)}.sl-markdown-content a:hover:not(:where(.not-content *)){color:var(--sl-color-white)}.sl-markdown-content code:not(:where(.not-content *)){background-color:var(--sl-color-bg-inline-code);margin-block:-.125rem;padding:.125rem .375rem;font-size:var(--sl-text-code-sm)}.sl-markdown-content :is(h1,h2,h3,h4,h5,h6) code{font-size:inherit}.sl-markdown-content pre:not(:where(.not-content *)){border:1px solid var(--sl-color-gray-5);padding:.75rem 1rem;font-size:var(--sl-text-code);tab-size:2}.sl-markdown-content pre code:not(:where(.not-content *)){all:unset;font-family:var(--__sl-font-mono)}.sl-markdown-content blockquote:not(:where(.not-content *)){border-inline-start:1px solid var(--sl-color-gray-5);padding-inline-start:1rem}.sl-markdown-content table:not(:where(.not-content *)){display:block;overflow:auto;border-spacing:0}.sl-markdown-content :is(th,td):not(:where(.not-content *)){border-bottom:1px solid var(--sl-color-gray-5);padding:.5rem 1rem;vertical-align:baseline}.sl-markdown-content :is(th:first-child,td:first-child):not(:where(.not-content *)){padding-inline-start:0}.sl-markdown-content :is(th:last-child,td:last-child):not(:where(.not-content *)){padding-inline-end:0}.sl-markdown-content th:not(:where(.not-content *)){color:var(--sl-color-white);font-weight:600}.sl-markdown-content th:not([align]):not(:where(.not-content *)){text-align:start}.sl-markdown-content .starlight-aside :is(th,td,hr,blockquote):not(:where(.not-content *)){border-color:var(--sl-color-gray-4)}@supports (border-color: color-mix(in srgb,var(--sl-color-asides-text-accent) 30%,transparent)){.sl-markdown-content .starlight-aside :is(th,td,hr,blockquote):not(:where(.not-content *)){border-color:color-mix(in srgb,var(--sl-color-asides-text-accent) 30%,transparent)}}@supports (border-color: color-mix(in srgb,var(--sl-color-asides-text-accent) 12%,transparent)){.sl-markdown-content .starlight-aside code:not(:where(.not-content *)){background-color:color-mix(in srgb,var(--sl-color-asides-text-accent) 12%,transparent)}}.sl-markdown-content hr:not(:where(.not-content *)){border:0;border-bottom:1px solid var(--sl-color-hairline)}.sl-markdown-content details:not(:where(.not-content *)){--sl-details-border-color: var(--sl-color-gray-5);--sl-details-border-color--hover: var(--sl-color-text-accent);border-inline-start:2px solid var(--sl-details-border-color);padding-inline-start:1rem}.sl-markdown-content details:not([open]):hover:not(:where(.not-content *)),.sl-markdown-content details:has(>summary:hover):not(:where(.not-content *)){border-color:var(--sl-details-border-color--hover)}.sl-markdown-content summary:not(:where(.not-content *)){color:var(--sl-color-white);cursor:pointer;display:block;font-weight:600;margin-inline-start:-.5rem;padding-inline-start:.5rem}.sl-markdown-content details[open]>summary:not(:where(.not-content *)){margin-bottom:1rem}.sl-markdown-content summary:not(:where(.not-content *))::marker,.sl-markdown-content summary:not(:where(.not-content *))::-webkit-details-marker{display:none}.sl-markdown-content summary:not(:where(.not-content *)):before{--sl-details-marker-size: 1.25rem;background-color:currentColor;content:\"\";display:inline-block;height:var(--sl-details-marker-size);width:var(--sl-details-marker-size);margin-inline:calc((var(--sl-details-marker-size) \/ 4) * -1) .25rem;vertical-align:middle;-webkit-mask-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14.8 11.3 10.6 7a1 1 0 1 0-1.4 1.5l3.5 3.5-3.5 3.5a1 1 0 0 0 0 1.4 1 1 0 0 0 .7.3 1 1 0 0 0 .7-.3l4.2-4.2a1 1 0 0 0 0-1.4Z'\/%3E%3C\/svg%3E%0A\");mask-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14.8 11.3 10.6 7a1 1 0 1 0-1.4 1.5l3.5 3.5-3.5 3.5a1 1 0 0 0 0 1.4 1 1 0 0 0 .7.3 1 1 0 0 0 .7-.3l4.2-4.2a1 1 0 0 0 0-1.4Z'\/%3E%3C\/svg%3E%0A\");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}@media (prefers-reduced-motion: no-preference){.sl-markdown-content summary:not(:where(.not-content *)):before{transition:transform .2s ease-in-out}}.sl-markdown-content details[open]>summary:not(:where(.not-content *)):before{transform:rotate(90deg)}[dir=rtl] .sl-markdown-content summary:not(:where(.not-content *)):before,.sl-markdown-content [dir=rtl] summary:not(:where(.not-content *)):before{transform:rotate(180deg)}.sl-markdown-content summary:not(:where(.not-content *)) p:only-child{display:inline}.sl-markdown-content .starlight-aside details:not(:where(.not-content *)){--sl-details-border-color: var(--sl-color-asides-border);--sl-details-border-color--hover: var(--sl-color-asides-text-accent)}}@layer starlight.core{[data-mobile-menu-expanded]{overflow:hidden}@media (min-width: 50rem){[data-mobile-menu-expanded]{overflow:auto}}}@layer starlight.core{button:where(.astro-o7d4zodq){position:fixed;top:calc((var(--sl-nav-height) - var(--sl-menu-button-size)) \/ 2);inset-inline-end:var(--sl-nav-pad-x);z-index:var(--sl-z-index-navbar);border:0;border-radius:50%;width:var(--sl-menu-button-size);height:var(--sl-menu-button-size);padding:.5rem;background-color:var(--sl-color-white);color:var(--sl-color-black);box-shadow:var(--sl-shadow-md);cursor:pointer}:where(.astro-o7d4zodq)[aria-expanded=true] button:where(.astro-o7d4zodq){background-color:var(--sl-color-gray-2);box-shadow:none}:where(.astro-o7d4zodq)[aria-expanded=true] button:where(.astro-o7d4zodq) .open-menu:where(.astro-o7d4zodq){display:none}:not([aria-expanded=true]):where(.astro-o7d4zodq) button:where(.astro-o7d4zodq) .close-menu:where(.astro-o7d4zodq){display:none}[data-theme=light] button:where(.astro-o7d4zodq){background-color:var(--sl-color-black);color:var(--sl-color-white)}[data-theme=light] :where(.astro-o7d4zodq)[aria-expanded=true] button:where(.astro-o7d4zodq){background-color:var(--sl-color-gray-5)}}@layer starlight.core{.page:where(.astro-w2cw6nby){flex-direction:column;min-height:100vh}.header:where(.astro-w2cw6nby){z-index:var(--sl-z-index-navbar);position:fixed;inset-inline-start:0;inset-block-start:0;width:100%;height:var(--sl-nav-height);border-bottom:1px solid var(--sl-color-hairline-shade);padding:var(--sl-nav-pad-y) var(--sl-nav-pad-x);padding-inline-end:var(--sl-nav-pad-x);background-color:var(--sl-color-bg-nav)}[data-has-sidebar] .header:where(.astro-w2cw6nby){padding-inline-end:calc(var(--sl-nav-gap) + var(--sl-nav-pad-x) + var(--sl-menu-button-size))}.sidebar-pane:where(.astro-w2cw6nby){visibility:var(--sl-sidebar-visibility, hidden);position:fixed;z-index:var(--sl-z-index-menu);inset-block:var(--sl-nav-height) 0;inset-inline-start:0;width:100%;background-color:var(--sl-color-black);overflow-y:auto}[aria-expanded=true]~.sidebar-pane:where(.astro-w2cw6nby){--sl-sidebar-visibility: visible}.sidebar-content:where(.astro-w2cw6nby){height:100%;min-height:max-content;padding:1rem var(--sl-sidebar-pad-x) 0;flex-direction:column;gap:1rem}@media (min-width: 50rem){.sidebar-content:where(.astro-w2cw6nby):after{content:\"\";padding-bottom:1px}}.main-frame:where(.astro-w2cw6nby){padding-top:calc(var(--sl-nav-height) + var(--sl-mobile-toc-height));padding-inline-start:var(--sl-content-inline-start)}@media (min-width: 50rem){[data-has-sidebar] .header:where(.astro-w2cw6nby){padding-inline-end:var(--sl-nav-pad-x)}.sidebar-pane:where(.astro-w2cw6nby){--sl-sidebar-visibility: visible;width:var(--sl-sidebar-width);background-color:var(--sl-color-bg-sidebar);border-inline-end:1px solid var(--sl-color-hairline-shade)}}}@layer starlight.core{ul:where(.astro-dxct6eet){padding:0;list-style:none}a:where(.astro-dxct6eet){--pad-inline: .5rem;display:block;border-radius:.25rem;padding-block:.25rem;padding-inline:calc(1rem * var(--depth) + var(--pad-inline)) var(--pad-inline);line-height:1.25}a:where(.astro-dxct6eet)[aria-current=true]{color:var(--sl-color-text-accent)}.isMobile:where(.astro-dxct6eet) a:where(.astro-dxct6eet){--pad-inline: 1rem;display:flex;justify-content:space-between;gap:var(--pad-inline);border-top:1px solid var(--sl-color-gray-6);border-radius:0;padding-block:.5rem;color:var(--sl-color-text);font-size:var(--sl-text-sm);text-decoration:none;outline-offset:var(--sl-outline-offset-inside)}.isMobile:where(.astro-dxct6eet):first-child>li:where(.astro-dxct6eet):first-child>a:where(.astro-dxct6eet){border-top:0}.isMobile:where(.astro-dxct6eet) a:where(.astro-dxct6eet)[aria-current=true],.isMobile:where(.astro-dxct6eet) a:where(.astro-dxct6eet)[aria-current=true]:hover,.isMobile:where(.astro-dxct6eet) a:where(.astro-dxct6eet)[aria-current=true]:focus{color:var(--sl-color-white);background-color:unset}.isMobile:where(.astro-dxct6eet) a:where(.astro-dxct6eet)[aria-current=true]:after{content:\"\";width:1rem;background-color:var(--sl-color-text-accent);-webkit-mask-image:url(data:image\/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNCAxNCc+PHBhdGggZD0nTTEwLjkxNCA0LjIwNmEuNTgzLjU4MyAwIDAgMC0uODI4IDBMNS43NCA4LjU1NyAzLjkxNCA2LjcyNmEuNTk2LjU5NiAwIDAgMC0uODI4Ljg1N2wyLjI0IDIuMjRhLjU4My41ODMgMCAwIDAgLjgyOCAwbDQuNzYtNC43NmEuNTgzLjU4MyAwIDAgMCAwLS44NTdaJy8+PC9zdmc+Cg==);mask-image:url(data:image\/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNCAxNCc+PHBhdGggZD0nTTEwLjkxNCA0LjIwNmEuNTgzLjU4MyAwIDAgMC0uODI4IDBMNS43NCA4LjU1NyAzLjkxNCA2LjcyNmEuNTk2LjU5NiAwIDAgMC0uODI4Ljg1N2wyLjI0IDIuMjRhLjU4My41ODMgMCAwIDAgLjgyOCAwbDQuNzYtNC43NmEuNTgzLjU4MyAwIDAgMCAwLS44NTdaJy8+PC9zdmc+Cg==);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;flex-shrink:0}}@layer starlight.core{nav:where(.astro-xsfthomx){position:fixed;z-index:var(--sl-z-index-toc);top:calc(var(--sl-nav-height) - 1px);inset-inline:0;border-top:1px solid var(--sl-color-gray-5);background-color:var(--sl-color-bg-nav)}@media (min-width: 50rem){nav:where(.astro-xsfthomx){inset-inline-start:var(--sl-content-inline-start, 0)}}summary:where(.astro-xsfthomx){gap:.5rem;align-items:center;height:var(--sl-mobile-toc-height);border-bottom:1px solid var(--sl-color-hairline-shade);padding:.5rem 1rem;font-size:var(--sl-text-xs);outline-offset:var(--sl-outline-offset-inside)}summary:where(.astro-xsfthomx)::marker,summary:where(.astro-xsfthomx)::-webkit-details-marker{display:none}.toggle:where(.astro-xsfthomx){flex-shrink:0;gap:1rem;align-items:center;justify-content:space-between;border:1px solid var(--sl-color-gray-5);border-radius:.5rem;padding-block:.5rem;padding-inline-start:.75rem;padding-inline-end:.5rem;line-height:1;background-color:var(--sl-color-black);user-select:none;cursor:pointer}details:where(.astro-xsfthomx)[open] .toggle:where(.astro-xsfthomx){color:var(--sl-color-white);border-color:var(--sl-color-accent)}details:where(.astro-xsfthomx) .toggle:where(.astro-xsfthomx):hover{color:var(--sl-color-white);border-color:var(--sl-color-gray-2)}[dir=rtl] .caret:where(.astro-xsfthomx){transform:rotate(180deg)}details:where(.astro-xsfthomx)[open] .caret:where(.astro-xsfthomx){transform:rotate(90deg)}.display-current:where(.astro-xsfthomx){white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:var(--sl-color-white)}.dropdown:where(.astro-xsfthomx){--border-top: 1px;margin-top:calc(-1 * var(--border-top));border:var(--border-top) solid var(--sl-color-gray-6);border-top-color:var(--sl-color-hairline-shade);max-height:calc(85vh - var(--sl-nav-height) - var(--sl-mobile-toc-height));overflow-y:auto;background-color:var(--sl-color-black);box-shadow:var(--sl-shadow-md);overscroll-behavior:contain}}@layer starlight.core{.right-sidebar-panel:where(.astro-3pxen2na){padding:1rem var(--sl-sidebar-pad-x)}.sl-container:where(.astro-3pxen2na){width:calc(var(--sl-sidebar-width) - 2 * var(--sl-sidebar-pad-x))}.right-sidebar-panel:where(.astro-3pxen2na) h2{color:var(--sl-color-white);font-size:var(--sl-text-h5);font-weight:600;line-height:var(--sl-line-height-headings);margin-bottom:.5rem}.right-sidebar-panel:where(.astro-3pxen2na) :where(a){display:block;font-size:var(--sl-text-xs);text-decoration:none;color:var(--sl-color-gray-3);overflow-wrap:anywhere}.right-sidebar-panel:where(.astro-3pxen2na) :where(a):hover{color:var(--sl-color-white)}@media (min-width: 72rem){.sl-container:where(.astro-3pxen2na){max-width:calc(((100vw - var(--sl-sidebar-width) - 2 * var(--sl-content-pad-x) - 2 * var(--sl-sidebar-pad-x)) * .25))}}}@layer starlight.core{h1:where(.astro-66r2nm36){margin-top:1rem;font-size:var(--sl-text-h1);line-height:var(--sl-line-height-headings);font-weight:600;color:var(--sl-color-white)}}@layer starlight.core{.social-icons:where(.astro-xuq6p55k){display:flex;margin-inline-end:auto;gap:1rem;align-items:center;padding-block:1rem}.social-icons:where(.astro-xuq6p55k):empty{display:none}.mobile-preferences:where(.astro-xuq6p55k){justify-content:space-between;flex-wrap:wrap;border-top:1px solid var(--sl-color-gray-6);column-gap:1rem;padding:.5rem 0}}@layer starlight.core{sl-sidebar-state-persist:where(.astro-zy2jkij7){display:contents}}@layer starlight.core{ul:where(.astro-kjjqd5fy){--sl-sidebar-item-padding-inline: .5rem;list-style:none;padding:0}li:where(.astro-kjjqd5fy){overflow-wrap:anywhere}ul:where(.astro-kjjqd5fy) ul:where(.astro-kjjqd5fy) li:where(.astro-kjjqd5fy){margin-inline-start:var(--sl-sidebar-item-padding-inline);border-inline-start:1px solid var(--sl-color-hairline-light);padding-inline-start:var(--sl-sidebar-item-padding-inline)}.large:where(.astro-kjjqd5fy){font-size:var(--sl-text-lg);font-weight:600;color:var(--sl-color-white)}.top-level:where(.astro-kjjqd5fy)>li:where(.astro-kjjqd5fy)+li:where(.astro-kjjqd5fy){margin-top:.75rem}summary:where(.astro-kjjqd5fy){display:flex;align-items:center;justify-content:space-between;padding:.2em var(--sl-sidebar-item-padding-inline);line-height:1.4;cursor:pointer;user-select:none}summary:where(.astro-kjjqd5fy)::marker,summary:where(.astro-kjjqd5fy)::-webkit-details-marker{display:none}.caret:where(.astro-kjjqd5fy){transition:transform .2s ease-in-out;flex-shrink:0}[dir=rtl] .caret:where(.astro-kjjqd5fy){transform:rotate(180deg)}:where(.astro-kjjqd5fy)[open]>summary:where(.astro-kjjqd5fy) .caret:where(.astro-kjjqd5fy){transform:rotate(90deg)}a:where(.astro-kjjqd5fy){display:block;border-radius:.25rem;text-decoration:none;color:var(--sl-color-gray-2);padding:.3em var(--sl-sidebar-item-padding-inline);line-height:1.4}a:where(.astro-kjjqd5fy):hover,a:where(.astro-kjjqd5fy):focus{color:var(--sl-color-white)}:where(.astro-kjjqd5fy)[aria-current=page],:where(.astro-kjjqd5fy)[aria-current=page]:hover,:where(.astro-kjjqd5fy)[aria-current=page]:focus{font-weight:600;color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent)}a:where(.astro-kjjqd5fy)>:where(.astro-kjjqd5fy):not(:last-child),.group-label:where(.astro-kjjqd5fy)>:where(.astro-kjjqd5fy):not(:last-child){margin-inline-end:.25em}@media (min-width: 50rem){.top-level:where(.astro-kjjqd5fy)>li:where(.astro-kjjqd5fy)+li:where(.astro-kjjqd5fy){margin-top:.5rem}.large:where(.astro-kjjqd5fy){font-size:var(--sl-text-base)}a:where(.astro-kjjqd5fy){font-size:var(--sl-text-sm)}}}@layer starlight.core{a:where(.astro-25y2pg4e){clip:rect(0,0,0,0);position:fixed;top:.75rem;inset-inline-start:.75rem}a:where(.astro-25y2pg4e):focus{clip:unset;z-index:var(--sl-z-index-skiplink);display:block;padding:.5rem 1rem;text-decoration:none;color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent);box-shadow:var(--sl-shadow-lg)}}@layer starlight.core{.main-pane:where(.astro-sxb7xv7b){isolation:isolate}@media (min-width: 72rem){.right-sidebar-container:where(.astro-sxb7xv7b){order:2;position:relative;width:calc(var(--sl-sidebar-width) + (100% - var(--sl-content-width) - var(--sl-sidebar-width)) \/ 2)}.right-sidebar:where(.astro-sxb7xv7b){position:fixed;top:0;border-inline-start:1px solid var(--sl-color-hairline);padding-top:var(--sl-nav-height);width:100%;height:100vh;overflow-y:auto;scrollbar-width:none}.main-pane:where(.astro-sxb7xv7b){width:100%}[data-has-sidebar][data-has-toc] .main-pane:where(.astro-sxb7xv7b){--sl-content-margin-inline: auto 0;order:1;width:calc(var(--sl-content-width) + (100% - var(--sl-content-width) - var(--sl-sidebar-width)) \/ 2)}}}html:not([data-has-toc]){--sl-mobile-toc-height: 0rem}html:not([data-has-sidebar]){--sl-content-width: 67.5rem}html{scroll-padding-top:calc(1.5rem + var(--sl-nav-height) + var(--sl-mobile-toc-height))}main:where(.astro-n7hj6ltz){padding-bottom:3vh}@media (min-width: 50em){:where(.astro-n7hj6ltz)[data-has-sidebar]{--sl-content-inline-start: var(--sl-sidebar-width)}}@media (min-width: 72em){html{scroll-padding-top:calc(1.5rem + var(--sl-nav-height))}}"}]}}},{"url":"https:\/\/contribute.freecodecamp.org\/_astro\/print.DNXP8c50.css","ast":{"type":"stylesheet","stylesheet":{"rules":[{"type":"media","media":"print","rules":[{"type":"rule","selectors":[":root"],"declarations":[{"type":"declaration","property":"--sl-color-white","value":"hsl(224, 10%, 10%)"},{"type":"declaration","property":"--sl-color-gray-1","value":"hsl(224, 14%, 16%)"},{"type":"declaration","property":"--sl-color-gray-2","value":"hsl(224, 10%, 23%)"},{"type":"declaration","property":"--sl-color-gray-3","value":"hsl(224, 7%, 36%)"},{"type":"declaration","property":"--sl-color-gray-4","value":"hsl(224, 6%, 56%)"},{"type":"declaration","property":"--sl-color-gray-5","value":"hsl(224, 6%, 77%)"},{"type":"declaration","property":"--sl-color-gray-6","value":"hsl(224, 20%, 94%)"},{"type":"declaration","property":"--sl-color-gray-7","value":"hsl(224, 19%, 97%)"},{"type":"declaration","property":"--sl-color-black","value":"hsl(0, 0%, 100%)"},{"type":"declaration","property":"--sl-color-orange-high","value":"hsl(var(--sl-hue-orange), 80%, 25%)"},{"type":"declaration","property":"--sl-color-orange","value":"hsl(var(--sl-hue-orange), 90%, 60%)"},{"type":"declaration","property":"--sl-color-orange-low","value":"hsl(var(--sl-hue-orange), 90%, 88%)"},{"type":"declaration","property":"--sl-color-green-high","value":"hsl(var(--sl-hue-green), 80%, 22%)"},{"type":"declaration","property":"--sl-color-green","value":"hsl(var(--sl-hue-green), 90%, 46%)"},{"type":"declaration","property":"--sl-color-green-low","value":"hsl(var(--sl-hue-green), 85%, 90%)"},{"type":"declaration","property":"--sl-color-blue-high","value":"hsl(var(--sl-hue-blue), 80%, 30%)"},{"type":"declaration","property":"--sl-color-blue","value":"hsl(var(--sl-hue-blue), 90%, 60%)"},{"type":"declaration","property":"--sl-color-blue-low","value":"hsl(var(--sl-hue-blue), 88%, 90%)"},{"type":"declaration","property":"--sl-color-purple-high","value":"hsl(var(--sl-hue-purple), 90%, 30%)"},{"type":"declaration","property":"--sl-color-purple","value":"hsl(var(--sl-hue-purple), 90%, 60%)"},{"type":"declaration","property":"--sl-color-purple-low","value":"hsl(var(--sl-hue-purple), 80%, 90%)"},{"type":"declaration","property":"--sl-color-red-high","value":"hsl(var(--sl-hue-red), 80%, 30%)"},{"type":"declaration","property":"--sl-color-red","value":"hsl(var(--sl-hue-red), 90%, 60%)"},{"type":"declaration","property":"--sl-color-red-low","value":"hsl(var(--sl-hue-red), 80%, 90%)"},{"type":"declaration","property":"--sl-color-accent-high","value":"hsl(234, 80%, 30%)"},{"type":"declaration","property":"--sl-color-accent","value":"hsl(234, 90%, 60%)"},{"type":"declaration","property":"--sl-color-accent-low","value":"hsl(234, 88%, 90%)"},{"type":"declaration","property":"--sl-color-text-accent","value":"var(--sl-color-accent)"},{"type":"declaration","property":"--sl-color-text-invert","value":"var(--sl-color-black)"},{"type":"declaration","property":"--sl-color-bg-nav","value":"var(--sl-color-gray-7)"},{"type":"declaration","property":"--sl-color-bg-sidebar","value":"var(--sl-color-bg)"},{"type":"declaration","property":"--sl-color-bg-inline-code","value":"var(--sl-color-gray-6)"},{"type":"declaration","property":"--sl-color-bg-accent","value":"var(--sl-color-accent)"},{"type":"declaration","property":"--sl-color-hairline-light","value":"var(--sl-color-gray-6)"},{"type":"declaration","property":"--sl-color-hairline-shade","value":"var(--sl-color-gray-6)"},{"type":"declaration","property":"--sl-color-backdrop-overlay","value":"hsla(225, 9%, 36%, .66)"},{"type":"declaration","property":"--sl-shadow-sm","value":"none"},{"type":"declaration","property":"--sl-shadow-md","value":"none"},{"type":"declaration","property":"--sl-shadow-lg","value":"none"}]},{"type":"rule","selectors":[".print\\:hidden"],"declarations":[{"type":"declaration","property":"display","value":"none"}]},{"type":"rule","selectors":[".print\\:flex"],"declarations":[{"type":"declaration","property":"display","value":"flex"}]},{"type":"rule","selectors":[".print\\:block"],"declarations":[{"type":"declaration","property":"display","value":"block"}]},{"type":"rule","selectors":["main"],"declarations":[{"type":"declaration","property":"padding-bottom","value":"0"}]},{"type":"rule","selectors":["main>.content-panel"],"declarations":[{"type":"declaration","property":"padding-block-start","value":"0"}]},{"type":"rule","selectors":[".content-panel+.content-panel"],"declarations":[{"type":"declaration","property":"border","value":"0"}]},{"type":"rule","selectors":[".page>header"],"declarations":[{"type":"declaration","property":"position","value":"relative"}]},{"type":"rule","selectors":[".page>.main-frame"],"declarations":[{"type":"declaration","property":"padding-top","value":"0"},{"type":"declaration","property":"padding-inline-start","value":"0"}]},{"type":"rule","selectors":[".main-pane"],"declarations":[{"type":"declaration","property":"--sl-sidebar-width","value":"0px"},{"type":"declaration","property":"--sl-content-width","value":"100%"}]},{"type":"rule","selectors":[".sl-banner"],"declarations":[{"type":"declaration","property":"--sl-color-banner-text","value":"var(--sl-color-white)"},{"type":"declaration","property":"background-color","value":"transparent"}]},{"type":"rule","selectors":[".sl-markdown-content :is(h1,h2,h3,h4,h5,h6)"],"declarations":[{"type":"declaration","property":"break-after","value":"avoid"}]},{"type":"rule","selectors":[".sl-markdown-content :is(p,li)"],"declarations":[{"type":"declaration","property":"orphans","value":"2"},{"type":"declaration","property":"widows","value":"2"}]},{"type":"rule","selectors":[".sl-markdown-content pre"],"declarations":[{"type":"declaration","property":"overflow-x","value":"hidden"},{"type":"declaration","property":"white-space","value":"pre-wrap"}]},{"type":"rule","selectors":[".sl-markdown-content .expressive-code",".sl-markdown-content figure",".sl-markdown-content pre"],"declarations":[{"type":"declaration","property":"break-inside","value":"avoid"}]},{"type":"rule","selectors":[".expressive-code .frame.is-terminal .header:before"],"declarations":[{"type":"declaration","property":"box-shadow","value":"inset 99rem 99rem var(--sl-color-gray-5)"}]},{"type":"rule","selectors":[".expressive-code .frame.has-title:not(.is-terminal) .header"],"declarations":[{"type":"declaration","property":"background","value":"transparent"},{"type":"declaration","property":"border-bottom","value":"1px solid var(--sl-color-gray-6)"}]},{"type":"rule","selectors":[".expressive-code .frame.has-title:not(.is-terminal) .title"],"declarations":[{"type":"declaration","property":"background","value":"transparent"}]},{"type":"rule","selectors":[".expressive-code .frame.has-title:not(.is-terminal) .title:after"],"declarations":[{"type":"declaration","property":"border-top","value":"0"}]},{"type":"rule","selectors":[".expressive-code .copy"],"declarations":[{"type":"declaration","property":"display","value":"none"}]},{"type":"rule","selectors":[".sl-markdown-content code:not(:where(.not-content *))"],"declarations":[{"type":"declaration","property":"background-color","value":"transparent"},{"type":"declaration","property":"padding","value":"0"},{"type":"declaration","property":"margin-block","value":"unset"},{"type":"declaration","property":"font-size","value":".9375em"}]},{"type":"rule","selectors":[".sl-badge"],"declarations":[{"type":"declaration","property":"background","value":"transparent"},{"type":"declaration","property":"color","value":"var(--sl-color-white)"}]},{"type":"rule","selectors":["starlight-file-tree"],"declarations":[{"type":"declaration","property":"break-inside","value":"avoid"}]},{"type":"rule","selectors":["starlight-file-tree .highlight"],"declarations":[{"type":"declaration","property":"outline","value":"3px solid var(--sl-color-accent-low)"},{"type":"declaration","property":"color","value":"var(--sl-color-text)"},{"type":"declaration","property":"background-color","value":"transparent"}]},{"type":"rule","selectors":[".starlight-aside"],"declarations":[{"type":"declaration","property":"break-inside","value":"avoid"}]},{"type":"rule","selectors":[".sl-link-button.primary"],"declarations":[{"type":"declaration","property":"background","value":"transparent"},{"type":"declaration","property":"border-color","value":"var(--sl-color-white)"},{"type":"declaration","property":"color","value":"var(--sl-color-white)"}]},{"type":"rule","selectors":["starlight-tabs"],"declarations":[{"type":"declaration","property":"break-inside","value":"avoid"}]},{"type":"rule","selectors":[".sl-steps>li:after"],"declarations":[{"type":"declaration","property":"box-shadow","value":"inset 99rem 99rem var(--sl-color-hairline-light)"}]}]}],"parsingErrors":[]}}},{"url":"block","ast":{"type":"stylesheet","stylesheet":{"rules":[{"type":"rule","selectors":["@layer starlight.components"]},{"type":"rule","selectors":[":root"],"declarations":[{"type":"declaration","property":"--sl-badge-default-border","value":"var(--sl-color-accent)"},{"type":"declaration","property":"--sl-badge-default-bg","value":"var(--sl-color-accent-low)"},{"type":"declaration","property":"--sl-badge-default-text","value":"#fff"},{"type":"declaration","property":"--sl-badge-note-border","value":"var(--sl-color-blue)"},{"type":"declaration","property":"--sl-badge-note-bg","value":"var(--sl-color-blue-low)"},{"type":"declaration","property":"--sl-badge-note-text","value":"#fff"},{"type":"declaration","property":"--sl-badge-danger-border","value":"var(--sl-color-red)"},{"type":"declaration","property":"--sl-badge-danger-bg","value":"var(--sl-color-red-low)"},{"type":"declaration","property":"--sl-badge-danger-text","value":"#fff"},{"type":"declaration","property":"--sl-badge-success-border","value":"var(--sl-color-green)"},{"type":"declaration","property":"--sl-badge-success-bg","value":"var(--sl-color-green-low)"},{"type":"declaration","property":"--sl-badge-success-text","value":"#fff"},{"type":"declaration","property":"--sl-badge-caution-border","value":"var(--sl-color-orange)"},{"type":"declaration","property":"--sl-badge-caution-bg","value":"var(--sl-color-orange-low)"},{"type":"declaration","property":"--sl-badge-caution-text","value":"#fff"},{"type":"declaration","property":"--sl-badge-tip-border","value":"var(--sl-color-purple)"},{"type":"declaration","property":"--sl-badge-tip-bg","value":"var(--sl-color-purple-low)"},{"type":"declaration","property":"--sl-badge-tip-text","value":"#fff"}]},{"type":"rule","selectors":["[data-theme=light]:root"],"declarations":[{"type":"declaration","property":"--sl-badge-default-bg","value":"var(--sl-color-accent-high)"},{"type":"declaration","property":"--sl-badge-note-bg","value":"var(--sl-color-blue-high)"},{"type":"declaration","property":"--sl-badge-danger-bg","value":"var(--sl-color-red-high)"},{"type":"declaration","property":"--sl-badge-success-bg","value":"var(--sl-color-green-high)"},{"type":"declaration","property":"--sl-badge-caution-bg","value":"var(--sl-color-orange-high)"},{"type":"declaration","property":"--sl-badge-tip-bg","value":"var(--sl-color-purple-high)"}]},{"type":"rule","selectors":[".sl-badge:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"display","value":"inline-block"},{"type":"declaration","property":"border","value":"1px solid var(--sl-color-border-badge)"},{"type":"declaration","property":"border-radius","value":".25rem"},{"type":"declaration","property":"font-family","value":"var(--sl-font-system-mono)"},{"type":"declaration","property":"line-height","value":"normal"},{"type":"declaration","property":"color","value":"var(--sl-color-text-badge)"},{"type":"declaration","property":"background-color","value":"var(--sl-color-bg-badge)"},{"type":"declaration","property":"overflow-wrap","value":"anywhere"}]},{"type":"rule","selectors":[".sidebar-content .sl-badge:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"line-height","value":"1"},{"type":"declaration","property":"font-size","value":"var(--sl-text-xs)"},{"type":"declaration","property":"padding","value":".125rem .375rem"}]},{"type":"rule","selectors":[".sidebar-content a[aria-current=page]>.sl-badge:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"transparent"},{"type":"declaration","property":"--sl-color-border-badge","value":"currentColor"},{"type":"declaration","property":"color","value":"inherit"}]},{"type":"rule","selectors":[".default:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"var(--sl-badge-default-bg)"},{"type":"declaration","property":"--sl-color-border-badge","value":"var(--sl-badge-default-border)"},{"type":"declaration","property":"--sl-color-text-badge","value":"var(--sl-badge-default-text)"}]},{"type":"rule","selectors":[".note:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"var(--sl-badge-note-bg)"},{"type":"declaration","property":"--sl-color-border-badge","value":"var(--sl-badge-note-border)"},{"type":"declaration","property":"--sl-color-text-badge","value":"var(--sl-badge-note-text)"}]},{"type":"rule","selectors":[".danger:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"var(--sl-badge-danger-bg)"},{"type":"declaration","property":"--sl-color-border-badge","value":"var(--sl-badge-danger-border)"},{"type":"declaration","property":"--sl-color-text-badge","value":"var(--sl-badge-danger-text)"}]},{"type":"rule","selectors":[".success:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"var(--sl-badge-success-bg)"},{"type":"declaration","property":"--sl-color-border-badge","value":"var(--sl-badge-success-border)"},{"type":"declaration","property":"--sl-color-text-badge","value":"var(--sl-badge-success-text)"}]},{"type":"rule","selectors":[".tip:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"var(--sl-badge-tip-bg)"},{"type":"declaration","property":"--sl-color-border-badge","value":"var(--sl-badge-tip-border)"},{"type":"declaration","property":"--sl-color-text-badge","value":"var(--sl-badge-tip-text)"}]},{"type":"rule","selectors":[".caution:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"--sl-color-bg-badge","value":"var(--sl-badge-caution-bg)"},{"type":"declaration","property":"--sl-color-border-badge","value":"var(--sl-badge-caution-border)"},{"type":"declaration","property":"--sl-color-text-badge","value":"var(--sl-badge-caution-text)"}]},{"type":"rule","selectors":[".small:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"font-size","value":"var(--sl-text-xs)"},{"type":"declaration","property":"padding","value":".125rem .25rem"}]},{"type":"rule","selectors":[".medium:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"font-size","value":"var(--sl-text-sm)"},{"type":"declaration","property":"padding","value":".175rem .35rem"}]},{"type":"rule","selectors":[".large:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"font-size","value":"var(--sl-text-base)"},{"type":"declaration","property":"padding","value":".225rem .45rem"}]},{"type":"rule","selectors":[".sl-markdown-content :is(h1,h2,h3,h4,h5,h6) .sl-badge:where(.astro-apfhek72)"],"declarations":[{"type":"declaration","property":"vertical-align","value":"middle"}]}],"parsingErrors":[{"reason":"missing '}'","line":1,"column":29,"source":":root{--sl-badge-default-border: var(--sl-color-accent);--sl-badge-default-bg: var(--sl-color-accent-low);--sl-badge-default-text: #fff;--sl-badge-note-border: var(--sl-color-blue);--sl-badge-note-bg: var(--sl-color-blue-low);--sl-badge-note-text: #fff;--sl-badge-danger-border: var(--sl-color-red);--sl-badge-danger-bg: var(--sl-color-red-low);--sl-badge-danger-text: #fff;--sl-badge-success-border: var(--sl-color-green);--sl-badge-success-bg: var(--sl-color-green-low);--sl-badge-success-text: #fff;--sl-badge-caution-border: var(--sl-color-orange);--sl-badge-caution-bg: var(--sl-color-orange-low);--sl-badge-caution-text: #fff;--sl-badge-tip-border: var(--sl-color-purple);--sl-badge-tip-bg: var(--sl-color-purple-low);--sl-badge-tip-text: #fff}[data-theme=light]:root{--sl-badge-default-bg: var(--sl-color-accent-high);--sl-badge-note-bg: var(--sl-color-blue-high);--sl-badge-danger-bg: var(--sl-color-red-high);--sl-badge-success-bg: var(--sl-color-green-high);--sl-badge-caution-bg: var(--sl-color-orange-high);--sl-badge-tip-bg: var(--sl-color-purple-high)}.sl-badge:where(.astro-apfhek72){display:inline-block;border:1px solid var(--sl-color-border-badge);border-radius:.25rem;font-family:var(--sl-font-system-mono);line-height:normal;color:var(--sl-color-text-badge);background-color:var(--sl-color-bg-badge);overflow-wrap:anywhere}.sidebar-content .sl-badge:where(.astro-apfhek72){line-height:1;font-size:var(--sl-text-xs);padding:.125rem .375rem}.sidebar-content a[aria-current=page]>.sl-badge:where(.astro-apfhek72){--sl-color-bg-badge: transparent;--sl-color-border-badge: currentColor;color:inherit}.default:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-default-bg);--sl-color-border-badge: var(--sl-badge-default-border);--sl-color-text-badge: var(--sl-badge-default-text)}.note:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-note-bg);--sl-color-border-badge: var(--sl-badge-note-border);--sl-color-text-badge: var(--sl-badge-note-text)}.danger:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-danger-bg);--sl-color-border-badge: var(--sl-badge-danger-border);--sl-color-text-badge: var(--sl-badge-danger-text)}.success:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-success-bg);--sl-color-border-badge: var(--sl-badge-success-border);--sl-color-text-badge: var(--sl-badge-success-text)}.tip:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-tip-bg);--sl-color-border-badge: var(--sl-badge-tip-border);--sl-color-text-badge: var(--sl-badge-tip-text)}.caution:where(.astro-apfhek72){--sl-color-bg-badge: var(--sl-badge-caution-bg);--sl-color-border-badge: var(--sl-badge-caution-border);--sl-color-text-badge: var(--sl-badge-caution-text)}.small:where(.astro-apfhek72){font-size:var(--sl-text-xs);padding:.125rem .25rem}.medium:where(.astro-apfhek72){font-size:var(--sl-text-sm);padding:.175rem .35rem}.large:where(.astro-apfhek72){font-size:var(--sl-text-base);padding:.225rem .45rem}.sl-markdown-content :is(h1,h2,h3,h4,h5,h6) .sl-badge:where(.astro-apfhek72){vertical-align:middle}} @layer starlight.components{.card-grid:where(.astro-j2evhyfc){display:grid;grid-template-columns:100%;gap:1rem}.card-grid:where(.astro-j2evhyfc)>*{margin-top:0!important}@media (min-width: 50rem){.card-grid:where(.astro-j2evhyfc){grid-template-columns:1fr 1fr;gap:1.5rem}.stagger:where(.astro-j2evhyfc){--stagger-height: 5rem;padding-bottom:var(--stagger-height)}.stagger:where(.astro-j2evhyfc)>*:nth-child(2n){transform:translateY(var(--stagger-height))}}} @layer starlight.components{.card:where(.astro-xkz2rg4l){--sl-card-border: var(--sl-color-purple);--sl-card-bg: var(--sl-color-purple-low);border:1px solid var(--sl-color-gray-5);background-color:var(--sl-color-black);padding:clamp(1rem,calc(.125rem + 3vw),2.5rem);flex-direction:column;gap:clamp(.5rem,calc(.125rem + 1vw),1rem)}.card:where(.astro-xkz2rg4l):nth-child(4n+1){--sl-card-border: var(--sl-color-orange);--sl-card-bg: var(--sl-color-orange-low)}.card:where(.astro-xkz2rg4l):nth-child(4n+3){--sl-card-border: var(--sl-color-green);--sl-card-bg: var(--sl-color-green-low)}.card:where(.astro-xkz2rg4l):nth-child(4n+4){--sl-card-border: var(--sl-color-red);--sl-card-bg: var(--sl-color-red-low)}.card:where(.astro-xkz2rg4l):nth-child(4n+5){--sl-card-border: var(--sl-color-blue);--sl-card-bg: var(--sl-color-blue-low)}.title:where(.astro-xkz2rg4l){font-weight:600;font-size:var(--sl-text-h4);color:var(--sl-color-white);line-height:var(--sl-line-height-headings);gap:1rem;align-items:center}.card:where(.astro-xkz2rg4l) .icon:where(.astro-xkz2rg4l){border:1px solid var(--sl-card-border);background-color:var(--sl-card-bg);padding:.2em;border-radius:.25rem;flex-shrink:0}.card:where(.astro-xkz2rg4l) .body:where(.astro-xkz2rg4l){margin:0;font-size:clamp(var(--sl-text-sm),calc(.5rem + 1vw),var(--sl-text-body))}} @layer starlight.components{svg:where(.astro-xaj4nzjw){color:var(--sl-icon-color);font-size:var(--sl-icon-size, 1em);width:1em;height:1em}} @layer starlight.components{.sl-steps{--bullet-size: calc(var(--sl-line-height) * 1rem);--bullet-margin: .375rem;list-style:none;counter-reset:steps-counter var(--sl-steps-start, 0);padding-inline-start:0}.sl-steps>li{counter-increment:steps-counter;position:relative;padding-inline-start:calc(var(--bullet-size) + 1rem);padding-bottom:1px;min-height:calc(var(--bullet-size) + var(--bullet-margin))}.sl-steps>li+li{margin-top:0}.sl-steps>li:before{content:counter(steps-counter);position:absolute;top:0;inset-inline-start:0;width:var(--bullet-size);height:var(--bullet-size);line-height:var(--bullet-size);font-size:var(--sl-text-xs);font-weight:600;text-align:center;color:var(--sl-color-white);background-color:var(--sl-color-gray-6);border-radius:99rem;box-shadow:inset 0 0 0 1px var(--sl-color-gray-5)}.sl-steps>li:after{--guide-width: 1px;content:\"\";position:absolute;top:calc(var(--bullet-size) + var(--bullet-margin));bottom:var(--bullet-margin);inset-inline-start:calc((var(--bullet-size) - var(--guide-width)) \/ 2);width:var(--guide-width);background-color:var(--sl-color-hairline-light)}}@layer starlight.content{.sl-steps>li>:first-child{--lh: calc(1em * var(--sl-line-height));--shift-y: calc(.5 * (var(--bullet-size) - var(--lh)));transform:translateY(var(--shift-y));margin-bottom:var(--shift-y)}.sl-steps>li>:first-child:where(h1,h2,h3,h4,h5,h6){--lh: calc(1em * var(--sl-line-height-headings))}@supports (--prop: 1lh){.sl-steps>li>:first-child{--lh: 1lh}}} @layer starlight.components{starlight-file-tree:where(.astro-t72hyuag){--x-space: 1.5rem;--y-space: .125rem;--y-pad: 0;display:block;border:1px solid var(--sl-color-gray-5);padding:1rem;background-color:var(--sl-color-gray-6);font-size:var(--sl-text-xs);font-family:var(--__sl-font-mono);overflow-x:auto}starlight-file-tree:where(.astro-t72hyuag) .directory>details{border:0;padding:0;padding-inline-start:var(--x-space);background:transparent}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary{margin-inline-start:calc(-1 * var(--x-space));border:0;padding:var(--y-pad) .625rem;font-weight:400;color:var(--sl-color-white);max-width:100%}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary::marker,starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary::-webkit-details-marker{color:var(--sl-color-gray-3)}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary:hover,starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary:hover .tree-icon{cursor:pointer;color:var(--sl-color-text-accent);fill:currentColor}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary:hover~ul{border-color:var(--sl-color-gray-4)}starlight-file-tree:where(.astro-t72hyuag) .directory>details>summary:hover .highlight .tree-icon{color:var(--sl-color-text-invert);fill:currentColor}starlight-file-tree:where(.astro-t72hyuag) ul{margin-inline-start:.5rem;border-inline-start:1px solid var(--sl-color-gray-5);padding:0;padding-inline-start:.125rem;list-style:none}starlight-file-tree:where(.astro-t72hyuag)>ul{margin:0;border:0;padding:0}starlight-file-tree:where(.astro-t72hyuag) li{margin:var(--y-space) 0;padding:var(--y-pad) 0}starlight-file-tree:where(.astro-t72hyuag) .file{margin-inline-start:calc(var(--x-space) - .125rem);color:var(--sl-color-white)}starlight-file-tree:where(.astro-t72hyuag) .tree-entry{display:inline-flex;align-items:flex-start;flex-wrap:wrap;max-width:calc(100% - 1rem)}@media (min-width: 30em){starlight-file-tree:where(.astro-t72hyuag) .tree-entry{flex-wrap:nowrap}}starlight-file-tree:where(.astro-t72hyuag) .tree-entry>:first-child{flex-shrink:0}starlight-file-tree:where(.astro-t72hyuag) .empty{color:var(--sl-color-gray-3);padding-inline-start:.375rem}starlight-file-tree:where(.astro-t72hyuag) .comment{color:var(--sl-color-gray-3);padding-inline-start:1.625rem;max-width:24rem;min-width:12rem}starlight-file-tree:where(.astro-t72hyuag) .highlight{display:inline-block;border-radius:.25rem;padding-inline-end:.5rem;color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent)}starlight-file-tree:where(.astro-t72hyuag) svg{display:inline;fill:var(--sl-color-gray-3);vertical-align:middle;margin-inline:.25rem .375rem;width:.875rem;height:.875rem}starlight-file-tree:where(.astro-t72hyuag) .highlight svg.tree-icon{fill:currentColor}} @layer starlight.components{.sl-link-button:where(.astro-fnfbevnj){align-items:center;border:1px solid transparent;border-radius:999rem;display:inline-flex;font-size:var(--sl-text-sm);gap:.5em;line-height:1.1875;outline-offset:.25rem;padding:.4375rem 1.125rem;text-decoration:none}.sl-link-button:where(.astro-fnfbevnj).primary{background:var(--sl-color-text-accent);border-color:var(--sl-color-text-accent);color:var(--sl-color-black)}.sl-link-button:where(.astro-fnfbevnj).primary:hover{color:var(--sl-color-black)}.sl-link-button:where(.astro-fnfbevnj).secondary{border-color:inherit;color:var(--sl-color-white)}.sl-link-button:where(.astro-fnfbevnj).minimal{color:var(--sl-color-white);padding-inline:0}.sl-link-button:where(.astro-fnfbevnj) svg{flex-shrink:0}@media (min-width: 50rem){.sl-link-button:where(.astro-fnfbevnj){font-size:var(--sl-text-base);padding:.9375rem 1.25rem}}.sl-markdown-content .sl-link-button:where(.astro-fnfbevnj){margin-inline-end:1rem}.sl-markdown-content .sl-link-button:where(.astro-fnfbevnj):not(:where(p *)){margin-block:1rem}}"}]}}},{"url":"block","ast":{"type":"stylesheet","stylesheet":{"rules":[{"type":"rule","selectors":[".scroll-to-top-button"],"declarations":[{"type":"declaration","property":"position","value":"fixed"},{"type":"declaration","property":"bottom","value":"40px"},{"type":"declaration","property":"width","value":"47px"},{"type":"declaration","property":"height","value":"47px"},{"type":"declaration","property":"right","value":"35px"},{"type":"declaration","property":"border-radius","value":"15%"},{"type":"declaration","property":"background-color","value":"var(--sl-color-bg-sidebar)"},{"type":"declaration","property":"cursor","value":"pointer"},{"type":"declaration","property":"display","value":"flex"},{"type":"declaration","property":"align-items","value":"center"},{"type":"declaration","property":"justify-content","value":"center"},{"type":"declaration","property":"opacity","value":"0"},{"type":"declaration","property":"visibility","value":"hidden"},{"type":"declaration","property":"transition","value":"opacity 0.3s ease, visibility 0.3s ease, background-color 0.3s ease, transform 0.3s ease"},{"type":"declaration","property":"z-index","value":"100"},{"type":"declaration","property":"border","value":"none"},{"type":"declaration","property":"transform-origin","value":"center"},{"type":"declaration","property":"-webkit-tap-highlight-color","value":"transparent"},{"type":"declaration","property":"touch-action","value":"manipulation"}]},{"type":"rule","selectors":[".scroll-to-top-button:active"],"declarations":[{"type":"declaration","property":"background-color","value":"var(--sl-color-accent-dark)"},{"type":"declaration","property":"color","value":"var(--sl-text-white)"},{"type":"declaration","property":"transition","value":"background-color 0.1s ease, transform 0.1s ease"}]},{"type":"rule","selectors":[".scroll-to-top-button:not(:hover):not(:active)"],"declarations":[{"type":"declaration","property":"background-color","value":"var(--sl-color-bg-sidebar)"},{"type":"declaration","property":"border","value":"1px solid var(--sl-color-gray-5)"},{"type":"declaration","property":"box-shadow","value":"0 0 0 1px rgba(0,0,0,0.04),0 4px 8px 0 rgba(0,0,0,0.2)"}]},{"type":"rule","selectors":[".scroll-to-top-button.visible"],"declarations":[{"type":"declaration","property":"opacity","value":"1"},{"type":"declaration","property":"visibility","value":"visible"}]},{"type":"rule","selectors":[":root[\"theme-dark\"] .scroll-to-top-button"],"declarations":[{"type":"declaration","property":"border","value":"1px solid yellow"}]},{"type":"rule","selectors":[".scroll-to-top-button:hover"],"declarations":[{"type":"declaration","property":"background-color","value":"var(--sl-color-accent)"},{"type":"declaration","property":"box-shadow","value":"0 0 0 1px rgba(0,0,0,0.04),0 4px 8px 0 rgba(0,0,0,0.2)"},{"type":"declaration","property":"color","value":"white"},{"type":"declaration","property":"border","value":"none"}]},{"type":"rule","selectors":[".scroll-to-top-button.keyboard-focus"],"declarations":[{"type":"declaration","property":"outline","value":"2px solid var(--sl-color-text)"},{"type":"declaration","property":"outline-offset","value":"2px"}]},{"type":"rule","selectors":[".scroll-to-top-btn-tooltip"],"declarations":[{"type":"declaration","property":"position","value":"absolute"},{"type":"declaration","property":"right","value":"-22px"},{"type":"declaration","property":"top","value":"-47px"},{"type":"declaration","property":"background-color","value":"var(--sl-color-gray-6)"},{"type":"declaration","property":"color","value":"var(--sl-color-text)"},{"type":"declaration","property":"padding","value":"5px 10px"},{"type":"declaration","property":"border-radius","value":"4px"},{"type":"declaration","property":"font-weight","value":"400"},{"type":"declaration","property":"font-size","value":"14px"},{"type":"declaration","property":"white-space","value":"nowrap"},{"type":"declaration","property":"opacity","value":"0"},{"type":"declaration","property":"visibility","value":"hidden"},{"type":"declaration","property":"transition","value":"opacity 0.2s, visibility 0.3s"},{"type":"declaration","property":"pointer-events","value":"none"}]},{"type":"rule","selectors":[".scroll-to-top-btn-tooltip.visible"],"declarations":[{"type":"declaration","property":"opacity","value":"1"},{"type":"declaration","property":"visibility","value":"visible"}]}],"parsingErrors":[]}}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1em"}]}},{"url":"inline","ast":{"declarations":[]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"padding","value":"0"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-select-width","value":"6.25em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.5rem"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.5rem"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.333em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.333em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.333em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.333em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"--sl-icon-size","value":"1.2em"}]}},{"url":"inline","ast":{"declarations":[{"type":"declaration","property":"display","value":"flex"}]}}]
performance
{"lcp_elem_stats":{"startTime":532,"nodeName":"IMG","url":"https:\/\/contribute.freecodecamp.org\/images\/branding\/banner.png","size":147156,"loadTime":483.1000000014901,"renderTime":532,"attributes":[{"name":"src","value":"\/images\/branding\/banner.png"},{"name":"class","value":"hidden md:block w-96 rounded-full overflow-clip"},{"name":"alt","value":"Contribute to freeCodeCamp"}],"boundingClientRect":{"x":831.5,"y":184.28125,"width":384,"height":384,"top":184.28125,"right":1215.5,"bottom":568.28125,"left":831.5},"naturalWidth":500,"naturalHeight":500,"styles":{"background-image":"none","pointer-events":"auto","position":"static","width":"384px","height":"384px"},"percentOfViewport":"0.159","cover90viewport":false},"raw_lcp_element":{"nodeName":"IMG","attributes":[{"name":"src","value":"\/images\/branding\/banner.png"},{"name":"class","value":"hidden md:block w-96 rounded-full overflow-clip"},{"name":"alt","value":"Contribute to freeCodeCamp"}]},"lcp_resource":{"id":"26114.8","sequence":8,"body":"\/home\/pmeenan\/wptagent\/work\/wptagent-v6-manual-20241002-10.20.0.3\/250710_FA_R.1.0\/bodies\/26114.8","url":"https:\/\/contribute.freecodecamp.org\/images\/branding\/banner.png","status":200,"connectionId":123,"protocol":"h3","connectionReused":true,"fromServiceWorker":false,"timing":{"requestTime":55007.981714,"proxyStart":-1,"proxyEnd":-1,"dnsStart":-1,"dnsEnd":-1,"connectStart":-1,"connectEnd":-1,"sslStart":-1,"sslEnd":-1,"workerStart":-1,"workerReady":-1,"workerFetchStart":-1,"workerRespondWithSettled":-1,"sendStart":1.66,"sendEnd":2.638,"pushStart":0,"pushEnd":0,"receiveHeadersStart":111.991,"receiveHeadersEnd":112.207},"fromDiskCache":false,"remoteIPAddress":"[2606:4700:20::ac43:4695]","remotePort":443,"securityState":"secure","securityDetails":{"protocol":"QUIC","keyExchange":"","keyExchangeGroup":"X25519MLKEM768","cipher":"AES_128_GCM","certificateId":0,"subjectName":"contribute.freecodecamp.org","sanList":["contribute.freecodecamp.org"],"issuer":"WE1","validFrom":1747070097,"validTo":1754849693,"signedCertificateTimestampList":[{"status":"Verified","origin":"Embedded in certificate","logDescription":"Google 'Argon2025h2' log","logId":"12F14E34BD53724C840619C38F3F7A13F8E7B56287889C6D300584EBE586263A","timestamp":1747073697808,"hashAlgorithm":"SHA-256","signatureAlgorithm":"ECDSA","signatureData":"3046022100D4242BC1F88EB78B949EA703E9481B35751B0CBBE7EBDFE737EC6BB05573037202210092A964DE0319F9BC839F4BD65B99C1CE37EC0D1323551F12313ED5812DAD1094"},{"status":"Verified","origin":"Embedded in certificate","logDescription":"DigiCert Yeti2025 Log","logId":"7D591E12E1782A7B1C61677C5EFDF8D0875C14A04E959EB9032FD90E8C2E79B8","timestamp":1747073697838,"hashAlgorithm":"SHA-256","signatureAlgorithm":"ECDSA","signatureData":"304502207EC06EC9B7A3681030A5D02B395C8D9335549F79F2318D6E6619615BED93018B022100CDCA2367EA6631A8E6D29D1761809060B79B81C70257702407DFED272E251A28"}],"certificateTransparencyCompliance":"compliant","serverSignatureAlgorithm":1027,"encryptedClientHello":false},"fromPrefetchCache":false,"response_headers":{"accept-ranges":"bytes","access-control-allow-origin":"*","alt-svc":"h3=\":443\"; ma=86400","cache-control":"public, max-age=86400, must-revalidate","cf-cache-status":"REVALIDATED","cf-ray":"95d0638b2fb83910-IAD","content-length":"89967","content-type":"image\/png","date":"Thu, 10 Jul 2025 13:25:44 GMT","etag":"\"ea33c4c0972d45ba622940116b39e415\"","nel":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}","priority":"u=2,i","referrer-policy":"strict-origin-when-cross-origin","report-to":"{\"endpoints\":[{\"url\":\"https:\\\/\\\/a.nel.cloudflare.com\\\/report\\\/v4?s=iW%2BY9tapxNtwVx8KxFxQOrHIa1gyEngN8g7HBskqTN0TqYJHmuMajhGj6d6J9g%2BnaqwFqpgOeq7CMzbDmnngHGO7OMV6g0laFyBl8FcZ39oUlhB0FaPW3Wriwlu3%2FZm7O7quk3H6lUv63mdYpr6L3G7pGnMk1QsCrKo%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}","server":"cloudflare","server-timing":"cfL4;desc=\"?proto=QUIC&rtt=27985&min_rtt=17029&rtt_var=6089&sent=42&recv=24&lost=0&retrans=0&sent_bytes=27984&recv_bytes=8659&delivery_rate=446107&cwnd=12000&unsent_bytes=0&cid=a17711335fd5173c&ts=298&x=1\"\ncfExtPri\ncfHdrFlush;dur=10","speculation-rules":"\"\/cdn-cgi\/speculation\"","vary":"Accept-Encoding","x-content-type-options":"nosniff"},"request_headers":{":authority":"contribute.freecodecamp.org",":method":"GET",":path":"\/images\/branding\/banner.png",":scheme":"https","accept":"image\/avif,image\/webp,image\/apng,image\/svg+xml,image\/*,*\/*;q=0.8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"en-US,en;q=0.9","priority":"u=2, i","referer":"https:\/\/contribute.freecodecamp.org\/intro\/","sec-ch-ua":"\" Not A;Brand\";v=\"99\", \"Chromium\";v=\"138\", \"Google Chrome\";v=\"138\"","sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"\"Unknown\"","sec-fetch-dest":"image","sec-fetch-mode":"no-cors","sec-fetch-site":"same-origin","user-agent":"Mozilla\/5.0 (X11; Linux x86_64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/138.0.0.0 Safari\/537.36 PTST\/250708.192815"},"initiator":{"type":"parser","url":"https:\/\/contribute.freecodecamp.org\/intro\/","lineNumber":48,"columnNumber":2618},"documentURL":"https:\/\/contribute.freecodecamp.org\/intro\/","timestamp":55007.958568,"frameId":"F7552AB836B5A2EB0404D9A18E9314EB","hasUserGesture":false,"type":"Image","wallTime":1752153944.767302,"initialPriority":"Medium","priority":"Medium","transfer_size":90847},"is_lcp_statically_discoverable":true,"is_lcp_preloaded":false,"lcp_preload":[],"web_vitals_js":["https:\/\/static.cloudflareinsights.com\/beacon.min.js\/vcd15cbe7772f49c399c6a5babf22c1241717689176015"],"gaming_metrics":[],"speculation_rules":{"htmlRules":[],"httpHeaderRules":[{"url":"https:\/\/contribute.freecodecamp.org\/cdn-cgi\/speculation","rule":{"prefetch":[{"eagerness":"conservative","source":"document","where":{"and":[{"href_matches":"\/*","relative_to":"document"}]}}]}}]}}
privacy
{"iab_tcf_v1":{"present":false},"iab_tcf_v2":{"present":false},"iab_gpp":{"present":false},"iab_usp":{"present":false},"navigator_doNotTrack":false,"navigator_globalPrivacyControl":false,"document_permissionsPolicy":false,"document_featurePolicy":false,"referrerPolicy":{"entire_document_policy":null,"individual_requests":null,"link_relations":null},"request_hostnames_with_cname":{},"ccpa_link":{"hasCCPALink":false},"iab_ddr":{"present":false,"status":404}}
privacy-sandbox
{"featuresDisabled":[{"top-level-storage-access":[]}],"privacySandBoxAPIUsage":{"android.clients.google.com":["accept-ch|Sec-CH-UA-Arch, Sec-CH-UA-Bitness, Sec-CH-UA-Full-Version, Sec-CH-UA-Full-Version-List, Sec-CH-UA-Model, Sec-CH-UA-WoW64, Sec-CH-UA-Form-Factors, Sec-CH-UA-Platform, Sec-CH-UA-Platform-Version"]}}
pwa
{"serviceWorkers":[],"manifests":[],"serviceWorkerInitiated":[],"workboxInfo":[],"importScriptsInfo":[],"swEventListenersInfo":[],"swPropertiesInfo":[],"swMethodsInfo":[],"swObjectsInfo":[],"swRegistrationPropertiesInfo":[],"windowEventListenersInfo":[],"windowPropertiesInfo":[],"serviceWorkerRegistrationInfo":[],"serviceWorkerHeuristic":false}
quirks_mode
false
responsive_images
{"responsive-images":[{"hasSrc":true,"hasAlt":true,"isInPicture":false,"hasCustomDataAttributes":false,"hasWidth":true,"hasHeight":true,"url":"https://contribute.freecodecamp.org/_astro/primary_logo.-jEg6IuN.svg","totalCandidates":1,"heightAttribute":"240","widthAttribute":"2100","altAttribute":"","clientWidth":0,"clientHeight":0,"naturalWidth":2100,"naturalHeight":240,"hasSrcset":false,"hasSizes":false,"currentSrcDensity":1,"approximateResourceWidth":2100,"approximateResourceHeight":240,"byteSize":38414,"bitsPerPixel":0.6097460317460317,"mimeType":"image/svg+xml","computedSizingStyles":{"width":"auto","height":"40px","maxWidth":"100%","maxHeight":"none","minWidth":"auto","minHeight":"auto"},"intrinsicOrExtrinsicSizing":{"width":"both","height":"extrinsic"},"reservedLayoutDimensions":false},{"hasSrc":true,"hasAlt":true,"isInPicture":false,"hasCustomDataAttributes":false,"hasWidth":true,"hasHeight":true,"url":"https://contribute.freecodecamp.org/_astro/secondary_logo.BMqpsykx.svg","totalCandidates":1,"heightAttribute":"240","widthAttribute":"2100","altAttribute":"","clientWidth":350,"clientHeight":40,"naturalWidth":2100,"naturalHeight":240,"hasSrcset":false,"hasSizes":false,"currentSrcDensity":1,"approximateResourceWidth":2100,"approximateResourceHeight":240,"byteSize":38457,"bitsPerPixel":0.6104285714285714,"mimeType":"image/svg+xml","computedSizingStyles":{"width":"auto","height":"40px","maxWidth":"100%","maxHeight":"none","minWidth":"auto","minHeight":"auto"},"intrinsicOrExtrinsicSizing":{"width":"both","height":"extrinsic"},"reservedLayoutDimensions":false},{"hasSrc":true,"hasAlt":true,"isInPicture":false,"hasCustomDataAttributes":false,"hasWidth":false,"hasHeight":false,"url":"https://contribute.freecodecamp.org/images/branding/banner.png","totalCandidates":1,"altAttribute":"Contribute to freeCodeCamp","clientWidth":384,"clientHeight":384,"naturalWidth":500,"naturalHeight":500,"hasSrcset":false,"hasSizes":false,"currentSrcDensity":1,"approximateResourceWidth":500,"approximateResourceHeight":500,"byteSize":89967,"bitsPerPixel":2.878944,"mimeType":"image/png","computedSizingStyles":{"width":"384px","height":"auto","maxWidth":"none","maxHeight":"none","minWidth":"auto","minHeight":"auto"},"intrinsicOrExtrinsicSizing":{"width":"extrinsic","height":"intrinsic"},"reservedLayoutDimensions":false}]}
robots_meta
{"main_frame_robots_rendered":[],"main_frame_robots_raw":[],"main_frame_robots_headers":[],"iframe_robots_raw":[],"iframe_robots_headers":[],"main_frame_crawl_data":{"rendered":[],"raw":[],"headers":[],"all":[]}}
robots_txt
{"message":"Failed to fetch","error":{}}
sass
{"stylesheets":{"remote":2,"inline":2},"sourcemaps":{"count":0,"ext":{}}}
security
{"iframe-allow-sandbox":[],"sri-integrity":[{"integrity":"sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==","src":"https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015","tagname":"script"}],"visibility-observer":false}
sessionstorage_size
0
structured-data
{"structured_data":{"rendered":{"jsonld_scripts":[],"present":{"json_ld":false,"microdata":false,"rdfa":true,"microformats2":false,"microformats_classic":false,"dublin_core":false,"twitter":true,"facebook":false,"opengraph":true},"microdata_itemtypes":[],"rdfa_vocabs":[],"rdfa_prefixes":[],"rdfa_typeofs":[],"microformats2_types":[],"microformats_classic_types":[],"dublin_core":[],"twitter":[{"name":"twitter:card","content":"summary_large_image"},{"name":"twitter:site","content":"@freeCodeCamp"}],"facebook":[],"opengraph":[{"property":"og:title","content":"Contribute to the freeCodeCamp Community"},{"property":"og:type","content":"article"},{"property":"og:url","content":"https://contribute.freecodecamp.org/intro/"},{"property":"og:locale","content":"en"},{"property":"og:description","content":"Help us make freeCodeCamp better for everyone."},{"property":"og:site_name","content":"Contribute | freeCodeCamp.org"}]},"raw":{"jsonld_scripts":[],"present":{"json_ld":false,"microdata":false,"rdfa":true,"microformats2":false,"microformats_classic":false,"dublin_core":false,"twitter":true,"facebook":false,"opengraph":true},"microdata_itemtypes":[],"rdfa_vocabs":[],"rdfa_prefixes":[],"rdfa_typeofs":[],"microformats2_types":[],"microformats_classic_types":[],"dublin_core":[],"twitter":[{"name":"twitter:card","content":"summary_large_image"},{"name":"twitter:site","content":"@freeCodeCamp"}],"facebook":[],"opengraph":[{"property":"og:title","content":"Contribute to the freeCodeCamp Community"},{"property":"og:type","content":"article"},{"property":"og:url","content":"https://contribute.freecodecamp.org/intro/"},{"property":"og:locale","content":"en"},{"property":"og:description","content":"Help us make freeCodeCamp better for everyone."},{"property":"og:site_name","content":"Contribute | freeCodeCamp.org"}]}}}
test_result
0
third-parties
[{"name":"Workbox","version":null}]
usertiming
0
valid-head
{"invalidElements":[],"invalidHead":false}
well-known
{"/.well-known/assetlinks.json":{"found":false},"/.well-known/apple-app-site-association":{"found":false},"/.well-known/related-website-set.json":{"found":false},"/.well-known/privacy-sandbox-attestations.json":{"found":false},"/.well-known/gpc.json":{"found":false},"/.well-known/web-identity":{"found":false},"/.well-known/passkey-endpoints":{"found":false},"/.well-known/webauthn":{"found":false},"/robots.txt":{"error":"Failed to fetch"},"/.well-known/security.txt":{"found":true,"data":{"status":200,"redirected":false,"url":"https://contribute.freecodecamp.org/.well-known/security.txt","content_type":"text/plain; charset=utf-8","signed":false,"contact":["https://contribute.freecodecamp.org/security"],"expires":["2025-12-31T23:59:00Z"],"encryption":["https://flowcrypt.com/me/freecodecamp","https://flowcrypt.com/pub/freecodecamp?show=pubkey"],"acknowledgments":["https://contribute.freecodecamp.org/security-hall-of-fame"],"preferred_languages":["en"],"policy":["https://contribute.freecodecamp.org/security"],"all_required_exist":true,"only_one_requirement_broken":false,"valid":true}},"/.well-known/change-password":{"found":false,"data":{"status":404,"redirected":false,"url":"https://contribute.freecodecamp.org/.well-known/change-password"}},"/.well-known/resource-that-should-not-exist-whose-status-code-should-not-be-200/":{"found":false,"data":{"status":404,"redirected":false,"url":"https://contribute.freecodecamp.org/.well-known/resource-that-should-not-exist-whose-status-code-should-not-be-200/"}}}
wpt_bodies
{"anchors":{"rendered":{"crawlable":{"follow":11,"nofollow":0},"hash_link":4,"hash_only_link":0,"javascript_void_links":0,"same_page":{"total":2,"jumpto":{"total":2,"early":1,"other":1,"using_id":2,"using_name":0},"dynamic":{"total":0,"onclick_attributes":{"total":0,"window_location":0,"window_open":0,"unknown_action":0},"href_javascript":0,"hash_link":0},"other":{"total":0,"hash_link":0}},"same_site":4,"same_property":0,"other_property":7,"rel_attributes":{"dofollow":0,"follow":0,"nofollow":0,"ugc":0,"sponsored":0,"noopener":0,"noreferrer":0},"image_links":0,"invisible_links":0,"text_links":13,"target_blank":{"total":0,"noopener_noreferrer":0,"noopener":0,"noreferrer":0,"neither":0},"targets":{},"protocols":{"https":13}},"raw":{"crawlable":{"follow":11,"nofollow":0},"hash_link":4,"hash_only_link":0,"javascript_void_links":0,"same_page":{"total":2,"jumpto":{"total":2,"early":1,"other":1,"using_id":2,"using_name":0},"dynamic":{"total":0,"onclick_attributes":{"total":0,"window_location":0,"window_open":0,"unknown_action":0},"href_javascript":0,"hash_link":0},"other":{"total":0,"hash_link":0}},"same_site":4,"same_property":0,"other_property":7,"rel_attributes":{"dofollow":0,"follow":0,"nofollow":0,"ugc":0,"sponsored":0,"noopener":0,"noreferrer":0},"image_links":0,"invisible_links":0,"text_links":13,"target_blank":{"total":0,"noopener_noreferrer":0,"noopener":0,"noreferrer":0,"neither":0},"targets":{},"protocols":{"about":2,"https":11}}},"title":{"rendered":{"primary":{"characters":72,"words":9,"text":"Contribute to the freeCodeCamp Community | Contribute | freeCodeCamp.org"},"total":1},"raw":{"primary":{"characters":72,"words":9,"text":"Contribute to the freeCodeCamp Community | Contribute | freeCodeCamp.org"},"total":1},"title_changed_on_render":false},"meta_description":{"rendered":{"all":{"text":"Help us make freeCodeCamp better for everyone.","words":7,"characters":46},"primary":{"characters":46,"words":7,"text":"Help us make freeCodeCamp better for everyone."},"total":1},"raw":{"all":{"text":"Help us make freeCodeCamp better for everyone.","words":7,"characters":46},"primary":{"characters":46,"words":7,"text":"Help us make freeCodeCamp better for everyone."},"total":1}},"hreflangs":{"http_header":{"values":[]},"rendered":{"values":[]},"raw":{"values":[]}},"headings":{"rendered":{"first_non_empty_heading_hidden":false,"primary":{"words":5,"characters":40,"matches_title":false,"text":"Contribute to the freeCodeCamp Community","level":1},"h1":{"total":1,"non_empty_total":1,"characters":40,"words":5},"h2":{"total":1,"non_empty_total":1,"characters":13,"words":2},"h3":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h4":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h5":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h6":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h7":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h8":{"total":0,"non_empty_total":0,"characters":0,"words":0}},"raw":{"first_non_empty_heading_hidden":false,"primary":{"words":5,"characters":40,"matches_title":false,"text":"Contribute to the freeCodeCamp Community","level":1},"h1":{"total":1,"non_empty_total":1,"characters":40,"words":5},"h2":{"total":1,"non_empty_total":1,"characters":13,"words":2},"h3":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h4":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h5":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h6":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h7":{"total":0,"non_empty_total":0,"characters":0,"words":0},"h8":{"total":0,"non_empty_total":0,"characters":0,"words":0}}},"structured_data":{"rendered":{"jsonld_and_microdata_types":[],"jsonldIds":0,"jsonldReferencedIds":0,"microdataIds":0,"microdataReferencedIds":0,"jsonlsMicrodataCommonIds":0,"logo":false,"sitelinks_search_box":false,"same_as_values":[],"items_by_format":{"microformats2":0,"microdata":0,"jsonld":0,"rdfa":0},"context_hostnames":[],"jsonld_scripts":{"count":0,"errors":0},"microformats2_types":[]},"raw":{"jsonld_and_microdata_types":[],"jsonldIds":0,"jsonldReferencedIds":0,"microdataIds":0,"microdataReferencedIds":0,"jsonlsMicrodataCommonIds":0,"logo":false,"sitelinks_search_box":false,"same_as_values":[],"items_by_format":{"microformats2":0,"microdata":0,"jsonld":0,"rdfa":0},"context_hostnames":[],"jsonld_scripts":{"count":0,"errors":0},"microformats2_types":[]}},"raw_html":{"body":true,"html":true,"head":true,"size":32560,"head_size":14306,"body_size":18149},"canonicals":{"rendered":{"html_link_canoncials":["https://contribute.freecodecamp.org/intro/"]},"raw":{"html_link_canoncials":["https://contribute.freecodecamp.org/intro/"]},"self_canonical":true,"other_canonical":false,"canonicals":["https://contribute.freecodecamp.org/intro/"],"url":"https://contribute.freecodecamp.org/intro/","http_header_link_canoncials":[],"canonical_missmatch":false},"robots":{"has_robots_meta_tag":false,"has_x_robots_tag":false,"rendered":{"otherbot":{"status_index":true,"status_follow":true,"via_meta_tag":false,"via_x_robots_tag":false},"googlebot":{"status_index":true,"status_follow":true,"via_meta_tag":false,"via_x_robots_tag":false},"googlebot_news":{"status_index":true,"status_follow":true,"via_meta_tag":false,"via_x_robots_tag":false},"google":{}},"raw":{"otherbot":{"status_index":true,"status_follow":true,"via_meta_tag":false,"via_x_robots_tag":false},"googlebot":{"status_index":true,"status_follow":true,"via_meta_tag":false,"via_x_robots_tag":false},"googlebot_news":{"status_index":true,"status_follow":true,"via_meta_tag":false,"via_x_robots_tag":false},"google":{}}},"visible_words":{"rendered":83,"raw":81},"web_components":{"rendered":{"customElements":{"names":["site-search","starlight-theme-select"],"shadowRoots":[],"templates":[],"slots":[0,0]},"hyphenatedElements":{"names":["site-search","starlight-theme-select"],"shadowRoots":[],"templates":[],"slots":[0,0]}},"raw":{"customElements":{"names":["site-search","starlight-theme-select"],"shadowRoots":[],"templates":[],"slots":[0,0]},"hyphenatedElements":{"names":["site-search","starlight-theme-select"],"shadowRoots":[],"templates":[],"slots":[0,0]}}}}

Waterfall View

Start Render
First Contentful Paint
Largest Contentful Paint
DOM Interactive
DOM Content Loaded
On Load
Document Complete
Render Blocking Resource Insecure Request 3xx response4xx+ response
 Doesn't Belong to Main Doc 
Step_1 1: https://contribute.freecodecamp.org/intro/ 2: https://contribute.freecodecamp.org/cdn-cgi/speculation 3: https://contribute.freecodecamp.org/_astro/index.D3GIIj4y.css 4: https://contribute.freecodecamp.org/_astro/page.B88YLdSP.js 5: https://contribute.freecodecamp.org/_astro/primary_logo.-jEg6IuN.svg 6: https://contribute.freecodecamp.org/_astro/secondary_logo.BMqpsykx.svg 7: https://contribute.freecodecamp.org/_astro/Search.astro_astro_type_script_index_0_lang.DMZ5WJ-J.js 8: https://contribute.freecodecamp.org/images/branding/banner.png 9: https://contribute.freecodecamp.org/_astro/print.DNXP8c50.css 10: https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015 11: https://contribute.freecodecamp.org/cdn-cgi/rum 12: https://contribute.freecodecamp.org/favicon.ico 13: https://contribute.freecodecamp.org/_astro/ui-core.Ft0Z9wO7.js 14: https://android.clients.google.com/checkin 15: https://android.clients.google.com/c2dm/register3 16: https://android.clients.google.com/c2dm/register3
customize waterfallView all ImagesView HTTP/2 Dependency GraphFilmstrip

Connection View

Step_1 contribute.freecodecamp.org static.cloudflareinsights.com android.clients.google.com
DNS Lookup
Initial Connection
SSL Negotiation
Start Render
DOM Content Loaded
On Load
Document Complete
Connection View waterfall diagram

Request Details

Before Start Render
Before On Load
After On Load
3xx Response
4xx Response

Request Details
# Resource Content Type Priority Request Start DNS Lookup Initial Connection SSL Negotiation Time to First Byte Content Download Bytes Downloaded CPU Time Error/Status Code IP
1 https://contribute.f...ecodecamp.org/intro/ text/html Highest 0.09 s 42 ms - 47 148 ms 5 ms 9.3 KB 10 ms 200 [2606:4700:20::ac43:4695]
2 https://contribute.f.../cdn-cgi/speculation application/speculationrules+json Lowest 0.253 s - - - 37 ms 1 ms 0.1 KB - 200 [2606:4700:20::ac43:4695]
3 https://contribute.f...o/index.D3GIIj4y.css text/css Highest 0.268 s - - - 110 ms 18 ms 11.9 KB - 200 [2606:4700:20::ac43:4695]
4 https://contribute.f...tro/page.B88YLdSP.js application/javascript High 0.27 s - - - 83 ms 1 ms 2.7 KB 13 ms 200 [2606:4700:20::ac43:4695]
5 https://contribute.f...ry_logo.-jEg6IuN.svg image/svg+xml Medium 0.27 s - - - 116 ms 21 ms 14.0 KB - 200 [2606:4700:20::ac43:4695]
6 https://contribute.f...ry_logo.BMqpsykx.svg image/svg+xml Medium 0.271 s - - - 84 ms 55 ms 14.0 KB - 200 [2606:4700:20::ac43:4695]
7 https://contribute.f...x_0_lang.DMZ5WJ-J.js application/javascript High 0.271 s - - - 118 ms 1 ms 1.4 KB - 200 [2606:4700:20::ac43:4695]
8 https://contribute.f.../branding/banner.png image/png Medium 0.28 s - - - 110 ms 50 ms 87.9 KB - 200 [2606:4700:20::ac43:4695]
9 https://contribute.f...o/print.DNXP8c50.css text/css Lowest 0.285 s - - - 108 ms 47 ms 1.0 KB - 200 [2606:4700:20::ac43:4695]
10 https://static.cloud...f22c1241717689176015 text/javascript Low 0.395 s 45 ms 17 ms 48 ms 36 ms 1 ms 6.7 KB 6 ms 200 [2606:4700::6810:4f49]
11 https://contribute.f...camp.org/cdn-cgi/rum - High 0.494 s - - - 45 ms - - - 204 [2606:4700:20::ac43:4695]
12 https://contribute.f...camp.org/favicon.ico image/vnd.microsoft.icon High 0.496 s - - - 114 ms 2 ms 15.4 KB - 200 [2606:4700:20::ac43:4695]
13 https://contribute.f.../ui-core.Ft0Z9wO7.js application/javascript High 0.506 s - - - 97 ms 7 ms 21.1 KB - 200 [2606:4700:20::ac43:4695]
14 https://android.clie...s.google.com/checkin application/x-protobuffer Lowest 1.152 s 63 ms 30 ms 58 ms 167 ms 2 ms 0.7 KB - 200 192.178.155.100
15 https://android.clie...e.com/c2dm/register3 text/plain Lowest 1.323 s - - - 69 ms - 0.1 KB - 200 192.178.155.100
16 https://android.clie...e.com/c2dm/register3 text/plain Lowest 1.323 s - - - 68 ms - 0.1 KB - 200 192.178.155.100

Request Headers

+ Expand All

Request 1: https://contribute.freecodecamp.org/intro/

URL: https://contribute.freecodecamp.org/intro/
Host: contribute.freecodecamp.org
IP: [2606:4700:20::ac43:4695]
Error/Status Code: 200
Priority: Highest
Protocol: h3
Initiated By: https://contribute.freecodecamp.org/intro/
Request Start: 0.090 s
DNS Lookup: 42 ms
Time to First Byte: 148 ms
Content Download: 5 ms
Bytes In (downloaded): 9.3 KB
Uncompressed Size: 31.8 KB
Bytes Out (uploaded): 2.1 KB
View Response Body

Request Headers:

:authority: contribute.freecodecamp.org
:method: GET
:path: /intro/
:scheme: https
accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
priority: u=0, i
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="138", "Google Chrome";v="138"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Unknown"
sec-fetch-dest: document
sec-fetch-mode: navigate
sec-fetch-site: cross-site
upgrade-insecure-requests: 1
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 PTST/250708.192815

Response Headers:

access-control-allow-origin: *
alt-svc: h3=":443"; ma=86400
cache-control: public, max-age=0, must-revalidate
cf-cache-status: DYNAMIC
cf-ray: 95d0638a0e523910-IAD
content-encoding: br
content-type: text/html; charset=utf-8
date: Thu, 10 Jul 2025 13:25:44 GMT
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
priority: u=0,i
referrer-policy: strict-origin-when-cross-origin
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=tD7%2FMNam9tbMeQTVeWQGB0jeDnvcFFpT8g0BOqeNwSQHc3I%2FAADDOVuZf9rRu0OZAd%2F7OWEOO7eyNpKkVLN3vnG3QnAO%2Ffud4eHK37wjZj40gwBZ14Q4ciMTtkd7VoPcp%2FLBCIB1n1W%2FCzY6rAGivbdJ8JA6rZvghqU%3D"}],"group":"cf-nel","max_age":604800}
server: cloudflare
server-timing: cfCacheStatus;desc="DYNAMIC"
server-timing: cfOrigin;dur=59,cfEdge;dur=31
server-timing: cfL4;desc="?proto=QUIC&rtt=33301&min_rtt=17029&rtt_var=12664&sent=13&recv=10&lost=0&retrans=0&sent_bytes=4274&recv_bytes=4549&delivery_rate=91092&cwnd=12000&unsent_bytes=0&cid=a17711335fd5173c&ts=166&x=1"
server-timing: cfExtPri
server-timing: cfHdrFlush;dur=0
speculation-rules: "/cdn-cgi/speculation"
vary: Accept-Encoding
x-content-type-options: nosniff

Request 2: https://contribute.freecodecamp.org/cdn-cgi/speculation

URL: https://contribute.freecodecamp.org/cdn-cgi/speculation
Host: contribute.freecodecamp.org
IP: [2606:4700:20::ac43:4695]
Error/Status Code: 200
Priority: Lowest
Protocol: h3
Request Start: 0.253 s
Time to First Byte: 37 ms
Content Download: 1 ms
Bytes In (downloaded): 0.1 KB
Uncompressed Size: 0.1 KB
Bytes Out (uploaded): 2.0 KB
View Response Body

Request Headers:

:authority: contribute.freecodecamp.org
:method: GET
:path: /cdn-cgi/speculation
:scheme: https
accept: */*
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
origin: https://contribute.freecodecamp.org
priority: u=4, i
referer: https://contribute.freecodecamp.org/intro/
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="138", "Google Chrome";v="138"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Unknown"
sec-fetch-dest: speculationrules
sec-fetch-mode: cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 PTST/250708.192815

Response Headers:

access-control-allow-origin: https://contribute.freecodecamp.org
alt-svc: h3=":443"; ma=86400
cf-ray: 95d0638aef733910-IAD
content-length: 128
content-type: application/speculationrules+json
date: Thu, 10 Jul 2025 13:25:44 GMT
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
priority: u=4,i
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=%2B5nKao3LF9SuiuI6%2F6RcB2kseyMCz1odKPVqmvwGkbj5oi81MjbT6BS4CKmc32zQp3j%2FGjvDl4YbIKRjRXVjvf4xsp9C4zLdSGJvVvhEzQLlnDQf5iXHh3VeqsDDvjRzyP6Debody1YC9MvtR5PdiAMPJLaYT0iYyg%3D%3D"}],"group":"cf-nel","max_age":604800}
server: cloudflare
server-timing: cfL4;desc="?proto=QUIC&rtt=27646&min_rtt=17029&rtt_var=7215&sent=25&recv=17&lost=0&retrans=0&sent_bytes=14966&recv_bytes=5699&delivery_rate=446107&cwnd=12000&unsent_bytes=0&cid=a17711335fd5173c&ts=217&x=1"
server-timing: cfExtPri
server-timing: cfHdrFlush;dur=0
speculation-rules: "/cdn-cgi/speculation"
vary: Origin, Accept-Encoding

Request 3: https://contribute.freecodecamp.org/_astro/index.D3GIIj4y.css

URL: https://contribute.freecodecamp.org/_astro/index.D3GIIj4y.css
Host: contribute.freecodecamp.org
IP: [2606:4700:20::ac43:4695]
Error/Status Code: 200
Priority: Highest
Protocol: h3
Initiated By: https://contribute.freecodecamp.org/intro/ line 26
Request Start: 0.268 s
Time to First Byte: 110 ms
Content Download: 18 ms
Bytes In (downloaded): 11.9 KB
Uncompressed Size: 65.4 KB
Bytes Out (uploaded): 1.9 KB
View Response Body

Request Headers:

:authority: contribute.freecodecamp.org
:method: GET
:path: /_astro/index.D3GIIj4y.css
:scheme: https
accept: text/css,*/*;q=0.1
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
priority: u=0
referer: https://contribute.freecodecamp.org/intro/
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="138", "Google Chrome";v="138"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Unknown"
sec-fetch-dest: style
sec-fetch-mode: no-cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 PTST/250708.192815

Response Headers:

access-control-allow-origin: *
alt-svc: h3=":443"; ma=86400
cache-control: public, max-age=86400, must-revalidate
cf-cache-status: REVALIDATED
cf-ray: 95d0638aff893910-IAD
content-encoding: gzip
content-type: text/css; charset=utf-8
date: Thu, 10 Jul 2025 13:25:44 GMT
etag: W/"8951af83620b408d9f376b5241571858"
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
priority: u=0,i=?0
referrer-policy: strict-origin-when-cross-origin
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=tiiq8jfmC6QLC0iWz9G%2BnegEfU6WiovMYj6S75PCDcw2KdLZXwvCq4a5CeaIVvVD%2FjMLp%2FtHrvfnlFw38VntbECAvGQzBx%2BeXBB6BR8DyhrxSf8WX7RNbvoPYyAcu1dYwLjM1iJDK4CzV6TJHyg%3D"}],"group":"cf-nel","max_age":604800}
server: cloudflare
server-timing: cfL4;desc="?proto=QUIC&rtt=27985&min_rtt=17029&rtt_var=6089&sent=42&recv=24&lost=0&retrans=0&sent_bytes=27984&recv_bytes=8659&delivery_rate=446107&cwnd=12000&unsent_bytes=0&cid=a17711335fd5173c&ts=284&x=1"
server-timing: cfExtPri
server-timing: cfHdrFlush;dur=22
speculation-rules: "/cdn-cgi/speculation"
vary: Accept-Encoding
x-content-type-options: nosniff

Request 4: https://contribute.freecodecamp.org/_astro/page.B88YLdSP.js

URL: https://contribute.freecodecamp.org/_astro/page.B88YLdSP.js
Host: contribute.freecodecamp.org
IP: [2606:4700:20::ac43:4695]
Error/Status Code: 200
Priority: High
Protocol: h3
Initiated By: https://contribute.freecodecamp.org/intro/ line 34
Request Start: 0.270 s
Time to First Byte: 83 ms
Content Download: 1 ms
Bytes In (downloaded): 2.7 KB
Uncompressed Size: 7.6 KB
Bytes Out (uploaded): 2.0 KB
View Response Body

Request Headers:

:authority: contribute.freecodecamp.org
:method: GET
:path: /_astro/page.B88YLdSP.js
:scheme: https
accept: */*
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
origin: https://contribute.freecodecamp.org
priority: u=1
referer: https://contribute.freecodecamp.org/intro/
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="138", "Google Chrome";v="138"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Unknown"
sec-fetch-dest: script
sec-fetch-mode: cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 PTST/250708.192815

Response Headers:

access-control-allow-origin: *
alt-svc: h3=":443"; ma=86400
cache-control: public, max-age=86400, must-revalidate
cf-cache-status: REVALIDATED
cf-ray: 95d0638b0f8e3910-IAD
content-encoding: gzip
content-type: application/javascript
date: Thu, 10 Jul 2025 13:25:44 GMT
etag: W/"173cf180403b64bce9447661e10aa60c"
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
priority: u=1,i=?0
referrer-policy: strict-origin-when-cross-origin
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=4dXZQSAdfp4kTve1Q9UuGYhTXkjZBDS5EG05LtxFflMd%2FKLhV7zyN%2Byivn6oHm6ToOTbhFlyvR0n9QFScGdmpJB6LviNI0nsHCSBXtbqwUMk6DLJSl8GPYnF16PHDkfbsJhhvWZCCouTLVFEopw%3D"}],"group":"cf-nel","max_age":604800}
server: cloudflare
server-timing: cfL4;desc="?proto=QUIC&rtt=27985&min_rtt=17029&rtt_var=6089&sent=32&recv=24&lost=0&retrans=0&sent_bytes=15986&recv_bytes=8659&delivery_rate=446107&cwnd=12000&unsent_bytes=0&cid=a17711335fd5173c&ts=281&x=1"
server-timing: cfExtPri
server-timing: cfHdrFlush;dur=0
speculation-rules: "/cdn-cgi/speculation"
vary: Accept-Encoding
x-content-type-options: nosniff

Request 5: https://contribute.freecodecamp.org/_astro/primary_logo.-jEg6IuN.svg

URL: https://contribute.freecodecamp.org/_astro/primary_logo.-jEg6IuN.svg
Host: contribute.freecodecamp.org
IP: [2606:4700:20::ac43:4695]
Error/Status Code: 200
Priority: Medium
Protocol: h3
Initiated By: https://contribute.freecodecamp.org/intro/ line 34
Request Start: 0.270 s
Time to First Byte: 116 ms
Content Download: 21 ms
Bytes In (downloaded): 14.0 KB
Uncompressed Size: 37.5 KB
Bytes Out (uploaded): 2.1 KB

Request Headers:

:authority: contribute.freecodecamp.org
:method: GET
:path: /_astro/primary_logo.-jEg6IuN.svg
:scheme: https
accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
priority: u=2, i
referer: https://contribute.freecodecamp.org/intro/
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="138", "Google Chrome";v="138"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Unknown"
sec-fetch-dest: image
sec-fetch-mode: no-cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 PTST/250708.192815

Response Headers:

access-control-allow-origin: *
alt-svc: h3=":443"; ma=86400
cache-control: public, max-age=86400, must-revalidate
cf-cache-status: REVALIDATED
cf-ray: 95d0638b0f993910-IAD
content-encoding: gzip
content-type: image/svg+xml
date: Thu, 10 Jul 2025 13:25:44 GMT
etag: W/"8b4ef123466feef470fca12d086a367b"
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
priority: u=2,i
referrer-policy: strict-origin-when-cross-origin
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=x7B5bporM9L2zO1IevbFajjnduy5ESoJQiJHHaLbi7LoBklq5gHypWgjItjXyMhSLU77qWO7%2BVx9xVcyIedQE1KNFIF0eOSp8H%2FSlutA8tCgVaBdXg3vxvVZqLhEXdbuZx2QPhjjc7mKCkUPyjpCx0Y408YP9odqr7M%3D"}],"group":"cf-nel","max_age":604800}
server: cloudflare
server-timing: cfL4;desc="?proto=QUIC&rtt=27985&min_rtt=17029&rtt_var=6089&sent=42&recv=24&lost=0&retrans=0&sent_bytes=27984&recv_bytes=8659&delivery_rate=446107&cwnd=12000&unsent_bytes=0&cid=a17711335fd5173c&ts=289&x=1"
server-timing: cfExtPri
server-timing: cfHdrFlush;dur=18
speculation-rules: "/cdn-cgi/speculation"
vary: Accept-Encoding
x-content-type-options: nosniff

Request 6: https://contribute.freecodecamp.org/_astro/secondary_logo.BMqpsykx.svg

URL: https://contribute.freecodecamp.org/_astro/secondary_logo.BMqpsykx.svg
Host: contribute.freecodecamp.org
IP: [2606:4700:20::ac43:4695]
Error/Status Code: 200
Priority: Medium
Protocol: h3
Initiated By: https://contribute.freecodecamp.org/intro/ line 34
Request Start: 0.271 s
Time to First Byte: 84 ms
Content Download: 55 ms
Bytes In (downloaded): 14.0 KB
Uncompressed Size: 37.6 KB
Bytes Out (uploaded): 2.1 KB

Request Headers:

:authority: contribute.freecodecamp.org
:method: GET
:path: /_astro/secondary_logo.BMqpsykx.svg
:scheme: https
accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
priority: u=2, i
referer: https://contribute.freecodecamp.org/intro/
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="138", "Google Chrome";v="138"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Unknown"
sec-fetch-dest: image
sec-fetch-mode: no-cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 PTST/250708.192815

Response Headers:

access-control-allow-origin: *
alt-svc: h3=":443"; ma=86400
cache-control: public, max-age=86400, must-revalidate
cf-cache-status: REVALIDATED
cf-ray: 95d0638b1fa73910-IAD
content-encoding: gzip
content-type: image/svg+xml
date: Thu, 10 Jul 2025 13:25:44 GMT
etag: W/"d2d31b1fee9aa278ba0ad4e3ca6c564c"
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
priority: u=2,i
referrer-policy: strict-origin-when-cross-origin
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=WLoe0rOr4Pof9NkeQ0afriDuI4%2B62z1Q2OsiPmPFFnPjvtsMN%2FSF2Yvj3NBJAYZm3tN0%2FHXV21BqdHvAx0mTo%2BiYiD2pFl2Hv2fXKHa%2FHUx4ik1JDurwOyOGBohgablOO5Z%2B0SsSnn3rpIkYB9w%3D"}],"group":"cf-nel","max_age":604800}
server: cloudflare
server-timing: cfL4;desc="?proto=QUIC&rtt=27985&min_rtt=17029&rtt_var=6089&sent=35&recv=24&lost=0&retrans=0&sent_bytes=19584&recv_bytes=8659&delivery_rate=446107&cwnd=12000&unsent_bytes=0&cid=a17711335fd5173c&ts=282&x=1"
server-timing: cfExtPri
server-timing: cfHdrFlush;dur=0
speculation-rules: "/cdn-cgi/speculation"
vary: Accept-Encoding
x-content-type-options: nosniff

Request 7: https://contribute.freecodecamp.org/_astro/Search.astro_astro_type_script_index_0_lang.DMZ5WJ-J.js

URL: https://contribute.freecodecamp.org/_astro/Search.astro_astro_type_script_index_0_lang.DMZ5WJ-J.js
Host: contribute.freecodecamp.org
IP: [2606:4700:20::ac43:4695]
Error/Status Code: 200
Priority: High
Protocol: h3
Initiated By: https://contribute.freecodecamp.org/intro/ line 46
Request Start: 0.271 s
Time to First Byte: 118 ms
Content Download: 1 ms
Bytes In (downloaded): 1.4 KB
Uncompressed Size: 2.6 KB
Bytes Out (uploaded): 2.1 KB
View Response Body

Request Headers:

:authority: contribute.freecodecamp.org
:method: GET
:path: /_astro/Search.astro_astro_type_script_index_0_lang.DMZ5WJ-J.js
:scheme: https
accept: */*
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
origin: https://contribute.freecodecamp.org
priority: u=1
referer: https://contribute.freecodecamp.org/intro/
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="138", "Google Chrome";v="138"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Unknown"
sec-fetch-dest: script
sec-fetch-mode: cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 PTST/250708.192815

Response Headers:

access-control-allow-origin: *
alt-svc: h3=":443"; ma=86400
cache-control: public, max-age=86400, must-revalidate
cf-cache-status: REVALIDATED
cf-ray: 95d0638b1fae3910-IAD
content-encoding: gzip
content-type: application/javascript
date: Thu, 10 Jul 2025 13:25:44 GMT
etag: W/"bc584fd40213749827dd7c940f65dd58"
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
priority: u=1,i=?0
referrer-policy: strict-origin-when-cross-origin
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=wE5tft8Wm6JCsxNCoFV71EpjcNja5cRiNN9nG2J3H7hz%2BY%2FgOHRH1N%2FsXhjrGHPi2K8pNQ8l%2FoMtJe0r6uFtWRdeAnZbkTArLJR0yFBw2WZWUr0GERUvTtEi1FWpfZb%2ByRqBlZ9OssmaHPFfhkw%3D"}],"group":"cf-nel","max_age":604800}
server: cloudflare
server-timing: cfL4;desc="?proto=QUIC&rtt=27985&min_rtt=17029&rtt_var=6089&sent=42&recv=24&lost=0&retrans=0&sent_bytes=27984&recv_bytes=8659&delivery_rate=446107&cwnd=12000&unsent_bytes=0&cid=a17711335fd5173c&ts=284&x=1"
server-timing: cfExtPri
server-timing: cfHdrFlush;dur=24
speculation-rules: "/cdn-cgi/speculation"
vary: Accept-Encoding
x-content-type-options: nosniff

Request 8: https://contribute.freecodecamp.org/images/branding/banner.png

URL: https://contribute.freecodecamp.org/images/branding/banner.png
Host: contribute.freecodecamp.org
IP: [2606:4700:20::ac43:4695]
Error/Status Code: 200
Priority: Medium
Protocol: h3
Initiated By: https://contribute.freecodecamp.org/intro/ line 48
Request Start: 0.280 s
Time to First Byte: 110 ms
Content Download: 50 ms
Bytes In (downloaded): 87.9 KB
Uncompressed Size: 87.9 KB
Bytes Out (uploaded): 2.1 KB

Request Headers:

:authority: contribute.freecodecamp.org
:method: GET
:path: /images/branding/banner.png
:scheme: https
accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
priority: u=2, i
referer: https://contribute.freecodecamp.org/intro/
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="138", "Google Chrome";v="138"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Unknown"
sec-fetch-dest: image
sec-fetch-mode: no-cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 PTST/250708.192815

Response Headers:

accept-ranges: bytes
access-control-allow-origin: *
alt-svc: h3=":443"; ma=86400
cache-control: public, max-age=86400, must-revalidate
cf-cache-status: REVALIDATED
cf-ray: 95d0638b2fb83910-IAD
content-length: 89967
content-type: image/png
date: Thu, 10 Jul 2025 13:25:44 GMT
etag: "ea33c4c0972d45ba622940116b39e415"
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
priority: u=2,i
referrer-policy: strict-origin-when-cross-origin
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=iW%2BY9tapxNtwVx8KxFxQOrHIa1gyEngN8g7HBskqTN0TqYJHmuMajhGj6d6J9g%2BnaqwFqpgOeq7CMzbDmnngHGO7OMV6g0laFyBl8FcZ39oUlhB0FaPW3Wriwlu3%2FZm7O7quk3H6lUv63mdYpr6L3G7pGnMk1QsCrKo%3D"}],"group":"cf-nel","max_age":604800}
server: cloudflare
server-timing: cfL4;desc="?proto=QUIC&rtt=27985&min_rtt=17029&rtt_var=6089&sent=42&recv=24&lost=0&retrans=0&sent_bytes=27984&recv_bytes=8659&delivery_rate=446107&cwnd=12000&unsent_bytes=0&cid=a17711335fd5173c&ts=298&x=1"
server-timing: cfExtPri
server-timing: cfHdrFlush;dur=10
speculation-rules: "/cdn-cgi/speculation"
vary: Accept-Encoding
x-content-type-options: nosniff

Request 9: https://contribute.freecodecamp.org/_astro/print.DNXP8c50.css

URL: https://contribute.freecodecamp.org/_astro/print.DNXP8c50.css
Host: contribute.freecodecamp.org
IP: [2606:4700:20::ac43:4695]
Error/Status Code: 200
Priority: Lowest
Protocol: h3
Initiated By: https://contribute.freecodecamp.org/intro/ line 26
Request Start: 0.285 s
Time to First Byte: 108 ms
Content Download: 47 ms
Bytes In (downloaded): 1.0 KB
Uncompressed Size: 3.5 KB
Bytes Out (uploaded): 1.9 KB
View Response Body

Request Headers:

:authority: contribute.freecodecamp.org
:method: GET
:path: /_astro/print.DNXP8c50.css
:scheme: https
accept: text/css,*/*;q=0.1
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
priority: u=4
referer: https://contribute.freecodecamp.org/intro/
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="138", "Google Chrome";v="138"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Unknown"
sec-fetch-dest: style
sec-fetch-mode: no-cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 PTST/250708.192815

Response Headers:

access-control-allow-origin: *
alt-svc: h3=":443"; ma=86400
cache-control: public, max-age=86400, must-revalidate
cf-cache-status: REVALIDATED
cf-ray: 95d0638b3fc73910-IAD
content-encoding: gzip
content-type: text/css; charset=utf-8
date: Thu, 10 Jul 2025 13:25:44 GMT
etag: W/"aaa9f3daa9ca772e1890c595bf99f81b"
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
priority: u=4,i=?0
referrer-policy: strict-origin-when-cross-origin
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=ziovcnoH1pOCaY10b0QnZ%2BJSnXOBk%2FNsFdJaJ8tLeiO2kpH7I7l7yzBdGhZ593dy6abQRcq26yyFnprGPCpMH6QfZP1o5Xm1nF5hWKWT2vsRN5ujnFIN6Y%2BnneaMADHk6V5KUsIfF5hrH7zmXUE%3D"}],"group":"cf-nel","max_age":604800}
server: cloudflare
server-timing: cfL4;desc="?proto=QUIC&rtt=27985&min_rtt=17029&rtt_var=6089&sent=42&recv=24&lost=0&retrans=0&sent_bytes=27984&recv_bytes=8659&delivery_rate=446107&cwnd=12000&unsent_bytes=0&cid=a17711335fd5173c&ts=302&x=1"
server-timing: cfExtPri
server-timing: cfHdrFlush;dur=7
speculation-rules: "/cdn-cgi/speculation"
vary: Accept-Encoding
x-content-type-options: nosniff

Request 10: https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015

URL: https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015
Host: static.cloudflareinsights.com
IP: [2606:4700::6810:4f49]
Error/Status Code: 200
Priority: Low
Protocol: HTTP/2
HTTP/2 Stream: 1, weight 147, depends on 0, EXCLUSIVE
Initiated By: https://contribute.freecodecamp.org/intro/ line 54
Request Start: 0.395 s
DNS Lookup: 45 ms
Initial Connection: 17 ms
Time to First Byte: 36 ms
Content Download: 1 ms
Bytes In (downloaded): 6.7 KB
Uncompressed Size: 19.5 KB
Bytes Out (uploaded): 2.0 KB
View Response Body

Request Headers:

:authority: static.cloudflareinsights.com
:method: GET
:path: /beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015
:scheme: https
accept: */*
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
origin: https://contribute.freecodecamp.org
referer: https://contribute.freecodecamp.org/
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="138", "Google Chrome";v="138"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Unknown"
sec-fetch-dest: script
sec-fetch-mode: cors
sec-fetch-site: cross-site
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 PTST/250708.192815

Response Headers:

access-control-allow-origin: *
cache-control: public, max-age=86400
cf-ray: 95d0638bccea3b05-IAD
content-encoding: gzip
content-type: text/javascript;charset=UTF-8
cross-origin-resource-policy: cross-origin
date: Thu, 10 Jul 2025 13:25:44 GMT
etag: W/"2024.6.1"
last-modified: Thu, 06 Jun 2024 15:52:56 GMT
server: cloudflare
vary: Accept-Encoding
:status: 200

Request 11: https://contribute.freecodecamp.org/cdn-cgi/rum?

URL: https://contribute.freecodecamp.org/cdn-cgi/rum?
Host: contribute.freecodecamp.org
IP: [2606:4700:20::ac43:4695]
Error/Status Code: 204
Priority: High
Protocol: h3
Initiated By: https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015 line 0 column 9089
Request Start: 0.494 s
Time to First Byte: 45 ms
Bytes In (downloaded): 0.0 KB
Bytes Out (uploaded): 2.1 KB

Request Headers:

:authority: contribute.freecodecamp.org
:method: POST
:path: /cdn-cgi/rum?
:scheme: https
accept: */*
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
content-length: 1906
content-type: application/json
origin: https://contribute.freecodecamp.org
priority: u=1, i
referer: https://contribute.freecodecamp.org/intro/
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="138", "Google Chrome";v="138"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Unknown"
sec-fetch-dest: empty
sec-fetch-mode: cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 PTST/250708.192815

Response Headers:

access-control-allow-credentials: true
access-control-allow-methods: POST,OPTIONS
access-control-allow-origin: https://contribute.freecodecamp.org
access-control-max-age: 86400
cf-ray: 95d0638c79333910-IAD
date: Thu, 10 Jul 2025 13:25:45 GMT
server: cloudflare
vary: Origin
x-content-type-options: nosniff
x-frame-options: DENY

Request 12: https://contribute.freecodecamp.org/favicon.ico

URL: https://contribute.freecodecamp.org/favicon.ico
Host: contribute.freecodecamp.org
IP: [2606:4700:20::ac43:4695]
Error/Status Code: 200
Priority: High
Protocol: h3
Request Start: 0.496 s
Time to First Byte: 114 ms
Content Download: 2 ms
Bytes In (downloaded): 15.4 KB
Uncompressed Size: 15.7 KB
Bytes Out (uploaded): 2.0 KB

Request Headers:

:authority: contribute.freecodecamp.org
:method: GET
:path: /favicon.ico
:scheme: https
accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
priority: u=1, i
referer: https://contribute.freecodecamp.org/intro/
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="138", "Google Chrome";v="138"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Unknown"
sec-fetch-dest: image
sec-fetch-mode: no-cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 PTST/250708.192815

Response Headers:

access-control-allow-origin: *
alt-svc: h3=":443"; ma=86400
cache-control: public, max-age=86400, must-revalidate
cf-cache-status: REVALIDATED
cf-ray: 95d0638c89533910-IAD
content-encoding: gzip
content-type: image/vnd.microsoft.icon
date: Thu, 10 Jul 2025 13:25:45 GMT
etag: W/"a9dd0944419866e1ccde7be9c5f82ad6"
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
priority: u=1,i
referrer-policy: strict-origin-when-cross-origin
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=hWbCOhYmTzREzKkOC%2BHDWeANszJeEFMbisb5cnQvNUsSRGWkY7GZCnePRhHjPB8q4qr%2FHhGXFQpVkv2Y3%2F49I3vc3xgEbSIMPiA0jEak9jj3l8V7KhZITbe18XSId5pKc0kl%2B4woyuwTEv3faLU%3D"}],"group":"cf-nel","max_age":604800}
server: cloudflare
server-timing: cfL4;desc="?proto=QUIC&rtt=23196&min_rtt=17012&rtt_var=6325&sent=207&recv=80&lost=0&retrans=0&sent_bytes=184589&recv_bytes=14459&delivery_rate=2604307&cwnd=69900&unsent_bytes=0&cid=a17711335fd5173c&ts=532&x=1"
server-timing: cfExtPri
server-timing: cfHdrFlush;dur=0
speculation-rules: "/cdn-cgi/speculation"
vary: Accept-Encoding
x-content-type-options: nosniff

Request 13: https://contribute.freecodecamp.org/_astro/ui-core.Ft0Z9wO7.js

URL: https://contribute.freecodecamp.org/_astro/ui-core.Ft0Z9wO7.js
Host: contribute.freecodecamp.org
IP: [2606:4700:20::ac43:4695]
Error/Status Code: 200
Priority: High
Protocol: h3
Initiated By: https://contribute.freecodecamp.org/_astro/Search.astro_astro_type_script_index_0_lang.DMZ5WJ-J.js line 0 column 2329
Request Start: 0.506 s
Time to First Byte: 97 ms
Content Download: 7 ms
Bytes In (downloaded): 21.1 KB
Uncompressed Size: 66.5 KB
Bytes Out (uploaded): 2.2 KB
View Response Body

Request Headers:

:authority: contribute.freecodecamp.org
:method: GET
:path: /_astro/ui-core.Ft0Z9wO7.js
:scheme: https
accept: */*
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
origin: https://contribute.freecodecamp.org
priority: u=1
referer: https://contribute.freecodecamp.org/_astro/Search.astro_astro_type_script_index_0_lang.DMZ5WJ-J.js
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="138", "Google Chrome";v="138"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Unknown"
sec-fetch-dest: script
sec-fetch-mode: cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 PTST/250708.192815

Response Headers:

access-control-allow-origin: *
alt-svc: h3=":443"; ma=86400
cache-control: public, max-age=86400, must-revalidate
cf-cache-status: REVALIDATED
cf-ray: 95d0638c995d3910-IAD
content-encoding: gzip
content-type: application/javascript
date: Thu, 10 Jul 2025 13:25:45 GMT
etag: W/"b26bd623f439ec6652504e43c377619c"
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
priority: u=1,i=?0
referrer-policy: strict-origin-when-cross-origin
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=dUWsnqK422t9jWYfEewp%2Fa40fOBllUpqLbWSceQ9GhsfLiu44DHuaLmnvKsA%2B%2BfAsbFkiu0QS8swhuMcUbMiUJLBd3j9bC0KNL%2BoOqFigtp%2BmrlRsLYubEUA2bv9yoLOje1Pkt5fGSnrF8%2F2Nts%3D"}],"group":"cf-nel","max_age":604800}
server: cloudflare
server-timing: cfL4;desc="?proto=QUIC&rtt=23196&min_rtt=17012&rtt_var=6325&sent=187&recv=80&lost=0&retrans=0&sent_bytes=161665&recv_bytes=14459&delivery_rate=2604307&cwnd=69900&unsent_bytes=0&cid=a17711335fd5173c&ts=529&x=1"
server-timing: cfExtPri
server-timing: cfHdrFlush;dur=0
speculation-rules: "/cdn-cgi/speculation"
vary: Accept-Encoding
x-content-type-options: nosniff

Request 14: https://android.clients.google.com/checkin

URL: https://android.clients.google.com/checkin
Host: android.clients.google.com
IP: 192.178.155.100
Error/Status Code: 200
Priority: Lowest
Protocol: HTTP/2
HTTP/2 Stream: 1, weight 110, depends on 0, EXCLUSIVE
Request Start: 1.152 s
DNS Lookup: 63 ms
Initial Connection: 30 ms
Time to First Byte: 167 ms
Content Download: 2 ms
Bytes In (downloaded): 0.7 KB
Uncompressed Size: 0.5 KB
Bytes Out (uploaded): 0.0 KB

Request Headers:

:method: POST
:authority: android.clients.google.com
:scheme: https
:path: /checkin
content-length: 86
content-type: application/x-protobuf
sec-fetch-site: none
sec-fetch-mode: no-cors
sec-fetch-dest: empty
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
priority: u=4, i

Response Headers:

:status: 200
content-type: application/x-protobuffer
cache-control: no-cache, no-store, max-age=0, must-revalidate
pragma: no-cache
expires: Mon, 01 Jan 1990 00:00:00 GMT
date: Thu, 10 Jul 2025 13:25:45 GMT
content-security-policy: require-trusted-types-for 'script';report-uri /checkin/_/AndroidCheckinHttp/cspreport
cross-origin-opener-policy: same-origin
permissions-policy: ch-ua-arch=*, ch-ua-bitness=*, ch-ua-full-version=*, ch-ua-full-version-list=*, ch-ua-model=*, ch-ua-wow64=*, ch-ua-form-factors=*, ch-ua-platform=*, ch-ua-platform-version=*
accept-ch: Sec-CH-UA-Arch, Sec-CH-UA-Bitness, Sec-CH-UA-Full-Version, Sec-CH-UA-Full-Version-List, Sec-CH-UA-Model, Sec-CH-UA-WoW64, Sec-CH-UA-Form-Factors, Sec-CH-UA-Platform, Sec-CH-UA-Platform-Version
content-encoding: gzip
server: ESF
x-xss-protection: 0
x-frame-options: SAMEORIGIN
x-content-type-options: nosniff

Request 15: https://android.clients.google.com/c2dm/register3

URL: https://android.clients.google.com/c2dm/register3
Host: android.clients.google.com
IP: 192.178.155.100
Error/Status Code: 200
Priority: Lowest
Protocol: HTTP/2
HTTP/2 Stream: 3, weight 110, depends on 0, EXCLUSIVE
Request Start: 1.323 s
Time to First Byte: 69 ms
Bytes In (downloaded): 0.1 KB
Uncompressed Size: 0.0 KB
Bytes Out (uploaded): 0.0 KB

Request Headers:

:method: POST
:authority: android.clients.google.com
:scheme: https
:path: /c2dm/register3
content-length: 73
authorization: AidLogin 5719614004191848065:1804792029156924627
content-type: application/x-www-form-urlencoded
sec-fetch-site: none
sec-fetch-mode: no-cors
sec-fetch-dest: empty
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
priority: u=4, i

Response Headers:

:status: 200
content-type: text/plain; charset=UTF-8
content-encoding: gzip
date: Thu, 10 Jul 2025 13:25:45 GMT
expires: Thu, 10 Jul 2025 13:25:45 GMT
cache-control: private, max-age=0
x-content-type-options: nosniff
x-frame-options: SAMEORIGIN
content-security-policy: frame-ancestors 'self'
x-xss-protection: 1; mode=block
content-length: 50
server: GSE

Request 16: https://android.clients.google.com/c2dm/register3

URL: https://android.clients.google.com/c2dm/register3
Host: android.clients.google.com
IP: 192.178.155.100
Error/Status Code: 200
Priority: Lowest
Protocol: HTTP/2
HTTP/2 Stream: 5, weight 110, depends on 3, EXCLUSIVE
Request Start: 1.323 s
Time to First Byte: 68 ms
Bytes In (downloaded): 0.1 KB
Uncompressed Size: 0.0 KB
Bytes Out (uploaded): 0.0 KB

Request Headers:

:method: POST
:authority: android.clients.google.com
:scheme: https
:path: /c2dm/register3
content-length: 187
authorization: AidLogin 5719614004191848065:1804792029156924627
content-type: application/x-www-form-urlencoded
sec-fetch-site: none
sec-fetch-mode: no-cors
sec-fetch-dest: empty
user-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36
accept-encoding: gzip, deflate, br, zstd
accept-language: en-US,en;q=0.9
priority: u=4, i

Response Headers:

:status: 200
content-type: text/plain; charset=UTF-8
content-encoding: gzip
date: Thu, 10 Jul 2025 13:25:45 GMT
expires: Thu, 10 Jul 2025 13:25:45 GMT
cache-control: private, max-age=0
x-content-type-options: nosniff
x-frame-options: SAMEORIGIN
content-security-policy: frame-ancestors 'self'
x-xss-protection: 1; mode=block
content-length: 50
server: GSE